Jessibuca是一款开源的纯H5直播流播放器,通过Emscripten将音视频解码库编译成Js(ams.js/wasm)运行于浏览器之中。兼容几乎所有浏览器,可以运行在PC、手机、微信中,无需额外安装插件。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

26 lines
1.8 MiB

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_NORMAL=0;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}function getMemory(size){if(!runtimeInitialized)return dynamicAlloc(size);return _malloc(size)}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 PAGE_SIZE=16384;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=261104,DYNAMIC_BASE=5503984,DYNAMICTOP_PTR=261072;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_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_exp=Math.exp;var Math_log=Math.log;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var Math_trunc=Math.trunc;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,AAAAAAAAAACQ5AAA0OQAANDkAADQ5AAA0OQAAAAAAAAAAAAAAAAAAJDkAADY5AAA2OQAANDkAAACAADAAwAAwAQAAMAFAADABgAAwAcAAMAIAADACQAAwAoAAMALAADADAAAwA0AAMAOAADADwAAwBAAAMARAADAEgAAwBMAAMAUAADAFQAAwBYAAMAXAADAGAAAwBkAAMAaAADAGwAAwBwAAMAdAADAHgAAwB8AAMAAAACzAQAAwwIAAMMDAADDBAAAwwUAAMMGAADDBwAAwwgAAMMJAADDCgAAwwsAAMMMAADDDQAA0w4AAMMPAADDAAAMuwEADMMCAAzDAwAMwwQADNMAAAAA/////////////////////////////////////////////////////////////////wABAgMEBQYHCAn/////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP///////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAARAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuvgBAAMAAAAgAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAIAAAAAgAAAAcAAAABAAAAAAAAAAMAAAABAAAAAAAAAAgAAAACAAAABwAAAAIAAAAAAAAAAwAAAAIAAAAAAAAACAAAAAIAAAAHAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA+AEAAwAAACAAAAAAAAAAAAAAAAMAAAACAAAAAAAAAAgAAAACAAAABwAAAAMAAAAAAAAAAwAAAAEAAAAAAAAACAAAAAIAAAAHAAAAAgAAAAAAAAADAAAAAAAAAAAAAAAIAAAAAgAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMb4AQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzvgBAAMAAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADW+AEAAwICABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN74AQADAgAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAioMCAAEAAABAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5vgBAAAAAADv+AEAAQAAAAQAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPX4AQABAAAABAAAAAAAAAAAAAAAAQAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+/gBAAEAAAACAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+QEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAn5AQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEvkBAAMAAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAb+QEAAwEAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACP5AQADAgAAAAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAGAAAAAAAAAAAAAAAIAAAABQAAAAcAAAABAAAAAAAAAAYAAAADAAAAAAAAAAgAAAAFAAAABwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALfkBAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAAAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAy+QEAAwAAACQAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAEAAAADAAAAAAAAAAQAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAABAAAAAwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADf5AQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQfkBAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAYAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABG+QEAAwAAACQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAEAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAwAAAAAAAAABAAAAAwAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEv5AQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVfkBAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABa+QEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF/5AQAEAAAAoAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAAAAAAZPkBAAQAAACgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAABp+QEABAAAAKAAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAAAAAAAG75AQAEAAAAoAAAAAAAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAc/kBAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfPkBAAAAAACC+QEAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACL+QEAAAAAAJH5AQADAAEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmfkBAAMAAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACi+QEABAEBAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAKv5AQADAAAAIQAAAAAAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs/kBAAMAAAAgAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAQAAAABQAAAA8AAAABAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAQAAAAAAAAAEAAAAAUAAAAPAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7+QEAAwAAACEAAAAAAAAAAAAAAAIAAAD/////AwAAAAUAAAABAAAABAAAAAAAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMT5AQADAAAAIAAAAAAAAAAAAAAAAgAAAAEAAAADAAAABQAAAAEAAAAEAAAAAgAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzfkBAAMAAAAhAAAAAAAAAAAAAAACAAAA/////wIAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADW+QEAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAgAAAAUAAAABAAAABAAAAAIAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN/5AQADAAAAIQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAD/////AwAAAAUAAAABAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6PkBAAMAAAAgAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAABQAAAAYAAAABAAAABQAAAAEAAAAAAAAAAgAAAAEAAAADAAAABQAAAAEAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADx+QEAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAA/////wIAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPr5AQADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAABAAAAAgAAAAUAAAABAAAABAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/oBAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO+gEAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn6AQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI/oBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv+gEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADv6AQADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR/oBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABT+gEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF/6AQADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa/oBAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1+gEAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABAAAAAwAAAAIAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH76AQADAAAAIQAAAAAAAAAAAAAAAgAAAP////8AAAAABAAAAAEAAAADAAAAAAAAAAAAAAACAAAAAAAAAAQAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAh/oBAAMAAAAgAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAEAAAADAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQ+gEAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAA/////wAAAAAEAAAAAQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJn6AQACAAAAgAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ36AQAAAAAApPoBAAMAAAAhAAAAAAAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACs+gEAAwAAACAAAAAAAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAABgAAAAIAAAAAAAAAEAAAAAUAAAAPAAAAAwAAAAAAAAAGAAAAAAAAAAAAAAAQAAAABQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALT6AQADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv/oBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADK+gEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANb6AQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4voBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu+gEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPr6AQADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABfsBAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ+wEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABz7AQADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKPsBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAz+wEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD77AQADAAAAMAAAAAAAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ/sBAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABL+wEAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFP7AQADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXPsBAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABl+wEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG77AQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd/sBAAQBAACQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAACA+wEABAAAAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAIn7AQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAlfsBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAACh+wEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAK37AQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAufsBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAADF+wEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAANH7AQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAA3vsBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAADr+wEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAPj7AQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAABfwBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAS/AEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAB/8AQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAALPwBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAA5/AEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAEb8AQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAU/wBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAABg/AEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAG38AQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc/wBAAMAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAQAAAAMAAAABQAAAAsAAAABAAAAAAAAAAYAAAACAAAABAAAAAwAAAAFAAAACwAAAAMAAAAAAAAABgAAAAQAAAAEAAAADAAAAAUAAAALAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7/AEAAwAAAAEAAAAAAAAAAAAAAAYAAAAAAAAABAAAAAwAAAAFAAAACwAAAAEAAAAAAAAABgAAAAIAAAAEAAAADAAAAAUAAAALAAAAAwAAAAAAAAAGAAAABAAAAAQAAAAMAAAABQAAAAsAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIP8AQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAQAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiPwBAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAAAAAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAAAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACP/AEAAwEAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAAAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAAAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJb8AQAEAAAAoQAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAn/wBAAQAAACgAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAAAAACo/AEABAAAAKEAAAAAAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAALH8AQAEAAAAoAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAuvwBAAMBAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADC/AEAAgAAAIEAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAAAAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMn8AQACAAAAgAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAMAAAAPAAAAAQAAAAAAAAAEAAAAAgAAAAAAAAAQAAAAAwAAAA8AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0PwBAAQAAACwAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAADW/AEABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAOD8AQAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAA6vwBAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu/AEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPP8AQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//wBAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE/QEAAwAAACAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAn9AQADAAAAIAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADv0BAAMAAAAgAAAAAAAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT/QEAAwAAACAAAAAAAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABj9AQADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJP0BAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw/QEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADz9AQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASP0BAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABU/QEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGD9AQADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbP0BAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4/QEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIT9AQADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkP0BAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACc/QEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKj9AQADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsf0BAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC6/QEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMP9AQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzP0BAAMCAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADV/QEAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOH9AQADAAAAIAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAAAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7f0BAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5/QEAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAX+AQADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFP4BAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj/gEAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADL+AQADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQf4BAAMAAAAgAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQ/gEAAwAAACEBAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF/+AQADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbv4BAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB9/gEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIL+AQADAAEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjv4BAAMAAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACa/gEAAwABABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKb+AQADAAEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsv4BAAQAAACAAAAAAAAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAAAAAC7/gEABAAAAIEAAAAAAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAAAAAAAMT+AQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1f4BAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAYAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAABgAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAGAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADc/gEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAABgAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAGAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAYAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOP+AQAEAAAAsQAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAADAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAA7f4BAAQAAACwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAD3/gEABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAH/AQAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAC/8BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAW/wEAAQAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf/wEAAAAAACX/AQABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7/AQAAAAAANP8BAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPf8BAAAAAABD/wEAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABM/wEAAAAAAFL/AQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAQAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWf8BAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAABAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABg/wEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGb/AQABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG7/AQAAAAAAc/8BAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAe/8BAAAAAACA/wEAAwAAADECAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIr/AQADAAAAMAIAAAAAAAACAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAQAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlP8BAAQAAACxAgAAAAAAAAIAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAABAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAMAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAACf/wEABAAAALACAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAwAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAAAAAAAKr/AQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtP8BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACGXQIAjV0CAJxpAAASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPA/AAAAAAAAAACUXQIAlF0CAKBpAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBAAAAAAAAAAACkXQIArl0CAOhzAAASAAAA//////////8AAAAAAADwvwAAAAAAAPA/EgAAAAAAAADhXQIA7F0CAGhkAAABAAAA//////////8AAAAAAADwvwAAwP///99BEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAocgIAAQAAAAQAAAAAAAAALXICAAIAAAADAAAAAAAAADRyAgADAAAACwAAAAAAAAA4cgIAAwAAAAcAAAAAAAAAPHICAAMAAAADAQAAAAAAAEZyAgAEAAAABwEAAAAAAABKcgIABAAAADMAAAAAAAAAT3ICAAQAAAADBgAAAAAAAFpyAgAEAAAADwAAAAAAAABecgIABQAAADcAAAAAAAAAYnICAAUAAAAHBgAAAAAAAGxyAgAFAAAADwEAAAAAAABwcgIABgAAAD8AAAAAAAAAdHICAAYAAAAPBgAAAAAAAH5yAgAGAAAABwcAAAAAAACCcgIABgAAAMMGAAAAAAAAjXICAAYAAAA3AQAAAAAAAJdyAgAHAAAADwcAAAAAAACbcgIABwAAAD8BAAAAAAAApXICAAcAAADLBgAAAAAAALByAgAHAAAANwYAAAAAAAC0cgIABwAAAMcGAAAAAAAAv3ICAAgAAAA/BgAAAAAAAMNyAgAIAAAA/wAAAAAAAADNcgIACAAAAM8GAAAAAAAA3HICAAgAAAA3BwAAAAAAAOZyAgAQAAAAN/cDgAEAAAD0cgIAAgAAAAAAAGAAAAAA/3QCAAAAAABpVxSLCr8FQAF1AgAAAAAAGC1EVPshCUAEdQIAAAAAAKj0l5t34/k/CHUCAAAAAAAAAAAAAIBdQAAAAAAAALBDAMhOZ23Bq0MSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANBBAAAAAGXNzUEJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJBAAAAAAABAj0ADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBBAAAAAICELkEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBDAAA0JvVrDEMPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHBCAAAAopQabUIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPBEtJ3ZeUN46kQYAAAAAAAAAAAAAAAAAFBEUO/i1uQaS0QVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA8rEPS0V1yMjzuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIpyjfmiKIQ/exSuR+F6hD/+AAAAAAAAADxuPaX+Zbk/mpmZmZmZuT//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANA8Flbnnq8D0jzxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5uPaX+ZVlAAAAAAAAAWUACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJBAAAAAAABAj0ADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFA//Knx0k1iUD/9AAAAAAAAAAAAAAAAABA+ldYm6AsuET73AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHA9EeotgZmXcT30AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALA+je21oPfGsD76AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPA6p46omcJX8zroAAAAAAAAAAAAAAAAAJA7T5sOCrTjkjvrAAAAAAAAACGBAgAjgQIAKAAAAAIAAABADQMAAAAAAAAAAAAAAAAAAAAAAAAA4EMZAAAAAAAAADuBAgAjgQIAKAAAAAIAAAAA9AEAAAAAAAAAAAAAAAAAAADA////30EJAAAAAAAAAD6BAgBBgQIAMAAAAAEAAAAACT0AAAAAAAAAAAAAAPA/AADA////30ERAAAAAAAAAFWCAgAAAAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg////70E7AAAAVYICAFuCAgBlggIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAVYICAJCCAgCUggIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAVYICAMSCAgDJggIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAVYICAOmCAgDuggIAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ERAAAAVYICAP6CAgAFgwIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAVYICABaDAgAcgwIAAAAAAAoAAAAAAgAAAAAAAAAAAAAAAODBAADA////30EAAAAAVYICAFCDAgBWgwIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30EAAAAAVYICAIqDAgCPgwIAAAAAAAoAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ETAAAAVYICAKyDAgCxgwIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ERAAAAVYICAOCDAgDqgwIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAVYICABaEAgAchAIAAAAAAAoAAAAAAAQAAAAAAAAAAAAAAODBAADA////30ERAAAAVYICAC+EAgA5hAIAAAAAAAoAAAAAAAgAAAAAAAAAAAAAAODBAADA////30ETAAAAVYICAEmEAgBXhAIAAAAAAAoAAAAAAEAAAAAAAAAAAAAAAODBAADA////30EZAAAAVYICAJOEAgCchAIAAAAAAAoAAAAAAIAAAAAAAAAAAAAAAODBAADA////30E7AAAAVYICAMiEAgDMhAIAAAAAAAoAAAAAAAABAAAAAAAAAAAAAODBAADA////30ERAAAAVYICAP+EAgAEhQIAAAAAAAoAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ERAAAAVYICACGFAgAmhQIAAAAAAAoAAAAAAACAAAAAAAAAAAAAAODBAADA////30ERAAAAVYICADGFAgBAhQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAVYICAGmFAgBuhQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAloUCAJ2FAgCjhQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAloUCALuFAgDGhQIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAloUCAOuFAgD4hQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAloUCADeGAgA+hgIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAloUCAG2GAgB1hgIAAAAAAAoAAAAAAEAAAAAAAAAAAAAAAODBAADA////30ESAAAAloUCAJ+GAgCqhgIAAAAAAAoAAAAAAAAQAAAAAAAAAAAAAODBAADA////30ESAAAAloUCANiGAgDkhgIAAAAAAAoAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ESAAAAloUCACeHAgA5hwIAAAAAAAoAAAAAAABAAAAAAAAAAAAAAODBAADA////30EiAAAAloUCAGOHAgAAAAAATAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAG2HAgBvhwIAbAAAAAEAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJOHAgCWhwIAWAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAALaHAgC5hwIAXAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAANaHAgDdhwIAcAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAAAAAAPKHAgAAAAAAZAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EJAAAAAAAAAP2HAgAAAAAAaAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAAqIAgAAAAAAWAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABCIAgAWiAIAmAEAAAQAAAAAAAAAAADgPwAAAOD//+/HAAAA4P//70cRAAAAAAAAAI6IAgCUiAIAnAEAAAQAAAAAAAAAAADgPwAAAAAAAPC/AAAA4P//70cRAAAAAAAAALWIAgC6iAIAoAEAAAEAAAACAAAAAAAAAAAAAAAAAPC/AAAAAABAUUARAAAAAAAAAN6IAgDjiAIApAEAAAEAAAAfAAAAAAAAAAAAAAAAAPC/AAAAAAAAkEARAAAAAAAAAAeJAgANiQIAqAEAAAEAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAEOJAgBGiQIAfAAAAAEAAAAAAAAAAAAAAAAAAAAAAPC/AADA////30ERAAAAAAAAAHqJAgCEiQIAgAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAAKaJAgCxiQIAhAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANmJAgDciQIABAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAPaJAgAAAAAACAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAP6JAgAAAAAADAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAAqKAgAAAAAAEAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABWKAgAAAAAAFAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAACCKAgAAAAAAGAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAACiKAgAAAAAAHAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAADCKAgAAAAAAIAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAADuKAgAAAAAAJAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAEWKAgAAAAAAKAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAFCKAgAAAAAAFAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAFqKAgBeigIANAIAAAAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAIiKAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAJOKAgCeigIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCANSKAgDZigIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAPqKAgAFiwIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCACCLAgAAAAAAAAAAAAoAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCACSLAgAAAAAAAAAAAAoAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCADCLAgA5iwIAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAG2LAgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAHqLAgCLiwIAAAAAAAoAAAAAAgAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAMeLAgDMiwIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAP+LAgAAAAAAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAAuMAgAAAAAAAAAAAAoAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCABOMAgAWjAIAAAAAAAoAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAE6MAgBUjAIAAAAAAAoAAAAAQAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAGWMAgAAAAAAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWooCAGuMAgByjAIAOAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAa4wCAJeMAgCcjAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAa4wCAGuMAgDujAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAa4wCAD2NAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAa4wCAESNAgBPjQIAAAAAAAoAAAD//////////wAAAAAAAODBAADA////30EbAAAAa4wCAGuNAgB4jQIAAAAAAAoAAAD+/////////wAAAAAAAODBAADA////30EbAAAAa4wCAKONAgCtjQIAiAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAAM+NAgDajQIARAIAAAAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CAPSNAgD9jQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CABKOAgAcjgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CAEaOAgBNjgIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CAG6OAgB2jgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CAJ6OAgCpjgIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CALeOAgC/jgIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CACWPAgAvjwIAAAAAAAoAAAAAAAIAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CAFyPAgBnjwIAAAAAAAoAAAAAAAQAAAAAAAAAAAAAAODBAADA////30EaAAAAz40CAKWPAgAAAAAAjAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAALKPAgAAAAAAbAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAL6PAgDJjwIAkAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAO6PAgAAAAAAsAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAACQAgAIkAIAuAEAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EZAAAAAAAAAEmQAgBRkAIAwAEAAAIAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAALWQAgC9kAIArAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAOOQAgDtkAIAlAAAAAQAAACamZmZmZnpvwAAAOD//+/HAAAA4P//70cRAAAAAAAAAA+RAgAZkQIAmAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAADuRAgA/kQIAmAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAO5ECAE2RAgBSkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAO5ECAGiRAgBwkQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAO5ECAJe7AgB9kQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAO5ECAI6RAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAO5ECAJKRAgAAAAAAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAO5ECAJqRAgCfkQIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAO5ECALaRAgDAkQIAnAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAPKRAgD9kQIAoAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAABmSAgAkkgIApAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAD+SAgBGkgIAqAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAFSSAgBekgIArAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAI6SAgCTkgIAnAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAjpICAE2RAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAJe7AgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAK6SAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICALWSAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAL+SAgAAAAAAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAJKRAgAAAAAAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAMOSAgAAAAAAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAM2SAgAAAAAAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICANuSAgAAAAAAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAOeSAgAAAAAAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAPKSAgAAAAAAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAPeSAgD/kgIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICACKTAgAokwIAAAAAAAoAAAAUAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAECTAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAjpICAEuTAgAAAAAAsAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAFeTAgBakwIAPAIAAAAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAV5MCAHmTAgCDkwIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAV5MCAK6TAgC2kwIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAV5MCAOCTAgDskwIAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAV5MCABWUAgAAAAAAoAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAACuUAgAwlAIAtAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAK5QCAEKUAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAK5QCAEeUAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAK5QCAE2UAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAK5QCAFSUAgBblAIAvAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAG+UAgBblAIAvAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAHOUAgB5lAIAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30E7AAAAc5QCAJOUAgCYlAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCAKWUAgColAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAc5QCABKOAgAAAAAAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCALWUAgC9lAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCANKUAgDVlAIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCAPuUAgAAAAAAAAAAAAoAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCAAWVAgAAAAAAAAAAAAoAAAAAAIAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCABSVAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCABmVAgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCACOVAgAmlQIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCADiVAgA9lQIAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCAGqVAgAAAAAAAAAAAAoAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCAG+VAgB3lQIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAc5QCAJKVAgCdlQIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAAc5QCALKVAgC3lQIAAAAAAAoAAAAAAAABAAAAAAAAAAAAAODBAADA////30EaAAAAc5QCANCVAgDUlQIAxAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAPqVAgABlgIAyAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAB2WAgAjlgIAzAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAD+WAgBIlgIA0AAAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAGiWAgBxlgIA1AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJuWAgCllgIA2AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANmWAgDflgIA3AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAPWWAgD8lgIA4AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCACOXAgAnlwIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAEmXAgBNlwIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAGOXAgBolwIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCADuRAgCZlwIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAKyDAgDFlwIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAP2XAgABmAIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCACWYAgAomAIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAEaYAgBLmAIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAE2YAgBSmAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAHeYAgB8mAIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAKCYAgClmAIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCANGYAgAAAAAAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCANiYAgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAN+YAgDkmAIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCABKZAgAfmQIA5AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFKZAgBXmQIA6AAAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHmZAgCCmQIA7AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALSZAgAAAAAANAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAMOZAgAAAAAA1AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAw5kCAMmZAgDNmQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAw5kCALaHAgDzmQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAw5kCAASaAgAImgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAw5kCABqaAgAemgIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAw5kCAC+aAgA3mgIA2AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAEWaAgAAAAAA8AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAFGaAgBVmgIA9AAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEARAAAAUZoCAK6SAgCHmgIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAUZoCAJGaAgCWmgIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAUZoCACWYAgCmmgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAUZoCAL+aAgDMmgIAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAOOaAgDmmgIABAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAPaaAgAImwIA0AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJaFAgAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg////70EbAAAAloUCAFibAgBgmwIAsAIAAAEAAAABAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAAWJsCAE2RAgB6mwIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAWJsCAKmbAgCsmwIACAEAAAEAAAAAAAAAAAAAAAAAAAAAACDAAAAAAAAAMEARAAAAAAAAAL+bAgDFmwIAyAIAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANGbAgDamwIADAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAABGcAgAdnAIAEAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAAFecAgAAAAAAzAIAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAAV5wCAF+cAgAAAAAAAAAAAAoAAACd/////////wAAAAAAAODBAADA////30EZAAAAV5wCAGecAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAHCcAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAHicAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAICcAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAIicAgAAAAAAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAI+cAgAAAAAAAAAAAAoAAAAcAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAJmcAgAAAAAAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAKCcAgAAAAAAAAAAAAoAAAAmAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAKicAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCALacAgAAAAAAAAAAAAoAAACDAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAMOcAgAAAAAAAAAAAAoAAAAUAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAMecAgAAAAAAAAAAAAoAAAAeAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAM6cAgAAAAAAAAAAAAoAAAAoAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCANicAgAAAAAAAAAAAAoAAAAyAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAOOcAgAAAAAAAAAAAAoAAAA8AAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCAO2cAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAV5wCAPacAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAV5wCAAGdAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAV5wCAAydAgAAAAAAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAV5wCABadAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAV5wCAB2dAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV5wCACKdAgAAAAAA0AIAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAAIp0CAF+cAgAAAAAAAAAAAAoAAACd/////////wAAAAAAAODBAADA////30EZAAAAIp0CACidAgAvnQIAqAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EaAAAAAAAAAFqdAgBpnQIA3AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAH6dAgCKnQIA4AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJydAgClnQIA5AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALmdAgDBnQIA6AEAAAEAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA8ZUCAN2dAgDknQIAFAEAAAEAAADsAAAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAAA2eAgAUngIAGAEAAAEAAABKDgAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAAD2eAgBCngIAHAEAAAEAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAH2eAgCOngIA1AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CAMyeAgDWngIA2AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CAAefAgASnwIA3AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CADifAgA9nwIAAAAAAAoAAADw/////////wAAAAAAAODBAADA////30ESAAAAwp4CAE6fAgBWnwIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CAG2fAgBznwIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CAJSfAgCanwIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CALufAgDBnwIAAAAAAAoAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CAOWfAgDtnwIAAAAAAAoAAAAYAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CABCgAgAUoAIAAAAAAAoAAAAwAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAwp4CACegAgA0oAIAIAEAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEARAAAAAAAAAHSgAgB+oAIAJAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAKygAgC3oAIAKAEAAAEAAAAZAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANugAgDgoAIALAEAAAEAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAABWhAgAioQIAMAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAD2hAgBFoQIA7AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAGqhAgAAAAAANAEAAAEAAAAAAQAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAHihAgCGoQIAOAEAAAEAAAAoAAAAAAAAAAAAAAAAAPA/AADA////30ERAAAAAAAAAK+hAgAAAAAAOAAAAAEAAAD//////////wAAAAAAAODBAADA////30EZAAAAAAAAAMGhAgAAAAAA8AEAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAANahAgAAAAAA9AEAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAAOuhAgAAogIA+AEAAAIAAAD//////////wAAAAAAAPC/AAAAAAAA4EMRAAAAAAAAADqiAgAAAAAApAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAE6iAgAAAAAAeAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMLAAAATqICAF2iAgAAAAAAgAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMKAAAAXaICAHSiAgAAAAAAyAEAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAIOiAgAAAAAAzAEAAAQAAAAAAAAAAAAIQAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAJKiAgAAAAAAVAAAAAEAAAABAAAAAAAAAAAAAAAAAPA/AADA////30EbAAAAAAAAAKKiAgCyogIAPAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAAwqICANeiAgDdogIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAF+cAgDkogIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAPCiAgD3ogIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAACjAgAIowIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICABKjAgAcowIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICACijAgAyowIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAD6jAgBDowIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAEijAgBPowIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAFejAgBgowIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAGyjAgBgowIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAHejAgCAowIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAIyjAgCVowIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAKGjAgCrowIAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICALWjAgDkogIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAwqICAMGjAgDLowIAQAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAA6qMCANeiAgDdogIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAF+cAgDkogIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAPmjAgD3ogIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAAGkAgAIowIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCABKjAgAcowIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCACijAgAyowIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAAmkAgAQpAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCABekAgAepAIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCACKkAgAppAIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCADmkAgBGpAIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAFSkAgBcpAIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAGSkAgBxpAIAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAH+kAgCJpAIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAJqkAgCkpAIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCALWkAgC/pAIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAFejAgBgowIAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAMqkAgDXpAIAAAAAAAoAAAASAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCALWjAgDkogIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAOSkAgAepAIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAOikAgAppAIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAPGkAgBGpAIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAP6kAgBcpAIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAAWlAgBxpAIAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCABKlAgCJpAIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAB+lAgCkpAIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCAGyjAgBgowIAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA6qMCACylAgA3pQIARAEAAAEAAAACAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAQ6UCAFOlAgBXpQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCANeiAgDdogIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAF+cAgDkogIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAFulAgBfpQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAACjAgAIowIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCABKjAgAcowIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCACijAgAyowIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAGOlAgBppQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAG+lAgB4pQIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAISlAgCMpQIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAJelAgChpQIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCALWjAgDkogIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAKylAgBppQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCALKlAgB4pQIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAL2lAgCMpQIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQ6UCAMelAgDTpQIASAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAA36UCAF+cAgDkogIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA36UCAPClAgDzpQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA36UCAAamAgAJpgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA36UCALWjAgDkogIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA36UCABamAgDzpQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA36UCABumAgAJpgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA36UCACCmAgA3pgIATAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAATqYCAF+cAgDkogIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCAEKUAgBqpgIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCAG+mAgB2pgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCAH2mAgCFpgIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCAI6mAgCSpgIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCAJamAgChpgIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCAK2mAgC0pgIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCALWjAgDkogIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATqYCALumAgDMpgIABAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAOWmAgDspgIAUAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAACSnAgAwpwIAtAIAAAAAAAADAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAAJKcCAEunAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAJKcCAFGnAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAJKcCAFenAgBqpwIAiAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEAJAAAAV6cCAH2nAgCApwIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCAJOnAgCWpwIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCAJ6nAgChpwIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCALOnAgC2pwIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCAMenAgDKpwIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCANOnAgDWpwIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCAOGnAgDkpwIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCAO6nAgDxpwIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCAPynAgD/pwIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAV6cCAAeoAgAaqAIAjAEAAA0AAAD//////////wAAAAAAAPC/AADA////30EKAAAAB6gCAEWoAgAAAAAABAMAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAFKoAgBeqAIAMAMAAAUAAAAAAAAAAAAAAAAAAAAAAGDAAAAAAADAX0AiAAAAAAAAAIqoAgCbqAIANAMAAAAAAAAAAAAAAAAAAAAAAAAAAPC/AADA////30EiAAAAiqgCAMyoAgAAAAAAAAAAAAoAAAD//////////wAAAAAAAODBAADA////30EiAAAAiqgCAE2RAgAAAAAAAAAAAAoAAAAAAAAA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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////GgAAAAEAAACduAIAs7gCANq4AgAAuQIAFrkCAD25AgBjuQIAebkCAKC5AgDGuQIA3LkCAAO6AgAnugIAPboCAGS6AgAnugIAiLoCAK+6AgAnugIAiLoCAK+6AgAnugIAiLoCAK+6AgDTugIA6boCABC7AgAAAAAAAAAAFL4oCh3NpVMkqX9ZJnViRixyjHMtgfyxLgAAADTXIK40lNZiNZauHTb0R942ek+kN2W+NzwkyJ88vigKPfXGdj0LjOU9YWNWPi46yT4+/z0/vKK0PwWLFkTNpVNEapuRRPtl0EQAABBFUWRQRRWOkUW7eNNF8x8WRql/WUYAlJ1GTFniRhHMJ0f86G1H46y0R78U/EfXDiJMdWJGTOcDa0zo8Y9MPyu1TMCu2kxJewBNxo8mTSrrTE1yjHNNpXKaTdOcwU0SCulNgrkQTkiqOE6R22BOkEyJToH8sU6h6tpONhYET4t+LU/vIldPuAKBTz4dq0/gcdVPAAAAVIFjFVQq4ypUsX5AVM81VlQ+CGxUu/WBVAP+l1TXIK5U9l3EVCS12lQkJvFUvLAHVbFUHlXLETVV1OdLVZTWYlXY3XlVbP2QVRw1qFW4hL9VDuzWVe9q7lUrAQZWlq4dVgJzNVZDTk1WLUBlVpZIfVZTZ5VWPZytVivnxVb0R95Wc772VoBKD1f36ydXsqJAV41uWVdkT3JXFEWLV3pPpFd1br1X4qHWV6Hp71fJogRcyloRXMQcHlyn6CpcZb43XO6dRFwzh1FcJnpeXLl2a1zcfHhcg4yFXJ+lklwkyJ9cAvSsXC4pulyaZ8dcOq/UXAAA4lzgWe9czrz8XL4oCl2knRddcxslXSCiMl2gMUBd58lNXelqW12cFGld9cZ2XemBhF1tRZJddhGgXfrlrV3vwrtd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eQa1ArUCtQK1AhULFQu1AbUBBwu3AJcGRwo3CqcDVwmXBSUKJQqlAqUCFQoVCqUBpQEHCmcIpQClAIcGRwmVA5UDNwlXCIcFZwclCSUJlQKVAlcHdwU1CDUIhQOFA2cGRwd3BFcGZwV3AxMJkwEFCZUARQiFBHUCdQJHBmcEIwgjCCMIIwiDAhMINQclBxMHEwdzAXMBVQUFB3UANQZlA0UFVQQlBmUCNQUDCIMAEwZjAQMGYwBVA0UEIwUjBVMCAwUzBEMDUwAjBEMCMwNGGPkP6Q/ZD+kOyQ/ZDrkP+QvJDtkMwhjnDOcM1w3XDfkKyQ23DrcO5wvnC5cPlw/3CfcJ5wrnCrcNtw3XC9cLhw+HD/cI9wjHDMcMqQ6ZDocOhw55D3kO9Qf1B/UH9QfVCtUKpw23DMcL9wZlD2UP5QhVD5UN1Qn1BeUHpQy1C0UPRQ/1BPUExwrnBvUD9QMzDzMPhQ3VCCMP8wJlDpUMAw8DD8UJVQ6jC6MLdQ3VB0MOQw7FCNUGMw4zDrMJswmVC6UKswrjBeMEgwxjDeMDIw4DDuMAUw3TBXMMwwdDDYMLswjTBJMKowljDNMDcwtTDMMFkwlzCqMHkwf3DvcM9Q31DeMN4w3jDeMNow/jCQgBCAIIAwgECAUGBoYGBAdCB2IHFwEXAQkBGQAHAAcAiAeICIgJiAqIC4YMBg2IDYYOBg+GDwYQhBDGEEYRxBEEEkQShBLEEgQTRBOEE8QTAhQiFEIUZBSiFMIU5BQiFUIVYhWZAYIVohXCFeIVAhYpCIkCGQiJASIWQhZiFoIWKQd5AmkEGQdZBXkBohY5BmkDSQVZBCkGaQIZBsIWOQVnAWcBWQNJBCcFJwVXAlcCFwUXBVcBVwEJBVkANwQ3BEcDJwRHAjcDRQFFARcEBwQlAyUDNQI1AkcABwMVAxUDNQE1ACMCIwITAiMBAwIjAOIWAhfpDiIXQhdiF/kLghfZDakP+Qq5DukLyQ3ZDJkP+QnpCrkN2QuJD/kIyQyZDukJeQ/5B6kN2Qq5DGkPohfHC8cL9wb3BokO6QhZD5kN9wX3BXcOdw7nB+cHpwynDMcKxwq3C7cL2QmJDUcPRw/3BPcENw83D/cD9wPXCNcI5wbnBicPJw/3AvcCaQ75ABcPFw/3AfcBlwyXDMcJxwlXDqcLtwrnBXcN1wdHDucEhwzHCDcOZw3XBucDlwu3CScOJw6nCqcK5wLnAhcOFw7nAecBCQ7pAFcNVw3XBdcFdwzHB0cNhwvVBNUEtwiXCqcJZwzHBjcN1QPVA9UC1QInDQcNFQ0VDXULdQu1B7UH1QHVAVcM1wDFBcUFhQqFCqUIRQzFBGULtQa1BpcJBww1DDUMxQPFA3UKdQqlB6UHpQalBscABwvDAsMCJQxVC7UFFQyFCZUIxQFFC7UEZQo1C3UJswOzA5UHhQglC1UKswKzAqUFFQuzAbMBtQBlCZUGRQqlBHUIhQc1CqMDowNTCZMFIwqjAhMKowEFCqUAYwhjCIMGQwmTBDMJkwOTA3UHBQlTCIMFIwljB3MGkwITCZMAQwiDBFMHcwUzCIMDYwZDB3MEAwiDAFMGYwUzB3MDQwYDB3MAAwZjAPMP4w/zDtMP8w3DD/MM0w7jDbMPww7jDKMOAw8IAQgCCAMEBBkBCQEXABcAAwADAAMAAwADAAMAAwADAEYExgREBfkPhAXCBegF+QLiBhkP+QEIBwgICAkICggLCAwGDYYNBg6GDgYPhg8GEIQQxBACESQRZBGiEVkBwhHiEQISIhIZBEkBQhIpAzkCFwMXAzcBNwEJAzkAJwInAhUCJQEFAiUA5w/3DtcP9w3HD/cMtw/3C6UPpQ/3CpcP9wn3CIUPhQ91D/UHZQ/1BlUP9QVDD0MP8wTzA/MA8wDzAPMA8wDzAPMA8wA1DzUPNQ81D2gSZhPmE2YUIw8DD+QUJBVkFaIVxBUEFkIWZBakFuQWJBfpA2IXgheiF8IX4hcCGCIYCQ1CGGIYghg5DKIYGQzJAMIY5wLnAikOGQ7ZAykN2QLZATkL4hgXDRcNyQRpC8kDqQcnDCcMyQK5BckBCQxJC7kEaQqpBrcDtwNZCqkFJwsnC7cCtwIXCxcLtwG3AQkLuQBpCZkGSQqpBHkIiQenA6cDOQpZCScKJwqZBWkIpwGnAYkGeQeXBJcESQlZB2cHZwelAqUCpQKlAhUKFQoHCqcANwmXA1cIhwUlCSUJlQKVAncGBwkVCRUJlQGVAZcARwiHBHcFNwiHA2cGJwiFAoUCRwd3BBUIFQiFAYUBhQCFAAcIVwY1BzUHdQN1A2cFRwYlByUHdQJ1AmcEVwUFBwUHEwcTBxMHEwdzAXMBdQA1BmUDRQVVBCUGYwITBmMBYwEFBmUAUwNTAzUFRQQjBVMCEwUDBTMEQwNTACMEQwIzAwMEQwDJDgIZ1w7XDucJ5wnpCtkJ5Q7lDuUO5Q7nDecN5wvnC7UOtQ7FDcUN1wzXC6UOpQ7FDMUMpw3XCncOpwzFCsUKxwl3DVUOVQ6zDbMNsw2zDZMOkw61DMULhQ7lCJUN5Qe1C4UN1QhlDuMGkwylC7UK5QXVB0MOQw7lBIUMwwgzDmMNYw3VBpULtQmlCuMB4wHTBNMEtQilCXMLcwu1B9UAAw7jAFMN0wVzDMMHQw2DC5MKYwzDBjMNUwzDBYMKowiTCUMMswZzClMLgwmTCHMJkweDCOMM0w0IAQgCCAP5DwgECAUIBggHCAgICQYKhAoZAQkBGQAJAOkP+Q7ZD/kNyQ/5DLkP+Qv3CvcKqQ+ZD/cJ9wn3CPcIiQ95D/cH9wdnD2cP9wb3BlcPVw/3BfcFRw9HD/cE9wQ3DzcP9wP3AycPJw/3AvcC9wH3ARkP+QDGCkYLxgtGDMgMxg1GDsYORA+ED8QPBBBEEIQQxBAEEUQRhhEEEkQShBLGEkQThhMCFCQUZBSiFMQUAhUiFUIVYhWCFaIVwhXiFQIWIhZCFmIWghaiFsIW4hYCFyQXYheEF3kDwhd5AkkGaQRZBXkBOQZpA0kFWQQpBmkCGQZpAeIXOQVZA0kEKQVZAhkFAhhXAVcBOQRJAycEJwRHAkcCNwM3AxcEFwRHAUcBCQRJACcDJwM3AjcCFQMVAxUDFQM1ATUBNQE1AQcDNwAlAiUCEwITAhMCEwIjASMBBQIlAAMPAw8DDwMP5w7XDucNxw7nDNcNtw7nC8cN1wynDucKtw3XC8cMlw7nCacN1wq3DMcLhw7nCJcN1wl3DucHpwzHCscKtwu3C4cNhw3XCNcICQ7pAAcNBw3lBuUG5QblBmcOlwzFCcUJVQ5VDrUKtQrlBeUFpwt3DdUH1QflBOUEhQyFDMUIxQhHDicONQ41DmUN1QblA5ULtQmlCuUCFQ7lAVUN1QV1DMUHRQ2FC7UI1QSVCqUJZQzFBjUN1QMlDdUCFQ11C7UH1QFVDMUFhQqlCJUJRQzFBGULZQu1BrUG1wAHDDUMNQzFA3UKpQclDMUCVQu1BRUMhQmVCMUBRQvHAAcLNQs1C7cABwoVChUKswSzBGUKpQZ1CXUJlQeVB6cABwmVAJUAswODCCULVQqzArMCpQUVC7UBZQmTBqMERQp1CIMHgwczCqMDUwmTBSMKowKjAWMIgwZzB0MJkwQzCZMDUwiDBSMJYwdzBpMCEwmTAUMIgwRTB3MFMwiDA2MGIwiDAhMIQwdzBIMBgwEFCIUAUwZjBRMHEwcFB3UAMwcjBwMGYwADBVMAAAAFgA+ACgAbgB4AFAARgDOANgA8ADmAKAAtgCeAIgBjgGYAbABpgHgAfYB3gHIAUABVgF+AWgBLgE4ARABBgMOAxgDMAMmA2ADdgNeA0gDwAPWA/4D6AOuA7gDkAOGAoAClgK+AqgC7gL4AtACxgJOAlgCcAJmAiACNgIeAggCDgYYBjAGJgZgBnYGXgZIBsAG1gb+BugGrga4BpAGhgeAB5YHvgeoB+4H+AfQB8YHTgdYB3AHZgcgBzYHHgcIBQAFFgU+BSgFbgV4BVAFRgXOBdgF8AXmBaAFtgWeBYgEjgSYBLAEpgTgBPYE3gTIBEAEVgR+BGgELgQ4BBAEBgQODBgMMAwmDGAMdgxeDEgMwAzWDP4M6AyuDLgMkAyGDYANlg2+DagN7g34DdANxg1ODVgNcA1mDSANNg0eDQgPAA8WDz4PKA9uD3gPUA9GD84P2A/wD+YPoA+2D54PiA6ODpgOsA6mDuAO9g7eDsgOQA5WDn4OaA4uDjgOEA4GDgAKFgo+CigKbgp4ClAKRgrOCtgK8ArmCqAKtgqeCogLjguYC7ALpgvgC/YL3gvIC0ALVgt+C2gLLgs4CxALBgkOCRgJMAkmCWAJdgleCUgJwAnWCf4J6AmuCbgJkAmGCIAIlgi+CKgI7gj4CNAIxghOCFgIcAhmCCAINggeCAgJKZXNzaWNhACRwbGF5AG9uRGF0YQAkY2xvc2UAZGVjb2RlVmlkZW9CdWZmZXIAaXNQbGF5aW5nAGZsdk1vZGUAYXVkaW9CdWZmZXIAdmlkZW9CdWZmZXIAYnBzAGJ1ZmZlckluZm8ASmVzc2lidWNhAGNsb3NlAGlzV2ViR0wAd2ViZ2w6JXMAdHJ1ZQBmYWxzZQAuZmx2AFdlYlNvY2tldABiaW5hcnlUeXBlAGFycmF5YnVmZmVyAG9ubWVzc2FnZQB3cwBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBOU3QzX18yMjFfX2Jhc2ljX3N0cmluZ19jb21tb25JTGIxRUVFAGJpbmQATjEwZW1zY3JpcHRlbjN2YWxFAGRhdGEAdW5rbm93IHR5cGU6ICVkAHNlbmQAWyJfX2JhbmR3aWR0aCJdAGVycm9yIHR5cGUgOiVkAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAOElPQnVmZmVyADVTbGljZQBwbGF5QXVkaW8AaW5pdEF1ZGlvAHNldCBhdWRpbyBidWZmZXJMZW5ndGg6JWQAdmlkZW8gaW5mbyBzZXQhAHJlc2V0VGltZVNwYW4AY29kZWMgbm90IHN1cHBvcnQ6ICVkAHBsYXlWaWRlb0J1ZmZlcgB0aW1lc3BhbgBjbGVhclRpbWVvdXQAZnJvbnQAYmFjawBzaXplADdKZXNzaWNhAFA3SmVzc2ljYQBQSzdKZXNzaWNhAGlpAHYAdmlpaQB2aWkAaWlpAG5vdGlmeU9uRGVzdHJ1Y3Rpb24AaW1wbGVtZW50AGV4dGVuZAA5SmVzc2lidWNhAE4xMGVtc2NyaXB0ZW43d3JhcHBlckk3SmVzc2ljYUVFAE4xMGVtc2NyaXB0ZW44aW50ZXJuYWwxMVdyYXBwZXJCYXNlRQBQOUplc3NpYnVjYQBQSzlKZXNzaWJ1Y2EAaWlpaQBhdWRpbyBpbml0ISAlZABtcDMgaW5pdCEARkZNcGVnIGluaXQANkZGbXBlZwAxMlZpZGVvRGVjb2RlcgB2aWRlbyBkZWNvZGVyIHJlbGVhc2UhCgBGRk1wZWcgZGVzdG9yeQBzZXRWaWRlb1NpemUAZHJhdwBhdWRpbyBkZWNvZGVyIHJlbGVhc2UKAGF1ZGlvIGRlY29kZXIgcmVsZWFzZSEKAEZsdkRlY29kZXIgcmVsZWFzZSEKAF9fZGVzdHJ1Y3QAAAABAQICAgIDAwMDAwMDAwQEBAQEBAQEBAQEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwCAQMAgoGDgEJBQ0DCwcPAIiEjIKKho6BiYWNg4uHj4BIRExCSkZOQUlFTUNLR09AyMTMwsrGzsHJxc3Dy8fPwCgkLCIqJi4hKSUtIysnLyCopKyiqqauoamlraOrp6+gaGRsYmpmbmFpZW1ja2dvYOjk7OLq5u7h6eXt4+vn7+AYFBwSGhYeERkVHRMbFx8QmJSckpqWnpGZlZ2Tm5efkFhUXFJaVl5RWVVdU1tXX1DY1NzS2tbe0dnV3dPb19/QODQ8Mjo2PjE5NT0zOzc/MLi0vLK6tr6xubW9s7u3v7B4dHxyenZ+cXl1fXN7d39w+PT88vr2/vH59f3z+/f/9GYWlsZWQgdG8gcmVhbGxvY2F0ZSBwYXJzZXIgYnVmZmVyIHRvICVkCgBuZXh0ID49IDAgfHwgcGMtPmJ1ZmZlcgBsaWJhdmNvZGVjL3BhcnNlci5jACVzJXMlcyVzACAgICBMYXN0IG1lc3NhZ2UgcmVwZWF0ZWQgJWQgdGltZXMNACAgICBMYXN0IG1lc3NhZ2UgcmVwZWF0ZWQgJWQgdGltZXMKABtbJXU7MyV1bSVzG1swbQAbWzQ4OzU7JXVtG1szODs1OyVkbSVzG1swbQAbWzQ4OzU7JXVtG1szODs1OyV1bSVzG1swbQBURVJNAE5PX0NPTE9SAEFWX0xPR19GT1JDRV9OT0NPTE9SAEFWX0xPR19GT1JDRV9DT0xPUgBBVl9MT0dfRk9SQ0VfMjU2Q09MT1IAMjU2Y29sb3IAWyVzIEAgJXBdIABbJXNdIABwYW5pYwBmYXRhbABlcnJvcgB3YXJuaW5nAGluZm8AdmVyYm9zZQBxdWlldAAAAQIDBAUGCEEgbm9uLU5VTEwgcGFja2V0IHNlbnQgYWZ0ZXIgYW4gRU9GLgoAQ29kZWMgJyVzJyAoJWQpIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIGJpdHN0cmVhbSBmaWx0ZXIgJyVzJy4gU3VwcG9ydGVkIGNvZGVjcyBhcmU6IAAlcyAoJWQpIABtcGVnMXZpZGVvAG1wZWcydmlkZW8AaDI2MQBoMjYzAHJ2MTAAcnYyMABtanBlZwBtanBlZ2IAbGpwZWcAc3A1eABqcGVnbHMAbXBlZzQAcmF3dmlkZW8AbXNtcGVnNHYxAG1zbXBlZzR2MgBtc21wZWc0djMAd212MQB3bXYyAGgyNjNwAGgyNjNpAGZsdjEAc3ZxMQBzdnEzAGR2dmlkZW8AaHVmZnl1dgBjeXV2AGluZGVvMwB2cDMAdGhlb3JhAGFzdjEAYXN2MgBmZnYxADR4bQB2Y3IxAGNsanIAbWRlYwByb3EAaW50ZXJwbGF5dmlkZW8AeGFuX3djMwB4YW5fd2M0AHJwemEAY2luZXBhawB3c192cWEAbXNybGUAbXN2aWRlbzEAaWRjaW4AOGJwcwBzbWMAZmxpYwB0cnVlbW90aW9uMQB2bWR2aWRlbwBtc3poAHpsaWIAcXRybGUAdHNjYwB1bHRpAHFkcmF3AHZpeGwAcXBlZwBwbmcAcHBtAHBibQBwZ20AcGdteXV2AHBhbQBmZnZodWZmAHJ2MzAAcnY0MAB2YzEAd212MwBsb2NvAHdudjEAYWFzYwBpbmRlbzIAZnJhcHMAdHJ1ZW1vdGlvbjIAYm1wAGNzY2QAbW12aWRlbwB6bWJ2AGF2cwBzbWFja3ZpZGVvAG51dgBrbXZjAGZsYXNoc3YAY2F2cwBqcGVnMjAwMAB2bW5jAHZwNQB2cDYAdnA2ZgB0YXJnYQBkc2ljaW52aWRlbwB0aWVydGV4c2VxdmlkZW8AdGlmZgBnaWYAZHhhAGRueGhkAHRocABzZ2kAYzkzAGJldGhzb2Z0dmlkAHB0eAB0eGQAdnA2YQB2YgBwY3gAc3VucmFzdABpbmRlbzQAaW5kZW81AG1pbWljAHJsMgBlc2NhcGUxMjQAZGlyYWMAYmZpAGNtdgBtb3Rpb25waXhlbHMAdGd2AHRncQB0cWkAYXVyYQBhdXJhMgB2MjEweAB0bXYAdjIxMABkcHgAbWFkAGZyd3UAZmxhc2hzdjIAY2RncmFwaGljcwByMjEwAGFubQBiaW5rdmlkZW8AaWZmX2lsYm0Aa2d2MQB5b3AAdnA4AHBpY3RvcgBhbnNpAGE2NF9tdWx0aQBhNjRfbXVsdGk1AHIxMGsAbXhwZWcAbGFnYXJpdGgAcHJvcmVzAGp2AGRmYQB3bXYzaW1hZ2UAdmMxaW1hZ2UAdXR2aWRlbwBibXZfdmlkZW8AdmJsZQBkeHRvcnkAdjQxMAB4d2QAY2R4bAB4Ym0AemVyb2NvZGVjAG1zczEAbXNhMQB0c2NjMgBtdHMyAGNsbGMAbXNzMgB2cDkAZXNjYXBlMTMwAGcybQB3ZWJwAGhubTR2aWRlbwBoZXZjAGZpYwBhbGlhc19waXgAYnJlbmRlcl9waXgAcGFmX3ZpZGVvAGV4cgB2cDcAc2FubQBzZ2lybGUAbXZjMQBtdmMyAGhxeAB0ZHNjAGhxX2hxYQBoYXAAZGRzAGR4dgBzY3JlZW5wcmVzc28AcnNjYwB5NDFwAGF2cnAAMDEydgBhdnVpAGF5dXYAdGFyZ2FfeTIxNgB2MzA4AHY0MDgAeXV2NABhdnJuAGNwaWEAeGZhY2UAc25vdwBzbXZqcGVnAGFwbmcAZGFhbGEAY2ZoZAB0cnVlbW90aW9uMnJ0AG0xMDEAbWFnaWN5dXYAc2hlZXJ2aWRlbwB5bGMAcHNkAHBpeGxldABzcGVlZGhxAGZtdmMAc2NwcgBjbGVhcnZpZGVvAHhwbQBhdjEAYml0cGFja2VkAG1zY2MAc3JnYwBzdmcAZ2R2AGZpdHMAcGNtX3MxNmxlAHBjbV9zMTZiZQBwY21fdTE2bGUAcGNtX3UxNmJlAHBjbV9zOABwY21fdTgAcGNtX211bGF3AHBjbV9hbGF3AHBjbV9zMzJsZQBwY21fczMyYmUAcGNtX3UzMmxlAHBjbV91MzJiZQBwY21fczI0bGUAcGNtX3MyNGJlAHBjbV91MjRsZQBwY21fdTI0YmUAcGNtX3MyNGRhdWQAcGNtX3pvcmsAcGNtX3MxNmxlX3BsYW5hcgBwY21fZHZkAHBjbV9mMzJiZQBwY21fZjMybGUAcGNtX2Y2NGJlAHBjbV9mNjRsZQBwY21fYmx1cmF5AHBjbV9seGYAczMwMm0AcGNtX3M4X3BsYW5hcgBwY21fczI0bGVfcGxhbmFyAHBjbV9zMzJsZV9wbGFuYXIAcGNtX3MxNmJlX3BsYW5hcgBwY21fczY0bGUAcGNtX3M2NGJlAHBjbV9mMTZsZQBwY21fZjI0bGUAYWRwY21faW1hX3F0AGFkcGNtX2ltYV93YXYAYWRwY21faW1hX2RrMwBhZHBjbV9pbWFfZGs0AGFkcGNtX2ltYV93cwBhZHBjbV9pbWFfc21qcGVnAGFkcGNtX21zAGFkcGNtXzR4bQBhZHBjbV94YQBhZHBjbV9hZHgAYWRwY21fZWEAYWRwY21fZzcyNgBhZHBjbV9jdABhZHBjbV9zd2YAYWRwY21feWFtYWhhAGFkcGNtX3NicHJvXzQAYWRwY21fc2Jwcm9fMwBhZHBjbV9zYnByb18yAGFkcGNtX3RocABhZHBjbV9pbWFfYW12AGFkcGNtX2VhX3IxAGFkcGNtX2VhX3IzAGFkcGNtX2VhX3IyAGFkcGNtX2ltYV9lYV9zZWFkAGFkcGNtX2ltYV9lYV9lYWNzAGFkcGNtX2VhX3hhcwBhZHBjbV9lYV9tYXhpc194YQBhZHBjbV9pbWFfaXNzAGFkcGNtX2c3MjIAYWRwY21faW1hX2FwYwBhZHBjbV92aW1hAGFkcGNtX2FmYwBhZHBjbV9pbWFfb2tpAGFkcGNtX2R0awBhZHBjbV9pbWFfcmFkAGFkcGNtX2c3MjZsZQBhZHBjbV90aHBfbGUAYWRwY21fcHN4AGFkcGNtX2FpY2EAYWRwY21faW1hX2RhdDQAYWRwY21fbXRhZgBhbXJfbmIAYW1yX3diAHJhXzE0NAByYV8yODgAcm9xX2RwY20AaW50ZXJwbGF5X2RwY20AeGFuX2RwY20Ac29sX2RwY20Ac2R4Ml9kcGNtAGdyZW1saW5fZHBjbQBtcDIAbXAzAGFhYwBhYzMAdm9yYmlzAGR2YXVkaW8Ad21hdjEAd21hdjIAbWFjZTMAbWFjZTYAdm1kYXVkaW8AZmxhYwBtcDNhZHUAbXAzb240AHNob3J0ZW4AYWxhYwB3ZXN0d29vZF9zbmQxAGdzbQBxZG0yAGNvb2sAdHJ1ZXNwZWVjaAB0dGEAc21hY2thdWRpbwBxY2VscAB3YXZwYWNrAGRzaWNpbmF1ZGlvAGltYwBtdXNlcGFjazcAbWxwAGdzbV9tcwBhdHJhYzMAYXBlAG5lbGx5bW9zZXIAbXVzZXBhY2s4AHNwZWV4AHdtYXZvaWNlAHdtYXBybwB3bWFsb3NzbGVzcwBhdHJhYzNwAGVhYzMAc2lwcgBtcDEAdHdpbnZxAHRydWVoZABtcDRhbHMAYXRyYWMxAGJpbmthdWRpb19yZGZ0AGJpbmthdWRpb19kY3QAYWFjX2xhdG0AcWRtYwBjZWx0AGc3MjNfMQBnNzI5ADhzdnhfZXhwADhzdnhfZmliAGJtdl9hdWRpbwByYWxmAGlhYwBpbGJjAG9wdXMAY29tZm9ydG5vaXNlAHRhawBtZXRhc291bmQAcGFmX2F1ZGlvAGF2YwBkc3Nfc3AAY29kZWMyAHdhdmVzeW50aABzb25pYwBzb25pY2xzAGV2cmMAc212AGRzZF9sc2JmAGRzZF9tc2JmAGRzZF9sc2JmX3BsYW5hcgBkc2RfbXNiZl9wbGFuYXIANGd2AGludGVycGxheWFjbQB4bWExAHhtYTIAZHN0AGF0cmFjM2FsAGF0cmFjM3BhbABkb2xieV9lAGFwdHgAYXB0eF9oZABzYmMAZHZkX3N1YnRpdGxlAGR2Yl9zdWJ0aXRsZQB0ZXh0AHhzdWIAc3NhAG1vdl90ZXh0AGhkbXZfcGdzX3N1YnRpdGxlAGR2Yl90ZWxldGV4dABzcnQAbWljcm9kdmQAZWlhXzYwOABqYWNvc3ViAHNhbWkAcmVhbHRleHQAc3RsAHN1YnZpZXdlcjEAc3Vidmlld2VyAHN1YnJpcAB3ZWJ2dHQAbXBsMgB2cGxheWVyAHBqcwBoZG12X3RleHRfc3VidGl0bGUAdHRmAHNjdGVfMzUAYmludGV4dAB4YmluAGlkZgBvdGYAa2x2AGR2ZF9uYXZfcGFja2V0AHRpbWVkX2lkMwBiaW5fZGF0YQB3cmFwcGVkX2F2ZnJhbWUAYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtAGFwcGxpY2F0aW9uL3ZuZC5tcy1vcGVudHlwZQBhcHBsaWNhdGlvbi94LXRydWV0eXBlLWZvbnQAYXBwbGljYXRpb24veC1mb250AGltYWdlL3N2Zyt4bWwAaW1hZ2UveC14cGl4bWFwAGltYWdlL3BuZwBpbWFnZS93ZWJwAGltYWdlL3gteGJpdG1hcABpbWFnZS94LXh3aW5kb3dkdW1wAGltYWdlL3gtcGN4AGltYWdlL2dpZgBpbWFnZS90aWZmAGltYWdlL3gtdGFyZ2EAaW1hZ2UveC10Z2EAaW1hZ2UvanAyAGltYWdlL3gtbXMtYm1wAGltYWdlL3gtcG9ydGFibGUtcGl4bWFwAGltYWdlL2pwZWcACQgHBwYGBgYFBQUFBQUFBQQEBAQEBAQEBAQEBAQEBAQDAwMDAwMD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AQEBAQEBAQEBAQEBAQEBASAgICAgICAgHyAgICAgICAPEBESExQVFhcYGRobHB0eBwcHBwgICAgJCQkJCgoKCgsLCwsMDAwMDQ0NDQ4ODg4DAwMDAwMDAwMDAwMDAwMDBAQEBAQEBAQEBAQEBAQEBAUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEREREREREREQEREREREREQj4CfcK9gv1DPQN8w7yD/EEBAQE/Pz8/AUFBQX7+/v7BgYGBvr6+voHBwcH+fn5+QICAgICAgICAgICAgICAgL+/v7+/v7+/v7+/v7+/v7+AwMDAwMDAwMDAwMDAwMDA/39/f39/f39/f39/f39/f0BAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEGBS8fDwAXGx0eBwsNDicrLS4QAwUKDBMVGhwjJSosAQIECBESFBgGCRYZICEiJCgmKQAQAQIECCADBQoMDy8HCw0OBgkfIyUqLCEiJCgnKy0uERIUGBMVGhwXGx0eFhkmKQAQIDAAIBBAYDBQcAoNEAsOEg0QFA4SFxAUGRIXHQADBAMDAQUBBAUCBQMBBQEUEiATGRgWEyMVHBoaFyoYIR8cGS0aIyEgHDMeKCYkIDoiLisAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDAAAAAAAAAQEBAQEBAgICAgICAwMDAwMDBAQEBAQEBQUFBQUFBgYGBgYGBwcHBwcHCAgICAgICQkJCQkJCgoKCgoKCwsLCwsLDAwMDAwMDQ0NDQ0NDg4ODgABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR0eHyAgISIiIyMkJCUlJSYmJicnJycAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMjJCUmJicoKCkpKiorKyssLCwtLS0tAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKSorLCwtLi4vLzAwMTExMjIyMzMzMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLy8wMTIyMzQ0NTU2Njc3Nzg4ODk5OTkAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU1Njc4ODk6Ojs7PDw9PT0+Pj4/Pz8/AAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7Ozw9Pj4/QEBBQUJCQ0NDRERERUVFRQAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUFCQ0RERUZGR0dISElJSUpKSktLS0toMjY0AHRocmVhZF9yZWxlYXNlX2J1ZmZlciBjYWxsZWQgb24gcGljICVwCgBmcmFtZS0+bmJfZXh0ZW5kZWRfYnVmID09IDAAbGliYXZjb2RlYy9kZWNvZGUuYwBkZWZhdWx0X2dldF9idWZmZXIgY2FsbGVkIG9uIGZyYW1lICVwAHBpYy0+ZGF0YVsqXSE9TlVMTCBpbiBhdmNvZGVjX2RlZmF1bHRfZ2V0X2J1ZmZlcgoAVW5hYmxlIHRvIGdldCBwaXhlbCBmb3JtYXQgZGVzY3JpcHRvciBmb3IgZm9ybWF0ICVzCgBkZWZhdWx0X2dldF9idWZmZXIgY2FsbGVkIG9uIHBpYyAlcAoAeXV2NDIwcAB5dXl2NDIyAHJnYjI0AGJncjI0AHl1djQyMnAAeXV2NDQ0cAB5dXY0MTBwAHl1djQxMXAAZ3JheTgseTgAbW9ub3cAbW9ub2IAcGFsOAB5dXZqNDIwcAB5dXZqNDIycAB5dXZqNDQ0cAB1eXZ5NDIyAHV5eXZ5eTQxMQBiZ3I4AGJncjQAYmdyNF9ieXRlAHJnYjgAcmdiNAByZ2I0X2J5dGUAbnYxMgBudjIxAGFyZ2IAcmdiYQBhYmdyAGJncmEAZ3JheTE2YmUAeTE2YmUAZ3JheTE2bGUAeTE2bGUAeXV2NDQwcAB5dXZqNDQwcAB5dXZhNDIwcAByZ2I0OGJlAHJnYjQ4bGUAcmdiNTY1YmUAcmdiNTY1bGUAcmdiNTU1YmUAcmdiNTU1bGUAYmdyNTY1YmUAYmdyNTY1bGUAYmdyNTU1YmUAYmdyNTU1bGUAdmFhcGlfbW9jbwB2YWFwaV9pZGN0AHZhYXBpX3ZsZAB5dXY0MjBwMTZsZQB5dXY0MjBwMTZiZQB5dXY0MjJwMTZsZQB5dXY0MjJwMTZiZQB5dXY0NDRwMTZsZQB5dXY0NDRwMTZiZQBkeHZhMl92bGQAcmdiNDQ0bGUAcmdiNDQ0YmUAYmdyNDQ0bGUAYmdyNDQ0YmUAeWE4AGdyYXk4YQBiZ3I0OGJlAGJncjQ4bGUAeXV2NDIwcDliZQB5dXY0MjBwOWxlAHl1djQyMHAxMGJlAHl1djQyMHAxMGxlAHl1djQyMnAxMGJlAHl1djQyMnAxMGxlAHl1djQ0NHA5YmUAeXV2NDQ0cDlsZQB5dXY0NDRwMTBiZQB5dXY0NDRwMTBsZQB5dXY0MjJwOWJlAHl1djQyMnA5bGUAZ2JycABnYnJwOWJlAGdicnA5bGUAZ2JycDEwYmUAZ2JycDEwbGUAZ2JycDE2YmUAZ2JycDE2bGUAeXV2YTQyMnAAeXV2YTQ0NHAAeXV2YTQyMHA5YmUAeXV2YTQyMHA5bGUAeXV2YTQyMnA5YmUAeXV2YTQyMnA5bGUAeXV2YTQ0NHA5YmUAeXV2YTQ0NHA5bGUAeXV2YTQyMHAxMGJlAHl1dmE0MjBwMTBsZQB5dXZhNDIycDEwYmUAeXV2YTQyMnAxMGxlAHl1dmE0NDRwMTBiZQB5dXZhNDQ0cDEwbGUAeXV2YTQyMHAxNmJlAHl1dmE0MjBwMTZsZQB5dXZhNDIycDE2YmUAeXV2YTQyMnAxNmxlAHl1dmE0NDRwMTZiZQB5dXZhNDQ0cDE2bGUAdmRwYXUAeHl6MTJsZQB4eXoxMmJlAG52MTYAbnYyMGxlAG52MjBiZQByZ2JhNjRiZQByZ2JhNjRsZQBiZ3JhNjRiZQBiZ3JhNjRsZQB5dnl1NDIyAHlhMTZiZQB5YTE2bGUAZ2JyYXAAZ2JyYXAxNmJlAGdicmFwMTZsZQBxc3YAbW1hbABkM2QxMXZhX3ZsZABjdWRhADByZ2IAcmdiMAAwYmdyAGJncjAAeXV2NDIwcDEyYmUAeXV2NDIwcDEybGUAeXV2NDIwcDE0YmUAeXV2NDIwcDE0bGUAeXV2NDIycDEyYmUAeXV2NDIycDEybGUAeXV2NDIycDE0YmUAeXV2NDIycDE0bGUAeXV2NDQ0cDEyYmUAeXV2NDQ0cDEybGUAeXV2NDQ0cDE0YmUAeXV2NDQ0cDE0bGUAZ2JycDEyYmUAZ2JycDEybGUAZ2JycDE0YmUAZ2JycDE0bGUAeXV2ajQxMXAAYmF5ZXJfYmdncjgAYmF5ZXJfcmdnYjgAYmF5ZXJfZ2JyZzgAYmF5ZXJfZ3JiZzgAYmF5ZXJfYmdncjE2bGUAYmF5ZXJfYmdncjE2YmUAYmF5ZXJfcmdnYjE2bGUAYmF5ZXJfcmdnYjE2YmUAYmF5ZXJfZ2JyZzE2bGUAYmF5ZXJfZ2JyZzE2YmUAYmF5ZXJfZ3JiZzE2bGUAYmF5ZXJfZ3JiZzE2YmUAeHZtYwB5dXY0NDBwMTBsZQB5dXY0NDBwMTBiZQB5dXY0NDBwMTJsZQB5dXY0NDBwMTJiZQBheXV2NjRsZQBheXV2NjRiZQB2aWRlb3Rvb2xib3hfdmxkAHAwMTBsZQBwMDEwYmUAZ2JyYXAxMmJlAGdicmFwMTJsZQBnYnJhcDEwYmUAZ2JyYXAxMGxlAG1lZGlhY29kZWMAZ3JheTEyYmUAeTEyYmUAZ3JheTEybGUAeTEybGUAZ3JheTEwYmUAeTEwYmUAZ3JheTEwbGUAeTEwbGUAcDAxNmxlAHAwMTZiZQBkM2QxMQBncmF5OWJlAHk5YmUAZ3JheTlsZQB5OWxlAGdicnBmMzJiZQBnYnJwZjMybGUAZ2JyYXBmMzJiZQBnYnJhcGYzMmxlAGRybV9wcmltZQBvcGVuY2wARmFpbGVkIHRvIG1hcCBmcmFtZSBpbnRvIGRlcml2ZWQgZnJhbWUgY29udGV4dDogJWQuCgBJbnZhbGlkIG1hcHBpbmcgZm91bmQgd2hlbiBhdHRlbXB0aW5nIHVubWFwLgoAYXZfaW1hZ2VfZ2V0X2xpbmVzaXplIGZhaWxlZAoAYWJzKHNyY19saW5lc2l6ZSkgPj0gYnl0ZXdpZHRoAGxpYmF2dXRpbC9pbWd1dGlscy5jAGFicyhkc3RfbGluZXNpemUpID49IGJ5dGV3aWR0aABQaWN0dXJlIHNpemUgJXV4JXUgaXMgaW52YWxpZAoAUGljdHVyZSBzaXplICV1eCV1IGV4Y2VlZHMgc3BlY2lmaWVkIG1heCBwaXhlbCBjb3VudCAlbGxkLCBzZWUgdGhlIGRvY3VtZW50YXRpb24gaWYgeW91IHdpc2ggdG8gaW5jcmVhc2UgaXQKAElNR1VUSUxTACFkc3QtPmYtPmJ1ZlswXQBsaWJhdmNvZGVjL2gyNjRfcGljdHVyZS5jAHNyYy0+Zi0+YnVmWzBdAHNyYy0+dGYuZiA9PSBzcmMtPmYAIWRzdC0+cHJvZ3Jlc3MAbGliYXZjb2RlYy91dGlscy5jAGJ1Zl9pbmRleCA8PSBidWZfc2l6ZQBsaWJhdmNvZGVjL2gyNjRkZWMuYwBubyBmcmFtZSEKAHBpY3QtPmJ1ZlswXSB8fCAhKmdvdF9mcmFtZQBEdXBsaWNhdGluZyBmaWVsZCAlZCB0byBmaWxsIG1pc3NpbmcKAHN0ZXJlb19tb2RlAGNoZWNrZXJib2FyZF9ybABjaGVja2VyYm9hcmRfbHIAY29sX2ludGVybGVhdmVkX3JsAGNvbF9pbnRlcmxlYXZlZF9scgByb3dfaW50ZXJsZWF2ZWRfcmwAcm93X2ludGVybGVhdmVkX2xyAHJpZ2h0X2xlZnQAbGVmdF9yaWdodABib3R0b21fdG9wAHRvcF9ib3R0b20AYmxvY2tfcmwAYmxvY2tfbHIAaGFyZHdhcmUgYWNjZWxlcmF0b3IgZmFpbGVkIHRvIGRlY29kZSBwaWN0dXJlCgAlcCBmaW5pc2hlZCAlZCBmaWVsZCAlZAoAU1BTIGlzIHVuc2V0CgBubyBtbWNvIGhlcmUKAG1tY286JWQgJWQgJWQKAG1tY286IHVucmVmIHNob3J0IGZhaWx1cmUKAG1tY286IHVucmVmIHNob3J0ICVkIGNvdW50ICVkCgBtbWNvOiB1bnJlZiBsb25nIGZhaWx1cmUKAG1tY286IGNhbm5vdCBhc3NpZ24gY3VycmVudCBwaWN0dXJlIHRvIHNob3J0IGFuZCBsb25nIGF0IHRoZSBzYW1lIHRpbWUKAG1tY286IGNhbm5vdCBhc3NpZ24gY3VycmVudCBwaWN0dXJlIHRvIDIgbG9uZyB0ZXJtIHJlZmVyZW5jZXMKACFoLT5jdXJfcGljX3B0ci0+bG9uZ19yZWYAbGliYXZjb2RlYy9oMjY0X3JlZnMuYwBpbGxlZ2FsIHNob3J0IHRlcm0gcmVmZXJlbmNlIGFzc2lnbm1lbnQgZm9yIHNlY29uZCBmaWVsZCBpbiBjb21wbGVtZW50YXJ5IGZpZWxkIHBhaXIgKGZpcnN0IGZpZWxkIGlzIGxvbmcgdGVybSkKAGlsbGVnYWwgc2hvcnQgdGVybSBidWZmZXIgc3RhdGUgZGV0ZWN0ZWQKAG51bWJlciBvZiByZWZlcmVuY2UgZnJhbWVzICglZCslZCkgZXhjZWVkcyBtYXggKCVkOyBwcm9iYWJseSBjb3JydXB0IGlucHV0KSwgZGlzY2FyZGluZyBvbmUKAGxvbmcgdGVybSBsaXN0OgoAJXUgZm46JWQgcG9jOiVkICVwCgBzaG9ydCB0ZXJtIGxpc3Q6CgByZW1vdmUgc2hvcnQgJWQgY291bnQgJWQKACVkICVkICVwCgBFcnJvciBzcGxpdHRpbmcgdGhlIGlucHV0IGludG8gTkFMIHVuaXRzLgoASW52YWxpZCBpbnRlciBJRFIgZnJhbWUKAGludmFsaWQgbWl4ZWQgSURSIC8gbm9uIElEUiBmcmFtZXMgY2Fubm90IGJlIGRlY29kZWQgaW4gc2xpY2UgbXVsdGl0aHJlYWRpbmcgbW9kZQoAZGF0YSBwYXJ0aXRpb25pbmcAU1BTIGRlY29kaW5nIGZhaWx1cmUsIHRyeWluZyBhZ2FpbiB3aXRoIHRoZSBjb21wbGV0ZSBOQUwKAFVua25vd24gTkFMIGNvZGU6ICVkICglZCBiaXRzKQoAZGVjb2RlX3NsaWNlX2hlYWRlciBlcnJvcgoAaWdub3JpbmcgbGFzdCBtaXNzaW5nIHNsaWNlCgBDYW5ub3QgdXNlIHByZXZpb3VzIHBpY3R1cmUgaW4gZXJyb3IgY29uY2VhbG1lbnQKAENhbm5vdCB1c2UgbmV4dCBwaWN0dXJlIGluIGVycm9yIGNvbmNlYWxtZW50CgBXYXJuaW5nIE1WcyBub3QgYXZhaWxhYmxlCgAlMlggAAoAY29uY2VhbGluZyAlZCBEQywgJWQgQUMsICVkIE1WIGVycm9ycyBpbiAlYyBmcmFtZQoAcy0+YXZjdHgtPmNvZGVjX2lkICE9IEFWX0NPREVDX0lEX0gyNjQAbGliYXZjb2RlYy9lcnJvcl9yZXNpbGllbmNlLmMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////cy0+cXVhcnRlcl9zYW1wbGUAZ3Vlc3NfZGMoKSBpcyBvdXQgb2YgbWVtb3J5CgBuZXh0X2Jsb2NrbGlzdF9sZW5ndGggPD0gbWJfaGVpZ2h0ICogbWJfd2lkdGgAdGhyZWFkIGF3YWl0aW5nICVkIGZpZWxkICVkIGZyb20gJXAKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBQUFMgKCV6dSA+ICV6dSkKAHNwc19pZCAldSBvdXQgb2YgcmFuZ2UKAEludmFsaWQgbHVtYSBiaXQgZGVwdGg9JWQKAFVuaW1wbGVtZW50ZWQgbHVtYSBiaXQgZGVwdGg9JWQARk1PIG5vdCBzdXBwb3J0ZWQKAHJlZmVyZW5jZSBvdmVyZmxvdyAocHBzKQoAQ0FCQUMAQ0FWTEMAd2VpZ2h0ZWQATFBBUgBDT05TVFIAUkVEVQA4eDhEQ1QAcHBzOiV1IHNwczoldSAlcyBzbGljZV9ncm91cHM6JWQgcmVmOiV1LyV1ICVzIHFwOiVkLyVkLyVkLyVkICVzICVzICVzICVzCgAGCg0QEhcZGwoLEBIXGRsdDRASFxkbHR8QEhcZGx0fIRIXGRsdHyEkFxkbHR8hJCYZGx0fISQmKBsdHyEkJigqCQ0PERMVFhgNDRETFRYYGQ8RExUWGBkbERMVFhgZGxwTFRYYGRscHhUWGBkbHB4gFhgZGxweICEYGRscHiAhIwYNFBwNFBwgFBwgJRwgJSoKDhQYDhQYGxQYGx4YGx4iAAEECAUCAwYJDA0KBwsODwAAAQgQCQIDChEYIBkSCwQFDBMaISgwKSIbFA0GBw4VHCMqMTg5MiskHRYPFx4lLDM6OzQtJh8nLjU8PTYvNz4/ZGVsdGEgc2NhbGUgJWQgaXMgaW52YWxpZAoAQ3VycmVudCBwcm9maWxlIGRvZXNuJ3QgcHJvdmlkZSBtb3JlIFJCU1AgZGF0YSBpbiBQUFMsIHNraXBwaW5nCgAgaXMgbm90IGltcGxlbWVudGVkLiBVcGRhdGUgeW91ciBGRm1wZWcgdmVyc2lvbiB0byB0aGUgbmV3ZXN0IG9uZSBmcm9tIEdpdC4gSWYgdGhlIHByb2JsZW0gc3RpbGwgb2NjdXJzLCBpdCBtZWFucyB0aGF0IHlvdXIgZmlsZSBoYXMgYSBmZWF0dXJlIHdoaWNoIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4KAElmIHlvdSB3YW50IHRvIGhlbHAsIHVwbG9hZCBhIHNhbXBsZSBvZiB0aGlzIGZpbGUgdG8gZnRwOi8vdXBsb2FkLmZmbXBlZy5vcmcvaW5jb21pbmcvIGFuZCBjb250YWN0IHRoZSBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0LiAoZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcpCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgU1BTCgBjaHJvbWFfZm9ybWF0X2lkYyAldQBzZXBhcmF0ZSBjb2xvciBwbGFuZXMgYXJlIG5vdCBzdXBwb3J0ZWQKAERpZmZlcmVudCBjaHJvbWEgYW5kIGx1bWEgYml0IGRlcHRoAGlsbGVnYWwgYml0IGRlcHRoIHZhbHVlICglZCwgJWQpCgBsb2cyX21heF9mcmFtZV9udW1fbWludXM0IG91dCBvZiByYW5nZSAoMC0xMik6ICVkCgBsb2cyX21heF9wb2NfbHNiICglZCkgaXMgb3V0IG9mIHJhbmdlCgBwb2NfY3ljbGVfbGVuZ3RoIG92ZXJmbG93ICVkCgBpbGxlZ2FsIFBPQyB0eXBlICVkCgB0b28gbWFueSByZWZlcmVuY2UgZnJhbWVzICVkCgBoZWlnaHQgb3ZlcmZsb3cKAG1iX3dpZHRoL2hlaWdodCBvdmVyZmxvdwoAZGlzY2FyZGluZyBzcHMgY3JvcHBpbmcsIG9yaWdpbmFsIHZhbHVlcyBhcmUgbDolZCByOiVkIHQ6JWQgYjolZAoAY3JvcCB2YWx1ZXMgaW52YWxpZCAlZCAlZCAlZCAlZCAvICVkICVkCgBWVUkAT3ZlcnJlYWQgJXMgYnkgJWQgYml0cwoATUItQUZGAFBJQy1BRkYARlJNADhCOABHcmF5ADQyMAAANDIyAAA0NDQAAHNwczoldSBwcm9maWxlOiVkLyVkIHBvYzolZCByZWY6JWQgJWR4JWQgJXMgJXMgY3JvcDoldS8ldS8ldS8ldSAlcyAlcyAlZC8lZCBiJWQgcmVvOiVkCgBpbGxlZ2FsIGFzcGVjdCByYXRpbwoAVHJ1bmNhdGVkIFZVSQoAdGltZV9zY2FsZS9udW1fdW5pdHNfaW5fdGljayBpbnZhbGlkIG9yIHVuc3VwcG9ydGVkICgldS8ldSkKAENsaXBwaW5nIGlsbGVnYWwgbnVtX3Jlb3JkZXJfZnJhbWVzICVkCgBjcGJfY291bnQgJWQgaW52YWxpZAoAZ2JyAHJlc2VydmVkAGNocm9tYS1kZXJpdmVkLW5jAGNocm9tYS1kZXJpdmVkLWMAaWN0Y3AAR3JlZW4gTWV0YWRhdGEgSW5mbyBTRUkgbWVzc2FnZQoAICBncmVlbl9tZXRhZGF0YV90eXBlOiAlZAoAICBncmVlbl9tZXRhZGF0YV9wZXJpb2RfdHlwZTogJWQKACAgZ3JlZW5fbWV0YWRhdGFfbnVtX3NlY29uZHM6ICVkCgAgIGdyZWVuX21ldGFkYXRhX251bV9waWN0dXJlczogJWQKACAgU0VJIEdSRUVOIENvbXBsZXhpdHkgTWV0cmljczogJWYgJWYgJWYgJWYKACAgeHNkX21ldHJpY190eXBlOiAlZAoAICB4c2RfbWV0cmljX3ZhbHVlOiAlZgoAU0VJIHR5cGUgJWQgc2l6ZSAlZCB0cnVuY2F0ZWQgYXQgJWQKAHVua25vd24gU0VJIHR5cGUgJWQKAG5vbi1leGlzdGluZyBTUFMgJWQgcmVmZXJlbmNlZCBpbiBidWZmZXJpbmcgcGVyaW9kCgB4MjY0IC0gY29yZSAlZAB4MjY0IC0gY29yZSAw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/Uf6Kvsy/Tb+PgA6AT/+SP9K91v7Q/sb/Sf+LAAu8ED4RPZO+k32VvRc8Tf2PPo+/EH0SfhM+VD3WO9u/Ub4XfZa4n/9Rvhd9lrif/1G+F32WuJ/bGliYXZ1dGlsL21lbV9pbnRlcm5hbC5oAE11bHRpcGxlIGZmX3RocmVhZF9maW5pc2hfc2V0dXAoKSBjYWxscwoAVG9vIG1hbnkgZmllbGRzCgBCcm9rZW4gZnJhbWUgcGFja2V0aXppbmcKAHNsID09IGgtPnNsaWNlX2N0eABQUFMgY2hhbmdlZCBiZXR3ZWVuIHNsaWNlcwoAU1BTIGNoYW5nZWQgaW4gdGhlIG1pZGRsZSBvZiB0aGUgZnJhbWUKAENoYW5naW5nIGZpZWxkIG1vZGUgKCVkIC0+ICVkKSBiZXR3ZWVuIHNsaWNlcyBpcyBub3QgYWxsb3dlZAoAdW5zZXQgY3VyX3BpY19wdHIgb24gc2xpY2UgJWQKAEludmFsaWQgbWl4IG9mIElEUiBhbmQgbm9uLUlEUiBzbGljZXMKAGZpcnN0X21iX2luX3NsaWNlIG92ZXJmbG93CgBQb3NzaWJseSB0b28gbWFueSBzbGljZXMgKCVkID49ICVkKSwgaW5jcmVhc2UgTUFYX1NMSUNFUyBhbmQgcmVjb21waWxlIGlmIHRoZXJlIGFyZSBhcnRpZmFjdHMKAFQAQgBGACBmaXgAIElEUgBjAFNQQVQAVEVNUABzbGljZTolZCAlcyBtYjolZCAlYyVzJXMgZnJhbWU6JWQgcG9jOiVkLyVkIHJlZjolZC8lZCBxcDolZCBsb29wOiVkOiVkOiVkIHdlaWdodDolZCVzICVzCgBjdXItPm1iYWZmID09IChoKS0+bWJfYWZmX2ZyYW1lAGxpYmF2Y29kZWMvaDI2NF9kaXJlY3QuYwBjbyBsb2NhdGVkIFBPQ3MgdW5hdmFpbGFibGUKAHBvY2RpZmYgb3ZlcmZsb3cKAHBvY2RpZmYwIG92ZXJmbG93CgBhYnNfZGlmZl9waWNfbnVtIG92ZXJmbG93CgBsb25nX3Rlcm1fcGljX2lkeCBvdmVyZmxvdwoAcmVmZXJlbmNlIHBpY3R1cmUgbWlzc2luZyBkdXJpbmcgcmVvcmRlcgoATWlzc2luZyByZWZlcmVuY2UgcGljdHVyZSwgZGVmYXVsdCBpcyAlZAoAYXZfYnVmZmVyX2dldF9yZWZfY291bnQoc2wtPnJlZl9saXN0W2xpc3RdW2luZGV4XS5wYXJlbnQtPmYtPmJ1ZlswXSkgPiAwAGxlbiA8PSAzMgBEaXNjYXJkaW5nIG1pc21hdGNoaW5nIHJlZmVyZW5jZQoAaW5kZXggPCBkZWZfbGVuAGgtPmN1cl9waWNfcHRyAGgtPmN1cl9waWNfcHRyLT5mLT5idWZbMF0ASW52YWxpZCBmaWVsZCBtb2RlIGNvbWJpbmF0aW9uICVkLyVkCgBGb3VuZCByZWZlcmVuY2UgYW5kIG5vbi1yZWZlcmVuY2UgZmllbGRzIGluIHRoZSBzYW1lIGZyYW1lLCB3aGljaABGcmFtZSBudW0gZ2FwICVkICVkCgBJbnZhbGlkIFBPQyAlZDwlZAoASW5jcmVhc2luZyByZW9yZGVyIGJ1ZmZlciB0byAlZAoAcGljcyA8PSAxNgBvb28Abm8gcGljdHVyZSAlcwoAQXR0ZW1wdCB0byBzdGFydCBhIGZyYW1lIG91dHNpZGUgU0VUVVAgc3RhdGUKAG5vIGZyYW1lIGJ1ZmZlciBhdmFpbGFibGUKAGRlc2MtPmZsYWdzICYgKDEgPDwgNCkAIXBpYy0+Zi0+ZGF0YVswXQAhcGljLT5od2FjY2VsX3BpY3R1cmVfcHJpdmF0ZQB0aHJlYWRfZ2V0X2J1ZmZlcigpIGZhaWxlZAoAZ2V0X2J1ZmZlcigpIGNhbm5vdCBiZSBjYWxsZWQgYWZ0ZXIgZmZfdGhyZWFkX2ZpbmlzaF9zZXR1cCgpCgBnZXRfYnVmZmVyKCkgZmFpbGVkCgB2aWRlb19nZXRfYnVmZmVyOiBpbWFnZSBwYXJhbWV0ZXJzIGludmFsaWQKAHBpYy0+ZGF0YVsqXSE9TlVMTCBpbiBnZXRfYnVmZmVyX2ludGVybmFsCgBmcmFtZS0+ZGF0YVtpXQBCdWZmZXIgcmV0dXJuZWQgYnkgZ2V0X2J1ZmZlcjIoKSBkaWQgbm90IHplcm8gdW51c2VkIHBsYW5lIHBvaW50ZXJzCgBJbmNvbnNpc3RlbnQgY2hhbm5lbCBjb25maWd1cmF0aW9uLgoAVG9vIG1hbnkgY2hhbm5lbHM6ICVkLgoAY2hhbmdpbmcgd2lkdGggJWQgLT4gJWQgLyBoZWlnaHQgJWQgLT4gJWQgb24gc2xpY2UgJWQKAFJlaW5pdCBjb250ZXh0IHRvICVkeCVkLCBwaXhfZm10OiAlcwoAaDI2NF9zbGljZV9oZWFkZXJfaW5pdCgpIGZhaWxlZAoAQ291bGQgbm90IGFsbG9jYXRlIG1lbW9yeQoAVW5zdXBwb3J0ZWQgYml0IGRlcHRoICVkCgBjb250ZXh0X2luaXQoKSBmYWlsZWQuCgBDYW5ub3QgYWxsb2NhdGUgbWVtb3J5LgoAUmVmZXJlbmNlIG5vdCBhdmFpbGFibGUgZm9yIGVycm9yIGNvbmNlYWxpbmcKAFJlZmVyZW5jZSBpbnZhbGlkCgBsaWJhdmNvZGVjL2gyNjRwcmVkLmMAYml0X2RlcHRoPD04AGxpYmF2Y29kZWMvaDI2NGRzcC5jAAAQACCAoAwNFBUODxYXHB0kJR4fJic0NTw9Njc+P0RFTE1GR05PXF1kZV5fZmdsbXR1bm92dwAoUAAEAQgMBQkNAgYKDgMHCw8AAAkREgwoGwcjOR0eOiY1LwECGAsTMBQOKjIWJTsfPDcIAyAEGikNFTErDyw0Jz0+EAoZBSEiBhw4JBczLS42PwAACBABCRggEQIZKDA4IQoDEikxORoLBBMiKjI6GwwFFCMrMzscDQYVJCw0PB0OFiUtNT0eBw8mLjY+Fx8nLzc/AAAJAjgSGiIbIxwkHS0HNicIGBkhKQsqDCsNLA41Dz4vECAoCjEEMgUzBjQWPSYXNwERMAM5EzoUOxU8JR4uHz8AAAECNQMHNhsEJikIIjcwHD4FJy4sKhYJGCM7ODESHQs/NAYaJSghLz0tKxUXOhEKMxkkIDwUORAyHxMPHg4NDGlnbm9yaW5nIGludmFsaWQgU0FSOiAlZC8lZAoAc3BzLT5jcm9wX3JpZ2h0ICsgc3BzLT5jcm9wX2xlZnQgPCAodW5zaWduZWQpaC0+d2lkdGgAc3BzLT5jcm9wX3RvcCArIHNwcy0+Y3JvcF9ib3R0b20gPCAodW5zaWduZWQpaC0+aGVpZ2h0AGdldF9mb3JtYXQoKSBjYW5ub3QgYmUgY2FsbGVkIGFmdGVyIGZmX3RocmVhZF9maW5pc2hfc2V0dXAoKQoAbiA+PSAxAEludmFsaWQgZm9ybWF0IHJldHVybmVkIGJ5IGdldF9mb3JtYXQoKSBjYWxsYmFjay4KAEZvcm1hdCAlcyBjaG9zZW4gYnkgZ2V0X2Zvcm1hdCgpLgoASW52YWxpZCByZXR1cm4gZnJvbSBnZXRfZm9ybWF0KCk6ICVzIG5vdCBpbiBwb3NzaWJsZSBsaXN0LgoASW52YWxpZCBzZXR1cCBmb3IgZm9ybWF0ICVzOiBkb2VzIG5vdCBtYXRjaCB0aGUgZm9ybWF0IG9mIHRoZSBwcm92aWRlZCBmcmFtZXMgY29udGV4dC4KAEludmFsaWQgc2V0dXAgZm9yIGZvcm1hdCAlczogZG9lcyBub3QgbWF0Y2ggdGhlIHR5cGUgb2YgdGhlIHByb3ZpZGVkIGRldmljZSBjb250ZXh0LgoASW52YWxpZCBzZXR1cCBmb3IgZm9ybWF0ICVzOiBtaXNzaW5nIGNvbmZpZ3VyYXRpb24uCgBGb3JtYXQgJXMgcmVxdWlyZXMgaHdhY2NlbCBpbml0aWFsaXNhdGlvbi4KAEZvcm1hdCAlcyBub3QgdXNhYmxlLCByZXRyeWluZyBnZXRfZm9ybWF0KCkgd2l0aG91dCBpdC4KAElnbm9yaW5nIGV4cGVyaW1lbnRhbCBod2FjY2VsOiAlcwoARmFpbGVkIHNldHVwIGZvciBmb3JtYXQgJXM6IGh3YWNjZWwgaW5pdGlhbGlzYXRpb24gcmV0dXJuZWQgZXJyb3IuCgAhaC0+c2V0dXBfZmluaXNoZWQAc2xpY2UgdHlwZSAlZCB0b28gbGFyZ2UgYXQgJWQKAEEgbm9uLWludHJhIHNsaWNlIGluIGFuIElEUiBOQUwgdW5pdC4KAEZyYW1lIG51bSBjaGFuZ2UgZnJvbSAlZCB0byAlZAoAVGhpcyBzdHJlYW0gd2FzIGdlbmVyYXRlZCBieSBhIGJyb2tlbiBlbmNvZGVyLCBpbnZhbGlkIDh4OCBpbmZlcmVuY2UKAGNhYmFjX2luaXRfaWRjICV1IG92ZXJmbG93CgBRUCAldSBvdXQgb2YgcmFuZ2UKAGRlYmxvY2tpbmdfZmlsdGVyX2lkYyAldSBvdXQgb2YgcmFuZ2UKAGRlYmxvY2tpbmcgZmlsdGVyIHBhcmFtZXRlcnMgJWQgJWQgb3V0IG9mIHJhbmdlCgBpbGxlZ2FsIGxvbmcgcmVmIGluIG1lbW9yeSBtYW5hZ2VtZW50IGNvbnRyb2wgb3BlcmF0aW9uICVkCgBsdW1hX2xvZzJfd2VpZ2h0X2Rlbm9tICVkIGlzIG91dCBvZiByYW5nZQoAY2hyb21hX2xvZzJfd2VpZ2h0X2Rlbm9tICVkIGlzIG91dCBvZiByYW5nZQoAT3V0IG9mIHJhbmdlIHdlaWdodAoAcmVmZXJlbmNlIGNvdW50IG92ZXJmbG93CgBpbGxlZ2FsIG1vZGlmaWNhdGlvbl9vZl9waWNfbnVtc19pZGMgJXUKAHJlZmVyZW5jZSBvdmVyZmxvdyAldSA+ICV1IG9yICV1ID4gJXUKAEludmFsaWQgemVyby1zaXplZCBWQ0wgTkFMIHVuaXQKAEV4Y2VlZGVkIG5leHQgTkFMRkYgcG9zaXRpb24sIHJlLXN5bmNpbmcuCgBObyBzdGFydCBjb2RlIGlzIGZvdW5kLgoATkFMRkY6IENvbnN1bWVkIG9ubHkgJWQgYnl0ZXMgaW5zdGVhZCBvZiAlZAoASW52YWxpZCBOQUwgdW5pdCAlZCwgc2tpcHBpbmcuCgBuYWxfdW5pdF90eXBlOiAlZCwgbmFsX3JlZl9pZGM6ICVkCgBuYWxfdW5pdF90eXBlOiAlZCglcyksIG51aF9sYXllcl9pZDogJWQsIHRlbXBvcmFsX2lkOiAlZAoAPwBTRUlfU1VGRklYAFNFSV9QUkVGSVgARkRfTlVUAEVPQl9OVVQARU9TX05VVABBVUQAUFBTAFNQUwBWUFMAQ1JBX05VVABJRFJfTl9MUABJRFJfV19SQURMAEJMQV9OX0xQAEJMQV9XX1JBREwAQkxBX1dfTFAAUkFTTF9SAFJBU0xfTgBSQURMX1IAUkFETF9OAFNUU0FfUgBTVFNBX04AVFNBX1IAVFNBX04AVFJBSUxfUgBUUkFJTF9OAG5hbC0+c2tpcHBlZF9ieXRlc19wb3Nfc2l6ZSA+PSBuYWwtPnNraXBwZWRfYnl0ZXMAbGliYXZjb2RlYy9oMjY0NV9wYXJzZS5jAHZhbCB8fCAhbWluX3NpemUALi9saWJhdnV0aWwvbWVtX2ludGVybmFsLmgAYXZjQyAlZCB0b28gc2hvcnQKAERlY29kaW5nIHNwcyAlZCBmcm9tIGF2Y0MgZmFpbGVkCgBEZWNvZGluZyBwcHMgJWQg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WzBdKSkAbGliYXZjb2RlYy9iaXRzdHJlYW0uYwBzeW1ib2xzX3NpemUgPD0gMiB8fCAhc3ltYm9scwBUb28gbG9uZyBWTEMgKCVkKSBpbiBpbml0X3ZsYwoASW52YWxpZCBjb2RlICV4IGZvciAlZCBpbiBpbml0X3ZsYwoAbmVlZGVkICVkIGhhZCAlZAoAaW5jb3JyZWN0IGNvZGVzCgBoMjY0X3NsaWNlX2hlYWRlcl9pbml0KCkgZmFpbGVkAEgyNjQgRGVjb2RlcgBpc19hdmMAaXMgYXZjAG5hbF9sZW5ndGhfc2l6ZQBlbmFibGVfZXIARW5hYmxlIGVycm9yIHJlc2lsaWVuY2Ugb24gZGFtYWdlZCBmcmFtZXMgKHVuc2FmZSkAeDI2NF9idWlsZABBc3N1bWUgdGhpcyB4MjY0IHZlcnNpb24gaWYgbm8geDI2NCB2ZXJzaW9uIGZvdW5kIGluIGFueSBTRUkAcCA8PSBlbmQAUTI2NABwcHNfaWQgJXUgb3V0IG9mIHJhbmdlCgBub24tZXhpc3RpbmcgUFBTICV1IHJlZmVyZW5jZWQKAG5vbi1leGlzdGluZyBTUFMgJXUgcmVmZXJlbmNlZAoAbWlzc2luZyBwaWN0dXJlIGluIGFjY2VzcyB1bml0IHdpdGggc2l6ZSAlZAoAaWxsZWdhbCByZW9yZGVyaW5nX29mX3BpY19udW1zX2lkYyAlZAoAcmVmZXJlbmNlIGNvdW50ICVkIG92ZXJmbG93CgBpbGxlZ2FsIG1lbW9yeSBtYW5hZ2VtZW50IGNvbnRyb2wgb3BlcmF0aW9uICVkCgBJbnZhbGlkIE5BTCB1bml0IHNpemUgKCVkID4gJWQpLgoAQVZDLXBhcnNlcjogbmFsIGxlbmd0aCBzaXplIGludmFsaWQKAEFWQy1wYXJzZXI6IG5hbCBzaXplICVkIHJlbWFpbmluZyAlZAoAAAABAAECAAECAwECAwIDAwABAAIBAAMCAQADAgEDAgMAAAEAAQIAAQIDAAECAwQAAQIDBAUAAQIDBAUGAAECAwQFBgcBAgMEBQYHAgMEBQYHAwQFBgcEBQYHBQYHBgcHAAEAAgEAAwIBAAQDAgEABQQDAgEABgUEAwIBAAcGBQQDAgEABwYFBAMCAQcGBQQDAgcGBQQDBwYFBAcGBQcGB21pc3NpbmcgcGljdHVyZSBpbiBhY2Nlc3MgdW5pdAoASW52YWxpZCBzbGljZSBzZWdtZW50IGFkZHJlc3M6ICV1LgoAVW5rbm93biBzbGljZSB0eXBlOiAlZC4KAEludmFsaWQgVUUgZ29sb21iIGNvZGUKAERlY29kaW5nIFNFSQoAU2tpcHBlZCBTVUZGSVggU0VJICVkCgBTa2lwcGVkIFBSRUZJWCBTRUkgJWQKAG51bV9zcHNfaWRzX21pbnVzMSAlZCBpbnZhbGlkCgBhY3RpdmVfcGFyYW1ldGVyX3NldF9pZCAlZCBpbnZhbGlkCgBCT1RUT00gRmllbGQKAFRPUCBGaWVsZAoARGVjb2RpbmcgUFBTCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgUFBTICgldGQgPiAlenUpCgBQUFMgaWQgb3V0IG9mIHJhbmdlOiAlZAoAU1BTIGlkIG91dCBvZiByYW5nZTogJWQKAFNQUyAldSBkb2VzIG5vdCBleGlzdC4KAGRpZmZfY3VfcXBfZGVsdGFfZGVwdGggJWQgaXMgaW52YWxpZAoAcHBzX2NiX3FwX29mZnNldCBvdXQgb2YgcmFuZ2U6ICVkCgBwcHNfY3JfcXBfb2Zmc2V0IG91dCBvZiByYW5nZTogJWQKAG51bV90aWxlX2NvbHVtbnNfbWludXMxIG91dCBvZiByYW5nZTogJWQKAG51bV90aWxlX3Jvd3NfbWludXMxIG91dCBvZiByYW5nZTogJWQKAEludmFsaWQgdGlsZSB3aWR0aHMuCgBJbnZhbGlkIHRpbGUgaGVpZ2h0cy4KAHBwc19iZXRhX29mZnNldF9kaXYyIG91dCBvZiByYW5nZTogJWQKAHBwc190Y19vZmZzZXRfZGl2MiBvdXQgb2YgcmFuZ2U6ICVkCgBsb2cyX3BhcmFsbGVsX21lcmdlX2xldmVsX21pbnVzMiBvdXQgb2YgcmFuZ2U6ICVkCgBPdmVycmVhZCBQUFMgYnkgJWQgYml0cwoAY2hyb21hX3FwX29mZnNldF9saXN0X2xlbl9taW51czEgc2hhbGwgYmUgaW4gdGhlIHJhbmdlIFswLCA1XS4KAGNiX3FwX29mZnNldF9saXN0IG5vdCB0ZXN0ZWQgeWV0LgoASW52YWxpZCBkZWx0YSBpbiBzY2FsaW5nIGxpc3QgZGF0YTogJWQuCgAQEBAQERIVGBAQEBARExYZEBAREhQWGR0QEBIVGBsfJBERFBgeIykvEhMWGyMsNkEVFhkfKTZGWBgZHSQvQVhzEBAQEBESFBgQEBAREhQYGRAQERIUGBkcEBESFBgZHCEREhQYGRwhKRIUGBkcISk2FBgZHCEpNkcYGRwhKTZHW0RlY29kaW5nIFNQUwoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFNQUyAoJXRkID4gJXp1KQoAUGFyc2VkIFNQUzogaWQgJWQ7IGNvZGVkIHd4aDogJWR4JWQ7IGNyb3BwZWQgd3hoOiAlZHglZDsgcGl4X2ZtdDogJXMuCgAhKHMtPnNwc19saXN0W2lkXSAmJiBzLT5zcHMgPT0gKEhFVkNTUFMqKXMtPnNwc19saXN0W2lkXS0+ZGF0YSkAbGliYXZjb2RlYy9oZXZjX3BzLmMAVlBTIGlkIG91dCBvZiByYW5nZTogJWQKAFZQUyAlZCBkb2VzIG5vdCBleGlzdAoAc3BzX21heF9zdWJfbGF5ZXJzIG91dCBvZiByYW5nZTogJWQKAGNocm9tYV9mb3JtYXRfaWRjICVkIGlzIGludmFsaWQKAGRpc2NhcmRpbmcgc3BzIGNvbmZvcm1hbmNlIHdpbmRvdywgb3JpZ2luYWwgdmFsdWVzIGFyZSBsOiV1IHI6JXUgdDoldSBiOiV1CgBMdW1hIGJpdCBkZXB0aCAoJWQpIGlzIGRpZmZlcmVudCBmcm9tIGNocm9tYSBiaXQgZGVwdGggKCVkKSwgdGhpcyBpcyB1bnN1cHBvcnRlZC4KAGxvZzJfbWF4X3BpY19vcmRlcl9jbnRfbHNiX21pbnVzNCBvdXQgcmFuZ2U6ICVkCgBzcHNfbWF4X2RlY19waWNfYnVmZmVyaW5nX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgBzcHNfbWF4X251bV9yZW9yZGVyX3BpY3Mgb3V0IG9mIHJhbmdlOiAlZAoASW52YWxpZCB2YWx1ZSAlZCBmb3IgbG9nMl9taW5fY2Jfc2l6ZQBJbnZhbGlkIHZhbHVlICVkIGZvciBsb2cyX2RpZmZfbWF4X21pbl9jb2RpbmdfYmxvY2tfc2l6ZQBJbnZhbGlkIHZhbHVlIGZvciBsb2cyX21pbl90Yl9zaXplAEludmFsaWQgdmFsdWUgJWQgZm9yIGxvZzJfZGlmZl9tYXhfbWluX3RyYW5zZm9ybV9ibG9ja19zaXplAFBDTSBiaXQgZGVwdGggKCVkLCAlZCkgaXMgZ3JlYXRlciB0aGFuIG5vcm1hbCBiaXQgZGVwdGggKCVkKQoAVG9vIG1hbnkgc2hvcnQgdGVybSBSUFM6ICVkLgoAVG9vIG1hbnkgbG9uZyB0ZXJtIHJlZiBwaWNzOiAlZC4KAGV4dGVuZGVkX3ByZWNpc2lvbl9wcm9jZXNzaW5nX2ZsYWcgbm90IHlldCBpbXBsZW1lbnRlZAoAaGlnaF9wcmVjaXNpb25fb2Zmc2V0c19lbmFibGVkX2ZsYWcgbm90IHlldCBpbXBsZW1lbnRlZAoAY2FiYWNfYnlwYXNzX2FsaWdubWVudF9lbmFibGVkX2ZsYWcgbm90IHlldCBpbXBsZW1lbnRlZAoASW52YWxpZCBjcm9wcGluZyBvZmZzZXRzOiAldS8ldS8ldS8ldQoARGlzcGxheWluZyB0aGUgd2hvbGUgdmlkZW8gc3VyZmFjZS4KAENUQiBzaXplIG91dCBvZiByYW5nZTogMl4lZAoAbG9nMl9jdGJfc2l6ZSAlZCBkaWZmZXJzIGZyb20gdGhlIGJvdW5kcyBvZiBhbnkga25vd24gcHJvZmlsZQoAbG9nMl9jdGJfc2l6ZSAlZABJbnZhbGlkIGNvZGVkIGZyYW1lIGRpbWVuc2lvbnMuCgBtYXhfdHJhbnNmb3JtX2hpZXJhcmNoeV9kZXB0aF9pbnRlciBvdXQgb2YgcmFuZ2U6ICVkCgBtYXhfdHJhbnNmb3JtX2hpZXJhcmNoeV9kZXB0aF9pbnRyYSBvdXQgb2YgcmFuZ2U6ICVkCgBtYXggdHJhbnNmb3JtIGJsb2NrIHNpemUgb3V0IG9mIHJhbmdlOiAlZAoAT3ZlcnJlYWQgU1BTIGJ5ICVkIGJpdHMKAERlY29kaW5nIFZVSQoAVW5rbm93biBTQVIgaW5kZXg6ICV1LgoASW52YWxpZCBkZWZhdWx0IGRpc3BsYXkgd2luZG93CgBkaXNjYXJkaW5nIHZ1aSBkZWZhdWx0IGRpc3BsYXkgd2luZG93LCBvcmlnaW5hbCB2YWx1ZXMgYXJlIGw6JXUgcjoldSB0OiV1IGI6JXUKAFN0cmFuZ2UgVlVJIHRpbWluZyBpbmZvcm1hdGlvbiwgcmV0cnlpbmcuLi4KAFJldHJ5IGdvdCAldS8ldSBmcHMKAFN0cmFuZ2UgVlVJIGJpdHN0cmVhbSByZXN0cmljdGlvbiBpbmZvcm1hdGlvbiwgcmV0cnlpbmcgZnJvbSB0aW1pbmcgaW5mb3JtYXRpb24uLi4KAE92ZXJyZWFkIGluIFZVSSwgcmV0cnlpbmcgZnJvbSB0aW1pbmcgaW5mb3JtYXRpb24uLi4KAG5iX2NwYiAlZCBpbnZhbGlkCgBJbnZhbGlkIHZhbHVlIG9mIGRlbHRhX2lkeCBpbiBzbGljZSBoZWFkZXIgUlBTOiAlZCA+ICVkLgoASW52YWxpZCB2YWx1ZSBvZiBhYnNfZGVsdGFfcnBzOiAlZAoASW52YWxpZCBudW1fZGVsdGFfcG9jczogJWQKAFRvbyBtYW55IHJlZnMgaW4gYSBzaG9ydCB0ZXJtIFJQUy4KAEludmFsaWQgdmFsdWUgb2YgZGVsdGFfcG9jOiAlZAoAVGhlIGZvbGxvd2luZyBiaXQtZGVwdGhzIGFyZSBjdXJyZW50bHkgc3BlY2lmaWVkOiA4LCA5LCAxMCBhbmQgMTIgYml0cywgY2hyb21hX2Zvcm1hdF9pZGMgaXMgJWQsIGRlcHRoIGlzICVkCgBQVEwgaW5mb3JtYXRpb24gdG9vIHNob3J0CgBQVEwgaW5mb3JtYXRpb24gZm9yIHN1YmxheWVyICVpIHRvbyBzaG9ydAoATm90IGVub3VnaCBkYXRhIGZvciBzdWJsYXllciAlaSBsZXZlbF9pZGMKAE1haW4gcHJvZmlsZSBiaXRzdHJlYW0KAE1haW4gMTAgcHJvZmlsZSBiaXRzdHJlYW0KAE1haW4gU3RpbGwgUGljdHVyZSBwcm9maWxlIGJpdHN0cmVhbQoAUmFuZ2UgRXh0ZW5zaW9uIHByb2ZpbGUgYml0c3RyZWFtCgBVbmtub3duIEhFVkMgcHJvZmlsZTogJWQKAERlY29kaW5nIFZQUwoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFZQUyAoJXRkID4gJXp1KQoAdnBzX3Jlc2VydmVkX3RocmVlXzJiaXRzIGlzIG5vdCB0aHJlZQoAdnBzX3Jlc2VydmVkX2ZmZmZfMTZiaXRzIGlzIG5vdCAweGZmZmYKAHZwc19tYXhfc3ViX2xheWVycyBvdXQgb2YgcmFuZ2U6ICVkCgB2cHNfbWF4X2RlY19waWNfYnVmZmVyaW5nX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgB2cHNfbWF4X251bV9yZW9yZGVyX3BpY3Mgb3V0IG9mIHJhbmdlOiAlZAoAdG9vIG1hbnkgbGF5ZXJfaWRfaW5jbHVkZWRfZmxhZ3MKAHZwc19udW1faHJkX3BhcmFtZXRlcnMgJWQgaXMgaW52YWxpZAoAT3ZlcnJlYWQgVlBTIGJ5ICVkIGJpdHMKAGJ1Zl9zaXplID49IDAAbGliYXZjb2RlYy9ieXRlc3RyZWFtLmgASW52YWxpZCBOQUwgdW5pdCBzaXplIGluIGV4dHJhZGF0YS4KAERlY29kaW5nIG5hbCB1bml0ICVkICVkIGZyb20gaHZjQyBmYWlsZWQKAElnbm9yaW5nIE5BTCB0eXBlICVkIGluIGV4dHJhZGF0YQoAL2Rldi91cmFuZG9tAC9kZXYvcmFuZG9tAHNpemVvZih0bXApID49IGF2X3NoYV9zaXplAGxpYmF2dXRpbC9yYW5kb21fc2VlZC5jAIAARmFpbGVkIHRvIHNldCBjbG9zZSBvbiBleGVjCgAgCgkNAEFMTABGTABmcm9udCBsZWZ0AEZSAGZyb250IHJpZ2h0AEZDAGZyb250IGNlbnRlcgBMRkUAbG93IGZyZXF1ZW5jeQBCTABiYWNrIGxlZnQAQlIAYmFjayByaWdodABGTEMAZnJvbnQgbGVmdC1vZi1jZW50ZXIARlJDAGZyb250IHJpZ2h0LW9mLWNlbnRlcgBCQwBiYWNrIGNlbnRlcgBTTABzaWRlIGxlZnQAU1IAc2lkZSByaWdodABUQwB0b3AgY2VudGVyAFRGTAB0b3AgZnJvbnQgbGVmdABURkMAdG9wIGZyb250IGNlbnRlcgBURlIAdG9wIGZyb250IHJpZ2h0AFRCTAB0b3AgYmFjayBsZWZ0AFRCQwB0b3AgYmFjayBjZW50ZXIAVEJSAHRvcCBiYWNrIHJpZ2h0AERMAGRvd25taXggbGVmdABEUgBkb3dubWl4IHJpZ2h0AFdMAHdpZGUgbGVmdABXUgB3aWRlIHJpZ2h0AFNETABzdXJyb3VuZCBkaXJlY3QgbGVmdABTRFIAc3Vycm91bmQgZGlyZWN0IHJpZ2h0AExGRTIAbG93IGZyZXF1ZW5jeSAyAG1vbm8Ac3RlcmVvADIuMQAzLjAAMy4wKGJhY2spADQuMABxdWFkAHF1YWQoc2lkZSkAMy4xADUuMAA1LjAoc2lkZSkANC4xADUuMQA1LjEoc2lkZSkANi4wADYuMChmcm9udCkAaGV4YWdvbmFsADYuMQA2LjEoYmFjaykANi4xKGZyb250KQA3LjAANy4wKGZyb250KQA3LjEANy4xKHdpZGUpADcuMSh3aWRlLXNpZGUpAG9jdGFnb25hbABoZXhhZGVjYWdvbmFsAGRvd25taXgAJXMAJWQgY2hhbm5lbHMAICgAKwApACVkJSoxWzovXSVkJWMAY29uc3RfdmFsdWVzIGFycmF5IHRvbyBzbWFsbCBmb3IgJXMKAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIgoAJWYKAEludmFsaWQgY2hhcnMgJyVzJyBhdCB0aGUgZW5kIG9mIGV4cHJlc3Npb24gJyVzJwoAVW5kZWZpbmVkIGNvbnN0YW50IG9yIG1pc3NpbmcgJygnIGluICclcycKAE1pc3NpbmcgJyknIGluICclcycKAE1pc3NpbmcgJyknIG9yIHRvbyBtYW55IGFyZ3MgaW4gJyVzJwoAc2luaABjb3NoAHRhbmgAc2luAGNvcwB0YW4AYXRhbgBhc2luAGFjb3MAZXhwAGFicwB0aW1lAHNxdWlzaABnYXVzcwBtb2QAbWF4AG1pbgBlcQBndGUAZ3QAbHRlAGx0AGxkAGlzbmFuAGlzaW5mAHN0AHdoaWxlAHRheWxvcgByb290AGZsb29yAGNlaWwAcm91bmQAc3FydABub3QAcG93AHByaW50AGh5cG90AGdjZABpZgBpZm5vdABiaXRhbmQAYml0b3IAYmV0d2VlbgBjbGlwAGF0YW4yAGxlcnAAVW5rbm93biBmdW5jdGlvbiBpbiAnJXMnCgBFAFBJAFBISQBRUDJMQU1CREEARXZhbABWYWx1ZSAlZiBmb3IgcGFyYW1ldGVyICclcycgb3V0IG9mIHJhbmdlIFslZyAtICVnXQoAVmFsdWUgJWYgZm9yIHBhcmFtZXRlciAnJXMnIGlzIG5vdCBhIHZhbGlkIHNldCBvZiAzMmJpdCBpbnRlZ2VyIGZsYWdzCgBkZXRlY3RlZCAlZCBsb2dpY2FsIGNvcmVzCgAAARwCHQ4YAx4WFA8ZEQQIHxsNFxUTEAcaDBIGCwUKCVVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBkdXJhdGlvbgoAVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiIGFzIGNoYW5uZWwgbGF5b3V0CgBJbnZhbGlkIG9wdGlvbiB0eXBlLgoAVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiIGFzIGNvbG9yCgAweAByYW5kb20AYmlrZXNoZWQAMDEyMzQ1Njc4OUFCQ0RFRmFiY2RlZgBJbnZhbGlkIDB4UlJHR0JCW0FBXSBjb2xvciBzdHJpbmc6ICclcycKAENhbm5vdCBmaW5kIGNvbG9yICclcycKAEludmFsaWQgYWxwaGEgdmFsdWUgc3BlY2lmaWVyICclcycgaW4gJyVzJwoAQWxpY2VCbHVlAEFudGlxdWVXaGl0ZQBBcXVhAEFxdWFtYXJpbmUAQXp1cmUAQmVpZ2UAQmlzcXVlAEJsYWNrAEJsYW5jaGVkQWxtb25kAEJsdWUAQmx1ZVZpb2xldABCcm93bgBCdXJseVdvb2QAQ2FkZXRCbHVlAENoYXJ0cmV1c2UAQ2hvY29sYXRlAENvcmFsAENvcm5mbG93ZXJCbHVlAENvcm5zaWxrAENyaW1zb24AQ3lhbgBEYXJrQmx1ZQBEYXJrQ3lhbgBEYXJrR29sZGVuUm9kAERhcmtHcmF5AERhcmtHcmVlbgBEYXJrS2hha2kARGFya01hZ2VudGEARGFya09saXZlR3JlZW4ARGFya29yYW5nZQBEYXJrT3JjaGlkAERhcmtSZWQARGFya1NhbG1vbgBEYXJrU2VhR3JlZW4ARGFya1NsYXRlQmx1ZQBEYXJrU2xhdGVHcmF5AERhcmtUdXJxdW9pc2UARGFya1Zpb2xldABEZWVwUGluawBEZWVwU2t5Qmx1ZQBEaW1HcmF5AERvZGdlckJsdWUARmlyZUJyaWNrAEZsb3JhbFdoaXRlAEZvcmVzdEdyZWVuAEZ1Y2hzaWEAR2FpbnNib3JvAEdob3N0V2hpdGUAR29sZABHb2xkZW5Sb2QAR3JheQBHcmVlbgBHcmVlblllbGxvdwBIb25leURldwBIb3RQaW5rAEluZGlhblJlZABJbmRpZ28ASXZvcnkAS2hha2kATGF2ZW5kZXIATGF2ZW5kZXJCbHVzaABMYXduR3JlZW4ATGVtb25DaGlmZm9uAExpZ2h0Qmx1ZQBMaWdodENvcmFsAExpZ2h0Q3lhbgBMaWdodEdvbGRlblJvZFllbGxvdwBMaWdodEdyZWVuAExpZ2h0R3JleQBMaWdodFBpbmsATGlnaHRTYWxtb24ATGlnaHRTZWFHcmVlbgBMaWdodFNreUJsdWUATGlnaHRTbGF0ZUdyYXkATGlnaHRTdGVlbEJsdWUATGlnaHRZZWxsb3cATGltZQBMaW1lR3JlZW4ATGluZW4ATWFnZW50YQBNYXJvb24ATWVkaXVtQXF1YU1hcmluZQBNZWRpdW1CbHVlAE1lZGl1bU9yY2hpZABNZWRpdW1QdXJwbGUATWVkaXVtU2VhR3JlZW4ATWVkaXVtU2xhdGVCbHVlAE1lZGl1bVNwcmluZ0dyZWVuAE1lZGl1bVR1cnF1b2lzZQBNZWRpdW1WaW9sZXRSZWQATWlkbmlnaHRCbHVlAE1pbnRDcmVhbQBNaXN0eVJvc2UATW9jY2FzaW4ATmF2YWpvV2hpdGUATmF2eQBPbGRMYWNlAE9saXZlAE9saXZlRHJhYgBPcmFuZ2UAT3JhbmdlUmVkAE9yY2hpZABQYWxlR29sZGVuUm9kAFBhbGVHcmVlbgBQYWxlVHVycXVvaXNlAFBhbGVWaW9sZXRSZWQAUGFwYXlhV2hpcABQZWFjaFB1ZmYAUGVydQBQaW5rAFBsdW0AUG93ZGVyQmx1ZQBQdXJwbGUAUmVkAFJvc3lCcm93bgBSb3lhbEJsdWUAU2FkZGxlQnJvd24AU2FsbW9uAFNhbmR5QnJvd24AU2VhR3JlZW4AU2VhU2hlbGwAU2llbm5hAFNpbHZlcgBTa3lCbHVlAFNsYXRlQmx1ZQBTbGF0ZUdyYXkAU25vdwBTcHJpbmdHcmVlbgBTdGVlbEJsdWUAVGFuAFRlYWwAVGhpc3RsZQBUb21hdG8AVHVycXVvaXNlAFZpb2xldABXaGVhdABXaGl0ZQBXaGl0ZVNtb2tlAFllbGxvdwBZZWxsb3dHcmVlbgBub3cAJUo6JU06JVMAJU06JVMAJUg6JU0AJUglTQAlSAAlSDolTTolUwAlSCVNJVMAamFudWFyeQBmZWJydWFyeQBtYXJjaABhcHJpbABtYXkAanVuZQBqdWx5AGF1Z3VzdABzZXB0ZW1iZXIAb2N0b2JlcgBub3ZlbWJlcgBkZWNlbWJlcgAlWSAtICVtIC0gJWQAJVklbSVkAHNhbXBsZSBmb3JtYXQAVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiIGFzICVzCgBWYWx1ZSAlZCBmb3IgcGFyYW1ldGVyICclcycgb3V0IG9mICVzIGZvcm1hdCByYW5nZSBbJWQgLSAlZF0KAHBpeGVsIGZvcm1hdAByZ2IzMgBiZ3IzMgAlcyVzAGxlAHZhYXBpAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyB2aWRlbyByYXRlCgAlZDolZCVjAG50c2MAcGFsAHFudHNjAHFwYWwAc250c2MAc3BhbABudHNjLWZpbG0AVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiIGFzIGltYWdlIHNpemUKAHNxY2lmAHFjaWYAY2lmADRjaWYAMTZjaWYAcXF2Z2EAcXZnYQB2Z2EAc3ZnYQB4Z2EAdXhnYQBxeGdhAHN4Z2EAcXN4Z2EAaHN4Z2EAd3ZnYQB3eGdhAHdzeGdhAHd1eGdhAHdveGdhAHdxc3hnYQB3cXV4Z2EAd2hzeGdhAHdodXhnYQBjZ2EAZWdhAGhkNDgwAGhkNzIwAGhkMTA4MAAyawAya2RjaQAya2ZsYXQAMmtzY29wZQA0awA0a2RjaQA0a2ZsYXQANGtzY29wZQBuaGQAaHF2Z2EAd3F2Z2EAZndxdmdhAGh2Z2EAcWhkAHVoZDIxNjAAdWhkNDMyMAB0cnVlLHkseWVzLGVuYWJsZSxlbmFibGVkLG9uAGZhbHNlLG4sbm8sZGlzYWJsZSxkaXNhYmxlZCxvZmYAVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiIGFzIGJvb2xlYW4KAEFWT3B0aW9uIHR5cGUgJWQgb2Ygb3B0aW9uICVzIG5vdCBpbXBsZW1lbnRlZCB5ZXQKAEVycm9yIHNldHRpbmcgb3B0aW9uICVzIHRvIHZhbHVlICVzLgoAbmJfdGhyZWFkcyA+PSAwAGxpYmF2dXRpbC9zbGljZXRocmVhZC5jAG5iX2pvYnMgPiAwAEZpbmFsIHRocmVhZCB1cGRhdGUgZmFpbGVkCgBwLT5hdmN0eC0+Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfVklERU8gfHwgcC0+YXZjdHgtPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX0FVRElPAGxpYmF2Y29kZWMvcHRocmVhZF9mcmFtZS5jAGZjdHgtPmFzeW5jX2xvY2sAQXNzZXJ0aW9uICVzIGZhaWxlZCBhdCAlczolZAoAcmV0ID49IDAAbGliYXZjb2RlYy9vcHRpb25zLmMAQVZDb2RlY0NvbnRleHQAYgBzZXQgYml0cmF0ZSAoaW4gYml0cy9zKQBhYgBidABTZXQgdmlkZW8gYml0cmF0ZSB0b2xlcmFuY2UgKGluIGJpdHMvcykuIEluIDEtcGFzcyBtb2RlLCBiaXRyYXRlIHRvbGVyYW5jZSBzcGVjaWZpZXMgaG93IGZhciByYXRlY29udHJvbCBpcyB3aWxsaW5nIHRvIGRldmlhdGUgZnJvbSB0aGUgdGFyZ2V0IGF2ZXJhZ2UgYml0cmF0ZSB2YWx1ZS4gVGhpcyBpcyBub3QgcmVsYXRlZCB0byBtaW5pbXVtL21heGltdW0gYml0cmF0ZS4gTG93ZXJpbmcgdG9sZXJhbmNlIHRvbyBtdWNoIGhhcyBhbiBhZHZlcnNlIGVmZmVjdCBvbiBxdWFsaXR5LgBmbGFncwB1bmFsaWduZWQAYWxsb3cgZGVjb2RlcnMgdG8gcHJvZHVjZSB1bmFsaWduZWQgb3V0cHV0AG12NAB1c2UgZm91ciBtb3Rpb24gdmVjdG9ycyBwZXIgbWFjcm9ibG9jayAoTVBFRy00KQBxcGVsAHVzZSAxLzQtcGVsIG1vdGlvbiBjb21wZW5zYXRpb24AbG9vcAB1c2UgbG9vcCBmaWx0ZXIAcXNjYWxlAHVzZSBmaXhlZCBxc2NhbGUAcGFzczEAdXNlIGludGVybmFsIDItcGFzcyByYXRlY29udHJvbCBpbiBmaXJzdCAgcGFzcyBtb2RlAHBhc3MyAHVzZSBpbnRlcm5hbCAyLXBhc3MgcmF0ZWNvbnRyb2wgaW4gc2Vjb25kIHBhc3MgbW9kZQBncmF5AG9ubHkgZGVjb2RlL2VuY29kZSBncmF5c2NhbGUAcHNucgBlcnJvcls/XSB2YXJpYWJsZXMgd2lsbCBiZSBzZXQgZHVyaW5nIGVuY29kaW5nAHRydW5jYXRlZABJbnB1dCBiaXRzdHJlYW0gbWlnaHQgYmUgcmFuZG9tbHkgdHJ1bmNhdGVkAGlsZGN0AHVzZSBpbnRlcmxhY2VkIERDVABsb3dfZGVsYXkAZm9yY2UgbG93IGRlbGF5AGdsb2JhbF9oZWFkZXIAcGxhY2UgZ2xvYmFsIGhlYWRlcnMgaW4gZXh0cmFkYXRhIGluc3RlYWQgb2YgZXZlcnkga2V5ZnJhbWUAYml0ZXhhY3QAdXNlIG9ubHkgYml0ZXhhY3QgZnVuY3Rpb25zIChleGNlcHQgKEkpRENUKQBhaWMASC4yNjMgYWR2YW5jZWQgaW50cmEgY29kaW5nIC8gTVBFRy00IEFDIHByZWRpY3Rpb24AaWxtZQBpbnRlcmxhY2VkIG1vdGlvbiBlc3RpbWF0aW9uAGNnb3AAY2xvc2VkIEdPUABvdXRwdXRfY29ycnVwdABPdXRwdXQgZXZlbiBwb3RlbnRpYWxseSBjb3JydXB0ZWQgZnJhbWVzAGZhc3QAYWxsb3cgbm9uLXNwZWMtY29tcGxpYW50IHNwZWVkdXAgdHJpY2tzAGZsYWdzMgBub291dABza2lwIGJpdHN0cmVhbSBlbmNvZGluZwBpZ25vcmVjcm9wAGlnbm9yZSBjcm9wcGluZyBpbmZvcm1hdGlvbiBmcm9tIHNwcwBsb2NhbF9oZWFkZXIAcGxhY2UgZ2xvYmFsIGhlYWRlcnMgYXQgZXZlcnkga2V5ZnJhbWUgaW5zdGVhZCBvZiBpbiBleHRyYWRhdGEAY2h1bmtzAEZyYW1lIGRhdGEgbWlnaHQgYmUgc3BsaXQgaW50byBtdWx0aXBsZSBjaHVua3MAc2hvd2FsbABTaG93IGFsbCBmcmFtZXMgYmVmb3JlIHRoZSBmaXJzdCBrZXlmcmFtZQBleHBvcnRfbXZzAGV4cG9ydCBtb3Rpb24gdmVjdG9ycyB0aHJvdWdoIGZyYW1lIHNpZGUgZGF0YQBza2lwX21hbnVhbABkbyBub3Qgc2tpcCBzYW1wbGVzIGFuZCBleHBvcnQgc2tpcCBpbmZvcm1hdGlvbiBhcyBmcmFtZSBzaWRlIGRhdGEAYXNzX3JvX2ZsdXNoX25vb3AAZG8gbm90IHJlc2V0IEFTUyBSZWFkT3JkZXIgZmllbGQgb24gZmx1c2gAdGltZV9iYXNlAGcAc2V0IHRoZSBncm91cCBvZiBwaWN0dXJlIChHT1ApIHNpemUAYXIAc2V0IGF1ZGlvIHNhbXBsaW5nIHJhdGUgKGluIEh6KQBhYwBzZXQgbnVtYmVyIG9mIGF1ZGlvIGNoYW5uZWxzAGN1dG9mZgBzZXQgY3V0b2ZmIGJhbmR3aWR0aABmcmFtZV9zaXplAGZyYW1lX251bWJlcgBkZWxheQBxY29tcAB2aWRlbyBxdWFudGl6ZXIgc2NhbGUgY29tcHJlc3Npb24gKFZCUikuIENvbnN0YW50IG9mIHJhdGVjb250cm9sIGVxdWF0aW9uLiBSZWNvbW1lbmRlZCByYW5nZSBmb3IgZGVmYXVsdCByY19lcTogMC4wLTEuMABxYmx1cgB2aWRlbyBxdWFudGl6ZXIgc2NhbGUgYmx1ciAoVkJSKQBxbWluAG1pbmltdW0gdmlkZW8gcXVhbnRpemVyIHNjYWxlIChWQlIpAHFtYXgAbWF4aW11bSB2aWRlbyBxdWFudGl6ZXIgc2NhbGUgKFZCUikAcWRpZmYAbWF4aW11bSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHF1YW50aXplciBzY2FsZXMgKFZCUikAYmYAc2V0IG1heGltdW0gbnVtYmVyIG9mIEItZnJhbWVzIGJldHdlZW4gbm9uLUItZnJhbWVzAGJfcWZhY3RvcgBRUCBmYWN0b3IgYmV0d2VlbiBQLSBhbmQgQi1mcmFtZXMAYl9zdHJhdGVneQBzdHJhdGVneSB0byBjaG9vc2UgYmV0d2VlbiBJL1AvQi1mcmFtZXMAcHMAUlRQIHBheWxvYWQgc2l6ZSBpbiBieXRlcwBtdl9iaXRzAGhlYWRlcl9iaXRzAGlfdGV4X2JpdHMAcF90ZXhfYml0cwBpX2NvdW50AHBfY291bnQAc2tpcF9jb3VudABtaXNjX2JpdHMAZnJhbWVfYml0cwBjb2RlY190YWcAYnVnAHdvcmsgYXJvdW5kIG5vdCBhdXRvZGV0ZWN0ZWQgZW5jb2RlciBidWdzAGF1dG9kZXRlY3QAeHZpZF9pbGFjZQBYdmlkIGludGVybGFjaW5nIGJ1ZyAoYXV0b2RldGVjdGVkIGlmIEZPVVJDQyA9PSBYVklYKQB1bXA0AChhdXRvZGV0ZWN0ZWQgaWYgRk9VUkNDID09IFVNUDQpAG5vX3BhZGRpbmcAcGFkZGluZyBidWcgKGF1dG9kZXRlY3RlZCkAYW12AHFwZWxfY2hyb21hAHN0ZF9xcGVsAG9sZCBzdGFuZGFyZCBxcGVsIChhdXRvZGV0ZWN0ZWQgcGVyIEZPVVJDQy92ZXJzaW9uKQBxcGVsX2Nocm9tYTIAZGlyZWN0X2Jsb2Nrc2l6ZQBkaXJlY3QtcXBlbC1ibG9ja3NpemUgYnVnIChhdXRvZGV0ZWN0ZWQgcGVyIEZPVVJDQy92ZXJzaW9uKQBlZGdlAGVkZ2UgcGFkZGluZyBidWcgKGF1dG9kZXRlY3RlZCBwZXIgRk9VUkNDL3ZlcnNpb24pAGhwZWxfY2hyb21hAGRjX2NsaXAAbXMAd29yayBhcm91bmQgdmFyaW91cyBidWdzIGluIE1pY3Jvc29mdCdzIGJyb2tlbiBkZWNvZGVycwB0cnVuYwB0cnVuY2F0ZWQgZnJhbWVzAGllZGdlAHN0cmljdABob3cgc3RyaWN0bHkgdG8gZm9sbG93IHRoZSBzdGFuZGFyZHMAdmVyeQBzdHJpY3RseSBjb25mb3JtIHRvIGEgb2xkZXIgbW9yZSBzdHJpY3QgdmVyc2lvbiBvZiB0aGUgc3BlYyBvciByZWZlcmVuY2Ugc29mdHdhcmUAc3RyaWN0bHkgY29uZm9ybSB0byBhbGwgdGhlIHRoaW5ncyBpbiB0aGUgc3BlYyBubyBtYXR0ZXIgd2hhdCB0aGUgY29uc2VxdWVuY2VzAG5vcm1hbAB1bm9mZmljaWFsAGFsbG93IHVub2ZmaWNpYWwgZXh0ZW5zaW9ucwBleHBlcmltZW50YWwAYWxsb3cgbm9uLXN0YW5kYXJkaXplZCBleHBlcmltZW50YWwgdGhpbmdzAGJfcW9mZnNldABRUCBvZmZzZXQgYmV0d2VlbiBQLSBhbmQgQi1mcmFtZXMAZXJyX2RldGVjdABzZXQgZXJyb3IgZGV0ZWN0aW9uIGZsYWdzAGNyY2NoZWNrAHZlcmlmeSBlbWJlZGRlZCBDUkNzAGJpdHN0cmVhbQBkZXRlY3QgYml0c3RyZWFtIHNwZWNpZmljYXRpb24gZGV2aWF0aW9ucwBidWZmZXIAZGV0ZWN0IGltcHJvcGVyIGJpdHN0cmVhbSBsZW5ndGgAZXhwbG9kZQBhYm9ydCBkZWNvZGluZyBvbiBtaW5vciBlcnJvciBkZXRlY3Rpb24AaWdub3JlX2VycgBpZ25vcmUgZXJyb3JzAGNhcmVmdWwAY29uc2lkZXIgdGhpbmdzIHRoYXQgdmlvbGF0ZSB0aGUgc3BlYywgYXJlIGZhc3QgdG8gY2hlY2sgYW5kIGhhdmUgbm90IGJlZW4gc2VlbiBpbiB0aGUgd2lsZCBhcyBlcnJvcnMAY29tcGxpYW50AGNvbnNpZGVyIGFsbCBzcGVjIG5vbiBjb21wbGlhbmNpZXMgYXMgZXJyb3JzAGFnZ3Jlc3NpdmUAY29uc2lkZXIgdGhpbmdzIHRoYXQgYSBzYW5lIGVuY29kZXIgc2hvdWxkIG5vdCBkbyBhcyBhbiBlcnJvcgBoYXNfYl9mcmFtZXMAYmxvY2tfYWxpZ24AbXBlZ19xdWFudAB1c2UgTVBFRyBxdWFudGl6ZXJzIGluc3RlYWQgb2YgSC4yNjMAcmNfb3ZlcnJpZGVfY291bnQAbWF4cmF0ZQBtYXhpbXVtIGJpdHJhdGUgKGluIGJpdHMvcykuIFVzZWQgZm9yIFZCViB0b2dldGhlciB3aXRoIGJ1ZnNpemUuAG1pbnJhdGUAbWluaW11bSBiaXRyYXRlIChpbiBiaXRzL3MpLiBNb3N0IHVzZWZ1bCBpbiBzZXR0aW5nIHVwIGEgQ0JSIGVuY29kZS4gSXQgaXMgb2YgbGl0dGxlIHVzZSBvdGhlcndpc2UuAGJ1ZnNpemUAc2V0IHJhdGVjb250cm9sIGJ1ZmZlciBzaXplIChpbiBiaXRzKQBpX3FmYWN0b3IAUVAgZmFjdG9yIGJldHdlZW4gUC0gYW5kIEktZnJhbWVzAGlfcW9mZnNldABRUCBvZmZzZXQgYmV0d2VlbiBQLSBhbmQgSS1mcmFtZXMAZGN0AERDVCBhbGdvcml0aG0AYXV0bwBhdXRvc2VsZWN0IGEgZ29vZCBvbmUAZmFzdGludABmYXN0IGludGVnZXIAYWNjdXJhdGUgaW50ZWdlcgBtbXgAYWx0aXZlYwBmYWFuAGZsb2F0aW5nIHBvaW50IEFBTiBEQ1QAbHVtaV9tYXNrAGNvbXByZXNzZXMgYnJpZ2h0IGFyZWFzIHN0cm9uZ2VyIHRoYW4gbWVkaXVtIG9uZXMAdGNwbHhfbWFzawB0ZW1wb3JhbCBjb21wbGV4aXR5IG1hc2tpbmcAc2NwbHhfbWFzawBzcGF0aWFsIGNvbXBsZXhpdHkgbWFza2luZwBwX21hc2sAaW50ZXIgbWFza2luZwBkYXJrX21hc2sAY29tcHJlc3NlcyBkYXJrIGFyZWFzIHN0cm9uZ2VyIHRoYW4gbWVkaXVtIG9uZXMAaWRjdABzZWxlY3QgSURDVCBpbXBsZW1lbnRhdGlvbgBzaW1wbGUAc2ltcGxlbW14AGFybQBzaW1wbGVhcm0Ac2ltcGxlYXJtdjV0ZQBzaW1wbGVhcm12NgBzaW1wbGVuZW9uAHh2aWQAeHZpZG1teABkZXByZWNhdGVkLCBmb3IgY29tcGF0aWJpbGl0eSBvbmx5AGZhYW5pAGZsb2F0aW5nIHBvaW50IEFBTiBJRENUAHNpbXBsZWF1dG8Ac2xpY2VfY291bnQAZWMAc2V0IGVycm9yIGNvbmNlYWxtZW50IHN0cmF0ZWd5AGd1ZXNzX212cwBpdGVyYXRpdmUgbW90aW9uIHZlY3RvciAoTVYpIHNlYXJjaCAoc2xvdykAZGVibG9jawB1c2Ugc3Ryb25nIGRlYmxvY2sgZmlsdGVyIGZvciBkYW1hZ2VkIE1CcwBmYXZvcl9pbnRlcgBmYXZvciBwcmVkaWN0aW5nIGZyb20gdGhlIHByZXZpb3VzIGZyYW1lAGJpdHNfcGVyX2NvZGVkX3NhbXBsZQBwcmVkAHByZWRpY3Rpb24gbWV0aG9kAGxlZnQAcGxhbmUAbWVkaWFuAGFzcGVjdABzYW1wbGUgYXNwZWN0IHJhdGlvAHNhcgBkZWJ1ZwBwcmludCBzcGVjaWZpYyBkZWJ1ZyBpbmZvAHBpY3QAcGljdHVyZSBpbmZvAHJjAHJhdGUgY29udHJvbABtYl90eXBlAG1hY3JvYmxvY2sgKE1CKSB0eXBlAHFwAHBlci1ibG9jayBxdWFudGl6YXRpb24gcGFyYW1ldGVyIChRUCkAZGN0X2NvZWZmAGdyZWVuX21ldGFkYXRhAHNraXAAc3RhcnRjb2RlAGVyAGVycm9yIHJlY29nbml0aW9uAG1tY28AbWVtb3J5IG1hbmFnZW1lbnQgY29udHJvbCBvcGVyYXRpb25zIChILjI2NCkAYnVncwBidWZmZXJzAHBpY3R1cmUgYnVmZmVyIGFsbG9jYXRpb25zAHRocmVhZF9vcHMAdGhyZWFkaW5nIG9wZXJhdGlvbnMAbm9tYwBza2lwIG1vdGlvbiBjb21wZW5zYXRpb24AY21wAGZ1bGwtcGVsIE1FIGNvbXBhcmUgZnVuY3Rpb24AY21wX2Z1bmMAc3ViY21wAHN1Yi1wZWwgTUUgY29tcGFyZSBmdW5jdGlvbgBtYmNtcABtYWNyb2Jsb2NrIGNvbXBhcmUgZnVuY3Rpb24AaWxkY3RjbXAAaW50ZXJsYWNlZCBEQ1QgY29tcGFyZSBmdW5jdGlvbgBkaWFfc2l6ZQBkaWFtb25kIHR5cGUgJiBzaXplIGZvciBtb3Rpb24gZXN0aW1hdGlvbgBsYXN0X3ByZWQAYW1vdW50IG9mIG1vdGlvbiBwcmVkaWN0b3JzIGZyb20gdGhlIHByZXZpb3VzIGZyYW1lAHByZW1lAHByZSBtb3Rpb24gZXN0aW1hdGlvbgBwcmVjbXAAcHJlIG1vdGlvbiBlc3RpbWF0aW9uIGNvbXBhcmUgZnVuY3Rpb24Ac2FkAHN1bSBvZiBhYnNvbHV0ZSBkaWZmZXJlbmNlcywgZmFzdABzc2UAc3VtIG9mIHNxdWFyZWQgZXJyb3JzAHNhdGQAc3VtIG9mIGFic29sdXRlIEhhZGFtYXJkIHRyYW5zZm9ybWVkIGRpZmZlcmVuY2VzAHN1bSBvZiBhYnNvbHV0ZSBEQ1QgdHJhbnNmb3JtZWQgZGlmZmVyZW5jZXMAc3VtIG9mIHNxdWFyZWQgcXVhbnRpemF0aW9uIGVycm9ycyAoYXZvaWQsIGxvdyBxdWFsaXR5KQBiaXQAbnVtYmVyIG9mIGJpdHMgbmVlZGVkIGZvciB0aGUgYmxvY2sAcmQAcmF0ZSBkaXN0b3J0aW9uIG9wdGltYWwsIHNsb3cAemVybwAwAHZzYWQAc3VtIG9mIGFic29sdXRlIHZlcnRpY2FsIGRpZmZlcmVuY2VzAHZzc2UAc3VtIG9mIHNxdWFyZWQgdmVydGljYWwgZGlmZmVyZW5jZXMAbnNzZQBub2lzZSBwcmVzZXJ2aW5nIHN1bSBvZiBzcXVhcmVkIGRpZmZlcmVuY2VzAGRjdG1heABjaHJvbWEAbXNhZABzdW0gb2YgYWJzb2x1dGUgZGlmZmVyZW5jZXMsIG1lZGlhbiBwcmVkaWN0ZWQAcHJlX2RpYV9zaXplAGRpYW1vbmQgdHlwZSAmIHNpemUgZm9yIG1vdGlvbiBlc3RpbWF0aW9uIHByZS1wYXNzAHN1YnEAc3ViLXBlbCBtb3Rpb24gZXN0aW1hdGlvbiBxdWFsaXR5AG1lX3JhbmdlAGxpbWl0IG1vdGlvbiB2ZWN0b3JzIHJhbmdlICgxMDIzIGZvciBEaXZYIHBsYXllcikAZ2xvYmFsX3F1YWxpdHkAY29kZXIAdmxjAHZhcmlhYmxlIGxlbmd0aCBjb2RlciAvIEh1ZmZtYW4gY29kZXIAYXJpdGhtZXRpYyBjb2RlcgByYXcAcmF3IChubyBlbmNvZGluZykAcmxlAHJ1bi1sZW5ndGggY29kZXIAY29udGV4dABjb250ZXh0IG1vZGVsAHNsaWNlX2ZsYWdzAG1iZABtYWNyb2Jsb2NrIGRlY2lzaW9uIGFsZ29yaXRobSAoaGlnaCBxdWFsaXR5IG1vZGUpAHVzZSBtYmNtcABiaXRzAHVzZSBmZXdlc3QgYml0cwB1c2UgYmVzdCByYXRlIGRpc3RvcnRpb24Ac2NfdGhyZXNob2xkAHNjZW5lIGNoYW5nZSB0aHJlc2hvbGQAbnIAbm9pc2UgcmVkdWN0aW9uAHJjX2luaXRfb2NjdXBhbmN5AG51bWJlciBvZiBiaXRzIHdoaWNoIHNob3VsZCBiZSBsb2FkZWQgaW50byB0aGUgcmMgYnVmZmVyIGJlZm9yZSBkZWNvZGluZyBzdGFydHMAdGhyZWFkcwBzZXQgdGhlIG51bWJlciBvZiB0aHJlYWRzAGF1dG9kZXRlY3QgYSBzdWl0YWJsZSBudW1iZXIgb2YgdGhyZWFkcyB0byB1c2UAZGMAaW50cmFfZGNfcHJlY2lzaW9uAG5zc2V3AG5zc2Ugd2VpZ2h0AHNraXBfdG9wAG51bWJlciBvZiBtYWNyb2Jsb2NrIHJvd3MgYXQgdGhlIHRvcCB3aGljaCBhcmUgc2tpcHBlZABza2lwX2JvdHRvbQBudW1iZXIgb2YgbWFjcm9ibG9jayByb3dzIGF0IHRoZSBib3R0b20gd2hpY2ggYXJlIHNraXBwZWQAcHJvZmlsZQB1bmtub3duAGFhY19tYWluAGFhY19sb3cAYWFjX3NzcgBhYWNfbHRwAGFhY19oZQBhYWNfaGVfdjIAYWFjX2xkAGFhY19lbGQAbXBlZzJfYWFjX2xvdwBtcGVnMl9hYWNfaGUAZHRzAGR0c19lcwBkdHNfOTZfMjQAZHRzX2hkX2hyYQBkdHNfaGRfbWEAbXBlZzRfc3AAbXBlZzRfY29yZQBtcGVnNF9tYWluAG1wZWc0X2FzcABtYWluMTAAbXNiYwBsZXZlbABsb3dyZXMAZGVjb2RlIGF0IDE9IDEvMiwgMj0xLzQsIDM9MS84IHJlc29sdXRpb25zAHNraXBfdGhyZXNob2xkAGZyYW1lIHNraXAgdGhyZXNob2xkAHNraXBfZmFjdG9yAGZyYW1lIHNraXAgZmFjdG9yAHNraXBfZXhwAGZyYW1lIHNraXAgZXhwb25lbnQAc2tpcGNtcABmcmFtZSBza2lwIGNvbXBhcmUgZnVuY3Rpb24AbWJsbWluAG1pbmltdW0gbWFjcm9ibG9jayBMYWdyYW5nZSBmYWN0b3IgKFZCUikAbWJsbWF4AG1heGltdW0gbWFjcm9ibG9jayBMYWdyYW5nZSBmYWN0b3IgKFZCUikAbWVwYwBtb3Rpb24gZXN0aW1hdGlvbiBiaXRyYXRlIHBlbmFsdHkgY29tcGVuc2F0aW9uICgxLjAgPSAyNTYpAHNraXBfbG9vcF9maWx0ZXIAc2tpcCBsb29wIGZpbHRlcmluZyBwcm9jZXNzIGZvciB0aGUgc2VsZWN0ZWQgZnJhbWVzAGF2ZGlzY2FyZABza2lwX2lkY3QAc2tpcCBJRENUL2RlcXVhbnRpemF0aW9uIGZvciB0aGUgc2VsZWN0ZWQgZnJhbWVzAHNraXBfZnJhbWUAc2tpcCBkZWNvZGluZyBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lcwBub25lAGRpc2NhcmQgbm8gZnJhbWUAZGVmYXVsdABkaXNjYXJkIHVzZWxlc3MgZnJhbWVzAG5vcmVmAGRpc2NhcmQgYWxsIG5vbi1yZWZlcmVuY2UgZnJhbWVzAGJpZGlyAGRpc2NhcmQgYWxsIGJpZGlyZWN0aW9uYWwgZnJhbWVzAG5va2V5AGRpc2NhcmQgYWxsIGZyYW1lcyBleGNlcHQga2V5ZnJhbWVzAG5vaW50cmEAZGlzY2FyZCBhbGwgZnJhbWVzIGV4Y2VwdCBJIGZyYW1lcwBhbGwAZGlzY2FyZCBhbGwgZnJhbWVzAGJpZGlyX3JlZmluZQByZWZpbmUgdGhlIHR3byBtb3Rpb24gdmVjdG9ycyB1c2VkIGluIGJpZGlyZWN0aW9uYWwgbWFjcm9ibG9ja3MAYnJkX3NjYWxlAGRvd25zY2FsZSBmcmFtZXMgZm9yIGR5bmFtaWMgQi1mcmFtZSBkZWNpc2lvbgBrZXlpbnRfbWluAG1pbmltdW0gaW50ZXJ2YWwgYmV0d2VlbiBJRFItZnJhbWVzAHJlZnMAcmVmZXJlbmNlIGZyYW1lcyB0byBjb25zaWRlciBmb3IgbW90aW9uIGNvbXBlbnNhdGlvbgBjaHJvbWFvZmZzZXQAY2hyb21hIFFQIG9mZnNldCBmcm9tIGx1bWEAdHJlbGxpcwByYXRlLWRpc3RvcnRpb24gb3B0aW1hbCBxdWFudGl6YXRpb24AbXYwX3RocmVzaG9sZABiX3NlbnNpdGl2aXR5AGFkanVzdCBzZW5zaXRpdml0eSBvZiBiX2ZyYW1lX3N0cmF0ZWd5IDEAY29tcHJlc3Npb25fbGV2ZWwAbWluX3ByZWRpY3Rpb25fb3JkZXIAbWF4X3ByZWRpY3Rpb25fb3JkZXIAdGltZWNvZGVfZnJhbWVfc3RhcnQAR09QIHRpbWVjb2RlIGZyYW1lIHN0YXJ0IG51bWJlciwgaW4gbm9uLWRyb3AtZnJhbWUgZm9ybWF0AGJpdHNfcGVyX3Jhd19zYW1wbGUAY2hhbm5lbF9sYXlvdXQAcmVxdWVzdF9jaGFubmVsX2xheW91dAByY19tYXhfdmJ2X3VzZQByY19taW5fdmJ2X3VzZQB0aWNrc19wZXJfZnJhbWUAY29sb3JfcHJpbWFyaWVzAGNvbG9yIHByaW1hcmllcwBjb2xvcl9wcmltYXJpZXNfdHlwZQBidDcwOQBCVC43MDkAVW5zcGVjaWZpZWQAYnQ0NzBtAEJULjQ3MCBNAGJ0NDcwYmcAQlQuNDcwIEJHAHNtcHRlMTcwbQBTTVBURSAxNzAgTQBzbXB0ZTI0MG0AU01QVEUgMjQwIE0AZmlsbQBGaWxtAGJ0MjAyMABCVC4yMDIwAHNtcHRlNDI4AFNNUFRFIDQyOC0xAHNtcHRlNDI4XzEAc21wdGU0MzEAU01QVEUgNDMxLTIAc21wdGU0MzIAU01QVEUgNDIyLTEAamVkZWMtcDIyAEpFREVDIFAyMgB1bnNwZWNpZmllZABjb2xvcl90cmMAY29sb3IgdHJhbnNmZXIgY2hhcmFjdGVyaXN0aWNzAGNvbG9yX3RyY190eXBlAGdhbW1hMjIAZ2FtbWEyOABsaW5lYXIATGluZWFyAGxvZzEwMABMb2cAbG9nMzE2AExvZyBzcXVhcmUgcm9vdABpZWM2MTk2Ni0yLTQASUVDIDYxOTY2LTItNABidDEzNjFlAEJULjEzNjEAaWVjNjE5NjYtMi0xAElFQyA2MTk2Ni0yLTEAYnQyMDIwLTEwAEJULjIwMjAgLSAxMCBiaXQAYnQyMDIwLTEyAEJULjIwMjAgLSAxMiBiaXQAc21wdGUyMDg0AFNNUFRFIDIwODQAYXJpYi1zdGQtYjY3AEFSSUIgU1RELUI2NwBsb2cAbG9nX3NxcnQAaWVjNjE5NjZfMl80AGJ0MTM2MQBpZWM2MTk2Nl8yXzEAYnQyMDIwXzEwYml0AGJ0MjAyMF8xMmJpdABjb2xvcnNwYWNlAGNvbG9yIHNwYWNlAGNvbG9yc3BhY2VfdHlwZQByZ2IAUkdCAGZjYwBGQ0MAeWNnY28AWUNHQ08AYnQyMDIwbmMAQlQuMjAyMCBOQ0wAYnQyMDIwYwBCVC4yMDIwIENMAHNtcHRlMjA4NQBTTVBURSAyMDg1AHljb2NnAGJ0MjAyMF9uY2wAYnQyMDIwX2NsAGNvbG9yX3JhbmdlAGNvbG9yIHJhbmdlAGNvbG9yX3JhbmdlX3R5cGUAdHYATVBFRyAoMjE5KjJeKG4tOCkpAHBjAEpQRUcgKDJebi0xKQBtcGVnAGpwZWcAY2hyb21hX3NhbXBsZV9sb2NhdGlvbgBjaHJvbWEgc2FtcGxlIGxvY2F0aW9uAGNocm9tYV9zYW1wbGVfbG9jYXRpb25fdHlwZQBMZWZ0AGNlbnRlcgBDZW50ZXIAdG9wbGVmdABUb3AtbGVmdAB0b3AAVG9wAGJvdHRvbWxlZnQAQm90dG9tLWxlZnQAYm90dG9tAEJvdHRvbQBsb2dfbGV2ZWxfb2Zmc2V0AHNldCB0aGUgbG9nIGxldmVsIG9mZnNldABzbGljZXMAc2V0IHRoZSBudW1iZXIgb2Ygc2xpY2VzLCB1c2VkIGluIHBhcmFsbGVsaXplZCBlbmNvZGluZwB0aHJlYWRfdHlwZQBzZWxlY3QgbXVsdGl0aHJlYWRpbmcgdHlwZQBzbGljZQBmcmFtZQBhdWRpb19zZXJ2aWNlX3R5cGUAYXVkaW8gc2VydmljZSB0eXBlAG1hAE1haW4gQXVkaW8gU2VydmljZQBlZgBFZmZlY3RzAHZpAFZpc3VhbGx5IEltcGFpcmVkAGhpAEhlYXJpbmcgSW1wYWlyZWQAZGkARGlhbG9ndWUAY28AQ29tbWVudGFyeQBlbQBFbWVyZ2VuY3kAdm8AVm9pY2UgT3ZlcgBrYQBLYXJhb2tlAHJlcXVlc3Rfc2FtcGxlX2ZtdABzYW1wbGUgZm9ybWF0IGF1ZGlvIGRlY29kZXJzIHNob3VsZCBwcmVmZXIAcGt0X3RpbWViYXNlAHN1Yl9jaGFyZW5jAHNldCBpbnB1dCB0ZXh0IHN1YnRpdGxlcyBjaGFyYWN0ZXIgZW5jb2RpbmcAc3ViX2NoYXJlbmNfbW9kZQBzZXQgaW5wdXQgdGV4dCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nIG1vZGUAZG9fbm90aGluZwBwcmVfZGVjb2RlcgBzdWJfdGV4dF9mb3JtYXQAc2V0IGRlY29kZWQgdGV4dCBzdWJ0aXRsZSBmb3JtYXQAYXNzAGFzc193aXRoX3RpbWluZ3MAcmVmY291bnRlZF9mcmFtZXMAc2lkZV9kYXRhX29ubHlfcGFja2V0cwBhcHBseV9jcm9wcGluZwBza2lwX2FscGhhAFNraXAgcHJvY2Vzc2luZyBhbHBoYQBmaWVsZF9vcmRlcgBGaWVsZCBvcmRlcgBwcm9ncmVzc2l2ZQB0dABiYgB0YgBkdW1wX3NlcGFyYXRvcgBzZXQgaW5mb3JtYXRpb24gZHVtcCBmaWVsZCBzZXBhcmF0b3IAY29kZWNfd2hpdGVsaXN0AExpc3Qgb2YgZGVjb2RlcnMgdGhhdCBhcmUgYWxsb3dlZCB0byBiZSB1c2VkAHBpeGVsX2Zvcm1hdABzZXQgcGl4ZWwgZm9ybWF0AHZpZGVvX3NpemUAc2V0IHZpZGVvIHNpemUAbWF4X3BpeGVscwBNYXhpbXVtIG51bWJlciBvZiBwaXhlbHMAaHdhY2NlbF9mbGFncwBpZ25vcmVfbGV2ZWwAaWdub3JlIGxldmVsIGV2ZW4gaWYgdGhlIGNvZGVjIGxldmVsIHVzZWQgaXMgdW5rbm93biBvciBoaWdoZXIgdGhhbiB0aGUgbWF4aW11bSBzdXBwb3J0ZWQgbGV2ZWwgcmVwb3J0ZWQgYnkgdGhlIGhhcmR3YXJlIGRyaXZlcgBhbGxvd19oaWdoX2RlcHRoAGFsbG93IHRvIG91dHB1dCBZVVYgcGl4ZWwgZm9ybWF0cyB3aXRoIGEgZGlmZmVyZW50IGNocm9tYSBzYW1wbGluZyB0aGFuIDQ6MjowIGFuZC9vciBvdGhlciB0aGFuIDggYml0cyBwZXIgY29tcG9uZW50AGFsbG93X3Byb2ZpbGVfbWlzbWF0Y2gAYXR0ZW1wdCB0byBkZWNvZGUgYW55d2F5IGlmIEhXIGFjY2VsZXJhdGVkIGRlY29kZXIncyBzdXBwb3J0ZWQgcHJvZmlsZXMgZG8gbm90IGV4YWN0bHkgbWF0Y2ggdGhlIHN0cmVhbQBleHRyYV9od19mcmFtZXMATnVtYmVyIG9mIGV4dHJhIGhhcmR3YXJlIGZyYW1lcyB0byBhbGxvY2F0ZSBmb3IgdGhlIHVzZXIATlVMTABBVkJTRkNvbnRleHQAVGhpcyBkZWNvZGVyIGRvZXMgbm90IHN1cHBvcnQgcGFyYW1ldGVyIGNoYW5nZXMsIGJ1dCBQQVJBTV9DSEFOR0Ugc2lkZSBkYXRhIHdhcyBzZW50IHRvIGl0LgoASW52YWxpZCBjaGFubmVsIGNvdW50AEludmFsaWQgc2FtcGxlIHJhdGUAUEFSQU1fQ0hBTkdFIHNpZGUgZGF0YSB0b28gc21hbGwuCgBFcnJvciBhcHBseWluZyBwYXJhbWV0ZXIgY2hhbmdlcy4KAEVycm9yIHByZS1wcm9jZXNzaW5nIGEgcGFja2V0IGJlZm9yZSBkZWNvZGluZwoAIWZyYW1lLT5idWZbMF0AKGZyYW1lLT5wcml2YXRlX3JlZiAmJiBmcmFtZS0+cHJpdmF0ZV9yZWYtPnNpemUgPT0gc2l6ZW9mKEZyYW1lRGVjb2RlRGF0YSkpIHx8ICEoYXZjdHgtPmNvZGVjLT5jYXBhYmlsaXRpZXMgJiAoMSA8PCAxKSkAc2tpcCAlZCAvIGRpc2NhcmQgJWQgc2FtcGxlcyBkdWUgdG8gc2lkZSBkYXRhCgBza2lwIHdob2xlIGZyYW1lLCBza2lwIGxlZnQ6ICVkCgBDb3VsZCBub3QgdXBkYXRlIHRpbWVzdGFtcHMgZm9yIHNraXBwZWQgc2FtcGxlcy4KAHNraXAgJWQvJWQgc2FtcGxlcwoAQ291bGQgbm90IHVwZGF0ZSB0aW1lc3RhbXBzIGZvciBkaXNjYXJkZWQgc2FtcGxlcy4KAGRpc2NhcmQgJWQvJWQgc2FtcGxlcwoATXVsdGlwbGUgZnJhbWVzIGluIGEgcGFja2V0LgoAVG9vIG1hbnkgZXJyb3JzIHdoZW4gZHJhaW5pbmcsIHRoaXMgaXMgYSBidWcuIFN0b3AgZHJhaW5pbmcgYW5kIGZvcmNlIEVPRi4KAGZyYW1lLT5idWZbMF0AYXZfcGFja2V0X3JlZigpIGZhaWxlZCBpbiBzdWJtaXRfcGFja2V0KCkKAG51bGwALABBIG5vbi1leGlzdGluZyBiaXRzdHJlYW0gZmlsdGVyICVzIHJlcXVlc3RlZCBieSBhIGRlY29kZXIuIFRoaXMgaXMgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQuCgBJbnZhbGlkIGNyb3BwaW5nIGluZm9ybWF0aW9uIHNldCBieSBhIGRlY29kZXI6ICV6dS8lenUvJXp1LyV6dSAoZnJhbWUgc2l6ZSAlZHglZCkuIFRoaXMgaXMgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQKACFwLT5od2FjY2VsX3NlcmlhbGl6aW5nAEEgZnJhbWUgdGhyZWFkZWQgZGVjb2RlciBkaWQgbm90IGZyZWUgdGhlIGZyYW1lIG9uIGZhaWx1cmUuIFRoaXMgaXMgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQuCgBBcHBsaWNhdGlvbiBoYXMgcmVxdWVzdGVkICVkIHRocmVhZHMuIFVzaW5nIGEgdGhyZWFkIGNvdW50IGdyZWF0ZXIgdGhhbiAlZCBpcyBub3QgcmVjb21tZW5kZWQuCgBObyBjb2RlYyBwcm92aWRlZCB0byBhdmNvZGVjX29wZW4yKCkKAFRoaXMgQVZDb2RlY0NvbnRleHQgd2FzIGFsbG9jYXRlZCBmb3IgJXMsIGJ1dCAlcyBwYXNzZWQgdG8gYXZjb2RlY19vcGVuMigpCgBDb2RlYyAoJXMpIG5vdCBvbiB3aGl0ZWxpc3QgJyVzJwoASWdub3JpbmcgaW52YWxpZCB3aWR0aC9oZWlnaHQgdmFsdWVzCgBpZ25vcmluZyBpbnZhbGlkIFNBUjogJXUvJXUKAENvZGVjIHR5cGUgb3IgaWQgbWlzbWF0Y2hlcwoAZW5jb2RlcgBkZWNvZGVyAFRoZSAlcyAnJXMnIGlzIGV4cGVyaW1lbnRhbCBidXQgZXhwZXJpbWVudGFsIGNvZGVjcyBhcmUgbm90IGVuYWJsZWQsIGFkZCAnLXN0cmljdCAlZCcgaWYgeW91IHdhbnQgdG8gdXNlIGl0LgoAQWx0ZXJuYXRpdmVseSB1c2UgdGhlIG5vbiBleHBlcmltZW50YWwgJXMgJyVzJy4KAFRoZSBtYXhpbXVtIHZhbHVlIGZvciBsb3dyZXMgc3VwcG9ydGVkIGJ5IHRoZSBkZWNvZGVyIGlzICVkCgBUaGUgZW5jb2RlciB0aW1lYmFzZSBpcyBub3Qgc2V0LgoAJWQAU3BlY2lmaWVkIHNhbXBsZSBmb3JtYXQgJXMgaXMgaW52YWxpZCBvciBub3Qgc3VwcG9ydGVkCgBTcGVjaWZpZWQgcGl4ZWwgZm9ybWF0ICVzIGlzIGludmFsaWQgb3Igbm90IHN1cHBvcnRlZAoAU3BlY2lmaWVkIHNhbXBsZSByYXRlICVkIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0IG5vdCBzcGVjaWZpZWQKAFNwZWNpZmllZCBjaGFubmVsIGxheW91dCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBudW1iZXIgb2Ygc3BlY2lmaWVkIGNoYW5uZWxzICVkCgBTcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkIGlzIG5vdCBzdXBwb3J0ZWQKAFNwZWNpZmllZCBiaXQgZGVwdGggJWQgbm90IHBvc3NpYmxlIHdpdGggdGhlIHNwZWNpZmllZCBwaXhlbCBmb3JtYXRzIGRlcHRoICVkCgBkaW1lbnNpb25zIG5vdCBzZXQKAEJpdHJhdGUgJWxsZCBpcyBleHRyZW1lbHkgbG93LCBtYXliZSB5b3UgbWVhbiAlbGxkawoAdGlja3NfcGVyX2ZyYW1lICVkIHRvbyBsYXJnZSBmb3IgdGhlIHRpbWViYXNlICVkLyVkLgBNaXNtYXRjaGluZyBBVkNvZGVjQ29udGV4dC5waXhfZm10IGFuZCBBVkhXRnJhbWVzQ29udGV4dC5mb3JtYXQKAE1pc21hdGNoaW5nIEFWQ29kZWNDb250ZXh0LnN3X3BpeF9mbXQgKCVzKSBhbmQgQVZIV0ZyYW1lc0NvbnRleHQuc3dfZm9ybWF0ICglcykKAGdyYXkgZGVjb2RpbmcgcmVxdWVzdGVkIGJ1dCBub3QgZW5hYmxlZCBhdCBjb25maWd1cmF0aW9uIHRpbWUKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkOiBpZ25vcmluZyBzcGVjaWZpZWQgY2hhbm5lbCBsYXlvdXQKAENoYXJhY3RlciBlbmNvZGluZyBpcyBvbmx5IHN1cHBvcnRlZCB3aXRoIHN1YnRpdGxlcyBjb2RlY3MKAENvZGVjICclcycgaXMgYml0bWFwLWJhc2VkLCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nIHdpbGwgYmUgaWdub3JlZAoAVVRGLTgAVW5hYmxlIHRvIG9wZW4gaWNvbnYgY29udGV4dCB3aXRoIGlucHV0IGNoYXJhY3RlciBlbmNvZGluZyAiJXMiCgAqKGNvbnN0IEFWQ2xhc3MgKiopYXZjdHgtPnByaXZfZGF0YSA9PSBjb2RlYy0+cHJpdl9jbGFzcwBsYXllcjMuYwAGBQUFCQkJCQYJCQkGBQcDCQkMBgYJDAYLCgAAEhIAAA8SAAAHBwcADAwMAAYPDAAGBgYDDAkJBgYMCQYICAUADwwJAAYSCQAAAAABAAIAAwMAAQEBAgEDAgECAgIDAwEDAgMDBAIEAwAAAAAAAAAAAAAAAQEBAQICAwMDAgByZXF1YW50aXplIG92ZXJmbG93ICglZiAqIDJeJWQpCgAtYml0c19sZWZ0IDw9IE1BRF9CVUZGRVJfR1VBUkQgKiBDSEFSX0JJVABJSUlfaHVmZmRlY29kZQAEBAQEBAQGBgYICgwQEhYcIiguNjbABAQEBAQEBAQEBAQEBgYGBgYGCgoKDAwMDg4OEBAQFBQUGhoaQkJCBAQEBAQEBgYEBAQGBgYGBgYKCgoMDAwODg4QEBAUFBQaGhpCQkIEBAQEBAQGBggICgwQFBgcIioyNkyeBAQEBAQEBAQEBAQEBgYGCAgICgoKDAwMDg4OEhISFhYWHh4eODg4BAQEBAQEBgYEBAQGBgYICAgKCgoMDAwODg4SEhIWFhYeHh44ODgEBAQEBAQGBggKDBAUGB4mLjhEVGYaBAQEBAQEBAQEBAQEBgYGCAgIDAwMEBAQFBQUGhoaIiIiKioqDAwMBAQEBAQEBgYEBAQGBgYICAgMDAwQEBAUFBQaGhoiIiIqKioMDAwGBgYGBgYICgwOEBIWGiAmLjY+RkwkBAQEBAQEBAQEBgYGCAgICgoKDAwMDg4OEhISGBgYICAgLCwsDAwMBgYGBgYGBgYGCAgICgoKDAwMDg4OEhISGBgYICAgLCwsDAwMBgYGBgYGCAoMDhAUGBwgJi40PEQ6NgQEBAQEBAQEBAYGBgYGBggICAoKCg4ODhISEhoaGiAgICoqKhISEgYGBgYGBgYGBgYGBggICAoKCg4ODhISEhoaGiAgICoqKhISEgQEBAQEBAQEBAYGBggICAoKCgwMDA4ODhISEhgYGB4eHigoKBISEgYGBgYGBgYGBggICAoKCgwMDA4ODhISEhgYGB4eHigoKBISEgwMDAwMDBAUGBwgKDA4QExaAgICAgIICAgICAgICAgMDAwQEBAUFBQYGBgcHBwkJCQCAgICAgICAgIaGhoMDAwEBAQICAgMDAwQEBAUFBQYGBgcHBwkJCQCAgICAgICAgIaGhpkZW5vbSAhPSAwAHRpbWVyLmMAc2NhbGVfcmF0aW9uYWwAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQAAAQIEBwMGBQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAuAGluZmluaXR5AG5hbgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHB0aHJlYWRfb25jZSBmYWlsdXJlIGluIF9fY3hhX2dldF9nbG9iYWxzX2Zhc3QoKQBjYW5ub3QgY3JlYXRlIHB0aHJlYWQga2V5IGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAGNhbm5vdCB6ZXJvIG91dCB0aHJlYWQgdmFsdWUgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAdGVybWluYXRlX2hhbmRsZXIgdW5leHBlY3RlZGx5IHJldHVybmVkAFN0MTFsb2dpY19lcnJvcgBTdDEybGVuZ3RoX2Vycm9yAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=261088;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i<strings.length;i++){var line=strings[i];writeAsciiToMemory(line,poolPtr);HEAP32[envPtr+i*ptrSize>>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}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 ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}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 ___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 ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___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}}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"]()}var _acos=Math_acos;var _asin=Math_asin;var _atan=Math_atan;function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}var _cos=Math_cos;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 _exp=Math_exp;var _fabs=Math_abs;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 _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=(stringToUTF8("GMT",260976,4),260976);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _init(){function arrayBufferCopy(src,dst,dstByteOffset,numBytes){var i;var dst32Offset=dstByteOffset/4;var tail=numBytes%4;var src32=new Uint32Array(src.buffer,0,(numBytes-tail)/4);var dst32=new Uint32Array(dst.buffer);for(i=0;i<src32.length;i++){dst32[dst32Offset+i]=src32[i]}for(i=numBytes-tail;i<numBytes;i++){dst[dstByteOffset+i]=src[i]}}if(!Date.now)Date.now=function(){return(new Date).getTime()};Module.print=function(text){postMessage({cmd:"print",text:text})};Module.printErr=function(text){postMessage({cmd:"printErr",text:text})};Module.postRun=function(){postMessage({cmd:"init"})};Module.Jessibuca=Module.Jessica.extend("Jessibuca",{__construct:function(){this.__parent.__construct.call(this,this);this.audioCache=[]},__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){console.log("Jessibuca play",url);var _this=this;var reconnectCount=0;var reconnectTime=2e3;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 Jessibuca");this.isPlaying=false;this.ws.onmessage=null;this.ws.onclose=null;this.ws.onerror=null;this.ws.close();this.ws=null;this.$close();delete this.timespan},initAudio:function(frameCount,samplerate,channels,outputPtr){var allFrameCount=frameCount*channels;var resampled=samplerate<22050;var audioOutputArray=HEAP16.subarray(outputPtr,outputPtr+allFrameCount);postMessage({cmd:"initAudio",frameCount:frameCount,samplerate:samplerate,channels:channels});this.playAudio=function(){postMessage({cmd:"playAudio",buffer:audioOutputArray})}},playAudio(data,len){var buffer=HEAPU8.subarray(data,data+len);this.audioCache.push(buffer.buffer.slice(buffer.byteOffset,buffer.byteOffset+buffer.length));if(this.audioCache.length>=this.audioBuffer){postMessage({cmd:"playAudio",buffer:this.audioCache},this.audioCache);this.audioCache.length=0}},setBuffer:function(outputArray){for(var i=0;i<3;i++){var buffer=this.buffers[i];if(buffer.length){buffer=buffer.pop();arrayBufferCopy(outputArray,buffer,0,buffer.byteLength)}else{buffer=Uint8Array.from(outputArray[i])}outputArray[i]=buffer}},setVideoSize:function(w,h,dataPtr){postMessage({cmd:"initSize",w:w,h:h});this.buffers=[[],[],[]];var size=w*h;if(this.isWebGL){this.draw=function(compositionTime){var y=HEAPU32[dataPtr];var u=HEAPU32[dataPtr+1];var v=HEAPU32[dataPtr+2];var outputArray=[HEAPU8.subarray(y,y+size),HEAPU8.subarray(u,u+(size>>2)),HEAPU8.subarray(v,v+(size>>2))];this.setBuffer(outputArray);postMessage({cmd:"render",output:outputArray,compositionTime:compositionTime},[outputArray[0].buffer,outputArray[1].buffer,outputArray[2].buffer])}}else{var outputArray=HEAPU8.subarray(dataPtr,dataPtr+(w*h<<2));var output={cmd:"render",buffer:outputArray};this.draw=function(){postMessage(output)}}}});var decoder=new Module.Jessibuca;decoder.videoBuffer=1e3;self.onmessage=function(event){var msg=event.data;switch(msg.cmd){case"play":decoder.isWebGL=msg.isWebGL;decoder.play(msg.url);break;case"setBuffer":decoder.buffers[0].push(msg.buffers[0]);decoder.buffers[1].push(msg.buffers[1]);decoder.buffers[2].push(msg.buffers[2]);break;case"setVideoBuffer":decoder.videoBuffer=msg.cmd*1e3;break;case"close":decoder.close();break}}}function _llvm_trap(){abort("trap!")}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()<winter.getTimezoneOffset()){HEAP32[__get_tzname()>>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=new Date(2e3,6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}var _log=Math_log;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _mktime(tmPtr){_tzset();var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(2e3,6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3|0}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_create(){return 11}function _pthread_join(){}var _sin=Math_sin;function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-16777216;maxHeapSize=HEAPU8.length;return maxHeapSize/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(22);return-1}var _tan=Math_tan;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":___buildEnvironment,"s":___cxa_allocate_exception,"t":___cxa_begin_catch,"u":___cxa_find_matching_catch,"v":___cxa_free_exception,"w":___cxa_pure_virtual,"x":___cxa_throw,"y":___gxx_personality_v0,"z":___resumeException,"A":___setErrNo,"B":___syscall140,"C":___syscall146,"D":___syscall221,"E":___syscall3,"F":___syscall5,"G":___syscall54,"H":___syscall6,"I":__embind_create_inheriting_constructor,"J":__embind_register_bool,"K":__embind_register_class,"L":__embind_register_class_class_function,"M":__embind_register_class_function,"N":__embind_register_class_property,"O":__embind_register_emval,"P":__embind_register_float,"Q":__embind_register_integer,"R":__embind_register_memory_view,"S":__embind_register_std_string,"T":__embind_register_std_wstring,"U":__embind_register_void,"V":__emscripten_traverse_stack,"W":__emval_addMethodCaller,"X":__emval_allocateDestructors,"Y":__emval_as,"Z":__emval_call,"_":__emval_call_method,"$":__emval_call_void_method,"aa":__emval_decref,"ab":__emval_get_global,"ac":__emval_get_method_caller,"ad":__emval_get_property,"ae":__emval_incref,"af":__emval_lookupTypes,"ag":__emval_new,"ah":__emval_new_cstring,"ai":__emval_new_object,"aj":__emval_register,"ak":__emval_run_destructors,"al":__emval_set_property,"am":__emval_take_value,"an":__formatString,"ao":__reallyNegative,"ap":_abort,"aq":_acos,"ar":_asin,"as":_atan,"at":_clock,"au":_cos,"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":_exp,"aD":_fabs,"aE":_getenv,"aF":_gettimeofday,"aG":_gmtime_r,"aH":_init,"aI":_llvm_trap,"aJ":_llvm_trunc_f64,"aK":_localtime_r,"aL":_log,"aM":_mktime,"aN":_pthread_cond_destroy,"aO":_pthread_cond_init,"aP":_pthread_cond_signal,"aQ":_pthread_cond_wait,"aR":_pthread_create,"aS":_pthread_join,"aT":_sin,"aU":_sysconf,"aV":_tan,"aW":_tzset,"aX":abortOnCannotGrowMemory,"aY":constNoSmartPtrRawPointerToWireType,"aZ":count_emval_handles,"a_":craftEmvalAllocator,"a$":craftInvokerFunction,"ba":createNamedFunction,"bb":downcastPointer,"bc":embind__requireFunction,"bd":embind_init_charCodes,"be":emval_get_global,"bf":ensureOverloadTable,"bg":exposePublicSymbol,"bh":extendError,"bi":floatReadValueFromPointer,"bj":flushPendingDeletes,"bk":genericPointerToWireType,"bl":getBasestPointer,"bm":getInheritedInstance,"bn":getInheritedInstanceCount,"bo":getLiveInheritedInstances,"bp":getShiftFromSize,"bq":getStringOrSymbol,"br":getTypeName,"bs":get_first_emval,"bt":heap32VectorToArray,"bu":init_ClassHandle,"bv":init_RegisteredPointer,"bw":init_embind,"bx":init_emval,"by":integerReadValueFromPointer,"bz":makeClassHandle,"bA":makeLegalFunctionName,"bB":new_,"bC":nonConstNoSmartPtrRawPointerToWireType,"bD":readLatin1String,"bE":registerInheritedInstance,"bF":registerType,"bG":replacePublicSymbol,"bH":requireHandle,"bI":requireRegisteredType,"bJ":runDestructor,"bK":runDestructors,"bL":setDelayFunction,"bM":shallowCopyInternalPointer,"bN":simpleReadValueFromPointer,"bO":throwBindingError,"bP":throwInstanceAlreadyDeleted,"bQ":throwInternalError,"bR":throwUnboundTypeError,"bS":unregisterInheritedInstance,"bT":upcastPointer,"bU":validateThis,"bV":whenDependentTypesAreResolved,"bW":tempDoublePtr,"bX":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.bW|0,i=env.bX|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.floor,u=global.Math.abs,v=global.Math.sqrt,w=global.Math.pow,x=global.Math.cos,y=global.Math.sin,z=global.Math.tan,A=global.Math.acos,B=global.Math.asin,C=global.Math.atan,D=global.Math.atan2,E=global.Math.exp,F=global.Math.log,G=global.Math.ceil,H=global.Math.imul,I=global.Math.min,J=global.Math.clz32,K=env.a,L=env.b,M=env.c,N=env.d,O=env.e,P=env.f,Q=env.g,R=env.h,S=env.i,T=env.j,U=env.k,V=env.l,W=env.m,X=env.n,Y=env.o,Z=env.p,_=env.q,$=env.r,aa=env.s,ba=env.t,ca=env.u,da=env.v,ea=env.w,fa=env.x,ga=env.y,ha=env.z,ia=env.A,ja=env.B,ka=env.C,la=env.D,ma=env.E,na=env.F,oa=env.G,pa=env.H,qa=env.I,ra=env.J,sa=env.K,ta=env.L,ua=env.M,va=env.N,wa=env.O,xa=env.P,ya=env.Q,za=env.R,Aa=env.S,Ba=env.T,Ca=env.U,Da=env.V,Ea=env.W,Fa=env.X,Ga=env.Y,Ha=env.Z,Ia=env._,Ja=env.$,Ka=env.aa,La=env.ab,Ma=env.ac,Na=env.ad,Oa=env.ae,Pa=env.af,Qa=env.ag,Ra=env.ah,Sa=env.ai,Ta=env.aj,Ua=env.ak,Va=env.al,Wa=env.am,Xa=env.an,Ya=env.ao,Za=env.ap,_a=env.aq,$a=env.ar,ab=env.as,bb=env.at,cb=env.au,db=env.av,eb=env.aw,fb=env.ax,gb=env.ay,hb=env.az,ib=env.aA,jb=env.aB,kb=env.aC,lb=env.aD,mb=env.aE,nb=env.aF,ob=env.aG,pb=env.aH,qb=env.aI,rb=env.aJ,sb=env.aK,tb=env.aL,ub=env.aM,vb=env.aN,wb=env.aO,xb=env.aP,yb=env.aQ,zb=env.aR,Ab=env.aS,Bb=env.aT,Cb=env.aU,Db=env.aV,Eb=env.aW,Fb=env.aX,Gb=env.aY,Hb=env.aZ,Ib=env.a_,Jb=env.a$,Kb=env.ba,Lb=env.bb,Mb=env.bc,Nb=env.bd,Ob=env.be,Pb=env.bf,Qb=env.bg,Rb=env.bh,Sb=env.bi,Tb=env.bj,Ub=env.bk,Vb=env.bl,Wb=env.bm,Xb=env.bn,Yb=env.bo,Zb=env.bp,_b=env.bq,$b=env.br,ac=env.bs,bc=env.bt,cc=env.bu,dc=env.bv,ec=env.bw,fc=env.bx,gc=env.by,hc=env.bz,ic=env.bA,jc=env.bB,kc=env.bC,lc=env.bD,mc=env.bE,nc=env.bF,oc=env.bG,pc=env.bH,qc=env.bI,rc=env.bJ,sc=env.bK,tc=env.bL,uc=env.bM,vc=env.bN,wc=env.bO,xc=env.bP,yc=env.bQ,zc=env.bR,Ac=env.bS,Bc=env.bT,Cc=env.bU,Dc=env.bV,Ec=261104,Fc=5503984,Gc=0.0;
// EMSCRIPTEN_START_FUNCS
function Ns(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=((b|0)!=0)<<31>>31;w=d[a+((H(n,f)|0)+-1)>>0]|0;v=d[a+-1>>0]|0;u=d[a+(f+-1)>>0]|0;t=d[a+((f<<1)+-1)>>0]|0;s=d[a+((f*3|0)+-1)>>0]|0;r=d[a+((f<<2)+-1)>>0]|0;q=d[a+((f*5|0)+-1)>>0]|0;p=d[a+((f*6|0)+-1)>>0]|0;o=d[a+((f*7|0)+-1)>>0]|0;m=d[a+(0-f)>>0]|0;l=d[a+(1-f)>>0]|0;k=d[a+(2-f)>>0]|0;j=d[a+(3-f)>>0]|0;i=d[a+(4-f)>>0]|0;h=d[a+(5-f)>>0]|0;g=d[a+(6-f)>>0]|0;b=d[a+(7-f)>>0]|0;e=H(((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((d[a+(n-f)>>0]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(d[a+((e|0?8:7)-f)>>0]|0)+(b<<1)|0)>>>2)>>4,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Os(b,c,e,f){b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=d[b+(0-f)>>0]|0;q=d[b+(1-f)>>0]|0;t=d[b+(2-f)>>0]|0;r=(p+2+(q<<1)+t|0)>>>2;u=d[b+(3-f)>>0]|0;s=(q+2+(t<<1)+u|0)>>>2;v=d[b+(4-f)>>0]|0;t=(t+2+(u<<1)+v|0)>>>2;w=d[b+(5-f)>>0]|0;u=(u+2+(v<<1)+w|0)>>>2;o=d[b+(6-f)>>0]|0;v=(v+2+(w<<1)+o|0)>>>2;n=d[b+(7-f)>>0]|0;w=(w+2+(o<<1)+n|0)>>>2;m=(e|0)!=0;o=(o+2+(d[b+((m?8:7)-f)>>0]|0)+(n<<1)|0)>>>2;if(m){x=d[b+(8-f)>>0]|0;e=d[b+(9-f)>>0]|0;m=d[b+(10-f)>>0]|0;l=d[b+(11-f)>>0]|0;k=d[b+(12-f)>>0]|0;j=d[b+(13-f)>>0]|0;i=d[b+(14-f)>>0]|0;h=d[b+(15-f)>>0]|0;g=(i+2+(h*3|0)|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(m+2+(l<<1)+k|0)>>>2;l=(e+2+(m<<1)+l|0)>>>2;m=(x+2+(e<<1)+m|0)>>>2;e=(n+2+(x<<1)+e|0)>>>2}else{g=n;h=n;i=n;j=n;k=n;l=n;m=n;e=n}a[b>>0]=((((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(p<<1)+q|0)>>>2)+2+(r<<1)+s|0)>>>2;r=(r+2+(s<<1)+t|0)>>>2&255;a[b+1>>0]=r;a[b+f>>0]=r;s=(s+2+(t<<1)+u|0)>>>2&255;a[b+2>>0]=s;a[b+(f+1)>>0]=s;r=f<<1;a[b+r>>0]=s;t=(t+2+(u<<1)+v|0)>>>2&255;a[b+3>>0]=t;a[b+(f+2)>>0]=t;a[b+(r|1)>>0]=t;s=f*3|0;a[b+s>>0]=t;u=(u+2+(v<<1)+w|0)>>>2&255;a[b+4>>0]=u;a[b+(f+3)>>0]=u;a[b+(r+2)>>0]=u;a[b+(s+1)>>0]=u;t=f<<2;a[b+t>>0]=u;v=(v+2+(w<<1)+o|0)>>>2&255;a[b+5>>0]=v;a[b+(f+4)>>0]=v;a[b+(r+3)>>0]=v;a[b+(s+2)>>0]=v;a[b+(t|1)>>0]=v;u=f*5|0;a[b+u>>0]=v;w=(w+2+(o<<1)+e|0)>>>2&255;a[b+6>>0]=w;a[b+(f+5)>>0]=w;a[b+(r+4)>>0]=w;a[b+(s+3)>>0]=w;a[b+(t|2)>>0]=w;a[b+(u+1)>>0]=w;v=f*6|0;a[b+v>>0]=w;w=(o+2+(e<<1)+m|0)>>>2&255;a[b+7>>0]=w;a[b+(f+6)>>0]=w;a[b+(r+5)>>0]=w;a[b+(s+4)>>0]=w;a[b+(t|3)>>0]=w;a[b+(u+2)>>0]=w;a[b+(v|1)>>0]=w;x=f*7|0;a[b+x>>0]=w;w=(e+2+(m<<1)+l|0)>>>2&255;a[b+(f+7)>>0]=w;a[b+(r+6)>>0]=w;a[b+(s+5)>>0]=w;a[b+(t+4)>>0]=w;a[b+(u+3)>>0]=w;a[b+(v+2)>>0]=w;a[b+(x+1)>>0]=w;w=(m+2+(l<<1)+k|0)>>>2&255;a[b+(r+7)>>0]=w;a[b+(s+6)>>0]=w;a[b+(t+5)>>0]=w;a[b+(u+4)>>0]=w;a[b+(v+3)>>0]=w;a[b+(x+2)>>0]=w;w=(l+2+(k<<1)+j|0)>>>2&255;a[b+(s+7)>>0]=w;a[b+(t+6)>>0]=w;a[b+(u+5)>>0]=w;a[b+(v+4)>>0]=w;a[b+(x+3)>>0]=w;w=(k+2+(j<<1)+i|0)>>>2&255;a[b+(t+7)>>0]=w;a[b+(u+6)>>0]=w;a[b+(v+5)>>0]=w;a[b+(x+4)>>0]=w;w=(j+2+(i<<1)+h|0)>>>2&255;a[b+(u+7)>>0]=w;a[b+(v+6)>>0]=w;a[b+(x+5)>>0]=w;w=(i+2+(h<<1)+g|0)>>>2&255;a[b+(v+7)>>0]=w;a[b+(x+6)>>0]=w;a[b+(x+7)>>0]=(h+2+(g*3|0)|0)>>>2;return}function Ps(b,c,e,f){b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;t=((c|0)!=0)<<31>>31;C=d[b+(0-f)>>0]|0;k=d[b+(1-f)>>0]|0;s=((d[b+(t-f)>>0]|0)+2+(C<<1)+k|0)>>>2;i=d[b+(2-f)>>0]|0;C=C+2|0;m=(C+(k<<1)+i|0)>>>2;h=d[b+(3-f)>>0]|0;k=(k+2+(i<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;v=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+v|0)>>>2;q=d[b+(7-f)>>0]|0;c=(c+2+(v<<1)+q|0)>>>2;e=(v+2+(d[b+((e|0?8:7)-f)>>0]|0)+(q<<1)|0)>>>2;t=d[b+((H(t,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;v=d[b+(f+-1)>>0]|0;t=(t+2+(q<<1)+v|0)>>>2;j=f<<1;w=d[b+(j+-1)>>0]|0;o=(q+2+(v<<1)+w|0)>>>2;l=f*3|0;x=d[b+(l+-1)>>0]|0;v=(v+2+(w<<1)+x|0)>>>2;n=f<<2;y=d[b+(n+-1)>>0]|0;w=(w+2+(x<<1)+y|0)>>>2;p=f*5|0;z=d[b+(p+-1)>>0]|0;x=(x+2+(y<<1)+z|0)>>>2;r=f*6|0;B=d[b+(r+-1)>>0]|0;y=(y+2+(z<<1)+B|0)>>>2;u=f*7|0;A=d[b+(u+-1)>>0]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+u>>0]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&255;a[b+(u+1)>>0]=z;a[b+r>>0]=z;y=(w+2+(x<<1)+y|0)>>>2&255;a[b+(u+2)>>0]=y;a[b+(r|1)>>0]=y;a[b+p>>0]=y;x=(v+2+(w<<1)+x|0)>>>2&255;a[b+(u+3)>>0]=x;a[b+(r+2)>>0]=x;a[b+(p+1)>>0]=x;a[b+n>>0]=x;w=(o+2+(v<<1)+w|0)>>>2&255;a[b+(u+4)>>0]=w;a[b+(r+3)>>0]=w;a[b+(p+2)>>0]=w;a[b+(n|1)>>0]=w;a[b+l>>0]=w;v=(t+2+(o<<1)+v|0)>>>2&255;a[b+(u+5)>>0]=v;a[b+(r+4)>>0]=v;a[b+(p+3)>>0]=v;a[b+(n|2)>>0]=v;a[b+(l+1)>>0]=v;a[b+j>>0]=v;o=((t<<1)+2+o+q|0)>>>2&255;a[b+(u+6)>>0]=o;a[b+(r+5)>>0]=o;a[b+(p+4)>>0]=o;a[b+(n|3)>>0]=o;a[b+(l+2)>>0]=o;a[b+(j|1)>>0]=o;a[b+f>>0]=o;o=s+2|0;t=(o+t+(q<<1)|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(r+6)>>0]=t;a[b+(p+5)>>0]=t;a[b+(n+4)>>0]=t;a[b+(l+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;a[b>>0]=t;q=((s<<1)+2+m+q|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+6)>>0]=q;a[b+(n+5)>>0]=q;a[b+(l+4)>>0]=q;a[b+(j+3)>>0]=q;a[b+(f+2)>>0]=q;a[b+1>>0]=q;o=(o+(m<<1)+k|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(n+6)>>0]=o;a[b+(l+5)>>0]=o;a[b+(j+4)>>0]=o;a[b+(f+3)>>0]=o;a[b+2>>0]=o;m=(m+2+(k<<1)+i|0)>>>2&255;a[b+(n+7)>>0]=m;a[b+(l+6)>>0]=m;a[b+(j+5)>>0]=m;a[b+(f+4)>>0]=m;a[b+3>>0]=m;k=(k+2+(i<<1)+h|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;a[b+4>>0]=k;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(j+7)>>0]=i;a[b+(f+6)>>0]=i;a[b+5>>0]=i;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(f+7)>>0]=h;a[b+6>>0]=h;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function Qs(b,c,e,f){b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;n=d[b+(1-f)>>0]|0;u=((d[b+(s-f)>>0]|0)+2+(A<<1)+n|0)>>>2;k=d[b+(2-f)>>0]|0;A=A+2|0;q=(A+(n<<1)+k|0)>>>2;h=d[b+(3-f)>>0]|0;n=(n+2+(k<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;k=(k+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;r=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+r|0)>>>2;t=d[b+(7-f)>>0]|0;c=(c+2+(r<<1)+t|0)>>>2;e=(r+2+(d[b+((e|0?8:7)-f)>>0]|0)+(t<<1)|0)>>>2;s=d[b+((H(s,f)|0)+-1)>>0]|0;t=d[b+-1>>0]|0;r=d[b+(f+-1)>>0]|0;s=(s+2+(t<<1)+r|0)>>>2;i=f<<1;x=d[b+(i+-1)>>0]|0;v=(t+2+(r<<1)+x|0)>>>2;j=f*3|0;w=d[b+(j+-1)>>0]|0;r=(r+2+(x<<1)+w|0)>>>2;l=f<<2;z=d[b+(l+-1)>>0]|0;x=(x+2+(w<<1)+z|0)>>>2;m=f*5|0;B=d[b+(m+-1)>>0]|0;w=(w+2+(z<<1)+B|0)>>>2;o=f*6|0;y=d[b+(o+-1)>>0]|0;z=(z+2+(B<<1)+y|0)>>>2;p=f*7|0;y=(B+2+(y<<1)+(d[b+(p+-1)>>0]|0)|0)>>>2;t=(A+t+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+o>>0]=(x+2+(w<<1)+z|0)>>>2;a[b+p>>0]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(r<<1)+x|0)>>>2&255;a[b+(o|1)>>0]=y;a[b+l>>0]=y;w=(r+2+(x<<1)+w|0)>>>2&255;a[b+(p+1)>>0]=w;a[b+m>>0]=w;w=((s<<1)+2+v+t|0)>>>2&255;a[b+(o+2)>>0]=w;a[b+(l|1)>>0]=w;a[b+i>>0]=w;r=(s+2+(v<<1)+r|0)>>>2&255;a[b+(p+2)>>0]=r;a[b+(m+1)>>0]=r;a[b+j>>0]=r;r=u+2|0;s=(r+s+(t<<1)|0)>>>2&255;a[b+(p+3)>>0]=s;a[b+(m+2)>>0]=s;a[b+(j+1)>>0]=s;a[b+f>>0]=s;s=u+1|0;v=(s+t|0)>>>1&255;a[b+(o+3)>>0]=v;a[b+(l|2)>>0]=v;a[b+(i|1)>>0]=v;a[b>>0]=v;t=((u<<1)+2+q+t|0)>>>2&255;a[b+(p+4)>>0]=t;a[b+(m+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;s=(s+q|0)>>>1&255;a[b+(o+4)>>0]=s;a[b+(l|3)>>0]=s;a[b+(i+2)>>0]=s;a[b+1>>0]=s;r=(r+(q<<1)+n|0)>>>2&255;a[b+(p+5)>>0]=r;a[b+(m+4)>>0]=r;a[b+(j+3)>>0]=r;a[b+(f+2)>>0]=r;r=(q+1+n|0)>>>1&255;a[b+(o+5)>>0]=r;a[b+(l+4)>>0]=r;a[b+(i+3)>>0]=r;a[b+2>>0]=r;q=(q+2+(n<<1)+k|0)>>>2&255;a[b+(p+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(j+4)>>0]=q;a[b+(f+3)>>0]=q;q=(n+1+k|0)>>>1&255;a[b+(o+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(i+4)>>0]=q;a[b+3>>0]=q;n=(n+2+(k<<1)+h|0)>>>2&255;a[b+(p+7)>>0]=n;a[b+(m+6)>>0]=n;a[b+(j+5)>>0]=n;a[b+(f+4)>>0]=n;n=(k+1+h|0)>>>1&255;a[b+(o+7)>>0]=n;a[b+(l+6)>>0]=n;a[b+(i+5)>>0]=n;a[b+4>>0]=n;k=(k+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;k=(h+1+g|0)>>>1&255;a[b+(l+7)>>0]=k;a[b+(i+6)>>0]=k;a[b+5>>0]=k;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(j+7)>>0]=h;a[b+(f+6)>>0]=h;h=(g+1+c|0)>>>1&255;a[b+(i+7)>>0]=h;a[b+6>>0]=h;a[b+(f+7)>>0]=(g+2+(c<<1)+e|0)>>>2;a[b+7>>0]=(c+1+e|0)>>>1;return}function Rs(b,c,e,f){b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;o=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;i=d[b+(1-f)>>0]|0;n=((d[b+(o-f)>>0]|0)+2+(A<<1)+i|0)>>>2;h=d[b+(2-f)>>0]|0;A=A+2|0;j=(A+(i<<1)+h|0)>>>2;g=d[b+(3-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(4-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;m=d[b+(5-f)>>0]|0;g=(g+2+(c<<1)+m|0)>>>2;e=d[b+(6-f)>>0]|0;c=(c+2+(m<<1)+e|0)>>>2;e=(m+2+(e<<1)+(d[b+(7-f)>>0]|0)|0)>>>2;o=d[b+((H(o,f)|0)+-1)>>0]|0;m=d[b+-1>>0]|0;k=d[b+(f+-1)>>0]|0;o=(o+2+(m<<1)+k|0)>>>2;l=f<<1;t=d[b+(l+-1)>>0]|0;q=(m+2+(k<<1)+t|0)>>>2;p=f*3|0;v=d[b+(p+-1)>>0]|0;k=(k+2+(t<<1)+v|0)>>>2;r=f<<2;x=d[b+(r+-1)>>0]|0;t=(t+2+(v<<1)+x|0)>>>2;s=f*5|0;y=d[b+(s+-1)>>0]|0;v=(v+2+(x<<1)+y|0)>>>2;u=f*6|0;B=d[b+(u+-1)>>0]|0;x=(x+2+(y<<1)+B|0)>>>2;w=f*7|0;z=d[b+(w+-1)>>0]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+w>>0]=(z+1+y|0)>>>1;a[b+(w+1)>>0]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&255;a[b+(w+2)>>0]=z;a[b+u>>0]=z;y=(v+2+(x<<1)+y|0)>>>2&255;a[b+(w+3)>>0]=y;a[b+(u|1)>>0]=y;y=(v+1+x|0)>>>1&255;a[b+(w+4)>>0]=y;a[b+(u+2)>>0]=y;a[b+s>>0]=y;x=(t+2+(v<<1)+x|0)>>>2&255;a[b+(w+5)>>0]=x;a[b+(u+3)>>0]=x;a[b+(s+1)>>0]=x;x=(t+1+v|0)>>>1&255;a[b+(w+6)>>0]=x;a[b+(u+4)>>0]=x;a[b+(s+2)>>0]=x;a[b+r>>0]=x;v=(k+2+(t<<1)+v|0)>>>2&255;a[b+(w+7)>>0]=v;a[b+(u+5)>>0]=v;a[b+(s+3)>>0]=v;a[b+(r|1)>>0]=v;v=(k+1+t|0)>>>1&255;a[b+(u+6)>>0]=v;a[b+(s+4)>>0]=v;a[b+(r|2)>>0]=v;a[b+p>>0]=v;t=(q+2+(k<<1)+t|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(s+5)>>0]=t;a[b+(r|3)>>0]=t;a[b+(p+1)>>0]=t;t=(q+1+k|0)>>>1&255;a[b+(s+6)>>0]=t;a[b+(r+4)>>0]=t;a[b+(p+2)>>0]=t;a[b+l>>0]=t;k=(o+2+(q<<1)+k|0)>>>2&255;a[b+(s+7)>>0]=k;a[b+(r+5)>>0]=k;a[b+(p+3)>>0]=k;a[b+(l|1)>>0]=k;k=o+1|0;s=(k+q|0)>>>1&255;a[b+(r+6)>>0]=s;a[b+(p+4)>>0]=s;a[b+(l+2)>>0]=s;a[b+f>>0]=s;q=((o<<1)+2+q+m|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+5)>>0]=q;a[b+(l+3)>>0]=q;a[b+(f+1)>>0]=q;k=(k+m|0)>>>1&255;a[b+(p+6)>>0]=k;a[b+(l+4)>>0]=k;a[b+(f+2)>>0]=k;a[b>>0]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(l+5)>>0]=o;a[b+(f+3)>>0]=o;a[b+1>>0]=o;m=((n<<1)+2+j+m|0)>>>2&255;a[b+(l+6)>>0]=m;a[b+(f+4)>>0]=m;a[b+2>>0]=m;k=(k+(j<<1)+i|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(f+5)>>0]=k;a[b+3>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(f+6)>>0]=j;a[b+4>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(f+7)>>0]=i;a[b+5>>0]=i;a[b+6>>0]=(h+2+(g<<1)+c|0)>>>2;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function Ss(b,c,e,f){b=b|0;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,r=0,s=0,t=0;l=d[b+(0-f)>>0]|0;m=d[b+(1-f)>>0]|0;k=((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(l<<1)+m|0)>>>2;n=d[b+(2-f)>>0]|0;l=(l+2+(m<<1)+n|0)>>>2;o=d[b+(3-f)>>0]|0;m=(m+2+(n<<1)+o|0)>>>2;p=d[b+(4-f)>>0]|0;n=(n+2+(o<<1)+p|0)>>>2;q=d[b+(5-f)>>0]|0;o=(o+2+(p<<1)+q|0)>>>2;j=d[b+(6-f)>>0]|0;p=(p+2+(q<<1)+j|0)>>>2;c=d[b+(7-f)>>0]|0;q=(q+2+(j<<1)+c|0)>>>2;i=(e|0)!=0;j=(j+2+(d[b+((i?8:7)-f)>>0]|0)+(c<<1)|0)>>>2;if(i){s=d[b+(8-f)>>0]|0;r=d[b+(9-f)>>0]|0;i=d[b+(10-f)>>0]|0;h=d[b+(11-f)>>0]|0;g=d[b+(12-f)>>0]|0;e=(h+2+(g<<1)+(d[b+(13-f)>>0]|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(r+2+(i<<1)+h|0)>>>2;i=(s+2+(r<<1)+i|0)>>>2;c=(c+2+(s<<1)+r|0)>>>2}else{e=c;g=c;h=c;i=c}a[b>>0]=(k+1+l|0)>>>1;a[b+f>>0]=(k+2+(l<<1)+m|0)>>>2;s=(l+1+m|0)>>>1&255;a[b+1>>0]=s;t=f<<1;a[b+t>>0]=s;s=(l+2+(m<<1)+n|0)>>>2&255;a[b+(f+1)>>0]=s;k=f*3|0;a[b+k>>0]=s;s=(m+1+n|0)>>>1&255;a[b+2>>0]=s;a[b+(t|1)>>0]=s;l=f<<2;a[b+l>>0]=s;s=(m+2+(n<<1)+o|0)>>>2&255;a[b+(f+2)>>0]=s;a[b+(k+1)>>0]=s;m=f*5|0;a[b+m>>0]=s;s=(n+1+o|0)>>>1&255;a[b+3>>0]=s;a[b+(t+2)>>0]=s;a[b+(l|1)>>0]=s;r=f*6|0;a[b+r>>0]=s;n=(n+2+(o<<1)+p|0)>>>2&255;a[b+(f+3)>>0]=n;a[b+(k+2)>>0]=n;a[b+(m+1)>>0]=n;s=f*7|0;a[b+s>>0]=n;n=(o+1+p|0)>>>1&255;a[b+4>>0]=n;a[b+(t+3)>>0]=n;a[b+(l|2)>>0]=n;a[b+(r|1)>>0]=n;o=(o+2+(p<<1)+q|0)>>>2&255;a[b+(f+4)>>0]=o;a[b+(k+3)>>0]=o;a[b+(m+2)>>0]=o;a[b+(s+1)>>0]=o;o=(p+1+q|0)>>>1&255;a[b+5>>0]=o;a[b+(t+4)>>0]=o;a[b+(l|3)>>0]=o;a[b+(r+2)>>0]=o;p=(p+2+(q<<1)+j|0)>>>2&255;a[b+(f+5)>>0]=p;a[b+(k+4)>>0]=p;a[b+(m+3)>>0]=p;a[b+(s+2)>>0]=p;p=(q+1+j|0)>>>1&255;a[b+6>>0]=p;a[b+(t+5)>>0]=p;a[b+(l+4)>>0]=p;a[b+(r+3)>>0]=p;q=(q+2+(j<<1)+c|0)>>>2&255;a[b+(f+6)>>0]=q;a[b+(k+5)>>0]=q;a[b+(m+4)>>0]=q;a[b+(s+3)>>0]=q;q=(j+1+c|0)>>>1&255;a[b+7>>0]=q;a[b+(t+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(r+4)>>0]=q;q=(j+2+(c<<1)+i|0)>>>2&255;a[b+(f+7)>>0]=q;a[b+(k+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(s+4)>>0]=q;f=(c+1+i|0)>>>1&255;a[b+(t+7)>>0]=f;a[b+(l+6)>>0]=f;a[b+(r+5)>>0]=f;f=(c+2+(i<<1)+h|0)>>>2&255;a[b+(k+7)>>0]=f;a[b+(m+6)>>0]=f;a[b+(s+5)>>0]=f;f=(i+1+h|0)>>>1&255;a[b+(l+7)>>0]=f;a[b+(r+6)>>0]=f;f=(i+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=f;a[b+(s+6)>>0]=f;a[b+(r+7)>>0]=(h+1+g|0)>>>1;a[b+(s+7)>>0]=(h+2+(g<<1)+e|0)>>>2;return}function Ts(b,c,e,f){b=b|0;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,r=0,s=0;r=d[b+((H(((c|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;p=d[b+(f+-1)>>0]|0;r=(r+2+(q<<1)+p|0)>>>2;l=f<<1;o=d[b+(l+-1)>>0]|0;q=(q+2+(p<<1)+o|0)>>>2;j=f*3|0;n=d[b+(j+-1)>>0]|0;p=(p+2+(o<<1)+n|0)>>>2;h=f<<2;m=d[b+(h+-1)>>0]|0;o=(o+2+(n<<1)+m|0)>>>2;g=f*5|0;k=d[b+(g+-1)>>0]|0;n=(n+2+(m<<1)+k|0)>>>2;c=f*6|0;s=d[b+(c+-1)>>0]|0;m=(m+2+(k<<1)+s|0)>>>2;e=f*7|0;i=d[b+(e+-1)>>0]|0;k=(k+2+(s<<1)+i|0)>>>2;i=(s+2+(i*3|0)|0)>>>2;a[b>>0]=(r+1+q|0)>>>1;a[b+1>>0]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&255;a[b+2>>0]=r;a[b+f>>0]=r;q=(q+2+(p<<1)+o|0)>>>2&255;a[b+3>>0]=q;a[b+(f+1)>>0]=q;q=(p+1+o|0)>>>1&255;a[b+4>>0]=q;a[b+(f+2)>>0]=q;a[b+l>>0]=q;p=(p+2+(o<<1)+n|0)>>>2&255;a[b+5>>0]=p;a[b+(f+3)>>0]=p;a[b+(l|1)>>0]=p;p=(o+1+n|0)>>>1&255;a[b+6>>0]=p;a[b+(f+4)>>0]=p;a[b+(l+2)>>0]=p;a[b+j>>0]=p;o=(o+2+(n<<1)+m|0)>>>2&255;a[b+7>>0]=o;a[b+(f+5)>>0]=o;a[b+(l+3)>>0]=o;a[b+(j+1)>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(f+6)>>0]=o;a[b+(l+4)>>0]=o;a[b+(j+2)>>0]=o;a[b+h>>0]=o;n=(n+2+(m<<1)+k|0)>>>2&255;a[b+(f+7)>>0]=n;a[b+(l+5)>>0]=n;a[b+(j+3)>>0]=n;a[b+(h|1)>>0]=n;f=(m+1+k|0)>>>1&255;a[b+(l+6)>>0]=f;a[b+(j+4)>>0]=f;a[b+(h|2)>>0]=f;a[b+g>>0]=f;f=(m+2+i+(k<<1)|0)>>>2&255;a[b+(l+7)>>0]=f;a[b+(j+5)>>0]=f;a[b+(h|3)>>0]=f;a[b+(g+1)>>0]=f;f=(i+1+k|0)>>>1&255;a[b+(j+6)>>0]=f;a[b+(h+4)>>0]=f;a[b+(g+2)>>0]=f;a[b+c>>0]=f;f=(k+2+(i*3|0)|0)>>>2&255;a[b+(j+7)>>0]=f;a[b+(h+5)>>0]=f;a[b+(g+3)>>0]=f;a[b+(c|1)>>0]=f;f=i&255;a[b+(e+7)>>0]=f;a[b+(c+7)>>0]=f;a[b+(g+7)>>0]=f;a[b+(h+7)>>0]=f;a[b+(e+6)>>0]=f;a[b+(c+6)>>0]=f;a[b+(g+6)>>0]=f;a[b+(h+6)>>0]=f;a[b+(e+5)>>0]=f;a[b+(c+5)>>0]=f;a[b+(g+5)>>0]=f;a[b+(e+4)>>0]=f;a[b+(c+4)>>0]=f;a[b+(g+4)>>0]=f;a[b+(e+3)>>0]=f;a[b+(c+3)>>0]=f;a[b+(e+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+(e+1)>>0]=f;a[b+e>>0]=f;return}function Us(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;m=d[a+((H(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;l=d[a+-1>>0]|0;k=d[a+(f+-1)>>0]|0;j=d[a+((f<<1)+-1)>>0]|0;i=d[a+((f*3|0)+-1)>>0]|0;h=d[a+((f<<2)+-1)>>0]|0;g=d[a+((f*5|0)+-1)>>0]|0;b=d[a+((f*6|0)+-1)>>0]|0;e=d[a+((f*7|0)+-1)>>0]|0;e=H(((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(b<<1)+e|0)>>>2)+((b+2+(e*3|0)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Vs(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;n=d[a+(0-f)>>0]|0;m=d[a+(1-f)>>0]|0;l=d[a+(2-f)>>0]|0;k=d[a+(3-f)>>0]|0;j=d[a+(4-f)>>0]|0;i=d[a+(5-f)>>0]|0;h=d[a+(6-f)>>0]|0;g=d[a+(7-f)>>0]|0;e=H((((d[a+((((b|0)!=0)<<31>>31)-f)>>0]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(d[a+((e|0?8:7)-f)>>0]|0)+(g<<1)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Ws(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;b=b+1|0;a=a+e|0}return}function Xs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==8)break;g=a+(H(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function Ys(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==16)break;g=a+(H(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function Zs(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==8)break;f=H(e,b)|0;g=H(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function _s(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=H(e,b)|0;g=H(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function $s(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0-c|0;j=b+3+i|0;g=b+(c<<2)+-1|0;f=g+(0-(c<<1))|0;p=(c*7|0)+-1|0;q=~c;k=(d[g>>0]|0)-(d[f>>0]|0)|0;e=(d[j+1>>0]|0)-(d[j+-1>>0]|0)|0;h=2;while(1){if((h|0)==5)break;o=g+c|0;n=f+i|0;m=(H((d[j+h>>0]|0)-(d[j+(0-h)>>0]|0)|0,h)|0)+e|0;k=(H((d[o>>0]|0)-(d[n>>0]|0)|0,h)|0)+k|0;e=m;f=n;g=o;h=h+1|0}o=(e*17|0)+16>>5;h=(k*17|0)+16>>5;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=8;f=(H(h+o|0,-3)|0)+16+((d[b+q+8>>0]|0)+(d[b+p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function at(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=0-c|0;i=b+3+m|0;h=b+(c<<3)+-1|0;g=h+(0-(c<<1))|0;k=(c*11|0)+-1|0;j=(c*3|0)+-1|0;e=2;f=(d[h>>0]|0)-(d[g>>0]|0)|0;l=(d[i+1>>0]|0)-(d[i+-1>>0]|0)|0;while(1){if((e|0)==5)break;q=h+c|0;p=g+m|0;o=(H((d[i+e>>0]|0)-(d[i+(0-e)>>0]|0)|0,e)|0)+l|0;n=(H((d[q>>0]|0)-(d[p>>0]|0)|0,e)|0)+f|0;e=e+1|0;f=n;l=o;g=p;h=q}e=5;q=b+j|0;p=b+k|0;while(1){if((e|0)>=9)break;o=p+c|0;n=q+m|0;f=(H((d[o>>0]|0)-(d[n>>0]|0)|0,e)|0)+f|0;e=e+1|0;q=n;p=o}o=(l*17|0)+16>>5;h=(f*5|0)+32>>6;i=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=16;f=16-i+(H(h,-7)|0)+((d[q+8>>0]|0)+(d[p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function bt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=0;f=0;g=0;h=0;while(1){if((e|0)==4)break;j=d[a+((H(e,b)|0)+-1)>>0]|0;j=f+j+(d[a+(e-b)>>0]|0)|0;k=e+4|0;e=e+1|0;f=j;g=g+(d[a+(k-b)>>0]|0)|0;h=h+(d[a+((H(k,b)|0)+-1)>>0]|0)|0}i=H(f+4>>3,16843009)|0;j=H(g+2>>2,16843009)|0;k=h+2>>2;f=h+4+g>>3;e=0;while(1){if((e|0)==4)break;h=a+(H(e,b)|0)|0;c[h>>2]=i;c[h+4>>2]=j;e=e+1|0}g=H(k,16843009)|0;f=H(f,16843009)|0;e=4;while(1){if((e|0)==8)break;k=a+(H(e,b)|0)|0;c[k>>2]=g;c[k+4>>2]=f;e=e+1|0}return}function ct(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;g=0;while(1){if((e|0)==4)break;i=f+(d[a+((H(e,b)|0)+-1)>>0]|0)|0;h=g+(d[a+((H(e+4|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=i;g=h}h=H(f+2>>2,16843009)|0;f=g+2>>2;e=0;while(1){if((e|0)==4)break;i=a+(H(e,b)|0)|0;c[i>>2]=h;c[i+4>>2]=h;e=e+1|0}f=H(f,16843009)|0;e=4;while(1){if((e|0)==8)break;i=a+(H(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}return}function dt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=H(f+2>>2,16843009)|0;f=H(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}j=a+(H(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;j=a+(H(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function et(a,b){a=a|0;b=b|0;dt(a,b);zs(a,0,b);return}function ft(a,b){a=a|0;b=b|0;bt(a,b);Js(a,0,b);return}function gt(a,b){a=a|0;b=b|0;ct(a,b);a=a+(b<<2)|0;Ks(a,0,b);Ks(a+4|0,0,b);return}function ht(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;e=0;f=0;i=0;g=0;h=0;j=0;while(1){if((e|0)==4)break;k=d[a+((H(e,b)|0)+-1)>>0]|0;k=f+k+(d[a+(e-b)>>0]|0)|0;l=e+4|0;m=g+(d[a+((H(l,b)|0)+-1)>>0]|0)|0;n=h+(d[a+((H(e+8|0,b)|0)+-1)>>0]|0)|0;o=j+(d[a+((H(e+12|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=k;i=i+(d[a+(l-b)>>0]|0)|0;g=m;h=n;j=o}f=H(f+4>>3,16843009)|0;k=H(i+2>>2,16843009)|0;l=g+2>>2;g=g+4+i>>3;m=h+2>>2;h=h+4+i>>3;o=j+2>>2;n=j+4+i>>3;e=0;while(1){if((e|0)==4)break;j=a+(H(e,b)|0)|0;c[j>>2]=f;c[j+4>>2]=k;e=e+1|0}k=H(l,16843009)|0;i=H(g,16843009)|0;j=H(m,16843009)|0;g=H(h,16843009)|0;h=H(o,16843009)|0;f=H(n,16843009)|0;e=4;while(1){if((e|0)==8){e=8;break}o=a+(H(e,b)|0)|0;c[o>>2]=k;c[o+4>>2]=i;e=e+1|0}while(1){if((e|0)==12){e=12;break}o=a+(H(e,b)|0)|0;c[o>>2]=j;c[o+4>>2]=g;e=e+1|0}while(1){if((e|0)==16)break;o=a+(H(e,b)|0)|0;c[o>>2]=h;c[o+4>>2]=f;e=e+1|0}return}function it(a,b){a=a|0;b=b|0;ct(a,b);ct(a+(b<<3)|0,b);return}function jt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=H(f+2>>2,16843009)|0;f=H(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==16)break;j=a+(H(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function kt(a,b){a=a|0;b=b|0;jt(a,b);zs(a,0,b);return}function lt(a,b){a=a|0;b=b|0;ht(a,b);Js(a,0,b);return}function mt(a,b){a=a|0;b=b|0;it(a,b);a=a+(b<<2)|0;Ks(a,0,b);Ks(a+4|0,0,b);return}function nt(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(H(d,b)|0)|0;c[e>>2]=2139062143;c[e+4>>2]=2139062143;d=d+1|0}return}function ot(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(H(d,b)|0)|0;c[e>>2]=-2122219135;c[e+4>>2]=-2122219135;d=d+1|0}return}function pt(a,b){a=a|0;b=b|0;it(a,b);Ks(a,0,b);Ks(a+4|0,0,b);return}function qt(a,b){a=a|0;b=b|0;ct(a,b);Ks(a,0,b);Ks(a+4|0,0,b);return}function rt(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(H(d,b)|0)|0;c[e>>2]=-2139062144;c[e+4>>2]=-2139062144;d=d+1|0}return}function st(a,b){a=a|0;b=b|0;rt(a,b);rt(a+(b<<3)|0,b);return}function tt(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16){f=0;break}e=e+(d[a+((H(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=H(e+16>>5,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function ut(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+(0-b)|0;f=c[e>>2]|0;g=c[e+4>>2]|0;h=c[e+8>>2]|0;e=c[e+12>>2]|0;d=0;while(1){if((d|0)==16)break;i=a+(H(d,b)|0)|0;c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=h;c[i+12>>2]=e;d=d+1|0}return}function vt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=H(e,b)|0;g=H(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=g;e=e+1|0}return}function wt(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=2139062143;c[a+4>>2]=2139062143;c[a+8>>2]=2139062143;c[a+12>>2]=2139062143;a=a+b|0;d=d+1|0}return}function xt(a,b){a=a|0;b=b|0;Wt(a,b,0,0);return}function yt(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2122219135;c[a+4>>2]=-2122219135;c[a+8>>2]=-2122219135;c[a+12>>2]=-2122219135;a=a+b|0;d=d+1|0}return}function zt(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+((H(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=H(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function At(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=H(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Bt(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;c[a+8>>2]=-2139062144;c[a+12>>2]=-2139062144;a=a+b|0;d=d+1|0}return}function Ct(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=g<<1;k=g*3|0;l=g<<2;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==4)break;m=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=m;m=m+(e[i+8>>1]|0)|0;a[c+j>>0]=m;m=m+(e[i+16>>1]|0)|0;a[c+k>>0]=m;a[c+l>>0]=m+(e[i+24>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Dt(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;a[c+3>>0]=j+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Et(c,f,g){c=c|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;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;j=g*7|0;k=g<<3;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==8)break;q=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=q;q=q+(e[i+16>>1]|0)|0;a[c+l>>0]=q;q=q+(e[i+32>>1]|0)|0;a[c+m>>0]=q;q=q+(e[i+48>>1]|0)|0;a[c+n>>0]=q;q=q+(e[i+64>>1]|0)|0;a[c+o>>0]=q;q=q+(e[i+80>>1]|0)|0;a[c+p>>0]=q;q=q+(e[i+96>>1]|0)|0;a[c+j>>0]=q;a[c+k>>0]=q+(e[i+112>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Ft(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;j=j+(e[i+6>>1]|0)|0;a[c+3>>0]=j;j=j+(e[i+8>>1]|0)|0;a[c+4>>0]=j;j=j+(e[i+10>>1]|0)|0;a[c+5>>0]=j;j=j+(e[i+12>>1]|0)|0;a[c+6>>0]=j;a[c+7>>0]=j+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Gt(c,f,g,h,i){c=c|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=Ec;Ec=Ec+16|0;q=r;t=d[c+(0-i)>>0]|0;s=d[c+(1-i)>>0]|0;j=d[c+(2-i)>>0]|0;p=d[c+(3-i)>>0]|0;o=d[c+(4-i)>>0]|0;n=d[c+(5-i)>>0]|0;m=d[c+(6-i)>>0]|0;l=d[c+(7-i)>>0]|0;k=(m+2+(d[c+((h|0?8:7)-i)>>0]|0)+(l<<1)|0)>>>2;a[q>>0]=((d[c+((((g|0)!=0)<<31>>31)-i)>>0]|0)+2+(t<<1)+s|0)>>>2;a[q+1>>0]=(t+2+(s<<1)+j|0)>>>2;a[q+2>>0]=(s+2+(j<<1)+p|0)>>>2;a[q+3>>0]=(j+2+(p<<1)+o|0)>>>2;a[q+4>>0]=(p+2+(o<<1)+n|0)>>>2;a[q+5>>0]=(o+2+(n<<1)+m|0)>>>2;a[q+6>>0]=(n+2+(m<<1)+l|0)>>>2;a[q+7>>0]=k;k=i<<1;l=i*3|0;m=i<<2;n=i*5|0;o=i*6|0;p=i*7|0;j=0;g=c;h=f;while(1){if((j|0)==8)break;t=(e[h>>1]|0)+(d[q+j>>0]|0)|0;a[g>>0]=t;t=t+(e[h+16>>1]|0)|0;a[g+i>>0]=t;t=t+(e[h+32>>1]|0)|0;a[g+k>>0]=t;t=t+(e[h+48>>1]|0)|0;a[g+l>>0]=t;t=t+(e[h+64>>1]|0)|0;a[g+m>>0]=t;t=t+(e[h+80>>1]|0)|0;a[g+n>>0]=t;t=t+(e[h+96>>1]|0)|0;a[g+o>>0]=t;a[g+p>>0]=t+(e[h+112>>1]|0);j=j+1|0;g=g+1|0;h=h+2|0}g=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(g|0));Ec=r;return}function Ht(c,f,g,h,i){c=c|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;l=Ec;Ec=Ec+16|0;k=l;r=d[c+((H(((g|0)!=0)<<31>>31,i)|0)+-1)>>0]|0;q=d[c+-1>>0]|0;p=d[c+(i+-1)>>0]|0;o=d[c+((i<<1)+-1)>>0]|0;n=d[c+((i*3|0)+-1)>>0]|0;m=d[c+((i<<2)+-1)>>0]|0;g=d[c+((i*5|0)+-1)>>0]|0;h=d[c+((i*6|0)+-1)>>0]|0;j=d[c+((i*7|0)+-1)>>0]|0;a[k>>0]=(r+2+(q<<1)+p|0)>>>2;a[k+1>>0]=(q+2+(p<<1)+o|0)>>>2;a[k+2>>0]=(p+2+(o<<1)+n|0)>>>2;a[k+3>>0]=(o+2+(n<<1)+m|0)>>>2;a[k+4>>0]=(n+2+(m<<1)+g|0)>>>2;a[k+5>>0]=(m+2+(g<<1)+h|0)>>>2;a[k+6>>0]=(g+2+(h<<1)+j|0)>>>2;a[k+7>>0]=(h+2+(j*3|0)|0)>>>2;j=0;h=c;g=f;while(1){if((j|0)==8)break;r=(e[g>>1]|0)+(d[k+j>>0]|0)|0;a[h>>0]=r;r=r+(e[g+2>>1]|0)|0;a[h+1>>0]=r;r=r+(e[g+4>>1]|0)|0;a[h+2>>0]=r;r=r+(e[g+6>>1]|0)|0;a[h+3>>0]=r;r=r+(e[g+8>>1]|0)|0;a[h+4>>0]=r;r=r+(e[g+10>>1]|0)|0;a[h+5>>0]=r;r=r+(e[g+12>>1]|0)|0;a[h+6>>0]=r;a[h+7>>0]=r+(e[g+14>>1]|0);j=j+1|0;h=h+i|0;g=g+16|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));Ec=l;return}function It(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Ct(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Jt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Ct(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Ct(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Kt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Dt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Lt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Dt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Dt(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Mt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Ct(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Nt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;ns(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ot(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;_q(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Pt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Lp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Qt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;wo(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Rt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Dt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function St(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;os(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Tt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;$q(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ut(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Mp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Vt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;xo(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Wt(b,c,e,f){b=b|0;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,r=0,s=0;k=0-c|0;l=b+7+k|0;i=b+(c<<3)+-1|0;h=i+(0-(c<<1))|0;j=(c*15|0)+-1|0;m=~c;g=2;n=(d[i>>0]|0)-(d[h>>0]|0)|0;o=(d[l+1>>0]|0)-(d[l+-1>>0]|0)|0;while(1){if((g|0)==9)break;p=i+c|0;q=h+k|0;r=(H((d[l+g>>0]|0)-(d[l+(0-g)>>0]|0)|0,g)|0)+o|0;s=(H((d[p>>0]|0)-(d[q>>0]|0)|0,g)|0)+n|0;g=g+1|0;n=s;o=r;h=q;i=p}h=b+j|0;g=b+m|0;do if(!e)if(!f){f=(n*5|0)+32>>6;k=(o*5|0)+32>>6;break}else{f=(n>>2)+n>>4;k=(o>>2)+o>>4;break}else{f=(((o|0)/4|0)*5|0)/16|0;k=(((n|0)/4|0)*5|0)/16|0}while(0);l=k<<1;m=k*3|0;e=k<<2;i=(H(f+k|0,-7)|0)+16+((d[g+16>>0]|0)+(d[h>>0]|0)<<4)|0;j=16;while(1){if((j|0)>0){g=i;h=-16}else break;while(1){if((h|0)>=0)break;s=g>>5;a[b+(h+16)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+k>>5;a[b+(h+17)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+l>>5;a[b+(h+18)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+m>>5;a[b+(h+19)>>0]=s>>>0>255?(s^-2147483648)>>31:s;g=g+e|0;h=h+4|0}i=i+f|0;j=j+-1|0;b=b+c|0}return}function Xt(a,c){a=a|0;c=c|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;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(H((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Yt(a,c){a=a|0;c=c|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;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(H((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Zt(a,c){a=a|0;c=c|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;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(H((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function _t(a,c){a=a|0;c=c|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;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(H((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<512?q:0-q>>31&511;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function $t(b,c,e,f,g,h,i){b=b|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,p=0,q=0;p=d[b+(0-e)>>0]|0;n=d[b+(1-e)>>0]|0;m=d[b+(2-e)>>0]|0;l=d[b+(3-e)>>0]|0;k=d[c>>0]|0;j=d[c+1>>0]|0;c=d[c+2>>0]|0;o=n<<1;a[b>>0]=(f+4+h+o+(p+g<<1)|0)>>>3;q=(n+1+m|0)>>>1&255;f=e<<1;a[b+f>>0]=q;a[b+1>>0]=q;q=(m+1+l|0)>>>1&255;a[b+(f|1)>>0]=q;a[b+2>>0]=q;q=(l+1+k|0)>>>1&255;a[b+(f+2)>>0]=q;a[b+3>>0]=q;a[b+(f+3)>>0]=(k+1+j|0)>>>1;a[b+e>>0]=(g+4+(h<<1)+i+p+o+m|0)>>>3;h=(n+2+(m<<1)+l|0)>>>2&255;i=e*3|0;a[b+i>>0]=h;a[b+(e+1)>>0]=h;h=(m+2+(l<<1)+k|0)>>>2&255;a[b+(i+1)>>0]=h;a[b+(e+2)>>0]=h;h=(l+2+(k<<1)+j|0)>>>2&255;a[b+(i+2)>>0]=h;a[b+(e+3)>>0]=h;a[b+(i+3)>>0]=(k+2+(j<<1)+c|0)>>>2;return}function au(a,b,c){a=a|0;b=b|0;c=c|0;aI(a,b,c);return}function bu(a,b,c){a=a|0;b=b|0;c=c|0;$H(a,b,c);return}function cu(a,b,c){a=a|0;b=b|0;c=c|0;_H(a,b,c);return}function du(a,b,c){a=a|0;b=b|0;c=c|0;ZH(a,b,c);return}function eu(a,b,c){a=a|0;b=b|0;c=c|0;YH(a,b,c);return}function fu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;uG(e,b,32,c);XH(a,b,e,c,c);Ec=d;return}function gu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;qG(e,b,32,c);WH(a,b,e,c,c);Ec=d;return}function hu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;mG(e,b,32,c);VH(a,b,e,c,c);Ec=d;return}function iu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+256|0;e=d;iG(e,b,16,c);UH(a,b,e,c,c);Ec=d;return}function ju(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;eG(e,b,32,c);TH(a,b,e,c,c);Ec=d;return}function ku(a,b,c){a=a|0;b=b|0;c=c|0;uG(a,b,c,c);return}function lu(a,b,c){a=a|0;b=b|0;c=c|0;qG(a,b,c,c);return}function mu(a,b,c){a=a|0;b=b|0;c=c|0;mG(a,b,c,c);return}function nu(a,b,c){a=a|0;b=b|0;c=c|0;iG(a,b,c,c);return}function ou(a,b,c){a=a|0;b=b|0;c=c|0;eG(a,b,c,c);return}function pu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;uG(e,b,32,c);XH(a,b+2|0,e,c,c);Ec=d;return}function qu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;qG(e,b,32,c);WH(a,b+2|0,e,c,c);Ec=d;return}function ru(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;mG(e,b,32,c);VH(a,b+2|0,e,c,c);Ec=d;return}function su(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+256|0;e=d;iG(e,b,16,c);UH(a,b+1|0,e,c,c);Ec=d;return}function tu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;eG(e,b,32,c);TH(a,b+2|0,e,c,c);Ec=d;return}function uu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;vG(g,b+(0-(c<<1))|0,c);wG(e,f,32);XH(a,f,e,c,32);Ec=d;return}function vu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;rG(g,b+(0-(c<<1))|0,c);sG(e,f,32);WH(a,f,e,c,32);Ec=d;return}function wu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;nG(g,b+(0-(c<<1))|0,c);oG(e,f,32);VH(a,f,e,c,32);Ec=d;return}function xu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+592|0;g=d+256|0;e=d;f=g+32|0;jG(g,b+(0-(c<<1))|0,c);kG(e,f,16);UH(a,f,e,c,16);Ec=d;return}function yu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;fG(g,b+(0-(c<<1))|0,c);gG(e,f,32);TH(a,f,e,c,32);Ec=d;return}function zu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b,32,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+64|0,32);XH(a,f,e,c,32);Ec=d;return}function Au(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b,32,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+64|0,32);WH(a,f,e,c,32);Ec=d;return}function Bu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b,32,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+64|0,32);VH(a,f,e,c,32);Ec=d;return}function Cu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b,16,c);jG(g,b+(0-(c<<1))|0,c);kG(e,g+32|0,16);UH(a,f,e,c,16);Ec=d;return}function Du(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b,32,c);fG(g,b+(0-(c<<1))|0,c);gG(e,g+64|0,32);TH(a,f,e,c,32);Ec=d;return}function Eu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;uG(f,b,32,c);CG(e,d,b,32,c);XH(a,f,e,c,32);Ec=d;return}function Fu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;qG(f,b,32,c);BG(e,d,b,32,c);WH(a,f,e,c,32);Ec=d;return}function Gu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;mG(f,b,32,c);AG(e,d,b,32,c);VH(a,f,e,c,32);Ec=d;return}function Hu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+928|0;e=d+672|0;iG(f,b,16,c);zG(e,d,b,16,c);UH(a,f,e,c,16);Ec=d;return}function Iu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;eG(f,b,32,c);yG(e,d,b,32,c);TH(a,f,e,c,32);Ec=d;return}function Ju(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b,32,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+64|0,32);XH(a,f,e,c,32);Ec=d;return}function Ku(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b,32,c);rG(g,b+(0-(c<<1))+2|0,c);sG(e,g+64|0,32);WH(a,f,e,c,32);Ec=d;return}function Lu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b,32,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+64|0,32);VH(a,f,e,c,32);Ec=d;return}function Mu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b,16,c);jG(g,b+(0-(c<<1))+1|0,c);kG(e,g+32|0,16);UH(a,f,e,c,16);Ec=d;return}function Nu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b,32,c);fG(g,b+(0-(c<<1))+2|0,c);gG(e,g+64|0,32);TH(a,f,e,c,32);Ec=d;return}function Ou(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;vG(e,b+(0-(c<<1))|0,c);wG(a,e+64|0,c);Ec=d;return}function Pu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;rG(e,b+(0-(c<<1))|0,c);sG(a,e+64|0,c);Ec=d;return}function Qu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;nG(e,b+(0-(c<<1))|0,c);oG(a,e+64|0,c);Ec=d;return}function Ru(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+336|0;e=d;jG(e,b+(0-(c<<1))|0,c);kG(a,e+32|0,c);Ec=d;return}function Su(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;fG(e,b+(0-(c<<1))|0,c);gG(a,e+64|0,c);Ec=d;return}function Tu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;vG(g,b+(0-(c<<1))|0,c);wG(f,g+64|0,32);CG(e,d,b,32,c);XH(a,f,e,c,32);Ec=d;return}function Uu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;rG(g,b+(0-(c<<1))|0,c);sG(f,g+64|0,32);BG(e,d,b,32,c);WH(a,f,e,c,32);Ec=d;return}function Vu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;nG(g,b+(0-(c<<1))|0,c);oG(f,g+64|0,32);AG(e,d,b,32,c);VH(a,f,e,c,32);Ec=d;return}function Wu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1520|0;g=d+1184|0;f=d+928|0;e=d+672|0;jG(g,b+(0-(c<<1))|0,c);kG(f,g+32|0,16);zG(e,d,b,16,c);UH(a,f,e,c,16);Ec=d;return}function Xu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;fG(g,b+(0-(c<<1))|0,c);gG(f,g+64|0,32);yG(e,d,b,32,c);TH(a,f,e,c,32);Ec=d;return}function Yu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+2688|0;CG(a,d,b,c,c);Ec=d;return}function Zu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+2688|0;BG(a,d,b,c,c);Ec=d;return}function _u(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+1344|0;AG(a,d,b,c,c);Ec=d;return}function $u(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+672|0;zG(a,d,b,c,c);Ec=d;return}function av(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+1344|0;yG(a,d,b,c,c);Ec=d;return}function bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;vG(g,b+(0-(c<<1))+2|0,c);wG(f,g+64|0,32);CG(e,d,b,32,c);XH(a,f,e,c,32);Ec=d;return}function cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;rG(g,b+(0-(c<<1))+2|0,c);sG(f,g+64|0,32);BG(e,d,b,32,c);WH(a,f,e,c,32);Ec=d;return}function dv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;nG(g,b+(0-(c<<1))+2|0,c);oG(f,g+64|0,32);AG(e,d,b,32,c);VH(a,f,e,c,32);Ec=d;return}function ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1520|0;g=d+1184|0;f=d+928|0;e=d+672|0;jG(g,b+(0-(c<<1))+1|0,c);kG(f,g+32|0,16);zG(e,d,b,16,c);UH(a,f,e,c,16);Ec=d;return}function fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;fG(g,b+(0-(c<<1))+2|0,c);gG(f,g+64|0,32);yG(e,d,b,32,c);TH(a,f,e,c,32);Ec=d;return}function gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;vG(f,b+(0-(c<<1))|0,c);wG(e,f+64|0,32);XH(a,f+96|0,e,c,32);Ec=d;return}function hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;rG(f,b+(0-(c<<1))|0,c);sG(e,f+64|0,32);WH(a,f+96|0,e,c,32);Ec=d;return}function iv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;nG(f,b+(0-(c<<1))|0,c);oG(e,f+64|0,32);VH(a,f+96|0,e,c,32);Ec=d;return}function jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+592|0;f=d+256|0;e=d;jG(f,b+(0-(c<<1))|0,c);kG(e,f+32|0,16);UH(a,f+48|0,e,c,16);Ec=d;return}function kv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;fG(f,b+(0-(c<<1))|0,c);gG(e,f+64|0,32);TH(a,f+96|0,e,c,32);Ec=d;return}function lv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b+c|0,32,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+64|0,32);XH(a,f,e,c,32);Ec=d;return}function mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b+c|0,32,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+64|0,32);WH(a,f,e,c,32);Ec=d;return}function nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b+c|0,32,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+64|0,32);VH(a,f,e,c,32);Ec=d;return}function ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b+c|0,16,c);jG(g,b+(0-(c<<1))|0,c);kG(e,g+32|0,16);UH(a,f,e,c,16);Ec=d;return}function pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b+c|0,32,c);fG(g,b+(0-(c<<1))|0,c);gG(e,g+64|0,32);TH(a,f,e,c,32);Ec=d;return}function qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;uG(f,b+c|0,32,c);CG(e,d,b,32,c);XH(a,f,e,c,32);Ec=d;return}function rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;qG(f,b+c|0,32,c);BG(e,d,b,32,c);WH(a,f,e,c,32);Ec=d;return}function sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;mG(f,b+c|0,32,c);AG(e,d,b,32,c);VH(a,f,e,c,32);Ec=d;return}function tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+928|0;e=d+672|0;iG(f,b+c|0,16,c);zG(e,d,b,16,c);UH(a,f,e,c,16);Ec=d;return}function uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;eG(f,b+c|0,32,c);yG(e,d,b,32,c);TH(a,f,e,c,32);Ec=d;return}function vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b+c|0,32,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+64|0,32);XH(a,f,e,c,32);Ec=d;return}function wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b+c|0,32,c);rG(g,b+(0-(c<<1))+2|0,c);sG(e,g+64|0,32);WH(a,f,e,c,32);Ec=d;return}function xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b+c|0,32,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+64|0,32);VH(a,f,e,c,32);Ec=d;return}function yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b+c|0,16,c);jG(g,b+(0-(c<<1))+1|0,c);kG(e,g+32|0,16);UH(a,f,e,c,16);Ec=d;return}function zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b+c|0,32,c);fG(g,b+(0-(c<<1))+2|0,c);gG(e,g+64|0,32);TH(a,f,e,c,32);Ec=d;return}function Av(a,b,c){a=a|0;b=b|0;c=c|0;SH(a,b,c,8);return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;RH(a,b,c,8);return}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;QH(a,b,c,8);return}function Dv(a,b,c){a=a|0;b=b|0;c=c|0;PH(a,b,c,8);return}function Ev(a,b,c){a=a|0;b=b|0;c=c|0;OH(a,b,c,8);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;DF(e,b,16,c);NH(a,b,e,c,c,16,8);Ec=d;return}function Gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;zF(e,b,16,c);MH(a,b,e,c,c,16,8);Ec=d;return}function Hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;vF(e,b,16,c);LH(a,b,e,c,c,16,8);Ec=d;return}function Iv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+64|0;e=d;rF(e,b,8,c);KH(a,b,e,c,c,8,8);Ec=d;return}function Jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;nF(e,b,16,c);JH(a,b,e,c,c,16,8);Ec=d;return}function Kv(a,b,c){a=a|0;b=b|0;c=c|0;DF(a,b,c,c);return}function Lv(a,b,c){a=a|0;b=b|0;c=c|0;zF(a,b,c,c);return}function Mv(a,b,c){a=a|0;b=b|0;c=c|0;vF(a,b,c,c);return}function Nv(a,b,c){a=a|0;b=b|0;c=c|0;rF(a,b,c,c);return}function Ov(a,b,c){a=a|0;b=b|0;c=c|0;nF(a,b,c,c);return}function Pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;DF(e,b,16,c);NH(a,b+2|0,e,c,c,16,8);Ec=d;return}function Qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;zF(e,b,16,c);MH(a,b+2|0,e,c,c,16,8);Ec=d;return}function Rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;vF(e,b,16,c);LH(a,b+2|0,e,c,c,16,8);Ec=d;return}function Sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+64|0;e=d;rF(e,b,8,c);KH(a,b+1|0,e,c,c,8,8);Ec=d;return}function Tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;nF(e,b,16,c);JH(a,b+2|0,e,c,c,16,8);Ec=d;return}function Uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;EF(g,b+(0-(c<<1))|0,c);FF(e,f,16,16);NH(a,f,e,c,16,16,8);Ec=d;return}function Vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;AF(g,b+(0-(c<<1))|0,c);BF(e,f,16,16);MH(a,f,e,c,16,16,8);Ec=d;return}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;wF(g,b+(0-(c<<1))|0,c);xF(e,f,16,16);LH(a,f,e,c,16,16,8);Ec=d;return}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+176|0;g=d+64|0;e=d;f=g+16|0;sF(g,b+(0-(c<<1))|0,c);tF(e,f,8,8);KH(a,f,e,c,8,8,8);Ec=d;return}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;oF(g,b+(0-(c<<1))|0,c);pF(e,f,16,16);JH(a,f,e,c,16,16,8);Ec=d;return}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b,16,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+32|0,16,16);NH(a,f,e,c,16,16,8);Ec=d;return}function _v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b,16,c);AF(g,b+(0-(c<<1))|0,c);BF(e,g+32|0,16,16);MH(a,f,e,c,16,16,8);Ec=d;return}function $v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b,16,c);wF(g,b+(0-(c<<1))|0,c);xF(e,g+32|0,16,16);LH(a,f,e,c,16,16,8);Ec=d;return}function aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8,8);KH(a,f,e,c,8,8,8);Ec=d;return}function bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b,16,c);oF(g,b+(0-(c<<1))|0,c);pF(e,g+32|0,16,16);JH(a,f,e,c,16,16,8);Ec=d;return}function cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;DF(f,b,16,c);LF(e,d,b,16,16,c);NH(a,f,e,c,16,16,8);Ec=d;return}function dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;zF(f,b,16,c);KF(e,d,b,16,16,c);MH(a,f,e,c,16,16,8);Ec=d;return}function ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;vF(f,b,16,c);JF(e,d,b,16,16,c);LH(a,f,e,c,16,16,8);Ec=d;return}function fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+272|0;e=d+208|0;rF(f,b,8,c);IF(e,d,b,8,8,c);KH(a,f,e,c,8,8,8);Ec=d;return}function gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;nF(f,b,16,c);HF(e,d,b,16,16,c);JH(a,f,e,c,16,16,8);Ec=d;return}function hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b,16,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+32|0,16,16);NH(a,f,e,c,16,16,8);Ec=d;return}function iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b,16,c);AF(g,b+(0-(c<<1))+2|0,c);BF(e,g+32|0,16,16);MH(a,f,e,c,16,16,8);Ec=d;return}function jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b,16,c);wF(g,b+(0-(c<<1))+2|0,c);xF(e,g+32|0,16,16);LH(a,f,e,c,16,16,8);Ec=d;return}function kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))+1|0,c);tF(e,g+16|0,8,8);KH(a,f,e,c,8,8,8);Ec=d;return}function lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b,16,c);oF(g,b+(0-(c<<1))+2|0,c);pF(e,g+32|0,16,16);JH(a,f,e,c,16,16,8);Ec=d;return}function mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;EF(e,b+(0-(c<<1))|0,c);FF(a,e+32|0,c,16);Ec=d;return}function nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;AF(e,b+(0-(c<<1))|0,c);BF(a,e+32|0,c,16);Ec=d;return}function ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;wF(e,b+(0-(c<<1))|0,c);xF(a,e+32|0,c,16);Ec=d;return}function pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+112|0;e=d;sF(e,b+(0-(c<<1))|0,c);tF(a,e+16|0,c,8);Ec=d;return}function qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;oF(e,b+(0-(c<<1))|0,c);pF(a,e+32|0,c,16);Ec=d;return}function rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;EF(g,b+(0-(c<<1))|0,c);FF(f,g+32|0,16,16);LF(e,d,b,16,16,c);NH(a,f,e,c,16,16,8);Ec=d;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;AF(g,b+(0-(c<<1))|0,c);BF(f,g+32|0,16,16);KF(e,d,b,16,16,c);MH(a,f,e,c,16,16,8);Ec=d;return}function tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;wF(g,b+(0-(c<<1))|0,c);xF(f,g+32|0,16,16);JF(e,d,b,16,16,c);LH(a,f,e,c,16,16,8);Ec=d;return}function uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+448|0;g=d+336|0;f=d+272|0;e=d+208|0;sF(g,b+(0-(c<<1))|0,c);tF(f,g+16|0,8,8);IF(e,d,b,8,8,c);KH(a,f,e,c,8,8,8);Ec=d;return}function vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;oF(g,b+(0-(c<<1))|0,c);pF(f,g+32|0,16,16);HF(e,d,b,16,16,c);JH(a,f,e,c,16,16,8);Ec=d;return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+832|0;LF(a,d,b,c,16,c);Ec=d;return}function xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+832|0;KF(a,d,b,c,16,c);Ec=d;return}function yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+416|0;JF(a,d,b,c,16,c);Ec=d;return}function zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+208|0;IF(a,d,b,c,8,c);Ec=d;return}function Aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+416|0;HF(a,d,b,c,16,c);Ec=d;return}function Bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;EF(g,b+(0-(c<<1))+2|0,c);FF(f,g+32|0,16,16);LF(e,d,b,16,16,c);NH(a,f,e,c,16,16,8);Ec=d;return}function Cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;AF(g,b+(0-(c<<1))+2|0,c);BF(f,g+32|0,16,16);KF(e,d,b,16,16,c);MH(a,f,e,c,16,16,8);Ec=d;return}function Dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;wF(g,b+(0-(c<<1))+2|0,c);xF(f,g+32|0,16,16);JF(e,d,b,16,16,c);LH(a,f,e,c,16,16,8);Ec=d;return}function Ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+448|0;g=d+336|0;f=d+272|0;e=d+208|0;sF(g,b+(0-(c<<1))+1|0,c);tF(f,g+16|0,8,8);IF(e,d,b,8,8,c);KH(a,f,e,c,8,8,8);Ec=d;return}function Fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;oF(g,b+(0-(c<<1))+2|0,c);pF(f,g+32|0,16,16);HF(e,d,b,16,16,c);JH(a,f,e,c,16,16,8);Ec=d;return}function Gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;EF(f,b+(0-(c<<1))|0,c);FF(e,f+32|0,16,16);NH(a,f+48|0,e,c,16,16,8);Ec=d;return}function Hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;AF(f,b+(0-(c<<1))|0,c);BF(e,f+32|0,16,16);MH(a,f+48|0,e,c,16,16,8);Ec=d;return}function Iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;wF(f,b+(0-(c<<1))|0,c);xF(e,f+32|0,16,16);LH(a,f+48|0,e,c,16,16,8);Ec=d;return}function Jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+176|0;f=d+64|0;e=d;sF(f,b+(0-(c<<1))|0,c);tF(e,f+16|0,8,8);KH(a,f+24|0,e,c,8,8,8);Ec=d;return}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;oF(f,b+(0-(c<<1))|0,c);pF(e,f+32|0,16,16);JH(a,f+48|0,e,c,16,16,8);Ec=d;return}function Lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b+c|0,16,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+32|0,16,16);NH(a,f,e,c,16,16,8);Ec=d;return}function Mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b+c|0,16,c);AF(g,b+(0-(c<<1))|0,c);BF(e,g+32|0,16,16);MH(a,f,e,c,16,16,8);Ec=d;return}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b+c|0,16,c);wF(g,b+(0-(c<<1))|0,c);xF(e,g+32|0,16,16);LH(a,f,e,c,16,16,8);Ec=d;return}function Ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8,8);KH(a,f,e,c,8,8,8);Ec=d;return}function Pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b+c|0,16,c);oF(g,b+(0-(c<<1))|0,c);pF(e,g+32|0,16,16);JH(a,f,e,c,16,16,8);Ec=d;return}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;DF(f,b+c|0,16,c);LF(e,d,b,16,16,c);NH(a,f,e,c,16,16,8);Ec=d;return}function Rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;zF(f,b+c|0,16,c);KF(e,d,b,16,16,c);MH(a,f,e,c,16,16,8);Ec=d;return}function Sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;vF(f,b+c|0,16,c);JF(e,d,b,16,16,c);LH(a,f,e,c,16,16,8);Ec=d;return}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+272|0;e=d+208|0;rF(f,b+c|0,8,c);IF(e,d,b,8,8,c);KH(a,f,e,c,8,8,8);Ec=d;return}function Uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;nF(f,b+c|0,16,c);HF(e,d,b,16,16,c);JH(a,f,e,c,16,16,8);Ec=d;return}function Vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b+c|0,16,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+32|0,16,16);NH(a,f,e,c,16,16,8);Ec=d;return}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b+c|0,16,c);AF(g,b+(0-(c<<1))+2|0,c);BF(e,g+32|0,16,16);MH(a,f,e,c,16,16,8);Ec=d;return}function Xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b+c|0,16,c);wF(g,b+(0-(c<<1))+2|0,c);xF(e,g+32|0,16,16);LH(a,f,e,c,16,16,8);Ec=d;return}function Yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))+1|0,c);tF(e,g+16|0,8,8);KH(a,f,e,c,8,8,8);Ec=d;return}function Zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b+c|0,16,c);oF(g,b+(0-(c<<1))+2|0,c);pF(e,g+32|0,16,16);JH(a,f,e,c,16,16,8);Ec=d;return}function _w(a,b,c){a=a|0;b=b|0;c=c|0;IH(a,b,c);return}function $w(a,b,c){a=a|0;b=b|0;c=c|0;HH(a,b,c);return}function ax(a,b,c){a=a|0;b=b|0;c=c|0;GH(a,b,c);return}function bx(a,b,c){a=a|0;b=b|0;c=c|0;FH(a,b,c);return}function cx(a,b,c){a=a|0;b=b|0;c=c|0;EH(a,b,c);return}function dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;ME(e,b,8,c);DH(a,b,e,c,c);Ec=d;return}function ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;IE(e,b,8,c);CH(a,b,e,c,c);Ec=d;return}function fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;EE(e,b,8,c);BH(a,b,e,c,c);Ec=d;return}function gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;zE(e,b,4,c);AH(a,b,e,c,c);Ec=d;return}function hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;uE(e,b,8,c);zH(a,b,e,c,c);Ec=d;return}function ix(a,b,c){a=a|0;b=b|0;c=c|0;ME(a,b,c,c);return}function jx(a,b,c){a=a|0;b=b|0;c=c|0;IE(a,b,c,c);return}function kx(a,b,c){a=a|0;b=b|0;c=c|0;EE(a,b,c,c);return}function lx(a,b,c){a=a|0;b=b|0;c=c|0;zE(a,b,c,c);return}function mx(a,b,c){a=a|0;b=b|0;c=c|0;uE(a,b,c,c);return}function nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;ME(e,b,8,c);DH(a,b+2|0,e,c,c);Ec=d;return}function ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;IE(e,b,8,c);CH(a,b+2|0,e,c,c);Ec=d;return}function px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;EE(e,b,8,c);BH(a,b+2|0,e,c,c);Ec=d;return}function qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;zE(e,b,4,c);AH(a,b+1|0,e,c,c);Ec=d;return}function rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;uE(e,b,8,c);zH(a,b+2|0,e,c,c);Ec=d;return}function sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;NE(g,b+(0-(c<<1))|0,c);OE(e,f,8);DH(a,f,e,c,8);Ec=d;return}function tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;JE(g,b+(0-(c<<1))|0,c);KE(e,f,8);CH(a,f,e,c,8);Ec=d;return}function ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;FE(g,b+(0-(c<<1))|0,c);GE(e,f,8);BH(a,f,e,c,8);Ec=d;return}function vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+64|0;g=d+16|0;e=d;f=g+8|0;AE(g,b+(0-(c<<1))|0,c);BE(e,f,4);AH(a,f,e,c,4);Ec=d;return}function wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;vE(g,b+(0-(c<<1))|0,c);wE(e,f,8);zH(a,f,e,c,8);Ec=d;return}function xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b,8,c);NE(g,b+(0-(c<<1))|0,c);OE(e,g+16|0,8);DH(a,f,e,c,8);Ec=d;return}function yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b,8,c);JE(g,b+(0-(c<<1))|0,c);KE(e,g+16|0,8);CH(a,f,e,c,8);Ec=d;return}function zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b,8,c);FE(g,b+(0-(c<<1))|0,c);GE(e,g+16|0,8);BH(a,f,e,c,8);Ec=d;return}function Ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b,4,c);AE(g,b+(0-(c<<1))|0,c);BE(e,g+8|0,4);AH(a,f,e,c,4);Ec=d;return}function Bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b,8,c);vE(g,b+(0-(c<<1))|0,c);wE(e,g+16|0,8);zH(a,f,e,c,8);Ec=d;return}function Cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;ME(f,b,8,c);UE(e,d,b,8,c);DH(a,f,e,c,8);Ec=d;return}function Dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;IE(f,b,8,c);TE(e,d,b,8,c);CH(a,f,e,c,8);Ec=d;return}function Ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;EE(f,b,8,c);SE(e,d,b,8,c);BH(a,f,e,c,8);Ec=d;return}function Fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+88|0;e=d+72|0;zE(f,b,4,c);RE(e,d,b,4,c);AH(a,f,e,c,4);Ec=d;return}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;uE(f,b,8,c);QE(e,d,b,8,c);zH(a,f,e,c,8);Ec=d;return}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b,8,c);NE(g,b+(0-(c<<1))+2|0,c);OE(e,g+16|0,8);DH(a,f,e,c,8);Ec=d;return}function Ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b,8,c);JE(g,b+(0-(c<<1))+2|0,c);KE(e,g+16|0,8);CH(a,f,e,c,8);Ec=d;return}function Jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b,8,c);FE(g,b+(0-(c<<1))+2|0,c);GE(e,g+16|0,8);BH(a,f,e,c,8);Ec=d;return}function Kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b,4,c);AE(g,b+(0-(c<<1))+1|0,c);BE(e,g+8|0,4);AH(a,f,e,c,4);Ec=d;return}function Lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b,8,c);vE(g,b+(0-(c<<1))+2|0,c);wE(e,g+16|0,8);zH(a,f,e,c,8);Ec=d;return}function Mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;NE(e,b+(0-(c<<1))|0,c);OE(a,e+16|0,c);Ec=d;return}function Nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;JE(e,b+(0-(c<<1))|0,c);KE(a,e+16|0,c);Ec=d;return}function Ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;FE(e,b+(0-(c<<1))|0,c);GE(a,e+16|0,c);Ec=d;return}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+48|0;e=d;AE(e,b+(0-(c<<1))|0,c);BE(a,e+8|0,c);Ec=d;return}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;vE(e,b+(0-(c<<1))|0,c);wE(a,e+16|0,c);Ec=d;return}function Rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;NE(g,b+(0-(c<<1))|0,c);OE(f,g+16|0,8);UE(e,d,b,8,c);DH(a,f,e,c,8);Ec=d;return}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;JE(g,b+(0-(c<<1))|0,c);KE(f,g+16|0,8);TE(e,d,b,8,c);CH(a,f,e,c,8);Ec=d;return}function Tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;FE(g,b+(0-(c<<1))|0,c);GE(f,g+16|0,8);SE(e,d,b,8,c);BH(a,f,e,c,8);Ec=d;return}function Ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+104|0;f=d+88|0;e=d+72|0;AE(g,b+(0-(c<<1))|0,c);BE(f,g+8|0,4);RE(e,d,b,4,c);AH(a,f,e,c,4);Ec=d;return}function Vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;vE(g,b+(0-(c<<1))|0,c);wE(f,g+16|0,8);QE(e,d,b,8,c);zH(a,f,e,c,8);Ec=d;return}function Wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+288|0;UE(a,d,b,c,c);Ec=d;return}function Xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+288|0;TE(a,d,b,c,c);Ec=d;return}function Yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+144|0;SE(a,d,b,c,c);Ec=d;return}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+80|0;RE(a,d,b,c,c);Ec=d;return}function _x(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+144|0;QE(a,d,b,c,c);Ec=d;return}function $x(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;NE(g,b+(0-(c<<1))+2|0,c);OE(f,g+16|0,8);UE(e,d,b,8,c);DH(a,f,e,c,8);Ec=d;return}function ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;JE(g,b+(0-(c<<1))+2|0,c);KE(f,g+16|0,8);TE(e,d,b,8,c);CH(a,f,e,c,8);Ec=d;return}function by(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;FE(g,b+(0-(c<<1))+2|0,c);GE(f,g+16|0,8);SE(e,d,b,8,c);BH(a,f,e,c,8);Ec=d;return}function cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+104|0;f=d+88|0;e=d+72|0;AE(g,b+(0-(c<<1))+1|0,c);BE(f,g+8|0,4);RE(e,d,b,4,c);AH(a,f,e,c,4);Ec=d;return}function dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;vE(g,b+(0-(c<<1))+2|0,c);wE(f,g+16|0,8);QE(e,d,b,8,c);zH(a,f,e,c,8);Ec=d;return}function ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;NE(f,b+(0-(c<<1))|0,c);OE(e,f+16|0,8);DH(a,f+24|0,e,c,8);Ec=d;return}function fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;JE(f,b+(0-(c<<1))|0,c);KE(e,f+16|0,8);CH(a,f+24|0,e,c,8);Ec=d;return}function gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;FE(f,b+(0-(c<<1))|0,c);GE(e,f+16|0,8);BH(a,f+24|0,e,c,8);Ec=d;return}function hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+64|0;f=d+16|0;e=d;AE(f,b+(0-(c<<1))|0,c);BE(e,f+8|0,4);AH(a,f+12|0,e,c,4);Ec=d;return}function iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;vE(f,b+(0-(c<<1))|0,c);wE(e,f+16|0,8);zH(a,f+24|0,e,c,8);Ec=d;return}function jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b+c|0,8,c);NE(g,b+(0-(c<<1))|0,c);OE(e,g+16|0,8);DH(a,f,e,c,8);Ec=d;return}function ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b+c|0,8,c);JE(g,b+(0-(c<<1))|0,c);KE(e,g+16|0,8);CH(a,f,e,c,8);Ec=d;return}function ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b+c|0,8,c);FE(g,b+(0-(c<<1))|0,c);GE(e,g+16|0,8);BH(a,f,e,c,8);Ec=d;return}function my(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b+c|0,4,c);AE(g,b+(0-(c<<1))|0,c);BE(e,g+8|0,4);AH(a,f,e,c,4);Ec=d;return}function ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b+c|0,8,c);vE(g,b+(0-(c<<1))|0,c);wE(e,g+16|0,8);zH(a,f,e,c,8);Ec=d;return}function oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;ME(f,b+c|0,8,c);UE(e,d,b,8,c);DH(a,f,e,c,8);Ec=d;return}function py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;IE(f,b+c|0,8,c);TE(e,d,b,8,c);CH(a,f,e,c,8);Ec=d;return}function qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;EE(f,b+c|0,8,c);SE(e,d,b,8,c);BH(a,f,e,c,8);Ec=d;return}function ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+88|0;e=d+72|0;zE(f,b+c|0,4,c);RE(e,d,b,4,c);AH(a,f,e,c,4);Ec=d;return}function sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;uE(f,b+c|0,8,c);QE(e,d,b,8,c);zH(a,f,e,c,8);Ec=d;return}function ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b+c|0,8,c);NE(g,b+(0-(c<<1))+2|0,c);OE(e,g+16|0,8);DH(a,f,e,c,8);Ec=d;return}function uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b+c|0,8,c);JE(g,b+(0-(c<<1))+2|0,c);KE(e,g+16|0,8);CH(a,f,e,c,8);Ec=d;return}function vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b+c|0,8,c);FE(g,b+(0-(c<<1))+2|0,c);GE(e,g+16|0,8);BH(a,f,e,c,8);Ec=d;return}function wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b+c|0,4,c);AE(g,b+(0-(c<<1))+1|0,c);BE(e,g+8|0,4);AH(a,f,e,c,4);Ec=d;return}function xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b+c|0,8,c);vE(g,b+(0-(c<<1))+2|0,c);wE(e,g+16|0,8);zH(a,f,e,c,8);Ec=d;return}function yy(a,b,c){a=a|0;b=b|0;c=c|0;yH(a,b,c);return}function zy(a,b,c){a=a|0;b=b|0;c=c|0;xH(a,b,c);return}function Ay(a,b,c){a=a|0;b=b|0;c=c|0;wH(a,b,c);return}function By(a,b,c){a=a|0;b=b|0;c=c|0;vH(a,b,c);return}function Cy(a,b,c){a=a|0;b=b|0;c=c|0;uH(a,b,c);return}function Dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;lH(e,b,4,c);oH(a,b,e,c,c);Ec=d;return}function Ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;hH(e,b,4,c);kH(a,b,e,c,c);Ec=d;return}function Fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;dH(e,b,4,c);gH(a,b,e,c,c);Ec=d;return}function Gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;$G(e,b,2,c);cH(a,b,e,c,c);Ec=d;return}function Hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;XG(e,b,4,c);_G(a,b,e,c,c);Ec=d;return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;lH(a,b,c,c);return}function Jy(a,b,c){a=a|0;b=b|0;c=c|0;hH(a,b,c,c);return}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;dH(a,b,c,c);return}function Ly(a,b,c){a=a|0;b=b|0;c=c|0;$G(a,b,c,c);return}function My(a,b,c){a=a|0;b=b|0;c=c|0;XG(a,b,c,c);return}function Ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;lH(e,b,4,c);oH(a,b+2|0,e,c,c);Ec=d;return}function Oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;hH(e,b,4,c);kH(a,b+2|0,e,c,c);Ec=d;return}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;dH(e,b,4,c);gH(a,b+2|0,e,c,c);Ec=d;return}function Qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;$G(e,b,2,c);cH(a,b+1|0,e,c,c);Ec=d;return}function Ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;XG(e,b,4,c);_G(a,b+2|0,e,c,c);Ec=d;return}function Sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+8|0;e=d;f=g+8|0;mH(g,b+(0-(c<<1))|0,c);nH(e,f,4);oH(a,f,e,c,4);Ec=d;return}function Ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+8|0;e=d;f=g+8|0;iH(g,b+(0-(c<<1))|0,c);jH(e,f,4);kH(a,f,e,c,4);Ec=d;return}function Uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+8|0;e=d;f=g+8|0;eH(g,b+(0-(c<<1))|0,c);fH(e,f,4);gH(a,f,e,c,4);Ec=d;return}function Vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+32|0;g=d+4|0;e=d;f=g+4|0;aH(g,b+(0-(c<<1))|0,c);bH(e,f,2);cH(a,f,e,c,2);Ec=d;return}function Wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+8|0;e=d;f=g+8|0;YG(g,b+(0-(c<<1))|0,c);ZG(e,f,4);_G(a,f,e,c,4);Ec=d;return}function Xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;lH(f,b,4,c);mH(g,b+(0-(c<<1))|0,c);nH(e,g+8|0,4);oH(a,f,e,c,4);Ec=d;return}function Yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;hH(f,b,4,c);iH(g,b+(0-(c<<1))|0,c);jH(e,g+8|0,4);kH(a,f,e,c,4);Ec=d;return}function Zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;dH(f,b,4,c);eH(g,b+(0-(c<<1))|0,c);fH(e,g+8|0,4);gH(a,f,e,c,4);Ec=d;return}function _y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+32|0;g=d+8|0;f=d+4|0;e=d;$G(f,b,2,c);aH(g,b+(0-(c<<1))|0,c);bH(e,g+4|0,2);cH(a,f,e,c,2);Ec=d;return}function $y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;XG(f,b,4,c);YG(g,b+(0-(c<<1))|0,c);ZG(e,g+8|0,4);_G(a,f,e,c,4);Ec=d;return}function az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+128|0;f=d+120|0;e=d+112|0;lH(f,b,4,c);tH(e,d,b,4,c);oH(a,f,e,c,4);Ec=d;return}function bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+128|0;f=d+120|0;e=d+112|0;hH(f,b,4,c);sH(e,d,b,4,c);kH(a,f,e,c,4);Ec=d;return}function cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+80|0;f=d+64|0;e=d+56|0;dH(f,b,4,c);rH(e,d,b,4,c);gH(a,f,e,c,4);Ec=d;return}function dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+48|0;f=d+32|0;e=d+28|0;$G(f,b,2,c);qH(e,d,b,2,c);cH(a,f,e,c,2);Ec=d;return}function ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+80|0;f=d+64|0;e=d+56|0;XG(f,b,4,c);pH(e,d,b,4,c);_G(a,f,e,c,4);Ec=d;return}function fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;lH(f,b,4,c);mH(g,b+(0-(c<<1))+2|0,c);nH(e,g+8|0,4);oH(a,f,e,c,4);Ec=d;return}function gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;hH(f,b,4,c);iH(g,b+(0-(c<<1))+2|0,c);jH(e,g+8|0,4);kH(a,f,e,c,4);Ec=d;return}function hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;dH(f,b,4,c);eH(g,b+(0-(c<<1))+2|0,c);fH(e,g+8|0,4);gH(a,f,e,c,4);Ec=d;return}function iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+32|0;g=d+8|0;f=d+4|0;e=d;$G(f,b,2,c);aH(g,b+(0-(c<<1))+1|0,c);bH(e,g+4|0,2);cH(a,f,e,c,2);Ec=d;return}function jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;XG(f,b,4,c);YG(g,b+(0-(c<<1))+2|0,c);ZG(e,g+8|0,4);_G(a,f,e,c,4);Ec=d;return}function kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;mH(e,b+(0-(c<<1))|0,c);nH(a,e+8|0,c);Ec=d;return}function lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;iH(e,b+(0-(c<<1))|0,c);jH(a,e+8|0,c);Ec=d;return}function mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;eH(e,b+(0-(c<<1))|0,c);fH(a,e+8|0,c);Ec=d;return}function nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;aH(e,b+(0-(c<<1))|0,c);bH(a,e+4|0,c);Ec=d;return}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;YG(e,b+(0-(c<<1))|0,c);ZG(a,e+8|0,c);Ec=d;return}function pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+160|0;g=d+128|0;f=d+120|0;e=d+112|0;mH(g,b+(0-(c<<1))|0,c);nH(f,g+8|0,4);tH(e,d,b,4,c);oH(a,f,e,c,4);Ec=d;return}function qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+160|0;g=d+128|0;f=d+120|0;e=d+112|0;iH(g,b+(0-(c<<1))|0,c);jH(f,g+8|0,4);sH(e,d,b,4,c);kH(a,f,e,c,4);Ec=d;return}function rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+72|0;f=d+64|0;e=d+56|0;eH(g,b+(0-(c<<1))|0,c);fH(f,g+8|0,4);rH(e,d,b,4,c);gH(a,f,e,c,4);Ec=d;return}function sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+64|0;g=d+36|0;f=d+32|0;e=d+28|0;aH(g,b+(0-(c<<1))|0,c);bH(f,g+4|0,2);qH(e,d,b,2,c);cH(a,f,e,c,2);Ec=d;return}function tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+72|0;f=d+64|0;e=d+56|0;YG(g,b+(0-(c<<1))|0,c);ZG(f,g+8|0,4);pH(e,d,b,4,c);_G(a,f,e,c,4);Ec=d;return}function uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+112|0;tH(a,d,b,c,c);Ec=d;return}function vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+112|0;sH(a,d,b,c,c);Ec=d;return}function wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+64|0;rH(a,d,b,c,c);Ec=d;return}function xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+32|0;qH(a,d,b,c,c);Ec=d;return}function yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+64|0;pH(a,d,b,c,c);Ec=d;return}function zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+160|0;g=d+128|0;f=d+120|0;e=d+112|0;mH(g,b+(0-(c<<1))+2|0,c);nH(f,g+8|0,4);tH(e,d,b,4,c);oH(a,f,e,c,4);Ec=d;return}function Az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+160|0;g=d+128|0;f=d+120|0;e=d+112|0;iH(g,b+(0-(c<<1))+2|0,c);jH(f,g+8|0,4);sH(e,d,b,4,c);kH(a,f,e,c,4);Ec=d;return}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+72|0;f=d+64|0;e=d+56|0;eH(g,b+(0-(c<<1))+2|0,c);fH(f,g+8|0,4);rH(e,d,b,4,c);gH(a,f,e,c,4);Ec=d;return}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+64|0;g=d+36|0;f=d+32|0;e=d+28|0;aH(g,b+(0-(c<<1))+1|0,c);bH(f,g+4|0,2);qH(e,d,b,2,c);cH(a,f,e,c,2);Ec=d;return}function Dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+72|0;f=d+64|0;e=d+56|0;YG(g,b+(0-(c<<1))+2|0,c);ZG(f,g+8|0,4);pH(e,d,b,4,c);_G(a,f,e,c,4);Ec=d;return}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+48|0;f=d+8|0;e=d;mH(f,b+(0-(c<<1))|0,c);nH(e,f+8|0,4);oH(a,f+12|0,e,c,4);Ec=d;return}function Fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+48|0;f=d+8|0;e=d;iH(f,b+(0-(c<<1))|0,c);jH(e,f+8|0,4);kH(a,f+12|0,e,c,4);Ec=d;return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+48|0;f=d+8|0;e=d;eH(f,b+(0-(c<<1))|0,c);fH(e,f+8|0,4);gH(a,f+12|0,e,c,4);Ec=d;return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+32|0;f=d+4|0;e=d;aH(f,b+(0-(c<<1))|0,c);bH(e,f+4|0,2);cH(a,f+6|0,e,c,2);Ec=d;return}function Iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+48|0;f=d+8|0;e=d;YG(f,b+(0-(c<<1))|0,c);ZG(e,f+8|0,4);_G(a,f+12|0,e,c,4);Ec=d;return}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;lH(f,b+c|0,4,c);mH(g,b+(0-(c<<1))|0,c);nH(e,g+8|0,4);oH(a,f,e,c,4);Ec=d;return}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;hH(f,b+c|0,4,c);iH(g,b+(0-(c<<1))|0,c);jH(e,g+8|0,4);kH(a,f,e,c,4);Ec=d;return}function Lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;dH(f,b+c|0,4,c);eH(g,b+(0-(c<<1))|0,c);fH(e,g+8|0,4);gH(a,f,e,c,4);Ec=d;return}function Mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+32|0;g=d+8|0;f=d+4|0;e=d;$G(f,b+c|0,2,c);aH(g,b+(0-(c<<1))|0,c);bH(e,g+4|0,2);cH(a,f,e,c,2);Ec=d;return}function Nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;XG(f,b+c|0,4,c);YG(g,b+(0-(c<<1))|0,c);ZG(e,g+8|0,4);_G(a,f,e,c,4);Ec=d;return}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+128|0;f=d+120|0;e=d+112|0;lH(f,b+c|0,4,c);tH(e,d,b,4,c);oH(a,f,e,c,4);Ec=d;return}function Pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+128|0;f=d+120|0;e=d+112|0;hH(f,b+c|0,4,c);sH(e,d,b,4,c);kH(a,f,e,c,4);Ec=d;return}function Qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+80|0;f=d+64|0;e=d+56|0;dH(f,b+c|0,4,c);rH(e,d,b,4,c);gH(a,f,e,c,4);Ec=d;return}function Rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+48|0;f=d+32|0;e=d+28|0;$G(f,b+c|0,2,c);qH(e,d,b,2,c);cH(a,f,e,c,2);Ec=d;return}function Sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+80|0;f=d+64|0;e=d+56|0;XG(f,b+c|0,4,c);pH(e,d,b,4,c);_G(a,f,e,c,4);Ec=d;return}function Tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;lH(f,b+c|0,4,c);mH(g,b+(0-(c<<1))+2|0,c);nH(e,g+8|0,4);oH(a,f,e,c,4);Ec=d;return}function Uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;hH(f,b+c|0,4,c);iH(g,b+(0-(c<<1))+2|0,c);jH(e,g+8|0,4);kH(a,f,e,c,4);Ec=d;return}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;dH(f,b+c|0,4,c);eH(g,b+(0-(c<<1))+2|0,c);fH(e,g+8|0,4);gH(a,f,e,c,4);Ec=d;return}function Wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+32|0;g=d+8|0;f=d+4|0;e=d;$G(f,b+c|0,2,c);aH(g,b+(0-(c<<1))+1|0,c);bH(e,g+4|0,2);cH(a,f,e,c,2);Ec=d;return}function Xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+48|0;g=d+16|0;f=d+8|0;e=d;XG(f,b+c|0,4,c);YG(g,b+(0-(c<<1))+2|0,c);ZG(e,g+8|0,4);_G(a,f,e,c,4);Ec=d;return}function Yz(a,b,c){a=a|0;b=b|0;c=c|0;WG(a,b,c);return}function Zz(a,b,c){a=a|0;b=b|0;c=c|0;VG(a,b,c);return}function _z(a,b,c){a=a|0;b=b|0;c=c|0;UG(a,b,c);return}function $z(a,b,c){a=a|0;b=b|0;c=c|0;TG(a,b,c);return}function aA(a,b,c){a=a|0;b=b|0;c=c|0;SG(a,b,c);return}function bA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;uG(e,b,32,c);xG(a,b,e,c,c);Ec=d;return}function cA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;qG(e,b,32,c);tG(a,b,e,c,c);Ec=d;return}function dA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;mG(e,b,32,c);pG(a,b,e,c,c);Ec=d;return}function eA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+256|0;e=d;iG(e,b,16,c);lG(a,b,e,c,c);Ec=d;return}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;eG(e,b,32,c);hG(a,b,e,c,c);Ec=d;return}function gA(a,b,c){a=a|0;b=b|0;c=c|0;RG(a,b,c,c);return}function hA(a,b,c){a=a|0;b=b|0;c=c|0;QG(a,b,c,c);return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;PG(a,b,c,c);return}function jA(a,b,c){a=a|0;b=b|0;c=c|0;OG(a,b,c,c);return}function kA(a,b,c){a=a|0;b=b|0;c=c|0;NG(a,b,c,c);return}function lA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;uG(e,b,32,c);xG(a,b+2|0,e,c,c);Ec=d;return}function mA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;qG(e,b,32,c);tG(a,b+2|0,e,c,c);Ec=d;return}function nA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;mG(e,b,32,c);pG(a,b+2|0,e,c,c);Ec=d;return}function oA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+256|0;e=d;iG(e,b,16,c);lG(a,b+1|0,e,c,c);Ec=d;return}function pA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+512|0;e=d;eG(e,b,32,c);hG(a,b+2|0,e,c,c);Ec=d;return}function qA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;vG(g,b+(0-(c<<1))|0,c);wG(e,f,32);xG(a,f,e,c,32);Ec=d;return}function rA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;rG(g,b+(0-(c<<1))|0,c);sG(e,f,32);tG(a,f,e,c,32);Ec=d;return}function sA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;nG(g,b+(0-(c<<1))|0,c);oG(e,f,32);pG(a,f,e,c,32);Ec=d;return}function tA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+592|0;g=d+256|0;e=d;f=g+32|0;jG(g,b+(0-(c<<1))|0,c);kG(e,f,16);lG(a,f,e,c,16);Ec=d;return}function uA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1184|0;g=d+512|0;e=d;f=g+64|0;fG(g,b+(0-(c<<1))|0,c);gG(e,f,32);hG(a,f,e,c,32);Ec=d;return}function vA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b,32,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+64|0,32);xG(a,f,e,c,32);Ec=d;return}function wA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b,32,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+64|0,32);tG(a,f,e,c,32);Ec=d;return}function xA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b,32,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+64|0,32);pG(a,f,e,c,32);Ec=d;return}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b,16,c);jG(g,b+(0-(c<<1))|0,c);kG(e,g+32|0,16);lG(a,f,e,c,16);Ec=d;return}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b,32,c);fG(g,b+(0-(c<<1))|0,c);gG(e,g+64|0,32);hG(a,f,e,c,32);Ec=d;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;uG(f,b,32,c);CG(e,d,b,32,c);xG(a,f,e,c,32);Ec=d;return}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;qG(f,b,32,c);BG(e,d,b,32,c);tG(a,f,e,c,32);Ec=d;return}function CA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;mG(f,b,32,c);AG(e,d,b,32,c);pG(a,f,e,c,32);Ec=d;return}function DA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+928|0;e=d+672|0;iG(f,b,16,c);zG(e,d,b,16,c);lG(a,f,e,c,16);Ec=d;return}function EA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;eG(f,b,32,c);yG(e,d,b,32,c);hG(a,f,e,c,32);Ec=d;return}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b,32,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+64|0,32);xG(a,f,e,c,32);Ec=d;return}function GA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b,32,c);rG(g,b+(0-(c<<1))+2|0,c);sG(e,g+64|0,32);tG(a,f,e,c,32);Ec=d;return}function HA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b,32,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+64|0,32);pG(a,f,e,c,32);Ec=d;return}function IA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b,16,c);jG(g,b+(0-(c<<1))+1|0,c);kG(e,g+32|0,16);lG(a,f,e,c,16);Ec=d;return}function JA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b,32,c);fG(g,b+(0-(c<<1))+2|0,c);gG(e,g+64|0,32);hG(a,f,e,c,32);Ec=d;return}function KA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;vG(e,b+(0-(c<<1))|0,c);MG(a,e+64|0,c);Ec=d;return}function LA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;rG(e,b+(0-(c<<1))|0,c);LG(a,e+64|0,c);Ec=d;return}function MA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;nG(e,b+(0-(c<<1))|0,c);KG(a,e+64|0,c);Ec=d;return}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+336|0;e=d;jG(e,b+(0-(c<<1))|0,c);JG(a,e+32|0,c);Ec=d;return}function OA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+672|0;e=d;fG(e,b+(0-(c<<1))|0,c);IG(a,e+64|0,c);Ec=d;return}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;vG(g,b+(0-(c<<1))|0,c);wG(f,g+64|0,32);CG(e,d,b,32,c);xG(a,f,e,c,32);Ec=d;return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;rG(g,b+(0-(c<<1))|0,c);sG(f,g+64|0,32);BG(e,d,b,32,c);tG(a,f,e,c,32);Ec=d;return}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;nG(g,b+(0-(c<<1))|0,c);oG(f,g+64|0,32);AG(e,d,b,32,c);pG(a,f,e,c,32);Ec=d;return}function SA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1520|0;g=d+1184|0;f=d+928|0;e=d+672|0;jG(g,b+(0-(c<<1))|0,c);kG(f,g+32|0,16);zG(e,d,b,16,c);lG(a,f,e,c,16);Ec=d;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;fG(g,b+(0-(c<<1))|0,c);gG(f,g+64|0,32);yG(e,d,b,32,c);hG(a,f,e,c,32);Ec=d;return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+2688|0;HG(a,d,b,c,c);Ec=d;return}function VA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+2688|0;GG(a,d,b,c,c);Ec=d;return}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+1344|0;FG(a,d,b,c,c);Ec=d;return}function XA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+672|0;EG(a,d,b,c,c);Ec=d;return}function YA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+1344|0;DG(a,d,b,c,c);Ec=d;return}function ZA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;vG(g,b+(0-(c<<1))+2|0,c);wG(f,g+64|0,32);CG(e,d,b,32,c);xG(a,f,e,c,32);Ec=d;return}function _A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+4384|0;g=d+3712|0;f=d+3200|0;e=d+2688|0;rG(g,b+(0-(c<<1))+2|0,c);sG(f,g+64|0,32);BG(e,d,b,32,c);tG(a,f,e,c,32);Ec=d;return}function $A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;nG(g,b+(0-(c<<1))+2|0,c);oG(f,g+64|0,32);AG(e,d,b,32,c);pG(a,f,e,c,32);Ec=d;return}function aB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1520|0;g=d+1184|0;f=d+928|0;e=d+672|0;jG(g,b+(0-(c<<1))+1|0,c);kG(f,g+32|0,16);zG(e,d,b,16,c);lG(a,f,e,c,16);Ec=d;return}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+3040|0;g=d+2368|0;f=d+1856|0;e=d+1344|0;fG(g,b+(0-(c<<1))+2|0,c);gG(f,g+64|0,32);yG(e,d,b,32,c);hG(a,f,e,c,32);Ec=d;return}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;vG(f,b+(0-(c<<1))|0,c);wG(e,f+64|0,32);xG(a,f+96|0,e,c,32);Ec=d;return}function dB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;rG(f,b+(0-(c<<1))|0,c);sG(e,f+64|0,32);tG(a,f+96|0,e,c,32);Ec=d;return}function eB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;nG(f,b+(0-(c<<1))|0,c);oG(e,f+64|0,32);pG(a,f+96|0,e,c,32);Ec=d;return}function fB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+592|0;f=d+256|0;e=d;jG(f,b+(0-(c<<1))|0,c);kG(e,f+32|0,16);lG(a,f+48|0,e,c,16);Ec=d;return}function gB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+512|0;e=d;fG(f,b+(0-(c<<1))|0,c);gG(e,f+64|0,32);hG(a,f+96|0,e,c,32);Ec=d;return}function hB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b+c|0,32,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+64|0,32);xG(a,f,e,c,32);Ec=d;return}function iB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b+c|0,32,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+64|0,32);tG(a,f,e,c,32);Ec=d;return}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b+c|0,32,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+64|0,32);pG(a,f,e,c,32);Ec=d;return}function kB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b+c|0,16,c);jG(g,b+(0-(c<<1))|0,c);kG(e,g+32|0,16);lG(a,f,e,c,16);Ec=d;return}function lB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b+c|0,32,c);fG(g,b+(0-(c<<1))|0,c);gG(e,g+64|0,32);hG(a,f,e,c,32);Ec=d;return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;uG(f,b+c|0,32,c);CG(e,d,b,32,c);xG(a,f,e,c,32);Ec=d;return}function nB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+3712|0;f=d+3200|0;e=d+2688|0;qG(f,b+c|0,32,c);BG(e,d,b,32,c);tG(a,f,e,c,32);Ec=d;return}function oB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;mG(f,b+c|0,32,c);AG(e,d,b,32,c);pG(a,f,e,c,32);Ec=d;return}function pB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1184|0;f=d+928|0;e=d+672|0;iG(f,b+c|0,16,c);zG(e,d,b,16,c);lG(a,f,e,c,16);Ec=d;return}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+2368|0;f=d+1856|0;e=d+1344|0;eG(f,b+c|0,32,c);yG(e,d,b,32,c);hG(a,f,e,c,32);Ec=d;return}function rB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;uG(f,b+c|0,32,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+64|0,32);xG(a,f,e,c,32);Ec=d;return}function sB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;qG(f,b+c|0,32,c);rG(g,b+(0-(c<<1))+2|0,c);sG(e,g+64|0,32);tG(a,f,e,c,32);Ec=d;return}function tB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;mG(f,b+c|0,32,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+64|0,32);pG(a,f,e,c,32);Ec=d;return}function uB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+848|0;g=d+512|0;f=d+256|0;e=d;iG(f,b+c|0,16,c);jG(g,b+(0-(c<<1))+1|0,c);kG(e,g+32|0,16);lG(a,f,e,c,16);Ec=d;return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1696|0;g=d+1024|0;f=d+512|0;e=d;eG(f,b+c|0,32,c);fG(g,b+(0-(c<<1))+2|0,c);gG(e,g+64|0,32);hG(a,f,e,c,32);Ec=d;return}function wB(a,b,c){a=a|0;b=b|0;c=c|0;dG(a,b,c,8);return}function xB(a,b,c){a=a|0;b=b|0;c=c|0;cG(a,b,c,8);return}function yB(a,b,c){a=a|0;b=b|0;c=c|0;bG(a,b,c,8);return}function zB(a,b,c){a=a|0;b=b|0;c=c|0;aG(a,b,c,8);return}function AB(a,b,c){a=a|0;b=b|0;c=c|0;$F(a,b,c,8);return}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;DF(e,b,16,c);GF(a,b,e,c,c,16,8);Ec=d;return}function CB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;zF(e,b,16,c);CF(a,b,e,c,c,16,8);Ec=d;return}function DB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;vF(e,b,16,c);yF(a,b,e,c,c,16,8);Ec=d;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+64|0;e=d;rF(e,b,8,c);uF(a,b,e,c,c,8,8);Ec=d;return}function FB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;nF(e,b,16,c);qF(a,b,e,c,c,16,8);Ec=d;return}function GB(a,b,c){a=a|0;b=b|0;c=c|0;_F(a,b,c,c);return}function HB(a,b,c){a=a|0;b=b|0;c=c|0;ZF(a,b,c,c);return}function IB(a,b,c){a=a|0;b=b|0;c=c|0;YF(a,b,c,c);return}function JB(a,b,c){a=a|0;b=b|0;c=c|0;XF(a,b,c,c);return}function KB(a,b,c){a=a|0;b=b|0;c=c|0;WF(a,b,c,c);return}function LB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;DF(e,b,16,c);GF(a,b+2|0,e,c,c,16,8);Ec=d;return}function MB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;zF(e,b,16,c);CF(a,b+2|0,e,c,c,16,8);Ec=d;return}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;vF(e,b,16,c);yF(a,b+2|0,e,c,c,16,8);Ec=d;return}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+64|0;e=d;rF(e,b,8,c);uF(a,b+1|0,e,c,c,8,8);Ec=d;return}function PB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+128|0;e=d;nF(e,b,16,c);qF(a,b+2|0,e,c,c,16,8);Ec=d;return}function QB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;EF(g,b+(0-(c<<1))|0,c);FF(e,f,16,16);GF(a,f,e,c,16,16,8);Ec=d;return}function RB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;AF(g,b+(0-(c<<1))|0,c);BF(e,f,16,16);CF(a,f,e,c,16,16,8);Ec=d;return}function SB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;wF(g,b+(0-(c<<1))|0,c);xF(e,f,16,16);yF(a,f,e,c,16,16,8);Ec=d;return}function TB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+176|0;g=d+64|0;e=d;f=g+16|0;sF(g,b+(0-(c<<1))|0,c);tF(e,f,8,8);uF(a,f,e,c,8,8,8);Ec=d;return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+336|0;g=d+128|0;e=d;f=g+32|0;oF(g,b+(0-(c<<1))|0,c);pF(e,f,16,16);qF(a,f,e,c,16,16,8);Ec=d;return}function VB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b,16,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+32|0,16,16);GF(a,f,e,c,16,16,8);Ec=d;return}function WB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b,16,c);AF(g,b+(0-(c<<1))|0,c);BF(e,g+32|0,16,16);CF(a,f,e,c,16,16,8);Ec=d;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b,16,c);wF(g,b+(0-(c<<1))|0,c);xF(e,g+32|0,16,16);yF(a,f,e,c,16,16,8);Ec=d;return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8,8);uF(a,f,e,c,8,8,8);Ec=d;return}function ZB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b,16,c);oF(g,b+(0-(c<<1))|0,c);pF(e,g+32|0,16,16);qF(a,f,e,c,16,16,8);Ec=d;return}function _B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;DF(f,b,16,c);LF(e,d,b,16,16,c);GF(a,f,e,c,16,16,8);Ec=d;return}function $B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;zF(f,b,16,c);KF(e,d,b,16,16,c);CF(a,f,e,c,16,16,8);Ec=d;return}function aC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;vF(f,b,16,c);JF(e,d,b,16,16,c);yF(a,f,e,c,16,16,8);Ec=d;return}function bC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+272|0;e=d+208|0;rF(f,b,8,c);IF(e,d,b,8,8,c);uF(a,f,e,c,8,8,8);Ec=d;return}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;nF(f,b,16,c);HF(e,d,b,16,16,c);qF(a,f,e,c,16,16,8);Ec=d;return}function dC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b,16,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+32|0,16,16);GF(a,f,e,c,16,16,8);Ec=d;return}function eC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b,16,c);AF(g,b+(0-(c<<1))+2|0,c);BF(e,g+32|0,16,16);CF(a,f,e,c,16,16,8);Ec=d;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b,16,c);wF(g,b+(0-(c<<1))+2|0,c);xF(e,g+32|0,16,16);yF(a,f,e,c,16,16,8);Ec=d;return}function gC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))+1|0,c);tF(e,g+16|0,8,8);uF(a,f,e,c,8,8,8);Ec=d;return}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b,16,c);oF(g,b+(0-(c<<1))+2|0,c);pF(e,g+32|0,16,16);qF(a,f,e,c,16,16,8);Ec=d;return}function iC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;EF(e,b+(0-(c<<1))|0,c);VF(a,e+32|0,c,16);Ec=d;return}function jC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;AF(e,b+(0-(c<<1))|0,c);UF(a,e+32|0,c,16);Ec=d;return}function kC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;wF(e,b+(0-(c<<1))|0,c);TF(a,e+32|0,c,16);Ec=d;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+112|0;e=d;sF(e,b+(0-(c<<1))|0,c);SF(a,e+16|0,c,8);Ec=d;return}function mC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+208|0;e=d;oF(e,b+(0-(c<<1))|0,c);RF(a,e+32|0,c,16);Ec=d;return}function nC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;EF(g,b+(0-(c<<1))|0,c);FF(f,g+32|0,16,16);LF(e,d,b,16,16,c);GF(a,f,e,c,16,16,8);Ec=d;return}function oC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;AF(g,b+(0-(c<<1))|0,c);BF(f,g+32|0,16,16);KF(e,d,b,16,16,c);CF(a,f,e,c,16,16,8);Ec=d;return}function pC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;wF(g,b+(0-(c<<1))|0,c);xF(f,g+32|0,16,16);JF(e,d,b,16,16,c);yF(a,f,e,c,16,16,8);Ec=d;return}function qC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+448|0;g=d+336|0;f=d+272|0;e=d+208|0;sF(g,b+(0-(c<<1))|0,c);tF(f,g+16|0,8,8);IF(e,d,b,8,8,c);uF(a,f,e,c,8,8,8);Ec=d;return}function rC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;oF(g,b+(0-(c<<1))|0,c);pF(f,g+32|0,16,16);HF(e,d,b,16,16,c);qF(a,f,e,c,16,16,8);Ec=d;return}function sC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+832|0;QF(a,d,b,c,16,c);Ec=d;return}function tC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+832|0;PF(a,d,b,c,16,c);Ec=d;return}function uC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+416|0;OF(a,d,b,c,16,c);Ec=d;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+208|0;NF(a,d,b,c,8,c);Ec=d;return}function wC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+416|0;MF(a,d,b,c,16,c);Ec=d;return}function xC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;EF(g,b+(0-(c<<1))+2|0,c);FF(f,g+32|0,16,16);LF(e,d,b,16,16,c);GF(a,f,e,c,16,16,8);Ec=d;return}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+1296|0;g=d+1088|0;f=d+960|0;e=d+832|0;AF(g,b+(0-(c<<1))+2|0,c);BF(f,g+32|0,16,16);KF(e,d,b,16,16,c);CF(a,f,e,c,16,16,8);Ec=d;return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;wF(g,b+(0-(c<<1))+2|0,c);xF(f,g+32|0,16,16);JF(e,d,b,16,16,c);yF(a,f,e,c,16,16,8);Ec=d;return}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+448|0;g=d+336|0;f=d+272|0;e=d+208|0;sF(g,b+(0-(c<<1))+1|0,c);tF(f,g+16|0,8,8);IF(e,d,b,8,8,c);uF(a,f,e,c,8,8,8);Ec=d;return}function BC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+880|0;g=d+672|0;f=d+544|0;e=d+416|0;oF(g,b+(0-(c<<1))+2|0,c);pF(f,g+32|0,16,16);HF(e,d,b,16,16,c);qF(a,f,e,c,16,16,8);Ec=d;return}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;EF(f,b+(0-(c<<1))|0,c);FF(e,f+32|0,16,16);GF(a,f+48|0,e,c,16,16,8);Ec=d;return}function DC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;AF(f,b+(0-(c<<1))|0,c);BF(e,f+32|0,16,16);CF(a,f+48|0,e,c,16,16,8);Ec=d;return}function EC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;wF(f,b+(0-(c<<1))|0,c);xF(e,f+32|0,16,16);yF(a,f+48|0,e,c,16,16,8);Ec=d;return}function FC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+176|0;f=d+64|0;e=d;sF(f,b+(0-(c<<1))|0,c);tF(e,f+16|0,8,8);uF(a,f+24|0,e,c,8,8,8);Ec=d;return}function GC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+128|0;e=d;oF(f,b+(0-(c<<1))|0,c);pF(e,f+32|0,16,16);qF(a,f+48|0,e,c,16,16,8);Ec=d;return}function HC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b+c|0,16,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+32|0,16,16);GF(a,f,e,c,16,16,8);Ec=d;return}function IC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b+c|0,16,c);AF(g,b+(0-(c<<1))|0,c);BF(e,g+32|0,16,16);CF(a,f,e,c,16,16,8);Ec=d;return}function JC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b+c|0,16,c);wF(g,b+(0-(c<<1))|0,c);xF(e,g+32|0,16,16);yF(a,f,e,c,16,16,8);Ec=d;return}function KC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8,8);uF(a,f,e,c,8,8,8);Ec=d;return}function LC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b+c|0,16,c);oF(g,b+(0-(c<<1))|0,c);pF(e,g+32|0,16,16);qF(a,f,e,c,16,16,8);Ec=d;return}function MC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;DF(f,b+c|0,16,c);LF(e,d,b,16,16,c);GF(a,f,e,c,16,16,8);Ec=d;return}function NC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+1088|0;f=d+960|0;e=d+832|0;zF(f,b+c|0,16,c);KF(e,d,b,16,16,c);CF(a,f,e,c,16,16,8);Ec=d;return}function OC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;vF(f,b+c|0,16,c);JF(e,d,b,16,16,c);yF(a,f,e,c,16,16,8);Ec=d;return}function PC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+336|0;f=d+272|0;e=d+208|0;rF(f,b+c|0,8,c);IF(e,d,b,8,8,c);uF(a,f,e,c,8,8,8);Ec=d;return}function QC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+672|0;f=d+544|0;e=d+416|0;nF(f,b+c|0,16,c);HF(e,d,b,16,16,c);qF(a,f,e,c,16,16,8);Ec=d;return}function RC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;DF(f,b+c|0,16,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+32|0,16,16);GF(a,f,e,c,16,16,8);Ec=d;return}function SC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;zF(f,b+c|0,16,c);AF(g,b+(0-(c<<1))+2|0,c);BF(e,g+32|0,16,16);CF(a,f,e,c,16,16,8);Ec=d;return}function TC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;vF(f,b+c|0,16,c);wF(g,b+(0-(c<<1))+2|0,c);xF(e,g+32|0,16,16);yF(a,f,e,c,16,16,8);Ec=d;return}function UC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+240|0;g=d+128|0;f=d+64|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))+1|0,c);tF(e,g+16|0,8,8);uF(a,f,e,c,8,8,8);Ec=d;return}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+464|0;g=d+256|0;f=d+128|0;e=d;nF(f,b+c|0,16,c);oF(g,b+(0-(c<<1))+2|0,c);pF(e,g+32|0,16,16);qF(a,f,e,c,16,16,8);Ec=d;return}function WC(a,b,c){a=a|0;b=b|0;c=c|0;mF(a,b,c);return}function XC(a,b,c){a=a|0;b=b|0;c=c|0;lF(a,b,c);return}function YC(a,b,c){a=a|0;b=b|0;c=c|0;kF(a,b,c);return}function ZC(a,b,c){a=a|0;b=b|0;c=c|0;jF(a,b,c);return}function _C(a,b,c){a=a|0;b=b|0;c=c|0;iF(a,b,c);return}function $C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;ME(e,b,8,c);PE(a,b,e,c,c);Ec=d;return}function aD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;IE(e,b,8,c);LE(a,b,e,c,c);Ec=d;return}function bD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;EE(e,b,8,c);HE(a,b,e,c,c);Ec=d;return}function cD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;zE(e,b,4,c);CE(a,b,e,c,c);Ec=d;return}function dD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;uE(e,b,8,c);xE(a,b,e,c,c);Ec=d;return}function eD(a,b,c){a=a|0;b=b|0;c=c|0;hF(a,b,c,c);return}function fD(a,b,c){a=a|0;b=b|0;c=c|0;gF(a,b,c,c);return}function gD(a,b,c){a=a|0;b=b|0;c=c|0;fF(a,b,c,c);return}function hD(a,b,c){a=a|0;b=b|0;c=c|0;eF(a,b,c,c);return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;dF(a,b,c,c);return}function jD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;ME(e,b,8,c);PE(a,b+2|0,e,c,c);Ec=d;return}function kD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;IE(e,b,8,c);LE(a,b+2|0,e,c,c);Ec=d;return}function lD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;EE(e,b,8,c);HE(a,b+2|0,e,c,c);Ec=d;return}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;zE(e,b,4,c);CE(a,b+1|0,e,c,c);Ec=d;return}function nD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+32|0;e=d;uE(e,b,8,c);xE(a,b+2|0,e,c,c);Ec=d;return}function oD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;NE(g,b+(0-(c<<1))|0,c);OE(e,f,8);PE(a,f,e,c,8);Ec=d;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;JE(g,b+(0-(c<<1))|0,c);KE(e,f,8);LE(a,f,e,c,8);Ec=d;return}function qD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;FE(g,b+(0-(c<<1))|0,c);GE(e,f,8);HE(a,f,e,c,8);Ec=d;return}function rD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+64|0;g=d+16|0;e=d;f=g+8|0;AE(g,b+(0-(c<<1))|0,c);BE(e,f,4);CE(a,f,e,c,4);Ec=d;return}function sD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+112|0;g=d+32|0;e=d;f=g+16|0;vE(g,b+(0-(c<<1))|0,c);wE(e,f,8);xE(a,f,e,c,8);Ec=d;return}function tD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b,8,c);NE(g,b+(0-(c<<1))|0,c);OE(e,g+16|0,8);PE(a,f,e,c,8);Ec=d;return}function uD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b,8,c);JE(g,b+(0-(c<<1))|0,c);KE(e,g+16|0,8);LE(a,f,e,c,8);Ec=d;return}function vD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b,8,c);FE(g,b+(0-(c<<1))|0,c);GE(e,g+16|0,8);HE(a,f,e,c,8);Ec=d;return}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b,4,c);AE(g,b+(0-(c<<1))|0,c);BE(e,g+8|0,4);CE(a,f,e,c,4);Ec=d;return}function xD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b,8,c);vE(g,b+(0-(c<<1))|0,c);wE(e,g+16|0,8);xE(a,f,e,c,8);Ec=d;return}function yD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;ME(f,b,8,c);UE(e,d,b,8,c);PE(a,f,e,c,8);Ec=d;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;IE(f,b,8,c);TE(e,d,b,8,c);LE(a,f,e,c,8);Ec=d;return}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;EE(f,b,8,c);SE(e,d,b,8,c);HE(a,f,e,c,8);Ec=d;return}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+88|0;e=d+72|0;zE(f,b,4,c);RE(e,d,b,4,c);CE(a,f,e,c,4);Ec=d;return}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;uE(f,b,8,c);QE(e,d,b,8,c);xE(a,f,e,c,8);Ec=d;return}function DD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b,8,c);NE(g,b+(0-(c<<1))+2|0,c);OE(e,g+16|0,8);PE(a,f,e,c,8);Ec=d;return}function ED(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b,8,c);JE(g,b+(0-(c<<1))+2|0,c);KE(e,g+16|0,8);LE(a,f,e,c,8);Ec=d;return}function FD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b,8,c);FE(g,b+(0-(c<<1))+2|0,c);GE(e,g+16|0,8);HE(a,f,e,c,8);Ec=d;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b,4,c);AE(g,b+(0-(c<<1))+1|0,c);BE(e,g+8|0,4);CE(a,f,e,c,4);Ec=d;return}function HD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b,8,c);vE(g,b+(0-(c<<1))+2|0,c);wE(e,g+16|0,8);xE(a,f,e,c,8);Ec=d;return}function ID(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;NE(e,b+(0-(c<<1))|0,c);cF(a,e+16|0,c);Ec=d;return}function JD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;JE(e,b+(0-(c<<1))|0,c);bF(a,e+16|0,c);Ec=d;return}function KD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;FE(e,b+(0-(c<<1))|0,c);aF(a,e+16|0,c);Ec=d;return}function LD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+48|0;e=d;AE(e,b+(0-(c<<1))|0,c);$E(a,e+8|0,c);Ec=d;return}function MD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Ec;Ec=Ec+80|0;e=d;vE(e,b+(0-(c<<1))|0,c);_E(a,e+16|0,c);Ec=d;return}function ND(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;NE(g,b+(0-(c<<1))|0,c);OE(f,g+16|0,8);UE(e,d,b,8,c);PE(a,f,e,c,8);Ec=d;return}function OD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;JE(g,b+(0-(c<<1))|0,c);KE(f,g+16|0,8);TE(e,d,b,8,c);LE(a,f,e,c,8);Ec=d;return}function PD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;FE(g,b+(0-(c<<1))|0,c);GE(f,g+16|0,8);SE(e,d,b,8,c);HE(a,f,e,c,8);Ec=d;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+104|0;f=d+88|0;e=d+72|0;AE(g,b+(0-(c<<1))|0,c);BE(f,g+8|0,4);RE(e,d,b,4,c);CE(a,f,e,c,4);Ec=d;return}function RD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;vE(g,b+(0-(c<<1))|0,c);wE(f,g+16|0,8);QE(e,d,b,8,c);xE(a,f,e,c,8);Ec=d;return}function SD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+288|0;ZE(a,d,b,c,c);Ec=d;return}function TD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+288|0;YE(a,d,b,c,c);Ec=d;return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+144|0;XE(a,d,b,c,c);Ec=d;return}function VD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+80|0;WE(a,d,b,c,c);Ec=d;return}function WD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+144|0;VE(a,d,b,c,c);Ec=d;return}function XD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;NE(g,b+(0-(c<<1))+2|0,c);OE(f,g+16|0,8);UE(e,d,b,8,c);PE(a,f,e,c,8);Ec=d;return}function YD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+432|0;g=d+352|0;f=d+320|0;e=d+288|0;JE(g,b+(0-(c<<1))+2|0,c);KE(f,g+16|0,8);TE(e,d,b,8,c);LE(a,f,e,c,8);Ec=d;return}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;FE(g,b+(0-(c<<1))+2|0,c);GE(f,g+16|0,8);SE(e,d,b,8,c);HE(a,f,e,c,8);Ec=d;return}function _D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+104|0;f=d+88|0;e=d+72|0;AE(g,b+(0-(c<<1))+1|0,c);BE(f,g+8|0,4);RE(e,d,b,4,c);CE(a,f,e,c,4);Ec=d;return}function $D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+288|0;g=d+208|0;f=d+176|0;e=d+144|0;vE(g,b+(0-(c<<1))+2|0,c);wE(f,g+16|0,8);QE(e,d,b,8,c);xE(a,f,e,c,8);Ec=d;return}function aE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;NE(f,b+(0-(c<<1))|0,c);OE(e,f+16|0,8);PE(a,f+24|0,e,c,8);Ec=d;return}function bE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;JE(f,b+(0-(c<<1))|0,c);KE(e,f+16|0,8);LE(a,f+24|0,e,c,8);Ec=d;return}function cE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;FE(f,b+(0-(c<<1))|0,c);GE(e,f+16|0,8);HE(a,f+24|0,e,c,8);Ec=d;return}function dE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+64|0;f=d+16|0;e=d;AE(f,b+(0-(c<<1))|0,c);BE(e,f+8|0,4);CE(a,f+12|0,e,c,4);Ec=d;return}function eE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+32|0;e=d;vE(f,b+(0-(c<<1))|0,c);wE(e,f+16|0,8);xE(a,f+24|0,e,c,8);Ec=d;return}function fE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b+c|0,8,c);NE(g,b+(0-(c<<1))|0,c);OE(e,g+16|0,8);PE(a,f,e,c,8);Ec=d;return}function gE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b+c|0,8,c);JE(g,b+(0-(c<<1))|0,c);KE(e,g+16|0,8);LE(a,f,e,c,8);Ec=d;return}function hE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b+c|0,8,c);FE(g,b+(0-(c<<1))|0,c);GE(e,g+16|0,8);HE(a,f,e,c,8);Ec=d;return}function iE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b+c|0,4,c);AE(g,b+(0-(c<<1))|0,c);BE(e,g+8|0,4);CE(a,f,e,c,4);Ec=d;return}function jE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b+c|0,8,c);vE(g,b+(0-(c<<1))|0,c);wE(e,g+16|0,8);xE(a,f,e,c,8);Ec=d;return}function kE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;ME(f,b+c|0,8,c);UE(e,d,b,8,c);PE(a,f,e,c,8);Ec=d;return}function lE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+352|0;f=d+320|0;e=d+288|0;IE(f,b+c|0,8,c);TE(e,d,b,8,c);LE(a,f,e,c,8);Ec=d;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;EE(f,b+c|0,8,c);SE(e,d,b,8,c);HE(a,f,e,c,8);Ec=d;return}function nE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+112|0;f=d+88|0;e=d+72|0;zE(f,b+c|0,4,c);RE(e,d,b,4,c);CE(a,f,e,c,4);Ec=d;return}function oE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Ec;Ec=Ec+208|0;f=d+176|0;e=d+144|0;uE(f,b+c|0,8,c);QE(e,d,b,8,c);xE(a,f,e,c,8);Ec=d;return}function pE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;ME(f,b+c|0,8,c);NE(g,b+(0-(c<<1))+2|0,c);OE(e,g+16|0,8);PE(a,f,e,c,8);Ec=d;return}function qE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;IE(f,b+c|0,8,c);JE(g,b+(0-(c<<1))+2|0,c);KE(e,g+16|0,8);LE(a,f,e,c,8);Ec=d;return}function rE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;EE(f,b+c|0,8,c);FE(g,b+(0-(c<<1))+2|0,c);GE(e,g+16|0,8);HE(a,f,e,c,8);Ec=d;return}function sE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+80|0;g=d+32|0;f=d+16|0;e=d;zE(f,b+c|0,4,c);AE(g,b+(0-(c<<1))+1|0,c);BE(e,g+8|0,4);CE(a,f,e,c,4);Ec=d;return}function tE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Ec;Ec=Ec+144|0;g=d+64|0;f=d+32|0;e=d;uE(f,b+c|0,8,c);vE(g,b+(0-(c<<1))+2|0,c);wE(e,g+16|0,8);xE(a,f,e,c,8);Ec=d;return}function uE(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function vE(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function wE(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<512?p:0-p>>31&511;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<512?o:0-o>>31&511;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function xE(a,b,e,f,g){a=a|0;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;h=0;while(1){if((h|0)==4)break;n=b+(H(h,g)|0)|0;o=n;n=n+4|0;k=e+(h<<3)|0;m=k;k=k+4|0;i=a+(H(h,f)|0)|0;j=i;l=c[j>>2]|0;j=c[j+4>>2]|0;k=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;k=yE(l,j,k,M()|0)|0;j=M()|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function yE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=rW(c^a|0,d^b|0,1)|0;d=iW(c|a|0,d|b|0,e&2147450879|0,(M()|0)&2147450879|0)|0;L(M()|0);return d|0}function zE(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=0;while(1){if((g|0)==4)break;i=c+1|0;l=c+-1|0;h=c+2|0;m=H((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+3|0;m=(((d[i>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[j>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[j>>0]|0)+(d[c>>0]|0)|0,-5)|0;k=c+4|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+5|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[l>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=H((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+6>>0]|0)>>5;a[b+3>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function AE(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==9)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function BE(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;p=d[c+-4>>0]|0;o=d[c>>0]|0;n=d[c+4>>0]|0;i=d[c+8>>0]|0;k=d[c+12>>0]|0;l=d[c+16>>0]|0;j=d[c+20>>0]|0;m=d[c+24>>0]|0;q=(d[c+-8>>0]|0)+16+k+((n+o|0)*20|0)+(H(i+p|0,-5)|0)>>5;a[b>>0]=q>>>0>255?(q^-2147483648)>>31:q;p=p+16+l+((i+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;a[b+e>>0]=p>>>0>255?(p^-2147483648)>>31:p;o=o+16+j+((k+i|0)*20|0)+(H(l+n|0,-5)|0)>>5;a[b+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;i=n+16+m+((l+k|0)*20|0)+(H(j+i|0,-5)|0)>>5;a[b+h>>0]=i>>>0>255?(i^-2147483648)>>31:i;f=f+1|0;b=b+1|0;c=c+1|0}return}function CE(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(H(h,g)|0)|0;j=e+(h<<2)|0;i=a+(H(h,f)|0)|0;l=c[i>>2]|0;c[i>>2]=DE(l,DE(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0)|0;h=h+1|0}return}function DE(a,b){a=a|0;b=b|0;return (b|a)-((b^a)>>>1&2139062143)|0}function EE(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function FE(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function GE(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<1024?q:0-q>>31&1023;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<1024?p:0-p>>31&1023;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function HE(a,b,e,f,g){a=a|0;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;h=0;while(1){if((h|0)==4)break;n=b+(H(h,g)|0)|0;o=n;n=n+4|0;k=e+(h<<3)|0;m=k;k=k+4|0;i=a+(H(h,f)|0)|0;j=i;l=c[j>>2]|0;j=c[j+4>>2]|0;k=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;k=yE(l,j,k,M()|0)|0;j=M()|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function IE(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function JE(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function KE(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<4096?q:0-q>>31&4095;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<4096?o:0-o>>31&4095;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function LE(a,b,e,f,g){a=a|0;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;h=0;while(1){if((h|0)==4)break;n=b+(H(h,g)|0)|0;o=n;n=n+4|0;k=e+(h<<3)|0;m=k;k=k+4|0;i=a+(H(h,f)|0)|0;j=i;l=c[j>>2]|0;j=c[j+4>>2]|0;k=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;k=yE(l,j,k,M()|0)|0;j=M()|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function ME(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function NE(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function OE(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<16384?q:0-q>>31&16383;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<16384?o:0-o>>31&16383;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function PE(a,b,e,f,g){a=a|0;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;h=0;while(1){if((h|0)==4)break;n=b+(H(h,g)|0)|0;o=n;n=n+4|0;k=e+(h<<3)|0;m=k;k=k+4|0;i=a+(H(h,f)|0)|0;j=i;l=c[j>>2]|0;j=c[j+4>>2]|0;k=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;k=yE(l,j,k,M()|0)|0;j=M()|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function QE(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,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=H((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=H((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;p=b[g+-16>>1]|0;f=b[g>>1]|0;c=b[g+16>>1]|0;o=b[g+32>>1]|0;m=b[g+48>>1]|0;l=b[g+64>>1]|0;n=b[g+80>>1]|0;k=b[g+96>>1]|0;q=(b[g+-32>>1]|0)+512+m+((c+f|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+512+l+((o+c|0)*20|0)+(H(m+f|0,-5)|0)>>10;b[a+(i<<1)>>1]=p>>>0<512?p:0-p>>31&511;f=f+512+n+((m+o|0)*20|0)+(H(l+c|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<512?f:0-f>>31&511;o=c+512+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<512?o:0-o>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function RE(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;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=H((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=H((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=H((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=H((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;q=b[f+-8>>1]|0;e=b[f>>1]|0;k=b[f+8>>1]|0;p=b[f+16>>1]|0;n=b[f+24>>1]|0;m=b[f+32>>1]|0;o=b[f+40>>1]|0;l=b[f+48>>1]|0;r=(b[f+-16>>1]|0)+512+n+((k+e|0)*20|0)+(H(p+q|0,-5)|0)>>10;a[c>>0]=r>>>0>255?(r^-2147483648)>>31:r;q=q+512+m+((p+k|0)*20|0)+(H(n+e|0,-5)|0)>>10;a[c+g>>0]=q>>>0>255?(q^-2147483648)>>31:q;e=e+512+o+((n+p|0)*20|0)+(H(m+k|0,-5)|0)>>10;a[c+j>>0]=e>>>0>255?(e^-2147483648)>>31:e;p=k+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;a[c+h>>0]=p>>>0>255?(p^-2147483648)>>31:p;c=c+1|0;f=f+2|0;i=i+1|0}return}function SE(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,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=H((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=H((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;r=b[g+-16>>1]|0;p=b[g>>1]|0;q=p+10230|0;c=b[g+16>>1]|0;f=c+10230|0;o=(b[g+32>>1]|0)+10230|0;m=(b[g+48>>1]|0)+10230|0;l=(b[g+64>>1]|0)+10230|0;n=(b[g+80>>1]|0)+10230|0;k=b[g+96>>1]|0;s=(b[g+-32>>1]|0)+10742+m+((f+q|0)*20|0)+(H(o+(r+10230)|0,-5)|0)>>10;b[a>>1]=s>>>0<1024?s:0-s>>31&1023;q=r+10742+l+((o+f|0)*20|0)+(H(m+q|0,-5)|0)>>10;b[a+(i<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;f=p+10742+n+((m+o|0)*20|0)+(H(l+f|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<1024?f:0-f>>31&1023;o=c+20972+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function TE(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,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=H(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=H(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(H(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<4096?r:0-r>>31&4095;g=g+512+n+((q+l|0)*20|0)+(H(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<4096?g:0-g>>31&4095;d=d+512+p+((o+q|0)*20|0)+(H(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;q=l+512+m+((n+o|0)*20|0)+(H(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function UE(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,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=H(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=H(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(H(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<16384?r:0-r>>31&16383;g=g+512+n+((q+l|0)*20|0)+(H(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<16384?g:0-g>>31&16383;d=d+512+p+((o+q|0)*20|0)+(H(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;q=l+512+m+((n+o|0)*20|0)+(H(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function VE(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,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=H((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=H((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;q=b[g+-16>>1]|0;p=b[g>>1]|0;f=b[g+16>>1]|0;n=b[g+32>>1]|0;l=b[g+48>>1]|0;k=b[g+64>>1]|0;m=b[g+80>>1]|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+512+l+((f+p|0)*20|0)+(H(n+q|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<512?o:0-o>>31&511)|0)>>>1;o=a+(i<<1)|0;q=q+512+k+((n+f|0)*20|0)+(H(l+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;o=a+(d<<1)|0;p=p+512+m+((l+n|0)*20|0)+(H(k+f|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;o=a+(j<<1)|0;n=f+512+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function WE(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;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=H((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=H((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=H((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=H((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;r=b[f+-8>>1]|0;q=b[f>>1]|0;e=b[f+8>>1]|0;o=b[f+16>>1]|0;m=b[f+24>>1]|0;l=b[f+32>>1]|0;n=b[f+40>>1]|0;k=b[f+48>>1]|0;p=(b[f+-16>>1]|0)+512+m+((e+q|0)*20|0)+(H(o+r|0,-5)|0)>>10;a[c>>0]=((d[c>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;p=c+g|0;r=r+512+l+((o+e|0)*20|0)+(H(m+q|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((r>>>0>255?(r^-2147483648)>>31:r)&255)|0)>>>1;p=c+j|0;q=q+512+n+((m+o|0)*20|0)+(H(l+e|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;p=c+h|0;o=e+512+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((o>>>0>255?(o^-2147483648)>>31:o)&255)|0)>>>1;c=c+1|0;f=f+2|0;i=i+1|0}return}
function $c(){Oe();xS();QU()}function ad(a){a=a|0;var b=0;b=Ec;Ec=Ec+a|0;Ec=Ec+15&-16;return b|0}function bd(){return Ec|0}function cd(a){a=a|0;Ec=a}function dd(a,b){a=a|0;b=b|0;Ec=a;Fc=b}function ed(){pb();return 0}function fd(a){a=a|0;var b=0;sa(9584,9592,9608,0,120081,13,120084,0,120084,0,119434,173982,30);b=VU(8)|0;c[b>>2]=8;c[b+4>>2]=0;ua(9584,119442,3,58728,120086,1,b|0,0);b=VU(8)|0;c[b>>2]=9;c[b+4>>2]=0;ua(9584,119448,3,58740,120086,2,b|0,0);b=VU(8)|0;c[b>>2]=31;c[b+4>>2]=0;ua(9584,119455,2,58752,120091,10,b|0,0);b=VU(8)|0;c[b>>2]=32;c[b+4>>2]=0;ua(9584,119462,2,58752,120091,10,b|0,0);b=VU(8)|0;c[b>>2]=11;c[b+4>>2]=0;a=VU(8)|0;c[a>>2]=12;c[a+4>>2]=0;va(9584,119480,9552,120095,5,b|0,9552,120086,3,a|0);a=VU(8)|0;c[a>>2]=13;c[a+4>>2]=0;b=VU(8)|0;c[b>>2]=14;c[b+4>>2]=0;va(9584,119490,9552,120095,5,a|0,9552,120086,3,b|0);b=VU(8)|0;c[b>>2]=15;c[b+4>>2]=0;a=VU(8)|0;c[a>>2]=16;c[a+4>>2]=0;va(9584,119498,9552,120095,5,b|0,9552,120086,3,a|0);a=VU(8)|0;c[a>>2]=17;c[a+4>>2]=0;b=VU(8)|0;c[b>>2]=18;c[b+4>>2]=0;va(9584,119510,9552,120095,5,a|0,9552,120086,3,b|0);b=VU(8)|0;c[b>>2]=19;c[b+4>>2]=0;a=VU(8)|0;c[a>>2]=20;c[a+4>>2]=0;va(9584,119522,9552,120095,5,b|0,9552,120086,3,a|0);a=VU(8)|0;c[a>>2]=21;c[a+4>>2]=0;va(9584,119526,9552,120095,5,a|0,0,0,0,0);sa(9664,9680,9696,9584,120081,14,120081,15,120081,16,119537,173982,33);a=VU(4)|0;c[a>>2]=34;ua(9664,120099,2,58760,120091,22,a|0,0);ta(9584,120119,3,58768,120242,8,6);ta(9584,120129,3,58916,120242,9,4);return}function gd(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.0;o=Ec;Ec=Ec+16|0;n=o+8|0;m=o;e=b+22844|0;l=b+4|0;if(a[e>>0]|0){f=c[l>>2]|0;if((a[181088]|0)==0?bW(181088)|0:0)c[45292]=Ma(1,58640)|0;Ja(c[45292]|0,f|0,119547,m|0)}a[e>>0]=1;g=c[l>>2]|0;j=Ra(119553)|0;g=Na(g|0,j|0)|0;Ka(j|0);p=+Ga(g|0,58528,m|0);Ua(c[m>>2]|0);j=p!=0.0;Ka(g|0);c[n>>2]=119561;c[n+4>>2]=j?119570:119575;gb(0,n|0);a[b+22772>>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=oT(f,46,g)|0;if(!f){g=h;break a}if(!(ZS(f,119581,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+22845>>0]=(e-i|0)!=-1&(g|0)!=(h|0)&1;h=La(119586)|0;e=a[j>>0]|0;if(e<<24>>24<0){f=c[k>>2]|0;g=zU(f+4|0)|0;c[g>>2]=f;e=c[d>>2]|0}else{f=e&255;g=zU(f+4|0)|0;c[g>>2]=f;e=d}wW(g+4|0,e|0,f|0)|0;c[n>>2]=g;c[m>>2]=Qa(h|0,1,58644,n|0)|0;Ka(h|0);wd(m,119596,119607);xd(n,b,119448);k=c[m>>2]|0;d=Ra(119619)|0;Va(k|0,d|0,c[n>>2]|0);Ka(d|0);Ka(c[n>>2]|0);c[b+22836>>2]=bb()|0;b=c[l>>2]|0;n=Ra(119629)|0;Va(b|0,n|0,c[m>>2]|0);Ka(n|0);Ka(c[m>>2]|0);Ec=o;return}function hd(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,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=Ec;Ec=Ec+112|0;j=H+24|0;D=H+16|0;E=H;G=H+96|0;B=H+80|0;C=H+64|0;l=H+48|0;m=H+32|0;f=c[e>>2]|0;F=Ra(119757)|0;c[E>>2]=Na(f|0,F|0)|0;Ka(F|0);Ad(G,E);Ka(c[E>>2]|0);F=G+11|0;f=a[F>>0]|0;k=G+4|0;e=b+22840|0;c[e>>2]=(c[e>>2]|0)+(f<<24>>24<0?c[k>>2]|0:f&255);f=bb()|0;h=b+22836|0;i=c[h>>2]|0;if((f|0)>(i|0)){g[b+22856>>3]=+(c[e>>2]|0)*1.0e3/+(f-i|0);c[h>>2]=f;c[e>>2]=0}a:do if(!(a[b+22845>>0]|0))switch(a[(iV(G,0)|0)>>0]|0){case 1:{h=a[F>>0]|0;e=c[k>>2]|0;i=VU(16)|0;c[i>>2]=c[G>>2];c[i+4>>2]=c[G+4>>2];c[i+8>>2]=c[G+8>>2];c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;j=i+12|0;c[j>>2]=1;k=i+11|0;if((a[k>>0]|0)<0)f=c[i>>2]|0;else f=i;E=d[f+3>>0]<<8|d[f+4>>0]|d[f+2>>0]<<16|d[f+1>>0]<<24;c[l+8>>2]=5;c[l+12>>2]=(h<<24>>24<0?e:h&255)+-5;e=l+4|0;c[e>>2]=i;c[j>>2]=2;c[l>>2]=58664;Cd(b,E,l);c[l>>2]=58680;e=c[e>>2]|0;E=e+12|0;b=(c[E>>2]|0)+-1|0;c[E>>2]=b;if(!((e|0)==0|(b|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}b=(c[j>>2]|0)+-1|0;c[j>>2]=b;if(b|0)break a;if((a[k>>0]|0)<0)WU(c[i>>2]|0);WU(i);break a}case 2:{h=a[F>>0]|0;e=c[k>>2]|0;i=VU(16)|0;c[i>>2]=c[G>>2];c[i+4>>2]=c[G+4>>2];c[i+8>>2]=c[G+8>>2];c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;j=i+12|0;c[j>>2]=1;k=i+11|0;if((a[k>>0]|0)<0)f=c[i>>2]|0;else f=i;E=d[f+3>>0]<<8|d[f+4>>0]|d[f+2>>0]<<16|d[f+1>>0]<<24;c[m+8>>2]=5;c[m+12>>2]=(h<<24>>24<0?e:h&255)+-5;e=m+4|0;c[e>>2]=i;c[j>>2]=2;c[m>>2]=58664;Dd(b,E,m);c[m>>2]=58680;e=c[e>>2]|0;E=e+12|0;b=(c[E>>2]|0)+-1|0;c[E>>2]=b;if(!((e|0)==0|(b|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}b=(c[j>>2]|0)+-1|0;c[j>>2]=b;if(b|0)break a;if((a[k>>0]|0)<0)WU(c[i>>2]|0);WU(i);break a}case 10:{e=c[b+4>>2]|0;f=Ra(119629)|0;e=Na(e|0,f|0)|0;Ka(f|0);f=Ra(119783)|0;h=f;if((a[181136]|0)==0?bW(181136)|0:0)c[45298]=Ma(2,58716)|0;b=c[45298]|0;Oa(f|0);c[E>>2]=h;Ja(b|0,e|0,119778,E|0);Ka(f|0);Ka(e|0);break a}default:{b=a[(iV(G,0)|0)>>0]|0;c[j>>2]=119799;c[j+4>>2]=b;gb(1,j|0);break a}}else{l=a[F>>0]|0;l=l<<24>>24<0?c[k>>2]|0:l&255;y=b+16|0;e=c[y>>2]|0;f=a[e+11>>0]|0;h=f<<24>>24<0;if(h)i=(c[e+8>>2]&2147483647)+-1|0;else i=10;z=b+20|0;j=c[z>>2]|0;A=b+24|0;k=c[A>>2]|0;if(l>>>0>(i-j-k|0)>>>0){if(h){h=c[e+8>>2]&2147483647;f=1-h|0;h=h+-1|0}else{f=-10;h=10}fV(e,j+l+k+f+h|0,0);e=c[y>>2]|0;f=a[e+11>>0]|0}if(f<<24>>24<0)e=c[e>>2]|0;wW(e+(c[z>>2]|0)+(c[A>>2]|0)|0,((a[F>>0]|0)<0?c[G>>2]|0:G)|0,l|0)|0;f=(c[A>>2]|0)+l|0;c[A>>2]=f;e=b+8|0;if(!(a[e>>0]|0)){if((f|0)<=12)break;a[e>>0]=1;c[z>>2]=(c[z>>2]|0)+13;c[A>>2]=f+-13;break}b:do if((f|0)>3){s=B+8|0;t=B+12|0;u=B+4|0;v=C+8|0;w=C+12|0;x=C+4|0;while(1){q=c[y>>2]|0;r=q+11|0;if((a[r>>0]|0)<0)e=c[q>>2]|0;else e=q;i=c[z>>2]|0;p=a[e+i>>0]|0;e=i+1|0;c[z>>2]=e;c[A>>2]=f+-1;if((a[r>>0]|0)<0)h=c[q>>2]|0;else h=q;o=h+e+2|0;m=a[o>>0]|0;l=a[o+-1>>0]|0;o=a[o+-2>>0]|0;e=i+4|0;c[z>>2]=e;n=f+-4|0;c[A>>2]=n;o=(l&255)<<8|m&255|(o&255)<<16;if(n>>>0<(o+11|0)>>>0)break;if((a[r>>0]|0)<0)h=c[q>>2]|0;else h=q;k=h+e+2|0;k=d[k+-1>>0]<<8|d[k>>0]|d[k+-2>>0]<<16;j=i+11|0;c[z>>2]=j;c[A>>2]=f+-11;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;l=VU(16)|0;c[l>>2]=c[E>>2];c[l+4>>2]=c[E+4>>2];c[l+8>>2]=c[E+8>>2];m=l+12|0;c[m>>2]=1;i=q+12|0;c[i>>2]=(c[i>>2]|0)+1;n=l+11|0;e=a[n>>0]|0;f=e<<24>>24<0;if(f)h=(c[l+8>>2]&2147483647)+-1|0;else h=10;if(o>>>0>h>>>0){if(f){f=c[l+8>>2]&2147483647;e=1-f|0;f=f+-1|0}else{e=-10;f=10}fV(l,e+o+f|0,0);e=a[n>>0]|0}if(e<<24>>24<0)f=c[l>>2]|0;else f=l;if((a[r>>0]|0)<0)e=c[q>>2]|0;else e=q;wW(f|0,e+j|0,o|0)|0;j=(c[i>>2]|0)+-1|0;c[i>>2]=j;if(!j){if((a[r>>0]|0)<0)WU(c[q>>2]|0);WU(q)}c:do switch(p<<24>>24){case 8:{c[s>>2]=0;c[t>>2]=o;c[u>>2]=l;c[m>>2]=(c[m>>2]|0)+1;c[B>>2]=58664;Cd(b,k,B);c[B>>2]=58680;e=c[u>>2]|0;q=e+12|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if((e|0)==0|(r|0)!=0)break c;if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e);break}case 9:{c[v>>2]=0;c[w>>2]=o;c[x>>2]=l;c[m>>2]=(c[m>>2]|0)+1;c[C>>2]=58664;Dd(b,k,C);c[C>>2]=58680;e=c[x>>2]|0;q=e+12|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if((e|0)==0|(r|0)!=0)break c;if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e);break}default:{c[D>>2]=119762;c[D+4>>2]=p&255;gb(0,D|0)}}while(0);f=(c[A>>2]|0)-o|0;c[z>>2]=(c[z>>2]|0)+o+4;f=f+-4|0;c[A>>2]=f;r=(c[m>>2]|0)+-1|0;c[m>>2]=r;if(!r){if((a[n>>0]|0)<0)WU(c[l>>2]|0);WU(l);f=c[A>>2]|0}if((f|0)<=3)break b}c[z>>2]=i;c[A>>2]=f}while(0);e=c[y>>2]|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;xW(e|0,e+(c[z>>2]|0)|0,f|0)|0;fV(c[y>>2]|0,c[A>>2]|0,0);c[z>>2]=0}while(0);if((a[F>>0]|0)>=0){Ec=H;return}WU(c[G>>2]|0);Ec=H;return}function id(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Ec;Ec=Ec+32|0;i=l;g=La(120022)|0;j=b+22828|0;c[i>>2]=c[j>>2];Ka(Ha(g|0,1,58724,i|0)|0);Ka(g|0);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;g=b+22800|0;Xd(g);Wd(g);e=c[b+22804>>2]|0;f=b+22808|0;d=c[f>>2]|0;if((d|0)!=(e|0))c[f>>2]=d+(~((d+-4-e|0)>>>2)<<2);Yd(g);f=i+4|0;h=i+8|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[b+22816>>2]=0;c[b+22820>>2]=0;c[i+20>>2]=0;c[i+16>>2]=0;Xd(i);d=c[f>>2]|0;e=c[h>>2]|0;if((d|0)!=(e|0)){do{WU(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[i>>2]|0;if(d|0)WU(d);c[b+22748>>2]=0;c[b+22752>>2]=0;if((a[b+22772>>0]|0)==0?(k=c[b+22744>>2]|0,k|0):0)AU(k);IR(c[b+22784>>2]|0);FR(b+22788|0);c[j>>2]=0;a[b+22832>>0]=1;a[b+22833>>0]=1;a[b+22824>>0]=0;c[b+20>>2]=0;c[b+24>>2]=0;a[b+8>>0]=0;Ec=l;return}function jd(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;p=Ec;Ec=Ec+16|0;e=p+4|0;j=p;k=b+22820|0;a:do if(c[k>>2]|0){l=b+22804|0;m=b+22816|0;n=b+4|0;o=b+22852|0;f=b+22736|0;g=b+22800|0;d=0;while(1){q=c[m>>2]|0;i=(q>>>0)/204|0;h=c[(c[l>>2]|0)+(i<<2)>>2]|0;i=q-(i*204|0)|0;if(d?(c[e>>2]=c[h+(i*20|0)>>2],q=Md(c[n>>2]|0,120013,e)|0,q=(c[o>>2]|0)+q|0,c[j>>2]=q,(q|0)>0):0)break;Ld(f,h+(i*20|0)+4|0);_d(g);if(!(c[k>>2]|0))break a;else d=1}a[b+22824>>0]=1;c[b+22828>>2]=Nd(c[n>>2]|0,119997,j)|0;Ec=p;return}while(0);a[b+22824>>0]=0;Ec=p;return}function kd(a,b){a=a|0;b=b|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;c[f>>2]=d[b+22844>>0];c[a>>2]=Wa(58528,f|0)|0;Ec=e;return}function ld(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=Ec;Ec=Ec+16|0;g=e;f=+Ga(c[d>>2]|0,58528,g|0);Ua(c[g>>2]|0);a[b+22844>>0]=f!=0.0&1;Ec=e;return}function md(a,b){a=a|0;b=b|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;c[f>>2]=d[b+22845>>0];c[a>>2]=Wa(58528,f|0)|0;Ec=e;return}function nd(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=Ec;Ec=Ec+16|0;g=e;f=+Ga(c[d>>2]|0,58528,g|0);Ua(c[g>>2]|0);a[b+22845>>0]=f!=0.0&1;Ec=e;return}function od(a,b){a=a|0;b=b|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;c[e>>2]=c[b+22848>>2];c[a>>2]=Wa(58576,e|0)|0;Ec=d;return}function pd(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=Ec;Ec=Ec+16|0;f=d;e=+Ga(c[b>>2]|0,58576,f|0);Ua(c[f>>2]|0);c[a+22848>>2]=~~e;Ec=d;return}function qd(a,b){a=a|0;b=b|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;c[e>>2]=c[b+22852>>2];c[a>>2]=Wa(58576,e|0)|0;Ec=d;return}function rd(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=Ec;Ec=Ec+16|0;f=d;e=+Ga(c[b>>2]|0,58576,f|0);Ua(c[f>>2]|0);c[a+22852>>2]=~~e;Ec=d;return}function sd(a,b){a=a|0;b=b|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;g[e>>3]=+g[b+22856>>3];c[a>>2]=Wa(58616,e|0)|0;Ec=d;return}function td(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=Ec;Ec=Ec+16|0;f=d;e=+Ga(c[b>>2]|0,58616,f|0);Ua(c[f>>2]|0);g[a+22856>>3]=e;Ec=d;return}function ud(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=Ec;Ec=Ec+16|0;e=d+4|0;f=d;c[e>>2]=Sa()|0;i=b+22804|0;h=b+22816|0;j=c[h>>2]|0;g=(j>>>0)/204|0;$d(e,120035,(c[(c[i>>2]|0)+(g<<2)>>2]|0)+((j-(g*204|0)|0)*20|0)|0);b=b+22820|0;h=(c[b>>2]|0)+-1+(c[h>>2]|0)|0;g=(h>>>0)/204|0;ae(e,120041,(c[(c[i>>2]|0)+(g<<2)>>2]|0)+((h-(g*204|0)|0)*20|0)|0);c[f>>2]=c[b>>2];be(e,120046,f);b=c[e>>2]|0;c[a>>2]=b;Oa(b|0);Ka(c[e>>2]|0);Ec=d;return}function vd(a){a=a|0;Ka(c[a>>2]|0);return}function wd(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Ra(b|0)|0;d=Ra(d|0)|0;Va(a|0,b|0,d|0);Ka(d|0);Ka(b|0);return}function xd(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=Ra(d|0)|0;d=Na(f|0,e|0)|0;Ka(e|0);zd(a,d,119733,b);Ka(d|0);return}function yd(a){a=a|0;ba(a|0)|0;GV()}function zd(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=Ec;Ec=Ec+16|0;g=i;h=i+8|0;if((a[181096]|0)==0?bW(181096)|0:0)c[45293]=Ma(2,58648)|0;k=c[45293]|0;Oa(c[f>>2]|0);c[g>>2]=c[f>>2];j=+Ia(k|0,d|0,e|0,h|0,g|0);h=c[h>>2]|0;c[b>>2]=~~j>>>0;Ua(h|0);Ec=i;return}function Ad(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0,j=0;h=Ec;Ec=Ec+16|0;e=h;i=+Ga(c[d>>2]|0,9528,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)$U(b);if(g>>>0<11){a[b+11>>0]=g;if(!g){f=b;g=f+g|0;a[g>>0]=0;Ua(e|0);Ec=h;return}else d=b}else{j=g+16&-16;d=VU(j)|0;c[b>>2]=d;c[b+8>>2]=j|-2147483648;c[b+4>>2]=g}wW(d|0,f|0,g|0)|0;j=d;j=j+g|0;a[j>>0]=0;Ua(e|0);Ec=h;return}function Bd(b){b=b|0;var d=0,e=0;c[b>>2]=58680;b=c[b+4>>2]|0;e=b+12|0;d=(c[e>>2]|0)+-1|0;c[e>>2]=d;if((b|0)==0|(d|0)!=0)return;if((a[b+11>>0]|0)<0)WU(c[b>>2]|0);WU(b);return}function Cd(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Ec;Ec=Ec+16|0;m=n;e=c[f+4>>2]|0;h=(a[e+11>>0]|0)<0;if(h)g=c[e>>2]|0;else g=e;i=f+8|0;j=c[i>>2]|0;if((a[g+j>>0]|0)==-1){if(h)g=c[e>>2]|0;else g=e;if((d[g+(j+1)>>0]|0)>239){if(h)e=c[e>>2]|0;h=e+j|0;g=f+12|0;e=c[b+4>>2]|0;if((a[181104]|0)==0?bW(181104)|0:0)c[45294]=Ma(3,58688)|0;b=c[45294]|0;c[m>>2]=h;c[m+8>>2]=c[g>>2];Ja(b|0,e|0,119899,m|0);Ec=n;return}}if(h)e=c[e>>2]|0;e=a[e+j>>0]|0;c[i>>2]=j+1;i=f+12|0;c[i>>2]=(c[i>>2]|0)+-1;e=e&255;i=e>>>4;g=b+22833|0;if(a[g>>0]|0){h=(e&1)+1|0;e=e>>>2;switch(e&3){case 1:{e=11025;break}case 2:{e=22050;break}case 3:{e=44100;break}default:e=e&3}switch(i&15){case 10:{e=b+28|0;if((i|0)==2?(l=c[b+36>>2]|0,k=b+32|0,l=Hd(e,f,l+(c[k>>2]|0)|0,l+(c[e>>2]|0)|0)|0,l|0):0){m=(c[k>>2]|0)+l|0;c[k>>2]=(m|0)==(c[e>>2]|0)?0:m}Gd(b,c[b+22848>>2]<<10,c[b+40>>2]|0,d[b+44>>0]|0);Ec=n;return}case 11:{Gd(b,16e3,16e3,h);break}case 2:{Gd(b,(c[b+22848>>2]|0)*576|0,e,h);break}default:{}}if(a[g>>0]|0){Ec=n;return}}h=b+28|0;if((i|0)!=2){Ec=n;return}e=c[b+36>>2]|0;g=b+32|0;e=Hd(h,f,e+(c[g>>2]|0)|0,e+(c[h>>2]|0)|0)|0;if(!e){Ec=n;return}l=(c[g>>2]|0)+e|0;f=(l|0)==(c[h>>2]|0);c[g>>2]=f?0:l;if(!f){Ec=n;return}e=c[b+4>>2]|0;if((a[181088]|0)==0?bW(181088)|0:0)c[45292]=Ma(1,58640)|0;Ja(c[45292]|0,e|0,119899,m|0);Ec=n;return}function Dd(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=Ec;Ec=Ec+32|0;k=o+8|0;n=o;l=o+16|0;m=o+12|0;c[m>>2]=d;j=b+22832|0;if(a[j>>0]|0){f=c[e+4>>2]|0;g=(a[f+11>>0]|0)<0;if(g)h=c[f>>2]|0;else h=f;i=c[e+8>>2]|0;if((a[h+i>>0]&-16)<<24>>24!=16){Ec=o;return}if(g)f=c[f>>2]|0;if(a[f+(i+1)>>0]|0){Ec=o;return}Ld(b+22736|0,e);a[j>>0]=0;c[k>>2]=119945;gb(0,k|0);Ec=o;return}f=c[e+4>>2]|0;g=(a[f+11>>0]|0)<0;if(g)h=c[f>>2]|0;else h=f;i=(c[e+8>>2]|0)+1|0;if((a[h+i>>0]|0)!=1){if(g)f=c[f>>2]|0;if(a[f+i>>0]|0){f=c[b+4>>2]|0;if((a[181088]|0)==0?bW(181088)|0:0)c[45292]=Ma(1,58640)|0;Ja(c[45292]|0,f|0,119961,n|0);Ec=o;return}}if(!d){Ec=o;return}g=b+22852|0;a:do if(c[g>>2]|0){h=b+22824|0;do if(!(a[h>>0]|0)){c[n>>2]=d;f=b+4|0;n=Md(c[f>>2]|0,120013,n)|0;n=(c[g>>2]|0)+n|0;c[l>>2]=n;if((n|0)>0){a[h>>0]=1;c[b+22828>>2]=Nd(c[f>>2]|0,119997,l)|0;break}else break a}while(0);Od(b+22800|0,m,e);Ec=o;return}while(0);Ld(b+22736|0,e);Ec=o;return}function Ed(b){b=b|0;var d=0,e=0,f=0;c[b>>2]=58680;d=c[b+4>>2]|0;f=d+12|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if((d|0)==0|(e|0)!=0){WU(b);return}if((a[d+11>>0]|0)<0)WU(c[d>>2]|0);WU(d);WU(b);return}function Fd(b){b=b|0;var d=0,e=0,f=0;c[b>>2]=58680;d=c[b+4>>2]|0;f=d+12|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if((d|0)==0|(e|0)!=0){WU(b);return}if((a[d+11>>0]|0)<0)WU(c[d>>2]|0);WU(d);WU(b);return}function Gd(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=Ec;Ec=Ec+32|0;h=i;a[b+22833>>0]=0;j=H(d<<1,f)|0;c[b+28>>2]=j;g=b+36|0;c[g>>2]=zU(j)|0;c[h>>2]=119919;c[h+4>>2]=j;gb(0,h|0);g=c[g>>2]>>1;b=c[b+4>>2]|0;if((a[181112]|0)==0?bW(181112)|0:0)c[45295]=Ma(5,16)|0;j=c[45295]|0;c[h>>2]=d;c[h+8>>2]=e;c[h+16>>2]=f;c[h+24>>2]=g;Ja(j|0,b|0,119909,h|0);Ec=i;return}function Hd(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+20|0;q=c[e+12>>2]|0;n=d+22680|0;h=c[n>>2]|0;i=a[h+11>>0]|0;j=i<<24>>24<0;if(j)k=(c[h+8>>2]&2147483647)+-1|0;else k=10;o=d+22684|0;l=c[o>>2]|0;p=d+22688|0;m=c[p>>2]|0;if(q>>>0>(k-l-m|0)>>>0){if(j){j=c[h+8>>2]&2147483647;i=1-j|0;j=j+-1|0}else{i=-10;j=10}fV(h,l+q+m+i+j|0,0);h=c[n>>2]|0;i=a[h+11>>0]|0}if(i<<24>>24<0)h=c[h>>2]|0;i=c[e+4>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;wW(h+(c[o>>2]|0)+(c[p>>2]|0)|0,i+(c[e+8>>2]|0)|0,q|0)|0;c[p>>2]=(c[p>>2]|0)+q;if((Id(r)|0)==-1){r=0;return r|0}e=d+13456|0;o=d+13458|0;p=d+13460|0;n=d+18068|0;h=0;while(1){j=b[e>>1]|0;d=b[o>>1]|0;k=d&65535;h=(H((j&65535)<<1,k)|0)+h|0;i=k+-1|0;do if(d<<16>>16)if(j<<16>>16==2){m=k<<2;j=n;k=p;l=f;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=k<<1;j=p;k=f;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=25;break}if((Id(r)|0)==-1){f=25;break}}if((f|0)==25)return h|0;return 0}function Id(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;t=Ec;Ec=Ec+272|0;s=t+256|0;r=t;k=t+248|0;l=t+244|0;q=d+22660|0;e=c[q>>2]|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;p=d+22664|0;i=e+(c[p>>2]|0)|0;j=Jd(d,i)|0;if((j|0)==-1){s=-1;Ec=t;return s|0}e=c[p>>2]|0;c[p>>2]=e+j;o=d+22668|0;f=c[o>>2]|0;n=f-j|0;c[o>>2]=n;if(!n){c[p>>2]=e;c[o>>2]=f;s=-1;Ec=t;return s|0}e=d+9328|0;if((c[e>>2]|0)==0?(n=BU(1152,4)|0,c[e>>2]=n,(n|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?(u=d+28|0,n=c[u+4>>2]|0,m=r,c[m>>2]=c[u>>2],c[m+4>>2]=n,m=d+88|0,n=b[m>>1]|0,c[s>>2]=c[r>>2],c[s+4>>2]=c[r+4>>2],n=cS(s,(h&4096|0)==0?(f?136:256):f?72:136,n)|0,b[m>>1]=n,n<<16>>16!=(b[d+90>>1]|0)):0)?(c[d+108>>2]&1|0)==0:0)c[d+60>>2]=513}n=d+64|0;m=(c[e>>2]|0)==0?1:2;f=d+28|0;lS(f,m,c[g>>2]&4096,r,l,k)|0;c[g>>2]=c[g>>2]|c[k>>2];g=d+96|0;c[g>>2]=c[g>>2]|c[r+4>>2];g=$R(f)|0;f=j+i-g|0;e=c[q>>2]|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;ZR(s,e+(c[p>>2]|0)|0);e=bS(s,32)|0;if((e&-1703936|0)==-1966080){if(!(e&65536))aS(s,16);i=bS(s,e>>>19&1|8)|0}else i=0;l=d+22684|0;h=c[l>>2]|0;Kd(s,d+22672|0,g,f);e=c[s+4>>2]|0;j=d+22676|0;c[j>>2]=e;g=e+12|0;u=c[g>>2]|0;k=d+22680|0;c[k>>2]=c[s+8>>2];c[l>>2]=c[s+12>>2];c[s>>2]=58680;c[g>>2]=u;if(!((e|0)==0|(u|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}e=c[q>>2]|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;xW(e|0,e+(c[p>>2]|0)|0,c[o>>2]|0)|0;fV(c[q>>2]|0,c[o>>2]|0,0);c[p>>2]=0;f=c[l>>2]|0;e=c[r>>2]|0;if(f>>>0<i>>>0|h>>>0<e>>>0)e=-1;else{g=h-e|0;c[k>>2]=g;f=f-i-g|0;e=c[j>>2]|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;ZR(s,e+g|0);mS(s,n,r,m)|0;gS(d+9332|0,n);g=(c[k>>2]|0)+f|0;c[k>>2]=g;f=(c[l>>2]|0)-f|0;c[l>>2]=f;e=c[j>>2]|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;xW(e|0,e+g|0,f|0)|0;fV(c[j>>2]|0,c[l>>2]|0,0);c[k>>2]=0;e=0}u=e;Ec=t;return u|0}function Jd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+64|0;ZR(a+28|0,b);c[a+20>>2]=b;sS(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;tS(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((uS(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=H(e,b)|0;h=((h>>>0)/((c[g>>2]|0)>>>0)|0)+d|0;return h|0}function Kd(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;o=Ec;Ec=Ec+16|0;m=o;k=d+4|0;g=c[k>>2]|0;i=(a[g+11>>0]|0)<0;if(i)h=(c[g+8>>2]&2147483647)+-1|0;else h=10;n=d+8|0;j=c[n>>2]|0;l=d+12|0;d=c[l>>2]|0;if((h-j-d|0)>>>0<f>>>0){c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;fV(m,j+f+d|0,0);d=m+11|0;g=c[k>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;wW(((a[d>>0]|0)<0?c[m>>2]|0:m)|0,g|0,(c[l>>2]|0)+(c[n>>2]|0)|0)|0;wW(((a[d>>0]|0)<0?c[m>>2]|0:m)+(c[n>>2]|0)+(c[l>>2]|0)|0,e|0,f|0)|0;c[b>>2]=58680;c[b+8>>2]=0;f=a[d>>0]|0;c[b+12>>2]=f<<24>>24<0?c[m+4>>2]|0:f&255;f=VU(16)|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=1;c[b+4>>2]=f;Ec=o;return}else{if(i)g=c[g>>2]|0;wW(g+j+d|0,e|0,f|0)|0;f=(c[l>>2]|0)+f|0;c[b>>2]=58680;e=c[k>>2]|0;c[b+4>>2]=e;e=e+12|0;c[e>>2]=(c[e>>2]|0)+1;c[b+8>>2]=c[n>>2];c[b+12>>2]=f;Ec=o;return}}function Ld(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=Ec;Ec=Ec+16|0;h=l;e=c[d+4>>2]|0;i=e+11|0;g=(a[i>>0]|0)<0;if(g)f=c[e>>2]|0;else f=e;j=d+8|0;k=c[j>>2]|0;if((a[f+k>>0]&-16)<<24>>24==16){if(g)f=c[e>>2]|0;else f=e;if(!(a[f+(k+1)>>0]|0)){if(g)e=c[e>>2]|0;e=a[e+k>>0]|0;c[j>>2]=k+5;k=d+12|0;c[k>>2]=(c[k>>2]|0)+-5;switch(e&15){case 7:{Tc[c[(c[b>>2]|0)+12>>2]&255](b,d);Ec=l;return}case 12:{Tc[c[(c[b>>2]|0)+16>>2]&255](b,d);Ec=l;return}default:{c[h>>2]=119975;c[h+4>>2]=e&15;gb(0,h|0);Ec=l;return}}}}f=k+2|0;c[j>>2]=f;g=d+12|0;h=c[g>>2]|0;c[g>>2]=h+-2;if((a[i>>0]|0)<0)e=c[e>>2]|0;i=e+f+2|0;f=a[i>>0]|0;e=a[i+-1>>0]|0;i=a[i+-2>>0]|0;c[j>>2]=k+5;c[g>>2]=h+-5;c[b+40>>2]=(e&255)<<8|f&255|(i&255)<<16;Tc[c[(c[b>>2]|0)+24>>2]&255](b,d);Ec=l;return}function Md(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=Ec;Ec=Ec+16|0;f=h;g=h+8|0;if((a[181120]|0)==0?bW(181120)|0:0)c[45296]=Ma(2,58700)|0;j=c[45296]|0;c[f>>2]=c[e>>2];i=+Ia(j|0,b|0,d|0,g|0,f|0);Ua(c[g>>2]|0);Ec=h;return ~~i|0}function Nd(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=Ec;Ec=Ec+16|0;f=h;g=h+8|0;if((a[181128]|0)==0?bW(181128)|0:0)c[45297]=Ma(2,58708)|0;j=c[45297]|0;c[f>>2]=c[e>>2];i=+Ia(j|0,b|0,d|0,g|0,f|0);Ua(c[g>>2]|0);Ec=h;return ~~i|0}function Od(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;j=b+8|0;g=c[j>>2]|0;k=b+4|0;f=c[k>>2]|0;m=g-f|0;i=b+16|0;l=b+20|0;h=(c[l>>2]|0)+(c[i>>2]|0)|0;if((((m|0)==0?0:((m>>2)*204|0)+-1|0)|0)==(h|0)){Pd(b);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))g=0;else{g=(h>>>0)/204|0;g=(c[f+(g<<2)>>2]|0)+((h-(g*204|0)|0)*20|0)|0}j=c[e+8>>2]|0;k=c[e+12>>2]|0;f=c[e+4>>2]|0;e=f+12|0;m=(c[e>>2]|0)+1|0;c[g>>2]=c[d>>2];c[g+12>>2]=j;c[g+16>>2]=k;c[g+8>>2]=f;c[g+4>>2]=58664;c[e>>2]=m;if((f|0)==0|(m|0)!=0){m=c[l>>2]|0;m=m+1|0;c[l>>2]=m;return}if((a[f+11>>0]|0)<0)WU(c[f>>2]|0);WU(f);m=c[l>>2]|0;m=m+1|0;c[l>>2]=m;return}function Pd(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=Ec;Ec=Ec+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{xW(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=aa(8)|0;ZU(r,119814);c[r>>2]=114124;fa(r|0,58448,24)}else{h=VU(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){WU(d);b=c[p>>2]|0}}while(0);c[b>>2]=q;c[p>>2]=(c[p>>2]|0)+4;Ec=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=aa(8)|0;ZU(r,119814);c[r>>2]=114124;fa(r|0,58448,24)}else{d=VU(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]=VU(4080)|0;Sd(k,g);b=c[q>>2]|0;d=c[p>>2]|0;if((b|0)!=(d|0)){do{b=b+-4|0;Td(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)WU(f);Ec=r;return}if((d|0)!=(b|0)){c[k>>2]=VU(4080)|0;Qd(a,k);Ec=r;return}c[k>>2]=VU(4080)|0;Rd(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{xW(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=aa(8)|0;ZU(r,119814);c[r>>2]=114124;fa(r|0,58448,24)}else{h=VU(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){WU(d);b=c[q>>2]|0}}while(0);c[b>>2]=n;c[q>>2]=(c[q>>2]|0)+4;Ec=r;return}function Qd(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{xW(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=aa(8)|0;ZU(q,119814);c[q>>2]=114124;fa(q|0,58448,24)}else{i=VU(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){WU(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Rd(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{xW(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=aa(8)|0;ZU(q,119814);c[q>>2]=114124;fa(q|0,58448,24)}else{h=VU(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){WU(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 Sd(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{xW(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=aa(8)|0;ZU(q,119814);c[q>>2]=114124;fa(q|0,58448,24)}else{i=VU(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){WU(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Td(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{xW(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=aa(8)|0;ZU(q,119814);c[q>>2]=114124;fa(q|0,58448,24)}else{h=VU(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){WU(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 Ud(a){a=a|0;var b=0,d=0,e=0,f=0;Xd(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{WU(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;WU(b);return}function Vd(b){b=b|0;var d=0;c[b+12>>2]=0;c[b+16>>2]=0;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)AU(d);IR(c[b+48>>2]|0);FR(b+52|0);return}function Wd(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{WU(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;Yd(a);return}b=a+16|0;e=c[b>>2]|0;d=a+4|0;if(e>>>0>203){WU(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){Yd(a);return}WU(c[d+-4>>2]|0);c[b>>2]=(c[b>>2]|0)+-4;Yd(a);return}function Xd(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){c[d+4>>2]=58680;e=c[d+8>>2]|0;i=e+12|0;n=(c[i>>2]|0)+-1|0;c[i>>2]=n;if(!((e|0)==0|(n|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}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{WU(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 Yd(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=aa(8)|0;ZU(l,119814);c[l>>2]=114124;fa(l|0,58448,24)}else{g=VU(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;WU(b);return}function Zd(b){b=b|0;if(a[b+36>>0]|0)return;b=c[b+8>>2]|0;if(!b)return;AU(b);return}function _d(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=b+4|0;g=b+16|0;d=c[g>>2]|0;e=(d>>>0)/204|0;i=c[(c[f>>2]|0)+(e<<2)>>2]|0;e=d-(e*204|0)|0;c[i+(e*20|0)+4>>2]=58680;e=c[i+(e*20|0)+8>>2]|0;i=e+12|0;h=(c[i>>2]|0)+-1|0;c[i>>2]=h;if(!((e|0)==0|(h|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e);d=c[g>>2]|0}i=b+20|0;c[i>>2]=(c[i>>2]|0)+-1;i=d+1|0;c[g>>2]=i;if(i>>>0<=407)return;WU(c[c[f>>2]>>2]|0);c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=(c[g>>2]|0)+-204;return}function $d(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;a=c[a>>2]|0;b=Ra(b|0)|0;c[f>>2]=c[d>>2];d=Wa(58592,f|0)|0;Va(a|0,b|0,d|0);Ka(d|0);Ka(b|0);Ec=e;return}function ae(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;a=c[a>>2]|0;b=Ra(b|0)|0;c[f>>2]=c[d>>2];d=Wa(58592,f|0)|0;Va(a|0,b|0,d|0);Ka(d|0);Ka(b|0);Ec=e;return}function be(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;a=c[a>>2]|0;b=Ra(b|0)|0;c[f>>2]=c[d>>2];d=Wa(58600,f|0)|0;Va(a|0,b|0,d|0);Ka(d|0);Ka(b|0);Ec=e;return}function ce(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function de(a){a=a|0;if(!a)return;Sc[c[(c[a>>2]|0)+4>>2]&63](a);return}function ee(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+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)$U(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=VU(i)|0;c[h>>2]=b;c[h+8>>2]=i|-2147483648;c[h+4>>2]=e;i=9}if((i|0)==9)wW(b|0,d|0,e|0)|0;a[b+e>>0]=0;Tc[f&255](g,h);if((a[h+11>>0]|0)>=0){Ec=j;return}WU(c[h>>2]|0);Ec=j;return}function fe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Ec;Ec=Ec+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;Tc[e&255](a,f);Ka(c[f>>2]|0);Ec=g;return}function ge(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;Sc[e&63](a);return}else{e=c[(c[a>>2]|0)+d>>2]|0;Sc[e&63](a);return}}function he(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=Ec;Ec=Ec+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;Tc[d&255](e,a);Oa(c[e>>2]|0);g=c[e>>2]|0;Ka(g|0);Ec=f;return g|0}function ie(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Ec;Ec=Ec+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;Tc[e&255](a,f);Ka(c[f>>2]|0);Ec=g;return}function je(b,d){b=b|0;d=d|0;var e=0;e=VU(22872)|0;ue(e,d);a[e+22864>>0]=0;c[e+22868>>2]=c[b>>2];c[b>>2]=0;c[e>>2]=58788;return e|0}function ke(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=qa(((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0,9664,c[e>>2]|0)|0;return}function le(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function me(a){a=a|0;if(!a)return;Sc[c[(c[a>>2]|0)+4>>2]&63](a);return}function ne(a){a=a|0;return a|0}function oe(a){a=a|0;return a|0}function pe(a,b){a=a|0;b=b|0;Sc[c[a>>2]&63](b);return}function qe(b){b=b|0;a[b+22864>>0]=1;return}function re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=Ec;Ec=Ec+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=Mc[a&15](f,g)|0;Ka(c[g>>2]|0);Ka(c[f>>2]|0);Ec=e;return d|0}function se(b){b=b|0;var d=0,e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;e=g;c[b>>2]=58804;d=b+22868|0;if(!(a[b+22864>>0]|0)){f=c[d>>2]|0;Ka(f|0);ye(b);Ec=g;return}f=c[d>>2]|0;if((a[181088]|0)==0?bW(181088)|0:0)c[45292]=Ma(1,58640)|0;Ja(c[45292]|0,f|0,120432,e|0);f=c[d>>2]|0;Ka(f|0);ye(b);Ec=g;return}function te(a){a=a|0;se(a);WU(a);return}function ue(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=Ec;Ec=Ec+32|0;h=f+16|0;j=f;c[d>>2]=58820;g=d+4|0;c[g>>2]=c[e>>2];c[e>>2]=0;a[d+8>>0]=0;e=d+12|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[e>>2]=58680;c[d+20>>2]=0;c[d+24>>2]=0;i=VU(16)|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=1;c[d+16>>2]=i;c[e>>2]=58664;c[d+32>>2]=0;Ae(d+48|0);c[h>>2]=120247;c[h+4>>2]=d+28;gb(0,h|0);we(d+22736|0);e=d+22800|0;c[d+22828>>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+22832>>0]=1;a[d+22833>>0]=1;e=d+22836|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;c[d+22848>>2]=12;c[d+22740>>2]=g;Ec=f;return}function ve(a){a=a|0;se(a);WU(a);return}function we(b){b=b|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+32>>2]=0;a[b+36>>0]=0;c[b>>2]=58836;c[b+48>>2]=0;c[b+52>>2]=0;c[b+56>>2]=Fg()|0;c[b+60>>2]=NO()|0;c[e>>2]=120272;gb(0,e|0);Ec=d;return}function xe(a){a=a|0;var b=0,d=0,e=0;b=Ec;Ec=Ec+16|0;d=b+8|0;e=b;c[e>>2]=120364;gb(0,e|0);AU(c[a+8>>2]|0);c[d>>2]=120387;gb(0,d|0);Be(a+20|0);Ec=b;return}function ye(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Ec;Ec=Ec+32|0;j=k+24|0;i=k+16|0;g=k+8|0;d=k;c[b>>2]=58820;f=La(120022)|0;c[d>>2]=c[b+22828>>2];Ka(Ha(f|0,1,58724,d|0)|0);Ka(f|0);c[g>>2]=120411;gb(0,g|0);g=b+22800|0;Xd(g);f=b+22804|0;d=c[f>>2]|0;h=b+22808|0;e=c[h>>2]|0;if((d|0)!=(e|0)){do{WU(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)WU(d);Ce(b+22736|0);c[i>>2]=120364;gb(0,i|0);AU(c[b+36>>2]|0);c[j>>2]=120387;gb(0,j|0);Be(b+48|0);c[b+12>>2]=58680;d=c[b+16>>2]|0;i=d+12|0;j=(c[i>>2]|0)+-1|0;c[i>>2]=j;if((d|0)==0|(j|0)!=0){b=b+4|0;b=c[b>>2]|0;Ka(b|0);Ec=k;return}if((a[d+11>>0]|0)<0)WU(c[d>>2]|0);WU(d);b=b+4|0;b=c[b>>2]|0;Ka(b|0);Ec=k;return}function ze(a){a=a|0;ye(a);WU(a);return}function Ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=Ec;Ec=Ec+32|0;d=b+16|0;g=b;e=a+22656|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[e>>2]=58680;c[a+22664>>2]=0;c[a+22668>>2]=0;f=VU(16)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=1;c[a+22660>>2]=f;c[e>>2]=58664;e=a+22672|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[e>>2]=58680;c[a+22680>>2]=0;c[a+22684>>2]=0;f=VU(16)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=1;c[a+22676>>2]=f;c[e>>2]=58664;dS(a);eS(a+64|0);fS(a+9332|0);c[d>>2]=120262;gb(0,d|0);Ec=b;return}function Be(b){b=b|0;var d=0,e=0,f=0;hS(b+64|0);c[b+22672>>2]=58680;d=c[b+22676>>2]|0;f=d+12|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if(!((d|0)==0|(e|0)!=0)){if((a[d+11>>0]|0)<0)WU(c[d>>2]|0);WU(d)}c[b+22656>>2]=58680;b=c[b+22660>>2]|0;e=b+12|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if((b|0)==0|(f|0)!=0)return;if((a[b+11>>0]|0)<0)WU(c[b>>2]|0);WU(b);return}function Ce(b){b=b|0;var d=0,e=0,f=0,g=0;f=Ec;Ec=Ec+16|0;e=f+8|0;g=f;c[b>>2]=58836;c[g>>2]=120331;gb(0,g|0);Sc[c[(c[b>>2]|0)+8>>2]&63](b);Gg(b+56|0);xf(b+60|0);c[b>>2]=58876;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)AU(d);c[e>>2]=120307;gb(0,e|0);Ec=f;return}function De(a){a=a|0;Ce(a);WU(a);return}function Ee(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=b+52|0;if(c[e>>2]|0)Sc[c[(c[b>>2]|0)+8>>2]&63](b);g=LQ(27)|0;h=b+44|0;c[h>>2]=g;c[b+48>>2]=HR(c[g+12>>2]|0)|0;g=NQ(c[h>>2]|0)|0;c[e>>2]=g;f=c[d+12>>2]|0;e=g+72|0;c[e>>2]=f;f=zU(f)|0;c[g+68>>2]=f;b=c[d+4>>2]|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;wW(f|0,b+(c[d+8>>2]|0)|0,c[e>>2]|0)|0;TR(g,c[h>>2]|0,0)|0;return}function Fe(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;p=Ec;Ec=Ec+48|0;h=p+32|0;k=p+16|0;o=p;l=d+4|0;i=c[l>>2]|0;j=i+11|0;if((a[j>>0]|0)<0)e=c[i>>2]|0;else e=i;n=d+8|0;g=c[n>>2]|0;c[b+32>>2]=a[e+(g+22)>>0]&3;f=g+26|0;c[n>>2]=f;m=d+12|0;e=c[m>>2]|0;c[m>>2]=e+-26;if((a[j>>0]|0)<0)d=c[i>>2]|0;else d=i;f=d+f+1|0;d=a[f>>0]|0;f=a[f+-1>>0]|0;r=g+28|0;c[n>>2]=r;c[m>>2]=e+-28;g=c[(c[b>>2]|0)+28>>2]|0;d=(f&255)<<8|d&255;f=i+12|0;q=c[f>>2]|0;c[h+8>>2]=r;c[h+12>>2]=d;e=h+4|0;c[e>>2]=i;c[f>>2]=q+2;c[h>>2]=58664;Tc[g&255](b,h);c[h>>2]=58680;e=c[e>>2]|0;g=e+12|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(!((e|0)==0|(h|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}r=(c[f>>2]|0)+-1|0;c[f>>2]=r;if(!r){if((a[j>>0]|0)<0)WU(c[i>>2]|0);WU(i)}d=d+3|0;e=(c[n>>2]|0)+d|0;c[n>>2]=e;d=(c[m>>2]|0)-d|0;c[m>>2]=d;g=c[l>>2]|0;h=g+11|0;if((a[h>>0]|0)<0)f=c[g>>2]|0;else f=g;r=f+e+1|0;f=a[r>>0]|0;r=a[r+-1>>0]|0;e=e+2|0;c[n>>2]=e;c[m>>2]=d+-2;q=c[(c[b>>2]|0)+28>>2]|0;d=(r&255)<<8|f&255;f=g+12|0;r=c[f>>2]|0;c[k+8>>2]=e;c[k+12>>2]=d;e=k+4|0;c[e>>2]=g;c[f>>2]=r+2;c[k>>2]=58664;Tc[q&255](b,k);c[k>>2]=58680;e=c[e>>2]|0;q=e+12|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if(!((e|0)==0|(r|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}r=(c[f>>2]|0)+-1|0;c[f>>2]=r;if(!r){if((a[h>>0]|0)<0)WU(c[g>>2]|0);WU(g)}f=d+3|0;d=(c[n>>2]|0)+f|0;c[n>>2]=d;f=(c[m>>2]|0)-f|0;c[m>>2]=f;g=c[l>>2]|0;h=g+11|0;if((a[h>>0]|0)<0)e=c[g>>2]|0;else e=g;l=e+d+1|0;e=a[l>>0]|0;l=a[l+-1>>0]|0;k=d+2|0;c[n>>2]=k;c[m>>2]=f+-2;q=c[(c[b>>2]|0)+28>>2]|0;d=g+12|0;r=c[d>>2]|0;c[o+8>>2]=k;c[o+12>>2]=(l&255)<<8|e&255;e=o+4|0;c[e>>2]=g;c[d>>2]=r+2;c[o>>2]=58664;Tc[q&255](b,o);c[o>>2]=58680;e=c[e>>2]|0;q=e+12|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if(!((e|0)==0|(r|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}r=(c[d>>2]|0)+-1|0;c[d>>2]=r;if(r|0){Ec=p;return}if((a[h>>0]|0)<0)WU(c[g>>2]|0);WU(g);Ec=p;return}function Ge(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=Ec;Ec=Ec+16|0;g=e;h=c[(c[b>>2]|0)+28>>2]|0;c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];d=c[d+4>>2]|0;f=g+4|0;c[f>>2]=d;d=d+12|0;c[d>>2]=(c[d>>2]|0)+1;c[g>>2]=58664;Tc[h&255](b,g);c[g>>2]=58680;b=c[f>>2]|0;f=b+12|0;d=(c[f>>2]|0)+-1|0;c[f>>2]=d;if((b|0)==0|(d|0)!=0){Ec=e;return}if((a[b+11>>0]|0)<0)WU(c[b>>2]|0);WU(b);Ec=e;return}function He(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;y=Ec;Ec=Ec+32|0;w=y;e=c[d+4>>2]|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;v=c[b+60>>2]|0;c[v+24>>2]=e+(c[d+8>>2]|0);c[v+28>>2]=c[d+12>>2];l=b+52|0;if((uR(c[l>>2]|0,v)|0)<=-1){Ec=y;return}m=b+56|0;n=b+20|0;o=b+24|0;p=b+28|0;q=b+12|0;r=b+16|0;s=b+36|0;t=b+20|0;u=b+8|0;v=b+4|0;b=b+40|0;f=n>>2;g=w+8|0;h=w+16|0;i=w+8|0;j=w+16|0;a:while(1){k=DR(c[l>>2]|0,c[m>>2]|0)|0;if((k|0)<-11)switch(k|0){case -541478725:{x=25;break a}default:{}}else switch(k|0){case -11:{x=25;break a}default:{}}e=c[m>>2]|0;c[n>>2]=c[e>>2];c[o>>2]=c[e+4>>2];c[p>>2]=c[e+8>>2];d=c[e+68>>2]|0;if((c[q>>2]|0)==(d|0)){e=c[e+72>>2]|0;if((c[r>>2]|0)!=(e|0))x=10}else{e=c[e+72>>2]|0;x=10}do if((x|0)==10){x=0;c[q>>2]=d;c[r>>2]=e;if(!(a[s>>0]|0)){e=(H(e<<2,e)|0)+33554432|0;e=zU((e>>>0>16777216?e:16777216)+16777215&-16777216)|0;c[u>>2]=e;d=c[c[v>>2]>>2]|0;if((a[181144]|0)==0?bW(181144)|0:0)c[45299]=Ma(4,48)|0;z=c[45299]|0;c[w>>2]=c[q>>2];c[g>>2]=c[r>>2];c[h>>2]=e;Ja(z|0,d|0,120346,w|0);break}else{c[u>>2]=n;e=c[c[v>>2]>>2]|0;if((a[181144]|0)==0?bW(181144)|0:0)c[45299]=Ma(4,48)|0;z=c[45299]|0;c[w>>2]=c[q>>2];c[i>>2]=c[r>>2];c[j>>2]=f;Ja(z|0,e|0,120346,w|0);break}}while(0);if(!(a[s>>0]|0))Me(c[t>>2]|0,c[o>>2]|0,c[p>>2]|0,c[u>>2]|0,c[q>>2]|0,c[r>>2]|0);e=c[c[v>>2]>>2]|0;if((a[181152]|0)==0?bW(181152)|0:0)c[45300]=Ma(2,58908)|0;z=c[45300]|0;c[w>>2]=c[b>>2];Ja(z|0,e|0,120359,w|0);if((k|0)<=-1){x=25;break}}if((x|0)==25){Ec=y;return}}function Ie(b){b=b|0;var d=0,e=0,f=0;f=Ec;Ec=Ec+16|0;e=f;c[b>>2]=58876;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)AU(d);c[e>>2]=120307;gb(0,e|0);Ec=f;return}function Je(a){a=a|0;qb()}function Ke(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;p=Ec;Ec=Ec+32|0;j=p+16|0;o=p;k=d+4|0;l=c[k>>2]|0;i=l+11|0;if((a[i>>0]|0)<0)e=c[l>>2]|0;else e=l;n=d+8|0;g=c[n>>2]|0;c[b+32>>2]=a[e+(g+4)>>0]&3;f=g+6|0;c[n>>2]=f;m=d+12|0;d=c[m>>2]|0;c[m>>2]=d+-6;if((a[i>>0]|0)<0)e=c[l>>2]|0;else e=l;e=e+f+1|0;h=a[e>>0]|0;e=a[e+-1>>0]|0;f=g+8|0;c[n>>2]=f;g=d+-8|0;c[m>>2]=g;h=(e&255)<<8|h&255;if(!h)h=l;else{g=c[(c[b>>2]|0)+28>>2]|0;d=l+12|0;q=c[d>>2]|0;c[j+8>>2]=f;c[j+12>>2]=h;e=j+4|0;c[e>>2]=l;c[d>>2]=q+2;c[j>>2]=58664;Tc[g&255](b,j);c[j>>2]=58680;e=c[e>>2]|0;g=e+12|0;j=(c[g>>2]|0)+-1|0;c[g>>2]=j;if(!((e|0)==0|(j|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}q=(c[d>>2]|0)+-1|0;c[d>>2]=q;if(!q){if((a[i>>0]|0)<0)WU(c[l>>2]|0);WU(l)}f=(c[n>>2]|0)+h|0;c[n>>2]=f;g=(c[m>>2]|0)-h|0;c[m>>2]=g;h=c[k>>2]|0;i=h+11|0}e=f+1|0;c[n>>2]=e;c[m>>2]=g+-1;if((a[i>>0]|0)<0)d=c[h>>2]|0;else d=h;q=d+e+1|0;e=a[q>>0]|0;q=a[q+-1>>0]|0;f=f+3|0;c[n>>2]=f;c[m>>2]=g+-3;e=(q&255)<<8|e&255;if(!e){Ec=p;return}q=c[(c[b>>2]|0)+28>>2]|0;d=h+12|0;n=c[d>>2]|0;c[o+8>>2]=f;c[o+12>>2]=e;e=o+4|0;c[e>>2]=h;c[d>>2]=n+2;c[o>>2]=58664;Tc[q&255](b,o);c[o>>2]=58680;e=c[e>>2]|0;o=e+12|0;q=(c[o>>2]|0)+-1|0;c[o>>2]=q;if(!((e|0)==0|(q|0)!=0)){if((a[e+11>>0]|0)<0)WU(c[e>>2]|0);WU(e)}q=(c[d>>2]|0)+-1|0;c[d>>2]=q;if(q|0){Ec=p;return}if((a[i>>0]|0)<0)WU(c[h>>2]|0);WU(h);Ec=p;return}function Le(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;u=Ec;Ec=Ec+16|0;q=u;r=d+12|0;e=c[r>>2]|0;if((e|0)<=4){Ec=u;return}s=b+32|0;t=d+4|0;o=d+8|0;p=q+8|0;m=q+12|0;n=q+4|0;f=0;h=0;j=0;while(1){switch(c[s>>2]|0){case 3:{f=c[t>>2]|0;if((a[f+11>>0]|0)<0)d=c[f>>2]|0;else d=f;l=c[o>>2]|0;j=d+l+3|0;l=l+4|0;i=-4;d=j;k=a[j+-1>>0]|0;h=a[j+-2>>0]|0;j=a[j+-3>>0]|0;g=f;break}case 2:{f=c[t>>2]|0;if((a[f+11>>0]|0)<0)d=c[f>>2]|0;else d=f;l=c[o>>2]|0;h=d+l+2|0;l=l+3|0;i=-3;d=h;k=a[h+-1>>0]|0;h=a[h+-2>>0]|0;g=f;break}case 1:{f=c[t>>2]|0;if((a[f+11>>0]|0)<0)d=c[f>>2]|0;else d=f;l=c[o>>2]|0;k=d+l+1|0;l=l+2|0;i=-2;d=k;k=a[k+-1>>0]|0;g=f;break}default:{g=c[t>>2]|0;if((a[g+11>>0]|0)<0)d=c[g>>2]|0;else d=g;k=c[o>>2]|0;l=k+1|0;i=-1;d=d+k|0;k=f}}f=a[d>>0]|0;c[o>>2]=l;c[r>>2]=e+i;d=c[(c[b>>2]|0)+28>>2]|0;e=(k&255)<<8|f&255|(h&255)<<16|(j&255)<<24;f=g+12|0;i=c[f>>2]|0;c[p>>2]=l;c[m>>2]=e;c[n>>2]=g;c[f>>2]=i+2;c[q>>2]=58664;Tc[d&255](b,q);c[q>>2]=58680;d=c[n>>2]|0;i=d+12|0;l=(c[i>>2]|0)+-1|0;c[i>>2]=l;if(!((d|0)==0|(l|0)!=0)){if((a[d+11>>0]|0)<0)WU(c[d>>2]|0);WU(d)}l=(c[f>>2]|0)+-1|0;c[f>>2]=l;if(!((g|0)==0|(l|0)!=0)){if((a[g+11>>0]|0)<0)WU(c[g>>2]|0);WU(g)}c[o>>2]=(c[o>>2]|0)+e;e=(c[r>>2]|0)-e|0;c[r>>2]=e;if((e|0)<=4)break;else f=k}Ec=u;return}function Me(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0;E=g<<2;F=f+(H(E,h)|0)|0;if(!h)return;A=(g|0)==0;D=(g+-1|0)>>>1;B=(D<<3)+8|0;C=g+1&-2;D=D+1|0;j=0;z=0;k=0;i=0;l=0;while(1){if(!A){x=B+j|0;y=D+i|0;w=0;v=k;u=l;while(1){n=d[a+u>>0]|0;p=d[a+(u+g)>>0]|0;s=d[b+i>>0]|0;t=d[e+v>>0]|0;r=s<<8|t;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){J=(n*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;q=(G*1634|0)+J>>10;G=(H(m,-400)|0)+J+(H(G,-832)|0)>>10;J=(m*2066|0)+J>>10;m=(q|0)>0?q:0;n=(G|0)>0?G:0;I=(J|0)>0?J:0;m=((((J&255|0)==(J|0)?J:(I|0)<255?I:255)<<8)+16711680+((G&255|0)==(G|0)?G:(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=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){p=(p*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;J=(G*1634|0)+p>>10;G=(H(m,-400)|0)+p+(H(G,-832)|0)>>10;p=(m*2066|0)+p>>10;m=(J|0)>0?J:0;I=(G|0)>0?G:0;q=(p|0)>0?p:0;m=((((p&255|0)==(p|0)?p:(q|0)<255?q:255)<<8)+16711680+((G&255|0)==(G|0)?G:(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+E)>>2]=m;q=j+4|0;p=u+1|0;n=d[a+p>>0]|0;p=d[a+(p+g)>>0]|0;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){m=(n*1192|0)+-19072|0;G=t+-128|0;K=s+-128|0;J=m+(G*1634|0)>>10;G=(H(G,-832)|0)+(H(K,-400)|0)+m>>10;K=m+(K*2066|0)>>10;m=(J|0)>0?J:0;I=(G|0)>0?G:0;n=(K|0)>0?K:0;m=((((K&255|0)==(K|0)?K:(n|0)<255?n:255)<<8)+16711680+((G&255|0)==(G|0)?G:(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=F+(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=(H(I,-832)|0)+(H(t,-400)|0)+m>>10;t=m+(t*2066|0)>>10;m=(K|0)>0?K:0;J=(I|0)>0?I:0;G=(t|0)>0?t:0;m=((((t&255|0)==(t|0)?t:(G|0)<255?G: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+E)>>2]=m;w=w+2|0;if(w>>>0>=g>>>0)break;else{j=j+8|0;v=v+1|0;i=i+1|0;u=u+2|0}}l=C+l|0;j=x;k=D+k|0;i=y}z=z+2|0;if(z>>>0>=h>>>0)break;else{j=j+E|0;l=l+g|0}}return}function Ne(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=Ec;Ec=Ec+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)$U(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=VU(i)|0;c[j>>2]=d;c[j+8>>2]=i|-2147483648;c[j+4>>2]=g;i=6}if((i|0)==6)wW(d|0,f|0,g|0)|0;a[d+g>>0]=0;c[k>>2]=e;Uc[b&1023](h,j,k);Oa(c[h>>2]|0);d=c[h>>2]|0;Ka(d|0);Ka(c[k>>2]|0);if((a[j+11>>0]|0)>=0){Ec=l;return d|0}WU(c[j>>2]|0);Ec=l;return d|0}function Oe(){fd(0);return}function Pe(a){a=a|0;a=c[a>>2]|0;c[a+44>>2]=7;c[a+48>>2]=1;return 0}function Qe(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=Ec;Ec=Ec+16|0;q=u+8|0;r=u;o=u+4|0;c[q>>2]=g;c[r>>2]=h;s=c[a>>2]|0;p=s+84|0;j=s+88|0;k=s+48|0;l=s+96|0;m=s+44|0;n=s+4|0;i=0;g=c[p>>2]|0;a:while(1){if((g|0)>(h|0)){g=-100;break}if(g){if(!(c[l>>2]|0)){t=5;break}}else g=0;while(1){if((g|0)>=(h|0)){g=-100;break a}v=j;v=sW(c[v>>2]|0,c[v+4>>2]|0,8)|0;h=M()|0;v=v|(d[(c[q>>2]|0)+g>>0]|0);w=j;c[w>>2]=v;c[w+4>>2]=h;h=Pc[c[k>>2]&63](v,h,s,l,o)|0;if(h|0)break;g=g+1|0;h=c[r>>2]|0}if((h|0)<1){g=-100;break}w=j;c[w>>2]=0;c[w+4>>2]=0;g=g+1-(c[m>>2]|0)|0;c[p>>2]=h;if(c[o>>2]|0?((c[n>>2]|0)+g|0)>=1:0){i=1;break}g=h+g|0;c[p>>2]=g;i=1;h=c[r>>2]|0}if((t|0)==5)c[p>>2]=0;if((Ue(s,g,q,r)|0)>=0){c[e>>2]=c[q>>2];c[f>>2]=c[r>>2];h=c[s+100>>2]|0;if(h|0)c[b+16>>2]=h;if(i){if((c[b+16>>2]|0)!=86018){c[b+344>>2]=c[s+56>>2];c[b+348>>2]=c[s+52>>2];t=s+72|0;v=c[t+4>>2]|0;w=b+376|0;c[w>>2]=c[t>>2];c[w+4>>2]=v;c[a+304>>2]=c[s+64>>2];c[b+392>>2]=c[s+80>>2]}v=c[s+60>>2]|0;w=b+40|0;c[w>>2]=v;c[w+4>>2]=((v|0)<0)<<31>>31}}else{w=c[p>>2]|0;g=c[r>>2]|0;c[p>>2]=w-((w|0)>(g|0)?g:w);c[e>>2]=0;c[f>>2]=0}Ec=u;return g|0}function Re(a){a=a|0;Se(c[a>>2]|0);return}function Se(b){b=b|0;var c=0;c=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;Te(c);return}function Te(a){a=a|0;AU(a);return}function Ue(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;p=Ec;Ec=Ec+32|0;l=p+24|0;i=p+8|0;j=p;n=b+24|0;k=b+28|0;o=b+4|0;h=c[n>>2]|0;while(1){if((h|0)<=0)break;m=c[b>>2]|0;q=c[k>>2]|0;c[k>>2]=q+1;q=a[m+q>>0]|0;h=c[o>>2]|0;c[o>>2]=h+1;a[m+h>>0]=q;h=(c[n>>2]|0)+-1|0;c[n>>2]=h}e=(e|0)==-100&(c[g>>2]|0)==0?0:e;h=c[o>>2]|0;m=b+8|0;c[m>>2]=h;a:do if((e|0)==-100){e=Ve(c[b>>2]|0,b+12|0,(c[g>>2]|0)+64+h|0)|0;if(!e){c[j>>2]=(c[g>>2]|0)+64+(c[o>>2]|0);We(0,16,120955,j);e=-12;h=0}else{c[b>>2]=e;wW(e+(c[o>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;e=-1;h=(c[o>>2]|0)+(c[g>>2]|0)|0}c[o>>2]=h}else{if((e|0)<=-1?(c[b>>2]|0)==0:0){c[i>>2]=120997;c[i+4>>2]=121021;c[i+8>>2]=356;We(0,0,164054,i);Za()}h=h+e|0;c[k>>2]=h;c[g>>2]=h;h=c[o>>2]|0;if(h|0){i=e+64|0;h=Ve(c[b>>2]|0,b+12|0,i+h|0)|0;if(!h){c[l>>2]=i+(c[o>>2]|0);We(0,16,120955,l);c[o>>2]=0;c[k>>2]=0;e=-12;break}c[b>>2]=h;if((e|0)>-64){wW(h+(c[o>>2]|0)|0,c[f>>2]|0,i|0)|0;h=c[b>>2]|0}c[o>>2]=0;c[f>>2]=h}h=b+16|0;i=b+32|0;while(1){if((e|0)>=0){e=0;break a}f=(c[b>>2]|0)+((c[m>>2]|0)+e)|0;c[h>>2]=c[h>>2]<<8|(d[f>>0]|0);l=i;l=sW(c[l>>2]|0,c[l+4>>2]|0,8)|0;o=M()|0;q=i;c[q>>2]=l|(d[f>>0]|0);c[q+4>>2]=o;c[n>>2]=(c[n>>2]|0)+1;e=e+1|0}}while(0);Ec=p;return e|0}function Ve(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[b>>2]|0)>>>0<d>>>0){f=2147483647+-32|0;e=d+32+(d>>>4)|0;e=e>>>0>d>>>0?e:d;e=f>>>0>e>>>0?e:f;if(f>>>0<d>>>0){e=0;a=0}else{a=bf(a,e)|0;e=(a|0)==0?0:e}c[b>>2]=e}return a|0}function We(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=Ec;Ec=Ec+16|0;f=i;if(a){h=c[a>>2]|0;c[f>>2]=e;if(((h|0)!=0?(c[h+12>>2]|0)>3280641:0)?(g=c[h+16>>2]|0,(b|0)>7&(g|0)!=0):0)b=(c[a+g>>2]|0)+b|0}else c[f>>2]=e;Xe(a,b,d,f);Ec=i;return}function Xe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(4)Ye(a,b,c,d);return}function Ye(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;p=Ec;Ec=Ec+5168|0;n=p+24|0;m=p+16|0;h=p;o=p+40|0;k=p+4136|0;l=p+32|0;i=(d|0)>-1;j=i?d&255:d;i=i?d>>>8&255:0;if((j|0)<=32){JU(181204)|0;Ze(b,j,e,f,o,58976,l);e=o+1024|0;q=c[e>>2]|0;f=o+2048|0;b=c[f>>2]|0;g=o+3072|0;d=c[g>>2]|0;c[h>>2]=c[o>>2];c[h+4>>2]=q;c[h+8>>2]=b;c[h+12>>2]=d;VT(k,1024,121041,h)|0;d=c[45308]|0;if(!d){b=(yU(2)|0)!=0;b=b?1:-1;c[45308]=b}else b=d;if((!((c[14744]|0)==0|0==0)?(q=(YS(k,256260)|0)!=0,!(q|(a[k>>0]|0)==0)):0)?(a[k+((MT(k)|0)+-1)>>0]|0)!=13:0){d=(c[45309]|0)+1|0;c[45309]=d;if((b|0)==1){q=c[28439]|0;c[m>>2]=d;nU(q,121050,m)|0}}else{d=c[45309]|0;if((d|0)>0){q=c[28439]|0;c[n>>2]=d;nU(q,121086,n)|0;c[45309]=0}WT(256260,k)|0;_e(c[o>>2]|0);$e(c[l>>2]|0,0,c[o>>2]|0);_e(c[e>>2]|0);$e(c[l+4>>2]|0,0,c[e>>2]|0);_e(c[f>>2]|0);q=j>>3;q=(q|0)>0?((q|0)<7?q:7):0;$e(q,i,c[f>>2]|0);_e(c[g>>2]|0);$e(q,i,c[g>>2]|0)}af(o+3072|0,0)|0;KU(181204)|0}Ec=p;return}function Ze(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=Ec;Ec=Ec+32|0;r=w+24|0;t=w+16|0;s=w+8|0;q=w;if(!b)l=0;else l=c[b>>2]|0;ef(g,0,1);p=g+1024|0;ef(p,0,1);j=g+2048|0;ef(j,0,1);v=g+3072|0;ef(v,0,65536);k=(i|0)!=0;if(k){c[i+4>>2]=16;c[i>>2]=16}if((l|0)!=0&(c[h>>2]|0)!=0){m=c[l+20>>2]|0;do if(((m|0)!=0?(n=c[b+m>>2]|0,(n|0)!=0):0)?(o=c[n>>2]|0,(o|0)!=0):0){c[q>>2]=Kc[c[o+4>>2]&31](n)|0;c[q+4>>2]=n;ff(g,121277,q);if(k){c[i>>2]=gf(n)|0;u=11;break}else{c[t>>2]=Kc[c[l+4>>2]&31](b)|0;c[t+4>>2]=b;ff(p,121277,t);break}}else u=11;while(0);if((u|0)==11?(c[s>>2]=Kc[c[l+4>>2]&31](b)|0,c[s+4>>2]=b,ff(p,121277,s),k):0)c[i+4>>2]=gf(b)|0;if(0){c[r>>2]=hf(d)|0;ff(j,121288,r)}}jf(v,e,f);if(!((((a[c[g>>2]>>0]|0)==0?(a[c[p>>2]>>0]|0)==0:0)?(a[c[j>>2]>>0]|0)==0:0)?!(a[c[v>>2]>>0]|0):0)){b=c[g+3076>>2]|0;if((b|0)!=0?b>>>0<=(c[g+3080>>2]|0)>>>0:0)b=a[(c[v>>2]|0)+(b+-1)>>0]|0;else b=0;c[h>>2]=(b<<24>>24==10|b<<24>>24==13)&1}Ec=w;return}function _e(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24))break;if((c&255)<8|(c+-14&255)<18)a[b>>0]=63;b=b+1|0}return}function $e(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=Ec;Ec=Ec+48|0;j=k+32|0;i=k+16|0;h=k;do if(a[e>>0]|0){f=c[14745]|0;if((f|0)<0){df();f=c[14745]|0}g=(b|0)==4?0:f;if((g|0)==1){j=c[28439]|0;b=c[58984+(b<<2)>>2]|0;c[h>>2]=b>>>4&15;c[h+4>>2]=b&15;c[h+8>>2]=e;nU(j,121122,h)|0;break}if((d|0)!=0&(f|0)==256){j=c[28439]|0;c[i>>2]=(c[58984+(b<<2)>>2]|0)>>>16&255;c[i+4>>2]=d;c[i+8>>2]=e;nU(j,121138,i)|0;break}f=c[28439]|0;if((g|0)==256){b=c[58984+(b<<2)>>2]|0;c[j>>2]=b>>>16&255;c[j+4>>2]=b>>>8&255;c[j+8>>2]=e;nU(f,121165,j)|0;break}else{bU(e,f)|0;break}}while(0);Ec=k;return}function af(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=(c[a+4>>2]|0)+1|0;g=a+8|0;e=c[g>>2]|0;f=f>>>0>e>>>0?e:f;e=c[a>>2]|0;d=(e|0)!=(a+16|0);if(!b)if(d){Se(a);d=0}else d=0;else{if(!d){e=cf(f)|0;if(!e){d=-12;e=0}else{wW(e|0,c[a>>2]|0,f|0)|0;d=0}}else{e=bf(e,f)|0;if(!e)e=c[a>>2]|0;c[a>>2]=0;d=0}c[b>>2]=e}c[g>>2]=f;return d|0}function bf(a,b){a=a|0;b=b|0;if((2147483647+-32|0)>>>0<b>>>0)a=0;else a=CU(a,((b|0)==0&1)+b|0)|0;return a|0}function cf(a){a=a|0;var b=0,d=0;d=Ec;Ec=Ec+16|0;b=d;c[b>>2]=0;do if((2147483647+-32|0)>>>0>=a>>>0){if(!a){a=cf(1)|0;c[b>>2]=a;break}if(!(HU(b,16,a)|0)){a=c[b>>2]|0;break}else{c[b>>2]=0;a=0;break}}else a=0;while(0);Ec=d;return a|0}function df(){var a=0,b=0,d=0;a=mb(121192)|0;do if((mb(121197)|0)==0?(mb(121206)|0)==0:0){if(a|0?yU(2)|0:0){b=1;break}b=(mb(121227)|0)!=0&1}else b=0;while(0);c[14745]=b;if(!(mb(121246)|0)){if(a|0?oU(a,121268)|0:0)d=9}else d=9;if((d|0)==9)c[14745]=b<<8;return}function ef(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+16|0;g=(e|0)==1?1008:e;c[b>>2]=f;c[b+4>>2]=0;e=g>>>0<1008?g:1008;c[b+8>>2]=e;c[b+12>>2]=g;a[f>>0]=0;if(e>>>0<d>>>0)kf(b,d+-1|0)|0;return}function ff(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;k=Ec;Ec=Ec+16|0;f=k;g=a+8|0;h=a+4|0;while(1){i=c[g>>2]|0;e=c[h>>2]|0;i=i-(e>>>0>i>>>0?i:e)|0;if(!i)e=0;else e=(c[a>>2]|0)+e|0;c[f>>2]=d;e=aT(e,i,b,f)|0;if((e|0)<1)break;if(e>>>0<i>>>0){j=7;break}if(kf(a,e)|0){j=7;break}}if((j|0)==7)lf(a,e);Ec=k;return}function gf(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;do if(((b|0)!=0?(e=c[b+12>>2]|0,!((e|0)<3357440|(e&252)>>>0<100)):0)?(d=c[b+32>>2]|0,d>>>0<=45):0){b=c[b+36>>2]|0;if(!b){b=d+16|0;break}else{b=(Kc[b&31](a)|0)+16|0;break}}else b=16;while(0);return b|0}function hf(a){a=a|0;a=a+8|0;switch(a>>>3|a<<29|0){case 0:{a=121333;break}case 7:{a=169075;break}case 6:{a=121325;break}case 5:{a=121320;break}case 4:{a=121312;break}case 3:{a=121306;break}case 2:{a=121300;break}case 1:{a=121294;break}default:a=260868}return a|0}function jf(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;k=Ec;Ec=Ec+16|0;g=k;h=a+8|0;i=a+4|0;while(1){f=c[h>>2]|0;e=c[i>>2]|0;f=f-(e>>>0>f>>>0?f:e)|0;if(!f)e=0;else e=(c[a>>2]|0)+e|0;c[g>>2]=c[d>>2];e=aT(e,f,b,g)|0;if((e|0)<1)break;if(e>>>0<f>>>0){j=7;break}if(kf(a,e)|0){j=7;break}}if((j|0)==7)lf(a,e);Ec=k;return}function kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+8|0;d=c[f>>2]|0;e=c[a+12>>2]|0;if((d|0)!=(e|0))if(mf(a)|0){g=a+4|0;i=c[g>>2]|0;h=-2-i|0;h=i+1+(h>>>0>b>>>0?b:h)|0;b=d>>>0>e>>>1>>>0?e:d<<1;b=b>>>0<h>>>0?(e>>>0>h>>>0?h:e):b;d=c[a>>2]|0;d=(d|0)==(a+16|0)?0:d;e=bf(d,b)|0;if(!e)b=-12;else{if(!d)wW(e|0,c[a>>2]|0,(c[g>>2]|0)+1|0)|0;c[a>>2]=e;c[f>>2]=b;b=0}}else b=-1094995529;else b=-5;return b|0}function lf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=b+4|0;e=c[f>>2]|0;g=-6-e|0;e=(g>>>0<d>>>0?g:d)+e|0;c[f>>2]=e;f=c[b+8>>2]|0;d=f+-1|0;if(f|0)a[(c[b>>2]|0)+(e>>>0>d>>>0?d:e)>>0]=0;return}function mf(a){a=a|0;return (c[a+4>>2]|0)>>>0<(c[a+8>>2]|0)>>>0|0}function nf(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=Ec;Ec=Ec+112|0;j=i+92|0;h=i+72|0;k=i;l=of(a,b)|0;b=M()|0;a=k;c[a>>2]=l;c[a+4>>2]=b;pf(j,k+1|0);a=qf(j,h)|0;if((a|0)<0)a=0;else{c[f>>2]=0;c[g>>2]=1;c[e+56>>2]=c[h>>2];c[e+52>>2]=d[121339+(d[h+15>>0]|0)>>0];c[e+64>>2]=c[h+4>>2];c[e+60>>2]=c[h+8>>2]}Ec=i;return a|0}function of(a,b){a=a|0;b=b|0;a=uW(a|0)|0;b=uW(b|0)|0;L(a|0);return b|0}function pf(a,b){a=a|0;b=b|0;var d=0;d=(b|0)==0?0:56;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d>>>3);c[a+8>>2]=0;return}function qf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((rf(b,12)|0)==4095){sf(b);tf(b,2);g=uf(b)|0;h=rf(b,2)|0;i=rf(b,4)|0;j=c[59232+(i<<2)>>2]|0;if(j){sf(b);f=rf(b,3)|0;sf(b);sf(b);sf(b);sf(b);e=rf(b,13)|0;if((e|0)<7)e=-67308554;else{tf(b,11);b=rf(b,2)|0;a[d+13>>0]=h+1;a[d+15>>0]=f;a[d+12>>0]=g;h=b+1|0;a[d+16>>0]=h;a[d+14>>0]=i;c[d>>2]=j;i=h<<10;c[d+4>>2]=i;c[d+8>>2]=((H(e<<3,j)|0)>>>0)/(i>>>0)|0}}else e=-50531338}else e=-16976906;return e|0}function rf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function sf(a){a=a|0;tf(a,1);return}function tf(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function uf(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function vf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(g=c[a>>2]|0,g|0):0){b=g+4|0;d=c[b>>2]|0;e=c[d+24>>2]|0;if(e){Sc[e&63](g);d=c[b>>2]|0}b=g+12|0;if(c[d+8>>2]|0?(f=c[b>>2]|0,f|0):0)wf(f);wf(g);f=g+8|0;xf(c[f>>2]|0);Se(f);Se(b);yf(g+16|0);yf(g+20|0);Se(a)}return}function wf(a){a=a|0;var b=0;b=0;a:while(1){b=Ff(a,b)|0;if(!b)break;switch(c[b+12>>2]|0){case 7:case 5:{Se(a+(c[b+8>>2]|0)|0);continue a}case 8:{Gf(a+(c[b+8>>2]|0)|0);continue a}default:continue a}}return}function xf(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){Af(b);Se(a)}return}function yf(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){zf(b);Se(a)}return}function zf(a){a=a|0;var b=0,d=0;Se(a+12|0);b=a+8|0;d=b+128|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a>>2]=-1;c[a+4>>2]=0;c[a+20>>2]=-1;c[a+64>>2]=0;c[a+68>>2]=0;c[a+72>>2]=2;c[a+76>>2]=2;c[a+80>>2]=2;c[a+84>>2]=0;c[a+56>>2]=0;c[a+60>>2]=1;c[a+40>>2]=-99;c[a+44>>2]=-99;return}function Af(a){a=a|0;Bf(a);Cf(a);Df(a);c[a+24>>2]=0;c[a+28>>2]=0;return}function Bf(a){a=a|0;var b=0,d=0;d=a+44|0;b=a+40|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;Se((c[b>>2]|0)+(a*12|0)|0);a=a+1|0}Se(b);c[d>>2]=0;return}function Cf(a){a=a|0;if(a|0?c[a>>2]|0:0)Ef(a,0);return}function Df(a){a=a|0;var b=0;b=a+8|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+16|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+56|0;c[b>>2]=-1;c[b+4>>2]=-1;b=a+64|0;c[b>>2]=0;c[b+4>>2]=0;b=a+32|0;c[a>>2]=0;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}function Ef(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;d=g;e=c[a>>2]|0;f=c[e>>2]|0;c[d>>2]=f;if(!b)Se(a);else{a=c[b>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];Se(b)}e=f+8|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)==1){f=c[d>>2]|0;Tc[c[f+12>>2]&255](c[f+16>>2]|0,c[f>>2]|0);Se(d)}Ec=g;return}function Ff(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;do if(!a)d=0;else{a=c[a>>2]|0;e=(b|0)==0;if((e&(a|0)!=0?(f=c[a+8>>2]|0,f|0):0)?c[f>>2]|0:0){d=f;break}if(!e?(d=b+48|0,c[d>>2]|0):0)break;d=0}while(0);return d|0}function Gf(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(b|0){d=b+4|0;while(1){f=c[b>>2]|0;e=f+-1|0;c[b>>2]=e;if(!f)break;Se((c[d>>2]|0)+(e<<3)|0);Se((c[d>>2]|0)+(c[b>>2]<<3)+4|0)}Se(d)}Se(a);return}function Hf(a,b){a=a|0;b=b|0;return Mc[c[(c[a+4>>2]|0)+20>>2]&15](a,b)|0}function If(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;e=g;do if(b){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0){f=4;break}d=c[a+8>>2]|0;if(c[d+4>>2]|0){We(a,16,121347,e);a=-22;break}a=c[d>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){Jf(a,b);a=0}else a=-11}else f=4;while(0);if((f|0)==4){c[(c[a+8>>2]|0)+4>>2]=1;a=0}Ec=g;return a|0}function Jf(a,b){a=a|0;b=b|0;var d=0,e=0;d=b;e=a+72|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));Df(b);c[b+24>>2]=0;c[b+28>>2]=0;return}function Kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;zf(a);wW(a|0,b|0,136)|0;f=a+12|0;c[f>>2]=0;d=a+16|0;c[d>>2]=0;e=b+12|0;if(c[e>>2]|0){b=b+16|0;a=Of((c[b>>2]|0)+64|0)|0;c[f>>2]=a;if(!a)a=-12;else{f=c[b>>2]|0;wW(a|0,c[e>>2]|0,f|0)|0;c[d>>2]=f;a=0}}else a=0;return a|0}function Lf(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;n=Ec;Ec=Ec+32|0;k=n+24|0;j=n+16|0;i=n;l=a+4|0;e=c[(c[l>>2]|0)+4>>2]|0;g=a+16|0;a:do if(!e)m=13;else{f=c[(c[g>>2]|0)+4>>2]|0;b=0;while(1){d=c[e+(b<<2)>>2]|0;if(!d)break;if((f|0)==(d|0)){m=13;break a}else b=b+1|0}b=Mf(f)|0;if(!b)b=171103;else b=c[b+8>>2]|0;h=c[(c[g>>2]|0)+4>>2]|0;d=c[c[l>>2]>>2]|0;c[i>>2]=b;c[i+4>>2]=h;c[i+8>>2]=d;We(a,16,121385,i);d=0;while(1){b=c[(c[(c[l>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;if(!b)break;b=Mf(b)|0;if(!b)b=171103;else b=c[b+8>>2]|0;i=c[(c[(c[l>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;c[j>>2]=b;c[j+4>>2]=i;We(a,16,121471,j);d=d+1|0}We(a,16,132942,k);b=-22}while(0);do if((m|0)==13){b=Kf(c[a+20>>2]|0,c[g>>2]|0)|0;if((b|0)>=0){k=a+24|0;m=c[k+4>>2]|0;b=a+32|0;c[b>>2]=c[k>>2];c[b+4>>2]=m;b=c[(c[l>>2]|0)+16>>2]|0;if(b|0?(h=Kc[b&31](a)|0,(h|0)<0):0){b=h;break}b=0}}while(0);Ec=n;return b|0}function Mf(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+16|0;d=b;c[d>>2]=a;a=xU(d,59296,436,28,7)|0;Ec=b;return a|0}function Nf(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Of(a){a=a|0;var b=0;b=cf(a)|0;if(b|0)yW(b|0,0,a|0)|0;return b|0}function Pf(a){a=a|0;var b=0;b=c[a+24>>2]|0;if(c[c[a+28>>2]>>2]|0){yW(b|0,0,46324)|0;a=PM(a,b)|0;if((a|0)>=0){c[b+25692>>2]=0;a=0}}else a=0;return a|0}function Qf(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;s=Ec;Ec=Ec+16|0;l=s;q=c[a+24>>2]|0;r=c[b+24>>2]|0;k=q+25692|0;a:do if((a|0)!=(b|0)){j=(c[k>>2]|0)!=0;do if(j){if((((((((c[q+25668>>2]|0)==(c[r+25668>>2]|0)?(c[q+25672>>2]|0)==(c[r+25672>>2]|0):0)?(c[q+27012>>2]|0)==(c[r+27012>>2]|0):0)?(c[q+27008>>2]|0)==(c[r+27008>>2]|0):0)?(d=c[q+28216>>2]|0,d|0):0)?(e=c[r+28216>>2]|0,(c[d+1184>>2]|0)==(c[e+1184>>2]|0)):0)?(c[d+12>>2]|0)==(c[e+12>>2]|0):0)?(c[d+128>>2]|0)==(c[e+128>>2]|0):0){g=0;break}g=1}else g=0;while(0);h=q+25976|0;i=r+25976|0;wW(h|0,i|0,384)|0;a=0;while(1){if(a>>>0>=32){a=0;break}b=q+27052+(a<<2)|0;Cf(b);d=c[r+27052+(a<<2)>>2]|0;if(d|0?(n=Eg(d)|0,c[b>>2]=n,(n|0)==0):0){a=-12;break a}a=a+1|0}while(1){if(a>>>0>=256)break;b=q+27180+(a<<2)|0;Cf(b);d=c[r+27180+(a<<2)>>2]|0;if(d|0?(n=Eg(d)|0,c[b>>2]=n,(n|0)==0):0){a=-12;break a}a=a+1|0}b=q+28204|0;Cf(b);e=q+28208|0;Cf(e);d=q+28212|0;c[d>>2]=0;f=q+28216|0;c[f>>2]=0;a=c[r+28204>>2]|0;if(a|0){a=Eg(a)|0;c[b>>2]=a;if(!a){a=-12;break}c[d>>2]=c[a+4>>2]}a=c[r+28208>>2]|0;if(a|0){a=Eg(a)|0;c[e>>2]=a;if(!a){a=-12;break}c[f>>2]=c[a+4>>2]}if(j&(g|0)==0)a=0;else{c[q+25668>>2]=c[r+25668>>2];c[q+25672>>2]=c[r+25672>>2];c[q+27008>>2]=c[r+27008>>2];c[q+27012>>2]=c[r+27012>>2];c[q+27020>>2]=c[r+27020>>2];c[q+27016>>2]=c[r+27016>>2];c[q+26368>>2]=c[r+26368>>2];if((c[k>>2]|0)==0?(c[r+25692>>2]|0)==0:0)a=0;else{a=Jm(q)|0;if((a|0)<0){We(c[q+4>>2]|0,16,154969,l);break}}wW(h|0,i|0,384)|0}n=c[r+4>>2]|0;f=c[q+4>>2]|0;c[f+104>>2]=c[n+104>>2];c[f+100>>2]=c[n+100>>2];c[f+92>>2]=c[n+92>>2];c[f+96>>2]=c[n+96>>2];c[q+29664>>2]=c[r+29664>>2];c[q+29668>>2]=c[r+29668>>2];c[q+25688>>2]=c[r+25688>>2];c[q+26384>>2]=c[r+26384>>2];c[q+26380>>2]=c[r+26380>>2];c[q+26376>>2]=c[r+26376>>2];f=r+25684|0;n=q+25684|0;c[n>>2]=c[f>>2];b=0;while(1){if((b|0)>=36)break;d=q+696+(b*656|0)|0;Xf(q,d);e=r+696+(b*656|0)|0;if(c[(c[e>>2]|0)+248>>2]|0?(m=lh(q,d,e)|0,(m|0)<0):0){a=m;break a}b=b+1|0}b=c[r+24312>>2]|0;if((b|0)!=0?(o=r+696|0,b>>>0>=o>>>0&b>>>0<(r+24312|0)>>>0):0)b=q+696+(((b-o|0)/656|0)*656|0)|0;else b=0;m=q+24312|0;c[m>>2]=b;b=q+24316|0;Xf(q,b);d=r+24316|0;if(c[(c[d>>2]|0)+248>>2]|0?(p=lh(q,b,d)|0,(p|0)<0):0){a=p;break}c[q+29672>>2]=c[r+29672>>2];c[q+25700>>2]=c[r+25700>>2];c[q+25704>>2]=c[r+25704>>2];c[n>>2]=c[f>>2];c[q+27036>>2]=c[r+27036>>2];c[q+27040>>2]=c[r+27040>>2];b=q+28224|0;j=b;k=r+28224|0;l=j+44|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));d=q+28348|0;e=r+28348|0;j=d;k=e;l=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));f=q+28476|0;g=r+28476|0;j=f;k=g;l=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));h=q+28604|0;i=r+28604|0;j=h;k=i;l=j+72|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=q+28676|0;k=r+28676|0;l=j+64|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[q+28740>>2]=c[r+28740>>2];c[q+28744>>2]=c[r+28744>>2];wW(q+28748|0,r+28748|0,792)|0;c[q+29540>>2]=c[r+29540>>2];c[q+29544>>2]=c[r+29544>>2];c[q+29548>>2]=c[r+29548>>2];c[q+29552>>2]=c[r+29552>>2];c[q+29556>>2]=c[r+29556>>2];WM(d,e,32,q,r);WM(f,g,32,q,r);WM(h,i,18,q,r);c[q+29576>>2]=c[r+29576>>2];if(c[m>>2]|0){if(!(c[n>>2]|0)){a=Ah(q)|0;c[q+28248>>2]=c[q+28228>>2];c[q+28252>>2]=c[b>>2]}c[q+28260>>2]=c[q+28256>>2];c[q+28264>>2]=c[q+28244>>2];c[q+29572>>2]=c[r+29572>>2]}else a=0}else a=0;while(0);Ec=s;return a|0}function Rf(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;m=Ec;Ec=Ec+16|0;l=m+8|0;d=m;i=c[a+24>>2]|0;b=PM(a,i)|0;do if((b|0)>=0){if(PU(181920,3)|0){We(a,16,153085,d);b=-1313558101;break}f=a+84|0;do if((c[f>>2]|0)==1){b=c[i+4>>2]|0;d=b+80|0;e=c[d>>2]|0;if((e|0)<1073741823){c[d>>2]=e<<1;break}else{e=b+76|0;c[e>>2]=(c[e>>2]|0)/2|0;break}}while(0);c[f>>2]=2;b=c[a+72>>2]|0;if(((b|0)>0?(g=c[a+68>>2]|0,g|0):0)?(h=th(g,b,i+27052|0,i+27036|0,i+27040|0,c[a+580>>2]|0,a)|0,(h|0)<0):0){Tf(a)|0;b=h;break}b=c[i+28216>>2]|0;if((b|0?c[b+660>>2]|0:0)?(j=(c[i+4>>2]|0)+140|0,k=c[b+664>>2]|0,(c[j>>2]|0)<(k|0)):0)c[j>>2]=k;c[(c[a+28>>2]|0)+4>>2]=1;Vf(i);b=i+29672|0;d=c[b>>2]|0;if((d|0)<0){if(c[a+696>>2]&2|0){c[b>>2]=0;b=0;break}}else if(!d){b=0;break}if(!(c[a+696>>2]&2))b=0;else{We(a,24,153110,l);b=0}}while(0);Ec=m;return b|0}function Sf(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;u=Ec;Ec=Ec+48|0;t=u+24|0;o=u+16|0;n=u;l=u+36|0;m=c[g+24>>2]|0;h=c[g+28>>2]|0;q=c[b+24>>2]|0;c[q+25696>>2]=c[b+60>>2];c[q+29588>>2]=0;c[q+25636>>2]=0;r=q+24972|0;Xf(q,r);a:do if(h){i=q+27036|0;if((c[i>>2]|0?rh(g,1,0)|0:0)?(j=rh(g,1,l)|0,k=c[l>>2]|0,sh(j,k)|0):0)th(j,k,q+27052|0,i,q+27040|0,c[b+580>>2]|0,b)|0;if(((((((h|0)>8&(c[i>>2]|0)!=0?(a[m>>0]|0)==1:0)?(a[m+2>>0]|0)==0:0)?(d[m+4>>0]|0)>251:0)?a[m+5>>0]&31:0)?(a[m+8>>0]|0)==103:0)?sh(m,h)|0:0){h=th(m,h,q+27052|0,i,q+27040|0,c[b+580>>2]|0,b)|0;break}j=uh(q,m,h)|0;if((j|0)<0)h=-1094995529;else{i=(c[q+24312>>2]|0)==0;if(i?(c[q+27028>>2]|0)==10:0)if((j|0)>(h|0)){c[n>>2]=131475;c[n+4>>2]=131497;c[n+8>>2]=998;We(0,0,164054,n);Za()}else{h=qh(q,e,f,j)|0;break}do if(c[b+64>>2]&32768){o=c[q+27008>>2]|0;if(!((o|0)==0?1:(c[q+27004>>2]|0)<(o|0)))p=30}else{if(!i?c[q+27032>>2]|0:0){p=30;break}if((c[b+732>>2]|0)>7)break a;if((h|0)>3?(ZS(155186,m,4)|0)==0:0)break a;We(b,16,131518,o);h=-1094995529;break a}while(0);if((p|0)==30){i=vh(q,c[q+25628>>2]|0,0)|0;if((i|0)<0){h=i;break}i=c[q+28740>>2]|0;if(i|0?(s=wh(q,e,i,f)|0,(s|0)<0):0){h=s;break}}if((c[e+248>>2]|0)==0?c[f>>2]|0:0){c[t>>2]=131529;c[t+4>>2]=131497;c[t+8>>2]=1023;We(0,0,164054,t);Za()}Xf(q,r);h=xh(j,h)|0}}else h=qh(q,e,f,0)|0;while(0);Ec=u;return h|0}function Tf(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;jh(d);Yf(d);a=0;while(1){if((a|0)==36)break;b=d+696+(a*656|0)|0;Xf(d,b);Gg(b);a=a+1|0}a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[d+24312>>2]=0;Se(d+25628|0);c[d+25632>>2]=0;Wf(d+29676|0);oh(d+27052|0);ph(d+25640|0);b=d+24316|0;Xf(d,b);Gg(b);b=d+24972|0;Xf(d,b);Gg(b);return 0}function Uf(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));Vf(d);Wf(d+29676|0);a=0;while(1){if((a|0)==36)break;Xf(d,d+696+(a*656|0)|0);a=a+1|0}c[d+24312>>2]=0;Xf(d,d+24316|0);c[d+27004>>2]=0;Yf(d);c[d+25692>>2]=0;return}function Vf(a){a=a|0;var b=0,d=0,e=0,f=0;c[a+28744>>2]=-2147483648;c[a+29564>>2]=1;ih(a);c[a+28264>>2]=-1;f=a+24312|0;b=c[f>>2]|0;if(b|0){c[b+640>>2]=0;b=0;e=0;while(1){d=c[a+28604+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[f>>2]|0)){c[a+28604+(b<<2)>>2]=d;b=b+1|0}e=e+1|0}c[a+28604+(b<<2)>>2]=0}Xf(a,a+24972|0);c[a+26384>>2]=0;c[a+29572>>2]=-1;c[a+29576>>2]=0;c[a+29560>>2]=0;c[a+29544>>2]=1;return}function Wf(a){a=a|0;c[a+40>>2]=-1;c[a+12>>2]=0;c[a+16>>2]=-1;c[a>>2]=0;c[a+44>>2]=0;c[a+176>>2]=0;c[a+208>>2]=0;c[a+20>>2]=0;c[a+28>>2]=0;Se(a+32|0);return}function Xf(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(d|0?c[d+248>>2]|0:0){$f(c[a+4>>2]|0,b+4|0);Cf(b+52|0);d=b+20|0;Cf(d);Cf(b+44|0);a=0;while(1){if((a|0)==2)break;Cf(b+28+(a<<2)|0);Cf(b+60+(a<<2)|0);a=a+1|0}yW(d|0,0,636)|0}return}function Yf(a){a=a|0;var b=0,d=0,e=0;Se(a+25732|0);Se(a+26396|0);Se(a+26392|0);Se(a+26400|0);Se(a+26404|0);Se(a+26408|0);Se(a+25972|0);Se(a+28220|0);c[a+26372>>2]=0;Se(a+26388|0);Se(a+26360|0);Se(a+26364|0);Zf(a+29924|0);Zf(a+29928|0);Zf(a+29932|0);Zf(a+29936|0);d=a+25632|0;b=a+25628|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=c[b>>2]|0;Se(e+(a*34768|0)+27784|0);Se(e+(a*34768|0)+572|0);Se(e+(a*34768|0)+604|0);Se(e+(a*34768|0)+608|0);Se(e+(a*34768|0)+27788|0);Se(e+(a*34768|0)+27792|0);Se(e+(a*34768|0)+27796|0);Se(e+(a*34768|0)+27800|0);e=e+(a*34768|0)+27804|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a=a+1|0}return}function Zf(a){a=a|0;var b=0,d=0;if((a|0?(b=c[a>>2]|0,b|0):0)?(c[a>>2]=0,d=b+32|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a|0)==1):0)_f(b);return}function _f(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;f=g+4|0;e=g;c[f>>2]=a;while(1){b=a+28|0;d=c[b>>2]|0;if(!d)break;c[e>>2]=d;c[b>>2]=c[d+16>>2];Tc[c[d+8>>2]&255](c[d+4>>2]|0,c[d>>2]|0);Se(e);a=c[f>>2]|0}LU(a)|0;b=c[a+52>>2]|0;if(b|0)Sc[b&63](c[a+40>>2]|0);Se(f);Ec=g;return}function $f(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=Ec;Ec=Ec+16|0;e=i;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)d=(c[a+400>>2]|0)==10;else d=1;j=c[b>>2]|0;do if(j|0?c[j+248>>2]|0:0){if(c[a+576>>2]&32768|0){c[e>>2]=b;We(a,48,128928,e)}Cf(b+12|0);c[b+8>>2]=0;c[b+4>>2]=0;if(d){bg(c[b>>2]|0);break}a=(c[h>>2]|0)+8|0;JU(a)|0;d=h+308|0;e=(c[d>>2]|0)+1|0;if(e>>>0<=5263439?(f=h+304|0,g=Ve(c[f>>2]|0,h+312|0,e*408|0)|0,g|0):0){c[f>>2]=g;cg(g+((c[d>>2]|0)*408|0)|0,c[b>>2]|0);c[d>>2]=(c[d>>2]|0)+1}KU(a)|0}while(0);Ec=i;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;d=c[a+860>>2]|0;a:do if(!d){d=hg(a,b)|0;if((d|0)>=0)switch(c[a+8>>2]|0){case 0:{d=ig(a,b)|0;break a}case 1:{d=jg(a,b)|0;break a}default:{d=-1;break a}}}else{d=gg(d,b,0)|0;c[b+68>>2]=c[a+100>>2];c[b+72>>2]=c[a+104>>2]}while(0);return d|0}function bg(a){a=a|0;var b=0,d=0,e=0;if(a|0){eg(a);b=0;while(1){if((b|0)==8)break;Cf(a+248+(b<<2)|0);b=b+1|0}d=a+284|0;e=a+280|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Cf((c[e>>2]|0)+(b<<2)|0);b=b+1|0}Se(e);Gf(a+344|0);Cf(a+372|0);Cf(a+376|0);Cf(a+380|0);Cf(a+400|0);dg(a)}return}function cg(a,b){a=a|0;b=b|0;wW(a|0,b|0,408)|0;if((c[b+64>>2]|0)==(b|0))c[a+64>>2]=a;yW(b|0,0,408)|0;dg(b);return}function dg(a){a=a|0;var b=0,d=0;b=a+64|0;if((c[b>>2]|0)!=(a|0))Se(b);yW(a|0,0,408)|0;d=a+120|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+104|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+112|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+320|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+336|0;c[d>>2]=0;c[d+4>>2]=0;d=a+328|0;c[d>>2]=-1;c[d+4>>2]=-1;c[a+356>>2]=-1;c[a+84>>2]=1;c[a+92>>2]=0;c[a+96>>2]=1;c[a+80>>2]=-1;c[b>>2]=a;c[a+304>>2]=2;c[a+308>>2]=2;c[a+312>>2]=2;c[a+300>>2]=0;c[a+316>>2]=0;c[a+296>>2]=0;return}function eg(a){a=a|0;var b=0,d=0;d=a+292|0;b=a+288|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;fg((c[b>>2]|0)+(a<<2)|0);a=a+1|0}c[d>>2]=0;Se(b);return}function fg(a){a=a|0;var b=0;b=c[a>>2]|0;Cf(b+16|0);Gf(b+12|0);Se(a);return}function gg(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=Ec;Ec=Ec+16|0;h=j;f=j+4|0;i=c[a+4>>2]|0;g=i+4|0;d=c[g>>2]|0;if(!(c[d+12>>2]|0))if(c[(c[d>>2]|0)+60>>2]|0)if(c[i+28>>2]|0){h=Eg(a)|0;a=b+376|0;c[a>>2]=h;if(h){d=Mc[c[(c[c[g>>2]>>2]|0)+60>>2]&15](i,b)|0;if((d|0)<0)Cf(a);else d=0}else d=-12}else d=-22;else d=-38;else{c[b+80>>2]=c[i+36>>2];a=Eg(a)|0;c[b+376>>2]=a;do if((a|0)!=0?(e=Fg()|0,c[f>>2]=e,(e|0)!=0):0){d=gg(c[(c[g>>2]|0)+12>>2]|0,e,0)|0;if((d|0)<0){Gg(f);break}d=Hg(b,e,c[(c[g>>2]|0)+16>>2]|0)|0;if(!d){Gg(f);d=0;break}else{c[h>>2]=d;We(i,16,131003,h);Gg(f);break}}else d=-12;while(0)}Ec=j;return d|0}function hg(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;r=Ec;Ec=Ec+80|0;e=r;j=r+56|0;n=r+40|0;o=r+24|0;g=r+16|0;h=r+12|0;q=c[(c[a+28>>2]|0)+16>>2]|0;a:do switch(c[a+8>>2]|0){case 0:{c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;k=b+68|0;e=c[k>>2]|0;c[g>>2]=e;l=b+72|0;f=c[l>>2]|0;c[h>>2]=f;m=q+16|0;i=b+80|0;if(((c[m>>2]|0)==(c[i>>2]|0)?(c[q+20>>2]|0)==(e|0):0)?(c[q+24>>2]|0)==(f|0):0)d=0;else p=5;b:do if((p|0)==5){tg(a,g,h,q+28|0);f=a+112|0;a=c[g>>2]|0;do{d=ug(n,c[f>>2]|0,a)|0;if((d|0)<0)break b;a=c[g>>2]|0;a=(a&0-a)+a|0;c[g>>2]=a;d=0;e=0;while(1){if((d|0)==4)break;b=(c[n+(d<<2)>>2]|0)%(c[q+28+(d<<2)>>2]|0)|0|e;d=d+1|0;e=b}}while((e|0)!=0);f=vg(j,c[f>>2]|0,c[h>>2]|0,0,n)|0;if((f|0)>=0){d=0;while(1){if((d|0)>=3)break;e=d+1|0;a=c[j+(e<<2)>>2]|0;if(!a)break;c[o+(d<<2)>>2]=a-(c[j+(d<<2)>>2]|0);d=e}c[o+(d<<2)>>2]=f-(c[j+(d<<2)>>2]|0)+(c[j>>2]|0);d=0;while(1){if((d|0)>=4){p=20;break}e=q+(d<<2)|0;Zf(e);c[q+60+(d<<2)>>2]=c[n+(d<<2)>>2];a=c[o+(d<<2)>>2]|0;if(a|0?(p=xg(a+23|0,17)|0,c[e>>2]=p,(p|0)==0):0){p=22;break}d=d+1|0}if((p|0)==20){c[m>>2]=c[i>>2];c[q+20>>2]=c[k>>2];c[q+24>>2]=c[l>>2];d=0;break a}else if((p|0)==22){d=-12;p=31;break a}}else d=-1}while(0);break}case 1:{f=c[b+352>>2]|0;g=b+80|0;h=(yg(c[g>>2]|0)|0)!=0;h=h?f:1;i=q+16|0;if((((c[i>>2]|0)==(c[g>>2]|0)?(c[q+76>>2]|0)==(h|0):0)?(c[q+80>>2]|0)==(f|0):0)?(c[b+76>>2]|0)==(c[q+84>>2]|0):0){d=0;break a}Zf(q);a=q+60|0;e=b+76|0;d=zg(a,f,c[e>>2]|0,c[g>>2]|0,0)|0;if((d|0)>=0){o=xg(c[a>>2]|0,0)|0;c[q>>2]=o;if(!o){d=-12;p=31}else{c[i>>2]=c[g>>2];c[q+76>>2]=h;c[q+80>>2]=f;c[q+84>>2]=c[e>>2];d=0}}else p=31;break}default:{c[e>>2]=170059;c[e+4>>2]=128996;c[e+8>>2]=1524;We(0,0,164054,e);Za()}}while(0);if((p|0)==31){e=0;while(1){if((e|0)==4)break;Zf(q+(e<<2)|0);e=e+1|0}c[q+16>>2]=-1;c[q+84>>2]=0;c[q+80>>2]=0;c[q+76>>2]=0;c[q+24>>2]=0;c[q+20>>2]=0}Ec=r;return d|0}function ig(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;l=Ec;Ec=Ec+32|0;j=l+16|0;e=l+8|0;d=l;f=c[(c[a+28>>2]|0)+16>>2]|0;h=b+80|0;i=qg(c[h>>2]|0)|0;do if((((c[b>>2]|0)==0?(g=b+4|0,(c[g>>2]|0)==0):0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){if(!i){c[e>>2]=rg(c[h>>2]|0)|0;We(a,16,129104,e);d=-22;break};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[b+24>>2]=0;c[b+28>>2]=0;c[b+64>>2]=b;d=0;while(1){if((d|0)>=4)break;e=c[f+(d<<2)>>2]|0;if(!e)break;c[b+32+(d<<2)>>2]=c[f+60+(d<<2)>>2];e=lg(e)|0;c[b+248+(d<<2)>>2]=e;if(!e){k=19;break}c[b+(d<<2)>>2]=c[e+4>>2];d=d+1|0}if((k|0)==19){bg(b);d=-12;break}while(1){if((d|0)>=8)break;c[b+(d<<2)>>2]=0;c[b+32+(d<<2)>>2]=0;d=d+1|0}if(!(0==0?(c[i+8>>2]&66|0)==0:0))sg(c[g>>2]|0,c[h>>2]|0)|0;if(!(c[a+576>>2]&32768))d=0;else{c[j>>2]=b;We(a,48,129157,j);d=0}}else k=5;while(0);if((k|0)==5){We(a,16,129054,d);d=-1}Ec=l;return d|0}function jg(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;m=Ec;Ec=Ec+32|0;l=m+16|0;f=m;k=c[(c[a+28>>2]|0)+16>>2]|0;h=c[k+76>>2]|0;c[b+32>>2]=c[k+60>>2];g=(h|0)>8;if(g){d=b+64|0;c[d>>2]=kg(h,4)|0;i=h+-8|0;c[b+284>>2]=i;i=kg(i,4)|0;e=b+280|0;c[e>>2]=i;if((i|0)==0|(c[d>>2]|0)==0){Se(d);Se(e);d=-12}else{i=d;j=5}}else{e=b+64|0;c[e>>2]=b;if(!(c[b+284>>2]|0)){i=e;j=5}else{c[f>>2]=128968;c[f+4>>2]=128996;c[f+8>>2]=1556;We(0,0,164054,f);Za()}}a:do if((j|0)==5){e=g?8:h;d=0;while(1){if((d|0)>=(e|0)){j=8;break}f=lg(c[k>>2]|0)|0;c[b+248+(d<<2)>>2]=f;if(!f)break;h=c[f+4>>2]|0;c[b+(d<<2)>>2]=h;c[(c[i>>2]|0)+(d<<2)>>2]=h;d=d+1|0}b:do if((j|0)==8){e=b+284|0;f=b+280|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break;g=lg(c[k>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break b;c[(c[i>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}if(!(c[a+576>>2]&32768)){d=0;break a}c[l>>2]=b;We(a,48,129016,l);d=0;break a}while(0);bg(b);d=-12}while(0);Ec=m;return d|0}function kg(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Of(H(b,a)|0)|0;else a=0;return a|0}function lg(a){a=a|0;var b=0,d=0,e=0,f=0;JU(a)|0;d=a+28|0;e=c[d>>2]|0;do if(!e){b=og(a)|0;KU(a)|0;if(!b)b=0;else f=6}else{b=ng(c[e>>2]|0,c[a+36>>2]|0,23,e,0)|0;if(!b){KU(a)|0;b=0;break}else{f=e+16|0;c[d>>2]=c[f>>2];c[f>>2]=0;KU(a)|0;f=6;break}}while(0);if((f|0)==6){f=a+32|0;c[f>>2]=(c[f>>2]|0)+1}return b|0}function mg(a,b){a=a|0;b=b|0;var d=0;b=c[a+12>>2]|0;JU(b)|0;d=b+28|0;c[a+16>>2]=c[d>>2];c[d>>2]=a;KU(b)|0;d=b+32|0;a=c[d>>2]|0;c[d>>2]=a+-1;if((a|0)==1)_f(b);return}function ng(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=Ec;Ec=Ec+16|0;h=j;g=Of(24)|0;c[h>>2]=g;i=g;do if(g){c[g>>2]=a;c[g+4>>2]=b;c[g+12>>2]=d|0?d:24;c[g+16>>2]=e;c[g+8>>2]=1;if(f&1|0){g=g+20|0;c[g>>2]=c[g>>2]|1}d=Of(12)|0;if(!d){Se(h);d=0;break}else{c[d>>2]=i;c[d+4>>2]=a;c[d+8>>2]=b;break}}else d=0;while(0);Ec=j;return d|0}function og(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=Ec;Ec=Ec+16|0;e=f;b=c[a+48>>2]|0;if(!b)b=Kc[c[a+44>>2]&31](c[a+36>>2]|0)|0;else b=Mc[b&15](c[a+40>>2]|0,c[a+36>>2]|0)|0;c[e>>2]=b;do if(b){d=Of(20)|0;if(!d){Cf(e);b=0;break}else{e=c[b>>2]|0;c[d>>2]=c[e>>2];g=e+16|0;c[d+4>>2]=c[g>>2];e=e+12|0;c[d+8>>2]=c[e>>2];c[d+12>>2]=a;c[g>>2]=d;c[e>>2]=23;break}}else b=0;while(0);Ec=f;return b|0}function pg(a,b){a=a|0;b=b|0;Te(b);return}function qg(a){a=a|0;return (a>>>0>182?0:9736+(a*152|0)|0)|0}function rg(a){a=a|0;if(a>>>0<183)a=c[9736+(a*152|0)>>2]|0;else a=0;return a|0}function sg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=0;a:while(1){if((g|0)>=256){d=0;break}switch(b|0){case 20:{d=(g&3)*85|0;e=(g>>>2&7)*36|0;f=(g>>5)*36|0;break}case 17:{d=(g>>6)*85|0;e=(g>>>3&7)*36|0;f=(g&7)*36|0;break}case 22:{d=0-(g&1)&255;e=(g>>>1&3)*85|0;f=(g>>3)*255|0;break}case 19:{d=(g>>3)*255|0;e=(g>>>1&3)*85|0;f=0-(g&1)&255;break}case 8:{d=g;e=g;f=g;break}default:{d=-22;break a}}c[a+(g<<2)>>2]=(f<<16)+-16777216+(e<<8)+d;g=g+1|0}return d|0}function tg(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;i=a+112|0;g=qg(c[i>>2]|0)|0;if(!g){h=1;g=1}else{h=1<<(d[g+6>>0]|0);g=1<<(d[g+5>>0]|0)}a:do switch(c[i>>2]|0){case 114:case 115:case 163:case 164:case 78:case 79:case 138:case 139:case 136:case 137:case 76:case 77:case 74:case 75:case 98:case 99:case 92:case 93:case 86:case 87:case 52:case 51:case 134:case 135:case 132:case 133:case 69:case 70:case 67:case 68:case 157:case 156:case 155:case 154:case 96:case 97:case 90:case 91:case 84:case 85:case 50:case 49:case 130:case 131:case 128:case 129:case 65:case 66:case 71:case 72:case 94:case 95:case 88:case 89:case 82:case 83:case 48:case 47:case 126:case 127:case 124:case 125:case 63:case 64:case 61:case 62:case 81:case 80:case 33:case 14:case 32:case 13:case 12:case 30:case 29:case 8:case 113:case 73:case 5:case 31:case 4:case 15:case 110:case 1:case 0:{h=32;g=16;break}case 16:case 140:case 7:{h=32;g=32;break}case 6:{i=(c[a+16>>2]|0)==22;h=i?64:h;g=i?64:g;break}case 39:{j=c[a+16>>2]|0;i=(j|0)==42;j=(j|0)==39;h=j?8:i?4:h;g=j?8:i?4:g;break}case 20:case 17:case 11:{i=c[a+16>>2]|0;switch(i|0){case 43:case 49:{h=4;g=4;break}default:{}}switch(i|0){case 39:case 148:break;default:break a}h=8;g=8;break}case 3:{j=((c[a+16>>2]|0)+-53|0)>>>0<2;h=j?4:h;g=j?4:g;break}case 2:{j=(c[a+16>>2]|0)==43;h=j?4:h;g=j?4:g;break}default:{}}while(0);j=c[a+16>>2]|0;g=(j|0)==136?((g|0)>8?g:8):g;c[b>>2]=(c[b>>2]|0)+-1+g&0-g;g=h+-1+(c[e>>2]|0)&0-h;c[e>>2]=g;if((j|0)!=27?(c[a+680>>2]|0)==0:0)g=0;else{c[e>>2]=g+2;g=c[b>>2]|0;c[b>>2]=(g|0)>32?g:32;g=0}while(1){if((g|0)==4)break;c[f+(g<<2)>>2]=8;g=g+1|0}return}function ug(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+32|0;g=i+16|0;h=i;f=qg(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if((f|0)!=0?(0==0?(c[f+8>>2]&8|0)==0:0):0){Cg(g,h,f);e=0;while(1){if((e|0)>=4){b=0;break a}b=Dg(d,c[g+(e<<2)>>2]|0,c[h+(e<<2)>>2]|0,f)|0;if((b|0)<0)break a;c[a+(e<<2)>>2]=b;e=e+1|0}}else b=-22;while(0);Ec=i;return b|0}function vg(a,b,e,f,g){a=a|0;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;n=Ec;Ec=Ec+16|0;m=n;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;j=qg(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if(((j|0)!=0?(i=c[j+8>>2]|0,(i&8|0)==0&0==0):0)?(c[a>>2]=f,h=c[g>>2]|0,(h|0)<=(2147482623/(e|0)|0|0)):0){h=H(h,e)|0;if((i&66|0)==0&0==0)b=0;else{c[a+4>>2]=f+h;b=h+1024|0;break}while(1){if((b|0)==4)break;c[m+(c[j+16+(b<<5)>>2]<<2)>>2]=1;b=b+1|0}l=j+6|0;k=e+-1|0;b=h;e=1;j=f;while(1){if((e|0)>=4)break a;if(!(c[m+(e<<2)>>2]|0))break a;if((e+-1|0)>>>0<2)i=d[l>>0]|0;else i=0;j=j+h|0;c[a+(e<<2)>>2]=j;f=k+(1<<i)>>i;o=c[g+(e<<2)>>2]|0;h=H(f,o)|0;i=(b|0)>(2147483647-h|0);if((o|0)>(2147483647/(f|0)|0|0)){b=-22;break a}if(i){b=-22;break}else{b=(i?0:h)+b|0;e=e+1|0}}}else b=-22;while(0);Ec=n;return b|0}function wg(a){a=a|0;var b=0;b=Bg(a)|0;if(!b)b=0;else yW(c[b+4>>2]|0,0,a|0)|0;return b|0}function xg(a,b){a=a|0;b=b|0;var d=0;d=Of(56)|0;if(!d)d=0;else{IU(d,0)|0;c[d+36>>2]=a;c[d+44>>2]=b|0?b:18;c[d+32>>2]=1}return d|0}function yg(a){a=a|0;if(a>>>0>11)a=0;else a=c[71828+(a*20|0)+12>>2]|0;return a|0}function zg(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;h=Ag(e)|0;g=yg(e)|0;do if(!((b|0)<1|((d|0)<1|(h|0)==0))){if(!f){if((d|0)>2147483616){e=-22;break}d=d+31&-32;e=1}else e=f;if((2147483647/(e|0)|0|0)>=(b|0)?(i=nW(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0,k=M()|0,f=(2147483647-(H(e,b)|0)|0)/(h|0)|0,j=((f|0)<0)<<31>>31,!((k|0)>(j|0)|(k|0)==(j|0)&i>>>0>f>>>0)):0){f=(g|0)!=0;e=e+-1+(H(H(f?1:b,h)|0,d)|0)&0-e;if(a|0)c[a>>2]=e;e=H(e,f?b:1)|0}else e=-22}else e=-22;while(0);return e|0}function Ag(a){a=a|0;if(a>>>0>11)a=0;else a=c[71828+(a*20|0)+8>>2]>>3;return a|0}function Bg(a){a=a|0;var b=0,d=0,e=0;e=Ec;Ec=Ec+16|0;d=e;b=cf(a)|0;c[d>>2]=b;if(b){a=ng(b,a,24,0,0)|0;if(!a){Se(d);a=0}}else a=0;Ec=e;return a|0}function Cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)!=0;if(f){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;e=0}else e=0;while(1){if((e|0)==4)break;g=c[d+16+(e<<5)+4>>2]|0;h=d+16+(e<<5)|0;i=a+(c[h>>2]<<2)|0;if((g|0)>(c[i>>2]|0)?(c[i>>2]=g,f):0)c[b+(c[h>>2]<<2)>>2]=e;e=e+1|0}return}function Dg(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;do if((a|0)<0|(f|0)==0)e=-22;else{if((e+-1|0)>>>0<2)e=d[f+5>>0]|0;else e=0;e=a+-1+(1<<e)>>e;if(e|0?(2147483647/(e|0)|0|0)<(b|0):0){e=-22;break}e=H(e,b)|0;e=(0==0?(c[f+8>>2]&4|0)==0:0)?e:e+7>>3}while(0);return e|0}function Eg(a){a=a|0;var b=0;b=Of(12)|0;if(!b)b=0;else{c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];a=(c[a>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+1}return b|0}function Fg(){var a=0;a=Of(408)|0;if(!a)a=0;else{c[a+64>>2]=0;dg(a)}return a|0}function Gg(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){bg(b);Se(a)}return}function Hg(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;q=Ec;Ec=Ec+16|0;l=q;h=c[b+376>>2]|0;i=a+376|0;a:do if(h){f=c[i>>2]|0;do if(f|0){k=c[h+4>>2]|0;f=c[f+4>>2]|0;if(!(((k|0)==(f|0)?(c[b+80>>2]|0)==(c[k+40>>2]|0):0)?(c[a+80>>2]|0)==(c[k+36>>2]|0):0)){g=c[(c[k+4>>2]|0)+12>>2]|0;if(!g)break;if((c[g+4>>2]|0)!=(f|0))break}e=c[b+248>>2]|0;if(!e){We(k,16,131056,l);e=-22;break a}else{e=c[e+4>>2]|0;bg(a);e=Ig(a,c[e>>2]|0)|0;break a}}while(0);f=c[h+4>>2]|0;if(!(((c[f+36>>2]|0)==(c[b+80>>2]|0)?(j=c[(c[c[f+4>>2]>>2]|0)+80>>2]|0,(j|0)!=0):0)?(e=Oc[j&3](f,a,b,d)|0,(e|0)!=-38):0))p=14}else p=14;while(0);do if((p|0)==14){e=c[i>>2]|0;if(((e|0?(m=c[e+4>>2]|0,(c[m+36>>2]|0)==(c[a+80>>2]|0)):0)?(n=c[(c[c[m+4>>2]>>2]|0)+76>>2]|0,n|0):0)?(o=Oc[n&3](m,a,b,d)|0,(o|0)!=-38):0){e=o;break}e=-38}while(0);Ec=q;return e|0}function Ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a+80>>2]=c[b+80>>2];c[a+68>>2]=c[b+68>>2];c[a+72>>2]=c[b+72>>2];h=b+352|0;c[a+352>>2]=c[h>>2];e=b+240|0;g=c[e+4>>2]|0;d=a+240|0;c[d>>2]=c[e>>2];c[d+4>>2]=g;c[a+76>>2]=c[b+76>>2];d=Jg(a,b,0)|0;a:do if((d|0)>=0){if(!(c[b+248>>2]|0)){d=Kg(a,32)|0;if((d|0)<0)break;d=Lg(a,b)|0;if((d|0)>=0)break;bg(a);break}else d=0;while(1){if(d>>>0>=8){f=10;break}e=c[b+248+(d<<2)>>2]|0;if(e|0?(g=Eg(e)|0,c[a+248+(d<<2)>>2]=g,(g|0)==0):0){d=-12;break}d=d+1|0}b:do if((f|0)==10){e=b+280|0;c:do if(c[e>>2]|0){f=b+284|0;d=kg(4,c[f>>2]|0)|0;g=a+280|0;c[g>>2]=d;if(!d){d=-12;break b}c[a+284>>2]=c[f>>2];d=0;while(1){if((d|0)>=(c[f>>2]|0))break c;i=Eg(c[(c[e>>2]|0)+(d<<2)>>2]|0)|0;c[(c[g>>2]|0)+(d<<2)>>2]=i;if(!(c[(c[g>>2]|0)+(d<<2)>>2]|0)){d=-12;break b}else d=d+1|0}}while(0);d=c[b+376>>2]|0;if(d|0?(i=Eg(d)|0,c[a+376>>2]=i,(i|0)==0):0){d=-12;break}f=b+64|0;if((c[f>>2]|0)==(b|0))c[a+64>>2]=a;else{d=c[h>>2]|0;if(!d){d=-22;break}e=Mg(4,d)|0;c[a+64>>2]=e;if(!e){d=-12;break}wW(e|0,c[f>>2]|0,d<<2|0)|0};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];d=a+32|0;i=b+32|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[d+16>>2]=c[i+16>>2];c[d+20>>2]=c[i+20>>2];c[d+24>>2]=c[i+24>>2];c[d+28>>2]=c[i+28>>2];d=0;break a}while(0);bg(a)}while(0);return d|0}function Jg(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;r=Ec;Ec=Ec+16|0;o=r;c[a+84>>2]=c[b+84>>2];c[a+88>>2]=c[b+88>>2];e=b+92|0;f=c[e+4>>2]|0;g=a+92|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+384>>2]=c[b+384>>2];c[a+388>>2]=c[b+388>>2];c[a+392>>2]=c[b+392>>2];c[a+396>>2]=c[b+396>>2];g=b+104|0;f=c[g+4>>2]|0;e=a+104|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+208>>2]=c[b+208>>2];c[a+212>>2]=c[b+212>>2];c[a+216>>2]=c[b+216>>2];c[a+220>>2]=c[b+220>>2];c[a+232>>2]=c[b+232>>2];c[a+140>>2]=c[b+140>>2];e=b+112|0;f=c[e+4>>2]|0;g=a+112|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+120|0;f=c[g+4>>2]|0;e=a+120|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+328|0;f=c[e+4>>2]|0;g=a+328|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+356>>2]=c[b+356>>2];g=b+336|0;f=c[g+4>>2]|0;e=a+336|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+224|0;f=c[e+4>>2]|0;g=a+224|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+136>>2]=c[b+136>>2];g=b+320|0;f=c[g+4>>2]|0;e=a+320|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+128>>2]=c[b+128>>2];c[a+132>>2]=c[b+132>>2];c[a+296>>2]=c[b+296>>2];c[a+348>>2]=c[b+348>>2];c[a+304>>2]=c[b+304>>2];c[a+308>>2]=c[b+308>>2];c[a+312>>2]=c[b+312>>2];c[a+300>>2]=c[b+300>>2];c[a+316>>2]=c[b+316>>2];$g(a+344|0,c[b+344>>2]|0,0)|0;e=a+144|0;f=b+144|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));i=b+292|0;j=b+288|0;k=b+68|0;l=a+68|0;m=b+72|0;n=a+72|0;d=(d|0)==0;g=0;while(1){if((g|0)>=(c[i>>2]|0)){p=15;break}h=c[(c[j>>2]|0)+(g<<2)>>2]|0;e=c[h>>2]|0;if(!e){if((c[k>>2]|0)==(c[l>>2]|0)?(c[m>>2]|0)==(c[n>>2]|0):0)p=6}else p=6;if((p|0)==6){p=0;if(d){e=Eg(c[h+16>>2]|0)|0;c[o>>2]=e;e=bh(a,c[h>>2]|0,e)|0;if(!e){p=12;break}}else{f=h+8|0;e=ah(a,e,c[f>>2]|0)|0;if(!e){p=8;break}wW(c[e+4>>2]|0,c[h+4>>2]|0,c[f>>2]|0)|0}$g(e+12|0,c[h+12>>2]|0,0)|0}g=g+1|0}do if((p|0)==8){eg(a);e=-12}else if((p|0)==12){Cf(o);eg(a);e=-12}else if((p|0)==15){e=a+360|0;c[e>>2]=0;f=a+364|0;c[f>>2]=0;g=a+368|0;c[g>>2]=0;d=a+372|0;Cf(d);h=c[b+372>>2]|0;if(h|0?(q=Eg(h)|0,c[d>>2]=q,q|0):0){c[e>>2]=c[q+4>>2];c[f>>2]=c[b+364>>2];c[g>>2]=c[b+368>>2]}f=a+380|0;Cf(f);g=a+400|0;Cf(g);e=c[b+380>>2]|0;if(e|0?(a=Eg(e)|0,c[f>>2]=a,(a|0)==0):0){e=-12;break}e=c[b+400>>2]|0;if(e|0?(b=Eg(e)|0,c[g>>2]=b,(b|0)==0):0){e=-12;break}e=0}while(0);Ec=r;return e|0}function Kg(a,b){a=a|0;b=b|0;var d=0;do if((c[a+80>>2]|0)>=0){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Vg(a,b)|0;break}if((c[a+76>>2]|0)>0){d=a+240|0;if((c[d>>2]|0)==0&(c[d+4>>2]|0)==0?(c[a+352>>2]|0)<=0:0){a=-22;break}a=Wg(a,b)|0}else a=-22}else a=-22;while(0);return a|0}function Lg(a,b){a=a|0;b=b|0;var d=0;d=c[a+80>>2]|0;do if(!((d|0)<0?1:(d|0)!=(c[b+80>>2]|0))){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Ng(a,b)|0;break}if((c[a+76>>2]|0)>0?(c[a+352>>2]|0)>0:0)a=Og(a,b)|0;else a=-22}else a=-22;while(0);return a|0}function Mg(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=cf(H(b,a)|0)|0;else a=0;return a|0}function Ng(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+16|0;h=j;i=b+68|0;a:do if((c[a+68>>2]|0)>=(c[i>>2]|0)?(e=b+72|0,(c[a+72>>2]|0)>=(c[e>>2]|0)):0){f=a+80|0;g=Qg(c[f>>2]|0)|0;d=0;while(1){if((d|0)>=(g|0))break;if(!(c[a+(d<<2)>>2]|0)){d=-22;break a}if(!(c[b+(d<<2)>>2]|0)){d=-22;break a}else d=d+1|0}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];Rg(a,a+32|0,h,b+32|0,c[f>>2]|0,c[i>>2]|0,c[e>>2]|0);d=0}else d=-22;while(0);Ec=j;return d|0}function Og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+80|0;h=yg(c[f>>2]|0)|0;g=c[a+352>>2]|0;h=h|0?g:1;e=c[a+76>>2]|0;a:do if(((e|0)==(c[b+76>>2]|0)?(g|0)==(c[b+352>>2]|0):0)?(i=a+240|0,d=b+240|0,(c[i>>2]|0)==(c[d>>2]|0)?(c[i+4>>2]|0)==(c[d+4>>2]|0):0):0){d=c[a+64>>2]|0;b=b+64|0;a=0;while(1){if((a|0)>=(h|0))break;if(!(c[d+(a<<2)>>2]|0)){a=-22;break a}if(!(c[(c[b>>2]|0)+(a<<2)>>2]|0)){a=-22;break a}else a=a+1|0}Pg(d,c[b>>2]|0,0,0,e,g,c[f>>2]|0)|0;a=0}else a=-22;while(0);return a|0}function Pg(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=(yg(h)|0)!=0;j=k?g:1;i=Ag(h)|0;g=H(k?1:g,i)|0;i=H(g,f)|0;h=H(g,d)|0;g=H(g,e)|0;d=c[a>>2]|0;f=c[b>>2]|0;e=d>>>0<f>>>0;a:do if(((e?f:d)-(c[(e?a:b)>>2]|0)|0)<(i|0)){f=0;while(1){if((f|0)>=(j|0))break a;xW((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}else{f=0;while(1){if((f|0)>=(j|0))break a;wW((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}while(0);return 0}function Qg(a){a=a|0;var b=0,e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;f=g;b=qg(a)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;a:do if(!b)a=-22;else{e=d[b+4>>0]|0;a=0;while(1){if((a|0)==(e|0)){a=0;b=0;break}c[f+(c[b+16+(a<<5)>>2]<<2)>>2]=1;a=a+1|0}while(1){if((b|0)==4)break a;a=(c[f+(b<<2)>>2]|0)+a|0;b=b+1|0}}while(0);Ec=g;return a|0}function Rg(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=Ec;Ec=Ec+32|0;j=l+16|0;k=l;i=0;while(1){if((i|0)==4)break;c[j+(i<<2)>>2]=c[b+(i<<2)>>2];c[k+(i<<2)>>2]=c[e+(i<<2)>>2];i=i+1|0}Tg(a,j,d,k,f,g,h,4);Ec=l;return}function Sg(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;m=Ec;Ec=Ec+32|0;l=m+16|0;k=m;a:do if((a|0)!=0&(d|0)!=0){if((((e|0)>-1?e:0-e|0)|0)<(f|0)){c[k>>2]=131132;c[k+4>>2]=131163;c[k+8>>2]=314;We(0,0,164054,k);Za()}if((((b|0)>-1?b:0-b|0)|0)<(f|0)){c[l>>2]=131184;c[l+4>>2]=131163;c[l+8>>2]=315;We(0,0,164054,l);Za()}else{h=g;i=a;j=d}while(1){if((h|0)<=0)break a;wW(i|0,j|0,f|0)|0;h=h+-1|0;i=i+b|0;j=j+e|0}}while(0);Ec=m;return}function Tg(a,b,e,f,g,h,i,j){a=a|0;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;r=Ec;Ec=Ec+16|0;q=r;m=qg(g)|0;a:do if(m|0?(k=c[m+8>>2]|0,(k&8|0)==0&0==0):0){if(!((k&66|0)==0&0==0)){Xc[j&63](c[a>>2]|0,c[b>>2]|0,c[e>>2]|0,c[f>>2]|0,h,i);wW(c[a+4>>2]|0,c[e+4>>2]|0,1024)|0;break}l=d[m+4>>0]|0;p=0;k=0;while(1){if((k|0)==(l|0))break;o=(c[m+16+(k<<5)>>2]|0)+1|0;p=(p|0)>(o|0)?p:o;k=k+1|0}m=m+6|0;n=0-i|0;l=0;while(1){if((l|0)>=(p|0))break a;o=Ug(g,h,l)|0;if((o|0)<0)break;if((l+-1|0)>>>0<2)k=0-(n>>(d[m>>0]|0))|0;else k=i;Xc[j&63](c[a+(l<<2)>>2]|0,c[b+(l<<2)>>2]|0,c[e+(l<<2)>>2]|0,c[f+(l<<2)>>2]|0,o,k);l=l+1|0}We(0,16,131102,q)}while(0);Ec=r;return}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Ec;Ec=Ec+32|0;e=g+16|0;f=g;a=qg(a)|0;if((a|0)!=0?(0==0?(c[a+8>>2]&8|0)==0:0):0){Cg(e,f,a);a=Dg(b,c[e+(d<<2)>>2]|0,c[f+(d<<2)>>2]|0,a)|0}else a=-22;Ec=g;return a|0}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;h=a+80|0;k=qg(c[h>>2]|0)|0;a:do if(k){i=a+68|0;l=a+72|0;e=Yg(c[i>>2]|0,c[l>>2]|0,0,0)|0;if((e|0)>=0){g=a+32|0;b:do if(!(c[g>>2]|0)){b=(b|0)<1?32:b;j=b+-1|0;f=1;while(1){if((f|0)>(b|0))break;e=ug(g,c[h>>2]|0,f+-1+(c[i>>2]|0)&0-f)|0;if((e|0)<0)break a;if(!(c[g>>2]&j))break;else f=f<<1}b=0-b|0;e=0;while(1){if((e|0)>=4)break b;f=a+32+(e<<2)|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=j+g&b;e=e+1|0}}while(0);g=k+6|0;f=0;while(1){if((f|0)>=4){m=19;break}b=c[a+32+(f<<2)>>2]|0;if(!b){m=19;break}e=(c[l>>2]|0)+31&-32;if((f+-1|0)>>>0<2)e=0-(0-e>>(d[g>>0]|0))|0;e=Bg((H(b,e)|0)+31|0)|0;c[a+248+(f<<2)>>2]=e;if(!e)break;c[a+(f<<2)>>2]=c[e+4>>2];f=f+1|0}do if((m|0)==19){if(!(0==0?(c[k+8>>2]&66|0)==0:0)){m=a+252|0;Cf(m);e=Bg(1024)|0;c[m>>2]=e;if(!e)break;c[a+4>>2]=c[e+4>>2]}c[a+64>>2]=a;e=0;break a}while(0);bg(a);e=-12}}else e=-22;while(0);return e|0}function Wg(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+80|0;g=yg(c[h>>2]|0)|0;e=a+352|0;f=c[e>>2]|0;if(!f){f=a+240|0;f=Xg(c[f>>2]|0,c[f+4>>2]|0)|0;c[e>>2]=f}i=g|0?f:1;j=a+32|0;if(!((c[j>>2]|0)==0?(d=zg(j,f,c[a+76>>2]|0,c[h>>2]|0,b)|0,(d|0)<0):0))k=5;a:do if((k|0)==5){g=(i|0)>8;do if(g){d=a+64|0;c[d>>2]=kg(i,4)|0;e=i+-8|0;h=kg(e,4)|0;f=a+280|0;c[f>>2]=h;if((h|0)==0|(c[d>>2]|0)==0){Se(d);Se(f);d=-12;break a}else{c[a+284>>2]=e;b=d;break}}else{b=a+64|0;c[b>>2]=a}while(0);e=g?8:i;d=0;while(1){if((d|0)>=(e|0))break;f=Bg(c[j>>2]|0)|0;c[a+248+(d<<2)>>2]=f;if(!f){k=14;break}h=c[f+4>>2]|0;c[a+(d<<2)>>2]=h;c[(c[b>>2]|0)+(d<<2)>>2]=h;d=d+1|0}if((k|0)==14){bg(a);d=-12;break}e=i+-8|0;f=a+280|0;d=0;while(1){if((d|0)>=(e|0)){d=0;break a}g=Bg(c[j>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break;c[(c[b>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}bg(a);d=-12}while(0);return d|0}function Xg(a,b){a=a|0;b=b|0;var c=0;c=a-(a>>>1&1431655765)|0;c=(c>>>2&858993459)+(c&858993459)|0;c=(c>>>4)+c&252645135;c=(c>>>8)+c|0;a=rW(a|0,b|0,33)|0;M()|0;b=b-(a&1431655765)|0;b=(b>>>2&858993459)+(b&858993459)|0;b=(b>>>4)+b&252645135;b=(b>>>8)+b|0;return ((c>>>16)+c&63)+((b>>>16)+b&63)|0}function Yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Zg(a,b,-1,2147483647,-1,c,d)|0}function Zg(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;l=Ec;Ec=Ec+48|0;k=l+8|0;j=l;i=l+24|0;c[i>>2]=72068;c[i+4>>2]=g;c[i+8>>2]=h;g=Ug(f,a,0)|0;m=(g|0)<1;f=sW(a|0,0,3)|0;h=M()|0;f=m?f:g;g=m?h:((g|0)<0)<<31>>31;if(!((a|0)<1|(b|0)<1|((g|0)>0|(g|0)==0&f>>>0>2147482622))?(m=hW(f|0,g|0,1024,0)|0,m=nW(m|0,M()|0,b+128|0,0)|0,h=M()|0,!(h>>>0>0|(h|0)==0&m>>>0>2147483646)):0)if(!((d|0)==-1&(e|0)==2147483647)?(m=nW(b|0,0,a|0,0)|0,j=M()|0,(j|0)>(e|0)|(j|0)==(e|0)&m>>>0>d>>>0):0){c[k>>2]=a;c[k+4>>2]=b;f=k+8|0;c[f>>2]=d;c[f+4>>2]=e;We(i,16,131246,k);f=-22}else f=0;else{c[j>>2]=a;c[j+4>>2]=b;We(i,16,131215,j);f=-22}Ec=l;return f|0}function _g(a){a=a|0;return c[c[a>>2]>>2]|0}function $g(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=0;do{f=ch(b,260868,f,2)|0;if(!f){e=0;break}e=dh(a,c[f>>2]|0,c[f+4>>2]|0,d)|0}while((e|0)>=0);return e|0}function ah(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Ec;Ec=Ec+16|0;e=f;d=Bg(d)|0;c[e>>2]=d;a=bh(a,b,d)|0;if(!a)Cf(e);Ec=f;return a|0}function bh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((((d|0)!=0?(g=a+292|0,h=c[g>>2]|0,h>>>0<=536870910):0)?(i=a+288|0,f=bf(c[i>>2]|0,(h<<2)+4|0)|0,(f|0)!=0):0)?(c[i>>2]=f,e=Of(20)|0,(e|0)!=0):0){c[e+16>>2]=d;c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e>>2]=b;h=c[i>>2]|0;i=c[g>>2]|0;c[g>>2]=i+1;c[h+(i<<2)>>2]=e}else e=0;return e|0}function ch(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;a:do if(!b)e=0;else{m=b+4|0;if(!e)e=0;else e=(e-(c[m>>2]|0)>>3)+1|0;k=c[b>>2]|0;l=(f&1|0)==0;j=(f&2|0)==0;while(1){if(e>>>0>=k>>>0){e=0;break a}i=c[m>>2]|0;h=c[i+(e<<3)>>2]|0;if(l){f=0;while(1){b=a[h+f>>0]|0;n=hh(b<<24>>24)|0;g=a[d+f>>0]|0;if(g<<24>>24==0|(n|0)!=(hh(g<<24>>24)|0))break;else f=f+1|0}}else{f=0;while(1){b=a[h+f>>0]|0;g=a[d+f>>0]|0;if(g<<24>>24==0?1:b<<24>>24!=g<<24>>24)break;else f=f+1|0}}if(!(g<<24>>24!=0|j&b<<24>>24!=0))break;e=e+1|0}e=i+(e<<3)|0}while(0);return e|0}function dh(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;p=Ec;Ec=Ec+16|0;l=p+8|0;o=p+4|0;m=p;g=c[a>>2]|0;c[l>>2]=0;c[o>>2]=0;c[m>>2]=0;if(!(e&64))i=ch(g,b,0,e)|0;else i=0;if(!(e&4))h=eh(b)|0;else h=b;c[o>>2]=h;j=h;if(!(e&8))if(!h)f=0;else{f=eh(d)|0;c[m>>2]=f}else{c[m>>2]=d;f=d}if(!g){g=Of(8)|0;c[a>>2]=g;if(!g)k=32;else{n=g;k=11}}else{n=g;k=11}a:do if((k|0)==11){do if((b|0)==0|(h|0)!=0){g=(f|0)!=0;if((d|0)==0|g){if(!i)if(g){g=n+4|0;b=bf(c[g>>2]|0,(c[n>>2]<<3)+8|0)|0;if(!b)break;c[g>>2]=b;k=23}else k=27;else{if(e&16|0){Te(h);Te(f);f=0;break a}g=c[i+4>>2]|0;if(!(e&32))Te(g);else c[l>>2]=g;Te(c[i>>2]|0);d=c[n+4>>2]|0;h=(c[n>>2]|0)+-1|0;c[n>>2]=h;h=d+(h<<3)|0;d=c[h+4>>2]|0;k=i;c[k>>2]=c[h>>2];c[k+4>>2]=d;if(!f)k=27;else k=23}if((k|0)==23){d=n+4|0;h=c[d>>2]|0;g=c[n>>2]|0;c[h+(g<<3)>>2]=j;f=c[m>>2]|0;c[h+(g<<3)+4>>2]=f;h=c[l>>2]|0;if((e&32|0)==0|(h|0)==0)f=g;else{g=MT(h)|0;g=g+1+(MT(f)|0)|0;b=Of(g)|0;if(!b)break;fh(b,h,g)|0;Se(l);fh(b,f,g)|0;c[(c[d>>2]|0)+(c[n>>2]<<3)+4>>2]=b;Se(m);f=c[n>>2]|0}f=f+1|0;c[n>>2]=f}else if((k|0)==27){Se(o);f=c[n>>2]|0}if(f|0){f=0;break a}Se(n+4|0);Se(a);f=0;break a}else f=0}while(0);if(!(c[n>>2]|0)){Se(n+4|0);Se(a);k=32}else k=32}while(0);if((k|0)==32){Te(c[o>>2]|0);Te(f);f=-12}Ec=p;return f|0}function eh(a){a=a|0;var b=0,c=0;if((a|0)!=0?(c=(MT(a)|0)+1|0,b=bf(0,c)|0,(b|0)!=0):0)wW(b|0,a|0,c|0)|0;else b=0;return b|0}function fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=MT(a)|0;if((d+1|0)>>>0<c>>>0)a=gh(a+d|0,b,c-d|0)|0;else a=MT(b)|0;return a+d|0}function gh(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=0;while(1){e=g+1|0;if(e>>>0>=d>>>0)break;f=a[c>>0]|0;if(!(f<<24>>24))break;a[b>>0]=f;g=e;b=b+1|0;c=c+1|0}if(g>>>0<d>>>0)a[b>>0]=0;return (MT(c)|0)+g|0}function hh(a){a=a|0;return ((a+-97|0)>>>0<26?a^32:a)|0}function ih(a){a=a|0;var b=0;jh(a);c[a+28260>>2]=0;c[a+28264>>2]=0;c[a+28248>>2]=65536;c[a+28252>>2]=0;b=0;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}return}function jh(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==16)break;kh(a,b,0);b=b+1|0}d=a+29556|0;if((c[d>>2]|0)!=0?(e=a+24972|0,(c[c[e>>2]>>2]|0)==0):0){Xf(a,e);lh(a,e,c[a+28348>>2]|0)|0;b=0}else b=0;while(1){if((b|0)>=(c[d>>2]|0))break;e=a+28348+(b<<2)|0;mh(a,c[e>>2]|0,0)|0;c[e>>2]=0;b=b+1|0}c[d>>2]=0;b=a+28268|0;d=b+80|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return}function kh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=a+28476+(b<<2)|0;e=c[b>>2]|0;if(e|0?mh(a,e,d)|0:0){c[(c[b>>2]|0)+100>>2]=0;c[b>>2]=0;d=a+29552|0;c[d>>2]=(c[d>>2]|0)+-1}return}function lh(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;k=Ec;Ec=Ec+48|0;i=k+32|0;g=k+16|0;e=k;h=c[b>>2]|0;if(c[h+248>>2]|0){c[e>>2]=131364;c[e+4>>2]=131380;c[e+8>>2]=70;We(0,0,164054,e);Za()}f=c[d>>2]|0;if(!(c[f+248>>2]|0)){c[g>>2]=131406;c[g+4>>2]=131380;c[g+8>>2]=71;We(0,0,164054,g);Za()}e=d+4|0;if((c[e>>2]|0)!=(f|0)){c[i>>2]=131421;c[i+4>>2]=131380;c[i+8>>2]=72;We(0,0,164054,i);Za()}i=b+4|0;c[i>>2]=h;e=nh(i,e)|0;a:do if((e|0)>=0){i=b+20|0;c[i>>2]=Eg(c[d+20>>2]|0)|0;h=Eg(c[d+44>>2]|0)|0;c[b+44>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19}else{c[b+24>>2]=c[d+24>>2];c[b+48>>2]=c[d+48>>2];e=0;while(1){if((e|0)>=2)break;i=b+28+(e<<2)|0;c[i>>2]=Eg(c[d+28+(e<<2)>>2]|0)|0;h=Eg(c[d+60+(e<<2)>>2]|0)|0;c[b+60+(e<<2)>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19;break a}c[b+36+(e<<2)>>2]=c[d+36+(e<<2)>>2];c[b+68+(e<<2)>>2]=c[d+68+(e<<2)>>2];e=e+1|0}if(!(c[d+56>>2]|0))e=0;else{e=Eg(c[d+52>>2]|0)|0;c[b+52>>2]=e;if(!e){e=-12;j=19;break}c[b+56>>2]=c[e+4>>2];e=0}while(1){if((e|0)==2)break;c[b+76+(e<<2)>>2]=c[d+76+(e<<2)>>2];e=e+1|0}wW(b+104|0,d+104|0,512)|0;e=b+616|0;a=d+616|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[b+84>>2]=c[d+84>>2];c[b+88>>2]=c[d+88>>2];c[b+92>>2]=c[d+92>>2];c[b+100>>2]=c[d+100>>2];c[b+632>>2]=c[d+632>>2];c[b+636>>2]=c[d+636>>2];c[b+640>>2]=c[d+640>>2];c[b+644>>2]=c[d+644>>2];c[b+648>>2]=c[d+648>>2];c[b+652>>2]=c[d+652>>2];e=0}}else j=19;while(0);if((j|0)==19)Xf(a,b);Ec=k;return e|0}function mh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b+640|0;e=c[f>>2]&d;c[f>>2]=e;a:do if(!e){d=0;while(1){e=c[a+28604+(d<<2)>>2]|0;if(!e){d=1;break a}if((e|0)==(b|0))break;else d=d+1|0}c[f>>2]=4;d=1}else d=0;while(0);return d|0}function nh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Ec;Ec=Ec+16|0;f=h;g=a+4|0;c[g>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];d=Ig(c[a>>2]|0,c[b>>2]|0)|0;if((d|0)>=0){e=a+12|0;if(c[e>>2]|0){c[f>>2]=131441;c[f+4>>2]=131456;c[f+8>>2]=1792;We(0,0,164054,f);Za()}d=c[b+12>>2]|0;if((d|0)!=0?(f=Eg(d)|0,c[e>>2]=f,(f|0)==0):0){$f(c[g>>2]|0,a);d=-12}else d=0}Ec=h;return d|0}function oh(a){a=a|0;var b=0;b=0;while(1){if((b|0)==32){b=0;break}Cf(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==256)break;Cf(a+128+(b<<2)|0);b=b+1|0}Cf(a+1156|0);Cf(a+1152|0);c[a+1160>>2]=0;c[a+1164>>2]=0;return}function ph(a){a=a|0;var b=0,d=0;d=a+20|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Se((c[a>>2]|0)+(b*68|0)+60|0);b=b+1|0}Se(a);c[d>>2]=0;Se(a+4|0);c[a+12>>2]=0;c[a+8>>2]=0;return}function qh(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;i=c[a+28604>>2]|0;c[a+24312>>2]=0;c[a+26384>>2]=0;h=0;f=1;while(1){g=c[a+28604+(f<<2)>>2]|0;if(!g)break;if(c[(c[g>>2]|0)+84>>2]|0)break;if(c[g+92>>2]|0)break;k=(c[g+84>>2]|0)<(c[i+84>>2]|0);i=k?g:i;h=k?f:h;f=f+1|0}g=h;f=c[a+28604+(h<<2)>>2]|0;while(1){if(!f)break;k=g+1|0;f=c[a+28604+(k<<2)>>2]|0;c[a+28604+(g<<2)>>2]=f;g=k}if((i|0)!=0?(j=i+640|0,c[j>>2]=c[j>>2]&-5,j=wh(a,b,i,d)|0,(j|0)<0):0)e=j;return e|0}function rh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a+44>>2]|0;a=a+40|0;e=0;while(1){if((e|0)>=(f|0)){b=8;break}g=c[a>>2]|0;if((c[g+(e*12|0)+8>>2]|0)==(b|0)){b=4;break}e=e+1|0}if((b|0)==4){if(d|0)c[d>>2]=c[g+(e*12|0)+4>>2];a=c[g+(e*12|0)>>2]|0}else if((b|0)==8)if(!d)a=0;else{c[d>>2]=0;a=0}return a|0}function sh(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+c|0;e=a[b+5>>0]&31;b=b+6|0;while(1){if(!e){f=5;break}c=((tW(d[b>>0]|d[b+1>>0]<<8|0)|0)&65535)+2|0;if((c|0)>(g-b|0)){c=0;break}if((a[b+2>>0]&-97)<<24>>24==7){e=e+-1|0;b=b+c|0}else{c=0;break}}a:do if((f|0)==5){c=a[b>>0]|0;if(!(c<<24>>24))c=0;else{e=c&255;c=b+1|0;while(1){if(!e){c=1;break a}b=((tW(d[c>>0]|d[c+1>>0]<<8|0)|0)&65535)+2|0;if((b|0)>(g-c|0)){c=0;break a}if((a[c+2>>0]&-97)<<24>>24==8){e=e+-1|0;c=c+b|0}else{c=0;break}}}}while(0);return c|0}function th(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;s=Ec;Ec=Ec+32|0;r=s+16|0;o=s+8|0;k=s;a:do if((b|0)==0|(e|0)<1)e=-1;else do if((a[b>>0]|0)==1){c[g>>2]=1;if((e|0)<7){c[k>>2]=e;We(j,16,152939,k);e=-1094995529;break a}k=a[b+5>>0]&31;q=b+e|0;n=b+6|0;g=0;while(1){if((g|0)>=(k|0))break;l=((tW(d[n>>0]|d[n+1>>0]<<8|0)|0)&65535)+2|0;if((l|0)>(q-n|0)){e=-1094995529;break a}m=NM(n,l,f,i,j)|0;if((m|0)<0){p=9;break}n=n+l|0;g=g+1|0}if((p|0)==9){c[o>>2]=g;We(j,16,152958,o);e=m;break a}m=d[n>>0]|0;g=n+1|0;l=0;while(1){if((l|0)>=(m|0)){p=17;break}k=((tW(d[g>>0]|d[g+1>>0]<<8|0)|0)&65535)+2|0;if((k|0)>(q-g|0)){e=-1094995529;break a}n=NM(g,k,f,i,j)|0;if((n|0)<0){p=15;break}g=g+k|0;l=l+1|0}if((p|0)==15){c[r>>2]=l;We(j,16,152992,r);e=n;break a}else if((p|0)==17){c[h>>2]=(a[b+4>>0]&3)+1&255;break}}else{c[g>>2]=0;g=OM(b,e,f,0,j)|0;if((g|0)<0){e=g;break a}}while(0);while(0);Ec=s;return e|0}function uh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,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;W=Ec;Ec=Ec+80|0;N=W+48|0;R=W+40|0;Q=W+32|0;P=W+24|0;O=W+16|0;M=W+8|0;j=W;J=W+52|0;S=b+4|0;K=c[S>>2]|0;V=b+27032|0;c[V>>2]=0;L=b+27028|0;c[L>>2]=0;i=K+64|0;if(!(c[i>>2]&32768)){c[b+29560>>2]=0;if(!(c[b+26384>>2]|0))c[b+24312>>2]=0;Wf(b+29676|0)}h=c[b+27040>>2]|0;do if((h|0)==4){if((f|0)>8){g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((g|0)==16777216){U=e+5|0;if((uW(d[U>>0]|d[U+1>>0]<<8|d[U+2>>0]<<16|d[U+3>>0]<<24|0)|0)>>>0>f>>>0){c[b+27036>>2]=0;break}else g=16777216}}else{if((f|0)<=3)break;g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24}U=uW(g|0)|0;if(!(U>>>0<2|U>>>0>f>>>0))c[b+27036>>2]=1}while(0);D=b+25640|0;g=Jh(D,e,f,K,c[b+27036>>2]|0,h,c[K+16>>2]|0,c[i>>2]&1)|0;do if((g|0)<0)We(K,16,132499,j);else{A=K+696|0;if(c[A>>2]&1){g=Kh(b)|0;if((g|0)<0)break}else g=0;n=b+25656|0;o=K+732|0;p=b+27024|0;B=b+29560|0;q=b+29580|0;r=b+29588|0;U=b+24312|0;s=K+592|0;t=b+25632|0;u=b+25636|0;C=b+25628|0;v=b+29676|0;w=b+27052|0;x=b+29716|0;y=K+576|0;z=b+29900|0;h=0;m=0;a:while(1){if((m|0)>=(c[n>>2]|0)){T=71;break}k=c[D>>2]|0;j=k+(m*68|0)|0;i=c[k+(m*68|0)+64>>2]|0;if((c[o>>2]|0)>7&(i|0)==0){if((c[k+(m*68|0)+44>>2]|0)==6){i=0;T=22}}else T=22;b:do if((T|0)==22){T=0;c[p>>2]=i;i=c[k+(m*68|0)+44>>2]|0;c[L>>2]=i;switch(i|0){case 19:case 13:case 12:case 11:case 10:case 9:break b;case 5:{if((a[(c[k+(m*68|0)+8>>2]|0)+1>>0]&-4)<<24>>24==-104){T=24;break a}if(!h){if(c[B>>2]|0?c[A>>2]&2|0:0){T=28;break a}ih(b)}c[q>>2]=1;h=1;break}case 1:break;case 4:case 3:case 2:{Oh(K,132650,P);break b}case 6:{l=Ph(v,k+(m*68|0)+24|0,w,K)|0;if(!(c[q>>2]|0))i=(c[x>>2]|0)!=-1;else i=1;c[q>>2]=i&1;if(c[y>>2]&8388608|0)Qh(z,c[S>>2]|0);if((l|0)>=0)break b;if(!(c[(c[S>>2]|0)+580>>2]&8))break b;else break a}case 7:{i=k+(m*68|0)+24|0;c[J>>2]=c[i>>2];c[J+4>>2]=c[i+4>>2];c[J+8>>2]=c[i+8>>2];c[J+12>>2]=c[i+12>>2];c[J+16>>2]=c[i+16>>2];j=c[s>>2]|0;if((j|0?(F=c[j+28>>2]|0,F|0):0)?(G=Oc[F&3](K,7,c[k+(m*68|0)+20>>2]|0,c[k+(m*68|0)+16>>2]|0)|0,(G|0)<0):0){T=61;break a}if((Rh(J,K,w,0)|0)<=-1?(We(c[S>>2]|0,48,132668,Q),Sh(J,(c[k+(m*68|0)+20>>2]|0)+1|0,(c[k+(m*68|0)+16>>2]|0)+-1|0)|0,(Rh(J,K,w,0)|0)<=-1):0)Rh(i,K,w,1)|0;break b}case 8:{i=c[s>>2]|0;if((i|0?(H=c[i+28>>2]|0,H|0):0)?(I=Oc[H&3](K,8,c[k+(m*68|0)+20>>2]|0,c[k+(m*68|0)+16>>2]|0)|0,(I|0)<0):0){l=I;break a}l=Th(k+(m*68|0)+24|0,K,w,c[k+(m*68|0)+12>>2]|0)|0;if((l|0)>=0)break b;if(!(c[(c[S>>2]|0)+580>>2]&8))break b;else break a}default:{l=c[k+(m*68|0)+12>>2]|0;c[R>>2]=i;c[R+4>>2]=l;We(K,48,132726,R);break b}}c[V>>2]=1;i=Lh(b,j)|0;if(i|0){k=c[C>>2]|0;l=c[u>>2]|0;c[k+(l*34768|0)+23408>>2]=0;c[k+(l*34768|0)+23404>>2]=0;if((i|0)>=0)break;We(c[S>>2]|0,16,132758,N);break}if((c[B>>2]|0)==1){if((!((m|0)<(g|0)|(c[A>>2]&1|0)==0)?(c[r>>2]|0)==0:0)?c[U>>2]|0:0){Mh(K);c[r>>2]=1}i=c[S>>2]|0;j=c[i+592>>2]|0;if(j|0?(E=Nc[c[j+24>>2]&15](i,e,f)|0,(E|0)<0):0){l=E;break a}}i=c[s>>2]|0;if(!i)j=c[t>>2]|0;else j=1;if((c[u>>2]|0)==(j|0)){if(!(c[(c[S>>2]|0)+592>>2]|0))l=Nh(b)|0;else{l=Nc[c[i+32>>2]&15](K,c[k+(m*68|0)+20>>2]|0,c[k+(m*68|0)+16>>2]|0)|0;c[u>>2]=0}if((l|0)<0?(c[(c[S>>2]|0)+580>>2]&8|0)!=0:0)break a}}while(0);m=m+1|0}do if((T|0)==24){We(c[S>>2]|0,16,132542,M);c[b+28744>>2]=-2147483648;l=-1}else if((T|0)==28){We(b,16,132567,O);l=-1094995529}else if((T|0)==61)l=G;else if((T|0)==71){g=Nh(b)|0;if((g|0)<0?c[(c[S>>2]|0)+580>>2]&8|0:0){l=g;break}l=0}while(0);k=b+26380|0;if((((c[k>>2]|0)==3?c[B>>2]|0:0)?(c[b+28216>>2]|0)==(c[(c[b+27052+(c[c[b+28212>>2]>>2]<<2)>>2]|0)+4>>2]|0):0)?c[b+29672>>2]|0:0){h=c[C>>2]|0;g=b+24972|0;if(!(c[(c[g>>2]|0)+248>>2]|0))j=0;else j=(c[h+23404>>2]|0)==0;i=h+24|0;Uh(h+696|0,c[U>>2]|0);do if(!j){g=h+728|0;if(!(c[h+23404>>2]|0)){Uh(g,0);break}else{Uh(g,c[h+23452>>2]|0);break}}else{Uh(h+728|0,g);T=h+23416|0;c[h+23452>>2]=g;S=c[g>>2]|0;c[T>>2]=c[S>>2];c[T+4>>2]=c[S+4>>2];c[T+8>>2]=c[S+8>>2];T=h+23428|0;S=(c[g>>2]|0)+32|0;c[T>>2]=c[S>>2];c[T+4>>2]=c[S+4>>2];c[T+8>>2]=c[S+8>>2];c[h+23440>>2]=c[b+25612>>2]}while(0);if(c[h+23408>>2]|0)Uh(h+760|0,c[h+25372>>2]|0);c[h+820>>2]=c[h+23404>>2];Vh(i);if(j){g=h+23416|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}}g=c[U>>2]|0;if((g|0?(c[b+25684>>2]|0)==0:0)?c[V>>2]|0:0)Bh(g+4|0,2147483647,(c[k>>2]|0)==2&1);g=(l|0)<0?l:f}while(0);Ec=W;return g|0}function vh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Ec;Ec=Ec+16|0;g=h;e=c[a+4>>2]|0;c[a+27004>>2]=0;f=(d|0)!=0;if(!f?(c[e+696>>2]&1|0)!=0:0)b=0;else{if(!(c[a+25684>>2]|0)){b=Ah(a)|0;c[a+28248>>2]=c[a+28228>>2];c[a+28252>>2]=c[a+28224>>2]}else b=0;c[a+28260>>2]=c[a+28256>>2];c[a+28264>>2]=c[a+28244>>2]}d=c[e+592>>2]|0;if(d){b=Kc[c[d+36>>2]&31](e)|0;if((b|0)<0)We(e,16,131777,g)}if(!f?(c[a+25684>>2]|0)==0:0)Bh((c[a+24312>>2]|0)+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[a+29560>>2]=0;Ec=h;return b|0}function wh(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;m=Ec;Ec=Ec+64|0;g=m;j=m+40|0;k=m+24|0;l=m+8|0;f=c[a+4>>2]|0;if(((c[f+60>>2]&8|0)==0?(c[f+64>>2]&4194304|0)==0:0)?(c[d+644>>2]|0)==0:0)f=0;else{do if(!(c[f+592>>2]|0)){h=(c[d+76>>2]|0)==2147483647;if(!h?(c[d+80>>2]|0)!=2147483647:0)break;i=c[d>>2]|0;n=h&1;c[g>>2]=n;We(f,48,131557,g);g=0-(n^1)|0;f=0;while(1){if((f|0)==4)break;o=i+(f<<2)|0;n=c[i+32+(f<<2)>>2]|0;c[j+(f<<2)>>2]=(c[o>>2]|0)+(n&g);c[l+(f<<2)>>2]=(c[o>>2]|0)+(h?n:0);c[k+(f<<2)>>2]=n<<1;f=f+1|0}Rg(j,k,l,k,c[i+80>>2]|0,c[i+68>>2]|0,c[i+72>>2]>>1)}while(0);f=yh(a,b,d)|0;if((f|0)>=0){c[e>>2]=1;f=0}}Ec=m;return f|0}function xh(a,b){a=a|0;b=b|0;a=(a|0)==0?1:a;return ((a+10|0)>(b|0)?b:a)|0}function yh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ig(b,c[d>>2]|0)|0;if((e|0)>=0){dh(b+344|0,131595,zh(a+29852|0)|0,0)|0;if(!(c[d+652>>2]|0)){c[b+84>>2]=1;e=0}else e=0}return e|0}function zh(a){a=a|0;a:do switch(c[a+8>>2]|0){case 0:switch(c[a+12>>2]|0){case 0:{a=(c[a+20>>2]|0)==2?131607:131623;break a}case 1:{a=(c[a+20>>2]|0)==2?131639:131658;break a}case 2:{a=(c[a+20>>2]|0)==2?131677:131696;break a}case 3:{a=(c[a+20>>2]|0)==2?131715:131726;break a}case 4:{a=(c[a+20>>2]|0)==2?131737:131748;break a}case 5:{a=(c[a+20>>2]|0)==2?131759:131768;break a}default:{a=160296;break a}}case 1:{a=160296;break}default:a=0}while(0);return a|0}function Ah(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,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;L=Ec;Ec=Ec+144|0;C=L+112|0;B=L+104|0;A=L+96|0;u=L+80|0;t=L+72|0;s=L+64|0;r=L+56|0;x=L+48|0;w=L+40|0;v=L+24|0;e=L+16|0;n=L+128|0;J=L;p=L+124|0;E=J;c[E>>2]=0;c[E+4>>2]=0;E=a+28216|0;do if(c[E>>2]|0){if(!(c[a+29548>>2]|0))Ch(a);o=c[a+29540>>2]|0;b=a+4|0;d=c[b>>2]|0;if((o|0)==0?(c[d+576>>2]&2048|0)!=0:0)We(d,48,131863,e);H=a+29556|0;F=a+29552|0;z=a+28348|0;I=a+24312|0;G=a+26380|0;l=a+28244|0;m=a+29544|0;k=0;j=0;f=0;g=0;d=0;a:while(1){if((k|0)>=(o|0))break;e=c[b>>2]|0;if(!(c[e+576>>2]&2048))h=a+28748+(k*12|0)|0;else{h=a+28748+(k*12|0)|0;M=c[a+28748+(k*12|0)+4>>2]|0;i=c[a+28748+(k*12|0)+8>>2]|0;c[v>>2]=c[h>>2];c[v+4>>2]=M;c[v+8>>2]=i;We(e,48,131877,v)}e=c[h>>2]|0;b:do switch(e|0){case 3:case 1:{f=Dh(a,c[a+28748+(k*12|0)+4>>2]|0,p)|0;g=Eh(a,f,n)|0;e=c[h>>2]|0;if(!g){if(((e|0)==3?(q=c[a+28476+(c[a+28748+(k*12|0)+8>>2]<<2)>>2]|0,q|0):0)?(c[q+88>>2]|0)==(f|0):0){h=j;e=0;break b}We(c[b>>2]|0,c[H>>2]|0?16:48,131892,w);h=j;d=-1094995529;e=0}else{i=f;y=18}break}default:{i=f;y=18}}while(0);c:do if((y|0)==18){y=0;switch(e|0){case 1:{e=c[b>>2]|0;if(c[e+576>>2]&2048|0){M=c[H>>2]|0;c[x>>2]=c[a+28748+(k*12|0)+4>>2];c[x+4>>2]=M;We(e,48,131919,x)}Fh(a,i,c[p>>2]^3)|0;h=j;f=i;e=g;break c}case 3:{e=a+28748+(k*12|0)+8|0;f=c[e>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(g|0))kh(a,f,0);Gh(a,c[n>>2]|0);c[a+28476+(c[e>>2]<<2)>>2]=g;e=c[a+28476+(c[e>>2]<<2)>>2]|0;if(!e){h=j;f=i;e=g;break c}c[e+100>>2]=1;c[F>>2]=(c[F>>2]|0)+1;h=j;f=i;e=g;break c}case 2:{e=Dh(a,c[a+28748+(k*12|0)+8>>2]|0,p)|0;c[n>>2]=e;g=c[a+28476+(e<<2)>>2]|0;if(g|0){kh(a,e,c[p>>2]^3);h=j;f=i;e=g;break c}e=c[b>>2]|0;if(!(c[e+576>>2]&2048)){h=j;f=i;e=0;break c}We(e,48,131950,r);h=j;f=i;e=0;break c}case 6:{e=c[I>>2]|0;if((c[z>>2]|0)==(e|0)){We(c[b>>2]|0,16,131976,s);Gh(a,0);e=c[I>>2]|0}h=a+28748+(k*12|0)+8|0;if(c[e+100>>2]|0){e=0;while(1){if((e|0)==32)break;if((c[a+28476+(e<<2)>>2]|0)==(c[I>>2]|0)){if((e|0)!=(c[h>>2]|0))We(c[b>>2]|0,16,132048,t);kh(a,e,0)}e=e+1|0}c[n>>2]=32;e=c[I>>2]|0}f=c[h>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(e|0)){if(c[e+100>>2]|0){y=42;break a}kh(a,f,0);c[a+28476+(c[h>>2]<<2)>>2]=c[I>>2];c[(c[a+28476+(c[h>>2]<<2)>>2]|0)+100>>2]=1;c[F>>2]=(c[F>>2]|0)+1;e=c[I>>2]|0}h=e+640|0;c[h>>2]=c[h>>2]|c[G>>2];h=1;f=i;e=g;break c}case 4:{e=c[a+28748+(k*12|0)+8>>2]|0;while(1){if((e|0)>=16)break;kh(a,e,0);e=e+1|0}c[n>>2]=e;h=j;f=i;e=g;break c}case 5:{while(1){if(!(c[H>>2]|0)){e=0;break}Fh(a,c[(c[z>>2]|0)+88>>2]|0,0)|0}while(1){if((e|0)==16)break;kh(a,e,0);e=e+1|0}c[n>>2]=16;e=c[I>>2]|0;c[e+88>>2]=0;c[l>>2]=0;c[m>>2]=1;c[e+92>>2]=1;e=0;while(1){if((e|0)==16)break;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}c[n>>2]=16;h=j;f=i;e=g;break c}default:{h=j;f=i;e=g;break c}}}while(0);k=k+1|0;j=h;g=e}if((y|0)==42){c[u>>2]=132111;c[u+4>>2]=132137;c[u+8>>2]=702;We(0,0,164054,u);Za()}do if(!j){if(c[H>>2]|0){f=c[z>>2]|0;e=c[I>>2]|0;if((f|0)==(e|0)){M=f+640|0;c[M>>2]=c[M>>2]|c[G>>2];break}}else e=c[I>>2]|0;if(c[e+100>>2]|0){We(c[b>>2]|0,16,132160,A);d=-1094995529;break}if(Fh(a,c[e+88>>2]|0,0)|0){We(c[b>>2]|0,16,132273,B);d=-1094995529}e=c[H>>2]|0;if(!e)e=1;else{xW(a+28352|0,z|0,e<<2|0)|0;e=(c[H>>2]|0)+1|0}M=c[I>>2]|0;c[a+28348>>2]=M;c[H>>2]=e;M=M+640|0;c[M>>2]=c[M>>2]|c[G>>2]}while(0);e=c[F>>2]|0;f=c[H>>2]|0;g=c[(c[E>>2]|0)+48>>2]|0;do if((f+e|0)>(((g|0)>1?g:1)|0)){d=c[b>>2]|0;c[C>>2]=e;c[C+4>>2]=f;c[C+8>>2]=g;We(d,16,132315,C);d=c[H>>2]|0;if((c[F>>2]|0)!=0&(d|0)==0)d=0;else{Fh(a,c[(c[a+28348+(d+-1<<2)>>2]|0)+88>>2]|0,0)|0;d=-1094995529;break}while(1){if((d|0)>=16)break;if(c[a+28476+(d<<2)>>2]|0)break;d=d+1|0}kh(a,d,0);d=-1094995529}while(0);e=0;while(1){if((e|0)>=(c[H>>2]|0))break;f=c[a+28348+(e<<2)>>2]|0;if(c[f+648>>2]|0?(D=c[f+88>>2]|0,M=c[E>>2]|0,((1<<c[M+20>>2])+-1&(c[(c[I>>2]|0)+88>>2]|0)-D|0)>(c[M+48>>2]|0)):0)Fh(a,D,0)|0;e=e+1|0}Hh(a);Ih(a);h=J+4|0;g=0;i=0;f=0;while(1){if((g|0)==256)break;e=c[a+27180+(g<<2)>>2]|0;if(!e)e=i;else{E=c[e+4>>2]|0;M=E+20|0;e=c[(i>>>0>(c[M>>2]|0)>>>0?J:M)>>2]|0;c[J>>2]=e;f=c[(f>>>0>(c[E+24>>2]|0)>>>0?J:M)+4>>2]|0;c[h>>2]=f}g=g+1|0;i=e}if((d|0)>-1?(c[F>>2]|0)==0:0){e=c[G>>2]|0;if((c[H>>2]|0)>=3?!((i|0)<=(((e|0)!=3?2:1)|0)&(f|0)<2):0)break;if(((i|0)<=((((c[a+29580>>2]|0)==0&1)<<1)+((e|0)!=3?3:2)|0)?(K=c[I>>2]|0,(c[(c[K>>2]|0)+88>>2]|0)==1):0)?(M=K+644|0,c[M>>2]=c[M>>2]|1,(c[(c[b>>2]|0)+140>>2]|0)==0):0){M=a+29576|0;c[M>>2]=c[M>>2]|2}}}else{b=a+4|0;We(c[b>>2]|0,16,131849,L+8|0);d=-1094995529}while(0);Ec=L;return (c[(c[b>>2]|0)+580>>2]&8|0?d:0)|0}function Bh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;h=i;e=c[a+12>>2]|0;if((e|0?(f=c[e+4>>2]|0,f|0):0)?(g=f+(d<<2)|0,(c[g>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;e=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[e+344>>2]|0){a=c[a>>2]|0;c[h>>2]=f;c[h+4>>2]=b;c[h+8>>2]=d;We(a,48,131824,h)}h=e+184|0;JU(h)|0;c[g>>2]=b;zW(e+60|0)|0;KU(h)|0}Ec=i;return}function Ch(a){a=a|0;var b=0,d=0,e=0;b=c[a+29556>>2]|0;do if((b|0)!=0?((c[a+29552>>2]|0)+b|0)>=(c[(c[a+28216>>2]|0)+48>>2]|0):0){e=(c[a+26380>>2]|0)==3;if((!e?(c[a+26384>>2]|0)==0:0)?c[(c[a+24312>>2]|0)+640>>2]|0:0){b=0;break}c[a+28748>>2]=1;d=c[(c[a+28348+(b+-1<<2)>>2]|0)+88>>2]|0;b=a+28752|0;c[b>>2]=d;d=d<<1;if(e)b=1;else{c[b>>2]=d;c[a+28760>>2]=1;c[a+28764>>2]=d|1;b=2}}else b=0;while(0);c[a+29540>>2]=b;return}function Dh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+26380|0;a=c[e>>2]|0;c[d>>2]=a;if((c[e>>2]|0)!=3){if(!(b&1))c[d>>2]=a^3;b=b>>1}return b|0}function Eh(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;l=Ec;Ec=Ec+16|0;j=l;h=a+29556|0;i=a+4|0;g=0;while(1){if((g|0)>=(c[h>>2]|0)){e=0;break}e=c[a+28348+(g<<2)>>2]|0;f=c[i>>2]|0;if(!(c[f+576>>2]&2048))f=e+88|0;else{m=e+88|0;n=c[m>>2]|0;c[j>>2]=g;c[j+4>>2]=n;c[j+8>>2]=e;We(f,48,132489,j);f=m}if((c[f>>2]|0)==(b|0)){k=7;break}g=g+1|0}if((k|0)==7)c[d>>2]=g;Ec=l;return e|0}function Fh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=Ec;Ec=Ec+16|0;f=h;g=h+8|0;e=c[a+4>>2]|0;if(c[e+576>>2]&2048|0){i=c[a+29556>>2]|0;c[f>>2]=b;c[f+4>>2]=i;We(e,48,132463,f)}b=Eh(a,b,g)|0;if(b|0?mh(a,b,d)|0:0)Gh(a,c[g>>2]|0);Ec=h;return b|0}function Gh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+28348+(b<<2)|0;c[d>>2]=0;f=a+29556|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if(e|0)xW(d|0,a+28348+(b+1<<2)|0,e-b<<2|0)|0;return}function Hh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=Ec;Ec=Ec+32|0;f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){We(b,48,132445,g);d=a+29556|0;b=0;while(1){if(b>>>0>=(c[d>>2]|0)>>>0)break a;i=c[a+28348+(b<<2)>>2]|0;h=c[e>>2]|0;k=c[i+88>>2]|0;j=c[i+84>>2]|0;i=c[c[i>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=k;c[f+8>>2]=j;c[f+12>>2]=i;We(h,48,132425,f);b=b+1|0}}while(0);Ec=g;return}function Ih(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=Ec;Ec=Ec+32|0;f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){We(b,48,132408,g);b=0;while(1){if((b|0)==16)break a;d=c[a+28476+(b<<2)>>2]|0;if(d|0){h=c[e>>2]|0;j=c[d+88>>2]|0;i=c[d+84>>2]|0;d=c[c[d>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=j;c[f+8>>2]=i;c[f+12>>2]=d;We(h,48,132425,f)}b=b+1|0}}while(0);Ec=g;return}function Jh(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=Ec;Ec=Ec+48|0;x=C+40|0;A=C+32|0;z=C+24|0;y=C+16|0;k=C;w=C+44|0;v=(g|0)!=0;if((e|0)<=-1){c[k>>2]=159582;c[k+4>>2]=159596;c[k+8>>2]=137;We(0,0,164054,k);Za()}q=b;r=b+e|0;s=a+4|0;xM(s,a+8|0,(j|0?0:262144)+e|0);a:do if(c[s>>2]|0){c[a+12>>2]=0;t=a+16|0;c[t>>2]=0;u=a+20|0;p=(i|0)==173;l=v?0:e;g=q;b:while(1){e=b+l|0;while(1){i=r-g|0;if(i>>>0<=3){g=0;break a}k=g-q|0;if((k|0)==(l|0)){B=8;break}if((k|0)>(l|0))We(f,24,152391,y);k=zM(g,e)|0;i=g+(i>>>0>k>>>0?k:i)|0;k=i;g=r-k|0;if(!g)break b;o=k-q|0;n=l-o|0;g=g>>>0>n>>>0?n:g;if((l|0)>(o|0)){o=g;break}else g=i+g|0}if((B|0)==8){B=0;c[w>>2]=0;k=g;g=yM(h,k,i,w,f)|0;k=k+(i>>>0>h>>>0?h:i)|0;if((g|0)<0)break a;else{o=g;l=k-q+g|0}}g=c[u>>2]|0;i=c[t>>2]|0;if((g|0)<=(i|0)){g=g+1|0;i=AM(c[a>>2]|0,g,68)|0;if(!i){g=-12;break a}c[a>>2]=i;e=c[u>>2]|0;yW(i+(e*68|0)|0,0,(g-e|0)*68|0)|0;e=c[a>>2]|0;m=c[t>>2]|0;c[e+(m*68|0)+56>>2]=1024;n=Mg(1024,4)|0;c[e+(m*68|0)+60>>2]=n;if(!n){g=-12;break a}c[u>>2]=g;i=c[t>>2]|0}n=c[a>>2]|0;m=n+(i*68|0)|0;e=k;g=BM(e,o,s,m,j)|0;if((g|0)<0)break a;if(v?(o|0)!=0&(o|0)!=(g|0):0){c[A>>2]=g;c[A+4>>2]=o;We(f,48,152459,A)}c[t>>2]=(c[t>>2]|0)+1;k=r-k|0;g=e+(k>>>0>g>>>0?g:k)|0;e=g;k=r-e|0;if(k>>>0>3){if((k|0)<4)g=0;else g=uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0;g=(g|0)!=480&1}else g=1;g=CM(m,g)|0;c[n+(i*68|0)+12>>2]=g;g=DM(n+(i*68|0)+24|0,c[n+(i*68|0)+8>>2]|0,g)|0;if((g|0)<0)break a;if(p)g=EM(m,f)|0;else g=FM(m,f)|0;if((g|0)<1){if((g|0)<0){c[x>>2]=c[n+(i*68|0)+44>>2];We(f,16,152504,x)}}else if((c[n+(i*68|0)+4>>2]|0)>=1){g=e;continue}c[t>>2]=(c[t>>2]|0)+-1;g=e}if((c[t>>2]|0)>0)g=0;else{We(f,16,152434,z);g=-1094995529}}else g=-12;while(0);Ec=C;return g|0}function Kh(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;m=Ec;Ec=Ec+32|0;k=m;h=m+4|0;i=a+25656|0;j=a+25640|0;g=a+4|0;a=0;f=0;b=0;a:while(1){if((f|0)>=(c[i>>2]|0))break;d=c[j>>2]|0;e=d+(f*68|0)+44|0;b:do switch(c[e>>2]|0){case 8:case 7:{a=f;break}case 1:case 5:case 2:{d=Sh(h,(c[d+(f*68|0)+8>>2]|0)+1|0,(c[d+(f*68|0)+4>>2]|0)+-1|0)|0;if((d|0)<0){We(c[g>>2]|0,16,152358,k);if(!(c[(c[g>>2]|0)+580>>2]&8))break b;else{l=12;break a}}d=(b|0)!=0;if(!(d&(sM(h)|0)!=0?(b|0)==(c[e>>2]|0):0))a=f;if(!d)b=c[e>>2]|0;break}default:{}}while(0);f=f+1|0}if((l|0)==12)a=d;Ec=m;return a|0}function Lh(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,u=0,v=0,w=0;v=Ec;Ec=Ec+34832|0;t=v+34824|0;s=v+34816|0;r=v+34808|0;q=v+34800|0;o=v+34784|0;j=v+34776|0;h=v+34768|0;i=v;m=a+25628|0;e=c[m>>2]|0;u=a+25636|0;g=c[u>>2]|0;f=e+(g*34768|0)|0;if(!g)l=(c[a+29560>>2]|0)==0;else l=0;p=l&1;d=e+(g*34768|0)+4|0;w=b+24|0;c[d>>2]=c[w>>2];c[d+4>>2]=c[w+4>>2];c[d+8>>2]=c[w+8>>2];c[d+12>>2]=c[w+12>>2];c[d+16>>2]=c[w+16>>2];d=Vk(a,f,b)|0;a:do if((d|0)>=0){if((c[e+(g*34768|0)+21836>>2]|0)>0){c[e+(g*34768|0)+23408>>2]=0;c[e+(g*34768|0)+23404>>2]=0;d=0;break}d=(c[e+(g*34768|0)+21808>>2]|0)==0;if(!d?(c[a+29560>>2]|0)!=0:0)k=11;else{if(c[a+29588>>2]|0){We(c[a+4>>2]|0,16,148658,h);d=-1094995529;break}if(d){h=a+29560|0;do if(c[h>>2]|0){if(c[u>>2]|0){d=Nh(a)|0;if((d|0)<0?c[(c[a+4>>2]|0)+580>>2]&8|0:0)break a;w=c[m>>2]|0;wW(i|0,w|0,34768)|0;wW(w|0,f|0,34768)|0;wW(f|0,i|0,34768)|0;f=c[m>>2]|0}e=a+24312|0;if(!(c[e>>2]|0)){d=-1094995529;break a}g=a+26384|0;d=(c[g>>2]|0)==0;if((c[a+26380>>2]|0)!=3){if(d){d=-1094995529;break a}d=vh(a,c[m>>2]|0,1)|0;if((d|0)<0)break a;else{d=g;break}}if(!d){d=-1094995529;break a}if((c[a+27028>>2]|0)!=5){d=-1094995529;break a}We(a,24,148675,j);d=vh(a,c[m>>2]|0,1)|0;Bh((c[e>>2]|0)+4|0,2147483647,0);Bh((c[e>>2]|0)+4|0,2147483647,1);c[e>>2]=0;if((d|0)<0)break a;else d=g}else d=a+26384|0;while(0);if(!(c[d>>2]|0)){d=a+24312|0;e=c[d>>2]|0;if(e|0?(c[a+25684>>2]|0)==0:0)Bh(e+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[d>>2]=0;g=f;d=h}else{g=f;d=h}}else k=11}if((k|0)==11){g=f;d=a+29560|0}f=c[d>>2]|0;e=(f|0)==0;do if(e){if((g|0)!=(c[m>>2]|0)){c[o>>2]=148701;c[o+4>>2]=137858;c[o+8>>2]=2090;We(0,0,164054,o);Za()}if((c[a+26384>>2]|0)==0?(n=c[(c[a+4>>2]|0)+732>>2]|0,(n|0)>7):0){if(!(c[a+27024>>2]|0)){d=0;break a}if((n|0)>15){if((c[g+840>>2]|0)==3){d=0;break a}if((n|0)>23){if((c[g+840>>2]|0)!=1){d=0;break a}if((n|0)>31)if((c[a+27028>>2]|0)==5)if((n|0)>47){d=0;break a}else break;else if((c[a+29716>>2]|0)<0|(n|0)>47){d=0;break a}else break}}}}while(0);do if(!l){w=c[(c[a+27180+(c[g+27776>>2]<<2)>>2]|0)+4>>2]|0;o=c[a+28212>>2]|0;d=c[o>>2]|0;if((d|0)==(c[w>>2]|0)?(c[o+64>>2]|0)==(c[w+64>>2]|0):0){if((c[a+28216>>2]|0)==(c[(c[a+27052+(d<<2)>>2]|0)+4>>2]|0))break;We(c[a+4>>2]|0,16,148748,r);d=-1094995529;break a}We(c[a+4>>2]|0,16,148720,q);d=-1094995529;break a}while(0);do if(e){d=Wk(a,g,b,p)|0;if((d|0)<0)break a}else{d=c[a+26380>>2]|0;e=c[g+21824>>2]|0;if((d|0)==(e|0)?(c[a+25684>>2]|0)==((c[b+64>>2]|0)==0|0):0){if(c[a+24312>>2]|0)break;d=c[a+4>>2]|0;c[t>>2]=f+1;We(d,16,148850,t);d=-1094995529;break a}w=c[a+4>>2]|0;c[s>>2]=d;c[s+4>>2]=e;We(w,16,148788,s);d=-1094995529;break a}while(0);d=Xk(a,g,b)|0;if((d|0)>=0){c[u>>2]=(c[u>>2]|0)+1;d=0}}while(0);Ec=v;return d|0}function Mh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=Ec;Ec=Ec+16|0;g=h;f=c[(c[a+28>>2]|0)+20>>2]|0;if(c[a+696>>2]&1|0){e=a+592|0;b=c[e>>2]|0;do if(b|0){d=f+336|0;if(!(c[d>>2]|0)){JU((c[f>>2]|0)+36|0)|0;c[d>>2]=1;b=c[e>>2]|0;if(!b)break}if(!(c[b+60>>2]&1)){c[f+340>>2]=1;Uk(c[f>>2]|0)}}while(0);b=f+184|0;JU(b)|0;d=f+300|0;if((c[d>>2]|0)==4)We(a,24,148617,g);c[d>>2]=4;zW(f+60|0)|0;KU(b)|0}Ec=h;return}function Nh(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;u=Ec;Ec=Ec+32|0;e=u+16|0;d=u;i=c[a+4>>2]|0;t=a+25636|0;r=c[t>>2]|0;s=a+25628|0;j=c[s>>2]|0;b=j+21812|0;c[b>>2]=2147483647;if((r|0)<1|(c[i+592>>2]|0)!=0)b=0;else{k=r+-1|0;q=a+27008|0;h=c[q>>2]|0;if((c[j+(k*34768|0)+21792>>2]|0)>=(h|0)){c[d>>2]=137789;c[d+4>>2]=137858;c[d+8>>2]=2746;We(0,0,164054,d);Za()}a:do if((r|0)!=1){if((r|0)<=0){c[e>>2]=137882;c[e+4>>2]=137858;c[e+8>>2]=2758;We(0,0,164054,e);Za()}p=a+27012|0;b=0;while(1){if((b|0)==(r|0))break;f=c[p>>2]|0;e=H(h,f)|0;c[j+(b*34768|0)+596>>2]=0;g=H(f,c[j+(b*34768|0)+21792>>2]|0)|0;g=g+(c[j+(b*34768|0)+21788>>2]|0)|0;d=0;while(1){if((d|0)==(r|0))break;o=H(f,c[j+(d*34768|0)+21792>>2]|0)|0;o=o+(c[j+(d*34768|0)+21788>>2]|0)|0;o=(b|0)==(d|0)|(o|0)<(g|0)?e:(e|0)>(o|0)?o:e;d=d+1|0;e=o}c[j+(b*34768|0)+21812>>2]=e;b=b+1|0}Qc[c[i+704>>2]&7](i,8,j,0,r,34768)|0;e=c[s>>2]|0;c[a+27004>>2]=c[e+(k*34768|0)+21792>>2];d=e+596|0;b=1;while(1){if((b|0)==(r|0))break;c[d>>2]=(c[d>>2]|0)+(c[e+(b*34768|0)+596>>2]|0);b=b+1|0}b=a+25708|0;if(!(c[b>>2]|0))b=0;else{c[b>>2]=0;g=a+26376|0;h=a+26380|0;f=0;while(1){if((f|0)==(r|0)){b=0;break a}o=c[s>>2]|0;i=o+(f*34768|0)|0;j=o+(f*34768|0)+21792|0;m=c[j>>2]|0;l=c[q>>2]|0;k=(m|0)<(l|0)?m+1|0:l;l=c[((m|0)>=(l|0)?p:o+(f*34768|0)+21788|0)>>2]|0;m=o+(f*34768|0)+21804|0;n=k+-1|0;o=o+(f*34768|0)+21800|0;e=c[m>>2]|0;while(1){if((e|0)>=(k|0))break;c[j>>2]=e;if((e|0)>(c[m>>2]|0))b=0;else b=c[o>>2]|0;if((e|0)==(n|0))d=l;else d=c[p>>2]|0;ij(a,i,b,d);if((c[g>>2]|0)==0?(c[h>>2]|0)==3:0)b=1;else b=2;e=b+e|0}f=f+1|0}}}else{c[b>>2]=H(c[a+27012>>2]|0,h)|0;c[a+25708>>2]=0;b=hj(i,j)|0;c[a+27004>>2]=c[(c[s>>2]|0)+21792>>2]}while(0);c[t>>2]=0}Ec=u;return b|0}function Oh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;c[f>>2]=d;ui(1,a,b,f);Ec=e;return}function Ph(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;u=Ec;Ec=Ec+32|0;s=u+16|0;r=u;l=a+36|0;m=a+40|0;n=a+44|0;o=a+176|0;p=a+208|0;q=a+224|0;k=a+240|0;i=0;a:while(1){if((Ki(b)|0)<=16){f=i;break}if(!(Li(b,16)|0)){f=i;break}else h=0;while(1){if((Ki(b)|0)<8){f=-1094995529;break a}h=(Li(b,8)|0)+h|0;if((Mi(b,8)|0)!=255){g=0;break}}do{if((Ki(b)|0)<8){f=-1094995529;break a}g=(Li(b,8)|0)+g|0}while((Mi(b,8)|0)==255);f=Ki(b)|0;if(g>>>0>((f|0)/8|0)>>>0){t=9;break}j=(Ni(b)|0)+(g<<3)|0;do switch(h|0){case 1:{f=Oi(a,b,d,e)|0;t=21;break}case 4:{f=Pi(a,b,g)|0;t=21;break}case 5:{f=Qi(l,b,g)|0;t=21;break}case 6:{Ri(m,b);f=i;break}case 0:{f=Si(n,b,d,e)|0;t=21;break}case 45:{Ti(o,b);f=i;break}case 47:{Ui(p,b);f=i;break}case 56:{Vi(q,b);f=i;break}case 147:{Wi(k,b);f=i;break}default:{c[s>>2]=h;We(e,48,137607,s);f=i}}while(0);if((t|0)==21){t=0;g=(f|0)<0;if(g&(f|0)!=-1397768184)break;else f=g?f:i}Xi(b,j-(Ni(b)|0)|0);Yi(b);i=f}if((t|0)==9){c[r>>2]=h;c[r+4>>2]=g<<3;c[r+8>>2]=f;We(e,16,137570,r);f=-1094995529}Ec=u;return f|0}function Qh(b,f){b=b|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0;n=Ec;Ec=Ec+96|0;j=n+80|0;i=n+72|0;h=n+40|0;m=n+32|0;l=n+24|0;k=n+16|0;o=n+8|0;We(f,48,137315,n);c[o>>2]=d[b>>0];We(f,48,137348,o);switch(a[b>>0]|0){case 0:{o=b+1|0;c[k>>2]=d[o>>0];We(f,48,137375,k);switch(a[o>>0]|0){case 2:{c[l>>2]=e[b+2>>1];We(f,48,137409,l);break}case 3:{c[m>>2]=e[b+4>>1];We(f,48,137443,m);break}default:{}}r=+(d[b+7>>0]|0)/255.0;q=+(d[b+8>>0]|0)/255.0;p=+(d[b+9>>0]|0)/255.0;g[h>>3]=+(d[b+6>>0]|0)/255.0;g[h+8>>3]=r;g[h+16>>3]=q;g[h+24>>3]=p;We(f,48,137478,h);break}case 1:{o=b+10|0;c[i>>2]=d[o>>0];We(f,48,137523,i);if(!(a[o>>0]|0)){g[j>>3]=+(e[b+12>>1]|0)/100.0;We(f,48,137546,j)}break}default:{}}Ec=n;return}
function TN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function UN(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function VN(a,b){a=a|0;b=b|0;var d=0,e=0;dO(b)|0;d=(gO(b)|0)==0;c[a>>2]=d&1;if(d){d=a+4|0;c[d>>2]=PN(b,7)|0;e=a+12|0;c[e>>2]=gO(b)|0;c[a+8>>2]=PN(b,6)|0;UN(b,3);c[a+16>>2]=gO(b)|0;UN(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)UN(b,16);UN(b,8);fO(b)}fO(b);return}function WN(a,b){a=a|0;b=b|0;var d=0;d=(gO(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=gO(b)|0;c[a+12>>2]=gO(b)|0;c[a+4>>2]=PN(b,16)|0;fO(b)}return}function XN(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=Ec;Ec=Ec+16|0;h=j+8|0;g=j;d=c[d+64+(c[a+136>>2]<<2)>>2]|0;if(!d)f=-12;else{if(c[(c[d+4>>2]|0)+216>>2]|0){d=PN(b,4)|0;a=a+88|0;c[a>>2]=0;switch(d|0){case 2:case 10:case 12:{We(e,48,155953,g);d=2;i=6;break}case 1:case 9:case 11:{We(e,48,155967,h);d=1;i=6;break}default:{}}if((i|0)==6)c[a>>2]=d;PN(b,2)|0;PN(b,1)|0;fO(b);f=f+-1|0}TN(b,f<<3);f=0}Ec=j;return f|0}function YN(a,d){a=a|0;d=d|0;var e=0,f=0;e=0;while(1){f=(PN(d,16)|0)&65535;if((e|0)==3)break;b[a+4+(e<<2)>>1]=f;b[a+4+(e<<2)+2>>1]=PN(d,16)|0;e=e+1|0}b[a+16>>1]=f;b[a+18>>1]=PN(d,16)|0;c[a+20>>2]=bO(d,32)|0;c[a+24>>2]=bO(d,32)|0;c[a>>2]=2;return}function ZN(a,d){a=a|0;d=d|0;b[a+4>>1]=bO(d,16)|0;b[a+6>>1]=bO(d,16)|0;c[a>>2]=2;return}function _N(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Ec;Ec=Ec+16|0;f=h+8|0;e=h;PN(b,4)|0;PN(b,1)|0;PN(b,1)|0;g=dO(b)|0;a:do if(g>>>0>15){c[e>>2]=g;We(d,16,155886,e);e=-1094995529}else{e=dO(b)|0;if(e>>>0>15){c[f>>2]=e;We(d,16,155917,f);e=-1094995529;break}c[a+136>>2]=e;e=1;while(1){if((e|0)>(g|0)){e=0;break a}dO(b)|0;e=e+1|0}}while(0);Ec=h;return e|0}function $N(a,b,c){a=a|0;b=b|0;c=c|0;do if((c|0)>=7){if((PN(b,8)|0)==255){UN(b,8);c=c+-8|0}else c=c+-7|0;UN(b,8);UN(b,8);if((bO(b,32)|0)==1195456820){c=cO(a+92|0,b,c)|0;break}else{TN(b,c<<3);c=0;break}}else c=-22;while(0);return c|0}function aO(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=PN(b,8)|0;return}function bO(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=PN(a,b)|0;break}else{b=b+-16|0;c=(PN(a,16)|0)<<b;a=c|(PN(a,b)|0);break}else a=0;while(0);return a|0}function cO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:do if((e|0)>=3){if((PN(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}UN(d,8);e=e+1|0}}UN(d,1);if(((PN(d,1)|0)!=0?(UN(d,1),g=PN(d,5)|0,UN(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=nW(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=hW(f|0,M()|0,e|0,((e|0)<0)<<31>>31|0)|0;f=M()|0;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=gj(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(PN(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(PN(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(PN(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}UN(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function dO(a){a=a|0;var b=0,c=0,e=0;e=eO(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;TN(a,b);return (bO(a,b+1|0)|0)+-1|0}function eO(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=bO(d,32)|0;Ec=b;return a|0}function fO(a){a=a|0;UN(a,1);return}function gO(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function hO(a,b){a=a|0;b=b|0;var d=0;a=Ec;Ec=Ec+16|0;d=a;c[d>>2]=b;Se(b+1648|0);Se(b+1652|0);Se(b+1656|0);Se(b+1660|0);Se(b+1664|0);Se(b+1668|0);Se(b+1672|0);Se(b+1680|0);Se(b+1676|0);Se(b+1688|0);Se(d);Ec=a;return}function iO(a){a=a|0;var b=0,c=0,e=0;e=uO(a,32)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;vO(a,b);return (wO(a,b+1|0)|0)+-1|0}function jO(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function kO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function lO(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uW(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[126412+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[127436+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[120443+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function mO(b){b=b|0;var c=0,d=0,e=0;c=0;while(1){if((c|0)==6)break;d=b+(c<<6)|0;e=d+16|0;do{a[d>>0]=16;d=d+1|0}while((d|0)<(e|0));a[b+1536+c>>0]=16;a[b+1542+c>>0]=16;c=c+1|0}d=b+384|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+448|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+512|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+576|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+640|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+704|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+768|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+832|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+896|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+960|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1024|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1088|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1152|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1216|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1280|0;c=156637;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1344|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1408|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1472|0;c=156701;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));return}function nO(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;u=Ec;Ec=Ec+16|0;t=u;m=0;a:while(1){if((m|0)>=4){i=20;break}q=(m|0)==3?3:1;r=(m|0)>0?64:16;s=(m|0)>1;o=m+-2|0;l=1<<(m<<1)+4;l=(l|0)<64?l:64;p=(m|0)==0;n=0;while(1){if((n|0)>=6)break;b:do if(!(((jO(b)|0)&255)<<24>>24)){h=iO(b)|0;if(h|0){h=H(h,q)|0;if(n>>>0<h>>>0){i=8;break a}h=n-h|0;wW(f+(m*384|0)+(n<<6)|0,f+(m*384|0)+(h<<6)|0,r|0)|0;if(s)a[f+1536+(o*6|0)+n>>0]=a[f+1536+(o*6|0)+h>>0]|0}}else{if(s){i=(lO(b)|0)+8|0;a[f+1536+(o*6|0)+n>>0]=i;h=0}else{h=0;i=8}while(1){if((h|0)>=(l|0))break b;if(p){j=(d[155565+h>>0]|0)<<2;k=155549+h|0}else{j=(d[155645+h>>0]|0)<<3;k=155581+h|0}j=j+(d[k>>0]|0)|0;k=(lO(b)|0)+i|0;a[f+(m*384|0)+(n<<6)+j>>0]=k;h=h+1|0;i=k&255}}while(0);n=n+q|0}m=m+1|0}if((i|0)==8){c[t>>2]=h;We(e,16,156596,t);h=-1094995529}else if((i|0)==20)if((c[g+4>>2]|0)==3){h=0;while(1){if((h|0)==64)break;a[f+1216+h>>0]=a[f+832+h>>0]|0;a[f+1280+h>>0]=a[f+896+h>>0]|0;a[f+1408+h>>0]=a[f+1024+h>>0]|0;a[f+1472+h>>0]=a[f+1088+h>>0]|0;h=h+1|0}a[f+1543>>0]=a[f+1537>>0]|0;a[f+1544>>0]=a[f+1538>>0]|0;a[f+1546>>0]=a[f+1540>>0]|0;a[f+1547>>0]=a[f+1541>>0]|0;h=0}else h=0;Ec=u;return h|0}function oO(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;o=Ec;Ec=Ec+32|0;n=o+16|0;m=o+8|0;i=o;if(a[f+21>>0]|0)a[f+1629>>0]=(iO(b)|0)+2;a[f+1630>>0]=jO(b)|0;k=(jO(b)|0)&255;a[f+1631>>0]=k;a:do if(!(k<<24>>24))j=12;else{a[f+1632>>0]=iO(b)|0;p=iO(b)|0;h=p&255;k=f+1633|0;a[k>>0]=h;if((p&254)>>>0>5){We(e,16,156497,i);break}else i=0;while(1){if((i|0)>(h&255|0)){j=12;break a}p=(tO(b)|0)&255;a[f+1634+i>>0]=p;if(p<<24>>24)We(e,24,156561,m);p=(tO(b)|0)&255;a[f+1640+i>>0]=p;if(p<<24>>24)We(e,24,156561,n);i=i+1|0;h=a[k>>0]|0}}while(0);if((j|0)==12?(p=f+1646|0,a[p>>0]=iO(b)|0,l=iO(b)|0,a[f+1647>>0]=l,n=c[g+44>>2]|0,(((n|0)>10?n+-10|0:0)|0)>=(d[p>>0]|0)):0){p=c[g+48>>2]|0;Ec=o;return ((((p|0)>10?p+-10|0:0)|0)<(l&255|0)?-1094995529:0)|0}Ec=o;return -1094995529}function pO(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;w=b+44|0;x=b+1656|0;c[x>>2]=Mg((c[w>>2]|0)+1|0,4)|0;y=b+48|0;v=b+1660|0;c[v>>2]=Mg((c[y>>2]|0)+1|0,4)|0;z=d+13384|0;t=Mg(c[z>>2]|0,4)|0;i=b+1664|0;c[i>>2]=t;e=c[x>>2]|0;a:do if((e|0)!=0?!((t|0)==0|(c[v>>2]|0)==0):0){q=b+1648|0;if(a[b+52>>0]|0){e=c[q>>2]|0;if(!e){c[q>>2]=Mg(c[w>>2]|0,4)|0;f=Mg(c[y>>2]|0,4)|0;c[b+1652>>2]=f;e=c[q>>2]|0;if(!e){e=-12;break}}else f=c[b+1652>>2]|0;if(!f){e=-12;break}else g=0;while(1){h=c[w>>2]|0;if((g|0)>=(h|0))break;t=g+1|0;s=c[z>>2]|0;c[e+(g<<2)>>2]=((H(s,t)|0)/(h|0)|0)-((H(s,g)|0)/(h|0)|0);g=t}g=d+13388|0;e=0;while(1){h=c[y>>2]|0;if((e|0)>=(h|0))break;t=e+1|0;s=c[g>>2]|0;c[f+(e<<2)>>2]=((H(s,t)|0)/(h|0)|0)-((H(s,e)|0)/(h|0)|0);e=t}e=c[x>>2]|0}c[e>>2]=0;f=0;g=0;while(1){if((f|0)>=(c[w>>2]|0))break;t=(c[(c[q>>2]|0)+(f<<2)>>2]|0)+g|0;s=f+1|0;c[e+(s<<2)>>2]=t;f=s;g=t}g=c[v>>2]|0;c[g>>2]=0;n=b+1652|0;f=0;h=0;while(1){if((f|0)>=(c[y>>2]|0)){f=0;g=0;break}t=(c[(c[n>>2]|0)+(f<<2)>>2]|0)+h|0;s=f+1|0;c[g+(s<<2)>>2]=t;f=s;h=t}while(1){h=c[z>>2]|0;if((g|0)>=(h|0))break;t=f+(g>>>0>(c[e+(f<<2)>>2]|0)>>>0&1)|0;c[(c[i>>2]|0)+(g<<2)>>2]=t;f=t;g=g+1|0}m=H(c[d+13388>>2]|0,h)|0;s=b+1668|0;c[s>>2]=Mg(m,4)|0;e=b+1672|0;c[e>>2]=Mg(m,4)|0;f=b+1676|0;c[f>>2]=Mg(m,4)|0;t=d+13420|0;g=(c[t>>2]|0)+2|0;g=Mg(H(g,g)|0,4)|0;p=b+1688|0;c[p>>2]=g;o=c[s>>2]|0;if(((o|0)!=0?(r=c[e>>2]|0,(r|0)!=0):0)?(u=c[f>>2]|0,!((g|0)==0|(u|0)==0)):0){i=0;while(1){if((i|0)>=(m|0)){e=0;l=0;break}j=c[z>>2]|0;k=(i|0)%(j|0)|0;l=(i|0)/(j|0)|0;f=c[w>>2]|0;e=0;while(1){if((e|0)>=(f|0)){e=0;break}g=e+1|0;if(k>>>0<(c[(c[x>>2]|0)+(g<<2)>>2]|0)>>>0)break;else e=g}g=c[y>>2]|0;f=0;while(1){if((f|0)>=(g|0)){h=0;break}h=f+1|0;if(l>>>0<(c[(c[v>>2]|0)+(h<<2)>>2]|0)>>>0){h=f;break}else f=h}f=0;g=0;while(1){if((g|0)>=(e|0)){g=0;break}f=(H(c[(c[q>>2]|0)+(g<<2)>>2]|0,c[(c[n>>2]|0)+(h<<2)>>2]|0)|0)+f|0;g=g+1|0}while(1){if((g|0)>=(h|0))break;f=(H(c[(c[n>>2]|0)+(g<<2)>>2]|0,j)|0)+f|0;g=g+1|0}l=H(c[(c[q>>2]|0)+(e<<2)>>2]|0,l-(c[(c[v>>2]|0)+(h<<2)>>2]|0)|0)|0;l=f+k+l-(c[(c[x>>2]|0)+(e<<2)>>2]|0)|0;c[o+(i<<2)>>2]=l;c[r+(l<<2)>>2]=i;i=i+1|0}b:while(1){if((l|0)>=(c[y>>2]|0))break;m=l+1|0;h=0;while(1){if((h|0)>=(c[w>>2]|0)){l=m;continue b}g=c[v>>2]|0;i=g+(m<<2)|0;j=h+1|0;g=c[g+(l<<2)>>2]|0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;f=c[x>>2]|0;k=f+(j<<2)|0;f=c[f+(h<<2)>>2]|0;while(1){if(f>>>0>=(c[k>>2]|0)>>>0)break;c[u+(c[o+((H(c[z>>2]|0,g)|0)+f<<2)>>2]<<2)>>2]=e;f=f+1|0}g=g+1|0}e=e+1|0;h=j}}g=Mg(e,4)|0;c[b+1680>>2]=g;if(g){f=0;while(1){if((f|0)<(c[y>>2]|0))e=0;else break;while(1){h=c[w>>2]|0;if((e|0)>=(h|0))break;u=H(c[z>>2]|0,c[(c[v>>2]|0)+(f<<2)>>2]|0)|0;c[g+((H(h,f)|0)+e<<2)>>2]=(c[(c[x>>2]|0)+(e<<2)>>2]|0)+u;e=e+1|0}f=f+1|0}i=c[d+13336>>2]|0;h=c[d+13328>>2]|0;g=c[p>>2]|0;j=c[t>>2]|0;n=g+(j+3<<2)|0;c[b+1684>>2]=n;e=0;while(1){f=j+2|0;if((e|0)>=(f|0))break;c[g+((H(f,e)|0)<<2)>>2]=-1;c[g+(e<<2)>>2]=-1;e=e+1|0;j=c[t>>2]|0}l=i-h|0;m=l<<1;k=0;e=j;while(1){if((k|0)>(e|0)){e=0;break a}i=k>>l;h=0;while(1){if((h|0)>(e|0))break;f=(H(c[z>>2]|0,i)|0)+(h>>l)|0;f=c[(c[s>>2]|0)+(f<<2)>>2]<<m;g=0;while(1){if((g|0)>=(l|0))break;b=1<<g;f=((b&k|0)==0?0:b<<1<<g)+f+((b&h|0)==0?0:b<<g)|0;g=g+1|0}c[n+((H(e+2|0,k)|0)+h<<2)>>2]=f;h=h+1|0;e=c[t>>2]|0}k=k+1|0}}else e=-12}else e=-12}else e=-12;while(0);return e|0}function qO(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(sO(a)|0)|0}function rO(a,b){a=a|0;b=b|0;var d=0,e=0;b=a+128+(b<<2)|0;d=c[b>>2]|0;if(d|0?(e=a+392|0,(c[e>>2]|0)==(c[d+4>>2]|0)):0)c[e>>2]=0;Cf(b);return}function sO(a){a=a|0;return c[a+8>>2]|0}function tO(a){a=a|0;a=iO(a)|0;return ((a&1)+-1^a>>>1)+1|0}function uO(a,b){a=a|0;b=b|0;var d=0,e=0;e=Ec;Ec=Ec+32|0;d=e;if((b|0)<26)a=xO(a,b)|0;else{c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=wO(d,b)|0}Ec=e;return a|0}function vO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function wO(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=kO(a,b)|0;break}else{b=b+-16|0;c=(kO(a,16)|0)<<b;a=c|(kO(a,b)|0);break}else a=0;while(0);return a|0}function xO(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function yO(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,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;X=Ec;Ec=Ec+272|0;W=X+256|0;V=X+248|0;U=X+240|0;T=X+232|0;S=X+224|0;R=X+216|0;Q=X+208|0;P=X+200|0;N=X+192|0;M=X+176|0;L=X+168|0;K=X+160|0;J=X+152|0;F=X+144|0;D=X+136|0;C=X+120|0;B=X+112|0;A=X+104|0;z=X+96|0;y=X+88|0;v=X+80|0;u=X+72|0;s=X+64|0;r=X+56|0;p=X+40|0;o=X+32|0;n=X+24|0;m=X+16|0;l=X+8|0;k=X;j=kO(e,4)|0;c[d>>2]=j;a:do if(j>>>0<=15){if(h|0?(c[h+(j<<2)>>2]|0)==0:0){c[l>>2]=j;We(i,16,157005,l);h=-1094995529;break}h=(kO(e,3)|0)+1|0;t=d+68|0;c[t>>2]=h;if((h|0)>7){c[m>>2]=h;We(i,16,157028,m);h=-1094995529;break}a[d+156>>0]=kO(e,1)|0;h=AO(e,i,d+300|0,c[t>>2]|0)|0;if((h|0)>=0){h=iO(e)|0;c[f>>2]=h;if(h>>>0>15){c[n>>2]=h;We(i,16,156062,n);h=-1094995529;break}h=iO(e)|0;m=d+4|0;c[m>>2]=h;if(h>>>0>3){c[o>>2]=h;We(i,16,157065,o);h=-1094995529;break}if((h|0)==3){h=(jO(e)|0)&255;a[d+8>>0]=h}else h=a[d+8>>0]|0;if(h<<24>>24)c[m>>2]=0;G=d+13376|0;c[G>>2]=iO(e)|0;h=iO(e)|0;I=d+13380|0;c[I>>2]=h;h=Yg(c[G>>2]|0,h,0,i)|0;if((h|0)>=0){if(jO(e)|0){k=c[m>>2]|0;l=(k|0)<2?2:1;k=(k|0)<3?2:1;h=d+28|0;c[h>>2]=H(k,iO(e)|0)|0;j=d+32|0;c[j>>2]=H(iO(e)|0,k)|0;k=d+36|0;c[k>>2]=H(iO(e)|0,l)|0;l=H(iO(e)|0,l)|0;c[d+40>>2]=l;if(c[i+64>>2]&65536|0){x=c[j>>2]|0;E=c[k>>2]|0;c[p>>2]=c[h>>2];c[p+4>>2]=x;c[p+8>>2]=E;c[p+12>>2]=l;We(i,48,157098,p);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}E=d+12|0;c[E>>2]=c[h>>2];c[E+4>>2]=c[h+4>>2];c[E+8>>2]=c[h+8>>2];c[E+12>>2]=c[h+12>>2]}E=d+44|0;c[E>>2]=(iO(e)|0)+8;h=(iO(e)|0)+8|0;if(c[m>>2]|0?(q=c[E>>2]|0,(h|0)!=(q|0)):0){c[r>>2]=q;c[r+4>>2]=h;We(i,16,157174,r);h=-1094995529;break}c[d+48>>2]=h;h=BO(i,d)|0;if((h|0)>=0){h=iO(e)|0;x=h+4|0;w=d+60|0;c[w>>2]=x;if(x>>>0>16){c[s>>2]=h;We(i,16,157257,s);h=-1094995529;break}m=(jO(e)|0)!=0;if(m)n=0;else n=(c[t>>2]|0)+-1|0;x=i+580|0;l=n;while(1){if((l|0)>=(c[t>>2]|0))break;f=d+72+(l*12|0)|0;c[f>>2]=(iO(e)|0)+1;j=d+72+(l*12|0)+4|0;c[j>>2]=iO(e)|0;c[d+72+(l*12|0)+8>>2]=(iO(e)|0)+-1;k=c[f>>2]|0;if(k>>>0>16){O=34;break}h=c[j>>2]|0;if((h|0)>=(k|0)){c[v>>2]=h;We(i,24,157357,v);if(c[x>>2]&8|0){h=-1094995529;break a}h=c[j>>2]|0;if((h|0)>15){h=-1094995529;break a}c[f>>2]=h+1}l=l+1|0}if((O|0)==34){c[u>>2]=k+-1;We(i,16,157306,u);h=-1094995529;break}b:do if(!m){j=d+72+(n*12|0)|0;k=d+72+(n*12|0)+4|0;l=d+72+(n*12|0)+8|0;h=0;while(1){if((h|0)>=(n|0))break b;c[d+72+(h*12|0)>>2]=c[j>>2];c[d+72+(h*12|0)+4>>2]=c[k>>2];c[d+72+(h*12|0)+8>>2]=c[l>>2];h=h+1|0}}while(0);p=d+13320|0;c[p>>2]=(iO(e)|0)+3;q=d+13324|0;c[q>>2]=iO(e)|0;r=d+13328|0;c[r>>2]=(iO(e)|0)+2;j=iO(e)|0;k=c[r>>2]|0;s=d+13332|0;c[s>>2]=k+j;l=c[p>>2]|0;if((l+-3|0)>>>0>27){c[y>>2]=l;We(i,16,157400,y);h=-1094995529;break}h=c[q>>2]|0;if(h>>>0>30){c[z>>2]=h;We(i,16,157438,z);h=-1094995529;break}if(k>>>0>=l>>>0|k>>>0<2){We(i,16,157495,A);h=-1094995529;break}if(j>>>0>30){c[B>>2]=j;We(i,16,157530,B);h=-1094995529;break}n=d+13344|0;c[n>>2]=iO(e)|0;o=d+13348|0;c[o>>2]=iO(e)|0;B=(jO(e)|0)&255;a[d+634>>0]=B;do if(B<<24>>24){h=d+635|0;mO(h);if(!(jO(e)|0))break;h=nO(e,i,h,d)|0;if((h|0)<0)break a}while(0);a[d+13196>>0]=jO(e)|0;a[d+13197>>0]=jO(e)|0;B=jO(e)|0;c[d+64>>2]=B;do if(B|0){h=d+13300|0;a[h>>0]=(kO(e,4)|0)+1;j=d+13301|0;a[j>>0]=(kO(e,4)|0)+1;k=(iO(e)|0)+3|0;c[d+13304>>2]=k;c[d+13308>>2]=(iO(e)|0)+k;h=a[h>>0]|0;j=a[j>>0]|0;k=c[E>>2]|0;if((k|0)<(((h&255)>(j&255)?h:j)&255|0)){c[C>>2]=h&255;c[C+4>>2]=j&255;c[C+8>>2]=k;We(i,16,157590,C);h=-1094995529;break a}else{a[d+13312>>0]=jO(e)|0;break}}while(0);h=iO(e)|0;k=d+2184|0;c[k>>2]=h;if(h>>>0>64){c[D>>2]=h;We(i,16,157652,D);h=-1094995529;break}else j=0;while(1){if(j>>>0>=h>>>0)break;h=CO(e,i,d+2188+(j*172|0)|0,d,0)|0;if((h|0)<0)break a;j=j+1|0;h=c[k>>2]|0}D=(jO(e)|0)&255;a[d+13198>>0]=D;c:do if(D<<24>>24){j=iO(e)|0;h=j&255;k=d+13296|0;a[k>>0]=h;j=j&255;if(j>>>0>32){c[F>>2]=j;We(i,16,157682,F);h=-1094995529;break a}else j=0;while(1){if((j|0)>=(h&255|0))break c;b[d+13200+(j<<1)>>1]=kO(e,c[w>>2]|0)|0;a[d+13264+j>>0]=jO(e)|0;j=j+1|0;h=a[k>>0]|0}}while(0);a[d+13316>>0]=jO(e)|0;a[d+13317>>0]=jO(e)|0;c[d+160>>2]=0;c[d+164>>2]=1;if(jO(e)|0)DO(e,i,g,d);do if(jO(e)|0){h=0;j=0;while(1){if((h|0)==1)break;h=h+1|0;j=jO(e)|0}EO(e,7);if(!j)break;c[d+13352>>2]=jO(e)|0;c[d+13356>>2]=jO(e)|0;c[d+13360>>2]=jO(e)|0;c[d+13364>>2]=jO(e)|0;if(jO(e)|0)We(i,24,157716,J);c[d+13368>>2]=jO(e)|0;if(jO(e)|0)We(i,24,157772,K);c[d+13372>>2]=jO(e)|0;if(!(jO(e)|0))break;We(i,24,157829,L)}while(0);if(!g){l=d+12|0;k=d+16|0;h=l;j=k;k=c[k>>2]|0;l=c[l>>2]|0}else{j=d+12|0;l=(c[j>>2]|0)+(c[d+224>>2]|0)|0;c[j>>2]=l;j=d+16|0;k=(c[j>>2]|0)+(c[d+228>>2]|0)|0;c[j>>2]=k;h=d+20|0;c[h>>2]=(c[h>>2]|0)+(c[d+232>>2]|0);h=d+24|0;c[h>>2]=(c[h>>2]|0)+(c[d+236>>2]|0);h=d+12|0}m=c[d+20>>2]|0;f=c[d+24>>2]|0;do if(l>>>0<(2147483647-k|0)>>>0&m>>>0<(2147483647-f|0)>>>0){if((k+l|0)>>>0>=(c[G>>2]|0)>>>0){O=87;break}if((f+m|0)>>>0>=(c[I>>2]|0)>>>0)O=87}else O=87;while(0);if((O|0)==87){O=c[j>>2]|0;c[M>>2]=l;c[M+4>>2]=O;c[M+8>>2]=m;c[M+12>>2]=f;We(i,24,157886,M);if(c[x>>2]&8|0){h=-1094995529;break}We(i,24,157925,N);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;O=d+28|0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;c[O+12>>2]=0}k=c[p>>2]|0;l=(c[q>>2]|0)+k|0;h=d+13336|0;c[h>>2]=l;j=k+-1|0;c[d+13340>>2]=j;if(l>>>0>6){c[P>>2]=l;We(i,16,157962,P);h=-1094995529;break}if(l>>>0<4){c[Q>>2]=l;We(i,16,157991,Q);c[R>>2]=c[h>>2];Oh(i,158054,R);h=-1094995529;break}Q=c[G>>2]|0;O=1<<l;P=O+-1+Q>>l;c[d+13384>>2]=P;R=c[I>>2]|0;O=R+-1+O>>l;c[d+13388>>2]=O;c[d+13392>>2]=H(O,P)|0;c[d+13396>>2]=Q>>k;c[d+13400>>2]=R>>k;P=c[r>>2]|0;c[d+13404>>2]=Q>>P;c[d+13408>>2]=R>>P;c[d+13412>>2]=Q>>j;c[d+13416>>2]=R>>j;j=l-P|0;c[d+13420>>2]=(1<<j)+-1;c[d+13448>>2]=((c[E>>2]|0)*6|0)+-48;if((1<<k)+-1&(Q|R)|0){We(i,16,158071,S);h=-1094995529;break}h=c[n>>2]|0;if(h>>>0>j>>>0){c[T>>2]=h;We(i,16,158104,T);h=-1094995529;break}h=c[o>>2]|0;if(h>>>0>j>>>0){c[U>>2]=h;We(i,16,158158,U);h=-1094995529;break}h=c[s>>2]|0;if(h>>>0>(l>>>0<5?l:5)>>>0){c[V>>2]=h;We(i,16,158212,V);h=-1094995529;break}h=qO(e)|0;if((h|0)>=0){h=0;break}c[W>>2]=0-h;We(i,16,158255,W);h=-1094995529}}}}else{c[k>>2]=j;We(i,16,156980,k);h=-1094995529}while(0);Ec=X;return h|0}function zO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=Ec;Ec=Ec+16|0;g=h;e=a+64+(b<<2)|0;d=c[e>>2]|0;if(d|0){f=a+388|0;if((c[f>>2]|0)==(c[d+4>>2]|0)){c[f>>2]=0;d=0}else d=0;while(1){if((d|0)==64)break;i=c[a+128+(d<<2)>>2]|0;if(i|0?(c[c[i+4>>2]>>2]|0)==(b|0):0)rO(a,d);d=d+1|0}i=c[e>>2]|0;if(i|0?(c[f>>2]|0)==(c[i+4>>2]|0):0){c[g>>2]=156895;c[g+4>>2]=156959;c[g+8>>2]=92;We(0,0,164054,g);Za()}}Cf(e);Ec=h;return}function AO(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;m=Ec;Ec=Ec+32|0;k=m+16|0;j=m+8|0;g=m;a:do if((IO(b,d,e)|0)>=0?(i=f+-1|0,h=(f|0)>1,(qO(b)|0)>=((h&1)<<4|8|0)):0){a[e+35>>0]=kO(b,8)|0;f=0;while(1){if((f|0)>=(i|0))break;a[e+320+f>>0]=jO(b)|0;a[e+327+f>>0]=jO(b)|0;f=f+1|0}b:do if(h){f=i;while(1){if((f|0)>=8){f=0;break b}EO(b,2);f=f+1|0}}else f=0;while(0);while(1){if((f|0)>=(i|0)){f=0;break a}if(a[e+320+f>>0]|0?(IO(b,d,e+40+(f*40|0)|0)|0)<0:0){l=13;break}if(a[e+327+f>>0]|0){if((qO(b)|0)<8){l=16;break}a[e+40+(f*40|0)+35>>0]=kO(b,8)|0}f=f+1|0}if((l|0)==13){c[j>>2]=f;We(d,16,158980,j);f=-1;break}else if((l|0)==16){c[k>>2]=f;We(d,16,159023,k);f=-1;break}}else l=3;while(0);if((l|0)==3){We(d,16,158953,g);f=-1}Ec=m;return f|0}function BO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;f=i;h=b+44|0;e=c[h>>2]|0;a:do switch(e|0){case 8:{switch(c[b+4>>2]|0){case 0:{a=8;break}case 1:{a=0;break}case 2:{c[b+56>>2]=4;g=23;break a}case 3:{c[b+56>>2]=5;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 9:{switch(c[b+4>>2]|0){case 0:{a=30;break}case 1:{a=62;break}case 2:{c[b+56>>2]=72;g=23;break a}case 3:{c[b+56>>2]=68;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 10:{switch(c[b+4>>2]|0){case 0:{a=171;break}case 1:{a=64;break}case 2:{c[b+56>>2]=66;g=23;break a}case 3:{c[b+56>>2]=70;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 12:{switch(c[b+4>>2]|0){case 0:{a=169;break}case 1:{a=125;break}case 2:{c[b+56>>2]=129;g=23;break a}case 3:{c[b+56>>2]=133;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}default:{c[f>>2]=c[b+4>>2];c[f+4>>2]=e;We(a,16,158843,f);a=-1094995529}}while(0);if((g|0)==23){a=qg(c[b+56>>2]|0)|0;if(!a)a=-22;else{c[b+13436>>2]=0;c[b+13424>>2]=0;g=d[a+5>>0]|0;c[b+13428>>2]=g;c[b+13432>>2]=g;a=d[a+6>>0]|0;c[b+13440>>2]=a;c[b+13444>>2]=a;c[b+52>>2]=(c[h>>2]|0)>8&1;a=0}}Ec=i;return a|0}function CO(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;q=Ec;Ec=Ec+48|0;n=q+40|0;m=q+32|0;k=q+24|0;o=q+16|0;l=q+8|0;j=q;h=f+2188|0;a:do if(((h|0)!=(e|0)?(i=f+2184|0,(c[i>>2]|0)!=0):0)?((jO(b)|0)&255)<<24>>24!=0:0){do if(g){h=(iO(b)|0)+1|0;g=c[i>>2]|0;if(g>>>0<h>>>0){c[j>>2]=h;c[j+4>>2]=g;We(d,16,158653,j);g=-1094995529;break a}else{m=g-h|0;c[e+8>>2]=c[f+2188+(m*172|0)+4>>2];break}}else m=((e-h|0)/172|0)+-1|0;while(0);g=jO(b)|0;n=iO(b)|0;h=n+1|0;if(n>>>0>32767){c[l>>2]=h;We(d,16,158711,l);g=-1094995529;break}k=H(1-(g<<1&510)|0,h)|0;l=f+2188+(m*172|0)+4|0;h=0;g=0;j=0;while(1){if((j|0)>(c[l>>2]|0))break;n=jO(b)|0;a[e+140+g>>0]=n;if(!((n&255|0)==0?((jO(b)|0)&255)<<24>>24==0:0)){if((j|0)<(c[l>>2]|0))i=(c[f+2188+(m*172|0)+12+(j<<2)>>2]|0)+k|0;else i=k;c[e+12+(g<<2)>>2]=i;g=g+1|0;h=(i>>>31)+h|0}j=j+1|0}if(g>>>0>31){c[o>>2]=g;We(d,16,158747,o);g=-1094995529;break}n=e+4|0;c[n>>2]=g;c[e>>2]=h;if(g){m=1;while(1){if((m|0)>=(g|0))break;i=c[e+12+(m<<2)>>2]|0;j=a[e+140+m>>0]|0;h=m;while(1){g=h+-1|0;if((h|0)<=0)break;k=e+12+(g<<2)|0;l=c[k>>2]|0;if((i|0)>=(l|0)){h=g;continue}c[e+12+(h<<2)>>2]=l;d=e+140+g|0;a[e+140+h>>0]=a[d>>0]|0;c[k>>2]=i;a[d>>0]=j;h=g}m=m+1|0;g=c[n>>2]|0}h=c[e>>2]|0}if(h>>>0>1){i=0;g=h;while(1){g=g+-1|0;if(i>>>0>=h>>>1>>>0){g=0;break a}h=e+12+(i<<2)|0;o=c[h>>2]|0;f=e+140+i|0;d=a[f>>0]|0;b=e+12+(g<<2)|0;c[h>>2]=c[b>>2];h=e+140+g|0;a[f>>0]=a[h>>0]|0;c[b>>2]=o;a[h>>0]=d;i=i+1|0;h=c[e>>2]|0}}else g=0}else p=32;while(0);b:do if((p|0)==32){c[e>>2]=iO(b)|0;j=iO(b)|0;g=c[e>>2]|0;if((g|j)>>>0>15){We(d,16,158775,k);g=-1094995529;break}o=g+j|0;c[e+4>>2]=o;if(!o)g=0;else{h=0;i=0;while(1){if(i>>>0>=g>>>0){h=0;i=0;break}o=iO(b)|0;g=o+1|0;if(o>>>0>32767){p=37;break}g=h-g|0;c[e+12+(i<<2)>>2]=g;a[e+140+i>>0]=jO(b)|0;h=g;i=i+1|0;g=c[e>>2]|0}if((p|0)==37){c[m>>2]=g;We(d,16,158811,m);g=-1094995529;break}while(1){if(i>>>0>=j>>>0){g=0;break b}p=iO(b)|0;g=p+1|0;if(p>>>0>32767)break;p=g+h|0;c[e+12+((c[e>>2]|0)+i<<2)>>2]=p;o=(jO(b)|0)&255;a[(c[e>>2]|0)+i+(e+140)>>0]=o;h=p;i=i+1|0}c[n>>2]=g;We(d,16,158811,n);g=-1094995529}}while(0);Ec=q;return g|0}function DO(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=Ec;Ec=Ec+240|0;F=G+64|0;E=G+56|0;D=G+48|0;C=G+40|0;p=G+24|0;k=G+16|0;i=G+8|0;z=G+88|0;A=G+68|0;B=g+160|0;We(e,48,158280,G);do if(jO(b)|0){h=(kO(b,8)|0)&255;if(h>>>0<17){w=75092+(h<<3)|0;x=c[w+4>>2]|0;y=B;c[y>>2]=c[w>>2];c[y+4>>2]=x;break}if((h|0)==255){c[B>>2]=kO(b,16)|0;c[g+164>>2]=kO(b,16)|0;break}else{c[i>>2]=h;We(e,24,158294,i);break}}while(0);y=jO(b)|0;c[g+168>>2]=y;if(y|0)c[g+172>>2]=jO(b)|0;y=jO(b)|0;c[g+176>>2]=y;a:do if(y|0){c[g+180>>2]=kO(b,3)|0;y=g+184|0;c[y>>2]=jO(b)|0;h=jO(b)|0;c[g+188>>2]=h;if(c[y>>2]|0?(j=g+56|0,(c[j>>2]|0)==0):0)c[j>>2]=12;if(h|0){h=g+192|0;a[h>>0]=kO(b,8)|0;i=g+193|0;a[i>>0]=kO(b,8)|0;j=g+194|0;a[j>>0]=kO(b,8)|0;if(!(Ai(d[h>>0]|0)|0))a[h>>0]=2;if(!(Bi(d[i>>0]|0)|0))a[i>>0]=2;if(!(Ci(d[j>>0]|0)|0)){a[j>>0]=2;break}if(!(a[j>>0]|0)){i=g+56|0;switch(c[i>>2]|0){case 5:{h=73;break}case 70:{h=77;break}case 133:{h=137;break}default:break a}c[i>>2]=h}}}while(0);y=jO(b)|0;c[g+196>>2]=y;if(y|0){c[g+200>>2]=iO(b)|0;c[g+204>>2]=iO(b)|0}c[g+208>>2]=jO(b)|0;c[g+212>>2]=jO(b)|0;c[g+216>>2]=jO(b)|0;c[A>>2]=c[b>>2];c[A+4>>2]=c[b+4>>2];c[A+8>>2]=c[b+8>>2];c[A+12>>2]=c[b+12>>2];c[A+16>>2]=c[b+16>>2];wW(z|0,B|0,140)|0;if((qO(b)|0)>67?(uO(b,21)|0)==1048576:0){h=g+220|0;c[h>>2]=0;We(e,24,158318,k);h=c[h>>2]|0}else{h=jO(b)|0;c[g+220>>2]=h}if((h|0?(n=c[g+4>>2]|0,o=(n|0)<2?2:1,n=(n|0)<3?2:1,l=g+224|0,c[l>>2]=H(n,iO(b)|0)|0,m=g+228|0,c[m>>2]=H(iO(b)|0,n)|0,n=g+232|0,c[n>>2]=H(iO(b)|0,o)|0,o=H(iO(b)|0,o)|0,c[g+236>>2]=o,f|0):0)?c[e+64>>2]&65536|0:0){x=c[m>>2]|0;y=c[n>>2]|0;c[p>>2]=c[l>>2];c[p+4>>2]=x;c[p+8>>2]=y;c[p+12>>2]=o;We(e,48,158350,p);c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0}l=g+240|0;m=g+264|0;n=g+268|0;o=g+272|0;f=g+276|0;p=g+280|0;q=g+284|0;r=g+288|0;s=g+292|0;t=g+296|0;u=g+244|0;v=g+248|0;w=g+252|0;x=g+260|0;y=g+68|0;i=g+256|0;h=0;b:while(1){g=jO(b)|0;c[l>>2]=g;if(g|0){j=(h|0)!=0;if(!(j|(qO(b)|0)>65)){We(e,24,158430,C);wW(B|0,z|0,140)|0;c[b>>2]=c[A>>2];c[b+4>>2]=c[A+4>>2];c[b+8>>2]=c[A+8>>2];c[b+12>>2]=c[A+12>>2];c[b+16>>2]=c[A+16>>2];h=1;continue}c[u>>2]=wO(b,32)|0;k=wO(b,32)|0;c[v>>2]=k;if(j){g=c[u>>2]|0;c[D>>2]=k;c[D+4>>2]=g;We(e,32,158475,D)}g=jO(b)|0;c[w>>2]=g;if(g|0)c[i>>2]=iO(b)|0;g=jO(b)|0;c[x>>2]=g;if(g|0)FO(b,1,c[y>>2]|0)}g=jO(b)|0;c[m>>2]=g;do if(g|0)if((h|0)!=0|(qO(b)|0)>7){c[n>>2]=jO(b)|0;c[o>>2]=jO(b)|0;c[f>>2]=jO(b)|0;c[p>>2]=iO(b)|0;c[q>>2]=iO(b)|0;c[r>>2]=iO(b)|0;c[s>>2]=iO(b)|0;c[t>>2]=iO(b)|0;break}else{We(e,24,158496,E);wW(B|0,z|0,140)|0;c[b>>2]=c[A>>2];c[b+4>>2]=c[A+4>>2];c[b+8>>2]=c[A+8>>2];c[b+12>>2]=c[A+12>>2];c[b+16>>2]=c[A+16>>2];h=1;continue b}while(0);if((h|0)!=0|(qO(b)|0)>0)break;We(e,24,158580,F);wW(B|0,z|0,140)|0;c[b>>2]=c[A>>2];c[b+4>>2]=c[A+4>>2];c[b+8>>2]=c[A+8>>2];c[b+12>>2]=c[A+12>>2];c[b+16>>2]=c[A+16>>2];h=1}Ec=G;return}function EO(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function FO(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=Ec;Ec=Ec+16|0;i=k;if(b){b=jO(a)|0;f=jO(a)|0;if(!(f|b))e=0;else{e=jO(a)|0;if(!e){EO(a,4);EO(a,4)}else{EO(a,8);EO(a,5);EO(a,1);EO(a,5);EO(a,4);EO(a,4);EO(a,4)}EO(a,5);EO(a,5);EO(a,5)}}else{e=0;f=0;b=0}h=(b|0)==0;g=(f|0)==0;f=0;while(1){if((f|0)>=(d|0))break;if((jO(a)|0)==0?(jO(a)|0)==0:0)if(!(jO(a)|0))j=13;else b=1;else{iO(a)|0;j=13}if((j|0)==13){j=0;l=iO(a)|0;b=l+1|0;if(l>>>0>31){j=14;break}}if(!h)GO(a,b,e);if(!g)GO(a,b,e);f=f+1|0}if((j|0)==14){c[i>>2]=b;We(0,16,158634,i)}Ec=k;return}function GO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(c|0)==0;c=0;while(1){if((c|0)==(b|0))break;iO(a)|0;iO(a)|0;if(!d){iO(a)|0;iO(a)|0}HO(a);c=c+1|0}return}function HO(a){a=a|0;EO(a,1);return}function IO(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=Ec;Ec=Ec+48|0;h=j+32|0;g=j+24|0;if((qO(b)|0)<88)d=-1;else{a[e>>0]=kO(b,2)|0;a[e+1>>0]=jO(b)|0;f=kO(b,5)|0;k=f&255;i=e+2|0;a[i>>0]=k;f=f&255;a:do switch(k<<24>>24){case 1:{We(d,48,159066,j);d=0;break}case 2:{We(d,48,159090,j+8|0);d=0;break}case 3:{We(d,48,159117,j+16|0);d=0;break}default:if((f|0)==4){We(d,48,159155,g);d=0;break a}else{c[h>>2]=f;We(d,24,159190,h);d=0;break a}}while(0);while(1){f=jO(b)|0;g=f&255;if((d|0)==32)break;a[e+3+d>>0]=g;if(!((f&255|0)==0|((d|0)<1|(a[i>>0]|0)!=0)))a[i>>0]=d;d=d+1|0}a[e+36>>0]=g;a[e+37>>0]=jO(b)|0;a[e+38>>0]=jO(b)|0;a[e+39>>0]=jO(b)|0;EO(b,16);EO(b,16);EO(b,12);d=0}Ec=j;return d|0}function JO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+(b<<2)|0;d=c[f>>2]|0;a:do if(d|0){e=a+384|0;if((c[e>>2]|0)==(c[d+4>>2]|0)){c[e>>2]=0;d=0}else d=0;while(1){if((d|0)==16)break a;e=c[a+64+(d<<2)>>2]|0;if(e|0?(c[c[e+4>>2]>>2]|0)==(b|0):0)zO(a,d);d=d+1|0}}while(0);Cf(f);return}function KO(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;n=Ec;Ec=Ec+32|0;l=n;m=n+8|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;a=Jh(m,a,b,j,f,g,173,1)|0;a:do if((a|0)>=0){k=m+16|0;g=0;while(1){if((g|0)>=(c[k>>2]|0))break a;b=c[m>>2]|0;f=c[b+(g*68|0)+44>>2]|0;switch(f|0){case 32:{a=AN(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 33:{a=BN(b+(g*68|0)+24|0,j,d,i)|0;if((a|0)<0)break a;break}case 34:{a=CN(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 40:case 39:{a=DN(b+(g*68|0)+24|0,j,e,d,f)|0;if((a|0)<0)break a;break}default:{c[l>>2]=f;We(j,40,159699,l)}}g=g+1|0}}while(0);ph(m);Ec=n;return ((h&8|0)==0?0:a)|0}function LO(a,b){a=a|0;b=b|0;var d=0,e=0;e=Ec;Ec=Ec+16|0;d=e;a=MO(a,d)|0;if((a|0)>=0){Jf(b,c[d>>2]|0);xf(d);a=0}Ec=e;return a|0}function MO(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[d>>2]|0;do if(!(c[a+4>>2]|0)){a=c[a>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){a=-11;break}a=NO()|0;if(!a)a=-12;else{c[b>>2]=c[c[d>>2]>>2];c[c[d>>2]>>2]=a;a=0}}else a=-541478725;while(0);return a|0}function NO(){var a=0;a=Of(72)|0;if(a|0)Af(a);return a|0}function OO(){var a=0,b=0;b=Ec;Ec=Ec+16|0;a=b;do if((PO(a,159734)|0)!=4)if((PO(a,159747)|0)==4){a=c[a>>2]|0;break}else{a=QO()|0;break}else a=c[a>>2]|0;while(0);Ec=b;return a|0}function PO(a,b){a=a|0;b=b|0;var c=0;c=Ec;Ec=Ec+16|0;b=XO(b,0,c)|0;if((b|0)==-1)b=-1;else{a=aU(b,a,4)|0;zT(b)|0;b=a}Ec=c;return b|0}function QO(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=Ec;Ec=Ec+160|0;a=l+120|0;h=l;i=l+132|0;k=181160;j=c[k>>2]|0;k=c[k+4>>2]|0;if((c[14732]|0)>>>0>=121){c[a>>2]=159759;c[a+4>>2]=159786;c[a+8>>2]=77;We(0,0,164054,a);Za()}e=(j|0)==0&(k|0)==0;a=0;b=0;d=0;a:while(1){f=bb()|0;g=f-a|0;do if(((b<<1|1)+a|0)<(f|0)){a=181160;a=hW(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=M()|0;m=181160;c[m>>2]=a;c[m+4>>2]=b;m=181928+((a&511)<<2)|0;c[m>>2]=(c[m>>2]|0)+(g>>>0<3294638521?g:g+1000328775|0);if((f-d|0)>31249){a=iW(a|0,b|0,j|0,k|0)|0;b=M()|0;if(e)if(b>>>0>0|(b|0)==0&a>>>0>64)break a;else break;else if(b>>>0>0|(b|0)==0&a>>>0>4)break a;else break}}else{m=181928+((c[45290]&511)<<2)|0;b=H(c[m>>2]|0,1664525)|0;c[m>>2]=(g>>>0<3294638521?g:g+1000328775|0)+1013904223+b}while(0);a=f;b=g;d=(d|0)==0?f:d}RO(h,160)|0;SO(h,181928,2048);TO(h,i);m=uW(c[i>>2]|0)|0;m=(uW(c[i+16>>2]|0)|0)+m|0;Ec=l;return m|0}function RO(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=d>>>5;switch(d|0){case 160:{c[b+80>>2]=1732584193;c[b+84>>2]=-271733879;c[b+88>>2]=-1732584194;c[b+92>>2]=271733878;c[b+96>>2]=-1009589776;d=209;e=5;break}case 224:{c[b+80>>2]=-1056596264;c[b+84>>2]=914150663;c[b+88>>2]=812702999;c[b+92>>2]=-150054599;c[b+96>>2]=-4191439;c[b+100>>2]=1750603025;c[b+104>>2]=1694076839;c[b+108>>2]=-1090891868;d=210;e=5;break}case 256:{c[b+80>>2]=1779033703;c[b+84>>2]=-1150833019;c[b+88>>2]=1013904242;c[b+92>>2]=-1521486534;c[b+96>>2]=1359893119;c[b+100>>2]=-1694144372;c[b+104>>2]=528734635;c[b+108>>2]=1541459225;d=210;e=5;break}default:d=-22}if((e|0)==5){c[b+112>>2]=d;d=b+8|0;c[d>>2]=0;c[d+4>>2]=0;d=0}return d|0}function SO(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;i=b+8|0;k=i;f=c[k>>2]|0;k=hW(f|0,c[k+4>>2]|0,e|0,0)|0;j=M()|0;c[i>>2]=k;c[i+4>>2]=j;i=b+112|0;j=b+80|0;k=b+16|0;f=f&63;h=0;while(1){if((h|0)==(e|0))break;g=f+1|0;a[b+16+f>>0]=a[d+h>>0]|0;if((g|0)==64){Tc[c[i>>2]&255](j,k);f=0}else f=g;h=h+1|0}return}function TO(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=Ec;Ec=Ec+16|0;f=h;g=b+8|0;k=g;k=sW(c[k>>2]|0,c[k+4>>2]|0,3)|0;k=UO(k,M()|0)|0;j=M()|0;i=f;c[i>>2]=k;c[i+4>>2]=j;SO(b,159810,1);while(1){if(0==0?(c[g>>2]&63|0)==56:0)break;SO(b,260868,1)}SO(b,f,8);f=0;while(1){if((f|0)>=(d[b>>0]|0|0))break;j=uW(c[b+80+(f<<2)>>2]|0)|0;k=e+(f<<2)|0;a[k>>0]=j;a[k+1>>0]=j>>8;a[k+2>>0]=j>>16;a[k+3>>0]=j>>24;f=f+1|0}Ec=h;return}function UO(a,b){a=a|0;b=b|0;a=uW(a|0)|0;b=uW(b|0)|0;L(a|0);return b|0}function VO(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,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;E=Ec;Ec=Ec+256|0;w=E;x=c[a>>2]|0;y=a+4|0;z=c[y>>2]|0;A=a+8|0;B=c[A>>2]|0;C=a+12|0;D=c[C>>2]|0;o=a+16|0;p=c[o>>2]|0;q=a+20|0;r=c[q>>2]|0;s=a+24|0;t=c[s>>2]|0;u=a+28|0;v=c[u>>2]|0;e=0;f=r;g=p;h=D;i=B;j=z;k=x;l=v;m=t;while(1){if((e|0)==64)break;if(e>>>0<16){n=b+(e<<2)|0;n=uW(d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24|0)|0}else{F=c[w+(e+-15<<2)>>2]|0;n=c[w+(e+-2<<2)>>2]|0;n=(c[w+(e+-7<<2)>>2]|0)+(c[w+(e+-16<<2)>>2]|0)+((F<<14|F>>>18)^F>>>3^(F<<25|F>>>7))+((n<<13|n>>>19)^n>>>10^(n<<15|n>>>17))|0}c[w+(e<<2)>>2]=n;J=((g<<26|g>>>6)^(g<<21|g>>>11)^(g<<7|g>>>25))+l+((m^f)&g^m)+n+(c[75256+(e<<2)>>2]|0)|0;I=m;H=k;G=j;n=i;F=g;e=e+1|0;g=J+h|0;k=((i|j)&k|i&j)+((k<<30|k>>>2)^(k<<19|k>>>13)^(k<<10|k>>>22))+J|0;m=f;l=I;j=H;i=G;h=n;f=F}c[a>>2]=x+k;c[y>>2]=z+j;c[A>>2]=B+i;c[C>>2]=D+h;c[o>>2]=p+g;c[q>>2]=r+f;c[s>>2]=t+m;c[u>>2]=v+l;Ec=E;return}function WO(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,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=Ec;Ec=Ec+320|0;n=v;o=c[a>>2]|0;p=a+4|0;q=c[p>>2]|0;r=a+8|0;s=c[r>>2]|0;t=a+12|0;u=c[t>>2]|0;l=a+16|0;m=c[l>>2]|0;f=m;g=u;h=s;i=q;j=o;k=0;while(1){if((k|0)==80)break;if(k>>>0<16){e=b+(k<<2)|0;e=uW(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0}else{e=c[n+(k+-8<<2)>>2]^c[n+(k+-3<<2)>>2]^c[n+(k+-14<<2)>>2]^c[n+(k+-16<<2)>>2];e=e<<1|e>>>31}c[n+(k<<2)>>2]=e;f=f+(j<<5|j>>>27)+e|0;do if(k>>>0<40)if(k>>>0<20){e=((g^h)&i^g)+1518500249|0;break}else{e=(h^i^g)+1859775393|0;break}else if(k>>>0<60){e=((h|i)&g|h&i)+-1894007588|0;break}else{e=(h^i^g)+-899497514|0;break}while(0);y=j;x=h;w=g;h=i<<30|i>>>2;j=f+e|0;k=k+1|0;i=y;g=x;f=w}c[a>>2]=o+j;c[p>>2]=q+i;c[r>>2]=s+h;c[t>>2]=u+g;c[l>>2]=m+f;Ec=v;return}function XO(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=Ec;Ec=Ec+48|0;h=i+16|0;g=i+8|0;f=i;e=i+24|0;c[e>>2]=d;if(!(b&64))e=0;else{j=(c[e>>2]|0)+(4-1)&~(4-1);d=c[j>>2]|0;c[e>>2]=j+4;e=d}c[f>>2]=e;e=BT(a,b|524288,f)|0;if((e|0)!=-1?(c[g>>2]=1,(AT(e,2,g)|0)==-1):0)We(0,48,159812,h);Ec=i;return e|0}function YO(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;e=cf((MT(c[b>>2]|0)|0)+1|0)|0;f=c[b>>2]|0;if(!e)e=0;else{g=f+(tU(f,159841)|0)|0;k=e;f=e;a:while(1){b:while(1){h=a[g>>0]|0;if(!(h<<24>>24))break a;if(tU(g,d)|0)break a;i=g+1|0;switch(h<<24>>24){case 39:break b;case 92:{j=a[i>>0]|0;if(j<<24>>24){l=8;break b}break}default:{}}a[f>>0]=h;g=i;f=f+1|0}if((l|0)==8){l=0;i=f+1|0;a[f>>0]=j;g=g+2|0;k=i;f=i;continue}while(1){g=a[i>>0]|0;j=g<<24>>24==0;h=i+1|0;if(!(j^g<<24>>24!=39))break;a[f>>0]=g;i=h;f=f+1|0}g=j?i:h;k=j?k:f}do{a[f>>0]=0;f=f+-1|0;if(f>>>0<k>>>0)break}while((tU(f,159841)|0)!=0);c[b>>2]=g}return e|0}function ZO(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=b;while(1){d=_O(a[e>>0]|0)|0;b=_O(a[c>>0]|0)|0;d=d&255;if(!d){f=3;break}b=b&255;if((d|0)==(b|0)){e=e+1|0;c=c+1|0}else{c=d;break}}if((f|0)==3){c=0;b=b&255}return c-b|0}function _O(a){a=a|0;return ((a+-65|0)>>>0<26?a^32:a)|0}function $O(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=b+d|0;e=b;while(1){d=_O(a[e>>0]|0)|0;e=e+1|0;b=_O(a[c>>0]|0)|0;if(e>>>0>=f>>>0){g=3;break}d=d&255;b=b&255;if(!((d|0)!=0&(d|0)==(b|0)))break;else c=c+1|0}if((g|0)==3){b=b&255;d=d&255}return d-b|0}function aP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:do if((b|0)!=0&(c|0)!=0){g=MT(b)|0;while(1){d=a[c>>0]|0;if(!(d<<24>>24)){c=0;break a}f=d<<24>>24==45;d=NT(c,44)|0;if(!d)d=c+(MT(c)|0)|0;c=c+(f&1)|0;e=d-c|0;if(!($O(b,c,(e|0)>(g|0)?e:g)|0))break;if(!(_S(159846,c,(e|0)>3?e:3)|0))break;c=d+((a[d>>0]|0)==44&1)|0}c=(f^1)&1}else c=0;while(0);return c|0}function bP(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d<<24>>24;a:while(1){if(!b){b=0;break}if(!(a[b>>0]|0)){b=0;break}else h=c;while(1){if(!h)break;e=a[h>>0]|0;if(!(e<<24>>24))break;else g=0;while(1){f=a[b+g>>0]|0;j=f<<24>>24;k=e<<24>>24;if(f<<24>>24!=e<<24>>24?!((H(k,j)|0)==0&(k+j|0)==(i|0)):0)break;if(g|0?(f<<24>>24==0?1:f<<24>>24==d<<24>>24):0){b=1;break a}e=g+1|0;g=e;e=a[h+e>>0]|0}k=NT(h,i)|0;h=k+((k|0)!=0&1)|0}k=NT(b,i)|0;b=k+((k|0)!=0&1)|0}return b|0}function cP(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=d;c[b+4>>2]=0;c[b+8>>2]=e;c[b+12>>2]=e;a[d>>0]=0;return}function dP(a){a=a|0;if(!(c[(c[a>>2]|0)+20>>2]&1))a=(c[(c[a>>2]|0)+8>>2]|0)==1&1;else a=0;return a|0}function eP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;h=i;g=c[a>>2]|0;do if(g){f=g+8|0;if((c[f>>2]|0)==(b|0))d=0;else{if((c[(c[g>>2]|0)+20>>2]&2|0?dP(g)|0:0)?(e=g+4|0,d=c[e>>2]|0,(d|0)==(c[c[g>>2]>>2]|0)):0){d=bf(d,b)|0;if(!d){d=-12;break}c[e>>2]=d;h=c[g>>2]|0;c[h>>2]=d;c[f>>2]=b;c[h+4>>2]=b;d=0;break}c[h>>2]=0;eP(h,b)|0;d=c[h>>2]|0;if(!d)d=-12;else{f=c[f>>2]|0;wW(c[d+4>>2]|0,c[g+4>>2]|0,((f|0)<(b|0)?f:b)|0)|0;Ef(a,h);d=0}}}else{d=bf(0,b)|0;c[h>>2]=d;do if(d){d=ng(d,b,24,0,0)|0;if(!d){Se(h);d=-12;break}else{h=(c[d>>2]|0)+20|0;c[h>>2]=c[h>>2]|2;c[a>>2]=d;d=0;break}}else d=-12;while(0)}while(0);Ec=i;return d|0}function fP(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=b+(MT(b)|0)|0;g=0;c=0;while(1){if(b>>>0<h>>>0)d=b;else{b=g;break}a:while(1){if(d>>>0>=h>>>0)break;switch(a[d>>0]|0){case 124:case 43:break a;default:{}}d=d+1|0}e=gP(b,d-b|0)|0;f=M()|0;if((e|0)==0&(f|0)==0){c=0;b=0;break}b=d+1|0;g=e|g;c=f|c}L(c|0);return b|0}function gP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Ec;Ec=Ec+16|0;j=k;f=0;while(1){if(f>>>0>=28){e=0;i=7;break}e=c[37792+(f<<4)>>2]|0;if((MT(e)|0)==(d|0)?(ZS(e,b,d)|0)==0:0){i=5;break}f=f+1|0}do if((i|0)==5){e=37792+(f<<4)+8|0;f=c[e+4>>2]|0;e=c[e>>2]|0}else if((i|0)==7){while(1){i=0;if(e>>>0>=36)break;if(((e+-18|0)>>>0>10?(g=c[75512+(e<<3)>>2]|0,(MT(g)|0)==(d|0)):0)?(ZS(g,b,d)|0)==0:0){i=11;break}e=e+1|0;i=7}if((i|0)==11){e=sW(1,0,e|0)|0;f=M()|0;break}c[(ES()|0)>>2]=0;e=PS(b,j,10)|0;if(((c[(ES()|0)>>2]|0)==0?(h=c[j>>2]|0,(h+1-b|0)==(d|0)):0)?(a[h>>0]|0)==99:0){e=hP(e)|0;f=M()|0;break}c[(ES()|0)>>2]=0;g=NS(b,j,0)|0;e=M()|0;if(!(c[(ES()|0)>>2]|0)){j=((e|0)>0|(e|0)==0&g>>>0>0)&((c[j>>2]|0)-b|0)==(d|0);f=j?e:0;e=j?g:0}else{f=0;e=0}}while(0);L(f|0);Ec=k;return e|0}function hP(a){a=a|0;var b=0,d=0;b=0;while(1){if(b>>>0>=28){b=0;a=0;break}if((c[37792+(b<<4)+4>>2]|0)==(a|0)){d=4;break}b=b+1|0}if((d|0)==4){a=37792+(b<<4)+8|0;b=c[a+4>>2]|0;a=c[a>>2]|0}L(b|0);return a|0}function iP(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;n=Ec;Ec=Ec+48|0;k=n+40|0;m=n+32|0;l=n+24|0;j=n+16|0;i=n+8|0;h=n;if((b|0)<1)b=Xg(d,e)|0;f=0;while(1){if(f>>>0>=28){g=9;break}if((b|0)==(c[37792+(f<<4)+4>>2]|0)?(g=37792+(f<<4)+8|0,(c[g>>2]|0)==(d|0)?(c[g+4>>2]|0)==(e|0):0):0){g=7;break}f=f+1|0}if((g|0)==7){c[h>>2]=c[37792+(f<<4)>>2];ff(a,160508,h)}else if((g|0)==9?(c[i>>2]=b,ff(a,160511,i),!((d|0)==0&(e|0)==0)):0){ff(a,160523,j);b=0;g=0;while(1){if((g|0)==64)break;j=sW(1,0,g|0)|0;if(!((j&d|0)==0&((M()|0)&e|0)==0)){f=jP(g)|0;if(f|0){if((b|0)>0)ff(a,160526,l);c[m>>2]=f;ff(a,160508,m)}b=b+1|0}g=g+1|0}ff(a,160528,k)}Ec=n;return}function jP(a){a=a|0;if(a>>>0>35)a=0;else a=c[75512+(a<<3)>>2]|0;return a|0}function kP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=Ec;Ec=Ec+1024|0;g=f;cP(g,a,b);iP(g,c,d,e);Ec=f;return}function lP(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,J=0,K=0;K=Ec;Ec=Ec+1072|0;J=K+792|0;H=K+784|0;F=K+528|0;j=K+1060|0;k=K+1056|0;D=K+520|0;E=K+512|0;B=K;C=K+800|0;c[F>>2]=j;c[F+4>>2]=k;c[F+8>>2]=K+1064;if(!((fU(f,160530,F)|0)==2?(i=c[j>>2]|0,i=mP(b,e,h,1.0,c[k>>2]|0,i,((i|0)<0)<<31>>31)|0,(i|0)>-1):0)){v=e+12|0;w=e+44|0;x=e+16|0;y=e+32|0;z=e+24|0;A=e+16|0;i=0;while(1){s=E;c[s>>2]=1;c[s+4>>2]=0;if(!(c[v>>2]|0)){j=a[f>>0]|0;switch(j<<24>>24){case 45:case 43:{l=j<<24>>24;j=f+1|0;break}default:{l=0;j=f}}f=0;a:while(1){if(f>>>0>=255)break;k=a[j+f>>0]|0;switch(k<<24>>24){case 45:case 43:case 0:break a;default:{}}a[F+f>>0]=k;f=f+1|0}a[F+f>>0]=0;r=f}else{l=0;r=0;j=f}q=(r|0)!=0;p=q?F:j;k=nP(d,p,c[w>>2]|0,0,0)|0;if((k|0)!=0?(c[k+12>>2]|0)==10:0){s=k+16|0;g[D>>3]=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0);s=30}else s=15;do if((s|0)==15){s=0;o=c[w>>2]|0;b:do if(!o){k=0;s=24}else{k=0;f=0;while(1){while(1){f=Ff(d,f)|0;if(!f){s=24;break b}if((c[f+12>>2]|0)!=10)continue;n=c[f+44>>2]|0;if(!n)continue;if(!(YS(n,o)|0))break}if((k+6|0)>>>0>63)break;c[C+(k<<2)>>2]=c[f>>2];n=f+16|0;g[B+(k<<3)>>3]=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0);k=k+1|0}c[H>>2]=o;We(b,16,160544,H);i=-1163346256}while(0);if((s|0)==24){s=0;c[C+(k<<2)>>2]=171854;switch(c[v>>2]|0){case 1:case 0:case 10:case 9:case 2:{o=A;m=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0);break}default:m=+g[x>>3]}n=k+1|0;g[B+(k<<3)>>3]=m;c[C+(n<<2)>>2]=160844;o=k+2|0;g[B+(n<<3)>>3]=+g[y>>3];c[C+(o<<2)>>2]=160848;n=k+3|0;g[B+(o<<3)>>3]=+g[z>>3];c[C+(n<<2)>>2]=171832;o=k+4|0;g[B+(n<<3)>>3]=0.0;c[C+(o<<2)>>2]=172048;k=k+5|0;g[B+(o<<3)>>3]=-1.0;c[C+(k<<2)>>2]=0;g[B+(k<<3)>>3]=0.0;k=oP(D,p,C,B,0,0,0,0,0,0,b)|0;if((k|0)>=0){s=30;break}c[J>>2]=j;We(b,16,160581,J);i=k}f=1}while(0);if((s|0)==30){c:do if(!(c[v>>2]|0)){pP(e,h,0,0,E)|0;switch(l|0){case 43:{s=E;m=+g[D>>3];g[D>>3]=+((c[s>>2]|~~m>>>0)>>>0)+4294967296.0*+(c[s+4>>2]|(+u(m)>=1.0?(m>0.0?~~+I(+t(m/4294967296.0),4294967295.0)>>>0:~~+G((m-+(~~m>>>0))/4294967296.0)>>>0):0)|0);break c}case 45:{s=E;m=+g[D>>3];g[D>>3]=+((c[s>>2]&~(~~m>>>0))>>>0)+4294967296.0*+(c[s+4>>2]&~(+u(m)>=1.0?(m>0.0?~~+I(+t(m/4294967296.0),4294967295.0)>>>0:~~+G((m-+(~~m>>>0))/4294967296.0)>>>0):0)|0);break c}default:break c}}while(0);k=mP(b,e,h,+g[D>>3],1,1,0)|0;if((k|0)>=0){j=j+r|0;if(q){s=(a[j>>0]|0)==0;f=s&1;i=s?0:i}else{f=1;i=0}}else{f=1;i=k}}if(!f)f=j;else break}}Ec=K;return i|0}function mP(a,b,d,e,h,i,j){a=a|0;b=b|0;d=d|0;e=+e;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0.0,n=0.0,o=0.0,p=0,q=0,t=0,u=0;u=Ec;Ec=Ec+64|0;k=u+40|0;q=u+8|0;p=u;l=c[b+12>>2]|0;a:do if(!l){m=(+(i>>>0)+4294967296.0*+(j|0))*e/+(h|0);if(!(m<-1.5|m>4294967295.5)?(q=ZT(m*256.0)|0,M()|0,(q&255|0)==0&0==0):0){t=14;break}d=c[b>>2]|0;g[k>>3]=m;c[k+8>>2]=d;We(a,16,161099,k);k=-34}else{if(!h){n=e!=0.0&((i|0)!=0|(j|0)!=0)?s:r;m=+g[b+32>>3]}else{m=+g[b+32>>3];n=+(h|0);o=(+(i>>>0)+4294967296.0*+(j|0))*e;if(!(m*n<o)?!(+g[b+24>>3]*n>o):0)switch(l|0){case 1:case 18:{t=14;break a}case 12:{k=nW(ZT(e/+(h|0))|0,M()|0,i|0,j|0)|0;M()|0;c[d>>2]=k;k=0;break a}case 13:{k=nW(ZT(e/+(h|0))|0,M()|0,i|0,j|0)|0;M()|0;c[d>>2]=k;k=0;break a}case 6:case 14:{m=(+(i>>>0)+4294967296.0*+(j|0))*e;if(+(~~e|0)==e){c[d>>2]=~~m;c[d+4>>2]=h;k=0;break a}else{MP(p,m/+(h|0),16777216);i=p;j=c[i+4>>2]|0;k=d;c[k>>2]=c[i>>2];c[k+4>>2]=j;k=0;break a}}case 2:case 17:case 15:{m=e/+(h|0);if((i|0)==1&(j|0)==0&m==9223372036854775808.0){k=-1;l=2147483647}else{k=ZT(m)|0;k=nW(k|0,M()|0,i|0,j|0)|0;l=M()|0}c[d>>2]=k;c[d+4>>2]=l;k=0;break a}case 9:{m=e/+(h|0);do if(!((i|0)==1&(j|0)==0&m==18446744073709551616.0))if(m>9223372036854775808.0){k=ZT(m+-9223372036854775808.0)|0;k=nW(k|0,(M()|0)^-2147483648|0,i|0,j|0)|0;l=M()|0;break}else{k=ZT(m)|0;k=nW(k|0,M()|0,i|0,j|0)|0;l=M()|0;break}else{k=-1;l=-1}while(0);c[d>>2]=k;c[d+4>>2]=l;k=0;break a}case 4:{f[d>>2]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(h|0);k=0;break a}case 3:{g[d>>3]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(h|0);k=0;break a}default:{k=-22;break a}}n=o/n}k=c[b>>2]|0;e=+g[b+24>>3];g[q>>3]=n;c[q+8>>2]=k;g[q+16>>3]=e;g[q+24>>3]=m;We(a,16,161047,q);k=-34}while(0);if((t|0)==14){k=ZT(e/+(h|0))|0;k=nW(k|0,M()|0,i|0,j|0)|0;M()|0;c[d>>2]=k;k=0}Ec=u;return k|0}function nP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return JP(a,b,c,d,e,0)|0}function oP(a,b,d,e,f,h,i,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0;o=Ec;Ec=Ec+16|0;n=o;c[n>>2]=0;b=qP(n,b,d,f,h,i,j,l,m)|0;if((b|0)<0)g[a>>3]=r;else{b=c[n>>2]|0;g[a>>3]=+rP(b,e,k);sP(b);b=tP(+g[a>>3])|0;k=(M()|0)&2147483647;b=k>>>0>2146435072|(k|0)==2146435072&b>>>0>0?-22:0}Ec=o;return b|0}function pP(a,b,d,e,h){a=a|0;b=b|0;d=d|0;e=e|0;h=h|0;switch(c[a+12>>2]|0){case 0:{a=h;c[a>>2]=c[b>>2];c[a+4>>2]=0;a=0;break}case 12:{e=c[b>>2]|0;a=h;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 13:{e=c[b>>2]|0;a=h;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 1:case 18:{e=c[b>>2]|0;a=h;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 9:case 2:case 15:case 17:{d=b;e=c[d+4>>2]|0;a=h;c[a>>2]=c[d>>2];c[a+4>>2]=e;a=0;break}case 4:{g[d>>3]=+f[b>>2];a=0;break}case 3:{g[d>>3]=+g[b>>3];a=0;break}case 6:{d=c[b>>2]|0;a=h;c[a>>2]=d;c[a+4>>2]=((d|0)<0)<<31>>31;c[e>>2]=c[b+4>>2];a=0;break}case 10:{g[d>>3]=+g[a+16>>3];a=0;break}default:a=-22}return a|0}function qP(b,d,e,f,g,h,i,j,k){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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Ec;Ec=Ec+64|0;q=s;p=s+12|0;r=s+8|0;l=p;m=l+52|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(m|0));c[r>>2]=0;o=cf((MT(d)|0)+1|0)|0;if(!o)l=-12;else{n=o;l=d;a:while(1){do{m=a[l>>0]|0;if(!(m<<24>>24))break a;l=l+1|0}while((vP(m<<24>>24)|0)!=0);a[n>>0]=m;n=n+1|0}a[n>>0]=0;c[p>>2]=75800;c[p+4>>2]=100;m=p+8|0;c[m>>2]=o;c[p+16>>2]=e;c[p+20>>2]=g;c[p+24>>2]=f;c[p+28>>2]=i;c[p+32>>2]=h;c[p+40>>2]=j;c[p+44>>2]=k;l=wP(r,p)|0;do if((l|0)>=0){m=c[m>>2]|0;if(a[m>>0]|0){c[q>>2]=m;c[q+4>>2]=d;We(p,16,160620,q);l=-22;break}m=c[r>>2]|0;if(xP(m)|0){q=Of(80)|0;c[m+32>>2]=q;if(!q)l=-12;else{c[b>>2]=m;c[r>>2]=0}}else l=-22}while(0);sP(c[r>>2]|0);Te(o)}Ec=s;return l|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.0;g=Ec;Ec=Ec+64|0;e=g;f=e;h=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+48>>2]=c[a+32>>2];c[e+12>>2]=b;c[e+36>>2]=d;i=+uP(e,a);Ec=g;return +i}function sP(a){a=a|0;var b=0,d=0;d=Ec;Ec=Ec+16|0;b=d;c[b>>2]=a;if(a|0){sP(c[a+20>>2]|0);sP(c[a+24>>2]|0);sP(c[a+28>>2]|0);Se(a+32|0);Se(b)}Ec=d;return}function tP(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;L(c[h+4>>2]|0);return b|0}function uP(a,b){a=a|0;b=b|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0.0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0;q=Ec;Ec=Ec+16|0;i=q;a:do switch(c[b>>2]|0){case 0:{e=+g[b+8>>3];break}case 1:{e=+g[b+8>>3]*+g[(c[a+12>>2]|0)+(c[b+16>>2]<<3)>>3];break}case 2:{o=+g[b+8>>3];m=c[b+16>>2]|0;p=+uP(a,c[b+20>>2]|0);p=o*+Hc[m&15](p);Ec=q;return +p}case 3:{o=+g[b+8>>3];l=c[b+16>>2]|0;m=c[a+36>>2]|0;p=+uP(a,c[b+20>>2]|0);p=o*+Ic[l&0](m,p);Ec=q;return +p}case 4:{n=+g[b+8>>3];l=c[b+16>>2]|0;m=c[a+36>>2]|0;o=+uP(a,c[b+20>>2]|0);p=+uP(a,c[b+24>>2]|0);p=n*+Jc[l&0](m,o,p);Ec=q;return +p}case 5:{p=1.0/(+E(+(+uP(a,c[b+20>>2]|0)*4.0))+1.0);Ec=q;return +p}case 6:{p=+uP(a,c[b+20>>2]|0);p=+E(+(p*p*-.5))/2.5066282746310002;Ec=q;return +p}case 7:{p=+g[b+8>>3];m=c[a+48>>2]|0;a=~~+uP(a,c[b+20>>2]|0);Ec=q;return +(p*+g[m+(((a|0)>0?((a|0)<9?a:9):0)<<3)>>3])}case 8:{p=+g[b+8>>3];a=tP(+uP(a,c[b+20>>2]|0))|0;b=(M()|0)&2147483647;Ec=q;return +(p*+((b>>>0>2146435072|(b|0)==2146435072&a>>>0>0)&1))}case 9:{p=+g[b+8>>3]*+((tP(+uP(a,c[b+20>>2]|0))|0)==0&((M()|0)&2147483647|0)==2146435072&1);Ec=q;return +p}case 27:{p=+g[b+8>>3]*+t(+(+uP(a,c[b+20>>2]|0)));Ec=q;return +p}case 28:{p=+g[b+8>>3]*+G(+(+uP(a,c[b+20>>2]|0)));Ec=q;return +p}case 29:{p=+g[b+8>>3]*+rb(+(+uP(a,c[b+20>>2]|0)));Ec=q;return +p}case 30:{p=+g[b+8>>3]*+vW(+(+uP(a,c[b+20>>2]|0)));Ec=q;return +p}case 31:{p=+g[b+8>>3]*+v(+(+uP(a,c[b+20>>2]|0)));Ec=q;return +p}case 32:{p=+g[b+8>>3]*+(+uP(a,c[b+20>>2]|0)==0.0&1);Ec=q;return +p}case 36:{h=+g[b+8>>3];if(!(+uP(a,c[b+20>>2]|0)!=0.0)){f=c[b+28>>2]|0;if(!f)e=0.0;else m=22}else{f=c[b+24>>2]|0;m=22}if((m|0)==22)e=+uP(a,f);e=h*e;break}case 37:{h=+g[b+8>>3];if(+uP(a,c[b+20>>2]|0)!=0.0){f=c[b+28>>2]|0;if(!f)e=0.0;else m=27}else{f=c[b+24>>2]|0;m=27}if((m|0)==27)e=+uP(a,f);e=h*e;break}case 42:{f=b+20|0;e=+uP(a,c[f>>2]|0);h=+uP(a,c[b+24>>2]|0);j=+uP(a,c[b+28>>2]|0);m=tP(h)|0;l=(M()|0)&2147483647;if((!(l>>>0>2146435072|(l|0)==2146435072&m>>>0>0)?(m=tP(j)|0,l=(M()|0)&2147483647,!(l>>>0>2146435072|(l|0)==2146435072&m>>>0>0)):0)?(m=tP(e)|0,l=(M()|0)&2147483647,!(h>j|(l>>>0>2146435072|(l|0)==2146435072&m>>>0>0))):0){o=+g[b+8>>3];p=+uP(a,c[f>>2]|0);Ec=q;return +(o*(p<h?h:p>j?j:p))}else e=r;break}case 41:{e=+uP(a,c[b+20>>2]|0);h=+g[b+8>>3];if(!(e>=+uP(a,c[b+24>>2]|0)))e=0.0;else e=+(e<=+uP(a,c[b+28>>2]|0)&1);e=h*e;break}case 44:{p=+uP(a,c[b+20>>2]|0);p=p+(+uP(a,c[b+24>>2]|0)-p)*+uP(a,c[b+28>>2]|0);Ec=q;return +p}case 38:{e=+uP(a,c[b+20>>2]|0);f=c[b+24>>2]|0;if(!f)f=32;else f=~~+uP(a,f);g[i>>3]=e;We(a,f,160616,i);break}case 33:{m=~~+uP(a,c[b+20>>2]|0);a=(c[a+48>>2]|0)+(((m|0)>0?((m|0)<9?m:9):0)<<3)|0;p=+g[a>>3];m=tP(p)|0;l=(M()|0)&2147483647;p=+((hW(nW(~~p>>>0|0,(+u(p)>=1.0?(p>0.0?~~+I(+t(p/4294967296.0),4294967295.0)>>>0:~~+G((p-+(~~p>>>0))/4294967296.0)>>>0):0)|0,1664525,0)|0,M()|0,1013904223,0)|0)>>>0)+4294967296.0*+((M()|0)>>>0);p=l>>>0>2146435072|(l|0)==2146435072&m>>>0>0?1013904223.0:p;g[a>>3]=p;Ec=q;return +(+g[b+8>>3]*(p*5.421010862427522e-20))}case 24:{i=b+20|0;f=b+24|0;e=r;while(1){if(!(+uP(a,c[i>>2]|0)!=0.0))break a;e=+uP(a,c[f>>2]|0)}}case 25:{k=+uP(a,c[b+24>>2]|0);f=c[b+28>>2]|0;if(!f)m=0;else{m=~~+uP(a,f);m=(m|0)>0?((m|0)<9?m:9):0}l=a+48|0;n=+g[(c[l>>2]|0)+(m<<3)>>3];i=b+20|0;h=1.0;e=0.0;f=0;while(1){if((f|0)>=1e3)break;g[(c[l>>2]|0)+(m<<3)>>3]=+(f|0);p=+uP(a,c[i>>2]|0);j=e+h*p;if(p!=0.0&e==j){e=j;break}b=f+1|0;h=h*(k/+(b|0));e=j;f=b}g[(c[l>>2]|0)+(m<<3)>>3]=n;break}case 26:{l=a+48|0;p=+g[c[l>>2]>>3];o=+uP(a,c[b+24>>2]|0);i=b+20|0;k=1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;h=-1.0;e=-1.0;f=-1;while(1){if((f|0)>=1024)break;if((f|0)<255)g[c[l>>2]>>3]=o*+(d[120699+(f&255)>>0]|0)/255.0;else{n=o*+w(.9,+(+(f+-255|0)));g[c[l>>2]>>3]=(f&2|0?e:h)+((f&1|0)==0?n:-n)}n=+uP(a,c[i>>2]|0);if(n<=0.0&n>j){j=n;e=+g[c[l>>2]>>3]}if(n>=0.0&n<k){k=n;h=+g[c[l>>2]>>3]}if(e>=0.0&h>=0.0){f=0;m=60;break}else f=f+1|0}b:do if((m|0)==60)while(1){if((f|0)>=1e3)break b;o=(e+h)*.5;g[c[l>>2]>>3]=o;if(e==o|h==o)break b;n=+uP(a,c[i>>2]|0);if(n<=0.0)e=+g[c[l>>2]>>3];if(n>=0.0)h=+g[c[l>>2]>>3];b=tP(n)|0;m=(M()|0)&2147483647;if(m>>>0>2146435072|(m|0)==2146435072&b>>>0>0){h=n;e=n;break}else{f=f+1|0;m=60}}while(0);g[c[l>>2]>>3]=p;e=k>-j?e:h;break}default:{e=+uP(a,c[b+20>>2]|0);h=+uP(a,c[b+24>>2]|0);do switch(c[b>>2]|0){case 10:{e=(e-h*+t(+(e/h)))*+g[b+8>>3];break a}case 35:{e=+g[b+8>>3]*(+((OL(~~e>>>0,+u(e)>=1.0?(e>0.0?~~+I(+t(e/4294967296.0),4294967295.0)>>>0:~~+G((e-+(~~e>>>0))/4294967296.0)>>>0):0,~~h>>>0,+u(h)>=1.0?(h>0.0?~~+I(+t(h/4294967296.0),4294967295.0)>>>0:~~+G((h-+(~~h>>>0))/4294967296.0)>>>0):0)|0)>>>0)+4294967296.0*+(M()|0));break a}case 11:{e=(e>h?e:h)*+g[b+8>>3];break a}case 12:{e=(e<h?e:h)*+g[b+8>>3];break a}case 13:{e=(e==h?1.0:0.0)*+g[b+8>>3];break a}case 14:{e=(e>h?1.0:0.0)*+g[b+8>>3];break a}case 15:{e=(e>=h?1.0:0.0)*+g[b+8>>3];break a}case 17:{e=(e<h?1.0:0.0)*+g[b+8>>3];break a}case 16:{e=(e<=h?1.0:0.0)*+g[b+8>>3];break a}case 18:{e=+w(+e,+h)*+g[b+8>>3];break a}case 19:{e=e*h*+g[b+8>>3];break a}case 20:{e=e/h*+g[b+8>>3];break a}case 21:{e=(e+h)*+g[b+8>>3];break a}case 22:{e=h*+g[b+8>>3];break a}case 23:{p=+g[b+8>>3];b=~~e;g[(c[a+48>>2]|0)+(((b|0)>0?((b|0)<9?b:9):0)<<3)>>3]=h;e=h*p;break a}case 34:{e=+g[b+8>>3]*+QS(e,h);break a}case 43:{e=+g[b+8>>3]*+D(+e,+h);break a}case 39:{a=tP(e)|0;m=(M()|0)&2147483647;if(m>>>0>2146435072|(m|0)==2146435072&a>>>0>0){e=r;break a}a=tP(h)|0;m=(M()|0)&2147483647;if(m>>>0>2146435072|(m|0)==2146435072&a>>>0>0){e=r;break a}e=+g[b+8>>3]*+(~~h&~~e|0);break a}case 40:{a=tP(e)|0;m=(M()|0)&2147483647;if(m>>>0>2146435072|(m|0)==2146435072&a>>>0>0){e=r;break a}a=tP(h)|0;m=(M()|0)&2147483647;if(m>>>0>2146435072|(m|0)==2146435072&a>>>0>0){e=r;break a}e=+g[b+8>>3]*+(~~h|~~e|0);break a}default:{e=r;break a}}while(0)}}while(0);Ec=q;return +e}function vP(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function wP(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=Ec;Ec=Ec+16|0;j=l+4|0;i=l;k=d+4|0;e=c[k>>2]|0;do if((e|0)>=1){c[k>>2]=e+-1;e=yP(j,d)|0;if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;while(1){e=c[f>>2]|0;if((a[e>>0]|0)!=59){f=9;break}c[f>>2]=e+1;e=yP(i,d)|0;if((e|0)<0){f=6;break}g=c[i>>2]|0;e=zP(22,h,g)|0;if(!e){f=8;break}else h=e}if((f|0)==6){c[j>>2]=h;sP(h);break}else if((f|0)==8){c[j>>2]=0;sP(h);sP(g);e=-12;break}else if((f|0)==9){c[j>>2]=h;c[k>>2]=(c[k>>2]|0)+1;c[b>>2]=h;e=0;break}}}else e=-22;while(0);Ec=l;return e|0}function xP(a){a=a|0;a:do if(!a)a=0;else switch(c[a>>2]|0){case 1:case 0:{a=1;break a}case 33:case 32:case 31:case 30:case 29:case 28:case 27:case 9:case 8:case 6:case 7:case 5:case 3:case 2:{if(!(xP(c[a+20>>2]|0)|0)){a=0;break a}a=(c[a+24>>2]|0)==0;break a}case 38:{if(!(xP(c[a+20>>2]|0)|0)){a=0;break a}a=c[a+24>>2]|0;if(!a){a=1;break a}a=(xP(a)|0)!=0;break a}case 25:case 37:case 36:{if(!(xP(c[a+20>>2]|0)|0)){a=0;break a}if(!(xP(c[a+24>>2]|0)|0)){a=0;break a}a=c[a+28>>2]|0;if(!a){a=1;break a}a=(xP(a)|0)!=0;break a}case 44:case 42:case 41:{if(!(xP(c[a+20>>2]|0)|0)){a=0;break a}if(!(xP(c[a+24>>2]|0)|0)){a=0;break a}a=(xP(c[a+28>>2]|0)|0)!=0;break a}default:{if(!(xP(c[a+20>>2]|0)|0)){a=0;break a}if(!(xP(c[a+24>>2]|0)|0)){a=0;break a}a=(c[a+28>>2]|0)==0;break a}}while(0);return a&1|0}function yP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Ec;Ec=Ec+16|0;j=k+4|0;i=k;e=AP(j,d)|0;do if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;a:while(1){switch(a[c[f>>2]>>0]|0){case 43:case 45:break;default:{f=8;break a}}e=AP(i,d)|0;if((e|0)<0){f=5;break}g=c[i>>2]|0;e=zP(21,h,g)|0;if(!e){f=7;break}else h=e}if((f|0)==5){c[j>>2]=h;sP(h);break}else if((f|0)==7){c[j>>2]=0;sP(h);sP(g);e=-12;break}else if((f|0)==8){c[j>>2]=h;c[b>>2]=h;e=0;break}}while(0);Ec=k;return e|0}function zP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Of(40)|0;if(!e)e=0;else{c[e>>2]=a;g[e+8>>3]=1.0;c[e+20>>2]=b;c[e+24>>2]=d}return e|0}function AP(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=Ec;Ec=Ec+16|0;k=l+4|0;j=l;e=BP(k,d)|0;do if((e|0)>=0){h=d+8|0;i=c[k>>2]|0;a:while(1){e=c[h>>2]|0;switch(a[e>>0]|0){case 47:case 42:break;default:{f=8;break a}}c[h>>2]=e+1;f=a[e>>0]|0;e=BP(j,d)|0;if((e|0)<0){f=5;break}g=c[j>>2]|0;e=zP(f<<24>>24==42?19:20,i,g)|0;if(!e){f=7;break}else i=e}if((f|0)==5){c[k>>2]=i;sP(i);break}else if((f|0)==7){c[k>>2]=0;sP(i);sP(g);e=-12;break}else if((f|0)==8){c[k>>2]=i;c[b>>2]=i;e=0;break}}while(0);Ec=l;return e|0}function BP(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Ec;Ec=Ec+16|0;l=n+12|0;j=n+8|0;k=n+4|0;m=n;e=CP(k,d,l)|0;do if((e|0)>=0){i=d+8|0;h=c[k>>2]|0;while(1){e=c[i>>2]|0;if((a[e>>0]|0)!=94){f=10;break}c[i>>2]=e+1;e=CP(m,d,j)|0;if((e|0)<0){f=5;break}f=zP(18,h,c[m>>2]|0)|0;c[k>>2]=f;if(!f){f=7;break}e=c[f+24>>2]|0;if(!e){h=f;continue}h=e+8|0;g[h>>3]=+g[h>>3]*+(c[j>>2]|1|0);h=f}if((f|0)==5){sP(h);break}else if((f|0)==7){sP(h);sP(c[m>>2]|0);e=-12;break}else if((f|0)==10){if(h|0){m=h+8|0;g[m>>3]=+g[m>>3]*+(c[l>>2]|1|0)}c[b>>2]=h;e=0;break}}while(0);Ec=n;return e|0}function CP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+16|0;f=j;g=d+8|0;h=c[g>>2]|0;do if((a[h>>0]|0)==45){+vU(h,f);h=c[f>>2]|0;if(((h|0)!=(c[g>>2]|0)?(a[h>>0]|0)==100:0)?(a[h+1>>0]|0)==66:0){c[e>>2]=0;b=DP(b,d)|0;break}i=7}else i=7;while(0);if((i|0)==7)b=EP(b,d,e)|0;Ec=j;return b|0}function DP(b,d){b=b|0;d=d|0;var e=0,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;v=Ec;Ec=Ec+48|0;s=v+24|0;p=v+16|0;o=v+8|0;n=v;u=v+32|0;q=v+28|0;m=Of(40)|0;c[u>>2]=m;r=d+8|0;t=c[r>>2]|0;c[q>>2]=t;a:do if(!m)e=-12;else{j=m+8|0;g[j>>3]=+FP(t,q);l=c[q>>2]|0;i=m;if((l|0)!=(c[r>>2]|0)){c[m>>2]=0;c[r>>2]=l;c[b>>2]=i;e=0;break}g[j>>3]=1.0;f=c[d+16>>2]|0;b:do if(!f)e=0;else{e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h){e=0;break b}if(GP(l,h)|0)break;e=e+1|0}c[r>>2]=l+(MT(h)|0);c[m>>2]=1;c[m+16>>2]=e;c[b>>2]=i;e=0;break a}while(0);while(1){if(e>>>0>=4)break;f=c[38240+(e<<4)>>2]|0;if(GP(l,f)|0){k=11;break}e=e+1|0}if((k|0)==11){c[r>>2]=l+(MT(f)|0);c[m>>2]=0;g[j>>3]=+g[38240+(e<<4)+8>>3];c[b>>2]=i;e=0;break}e=NT(l,40)|0;c[r>>2]=e;if(!e){c[n>>2]=t;We(d,16,160670,n);c[r>>2]=c[q>>2];sP(c[u>>2]|0);e=-22;break}c[r>>2]=e+1;if((a[l>>0]|0)==40){Se(u);e=wP(u,d)|0;if((e|0)<0)break;e=c[r>>2]|0;if((a[e>>0]|0)==41){c[r>>2]=e+1;c[b>>2]=c[u>>2];e=0;break}else{c[o>>2]=t;We(d,16,160713,o);sP(c[u>>2]|0);e=-22;break}}e=wP(m+20|0,d)|0;if((e|0)<0){sP(c[u>>2]|0);break}f=c[r>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[r>>2]=f+1;wP((c[u>>2]|0)+24|0,d)|0;f=c[r>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[r>>2]=f+1;wP((c[u>>2]|0)+28|0,d)|0;f=c[r>>2]|0;e=a[f>>0]|0}}if(e<<24>>24!=41){c[p>>2]=t;We(d,16,160734,p);sP(c[u>>2]|0);e=-22;break}c[r>>2]=f+1;k=c[u>>2]|0;c[k>>2]=2;i=c[q>>2]|0;j=k;do if(!(GP(i,160772)|0)){if(GP(i,160777)|0){c[k+16>>2]=2;break}if(GP(i,160782)|0){c[k+16>>2]=3;break}if(GP(i,160787)|0){c[k+16>>2]=4;break}if(GP(i,160791)|0){c[k+16>>2]=5;break}if(GP(i,160795)|0){c[k+16>>2]=6;break}if(GP(i,160799)|0){c[k+16>>2]=7;break}if(GP(i,160804)|0){c[k+16>>2]=8;break}if(GP(i,160809)|0){c[k+16>>2]=9;break}if(GP(i,160814)|0){c[k+16>>2]=10;break}if(GP(i,173284)|0){c[k+16>>2]=11;break}if(GP(i,160818)|0){c[k+16>>2]=12;break}if(GP(i,160822)|0){c[k+16>>2]=13;break}if(GP(i,160827)|0){c[k>>2]=5;break}if(GP(i,160834)|0){c[k>>2]=6;break}if(GP(i,160840)|0){c[k>>2]=10;break}if(GP(i,160844)|0){c[k>>2]=11;break}if(GP(i,160848)|0){c[k>>2]=12;break}if(GP(i,160852)|0){c[k>>2]=13;break}if(GP(i,160855)|0){c[k>>2]=15;break}if(GP(i,160859)|0){c[k>>2]=14;break}if(GP(i,160862)|0){c[k>>2]=16;break}if(GP(i,160866)|0){c[k>>2]=17;break}if(GP(i,160869)|0){c[k>>2]=7;break}if(GP(i,160872)|0){c[k>>2]=8;break}if(GP(i,160878)|0){c[k>>2]=9;break}if(GP(i,160884)|0){c[k>>2]=23;break}if(GP(i,160887)|0){c[k>>2]=24;break}if(GP(i,160893)|0){c[k>>2]=25;break}if(GP(i,160900)|0){c[k>>2]=26;break}if(GP(i,160905)|0){c[k>>2]=27;break}if(GP(i,160911)|0){c[k>>2]=28;break}if(GP(i,166990)|0){c[k>>2]=29;break}if(GP(i,160916)|0){c[k>>2]=30;break}if(GP(i,160922)|0){c[k>>2]=31;break}if(GP(i,160927)|0){c[k>>2]=32;break}if(GP(i,160931)|0){c[k>>2]=18;break}if(GP(i,160935)|0){c[k>>2]=38;break}if(GP(i,161398)|0){c[k>>2]=33;break}if(GP(i,160941)|0){c[k>>2]=34;break}if(GP(i,160947)|0){c[k>>2]=35;break}if(GP(i,160951)|0){c[k>>2]=36;break}if(GP(i,160954)|0){c[k>>2]=37;break}if(GP(i,160960)|0){c[k>>2]=39;break}if(GP(i,160967)|0){c[k>>2]=40;break}if(GP(i,160973)|0){c[k>>2]=41;break}if(GP(i,160981)|0){c[k>>2]=42;break}if(GP(i,160986)|0){c[k>>2]=43;break}if(GP(i,160992)|0){c[k>>2]=44;break}f=c[d+24>>2]|0;c:do if(f|0){e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h)break c;if(GP(i,h)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+20>>2]|0)+(e<<2)>>2];c[k>>2]=3;c[b>>2]=j;e=0;break a}while(0);f=c[d+32>>2]|0;d:do if(f|0){e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h)break d;if(GP(i,h)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+28>>2]|0)+(e<<2)>>2];c[k>>2]=4;c[b>>2]=j;e=0;break a}while(0);c[s>>2]=t;We(d,16,160997,s);sP(c[u>>2]|0);e=-22;break a}else c[k+16>>2]=1;while(0);c[b>>2]=j;e=0}while(0);Ec=v;return e|0}function EP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d+8|0;h=c[f>>2]|0;g=a[h>>0]|0;g=(g<<24>>24==43&1)-(g<<24>>24==45&1)|0;c[e>>2]=g;c[f>>2]=h+(g&1);return DP(b,d)|0}function FP(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,l=0;l=Ec;Ec=Ec+16|0;k=l;if((a[b>>0]|0)==48?(a[b+1>>0]|32|0)==120:0)f=+((OS(b,k,16)|0)>>>0);else f=+vU(b,k);i=c[k>>2]|0;e=i;if((i|0)!=(b|0)){b=a[i>>0]|0;if(b<<24>>24==100)if((a[i+1>>0]|0)==66){f=+YT(f/20.0*3.321928094887362);b=i+2|0;c[k>>2]=b;e=b;j=14}else j=10;else if((b+-69&255)<54)j=10;else{h=b;b=i}do if((j|0)==10){b=(b<<24>>24)+-69|0;if(a[38304+(b*24|0)+16>>0]|0){h=i+1|0;if((a[h>>0]|0)==105){f=f*+g[38304+(b*24|0)>>3];b=i+2|0;c[k>>2]=b;e=b;j=14;break}else{f=f*+g[38304+(b*24|0)+8>>3];c[k>>2]=h;e=h;b=h;j=14;break}}else{b=i;j=14}}while(0);if((j|0)==14)h=a[b>>0]|0;if(h<<24>>24==66){e=b+1|0;c[k>>2]=e;f=f*8.0}}if(d|0)c[d>>2]=e;Ec=l;return +f}function GP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=0;while(1){e=a[c+d>>0]|0;f=a[b+d>>0]|0;if(!(e<<24>>24)){g=4;break}if(e<<24>>24==f<<24>>24)d=d+1|0;else{d=0;break}}if((g|0)==4){d=f<<24>>24;d=f<<24>>24!=95&((d+-48|0)>>>0>9&((d&-33)+-65|0)>>>0>25)&1}return d|0}function HP(a){a=+a;var b=0;b=IP()|0;return +((+(b>>>0)+4294967296.0*+(M()|0))*1.0e-06)}function IP(){var a=0,b=0,d=0,e=0;b=Ec;Ec=Ec+16|0;a=b;nb(a|0,0)|0;e=c[a>>2]|0;e=nW(e|0,((e|0)<0)<<31>>31|0,1e6,0)|0;d=M()|0;a=c[a+4>>2]|0;a=hW(e|0,d|0,a|0,((a|0)<0)<<31>>31|0)|0;L(M()|0);Ec=b;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;var h=0,i=0,j=0,k=0;k=Ec;Ec=Ec+16|0;i=k;a:do if((a|0)!=0?(j=c[a>>2]|0,(j|0)!=0):0){b:do if(f&1|0){if(!(f&2)){i=0;while(1){i=LP(a,i)|0;if(!i)break b;h=JP(i,b,d,e,f,g)|0;if(h|0)break a}}c[i>>2]=0;h=0;while(1){h=KP(j,h)|0;c[i>>2]=h;if(!h){i=7;break}h=JP(i,b,d,e,f,0)|0;if(h|0){i=10;break}h=c[i>>2]|0}if((i|0)==7)break;else if((i|0)==10)break a}while(0);j=(d|0)==0;h=0;while(1){h=Ff(a,h)|0;if(!h){h=0;break a}if(YS(c[h>>2]|0,b)|0)continue;if((c[h+40>>2]&e|0)!=(e|0))continue;i=(c[h+12>>2]|0)==10;if(j)if(i)continue;else break;if(!i)continue;i=c[h+44>>2]|0;if(!i)continue;if(!(YS(i,d)|0))break}if(g)c[g>>2]=(f&2|0)==0?a:0}else h=0;while(0);Ec=k;return h|0}function KP(a,b){a=a|0;b=b|0;a=c[a+28>>2]|0;if(!a)a=0;else a=Kc[a&31](b)|0;return a|0}function LP(a,b){a=a|0;b=b|0;var d=0;d=c[(c[a>>2]|0)+24>>2]|0;if(!d)a=0;else a=Mc[d&15](a,b)|0;return a|0}function MP(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0;l=Ec;Ec=Ec+16|0;j=l;e=l+8|0;i=NP(b)|0;h=(M()|0)&2147483647;do if(h>>>0>2146435072|(h|0)==2146435072&i>>>0>0){c[a>>2]=0;c[a+4>>2]=0}else{if(+u(+b)>2147483650.0){c[a>>2]=b<0.0?-1:1;c[a+4>>2]=0;break}+xT(b,e);f=(c[e>>2]|0)+-1|0;f=(f|0)>0?f:0;c[e>>2]=f;e=sW(1,0,61-f|0)|0;f=M()|0;g=j+4|0;m=+t(+((+(e>>>0)+4294967296.0*+(f|0))*b+.5));h=~~m>>>0;i=+u(m)>=1.0?(m>0.0?~~+I(+t(m/4294967296.0),4294967295.0)>>>0:~~+G((m-+(~~m>>>0))/4294967296.0)>>>0):0;Mm(j,g,h,i,e,f,d,((d|0)<0)<<31>>31)|0;if(!(c[j>>2]|0)){if((d|0)!=2147483647&(b!=0.0&(d|0)>0))k=8}else if((d|0)!=2147483647&((d|0)>0&(b!=0.0&(c[g>>2]|0)==0)))k=8;if((k|0)==8)Mm(j,g,h,i,e,f,2147483647,0)|0;d=j;j=c[d+4>>2]|0;k=a;c[k>>2]=c[d>>2];c[k+4>>2]=j}while(0);Ec=l;return}function NP(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;L(c[h+4>>2]|0);return b|0}function OP(){var a=0,b=0,d=0;d=Ec;Ec=Ec+16|0;b=d;a=Cb(84)|0;if(!(c[45994]|0)){c[b>>2]=a;We(0,48,161170,b);c[45994]=1}Ec=d;return a|0}function PP(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,p=0,q=0,r=0;q=Ec;Ec=Ec+16|0;m=q;n=a+68|0;g=c[n>>2]|0;do if((g|0)>0?(o=a+72|0,h=c[o>>2]|0,(h|0)>0):0){p=a+392|0;e=c[p>>2]|0;j=a+396|0;f=c[j>>2]|0;if(e>>>0<(2147483647-f|0)>>>0?(k=a+384|0,r=c[k>>2]|0,l=a+388|0,i=c[l>>2]|0,(i+r|0)>>>0<h>>>0&((f+e|0)>>>0<g>>>0&r>>>0<(2147483647-i|0)>>>0)):0){i=qg(c[a+80>>2]|0)|0;if(!i)e=-558323010;else{if(!(0==0?(c[i+8>>2]&12|0)==0:0)){c[n>>2]=(c[n>>2]|0)-(c[j>>2]|0);c[o>>2]=(c[o>>2]|0)-(c[l>>2]|0);c[j>>2]=0;c[l>>2]=0;e=0;break}QP(m,a,i);if(!(b&1)){h=c[p>>2]|0;if(!h)b=2147483647;else b=d[161197+((H(h&0-h,125613361)|0)>>>27)>>0]|0;f=2147483647;g=0;while(1){if(!(c[a+(g<<2)>>2]|0))break;e=c[m+(g<<2)>>2]|0;if(!e)e=2147483647;else e=d[161197+((H(e&0-e,125613361)|0)>>>27)>>0]|0;f=(e|0)>(f|0)?f:e;g=g+1|0}if((b|0)<(f|0)){e=-558323010;break}if((f|0)<5){c[p>>2]=h&-1<<b+5-f;QP(m,a,i);e=0}else e=0}else e=0;while(1){f=a+(e<<2)|0;g=c[f>>2]|0;if(!g)break;c[f>>2]=g+(c[m+(e<<2)>>2]|0);e=e+1|0}c[n>>2]=(c[n>>2]|0)-((c[j>>2]|0)+(c[p>>2]|0));c[o>>2]=(c[o>>2]|0)-((c[l>>2]|0)+(c[k>>2]|0));c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;e=0}}else e=-34}else e=-22;while(0);Ec=q;return e|0}function QP(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;h=e+5|0;k=e+6|0;m=e+8|0;n=e+4|0;o=b+384|0;p=b+392|0;f=0;a:while(1){if(!(c[b+(f<<2)>>2]|0))break;if((f+-1|0)>>>0<2){j=d[k>>0]|0;l=d[h>>0]|0}else{j=0;l=0}if((f|0)==1&((c[m>>2]&66|0)!=0|0!=0)){q=10;break}i=d[n>>0]|0;g=0;while(1){if((g|0)>=(i|0))break a;if((c[e+16+(g<<5)>>2]|0)==(f|0))break;g=g+1|0}j=H((c[o>>2]|0)>>>j,c[b+32+(f<<2)>>2]|0)|0;c[a+(f<<2)>>2]=(H((c[p>>2]|0)>>>l,c[e+16+(g<<5)+4>>2]|0)|0)+j;f=f+1|0}if((q|0)==10)c[a+4>>2]=0;return}function RP(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[d>>2]|0;g=c[e+4>>2]|0;h=nW(g|0,((g|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;g=M()|0;e=c[e>>2]|0;d=c[d+4>>2]|0;e=nW(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;f=Cm(a,b,h,g,e,M()|0,f)|0;L(M()|0);return f|0}function SP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Ec;Ec=Ec+16|0;g=f+8|0;h=f;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];e=RP(a,b,h,g,5)|0;L(M()|0);Ec=f;return e|0}function TP(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Of(H(b,a)|0)|0;else a=0;return a|0}function UP(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;l=Ec;Ec=Ec+48|0;g=l+16|0;k=l+8|0;i=l;j=l+32|0;h=l+24|0;f=JP(a,b,0,0,e,j)|0;e=c[j>>2]|0;a:do if((f|0)!=0&(e|0)!=0){b=(d|0)!=0;if(!b)switch(c[f+12>>2]|0){case 18:case 17:case 16:case 15:case 14:case 11:case 13:case 12:case 5:break;default:{b=-22;break a}}if(!(c[f+40>>2]&128)){j=e+(c[f+8>>2]|0)|0;do switch(c[f+12>>2]|0){case 18:{b=VP(a,f,d,j)|0;break a}case 5:{b=WP(d,j)|0;break a}case 7:{b=XP(d,j)|0;break a}case 6:case 3:case 4:case 9:case 2:case 1:case 0:{b=lP(a,e,f,d,j)|0;break a}case 11:{b=YP(a,d,j)|0;break a}case 14:{b=ZP(a,d,h)|0;if((b|0)>=0){b=c[h>>2]|0;b=mP(a,f,j,1.0,c[h+4>>2]|0,b,((b|0)<0)<<31>>31)|0}break a}case 12:{b=_P(a,f,d,j)|0;break a}case 13:{b=$P(a,f,d,j)|0;break a}case 15:{if(!b){b=j;c[b>>2]=0;c[b+4>>2]=0;b=0;break a}b=aQ(j,d,1)|0;if((b|0)>=0)break a;c[i>>2]=d;We(a,16,161229,i);break a}case 16:{b=bQ(a,d,j)|0;break a}case 17:{if(b?YS(d,171832)|0:0){e=fP(d)|0;f=M()|0;if((e|0)==0&(f|0)==0){c[k>>2]=d;We(a,16,161276,k);b=-22}else b=0;a=j;c[a>>2]=e;c[a+4>>2]=f;break a}d=j;c[d>>2]=0;c[d+4>>2]=0;break}default:{}}while(0);We(a,16,161329,g);b=-22}else b=-22}else b=-1414549496;while(0);Ec=l;return b|0}function VP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0;m=Ec;Ec=Ec+16|0;k=m;j=m+4|0;do if(!d)f=0;else{if(YS(d,168269)|0)if(!(aP(d,163645)|0))if(!(aP(d,163674)|0)){c[j>>2]=0;h=PS(d,j,10)|0;n=d+(MT(d)|0)|0;if((n|0)==(c[j>>2]|0)){f=h;l=6}}else{f=0;l=6}else{f=1;l=6}else{f=-1;l=6}if(((l|0)==6?(i=+(f|0),!(+g[b+24>>3]>i)):0)?!(+g[b+32>>3]<i):0){c[e>>2]=f;f=0;break}c[k>>2]=d;We(a,16,163706,k);f=-22}while(0);Ec=m;return f|0}function WP(a,b){a=a|0;b=b|0;Se(b);a=eh(a)|0;c[b>>2]=a;return (a|0?0:-12)|0}function XP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=d+4|0;Se(d);c[j>>2]=0;do if((b|0)!=0?(e=MT(b)|0,(e|0)!=0):0)if(!(e&1)){h=(e|0)/2|0;i=cf(h)|0;if(i){g=i;while(1){e=a[b>>0]|0;if(!(e<<24>>24)){b=9;break}e=rQ(e)|0;f=rQ(a[b+1>>0]|0)|0;if((f|e|0)<0){b=8;break}a[g>>0]=f|e<<4;b=b+2|0;g=g+1|0}if((b|0)==8){Te(i);e=-22;break}else if((b|0)==9){c[d>>2]=i;c[j>>2]=h;e=0;break}}else e=-12}else e=-22;else e=0;while(0);return e|0}function YP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Ec;Ec=Ec+16|0;e=f;if((b|0)!=0?(YS(b,171832)|0)!=0:0){d=qQ(d,d+4|0,b)|0;if((d|0)<0){c[e>>2]=b;We(a,16,163340,e)}}else{c[d+4>>2]=0;c[d>>2]=0;d=0}Ec=f;return d|0}function ZP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;e=g;if(b){d=oQ(d,b)|0;if((d|0)<0)f=3}else{d=-22;f=3}if((f|0)==3){c[e>>2]=b;We(a,16,163242,e)}Ec=g;return d|0}function _P(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return lQ(a,b,c,d,183,20,163203)|0}function $P(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return lQ(a,b,c,d,12,21,163086)|0}function aQ(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=Ec;Ec=Ec+144|0;m=q+132|0;n=q+88|0;o=q+44|0;p=q;f=n;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));j=b;c[j>>2]=0;c[j+4>>2]=-2147483648;j=(e|0)!=0;a:do if(j){g=(a[d>>0]|0)==45;d=g?d+1|0:d;g=g&1;f=eQ(d,162935,n)|0;if(!f){f=eQ(d,162944,n)|0;e=n+8|0;c[e>>2]=0;if(!f){c[n>>2]=PS(d,p,10)|0;f=c[p>>2]|0;if((f|0)==(d|0)){e=-22;break}else{c[n+4>>2]=0;c[e>>2]=0;e=g;d=0;k=18;break}}else{l=g;h=0;k=19}}else{l=g;h=0;k=19}}else{e=IP()|0;f=M()|0;l=lW(e|0,f|0,1e6,0)|0;M()|0;c[m>>2]=l;if(!(ZO(d,162931)|0)){c[b>>2]=e;c[b+4>>2]=f;e=0;break}else f=0;while(1){if(f>>>0>=2){e=0;break}e=eQ(d,c[76964+(f<<2)>>2]|0,n)|0;if(!e)f=f+1|0;else break}h=(e|0)==0;g=h?d:e;h=h&1;e=a[g>>0]|0;b:do switch(e<<24>>24){case 116:case 84:{d=g+1|0;break}default:{d=g;while(1){f=d+1|0;if(!(fQ(e<<24>>24)|0))break b;d=f;e=a[f>>0]|0}}}while(0);e=0;f=g;while(1){if(e>>>0>=2){e=0;d=h;k=18;break a}f=eQ(d,c[76972+(e<<2)>>2]|0,n)|0;if(!f){e=e+1|0;f=0}else{l=0;k=19;break}}}while(0);if((k|0)==18)if(!f)e=-22;else{l=e;h=d;k=19}c:do if((k|0)==19){e=a[f>>0]|0;if(e<<24>>24==46){g=1e5;d=0;while(1){f=f+1|0;if(!g)break;e=a[f>>0]|0;if(!(gQ(e)|0))break;i=(H(e+-48|0,g)|0)+d|0;g=(g>>>0)/10|0;d=i}while(1){e=a[f>>0]|0;if(!(gQ(e<<24>>24)|0)){i=f;g=e;break}else f=f+1|0}}else{d=0;i=f;g=e}d:do if(j){j=((c[n+4>>2]|0)*60|0)+((c[n+8>>2]|0)*3600|0)+(c[n>>2]|0)|0;e=((j|0)<0)<<31>>31;switch(g<<24>>24){case 109:{if((a[i+1>>0]|0)==115){i=i+2|0;d=(d|0)/1e3|0;g=1e3;h=0;f=j;break d}else k=28;break}case 117:{f=i+1|0;if((a[f>>0]|0)==115){i=i+2|0;d=0;g=1;h=0;f=j;break d}break}default:k=28}if((k|0)==28)f=i+1|0;i=g<<24>>24==115?f:i;g=1e6;h=0;f=j}else{j=(g|32)<<24>>24==122;e=j&1;i=i+e|0;h=(h|0)!=0;e:do if(h|j){f=0;g=0}else{switch(a[i>>0]|0){case 45:case 43:break;default:{f=0;g=0;break e}}f=p;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));g=(a[i>>0]|0)==43;f=i+1|0;i=f;e=0;while(1){if(e>>>0>=3){k=37;break}i=eQ(f,c[76980+(e<<2)>>2]|0,p)|0;if(!i){i=0;e=e+1|0}else break}if((k|0)==37)if(!i){e=-22;break c}g=H(g?-60:60,((c[p+8>>2]|0)*60|0)+(c[p+4>>2]|0)|0)|0;e=1;f=g;g=((g|0)<0)<<31>>31}while(0);if(h){if(!e){o=(sb(m|0,o|0)|0)+12|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];c[p+16>>2]=c[o+16>>2];c[p+20>>2]=c[o+20>>2];c[p+24>>2]=c[o+24>>2];c[p+28>>2]=c[o+28>>2]}else{o=(ob(m|0,o|0)|0)+12|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];c[p+16>>2]=c[o+16>>2];c[p+20>>2]=c[o+20>>2];c[p+24>>2]=c[o+24>>2];c[p+28>>2]=c[o+28>>2]}o=n+12|0;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];c[o+16>>2]=c[p+16>>2];c[o+20>>2]=c[p+20>>2];c[o+24>>2]=c[p+24>>2];c[o+28>>2]=c[p+28>>2]}p=(e|0)!=0;c[n+32>>2]=(p^1)<<31>>31;if(p)e=hQ(n)|0;else e=ub(n|0)|0;f=hW(f|0,g|0,e|0,((e|0)<0)<<31>>31|0)|0;g=1e6;h=0;e=M()|0}while(0);p=(a[i>>0]|0)==0;e=nW(g|0,h|0,f|0,e|0)|0;e=hW(e|0,M()|0,d|0,((d|0)<0)<<31>>31|0)|0;f=M()|0;if(p){o=(l|0)!=0;n=iW(0,0,e|0,f|0)|0;p=M()|0;c[b>>2]=o?n:e;c[b+4>>2]=o?p:f;e=0}else e=-22}while(0);Ec=q;return e|0}function bQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Ec;Ec=Ec+16|0;e=f;if(b){d=cQ(d,b,-1,a)|0;if((d|0)<0){c[e>>2]=b;We(a,16,161351,e)}}else d=0;Ec=f;return d|0}function cQ(b,d,e,f){b=b|0;d=d|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,p=0,q=0,r=0,s=0;s=Ec;Ec=Ec+160|0;r=s+16|0;n=s+8|0;m=s;q=s+28|0;o=s+32|0;l=s+24|0;if((a[d>>0]|0)==35)i=1;else{i=(_S(d,161395,2)|0)==0;i=i?2:0}if((e|0)<0)e=MT(d)|0;e=e-i+1|0;gh(o,d+i|0,e>>>0<128?e:128)|0;e=NT(o,64)|0;c[q>>2]=e;if(!e)k=0;else{k=e+1|0;c[q>>2]=k;a[e>>0]=0}h=MT(o)|0;j=b+3|0;a[j>>0]=-1;a:do if((ZO(o,161398)|0)!=0?(ZO(o,161405)|0)!=0:0){if((i|0)==0?(tU(o,161414)|0)!=(h|0):0){e=xU(o,75844,140,8,11)|0;if(!e){c[n>>2]=o;We(f,16,161478,n);e=-22;break}else{p=e+4|0;a[b>>0]=a[p>>0]|0;a[b+1>>0]=a[p+1>>0]|0;a[b+2>>0]=a[p+2>>0]|0;p=20;break}}e=OS(o,l,16)|0;b:do if(!(a[c[l>>2]>>0]|0)){switch(h|0){case 8:{a[j>>0]=e;e=e>>>8;break}case 6:break;default:break b}a[b>>0]=e>>>16;a[b+1>>0]=e>>>8;a[b+2>>0]=e;p=20;break a}while(0);c[m>>2]=o;We(f,16,161437,m);e=-22}else p=9;while(0);if((p|0)==9){o=OO()|0;a[b>>0]=o>>>24;a[b+1>>0]=o>>>16;a[b+2>>0]=o>>>8;a[j>>0]=o;p=20}do if((p|0)==20)if(!k)e=0;else{if(!(_S(k,161395,2)|0))g=+((OS(k,q,16)|0)>>>0);else{g=+vU(k,q);g=g<0.0|g>1.0?256.0:g*255.0}q=c[q>>2]|0;if((q|0)!=(k|0)?!(g<0.0|(g>255.0|(a[q>>0]|0)!=0)):0){a[j>>0]=~~g;e=0;break}c[r>>2]=k;c[r+4>>2]=d;We(f,16,161502,r);e=-22}while(0);Ec=s;return e|0}function dQ(a,b){a=a|0;b=b|0;return ZO(a,c[b>>2]|0)|0}function eQ(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=Ec;Ec=Ec+16|0;m=o;c[m>>2]=b;h=e+8|0;i=e+4|0;j=e+20|0;k=e+16|0;l=e+12|0;a:while(1){g=d+1|0;f=a[d>>0]|0;switch(f<<24>>24){case 0:{n=27;break a}case 37:break;default:{d=(fQ(f<<24>>24)|0)==0;b=c[m>>2]|0;if(d){if((a[b>>0]|0)!=f<<24>>24){b=0;break a}c[m>>2]=b+1;d=g;continue a}while(1){d=a[b>>0]|0;if(!(d<<24>>24))break;if(!(fQ(d<<24>>24)|0))break;b=b+1|0}c[m>>2]=b;d=g;continue a}}d=d+2|0;b=a[g>>0]|0;switch(b<<24>>24|0){case 74:case 72:{b=iQ(m,0,b<<24>>24==72?23:2147483647,2)|0;if((b|0)==-1){b=0;break a}c[h>>2]=b;continue a}case 77:{b=iQ(m,0,59,2)|0;if((b|0)==-1){b=0;break a}c[i>>2]=b;continue a}case 83:{b=iQ(m,0,59,2)|0;if((b|0)==-1){b=0;break a}c[e>>2]=b;continue a}case 89:{b=iQ(m,0,9999,4)|0;if((b|0)==-1){b=0;break a}c[j>>2]=b+-1900;continue a}case 109:{b=iQ(m,1,12,2)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b+-1;continue a}case 100:{b=iQ(m,1,31,2)|0;if((b|0)==-1){b=0;break a}c[l>>2]=b;continue a}case 84:{g=eQ(c[m>>2]|0,162964,e)|0;c[m>>2]=g;if(!g){b=0;break a}else continue a}case 104:case 66:case 98:{b=jQ(m)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b;continue a}case 37:{g=c[m>>2]|0;c[m>>2]=g+1;if((a[g>>0]|0)==37)continue a;else{b=0;break a}}default:{b=0;break a}}}if((n|0)==27)b=c[m>>2]|0;Ec=o;return b|0}function fQ(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function gQ(a){a=a|0;return (a+-48|0)>>>0<10|0}function hQ(a){a=a|0;var b=0,d=0,e=0;b=c[a+16>>2]|0;d=(b|0)<2;e=(d?1899:1900)+(c[a+20>>2]|0)|0;return ((c[a+8>>2]|0)*3600|0)+-2032579456+((c[a+4>>2]|0)*60|0)+(c[a>>2]|0)+(((e*365|0)+(c[a+12>>2]|0)+((e|0)/4|0)+((e|0)/-100|0)+((e|0)/400|0)+(((((d?13:1)+b|0)*153|0)+-457|0)/5|0)|0)*86400|0)|0}function iQ(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;j=c[b>>2]|0;h=j;g=0;i=0;while(1){if((i|0)>=(f|0))break;k=a[h>>0]|0;if(!(gQ(k)|0))break;h=h+1|0;g=(g*10|0)+-48+k|0;i=i+1|0}if((h|0)!=(j|0)?!((g|0)<(d|0)|(g|0)>(e|0)):0)c[b>>2]=h;else g=-1;return g|0}function jQ(a){a=a|0;var b=0,d=0,e=0,f=0;b=0;while(1){if((b|0)>=12){b=-1;break}d=c[76992+(b<<2)>>2]|0;if(!($O(c[a>>2]|0,d,3)|0)){e=4;break}b=b+1|0}if((e|0)==4){e=d+3|0;f=MT(e)|0;d=(c[a>>2]|0)+3|0;c[a>>2]=d;if((f|0)>0?($O(d,e,f)|0)==0:0)c[a>>2]=(c[a>>2]|0)+f}return b|0}function kQ(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=12){b=-1;break}if(!(YS(71828+(b*20|0)|0,a)|0))break;b=b+1|0}return b|0}function lQ(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;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.0,r=0.0;p=Ec;Ec=Ec+32|0;o=p+8|0;m=p;l=p+28|0;do if((e|0)!=0?(YS(e,171832)|0)!=0:0){k=Kc[i&31](e)|0;if((k|0)==-1){k=PS(e,l,0)|0;if(k>>>0<h>>>0?(a[c[l>>2]>>0]|0)==0:0){n=7;break}else{c[m>>2]=e;c[m+4>>2]=j;We(b,16,163100,m);i=-22;break}}else n=7}else{k=-1;n=7}while(0);do if((n|0)==7){q=+g[d+24>>3];e=~~(q>-1.0?q:-1.0);q=+g[d+32>>3];n=h+-1|0;r=+(n|0);i=~~(q>r?r:q);h=(i|e|0)==0;e=h?-1:e;i=h?n:i;if((k|0)<(e|0)|(k|0)>(i|0)){f=c[d>>2]|0;c[o>>2]=k;c[o+4>>2]=f;c[o+8>>2]=j;c[o+12>>2]=e;c[o+16>>2]=i;We(b,16,163141,o);i=-34;break}else{c[f>>2]=k;i=0;break}}while(0);Ec=p;return i|0}function mQ(a){a=a|0;var b=0,d=0,e=0,f=0;f=Ec;Ec=Ec+48|0;e=f;d=f+8|0;if(!(YS(a,163216)|0))b=129390;else{b=(YS(a,163222)|0)==0;b=b?129380:a}a=nQ(b)|0;if((a|0)==-1){c[e>>2]=b;c[e+4>>2]=163233;VT(d,32,163228,e)|0;a=nQ(d)|0;if((a|0)==-1){e=(YS(b,163236)|0)==0;Ec=f;return (e?46:-1)|0}}Ec=f;return a|0}function nQ(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=183){b=-1;break}if(!(YS(c[9736+(b*152|0)>>2]|0,a)|0))break;if(aP(a,c[9736+(b*152|0)+144>>2]|0)|0)break;b=b+1|0}return b|0}function oQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)>=8){e=6;break}if(!(YS(c[77040+(d*12|0)>>2]|0,b)|0)){e=4;break}d=d+1|0}if((e|0)==4){b=77040+(d*12|0)+4|0;e=c[b+4>>2]|0;d=a;c[d>>2]=c[b>>2];c[d+4>>2]=e;d=0}else if((e|0)==6){d=pQ(a,b,1001e3,64,0)|0;if((d|0)>=0)if((c[a>>2]|0)<1)d=-22;else return ((c[a+4>>2]|0)<1?-22:0)|0}return d|0}function pQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0;k=Ec;Ec=Ec+32|0;j=k+8|0;i=k;h=a+4|0;c[j>>2]=a;c[j+4>>2]=h;c[j+8>>2]=k+20;do if((fU(b,163291,j)|0)!=2){b=oP(j,b,0,0,0,0,0,0,0,e,f)|0;if((b|0)<0)break;else{MP(i,+g[j>>3],d);j=c[i+4>>2]|0;b=a;c[b>>2]=c[i>>2];c[b+4>>2]=j;b=0;break}}else{j=c[a>>2]|0;b=c[h>>2]|0;Mm(a,h,j,((j|0)<0)<<31>>31,b,((b|0)<0)<<31>>31,d,((d|0)<0)<<31>>31)|0;b=0}while(0);Ec=k;return b|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=Ec;Ec=Ec+16|0;h=j;g=0;while(1){if((g|0)>=53){i=6;break}if(!(YS(c[77136+(g*12|0)>>2]|0,e)|0)){i=4;break}g=g+1|0}if((i|0)==4){f=c[77136+(g*12|0)+8>>2]|0;e=c[77136+(g*12|0)+4>>2]|0;i=10}else if((i|0)==6)if((g|0)==53){e=PS(e,h,10)|0;f=c[h>>2]|0;if(a[f>>0]|0){f=f+1|0;c[h>>2]=f}f=PS(f,h,10)|0;if(!(a[c[h>>2]>>0]|0))i=10;else e=-22}else e=-22;if((i|0)==10)if((e|0)<1|(f|0)<1)e=-22;else{c[b>>2]=e;c[d>>2]=f;e=0}Ec=j;return e|0}function rQ(a){a=a|0;var b=0;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)<6)a=-87;else return ((a+-65&255)<6?b+-55|0:-1)|0;else a=-48;return a+b|0}function sQ(a){a=a|0;return (a>>>0>11?0:71828+(a*20|0)|0)|0}function tQ(a){a=a|0;uQ(a,0,0);return}function uQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0;l=Ec;Ec=Ec+16|0;k=l;j=l+8|0;i=j+4|0;e=0;a:while(1){e=Ff(a,e)|0;if(!e)break;h=a+(c[e+8>>2]|0)|0;f=c[e+40>>2]|0;if(!((f&b|0)==(d|0)&(f&128|0)==0))continue;f=c[e+12>>2]|0;switch(f|0){case 8:case 10:continue a;case 13:case 12:case 17:case 15:case 9:case 2:case 1:case 0:case 18:{f=e+16|0;mP(a,e,h,1.0,1,c[f>>2]|0,c[f+4>>2]|0)|0;continue a}case 4:case 3:{mP(a,e,h,+g[e+16>>3],1,1,0)|0;continue a}case 6:{MP(j,+g[e+16>>3],2147483647);f=c[j>>2]|0;mP(a,e,h,1.0,c[i>>2]|0,f,((f|0)<0)<<31>>31)|0;continue a}case 16:{bQ(a,c[e+16>>2]|0,h)|0;continue a}case 5:{WP(c[e+16>>2]|0,h)|0;continue a}case 11:{YP(a,c[e+16>>2]|0,h)|0;continue a}case 14:{ZP(a,c[e+16>>2]|0,h)|0;continue a}case 7:{XP(c[e+16>>2]|0,h)|0;continue a}default:{h=c[e>>2]|0;c[k>>2]=f;c[k+4>>2]=h;We(a,48,163752,k);continue a}}}Ec=l;return}function vQ(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=Ec;Ec=Ec+16|0;i=j;g=j+8|0;c[g>>2]=0;do if(b){f=0;while(1){f=ch(c[b>>2]|0,260868,f,2)|0;if(!f){d=7;break}h=f+4|0;e=UP(a,c[f>>2]|0,c[h>>2]|0,d)|0;if((e|0)==-1414549496)e=dh(g,c[f>>2]|0,c[h>>2]|0,0)|0;if((e|0)<0){d=6;break}}if((d|0)==6){h=c[h>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=h;We(a,16,163803,i);Gf(g);break}else if((d|0)==7){Gf(b);c[b>>2]=c[g>>2];e=0;break}}else e=0;while(0);Ec=j;return e|0}function wQ(a,b){a=a|0;b=b|0;return vQ(a,b,0)|0}function xQ(a){a=a|0;if(a>>>0<=11){if(!(3040>>>a&1))a=c[71828+(a*20|0)+16>>2]|0}else a=-1;return a|0}function yQ(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;m=Ec;Ec=Ec+16|0;g=m;if((f|0)<=-1){c[g>>2]=163841;c[g+4>>2]=163857;c[g+8>>2]=102;We(0,0,164054,g);Za()}if(!f){f=OP()|0;f=(f|0)>1?f+1|0:1}k=(e|0)==0;j=f+(k<<31>>31)|0;l=Of(120)|0;c[a>>2]=l;a:do if(!l)f=-12;else{if(j|0?(i=TP(j,88)|0,c[l>>2]=i,(i|0)==0):0){Se(a);f=-12;break}c[l+108>>2]=b;c[l+112>>2]=d;c[l+116>>2]=e;b=l+4|0;c[b>>2]=f;g=l+8|0;c[l+104>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;IU(l+24|0,0)|0;wb(l+52|0,0)|0;c[l+100>>2]=0;g=0;while(1){if((g|0)>=(j|0))break a;n=c[l>>2]|0;i=n+(g*88|0)|0;c[i>>2]=l;d=n+(g*88|0)+4|0;IU(d,0)|0;e=n+(g*88|0)+32|0;wb(e|0,0)|0;JU(d)|0;h=n+(g*88|0)+84|0;c[h>>2]=0;i=zb(n+(g*88|0)+80|0,0,22,i|0)|0;if(i|0)break;while(1){if(c[h>>2]|0)break;yb(e|0,d|0)|0}KU(d)|0;g=g+1|0}c[b>>2]=g+(k&1);KU(d)|0;vb(e|0)|0;LU(d)|0;AQ(a);f=0-i|0}while(0);Ec=m;return f|0}function zQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=c[a>>2]|0;h=a+4|0;JU(h)|0;i=a+32|0;xb(i|0)|0;j=g+104|0;a=a+84|0;b=g+24|0;d=g+100|0;e=g+52|0;while(1){c[a>>2]=1;f=1;while(1){if(!f)break;yb(i|0,h|0)|0;f=c[a>>2]|0}if(c[j>>2]|0)break;if(!(BQ(g)|0))continue;JU(b)|0;c[d>>2]=1;xb(e|0)|0;KU(b)|0}KU(h)|0;return 0}function AQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(e=c[a>>2]|0,e|0):0){d=(c[e+4>>2]|0)+(((c[e+116>>2]|0)==0)<<31>>31)|0;c[e+104>>2]=1;b=0;while(1){if((b|0)>=(d|0)){b=0;break}g=c[e>>2]|0;f=g+(b*88|0)+4|0;JU(f)|0;c[g+(b*88|0)+84>>2]=0;xb(g+(b*88|0)+32|0)|0;KU(f)|0;b=b+1|0}while(1){if((b|0)>=(d|0))break;g=c[e>>2]|0;Ab(c[g+(b*88|0)+80>>2]|0,0)|0;vb(g+(b*88|0)+32|0)|0;LU(g+(b*88|0)+4|0)|0;b=b+1|0}vb(e+52|0)|0;LU(e+24|0)|0;Se(e);Se(a)}return}function BQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=c[a+12>>2]|0;e=c[a+8>>2]|0;g=a+16|0;f=c[g>>2]|0;c[g>>2]=f+1;g=a+112|0;h=a+108|0;b=a+20|0;a=f;do{Wc[c[g>>2]&127](c[h>>2]|0,a,f,d,e);a=c[b>>2]|0;c[b>>2]=a+1}while(a>>>0<d>>>0);return (a|0)==(d+-1+e|0)|0}function CQ(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;h=Ec;Ec=Ec+16|0;e=h;if((b|0)<=0){c[e>>2]=163881;c[e+4>>2]=163857;c[e+8>>2]=168;We(0,0,164054,e);Za()}c[a+12>>2]=b;f=c[a+4>>2]|0;e=a+8|0;c[e>>2]=(f|0)<(b|0)?f:b;c[a+16>>2]=0;c[a+20>>2]=c[e>>2];f=a+116|0;d=(d|0)!=0;b=(c[e>>2]|0)+((d&(c[f>>2]|0)!=0^1)<<31>>31)|0;e=0;while(1){if((e|0)>=(b|0))break;j=c[a>>2]|0;i=j+(e*88|0)+4|0;JU(i)|0;c[j+(e*88|0)+84>>2]=0;xb(j+(e*88|0)+32|0)|0;KU(i)|0;e=e+1|0}b=c[f>>2]|0;if(!(d&(b|0)!=0)){if(!(BQ(a)|0))g=9}else{Sc[b&63](c[a+108>>2]|0);g=9}if((g|0)==9){e=a+24|0;JU(e)|0;d=a+100|0;b=a+52|0;while(1){if(c[d>>2]|0)break;yb(b|0,e|0)|0}c[d>>2]=0;KU(e)|0}Ec=h;return}function DQ(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[77772+(d<<2)>>2]|0;PU(183980,4)|0;if(!d)c[a>>2]=1;return b|0}function EQ(){var a=0,b=0;a=0;while(1){b=c[77772+(a<<2)>>2]|0;if(a|0)break;a=c[b+76>>2]|0;if(!a){a=1;continue}Sc[a&63](b);a=1}return}function FQ(){var a=0,b=0,d=0,e=0;e=Ec;Ec=Ec+16|0;b=e;c[b>>2]=0;a=0;while(1){d=DQ(b)|0;if(!d)break;if(!a){a=d;continue}c[a+60>>2]=d;a=d}Ec=e;return}function GQ(a){a=a|0;PU(183984,5)|0;if(!a)a=71656;else a=c[a+60>>2]|0;return a|0}function HQ(a){a=a|0;return JQ(a,23)|0}function IQ(a){a=a|0;if(a)if((c[a+84>>2]|0)==0?(c[a+88>>2]|0)==0:0)a=(c[a+100>>2]|0)!=0&1;else a=1;else a=0;return a|0}function JQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;f=g;c[f>>2]=0;d=KQ(a)|0;a=0;a:while(1){while(1){e=DQ(f)|0;if(!e)break a;if(!(Kc[b&31](e)|0))continue;if((c[e+12>>2]|0)==(d|0))break}if(a|0?1:(c[e+16>>2]&512|0)==0){a=e;break}else a=e}Ec=g;return a|0}function KQ(a){a=a|0;return a|0}function LQ(a){a=a|0;return JQ(a,24)|0}function MQ(a){a=a|0;if(a)if(!(c[a+92>>2]|0))a=(c[a+108>>2]|0)!=0&1;else a=1;else a=0;return a|0}function NQ(a){a=a|0;var b=0;b=cf(896)|0;if(b){if((YQ(b,a)|0)<0){Te(b);b=0}}else b=0;return b|0}function OQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(a|0){if(PQ(a)|0){f=a+28|0;b=c[f>>2]|0;e=c[b+16>>2]|0;if(c[b+20>>2]|0)QQ(a);b=c[a+12>>2]|0;if(b|0?(d=c[b+96>>2]|0,d|0):0)Kc[d&31](a)|0;b=c[f>>2]|0;c[b+48>>2]=0;Se(b+44|0);Gg((c[f>>2]|0)+12|0);Gg((c[f>>2]|0)+100|0);Gg((c[f>>2]|0)+76|0);xf((c[f>>2]|0)+68|0);xf((c[f>>2]|0)+40|0);xf((c[f>>2]|0)+24|0);b=0;while(1){if((b|0)==4)break;Zf(e+(b<<2)|0);b=b+1|0}Se((c[f>>2]|0)+16|0);b=c[a+592>>2]|0;if(b|0?(g=c[b+52>>2]|0,g|0):0)Kc[g&31](a)|0;Se((c[f>>2]|0)+60|0);RQ(a);Se(f)}d=a+856|0;e=a+852|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Se((c[e>>2]|0)+(b*12|0)|0);b=b+1|0}Se(e);c[d>>2]=0;Cf(a+860|0);Cf(a+880|0);d=a+24|0;e=c[d>>2]|0;b=a+12|0;if((e|0?(h=c[b>>2]|0,h|0):0)?c[h+44>>2]|0:0)wf(e);wf(a);Se(d);if(IQ(c[b>>2]|0)|0){Se(a+68|0);Gg(a+684|0)}c[b>>2]=0;c[a+696>>2]=0}return 0}function PQ(a){a=a|0;return (c[a+28>>2]|0)!=0|0}function QQ(a){a=a|0;if(!(c[a+696>>2]&1))TQ(a);else SQ(a,c[a+688>>2]|0);return}function RQ(a){a=a|0;var b=0,d=0;d=c[a+28>>2]|0;b=d+36|0;d=d+32|0;a=0;while(1){if((a|0)>=(c[b>>2]|0))break;vf((c[d>>2]|0)+(a<<2)|0);a=a+1|0}Se(d);c[b>>2]=0;return}function SQ(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;p=Ec;Ec=Ec+16|0;h=p;k=a+28|0;l=c[(c[k>>2]|0)+20>>2]|0;n=a+12|0;e=c[n>>2]|0;UQ(l,b);f=l+4|0;g=c[f>>2]|0;if((g|0?(d=c[l>>2]|0,(g|0)!=(d|0)):0)?(VQ(c[d+212>>2]|0,c[g+212>>2]|0,0)|0)<0:0){We(a,16,163893,h);h=c[(c[(c[l>>2]|0)+212>>2]|0)+28>>2]|0;c[c[(c[(c[f>>2]|0)+212>>2]|0)+28>>2]>>2]=c[h>>2];c[h>>2]=1}f=e+96|0;e=0;while(1){if((e|0)>=(b|0)){d=0;break}g=c[l>>2]|0;h=g+(e*352|0)|0;d=g+(e*352|0)+156|0;JU(d)|0;c[g+(e*352|0)+332>>2]=1;xb(g+(e*352|0)+12|0)|0;KU(d)|0;d=g+(e*352|0)+8|0;if(c[d>>2]|0)Ab(c[g+(e*352|0)+4>>2]|0,0)|0;c[d>>2]=0;d=c[f>>2]|0;if(d|0?(i=c[g+(e*352|0)+212>>2]|0,i|0):0)Kc[d&31](i)|0;WQ(h);Gg(g+(e*352|0)+288|0);e=e+1|0}while(1){if((d|0)>=(b|0))break;e=c[l>>2]|0;LU(e+(d*352|0)+156|0)|0;LU(e+(d*352|0)+184|0)|0;vb(e+(d*352|0)+12|0)|0;vb(e+(d*352|0)+60|0)|0;vb(e+(d*352|0)+108|0)|0;Af(e+(d*352|0)+216|0);Se(e+(d*352|0)+304|0);e=e+(d*352|0)+212|0;if(d){f=c[e>>2]|0;if(f|0){Se(f+24|0);Se((c[e>>2]|0)+184|0);m=17}}else m=17;if((m|0)==17?(m=0,j=c[e>>2]|0,j|0):0){Se(j+28|0);Cf((c[e>>2]|0)+860|0)}Se(e);d=d+1|0}Se(l);LU(l+8|0)|0;LU(l+36|0)|0;LU(l+64|0)|0;vb(l+92|0)|0;Se((c[k>>2]|0)+20|0);d=c[a+24>>2]|0;if((d|0?(o=c[n>>2]|0,o|0):0)?c[o+44>>2]|0:0)wf(d);c[n>>2]=0;Ec=p;return}function TQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+28|0;d=c[(c[b>>2]|0)+20>>2]|0;AQ(d);e=d+36|0;f=d+44|0;g=d+40|0;a=0;while(1){if((a|0)>=(c[e>>2]|0))break;LU((c[f>>2]|0)+(a*28|0)|0)|0;vb((c[g>>2]|0)+(a*48|0)|0)|0;a=a+1|0}Se(d+28|0);Se(f);Se(g);Se((c[b>>2]|0)+20|0);return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;XQ(a);d=0;while(1){if((d|0)>=(b|0))break;e=c[a>>2]|0;f=e+(d*352|0)+300|0;if(c[f>>2]|0){g=e+(d*352|0)+184|0;JU(g)|0;h=e+(d*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;yb(h|0,g|0)|0}KU(g)|0}c[e+(d*352|0)+292>>2]=0;d=d+1|0}Uk(a);return}function VQ(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;do if((a|0)==(b|0))k=10;else{if((d|0)==0?c[(c[b+780>>2]|0)+16>>2]&1|0:0){k=12;break}e=b+76|0;f=c[e+4>>2]|0;g=a+76|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+760|0;f=c[g+4>>2]|0;e=a+760|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+92>>2]=c[b+92>>2];c[a+96>>2]=c[b+96>>2];c[a+112>>2]=c[b+112>>2];c[a+768>>2]=c[b+768>>2];c[a+100>>2]=c[b+100>>2];c[a+104>>2]=c[b+104>>2];c[a+140>>2]=c[b+140>>2];c[a+668>>2]=c[b+668>>2];c[a+672>>2]=c[b+672>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+188|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+716>>2]=c[b+716>>2];c[a+720>>2]=c[b+720>>2];c[a+676>>2]=c[b+676>>2];c[a+84>>2]=c[b+84>>2];c[a+316>>2]=c[b+316>>2];c[a+320>>2]=c[b+320>>2];c[a+324>>2]=c[b+324>>2];c[a+328>>2]=c[b+328>>2];c[a+332>>2]=c[b+332>>2];c[a+592>>2]=c[b+592>>2];c[a+596>>2]=c[b+596>>2];c[a+348>>2]=c[b+348>>2];c[a+344>>2]=c[b+344>>2];c[a+352>>2]=c[b+352>>2];g=b+376|0;f=c[g+4>>2]|0;e=a+376|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[(c[a+28>>2]|0)+60>>2]=c[(c[b+28>>2]|0)+60>>2];e=a+860|0;f=c[e>>2]|0;g=(f|0)!=0;h=b+860|0;i=c[h>>2]|0;if(!(g^(i|0)!=0)){if(g?(c[f+4>>2]|0)!=(c[i+4>>2]|0):0)k=7}else k=7;if(((k|0)==7?(Cf(e),j=c[h>>2]|0,j|0):0)?(j=Eg(j)|0,c[e>>2]=j,(j|0)==0):0){e=-12;break}c[a+884>>2]=c[b+884>>2];k=10}while(0);if((k|0)==10)if(!d)k=12;else{c[a+88>>2]=(c[b+688>>2]|0)+-1;c[a+684>>2]=c[b+684>>2];e=0}if((k|0)==12){e=c[(c[a+12>>2]|0)+68>>2]|0;if(!e)e=0;else e=Mc[e&15](a,b)|0}return e|0}function WQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=Ec;Ec=Ec+16|0;f=g;b=a+308|0;d=(c[a>>2]|0)+8|0;e=a+212|0;a=a+304|0;while(1){if((c[b>>2]|0)<=0){a=6;break}JU(d)|0;if((c[(c[e>>2]|0)+8>>2]|0)>>>0>=2){a=4;break}j=c[a>>2]|0;i=(c[b>>2]|0)+-1|0;c[b>>2]=i;h=j+(i*408|0)|0;c[j+(i*408|0)+64>>2]=h;bg(h);KU(d)|0}if((a|0)==4){c[f>>2]=163921;c[f+4>>2]=164010;c[f+8>>2]=371;We(0,0,164054,f);Za()}else if((a|0)==6){Ec=g;return}}function XQ(a){a=a|0;var b=0,d=0,e=0,f=0;f=Ec;Ec=Ec+16|0;e=f;b=a+64|0;JU(b)|0;d=a+140|0;if(!(c[d>>2]|0)){c[e>>2]=164037;c[e+4>>2]=164010;c[e+8>>2]=155;We(0,0,164054,e);Za()}else{c[d>>2]=0;zW(a+92|0)|0;KU(b)|0;Ec=f;return}}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;h=i;yW(a|0,0,896)|0;c[a>>2]=77780;e=(b|0)!=0;a:do if(e){d=c[b+8>>2]|0;c[a+8>>2]=d;c[a+12>>2]=b;c[a+16>>2]=c[b+12>>2];switch(d|0){case 1:{d=8;break a}case 0:{d=16;break a}case 3:{d=32;break a}default:{f=6;break a}}}else{c[a+8>>2]=-1;f=6}while(0);if((f|0)==6)d=0;uQ(a,d,d);c[a+76>>2]=0;c[a+80>>2]=1;c[a+760>>2]=0;c[a+764>>2]=1;c[a+772>>2]=0;c[a+776>>2]=1;c[a+400>>2]=10;c[a+120>>2]=10;c[a+704>>2]=4;c[a+708>>2]=41;c[a+188>>2]=0;c[a+192>>2]=1;c[a+112>>2]=-1;c[a+768>>2]=-1;c[a+352>>2]=-1;f=a+584|0;c[f>>2]=0;c[f+4>>2]=-2147483648;b:do if(e){e=c[b+56>>2]|0;if(e|0){f=a+24|0;d=c[f>>2]|0;if(!d){d=Of(e)|0;c[f>>2]=d;if(!d){g=-12;break}}e=c[b+44>>2]|0;if(e|0){c[d>>2]=e;tQ(c[f>>2]|0)}}d=c[b+72>>2]|0;if(d){while(1){e=c[d>>2]|0;if(!e){g=0;break b}if((UP(a,e,c[d+4>>2]|0,0)|0)>-1)d=d+8|0;else break}c[h>>2]=164084;c[h+4>>2]=164093;c[h+8>>2]=142;We(0,0,164054,h);Za()}else g=0}else g=0;while(0);Ec=i;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;j=(e|0)==0;h=0;while(1){if((h|0)>=(f|0))break;i=d+(H(h,g)|0)|0;i=Mc[b&15](a,i)|0;if(!j)c[e+(h<<2)>>2]=i;h=h+1|0}return 0}function _Q(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;h=(e|0)==0;g=0;while(1){if((g|0)>=(f|0))break;i=Oc[b&3](a,d,g,0)|0;if(!h)c[e+(g<<2)>>2]=i;g=g+1|0}return 0}function $Q(a){a=a|0;var b=0,d=0;if(!(((a|0)!=0?(d=c[a+12>>2]|0,(d|0)!=0):0)?(b=c[d>>2]|0,(b|0)!=0):0))b=175205;return b|0}function aR(a,b){a=a|0;b=b|0;var d=0,e=0;if(!((((b|0)==0?(e=c[a+12>>2]|0,(e|0)!=0):0)?(c[e+44>>2]|0)!=0:0)?(d=c[a+24>>2]|0,(d|0)!=0):0))d=0;return d|0}function bR(a){a=a|0;var b=0;a:do if(!a)a=0;else{b=0;while(1){b=GQ(b)|0;if(!b){a=0;break a}if((c[b+44>>2]|0)==(a|0)){a=b;break}}}while(0);do{a=GQ(a)|0;if(!a){b=0;break}b=c[a+44>>2]|0}while(!(b|0));return b|0}function cR(a){a=a|0;a=c[a+12>>2]|0;if((a|0)!=0?(c[a+92>>2]|0)!=0:0)a=6;else a=5;return a|0}function dR(b,d){b=b|0;d=d|0;var e=0;if(d>>>0<=2147483582){e=eP(b,d+64|0)|0;if((e|0)>=0){e=(c[(c[b>>2]|0)+4>>2]|0)+d|0;b=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));e=0}}else e=-22;return e|0}function eR(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;i=a+44|0;j=c[i>>2]|0;h=a+40|0;a=0;while(1){if((a|0)>=(j|0)){g=6;break}f=c[h>>2]|0;if((c[f+(a*12|0)+8>>2]|0)==(b|0)){g=4;break}a=a+1|0}if((g|0)==4){j=f+(a*12|0)|0;Te(c[j>>2]|0);c[j>>2]=d;c[f+(a*12|0)+4>>2]=e;a=0}else if((g|0)==6){a=j+1|0;if(a>>>0<=24){a=bf(c[h>>2]|0,a*12|0)|0;if(!a)a=-12;else{c[h>>2]=a;c[a+(j*12|0)>>2]=d;c[a+(j*12|0)+4>>2]=e;c[a+(j*12|0)+8>>2]=b;c[i>>2]=(c[i>>2]|0)+1;a=0}}else a=-34}return a|0}function fR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;f=g;if(d>>>0<=2147483583?(e=Of(d+64|0)|0,c[f>>2]=e,(e|0)!=0):0){if((eR(a,b,e,d)|0)<0){Se(f);e=0}}else e=0;Ec=g;return e|0}function gR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=b+8|0;d=c[g+4>>2]|0;h=a+8|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+16|0;d=c[h+4>>2]|0;g=a+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+56|0;d=c[g+4>>2]|0;h=a+56|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+48|0;d=c[h+4>>2]|0;g=a+48|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+64|0;d=c[g+4>>2]|0;h=a+64|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;c[a+36>>2]=c[b+36>>2];c[a+32>>2]=c[b+32>>2];c[a+40>>2]=0;c[a+44>>2]=0;h=b+44|0;d=b+40|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}g=c[d>>2]|0;e=c[g+(b*12|0)+4>>2]|0;f=c[g+(b*12|0)>>2]|0;g=fR(a,c[g+(b*12|0)+8>>2]|0,e)|0;if(!g){i=4;break}wW(g|0,f|0,e|0)|0;b=b+1|0}if((i|0)==4){Bf(a);b=-12}return b|0}function hR(a,b){a=a|0;b=b|0;var d=0,e=0;d=gR(a,b)|0;do if((d|0)>=0){d=c[b>>2]|0;if(!d){e=b+28|0;d=dR(a,c[e>>2]|0)|0;if((d|0)<0)b=10;else{d=c[e>>2]|0;if(d|0)wW(c[(c[a>>2]|0)+4>>2]|0,c[b+24>>2]|0,d|0)|0;d=(c[a>>2]|0)+4|0;b=9}}else{e=Eg(d)|0;c[a>>2]=e;if(!e){d=-12;b=10}else{e=b+28|0;d=b+24|0;b=9}}if((b|0)==9){c[a+24>>2]=c[d>>2];c[a+28>>2]=c[e>>2];d=0;break}else if((b|0)==10){Bf(a);break}}while(0);return d|0}function iR(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[77824+(d<<2)>>2]|0;if(!d)c[a>>2]=1;return b|0}function jR(a){a=a|0;var b=0,d=0,e=0;e=Ec;Ec=Ec+16|0;d=e;c[d>>2]=0;do{b=iR(d)|0;if(!b){b=0;break}}while((YS(c[b>>2]|0,a)|0)!=0);Ec=e;return b|0}function kR(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;j=Ec;Ec=Ec+16|0;h=j;e=Of(40)|0;c[h>>2]=e;a:do if(!e)d=-12;else{c[e>>2]=77832;c[e+4>>2]=a;f=e+16|0;c[f>>2]=mR()|0;k=mR()|0;c[e+20>>2]=k;do if((!((k|0)==0|(c[f>>2]|0)==0)?(k=Of(8)|0,d=e+8|0,c[d>>2]=k,k|0):0)?(g=NO()|0,c[c[d>>2]>>2]=g,g=c[h>>2]|0,i=g,c[c[g+8>>2]>>2]|0):0){tQ(g);d=c[a+12>>2]|0;if(d|0){f=Of(d)|0;e=g+12|0;c[e>>2]=f;if(!f)break;d=c[a+8>>2]|0;if(d|0){c[f>>2]=d;tQ(c[e>>2]|0)}}c[b>>2]=i;d=0;break a}while(0);vf(h);d=-12}while(0);Ec=j;return d|0}function lR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;zf(a);e=c[b+8>>2]|0;c[a>>2]=e;c[a+4>>2]=c[b+16>>2];c[a+8>>2]=c[b+20>>2];g=b+40|0;f=c[g+4>>2]|0;d=a+24|0;c[d>>2]=c[g>>2];c[d+4>>2]=f;c[a+32>>2]=c[b+672>>2];c[a+36>>2]=c[b+676>>2];c[a+40>>2]=c[b+716>>2];c[a+44>>2]=c[b+720>>2];switch(e|0){case 0:{c[a+20>>2]=c[b+112>>2];c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];c[a+64>>2]=c[b+340>>2];c[a+68>>2]=c[b+328>>2];c[a+72>>2]=c[b+316>>2];c[a+76>>2]=c[b+320>>2];c[a+80>>2]=c[b+324>>2];c[a+84>>2]=c[b+332>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+56|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+88>>2]=c[b+140>>2];break}case 1:{c[a+20>>2]=c[b+352>>2];e=b+376|0;f=c[e+4>>2]|0;g=a+96|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+104>>2]=c[b+348>>2];c[a+108>>2]=c[b+344>>2];c[a+112>>2]=c[b+364>>2];c[a+116>>2]=c[b+356>>2];c[a+120>>2]=c[b+756>>2];c[a+124>>2]=c[b+868>>2];c[a+128>>2]=c[b+828>>2];break}case 3:{c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];break}default:{}}e=b+68|0;if(c[e>>2]|0){b=b+72|0;d=Of((c[b>>2]|0)+64|0)|0;c[a+12>>2]=d;if(!d)b=-12;else{b=c[b>>2]|0;wW(d|0,c[e>>2]|0,b|0)|0;c[a+16>>2]=b;b=0}}else b=0;return b|0}function mR(){var a=0;a=Of(136)|0;if(!a)a=0;else zf(a);return a|0}function nR(a,b){a=a|0;b=b|0;if((b|0)==0?(c[(c[a+4>>2]|0)+8>>2]|0)!=0:0)a=c[a+12>>2]|0;else a=0;return a|0}function oR(a){a=a|0;var b=0,d=0,e=0;e=Ec;Ec=Ec+16|0;d=e;c[d>>2]=0;a:do if(a|0)do{b=iR(d)|0;if(!b)break a}while((c[b+8>>2]|0)!=(a|0));while(0);do{a=iR(d)|0;if(!a){a=0;break}a=c[a+8>>2]|0}while(!(a|0));Ec=e;return a|0}function pR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+28|0;g=c[e>>2]|0;f=g+64|0;do if(!(c[f>>2]|0)){d=qR(a,b)|0;if((d|0)==-541478725){c[f>>2]=1;d=-541478725;break}if((d|0)>=0){d=rR(c[e>>2]|0,b)|0;if((d|0)>=0){d=sR(a,b)|0;if((d|0)>=0){if(!(c[(c[a+12>>2]|0)+108>>2]|0)){d=0;break}d=g+92|0;c[d>>2]=(c[d>>2]|0)+(c[b+28>>2]|0);d=0;break}}Af(b)}}else d=-541478725;while(0);return d|0}function qR(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;k=Ec;Ec=Ec+16|0;i=k;h=c[a+28>>2]|0;g=h+36|0;h=h+32|0;f=(c[g>>2]|0)+-1|0;while(1){if((f|0)<=-1){d=-11;break}d=Hf(c[(c[h>>2]|0)+(f<<2)>>2]|0,b)|0;if((d|0)==-11){f=f+-1|0;continue}e=(d|0)<0;if(e&(d|0)!=-541478725)break;if((f|0)==((c[g>>2]|0)+-1|0))break;f=f+1|0;d=If(c[(c[h>>2]|0)+(f<<2)>>2]|0,e?0:b)|0;if((d|0)<0){j=8;break}}if((j|0)==8){We(a,16,175428,i);Af(b)}Ec=k;return d|0}function rR(a,b){a=a|0;b=b|0;var d=0;d=a+40|0;Af(c[d>>2]|0);if(b){a=gR(c[d>>2]|0,b)|0;if(!a){c[(c[d>>2]|0)+28>>2]=c[b+28>>2];a=0}}else a=0;return a|0}function sR(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;n=Ec;Ec=Ec+48|0;m=n+32|0;l=n+24|0;j=n+16|0;h=n+8|0;e=n;k=n+36|0;c[k>>2]=0;g=rh(b,2,k)|0;a:do if(!g)b=0;else{b:do if(!(c[(c[a+12>>2]|0)+16>>2]&16384)){We(a,16,175223,e);b=-22;e=a}else{f=c[k>>2]|0;c:do if((f|0)>=4){e=g+4|0;i=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;b=f+-4|0;c[k>>2]=b;do if(i&1){if((f|0)<8)break c;b=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((b|0)<1){We(a,16,175316,h);b=-1094995529;e=a;break b}else{c[a+348>>2]=b;b=f+-8|0;c[k>>2]=b;e=g+8|0;break}}while(0);if(i&2){if((b|0)<8)break;g=e;f=g;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=a+376|0;c[h>>2]=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;c[h+4>>2]=g;b=b+-8|0;c[k>>2]=b;e=e+8|0}do if(i&4){if((b|0)<4)break c;f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((f|0)<1){We(a,16,175338,j);b=-1094995529;e=a;break b}else{c[a+344>>2]=f;b=b+-4|0;c[k>>2]=b;e=e+4|0;break}}while(0);if(!(i&8)){b=0;break a}if((b|0)>=8){l=e+4|0;j=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;c[a+92>>2]=j;l=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;c[a+96>>2]=l;c[k>>2]=b+-8;b=tR(a,j,l)|0;if((b|0)>=0){b=0;break a}e=a;break b}}while(0);We(a,16,175358,l);b=-1094995529;e=a}while(0);We(e,16,175393,m);b=(c[a+580>>2]&8|0)==0?0:b}while(0);Ec=n;return b|0}function tR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+872|0;e=Zg(b,d,c[e>>2]|0,c[e+4>>2]|0,-1,0,a)|0;g=(e|0)<0;f=g?0:d;b=g?0:b;c[a+100>>2]=b;c[a+104>>2]=f;d=c[a+680>>2]|0;c[a+92>>2]=0-(0-b>>d);c[a+96>>2]=0-(0-f>>d);return e|0}function uR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+28|0;g=c[d>>2]|0;a:do if((PQ(a)|0)!=0?(MQ(c[a+12>>2]|0)|0)!=0:0)if(!(c[(c[d>>2]|0)+64>>2]|0)){e=(b|0)!=0;if((e?(c[b+28>>2]|0)==0:0)?c[b+24>>2]|0:0){d=-22;break}d=vR(a)|0;if((d|0)>=0){f=g+68|0;Af(c[f>>2]|0);do if(e){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0)break;d=hR(c[f>>2]|0,b)|0;if((d|0)<0)break a}while(0);d=If(c[c[g+32>>2]>>2]|0,c[f>>2]|0)|0;if((d|0)<0){Af(c[f>>2]|0);break}d=c[g+76>>2]|0;b:do if((c[d+248>>2]|0)==0?(h=wR(a,d)|0,(h|0)<0):0)if((h|0)<-11)switch(h|0){case -541478725:break b;default:{d=h;break a}}else switch(h|0){case -11:break b;default:{d=h;break a}}while(0);d=0}}else d=-541478725;else d=-22;while(0);return d|0}function vR(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=Ec;Ec=Ec+16|0;k=m;h=m+8|0;i=m+4|0;d=c[b+28>>2]|0;j=d+36|0;a:do if(!(c[j>>2]|0)){f=c[(c[b+12>>2]|0)+120>>2]|0;f=(f|0)==0?175998:f;c[h>>2]=f;g=d+32|0;d=f;while(1){if(!d){d=0;break a}if(!(a[d>>0]|0)){d=0;break a}d=YO(h,176003)|0;c[i>>2]=d;if(!d){d=-12;break}d=jR(d)|0;if(!d){l=8;break}Se(i);e=AM(c[g>>2]|0,(c[j>>2]|0)+1|0,4)|0;if(!e){d=-12;break}c[g>>2]=e;f=c[j>>2]|0;c[j>>2]=f+1;d=kR(d,e+(f<<2)|0)|0;if((d|0)<0)break;d=c[j>>2]|0;e=c[g>>2]|0;f=c[e+(d+-1<<2)>>2]|0;if((d|0)==1){c[f+24>>2]=1;c[f+28>>2]=9e4;d=lR(c[(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)+16>>2]|0,b)|0}else{e=(c[e+(d+-2<<2)>>2]|0)+32|0;d=c[e+4>>2]|0;f=f+24|0;c[f>>2]=c[e>>2];c[f+4>>2]=d;f=c[g>>2]|0;d=c[j>>2]|0;d=Kf(c[(c[f+(d+-1<<2)>>2]|0)+16>>2]|0,c[(c[f+(d+-2<<2)>>2]|0)+20>>2]|0)|0}if((d|0)<0)break;d=Lf(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)|0;if((d|0)<0)break;d=c[h>>2]|0}if((l|0)==8){c[k>>2]=c[i>>2];We(b,16,176005,k);Se(i);d=-558323010}RQ(b)}else d=0;while(0);Ec=m;return d|0}function wR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+32|0;g=i+16|0;d=i;e=c[a+28>>2]|0;if(c[b+248>>2]|0){c[d>>2]=175475;c[d+4>>2]=128996;c[d+8>>2]=607;We(0,0,164054,d);Za()}f=a+12|0;d=c[(c[f>>2]|0)+108>>2]|0;if(!d)d=xR(a,b)|0;else d=Mc[d&15](a,b)|0;a:do if((d|0)>=0){switch(d|0){case 0:break;default:{h=16;break a}}d=c[b+400>>2]|0;e=(d|0)==0;if(!(!e?(c[d+8>>2]|0)==20:0))h=10;do if((h|0)==10)if(!(c[(c[f>>2]|0)+16>>2]&2))if(e){d=0;h=16;break a}else break;else{c[g>>2]=175490;c[g+4>>2]=128996;c[g+8>>2]=621;We(0,0,164054,g);Za()}while(0);d=c[c[d+4>>2]>>2]|0;if(d){d=Mc[d&15](a,b)|0;if((d|0)<0)bg(b);else h=16}else{d=0;h=16}}else{switch(d|0){case -541478725:break;default:{h=16;break a}}c[e+80>>2]=1;d=-541478725;h=16}while(0);if((h|0)==16)Cf(b+400|0);Ec=i;return d|0}function xR(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+248|0;do{if(c[e>>2]|0){d=0;break}d=yR(a,b)|0}while((d|0)>=0);return d|0}function yR(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=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=Ec;Ec=Ec+144|0;K=W+128|0;J=W+120|0;V=W+64|0;Q=W+56|0;G=W+48|0;E=W+40|0;B=W+32|0;x=W+24|0;r=W+16|0;o=W+8|0;j=W;T=W+96|0;i=W+76|0;q=W+112|0;A=W+104|0;N=W+88|0;O=W+80|0;P=b+28|0;U=c[P>>2]|0;R=c[U+24>>2]|0;S=R+24|0;if(!(((c[S>>2]|0)==0?(c[U+64>>2]|0)==0:0)?(Af(R),f=pR(b,R)|0,(f|0)<0&(f|0)!=-541478725):0))k=4;do if((k|0)==4){L=U+80|0;if(!(c[L>>2]|0)){if(((c[S>>2]|0)==0?(c[(c[b+12>>2]|0)+16>>2]&32|0)==0:0)?(c[b+696>>2]&1|0)==0:0){f=-541478725;break}c[T>>2]=0;I=b+696|0;if(!(c[I>>2]&1)){h=b+12|0;f=Oc[c[(c[h>>2]|0)+92>>2]&3](b,e,T,R)|0;g=c[h>>2]|0;if(!(c[g+116>>2]&4)){u=R+16|0;v=c[u+4>>2]|0;w=e+120|0;c[w>>2]=c[u>>2];c[w+4>>2]=v}if(!(c[g+8>>2]|0)){if(!(c[b+140>>2]|0)){u=R+56|0;v=c[u+4>>2]|0;w=e+328|0;c[w>>2]=c[u>>2];c[w+4>>2]=v}if(!(c[g+16>>2]&2)){g=e+92|0;if(!(c[g>>2]|0)){u=b+188|0;v=c[u+4>>2]|0;w=g;c[w>>2]=c[u>>2];c[w+4>>2]=v}g=e+68|0;if(!(c[g>>2]|0))c[g>>2]=c[b+92>>2];g=e+72|0;if(!(c[g>>2]|0))c[g>>2]=c[b+96>>2];g=e+80|0;if((c[g>>2]|0)==-1){c[g>>2]=c[b+112>>2];v=h}else v=h}else v=h}else v=h}else{f=zR(b,e,T,R)|0;v=b+12|0}w=c[T>>2]|0;a:do switch(c[(c[v>>2]|0)+8>>2]|0){case 0:{if(c[e+296>>2]&4|0){c[T>>2]=0;break a}if(w|0){D=e+104|0;C=e+120|0;C=AR(b,c[D>>2]|0,c[D+4>>2]|0,c[C>>2]|0,c[C+4>>2]|0)|0;D=M()|0;E=e+320|0;c[E>>2]=C;c[E+4>>2]=D}break}case 1:{if((f|0)>-1&(w|0)!=0){u=e+104|0;t=e+120|0;t=AR(b,c[u>>2]|0,c[u+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;u=M()|0;g=e+320|0;c[g>>2]=t;c[g+4>>2]=u;g=e+80|0;if((c[g>>2]|0)==-1)c[g>>2]=c[b+352>>2];g=e+240|0;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){s=b+376|0;t=c[s+4>>2]|0;u=g;c[u>>2]=c[s>>2];c[u+4>>2]=t}g=e+352|0;if(!(c[g>>2]|0))c[g>>2]=c[b+348>>2];g=e+232|0;if(!(c[g>>2]|0))c[g>>2]=c[b+344>>2]}g=rh(c[U+40>>2]|0,11,i)|0;if((g|0)!=0&(c[i>>2]|0)>9){t=c[P>>2]|0;u=H(c[t+108>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0;c[t+56>>2]=u;t=g+4|0;t=d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24;c[j>>2]=u;c[j+4>>2]=t;We(b,48,175610,j);u=a[g+8>>0]|0;s=a[g+9>>0]|0}else{t=0;u=0;s=0}g=c[T>>2]|0;if((g|0?(c[e+296>>2]&4|0)!=0:0)?(c[b+64>>2]&536870912|0)==0:0){l=(c[P>>2]|0)+56|0;j=(c[l>>2]|0)-(c[e+76>>2]|0)|0;c[l>>2]=(j|0)>0?j:0;c[T>>2]=0}else k=43;do if(((k|0)==43?(m=(c[P>>2]|0)+56|0,n=c[m>>2]|0,(n|0)>0&(g|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){l=e+76|0;g=c[l>>2]|0;if((g|0)<=(n|0)){c[T>>2]=0;x=n-g|0;c[m>>2]=x;c[o>>2]=x;We(b,48,175657,o);break}o=c[e+64>>2]|0;Pg(o,o,0,n,g-n|0,c[b+348>>2]|0,c[e+80>>2]|0)|0;g=b+772|0;if((c[g>>2]|0)!=0?(p=c[b+344>>2]|0,(p|0)!=0):0){j=c[(c[P>>2]|0)+56>>2]|0;c[q>>2]=1;c[q+4>>2]=p;c[J>>2]=c[q>>2];c[J+4>>2]=c[q+4>>2];c[K>>2]=c[g>>2];c[K+4>>2]=c[g+4>>2];j=SP(j,((j|0)<0)<<31>>31,J,K)|0;k=M()|0;g=e+104|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){p=hW(h|0,i|0,j|0,k|0)|0;q=M()|0;r=g;c[r>>2]=p;c[r+4>>2]=q}g=e+112|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){p=hW(h|0,i|0,j|0,k|0)|0;q=M()|0;r=g;c[r>>2]=p;c[r+4>>2]=q}g=e+120|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){p=hW(h|0,i|0,j|0,k|0)|0;q=M()|0;r=g;c[r>>2]=p;c[r+4>>2]=q}g=e+336|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(k|0)|(i|0)==(k|0)&h>>>0<j>>>0)){p=iW(h|0,i|0,j|0,k|0)|0;q=M()|0;r=g;c[r>>2]=p;c[r+4>>2]=q}}else We(b,24,175690,r);r=c[l>>2]|0;c[x>>2]=c[(c[P>>2]|0)+56>>2];c[x+4>>2]=r;We(b,48,175740,x);x=(c[P>>2]|0)+56|0;c[l>>2]=(c[l>>2]|0)-(c[x>>2]|0);c[x>>2]=0}while(0);do if((t|0?(C=e+76|0,y=c[C>>2]|0,y>>>0>=t>>>0&(c[T>>2]|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){if((y|0)==(t|0)){c[T>>2]=0;break}g=b+772|0;if((c[g>>2]|0)!=0?(z=c[b+344>>2]|0,(z|0)!=0):0){c[A>>2]=1;c[A+4>>2]=z;c[J>>2]=c[A>>2];c[J+4>>2]=c[A+4>>2];c[K>>2]=c[g>>2];c[K+4>>2]=c[g+4>>2];A=SP(y-t|0,0,J,K)|0;B=M()|0;g=e+336|0;c[g>>2]=A;c[g+4>>2]=B;g=b}else{We(b,24,175760,B);g=b}B=c[C>>2]|0;c[E>>2]=t;c[E+4>>2]=B;We(g,48,175812,E);c[C>>2]=(c[C>>2]|0)-t}while(0);if((c[T>>2]|0?(c[b+64>>2]&536870912|0)!=0:0)?(D=ah(e,9,10)|0,D|0):0){C=c[(c[P>>2]|0)+56>>2]|0;E=D+4|0;D=c[E>>2]|0;a[D>>0]=C;a[D+1>>0]=C>>8;a[D+2>>0]=C>>16;a[D+3>>0]=C>>24;D=(c[E>>2]|0)+4|0;a[D>>0]=t;a[D+1>>0]=t>>8;a[D+2>>0]=t>>16;a[D+3>>0]=t>>24;a[(c[E>>2]|0)+8>>0]=u;a[(c[E>>2]|0)+9>>0]=s;c[(c[P>>2]|0)+56>>2]=0}break}default:{}}while(0);g=c[v>>2]|0;if((((c[g+8>>2]|0)==1?(F=U+104|0,(f|0)>-1&(c[F>>2]|0)==0):0)?(f|0)!=(c[R+28>>2]|0):0)?(c[g+16>>2]&256|0)==0:0){We(b,24,175835,G);c[F>>2]=1}if(!(c[T>>2]|0))bg(e);if(((f|0)>-1?(c[(c[v>>2]|0)+8>>2]|0)==0:0)?(c[b+60>>2]&65536|0)==0:0)f=c[R+28>>2]|0;g=b+760|0;if((c[g>>2]|0)>0?(c[b+764>>2]|0)>0:0){c[O>>2]=c[b+84>>2];c[O+4>>2]=1;c[J>>2]=c[g>>2];c[J+4>>2]=c[g+4>>2];c[K>>2]=c[O>>2];c[K+4>>2]=c[O+4>>2];cN(N,J,K);K=c[N>>2]|0;O=b+76|0;c[O>>2]=c[N+4>>2];c[O+4>>2]=K}do if(!(w|0?1:(c[(c[P>>2]|0)+64>>2]|0)==0)){if((f|0)>=0){c[L>>2]=1;break}if(!(c[I>>2]&1))g=21;else g=(c[b+688>>2]|0)+20|0;O=U+112|0;P=c[O>>2]|0;c[O>>2]=P+1;if((P|0)>=(g|0)){We(b,16,175865,Q);c[L>>2]=1;f=-558323010}}while(0);g=U+92|0;c[g>>2]=(c[g>>2]|0)+f;g=R+28|0;h=c[g>>2]|0;i=(f|0)<0;if(i|(h|0)<=(f|0))Af(R);else{c[S>>2]=(c[S>>2]|0)+f;c[g>>2]=h-f;U=c[U+40>>2]|0;S=U+28|0;c[S>>2]=(c[S>>2]|0)-f;S=R+8|0;c[S>>2]=0;c[S+4>>2]=-2147483648;S=R+16|0;c[S>>2]=0;c[S+4>>2]=-2147483648;S=U+8|0;c[S>>2]=0;c[S+4>>2]=-2147483648;U=U+16|0;c[U>>2]=0;c[U+4>>2]=-2147483648}if(c[T>>2]|0?(c[e+248>>2]|0)==0:0){c[V>>2]=175941;c[V+4>>2]=128996;c[V+8>>2]=584;We(0,0,164054,V);Za()}f=i?f:0}else f=-541478725}while(0);Ec=W;return f|0}function zR(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;p=c[(c[a+28>>2]|0)+20>>2]|0;o=p+148|0;h=c[o>>2]|0;XQ(p);n=p+144|0;f=BR((c[p>>2]|0)+((c[n>>2]|0)*352|0)|0,a,e)|0;do if(!f){m=a+688|0;f=p+152|0;if((c[n>>2]|0)<=((c[m>>2]|0)+-1+(((c[a+16>>2]|0)==33)<<31>>31)|0))if(c[f>>2]|0){c[d>>2]=0;e=e+28|0;f=c[e>>2]|0;if(f)break}else g=5;else{c[f>>2]=0;g=5}if((g|0)==5)e=e+28|0;l=b+120|0;j=h;while(1){k=c[p>>2]|0;i=j+1|0;f=k+(j*352|0)+300|0;if(c[f>>2]|0){g=k+(j*352|0)+184|0;JU(g)|0;h=k+(j*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;yb(h|0,g|0)|0}KU(g)|0}cg(b,c[k+(j*352|0)+288>>2]|0);h=k+(j*352|0)+292|0;c[d>>2]=c[h>>2];q=k+(j*352|0)+232|0;f=c[q+4>>2]|0;g=l;c[g>>2]=c[q>>2];c[g+4>>2]=f;g=k+(j*352|0)+296|0;f=c[g>>2]|0;c[h>>2]=0;c[g>>2]=0;g=(i|0)<(c[m>>2]|0)?i:0;if(c[e>>2]|0)break;if(!((f|0)>-1&(c[d>>2]|0)==0))break;if((g|0)==(c[o>>2]|0))break;else j=g}VQ(a,c[k+(j*352|0)+212>>2]|0,1)|0;if((c[n>>2]|0)>=(c[m>>2]|0))c[n>>2]=0;c[o>>2]=g;if((f|0)>-1)f=c[e>>2]|0}while(0);Uk(p);return f|0}function AR(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;k=(e|0)==0&(f|0)==-2147483648;if(k)if((b|0)==0&(d|0)==-2147483648)g=0;else{l=a+808|0;c[l>>2]=b;c[l+4>>2]=d;l=6}else{l=a+808|0;h=l;i=c[h+4>>2]|0;j=a+792|0;g=j;h=hW(c[g>>2]|0,c[g+4>>2]|0,((i|0)>(f|0)|((i|0)==(f|0)?(c[h>>2]|0)>>>0>=e>>>0:0))&1|0,0)|0;i=M()|0;c[j>>2]=h;c[j+4>>2]=i;c[l>>2]=e;c[l+4>>2]=f;if((b|0)==0&(d|0)==-2147483648){h=a+800|0;g=0;i=e;j=f;l=7}else l=6}if((l|0)==6){h=a+800|0;j=h;i=c[j+4>>2]|0;g=a+784|0;m=g;j=hW(c[m>>2]|0,c[m+4>>2]|0,((i|0)>(d|0)|((i|0)==(d|0)?(c[j>>2]|0)>>>0>=b>>>0:0))&1|0,0)|0;i=M()|0;c[g>>2]=j;c[g+4>>2]=i;g=1;i=b;j=d;l=7}if((l|0)==7){m=h;c[m>>2]=i;c[m+4>>2]=j}l=a+784|0;j=c[l+4>>2]|0;m=a+792|0;a=c[m+4>>2]|0;m=g&(k|((j|0)<(a|0)|((j|0)==(a|0)?(c[l>>2]|0)>>>0<=(c[m>>2]|0)>>>0:0)));L((m?d:f)|0);return (m?b:e)|0}function BR(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;o=Ec;Ec=Ec+16|0;h=o;k=c[a>>2]|0;l=k+4|0;g=c[l>>2]|0;m=a+212|0;if((c[d+28>>2]|0)==0?(c[(c[(c[m>>2]|0)+12>>2]|0)+16>>2]&32|0)==0:0)b=0;else n=3;do if((n|0)==3){i=a+156|0;JU(i)|0;b=CR(c[m>>2]|0,b)|0;if(b|0){KU(i)|0;break}c[a+344>>2]=(c[(c[m>>2]|0)+576>>2]|0)>>>16&1;WQ(a);if(g|0){b=g+300|0;if((c[b>>2]|0)==1){e=g+184|0;JU(e)|0;f=g+60|0;while(1){if((c[b>>2]|0)!=1)break;yb(f|0,e|0)|0}KU(e)|0}b=VQ(c[m>>2]|0,c[g+212>>2]|0,0)|0;if(b|0){KU(i)|0;break}}b=a+216|0;Af(b);b=hR(b,d)|0;if((b|0)<0){KU(i)|0;We(c[m>>2]|0,16,175955,h);break}j=a+300|0;c[j>>2]=1;xb(a+12|0)|0;KU(i)|0;b=c[m>>2]|0;a:do if(!(c[b+700>>2]|0)){if((c[b+120>>2]|0)==10?(c[b+400>>2]|0)==10:0)break;b=a+184|0;e=a+60|0;f=a+316|0;g=a+320|0;d=a+296|0;h=a+324|0;i=a+328|0;while(1){if((c[j>>2]|0)==4)break a;if(!(c[j>>2]|0))break a;JU(b)|0;while(1){if((c[j>>2]|0)!=1)break;yb(e|0,b|0)|0}switch(c[j>>2]|0){case 2:{c[d>>2]=um(c[m>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;n=27;break}case 3:{c[i>>2]=RL(c[m>>2]|0,c[h>>2]|0)|0;n=27;break}default:{}}if((n|0)==27){n=0;c[j>>2]=1;xb(e|0)|0}KU(b)|0}}while(0);c[l>>2]=a;b=k+144|0;c[b>>2]=(c[b>>2]|0)+1;b=0}while(0);Ec=o;return b|0}function CR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a+60>>2]=c[b+60>>2];c[a+116>>2]=c[b+116>>2];c[a+400>>2]=c[b+400>>2];c[a+32>>2]=c[b+32>>2];c[a+576>>2]=c[b+576>>2];c[a+832>>2]=c[b+832>>2];c[a+240>>2]=c[b+240>>2];c[a+64>>2]=c[b+64>>2];f=a+724|0;d=b+724|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[a+360>>2]=c[b+360>>2];f=b+584|0;d=c[f+4>>2]|0;g=a+584|0;c[g>>2]=c[f>>2];c[g+4>>2]=d;c[a+700>>2]=c[b+700>>2];g=b+176|0;d=c[g>>2]|0;do if(d){e=b+184|0;b=c[e>>2]|0;if(!b)h=7;else{f=a+184|0;if((c[a+176>>2]|0)<(d|0)){d=JM(f,d,4)|0;if((d|0)<=-1)break;d=c[g>>2]|0;b=c[e>>2]|0}wW(c[f>>2]|0,b|0,d<<2|0)|0;d=c[g>>2]|0;h=7}}else{d=0;h=7}while(0);if((h|0)==7){c[a+176>>2]=d;d=0}return d|0}function DR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=c[a+28>>2]|0;bg(b);do if((PQ(a)|0)!=0?(MQ(c[a+12>>2]|0)|0)!=0:0){d=vR(a)|0;if((d|0)>=0){d=c[e+76>>2]|0;if(!(c[d+248>>2]|0)){d=wR(a,b)|0;if((d|0)<0)break}else cg(b,d);if((c[a+8>>2]|0)==0?(f=ER(a,b)|0,(f|0)<0):0){bg(b);d=f;break}d=a+360|0;c[d>>2]=(c[d>>2]|0)+1;d=0}}else d=-22;while(0);return d|0}function ER(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;m=Ec;Ec=Ec+32|0;l=m;f=b+392|0;g=c[f>>2]|0;h=b+396|0;i=c[h>>2]|0;j=b+384|0;k=c[j>>2]|0;d=b+388|0;e=c[d>>2]|0;if((g>>>0<(2147483647-i|0)>>>0&k>>>0<(2147483647-e|0)>>>0?(i+g|0)>>>0<(c[b+68>>2]|0)>>>0:0)?(e+k|0)>>>0<(c[b+72>>2]|0)>>>0:0)if(!(c[a+888>>2]|0))a=0;else a=PP(b,c[a+60>>2]&1)|0;else{n=c[b+68>>2]|0;b=c[b+72>>2]|0;c[l>>2]=g;c[l+4>>2]=i;c[l+8>>2]=k;c[l+12>>2]=e;c[l+16>>2]=n;c[l+20>>2]=b;We(a,24,176098,l);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;c[d>>2]=0;a=0}Ec=m;return a|0}function FR(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){OQ(b)|0;Se(b+68|0);Se(b+736|0);Se(b+248|0);Se(b+252|0);Se(b+436|0);Se(a)}return}function GR(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;d=c[77876+(b<<2)>>2]|0;if((b|0)!=3)c[a>>2]=b+1;return d|0}function HR(a){a=a|0;var b=0,d=0,e=0;e=Ec;Ec=Ec+16|0;b=e;c[b>>2]=0;a:do if(!a)a=0;else{do{d=GR(b)|0;if(!d){a=0;break a}if((c[d>>2]|0)==(a|0))break;if((c[d+4>>2]|0)==(a|0))break;if((c[d+8>>2]|0)==(a|0))break;if((c[d+12>>2]|0)==(a|0))break}while((c[d+16>>2]|0)!=(a|0));a=Of(344)|0;if(a|0){c[a+4>>2]=d;b=Of(c[d+20>>2]|0)|0;c[a>>2]=b;do if(b|0){c[a+72>>2]=1;c[a+32>>2]=1;b=c[d+24>>2]|0;if(b|0?Kc[b&31](a)|0:0)break;c[a+224>>2]=-1;d=a+232|0;c[d>>2]=0;c[d+4>>2]=0;c[a+240>>2]=-2147483648;c[a+244>>2]=-2147483648;c[a+248>>2]=-2147483648;c[a+336>>2]=-1;break a}while(0);Se(a)}Te(a);a=0}while(0);Ec=e;return a|0}function IR(a){a=a|0;var b=0;if(a|0){b=c[(c[a+4>>2]|0)+32>>2]|0;if(b|0)Sc[b&63](a);Se(a);Te(a)}return}function JR(a){a=a|0;var b=0;KR(a);b=c[a+696>>2]|0;if(!(b&2))if(!(b&1))a=0;else a=MR(a)|0;else a=LR(a)|0;return a|0}function KR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;g=i;f=c[(c[a+12>>2]|0)+16>>2]|0;if((f&4096|0)!=0?(c[a+60>>2]&589824|0)==0:0)e=(c[a+64>>2]&32768|0)==0;else e=0;d=a+688|0;b=c[d>>2]|0;do if((b|0)!=1){if(e?c[a+692>>2]&1|0:0){d=1;h=11;break}if(f&8192|0?c[a+692>>2]&2|0:0){d=2;h=11;break}if(!(f&32768)){c[d>>2]=1;d=0;b=1;h=11}}else{d=0;b=1;h=11}while(0);if((h|0)==11)c[a+696>>2]=d;if((b|0)>16){c[g>>2]=b;c[g+4>>2]=16;We(a,24,176332,g)}Ec=i;return}function LR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=a+688|0;b=c[i>>2]|0;h=a+12|0;if(((IQ(c[h>>2]|0)|0)!=0?(c[a+16>>2]|0)==1:0)?(c[a+96>>2]|0)>2800:0){c[i>>2]=1;j=10}else j=5;a:do if((j|0)==5){if(!b){b=OP()|0;d=c[a+96>>2]|0;if(d){g=(d+15|0)/16|0;b=(b|0)>(g|0)?g:b}e=b+1|0;e=(b|0)>1?((e|0)<16?e:16):1;c[i>>2]=e}else e=b;if((e|0)<2)j=10;else{f=Of(48)|0;g=a+28|0;b=c[g>>2]|0;c[b+20>>2]=f;d=c[(c[h>>2]|0)+116>>2]&32|0?35:0;c[45997]=d;do if(f){b=yQ(f,a,79,d,e)|0;if((b|0)<2){AQ(f);b=c[g>>2]|0;break}else{c[i>>2]=b;c[a+704>>2]=5;c[a+708>>2]=42;break a}}while(0);Se(b+20|0);c[i>>2]=1;c[a+696>>2]=0}}while(0);if((j|0)==10)c[a+696>>2]=0;return 0}function MR(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;t=Ec;Ec=Ec+16|0;r=t;b=a+688|0;d=c[b>>2]|0;e=c[a+12>>2]|0;if(!d){q=OP()|0;d=q+1|0;d=(q|0)>1?((d|0)<16?d:16):1;c[b>>2]=d}a:do if((d|0)>=2){q=Of(156)|0;b=a+28|0;c[(c[b>>2]|0)+20>>2]=q;if(!q)b=-12;else{p=kg(d,352)|0;c[q>>2]=p;if(!p){Se((c[b>>2]|0)+20|0);b=-12;break}IU(q+8|0,0)|0;IU(q+36|0,0)|0;IU(q+64|0,0)|0;wb(q+92|0,0)|0;c[q+140>>2]=1;c[q+152>>2]=1;n=e+80|0;o=e+56|0;l=e+64|0;b=0;p=0;f=a;while(1){if((p|0)>=(d|0)){b=0;break a}c[r>>2]=cf(896)|0;m=c[q>>2]|0;j=m+(p*352|0)|0;IU(m+(p*352|0)+156|0,0)|0;IU(m+(p*352|0)+184|0,0)|0;wb(m+(p*352|0)+12|0,0)|0;wb(m+(p*352|0)+60|0,0)|0;wb(m+(p*352|0)+108|0,0)|0;k=Fg()|0;c[m+(p*352|0)+288>>2]=k;if(!k){s=11;break}c[j>>2]=q;e=c[r>>2]|0;c[m+(p*352|0)+212>>2]=e;k=e;if(!e){b=-12;s=23;break}wW(e|0,f|0,896)|0;e=cf(116)|0;i=k+28|0;c[i>>2]=e;if(!e){s=14;break}g=c[f+28>>2]|0;h=e+116|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));h=c[i>>2]|0;c[h+20>>2]=j;c[h+40>>2]=m+(p*352|0)+216;if(p){e=cf(c[o>>2]|0)|0;c[k+24>>2]=e;if(!e){b=-12;s=23;break}wW(e|0,c[f+24>>2]|0,c[o>>2]|0)|0;c[c[i>>2]>>2]=1;e=c[l>>2]|0;if(e)b=Kc[e&31](k)|0}else{e=c[n>>2]|0;if(e)b=Kc[e&31](k)|0;VQ(a,k,1)|0;f=k}if(b|0){s=23;break}c[m+(p*352|0)+344>>2]=(c[k+576>>2]|0)>>>16&1;k=zb(m+(p*352|0)+4|0,0,25,j|0)|0;b=0-k|0;k=(k|0)==0;c[m+(p*352|0)+8>>2]=k&1;if(!k)break;p=p+1|0}if((s|0)==11){Se(r);b=-12;s=23}else if((s|0)==14){c[k+24>>2]=0;b=-12;s=23}SQ(a,p+1|0)}}else{c[a+696>>2]=0;b=0}while(0);Ec=t;return b|0}function NR(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,x=0,y=0,z=0,A=0,B=0;B=Ec;Ec=Ec+32|0;z=B+16|0;y=B;n=c[a+212>>2]|0;j=c[n+12>>2]|0;t=a+156|0;JU(t)|0;u=a+332|0;v=a+300|0;w=a+12|0;x=j+68|0;d=n+700|0;e=n+400|0;f=a+336|0;g=n+592|0;h=a+288|0;i=a+292|0;j=j+92|0;k=a+216|0;l=a+296|0;m=n+28|0;o=a+340|0;p=a+184|0;q=a+60|0;r=a+108|0;a:while(1){while(1){b=(c[u>>2]|0)==0;if(c[v>>2]|0)break;if(!b){A=28;break a}yb(w|0,t|0)|0}if(!b){A=28;break}do if(!(c[x>>2]|0)){if((c[d>>2]|0)==0?(c[e>>2]|0)!=10:0)break;Mh(n)}while(0);if(c[f>>2]|0){A=12;break}if(c[g>>2]|0){JU((c[a>>2]|0)+36|0)|0;c[f>>2]=1}bg(c[h>>2]|0);c[i>>2]=0;b=Oc[c[j>>2]&3](n,c[h>>2]|0,i,k)|0;c[l>>2]=b;if(!((b|0)>=0?(c[i>>2]|0)!=0:0))A=17;if((A|0)==17?(A=0,s=c[h>>2]|0,c[s+248>>2]|0):0){if(!(c[(c[m>>2]|0)+4>>2]|0))b=s;else{We(n,16,176238,z);b=c[h>>2]|0}bg(b)}if((c[v>>2]|0)==1)Mh(n);if(c[f>>2]|0){c[f>>2]=0;KU((c[a>>2]|0)+36|0)|0}if(c[o>>2]|0){c[o>>2]=0;XQ(c[a>>2]|0)}JU(p)|0;c[v>>2]=0;zW(q|0)|0;xb(r|0)|0;KU(p)|0}if((A|0)==12){c[y>>2]=176214;c[y+4>>2]=164010;c[y+8>>2]=190;We(0,0,164054,y);Za()}else if((A|0)==28){KU(t)|0;Ec=B;return 0}return 0}function OR(a){a=a|0;Kc[c[(c[(c[a+28>>2]|0)+20>>2]|0)+12>>2]&31](a)|0;return}function PR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[(c[a+28>>2]|0)+20>>2]|0;e=c[g+4>>2]|0;if(!e)f=Oc[c[g+8>>2]&3](a,c[g+16>>2]|0,b,d)|0;else{f=(c[g+16>>2]|0)+(H(c[g+24>>2]|0,b)|0)|0;f=Mc[e&15](a,f)|0}e=c[g+20>>2]|0;if(e|0)c[e+(b<<2)>>2]=f;return}function QR(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;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&2|0)!=0?(c[a+688>>2]|0)>=2:0)if((f|0)<1)a=0;else{c[h+24>>2]=g;c[h+16>>2]=d;c[h+4>>2]=b;c[h+20>>2]=e;CQ(c[h>>2]|0,f,(c[h+12>>2]|0)!=0&1);a=0}else a=ZQ(a,b,d,e,f,g)|0;return a|0}function RR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[(c[(c[a+28>>2]|0)+20>>2]|0)+8>>2]=b;return QR(a,0,d,e,f,0)|0}function SR(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)KU(183992)|0;return}function TR(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,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=Ec;Ec=Ec+848|0;Y=ga+336|0;X=ga+328|0;aa=ga+288|0;W=ga+280|0;V=ga+272|0;U=ga+264|0;T=ga+248|0;Q=ga+240|0;P=ga+232|0;O=ga+224|0;L=ga+208|0;K=ga+192|0;J=ga+184|0;I=ga+176|0;H=ga+168|0;G=ga+152|0;E=ga+144|0;C=ga+136|0;A=ga+128|0;z=ga+120|0;y=ga+112|0;x=ga+104|0;w=ga+96|0;v=ga+88|0;r=ga+80|0;q=ga+72|0;p=ga+64|0;o=ga+48|0;$=ga+40|0;n=ga+32|0;m=ga+24|0;l=ga+16|0;j=ga+8|0;i=ga;fa=ga+312|0;Z=ga+320|0;_=ga+304|0;c[fa>>2]=0;do if(!(PQ(a)|0)){ea=a+12|0;g=c[ea>>2]|0;h=(g|0)==0;if(!b)if(h){We(a,16,176428,i);f=-22;break}else ca=g;else if(h|(g|0)==(b|0))ca=b;else{f=c[b>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=f;We(a,16,176466,j);f=-22;break}if((c[a+72>>2]|0)>>>0<=268435391){da=(e|0)!=0;if(da)$g(fa,c[e>>2]|0,0)|0;UR(ca);S=Of(116)|0;ba=a+28|0;c[ba>>2]=S;a:do if(!S)f=-12;else{S=Of(88)|0;c[(c[ba>>2]|0)+16>>2]=S;b:do if(((((((S|0)!=0?(S=Fg()|0,c[(c[ba>>2]|0)+12>>2]=S,(S|0)!=0):0)?(S=Fg()|0,c[(c[ba>>2]|0)+100>>2]=S,(S|0)!=0):0)?(S=Fg()|0,c[(c[ba>>2]|0)+76>>2]=S,(S|0)!=0):0)?(S=NO()|0,c[(c[ba>>2]|0)+68>>2]=S,(S|0)!=0):0)?(S=NO()|0,c[(c[ba>>2]|0)+24>>2]=S,(S|0)!=0):0)?(S=NO()|0,k=c[ba>>2]|0,c[k+40>>2]=S,(S|0)!=0):0){c[k+108>>2]=1;R=ca+56|0;b=c[R>>2]|0;S=a+24|0;do if((b|0)>0){if(!(c[S>>2]|0)){g=Of(b)|0;c[S>>2]=g;if(!g){f=-12;break a}b=ca+44|0;h=c[b>>2]|0;if(!h)break;c[g>>2]=h;tQ(g)}else b=ca+44|0;if(c[b>>2]|0?(f=wQ(c[S>>2]|0,fa)|0,(f|0)<0):0)break b}else c[S>>2]=0;while(0);f=wQ(a,fa)|0;if((f|0)>=0){b=a+844|0;g=c[b>>2]|0;if(g|0?(bP(c[ca>>2]|0,g,44)|0)<1:0){f=c[b>>2]|0;c[l>>2]=c[ca>>2];c[l+4>>2]=f;We(a,16,176542,l);f=-22;break}i=a+100|0;b=c[i>>2]|0;c:do if(!b)N=37;else{g=c[a+104>>2]|0;if(!g){N=37;break}do if(c[a+92>>2]|0){if(!(c[a+96>>2]|0))break;switch(c[a+16>>2]|0){case 189:case 92:case 27:{N=43;break c}default:{}}}while(0);f=tR(a,b,g)|0;N=40}while(0);do if((N|0)==37){g=c[a+92>>2]|0;if(!g){N=42;break}h=c[a+96>>2]|0;if(!h){N=42;break}f=tR(a,g,h)|0;N=40}while(0);if((N|0)==40){if((f|0)<0)break;b=c[i>>2]|0;N=42}do if((N|0)==42){if(b|0){N=43;break}g=c[a+104>>2]|0;if(g|0){b=0;N=47;break}b=a+92|0;if(c[b>>2]|0){b=0;g=0;N=47;break}if(!(c[a+96>>2]|0))s=b;else{b=0;g=0;N=47}}while(0);if((N|0)==43){g=c[a+104>>2]|0;N=47}do if((N|0)==47){h=a+872|0;F=h;i=a+92|0;if((Zg(b,g,c[F>>2]|0,c[F+4>>2]|0,-1,0,a)|0)>=0?(F=h,(Zg(c[i>>2]|0,c[a+96>>2]|0,c[F>>2]|0,c[F+4>>2]|0,-1,0,a)|0)>=0):0){s=i;break}We(a,24,176576,m);tR(a,0,0)|0;s=i}while(0);b=c[s>>2]|0;do if((b|0)>0){g=c[a+96>>2]|0;if((g|0)<=0)break;h=a+188|0;c[Y>>2]=c[h>>2];c[Y+4>>2]=c[h+4>>2];if((Bm(b,g,Y)|0)>=0)break;F=a+192|0;D=c[F>>2]|0;c[n>>2]=c[h>>2];c[n+4>>2]=D;We(a,24,176614,n);c[a+188>>2]=0;c[F>>2]=1}while(0);if(MQ(ca)|0)Se(a+736|0);D=a+348|0;if((c[D>>2]|0)>>>0>64){f=-22;break}c[ea>>2]=ca;F=a+8|0;h=c[F>>2]|0;do if((h|0)==-1)N=60;else{if((h|0)==(c[ca+8>>2]|0)){N=60;break}g=a+16|0;l=g;g=c[g>>2]|0;b=h}while(0);do if((N|0)==60){b=a+16|0;g=c[b>>2]|0;if(g|0){l=b;b=h;break}B=c[ca+8>>2]|0;c[F>>2]=B;g=c[ca+12>>2]|0;c[b>>2]=g;l=b;b=B}while(0);h=ca+12|0;do if((g|0)==(c[h>>2]|0)){if(!((b|0)==4?1:(b|0)==(c[ca+8>>2]|0)))break;c[a+360>>2]=0;B=a+780|0;c[B>>2]=Mf(g)|0;b=c[ea>>2]|0;do if(c[b+16>>2]&512|0){if((c[a+568>>2]|0)<=-2)break;b=(IQ(ca)|0)!=0;b=b?176672:176680;aa=c[ca>>2]|0;c[o>>2]=b;c[o+4>>2]=aa;c[o+8>>2]=-2;We(a,16,176688,o);aa=(IQ(ca)|0)==0;f=c[h>>2]|0;if(aa)f=LQ(f)|0;else f=HQ(f)|0;if(c[f+16>>2]&512|0){f=-733130664;break b}f=c[f>>2]|0;c[p>>2]=b;c[p+4>>2]=f;We(a,16,176798,p);f=-733130664;break b}while(0);do if((c[F>>2]|0)==1){h=a+76|0;g=a+80|0;if(c[h>>2]|0?c[g>>2]|0:0)break;c[h>>2]=1;c[g>>2]=c[a+344>>2]}while(0);if(!((c[(c[ba>>2]|0)+52>>2]|0)!=0?(c[a+696>>2]&1|0)!=0:0)){f=JR(a)|0;if((f|0)<0)break b;b=c[ea>>2]|0}g=d[b+40>>0]|0;h=a+680|0;if((c[h>>2]|0)>>>0>g>>>0){c[q>>2]=g;We(a,24,176847,q);b=c[ea>>2]|0;c[h>>2]=d[b+40>>0]}d:do if(IQ(b)|0){q=Fg()|0;c[a+684>>2]=q;if(!q){f=-12;break b}m=a+76|0;do if((c[m>>2]|0)>=1){n=a+80|0;if((c[n>>2]|0)<1)break;g=c[ea>>2]|0;b=c[g+32>>2]|0;e:do if(!b)j=g;else{k=a+352|0;j=0;while(1){h=c[b+(j<<2)>>2]|0;if((h|0)==-1)break;i=c[k>>2]|0;if((i|0)==(h|0)){j=g;break e}if((c[D>>2]|0)==1){r=xQ(i)|0;r=(r|0)==(xQ(c[(c[(c[ea>>2]|0)+32>>2]|0)+(j<<2)>>2]|0)|0);t=c[ea>>2]|0;u=c[t+32>>2]|0;if(r){N=94;break}else{g=t;b=u}}j=j+1|0}if((N|0)==94?(u=u+(j<<2)|0,c[k>>2]=c[u>>2],(c[u>>2]|0)!=-1):0){j=t;break}c[v>>2]=c[k>>2];VT(Y,128,176942,v)|0;c[w>>2]=VR(sQ(c[k>>2]|0)|0,Y)|0;We(a,16,176945,w);f=-22;break b}while(0);g=c[j+24>>2]|0;f:do if(g|0){h=a+112|0;b=0;while(1){i=c[g+(b<<2)>>2]|0;if((i|0)==-1)break;if((c[h>>2]|0)==(i|0)){N=103;break}else b=b+1|0}if((N|0)==103){switch(i|0){case 14:case 32:case 13:case 140:case 12:break;default:break f}c[a+328>>2]=2;break}switch(c[l>>2]|0){case 9:case 7:{if((c[a+568>>2]|0)<0)break f;break}default:{}}c[x>>2]=c[h>>2];VT(Y,128,176942,x)|0;c[y>>2]=VR(rg(c[h>>2]|0)|0,Y)|0;We(a,16,177001,y);f=-22;break b}while(0);h=c[j+28>>2]|0;b=c[a+344>>2]|0;g:do if(h){g=0;while(1){i=c[h+(g<<2)>>2]|0;if(!i)break;if((b|0)==(i|0))break g;else g=g+1|0}c[z>>2]=b;We(a,16,177056,z);f=-22;break b}while(0);if((b|0)<0){c[A>>2]=b;We(a,16,177056,A);f=-22;break b}i=c[j+36>>2]|0;l=a+376|0;h:do if(i|0){k=l;j=c[k>>2]|0;k=c[k+4>>2]|0;if((j|0)==0&(k|0)==0){We(a,24,177099,C);break}else b=0;while(1){h=i+(b<<3)|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==0&(h|0)==0)break;if((j|0)==(g|0)&(k|0)==(h|0))break h;else b=b+1|0}kP(Y,512,-1,j,k);c[E>>2]=Y;We(a,16,177129,E);f=-22;break b}while(0);h=l;g=c[h>>2]|0;h=c[h+4>>2]|0;b=c[D>>2]|0;do if(!((g|0)==0&(h|0)==0)){g=Xg(g,h)|0;if(!b){c[D>>2]=g;b=g;break}if((g|0)==(c[D>>2]|0)){b=g;break}f=l;kP(Y,512,-1,c[f>>2]|0,c[f+4>>2]|0);f=c[D>>2]|0;c[G>>2]=Y;c[G+4>>2]=g;c[G+8>>2]=f;We(a,16,177177,G);f=-22;break b}while(0);if((b|0)<0){c[H>>2]=b;We(a,16,177262,H);f=-22;break b}b=c[F>>2]|0;i:do if(!b){b=qg(c[a+112>>2]|0)|0;h=a+676|0;i=c[h>>2]|0;do if((i|0)>=0){if((i|0)<=8)break;b=b+32|0;g=c[b>>2]|0;if((g|0)<9)N=129}else{g=b+32|0;b=g;g=c[g>>2]|0;N=129}while(0);if((N|0)==129){c[I>>2]=i;c[I+4>>2]=g;We(a,24,177312,I);c[h>>2]=c[b>>2]}do if((c[s>>2]|0)>=1){if((c[a+96>>2]|0)<1)break;b=c[F>>2]|0;break i}while(0);We(a,16,177391,J);f=-22;break b}while(0);do if(b>>>0<2){g=a+40|0;b=c[g>>2]|0;g=c[g+4>>2]|0;J=hW(b|0,g|0,-1,-1)|0;I=M()|0;if(!(I>>>0<0|(I|0)==0&J>>>0<999))break;J=K;c[J>>2]=b;c[J+4>>2]=g;J=K+8|0;c[J>>2]=b;c[J+4>>2]=g;We(a,24,177411,K)}while(0);b=a+464|0;if(!(c[b>>2]|0)){K=c[a+428>>2]|0;K=nW(K|0,((K|0)<0)<<31>>31|0,3,0)|0;K=lW(K|0,M()|0,4,0)|0;M()|0;c[b>>2]=K}g=c[a+84>>2]|0;do if(g|0){b=c[m>>2]|0;if(!b)break;if((g|0)<=(2147483647/(b|0)|0|0))break;aa=c[n>>2]|0;c[L>>2]=g;c[L+4>>2]=b;c[L+8>>2]=aa;We(a,16,177464,L);break b}while(0);f=c[a+860>>2]|0;if(!f)break d;f=c[f+4>>2]|0;if((c[f+36>>2]|0)!=(c[a+112>>2]|0)){We(a,16,177517,O);f=-22;break b}h=a+768|0;g=c[h>>2]|0;b=f+40|0;f=c[b>>2]|0;do if((g|0)!=-1){if((g|0)==(f|0)){f=g;break}aa=rg(g)|0;f=rg(c[b>>2]|0)|0;c[P>>2]=aa;c[P+4>>2]=f;We(a,16,177582,P);f=-22;break b}while(0);c[h>>2]=f;break d}while(0);We(a,16,176908,r);f=-22;break b}while(0);P=a+784|0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;P=a+808|0;c[P>>2]=0;c[P+4>>2]=-2147483648;P=a+800|0;c[P>>2]=0;c[P+4>>2]=-2147483648;do if(c[a+60>>2]&8192|0){if(c[(c[B>>2]|0)+4>>2]|0)break;We(a,24,177663,Q)}while(0);f=c[ea>>2]|0;b=c[f+80>>2]|0;do if(b){if(c[a+696>>2]&1|0?(c[(c[ba>>2]|0)+52>>2]|0)==0:0)break;f=Kc[b&31](a)|0;if((f|0)<0)break b;f=c[ea>>2]|0}while(0);do if(MQ(f)|0){f=a+40|0;Q=f;if((c[Q>>2]|0)==0&(c[Q+4>>2]|0)==0){O=WR(a)|0;P=M()|0;Q=f;c[Q>>2]=O;c[Q+4>>2]=P}g=a+376|0;b=g;f=c[b>>2]|0;b=c[b+4>>2]|0;do if((f|0)==0&(b|0)==0)N=166;else{f=Xg(f,b)|0;b=c[D>>2]|0;if(!b){c[D>>2]=f;break}if((f|0)==(b|0))break;N=g;kP(Y,512,-1,c[N>>2]|0,c[N+4>>2]|0);N=c[D>>2]|0;c[T>>2]=Y;c[T+4>>2]=f;c[T+8>>2]=N;We(a,24,177726,T);N=g;c[N>>2]=0;c[N+4>>2]=0;N=166}while(0);if((N|0)==166)f=c[D>>2]|0;if(f>>>0>64){f=-22;break b}b=a+816|0;g=c[b>>2]|0;j:do if(g|0){if((c[F>>2]|0)!=3){We(a,16,177846,U);f=-22;break b}f=c[B>>2]|0;if(c[f+16>>2]&65536|0){c[V>>2]=c[f+8>>2];We(a,24,177906,V);c[a+820>>2]=-1;break}f=a+820|0;switch(c[f>>2]|0){case 0:{c[f>>2]=1;break}case 1:break;default:break j}if((PT(177980,g)|0)==(-1|0)){f=0-(c[(ES()|0)>>2]|0)|0;c[W>>2]=c[b>>2];We(a,16,177986,W);break b}else break}while(0);f=a+760|0;if((c[f>>2]|0)<=0)break;if((c[a+764>>2]|0)<=0)break;c[_>>2]=c[a+84>>2];c[_+4>>2]=1;c[X>>2]=c[f>>2];c[X+4>>2]=c[f+4>>2];c[Y>>2]=c[_>>2];c[Y+4>>2]=c[_+4>>2];cN(Z,X,Y);Y=c[Z>>2]|0;_=a+76|0;c[_>>2]=c[Z+4>>2];c[_+4>>2]=Y}while(0);if((c[R>>2]|0)<=0){f=0;break a}f=c[S>>2]|0;if(!f){f=0;break a}b=c[ca+44>>2]|0;if(!b){f=0;break a}if((c[f>>2]|0)==(b|0)){f=0;break a}c[aa>>2]=178051;c[aa+4>>2]=131456;c[aa+8>>2]=995;We(0,0,164054,aa);Za()}while(0);We(a,16,176643,$);f=-22}}else f=-12;while(0);b=c[ea>>2]|0;if(b|0?c[b+116>>2]&2|0:0)Kc[c[b+96>>2]&31](a)|0;if(c[ca+44>>2]|0?c[ca+56>>2]|0:0)wf(c[a+24>>2]|0);wf(a);Gg(a+684|0);Gf(fa);Se(a+24|0);b=c[ba>>2]|0;if(b|0){Gg(b+12|0);Gg((c[ba>>2]|0)+100|0);Gg((c[ba>>2]|0)+76|0);xf((c[ba>>2]|0)+68|0);xf((c[ba>>2]|0)+40|0);xf((c[ba>>2]|0)+24|0);Se((c[ba>>2]|0)+16|0)}Se(ba);c[ea>>2]=0}while(0);SR(ca);if(da){Gf(e);c[e>>2]=c[fa>>2]}}else f=-22}else f=0;while(0);Ec=ga;return f|0}function UR(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)JU(183992)|0;return}function VR(a,b){a=a|0;b=b|0;return (a|0?a:b)|0}
function nK(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;s=f<<4;r=g<<4;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function oK(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;r=f<<4;q=g<<4;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;s=l-s|0;b[g>>1]=s>>>0<4096?s:0-s>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function pK(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;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function qK(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;n=c>>1;m=d<<4;j=f<<4;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function rK(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;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function sK(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;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function tK(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;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function uK(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;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function vK(a,d,f){a=a|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;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<16384?m:0-m>>31&16383;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<16384?o:0-o>>31&16383;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function wK(a,d,f){a=a|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,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<16384?r:0-r>>31&16383;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<16384?t:0-t>>31&16383;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<16384?v:0-v>>31&16383;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<16384?x:0-x>>31&16383;g=g+1|0}yW(d|0,0,256)|0;return}function xK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function yK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function zK(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;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else xK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;vK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function AK(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;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else yK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;wK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function BK(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;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)xK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else vK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function CK(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;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)xK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else vK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[150645+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)xK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else vK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function DK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[150645+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)xK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else vK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function EK(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;h=Ec;Ec=Ec+64|0;g=h;f=0;while(1){if((f|0)==4)break;p=f<<2;l=c[b+(p<<2)>>2]|0;m=p|1;j=c[b+(m<<2)>>2]|0;o=j+l|0;j=l-j|0;l=p|2;n=c[b+(l<<2)>>2]|0;i=p|3;q=c[b+(i<<2)>>2]|0;k=n-q|0;n=q+n|0;c[g+(p<<2)>>2]=n+o;c[g+(m<<2)>>2]=o-n;c[g+(l<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;q=d[150641+f>>0]|0;p=c[g+(f<<2)>>2]|0;m=c[g+(f+8<<2)>>2]|0;o=m+p|0;m=p-m|0;p=c[g+(f+4<<2)>>2]|0;l=c[g+(f+12<<2)>>2]|0;n=p-l|0;p=l+p|0;c[a+(q<<2)>>2]=(H(p+o|0,e)|0)+128>>8;c[a+(q+16<<2)>>2]=(H(n+m|0,e)|0)+128>>8;c[a+(q+64<<2)>>2]=(H(m-n|0,e)|0)+128>>8;c[a+(q+80<<2)>>2]=(H(o-p|0,e)|0)+128>>8;f=f+1|0}Ec=h;return}function FK(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=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(H(h+i|0,b)|0)>>7;c[j>>2]=(H(e+f|0,b)|0)>>7;c[g>>2]=(H(i-h|0,b)|0)>>7;c[d>>2]=(H(f-e|0,b)|0)>>7;return}function GK(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;g=Ec;Ec=Ec+32|0;f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[150639+e>>0]|0;i=c[f+(e<<2)>>2]|0;l=c[f+(e+4<<2)>>2]|0;h=l+i|0;l=i-l|0;i=c[f+(e+2<<2)>>2]|0;m=c[f+(e+6<<2)>>2]|0;k=i-m|0;i=m+i|0;c[a+(j<<2)>>2]=(H(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(H(k+l|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(H(l-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(H(h-i|0,b)|0)+128>>8;e=e+1|0}Ec=g;return}function HK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function IK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function JK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function KK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function LK(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;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function MK(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;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function NK(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;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function OK(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;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function PK(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<6;y=g<<6;z=0-C|0;A=H(C,-2)|0;w=H(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function QK(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function RK(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function SK(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<6;v=f<<6;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function TK(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,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function UK(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,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function VK(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,u=0;t=f<<6;s=g<<6;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;u=l-u|0;b[g>>1]=u>>>0<16384?u:0-u>>31&16383}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function WK(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;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function XK(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;s=f<<6;r=g<<6;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function YK(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;r=f<<6;q=g<<6;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;s=l-s|0;b[g>>1]=s>>>0<16384?s:0-s>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function ZK(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;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function _K(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;n=c>>1;m=d<<6;j=f<<6;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function $K(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;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function aL(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;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function bL(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;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function cL(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;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function dL(c,f,g){c=c|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[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==4)break;p=f+(h<<1)|0;o=b[p>>1]|0;l=f+(h+8<<1)|0;n=b[l>>1]|0;k=n+o|0;n=o-n|0;o=f+(h+4<<1)|0;i=b[o>>1]|0;j=f+(h+12<<1)|0;q=b[j>>1]|0;m=(i>>1)-q|0;i=(q>>1)+i|0;b[p>>1]=i+k;b[o>>1]=m+n;b[l>>1]=n-m;b[j>>1]=k-i;h=h+1|0}i=g<<1;j=g*3|0;h=0;while(1){if((h|0)==4)break;q=h<<2;p=b[f+(q<<1)>>1]|0;m=b[f+((q|2)<<1)>>1]|0;o=m+p|0;m=p-m|0;p=b[f+((q|1)<<1)>>1]|0;q=b[f+((q|3)<<1)>>1]|0;n=(p>>1)-q|0;p=(q>>1)+p|0;q=c+h|0;l=(p+o>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+g)|0;l=(n+m>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+i)|0;n=(m-n>>6)+(d[q>>0]|0)|0;a[q>>0]=n>>>0>255?(n^-2147483648)>>31:n;q=c+(h+j)|0;p=(o-p>>6)+(d[q>>0]|0)|0;a[q>>0]=p>>>0>255?(p^-2147483648)>>31:p;h=h+1|0}h=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function eL(c,f,g){c=c|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;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==8)break;x=f+(h<<1)|0;p=b[x>>1]|0;n=f+(h+32<<1)|0;m=b[n>>1]|0;k=m+p|0;m=p-m|0;p=f+(h+16<<1)|0;l=b[p>>1]|0;q=f+(h+48<<1)|0;w=b[q>>1]|0;o=(l>>1)-w|0;l=(w>>1)+l|0;w=l+k|0;s=o+m|0;o=m-o|0;l=k-l|0;k=f+(h+24<<1)|0;m=b[k>>1]|0;j=f+(h+40<<1)|0;i=b[j>>1]|0;u=f+(h+56<<1)|0;r=b[u>>1]|0;v=i-m-r-(r>>1)|0;t=f+(h+8<<1)|0;y=b[t>>1]|0;z=r-((m>>1)+m)+y|0;r=r+i+(i>>1)-y|0;y=i+m+y+(y>>1)|0;m=(y>>2)+v|0;i=(r>>2)+z|0;r=(z>>2)-r|0;v=y-(v>>2)|0;b[x>>1]=v+w;b[u>>1]=w-v;b[t>>1]=r+s;b[q>>1]=s-r;b[p>>1]=i+o;b[j>>1]=o-i;b[k>>1]=m+l;b[n>>1]=l-m;h=h+1|0}l=g<<1;m=g*3|0;n=g<<2;i=g*5|0;j=g*6|0;k=g*7|0;h=0;while(1){if((h|0)==8)break;z=h<<3;r=b[f+(z<<1)>>1]|0;u=b[f+((z|4)<<1)>>1]|0;s=u+r|0;u=r-u|0;r=b[f+((z|2)<<1)>>1]|0;x=b[f+((z|6)<<1)>>1]|0;t=(r>>1)-x|0;r=(x>>1)+r|0;x=r+s|0;v=t+u|0;t=u-t|0;r=s-r|0;s=b[f+((z|3)<<1)>>1]|0;u=b[f+((z|5)<<1)>>1]|0;w=b[f+((z|7)<<1)>>1]|0;y=u-s-w-(w>>1)|0;z=b[f+((z|1)<<1)>>1]|0;q=w-((s>>1)+s)+z|0;w=w+u+(u>>1)-z|0;z=u+s+z+(z>>1)|0;s=(z>>2)+y|0;u=(w>>2)+q|0;w=(q>>2)-w|0;y=z-(y>>2)|0;z=c+h|0;q=(y+x>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+g)|0;q=(w+v>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+l)|0;q=(u+t>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+m)|0;q=(s+r>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+n)|0;s=(r-s>>6)+(d[z>>0]|0)|0;a[z>>0]=s>>>0>255?(s^-2147483648)>>31:s;z=c+(h+i)|0;u=(t-u>>6)+(d[z>>0]|0)|0;a[z>>0]=u>>>0>255?(u^-2147483648)>>31:u;z=c+(h+j)|0;w=(v-w>>6)+(d[z>>0]|0)|0;a[z>>0]=w>>>0>255?(w^-2147483648)>>31:w;z=c+(h+k)|0;y=(x-y>>6)+(d[z>>0]|0)|0;a[z>>0]=y>>>0>255?(y^-2147483648)>>31:y;h=h+1|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function fL(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==4)break;else e=0;while(1){if((e|0)==4)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function gL(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==8)break;else e=0;while(1){if((e|0)==8)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function hL(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;k=0;while(1){if((k|0)==16)break;switch(a[i+(d[150645+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else fL(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;dL(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+1|0}return}function iL(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;k=0;while(1){if((k|0)>=16)break;switch(a[i+(d[150645+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else gL(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;eL(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+4|0}return}function jL(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;j=1;while(1){if((j|0)==3)break;k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[150645+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)fL((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else dL((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function kL(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;j=1;while(1){if((j|0)==3){j=1;break}k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[150645+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)fL((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else dL((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}while(1){if((j|0)==3)break;k=j<<4;l=k|8;m=e+(j+-1<<2)|0;k=k|4;while(1){if((k|0)>=(l|0))break;n=k+4|0;if(!(a[i+(d[150645+n>>0]|0)>>0]|0)){o=g+(k<<4<<1)|0;if(b[o>>1]|0)fL((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,o,h)}else dL((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function lL(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;j=0;while(1){if((j|0)==16)break;if(!(a[i+(d[150645+j>>0]|0)>>0]|0)){k=g+(j<<4<<1)|0;if(b[k>>1]|0)fL(e+(c[f+(j<<2)>>2]|0)|0,k,h)}else dL(e+(c[f+(j<<2)>>2]|0)|0,g+(j<<4<<1)|0,h);j=j+1|0}return}function mL(a,e,f){a=a|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;i=Ec;Ec=Ec+64|0;h=i;g=0;while(1){if((g|0)==4){g=0;break}q=g<<2;m=b[e+(q<<1)>>1]|0;n=q|1;k=b[e+(n<<1)>>1]|0;p=k+m|0;k=m-k|0;m=q|2;o=b[e+(m<<1)>>1]|0;j=q|3;r=b[e+(j<<1)>>1]|0;l=o-r|0;o=r+o|0;c[h+(q<<2)>>2]=o+p;c[h+(n<<2)>>2]=p-o;c[h+(m<<2)>>2]=k-l;c[h+(j<<2)>>2]=l+k;g=g+1|0}while(1){if((g|0)==4)break;r=d[150641+g>>0]|0;q=c[h+(g<<2)>>2]|0;n=c[h+(g+8<<2)>>2]|0;p=n+q|0;n=q-n|0;q=c[h+(g+4<<2)>>2]|0;m=c[h+(g+12<<2)>>2]|0;o=q-m|0;q=m+q|0;b[a+(r<<1)>>1]=((H(q+p|0,f)|0)+128|0)>>>8;b[a+(r+16<<1)>>1]=((H(o+n|0,f)|0)+128|0)>>>8;b[a+(r+64<<1)>>1]=((H(n-o|0,f)|0)+128|0)>>>8;b[a+(r+80<<1)>>1]=((H(p-q|0,f)|0)+128|0)>>>8;g=g+1|0}Ec=i;return}function nL(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;i=b[a>>1]|0;j=a+32|0;e=b[j>>1]|0;g=a+64|0;h=b[g>>1]|0;d=a+96|0;k=b[d>>1]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;b[a>>1]=(H(h+i|0,c)|0)>>>7;b[j>>1]=(H(e+f|0,c)|0)>>>7;b[g>>1]=(H(i-h|0,c)|0)>>>7;b[d>>1]=(H(f-e|0,c)|0)>>>7;return}function oL(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;h=Ec;Ec=Ec+32|0;g=h;f=0;while(1){if((f|0)==4){f=0;break}j=f<<5;k=b[a+(j<<1)>>1]|0;j=b[a+((j|16)<<1)>>1]|0;i=f<<1;c[g+(i<<2)>>2]=j+k;c[g+((i|1)<<2)>>2]=k-j;f=f+1|0}while(1){if((f|0)==2)break;k=d[150639+f>>0]|0;j=c[g+(f<<2)>>2]|0;m=c[g+(f+4<<2)>>2]|0;i=m+j|0;m=j-m|0;j=c[g+(f+2<<2)>>2]|0;n=c[g+(f+6<<2)>>2]|0;l=j-n|0;j=n+j|0;b[a+(k<<1)>>1]=((H(j+i|0,e)|0)+128|0)>>>8;b[a+(k+32<<1)>>1]=((H(l+m|0,e)|0)+128|0)>>>8;b[a+(k+64<<1)>>1]=((H(m-l|0,e)|0)+128|0)>>>8;b[a+(k+96<<1)>>1]=((H(i-j|0,e)|0)+128|0)>>>8;f=f+1|0}Ec=h;return}function pL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+8|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+9|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+10|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+11|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+12|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+13|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+14|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+15|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function qL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function rL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function sL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function tL(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+8>>0]|0,i)|0;m=j+8|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+9>>0]|0,i)|0;b=j+9|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+10>>0]|0,i)|0;m=j+10|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+11>>0]|0,i)|0;b=j+11|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+12>>0]|0,i)|0;m=j+12|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+13>>0]|0,i)|0;b=j+13|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+14>>0]|0,i)|0;m=j+14|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+15>>0]|0,i)|0;b=j+15|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function uL(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function vL(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function wL(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function xL(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,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;y=0-c|0;z=H(c,-2)|0;A=H(c,-3)|0;B=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+y|0;s=d[r>>0]|0;h=n+z|0;t=d[h>>0]|0;i=d[n+A>>0]|0;u=d[n>>0]|0;k=n+c|0;v=d[k>>0]|0;l=d[n+B>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+1|0}}while(0);b=b+4|0;w=w+1|0}return}function yL(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,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<2;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function zL(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,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==2)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function AL(b,c,e,f){b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;w=H(c,-3)|0;x=H(c,-2)|0;y=0-c|0;z=c<<1;A=(e>>2)+2|0;u=H(c,-4)|0;v=c*3|0;m=0;while(1){if((m|0)==16)break;g=b+w|0;l=d[g>>0]|0;h=b+x|0;n=d[h>>0]|0;i=b+y|0;o=d[i>>0]|0;p=d[b>>0]|0;q=b+c|0;r=d[q>>0]|0;s=b+z|0;t=d[s>>0]|0;j=o-p|0;j=(j|0)>-1?j:0-j|0;do if(((j|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((j|0)>=(A|0)){a[i>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){B=d[b+u>>0]|0;a[i>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[h>>0]=(l+2+n+o+p|0)>>>2;i=g;h=3;j=4;k=p;g=(l*3|0)+n+(B<<1)|0}else{h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;B=t-p|0;if((((B|0)>-1?B:0-B|0)|0)<(f|0)){B=d[b+v>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(B<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+1|0;m=m+1|0}return}function BL(b,c,e,f){b=b|0;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,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==16)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function CL(b,c,e,f){b=b|0;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,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==8)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function DL(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,p=0,q=0,r=0,s=0,t=0;r=0-c|0;s=H(c,-2)|0;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+r|0;m=d[l>>0]|0;n=d[j+s>>0]|0;o=d[j>>0]|0;p=d[j+c>>0]|0;t=m-o|0;if(((((t|0)>-1?t:0-t|0)|0)<(e|0)?(t=n-m|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0)?(t=p-o|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0){t=n+4-p+(o-m<<2)>>3;t=(t|0)<(k|0)?k:(t|0)>(q|0)?q:t;p=t+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;t=o-t|0;a[j>>0]=t>>>0>255?(t^-2147483648)>>31:t}i=i+1|0;j=j+1|0}}while(0);b=b+2|0;h=h+1|0}return}function EL(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,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function FL(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,p=0,q=0,r=0,s=0;r=c<<2;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==4)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function GL(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,p=0,q=0,r=0;h=0;while(1){if((h|0)==4)break;q=a[g+h>>0]|0;p=q<<24>>24;a:do if(q<<24>>24>=1){q=0-p|0;i=0;j=b;while(1){if((i|0)==1)break a;k=j+-1|0;l=d[k>>0]|0;m=d[j+-2>>0]|0;n=d[j>>0]|0;o=d[j+1>>0]|0;r=l-n|0;if(((((r|0)>-1?r:0-r|0)|0)<(e|0)?(r=m-l|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0)?(r=o-n|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0){r=m+4-o+(n-l<<2)>>3;r=(r|0)<(q|0)?q:(r|0)>(p|0)?p:r;o=r+l|0;a[k>>0]=o>>>0>255?(o^-2147483648)>>31:o;r=n-r|0;a[j>>0]=r>>>0>255?(r^-2147483648)>>31:r}i=i+1|0;j=j+c|0}}while(0);b=b+c|0;h=h+1|0}return}function HL(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,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function IL(b,c,e,f){b=b|0;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;m=0-c|0;n=H(c,-2)|0;l=0;while(1){if((l|0)==8)break;j=b+m|0;k=d[j>>0]|0;g=d[b+n>>0]|0;h=d[b>>0]|0;i=d[b+c>>0]|0;o=k-h|0;if(((((o|0)>-1?o:0-o|0)|0)<(e|0)?(o=g-k|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0)?(o=i-h|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0){a[j>>0]=(k+2+(g<<1)+i|0)>>>2;a[b>>0]=(g+2+h+(i<<1)|0)>>>2}l=l+1|0;b=b+1|0}return}function JL(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function KL(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==16)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function LL(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==4)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function ML(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function NL(b,c){b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(c|0))break;if(!(a[b+d>>0]|0))break;d=d+1|0}return d|0}function OL(b,c,e,f){b=b|0;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;if(!((b|0)==0&(c|0)==0)){if(!((e|0)==0&(f|0)==0)){o=iW(0,0,b|0,c|0)|0;o=nW(o&b|0,(M()|0)&c|0,-862635923,36691299)|0;o=rW(o|0,M()|0,58)|0;M()|0;o=a[150908+o>>0]|0;g=o&255;j=iW(0,0,e|0,f|0)|0;j=nW(j&e|0,(M()|0)&f|0,-862635923,36691299)|0;j=rW(j|0,M()|0,58)|0;M()|0;j=a[150908+j>>0]|0;h=j&255;i=g>>>0>h>>>0;o=qW(b|0,c|0,o&255|0)|0;m=M()|0;n=(m|0)>-1|(m|0)==-1&o>>>0>4294967295;b=iW(0,0,o|0,m|0)|0;l=M()|0;f=qW(e|0,f|0,j&255|0)|0;j=M()|0;k=(j|0)>-1|(j|0)==-1&f>>>0>4294967295;c=iW(0,0,f|0,j|0)|0;e=M()|0;b=n?o:b;c=k?f:c;f=n?m:l;e=k?j:e;while(1){if((b|0)==(c|0)&(f|0)==(e|0))break;k=(f|0)>(e|0)|(f|0)==(e|0)&b>>>0>c>>>0;m=k?c:b;o=k?e:f;k=iW((k?b:c)|0,(k?f:e)|0,m|0,o|0)|0;l=M()|0;n=iW(0,0,k|0,l|0)|0;n=nW(k&n|0,l&(M()|0)|0,-862635923,36691299)|0;n=rW(n|0,M()|0,58)|0;M()|0;n=qW(k|0,l|0,d[150908+n>>0]|0|0)|0;b=m;c=n;f=o;e=M()|0}b=sW(b|0,f|0,(i?h:g)|0)|0;c=M()|0}}else{c=f;b=e}L(c|0);return b|0}function PL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Ec;Ec=Ec+16|0;d=h;f=c[(c[a+28>>2]|0)+20>>2]|0;do if(((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)?(c[a+120>>2]|0)!=10:0){e=f+300|0;if((c[e>>2]|0)!=1){We(a,16,151110,d);a=-1;break}d=f+184|0;JU(d)|0;c[f+324>>2]=b;c[e>>2]=3;a=f+60|0;zW(a|0)|0;while(1){if((c[e>>2]|0)==1)break;yb(a|0,d|0)|0}a=c[f+328>>2]|0;KU(d)|0}else g=4;while(0);if((g|0)==4)a=RL(a,b)|0;Ec=h;return a|0}function QL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[a+880>>2]|0;a:do if((d|0)!=0?(i=c[(c[a+12>>2]|0)+124>>2]|0,(i|0)!=0):0){g=(c[d+4>>2]|0)+8|0;f=0;while(1){h=c[i+(f<<2)>>2]|0;if(!h){d=0;j=11;break a}b:do if(c[h+4>>2]&1|0?(c[g>>2]|0)==(c[h+8>>2]|0):0){e=0;while(1){d=c[b+(e<<2)>>2]|0;if((d|0)==-1)break b;if((c[h>>2]|0)==(d|0))break a;else e=e+1|0}}while(0);f=f+1|0}}else{d=0;j=11}while(0);c:do if((j|0)==11){while(1)if((c[b+(d<<2)>>2]|0)==-1)break;else{d=d+1|0;j=11}d=b+(d+-1<<2)|0;j=c[(qg(c[d>>2]|0)|0)+8>>2]|0;if((j&8|0)==0&0==0){d=c[d>>2]|0;break}g=a+12|0;f=0;d:while(1){h=b+(f<<2)|0;if((c[h>>2]|0)==-1){d=-1;break c}else e=0;while(1){i=UL(c[g>>2]|0,e)|0;if(!i)break d;d=c[i>>2]|0;if((d|0)==(c[h>>2]|0))break;else e=e+1|0}if(!(c[i+4>>2]&4))f=f+1|0;else break c}d=c[h>>2]|0}while(0);return d|0}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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=Ec;Ec=Ec+80|0;t=z+72|0;s=z+64|0;r=z+56|0;q=z+48|0;p=z+40|0;w=z+32|0;v=z+24|0;u=z+16|0;d=z;x=z+76|0;f=0;while(1){e=f+1|0;if((c[b+(f<<2)>>2]|0)==-1)break;else f=e}if((f|0)<=0){c[d>>2]=151172;c[d+4>>2]=128996;c[d+8>>2]=1310;We(0,0,164054,d);Za()}d=b+(f+-1<<2)|0;m=c[(qg(c[d>>2]|0)|0)+8>>2]|0;if((m&8|0)==0&0==0)c[a+768>>2]=c[d>>2];d=Mg(e,4)|0;c[x>>2]=d;if(!d)d=-1;else{wW(d|0,b|0,e<<2|0)|0;j=a+120|0;k=a+12|0;l=a+880|0;m=a+860|0;i=d;a:while(1){SL(a);d=Mc[c[j>>2]&15](a,i)|0;if((d|0)==-1){d=-1;break}h=qg(d)|0;if(!h){y=11;break}c[v>>2]=c[h>>2];We(a,48,151230,v);b=0;while(1){if((b|0)>=(f|0))break;if((c[i+(b<<2)>>2]|0)==(d|0))break;b=b+1|0}if((b|0)==(f|0)){y=17;break}e=c[(c[k>>2]|0)+124>>2]|0;if(!e)break;else b=0;while(1){g=c[e+(b<<2)>>2]|0;if(!g)break a;if((c[g>>2]|0)==(d|0))break;else b=b+1|0}b=c[g+4>>2]|0;if((b&2|0)!=0?(n=c[m>>2]|0,(n|0)!=0):0)if((c[(c[n+4>>2]|0)+36>>2]|0)==(d|0))y=31;else{c[p>>2]=c[h>>2];We(a,16,151325,p)}else y=25;do if((y|0)==25){y=0;if(b&1|0?(o=c[l>>2]|0,o|0):0){if((c[(c[o+4>>2]|0)+8>>2]|0)==(c[g+8>>2]|0)){y=31;break}c[q>>2]=c[h>>2];We(a,16,151413,q);break}if(!(b&12)){c[r>>2]=c[h>>2];We(a,16,151499,r)}else y=31}while(0);if((y|0)==31){y=0;if(!(c[g+12>>2]|0))break;c[s>>2]=c[h>>2];We(a,48,151552,s);if((TL(a,g)|0)>=0)break}c[t>>2]=c[h>>2];We(a,48,151596,t);b=0;while(1){if((b|0)>=(f|0)){d=b;break}if((c[i+(b<<2)>>2]|0)==(d|0)){d=b;break}b=b+1|0}while(1){b=d+1|0;if((b|0)>=(f|0))break;i=c[x>>2]|0;c[i+(d<<2)>>2]=c[i+(b<<2)>>2];d=b}f=f+-1|0;i=c[x>>2]|0}if((y|0)==11){We(a,16,151179,u);d=-1}else if((y|0)==17){c[w>>2]=c[h>>2];We(a,16,151265,w);d=0}Se(x)}Ec=z;return d|0}function SL(a){a=a|0;var b=0,d=0,e=0;b=a+592|0;d=c[b>>2]|0;if(d|0?(e=c[d+52>>2]|0,e|0):0)Kc[e&31](a)|0;Se((c[a+28>>2]|0)+60|0);c[b>>2]=0;Cf(a+860|0);return}function TL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;h=i+8|0;e=i;g=c[b+12>>2]|0;if((c[g+16>>2]&512|0)!=0?(c[a+568>>2]|0)>-2:0){c[e>>2]=c[g>>2];We(a,24,151653,e);d=-1163346256}else f=4;do if((f|0)==4){e=c[g+56>>2]|0;if(e|0?(f=Of(e)|0,c[(c[a+28>>2]|0)+60>>2]=f,(f|0)==0):0){d=-12;break}f=a+592|0;c[f>>2]=g;e=c[g+48>>2]|0;if((e|0)!=0?(d=Kc[e&31](a)|0,(d|0)<0):0){c[h>>2]=rg(c[b>>2]|0)|0;We(a,16,151688,h);Se((c[a+28>>2]|0)+60|0);c[f>>2]=0}else d=0}while(0);Ec=i;return d|0}function UL(a,b){a=a|0;b=b|0;var d=0;d=c[a+124>>2]|0;a:do if((b|0)<0|(d|0)==0)a=0;else{a=0;while(1){if((a|0)>(b|0))break;if(!(c[d+(a<<2)>>2]|0)){a=0;break a}else a=a+1|0}a=c[d+(b<<2)>>2]|0}while(0);return a|0}function VL(a){a=a|0;var b=0,c=0,e=0;e=pM(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;qM(a,b);return (rM(a,b+1|0)|0)+-1|0}function WL(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[126412+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[126924+a>>0]|0|0}function XL(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=Ec;Ec=Ec+16|0;h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[120443+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){We(0,16,155802,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[126412+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[126924+a>>0]|0}while(0);Ec=i;return a|0}function YL(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function ZL(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function _L(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uW(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[126412+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[127436+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[120443+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function $L(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;m=Ec;Ec=Ec+16|0;k=m;c[b>>2]=c[e+20>>2];j=b+4|0;c[j>>2]=c[e+24>>2];do if((f|0)!=1){i=(g|0)==3?15:31;if(nM(d)|0){c[b>>2]=(mM(d)|0)+1;if((f|0)==3)e=(mM(d)|0)+1|0;else e=1;c[j>>2]=e}g=(c[b>>2]|0)+-1|0;e=c[j>>2]|0;if(g>>>0>i>>>0|(e+-1|0)>>>0>i>>>0){c[k>>2]=g;c[k+4>>2]=i;c[k+8>>2]=e+-1;c[k+12>>2]=i;We(h,16,152319,k);c[a>>2]=0;c[b>>2]=0;c[j>>2]=0;e=-1094995529;break}else{e=(f|0)==3?2:1;l=9;break}}else{c[j>>2]=0;c[b>>2]=0;e=0;l=9}while(0);if((l|0)==9){c[a>>2]=e;e=0}Ec=m;return e|0}function aM(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=Ec;Ec=Ec+16|0;m=o+8|0;l=o;c[b+27768>>2]=0;c[b+27772>>2]=0;j=b+23412|0;k=b+4|0;f=0;a:while(1){if(f>>>0>=(c[j>>2]|0)>>>0){e=0;break}b:do if(eM(k)|0){g=b+23404+(f<<2)|0;h=b+27768+(f<<2)|0;e=0;while(1){i=fM(k)|0;if((i|0)==3)break b;if(e>>>0>=(c[g>>2]|0)>>>0){n=7;break a}if(i>>>0>2){n=9;break a}c[b+27256+(f<<8)+(e<<3)+4>>2]=gM(k)|0;a[b+27256+(f<<8)+(e<<3)>>0]=i;c[h>>2]=(c[h>>2]|0)+1;e=e+1|0}}while(0);f=f+1|0}if((n|0)==7){We(d,16,152252,l);e=-1094995529}else if((n|0)==9){c[m>>2]=i;We(d,16,152278,m);e=-1094995529}Ec=o;return e|0}function bM(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=Ec;Ec=Ec+32|0;x=z+16|0;l=z+8|0;k=z;c[f>>2]=0;w=f+4|0;c[w>>2]=0;i=mM(a)|0;j=f+8|0;c[j>>2]=i;if(i>>>0>7){c[k>>2]=i;We(h,16,152143,k);c[j>>2]=0;i=0}t=1<<i;s=b+12|0;if(!(c[s>>2]|0))r=0;else{i=mM(a)|0;j=f+12|0;c[j>>2]=i;if(i>>>0>7){c[l>>2]=i;We(h,16,152186,l);c[j>>2]=0;i=0}r=1<<i}q=(g|0)==3;m=(e|0)==3;g=0;a:while(1){if((g|0)>=2){y=35;break}n=f+16+(g<<2)|0;c[n>>2]=0;o=f+24+(g<<2)|0;c[o>>2]=0;p=d+(g<<2)|0;e=0;while(1){if((e|0)>=(c[p>>2]|0))break;if(nM(a)|0){j=f+32+(e<<4)+(g<<3)|0;c[j>>2]=oM(a)|0;i=oM(a)|0;c[f+32+(e<<4)+(g<<3)+4>>2]=i;j=c[j>>2]|0;if((j<<24>>24|0)!=(j|0)){y=38;break a}if((i<<24>>24|0)!=(i|0)){y=38;break a}if(!((i|0)==0&(j|0)==(t|0))){c[f>>2]=1;i=1;j=n;y=17}}else{c[f+32+(e<<4)+(g<<3)>>2]=t;i=0;j=f+32+(e<<4)+(g<<3)+4|0;y=17}if((y|0)==17){y=0;c[j>>2]=i}b:do if(c[s>>2]|0){if(!(nM(a)|0)){i=0;while(1){if((i|0)==2)break b;c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]=r;c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]=0;i=i+1|0}}else i=0;while(1){if((i|0)>=2)break b;j=f+800+(e<<5)+(g<<4)+(i<<3)|0;c[j>>2]=oM(a)|0;k=oM(a)|0;b=f+800+(e<<5)+(g<<4)+(i<<3)+4|0;c[b>>2]=k;l=c[j>>2]|0;if((l<<24>>24|0)!=(l|0)){y=26;break a}if((k<<24>>24|0)!=(k|0)){y=26;break a}if(!((k|0)==0&(l|0)==(r|0))){c[w>>2]=1;c[o>>2]=1}i=i+1|0}}while(0);c:do if(q?(l=c[f+32+(e<<4)+(g<<3)>>2]|0,v=e<<1,u=v+16|0,v=v+17|0,c[f+32+(v<<4)+(g<<3)>>2]=l,c[f+32+(u<<4)+(g<<3)>>2]=l,l=c[f+32+(e<<4)+(g<<3)+4>>2]|0,c[f+32+(v<<4)+(g<<3)+4>>2]=l,c[f+32+(u<<4)+(g<<3)+4>>2]=l,c[s>>2]|0):0){i=0;while(1){if((i|0)==2)break c;l=c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]|0;c[f+800+(v<<5)+(g<<4)+(i<<3)>>2]=l;c[f+800+(u<<5)+(g<<4)+(i<<3)>>2]=l;l=c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]|0;c[f+800+(v<<5)+(g<<4)+(i<<3)+4>>2]=l;c[f+800+(u<<5)+(g<<4)+(i<<3)+4>>2]=l;i=i+1|0}}while(0);e=e+1|0}if(m)g=g+1|0;else{y=35;break}}if((y|0)==26){c[j>>2]=r;c[b>>2]=0;y=38}else if((y|0)==35){if(!(c[f>>2]|0))i=(c[w>>2]|0)!=0&1;else i=1;c[f>>2]=i;i=0}if((y|0)==38){Oh(h,152231,x);i=-1094995529}Ec=z;return i|0}function cM(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;n=Ec;Ec=Ec+16|0;l=n+8|0;m=n;a:do if((c[d+44>>2]|0)!=5){k=eM(b)|0;c[a+34728>>2]=k;if(k){f=a+34752|0;g=a+34756|0;h=a+21824|0;d=0;b:while(1){if((d|0)>=66){f=21;break a}k=fM(b)|0;c[a+33932+(d*12|0)>>2]=k;if((k|2|0)==3){j=c[f>>2]|0;j=j+-1-(gM(b)|0)|0;c[a+33932+(d*12|0)+4>>2]=j&(c[g>>2]|0)+-1}i=(k|0)==2;switch(k|0){case 2:case 3:case 4:case 6:{j=fM(b)|0;if(j>>>0>31){d=k;f=16;break b}if(!(j>>>0<16|(k|0)==4&(j|0)==16)){if(!i){d=k;f=16;break b}if((c[h>>2]|0)==3){d=2;f=16;break b}}c[a+33932+(d*12|0)+8>>2]=j;break}default:{if(k>>>0>6){f=18;break b}if(!k){f=21;break a}}}d=d+1|0}if((f|0)==16){c[m>>2]=d;We(e,16,152083,m);d=-1;break}else if((f|0)==18){c[l>>2]=k;We(e,16,155392,l);d=-1;break}}else{d=0;f=21}}else{dM(b);if(!(eM(b)|0))d=0;else{c[a+33932>>2]=6;c[a+33940>>2]=0;d=1}c[a+34728>>2]=1;f=21}while(0);if((f|0)==21){c[a+34724>>2]=d;d=0}Ec=n;return d|0}function dM(a){a=a|0;lM(a);return}function eM(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function fM(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[126412+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[126924+a>>0]|0|0}function gM(a){a=a|0;var b=0,c=0,e=0;e=hM(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;iM(a,b);return (jM(a,b+1|0)|0)+-1|0}function hM(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=jM(d,32)|0;Ec=b;return a|0}function iM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function jM(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=kM(a,b)|0;break}else{b=b+-16|0;c=(kM(a,16)|0)<<b;a=c|(kM(a,b)|0);break}else a=0;while(0);return a|0}function kM(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function lM(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function mM(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=Ec;Ec=Ec+16|0;h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[120443+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){We(0,16,155802,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[126412+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[126924+a>>0]|0}while(0);Ec=i;return a|0}function nM(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function oM(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uW(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[126412+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[127436+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[120443+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function pM(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=rM(d,32)|0;Ec=b;return a|0}function qM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function rM(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=YL(a,b)|0;break}else{b=b+-16|0;c=(YL(a,16)|0)<<b;a=c|(YL(a,b)|0);break}else a=0;while(0);return a|0}function sM(a){a=a|0;var b=0,c=0,e=0;e=tM(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;uM(a,b);return (vM(a,b+1|0)|0)+-1|0}function tM(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=vM(d,32)|0;Ec=b;return a|0}function uM(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function vM(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=wM(a,b)|0;break}else{b=b+-16|0;c=(wM(a,16)|0)<<b;a=c|(wM(a,b)|0);break}else a=0;while(0);return a|0}function wM(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function xM(b,d,e){b=b|0;d=d|0;e=e|0;if(e>>>0<=4294967231){if(!(MM(b,d,e+64|0)|0)){b=(c[b>>2]|0)+e|0;d=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0))}}else{Se(b);c[d>>2]=0}return}function yM(a,b,e,f,g){a=a|0;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=Ec;Ec=Ec+16|0;k=l;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;m=i+1|0;c[f>>2]=m;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=m}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;We(g,16,155440,k);h=-1094995529}}else h=-11;Ec=l;return h|0}function zM(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;if((b+3|0)>>>0<c>>>0){d=0;while(1){f=b+d|0;if((f+3|0)>>>0>=c>>>0)break;e=d+1|0;if(a[f>>0]|0){d=e;continue}if(a[b+e>>0]|0){d=e;continue}if((a[b+(d+2)>>0]|0)==1)break;else d=e}d=d+3|0}else d=c-b|0;return d|0}function AM(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=0?(2147483647/(c>>>0)|0)>>>0>b>>>0:0)a=bf(a,H(c,b)|0)|0;else a=0;return a|0}function BM(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,u=0,v=0;v=Ec;Ec=Ec+16|0;r=v;q=f+52|0;c[q>>2]=0;h=0;while(1){if((h+1|0)>=(d|0))break;if(!(a[b+h>>0]|0)){i=h+-1|0;if((h|0)>0)h=(a[b+i>>0]|0)==0?i:h;i=h+2|0;if(((i|0)<(d|0)?(a[b+(h+1)>>0]|0)==0:0)?(j=a[b+i>>0]|0,(j&255)<4):0){t=9;break}}h=h+2|0}a:do if((t|0)==9){switch(j<<24>>24){case 0:case 3:break a;default:{}}d=h}while(0);b:do if((g|0)!=0&(h|0)>=(d+-1|0)){c[f+20>>2]=b;c[f+8>>2]=b;c[f+16>>2]=d;c[f+4>>2]=d}else{i=(h|0)>(d|0)?d:h;p=e+8|0;o=(c[e>>2]|0)+(c[p>>2]|0)|0;c[f>>2]=o;wW(o|0,b|0,i|0)|0;m=f+60|0;n=f+56|0;h=i;while(1){j=i+2|0;if((j|0)>=(d|0)){t=30;break}e=b+j|0;g=a[e>>0]|0;if((g&255)<=3){j=a[b+i>>0]|0;if(!(j<<24>>24))if(g<<24>>24==0?1:(a[b+(i+1)>>0]|0)!=0)j=0;else{if(g<<24>>24!=3){u=h;s=i;break}l=h+1|0;a[o+h>>0]=0;h=h+2|0;a[o+l>>0]=0;i=i+3|0;j=c[m>>2]|0;if(!j)continue;k=c[q>>2]|0;g=k+1|0;c[q>>2]=g;e=c[n>>2]|0;if((e|0)<=(k|0)){j=e<<1;c[n>>2]=j;if((j|0)<=(k|0)){t=24;break}JM(m,j,4)|0;j=c[m>>2]|0;if(!j){t=27;break}g=c[q>>2]|0}c[j+(g+-1<<2)>>2]=l;continue}}else{a[o+h>>0]=a[b+i>>0]|0;a[o+(h+1)>>0]=a[b+(i+1)>>0]|0;h=h+2|0;i=j;j=a[e>>0]|0}a[o+h>>0]=j;h=h+1|0;i=i+1|0}c:do if((t|0)==24){c[r>>2]=152820;c[r+4>>2]=152870;c[r+8>>2]=114;We(0,0,164054,r);Za()}else if((t|0)==27){c[n>>2]=0;d=-12;break b}else if((t|0)==30)while(1){if((i|0)>=(d|0)){u=h;s=i;break c}a[o+h>>0]=a[b+i>>0]|0;h=h+1|0;i=i+1|0;t=30}while(0);d=o+u|0;h=d+64|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(h|0));c[f+8>>2]=o;c[f+4>>2]=u;c[f+20>>2]=b;c[f+16>>2]=s;c[p>>2]=(c[p>>2]|0)+s;d=s}while(0);Ec=v;return d|0}function CM(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=(e|0)!=0;g=b+8|0;h=c[b+4>>2]|0;while(1){if(!(f&(h|0)>0)){b=4;break}b=h+-1|0;e=a[(c[g>>2]|0)+b>>0]|0;if(!(e<<24>>24))h=b;else{f=e;b=6;break}}if((b|0)==4)if(!h)e=0;else{f=a[(c[g>>2]|0)+(h+-1)>>0]|0;b=6}if((b|0)==6){b=f&255;if((h|0)<=268435455){e=h<<3;if(f<<24>>24)e=e+-1-(d[161197+((H(0-b&b,125613361)|0)>>>27)>>0]|0)|0}else e=-34}return e|0}function DM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function EM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;h=i;d=a+24|0;if((GM(d)|0)==0?(e=a+44|0,c[e>>2]=HM(d,6)|0,f=HM(d,6)|0,g=(HM(d,3)|0)+-1|0,c[a+48>>2]=g,(g|0)>=0):0){e=c[e>>2]|0;a=IM(e)|0;c[h>>2]=e;c[h+4>>2]=a;c[h+8>>2]=f;c[h+12>>2]=g;We(b,48,152572,h);a=(f|0)==0&1}else a=-1094995529;Ec=i;return a|0}function FM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=Ec;Ec=Ec+16|0;e=f;d=a+24|0;if(!(GM(d)|0)){g=a+64|0;c[g>>2]=HM(d,2)|0;d=HM(d,5)|0;c[a+44>>2]=d;a=c[g>>2]|0;c[e>>2]=d;c[e+4>>2]=a;We(b,48,152536,e);a=1}else a=-1094995529;Ec=f;return a|0}function GM(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function HM(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function IM(a){a=a|0;do switch(a|0){case 0:{a=152812;break}case 1:{a=152804;break}case 2:{a=152798;break}case 3:{a=152792;break}case 4:{a=152785;break}case 5:{a=152778;break}case 6:{a=152771;break}case 7:{a=152764;break}case 8:{a=152757;break}case 9:{a=152750;break}case 16:{a=152741;break}case 17:{a=152730;break}case 18:{a=152721;break}case 19:{a=152710;break}case 20:{a=152701;break}case 21:{a=152693;break}case 32:{a=152689;break}case 33:{a=152685;break}case 34:{a=152681;break}case 35:{a=152677;break}case 36:{a=152669;break}case 37:{a=152661;break}case 38:{a=152654;break}case 39:{a=152643;break}case 40:{a=152632;break}default:a=152630}while(0);return a|0}function JM(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=KM(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c,e)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;return ((e|0)!=0&((c|0)!=0&(f|0)==0)?-12:0)|0}function KM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;f=g;if(!((LM(d,b,f)|0)==0?(e=bf(a,c[f>>2]|0)|0,(e|0)!=0):0)){Te(a);e=0}Ec=g;return e|0}function LM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=H(b,a)|0;if((a|0)!=0&(b|a)>>>0>65535?((e>>>0)/(a>>>0)|0|0)!=(b|0):0)a=-22;else{c[d>>2]=e;a=0}return a|0}function MM(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Ec;Ec=Ec+16|0;h=i;if((c[e>>2]|0)>>>0>=f>>>0)if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=152895;c[h+4>>2]=152912;c[h+8>>2]=33;We(0,0,164054,h);Za()}else g=0;else{g=f+32+(f>>>4)|0;g=g>>>0>f>>>0?g:f;Se(b);h=Of(g)|0;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;c[e>>2]=(h|0)==0?0:g;g=1}Ec=i;return g|0}function NM(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;s=Ec;Ec=Ec+48|0;l=s+24|0;j=s+8|0;q=s+36|0;do if((g&8|0)==0&(OM(b,e,f,1,h)|0)<0){We(h,24,153026,s);if((e|0)<=21801){i=e*3|0;k=((i|0)/2|0)+64|0;g=Of(k)|0;c[q>>2]=g;if(!g)g=-12;else{if((e|0)<=-1){c[j>>2]=159582;c[j+4>>2]=159596;c[j+8>>2]=137;We(0,0,164054,j);Za()}o=b+e|0;if((i|0)<=-130){c[l>>2]=159582;c[l+4>>2]=159596;c[l+8>>2]=147;We(0,0,164054,l);Za()}n=g;m=g+k|0;g=n;i=b;e=0;a:while(1){k=m-g|0;l=(k|0)<1;while(1){j=o-i|0;if(!j)break a;b=i;if(j>>>0>2){if((j|0)<3)break;i=b+1|0;if(((d[i>>0]|0)<<8|(d[b>>0]|0)<<16|(d[b+2>>0]|0))>>>0<4)break}else i=b+1|0;if(!((e|0)!=0|l)){r=20;break}else e=1}if((r|0)==20){r=0;e=g;a[e>>0]=a[b>>0]|0;g=e+1|0;e=0;continue}if((e|0)==0?(p=g,(k|0)>2):0){a[p+2>>0]=3;a[p+1>>0]=0;a[p>>0]=0;g=p+3|0;e=0}else e=1;i=b+2|0}g=g-n|0;p=tW(g+65534&65535|0)|0;r=c[q>>2]|0;a[r>>0]=p;a[r+1>>0]=p>>8;OM(c[q>>2]|0,g,f,1,h)|0;Se(q);g=0;break}}else g=-34}else g=0;while(0);Ec=s;return g|0}function OM(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=Ec;Ec=Ec+32|0;i=k;j=k+8|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;c[j+20>>2]=0;a=Jh(j,a,b,f,e,2,27,1)|0;a:do if((a|0)<0)a=0;else{h=j+16|0;g=0;while(1){if((g|0)>=(c[h>>2]|0))break a;b=c[j>>2]|0;e=c[b+(g*68|0)+44>>2]|0;switch(e|0){case 7:{a=Rh(b+(g*68|0)+24|0,f,d,0)|0;if((a|0)<0)break a;break}case 8:{a=Th(b+(g*68|0)+24|0,f,d,c[b+(g*68|0)+12>>2]|0)|0;if((a|0)<0)break a;break}default:{c[i>>2]=e;We(f,40,159699,i)}}g=g+1|0}}while(0);ph(j);Ec=k;return a|0}function PM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[b+4>>2]=a;c[b+29592>>2]=-1;c[b+29664>>2]=c[a+92>>2];c[b+29668>>2]=c[a+96>>2];c[b+26380>>2]=3;c[b+25700>>2]=c[a+564>>2];c[b+25696>>2]=c[a+60>>2];c[b+28248>>2]=65536;c[b+29572>>2]=-1;c[b+29576>>2]=0;c[b+28264>>2]=-1;c[b+29860>>2]=-1;c[b+29712>>2]=-1;c[b+28744>>2]=-2147483648;d=0;while(1){if((d|0)==16)break;c[b+28676+(d<<2)>>2]=-2147483648;d=d+1|0}Wf(b+29676|0);c[a+332>>2]=1;if(!(c[a+696>>2]&2))d=1;else d=c[a+688>>2]|0;e=b+25632|0;c[e>>2]=d;a=kg(d,34768)|0;f=b+25628|0;c[f>>2]=a;a:do if(a){d=0;while(1){a=Fg()|0;if((d|0)>=36)break;c[b+696+(d*656|0)>>2]=a;if(!a){d=-12;break a}else d=d+1|0}c[b+24316>>2]=a;if((a|0)!=0?(a=Fg()|0,c[b+24972>>2]=a,(a|0)!=0):0){a=c[e>>2]|0;d=0;while(1){if((d|0)>=(a|0)){d=0;break a}c[(c[f>>2]|0)+(d*34768|0)>>2]=b;d=d+1|0}}else d=-12}else{c[e>>2]=0;d=-12}while(0);return d|0}function QM(){var a=0,b=0,d=0;if(!(c[45481]|0)){c[45481]=1;c[45312]=184628;c[45314]=256;RM(181244,8,20,153227,1,1,153247,1,1,0,0,0,4)|0;c[45316]=185652;c[45318]=8192;RM(181260,13,36,153267,1,1,153303,1,1,0,0,0,4)|0;a=0;b=0;while(1){if((b|0)==4){a=0;break}c[181276+(b<<4)+4>>2]=218420+(a<<2);d=c[74988+(b<<2)>>2]|0;c[181276+(b<<4)+12>>2]=d;RM(181276+(b<<4)|0,8,68,153339+(b*68|0)|0,1,1,153611+(b*68|0)|0,1,1,0,0,0,4)|0;a=d+a|0;b=b+1|0}while(1){if((a|0)==3){a=0;break}d=a+1|0;c[181340+(d<<4)+4>>2]=223972+(a<<5);c[181340+(d<<4)+12>>2]=8;RM(181340+(d<<4)|0,3,4,153883+(a<<2)|0,1,1,153895+(a<<2)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==7){a=0;break}d=a+1|0;c[181404+(d<<4)+4>>2]=224068+(a<<7);c[181404+(d<<4)+12>>2]=32;RM(181404+(d<<4)|0,5,8,153907+(a<<3)|0,1,1,153963+(a<<3)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==15){a=0;break}d=a+1|0;c[181532+(d<<4)+4>>2]=224964+(a<<11);c[181532+(d<<4)+12>>2]=512;RM(181532+(d<<4)|0,9,16,154019+(a<<4)|0,1,1,154275+(a<<4)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==6)break;d=a+1|0;c[181788+(d<<4)+4>>2]=255684+(a<<5);c[181788+(d<<4)+12>>2]=8;RM(181788+(d<<4)|0,3,7,154531+(a<<4)|0,1,1,154643+(a<<4)|0,1,1,0,0,0,4)|0;a=d}c[45476]=255876;c[45478]=96;RM(181900,6,16,154627,1,1,154739,1,1,0,0,0,4)|0;SM()}return}function RM(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,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,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;T=Ec;Ec=Ec+12624|0;S=T+72|0;R=T+64|0;N=T+56|0;L=T+48|0;z=T+40|0;A=T+32|0;v=T+16|0;t=T;s=T+616|0;u=T+600|0;F=T+88|0;c[f>>2]=g;P=(r&4|0)!=0;do if(P)if((h+1|0)>>>0<1501){c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[u+8>>2]=0;K=u;O=6;break}else{c[t>>2]=154755;c[t+4>>2]=154814;c[t+8>>2]=282;We(0,0,164054,t);Za()}else{c[f+4>>2]=0;c[f+12>>2]=0;c[f+8>>2]=0;s=Mg(h+1|0,8)|0;if(!s)Q=-12;else{K=f;O=6}}while(0);do if((O|0)==6){J=(o|0)!=0;if(J&(q|0)>2){c[v>>2]=154837;c[v+4>>2]=154814;c[v+8>>2]=298;We(0,0,164054,v);Za()}G=g*3|0;I=(r&2|0)==0;y=0;t=0;while(1){if((y|0)>=(h|0)){O=41;break}u=i+(H(y,j)|0)|0;switch(k|0){case 1:{u=a[u>>0]|0;O=15;break}case 2:{u=b[u>>1]&255;O=15;break}case 4:{u=c[u>>2]&255;O=15;break}default:u=a[s+(t<<3)>>0]|0}if((O|0)==15){O=0;a[s+(t<<3)>>0]=u}x=u&255;if((x|0)>(g|0)){if((u&255)>32|(G|0)<(x|0)){O=18;break}v=l+(H(y,m)|0)|0;switch(n|0){case 1:{v=d[v>>0]|0;O=25;break}case 2:{v=e[v>>1]|0;O=25;break}case 4:{v=c[v>>2]|0;O=25;break}default:{v=s+(t<<3)+4|0;w=v;v=c[v>>2]|0}}if((O|0)==25){O=0;w=s+(t<<3)+4|0;c[w>>2]=v}E=sW(1,0,u&255|0)|0;D=M()|0;if(!((D|0)>0|(D|0)==0&E>>>0>v>>>0)){O=27;break}if(I)u=v<<32-x;else u=(d[120699+(v>>>8&255)>>0]|0)<<16|(d[120699+(v&255)>>0]|0)<<24|(d[120699+(v>>>16&255)>>0]|0)<<8|(d[120699+(v>>>24)>>0]|0);c[w>>2]=u;a:do if(J){u=o+(H(y,p)|0)|0;switch(q|0){case 1:{u=d[u>>0]|0;O=38;break a}case 2:{u=b[u>>1]|0;O=38;break a}case 4:{u=c[u>>2]&65535;O=38;break a}default:break a}}else{u=y&65535;O=38}while(0);if((O|0)==38){O=0;b[s+(t<<3)+2>>1]=u}t=t+1|0}y=y+1|0}if((O|0)==18){c[A>>2]=x;We(0,16,154867,A);if(P){Q=-1;break}Te(s);Q=-1;break}else if((O|0)==27){c[z>>2]=v;c[z+4>>2]=y;We(0,16,154898,z);if(P){Q=-1;break}Te(s);Q=-1;break}else if((O|0)==41){c[F>>2]=s;c[F+4>>2]=s+(t<<3)+-8;u=1;b:while(1){if(!u)break;u=u+-1|0;E=c[F+(u<<3)+4>>2]|0;v=c[F+(u<<3)>>2]|0;while(1){if(v>>>0>=E>>>0)continue b;z=E+-8|0;if(v>>>0>=z>>>0)break;w=E+-16|0;y=v+8|0;C=E;D=v;A=v+(C-D>>4<<3)|0;do if((TM(v,E)|0)>0)if((TM(E,A)|0)>0){B=A;U=c[B>>2]|0;B=c[B+4>>2]|0;W=v;V=c[W+4>>2]|0;x=A;c[x>>2]=c[W>>2];c[x+4>>2]=V;x=v;c[x>>2]=U;c[x+4>>2]=B;x=0;break}else{W=E;V=c[W>>2]|0;W=c[W+4>>2]|0;B=v;U=c[B+4>>2]|0;x=E;c[x>>2]=c[B>>2];c[x+4>>2]=U;x=v;c[x>>2]=V;c[x+4>>2]=W;x=0;break}else if((TM(v,A)|0)>0){W=A;V=c[W>>2]|0;W=c[W+4>>2]|0;B=v;U=c[B+4>>2]|0;x=A;c[x>>2]=c[B>>2];c[x+4>>2]=U;x=v;c[x>>2]=V;c[x+4>>2]=W;x=0}else x=1;while(0);if((TM(A,E)|0)>0){W=E;V=c[W>>2]|0;W=c[W+4>>2]|0;B=A;U=c[B+4>>2]|0;x=E;c[x>>2]=c[B>>2];c[x+4>>2]=U;x=A;c[x>>2]=V;c[x+4>>2]=W;x=0}if((v|0)==(w|0))continue b;W=A;V=c[W>>2]|0;W=c[W+4>>2]|0;X=z;U=c[X+4>>2]|0;B=A;c[B>>2]=c[X>>2];c[B+4>>2]=U;B=z;c[B>>2]=V;c[B+4>>2]=W;B=y;c:while(1){if(B>>>0>w>>>0)break;else y=B;while(1){if(y>>>0>w>>>0)break;if((TM(y,z)|0)>=0)break;y=y+8|0}while(1){if(y>>>0>w>>>0){B=y;continue c}if((TM(w,z)|0)<=0)break;w=w+-8|0}X=w;W=c[X>>2]|0;X=c[X+4>>2]|0;U=y;V=c[U+4>>2]|0;B=w;c[B>>2]=c[U>>2];c[B+4>>2]=V;B=y;c[B>>2]=W;c[B+4>>2]=X;B=y+8|0;w=w+-8|0}W=B;V=c[W>>2]|0;W=c[W+4>>2]|0;y=z;U=c[y+4>>2]|0;X=B;c[X>>2]=c[y>>2];c[X+4>>2]=U;X=z;c[X>>2]=V;c[X+4>>2]=W;if(x|0?(A|0)==(B|0)|(A|0)==(B+-8|0):0){x=v;while(1){if(x>>>0>=E>>>0)break;if((TM(x,x+8|0)|0)>=1)break;x=x+8|0}if((x|0)==(E|0))continue b}X=B;if((C-X|0)<(X-D|0)){x=E;y=B+8|0}else{x=w;y=v;w=E;v=B+8|0}c[F+(u<<3)>>2]=v;c[F+(u<<3)+4>>2]=w;E=x;v=y;u=u+1|0}if((TM(v,E)|0)<=0)continue;W=E;V=c[W>>2]|0;W=c[W+4>>2]|0;D=v;U=c[D+4>>2]|0;X=E;c[X>>2]=c[D>>2];c[X+4>>2]=U;X=v;c[X>>2]=V;c[X+4>>2]=W}y=0;while(1){if((y|0)>=(h|0)){O=109;break}u=i+(H(y,j)|0)|0;switch(k|0){case 1:{u=a[u>>0]|0;O=83;break}case 2:{u=b[u>>1]&255;O=83;break}case 4:{u=c[u>>2]&255;O=83;break}default:u=a[s+(t<<3)>>0]|0}if((O|0)==83){O=0;a[s+(t<<3)>>0]=u}x=u&255;if(!(u<<24>>24==0|(x|0)>(g|0))){if((u&255)>32|(G|0)<(x|0)){O=86;break}v=l+(H(y,m)|0)|0;switch(n|0){case 1:{v=d[v>>0]|0;O=93;break}case 2:{v=e[v>>1]|0;O=93;break}case 4:{v=c[v>>2]|0;O=93;break}default:{v=s+(t<<3)+4|0;w=v;v=c[v>>2]|0}}if((O|0)==93){O=0;w=s+(t<<3)+4|0;c[w>>2]=v}X=sW(1,0,u&255|0)|0;W=M()|0;if(!((W|0)>0|(W|0)==0&X>>>0>v>>>0)){O=95;break}if(I)u=v<<32-x;else u=(d[120699+(v>>>8&255)>>0]|0)<<16|(d[120699+(v&255)>>0]|0)<<24|(d[120699+(v>>>16&255)>>0]|0)<<8|(d[120699+(v>>>24)>>0]|0);c[w>>2]=u;d:do if(J){u=o+(H(y,p)|0)|0;switch(q|0){case 1:{u=d[u>>0]|0;O=106;break d}case 2:{u=b[u>>1]|0;O=106;break d}case 4:{u=c[u>>2]&65535;O=106;break d}default:break d}}else{u=y&65535;O=106}while(0);if((O|0)==106){O=0;b[s+(t<<3)+2>>1]=u}t=t+1|0}y=y+1|0}if((O|0)==86){c[L>>2]=x;We(0,16,154867,L);if(P){Q=-1;break}Te(s);Q=-1;break}else if((O|0)==95){c[N>>2]=v;c[N+4>>2]=y;We(0,16,154898,N);if(P){Q=-1;break}Te(s);Q=-1;break}else if((O|0)==109){u=UM(K,g,t,s,r)|0;if(!P){Te(s);if((u|0)>=0){Q=0;break}Se(K+4|0);Q=u;break}s=c[K+8>>2]|0;t=c[K+12>>2]|0;if((s|0)!=(t|0)){c[R>>2]=s;c[R+4>>2]=t;We(0,16,154934,R)}if((u|0)>-1){c[f>>2]=c[K>>2];c[f+4>>2]=c[K+4>>2];c[f+8>>2]=c[K+8>>2];c[f+12>>2]=c[K+12>>2];Q=0;break}else{c[S>>2]=164084;c[S+4>>2]=154814;c[S+8>>2]=341;We(0,0,164054,S);Za()}}}}while(0);Ec=T;return Q|0}function SM(){var b=0,c=0,e=0,f=0,g=0,h=0,i=0;g=0;while(1){if((g|0)==7)break;i=-1<<g;h=0;while(1){if((h|0)==256)break;e=h<<1;f=(e&65280|0)==0;e=(f?0:8)+(d[120443+(f?e:h>>>7&16777215)>>0]|0)|0;f=8-e|0;b=f+1|0;c=b+g|0;do if((c|0)>=9)if(!e){a[257284+(g<<9)+(h<<1)>>0]=108;b=8;break}else{a[257284+(g<<9)+(h<<1)>>0]=f+100;b=b&255;break}else{b=(h&65280|0)==0;f=(f<<g)+i+(h>>>((b?0:8)-g+(d[120443+(b?h:h>>>8)>>0]|0)|0))|0;b=f&1;a[257284+(g<<9)+(h<<1)>>0]=((f+2|0)>>>1^0-b)+b;b=c&255}while(0);a[257284+(g<<9)+(h<<1)+1>>0]=b;h=h+1|0}g=g+1|0}return}function TM(a,b){a=a|0;b=b|0;return ((c[a+4>>2]|0)>>>1)-((c[b+4>>2]|0)>>>1)|0}function UM(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=Ec;Ec=Ec+16|0;w=B;x=B+4|0;y=1<<f;a:do if((f|0)<=30){z=VM(e,y,i&4)|0;if((z|0)<0)j=z;else{t=e+4|0;c[x>>2]=(c[t>>2]|0)+(z<<2);u=32-f|0;v=(i&2|0)==0;j=0;b:while(1){if((j|0)>=(g|0)){j=0;break}s=h+(j<<3)|0;m=a[s>>0]|0;q=m&255;l=h+(j<<3)+4|0;n=c[l>>2]|0;r=b[h+(j<<3)+2>>1]|0;c:do if((q|0)>(f|0)){r=q-f|0;k=n>>>u;a[s>>0]=r;c[l>>2]=n<<f;l=r;r=j;while(1){q=r+1|0;if((q|0)>=(g|0))break;m=h+(q<<3)|0;n=(d[m>>0]|0)-f|0;if((n|0)<1)break;o=h+(q<<3)+4|0;p=c[o>>2]|0;if((p>>>u|0)!=(k|0))break;a[m>>0]=n;c[o>>2]=p<<f;l=(l|0)>(n|0)?l:n;r=q}l=(l|0)>(f|0)?f:l;if(!v)k=(d[120699+(k>>>8&255)>>0]<<16|d[120699+(k&255)>>0]<<24|d[120699+(k>>>16&255)>>0]<<8|d[120699+(k>>>24)>>0])>>>u;b[(c[x>>2]|0)+(k<<2)+2>>1]=0-l;j=UM(e,l,q-j|0,s,i)|0;if((j|0)<0)break a;c[x>>2]=(c[t>>2]|0)+(z<<2);b[(c[x>>2]|0)+(k<<2)>>1]=j;j=r}else{p=1<<f-q;if(v){o=1;k=n>>>u}else{o=1<<q;k=d[120699+(n>>>8&255)>>0]<<16|d[120699+(n&255)>>0]<<24|d[120699+(n>>>16&255)>>0]<<8|d[120699+(n>>>24)>>0]}m=m&255;l=0;while(1){if((l|0)>=(p|0))break c;s=b[(c[x>>2]|0)+(k<<2)+2>>1]|0;if(!(s<<16>>16==0|(s<<16>>16|0)==(q|0))){A=11;break b}b[(c[x>>2]|0)+(k<<2)+2>>1]=m;b[(c[x>>2]|0)+(k<<2)>>1]=r;l=l+1|0;k=k+o|0}}while(0);j=j+1|0}if((A|0)==11){We(0,16,154952,w);j=-1094995529;break}while(1){if((j|0)>=(y|0)){j=z;break a}if(!(b[(c[x>>2]|0)+(j<<2)+2>>1]|0))b[(c[x>>2]|0)+(j<<2)>>1]=-1;j=j+1|0}}}else j=-1;while(0);Ec=B;return j|0}function VM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+8|0;e=c[g>>2]|0;h=e+b|0;c[g>>2]=h;f=a+12|0;b=c[f>>2]|0;do if((h|0)>(b|0)){if(d|0)Za();b=(1<<c[a>>2])+b|0;c[f>>2]=b;h=a+4|0;b=KM(c[h>>2]|0,b,4)|0;c[h>>2]=b;if(!b){c[f>>2]=0;c[g>>2]=0;e=-12;break}else{h=c[a>>2]|0;yW(b+(c[f>>2]<<2)+(-1<<h<<2)|0,0,4<<h|0)|0;break}}while(0);return e|0}function WM(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=f+696|0;h=f+24312|0;i=j;g=0;while(1){if((g|0)>=(d|0))break;f=c[b+(g<<2)>>2]|0;if((f|0)!=0?f>>>0>=j>>>0&f>>>0<h>>>0:0)f=e+696+(((f-i|0)/656|0)*656|0)|0;else f=0;c[a+(g<<2)>>2]=f;g=g+1|0}return}function XM(a){a=a|0;var b=0;a=c[a>>2]|0;b=a+1672|0;c[b>>2]=0;c[b+4>>2]=-2147483648;c[a+1680>>2]=2147483647;Pm(a+1208|0,8,1);return 0}function YM(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,s=0,t=0,u=0,v=0;v=Ec;Ec=Ec+48|0;k=v+32|0;j=v+24|0;s=v+20|0;t=v+16|0;l=v+8|0;m=v;c[s>>2]=f;c[t>>2]=g;o=c[a>>2]|0;h=o+1644|0;if((c[h>>2]|0)==0?(c[h>>2]=1,i=c[b+72>>2]|0,i|0):0)th(c[b+68>>2]|0,i,o+40|0,o+1636|0,o+1640|0,c[b+580>>2]|0,b)|0;i=a+176|0;do if(!(c[i>>2]&1)){g=aN(o,f,g,b)|0;if((Ue(o,g,s,t)|0)<0){c[d>>2]=0;c[e>>2]=0;g=c[t>>2]|0;break}if((g|0)<0&(g|0)!=-100){aN(o,(c[o>>2]|0)+((c[o+8>>2]|0)+g)|0,0-g|0,b)|0;u=9}else u=9}else u=9;while(0);if((u|0)==9){bN(a,b,c[s>>2]|0,c[t>>2]|0);h=b+760|0;if(c[h>>2]|0){c[m>>2]=c[b+84>>2];c[m+4>>2]=1;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];cN(l,j,k);n=c[l>>2]|0;p=b+76|0;c[p>>2]=c[l+4>>2];c[p+4>>2]=n}h=c[o+1404>>2]|0;if((h|0)>-1){p=c[o+1432>>2]|0;k=h;n=c[o+1400>>2]|0}else{p=-2147483648;k=-2147483648;n=-2147483648}c[a+240>>2]=p;c[a+244>>2]=k;c[a+248>>2]=n;h=c[i>>2]|0;if(h&2|0)c[i>>2]=h&1;if((p|0)>-1?(q=c[b+80>>2]|0,r=c[b+772>>2]|0,q=nW(r|0,((r|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0,r=M()|0,(r|0)>0|(r|0)==0&q>>>0>0):0){l=c[b+76>>2]|0;m=c[b+776>>2]|0;l=nW(m|0,((m|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0;m=M()|0;j=a+48|0;h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;if((i|0)==0&(h|0)==-2147483648){f=o+1672|0;i=f;h=c[i>>2]|0;i=c[i+4>>2]|0;if((h|0)==0&(i|0)==-2147483648){i=0;h=-2147483648}else{u=dN(k,((k|0)<0)<<31>>31,l,m,q,r)|0;i=hW(u|0,M()|0,h|0,i|0)|0;h=M()|0;u=j;c[u>>2]=i;c[u+4>>2]=h;u=21}}else{k=dN(k,((k|0)<0)<<31>>31,l,m,q,r)|0;k=iW(i|0,h|0,k|0,M()|0)|0;b=M()|0;f=o+1672|0;o=f;c[o>>2]=k;c[o+4>>2]=b;if(!((k|0)==0&(b|0)==-2147483648))u=21}if((u|0)==21){j=a+40|0;u=j;if((c[u>>2]|0)==0?(c[u+4>>2]|0)==-2147483648:0){q=dN(n,((n|0)<0)<<31>>31,l,m,q,r)|0;q=hW(q|0,M()|0,i|0,h|0)|0;r=M()|0;u=j;c[u>>2]=q;c[u+4>>2]=r}}if((p|0)>0){u=f;c[u>>2]=i;c[u+4>>2]=h}}c[d>>2]=c[s>>2];c[e>>2]=c[t>>2]}Ec=v;return g|0}function ZM(a){a=a|0;a=c[a>>2]|0;Se(a);Wf(a+1388|0);oh(a+40|0);return}function _M(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;m=Ec;Ec=Ec+16|0;k=m;c[k>>2]=-1;j=d+e|0;b=0;e=d;i=0;a:while(1)b:while(1){h=(b|0)!=0;while(1){if(e>>>0>=j>>>0){b=0;break a}e=$M(e,j,k)|0;g=c[k>>2]|0;if((g&-256|0)!=256){b=0;break a}f=g&31;switch(g&31){case 8:{i=1;continue a}case 7:{b=1;continue b}default:{}}if(h&((f|0)!=15&((f|4|0)!=13&(i|(f|0)!=6)))){l=8;break a}}}if((l|0)==8){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;l=8}else break}b=b-d|0}Ec=m;return b|0}function $M(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=Ec;Ec=Ec+16|0;g=i;if(b>>>0>e>>>0){c[g>>2]=155177;c[g+4>>2]=131456;c[g+8>>2]=1892;We(0,0,164054,g);Za()}a:do if(b>>>0<e>>>0){h=0;while(1){if((h|0)>=3)break;j=c[f>>2]<<8;g=b+1|0;c[f>>2]=j|d[b>>0];if((g|0)==(e|0)|(j|0)==256){e=g;break a}else{h=h+1|0;b=g}}while(1){if(b>>>0>=e>>>0)break;g=a[b+-1>>0]|0;if((g&255)>1){b=b+3|0;continue}if(!(a[b+-2>>0]|0)){h=b+1|0;if(!((g&255)+-1|d[b+-3>>0])){b=h;break}else{b=h;continue}}else{b=b+2|0;continue}}e=b>>>0>e>>>0?e:b;j=e+-4|0;c[f>>2]=uW(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24|0)|0}while(0);Ec=i;return e|0}function aN(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Ec;Ec=Ec+48|0;s=x+8|0;h=x;r=x+16|0;v=b+1636|0;w=b+16|0;j=c[w>>2]|0;j=j>>>0>13?7:j;q=b+1640|0;if(c[v>>2]|0)if(!(c[q>>2]|0)){We(g,16,155474,h);i=0}else i=0;else i=f;m=b+1340|0;n=b+1660|0;o=b+1664|0;p=b+1652|0;u=b+20|0;h=0;a:while(1){if((h|0)>=(f|0)){t=31;break}b:do if((i|0)>(h|0)){if((j|0)==7){j=(Mc[c[m>>2]&15](e+h|0,i-h|0)|0)+h|0;l=i;h=j;j=(j|0)<(i|0)?2:7;break}if(j>>>0<3)switch(a[e+h>>0]|0){case 1:{l=i;j=j^5;break b}case 0:{l=i;j=j>>>1;break b}default:{l=i;j=7;break b}}k=a[e+h>>0]|0;if(j>>>0>=6){l=c[n>>2]|0;c[n>>2]=l+1;a[b+1652+l>>0]=k;k=c[n>>2]|0;if((k|0)>5){l=c[o>>2]|0;rN(r,p,k<<3)|0;c[n>>2]=0;k=jN(r)|0;c[o>>2]=k;if(c[u>>2]|0){if(k>>>0<=l>>>0){t=29;break a}}else c[u>>2]=1;l=i;j=7}else l=i}else{l=i;i=k;t=20}}else{j=c[q>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;h=h+1|0;k=k<<8|d[e+i>>0];i=i+1|0}h=f-i|0;if((k|0)<1|(k|0)>(h|0)){t=12;break a}h=i;l=i+k|0;j=5;i=a[e+i>>0]|0;t=20}while(0);c:do if((t|0)==20){t=0;if(((i&31)+-6&255)<4){k=(c[u>>2]|0)==0;h=h+((k^1)&1)|0;if(k){j=7;break}else{i=l;f=j;t=32;break a}}switch(i&31){case 1:case 2:case 5:break;default:{j=7;break c}}j=j+8|0}while(0);h=h+1|0;i=l}if((t|0)==12){c[s>>2]=k;c[s+4>>2]=h;We(g,16,155511,s);t=33}else if((t|0)==29){f=j;t=32}else if((t|0)==31){c[w>>2]=j;f=(c[v>>2]|0)==0?-100:i;t=33}if((t|0)==32){c[w>>2]=7;c[u>>2]=0;Ec=x;return ((c[v>>2]|0)==0?h-(f&5)+(f>>>0>7?-5:0)|0:i)|0}else if((t|0)==33){Ec=x;return f|0}return 0}function bN(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=Ec;Ec=Ec+128|0;u=J+24|0;z=J+16|0;w=J+8|0;v=J;I=J+112|0;s=J+44|0;t=J+40|0;F=J+32|0;H=c[b>>2]|0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;h=s;i=h+68|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if((g|0)>3)n=(ZS(155186,f,4)|0)==0;else n=0;x=b+32|0;c[x>>2]=1;y=b+224|0;c[y>>2]=0;E=b+312|0;c[E>>2]=0;D=H+1388|0;Wf(D);c[H+1572>>2]=-1;a:do if(g|0?(xM(I,I+4|0,g),c[I>>2]|0):0){c[t>>2]=0;A=s+24|0;m=s+8|0;o=s+4|0;C=s+64|0;B=s+44|0;p=H+40|0;q=s+12|0;r=H+1640|0;i=c[H+1636>>2]|0?0:g;h=0;b:while(1){while(1){if((h|0)>=(i|0)){G=8;break}h=fN(f,g,h,i)|0;if((h|0)>=(g|0)){G=103;break b}if((h|0)<(i|0)){G=12;break}}if((G|0)==8){G=0;c[t>>2]=h;h=eN(c[r>>2]|0,f,g,t,e)|0;if((h|0)<0){G=104;break}k=c[t>>2]|0;l=k+h|0;h=k}else if((G|0)==12){G=0;c[t>>2]=h;l=i}i=l-h|0;k=f+h|0;K=a[k>>0]|0;j=K&255;c:do switch(K&31){case 5:case 1:if((j&31|0)==5|(j&96|0)==0){i=(i|0)<60?i:60;break c}else{i=(i|0)<1e3?i:1e3;break c}default:{}}while(0);i=BM(k,i,I,s,1)|0;if((i|0)<0){G=104;break}h=h+i|0;c[t>>2]=h;if((gN(A,c[m>>2]|0,c[o>>2]|0)|0)<0)break;hN(A)|0;c[C>>2]=iN(A,2)|0;K=iN(A,5)|0;c[B>>2]=K;switch(K|0){case 5:{G=23;break b}case 1:{G=24;break b}case 7:{Rh(A,e,p,0)|0;i=l;continue b}case 8:{Th(A,e,p,c[q>>2]|0)|0;i=l;continue b}case 6:{Ph(D,A,p,e)|0;i=l;continue b}default:{i=l;continue b}}}if((G|0)==23){c[y>>2]=1;c[H+1384>>2]=0;c[H+1380>>2]=0;c[H+1372>>2]=0;c[H+1368>>2]=0;G=24}else if((G|0)==103){c[t>>2]=h;G=104}d:do if((G|0)==24){jN(A)|0;c[x>>2]=d[127948+(((kN(A)|0)>>>0)%5|0)>>0];if((c[H+1428>>2]|0)>-1)c[y>>2]=1;h=lN(A)|0;if(h>>>0>255){c[v>>2]=h;We(e,16,155191,v);break}i=H+168+(h<<2)|0;if(!(c[i>>2]|0)){c[w>>2]=h;We(e,16,155215,w);break}K=H+1192|0;Cf(K);j=H+1196|0;Cf(j);o=H+1200|0;c[o>>2]=0;k=H+1204|0;c[k>>2]=0;h=Eg(c[i>>2]|0)|0;c[K>>2]=h;if(h|0){h=c[h+4>>2]|0;c[o>>2]=h;h=c[h>>2]|0;i=c[H+40+(h<<2)>>2]|0;if(!i){c[z>>2]=h;We(e,16,155247,z);break}h=Eg(i)|0;c[j>>2]=h;if(h|0){m=c[h+4>>2]|0;c[k>>2]=m;if(((c[m+48>>2]|0)<2?(c[(c[o>>2]|0)+20>>2]|0)>>>0<2:0)?(c[x>>2]|0)==1:0)c[y>>2]=1;l=H+1344|0;n=H+1364|0;c[n>>2]=iN(A,c[m+20>>2]|0)|0;h=c[m+56>>2]<<4;c[b+328>>2]=h;i=c[m+60>>2]<<4;c[b+332>>2]=i;K=h-(c[m+84>>2]|0)-(c[m+80>>2]|0)|0;j=b+320|0;c[j>>2]=K;z=i-(c[m+88>>2]|0)-(c[m+92>>2]|0)|0;k=b+324|0;c[k>>2]=z;if((z|0)<1|(K|0)<1){c[j>>2]=h;c[k>>2]=i}e:do switch(c[m+1184>>2]|0){case 9:{h=c[m+12>>2]|0;if((h|0)==3){c[b+336>>2]=68;break e}else{c[b+336>>2]=(h|0)==2?72:62;break e}}case 10:{h=c[m+12>>2]|0;if((h|0)==3){c[b+336>>2]=70;break e}else{c[b+336>>2]=(h|0)==2?66:64;break e}}case 8:{h=c[m+12>>2]|0;if((h|0)==3){c[b+336>>2]=5;break e}else{c[b+336>>2]=(h|0)==2?4:0;break e}}default:c[b+336>>2]=-1}while(0);c[e+716>>2]=Hm(m)|0;c[e+720>>2]=c[m+8>>2];if((c[m+64>>2]|0)==0?(hN(A)|0)!=0:0)h=(hN(A)|0)+1|0;else h=3;k=H+1648|0;c[k>>2]=h;if((c[B>>2]|0)==5)jN(A)|0;i=m+24|0;h=c[i>>2]|0;if(!h){c[l>>2]=iN(A,c[m+28>>2]|0)|0;if((c[(c[o>>2]|0)+8>>2]|0)==1?(c[k>>2]|0)==3:0)c[H+1352>>2]=mN(A)|0;h=c[i>>2]|0}do if(((h|0)==1?(c[m+32>>2]|0)==0:0)?(c[H+1356>>2]=mN(A)|0,(c[(c[o>>2]|0)+8>>2]|0)==1):0){if((c[k>>2]|0)!=3)break;c[H+1360>>2]=mN(A)|0}while(0);j=F+4|0;c[j>>2]=2147483647;c[F>>2]=2147483647;if((ol(F,b+316|0,m,l,c[k>>2]|0,c[C>>2]|0)|0)>=0){do if((c[C>>2]|0)==0|(c[B>>2]|0)==5)G=70;else{h=nN(b,A,e)|0;if((h|0)<0)break d;if(!h){G=70;break}c[H+1384>>2]=0;h=0;i=1}while(0);if((G|0)==70){c[H+1384>>2]=c[n>>2];h=c[H+1376>>2]|0;i=0}c[H+1380>>2]=h;if(c[C>>2]|0){if(i){i=0;h=(c[k>>2]|0)==2?0:c[F>>2]|0}else{i=c[H+1348>>2]|0;h=c[l>>2]|0}c[H+1368>>2]=i;c[H+1372>>2]=h}i=(c[m+1160>>2]|0)==0;f:do if(i)G=85;else{if(!(c[D>>2]|0)){G=85;break}switch(c[H+1392>>2]|0){case 2:case 1:{h=0;break f}case 4:case 3:case 0:{h=1;break f}case 6:case 5:{h=2;break f}case 7:{h=3;break f}case 8:{h=5;break f}default:{h=(c[k>>2]|0)==3&1;break f}}}while(0);if((G|0)==85)h=(c[k>>2]|0)==3&1;c[b+36>>2]=h;h=c[k>>2]|0;g:do if((h|0)==3){c[E>>2]=3;do if(!i){if(!(c[D>>2]|0))break;switch(c[H+1392>>2]|0){case 5:case 3:{h=2;break}case 6:case 4:{h=3;break}default:h=1}c[b+308>>2]=h;break g}while(0);i=c[F>>2]|0;h=c[j>>2]|0;if((i|0)<(h|0)){c[b+308>>2]=2;break}else{c[b+308>>2]=(i|0)>(h|0)?3:1;break}}else{l=(h|0)==1?1:2;c[E>>2]=l;j=c[n>>2]|0;k=H+1680|0;h=H+1684|0;h:do if((j|0)==(c[k>>2]|0)){i=c[h>>2]|0;switch(i|0){case 3:case 0:{G=100;break h}default:{}}if((i|0)==(l|0)){G=100;break}c[b+308>>2]=(i|0)==1?2:3}else G=100;while(0);if((G|0)==100)c[b+308>>2]=0;c[h>>2]=l;c[k>>2]=j}while(0);Se(I);break a}}}}else if((G|0)==104)if(n){Se(I);break a}else{c[u>>2]=g;We(e,16,155279,u);break}while(0);Se(I)}while(0);Ec=J;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=b+4|0;g=c[b>>2]|0;f=c[d>>2]|0;g=nW(f|0,((f|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;f=M()|0;e=c[h>>2]|0;d=c[d+4>>2]|0;e=nW(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;Mm(b,h,g,f,e,M()|0,2147483647,0)|0;e=b;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function dN(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;f=Cm(a,b,c,d,e,f,5)|0;L(M()|0);return f|0}function eN(a,b,e,f,g){a=a|0;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=Ec;Ec=Ec+16|0;k=l;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;m=i+1|0;c[f>>2]=m;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=m}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;We(g,16,155440,k);h=-1094995529}}else h=-11;Ec=l;return h|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=Ec;Ec=Ec+16|0;g=f;c[g>>2]=-1;e=($M(a+d|0,a+e+1|0,g)|0)-a+-1|0;Ec=f;return ((e|0)>(b|0)?b:e)|0}function gN(a,b,c){a=a|0;b=b|0;c=c|0;return rN(a,b,c>>>0>268435455?-8:c<<3)|0}function hN(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function iN(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function jN(a){a=a|0;var b=0,c=0,e=0;e=oN(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;pN(a,b);return (qN(a,b+1|0)|0)+-1|0}function kN(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[126412+a>>0]|0);return d[126924+a>>0]|0|0}function lN(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=Ec;Ec=Ec+16|0;g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(uW(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[120443+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){We(0,16,155802,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[126412+a>>0]|0);a=d[126924+a>>0]|0}while(0);Ec=h;return a|0}function mN(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(uW(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[126412+b>>0]|0);b=a[127436+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[120443+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function nN(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;s=Ec;Ec=Ec+20816|0;r=s+16|0;k=s+8|0;j=s;o=s+40|0;i=s+32|0;p=s+24|0;q=c[a+32>>2]&3;n=c[a>>2]|0;g=n+1200|0;if(c[(c[g>>2]|0)+60>>2]|0)lN(b)|0;l=(q|0)==3;if(l)hN(b)|0;m=n+1648|0;a:do if(($L(i,p,b,c[g>>2]|0,q,c[m>>2]|0,d)|0)>=0){if((q|0)!=1){f=0;while(1){if((f|0)>=(c[i>>2]|0))break;b:do if(hN(b)|0){h=p+(f<<2)|0;e=0;c:while(1){a=kN(b)|0;if(a>>>0<3){jN(b)|0;if((e|0)<(c[h>>2]|0))a=0;else{c[k>>2]=e;We(d,16,155363,k);a=1}}else if((a|0)==3)a=5;else{c[j>>2]=a;We(d,16,155324,j);a=1}switch(a&7){case 5:break b;case 0:break;default:break c}e=e+1|0}if(a|0){a=-1094995529;break a}}while(0);f=f+1|0}a=c[g>>2]|0;if((q|0)==2&(c[a+28>>2]|0)!=0)f=22;else f=21}else{a=c[g>>2]|0;f=21}if((f|0)==21?l&(c[a+32>>2]|0)==1:0)f=22;if((f|0)==22)bM(b,c[n+1204>>2]|0,p,q,o,c[m>>2]|0,d)|0;if(hN(b)|0){a=0;d:while(1){if((a|0)>=66){f=33;break}e=kN(b)|0;if(e>>>0>6){f=26;break}switch(e|0){case 5:{a=1;break a}case 0:{f=33;break d}default:{}}if((e|2|0)==3)jN(b)|0;switch(e|0){case 2:case 3:case 4:case 6:{kN(b)|0;break}default:{}}a=a+1|0}if((f|0)==26){c[r>>2]=e;We(d,16,155392,r);a=-1094995529;break}else if((f|0)==33){a=0;break}}else a=0}else a=-1094995529;while(0);Ec=s;return a|0}function oN(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=qN(d,32)|0;Ec=b;return a|0}function pN(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function qN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=iN(a,b)|0;break}else{b=b+-16|0;c=(iN(a,16)|0)<<b;a=c|(iN(a,b)|0);break}else a=0;while(0);return a|0}function rN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function sN(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;n=Ec;Ec=Ec+16|0;k=n+4|0;l=n;c[k>>2]=f;c[l>>2]=g;j=c[a>>2]|0;h=c[b+68>>2]|0;if(h|0?(i=j+1708|0,(c[i>>2]|0)==0):0){xN(h,c[b+72>>2]|0,j+64|0,j+460|0,j+1700|0,j+1704|0,c[b+580>>2]|0,1,b)|0;c[i>>2]=1}do if(!(c[a+176>>2]&1)){h=yN(a,f,g)|0;if((Ue(j,h,k,l)|0)<0){c[d>>2]=0;c[e>>2]=0;h=c[l>>2]|0;break}else{f=c[k>>2]|0;i=c[l>>2]|0;m=8;break}}else{h=g;i=g;m=8}while(0);if((m|0)==8){zN(a,f,i,b);c[d>>2]=c[k>>2];c[e>>2]=c[l>>2]}Ec=n;return h|0}function tN(a){a=a|0;a=c[a>>2]|0;vN(a+64|0);ph(a+40|0);wN(a+460|0);Se(a);return}function uN(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;n=Ec;Ec=Ec+16|0;l=n;k=d+e|0;c[l>>2]=-1;b=0;f=0;j=0;e=d;a:while(1)b:while(1){i=j&(f|0)!=0;c:while(1){h=(b|0)!=0;while(1){if(e>>>0>=k>>>0){b=0;break a}e=$M(e,k,l)|0;g=c[l>>2]|0;if((g&-256|0)!=256){b=0;break a}o=g>>>1;g=o&63;switch(o&63){case 32:{j=1;continue a}case 33:{f=1;continue b}case 34:{b=1;continue c}default:{}}if((g|0)!=35&(h|(g|0)!=39)&i){m=9;break a}}}}if((m|0)==9){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;m=9}else break}b=b-d|0}Ec=n;return b|0}function vN(a){a=a|0;var b=0;b=0;while(1){if((b|0)==16){b=0;break}Cf(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==16){b=0;break}Cf(a+64+(b<<2)|0);b=b+1|0}while(1){if((b|0)==64)break;Cf(a+128+(b<<2)|0);b=b+1|0}c[a+388>>2]=0;c[a+392>>2]=0;c[a+384>>2]=0;return}function wN(a){a=a|0;c[a+92>>2]=0;Se(a+96|0);return}function xN(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Ec;Ec=Ec+32|0;w=x+24|0;v=x+16|0;m=x;if((e|0)<=-1){c[m>>2]=159582;c[m+4>>2]=159596;c[m+8>>2]=137;We(0,0,164054,m);Za()}u=b+e|0;do if((e|0)>3){if(((a[b>>0]|0)==0?(a[b+1>>0]|0)==0:0)?(d[b+2>>0]|0)<=1:0){n=28;break}c[h>>2]=1;t=e>>>0<21?e:21;m=b+t|0;if((e-t|0)<1){t=1;m=u}else{t=(a[m>>0]&3)+1&255;m=m+1|0}b=m;if((u-m|0)<1){r=0;b=u}else{r=d[b>>0]|0;b=b+1|0}c[i>>2]=2;m=0;s=0;a:while(1){if((s|0)>=(r|0)){n=27;break}e=b;if((u-b|0)<1){q=0;b=u}else{q=a[e>>0]&63;b=e+1|0}if((u-b|0)<2){p=0;b=u}else{p=b;p=(tW(d[p>>0]|d[p+1>>0]<<8|0)|0)&65535;b=b+2|0}o=0;while(1){if((o|0)>=(p|0))break;e=b;n=u-b|0;if((n|0)<2)m=0;else{m=b;m=(tW(d[m>>0]|d[m+1>>0]<<8|0)|0)&65535}b=m+2|0;if(n>>>0<b>>>0){n=22;break a}m=KO(e,b,f,g,c[h>>2]|0,c[i>>2]|0,j,k,l)|0;if((m|0)<0){n=24;break a}o=o+1|0;b=e+(n>>>0>b>>>0?b:n)|0}s=s+1|0}if((n|0)==22){We(l,16,159620,v);m=-1094995529;break}else if((n|0)==24){c[w>>2]=q;c[w+4>>2]=s;We(l,16,159657,w);break}else if((n|0)==27){c[i>>2]=t;break}}else n=28;while(0);if((n|0)==28){c[h>>2]=0;m=KO(b,e,f,g,0,c[i>>2]|0,j,k,l)|0}Ec=x;return m|0}function yN(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=c[b>>2]|0;j=k+32|0;k=k+20|0;h=0;a:while(1){if((h|0)>=(f|0)){b=-100;break}b=j;g=c[b>>2]|0;b=c[b+4>>2]|0;o=sW(g|0,b|0,8)|0;n=M()|0;i=e+h|0;m=j;c[m>>2]=o|d[i>>0];c[m+4>>2]=n;b:do if((g&-65536|0)==65536&(b&255|0)==0){b=rW(g|0,b|0,9)|0;M()|0;g=b&63;switch(b&63){case 32:case 33:case 34:case 35:case 36:case 37:case 39:break;default:if(!((b&56|0)==48|(g+-41|0)>>>0<4)){if(!(g>>>0<10|(g+-16|0)>>>0<6))break b;if((a[i>>0]|0)>=0)break b;if(c[k>>2]|0){l=12;break a}c[k>>2]=1;break b}}if(c[k>>2]|0){l=12;break a}}while(0);h=h+1|0}if((l|0)==12){c[k>>2]=0;b=h+-5|0}return b|0}function zN(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;m=Ec;Ec=Ec+16|0;l=m;f=c[a>>2]|0;j=f+64|0;k=f+460|0;c[a+32>>2]=1;c[a+224>>2]=0;c[a+312>>2]=0;wN(k);i=f+40|0;a:do if((Jh(i,b,d,e,c[f+1700>>2]|0,c[f+1704>>2]|0,173,1)|0)>=0){d=f+56|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;f=c[i>>2]|0;g=f+(b*68|0)+24|0;h=c[f+(b*68|0)+44>>2]|0;switch(h|0){case 32:{AN(g,e,j)|0;break}case 33:{BN(g,e,j,1)|0;break}case 34:{CN(g,e,j)|0;break}case 40:case 39:{DN(g,e,k,j,h)|0;break}case 9:case 8:case 7:case 6:case 21:case 20:case 19:case 18:case 17:case 16:case 5:case 4:case 3:case 2:case 1:case 0:{if(EN(a,f+(b*68|0)|0,e)|0)break a;break}default:{}}b=b+1|0}We(e,16,155709,l)}while(0);Ec=m;return}function AN(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,w=0,x=0,y=0,z=0,A=0;A=Ec;Ec=Ec+96|0;v=A+80|0;t=A+72|0;q=A+64|0;o=A+56|0;n=A+48|0;m=A+40|0;l=A+32|0;k=A+24|0;j=A+16|0;i=A+8|0;y=A+84|0;w=wg(4568)|0;c[y>>2]=w;z=w;a:do if(!w)f=-12;else{x=w+4|0;s=c[x>>2]|0;We(d,48,159216,A);f=c[b>>2]|0;g=(c[b+4>>2]|0)-f|0;if(g>>>0>4096){c[i>>2]=g;c[i+4>>2]=4096;We(d,24,159230,i);g=4096;f=c[b>>2]|0}c[s+4564>>2]=g;wW(s+468|0,f|0,g|0)|0;u=kO(b,4)|0;b:do if((u|0)<=15){if((kO(b,2)|0)!=3){We(d,16,159275,k);break}c[s+4>>2]=(kO(b,6)|0)+1;r=s+8|0;c[r>>2]=(kO(b,3)|0)+1;a[s>>0]=jO(b)|0;if((kO(b,16)|0)!=65535){We(d,16,159314,l);break}f=c[r>>2]|0;if((f|0)>7){c[m>>2]=f;We(d,16,159354,m);break}if((AO(b,d,s+12|0,f)|0)>=0){m=jO(b)|0;c[s+348>>2]=m;if(!m)f=(c[r>>2]|0)+-1|0;else f=0;j=d+580|0;while(1){if((f|0)>=(c[r>>2]|0))break;i=s+352+(f<<2)|0;c[i>>2]=(iO(b)|0)+1;g=s+380+(f<<2)|0;c[g>>2]=iO(b)|0;c[s+408+(f<<2)>>2]=(iO(b)|0)+-1;i=(c[i>>2]|0)+-1|0;if(i>>>0>15){p=18;break}g=c[g>>2]|0;if(g>>>0>i>>>0?(c[o>>2]=g,We(d,24,159442,o),c[j>>2]&8|0):0)break b;f=f+1|0}if((p|0)==18){c[n>>2]=i;We(d,16,159391,n);break}j=s+436|0;c[j>>2]=kO(b,6)|0;p=iO(b)|0;f=p+1|0;k=s+440|0;c[k>>2]=f;if(p>>>0<=1023?(m=hW(f|0,((f|0)<0)<<31>>31|0,-1,-1)|0,o=M()|0,h=c[j>>2]|0,p=hW(h|0,((h|0)<0)<<31>>31|0,1,0)|0,o=nW(p|0,M()|0,m|0,o|0)|0,m=M()|0,p=qO(b)|0,n=((p|0)<0)<<31>>31,!((m|0)>(n|0)|(m|0)==(n|0)&o>>>0>p>>>0)):0){i=1;while(1){if((i|0)<(f|0)){g=0;f=h}else break;while(1){if((g|0)>(f|0))break;EO(b,1);g=g+1|0;f=c[j>>2]|0}i=i+1|0;h=f;f=c[k>>2]|0}q=(jO(b)|0)&255;a[s+444>>0]=q;c:do if(q<<24>>24){c[s+448>>2]=wO(b,32)|0;c[s+452>>2]=wO(b,32)|0;q=(jO(b)|0)&255;a[s+456>>0]=q;if(q<<24>>24)c[s+460>>2]=(iO(b)|0)+1;f=iO(b)|0;h=s+464|0;c[h>>2]=f;if(f>>>0>(c[k>>2]|0)>>>0){c[t>>2]=f;We(d,16,159519,t);break b}else g=0;while(1){if((g|0)>=(f|0))break c;iO(b)|0;if(!g)f=1;else f=jO(b)|0;FO(b,f,c[r>>2]|0);g=g+1|0;f=c[h>>2]|0}}while(0);jO(b)|0;f=qO(b)|0;if((f|0)<0){c[v>>2]=0-f;We(d,16,159557,v);f=e+(u<<2)|0;if(c[f>>2]|0)break}else{f=e+(u<<2)|0;g=c[f>>2]|0;if((g|0)!=0?(ZS(c[g+4>>2]|0,c[x>>2]|0,c[w+8>>2]|0)|0)==0:0){Cf(y);f=0;break a}}JO(e,u);c[f>>2]=z;f=0;break a}We(d,16,159485,q)}}else{c[j>>2]=u;We(d,16,156980,j)}while(0);Cf(y);f=-1094995529}while(0);Ec=A;return f|0}function BN(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;p=Ec;Ec=Ec+48|0;k=p+16|0;h=p+8|0;l=p+44|0;i=p+40|0;m=wg(17552)|0;c[l>>2]=m;n=m;do if(!m)f=-12;else{o=m+4|0;j=c[o>>2]|0;We(b,48,156765,p);f=c[a>>2]|0;g=(c[a+4>>2]|0)-f|0;if(g>>>0>4096){c[h>>2]=g;c[h+4>>2]=4096;We(b,24,156779,h);g=4096;f=c[a>>2]|0}c[j+17548>>2]=g;wW(j+13452|0,f|0,g|0)|0;f=yO(j,a,i,e,d,b)|0;if((f|0)<0){Cf(l);break}h=c[i>>2]|0;if(c[b+576>>2]&4|0){g=c[j+13376>>2]|0;a=c[j+13380>>2]|0;e=g-(c[j+12>>2]|0)-(c[j+16>>2]|0)|0;i=a-(c[j+20>>2]|0)-(c[j+24>>2]|0)|0;j=rg(c[j+56>>2]|0)|0;c[k>>2]=h;c[k+4>>2]=g;c[k+8>>2]=a;c[k+12>>2]=e;c[k+16>>2]=i;c[k+20>>2]=j;We(b,48,156824,k)}f=d+64+(h<<2)|0;g=c[f>>2]|0;if(g|0?(ZS(c[g+4>>2]|0,c[o>>2]|0,c[m+8>>2]|0)|0)==0:0){Cf(l);f=0;break}zO(d,h);c[f>>2]=n;f=0}while(0);Ec=p;return f|0}function CN(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,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=Ec;Ec=Ec+144|0;F=H+120|0;D=H+112|0;B=H+104|0;A=H+96|0;y=H+88|0;w=H+80|0;u=H+72|0;t=H+64|0;r=H+56|0;q=H+48|0;p=H+40|0;m=H+32|0;l=H+24|0;k=H+16|0;j=H+8|0;h=H;G=H+128|0;v=H+124|0;g=Of(5792)|0;c[v>>2]=g;a:do if(!g)f=-12;else{z=ng(g,5792,208,0,0)|0;c[G>>2]=z;E=z;if(!z){Se(v);f=-12;break}We(d,48,155978,h);h=c[b>>2]|0;i=(c[b+4>>2]|0)-h|0;if(i>>>0>4096){c[j>>2]=i;c[j+4>>2]=4096;We(d,24,155992,j);i=4096;h=c[b>>2]|0}c[g+5788>>2]=i;wW(g+1692|0,h|0,i|0)|0;a[g+53>>0]=1;s=g+44|0;c[s>>2]=1;n=g+48|0;c[n>>2]=1;o=g+52|0;a[o>>0]=1;a[g+57>>0]=0;c[g+60>>2]=0;c[g+64>>2]=0;a[g+1629>>0]=2;z=iO(b)|0;b:do if(z>>>0<=63){i=iO(b)|0;c[g>>2]=i;if(i>>>0>15){c[l>>2]=i;We(d,16,156062,l);f=-1094995529;break}h=c[e+64+(i<<2)>>2]|0;if(!h){c[m>>2]=i;We(d,16,156087,m);f=-1094995529;break}x=c[h+4>>2]|0;a[g+41>>0]=jO(b)|0;a[g+39>>0]=jO(b)|0;c[g+1624>>2]=kO(b,3)|0;a[g+4>>0]=jO(b)|0;a[g+5>>0]=jO(b)|0;c[g+8>>2]=(iO(b)|0)+1;c[g+12>>2]=(iO(b)|0)+1;c[g+16>>2]=lO(b)|0;a[g+20>>0]=jO(b)|0;a[g+21>>0]=jO(b)|0;m=(jO(b)|0)&255;a[g+22>>0]=m;h=g+24|0;c[h>>2]=0;do if(m<<24>>24){i=iO(b)|0;c[h>>2]=i;if((i|0)>=0?i>>>0<=(c[x+13324>>2]|0)>>>0:0)break;c[p>>2]=i;We(d,16,156111,p);f=-1094995529;break b}while(0);h=lO(b)|0;c[g+28>>2]=h;if((h+12|0)>>>0>24){c[q>>2]=h;We(d,16,156149,q);f=-1094995529;break}h=lO(b)|0;c[g+32>>2]=h;if((h+12|0)>>>0>24){c[r>>2]=h;We(d,16,156184,r);f=-1094995529;break}a[g+36>>0]=jO(b)|0;a[g+37>>0]=jO(b)|0;a[g+38>>0]=jO(b)|0;a[g+40>>0]=jO(b)|0;r=g+42|0;a[r>>0]=jO(b)|0;a[g+43>>0]=jO(b)|0;do if(a[r>>0]|0){c[s>>2]=(iO(b)|0)+1;h=iO(b)|0;i=h+1|0;c[n>>2]=i;j=c[s>>2]|0;if((j|0)>=1?(j|0)<(c[x+13376>>2]|0):0){if((i|0)>=1?(i|0)<(c[x+13380>>2]|0):0){l=g+1648|0;c[l>>2]=Mg(j,4)|0;u=Mg(c[n>>2]|0,4)|0;c[g+1652>>2]=u;if((c[l>>2]|0)==0|(u|0)==0){f=-12;break b}u=(jO(b)|0)&255;a[o>>0]=u;do if(!(u<<24>>24)){g=0;j=0;k=0;while(1){i=(c[s>>2]|0)+-1|0;if((g|0)>=(i|0))break;u=(iO(b)|0)+1|0;c[(c[l>>2]|0)+(g<<2)>>2]=u;u=hW(j|0,k|0,u|0,0)|0;g=g+1|0;j=u;k=M()|0}g=c[x+13384>>2]|0;h=((g|0)<0)<<31>>31;if(!(k>>>0<h>>>0|(k|0)==(h|0)&j>>>0<g>>>0)){We(d,16,156300,w);f=-1094995529;break b}g=iW(g|0,h|0,j|0,k|0)|0;M()|0;c[(c[l>>2]|0)+(i<<2)>>2]=g;g=c[v>>2]|0;i=g+48|0;j=g+1652|0;h=0;l=0;m=0;while(1){k=(c[i>>2]|0)+-1|0;if((h|0)>=(k|0))break;w=(iO(b)|0)+1|0;c[(c[j>>2]|0)+(h<<2)>>2]=w;w=hW(l|0,m|0,w|0,0)|0;h=h+1|0;l=w;m=M()|0}h=c[x+13388>>2]|0;i=((h|0)<0)<<31>>31;if(m>>>0<i>>>0|(m|0)==(i|0)&l>>>0<h>>>0){y=iW(h|0,i|0,l|0,m|0)|0;M()|0;c[(c[j>>2]|0)+(k<<2)>>2]=y;break}else{We(d,16,156322,y);f=-1094995529;break b}}while(0);a[g+53>>0]=jO(b)|0;break}c[u>>2]=h;We(d,16,156261,u);f=-1094995529;break b}c[t>>2]=j+-1;We(d,16,156219,t);f=-1094995529;break b}while(0);a[g+54>>0]=jO(b)|0;y=(jO(b)|0)&255;a[g+55>>0]=y;do if(y<<24>>24?(a[g+56>>0]=jO(b)|0,y=(jO(b)|0)&255,a[g+57>>0]=y,y<<24>>24==0):0){h=lO(b)|0;i=lO(b)|0;if((h+6|0)>>>0>12){c[A>>2]=h;We(d,16,156345,A);f=-1094995529;break b}if((i+6|0)>>>0>12){c[B>>2]=i;We(d,16,156384,B);f=-1094995529;break b}else{c[g+60>>2]=h<<1;c[g+64>>2]=i<<1;break}}while(0);B=(jO(b)|0)&255;a[g+68>>0]=B;if(B<<24>>24?(mO(g+69|0),f=nO(b,d,g+69|0,x)|0,(f|0)<0):0)break;a[g+1617>>0]=jO(b)|0;f=iO(b)|0;if(f>>>0>(c[x+13336>>2]|0)>>>0){c[D>>2]=f;We(d,16,156421,D);f=-1094995529;break}c[g+1620>>2]=f+2;a[g+1628>>0]=jO(b)|0;if((jO(b)|0?(D=jO(b)|0,kO(b,7)|0,(D|0)!=0&(a[x+302>>0]|0)==4):0)?(C=oO(b,d,g,x)|0,(C|0)<0):0){f=C;break}f=pO(g,x)|0;if((f|0)>=0){g=qO(b)|0;if((g|0)<0){c[F>>2]=0-g;We(d,16,156472,F);break}else{rO(e,z);c[e+128+(z<<2)>>2]=E;f=0;break a}}}else{c[k>>2]=z;We(d,16,156037,k);f=-1094995529}while(0);Cf(G)}while(0);Ec=H;return f|0}function DN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;while(1){f=KN(a,b,c,d,e)|0;if((f|0)<0)break;if(!(LN(a)|0)){f=1;break}}return f|0}function EN(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=Ec;Ec=Ec+32|0;u=y+24|0;s=y+16|0;j=y+8|0;i=y;w=c[b>>2]|0;t=e+24|0;o=w+628|0;a[o>>0]=FN(t)|0;v=c[w+548>>2]|0;c[b+312>>2]=v;c[b+308>>2]=v;v=e+44|0;if((c[v>>2]&-8|0)==16){c[b+224>>2]=1;a[w+1242>>0]=FN(t)|0}g=GN(t)|0;c[w+608>>2]=g;a:do if(g>>>0<=63?(h=c[w+192+(g<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;r=w+456|0;c[r>>2]=g;g=c[g>>2]|0;if(g>>>0<=15?(k=c[w+128+(g<<2)>>2]|0,k|0):0){q=w+452|0;h=c[q>>2]|0;g=c[k+4>>2]|0;if((h|0)==(g|0)){g=h;h=c[w+448>>2]|0}else{c[q>>2]=g;h=c[(c[w+64+(c[g>>2]<<2)>>2]|0)+4>>2]|0;c[w+448>>2]=h}j=c[g+13376>>2]|0;c[b+328>>2]=j;k=c[g+13380>>2]|0;c[b+332>>2]=k;c[b+320>>2]=j-(c[g+12>>2]|0)-(c[g+16>>2]|0);c[b+324>>2]=k-(c[g+20>>2]|0)-(c[g+24>>2]|0);c[b+336>>2]=c[g+56>>2];c[f+716>>2]=d[g+302>>0];c[f+720>>2]=d[g+335>>0];if(!(a[h+444>>0]|0)){if(c[g+240>>2]|0){m=g+244|0;n=g+248|0;x=16}}else{m=h+448|0;n=h+452|0;x=16}if((x|0)==16?(l=c[m>>2]|0,p=c[n>>2]|0,(l|0)!=0&(p|0)!=0):0)Mm(f+764|0,f+760|0,l,((l|0)<0)<<31>>31,p,((p|0)<0)<<31>>31,1073741824,0)|0;do if(!(a[o>>0]|0)){if(!(a[(c[r>>2]|0)+41>>0]|0))g=0;else g=(FN(t)|0)&255;k=w+629|0;a[k>>0]=g;h=c[q>>2]|0;i=c[h+13384>>2]|0;h=c[h+13388>>2]|0;g=(H(i<<1,h)|0)+-2|0;o=g>>>0>65535;g=o?g>>>16:g;o=o?16:0;p=(g&65280|0)==0;g=(p?o:o|8)+(d[120443+(p?g:g>>>8)>>0]|0)|0;if(!g){j=0;g=i}else{j=HN(t,g)|0;g=c[q>>2]|0;h=c[g+13388>>2]|0;g=c[g+13384>>2]|0}c[w+612>>2]=j;if(j>>>0<(H(h,g)|0)>>>0)if(!(a[k>>0]|0)){g=0;break}else{g=0;break a}else{c[s>>2]=j;We(f,16,155741,s);g=-1094995529;break a}}else{a[w+629>>0]=0;g=0}while(0);while(1){if((g|0)>=(c[(c[r>>2]|0)+1624>>2]|0))break;IN(t);g=g+1|0}g=GN(t)|0;c[w+620>>2]=g;if(g>>>0>=3){c[u>>2]=g;We(f,16,155777,u);g=-1094995529;break}c[b+32>>2]=(g|0)==0?3:(g|0)==1?2:1;if(a[(c[r>>2]|0)+39>>0]|0)a[w+630>>0]=FN(t)|0;if(a[(c[q>>2]|0)+8>>0]|0)a[w+631>>0]=HN(t,2)|0;if(((c[v>>2]|0)+-19|0)>>>0<2)g=0;else{g=HN(t,c[(c[q>>2]|0)+60>>2]|0)|0;c[w+624>>2]=g;g=JN(c[q>>2]|0,c[w+1716>>2]|0,g,c[v>>2]|0)|0}c[w+1712>>2]=g;c[b+316>>2]=g;if(c[e+48>>2]|0){g=1;break}switch(c[v>>2]|0){case 9:case 7:case 8:case 6:case 4:case 2:case 0:{g=1;break a}default:{}}c[w+1716>>2]=g;g=1;break}c[j>>2]=g;We(f,16,156062,j);g=-1094995529}else x=5;while(0);if((x|0)==5){c[i>>2]=g;We(f,16,156037,i);g=-1094995529}Ec=y;return g|0}function FN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function GN(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=Ec;Ec=Ec+16|0;h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[120443+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){We(0,16,155802,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[126412+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[126924+a>>0]|0}while(0);Ec=i;return a|0}function HN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function IN(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function JN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=1<<c[a+60>>2];g=(b|0)%(f|0)|0;a=b-g|0;if((g|0)>(d|0)?(g-d|0)>=((f|0)/2|0|0):0)a=a+f|0;else if((g|0)<(d|0))a=a-((d-g|0)>((f|0)/2|0|0)?f:0)|0;return ((e+-16|0)>>>0<3?0:a)+d|0}function KN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=Ec;Ec=Ec+16|0;We(b,48,155826,j);f=255;h=0;while(1){if((f|0)!=255){f=0;g=255;i=5;break}if((h|0)>2147483392|(MN(a)|0)<16){f=-1094995529;break}g=PN(a,8)|0;f=g;h=g+h|0}a:do if((i|0)==5){while(1){if((g|0)!=255)break;i=MN(a)|0;k=((i|0)<0)<<31>>31;g=sW(f|0,((f|0)<0)<<31>>31|0,3)|0;g=hW(g|0,M()|0,8,0)|0;l=M()|0;if((l|0)>(k|0)|(l|0)==(k|0)&g>>>0>i>>>0){f=-1094995529;break a}g=PN(a,8)|0;f=g+f|0;i=5}if((e|0)==39){f=QN(a,b,c,d,h,f)|0;break}else{RN(a,b,c,h,f);f=0;break}}while(0);Ec=j;return f|0}function LN(a){a=a|0;if((MN(a)|0)>0)a=(NN(a)|0)!=128&1;else a=0;return a|0}function MN(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(ON(a)|0)|0}function NN(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>24|0}function ON(a){a=a|0;return c[a+8>>2]|0}function PN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function QN(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=Ec;Ec=Ec+16|0;h=i;do switch(f|0){case 256:{SN(d,a);a=0;break}case 45:{VN(d+52|0,a);a=0;break}case 47:{WN(d+72|0,a);a=0;break}case 1:{a=XN(d,a,e,b,g)|0;break}case 137:{YN(d+100|0,a);a=0;break}case 144:{ZN(d+128|0,a);a=0;break}case 129:{a=_N(d,a,b)|0;break}case 4:{a=$N(d,a,g)|0;break}case 147:{aO(d+140|0,a);a=0;break}default:{c[h>>2]=f;We(b,48,155863,h);TN(a,g<<3);a=0}}while(0);Ec=i;return a|0}function RN(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=Ec;Ec=Ec+16|0;g=h;if((e|0)==132)SN(d,a);else{c[g>>2]=e;We(b,48,155840,g);TN(a,f<<3)}Ec=h;return}function SN(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=(PN(c,8)|0)&255;f=b+48|0;d=0;while(1){if((d|0)==3)break;a:do switch(g<<24>>24){case 0:{a[f>>0]=1;e=0;while(1){if((e|0)==16)break a;a[b+(d<<4)+e>>0]=PN(c,8)|0;e=e+1|0}}case 1:{UN(c,16);break}case 2:{UN(c,32);break}default:{}}while(0);d=d+1|0}return}
function tk(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<<c[b+21828>>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=140232;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?140328:140296;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=140264;h=i}else d=140328;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function uk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[125581+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[126221+f>>0]|0;h=c[g>>2]|0;e=d[125069+h>>0]|0;c[g>>2]=h<<e;e=c[b>>2]<<e;c[b>>2]=e;if(!(e&65535))Mk(b);return f&1|0}function vk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+32904+b|0;if(!d){b=a+32856|0;if(!(uk(b,f)|0))b=0;else{e=b;g=4}}else{b=(c[a+21740>>2]&6|0)!=0;e=a+32856|0;if(!(uk(e,f+((c[a+21732>>2]&6|0)==0?b&1:b?2:1)|0)|0))b=0;else{f=f+2|0;g=4}}if((g|0)==4)if(!(Nk(e)|0)){b=(uk(e,f+1|0)|0)*12|1;if(uk(e,f+2|0)|0)b=b+4+((uk(e,f+(d+2)|0)|0)<<2)|0;b=((uk(e,f+(d+3)|0)|0)<<1)+b|0;b=b+(uk(e,f+((d<<1)+3)|0)|0)|0}else b=25;return b|0}function wk(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,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0;Ga=Ec;Ec=Ec+16|0;wa=Ga+8|0;xa=Ga;ya=c[g+21748>>2]|0;Ea=c[g+21708>>2]|0;na=c[g+21712>>2]|0;oa=c[g+21716>>2]|0;pa=c[g+21720>>2]|0;c[wa>>2]=pa;qa=c[g+21724>>2]|0;c[wa+4>>2]=qa;ra=c[g+21728>>2]|0;sa=c[g+21732>>2]|0;ta=c[g+21736>>2]|0;ua=c[g+21740>>2]|0;c[xa>>2]=ua;va=c[g+21744>>2]|0;c[xa+4>>2]=va;if(!(h&2048)){t=(h&7|0)!=0;a:do if(t){p=c[(c[f+28212>>2]|0)+56>>2]|0?7:-1;k=g+21768|0;c[k>>2]=65535;i=g+21760|0;c[i>>2]=65535;m=g+21756|0;c[m>>2]=65535;n=g+21764|0;c[n>>2]=61162;o=(p&sa|0)!=0;if(o){i=65535;l=60138}else{c[m>>2]=46079;c[i>>2]=13311;c[n>>2]=9962;i=46079;l=8938}j=h&128;do if((j|0)==(ua&128|0)){if(!(ua&p)){i=i&57183;c[m>>2]=i;c[k>>2]=24415}}else{if(!j){if(!((ua&p|0)==0?1:(c[(c[f+24364>>2]|0)+((c[f+27016>>2]|0)+pa<<2)>>2]&p|0)==0))break;i=i&57183;c[m>>2]=i;c[k>>2]=24415;break}if(!(ua&p)){i=i&57343;c[m>>2]=i;c[k>>2]=24575;j=24415}else j=65375;if(!(va&p)){i=i&65375;c[m>>2]=i;c[k>>2]=j}}while(0);if(!(p&ra))c[m>>2]=i&32767;if(!(p&ta))c[n>>2]=l;if(h&1|0){if(!(sa&1)){yW(g+21668|0,(o?2:-1)|0,4)|0;l=g+21704|0;m=f+26364|0}else{l=g+21704|0;m=f+26364|0;c[g+21668>>2]=c[(c[l>>2]|0)+(c[(c[m>>2]|0)+(na<<2)>>2]|0)>>2]}k=0;while(1){if((k|0)==2)break a;i=c[xa+(k<<2)>>2]|0;if(!(i&1)){i=(i&p|0)==0?-1:2;j=k<<4;a[j+19+(g+21664)>>0]=i;j=j|11}else{ma=(c[l>>2]|0)+(c[(c[m>>2]|0)+(c[wa+(k<<2)>>2]<<2)>>2]|0)|0;i=k<<1;j=k<<4;a[(j|11)+(g+21664)>>0]=a[ma+(6-(d[ya+i>>0]|0))>>0]|0;i=a[ma+(6-(d[ya+(i|1)>>0]|0))>>0]|0;j=j+19|0}a[g+21664+j>>0]=i;k=k+1|0}}}while(0);s=(sa|0)!=0;if(s){r=f+25972|0;i=c[r>>2]|0;c[g+27828>>2]=c[i+(na*48|0)+12>>2];ma=(c[f+25680>>2]|0)==0;c[g+27868>>2]=c[(ma?28:20)+(i+(na*48|0))>>2];i=c[(ma?44:36)+(i+(na*48|0))>>2]|0}else{i=t?1077952576:0;c[g+27828>>2]=i;c[g+27868>>2]=i;r=f+25972|0}c[g+27908>>2]=i;p=t?64:0;q=f+28216|0;o=0;while(1){if((o|0)==2)break;if(!(c[xa+(o<<2)>>2]|0)){j=o<<4;a[j+99+(g+27824)>>0]=p;a[j+91+(g+27824)>>0]=p;a[j+59+(g+27824)>>0]=p;a[j+51+(g+27824)>>0]=p;a[j+19+(g+27824)>>0]=p;j=j|11;i=p}else{m=c[r>>2]|0;n=c[wa+(o<<2)>>2]|0;i=o<<1;k=ya+(i+8)|0;j=o<<4;a[(j|11)+(g+27824)>>0]=a[(d[k>>0]|0)+(m+(n*48|0))>>0]|0;l=ya+(i+9)|0;a[j+19+(g+27824)>>0]=a[(d[l>>0]|0)+(m+(n*48|0))>>0]|0;switch(c[(c[q>>2]|0)+12>>2]|0){case 3:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+16+(m+(n*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[l>>0]|0)+16+(m+(n*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+32+(m+(n*48|0))>>0]|0;l=(d[l>>0]|0)+32|0;i=j+99|0;break}case 2:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+14+(m+(n*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[l>>0]|0)+14+(m+(n*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+30+(m+(n*48|0))>>0]|0;i=(d[l>>0]|0)+30|0;k=99;u=39;break}default:{j=o<<3;a[j+51+(g+27824)>>0]=a[(d[ya+(i+12)>>0]|0)+(m+(n*48|0))>>0]|0;i=d[ya+(i+13)>>0]|0;k=91;u=39}}if((u|0)==39){u=0;l=i;i=k+j|0}j=i;i=a[m+(n*48|0)+l>>0]|0}a[g+27824+j>>0]=i;o=o+1|0}if(s)i=e[(c[f+26392>>2]|0)+(na<<1)>>1]|0;else i=t?1999:15;c[g+21860>>2]=i;if(!ua)i=t?1999:15;else{i=c[f+26392>>2]|0;ma=e[i+(pa<<1)>>1]|0;i=ma>>>(a[ya>>0]&-2&255)&2|ma&2032|(e[i+(qa<<1)>>1]|0)>>>(a[ya+2>>0]&-2&255)<<2&8}c[g+21864>>2]=i}if(!(h&120)){if(h&256|0?c[g+21844>>2]|0:0)u=53}else u=53;b:do if((u|0)==53){w=c[f+26368>>2]|0;x=g+23412|0;y=f+26360|0;z=w*3|0;B=na<<2;A=B|2;B=B|3;C=(h&80|0)==0;D=ua|0?-1:-2;E=pa<<2|1;F=ta|0?-1:-2;G=ra|0?-1:-2;I=g+21752|0;J=w<<1;K=w+3|0;L=Ea<<2;M=(h&2304|0)==0;N=f+26364|0;O=g+840|0;P=g+28524|0;Q=f+26408|0;R=g+28532|0;S=g+28548|0;T=g+28540|0;U=(sa&256|0)==0;V=(sa&64|0)==0;W=g+28516|0;X=g+28518|0;Y=g+28523|0;Z=qa<<2|1;_=ya+2|0;$=g+28539|0;aa=ya+3|0;ba=ya+1|0;ca=f+26376|0;da=g+21828|0;ea=(ra&128|0)!=0;fa=(sa&128|0)==0;ga=(ta&128|0)==0;ha=(ua&128|0)==0;ia=(va&128|0)==0;ja=oa<<2|2;ka=sa|0?-1:-16843010;la=(ua&320|0)==64;u=ua&256|0?-128:4;ma=(va&320|0)==64;v=va&256|0?-128:4;t=0;while(1){if(t>>>0>=(c[x>>2]|0)>>>0)break b;n=g+28272+(t*40|0)+12|0;p=c[f+24384+(t<<2)>>2]|0;o=g+27952+(t*160|0)+48|0;q=c[f+24352+(t<<2)>>2]|0;s=12288<<(t<<1);do if(s&h|0){r=(s&sa|0)!=0;if(r){k=(c[(c[y>>2]|0)+(na<<2)>>2]|0)+z|0;j=q+(k<<2)|0;m=c[j+4>>2]|0;l=g+27952+(t*160|0)+16|0;c[l>>2]=c[j>>2];c[l+4>>2]=m;k=q+(k<<2)+8|0;l=c[k+4>>2]|0;m=g+27952+(t*160|0)+24|0;c[m>>2]=c[k>>2];c[m+4>>2]=l;m=a[p+A>>0]|0;a[g+28272+(t*40|0)+5>>0]=m;a[g+28272+(t*40|0)+4>>0]=m;m=a[p+B>>0]|0;a[g+28272+(t*40|0)+7>>0]=m;a[g+28272+(t*40|0)+6>>0]=m}else{m=g+27952+(t*160|0)+16|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[g+28272+(t*40|0)+4>>2]=ka}c:do if(C){if(!(ua&s)){c[g+27952+(t*160|0)+44>>2]=0;i=D}else{c[g+27952+(t*160|0)+44>>2]=c[q+((c[(c[y>>2]|0)+(pa<<2)>>2]|0)+3+(H(w,d[ya>>0]|0)|0)<<2)>>2];i=a[p+(E+(a[ya>>0]&-2&255))>>0]|0}a[g+28272+(t*40|0)+11>>0]=i}else{m=0;while(1){if((m|0)==2)break c;j=m<<1;k=m<<4;i=k+-1|0;l=c[xa+(m<<2)>>2]|0;if(!(l&s)){c[o+(i<<2)>>2]=0;k=k|7;c[o+(k<<2)>>2]=0;j=l|0?-1:-2;a[n+k>>0]=j}else{Ha=c[wa+(m<<2)>>2]|0;Ja=(c[(c[y>>2]|0)+(Ha<<2)>>2]|0)+3|0;Ha=Ha<<2|1;Ia=ya+j|0;c[o+(i<<2)>>2]=c[q+((H(w,d[Ia>>0]|0)|0)+Ja<<2)>>2];j=ya+(j|1)|0;l=k|7;c[o+(l<<2)>>2]=c[q+((H(w,d[j>>0]|0)|0)+Ja<<2)>>2];a[n+i>>0]=a[p+(Ha+(a[Ia>>0]&-2&255))>>0]|0;j=a[p+(Ha+(a[j>>0]&-2&255))>>0]|0;i=l}a[n+i>>0]=j;m=m+1|0}}while(0);if(!(s&ta)){c[g+27952+(t*160|0)+32>>2]=0;i=F}else{c[g+27952+(t*160|0)+32>>2]=c[q+((c[(c[y>>2]|0)+(oa<<2)>>2]|0)+z<<2)>>2];i=a[p+ja>>0]|0}m=g+28272+(t*40|0)+8|0;a[m>>0]=i;l=g+28272+(t*40|0)+6|0;if((a[l>>0]|i)<<24>>24<0){if(!(s&ra)){c[g+27952+(t*160|0)+12>>2]=0;i=G}else{i=c[I>>2]|0;c[g+27952+(t*160|0)+12>>2]=c[q+(K+(c[(c[y>>2]|0)+(Ea<<2)>>2]|0)+(i&J)<<2)>>2];i=a[p+(L|i&2|1)>>0]|0}a[g+28272+(t*40|0)+3>>0]=i}if(M){k=c[g+32848+(t<<2)>>2]|0;a[g+28272+(t*40|0)+30>>0]=-2;a[g+28272+(t*40|0)+14>>0]=-2;c[g+27952+(t*160|0)+56>>2]=0;c[g+27952+(t*160|0)+120>>2]=0;if(r){j=k+(c[(c[N>>2]|0)+(na<<2)>>2]<<1)|0;i=c[j>>2]|0;j=c[j+4>>2]|0}else{i=0;j=0}Ja=g+28352+(t*80|0)+8|0;c[Ja>>2]=i;c[Ja+4>>2]=j;if(!(ua&s)){b[g+28352+(t*80|0)+22>>1]=0;i=0}else{i=(c[(c[N>>2]|0)+(pa<<2)>>2]|0)+6|0;b[g+28352+(t*80|0)+22>>1]=b[k+(i-(d[ya>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[ba>>0]|0)<<1)>>1]|0}b[g+28352+(t*80|0)+38>>1]=i;if(!(va&s)){b[g+28352+(t*80|0)+54>>1]=0;i=0}else{i=(c[(c[N>>2]|0)+(qa<<2)>>2]|0)+6|0;b[g+28352+(t*80|0)+54>>1]=b[k+(i-(d[_>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[aa>>0]|0)<<1)>>1]|0}b[g+28352+(t*80|0)+70>>1]=i;b[g+28352+(t*80|0)+28>>1]=0;b[g+28352+(t*80|0)+60>>1]=0;if((c[O>>2]|0)==3){j=c[Q>>2]|0;c[P>>2]=67372036;c[R>>2]=67372036;c[T>>2]=67372036;c[S>>2]=67372036;do if(U)if(V){c[W>>2]=67372036;break}else{a[W>>0]=a[j+A>>0]|0;a[X>>0]=a[j+B>>0]|0;break}else c[W>>2]=-2139062144;while(0);if(la)i=a[j+(E+(a[ya>>0]&-2&255))>>0]|0;else i=u;a[Y>>0]=i;if(ma)i=a[j+(Z+(a[_>>0]&-2&255))>>0]|0;else i=v;a[$>>0]=i}if(!(c[ca>>2]|0))break}else if(!(c[ca>>2]|0))break;if(!(c[da>>2]|0)){if(ea?(Ca=g+28272+(t*40|0)+3|0,Da=a[Ca>>0]|0,Da<<24>>24>-1):0){a[Ca>>0]=(Da&255)>>>1;Ja=g+27952+(t*160|0)+14|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+7|0;a[Ja>>0]=d[Ja>>0]<<1}do if(!fa){i=g+28272+(t*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ja=g+27952+(t*160|0)+18|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+9|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ja=g+27952+(t*160|0)+22|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+11|0;a[Ja>>0]=d[Ja>>0]<<1}i=a[l>>0]|0;if(i<<24>>24>-1){a[l>>0]=(i&255)>>>1;Ja=g+27952+(t*160|0)+26|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+13|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ja=g+27952+(t*160|0)+30|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+15|0;a[Ja>>0]=d[Ja>>0]<<1}while(0);if(!ga?(Fa=a[m>>0]|0,Fa<<24>>24>-1):0){a[m>>0]=(Fa&255)>>>1;Ja=g+27952+(t*160|0)+34|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+17|0;a[Ja>>0]=d[Ja>>0]<<1}do if(!ha){i=g+28272+(t*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ja=g+27952+(t*160|0)+46|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+23|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ja=g+27952+(t*160|0)+78|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+39|0;a[Ja>>0]=d[Ja>>0]<<1}while(0);if(ia)break;i=g+28272+(t*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ja=g+27952+(t*160|0)+110|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+55|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ja=g+27952+(t*160|0)+142|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+71|0;a[Ja>>0]=d[Ja>>0]<<1;break}else{if(!ea?(za=g+28272+(t*40|0)+3|0,Aa=a[za>>0]|0,Aa<<24>>24>-1):0){a[za>>0]=Aa<<24>>24<<1;Ja=g+27952+(t*160|0)+14|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+7|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}do if(fa){i=g+28272+(t*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+18|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+9|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+22|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+11|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=a[l>>0]|0;if(i<<24>>24>-1){a[l>>0]=i<<24>>24<<1;Ja=g+27952+(t*160|0)+26|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+13|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+30|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+15|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}while(0);if(ga?(Ba=a[m>>0]|0,Ba<<24>>24>-1):0){a[m>>0]=Ba<<24>>24<<1;Ja=g+27952+(t*160|0)+34|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+17|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}do if(ha){i=g+28272+(t*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+46|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+23|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+78|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+39|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}while(0);if(!ia)break;i=g+28272+(t*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+110|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+55|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+142|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+71|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1;break}}while(0);t=t+1|0}}while(0);c[g+21840>>2]=(ua>>>24&1)+(sa>>>24&1);Ec=Ga;return}function xk(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+32856|0;if(!(Gk(c,a+32972|0)|0)){a=a+32973|0;d=Gk(c,a)|0;d=((Gk(c,a)|0)<<1)+d|0;c=d+((Gk(c,a)|0)<<2)|0;b=c+((c|0)>=(b|0)&1)|0}return b|0}function yk(b,d){b=b|0;d=d|0;var e=0;if(!(c[d+21740>>2]|0))e=0;else e=(a[(c[b+26396>>2]|0)+(c[d+21720>>2]|0)>>0]|0)!=0&1;if(c[d+21732>>2]|0)e=e+((a[(c[b+26396>>2]|0)+(c[d+21712>>2]|0)>>0]|0)!=0&1)|0;b=d+32856|0;if(uk(b,e+64+(d+32904)|0)|0){e=d+32971|0;if(!(uk(b,e)|0))e=1;else{e=(uk(b,e)|0)==0;e=e?2:3}}else e=0;return e|0}function zk(a){a=a|0;var b=0,c=0,d=0;d=a+32856|0;if(!(Gk(d,a+32940|0)|0))a=0;else{do if(!(Gk(d,a+32941|0)|0)){b=Gk(d,a+32943|0)|0;a=1}else{c=a+32943|0;if(Gk(d,a+32942|0)|0)if(!(Gk(d,c)|0))a=7;else{b=Gk(d,c)|0;a=11;break}else a=3;b=((Gk(d,c)|0)<<1)+a|0;a=Gk(d,c)|0}while(0);a=b+a|0}return a|0}function Ak(a){a=a|0;var b=0;b=a+32856|0;if(!(Gk(b,a+32925|0)|0))if(!(Gk(b,a+32926|0)|0))a=1;else{a=(Gk(b,a+32927|0)|0)==0;a=a?3:2}else a=0;return a|0}function Bk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d[150645+f>>0]|0;g=i+-1|0;i=i+-8|0;h=a[b+28272+(e*40|0)+i>>0]|0;f=(a[b+28272+(e*40|0)+g>>0]|0)>0;if((c[b+840>>2]|0)==3){if(f)f=((d[b+28512+g>>0]|0)>>>7^1)&255;else f=0;if(h<<24>>24>0)e=(a[b+28512+i>>0]|0)<0?f:f|2;else e=f}else{e=f&1;e=h<<24>>24>0?e|2:e}g=b+32856|0;f=0;while(1){if(!(Gk(g,e+54+(b+32904)|0)|0))break;if((f|0)>30){f=-1;break}else{f=f+1|0;e=(e>>2)+4|0}}return f|0}function Ck(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Dk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+16|0;g=j;i=a+32856|0;do if(!(Gk(i,b+2+(d+-3>>31)+(d+-33>>31)+(a+32904)|0)|0)){c[e>>2]=0;d=0}else{f=1;d=b+3|0;while(1){if((f|0)>=9){d=3;h=7;break}if(!(Gk(i,a+32904+d|0)|0)){b=f;d=f;break}b=d+((f|0)<4&1)|0;f=f+1|0;d=b}if((h|0)==7){while(1){h=0;if(!(Lk(i)|0)){b=d;break}f=(1<<d)+f|0;if((d|0)>23){h=12;break}else{d=d+1|0;h=7}}if((h|0)==12){We(c[(c[a>>2]|0)+4>>2]|0,16,140199,g);d=-2147483648;break}while(1){d=b+-1|0;if(!b)break;b=d;f=((Lk(i)|0)<<d)+f|0}b=f;d=(f|0)<70?f:70}c[e>>2]=d;d=c[i>>2]<<1;c[i>>2]=d;if(!(d&65534)){Kk(i);d=c[i>>2]|0}e=c[a+32860>>2]<<17;a=d-e|0;d=a>>31;c[i>>2]=(d&e)+a;d=(d^0-b)-d|0}while(0);Ec=j;return d|0}function Ek(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+21864>>2]|0;f=c[a+21860>>2]|0;d=a+32856|0;e=uk(d,76-(f>>>1&2|b>>>1&1)+(a+32904)|0)|0;e=((uk(d,76-(f>>>2&2|e&1)+(a+32904)|0)|0)<<1)+e|0;b=e+((uk(d,76-(e<<1&2|b>>>3&1)+(a+32904)|0)|0)<<2)|0;return b+((uk(d,76-(b>>>2&1|b&2)+(a+32904)|0)|0)<<3)|0}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a+21864>>2]|0)>>>4&3;e=(c[a+21860>>2]|0)>>>4&3;f=(b|0)!=0&1;d=a+32856|0;f=(uk(d,((e|0)==0?f:f|2)+77+(a+32904)|0)|0)==0;b=(b|0)==2?5:4;if(f)b=0;else b=(uk(d,((e|0)==2?b|2:b)+77+(a+32904)|0)|0)+1|0;return b|0}function Gk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[125581+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[126221+f>>0]|0;h=c[g>>2]|0;e=d[125069+h>>0]|0;c[g>>2]=h<<e;e=c[b>>2]<<e;c[b>>2]=e;if(!(e&65535))Mk(b);return f&1|0}function Hk(f,g,h,i,j,k,l){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=Ec;Ec=Ec+304|0;t=A+48|0;u=A;z=g+32860|0;r=u+4|0;c[r>>2]=c[z>>2];w=g+32856|0;c[u>>2]=c[w>>2];x=g+32872|0;y=u+16|0;c[y>>2]=c[x>>2];q=c[g+21828>>2]|0;p=(c[72596+(q*56|0)+(i<<2)>>2]|0)+(g+32904)|0;q=(c[72708+(q*56|0)+(i<<2)>>2]|0)+(g+32904)|0;s=(c[72820+(i<<2)>>2]|0)+(g+32904)|0;o=l+-1|0;n=0;m=0;while(1){if((n|0)>=(o|0)){v=6;break}if(Gk(u,p+n|0)|0){l=m+1|0;c[t+(m<<2)>>2]=n;if(!(Gk(u,q+n|0)|0))m=l;else{m=l;break}}n=n+1|0}if((v|0)==6)if((n|0)==(o|0)){c[t+(m<<2)>>2]=o;m=m+1|0}q=(i|0)==3;i=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[i>>1]=(q?64:256)<<(q?-49:-48)+j|(e[i>>1]|0);a[(d[150645+j>>0]|0)+(g+27824)>>0]=m;if(!(c[f+25664>>2]|0)){q=m;l=0;while(1){q=q+-1|0;f=d[k+(c[t+(q<<2)>>2]|0)>>0]|0;if(!(Gk(u,s+(d[140033+l>>0]|0)|0)|0)){m=d[140041+l>>0]|0;l=c[u>>2]<<1;c[u>>2]=l;if(!(l&65534)){Kk(u);l=c[u>>2]|0}j=c[r>>2]|0;p=j<<17;l=l-p|0;o=l>>31;l=(o&p)+l|0;c[u>>2]=l;p=m;n=~o;m=j}else{m=s+(d[140057+l>>0]|0)|0;p=d[140049+l>>0]|0;l=2;while(1){if(l>>>0>=15){l=0;v=34;break}if(!(Gk(u,m)|0))break;l=l+1|0}if((v|0)==34){while(1){v=0;if((l|0)<23&(Lk(u)|0)!=0){l=l+1|0;v=34}else{m=1;break}}while(1){if(!l)break;l=l+-1|0;m=(Lk(u)|0)+(m<<1)|0}l=m+14|0}m=c[u>>2]<<1;c[u>>2]=m;if(!(m&65534)){Kk(u);m=c[u>>2]|0}j=c[r>>2]|0;n=j<<17;m=m-n|0;o=m>>31;m=(o&n)+m|0;c[u>>2]=m;n=o^0-l;l=m;m=j}b[h+(f<<1)>>1]=n-o;if(!q)break;else l=p}}else{l=0;q=m;while(1){q=q+-1|0;f=d[k+(c[t+(q<<2)>>2]|0)>>0]|0;if(!(Gk(u,s+(d[140033+l>>0]|0)|0)|0)){m=d[140041+l>>0]|0;l=c[u>>2]<<1;c[u>>2]=l;if(!(l&65534)){Kk(u);l=c[u>>2]|0}j=c[r>>2]|0;p=j<<17;l=l-p|0;o=l>>31;l=(o&p)+l|0;c[u>>2]=l;p=m;n=~o;m=j}else{m=s+(d[140057+l>>0]|0)|0;p=d[140049+l>>0]|0;l=2;while(1){if(l>>>0>=15){l=0;v=18;break}if(!(Gk(u,m)|0))break;l=l+1|0}if((v|0)==18){while(1){v=0;if((l|0)<23&(Lk(u)|0)!=0){l=l+1|0;v=18}else{m=1;break}}while(1){if(!l)break;l=l+-1|0;m=(Lk(u)|0)+(m<<1)|0}l=m+14|0}m=c[u>>2]<<1;c[u>>2]=m;if(!(m&65534)){Kk(u);m=c[u>>2]|0}j=c[r>>2]|0;n=j<<17;m=m-n|0;o=m>>31;m=(o&n)+m|0;c[u>>2]=m;n=o^0-l;l=m;m=j}c[h+(f<<2)>>2]=n-o;if(!q)break;else l=p}}c[z>>2]=m;c[w>>2]=l;c[x>>2]=c[y>>2];Ec=A;return}function Ik(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=Ec;Ec=Ec+304|0;t=A+48|0;u=A;w=f+32860|0;s=u+4|0;c[s>>2]=c[w>>2];x=f+32856|0;c[u>>2]=c[x>>2];y=f+32872|0;z=u+16|0;c[z>>2]=c[y>>2];n=c[f+21828>>2]|0;o=(c[72596+(n*56|0)+(h<<2)>>2]|0)+(f+32904)|0;p=(c[72708+(n*56|0)+(h<<2)>>2]|0)+(f+32904)|0;r=(c[72820+(h<<2)>>2]|0)+(f+32904)|0;q=(l|0)==64;a:do if(q){m=0;l=0;while(1){if((m|0)>=63)break;if(Gk(u,o+(d[140073+(n*63|0)+m>>0]|0)|0)|0){B=p+(d[126349+m>>0]|0)|0;h=l+1|0;c[t+(l<<2)>>2]=m;if(!(Gk(u,B)|0))l=h;else{l=h;break a}}m=m+1|0}if((m|0)==63){c[t+(l<<2)>>2]=63;l=l+1|0}}else{n=l+-1|0;m=0;l=0;while(1){if((m|0)>=(n|0))break;if(Gk(u,o+m|0)|0){h=l+1|0;c[t+(l<<2)>>2]=m;if(!(Gk(u,p+m|0)|0))l=h;else{l=h;break a}}m=m+1|0}if((m|0)==(n|0)){c[t+(l<<2)>>2]=n;l=l+1|0}}while(0);if(q){B=(d[150645+i>>0]|0)+(f+27824)|0;i=l*257&65535;b[B>>1]=i;b[B+8>>1]=i}else a[(d[150645+i>>0]|0)+(f+27824)>>0]=l;if(!(c[e+25664>>2]|0)){o=l;h=0;while(1){o=o+-1|0;p=d[j+(c[t+(o<<2)>>2]|0)>>0]|0;if(!(Gk(u,r+(d[140033+h>>0]|0)|0)|0)){l=d[140041+h>>0]|0;m=0-(c[k+(p<<2)>>2]|0)|0;h=c[u>>2]<<1;c[u>>2]=h;if(!(h&65534)){Kk(u);h=c[u>>2]|0}B=c[s>>2]|0;n=B<<17;f=h-n|0;i=f>>31;h=(i&n)+f|0;c[u>>2]=h;n=l;m=(f>>>31|32)+(i^m)|0;l=B}else{l=r+(d[140057+h>>0]|0)|0;n=d[140049+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;v=44;break}if(!(Gk(u,l)|0))break;h=h+1|0}if((v|0)==44){while(1){v=0;if((h|0)<23&(Lk(u)|0)!=0){h=h+1|0;v=44}else{l=1;break}}while(1){if(!h)break;h=h+-1|0;l=(Lk(u)|0)+(l<<1)|0}h=l+14|0}l=c[u>>2]<<1;c[u>>2]=l;if(!(l&65534)){Kk(u);l=c[u>>2]|0}B=c[s>>2]|0;i=B<<17;l=l-i|0;m=l>>31;l=(m&i)+l|0;c[u>>2]=l;m=(H((m^0-h)-m|0,c[k+(p<<2)>>2]|0)|0)+32|0;h=l;l=B}b[g+(p<<1)>>1]=m>>>6;if(!o)break;else h=n}}else{h=0;o=l;while(1){o=o+-1|0;p=d[j+(c[t+(o<<2)>>2]|0)>>0]|0;if(!(Gk(u,r+(d[140033+h>>0]|0)|0)|0)){l=d[140041+h>>0]|0;m=0-(c[k+(p<<2)>>2]|0)|0;h=c[u>>2]<<1;c[u>>2]=h;if(!(h&65534)){Kk(u);h=c[u>>2]|0}B=c[s>>2]|0;n=B<<17;f=h-n|0;i=f>>31;h=(i&n)+f|0;c[u>>2]=h;n=l;m=(f>>>31|32)+(i^m)|0;l=B}else{l=r+(d[140057+h>>0]|0)|0;n=d[140049+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;v=28;break}if(!(Gk(u,l)|0))break;h=h+1|0}if((v|0)==28){while(1){v=0;if((h|0)<23&(Lk(u)|0)!=0){h=h+1|0;v=28}else{l=1;break}}while(1){if(!h)break;h=h+-1|0;l=(Lk(u)|0)+(l<<1)|0}h=l+14|0}l=c[u>>2]<<1;c[u>>2]=l;if(!(l&65534)){Kk(u);l=c[u>>2]|0}B=c[s>>2]|0;i=B<<17;l=l-i|0;m=l>>31;l=(m&i)+l|0;c[u>>2]=l;m=(H((m^0-h)-m|0,c[k+(p<<2)>>2]|0)|0)+32|0;h=l;l=B}c[g+(p<<2)>>2]=m>>6;if(!o)break;else h=n}}c[w>>2]=l;c[x>>2]=h;c[y>>2]=c[z>>2];Ec=A;return}function Jk(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=Ec;Ec=Ec+304|0;q=y+48|0;r=y;w=g+32860|0;s=r+4|0;c[s>>2]=c[w>>2];x=g+32856|0;c[r>>2]=c[x>>2];u=g+32872|0;v=r+16|0;c[v>>2]=c[u>>2];o=c[g+21828>>2]|0;n=(c[72596+(o*56|0)+12>>2]|0)+(g+32904)|0;o=(c[72708+(o*56|0)+12>>2]|0)+(g+32904)|0;p=g+33161|0;m=0;k=0;while(1){if((m|0)>=7){t=6;break}j=d[140026+m>>0]|0;if(Gk(r,n+j|0)|0){l=k+1|0;c[q+(k<<2)>>2]=m;if(!(Gk(r,o+j|0)|0))k=l;else{k=l;break}}m=m+1|0}if((t|0)==6)if((m|0)==7){c[q+(k<<2)>>2]=7;k=k+1|0}o=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[o>>1]=64<<i+-49|(e[o>>1]|0);a[(d[150645+i>>0]|0)+(g+27824)>>0]=k;if(!(c[f+25664>>2]|0)){o=k;j=0;while(1){o=o+-1|0;f=d[128053+(c[q+(o<<2)>>2]|0)>>0]|0;if(!(Gk(r,p+(d[140033+j>>0]|0)|0)|0)){k=d[140041+j>>0]|0;j=c[r>>2]<<1;c[r>>2]=j;if(!(j&65534)){Kk(r);j=c[r>>2]|0}i=c[s>>2]|0;n=i<<17;j=j-n|0;m=j>>31;j=(m&n)+j|0;c[r>>2]=j;n=k;l=~m;k=i}else{k=p+(d[140065+j>>0]|0)|0;n=d[140049+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;t=34;break}if(!(Gk(r,k)|0))break;j=j+1|0}if((t|0)==34){while(1){t=0;if((j|0)<23&(Lk(r)|0)!=0){j=j+1|0;t=34}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Lk(r)|0)+(k<<1)|0}j=k+14|0}k=c[r>>2]<<1;c[r>>2]=k;if(!(k&65534)){Kk(r);k=c[r>>2]|0}i=c[s>>2]|0;l=i<<17;k=k-l|0;m=k>>31;k=(m&l)+k|0;c[r>>2]=k;l=m^0-j;j=k;k=i}b[h+(f<<1)>>1]=l-m;if(!o)break;else j=n}}else{j=0;o=k;while(1){o=o+-1|0;f=d[128053+(c[q+(o<<2)>>2]|0)>>0]|0;if(!(Gk(r,p+(d[140033+j>>0]|0)|0)|0)){k=d[140041+j>>0]|0;j=c[r>>2]<<1;c[r>>2]=j;if(!(j&65534)){Kk(r);j=c[r>>2]|0}i=c[s>>2]|0;n=i<<17;j=j-n|0;m=j>>31;j=(m&n)+j|0;c[r>>2]=j;n=k;l=~m;k=i}else{k=p+(d[140065+j>>0]|0)|0;n=d[140049+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;t=18;break}if(!(Gk(r,k)|0))break;j=j+1|0}if((t|0)==18){while(1){t=0;if((j|0)<23&(Lk(r)|0)!=0){j=j+1|0;t=18}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Lk(r)|0)+(k<<1)|0}j=k+14|0}k=c[r>>2]<<1;c[r>>2]=k;if(!(k&65534)){Kk(r);k=c[r>>2]|0}i=c[s>>2]|0;l=i<<17;k=k-l|0;m=k>>31;k=(m&l)+k|0;c[r>>2]=k;l=m^0-j;j=k;k=i}c[h+(f<<2)>>2]=l-m;if(!o)break;else j=n}}c[w>>2]=k;c[x>>2]=j;c[u>>2]=c[v>>2];Ec=y;return}function Kk(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);c[b>>2]=e+2;return}function Lk(a){a=a|0;var b=0,d=0;b=c[a>>2]<<1;c[a>>2]=b;if(!(b&65534)){Kk(a);b=c[a>>2]|0}d=c[a+4>>2]<<17;if((b|0)<(d|0))b=0;else{c[a>>2]=b-d;b=1}return b|0}function Mk(a){a=a|0;var b=0,e=0,f=0;f=c[a>>2]|0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9)+-65535<<7-(d[125069+((f+-1^f)>>>15)>>0]|0))+f;c[b>>2]=e+2;return}function Nk(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){Ok(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function Ok(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<<b;b=c[a>>2]<<b;c[a>>2]=b;if(!(b&65535))Kk(a);return}function Pk(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Ec;Ec=Ec+16|0;j=s;q=b+556|0;n=c[q>>2]|0;o=(H(n,f)|0)+e|0;p=b+552|0;l=c[p>>2]|0;m=l+-1|0;o=(o|0)<0?0:(o|0)>(m|0)?m:o;h=(H(n,h)|0)+g|0;h=(h|0)<0?0:(h|0)>(l|0)?l:h;l=b+548|0;n=c[l>>2]|0;m=c[n+(o<<2)>>2]|0;n=c[n+(h<<2)>>2]|0;e=c[b>>2]|0;g=c[e+592>>2]|0;if(!((g|0)!=0?(c[g+32>>2]|0)!=0:0))k=3;do if((k|0)==3){if((n|0)<(m|0)|(o|0)>(h|0)){We(e,16,140360,j);break}if(c[e+572>>2]|0){if(!(i&18))e=-2;else{e=b+572|0;c[e>>2]=(c[e>>2]|0)+(o+~h);e=-20}if(i&36){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(o+~h);e=e&-38}if(i&72){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(o+~h);e=e&-73}if(i&14|0){c[b+576>>2]=1;c[b+572>>2]=2147483647}g=b+580|0;a:do if((e|0)==-128)yW((c[g>>2]|0)+m|0,0,n-m|0)|0;else{f=m;while(1){if((f|0)>=(n|0))break a;k=(c[g>>2]|0)+f|0;a[k>>0]=e&(d[k>>0]|0);f=f+1|0}}while(0);if((h|0)==(c[p>>2]|0))c[b+572>>2]=2147483647;else{p=(c[g>>2]|0)+n|0;a[p>>0]=e&(d[p>>0]|0);p=(c[g>>2]|0)+n|0;a[p>>0]=d[p>>0]|0|i}i=(c[g>>2]|0)+m|0;a[i>>0]=a[i>>0]|1;if(((((m|0)>0?(r=c[b>>2]|0,(c[r+696>>2]&2|0)==0):0)?Wh(b)|0:0)?(H(c[q>>2]|0,c[r+268>>2]|0)|0)<(o|0):0)?(a[(c[g>>2]|0)+(c[(c[l>>2]|0)+(o+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0){c[b+576>>2]=1;c[b+572>>2]=2147483647}}}while(0);Ec=s;return}function Qk(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function Rk(a,b,c){a=a|0;b=b|0;c=c|0;Tk(a,b,c,0);return}function Sk(a,b,c){a=a|0;b=b|0;c=c|0;Tk(a,b,c,1);return}function Tk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=Ec;Ec=Ec+16|0;h=i;if((c[e>>2]|0)>>>0>=f>>>0){if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=152895;c[h+4>>2]=148592;c[h+8>>2]=33;We(0,0,164054,h);Za()}}else{h=f+32+(f>>>4)|0;h=h>>>0>f>>>0?h:f;Se(b);if(!g)f=cf(h)|0;else f=Of(h)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;c[e>>2]=(f|0)==0?0:h}Ec=i;return}function Uk(a){a=a|0;var b=0,d=0;b=a+64|0;JU(b)|0;d=a+140|0;a=a+92|0;while(1){if(!(c[d>>2]|0))break;yb(a|0,b|0)|0}c[d>>2]=1;KU(b)|0;return}function Vk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=Ec;Ec=Ec+112|0;C=D+96|0;B=D+88|0;z=D+80|0;y=D+72|0;q=D+64|0;p=D+56|0;m=D+48|0;l=D+40|0;k=D+32|0;j=D+24|0;i=D+16|0;g=D;if((c[b+25628>>2]|0)==(e|0)?(c[b+29560>>2]|0)==0:0)if(!(c[b+29588>>2]|0))n=1;else{c[g>>2]=151756;c[g+4>>2]=137858;c[g+8>>2]=1681;We(0,0,164054,g);Za()}else n=0;A=e+4|0;g=e+21808|0;c[g>>2]=VL(A)|0;h=WL(A)|0;a:do if(h>>>0<=9){i=h>>>0>4;c[e+844>>2]=i&1;i=a[127948+(i?h+-5|0:h)>>0]|0;u=i&255;v=e+836|0;c[v>>2]=u;u=u&3;s=e+840|0;c[s>>2]=u;r=f+44|0;if(!((u|0)==1|(c[r>>2]|0)!=5)){We(c[b+4>>2]|0,16,151806,j);g=-1094995529;break}h=XL(A)|0;c[e+27776>>2]=h;if(h>>>0>255){g=c[b+4>>2]|0;c[k>>2]=h;We(g,16,155191,k);g=-1094995529;break}g=c[b+27180+(h<<2)>>2]|0;if(!g){g=c[b+4>>2]|0;c[l>>2]=h;We(g,16,155215,l);g=-1094995529;break}u=c[g+4>>2]|0;g=c[u>>2]|0;h=c[b+27052+(g<<2)>>2]|0;if(!h){C=c[b+4>>2]|0;c[m>>2]=g;We(C,16,155247,m);g=-1094995529;break}m=c[h+4>>2]|0;j=m+20|0;g=YL(A,c[j>>2]|0)|0;h=e+34732|0;c[h>>2]=g;if(!n?(o=c[b+28244>>2]|0,(o|0)!=(g|0)):0){C=c[b+4>>2]|0;c[p>>2]=o;c[p+4>>2]=g;We(C,16,151845,p);g=-1094995529;break}c[e+21832>>2]=0;if(!(c[m+64>>2]|0)){if(i<<24>>24==3&(c[m+72>>2]|0)==0){We(c[b+4>>2]|0,16,151877,q);g=-1;break}if(ZL(A)|0)l=(ZL(A)|0)+1|0;else l=3}else l=3;c[e+21824>>2]=l;c[e+21828>>2]=(l|0)!=3&1;i=(l|0)==3;g=c[h>>2]|0;if(i)h=c[j>>2]|0;else{h=(c[j>>2]|0)+1|0;g=g<<1|1}c[e+34752>>2]=g;c[e+34756>>2]=1<<h;if((c[r>>2]|0)==5)VL(A)|0;h=m+24|0;g=c[h>>2]|0;if(!g){c[e+34736>>2]=YL(A,c[m+28>>2]|0)|0;if(i&(c[u+8>>2]|0)==1)c[e+34740>>2]=_L(A)|0;g=c[h>>2]|0}if(((g|0)==1?(c[m+32>>2]|0)==0:0)?(c[e+34744>>2]=_L(A)|0,i&(c[u+8>>2]|0)==1):0)c[e+34748>>2]=_L(A)|0;g=e+21836|0;c[g>>2]=0;if(c[u+60>>2]|0)c[g>>2]=XL(A)|0;g=c[s>>2]|0;if((g|0)==3){c[e+21844>>2]=ZL(A)|0;g=c[s>>2]|0}i=e+23404|0;k=b+4|0;g=$L(e+23412|0,i,A,u,g,l,c[k>>2]|0)|0;if((g|0)>=0){if((c[s>>2]|0)!=1?(t=aM(e,c[k>>2]|0)|0,(t|0)<0):0){c[i>>2]=0;c[e+23408>>2]=0;g=t;break}h=e+880|0;c[h>>2]=0;g=0;while(1){if((g|0)==2)break;c[e+896+(g<<2)>>2]=0;c[e+904+(g<<2)>>2]=0;g=g+1|0}if((c[u+28>>2]|0)!=0?(c[s>>2]|0)==2:0){w=2;g=51}else g=49;if(((g|0)==49?(c[u+32>>2]|0)==1:0)?(c[s>>2]|0)==3:0){w=3;g=51}if((g|0)==51?(x=bM(A,m,i,w,h,l,c[k>>2]|0)|0,(x|0)<0):0){g=x;break}c[e+34728>>2]=0;do if(c[f+64>>2]|0){if((cM(e,A,f,c[k>>2]|0)|0)>=0)break;if(c[(c[k>>2]|0)+580>>2]&8|0){g=-1094995529;break a}}while(0);do if((c[s>>2]|0)!=1){if(!(c[u+4>>2]|0))break;g=WL(A)|0;if(g>>>0>2){C=c[k>>2]|0;c[y>>2]=g;We(C,16,151947,y);g=-1094995529;break a}else{c[e+33928>>2]=g;break}}while(0);c[e+864>>2]=0;g=c[u+36>>2]|0;g=(_L(A)|0)+g|0;if(g>>>0>(((c[m+1184>>2]|0)*6|0)+3|0)>>>0){C=c[k>>2]|0;c[z>>2]=g;We(C,16,151975,z);g=-1094995529;break}c[e+848>>2]=g;c[e+852>>2]=d[u+548+g>>0];c[e+856>>2]=d[u+636+g>>0];g=c[v>>2]|0;if((g|0)==6){ZL(A)|0;g=c[v>>2]|0}if((g+-5|0)>>>0<2)_L(A)|0;h=e+868|0;c[h>>2]=1;j=e+872|0;c[j>>2]=0;i=e+876|0;c[i>>2]=0;if(!(c[u+52>>2]|0)){g=0;break}g=WL(A)|0;if(g>>>0>2){C=c[k>>2]|0;c[B>>2]=g;We(C,16,151995,B);g=-1094995529;break}B=(g|0)==2?2:g^1;c[h>>2]=B;if(!B){g=0;break}h=_L(A)|0;g=_L(A)|0;if((h+6|0)>>>0>12|(g+6|0)>>>0>12){B=c[k>>2]|0;c[C>>2]=h;c[C+4>>2]=g;We(B,16,152034,C);g=-1094995529;break}else{c[j>>2]=h<<1;c[i>>2]=g<<1;g=0;break}}}else{C=c[b+4>>2]|0;g=c[g>>2]|0;c[i>>2]=h;c[i+4>>2]=g;We(C,16,151775,i);g=-1094995529}while(0);Ec=D;return g|0}function Wk(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;E=Ec;Ec=Ec+96|0;x=E+72|0;w=E+56|0;u=E+48|0;o=E+40|0;p=E+32|0;l=E+16|0;k=E;e=ll(a,b,e)|0;a:do if((e|0)>=0){z=a+28216|0;q=c[z>>2]|0;m=a+25684|0;n=c[m>>2]|0;D=a+26380|0;v=c[D>>2]|0;B=d+64|0;c[m>>2]=(c[B>>2]|0)==0&1;e=c[b+21824>>2]|0;c[D>>2]=e;f=c[b+34732>>2]|0;y=a+28224|0;C=a+28244|0;c[C>>2]=f;c[y>>2]=c[b+34736>>2];c[a+28232>>2]=c[b+34740>>2];c[a+28236>>2]=c[b+34744>>2];c[a+28240>>2]=c[b+34748>>2];r=a+28264|0;g=c[r>>2]|0;if((f|0)!=(g|0)?(h=1<<c[q+20>>2],A=c[q+48>>2]|0,i=f-A|0,(f-g+((f|0)<(g|0)?h:0)|0)>(A|0)):0)c[r>>2]=i+-1+((i|0)<1?h:0);A=a+26384|0;do if(c[A>>2]|0){i=(v|0)==2;f=i&1;j=a+24312|0;g=c[j>>2]|0;if(!g){c[k>>2]=149556;c[k+4>>2]=137858;c[k+8>>2]=1446;We(0,0,164054,k);Za()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[l>>2]=149571;c[l+4>>2]=137858;c[l+8>>2]=1447;We(0,0,164054,l);Za()}h=a+4|0;if((c[g+8+(f<<2)>>2]|0)==(c[h>>2]|0)){Bh(g+4|0,2147483647,f);e=c[D>>2]|0}if((e|0)==3|(e|0)==(v|0)){if((v|0)==3){n=j;break}Bh((c[j>>2]|0)+4|0,2147483647,(v|0)==1&1);n=j;break}f=c[j>>2]|0;if((c[f+88>>2]|0)!=(c[C>>2]|0)){if((v|0)==3){n=j;break}Bh(f+4|0,2147483647,(v|0)==1&1);n=j;break}if(!((v|0)==1&(e|0)==2|i&(e|0)==1)){a=c[h>>2]|0;c[p>>2]=v;c[p+4>>2]=e;We(a,16,149597,p);c[D>>2]=v;c[m>>2]=n;e=-1094995529;break a}if((n|0)==(c[m>>2]|0))n=j;else{Oh(c[h>>2]|0,149635,o);c[D>>2]=v;c[m>>2]=n;e=-1163346256;break a}}else{h=a+4|0;n=a+24312|0}while(0);k=q+20|0;l=a+29556|0;g=q+52|0;m=a+29548|0;j=a+28348|0;while(1){i=c[C>>2]|0;e=c[r>>2]|0;f=(c[A>>2]|0)==0;if((i|0)==(e|0)){g=45;break}if(!f){g=46;break}if((i|0)==((e+1|0)%(1<<c[k>>2]|0)|0|0)){g=57;break}if(!(c[l>>2]|0))f=0;else f=c[j>>2]|0;q=c[h>>2]|0;c[u>>2]=i;c[u+4>>2]=e;We(q,48,149701,u);b:do if(!(c[g>>2]|0)){e=0;while(1){if((e|0)==16)break b;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}}while(0);e=ml(a)|0;if((e|0)<0){g=33;break}q=((c[r>>2]|0)+1|0)%(1<<c[k>>2]|0)|0;c[r>>2]=q;e=c[n>>2]|0;c[e+88>>2]=q;c[e+648>>2]=(c[g>>2]|0)==0&1;Bh(e+4|0,2147483647,0);Bh((c[n>>2]|0)+4|0,2147483647,1);c[m>>2]=0;e=Ah(a)|0;if((e|0)<0?c[(c[h>>2]|0)+580>>2]&8|0:0)break a;if(!(c[l>>2]|0))continue;e=c[j>>2]|0;if((((f|0)!=0?(s=c[e>>2]|0,t=c[f>>2]|0,(c[s+68>>2]|0)==(c[t+68>>2]|0)):0)?(c[s+72>>2]|0)==(c[t+72>>2]|0):0)?(c[s+80>>2]|0)==(c[t+80>>2]|0):0){e=f+4|0;Zh(e,2147483647,0);if(c[f+636>>2]|0)Zh(e,2147483647,1);q=c[c[j>>2]>>2]|0;e=c[f>>2]|0;Rg(q,q+32|0,e,e+32|0,c[e+80>>2]|0,c[e+68>>2]|0,c[e+72>>2]|0);e=c[j>>2]|0;c[e+84>>2]=(c[f+84>>2]|0)+2}c[e+88>>2]=c[r>>2]}if((g|0)==33){c[A>>2]=0;break}else if((g|0)==45)if(f)g=57;else g=46;do if((g|0)==46){g=c[n>>2]|0;if(!g){c[w>>2]=149556;c[w+4>>2]=137858;c[w+8>>2]=1553;We(0,0,164054,w);Za()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[x>>2]=149571;c[x+4>>2]=137858;c[x+8>>2]=1554;We(0,0,164054,x);Za()}e=c[D>>2]|0;f=a+29584|0;if((e|0)==3|(e|0)==(v|0)){c[f>>2]=(c[f>>2]|0)+1;c[n>>2]=0;f=(e|0)!=3&1;c[A>>2]=f;break}c[f>>2]=0;if((c[g+88>>2]|0)!=(i|0)){Bh(g+4|0,2147483647,(e|0)==2&1);c[A>>2]=1;c[n>>2]=0;e=c[D>>2]|0;f=1;break}if(!(c[g+640>>2]&4)){c[A>>2]=0;f=0;break}else{c[A>>2]=1;c[n>>2]=0;f=1;break}}else if((g|0)==57){e=c[D>>2]|0;f=(e|0)!=3&1;c[A>>2]=f}while(0);if(!((e|0)!=3&(f|0)==0)){if((ml(a)|0)<0){c[A>>2]=0;e=-1094995529;break}}else{nl(a,0);c[(c[n>>2]|0)+8+(((e|0)==2&1)<<2)>>2]=c[h>>2]}e=c[D>>2]|0;c:do if((e|0)==3)yW(c[a+26372>>2]|0,-1,(H(c[a+27008>>2]<<1,c[a+27016>>2]|0)|0)+-2|0)|0;else{g=a+27008|0;h=a+26372|0;i=a+27016|0;e=(e|0)==2&1;while(1){f=c[g>>2]|0;if((e|0)>=(f|0))break c;w=c[i>>2]|0;x=e+1|0;yW((c[h>>2]|0)+((H(w,e)|0)<<1)|0,-1,w-((x|0)==(f|0)&1)<<1|0)|0;e=x}}while(0);e=c[n>>2]|0;e=ol(e+76|0,e+84|0,c[z>>2]|0,y,c[D>>2]|0,c[B>>2]|0)|0;if((e|0)>=0){k=b+34724|0;wW(a+28748|0,b+33932|0,(c[k>>2]|0)*12|0)|0;c[a+29540>>2]=c[k>>2];c[m>>2]=c[b+34728>>2];k=(c[d+44>>2]|0)==5;j=k&1;c[a+25712>>2]=j;h=c[a+29716>>2]|0;do if((h|0)>-1){i=c[C>>2]|0;if(!((i|0)==(h|0)?(c[b+840>>2]|0)==1:0))c[a+29568>>2]=1;g=a+29572|0;f=c[g>>2]|0;if((f|0)>=0){e=c[(c[z>>2]|0)+20>>2]|0;if(((1<<e)+-1&f-i)>>>0<=h>>>0)break}else e=c[(c[z>>2]|0)+20>>2]|0;z=(1<<e)+-1&i+h;c[g>>2]=z;c[g>>2]=(c[a+29568>>2]|0)==0?i:z}while(0);f=c[n>>2]|0;e=(c[f>>2]|0)+84|0;c[e>>2]=c[e>>2]|j;e=a+29572|0;if(k){c[e>>2]=-1;c[f+644>>2]=1;C=a+29576|0;e=c[C>>2]|1;c[C>>2]=e}else{if((c[e>>2]|0)==(c[C>>2]|0)?c[B>>2]|0:0){c[e>>2]=-1;c[f+644>>2]=1}e=c[a+29576>>2]|0}C=f+644|0;c[C>>2]=c[C>>2]|e;if(((c[D>>2]|0)!=3?c[A>>2]|0:0)?(c[a+29584>>2]|0)<=1:0){e=0;break}pl(a);ql(a);e=0}}while(0);Ec=E;return e|0}function Xk(a,d,e){a=a|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;E=Ec;Ec=Ec+160|0;D=E+24|0;m=E+16|0;g=E+8|0;f=E;v=E+96|0;if((c[a+25712>>2]|0)!=0?(c[e+44>>2]|0)!=5:0){We(c[a+4>>2]|0,16,148881,f);f=-1094995529}else w=4;do if((w|0)==4){h=c[d+21808>>2]|0;j=a+26376|0;i=(c[j>>2]|0)==0;if(i)f=(c[a+26380>>2]|0)!=3;else f=1;C=c[a+27020>>2]|0;if(!(h<<(f&1)>>>0<C>>>0&h>>>0<C>>>0)){We(c[a+4>>2]|0,16,148920,g);f=-1094995529;break}y=a+27012|0;f=c[y>>2]|0;u=(h>>>0)%(f>>>0)|0;z=d+21788|0;c[z>>2]=u;c[d+21800>>2]=u;u=a+26380|0;C=c[u>>2]|0;f=((h>>>0)/(f>>>0)|0)<<(((C|0)!=3|i^1)&1);t=d+21792|0;c[t>>2]=f;l=d+21804|0;c[l>>2]=f;if((C|0)==2){C=f+1|0;c[t>>2]=C;c[l>>2]=C}f=Yk(a,d)|0;if((f|0)>=0){h=a+28212|0;g=d+840|0;if((c[(c[h>>2]|0)+32>>2]|0)==2){if((c[g>>2]|0)==3){Zk(a,d,-1);if(!(c[j>>2]|0))w=15;else{Zk(a,d,0);Zk(a,d,1);w=15}}}else w=15;if(((w|0)==15?(c[g>>2]|0)==3:0)?(c[d+21844>>2]|0)==0:0)_k(a,d);if(!(c[a+29588>>2]|0))$k(a,d);s=a+4|0;k=c[s>>2]|0;f=c[k+724>>2]|0;a:do if((f|0)<=47){do if((f|0)>31)if((c[a+27028>>2]|0)==5)w=24;else{w=29;break a}else if((f|0)<=23)if((f|0)>15)if((c[g>>2]|0)==3){w=29;break a}else break;else if((f|0)>7)break;else break a;else w=24;while(0);if((w|0)==24?(c[g>>2]|0)!=1:0){w=29;break}if(!(c[e+64>>2]|0))w=29}else w=29;while(0);if((w|0)==29)c[d+868>>2]=0;A=d+868|0;do if((c[A>>2]|0)==1?(c[a+25632>>2]|0)>1:0)if(!(c[k+64>>2]&1)){c[a+25708>>2]=1;break}else{c[A>>2]=2;break}while(0);B=d+872|0;i=c[B>>2]|0;C=d+876|0;j=c[C>>2]|0;g=c[h>>2]|0;f=g+44|0;h=c[f>>2]|0;x=(h|0)<0;g=g+48|0;h=((x?0:h)|0)<=(c[g>>2]|0);if(h|x^1)f=c[(h?g:f)>>2]|0;else f=0;c[d+860>>2]=-33-((i|0)>(j|0)?j:i)-f+((c[(c[a+28216>>2]|0)+1184>>2]|0)*6|0);r=a+29560|0;g=c[r>>2]|0;h=g+1|0;c[r>>2]=h;r=d+832|0;c[r>>2]=h;if(!h)f=c[l>>2]|0;else{f=c[l>>2]|0;b[a+29600+((g&31)<<1)>>1]=f}x=b[a+29600+((h&31)<<1)>>1]|0;if((g|0)>30&((f|0)>=(x|0)&(x+3|0)>=(f|0))){c[m>>2]=h;c[m+4>>2]=32;We(k,24,148948,m)}n=d+23412|0;o=a+29556|0;p=a+29552|0;m=0;while(1){if((m|0)==2)break;q=c[r>>2]&31;k=d+23404+(m<<2)|0;j=0;while(1){if((j|0)==16)break;l=v+(j<<2)|0;c[l>>2]=60;b:do if(m>>>0<(c[n>>2]|0)>>>0?j>>>0<(c[k>>2]|0)>>>0:0){f=c[(c[c[d+23416+(m*1920|0)+(j*40|0)+36>>2]>>2]|0)+248>>2]|0;if(!f)break;h=c[f>>2]|0;i=c[o>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;if((c[c[(c[c[a+28348+(f<<2)>>2]>>2]|0)+248>>2]>>2]|0)==(h|0)){w=53;break}f=f+1|0}if((w|0)==53){w=0;c[l>>2]=f}g=c[p>>2]|0;f=0;while(1){if((f|0)>=(g|0))break b;x=c[a+28476+(f<<2)>>2]|0;if(x|0?(c[c[(c[x>>2]|0)+248>>2]>>2]|0)==(h|0):0)break;f=f+1|0}c[l>>2]=i+f}while(0);j=j+1|0}c[a+29940+(q<<9)+(m<<8)+4>>2]=-1;c[a+29940+(q<<9)+(m<<8)>>2]=-1;f=0;while(1){if((f|0)==16)break;c[a+29940+(q<<9)+(m<<8)+(f+2<<2)>>2]=c[d+23416+(m*1920|0)+(f*40|0)+24>>2]&3|c[v+(f<<2)>>2]<<2;f=f+1|0}c[a+29940+(q<<9)+(m<<8)+76>>2]=-1;c[a+29940+(q<<9)+(m<<8)+72>>2]=-1;f=16;while(1){if((f|0)==48)break;c[a+29940+(q<<9)+(m<<8)+(f+4<<2)>>2]=c[d+23416+(m*1920|0)+(f*40|0)+24>>2]&3|c[v+(f+-16>>1<<2)>>2]<<2;f=f+1|0}m=m+1|0}x=c[s>>2]|0;if(!(c[x+576>>2]&1))f=0;else{w=c[r>>2]|0;v=c[u>>2]|0;s=H(c[y>>2]|0,c[t>>2]|0)|0;s=s+(c[z>>2]|0)|0;f=d+836|0;t=(Xh(c[f>>2]|0)|0)<<24>>24;u=c[d+844>>2]|0?149049:260868;q=(c[e+44>>2]|0)==5?149054:260868;r=c[a+28244>>2]|0;m=c[a+24312>>2]|0;l=c[m+76>>2]|0;m=c[m+80>>2]|0;n=c[d+23404>>2]|0;o=c[d+23408>>2]|0;p=c[d+848>>2]|0;k=c[A>>2]|0;j=c[B>>2]|0;g=c[C>>2]|0;h=c[d+880>>2]|0;if((h|0)==1)i=c[d+884>>2]|0?149059:260868;else i=260868;if((c[f>>2]|0)==3)f=c[d+21844>>2]|0?149061:149066;else f=260868;c[D>>2]=w;c[D+4>>2]=(v|0)==3?149047:(v|0)==1?149043:149045;c[D+8>>2]=s;c[D+12>>2]=t;c[D+16>>2]=u;c[D+20>>2]=q;c[D+24>>2]=r;c[D+28>>2]=l;c[D+32>>2]=m;c[D+36>>2]=n;c[D+40>>2]=o;c[D+44>>2]=p;c[D+48>>2]=k;c[D+52>>2]=j;c[D+56>>2]=g;c[D+60>>2]=h;c[D+64>>2]=i;c[D+68>>2]=f;We(x,48,149071,D);f=0}}}while(0);Ec=E;return f|0}function Yk(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;I=Ec;Ec=Ec+64|0;G=I+48|0;H=I+40|0;C=I+32|0;B=I+16|0;A=I+8|0;z=I;u=I+60|0;Hh(b);Ih(b);cl(b,d);D=d+23412|0;v=d+34752|0;x=d+34756|0;y=b+29556|0;E=b+4|0;F=b+26380|0;s=0;a:while(1){e=c[D>>2]|0;if(s>>>0>=e>>>0){n=0;p=29;break}q=d+27768+(s<<2)|0;r=d+23404+(s<<2)|0;n=0;e=c[v>>2]|0;while(1){if((n|0)>=(c[q>>2]|0))break;f=a[d+27256+(s<<8)+(n<<3)>>0]|0;i=c[d+27256+(s<<8)+(n<<3)+4>>2]|0;b:do switch(f<<24>>24){case 1:case 0:{g=i+1|0;h=c[x>>2]|0;if(g>>>0>h>>>0){p=11;break a}e=h+-1&(f<<24>>24==0?~i:g)+e;g=Dh(b,e,u)|0;i=c[u>>2]|0;f=c[y>>2]|0;while(1){p=f;f=f+-1|0;if((p|0)<=0){p=18;break b}h=c[b+28348+(f<<2)>>2]|0;if((c[h+88>>2]|0)!=(g|0))continue;if(i&c[h+640>>2]|0){m=e;p=15;break}}break}case 2:{f=Dh(b,i,u)|0;if(f>>>0>31){p=16;break a}f=c[b+28476+(f<<2)>>2]|0;if((f|0)!=0?(w=c[u>>2]|0,(w&c[f+640>>2]|0)!=0):0){m=e;h=f;e=i;i=w;p=15}else p=18;break}default:{p=17;break a}}while(0);if((p|0)==15){c[h+96>>2]=e;f=h+96|0;g=c[r>>2]|0;j=h+100|0;e=n;while(1){k=e+1|0;if(k>>>0>=g>>>0)break;l=c[d+23416+(s*1920|0)+(e*40|0)+36>>2]|0;if(!l){e=k;continue}if((c[j>>2]|0)!=(c[l+100>>2]|0)){e=k;continue}if((c[f>>2]|0)==(c[d+23416+(s*1920|0)+(e*40|0)+32>>2]|0))break;else e=k}while(1){if((e|0)<=(n|0))break;g=e+-1|0;f=d+23416+(s*1920|0)+(e*40|0)|0;e=d+23416+(s*1920|0)+(g*40|0)|0;o=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(o|0));e=g}e=d+23416+(s*1920|0)+(n*40|0)|0;dl(e,h);if((c[F>>2]|0)==3)e=m;else{el(e,i);e=m}}else if((p|0)==18){We(c[E>>2]|0,16,149339,C);f=d+23416+(s*1920|0)+(n*40|0)|0;o=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(o|0))}n=n+1|0}s=s+1|0}c:do if((p|0)==11){We(c[E>>2]|0,16,149284,z);t=-1094995529}else if((p|0)==16){We(c[E>>2]|0,16,149311,A);t=-1094995529}else if((p|0)==17){c[B>>2]=170059;c[B+4>>2]=132137;c[B+8>>2]=373;We(0,0,164054,B);Za()}else if((p|0)==29){d:while(1){p=0;if(n>>>0>=e>>>0)break;i=d+23404+(n<<2)|0;j=b+28268+(n*40|0)|0;k=b+28268+(n*40|0)+28|0;l=b+28268+(n*40|0)+36|0;m=b+28268+(n*40|0)+24|0;h=0;while(1){if(h>>>0>=(c[i>>2]|0)>>>0)break;f=d+23416+(n*1920|0)+(h*40|0)|0;g=d+23416+(n*1920|0)+(h*40|0)+36|0;e=c[g>>2]|0;if(e){if((c[F>>2]|0)==3?(c[d+23416+(n*1920|0)+(h*40|0)+24>>2]&3|0)!=3:0)p=35}else p=35;if((p|0)==35){p=0;e=c[E>>2]|0;c[H>>2]=c[k>>2];We(e,16,149381,H);e=0;while(1){if((e|0)==16)break;c[b+28676+(e<<2)>>2]=-2147483648;e=e+1|0}if(!(c[l>>2]|0)){t=-1;break c}if((c[F>>2]|0)==3?(c[m>>2]&3|0)!=3:0){t=-1;break c}e=j;o=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(o|0));e=c[g>>2]|0}if((fl(c[(c[e>>2]|0)+248>>2]|0)|0)>0)h=h+1|0;else{p=43;break d}}n=n+1|0;e=c[D>>2]|0;p=29}if((p|0)==43){c[G>>2]=149423;c[G+4>>2]=132137;c[G+8>>2]=411;We(0,0,164054,G);Za()}if(!(c[b+26376>>2]|0))t=0;else{gl(d);t=0}}while(0);Ec=I;return t|0}function Zk(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;e=0;while(1){if((e|0)==2)break;c[b+896+(e<<2)>>2]=0;c[b+904+(e<<2)>>2]=0;e=e+1|0}n=(d|0)<0;if(n){g=c[a+26380>>2]|0;e=c[a+24312>>2]|0;g=c[((g|0)==3?e+84|0:e+76+(g+-1<<2)|0)>>2]|0;e=c[b+23404>>2]|0;f=c[b+23408>>2]|0;if((e|0)==1)if((f|0)==1)if((c[a+26376>>2]|0)==0?(l=c[b+23444>>2]|0,m=c[b+25364>>2]|0,l=hW(m|0,((m|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0,m=g<<1,(l|0)==(m|0)&(M()|0)==(((m|0)<0)<<31>>31|0)):0){c[b+880>>2]=0;c[b+884>>2]=0}else{m=0;e=1;f=1;h=11}else{m=0;e=1;h=11}else{m=0;h=11}}else{m=16;e=(c[b+23404>>2]<<1)+16|0;f=(c[b+23408>>2]<<1)+16|0;g=c[(c[a+24312>>2]|0)+76+(d<<2)>>2]|0;h=11}a:do if((h|0)==11){c[b+880>>2]=2;c[b+884>>2]=2;c[b+888>>2]=5;c[b+892>>2]=5;a=m;while(1){if((a|0)>=(e|0))break a;j=c[b+23416+(a*40|0)+28>>2]|0;k=b+23416+(a*40|0)+36|0;l=g-j|0;l=((l+128|0)>>>0>255?l>>31^127:l)<<24>>24;h=m;while(1){if((h|0)>=(f|0))break;if(((c[(c[k>>2]|0)+100>>2]|0)==0?(c[(c[b+25336+(h*40|0)+36>>2]|0)+100>>2]|0)==0:0)?(p=(c[b+25336+(h*40|0)+28>>2]|0)-j|0,p=(p+128|0)>>>0>255?p>>31^127:p,o=p&255,p=p<<24>>24,o<<24>>24!=0):0){i=(H((((o<<24>>24>-1?p:0-p|0)>>1)+16384|0)/(p|0)|0,l)|0)+32>>8;i=(i+64|0)>>>0<193?64-i|0:32}else i=32;if(n){c[b+3216+(a*384|0)+(h<<3)+4>>2]=i;c[b+3216+(a*384|0)+(h<<3)>>2]=i}else c[b+3216+(a*384|0)+(h<<3)+(d<<2)>>2]=i;h=h+1|0}a=a+1|0}}while(0);return}function _k(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;j=c[a+26380>>2]|0;i=a+24312|0;k=c[i>>2]|0;j=c[((j|0)==3?k+84|0:k+76+(((j|0)==2&1)<<2)|0)>>2]|0;k=c[b+25364>>2]|0;a:do if(!(c[a+26376>>2]|0))d=b+23404|0;else{f=b+25372|0;d=b+23404|0;e=0;while(1){if((e|0)==2)break a;g=c[(c[i>>2]|0)+76+(e<<2)>>2]|0;h=c[(c[f>>2]|0)+76+(e<<2)>>2]|0;a=0;while(1){if(a>>>0>=c[d>>2]<<1>>>0)break;c[b+21996+(e<<7)+((a^e)<<2)>>2]=bl(b,g,h,a+16|0)|0;a=a+1|0}e=e+1|0}}while(0);a=0;while(1){if(a>>>0>=(c[d>>2]|0)>>>0)break;c[b+21868+(a<<2)>>2]=bl(b,j,k,a)|0;a=a+1|0}return}function $k(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=Ec;Ec=Ec+32|0;p=q+16|0;j=q;m=a+24312|0;h=c[m>>2]|0;l=a+26380|0;o=c[l>>2]&1^1;n=b+25360|0;f=c[n>>2]&1;k=b+23412|0;d=0;while(1){if(d>>>0>=(c[k>>2]|0)>>>0)break;g=b+23404+(d<<2)|0;c[h+616+(o<<3)+(d<<2)>>2]=c[g>>2];e=0;while(1){if(e>>>0>=(c[g>>2]|0)>>>0)break;c[h+104+(o<<8)+(d<<7)+(e<<2)>>2]=c[b+23416+(d*1920|0)+(e*40|0)+24>>2]&3|c[(c[b+23416+(d*1920|0)+(e*40|0)+36>>2]|0)+88>>2]<<2;e=e+1|0}d=d+1|0}i=f^1;if((c[l>>2]|0)==3){e=h+616|0;f=c[e+4>>2]|0;g=h+624|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;wW(h+360|0,h+104|0,256)|0}if(c[a+29560>>2]|0){if((c[h+632>>2]|0)!=(c[a+26376>>2]|0)){c[j>>2]=149161;c[j+4>>2]=149193;c[j+8>>2]=144;We(0,0,164054,j);Za()}}else c[h+632>>2]=c[a+26376>>2];f=b+21852|0;c[f>>2]=0;a:do if((c[k>>2]|0)==2?c[b+23408>>2]|0:0){e=c[l>>2]|0;if((e|0)!=3){d=c[n>>2]|0;if((d&e|0)==0?(c[(c[b+25372>>2]|0)+632>>2]|0)==0:0){c[f>>2]=(d<<1)+-3;d=o}else d=o}else{d=c[(c[m>>2]|0)+84>>2]|0;f=c[b+25372>>2]|0;e=c[f+76>>2]|0;f=c[f+80>>2]|0;if((e|0)==2147483647&(f|0)==2147483647){We(c[a+4>>2]|0,16,149218,p);d=1}else{p=e-d|0;d=f-d|0;d=(((p|0)>-1?p:0-p|0)|0)>=(((d|0)>-1?d:0-d|0)|0)&1}c[b+21848>>2]=d;i=d}if((c[b+840>>2]|0)==3?(c[b+21844>>2]|0)==0:0){g=b+22252|0;h=a+26376|0;f=0;while(1){if((f|0)==2)break a;al(a,b,g,f,d,i,0);b:do if(c[h>>2]|0){e=0;while(1){if((e|0)==2)break b;al(a,b,b+22636+(e*384|0)|0,f,e,e,1);e=e+1|0}}while(0);f=f+1|0}}}while(0);Ec=q;return}function al(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=c[b+25372>>2]|0;r=(h|0)!=0;p=r?16:0;q=c[b+23404>>2]|0;q=r?(q<<1)+16|0:q;if(r)n=1;else n=(c[a+26380>>2]|0)!=3;yW(d+(e*192|0)|0,0,192)|0;k=s+616+(g<<3)+(e<<2)|0;l=s+632|0;h=0;a:while(1){if((h|0)==2)break;m=h+1|0;o=n&(h|0)!=(f|0);j=(h^f)+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0)){h=m;continue a}h=c[s+104+(g<<8)+(e<<7)+(i<<2)>>2]|0;if(n)a=(h&3|0)==3?m+(h&-4)|0:h;else a=h|3;h=p;while(1){if((h|0)>=(q|0))break;if((c[b+23416+(h*40|0)+24>>2]&3|c[(c[b+23416+(h*40|0)+36>>2]|0)+88>>2]<<2|0)==(a|0)){t=13;break}h=h+1|0}if((t|0)==13){t=0;h=r?h+-16^f:h;if(c[l>>2]|0)c[d+(e*192|0)+(j+(i<<1)<<2)>>2]=h;if(!o)c[d+(e*192|0)+(i<<2)>>2]=h}i=i+1|0}}return}function bl(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;k=Ec;Ec=Ec+16|0;j=k+8|0;h=c[a+23416+(e*40|0)+28>>2]|0;i=((h|0)<0)<<31>>31;d=iW(d|0,((d|0)<0)<<31>>31|0,h|0,i|0)|0;l=M()|0;g=(d+128|0)>>>0>255?d>>31^127:d;f=g&255;g=g<<24>>24;if(!((d|0)==(d|0)&(l|0)==(((d|0)<0)<<31>>31|0)))Oh(c[(c[a>>2]|0)+4>>2]|0,149247,k);if(f<<24>>24!=0?(c[(c[a+23416+(e*40|0)+36>>2]|0)+100>>2]|0)==0:0){d=iW(b|0,((b|0)<0)<<31>>31|0,h|0,i|0)|0;l=M()|0;if(!((d|0)==(d|0)&(l|0)==(((d|0)<0)<<31>>31|0)))We(c[(c[a>>2]|0)+4>>2]|0,48,149265,j);l=(H((((f<<24>>24>-1?g:0-g|0)>>1)+16384|0)/(g|0)|0,((d+128|0)>>>0>255?d>>31^127:d)<<24>>24)|0)+32|0;d=l>>6;d=(d+1024|0)>>>0>2047?l>>31^1023:d}else d=256;Ec=k;return d|0}function cl(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;s=Ec;Ec=Ec+240|0;r=s+48|0;d=s+32|0;n=s+16|0;m=s;l=s+104|0;o=s+96|0;p=s+56|0;q=b+840|0;do if((c[q>>2]|0)==3){k=a+26380|0;g=c[k>>2]|0;h=c[a+24312>>2]|0;g=c[((g|0)==3?h+84|0:h+76+(((g|0)==2&1)<<2)|0)>>2]|0;h=a+28348|0;i=a+29556|0;j=a+28476|0;f=0;while(1){if((f|0)>=2){d=11;break}d=hl(l,h,c[i>>2]|0,g,f^1)|0;d=(hl(l+(d<<2)|0,h,c[i>>2]|0,g,f)|0)+d|0;if((d|0)>=33){d=5;break}d=il(b+23416+(f*1920|0)|0,48,l,d,0,c[k>>2]|0)|0;d=(il(b+23416+(f*1920|0)+(d*40|0)|0,48-d|0,j,16,1,c[k>>2]|0)|0)+d|0;if((d|0)>=33){d=7;break}e=c[b+23404+(f<<2)>>2]|0;if(e>>>0>d>>>0)yW(b+23416+(f*1920|0)+(d*40|0)|0,0,(e-d|0)*40|0)|0;c[o+(f<<2)>>2]=d;f=f+1|0}if((d|0)==5){c[m>>2]=149496;c[m+4>>2]=132137;c[m+8>>2]=153;We(0,0,164054,m);Za()}else if((d|0)==7){c[n>>2]=149496;c[n+4>>2]=132137;c[n+8>>2]=160;We(0,0,164054,n);Za()}else if((d|0)==11){e=c[o>>2]|0;o=c[o+4>>2]|0;if((e|0)==(o|0)&(o|0)>1){d=0;while(1){if((d|0)>=(e|0))break;if((c[c[(c[c[b+23416+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0)!=(c[c[(c[c[b+25336+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0))break;d=d+1|0}if((d|0)==(e|0)){d=b+25376|0;j=p;f=d;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));e=b+25336|0;j=d;f=e;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));j=e;f=p;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0))}}break}}else{p=a+26380|0;e=il(b+23416|0,48,a+28348|0,c[a+29556>>2]|0,0,c[p>>2]|0)|0;e=(il(b+23416+(e*40|0)|0,48-e|0,a+28476|0,16,1,c[p>>2]|0)|0)+e|0;if((e|0)>=33){c[d>>2]=149496;c[d+4>>2]=132137;c[d+8>>2]=181;We(0,0,164054,d);Za()}d=c[b+23404>>2]|0;if(d>>>0>e>>>0)yW(b+23416+(e*40|0)|0,0,(d-e|0)*40|0)|0}while(0);h=a+4|0;f=0;while(1){if((f|0)>=(((c[q>>2]|0)==3?2:1)|0))break;i=b+23404+(f<<2)|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;e=b+23416+(f*1920|0)+(g*40|0)|0;d=c[b+23416+(f*1920|0)+(g*40|0)+36>>2]|0;if(d|0?jl(a,d)|0:0){We(c[h>>2]|0,16,149506,r);j=e;k=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0))}g=g+1|0}f=f+1|0}e=b+23412|0;d=0;while(1){if(d>>>0>=(c[e>>2]|0)>>>0)break;j=a+28268+(d*40|0)|0;f=b+23416+(d*1920|0)|0;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));d=d+1|0}Ec=s;return}function dl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];d=a+12|0;e=(c[b>>2]|0)+32|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[a+24>>2]=c[b+640>>2];c[a+28>>2]=c[b+84>>2];c[a+32>>2]=c[b+96>>2];c[a+36>>2]=b;return}function el(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=(b|0)==2;f=a+24|0;d=0;while(1){if((d|0)==3)break;g=a+(d<<2)|0;h=a+12+(d<<2)|0;if(e)c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[f>>2]=b;c[h>>2]=c[h>>2]<<1;d=d+1|0}c[a+28>>2]=c[(c[a+36>>2]|0)+76+((e&1)<<2)>>2];return}function fl(a){a=a|0;return c[(c[a>>2]|0)+8>>2]|0}function gl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+23412|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;k=a+23404+(g<<2)|0;h=0;while(1){if(h>>>0>=(c[k>>2]|0)>>>0)break;f=(h<<1)+16|0;j=a+23416+(g*1920|0)+(f*40|0)|0;b=j;d=a+23416+(g*1920|0)+(h*40|0)|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=0;while(1){if((b|0)==3)break;e=a+23416+(g*1920|0)+(f*40|0)+12+(b<<2)|0;c[e>>2]=c[e>>2]<<1;b=b+1|0}c[a+23416+(g*1920|0)+(f*40|0)+24>>2]=1;c[a+23416+(g*1920|0)+(f*40|0)+28>>2]=c[(c[a+23416+(g*1920|0)+(f*40|0)+36>>2]|0)+76>>2];b=j+40|0;d=j;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));d=a+23416+(g*1920|0)+(h*40|0)+36|0;b=0;while(1){if((b|0)==3)break;f=j+40+(b<<2)|0;c[f>>2]=(c[f>>2]|0)+(c[(c[c[d>>2]>>2]|0)+32+(b<<2)>>2]|0);b=b+1|0}c[j+64>>2]=2;c[j+68>>2]=c[(c[j+76>>2]|0)+80>>2];h=h+1|0}g=g+1|0}return}function hl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=f|0?-2147483648:2147483647;j=0;while(1){l=a+(j<<2)|0;g=m;k=0;while(1){if((k|0)>=(d|0))break;h=c[b+(k<<2)>>2]|0;i=c[h+84>>2]|0;if(((i|0)>(e|0)|0)!=(f|0)?((i|0)<(g|0)|0)!=(f|0):0){c[l>>2]=h;g=i}k=k+1|0}if((g|0)==(m|0))break;e=(c[(c[l>>2]|0)+84>>2]|0)-f|0;j=j+1|0}return j|0}function il(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;q=Ec;Ec=Ec+32|0;p=q+16|0;o=q;n=g^3;m=(f|0)==0;j=0;f=0;h=0;while(1){if(!((f|0)<(e|0)|(h|0)<(e|0))){f=24;break}while(1){if((f|0)>=(e|0)){i=0;break}l=c[d+(f<<2)>>2]|0;if(l|0?c[l+640>>2]&g|0:0){i=1;break}f=f+1|0}l=h;while(1){if((l|0)>=(e|0)){k=0;break}k=c[d+(l<<2)>>2]|0;if(k|0?c[k+640>>2]&n|0:0){k=1;break}l=l+1|0}if(i){if((j|0)>=(b|0)){f=14;break}i=c[d+(f<<2)>>2]|0;if(m)h=c[i+88>>2]|0;else h=f;c[i+96>>2]=h;kl(a+(j*40|0)|0,i,g,1);j=j+1|0;f=f+1|0}if(!k){h=l;continue}if((j|0)>=(b|0)){f=20;break}i=c[d+(l<<2)>>2]|0;if(m)h=c[i+88>>2]|0;else h=l;c[i+96>>2]=h;kl(a+(j*40|0)|0,i,n,0);j=j+1|0;h=l+1|0}if((f|0)==14){c[o>>2]=149540;c[o+4>>2]=132137;c[o+8>>2]=90;We(0,0,164054,o);Za()}else if((f|0)==20){c[p>>2]=149540;c[p+4>>2]=132137;c[p+8>>2]=95;We(0,0,164054,p);Za()}else if((f|0)==24){Ec=q;return j|0}return 0}function jl(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;b=c[c[a+24312>>2]>>2]|0;if((c[b+68>>2]|0)==(c[d+68>>2]|0)?(c[b+72>>2]|0)==(c[d+72>>2]|0):0)b=(c[b+80>>2]|0)!=(c[d+80>>2]|0)&1;else b=1;return b|0}function kl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(c[b+640>>2]&d|0?(dl(a,b),(d|0)!=3):0){el(a,d);d=a+32|0;c[d>>2]=(c[d>>2]<<1)+e}return}function ll(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;r=Ec;Ec=Ec+64|0;m=r+56|0;l=r+48|0;q=r+40|0;p=r+24|0;o=r;k=(d|0)!=0;if(k){i=a+28204|0;Cf(i);f=a+28212|0;c[f>>2]=0;d=Eg(c[a+27180+(c[b+27776>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d)d=-12;else{d=c[d+4>>2]|0;c[f>>2]=d;g=5}}else{d=a+28212|0;f=d;d=c[d>>2]|0;g=5}a:do if((g|0)==5){h=a+28216|0;g=c[h>>2]|0;do if((g|0)==(c[(c[a+27052+(c[d>>2]<<2)>>2]|0)+4>>2]|0))d=0;else{i=a+28208|0;Cf(i);c[h>>2]=0;d=Eg(c[a+27052+(c[c[f>>2]>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d){d=-12;break a}g=c[d+4>>2]|0;c[h>>2]=g;if((((c[a+27012>>2]|0)==(c[g+56>>2]|0)?(c[a+27008>>2]|0)==(c[g+60>>2]|0):0)?(e=c[a+29596>>2]|0,(e|0)==(c[g+1184>>2]|0)):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)d=0;else{d=1;e=c[g+1184>>2]|0}if((c[a+27044>>2]|0)==(e|0)?(c[a+27048>>2]|0)==(c[g+12>>2]|0):0)break;d=1}while(0);i=a+25692|0;if(c[i>>2]|0){f=c[g+56>>2]|0;h=a+4|0;e=c[h>>2]|0;if(((((f<<4|0)==(c[e+100>>2]|0)?(j=c[g+60>>2]|0,(j<<4|0)==(c[e+104>>2]|0)):0)?(c[a+29596>>2]|0)==(c[g+1184>>2]|0):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)?(c[a+27012>>2]|0)==(f|0):0)f=(c[a+27008>>2]|0)!=(j|0)&1;else f=1}else{e=a+4|0;h=e;f=0;e=c[e>>2]|0}e=c[e+112>>2]|0;if(!((e|0)!=-1?(j=Em(e)|0,(j|0)==(Em(Fm(a,0)|0)|0)):0))f=1;if(k){j=g+100|0;k=(c[h>>2]|0)+188|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];m=(Gm(l,m)|0)==0;f=m?f:1}if(((c[a+29588>>2]|0)==0?(m=Hm(g)|0,l=c[h>>2]|0,c[l+716>>2]=m,c[l+720>>2]=c[g+8>>2],c[l+300>>2]=c[g+48>>2],l=c[g+56>>2]|0,c[a+27012>>2]=l,m=c[g+60>>2]|0,c[a+27008>>2]=m,c[a+27020>>2]=H(m,l)|0,c[a+27016>>2]=l+1,c[a+26368>>2]=l<<2,c[a+25680>>2]=(c[g+12>>2]|0)<2&1,c[a+25668>>2]=l<<4,c[a+25672>>2]=m<<4,Im(a),(c[g+108>>2]|0)!=0):0)?(n=c[h>>2]|0,c[n+328>>2]=(c[g+112>>2]|0)>0?2:1,(c[g+116>>2]|0)!=0):0){m=n+324|0;l=c[g+128>>2]|0;d=(c[m>>2]|0)==(l|0)?d:1;c[n+316>>2]=c[g+120>>2];c[n+320>>2]=c[g+124>>2];c[m>>2]=l}e=(c[i>>2]|0)==0;if((d|f|0)!=0|e){c[i>>2]=0;if((c[a+25628>>2]|0)!=(b|0)){d=c[h>>2]|0;n=c[d+100>>2]|0;b=c[a+25672>>2]|0;p=c[d+104>>2]|0;q=(c[a+29560>>2]|0)+1|0;c[o>>2]=c[a+25668>>2];c[o+4>>2]=n;c[o+8>>2]=b;c[o+12>>2]=p;c[o+16>>2]=q;We(d,16,150290,o);d=-1094995529;break}if(!e)Vf(a);d=Fm(a,1)|0;if((d|0)>=0){o=c[h>>2]|0;c[o+112>>2]=d;n=c[a+25668>>2]|0;b=c[a+25672>>2]|0;d=rg(d)|0;c[p>>2]=n;c[p+4>>2]=b;c[p+8>>2]=d;We(o,40,150345,p);d=Jm(a)|0;if((d|0)<0)We(c[h>>2]|0,16,150383,q);else d=0}}else d=0}while(0);Ec=r;return d|0}function ml(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;n=Ec;Ec=Ec+32|0;e=n+8|0;f=n+16|0;l=c[b+25664>>2]|0;m=b+28216|0;g=c[m>>2]|0;c[f>>2]=1<<(c[g+1184>>2]|0)+-1;g=1<<(c[g+1188>>2]|0)+-1;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=-1;g=b+4|0;do if(ul(c[g>>2]|0)|0){nl(b,1);k=b+24312|0;c[k>>2]=0;d=vl(b)|0;if((d|0)<0){We(c[g>>2]|0,16,149850,e);break}i=b+696+(d*656|0)|0;j=b+26380|0;h=c[j>>2]|0;c[b+696+(d*656|0)+640>>2]=(c[b+25684>>2]|0)==0?h:0;e=b+25688|0;o=c[e>>2]|0;c[e>>2]=o+1;e=c[i>>2]|0;c[e+128>>2]=o;c[b+696+(d*656|0)+636>>2]=(h|0)!=3&1;c[b+696+(d*656|0)+88>>2]=c[b+28244>>2];c[e+84>>2]=0;c[b+696+(d*656|0)+92>>2]=0;c[b+696+(d*656|0)+644>>2]=0;c[b+696+(d*656|0)+648>>2]=0;c[b+696+(d*656|0)+652>>2]=c[b+29716>>2];h=b+25628|0;c[e+88>>2]=c[(c[h>>2]|0)+836>>2];c[e+392>>2]=c[b+25716>>2];c[e+396>>2]=c[b+25720>>2];c[e+384>>2]=c[b+25724>>2];c[e+388>>2]=c[b+25728>>2];d=wl(b,i)|0;if((d|0)>=0){if((c[b+29576>>2]|0)==0?(c[(c[g>>2]|0)+592>>2]|0)==0:0)xl(c[i>>2]|0,f);c[k>>2]=i;d=b+24316|0;Xf(b,d);Uh((c[h>>2]|0)+696|0,0);d=lh(b,d,c[k>>2]|0)|0;if((d|0)>=0){e=c[b+25632>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;g=c[c[k>>2]>>2]|0;o=c[h>>2]|0;c[o+(d*34768|0)+21772>>2]=c[g+32>>2];c[o+(d*34768|0)+21776>>2]=c[g+36>>2];d=d+1|0}if(!(c[b+29672>>2]|0))d=0;else{yl((c[h>>2]|0)+24|0);Uh((c[h>>2]|0)+728|0,0);Uh((c[h>>2]|0)+760|0,0);d=0}while(1){if((d|0)==16){d=0;break}o=a[150645+d>>0]|0;h=((o<<2&255)+16&28)<<l;o=(o&255)+-12>>3;c[b+25976+(d<<2)>>2]=h+(H(c[(c[i>>2]|0)+32>>2]<<2,o)|0);c[b+25976+(d+48<<2)>>2]=h+(H(c[(c[i>>2]|0)+32>>2]<<3,o)|0);d=d+1|0}while(1){if((d|0)==16)break;o=a[150645+d>>0]|0;h=((o<<2&255)+16&28)<<l;o=(o&255)+-12>>3;g=h+(H(c[(c[i>>2]|0)+36>>2]<<2,o)|0)|0;c[b+25976+(d+32<<2)>>2]=g;c[b+25976+(d+16<<2)>>2]=g;o=h+(H(c[(c[i>>2]|0)+36>>2]<<3,o)|0)|0;c[b+25976+(d+80<<2)>>2]=o;c[b+25976+(d+64<<2)>>2]=o;d=d+1|0}o=c[k>>2]|0;c[o+640>>2]=0;c[o+80>>2]=2147483647;c[o+76>>2]=2147483647;c[b+28740>>2]=0;c[b+25708>>2]=0;if(!(c[(c[m>>2]|0)+68>>2]|0))d=0;else d=(c[j>>2]|0)==3&1;c[b+26376>>2]=d;d=c[b+29712>>2]|0;if((d|0)>-1){c[b+25704>>2]=d;d=0}else d=0}}}else{We(c[g>>2]|0,16,149804,n);d=-1}while(0);Ec=n;return d|0}function nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(b|0)==0;e=a+24312|0;b=0;while(1){if((b|0)==36)break;f=a+696+(b*656|0)|0;do if(c[(c[f>>2]|0)+248>>2]|0?(c[a+696+(b*656|0)+640>>2]|0)==0:0){if(d?(f|0)==(c[e>>2]|0):0)break;Xf(a,f)}while(0);b=b+1|0}return}function ol(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,n=0;k=c[e+20>>2]|0;i=c[f+36>>2]|0;j=f+32|0;c[j>>2]=i;l=c[f+20>>2]|0;if((l|0)<(c[f+40>>2]|0)){i=i+(1<<k)|0;c[j>>2]=i}switch(c[e+24>>2]|0){case 0:{i=1<<c[e+28>>2];k=c[f>>2]|0;j=c[f+28>>2]|0;if((j|0)>(k|0)?(j-k|0)>=((i|0)/2|0|0):0)i=(c[f+24>>2]|0)+i|0;else m=7;do if((m|0)==7){if((j|0)<(k|0)?(j-k|0)<((i|0)/-2|0|0):0){i=(c[f+24>>2]|0)-i|0;break}i=c[f+24>>2]|0}while(0);c[f+4>>2]=i;j=k+i|0;l=((j|0)<0)<<31>>31;if((g|0)==3){k=c[f+8>>2]|0;k=hW(k|0,((k|0)<0)<<31>>31|0,j|0,l|0)|0;i=j;h=l;j=M()|0}else{i=j;h=l;k=j;j=l}break}case 1:{m=c[e+44>>2]|0;k=(m|0)==0?0:l+i|0;h=(h|0)==0;j=(h&(k|0)>0)<<31>>31;i=0;l=0;while(1){if((i|0)>=(m|0))break;n=l+(b[e+148+(i<<1)>>1]|0)|0;i=i+1|0;l=n}i=k+j|0;a:do if((i|0)>0){i=i+-1|0;k=(i|0)%(m|0)|0;i=H((i|0)/(m|0)|0,l)|0;j=0;while(1){if((j|0)>(k|0))break a;i=i+(b[e+148+(j<<1)>>1]|0)|0;j=j+1|0}}else i=0;while(0);if(h)i=(c[e+36>>2]|0)+i|0;i=(c[f+12>>2]|0)+i|0;l=((i|0)<0)<<31>>31;k=c[e+40>>2]|0;k=hW(i|0,l|0,k|0,((k|0)<0)<<31>>31|0)|0;j=M()|0;if((g|0)==3){h=c[f+16>>2]|0;k=hW(k|0,j|0,h|0,((h|0)<0)<<31>>31|0)|0;h=l;j=M()|0}else h=l;break}default:{k=(l+i<<1)+(((h|0)==0)<<31>>31)|0;j=((k|0)<0)<<31>>31;i=k;h=j}}if((i|0)==(i|0)&(h|0)==(((i|0)<0)<<31>>31|0)?(k|0)==(k|0)&(j|0)==(((k|0)<0)<<31>>31|0):0){if((g|0)!=2?(c[a>>2]=i,(g|0)==1):0)j=a+4|0;else{j=a+4|0;c[j>>2]=k;i=c[a>>2]|0}c[d>>2]=c[a+(((i|0)>(c[j>>2]|0)&1)<<2)>>2];i=0}else i=-1094995529;return i|0}function pl(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;i=c[b+28216>>2]|0;q=c[b+24312>>2]|0;j=c[q>>2]|0;g=j+212|0;c[g>>2]=0;d=j+208|0;c[d>>2]=0;i=(c[i+1160>>2]|0)==0;if(!i?(c[b+29676>>2]|0)!=0:0){f=c[b+29680>>2]|0;switch(f|0){case 8:{c[d>>2]=4;d=0;break}case 2:case 1:{c[g>>2]=1;d=1;break}case 4:case 3:{if((c[b+26376>>2]|0)==0?(c[b+26380>>2]|0)==3:0)d=c[b+29564>>2]|0;else d=1;c[g>>2]=d;break}case 6:case 5:{c[d>>2]=1;d=0;break}case 7:{c[d>>2]=2;d=0;break}default:d=0}e=c[b+29684>>2]|0;if((e&3|0)!=0&f>>>0<5){d=e>>>1&1;h=17}}else{if(!(c[b+26376>>2]|0))d=(c[b+26380>>2]|0)!=3;else d=1;d=d&1;h=17}if((h|0)==17)c[g>>2]=d;c[b+29564>>2]=d;e=c[q+76>>2]|0;f=c[q+80>>2]|0;do if((e|0)==(f|0)){if(!i?c[b+29676>>2]|0:0){switch(c[b+29680>>2]|0){case 5:case 3:{d=1;break}default:d=0}c[j+216>>2]=d;break}c[j+216>>2]=(d|0)!=0&1}else c[j+216>>2]=(e|0)<(f|0)&1;while(0);if(((c[b+29852>>2]|0?(k=b+29864|0,(c[k>>2]|0)>>>0<7):0)?(l=b+29872|0,((c[l>>2]|0)+-1|0)>>>0<2):0)?(m=rl(j)|0,m|0):0){switch(c[k>>2]|0){case 0:{c[m>>2]=4;break}case 1:{c[m>>2]=7;break}case 2:{c[m>>2]=6;break}case 3:{c[m>>2]=c[b+29876>>2]|0?5:1;break}case 4:{c[m>>2]=2;break}case 5:{c[m>>2]=3;break}case 6:{c[m>>2]=0;break}default:{}}if((c[l>>2]|0)==2)c[m+4>>2]=1;if((c[k>>2]|0)==5)c[m+8>>2]=c[b+29880>>2]|0?1:2}do if(c[b+29884>>2]|0){d=c[b+29888>>2]|0;if(((d|0)==0?(c[b+29892>>2]|0)==0:0)?(c[b+29896>>2]|0)==0:0)break;e=ah(c[q>>2]|0,6,36)|0;if(e|0){m=e+4|0;sl(c[m>>2]|0,+(d*360|0)*.0000152587890625);tl(c[m>>2]|0,c[b+29892>>2]|0,c[b+29896>>2]|0)}}while(0);d=b+29696|0;if(c[d>>2]|0?(n=ah(c[q>>2]|0,7,1)|0,n|0):0){a[c[n+4>>2]>>0]=a[b+29700>>0]|0;c[d>>2]=0}d=b+29708|0;if(c[d>>2]|0){e=b+29704|0;f=ah(c[q>>2]|0,1,c[e>>2]|0)|0;if(f|0)wW(c[f+4>>2]|0,c[d>>2]|0,c[e>>2]|0)|0;Se(d);c[e>>2]=0;n=(c[b+4>>2]|0)+848|0;c[n>>2]=c[n>>2]|2}if((c[b+29916>>2]|0?(o=b+29920|0,Bi(c[o>>2]|0)|0):0)?(p=c[o>>2]|0,(p|0)!=2):0){c[(c[q>>2]|0)+308>>2]=p;c[(c[b+4>>2]|0)+320>>2]=p}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;q=Ec;Ec=Ec+48|0;p=q+32|0;m=q+16|0;k=q+8|0;h=q;d=c[a+28216>>2]|0;l=c[a+24312>>2]|0;j=a+29544|0;i=l+92|0;c[i>>2]=c[j>>2];c[j>>2]=0;j=d+660|0;b=c[a+4>>2]|0;if(!((c[j>>2]|0)==0?(c[b+568>>2]|0)<=0:0)){n=b+140|0;f=c[n>>2]|0;g=c[d+664>>2]|0;c[n>>2]=(f|0)>(g|0)?f:g}g=l+84|0;b=0;while(1){f=c[g>>2]|0;if((b|0)==16){b=16;n=8;break}d=c[a+28676+(b<<2)>>2]|0;e=(b|0)==0;if((f|0)<(d|0)){n=7;break}if(!e)c[a+28676+(b+-1<<2)>>2]=d;b=b+1|0}if((n|0)==7)if(e)b=0;else n=8;if((n|0)==8)c[a+28676+(b+-1<<2)>>2]=f;e=16-b|0;if((c[(c[l>>2]|0)+88>>2]|0)==3)if((e|0)>1)n=17;else n=16;else{n=c[a+28732>>2]|0;if((n|0)!=-2147483648?!((e|0)>1?1:((c[a+28736>>2]|0)-n|0)<3):0)n=16;else n=17}if((n|0)==16){b=a+4|0;e=1;d=c[b>>2]|0;n=22}else if((n|0)==17){f=a+4|0;d=c[f>>2]|0;if(!b){e=a+28676|0;b=c[e>>2]|0;c[h>>2]=c[g>>2];c[h+4>>2]=b;We(d,40,149722,h);b=1;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}c[e>>2]=c[g>>2];c[i>>2]=1;h=f}else{b=f;n=22}}if((n|0)==22)if((c[d+140>>2]|0)<(e|0)?(c[j>>2]|0)==0:0){h=(c[d+360>>2]|0)>1?24:40;c[k>>2]=e;We(d,h,149741,k);c[(c[b>>2]|0)+140>>2]=e;h=b}else h=b;k=0;while(1){b=a+28604+(k<<2)|0;if(!(c[b>>2]|0))break;else k=k+1|0}if((k|0)>=17){c[m>>2]=149774;c[m+4>>2]=137858;c[m+8>>2]=1337;We(0,0,164054,m);Za()}c[b>>2]=l;b=l+640|0;if(!(c[b>>2]|0))c[b>>2]=4;j=a+28604|0;f=c[j>>2]|0;l=f;i=0;b=1;while(1){d=c[a+28604+(b<<2)>>2]|0;if(!d)break;if(c[(c[d>>2]|0)+84>>2]|0)break;if(c[d+92>>2]|0)break;n=(c[d+84>>2]|0)<(c[l+84>>2]|0);l=n?d:l;i=n?b:i;b=b+1|0}b=c[h>>2]|0;e=c[b+140>>2]|0;do if(!e){if((c[(c[f>>2]|0)+84>>2]|0)==0?(c[f+92>>2]|0)==0:0)break;c[a+28744>>2]=-2147483648}while(0);d=c[l+84>>2]|0;g=a+28744|0;f=(d|0)<(c[g>>2]|0);do if(!((k|0)<(e|0)&(f^1))){b=l+640|0;c[b>>2]=c[b>>2]&-5;b=i;e=c[a+28604+(i<<2)>>2]|0;while(1){if(!e)break;n=b+1|0;e=c[a+28604+(n<<2)>>2]|0;c[a+28604+(b<<2)>>2]=e;b=n}if(f){b=c[h>>2]|0;n=61;break}else{e=c[h>>2]|0;b=e;e=c[e+140>>2]|0;n=47;break}}else n=47;while(0);do if((n|0)==47){if((k|0)<(e|0)){n=61;break}h=a+28740|0;c[h>>2]=l;if((i|0)==0?(o=c[j>>2]|0,(o|0)!=0):0)if((c[(c[o>>2]|0)+84>>2]|0)==0?(c[o+92>>2]|0)==0:0)n=53;else d=-2147483648;else n=53;c[g>>2]=d;f=l+644|0;g=c[f>>2]|0;e=a+29576|0;d=c[e>>2]|0;if(g){d=d|2;c[e>>2]=d}a=d>>>1&1|g;c[f>>2]=a;if(!a){if((c[b+60>>2]&8|0)==0?(c[b+64>>2]&4194304|0)==0:0){c[h>>2]=0;break}a=(c[l>>2]|0)+296|0;c[a>>2]=c[a>>2]|1}}while(0);if((n|0)==61){c[p>>2]=f?149785:260868;We(b,48,149789,p)}Ec=q;return}function rl(b){b=b|0;var d=0,e=0;b=ah(b,2,12)|0;if(!b)b=0;else{b=b+4|0;d=c[b>>2]|0;e=d+12|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));b=c[b>>2]|0}return b|0}function sl(a,b){a=a|0;b=+b;var d=0,e=0.0;b=b*-3.141592653589793/180.0;e=+x(+b);b=+y(+b);d=a+8|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;d=~~(e*65536.0);c[a>>2]=d;c[a+4>>2]=~~(b*-65536.0);c[a+12>>2]=~~(b*65536.0);c[a+16>>2]=d;c[a+32>>2]=1073741824;return}function tl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Ec;Ec=Ec+16|0;e=f;c[e>>2]=1-(((b|0)!=0&1)<<1);c[e+4>>2]=1-(((d|0)!=0&1)<<1);c[e+8>>2]=1;a:do if(d|b|0){b=0;while(1){if((b|0)==9)break a;d=a+(b<<2)|0;c[d>>2]=H(c[d>>2]|0,c[e+(((b|0)%3|0)<<2)>>2]|0)|0;b=b+1|0}}while(0);Ec=f;return}function ul(a){a=a|0;var b=0;if((c[a+696>>2]&1|0)!=0?(c[(c[(c[a+28>>2]|0)+20>>2]|0)+300>>2]|0)!=1:0)if(!(c[(c[a+12>>2]|0)+68>>2]|0))if((c[a+700>>2]|0)==0?(c[a+400>>2]|0)!=10:0)a=0;else b=6;else a=0;else b=6;if((b|0)==6)a=1;return a|0}function vl(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=36){b=-1094995529;break}if(!(c[(c[a+696+(b*656|0)>>2]|0)+248>>2]|0))break;b=b+1|0}return b|0}function wl(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;k=Ec;Ec=Ec+32|0;g=k+16|0;e=k;d=c[b>>2]|0;if(c[d>>2]|0){c[e>>2]=149900;c[e+4>>2]=137858;c[e+8>>2]=192;We(0,0,164054,e);Za()}i=b+4|0;c[i>>2]=d;e=a+4|0;d=rm(c[e>>2]|0,i,(c[b+640>>2]|0)!=0&1)|0;a:do if((d|0)>=0){e=c[(c[e>>2]|0)+592>>2]|0;if(e|0){f=b+56|0;if(c[f>>2]|0){c[g>>2]=149917;c[g+4>>2]=137858;c[g+8>>2]=202;We(0,0,164054,g);Za()}e=c[e+40>>2]|0;if(e|0){e=wg(e)|0;c[b+52>>2]=e;if(!e){d=-12;break}c[f>>2]=c[e+4>>2]}}f=a+29924|0;e=c[f>>2]|0;if(!e){d=sm(a)|0;if((d|0)<0){j=18;break}e=c[f>>2]|0}f=b+20|0;c[f>>2]=lg(e)|0;e=lg(c[a+29928>>2]|0)|0;c[b+44>>2]=e;f=c[f>>2]|0;if((e|0)==0|(f|0)==0)j=18;else{g=c[a+27016>>2]<<1;c[b+48>>2]=(c[e+4>>2]|0)+(g<<2)+4;c[b+24>>2]=(c[f+4>>2]|0)+g+1;f=a+29932|0;g=a+29936|0;e=0;while(1){if((e|0)>=2){d=0;break a}i=b+28+(e<<2)|0;c[i>>2]=lg(c[f>>2]|0)|0;h=lg(c[g>>2]|0)|0;c[b+60+(e<<2)>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){j=18;break a}c[b+36+(e<<2)>>2]=(c[i+4>>2]|0)+16;c[b+68+(e<<2)>>2]=c[h+4>>2];e=e+1|0}}}else j=18;while(0);if((j|0)==18){Xf(a,b);d=(d|0)<0?d:-12}Ec=k;return d|0}function xl(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,r=0,s=0,t=0;t=Ec;Ec=Ec+16|0;f=t;g=qg(c[a+80>>2]|0)|0;if(0==0?(c[g+8>>2]&16|0)==0:0){c[f>>2]=149877;c[f+4>>2]=131456;c[f+8>>2]=410;We(0,0,164054,f);Za()}o=g+4|0;p=a+68|0;q=g+5|0;r=a+72|0;s=g+6|0;m=g+32|0;l=0;while(1){if((l|0)>=(d[o>>0]|0|0))break;f=c[p>>2]|0;if((l+-1|0)>>>0<2){n=0-(0-(c[r>>2]|0)>>(d[s>>0]|0))|0;f=0-(0-f>>(d[q>>0]|0))|0}else n=c[r>>2]|0;j=a+32+(l<<2)|0;k=e+(l<<2)|0;g=0;i=c[a+(l<<2)>>2]|0;while(1){if((g|0)>=(n|0))break;a:do if((c[m>>2]|0)>8){h=0;while(1){if((h|0)>=(f|0))break a;b[i+(h<<1)>>1]=c[k>>2];h=h+1|0}}else yW(i|0,c[k>>2]&255|0,f|0)|0;while(0);g=g+1|0;i=i+(c[j>>2]|0)|0}l=l+1|0}Ec=t;return}function yl(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(c[b+572>>2]|0){d=a+544|0;if(!(c[d>>2]|0)){zl(a+4|0,b);c[d>>2]=1}yW(c[a+580>>2]|0,127,H(c[a+560>>2]|0,c[a+564>>2]|0)|0)|0;c[a+572>>2]=(c[a+552>>2]|0)*3;c[a+576>>2]=0}return}function zl(a,b){a=a|0;b=b|0;c[a>>2]=19;c[a+484>>2]=2;c[a+488>>2]=3;c[a+492>>2]=4;c[a+496>>2]=5;c[a+500>>2]=6;c[a+504>>2]=7;c[a+508>>2]=8;c[a+512>>2]=9;c[a+52>>2]=10;c[a+56>>2]=11;c[a+68>>2]=12;c[a+72>>2]=13;c[a+76>>2]=14;c[a+80>>2]=15;c[a+292>>2]=16;c[a+296>>2]=17;c[a+316>>2]=18;c[a+320>>2]=19;c[a+4>>2]=2;c[a+8>>2]=6;c[a+28>>2]=20;c[a+32>>2]=21;c[a+36>>2]=22;c[a+100>>2]=23;c[a+104>>2]=24;c[a+148>>2]=25;c[a+152>>2]=26;c[a+124>>2]=27;c[a+128>>2]=28;c[a+172>>2]=29;c[a+176>>2]=30;c[a+188>>2]=31;c[a+192>>2]=32;c[a+196>>2]=33;c[a+200>>2]=34;c[a+212>>2]=35;c[a+216>>2]=36;c[a+220>>2]=37;c[a+224>>2]=38;c[a+516>>2]=39;c[a+520>>2]=40;return}function Al(a){a=a|0;var c=0,d=0,e=0,f=0;c=0;d=0;while(1){if((c|0)==64)break;f=b[a+(c<<1)>>1]|0;e=f<<16>>16;c=c+1|0;d=(f<<16>>16>-1?e:0-e|0)+d|0}return d|0}function Bl(a,b,c,e,f){a=a|0;b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;w=(d[b>>0]|0)-(d[a>>0]|0)|0;v=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;u=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;t=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;s=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;r=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;q=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;p=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;o=(d[b+8>>0]|0)-(d[a+8>>0]|0)|0;n=(d[b+9>>0]|0)-(d[a+9>>0]|0)|0;m=(d[b+10>>0]|0)-(d[a+10>>0]|0)|0;l=(d[b+11>>0]|0)-(d[a+11>>0]|0)|0;k=(d[b+12>>0]|0)-(d[a+12>>0]|0)|0;j=(d[b+13>>0]|0)-(d[a+13>>0]|0)|0;i=(d[b+14>>0]|0)-(d[a+14>>0]|0)|0;c=(d[b+15>>0]|0)-(d[a+15>>0]|0)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Cl(a,b,c,e,f){a=a|0;b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;v=d[a+1>>0]|0;w=(d[b>>0]|0)-(((d[a>>0]|0)+1+v|0)>>>1)|0;u=d[a+2>>0]|0;v=(d[b+1>>0]|0)-((v+1+u|0)>>>1)|0;t=d[a+3>>0]|0;u=(d[b+2>>0]|0)-((u+1+t|0)>>>1)|0;s=d[a+4>>0]|0;t=(d[b+3>>0]|0)-((t+1+s|0)>>>1)|0;r=d[a+5>>0]|0;s=(d[b+4>>0]|0)-((s+1+r|0)>>>1)|0;q=d[a+6>>0]|0;r=(d[b+5>>0]|0)-((r+1+q|0)>>>1)|0;p=d[a+7>>0]|0;q=(d[b+6>>0]|0)-((q+1+p|0)>>>1)|0;o=d[a+8>>0]|0;p=(d[b+7>>0]|0)-((p+1+o|0)>>>1)|0;n=d[a+9>>0]|0;o=(d[b+8>>0]|0)-((o+1+n|0)>>>1)|0;m=d[a+10>>0]|0;n=(d[b+9>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+11>>0]|0;m=(d[b+10>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+12>>0]|0;l=(d[b+11>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+13>>0]|0;k=(d[b+12>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+14>>0]|0;j=(d[b+13>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+15>>0]|0;i=(d[b+14>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+15>>0]|0)-((c+1+(d[a+16>>0]|0)|0)>>>1)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Dl(a,b,c,e,f){a=a|0;b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;x=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;w=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;v=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;u=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;t=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;s=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;r=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;q=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;p=(d[b+8>>0]|0)-(((d[a+8>>0]|0)+1+(d[c+8>>0]|0)|0)>>>1)|0;o=(d[b+9>>0]|0)-(((d[a+9>>0]|0)+1+(d[c+9>>0]|0)|0)>>>1)|0;n=(d[b+10>>0]|0)-(((d[a+10>>0]|0)+1+(d[c+10>>0]|0)|0)>>>1)|0;m=(d[b+11>>0]|0)-(((d[a+11>>0]|0)+1+(d[c+11>>0]|0)|0)>>>1)|0;l=(d[b+12>>0]|0)-(((d[a+12>>0]|0)+1+(d[c+12>>0]|0)|0)>>>1)|0;k=(d[b+13>>0]|0)-(((d[a+13>>0]|0)+1+(d[c+13>>0]|0)|0)>>>1)|0;j=(d[b+14>>0]|0)-(((d[a+14>>0]|0)+1+(d[c+14>>0]|0)|0)>>>1)|0;i=(d[b+15>>0]|0)-(((d[a+15>>0]|0)+1+(d[c+15>>0]|0)|0)>>>1)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function El(a,b,c,e,f){a=a|0;b=b|0;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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;y=d[a+1>>0]|0;w=d[c+1>>0]|0;x=(d[b>>0]|0)-(((d[a>>0]|0)+2+y+(d[c>>0]|0)+w|0)>>>2)|0;z=d[a+2>>0]|0;v=d[c+2>>0]|0;w=(d[b+1>>0]|0)-((y+2+w+z+v|0)>>>2)|0;y=d[a+3>>0]|0;u=d[c+3>>0]|0;v=(d[b+2>>0]|0)-((z+2+v+y+u|0)>>>2)|0;z=d[a+4>>0]|0;t=d[c+4>>0]|0;u=(d[b+3>>0]|0)-((y+2+u+z+t|0)>>>2)|0;y=d[a+5>>0]|0;s=d[c+5>>0]|0;t=(d[b+4>>0]|0)-((z+2+t+y+s|0)>>>2)|0;z=d[a+6>>0]|0;r=d[c+6>>0]|0;s=(d[b+5>>0]|0)-((y+2+s+z+r|0)>>>2)|0;y=d[a+7>>0]|0;q=d[c+7>>0]|0;r=(d[b+6>>0]|0)-((z+2+r+y+q|0)>>>2)|0;z=d[a+8>>0]|0;p=d[c+8>>0]|0;q=(d[b+7>>0]|0)-((y+2+q+z+p|0)>>>2)|0;y=d[a+9>>0]|0;o=d[c+9>>0]|0;p=(d[b+8>>0]|0)-((z+2+p+y+o|0)>>>2)|0;z=d[a+10>>0]|0;n=d[c+10>>0]|0;o=(d[b+9>>0]|0)-((y+2+o+z+n|0)>>>2)|0;y=d[a+11>>0]|0;m=d[c+11>>0]|0;n=(d[b+10>>0]|0)-((z+2+n+y+m|0)>>>2)|0;z=d[a+12>>0]|0;l=d[c+12>>0]|0;m=(d[b+11>>0]|0)-((y+2+m+z+l|0)>>>2)|0;y=d[a+13>>0]|0;k=d[c+13>>0]|0;l=(d[b+12>>0]|0)-((z+2+l+y+k|0)>>>2)|0;z=d[a+14>>0]|0;j=d[c+14>>0]|0;k=(d[b+13>>0]|0)-((y+2+k+z+j|0)>>>2)|0;y=d[a+15>>0]|0;i=d[c+15>>0]|0;j=(d[b+14>>0]|0)-((z+2+j+y+i|0)>>>2)|0;i=(d[b+15>>0]|0)-((y+2+i+(d[a+16>>0]|0)+(d[c+16>>0]|0)|0)>>>2)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Fl(a,b,c,e,f){a=a|0;b=b|0;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;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;o=(d[b>>0]|0)-(d[a>>0]|0)|0;n=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;m=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;l=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;k=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;j=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;i=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;c=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Gl(a,b,c,e,f){a=a|0;b=b|0;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;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;n=d[a+1>>0]|0;o=(d[b>>0]|0)-(((d[a>>0]|0)+1+n|0)>>>1)|0;m=d[a+2>>0]|0;n=(d[b+1>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+3>>0]|0;m=(d[b+2>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+4>>0]|0;l=(d[b+3>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+5>>0]|0;k=(d[b+4>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+6>>0]|0;j=(d[b+5>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+7>>0]|0;i=(d[b+6>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+7>>0]|0)-((c+1+(d[a+8>>0]|0)|0)>>>1)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Hl(a,b,c,e,f){a=a|0;b=b|0;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;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;p=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;o=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;n=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;m=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;l=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;k=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;j=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;i=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Il(a,b,c,e,f){a=a|0;b=b|0;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,r=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;q=d[a+1>>0]|0;o=d[c+1>>0]|0;p=(d[b>>0]|0)-(((d[a>>0]|0)+2+q+(d[c>>0]|0)+o|0)>>>2)|0;r=d[a+2>>0]|0;n=d[c+2>>0]|0;o=(d[b+1>>0]|0)-((q+2+o+r+n|0)>>>2)|0;q=d[a+3>>0]|0;m=d[c+3>>0]|0;n=(d[b+2>>0]|0)-((r+2+n+q+m|0)>>>2)|0;r=d[a+4>>0]|0;l=d[c+4>>0]|0;m=(d[b+3>>0]|0)-((q+2+m+r+l|0)>>>2)|0;q=d[a+5>>0]|0;k=d[c+5>>0]|0;l=(d[b+4>>0]|0)-((r+2+l+q+k|0)>>>2)|0;r=d[a+6>>0]|0;j=d[c+6>>0]|0;k=(d[b+5>>0]|0)-((q+2+k+r+j|0)>>>2)|0;q=d[a+7>>0]|0;i=d[c+7>>0]|0;j=(d[b+6>>0]|0)-((r+2+j+q+i|0)>>>2)|0;i=(d[b+7>>0]|0)-((q+2+i+(d[a+8>>0]|0)+(d[c+8>>0]|0)|0)>>>2)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Kl(a,b,c,d,8)|0;f=(Kl(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Kl(a,g,b,d,8)|0)+f|0;f=f+(Kl(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Kl(a,b,e,f,g){a=a|0;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;i=Ec;Ec=Ec+256|0;h=i;a=0;while(1){if((a|0)==8){a=0;g=0;break}j=H(a,f)|0;p=j+1|0;r=d[e+p>>0]|0;p=d[b+p>>0]|0;k=(d[e+j>>0]|0)-(d[b+j>>0]|0)|0;o=k+r-p|0;g=a<<3;p=k-r+p|0;r=j+2|0;k=j+3|0;q=d[e+k>>0]|0;k=d[b+k>>0]|0;r=(d[e+r>>0]|0)-(d[b+r>>0]|0)|0;m=r+q-k|0;k=r-q+k|0;q=j+4|0;r=j+5|0;s=d[e+r>>0]|0;r=d[b+r>>0]|0;q=(d[e+q>>0]|0)-(d[b+q>>0]|0)|0;n=q+s-r|0;r=q-s+r|0;s=j+6|0;j=j+7|0;q=d[e+j>>0]|0;j=d[b+j>>0]|0;s=(d[e+s>>0]|0)-(d[b+s>>0]|0)|0;l=s+q-j|0;j=s-q+j|0;q=m+o|0;m=o-m|0;o=k+p|0;k=p-k|0;p=l+n|0;l=n-l|0;n=j+r|0;j=r-j|0;c[h+(g<<2)>>2]=p+q;c[h+((g|4)<<2)>>2]=q-p;c[h+((g|1)<<2)>>2]=n+o;c[h+((g|5)<<2)>>2]=o-n;c[h+((g|2)<<2)>>2]=l+m;c[h+((g|6)<<2)>>2]=m-l;c[h+((g|3)<<2)>>2]=j+k;c[h+((g|7)<<2)>>2]=k-j;a=a+1|0}while(1){if((g|0)==8)break;w=h+(g<<2)|0;q=c[w>>2]|0;u=h+(g+8<<2)|0;t=c[u>>2]|0;v=t+q|0;t=q-t|0;q=h+(g+16<<2)|0;b=c[q>>2]|0;l=h+(g+24<<2)|0;k=c[l>>2]|0;s=k+b|0;k=b-k|0;b=h+(g+32<<2)|0;n=c[b>>2]|0;f=h+(g+40<<2)|0;j=c[f>>2]|0;e=j+n|0;j=n-j|0;n=h+(g+48<<2)|0;o=c[n>>2]|0;m=h+(g+56<<2)|0;r=c[m>>2]|0;p=r+o|0;r=o-r|0;o=s+v|0;c[w>>2]=o;s=v-s|0;c[q>>2]=s;q=k+t|0;c[u>>2]=q;k=t-k|0;c[l>>2]=k;l=p+e|0;c[b>>2]=l;p=e-p|0;c[n>>2]=p;n=r+j|0;c[f>>2]=n;r=j-r|0;c[m>>2]=r;m=l+o|0;l=o-l|0;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=k+r|0;r=k-r|0;a=((l|0)>-1?l:0-l|0)+a+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)|0;g=g+1|0}Ec=i;return a|0}function Ll(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Ml(a,b,c,d,8)|0;f=(Ml(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Ml(a,g,b,d,8)|0)+f|0;f=f+(Ml(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Ml(a,b,e,f,g){a=a|0;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;h=Ec;Ec=Ec+256|0;g=h;a=0;while(1){if((a|0)==8){a=0;e=0;break}i=H(a,f)|0;p=d[b+i>>0]|0;o=d[b+(i+1)>>0]|0;n=o+p|0;e=a<<3;o=p-o|0;p=d[b+(i+2)>>0]|0;j=d[b+(i+3)>>0]|0;l=j+p|0;j=p-j|0;p=d[b+(i+4)>>0]|0;q=d[b+(i+5)>>0]|0;m=q+p|0;q=p-q|0;p=d[b+(i+6)>>0]|0;i=d[b+(i+7)>>0]|0;k=i+p|0;i=p-i|0;p=l+n|0;l=n-l|0;n=j+o|0;j=o-j|0;o=k+m|0;k=m-k|0;m=i+q|0;i=q-i|0;c[g+(e<<2)>>2]=o+p;c[g+((e|4)<<2)>>2]=p-o;c[g+((e|1)<<2)>>2]=m+n;c[g+((e|5)<<2)>>2]=n-m;c[g+((e|2)<<2)>>2]=k+l;c[g+((e|6)<<2)>>2]=l-k;c[g+((e|3)<<2)>>2]=i+j;c[g+((e|7)<<2)>>2]=j-i;a=a+1|0}while(1){if((e|0)==8)break;w=g+(e<<2)|0;o=c[w>>2]|0;u=g+(e+8<<2)|0;t=c[u>>2]|0;v=t+o|0;t=o-t|0;o=g+(e+16<<2)|0;s=c[o>>2]|0;j=g+(e+24<<2)|0;i=c[j>>2]|0;q=i+s|0;i=s-i|0;s=g+(e+32<<2)|0;l=c[s>>2]|0;b=g+(e+40<<2)|0;f=c[b>>2]|0;r=f+l|0;f=l-f|0;l=g+(e+48<<2)|0;m=c[l>>2]|0;k=g+(e+56<<2)|0;p=c[k>>2]|0;n=p+m|0;p=m-p|0;m=q+v|0;c[w>>2]=m;q=v-q|0;c[o>>2]=q;o=i+t|0;c[u>>2]=o;i=t-i|0;c[j>>2]=i;j=n+r|0;c[s>>2]=j;n=r-n|0;c[l>>2]=n;l=p+f|0;c[b>>2]=l;p=f-p|0;c[k>>2]=p;k=j+m|0;j=m-j|0;m=l+o|0;l=o-l|0;o=n+q|0;n=q-n|0;q=i+p|0;p=i-p|0;a=((j|0)>-1?j:0-j|0)+a+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)|0;e=e+1|0}w=(c[g+128>>2]|0)+(c[g>>2]|0)|0;Ec=h;return a-((w|0)>-1?w:0-w|0)|0}function Nl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Ol(a,b,c,d,8)|0;f=(Ol(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Ol(a,g,b,d,8)|0)+f|0;f=f+(Ol(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Ol(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=Ec;Ec=Ec+128|0;f=g;Vc[c[a+2964>>2]&255](f,b,d,e);Sc[c[a+2032>>2]&63](f);f=Kc[c[a+2372>>2]&31](f)|0;Ec=g;return f|0}function Pl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Ql(a,b,c,d,8)|0;f=(Ql(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Ql(a,g,b,d,8)|0)+f|0;f=f+(Ql(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Ql(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;i=Ec;Ec=Ec+128|0;h=i;Vc[c[a+2964>>2]&255](h,d,e,f);Sc[c[a+2032>>2]&63](h);g=0;a=0;while(1){if((g|0)==64)break;e=b[h+(g<<1)>>1]|0;f=e<<16>>16;f=e<<16>>16>-1?f:0-f|0;g=g+1|0;a=(a|0)>(f|0)?a:f}Ec=i;return a|0}function Rl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Sl(a,b,c,d,8)|0;f=(Sl(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Sl(a,g,b,d,8)|0)+f|0;f=f+(Sl(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Sl(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;i=Ec;Ec=Ec+128|0;h=i;Vc[c[a+2964>>2]&255](h,d,e,f);g=0;while(1){if((g|0)==8){g=0;a=0;break}u=h+(g<<4)|0;y=b[u>>1]|0;f=h+(g<<4)+14|0;n=b[f>>1]|0;A=n+y|0;t=h+(g<<4)+2|0;x=b[t>>1]|0;a=h+(g<<4)+12|0;w=b[a>>1]|0;z=w+x|0;s=h+(g<<4)+4|0;m=b[s>>1]|0;l=h+(g<<4)+10|0;v=b[l>>1]|0;j=v+m|0;r=h+(g<<4)+6|0;d=b[r>>1]|0;o=h+(g<<4)+8|0;e=b[o>>1]|0;k=e+d|0;q=k+A|0;p=j+z|0;k=A-k|0;j=z-j|0;n=y-n|0;w=x-w|0;v=m-v|0;e=d-e|0;d=(n>>1)+n+w+v|0;m=n-e-((v>>1)+v)|0;n=n-w-(w>>1)+e|0;e=e+(w-v)+(e>>1)|0;b[u>>1]=q+p;b[t>>1]=(e>>>2)+d;b[s>>1]=k+(j>>>1);b[r>>1]=m+(n>>>2);b[o>>1]=q-p;b[l>>1]=n-(m>>>2);b[a>>1]=(k>>>1)-j;b[f>>1]=(d>>>2)-e;g=g+1|0}while(1){if((a|0)==8)break;w=b[h+(a<<1)>>1]|0;q=b[h+112+(a<<1)>>1]|0;n=q+w|0;u=b[h+16+(a<<1)>>1]|0;A=b[h+96+(a<<1)>>1]|0;o=A+u|0;y=b[h+32+(a<<1)>>1]|0;t=b[h+80+(a<<1)>>1]|0;x=t+y|0;s=b[h+48+(a<<1)>>1]|0;z=b[h+64+(a<<1)>>1]|0;r=z+s|0;p=r+n|0;v=x+o|0;r=n-r|0;x=o-x|0;q=w-q|0;A=u-A|0;t=y-t|0;z=s-z|0;s=(q>>1)+q+A+t|0;y=q-z-((t>>1)+t)|0;q=q-A-(A>>1)+z|0;z=z+(A-t)+(z>>1)|0;t=p+v|0;A=(z>>2)+s|0;u=r+(x>>1)|0;w=y+(q>>2)|0;v=p-v|0;y=q-(y>>2)|0;x=(r>>1)-x|0;z=(s>>2)-z|0;g=((t|0)>-1?t:0-t|0)+g+((u|0)>-1?u:0-u|0)+((v|0)>-1?v:0-v|0)+((w|0)>-1?w:0-w|0)+((x|0)>-1?x:0-x|0)+((y|0)>-1?y:0-y|0)+((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)|0;a=a+1|0}Ec=i;return g|0}function Tl(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[73900+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[73900+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+8>>0]|0)-(d[a+8>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+9>>0]|0)-(d[a+9>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+10>>0]|0)-(d[a+10>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+11>>0]|0)-(d[a+11>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+12>>0]|0)-(d[a+12>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+13>>0]|0)-(d[a+13>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+14>>0]|0)-(d[a+14>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+15>>0]|0)-(d[a+15>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Ul(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[73900+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[73900+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Vl(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[73900+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[73900+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[73900+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Wl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Xl(a,b,c,d,8)|0;f=(Xl(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Xl(a,g,b,d,8)|0)+f|0;f=f+(Xl(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Xl(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;k=Ec;Ec=Ec+272|0;i=k;h=k+256|0;j=i+128|0;c[a+4304>>2]=0;Vc[c[a+2964>>2]&255](i,d,e,f);g=j;d=i;e=g+128|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(e|0));g=a+1920|0;c[a+16>>2]=Pc[c[a+6244>>2]&63](a,i,0,c[g>>2]|0,h)|0;Vc[c[a+6236>>2]&255](a,i,0,c[g>>2]|0);om(i);g=0;d=0;while(1){if((d|0)==64)break;a=(b[i+(d<<1)>>1]|0)-(b[j+(d<<1)>>1]|0)|0;g=(H(a,a)|0)+g|0;d=d+1|0}Ec=k;return g|0}function Yl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Zl(a,b,c,d,8)|0;f=(Zl(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Zl(a,g,b,d,8)|0)+f|0;f=f+(Zl(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Zl(a,e,f,g,h){a=a|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;s=Ec;Ec=Ec+272|0;p=s+128|0;q=s+64|0;r=s;n=s+256|0;o=c[a+4908>>2]|0;nm(q,e,g);nm(r,f,g);Vc[c[a+2960>>2]&255](p,q,r,8);k=a+1920|0;l=Pc[c[a+6244>>2]&63](a,p,0,c[k>>2]|0,n)|0;c[a+16>>2]=l;m=(c[a+4304>>2]|0)==0;if(m){g=0;e=a+4932|0;f=a+4928|0;h=0}else{g=1;e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[p>>1]|0)+256)>>0]|0}j=c[e>>2]|0;i=c[f>>2]|0;do if((l|0)>=(g|0)){f=0;while(1){c[n>>2]=g;if((g|0)>=(l|0))break;e=b[p+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=o;f=0;h=e+h|0}g=g+1|0}e=d[a+204+l>>0]|0;c[n>>2]=e;e=(b[p+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+o|0;break}}while(0);do if((l|0)>-1)if(m){Vc[c[a+6236>>2]&255](a,p,0,c[k>>2]|0);break}else{Vc[c[a+6232>>2]&255](a,p,0,c[k>>2]|0);break}while(0);Uc[c[a+2300>>2]&1023](r,8,p);a=Pc[c[a+2404>>2]&63](0,r,q,8,8)|0;r=c[k>>2]|0;a=((H(H(h*109|0,r)|0,r)|0)+64>>7)+a|0;Ec=s;return a|0}function _l(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=$l(a,b,c,d,8)|0;f=($l(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=($l(a,g,b,d,8)|0)+f|0;f=f+($l(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function $l(a,e,f,g,h){a=a|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=Ec;Ec=Ec+144|0;l=o;m=o+128|0;n=c[a+4908>>2]|0;Vc[c[a+2964>>2]&255](l,e,f,g);k=Pc[c[a+6244>>2]&63](a,l,0,c[a+1920>>2]|0,m)|0;c[a+16>>2]=k;if(!(c[a+4304>>2]|0)){e=a+4932|0;f=a+4928|0;h=0;g=0}else{e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[l>>1]|0)+256)>>0]|0;g=1}j=c[e>>2]|0;i=c[f>>2]|0;do if((k|0)>=(g|0)){f=0;while(1){c[m>>2]=g;if((g|0)>=(k|0))break;e=b[l+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=n;f=0;h=e+h|0}g=g+1|0}e=d[a+204+k>>0]|0;c[m>>2]=e;e=(b[l+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+n|0;break}}while(0);Ec=o;return h|0}function am(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function bm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function cm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function dm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function em(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(H(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function fm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(H(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function gm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=H(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=H(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=H(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(H(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function hm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=H(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=H(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=H(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(H(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function im(a,b,e,f,g){a=a|0;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;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==16)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(H(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==15)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=H(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function jm(a,b,e,f,g){a=a|0;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;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==8)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(H(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==7)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=H(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function km(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,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=(d[c>>0]|0)-(d[e>>0]|0)|0;u=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;w=u-v|0;t=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;u=t-u|0;s=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;t=s-t|0;r=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;s=r-s|0;q=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;r=q-r|0;p=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;q=p-q|0;o=(d[c+7>>0]|0)-(d[e+7>>0]|0)|0;p=o-p|0;n=(d[c+8>>0]|0)-(d[e+8>>0]|0)|0;o=n-o|0;h=(d[c+9>>0]|0)-(d[e+9>>0]|0)|0;n=h-n|0;i=(d[c+10>>0]|0)-(d[e+10>>0]|0)|0;h=i-h|0;j=(d[c+11>>0]|0)-(d[e+11>>0]|0)|0;i=j-i|0;k=(d[c+12>>0]|0)-(d[e+12>>0]|0)|0;j=k-j|0;l=(d[c+13>>0]|0)-(d[e+13>>0]|0)|0;k=l-k|0;b=(d[c+14>>0]|0)-(d[e+14>>0]|0)|0;l=b-l|0;b=(d[c+15>>0]|0)-(d[e+15>>0]|0)-b|0;m=1;b=((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((h|0)>-1?h:0-h|0)+((i|0)>-1?i:0-i|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((b|0)>-1?b:0-b|0)|0;while(1){k=c+f|0;l=e+f|0;if((m|0)>=(g|0))break;h=a[k>>0]|0;i=a[l>>0]|0;w=(d[e>>0]|0)-(d[c>>0]|0)+((h&255)-(i&255))|0;j=1;b=((w|0)>-1?w:0-w|0)+b|0;while(1){if((j|0)==16)break;v=a[k+j>>0]|0;w=a[l+j>>0]|0;t=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;s=(h&255)-(i&255)|0;u=j-f+-1|0;u=(v&255)-(w&255)-(mm(t,s,s+t-(d[k+u>>0]|0)+(d[l+u>>0]|0)|0)|0)|0;j=j+1|0;b=((u|0)>-1?u:0-u|0)+b|0;h=v;i=w}m=m+1|0;e=l;c=k}return b|0}function lm(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,p=0,q=0,r=0,s=0,t=0;b=a[c>>0]|0;h=a[e>>0]|0;p=(b&255)-(h&255)|0;j=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;q=j-p|0;k=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;j=k-j|0;l=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;k=l-k|0;m=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;l=m-l|0;n=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;m=n-m|0;i=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;n=i-n|0;i=(d[c+7>>0]|0)-(d[e+7>>0]|0)-i|0;o=1;i=((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((i|0)>-1?i:0-i|0)|0;while(1){k=c+f|0;l=e+f|0;if((o|0)>=(g|0))break;m=a[k>>0]|0;n=a[l>>0]|0;b=(h&255)-(b&255)+((m&255)-(n&255))|0;j=1;b=((b|0)>-1?b:0-b|0)+i|0;h=m;i=n;while(1){if((j|0)==8)break;p=a[k+j>>0]|0;q=a[l+j>>0]|0;s=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;t=(h&255)-(i&255)|0;r=j-f+-1|0;r=(p&255)-(q&255)-(mm(s,t,t+s-(d[k+r>>0]|0)+(d[l+r>>0]|0)|0)|0)|0;j=j+1|0;b=((r|0)>-1?r:0-r|0)+b|0;h=p;i=q}o=o+1|0;i=b;e=l;c=k;b=m;h=n}return i|0}function mm(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function nm(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==8)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function om(a){a=a|0;var b=0;b=0;while(1){if((b|0)==8){b=0;break}pm(a+(b<<3<<1)|0);b=b+1|0}while(1){if((b|0)==8)break;qm(a+(b<<1)|0);b=b+1|0}return}function pm(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;p=a+4|0;e=c[p>>2]|0;q=a+8|0;r=a+12|0;l=c[r>>2]|0;s=a+2|0;f=b[s>>1]|0;d=b[a>>1]|0;if(!(c[q>>2]|e|l|f)){s=d<<3&65528|d<<19;c[a>>2]=s;c[p>>2]=s;c[q>>2]=s;c[r>>2]=s}else{o=(d*16383|0)+1024|0;h=e<<16>>16;j=h*21407|0;d=j+o|0;h=h*8867|0;g=h+o|0;h=o-h|0;j=o-j|0;o=a+6|0;e=b[o>>1]|0;m=(e*19266|0)+(f*22725|0)|0;k=(H(e,-4520)|0)+(f*19266|0)|0;i=(H(e,-22725)|0)+(f*12873|0)|0;e=(H(e,-12873)|0)+(f*4520|0)|0;n=q;f=c[n>>2]|0;if((f|0)==0&(c[n+4>>2]|0)==0){n=e;l=m;e=a+10|0;f=a+14|0}else{x=f<<16>>16;v=x*16383|0;w=l<<16>>16;u=w*8867|0;x=H(x,-16383)|0;w=w*21407|0;t=a+10|0;y=b[t>>1]|0;f=a+14|0;l=b[f>>1]|0;n=(y*19266|0)+e+(H(l,-22725)|0)|0;i=(y*4520|0)+i+(l*19266|0)|0;k=(H(y,-22725)|0)+k+(H(l,-12873)|0)|0;l=(y*12873|0)+m+(l*4520|0)|0;j=v+j-u|0;h=x+h+w|0;g=x+g-w|0;d=v+d+u|0;e=t}b[a>>1]=(l+d|0)>>>11;b[f>>1]=(d-l|0)>>>11;b[s>>1]=(k+g|0)>>>11;b[r>>1]=(g-k|0)>>>11;b[p>>1]=(i+h|0)>>>11;b[e>>1]=(h-i|0)>>>11;b[o>>1]=(n+j|0)>>>11;b[q>>1]=(j-n|0)>>>11}return}function qm(a){a=a|0;var 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;n=((b[a>>1]|0)*16383|0)+524256|0;s=a+32|0;j=b[s>>1]|0;d=n+(H(j,-8867)|0)|0;r=n+(H(j,-21407)|0)|0;o=a+16|0;c=b[o>>1]|0;p=a+48|0;q=b[p>>1]|0;f=(q*19266|0)+(c*22725|0)|0;e=(H(q,-4520)|0)+(c*19266|0)|0;g=(H(q,-22725)|0)+(c*12873|0)|0;c=(H(q,-12873)|0)+(c*4520|0)|0;q=a+64|0;h=b[q>>1]|0;m=h<<16>>16==0;h=h<<16>>16;i=H(h,-16383)|0;h=m?0:h*16383|0;l=n+(j*21407|0)+h|0;i=m?0:i;j=n+(j*8867|0)+i|0;i=d+i|0;h=r+h|0;r=a+80|0;d=b[r>>1]|0;if(!(d<<16>>16)){m=f;d=g}else{d=d<<16>>16;c=(d*19266|0)+c|0;e=(H(d,-22725)|0)+e|0;m=(d*12873|0)+f|0;d=(d*4520|0)+g|0}n=a+96|0;f=b[n>>1]|0;if(!(f<<16>>16)){k=i;g=l}else{g=f<<16>>16;h=(H(g,-8867)|0)+h|0;k=(g*21407|0)+i|0;j=(H(g,-21407)|0)+j|0;g=(g*8867|0)+l|0}i=a+112|0;f=b[i>>1]|0;if(!(f<<16>>16))f=m;else{l=f<<16>>16;c=(H(l,-22725)|0)+c|0;e=(H(l,-12873)|0)+e|0;f=(l*4520|0)+m|0;d=(l*19266|0)+d|0}b[a>>1]=f+g>>20;b[o>>1]=e+j>>20;b[s>>1]=d+k>>20;b[p>>1]=c+h>>20;b[q>>1]=h-c>>20;b[r>>1]=k-d>>20;b[n>>1]=j-e>>20;b[i>>1]=g-f>>20;return}function rm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Ec;Ec=Ec+16|0;b=tm(a,b,c)|0;if((b|0)<0)We(a,16,149947,d);Ec=d;return b|0}function sm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=a+27016|0;g=c[i>>2]|0;f=c[a+27008>>2]|0;e=(H(f+1|0,g)|0)+1|0;h=H(f<<4,c[a+27012>>2]<<2|1)|0;b=a+29924|0;c[b>>2]=xg(e+g|0,17)|0;d=a+29928|0;c[d>>2]=xg((c[i>>2]|0)+e<<2,17)|0;e=a+29932|0;c[e>>2]=xg(h+16|0,17)|0;f=xg(H(g<<2,f)|0,17)|0;a=a+29936|0;c[a>>2]=f;if(((c[b>>2]|0)!=0?(c[d>>2]|0)!=0:0)?!((f|0)==0|(c[e>>2]|0)==0):0)a=0;else{Zf(b);Zf(d);Zf(e);Zf(a);a=-12}return a|0}function tm(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=Ec;Ec=Ec+16|0;f=j;e=a+28|0;i=c[(c[e>>2]|0)+20>>2]|0;c[b+8>>2]=a;c[b+4>>2]=a;a:do if(!(c[a+696>>2]&1))e=um(a,c[b>>2]|0,d)|0;else{h=i+300|0;do if((c[h>>2]|0)!=1){if(!(c[(c[a+12>>2]|0)+68>>2]|0)){if(c[a+700>>2]|0)break;if((c[a+400>>2]|0)==10)break}We(a,16,149975,f);e=-1;break a}while(0);if(c[(c[e>>2]|0)+4>>2]|0){e=Bg(8)|0;c[b+12>>2]=e;if(!e){e=-12;break}g=c[e+4>>2]|0;c[g>>2]=-1;c[g+4>>2]=-1}JU((c[i>>2]|0)+8|0)|0;g=a+700|0;if((c[g>>2]|0)==0?(c[a+400>>2]|0)!=10:0){f=i+184|0;JU(f)|0;c[i+316>>2]=c[b>>2];c[i+320>>2]=d;c[h>>2]=2;e=i+60|0;zW(e|0)|0;while(1){if((c[h>>2]|0)==1)break;yb(e|0,f|0)|0}e=c[i+296>>2]|0;KU(f)|0}else e=um(a,c[b>>2]|0,d)|0;if(((c[g>>2]|0)==0?(c[a+400>>2]|0)!=10:0)?(c[(c[a+12>>2]|0)+68>>2]|0)==0:0)Mh(a);if(e|0)Cf(b+12|0);KU((c[i>>2]|0)+8|0)|0}while(0);Ec=j;return e|0}function um(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ec;Ec=Ec+16|0;d=vm(a,b,d)|0;if((d|0)<0){We(a,16,150037,e);c[b+72>>2]=0;c[b+68>>2]=0}Ec=e;return d|0}function vm(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=Ec;Ec=Ec+16|0;i=m+8|0;e=m;j=c[a+592>>2]|0;k=a+8|0;do if(!(c[k>>2]|0)){h=a+92|0;g=a+96|0;f=a+872|0;if((Zg(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,c[f+4>>2]|0,-1,0,a)|0)>=0?(c[a+112>>2]|0)>=0:0){f=b+68|0;e=b+72|0;if((c[f>>2]|0)>=1?(c[e>>2]|0)>=1:0)e=1;else{o=c[h>>2]|0;h=c[a+680>>2]|0;n=0-(0-(c[a+100>>2]|0)>>h)|0;c[f>>2]=(o|0)>(n|0)?o:n;g=c[g>>2]|0;h=0-(0-(c[a+104>>2]|0)>>h)|0;c[e>>2]=(g|0)>(h|0)?g:h;e=0}if((((c[b>>2]|0)==0?(c[b+4>>2]|0)==0:0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){f=e;l=13;break}We(a,16,150102,i);e=-22;break}We(a,16,150058,e);e=-22}else{f=1;l=13}while(0);if((l|0)==13){e=wm(a,b)|0;if((e|0)>=0){if(j){e=c[j+20>>2]|0;if(!e)l=18;else e=Mc[e&15](a,b)|0}else{c[a+768>>2]=c[a+112>>2];l=18}if((l|0)==18){e=Nc[c[a+400>>2]&15](a,b,d)|0;if((e|0)>=0){xm(a,b);e=ym(b)|0}}if((c[k>>2]|f|0)==0?(c[(c[a+12>>2]|0)+116>>2]&16|0)==0:0){c[b+68>>2]=c[a+92>>2];c[b+72>>2]=c[a+96>>2]}if((e|0)<0)bg(b)}}Ec=m;return e|0}function wm(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;l=Ec;Ec=Ec+32|0;h=l+24|0;k=l+16|0;j=l+8|0;i=l;g=c[(c[a+28>>2]|0)+40>>2]|0;do if(g){f=g+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=b+104|0;c[d>>2]=e;c[d+4>>2]=f;d=b+112|0;c[d>>2]=e;c[d+4>>2]=f;d=g+56|0;f=c[d+4>>2]|0;e=b+328|0;c[e>>2]=c[d>>2];c[e+4>>2]=f;e=g+48|0;f=c[e+4>>2]|0;d=b+336|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[b+356>>2]=c[g+28>>2];d=0;while(1){if(d>>>0>=8){e=9;break}e=rh(g,c[74924+(d<<3)>>2]|0,h)|0;if(e|0){f=ah(b,c[74924+(d<<3)+4>>2]|0,c[h>>2]|0)|0;if(!f){e=7;break}wW(c[f+4>>2]|0,e|0,c[h>>2]|0)|0}d=d+1|0}if((e|0)==7){d=-12;break}else if((e|0)==9){Am(g,b);f=b+296|0;d=c[f>>2]|0;c[f>>2]=(c[g+36>>2]&4|0)==0?d&-5:d|4;e=10;break}}else e=10;while(0);a:do if((e|0)==10){f=a+584|0;g=c[f+4>>2]|0;d=b+224|0;c[d>>2]=c[f>>2];c[d+4>>2]=g;d=b+304|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+316>>2];d=b+308|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+320>>2];d=b+312|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+324>>2];d=b+300|0;if(!(c[d>>2]|0))c[d>>2]=c[a+328>>2];d=b+316|0;if(!(c[d>>2]|0))c[d>>2]=c[a+332>>2];switch(c[(c[a+12>>2]|0)+8>>2]|0){case 0:{c[b+80>>2]=c[a+112>>2];d=b+92|0;if(!(c[d>>2]|0)){g=a+188|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}e=c[b+68>>2]|0;if(!e){d=0;break a}f=c[b+72>>2]|0;if(!f){d=0;break a};c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];if((Bm(e,f,h)|0)>=0){d=0;break a}k=b+96|0;j=c[k>>2]|0;c[i>>2]=c[d>>2];c[i+4>>2]=j;We(a,24,176614,i);c[b+92>>2]=0;c[k>>2]=1;d=0;break a}case 1:break;default:{d=0;break a}}d=b+232|0;if(!(c[d>>2]|0))c[d>>2]=c[a+344>>2];d=b+80|0;if((c[d>>2]|0)<0)c[d>>2]=c[a+352>>2];f=b+240|0;i=f;do if((c[i>>2]|0)==0&(c[i+4>>2]|0)==0){g=a+376|0;e=g;d=c[e>>2]|0;e=c[e+4>>2]|0;if((d|0)==0&(e|0)==0){d=c[a+348>>2]|0;if(d>>>0<=64)break;c[k>>2]=d;We(a,16,150266,k);d=-38;break a}d=Xg(d,e)|0;if((d|0)==(c[a+348>>2]|0)){j=g;k=c[j+4>>2]|0;a=f;c[a>>2]=c[j>>2];c[a+4>>2]=k;break}else{We(a,16,150229,j);d=-22;break a}}else d=c[a+348>>2]|0;while(0);c[b+352>>2]=d;d=0}while(0);Ec=l;return d|0}function xm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+32|0;i=j+16|0;g=j;a:do if(!(c[a+8>>2]|0)){d=b+80|0;e=Qg(c[d>>2]|0)|0;d=qg(c[d>>2]|0)|0;if(!d)f=0;else f=c[d+8>>2]|0;e=(e|0)!=1|(f&2|0)==0?e:2;d=0;while(1){if((d|0)>=(e|0))break;if(!(c[b+(d<<2)>>2]|0)){h=7;break}else d=d+1|0}if((h|0)==7){c[g>>2]=150145;c[g+4>>2]=128996;c[g+8>>2]=1782;We(0,0,164054,g);Za()}d=(f&64|0)==0|(e|0)!=1?e:2;e=(d|0)>0;while(1){if(!(e&d>>>0<8))break a;f=b+(d<<2)|0;if(c[f>>2]|0)We(a,16,150160,i);c[f>>2]=0;d=d+1|0}}while(0);Ec=j;return}function ym(a){a=a|0;var b=0,d=0,e=0;e=Ec;Ec=Ec+16|0;d=e;b=a+400|0;Cf(b);a=Of(20)|0;c[d>>2]=a;do if(a){a=ng(a,20,25,0,1)|0;if(!a){Se(d);a=-12;break}else{c[b>>2]=a;a=0;break}}else a=-12;while(0);Ec=e;return a|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;e=Ec;Ec=Ec+16|0;d=e;c[d>>2]=b;a=c[b+8>>2]|0;if(a|0)Sc[a&63](c[b+4>>2]|0);a=c[b+16>>2]|0;if(a|0)Sc[a&63](c[b+12>>2]|0);Se(d);Ec=e;return}function Am(a,b){a=a|0;b=b|0;var d=0,e=0;d=Ec;Ec=Ec+16|0;e=d;a=rh(a,13,e)|0;Dm(a,c[e>>2]|0,b+344|0)|0;Ec=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[d+4>>2]|0;if((e|0)>=1?(f=c[d>>2]|0,(f|0)>=0):0){d=(f|0)<(e|0);if((f|0)==0|(f|0)==(e|0))d=0;else{g=d?e:f;f=d?f:e;d=Cm(d?a:b,0,f,((f|0)<0)<<31>>31,g,((g|0)<0)<<31>>31,0)|0;f=M()|0;d=(f|0)>0|(f|0)==0&d>>>0>0?0:-22}}else d=-22;return d|0}function Cm(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;do if(!((d|0)<0|((f|0)<0|(f|0)==0&e>>>0<1))?(j=g&-8193,!(j>>>0>5|(j|0)==4)):0){if(g&8192){j=hW(a|0,b|0,1,-2147483648)|0;i=M()|0;if(i>>>0<0|(i|0)==0&j>>>0<2)break;g=g+-8192|0}if((b|0)<0){j=(b|0)>-2147483648|(b|0)==-2147483648&a>>>0>1;j=iW(0,0,(j?a:1)|0,(j?b:-2147483648)|0)|0;f=Cm(j,M()|0,c,d,e,f,g>>>1&1^g)|0;f=iW(0,0,f|0,M()|0)|0;L(M()|0);return f|0}if((g|0)==5){g=lW(e|0,f|0,2,0)|0;h=M()|0}else{j=(g&1|0)==0;g=hW(e|0,f|0,-1,-1)|0;h=M()|0;g=j?0:g;h=j?0:h}if(!(((d|0)<0|(d|0)==0&c>>>0<2147483648)&((f|0)<0|(f|0)==0&e>>>0<2147483648))){l=qW(c|0,d|0,32)|0;k=M()|0;j=nW(l|0,k|0,a|0,0)|0;d=M()|0;i=nW(c|0,0,b|0,0)|0;i=hW(j|0,d|0,i|0,M()|0)|0;d=M()|0;c=nW(c|0,0,a|0,0)|0;c=hW(0,i|0,c|0,M()|0)|0;j=M()|0;a=nW(l|0,k|0,b|0,0)|0;a=hW(d|0,0,a|0,M()|0)|0;a=hW(a|0,M()|0,(j>>>0<i>>>0|(j|0)==(i|0)&c>>>0<0)&1|0,0)|0;b=M()|0;j=hW(g|0,h|0,c|0,j|0)|0;c=M()|0;b=hW(a|0,b|0,(c>>>0<h>>>0|(c|0)==(h|0)&j>>>0<g>>>0)&1|0,0)|0;a=63;g=M()|0;h=d;while(1){if((a|0)<=-1)break;d=rW(j|0,c|0,a|0)|0;M()|0;n=sW(b|0,g|0,1)|0;m=M()|0;n=d&1|n;d=sW(i|0,h|0,1)|0;l=M()|0;k=m>>>0<f>>>0|(m|0)==(f|0)&n>>>0<e>>>0;m=iW(n|0,m|0,(k?0:e)|0,(k?0:f)|0)|0;a=a+-1|0;b=m;g=M()|0;i=d|(k^1)&1;h=l}a=(h|0)<0;b=a?-2147483648:h;a=a?0:i;break}if((b|0)<0|(b|0)==0&a>>>0<2147483648){a=nW(c|0,d|0,a|0,b|0)|0;a=hW(g|0,h|0,a|0,M()|0)|0;a=lW(a|0,M()|0,e|0,f|0)|0;b=M()|0;break}i=lW(a|0,b|0,e|0,f|0)|0;j=M()|0;a=oW(a|0,b|0,e|0,f|0)|0;a=nW(a|0,M()|0,c|0,d|0)|0;a=hW(a|0,M()|0,g|0,h|0)|0;a=lW(a|0,M()|0,e|0,f|0)|0;b=M()|0;if(((c|0)!=0|(d|0)!=0)&((j|0)>0|(j|0)==0&i>>>0>2147483646)?(n=iW(-1,2147483647,a|0,b|0)|0,n=lW(n|0,M()|0,c|0,d|0)|0,m=M()|0,(j|0)>(m|0)|(j|0)==(m|0)&i>>>0>n>>>0):0){b=-2147483648;a=0;break}n=nW(i|0,j|0,c|0,d|0)|0;a=hW(a|0,b|0,n|0,M()|0)|0;b=M()|0}else{b=-2147483648;a=0}while(0);L(b|0);return a|0}function Dm(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;f=b+c|0;a:do if((c|0)!=0&((b|0)!=0&(d|0)!=0))if(!(a[f+-1>>0]|0)){e=b;b=0;while(1){if(e>>>0>=f>>>0)break a;c=e+(MT(e)|0)+1|0;if(c>>>0>=f>>>0){b=-1094995529;break a}if(!(a[e>>0]|0)){b=-1094995529;break a}b=dh(d,e,c,0)|0;if((b|0)<0)break a;e=c+(MT(c)|0)+1|0}}else b=-1094995529;else b=0;while(0);return b|0}function Em(a){a=a|0;switch(a|0){case 12:{a=0;break}case 13:{a=4;break}case 14:{a=5;break}default:{}}return a|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+16|0;f=j;h=j+8|0;d=c[a+28216>>2]|0;e=c[d+1184>>2]|0;a:do switch(e|0){case 9:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?75:68;g=23;break a}else{e=h+4|0;d=(d|0)==2?72:62;g=23;break a}}case 10:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?77:70;g=23;break a}else{e=h+4|0;d=(d|0)==2?66:64;g=23;break a}}case 12:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?137:133;g=23;break a}else{e=h+4|0;d=(d|0)==2?129:125;g=23;break a}}case 14:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?139:135;g=23;break a}else{e=h+4|0;d=(d|0)==2?131:127;g=23;break a}}case 8:{e=c[d+12>>2]|0;if((e|0)==3){d=c[a+4>>2]|0;if(!(c[d+324>>2]|0)){e=h+4|0;d=73;g=23;break a}else{e=h+4|0;d=(c[d+328>>2]|0)==2?14:5;g=23;break a}}d=a+4|0;f=c[d>>2]|0;if((e|0)==2){e=h+4|0;d=(c[f+328>>2]|0)==2?13:4;g=23;break a}e=c[(c[f+12>>2]|0)+24>>2]|0;if(!e){e=h+4|0;d=(c[f+328>>2]|0)==2?12:0;g=23}else{i=e;e=h;g=24}break}default:{d=c[a+4>>2]|0;c[f>>2]=e;We(d,16,150443,f);d=-1094995529}}while(0);if((g|0)==23){c[h>>2]=d;i=h;d=a+4|0;g=24}b:do if((g|0)==24){c[e>>2]=-1;g=c[d>>2]|0;h=g+112|0;f=(b|0)!=0;e=0;while(1){d=c[i+(e<<2)>>2]|0;if((d|0)==-1)break;if(f|(d|0)!=(c[h>>2]|0))e=e+1|0;else break b}d=PL(g,i)|0}while(0);Ec=j;return d|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a>>2]|0;g=c[b+4>>2]|0;h=nW(g|0,((g|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;d=M()|0;e=c[b>>2]|0;b=c[a+4>>2]|0;a=nW(b|0,((b|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;a=iW(h|0,d|0,a|0,M()|0)|0;d=M()|0;if((a|0)==0&(d|0)==0)if((g|0)==0|(b|0)==0)if(!f)b=-2147483648;else return ((e|0)==0?-2147483648:(f>>31)-(e>>31)|0)|0;else b=0;else{b=b^g;b=qW(a^b|0,d^((b|0)<0)<<31>>31|0,63)|0;M()|0;b=b|1}return b|0}function Hm(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;switch(b|0){case 66:{d=512;e=3;break}case 244:case 122:case 110:{d=2048;e=3;break}default:{}}if((e|0)==3)b=c[a+1196>>2]<<8&d|b;return b|0}function Im(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;o=Ec;Ec=Ec+32|0;i=o+16|0;h=o;f=c[a+28216>>2]|0;b=c[f+84>>2]|0;d=c[f+80>>2]|0;e=c[f+88>>2]|0;f=c[f+92>>2]|0;m=c[a+25668>>2]|0;p=d+b|0;k=m-p|0;n=c[a+25672>>2]|0;g=f+e|0;j=n-g|0;if(m>>>0<=p>>>0){c[h>>2]=151001;c[h+4>>2]=137858;c[h+8>>2]=878;We(0,0,164054,h);Za()}if(n>>>0<=g>>>0){c[i>>2]=151055;c[i+4>>2]=137858;c[i+8>>2]=879;We(0,0,164054,i);Za()}g=a+29664|0;i=c[g>>2]|0;h=a+29668|0;if((((i|0)>0?(l=c[h>>2]|0,(e|d|0)==0&(l|0)>0):0)?(i+15^k+15)>>>0<16:0)?!((l|0)>(j|0)|((i|0)>(k|0)|(l+15^j+15)>>>0>15)):0){h=l;g=i;f=n-l|0;e=0;d=0;b=m-i|0}else{c[g>>2]=0;c[h>>2]=0;h=j;g=k}p=c[a+4>>2]|0;c[p+100>>2]=m;c[p+104>>2]=n;c[p+92>>2]=g;c[p+96>>2]=h;c[a+25720>>2]=b;c[a+25716>>2]=d;c[a+25724>>2]=e;c[a+25728>>2]=f;Ec=o;return}function Jm(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;n=Ec;Ec=Ec+48|0;j=n+32|0;k=n+24|0;g=n+16|0;f=n+8|0;e=c[a+28216>>2]|0;l=a+4|0;i=c[l>>2]|0;h=e+100|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];Km(i,j)|0;Lm(c[(c[l>>2]|0)+112>>2]|0,a+25676|0,a+25680|0)|0;if(c[e+132>>2]|0){i=sW(c[e+140>>2]|0,0,(c[a+25704>>2]|0)>>>0<44|0)|0;j=M()|0;h=c[l>>2]|0;Mm(h+764|0,h+760|0,H(c[h+84>>2]|0,c[e+136>>2]|0)|0,0,i,j,1073741824,0)|0}Yf(a);c[a+26384>>2]=0;c[a+29564>>2]=1;Nm(a);b=Om(a)|0;a:do if((b|0)<0){We(c[l>>2]|0,16,150416,n);m=15}else{b=e+1184|0;d=c[b>>2]|0;b:do if((d+-8|0)>>>0<=6){switch(d|0){case 11:case 13:break b;default:{}}c[(c[l>>2]|0)+676>>2]=d;c[a+29596>>2]=d;j=e+12|0;i=c[j>>2]|0;c[a+29592>>2]=i;c[a+25664>>2]=(d|0)>8&1;c[a+27048>>2]=i;c[a+27044>>2]=d;Pm(a+16|0,d,i);Qm(a+152|0,c[e+1188>>2]|0);Rm(a+184|0,c[b>>2]|0);Sm(a+25736|0,c[(c[l>>2]|0)+16>>2]|0,c[b>>2]|0,c[j>>2]|0);Tm(a+8|0,c[b>>2]|0);if(!(c[(c[l>>2]|0)+696>>2]&2)){b=Um(a,c[a+25628>>2]|0)|0;if((b|0)>=0){b=0;d=1;break a}We(c[l>>2]|0,16,150469,g);m=15;break a}e=a+25632|0;f=a+25628|0;g=a+25732|0;h=a+27016|0;i=a+26400|0;j=a+26404|0;d=0;while(1){if((d|0)>=(c[e>>2]|0)){b=0;d=1;break a}o=c[f>>2]|0;b=o+(d*34768|0)|0;c[b>>2]=a;p=H(c[h>>2]|0,d<<4)|0;c[o+(d*34768|0)+21704>>2]=(c[g>>2]|0)+p;c[o+(d*34768|0)+32848>>2]=(c[i>>2]|0)+(p<<1);c[o+(d*34768|0)+32852>>2]=(c[j>>2]|0)+(p<<1);b=Um(a,b)|0;if((b|0)<0)break;else d=d+1|0}We(c[l>>2]|0,16,150469,k);m=15;break a}while(0);b=c[l>>2]|0;c[f>>2]=d;We(b,16,150443,f);b=-1094995529;m=15}while(0);if((m|0)==15){Yf(a);d=0}c[a+25692>>2]=d;Ec=n;return b|0}function Km(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=Ec;Ec=Ec+16|0;d=f+8|0;e=f;h=c[a+92>>2]|0;g=c[a+96>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];d=Bm(h,g,d)|0;if((d|0)<0){h=c[b+4>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=h;We(a,24,150972,e);c[a+188>>2]=0;c[a+192>>2]=1}else{g=b;h=c[g+4>>2]|0;d=a+188|0;c[d>>2]=c[g>>2];c[d+4>>2]=h;d=0}Ec=f;return d|0}function Lm(a,b,e){a=a|0;b=b|0;e=e|0;a=qg(a)|0;if(!a)a=-38;else{c[b>>2]=d[a+5>>0];c[e>>2]=d[a+6>>0];a=0}return a|0}function Mm(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;x=g^e;n=(e|0)>-1|(e|0)==-1&d>>>0>4294967295;j=iW(0,0,d|0,e|0)|0;k=M()|0;j=n?d:j;k=n?e:k;n=(g|0)>-1|(g|0)==-1&f>>>0>4294967295;l=iW(0,0,f|0,g|0)|0;m=M()|0;l=n?f:l;m=n?g:m;n=OL(j,k,l,m)|0;o=M()|0;if(!((n|0)==0&(o|0)==0)){d=lW(j|0,k|0,n|0,o|0)|0;e=M()|0;f=lW(l|0,m|0,n|0,o|0)|0;g=M()|0}w=(e|0)>(i|0)|(e|0)==(i|0)&d>>>0>h>>>0;v=(g|0)>(i|0)|(g|0)==(i|0)&f>>>0>h>>>0;j=v|w;k=j?1:d;j=j?0:f;a:do if(!((f|0)==0&(g|0)==0|(v|w)^1)){w=0;v=1;while(1){m=lW(d|0,e|0,f|0,g|0)|0;l=M()|0;n=nW(m|0,l|0,f|0,g|0)|0;n=iW(d|0,e|0,n|0,M()|0)|0;o=M()|0;r=((k|0)<0)<<31>>31;p=nW(m|0,l|0,k|0,r|0)|0;s=((w|0)<0)<<31>>31;p=hW(p|0,M()|0,w|0,s|0)|0;z=M()|0;t=((j|0)<0)<<31>>31;q=nW(m|0,l|0,j|0,t|0)|0;u=((v|0)<0)<<31>>31;q=hW(q|0,M()|0,v|0,u|0)|0;y=M()|0;if((z|0)>(i|0)|(z|0)==(i|0)&p>>>0>h>>>0|((y|0)>(i|0)|(y|0)==(i|0)&q>>>0>h>>>0))break;if((n|0)==0&(o|0)==0){k=p;j=q;f=0;g=0;break a}else{e=g;d=f;v=j;w=k;k=p;j=q;f=n;g=o}}if(k){m=iW(h|0,i|0,w|0,s|0)|0;m=lW(m|0,M()|0,k|0,r|0)|0;l=M()|0}if(j){i=iW(h|0,i|0,v|0,u|0)|0;i=lW(i|0,M()|0,j|0,t|0)|0;z=M()|0;y=l>>>0>z>>>0|(l|0)==(z|0)&m>>>0>i>>>0;m=y?i:m;l=y?z:l}y=sW(j|0,t|0,1)|0;y=nW(y|0,M()|0,m|0,l|0)|0;y=hW(y|0,M()|0,v|0,u|0)|0;y=nW(y|0,M()|0,f|0,g|0)|0;h=M()|0;z=nW(d|0,e|0,j|0,t|0)|0;i=M()|0;if(h>>>0>i>>>0|(h|0)==(i|0)&y>>>0>z>>>0){j=nW(m|0,l|0,j|0,t|0)|0;j=hW(j|0,M()|0,v|0,u|0)|0;M()|0;k=nW(m|0,l|0,k|0,r|0)|0;k=hW(k|0,M()|0,w|0,s|0)|0;M()|0}}else{f=0;g=0}while(0);c[a>>2]=(x|0)<0?0-k|0:k;c[b>>2]=j;return (f|0)==0&(g|0)==0&1|0}function Nm(b){b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16){e=0;break}g=d[135950+e>>0]|0;a[b+26428+e>>0]=g<<2&12|g>>>2;g=d[150696+e>>0]|0;a[b+26572+e>>0]=g<<2&12|g>>>2;e=e+1|0}while(1){if((e|0)==64)break;g=d[135967+e>>0]|0;a[b+26444+e>>0]=g<<3&56|g>>>3;g=d[150713+e>>0]|0;a[b+26508+e>>0]=g<<3&56|g>>>3;g=d[150778+e>>0]|0;a[b+26588+e>>0]=g<<3&56|g>>>3;g=d[150843+e>>0]|0;a[b+26652+e>>0]=g<<3&56|g>>>3;e=e+1|0}e=b+26716|0;if(!(c[(c[b+28216>>2]|0)+16>>2]|0)){f=b+26428|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26732|0;f=b+26444|0;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=b+26796|0;f=b+26508|0;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=b+26860|0;f=b+26572|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26876|0;f=b+26588|0;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=b+26940|0;f=b+26652|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0))}else{f=135950;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26732|0;f=135967;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26796|0;f=150713;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26860|0;f=150696;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26876|0;f=150778;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26940|0;f=150843;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0))}return}function Om(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;v=Ec;Ec=Ec+96|0;r=v+80|0;q=v+72|0;p=v+64|0;o=v+56|0;l=v+48|0;i=v+40|0;g=v+32|0;f=v+24|0;e=v+16|0;d=v+8|0;s=a+27016|0;h=c[s>>2]|0;t=a+27008|0;n=H((c[t>>2]|0)+1|0,h)|0;b=c[a+25632>>2]|0;h=H((b|0)>1?b:1,h<<1)|0;b=kg(h,8)|0;c[a+25732>>2]=b;a:do if(!b){We(c[a+4>>2]|0,16,150493,v);u=29}else{j=a+25628|0;c[(c[j>>2]|0)+21704>>2]=b;k=Of(n*48|0)|0;c[a+25972>>2]=k;m=(n|0)==0;if(!(m|(k|0)!=0)){We(c[a+4>>2]|0,16,150493,d);u=29;break}d=Of((c[s>>2]|0)+n<<1)|0;k=a+28220|0;c[k>>2]=d;if((d|0)==0?(c[s>>2]|0)+n&2147483647|0:0){We(c[a+4>>2]|0,16,150493,e);u=29;break}d=n<<1;e=Of(d)|0;c[a+26392>>2]=e;if(!((d|0)==0|(e|0)!=0)){We(c[a+4>>2]|0,16,150493,f);u=29;break}f=Of(n)|0;c[a+26396>>2]=f;if(!(m|(f|0)!=0)){We(c[a+4>>2]|0,16,150493,g);u=29;break}g=kg(h,16)|0;d=a+26400|0;c[d>>2]=g;if(!g){We(c[a+4>>2]|0,16,150493,i);u=29;break}i=kg(h,16)|0;b=a+26404|0;c[b>>2]=i;if(!i){We(c[a+4>>2]|0,16,150493,l);u=29;break}c[(c[j>>2]|0)+32848>>2]=c[d>>2];c[(c[j>>2]|0)+32852>>2]=c[b>>2];b=n<<2;l=Of(b)|0;c[a+26408>>2]=l;d=(b|0)==0;if(!(d|(l|0)!=0)){We(c[a+4>>2]|0,16,150493,o);u=29;break}o=Of(n)|0;c[a+26388>>2]=o;if(!(m|(o|0)!=0)){We(c[a+4>>2]|0,16,150493,p);u=29;break}yW(c[k>>2]|0,-1,(c[s>>2]|0)+n<<1|0)|0;c[a+26372>>2]=(c[k>>2]|0)+(c[s>>2]<<1<<1)+2;p=Of(b)|0;h=a+26360|0;c[h>>2]=p;if(!(d|(p|0)!=0)){We(c[a+4>>2]|0,16,150493,q);u=29;break}g=Of(b)|0;c[a+26364>>2]=g;if(!(d|(g|0)!=0)){We(c[a+4>>2]|0,16,150493,r);u=29;break}f=a+27012|0;e=a+26368|0;d=0;while(1){if((d|0)<(c[t>>2]|0))b=0;else{b=0;break a}while(1){if((b|0)>=(c[f>>2]|0))break;a=(H(c[s>>2]|0,d)|0)+b|0;r=(H(c[e>>2]|0,d)|0)+b<<2;c[(c[h>>2]|0)+(a<<2)>>2]=r;c[g+(a<<2)>>2]=((a|0)%(c[s>>2]<<1|0)|0)<<3;b=b+1|0}d=d+1|0}}while(0);if((u|0)==29){Yf(a);b=-12}Ec=v;return b|0}
function jp(a,c){a=a|0;c=c|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;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+p>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+o>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function kp(a,b){a=a|0;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;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((H(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((H(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;i=f+2>>2;i=nW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((H(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nW(k|0,l|0,65537,65537)|0;h=M()|0;d=nW(f|0,m|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;o=a+((H(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function lp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((H(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((H(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((H(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nW(d|0,f|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;k=a+((H(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function mp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==4){b=4;break}g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((H(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function np(a,b){a=a|0;b=b|0;mp(a,b);Io(a,0,b);return}function op(a,b){a=a|0;b=b|0;kp(a,b);So(a,0,b);return}function pp(a,b){a=a|0;b=b|0;lp(a,b);a=a+(b<<2)|0;To(a,0,b);To(a+8|0,0,b);return}function qp(a,b){a=a|0;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,u=0,v=0,w=0,x=0,y=0;y=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((H(b,y)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-y<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((H(u,y)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((H(b+8|0,y)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((H(b+12|0,y)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-y<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=h+2>>2;k=nW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=M()|0;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((H(b,y)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nW(m|0,n|0,65537,65537)|0;q=M()|0;m=nW(f|0,o|0,65537,65537)|0;n=M()|0;k=nW(r|0,s|0,65537,65537)|0;l=M()|0;i=nW(g|0,t|0,65537,65537)|0;j=M()|0;g=nW(u|0,v|0,65537,65537)|0;h=M()|0;d=nW(w|0,x|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8){b=8;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function rp(a,b){a=a|0;b=b|0;lp(a,b);lp(a+(b<<3)|0,b);return}function sp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==16)break;g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function tp(a,b){a=a|0;b=b|0;sp(a,b);Io(a,0,b);return}function up(a,b){a=a|0;b=b|0;qp(a,b);So(a,0,b);return}function vp(a,b){a=a|0;b=b|0;rp(a,b);a=a+(b<<2)|0;To(a,0,b);To(a+8|0,0,b);return}function wp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=33489407;c[f+4>>2]=33489407;e=e+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+1|0}return}function xp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=33620481;c[f+4>>2]=33620481;e=e+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+1|0}return}function yp(a,b){a=a|0;b=b|0;rp(a,b);To(a,0,b);To(a+8|0,0,b);return}function zp(a,b){a=a|0;b=b|0;lp(a,b);To(a,0,b);To(a+8|0,0,b);return}function Ap(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=33554944;c[f+4>>2]=33554944;e=e+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0}return}function Bp(a,b){a=a|0;b=b|0;Ap(a,b);Ap(a+(b<<3)|0,b);return}function Cp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Dp(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;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((H(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Ep(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Fp(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+16|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+24|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+(d<<1)|0;a=a+1|0}return}function Gp(a,b){a=a|0;b=b|0;Zt(a,b);return}function Hp(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+16|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+24|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+(d<<1)|0;a=a+1|0}return}function Ip(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Jp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Kp(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+16|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+24|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+(d<<1)|0;a=a+1|0}return}function Lp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Mp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Np(a,d,f){a=a|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;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yW(d|0,0,256)|0;return}function Op(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yW(d|0,0,256)|0;return}function Pp(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,p=0,q=0,r=0,s=0;q=Ec;Ec=Ec+16|0;p=q;o=h>>1;s=e[a+(0-o<<1)>>1]|0;r=e[a+(1-o<<1)>>1]|0;h=e[a+(2-o<<1)>>1]|0;n=e[a+(3-o<<1)>>1]|0;m=e[a+(4-o<<1)>>1]|0;l=e[a+(5-o<<1)>>1]|0;k=e[a+(6-o<<1)>>1]|0;j=e[a+(7-o<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-o<<1)>>1]|0)+(j<<1)|0)>>>2;b[p>>1]=((e[a+((((f|0)!=0)<<31>>31)-o<<1)>>1]|0)+2+(s<<1)+r|0)>>>2;b[p+2>>1]=(s+2+(r<<1)+h|0)>>>2;b[p+4>>1]=(r+2+(h<<1)+n|0)>>>2;b[p+6>>1]=(h+2+(n<<1)+m|0)>>>2;b[p+8>>1]=(n+2+(m<<1)+l|0)>>>2;b[p+10>>1]=(m+2+(l<<1)+k|0)>>>2;b[p+12>>1]=(l+2+(k<<1)+j|0)>>>2;b[p+14>>1]=i;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;s=(c[f>>2]|0)+(e[p+(g<<1)>>1]|0)|0;b[h>>1]=s;s=(c[f+32>>2]|0)+s|0;b[h+(o<<1)>>1]=s;s=(c[f+64>>2]|0)+s|0;b[h+(i<<1)>>1]=s;s=(c[f+96>>2]|0)+s|0;b[h+(j<<1)>>1]=s;s=(c[f+128>>2]|0)+s|0;b[h+(k<<1)>>1]=s;s=(c[f+160>>2]|0)+s|0;b[h+(l<<1)>>1]=s;s=(c[f+192>>2]|0)+s|0;b[h+(m<<1)>>1]=s;b[h+(n<<1)>>1]=(c[f+224>>2]|0)+s;g=g+1|0;h=h+2|0;f=f+4|0}yW(d|0,0,256)|0;Ec=q;return}function Qp(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,p=0,q=0;k=Ec;Ec=Ec+16|0;j=k;i=h>>1;q=e[a+((H(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;p=e[a+-2>>1]|0;o=e[a+(i+-1<<1)>>1]|0;n=e[a+((i<<1)+-1<<1)>>1]|0;m=e[a+((i*3|0)+-1<<1)>>1]|0;l=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+2>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+4>>1]=(o+2+(n<<1)+m|0)>>>2;b[j+6>>1]=(n+2+(m<<1)+l|0)>>>2;b[j+8>>1]=(m+2+(l<<1)+h|0)>>>2;b[j+10>>1]=(l+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;q=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=q;q=(c[h+4>>2]|0)+q|0;b[g+2>>1]=q;q=(c[h+8>>2]|0)+q|0;b[g+4>>1]=q;q=(c[h+12>>2]|0)+q|0;b[g+6>>1]=q;q=(c[h+16>>2]|0)+q|0;b[g+8>>1]=q;q=(c[h+20>>2]|0)+q|0;b[g+10>>1]=q;q=(c[h+24>>2]|0)+q|0;b[g+12>>1]=q;b[g+14>>1]=(c[h+28>>2]|0)+q;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yW(d|0,0,256)|0;Ec=k;return}function Rp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Lp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Sp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Lp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Lp(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Tp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Mp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Up(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Mp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Mp(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Vp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Wp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(e[a+-2>>1]|0|0,0,65537,65537)|0;g=M()|0;b=a;c[b>>2]=f;c[b+4>>2]=g;b=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(d<<1)|0;c[f>>2]=b;c[f+4>>2]=g;f=d<<1;g=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;f=a+(f<<1)|0;c[f>>2]=g;c[f+4>>2]=b;d=d*3|0;f=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Xp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Yp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Zp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function _p(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function $p(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function aq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function bq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function cq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function dq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;d=a+(d*3<<1)|0;c[d>>2]=134154239;c[d+4>>2]=134154239;return}function eq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;d=a+(d*3<<1)|0;c[d>>2]=134285313;c[d+4>>2]=134285313;return}function fq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function gq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;d=a+(d*3<<1)|0;c[d>>2]=134219776;c[d+4>>2]=134219776;return}function hq(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((H(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function iq(a,b,d,f){a=a|0;b=b|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,u=0;p=f>>1;u=e[a+((H(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=M()|0;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=M()|0;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=M()|0;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=M()|0;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=M()|0;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=M()|0;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=M()|0;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=M()|0;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function jq(a,b,d,f){a=a|0;b=b|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,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((H(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function kq(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,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function lq(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((H(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function mq(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((H(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function nq(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((H(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function oq(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;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function pq(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;n=f>>1;r=e[a+((H(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function qq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((H(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function rq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function sq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=134219776;c[e+4>>2]=134219776;e=a+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0;a=a+(d<<1)|0}return}function tq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function vq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function wq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function xq(a,c){a=a|0;c=c|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;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(H((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+i>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+j>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function yq(a,c){a=a|0;c=c|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;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+p>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+o>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function zq(a,b){a=a|0;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;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((H(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((H(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;i=f+2>>2;i=nW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((H(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nW(k|0,l|0,65537,65537)|0;h=M()|0;d=nW(f|0,m|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;o=a+((H(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Aq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((H(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((H(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((H(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nW(d|0,f|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;k=a+((H(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Bq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==4){b=4;break}g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((H(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Cq(a,b){a=a|0;b=b|0;Bq(a,b);Xp(a,0,b);return}function Dq(a,b){a=a|0;b=b|0;zq(a,b);fq(a,0,b);return}function Eq(a,b){a=a|0;b=b|0;Aq(a,b);a=a+(b<<2)|0;gq(a,0,b);gq(a+8|0,0,b);return}function Fq(a,b){a=a|0;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,u=0,v=0,w=0,x=0,y=0;y=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((H(b,y)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-y<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((H(u,y)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((H(b+8|0,y)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((H(b+12|0,y)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-y<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=h+2>>2;k=nW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=M()|0;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((H(b,y)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nW(m|0,n|0,65537,65537)|0;q=M()|0;m=nW(f|0,o|0,65537,65537)|0;n=M()|0;k=nW(r|0,s|0,65537,65537)|0;l=M()|0;i=nW(g|0,t|0,65537,65537)|0;j=M()|0;g=nW(u|0,v|0,65537,65537)|0;h=M()|0;d=nW(w|0,x|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8){b=8;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Gq(a,b){a=a|0;b=b|0;Aq(a,b);Aq(a+(b<<3)|0,b);return}function Hq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==16)break;g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Iq(a,b){a=a|0;b=b|0;Hq(a,b);Xp(a,0,b);return}function Jq(a,b){a=a|0;b=b|0;Fq(a,b);fq(a,0,b);return}function Kq(a,b){a=a|0;b=b|0;Gq(a,b);a=a+(b<<2)|0;gq(a,0,b);gq(a+8|0,0,b);return}function Lq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=134154239;c[f+4>>2]=134154239;e=e+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+1|0}return}function Mq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=134285313;c[f+4>>2]=134285313;e=e+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+1|0}return}function Nq(a,b){a=a|0;b=b|0;Gq(a,b);gq(a,0,b);gq(a+8|0,0,b);return}function Oq(a,b){a=a|0;b=b|0;Aq(a,b);gq(a,0,b);gq(a+8|0,0,b);return}function Pq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=134219776;c[f+4>>2]=134219776;e=e+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0}return}function Qq(a,b){a=a|0;b=b|0;Pq(a,b);Pq(a+(b<<3)|0,b);return}function Rq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Sq(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;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((H(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Tq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+16|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+24|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+(d<<1)|0;a=a+1|0}return}function Vq(a,b){a=a|0;b=b|0;Yt(a,b);return}function Wq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+16|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+24|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+(d<<1)|0;a=a+1|0}return}function Xq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Zq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+16|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+24|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+(d<<1)|0;a=a+1|0}return}function _q(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function $q(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function ar(a,d,f){a=a|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;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yW(d|0,0,256)|0;return}function br(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yW(d|0,0,256)|0;return}function cr(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,p=0,q=0,r=0,s=0;q=Ec;Ec=Ec+16|0;p=q;o=h>>1;s=e[a+(0-o<<1)>>1]|0;r=e[a+(1-o<<1)>>1]|0;h=e[a+(2-o<<1)>>1]|0;n=e[a+(3-o<<1)>>1]|0;m=e[a+(4-o<<1)>>1]|0;l=e[a+(5-o<<1)>>1]|0;k=e[a+(6-o<<1)>>1]|0;j=e[a+(7-o<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-o<<1)>>1]|0)+(j<<1)|0)>>>2;b[p>>1]=((e[a+((((f|0)!=0)<<31>>31)-o<<1)>>1]|0)+2+(s<<1)+r|0)>>>2;b[p+2>>1]=(s+2+(r<<1)+h|0)>>>2;b[p+4>>1]=(r+2+(h<<1)+n|0)>>>2;b[p+6>>1]=(h+2+(n<<1)+m|0)>>>2;b[p+8>>1]=(n+2+(m<<1)+l|0)>>>2;b[p+10>>1]=(m+2+(l<<1)+k|0)>>>2;b[p+12>>1]=(l+2+(k<<1)+j|0)>>>2;b[p+14>>1]=i;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;s=(c[f>>2]|0)+(e[p+(g<<1)>>1]|0)|0;b[h>>1]=s;s=(c[f+32>>2]|0)+s|0;b[h+(o<<1)>>1]=s;s=(c[f+64>>2]|0)+s|0;b[h+(i<<1)>>1]=s;s=(c[f+96>>2]|0)+s|0;b[h+(j<<1)>>1]=s;s=(c[f+128>>2]|0)+s|0;b[h+(k<<1)>>1]=s;s=(c[f+160>>2]|0)+s|0;b[h+(l<<1)>>1]=s;s=(c[f+192>>2]|0)+s|0;b[h+(m<<1)>>1]=s;b[h+(n<<1)>>1]=(c[f+224>>2]|0)+s;g=g+1|0;h=h+2|0;f=f+4|0}yW(d|0,0,256)|0;Ec=q;return}function dr(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,p=0,q=0;k=Ec;Ec=Ec+16|0;j=k;i=h>>1;q=e[a+((H(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;p=e[a+-2>>1]|0;o=e[a+(i+-1<<1)>>1]|0;n=e[a+((i<<1)+-1<<1)>>1]|0;m=e[a+((i*3|0)+-1<<1)>>1]|0;l=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+2>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+4>>1]=(o+2+(n<<1)+m|0)>>>2;b[j+6>>1]=(n+2+(m<<1)+l|0)>>>2;b[j+8>>1]=(m+2+(l<<1)+h|0)>>>2;b[j+10>>1]=(l+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;q=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=q;q=(c[h+4>>2]|0)+q|0;b[g+2>>1]=q;q=(c[h+8>>2]|0)+q|0;b[g+4>>1]=q;q=(c[h+12>>2]|0)+q|0;b[g+6>>1]=q;q=(c[h+16>>2]|0)+q|0;b[g+8>>1]=q;q=(c[h+20>>2]|0)+q|0;b[g+10>>1]=q;q=(c[h+24>>2]|0)+q|0;b[g+12>>1]=q;b[g+14>>1]=(c[h+28>>2]|0)+q;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yW(d|0,0,256)|0;Ec=k;return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;_q(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function fr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}_q(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;_q(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;$q(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function hr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}$q(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;$q(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ir(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function jr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(e[a+-2>>1]|0|0,0,65537,65537)|0;g=M()|0;b=a;c[b>>2]=f;c[b+4>>2]=g;b=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(d<<1)|0;c[f>>2]=b;c[f+4>>2]=g;f=d<<1;g=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;f=a+(f<<1)|0;c[f>>2]=g;c[f+4>>2]=b;d=d*3|0;f=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function kr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function lr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function mr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function nr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function or(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function pr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function qr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function rr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function sr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;d=a+(d*3<<1)|0;c[d>>2]=536813567;c[d+4>>2]=536813567;return}function tr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;d=a+(d*3<<1)|0;c[d>>2]=536944641;c[d+4>>2]=536944641;return}function ur(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function vr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;d=a+(d*3<<1)|0;c[d>>2]=536879104;c[d+4>>2]=536879104;return}function wr(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((H(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function xr(a,b,d,f){a=a|0;b=b|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,u=0;p=f>>1;u=e[a+((H(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=M()|0;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=M()|0;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=M()|0;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=M()|0;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=M()|0;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=M()|0;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=M()|0;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=M()|0;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function yr(a,b,d,f){a=a|0;b=b|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,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((H(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function zr(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,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Ar(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((H(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Br(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((H(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Cr(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((H(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Dr(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;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Er(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;n=f>>1;r=e[a+((H(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Fr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((H(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Gr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Hr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=536879104;c[e+4>>2]=536879104;e=a+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0;a=a+(d<<1)|0}return}function Ir(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Jr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Kr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Lr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Mr(a,c){a=a|0;c=c|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;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(H((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+i>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+j>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Nr(a,c){a=a|0;c=c|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;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+p>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+o>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Or(a,b){a=a|0;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;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((H(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((H(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;i=f+2>>2;i=nW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((H(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nW(k|0,l|0,65537,65537)|0;h=M()|0;d=nW(f|0,m|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;o=a+((H(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Pr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((H(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((H(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((H(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nW(d|0,f|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;k=a+((H(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Qr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==4){b=4;break}g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((H(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Rr(a,b){a=a|0;b=b|0;Qr(a,b);kr(a,0,b);return}function Sr(a,b){a=a|0;b=b|0;Or(a,b);ur(a,0,b);return}function Tr(a,b){a=a|0;b=b|0;Pr(a,b);a=a+(b<<2)|0;vr(a,0,b);vr(a+8|0,0,b);return}function Ur(a,b){a=a|0;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,u=0,v=0,w=0,x=0,y=0;y=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((H(b,y)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-y<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((H(u,y)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((H(b+8|0,y)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((H(b+12|0,y)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-y<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=h+2>>2;k=nW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=M()|0;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((H(b,y)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nW(m|0,n|0,65537,65537)|0;q=M()|0;m=nW(f|0,o|0,65537,65537)|0;n=M()|0;k=nW(r|0,s|0,65537,65537)|0;l=M()|0;i=nW(g|0,t|0,65537,65537)|0;j=M()|0;g=nW(u|0,v|0,65537,65537)|0;h=M()|0;d=nW(w|0,x|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8){b=8;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Vr(a,b){a=a|0;b=b|0;Pr(a,b);Pr(a+(b<<3)|0,b);return}function Wr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==16)break;g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Xr(a,b){a=a|0;b=b|0;Wr(a,b);kr(a,0,b);return}function Yr(a,b){a=a|0;b=b|0;Ur(a,b);ur(a,0,b);return}function Zr(a,b){a=a|0;b=b|0;Vr(a,b);a=a+(b<<2)|0;vr(a,0,b);vr(a+8|0,0,b);return}function _r(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=536813567;c[f+4>>2]=536813567;e=e+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+1|0}return}function $r(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=536944641;c[f+4>>2]=536944641;e=e+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+1|0}return}function as(a,b){a=a|0;b=b|0;Vr(a,b);vr(a,0,b);vr(a+8|0,0,b);return}function bs(a,b){a=a|0;b=b|0;Pr(a,b);vr(a,0,b);vr(a+8|0,0,b);return}function cs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=536879104;c[f+4>>2]=536879104;e=e+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0}return}function ds(a,b){a=a|0;b=b|0;cs(a,b);cs(a+(b<<3)|0,b);return}function es(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function fs(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;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((H(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function gs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function hs(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+16|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+24|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+(d<<1)|0;a=a+1|0}return}function is(a,b){a=a|0;b=b|0;Xt(a,b);return}function js(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+16|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+24|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+(d<<1)|0;a=a+1|0}return}function ks(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function ls(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function ms(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+16|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+24|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+(d<<1)|0;a=a+1|0}return}function ns(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function os(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function ps(a,d,f){a=a|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;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yW(d|0,0,256)|0;return}function qs(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yW(d|0,0,256)|0;return}function rs(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,p=0,q=0,r=0,s=0;q=Ec;Ec=Ec+16|0;p=q;o=h>>1;s=e[a+(0-o<<1)>>1]|0;r=e[a+(1-o<<1)>>1]|0;h=e[a+(2-o<<1)>>1]|0;n=e[a+(3-o<<1)>>1]|0;m=e[a+(4-o<<1)>>1]|0;l=e[a+(5-o<<1)>>1]|0;k=e[a+(6-o<<1)>>1]|0;j=e[a+(7-o<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-o<<1)>>1]|0)+(j<<1)|0)>>>2;b[p>>1]=((e[a+((((f|0)!=0)<<31>>31)-o<<1)>>1]|0)+2+(s<<1)+r|0)>>>2;b[p+2>>1]=(s+2+(r<<1)+h|0)>>>2;b[p+4>>1]=(r+2+(h<<1)+n|0)>>>2;b[p+6>>1]=(h+2+(n<<1)+m|0)>>>2;b[p+8>>1]=(n+2+(m<<1)+l|0)>>>2;b[p+10>>1]=(m+2+(l<<1)+k|0)>>>2;b[p+12>>1]=(l+2+(k<<1)+j|0)>>>2;b[p+14>>1]=i;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;s=(c[f>>2]|0)+(e[p+(g<<1)>>1]|0)|0;b[h>>1]=s;s=(c[f+32>>2]|0)+s|0;b[h+(o<<1)>>1]=s;s=(c[f+64>>2]|0)+s|0;b[h+(i<<1)>>1]=s;s=(c[f+96>>2]|0)+s|0;b[h+(j<<1)>>1]=s;s=(c[f+128>>2]|0)+s|0;b[h+(k<<1)>>1]=s;s=(c[f+160>>2]|0)+s|0;b[h+(l<<1)>>1]=s;s=(c[f+192>>2]|0)+s|0;b[h+(m<<1)>>1]=s;b[h+(n<<1)>>1]=(c[f+224>>2]|0)+s;g=g+1|0;h=h+2|0;f=f+4|0}yW(d|0,0,256)|0;Ec=q;return}function ss(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,p=0,q=0;k=Ec;Ec=Ec+16|0;j=k;i=h>>1;q=e[a+((H(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;p=e[a+-2>>1]|0;o=e[a+(i+-1<<1)>>1]|0;n=e[a+((i<<1)+-1<<1)>>1]|0;m=e[a+((i*3|0)+-1<<1)>>1]|0;l=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+2>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+4>>1]=(o+2+(n<<1)+m|0)>>>2;b[j+6>>1]=(n+2+(m<<1)+l|0)>>>2;b[j+8>>1]=(m+2+(l<<1)+h|0)>>>2;b[j+10>>1]=(l+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;q=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=q;q=(c[h+4>>2]|0)+q|0;b[g+2>>1]=q;q=(c[h+8>>2]|0)+q|0;b[g+4>>1]=q;q=(c[h+12>>2]|0)+q|0;b[g+6>>1]=q;q=(c[h+16>>2]|0)+q|0;b[g+8>>1]=q;q=(c[h+20>>2]|0)+q|0;b[g+10>>1]=q;q=(c[h+24>>2]|0)+q|0;b[g+12>>1]=q;b[g+14>>1]=(c[h+28>>2]|0)+q;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yW(d|0,0,256)|0;Ec=k;return}function ts(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;ns(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function us(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}ns(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;ns(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function vs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;os(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ws(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}os(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;os(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function xs(a,b,d){a=a|0;b=b|0;d=d|0;b=c[a+(0-d)>>2]|0;c[a>>2]=b;c[a+d>>2]=b;c[a+(d<<1)>>2]=b;c[a+(d*3|0)>>2]=b;return}function ys(a,b,e){a=a|0;b=b|0;e=e|0;c[a>>2]=H(d[a+-1>>0]|0,16843009)|0;c[a+e>>2]=H(d[a+(e+-1)>>0]|0,16843009)|0;b=e<<1;c[a+b>>2]=H(d[a+(b+-1)>>0]|0,16843009)|0;e=e*3|0;c[a+e>>2]=H(d[a+(e+-1)>>0]|0,16843009)|0;return}function zs(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=H((d[a+(0-e)>>0]|0)+4+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)+(d[a+-1>>0]|0)+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)>>3,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function As(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=d[b+(1-e)>>0]|0;h=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;i=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+2+h+(l<<1)|0)>>>2;c=(l+2+k+(h<<1)|0)>>>2&255;a[b+e>>0]=c;a[b+1>>0]=c;c=(h+2+j+(k<<1)|0)>>>2&255;h=e<<1;a[b+h>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;k=(k+2+i+(j<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(h|1)>>0]=k;a[b+(e+2)>>0]=k;a[b+3>>0]=k;j=(j+2+g+(i<<1)|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(h+2)>>0]=j;a[b+(e+3)>>0]=j;e=(i+2+f+(g<<1)|0)>>>2&255;a[b+(c+2)>>0]=e;a[b+(h+3)>>0]=e;a[b+(c+3)>>0]=(g+2+(f*3|0)|0)>>>2;return}function Bs(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=d[b+~e>>0]|0;h=d[b+(0-e)>>0]|0;g=d[b+(1-e)>>0]|0;f=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;k=d[b+-1>>0]|0;n=d[b+(e+-1)>>0]|0;j=e<<1;i=d[b+(j+-1)>>0]|0;l=e*3|0;a[b+l>>0]=(n+2+(d[b+(l+-1)>>0]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&255;a[b+(l+1)>>0]=i;a[b+j>>0]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&255;a[b+(l+2)>>0]=n;a[b+(j|1)>>0]=n;a[b+e>>0]=n;k=((m<<1)+2+h+k|0)>>>2&255;a[b+(l+3)>>0]=k;a[b+(j+2)>>0]=k;a[b+(e+1)>>0]=k;a[b>>0]=k;i=(i+(h<<1)+g|0)>>>2&255;a[b+(j+3)>>0]=i;a[b+(e+2)>>0]=i;a[b+1>>0]=i;h=(h+2+(g<<1)+f|0)>>>2&255;a[b+(e+3)>>0]=h;a[b+2>>0]=h;a[b+3>>0]=(g+2+(f<<1)+c|0)>>>2;return}function Cs(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;h=d[b+-1>>0]|0;g=d[b+(e+-1)>>0]|0;i=e<<1;f=d[b+(i+-1)>>0]|0;c=e*3|0;o=(j+1+n|0)>>>1&255;a[b+(i|1)>>0]=o;a[b>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(i+2)>>0]=o;a[b+1>>0]=o;o=(m+1+l|0)>>>1&255;a[b+(i+3)>>0]=o;a[b+2>>0]=o;a[b+3>>0]=(l+1+k|0)>>>1;o=((j<<1)+2+n+h|0)>>>2&255;a[b+(c+1)>>0]=o;a[b+e>>0]=o;j=j+2|0;o=(j+(n<<1)+m|0)>>>2&255;a[b+(c+2)>>0]=o;a[b+(e+1)>>0]=o;n=(n+2+(m<<1)+l|0)>>>2&255;a[b+(c+3)>>0]=n;a[b+(e+2)>>0]=n;a[b+(e+3)>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+i>>0]=(j+(h<<1)+g|0)>>>2;a[b+c>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Ds(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;j=d[b+-1>>0]|0;h=d[b+(e+-1)>>0]|0;i=e<<1;g=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;o=(k+1+j|0)>>>1&255;a[b+(e+2)>>0]=o;a[b>>0]=o;o=((k<<1)+2+n+j|0)>>>2&255;a[b+(e+3)>>0]=o;a[b+1>>0]=o;k=k+2|0;a[b+2>>0]=(k+(n<<1)+m|0)>>>2;a[b+3>>0]=(n+2+(m<<1)+l|0)>>>2;l=(j+1+h|0)>>>1&255;a[b+(i+2)>>0]=l;a[b+e>>0]=l;k=(k+(j<<1)+h|0)>>>2&255;a[b+(i+3)>>0]=k;a[b+(e+1)>>0]=k;e=(h+1+g|0)>>>1&255;a[b+(c+2)>>0]=e;a[b+i>>0]=e;e=(j+2+(h<<1)+g|0)>>>2&255;a[b+(c+3)>>0]=e;a[b+(i|1)>>0]=e;a[b+c>>0]=(g+1+f|0)>>>1;a[b+(c+1)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Es(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=d[b+(0-e)>>0]|0;k=d[b+(1-e)>>0]|0;j=d[b+(2-e)>>0]|0;i=d[b+(3-e)>>0]|0;h=d[c>>0]|0;g=d[c+1>>0]|0;f=d[c+2>>0]|0;a[b>>0]=(l+1+k|0)>>>1;m=(k+1+j|0)>>>1&255;c=e<<1;a[b+c>>0]=m;a[b+1>>0]=m;m=(j+1+i|0)>>>1&255;a[b+(c|1)>>0]=m;a[b+2>>0]=m;m=(i+1+h|0)>>>1&255;a[b+(c+2)>>0]=m;a[b+3>>0]=m;a[b+(c+3)>>0]=(h+1+g|0)>>>1;a[b+e>>0]=(l+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(e+1)>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(e+2)>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(c+2)>>0]=i;a[b+(e+3)>>0]=i;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Fs(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=d[b+-1>>0]|0;j=d[b+(e+-1)>>0]|0;c=e<<1;i=d[b+(c+-1)>>0]|0;g=e*3|0;f=a[b+(g+-1)>>0]|0;h=f&255;a[b>>0]=(k+1+j|0)>>>1;a[b+1>>0]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&255;a[b+e>>0]=k;a[b+2>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=(i+1+h|0)>>>1&255;a[b+c>>0]=j;a[b+(e+2)>>0]=j;h=(i+2+h+(h<<1)|0)>>>2&255;a[b+(c|1)>>0]=h;a[b+(e+3)>>0]=h;a[b+(g+3)>>0]=f;a[b+(g+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+g>>0]=f;a[b+(g+1)>>0]=f;a[b+(c+3)>>0]=f;return}function Gs(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=H(((d[a+-1>>0]|0)+2+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Hs(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=2139062143;c[a+d>>2]=2139062143;c[a+(d<<1)>>2]=2139062143;c[a+(d*3|0)>>2]=2139062143;return}function Is(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2122219135;c[a+d>>2]=-2122219135;c[a+(d<<1)>>2]=-2122219135;c[a+(d*3|0)>>2]=-2122219135;return}function Js(a,b,e){a=a|0;b=b|0;e=e|0;b=H(((d[a+(0-e)>>0]|0)+2+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function Ks(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2139062144;c[a+d>>2]=-2139062144;c[a+(d<<1)>>2]=-2139062144;c[a+(d*3|0)>>2]=-2139062144;return}function Ls(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;o=d[b+(0-g)>>0]|0;n=d[b+(1-g)>>0]|0;h=d[b+(2-g)>>0]|0;m=d[b+(3-g)>>0]|0;l=d[b+(4-g)>>0]|0;k=d[b+(5-g)>>0]|0;j=d[b+(6-g)>>0]|0;i=d[b+(7-g)>>0]|0;f=(j+2+(d[b+((f|0?8:7)-g)>>0]|0)+(i<<1)|0)>>>2;a[b>>0]=((d[b+((((e|0)!=0)<<31>>31)-g)>>0]|0)+2+(o<<1)+n|0)>>>2;a[b+1>>0]=(o+2+(n<<1)+h|0)>>>2;a[b+2>>0]=(n+2+(h<<1)+m|0)>>>2;a[b+3>>0]=(h+2+(m<<1)+l|0)>>>2;h=b+4|0;a[h>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+5>>0]=(l+2+(k<<1)+j|0)>>>2;a[b+6>>0]=(k+2+(j<<1)+i|0)>>>2;a[b+7>>0]=f;f=c[b>>2]|0;h=c[h>>2]|0;e=1;while(1){if((e|0)==8)break;o=b+(H(e,g)|0)|0;c[o>>2]=f;c[o+4>>2]=h;e=e+1|0}return}function Ms(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[a+((H(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;r=d[a+-1>>0]|0;p=d[a+(f+-1)>>0]|0;q=f<<1;n=d[a+(q+-1)>>0]|0;o=f*3|0;l=d[a+(o+-1)>>0]|0;m=f<<2;j=d[a+(m+-1)>>0]|0;k=f*5|0;h=d[a+(k+-1)>>0]|0;i=f*6|0;g=d[a+(i+-1)>>0]|0;b=f*7|0;e=d[a+(b+-1)>>0]|0;s=H((s+2+(r<<1)+p|0)>>>2,16843009)|0;c[a>>2]=s;c[a+4>>2]=s;r=H((r+2+(p<<1)+n|0)>>>2,16843009)|0;f=a+f|0;c[f>>2]=r;c[f+4>>2]=r;p=H((p+2+(n<<1)+l|0)>>>2,16843009)|0;f=a+q|0;c[f>>2]=p;c[f+4>>2]=p;n=H((n+2+(l<<1)+j|0)>>>2,16843009)|0;f=a+o|0;c[f>>2]=n;c[f+4>>2]=n;l=H((l+2+(j<<1)+h|0)>>>2,16843009)|0;f=a+m|0;c[f>>2]=l;c[f+4>>2]=l;j=H((j+2+(h<<1)+g|0)>>>2,16843009)|0;f=a+k|0;c[f>>2]=j;c[f+4>>2]=j;h=H((h+2+(g<<1)+e|0)>>>2,16843009)|0;f=a+i|0;c[f>>2]=h;c[f+4>>2]=h;e=H((g+2+(e*3|0)|0)>>>2,16843009)|0;f=a+b|0;c[f>>2]=e;c[f+4>>2]=e;return}
function XE(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,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=H((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=H((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;s=b[g+-16>>1]|0;q=b[g>>1]|0;r=q+10230|0;f=b[g+16>>1]|0;p=f+10230|0;n=(b[g+32>>1]|0)+10230|0;l=(b[g+48>>1]|0)+10230|0;k=(b[g+64>>1]|0)+10230|0;m=(b[g+80>>1]|0)+10230|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+10742+l+((p+r|0)*20|0)+(H(n+(s+10230)|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<1024?o:0-o>>31&1023)|0)>>>1;o=a+(i<<1)|0;r=s+10742+k+((n+p|0)*20|0)+(H(l+r|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(r>>>0<1024?r:0-r>>31&1023)|0)>>>1;o=a+(d<<1)|0;p=q+10742+m+((l+n|0)*20|0)+(H(k+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;o=a+(j<<1)|0;n=f+20972+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function YE(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,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=H(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=H(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(H(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(H(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<4096?r:0-r>>31&4095)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<4096?g:0-g>>31&4095)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function ZE(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,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=H(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=H(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(H(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(H(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<16384?r:0-r>>31&16383)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<16384?g:0-g>>31&16383)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function _E(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<512?j:0-j>>31&511)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function $E(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;q=d[c+-4>>0]|0;p=d[c>>0]|0;o=d[c+4>>0]|0;j=d[c+8>>0]|0;l=d[c+12>>0]|0;m=d[c+16>>0]|0;k=d[c+20>>0]|0;n=d[c+24>>0]|0;i=(d[c+-8>>0]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;i=b+e|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;i=b+g|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;i=b+h|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((j>>>0>255?(j^-2147483648)>>31:j)&255)|0)>>>1;f=f+1|0;b=b+1|0;c=c+1|0}return}function aF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<1024?q:0-q>>31&1023)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<1024?j:0-j>>31&1023)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function bF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<4096?j:0-j>>31&4095)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function cF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<16384?j:0-j>>31&16383)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function dF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function eF(b,c,e,f){b=b|0;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;g=0;while(1){if((g|0)==4)break;j=c+1|0;m=c+-1|0;i=c+2|0;h=H((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+3|0;h=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[k>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=H((d[k>>0]|0)+(d[c>>0]|0)|0,-5)|0;l=c+4|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=H((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+5|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;i=H((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+6>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function fF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function gF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function hF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function iF(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;g=a;i=b;h=i;i=i+4|0;i=yE(c[g>>2]|0,c[g+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=M()|0;g=a;c[g>>2]=i;c[g+4>>2]=h;f=f+1|0;a=a+e|0;b=b+e|0}return}function jF(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=DE(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;f=f+1|0;a=a+e|0;b=b+e|0}return}function kF(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;g=a;i=b;h=i;i=i+4|0;i=yE(c[g>>2]|0,c[g+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=M()|0;g=a;c[g>>2]=i;c[g+4>>2]=h;f=f+1|0;a=a+e|0;b=b+e|0}return}function lF(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;g=a;i=b;h=i;i=i+4|0;i=yE(c[g>>2]|0,c[g+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=M()|0;g=a;c[g>>2]=i;c[g+4>>2]=h;f=f+1|0;a=a+e|0;b=b+e|0}return}function mF(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;g=a;i=b;h=i;i=i+4|0;i=yE(c[g>>2]|0,c[g+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=M()|0;g=a;c[g>>2]=i;c[g+4>>2]=h;f=f+1|0;a=a+e|0;b=b+e|0}return}function nF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<512?m:0-m>>31&511;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<512?m:0-m>>31&511;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function oF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function pF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;L=(e[d+(v<<1)>>1]|0)+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[f>>1]=L>>>0<512?L:0-L>>31&511;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[f+(z<<1)>>1]=K>>>0<512?K:0-K>>31&511;J=J+16+D+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[f+(o<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+16+c+((E+F|0)*20|0)+(H(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=I>>>0<512?I:0-I>>31&511;G=G+16+A+((D+E|0)*20|0)+(H(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+16+B+((c+D|0)*20|0)+(H(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+16+a+((A+c|0)*20|0)+(H(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+16+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<512?c:0-c>>31&511;g=g+1|0;f=f+2|0;d=d+2|0}return}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,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=H(j,g)|0;s=b+p|0;t=s;s=s+4|0;m=H(j,h)|0;l=e+m|0;r=l;l=l+4|0;k=H(j,f)|0;q=a+k|0;o=q;n=c[o>>2]|0;o=c[o+4>>2]|0;l=yE(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=yE(n,o,l,M()|0)|0;o=M()|0;c[q>>2]=l;c[q+4>>2]=o;p=b+(p+8)|0;q=p;p=p+4|0;m=e+(m+8)|0;o=m;m=m+4|0;k=a+(k+8)|0;l=k;n=c[l>>2]|0;l=c[l+4>>2]|0;m=yE(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;m=yE(n,l,m,M()|0)|0;l=M()|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function rF(b,c,e,f){b=b|0;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;g=0;while(1){if((g|0)==8)break;j=c+1|0;i=c+-1|0;k=c+2|0;m=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+3|0;m=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[l>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[l>>0]|0)+(d[c>>0]|0)|0,-5)|0;n=c+4|0;m=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+m+(d[n>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[n>>0]|0)+(d[j>>0]|0)|0,-5)|0;i=c+5|0;m=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[i>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[i>>0]|0)+(d[k>>0]|0)|0,-5)|0;h=c+6|0;m=(((d[n>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+m+(d[h>>0]|0)>>5;a[b+3>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+7|0;m=(((d[i>>0]|0)+(d[n>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+m+(d[j>>0]|0)>>5;a[b+4>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[j>>0]|0)+(d[n>>0]|0)|0,-5)|0;k=c+8|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+5>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+9|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[n>>0]|0)+m+(d[l>>0]|0)>>5;a[b+6>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=H((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+10>>0]|0)>>5;a[b+7>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function sF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==13)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+8|0;c=c+e|0}return}function tF(b,c,e,f){b=b|0;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,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,I=0,J=0,K=0,L=0;s=H(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;K=d[c+t>>0]|0;J=d[c>>0]|0;I=d[c+f>>0]|0;G=d[c+u>>0]|0;F=d[c+v>>0]|0;E=d[c+w>>0]|0;D=d[c+x>>0]|0;y=d[c+h>>0]|0;A=d[c+i>>0]|0;B=d[c+j>>0]|0;z=d[c+k>>0]|0;C=d[c+l>>0]|0;L=(d[c+s>>0]|0)+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;a[b>>0]=L>>>0>255?(L^-2147483648)>>31:L;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;a[b+e>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+16+D+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;a[b+m>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+16+y+((E+F|0)*20|0)+(H(D+G|0,-5)|0)>>5;a[b+n>>0]=I>>>0>255?(I^-2147483648)>>31:I;G=G+16+A+((D+E|0)*20|0)+(H(y+F|0,-5)|0)>>5;a[b+o>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+16+B+((y+D|0)*20|0)+(H(A+E|0,-5)|0)>>5;a[b+p>>0]=F>>>0>255?(F^-2147483648)>>31:F;E=E+16+z+((A+y|0)*20|0)+(H(B+D|0,-5)|0)>>5;a[b+q>>0]=E>>>0>255?(E^-2147483648)>>31:E;y=D+16+C+((B+A|0)*20|0)+(H(z+y|0,-5)|0)>>5;a[b+r>>0]=y>>>0>255?(y^-2147483648)>>31:y;g=g+1|0;b=b+1|0;c=c+1|0}return}function uF(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,n=0,o=0,p=0,q=0;j=0;while(1){if((j|0)>=(i|0))break;m=H(j,g)|0;p=b+m|0;l=H(j,h)|0;o=e+l|0;k=H(j,f)|0;n=a+k|0;q=c[n>>2]|0;c[n>>2]=DE(q,DE(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0)|0;m=b+(m+4)|0;l=e+(l+4)|0;k=a+(k+4)|0;n=c[k>>2]|0;c[k>>2]=DE(n,DE(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0)|0;j=j+1|0}return}function vF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<1024?m:0-m>>31&1023;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<1024?m:0-m>>31&1023;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function wF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function xF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;L=(e[d+(v<<1)>>1]|0)+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[f>>1]=L>>>0<1024?L:0-L>>31&1023;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[f+(z<<1)>>1]=K>>>0<1024?K:0-K>>31&1023;J=J+16+D+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[f+(o<<1)>>1]=J>>>0<1024?J:0-J>>31&1023;I=I+16+c+((E+F|0)*20|0)+(H(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;G=G+16+A+((D+E|0)*20|0)+(H(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;F=F+16+B+((c+D|0)*20|0)+(H(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<1024?F:0-F>>31&1023;E=E+16+a+((A+c|0)*20|0)+(H(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+16+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;g=g+1|0;f=f+2|0;d=d+2|0}return}function yF(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=H(j,g)|0;s=b+p|0;t=s;s=s+4|0;m=H(j,h)|0;l=e+m|0;r=l;l=l+4|0;k=H(j,f)|0;q=a+k|0;o=q;n=c[o>>2]|0;o=c[o+4>>2]|0;l=yE(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=yE(n,o,l,M()|0)|0;o=M()|0;c[q>>2]=l;c[q+4>>2]=o;p=b+(p+8)|0;q=p;p=p+4|0;m=e+(m+8)|0;o=m;m=m+4|0;k=a+(k+8)|0;l=k;n=c[l>>2]|0;l=c[l+4>>2]|0;m=yE(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;m=yE(n,l,m,M()|0)|0;l=M()|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function zF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<4096?m:0-m>>31&4095;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<4096?m:0-m>>31&4095;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function AF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function BF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;L=(e[d+(v<<1)>>1]|0)+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[f>>1]=L>>>0<4096?L:0-L>>31&4095;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[f+(z<<1)>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+16+D+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[f+(o<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+16+c+((E+F|0)*20|0)+(H(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;G=G+16+A+((D+E|0)*20|0)+(H(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+16+B+((c+D|0)*20|0)+(H(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;E=E+16+a+((A+c|0)*20|0)+(H(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<4096?E:0-E>>31&4095;c=D+16+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;g=g+1|0;f=f+2|0;d=d+2|0}return}function CF(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=H(j,g)|0;s=b+p|0;t=s;s=s+4|0;m=H(j,h)|0;l=e+m|0;r=l;l=l+4|0;k=H(j,f)|0;q=a+k|0;o=q;n=c[o>>2]|0;o=c[o+4>>2]|0;l=yE(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=yE(n,o,l,M()|0)|0;o=M()|0;c[q>>2]=l;c[q+4>>2]=o;p=b+(p+8)|0;q=p;p=p+4|0;m=e+(m+8)|0;o=m;m=m+4|0;k=a+(k+8)|0;l=k;n=c[l>>2]|0;l=c[l+4>>2]|0;m=yE(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;m=yE(n,l,m,M()|0)|0;l=M()|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function DF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<16384?m:0-m>>31&16383;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<16384?m:0-m>>31&16383;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function EF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function FF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;L=(e[d+(v<<1)>>1]|0)+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[f>>1]=L>>>0<16384?L:0-L>>31&16383;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[f+(z<<1)>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+16+D+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[f+(o<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+16+c+((E+F|0)*20|0)+(H(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;G=G+16+A+((D+E|0)*20|0)+(H(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+16+B+((c+D|0)*20|0)+(H(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;E=E+16+a+((A+c|0)*20|0)+(H(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<16384?E:0-E>>31&16383;c=D+16+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;g=g+1|0;f=f+2|0;d=d+2|0}return}function GF(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=H(j,g)|0;s=b+p|0;t=s;s=s+4|0;m=H(j,h)|0;l=e+m|0;r=l;l=l+4|0;k=H(j,f)|0;q=a+k|0;o=q;n=c[o>>2]|0;o=c[o+4>>2]|0;l=yE(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=yE(n,o,l,M()|0)|0;o=M()|0;c[q>>2]=l;c[q+4>>2]=o;p=b+(p+8)|0;q=p;p=p+4|0;m=e+(m+8)|0;o=m;m=m+4|0;k=a+(k+8)|0;l=k;n=c[l>>2]|0;l=c[l+4>>2]|0;m=yE(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;m=yE(n,l,m,M()|0)|0;l=M()|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function HF(a,c,d,f,g,h){a=a|0;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,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,I=0,J=0,K=0,L=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=H(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((H(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;K=b[h+(f<<1)>>1]|0;J=b[h>>1]|0;I=b[h+(g<<1)>>1]|0;G=b[h+(l<<1)>>1]|0;F=b[h+(m<<1)>>1]|0;E=b[h+(n<<1)>>1]|0;D=b[h+(o<<1)>>1]|0;c=b[h+(p<<1)>>1]|0;a=b[h+(q<<1)>>1]|0;B=b[h+(r<<1)>>1]|0;A=b[h+(s<<1)>>1]|0;C=b[h+(t<<1)>>1]|0;L=(b[h+(k<<1)>>1]|0)+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;b[j>>1]=L>>>0<512?L:0-L>>31&511;K=K+512+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;b[j+(d<<1)>>1]=K>>>0<512?K:0-K>>31&511;J=J+512+D+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>10;b[j+(u<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+512+c+((E+F|0)*20|0)+(H(D+G|0,-5)|0)>>10;b[j+(v<<1)>>1]=I>>>0<512?I:0-I>>31&511;G=G+512+a+((D+E|0)*20|0)+(H(c+F|0,-5)|0)>>10;b[j+(w<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+512+B+((c+D|0)*20|0)+(H(a+E|0,-5)|0)>>10;b[j+(x<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+512+A+((a+c|0)*20|0)+(H(B+D|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+512+C+((B+a|0)*20|0)+(H(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<512?c:0-c>>31&511;j=j+2|0;h=h+2|0;i=i+1|0}return}function IF(c,e,f,g,h,i){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,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,I=0,J=0,K=0,L=0,M=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=H((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=H((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=H((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=H((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=H((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=H((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=H(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((H(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;L=b[f+(l<<1)>>1]|0;K=b[f>>1]|0;J=b[f+(h<<1)>>1]|0;I=b[f+(m<<1)>>1]|0;G=b[f+(n<<1)>>1]|0;F=b[f+(o<<1)>>1]|0;E=b[f+(p<<1)>>1]|0;B=b[f+(q<<1)>>1]|0;c=b[f+(r<<1)>>1]|0;C=b[f+(s<<1)>>1]|0;e=b[f+(t<<1)>>1]|0;D=b[f+(u<<1)>>1]|0;M=(b[f+(i<<1)>>1]|0)+512+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>10;a[k>>0]=M>>>0>255?(M^-2147483648)>>31:M;L=L+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;a[k+g>>0]=L>>>0>255?(L^-2147483648)>>31:L;K=K+512+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;a[k+v>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+512+B+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>10;a[k+w>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+512+c+((E+F|0)*20|0)+(H(B+G|0,-5)|0)>>10;a[k+x>>0]=I>>>0>255?(I^-2147483648)>>31:I;G=G+512+C+((B+E|0)*20|0)+(H(c+F|0,-5)|0)>>10;a[k+y>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+512+e+((c+B|0)*20|0)+(H(C+E|0,-5)|0)>>10;a[k+z>>0]=F>>>0>255?(F^-2147483648)>>31:F;B=E+512+D+((C+c|0)*20|0)+(H(e+B|0,-5)|0)>>10;a[k+A>>0]=B>>>0>255?(B^-2147483648)>>31:B;k=k+1|0;f=f+2|0;j=j+1|0}return}function JF(a,c,d,f,g,h){a=a|0;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,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=H(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((H(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;Q=b[h+(f<<1)>>1]|0;O=b[h>>1]|0;P=O+10230|0;M=b[h+(g<<1)>>1]|0;N=M+10230|0;K=b[h+(l<<1)>>1]|0;L=K+10230|0;I=b[h+(m<<1)>>1]|0;J=I+10230|0;F=b[h+(n<<1)>>1]|0;G=F+10230|0;D=b[h+(o<<1)>>1]|0;E=D+10230|0;c=(b[h+(p<<1)>>1]|0)+10230|0;a=(b[h+(q<<1)>>1]|0)+10230|0;B=(b[h+(r<<1)>>1]|0)+10230|0;A=(b[h+(s<<1)>>1]|0)+10230|0;C=b[h+(t<<1)>>1]|0;R=(b[h+(k<<1)>>1]|0)+10742+J+((N+P|0)*20|0)+(H(L+(Q+10230)|0,-5)|0)>>10;b[j>>1]=R>>>0<1024?R:0-R>>31&1023;P=Q+10742+G+((L+N|0)*20|0)+(H(J+P|0,-5)|0)>>10;b[j+(d<<1)>>1]=P>>>0<1024?P:0-P>>31&1023;N=O+10742+E+((J+L|0)*20|0)+(H(G+N|0,-5)|0)>>10;b[j+(u<<1)>>1]=N>>>0<1024?N:0-N>>31&1023;L=M+10742+c+((G+J|0)*20|0)+(H(E+L|0,-5)|0)>>10;b[j+(v<<1)>>1]=L>>>0<1024?L:0-L>>31&1023;J=K+10742+a+((E+G|0)*20|0)+(H(c+J|0,-5)|0)>>10;b[j+(w<<1)>>1]=J>>>0<1024?J:0-J>>31&1023;G=I+10742+B+((c+E|0)*20|0)+(H(a+G|0,-5)|0)>>10;b[j+(x<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;E=F+10742+A+((a+c|0)*20|0)+(H(B+E|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+20972+C+((B+a|0)*20|0)+(H(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;j=j+2|0;h=h+2|0;i=i+1|0}return}function KF(a,d,f,g,h,i){a=a|0;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,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,I=0,J=0,K=0,L=0,M=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=H(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=H(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((H(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;M=(c[i+(l<<2)>>2]|0)+512+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>10;b[k>>1]=M>>>0<4096?M:0-M>>31&4095;L=L+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;b[k+(f<<1)>>1]=L>>>0<4096?L:0-L>>31&4095;K=K+512+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;b[k+(v<<1)>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+512+d+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>10;b[k+(w<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+512+a+((E+F|0)*20|0)+(H(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;G=G+512+C+((d+E|0)*20|0)+(H(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+512+B+((a+d|0)*20|0)+(H(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;d=E+512+D+((C+a|0)*20|0)+(H(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;k=k+2|0;i=i+4|0;j=j+1|0}return}function LF(a,d,f,g,h,i){a=a|0;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,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,I=0,J=0,K=0,L=0,M=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=H(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=H(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((H(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;M=(c[i+(l<<2)>>2]|0)+512+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>10;b[k>>1]=M>>>0<16384?M:0-M>>31&16383;L=L+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;b[k+(f<<1)>>1]=L>>>0<16384?L:0-L>>31&16383;K=K+512+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;b[k+(v<<1)>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+512+d+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>10;b[k+(w<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+512+a+((E+F|0)*20|0)+(H(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;G=G+512+C+((d+E|0)*20|0)+(H(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+512+B+((a+d|0)*20|0)+(H(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;d=E+512+D+((C+a|0)*20|0)+(H(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;k=k+2|0;i=i+4|0;j=j+1|0}return}function MF(a,c,d,f,g,h){a=a|0;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,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,I=0,J=0,K=0,L=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=H(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((H(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;L=b[h+(f<<1)>>1]|0;K=b[h>>1]|0;J=b[h+(g<<1)>>1]|0;I=b[h+(l<<1)>>1]|0;G=b[h+(m<<1)>>1]|0;F=b[h+(n<<1)>>1]|0;E=b[h+(o<<1)>>1]|0;A=b[h+(p<<1)>>1]|0;B=b[h+(q<<1)>>1]|0;C=b[h+(r<<1)>>1]|0;a=b[h+(s<<1)>>1]|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+512+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=j+(d<<1)|0;L=L+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;b[c>>1]=((L>>>0<512?L:0-L>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(u<<1)|0;K=K+512+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;J=J+512+A+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>10;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;I=I+512+B+((E+F|0)*20|0)+(H(A+G|0,-5)|0)>>10;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;G=G+512+C+((A+E|0)*20|0)+(H(B+F|0,-5)|0)>>10;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=F+512+a+((B+A|0)*20|0)+(H(C+E|0,-5)|0)>>10;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+512+D+((C+B|0)*20|0)+(H(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<512?A:0-A>>31&511)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function NF(c,e,f,g,h,i){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,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,I=0,J=0,K=0,L=0,M=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=H((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=H((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=H((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=H((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=H((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=H((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=H(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((H(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;M=b[f+(l<<1)>>1]|0;L=b[f>>1]|0;K=b[f+(h<<1)>>1]|0;J=b[f+(m<<1)>>1]|0;I=b[f+(n<<1)>>1]|0;G=b[f+(o<<1)>>1]|0;F=b[f+(p<<1)>>1]|0;e=b[f+(q<<1)>>1]|0;C=b[f+(r<<1)>>1]|0;D=b[f+(s<<1)>>1]|0;c=b[f+(t<<1)>>1]|0;E=b[f+(u<<1)>>1]|0;B=(b[f+(i<<1)>>1]|0)+512+I+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>10;a[k>>0]=((d[k>>0]|0)+1+((B>>>0>255?(B^-2147483648)>>31:B)&255)|0)>>>1;B=k+g|0;M=M+512+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>10;a[B>>0]=((d[B>>0]|0)+1+((M>>>0>255?(M^-2147483648)>>31:M)&255)|0)>>>1;B=k+v|0;L=L+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;a[B>>0]=(((L>>>0>255?(L^-2147483648)>>31:L)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+w|0;K=K+512+e+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;a[B>>0]=(((K>>>0>255?(K^-2147483648)>>31:K)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+x|0;J=J+512+C+((F+G|0)*20|0)+(H(e+I|0,-5)|0)>>10;a[B>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+y|0;I=I+512+D+((e+F|0)*20|0)+(H(C+G|0,-5)|0)>>10;a[B>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+z|0;G=G+512+c+((C+e|0)*20|0)+(H(D+F|0,-5)|0)>>10;a[B>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+A|0;e=F+512+E+((D+C|0)*20|0)+(H(c+e|0,-5)|0)>>10;a[B>>0]=(((e>>>0>255?(e^-2147483648)>>31:e)&255)+1+(d[B>>0]|0)|0)>>>1;k=k+1|0;f=f+2|0;j=j+1|0}return}function OF(a,c,d,f,g,h){a=a|0;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,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=H(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((H(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;R=b[h+(f<<1)>>1]|0;P=b[h>>1]|0;Q=P+10230|0;N=b[h+(g<<1)>>1]|0;O=N+10230|0;L=b[h+(l<<1)>>1]|0;M=L+10230|0;J=b[h+(m<<1)>>1]|0;K=J+10230|0;G=b[h+(n<<1)>>1]|0;I=G+10230|0;E=b[h+(o<<1)>>1]|0;F=E+10230|0;A=(b[h+(p<<1)>>1]|0)+10230|0;B=(b[h+(q<<1)>>1]|0)+10230|0;C=(b[h+(r<<1)>>1]|0)+10230|0;a=(b[h+(s<<1)>>1]|0)+10230|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+10742+K+((O+Q|0)*20|0)+(H(M+(R+10230)|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=j+(d<<1)|0;Q=R+10742+I+((M+O|0)*20|0)+(H(K+Q|0,-5)|0)>>10;b[c>>1]=((e[c>>1]|0)+1+(Q>>>0<1024?Q:0-Q>>31&1023)|0)>>>1;c=j+(u<<1)|0;O=P+10742+F+((K+M|0)*20|0)+(H(I+O|0,-5)|0)>>10;b[c>>1]=((O>>>0<1024?O:0-O>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;M=N+10742+A+((I+K|0)*20|0)+(H(F+M|0,-5)|0)>>10;b[c>>1]=((M>>>0<1024?M:0-M>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;K=L+10742+B+((F+I|0)*20|0)+(H(A+K|0,-5)|0)>>10;b[c>>1]=((K>>>0<1024?K:0-K>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;I=J+10742+C+((A+F|0)*20|0)+(H(B+I|0,-5)|0)>>10;b[c>>1]=((I>>>0<1024?I:0-I>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=G+10742+a+((B+A|0)*20|0)+(H(C+F|0,-5)|0)>>10;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+20972+D+((C+B|0)*20|0)+(H(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<1024?A:0-A>>31&1023)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function PF(a,d,f,g,h,i){a=a|0;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,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,I=0,J=0,K=0,L=0,M=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=H(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=H(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((H(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;M=c[i+(g<<2)>>2]|0;L=c[i>>2]|0;K=c[i+(h<<2)>>2]|0;J=c[i+(m<<2)>>2]|0;I=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+I+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>10;b[k>>1]=((d>>>0<4096?d:0-d>>31&4095)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;M=M+512+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>10;b[d>>1]=((M>>>0<4096?M:0-M>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;L=L+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<4096?L:0-L>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;K=K+512+B+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;J=J+512+C+((F+G|0)*20|0)+(H(B+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;I=I+512+D+((B+F|0)*20|0)+(H(C+G|0,-5)|0)>>10;b[d>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(H(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(H(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<4096?B:0-B>>31&4095)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function QF(a,d,f,g,h,i){a=a|0;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,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,I=0,J=0,K=0,L=0,M=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=H(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=H(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((H(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;M=c[i+(g<<2)>>2]|0;L=c[i>>2]|0;K=c[i+(h<<2)>>2]|0;J=c[i+(m<<2)>>2]|0;I=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+I+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>10;b[k>>1]=((d>>>0<16384?d:0-d>>31&16383)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;M=M+512+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>10;b[d>>1]=((M>>>0<16384?M:0-M>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;L=L+512+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<16384?L:0-L>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;K=K+512+B+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;J=J+512+C+((F+G|0)*20|0)+(H(B+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;I=I+512+D+((B+F|0)*20|0)+(H(C+G|0,-5)|0)>>10;b[d>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(H(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(H(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<16384?B:0-B>>31&16383)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function RF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;L=e[d+(w<<1)>>1]|0;K=e[d>>1]|0;J=e[d+(u<<1)>>1]|0;I=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=f+(z<<1)|0;L=L+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[c>>1]=((L>>>0<512?L:0-L>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;J=J+16+a+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;I=I+16+B+((E+F|0)*20|0)+(H(a+G|0,-5)|0)>>5;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(H(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(H(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<512?a:0-a>>31&511)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function SF(b,c,e,f){b=b|0;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,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,I=0,J=0,K=0,L=0;s=H(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;L=d[c+t>>0]|0;K=d[c>>0]|0;J=d[c+f>>0]|0;I=d[c+u>>0]|0;G=d[c+v>>0]|0;F=d[c+w>>0]|0;E=d[c+x>>0]|0;z=d[c+h>>0]|0;B=d[c+i>>0]|0;C=d[c+j>>0]|0;A=d[c+k>>0]|0;D=d[c+l>>0]|0;y=(d[c+s>>0]|0)+16+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((y>>>0>255?(y^-2147483648)>>31:y)&255)|0)>>>1;y=b+e|0;L=L+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;a[y>>0]=((d[y>>0]|0)+1+((L>>>0>255?(L^-2147483648)>>31:L)&255)|0)>>>1;y=b+m|0;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;a[y>>0]=(((K>>>0>255?(K^-2147483648)>>31:K)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+n|0;J=J+16+z+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;a[y>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+o|0;I=I+16+B+((E+F|0)*20|0)+(H(z+G|0,-5)|0)>>5;a[y>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+p|0;G=G+16+C+((z+E|0)*20|0)+(H(B+F|0,-5)|0)>>5;a[y>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+q|0;F=F+16+A+((B+z|0)*20|0)+(H(C+E|0,-5)|0)>>5;a[y>>0]=(((F>>>0>255?(F^-2147483648)>>31:F)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+r|0;z=E+16+D+((C+B|0)*20|0)+(H(A+z|0,-5)|0)>>5;a[y>>0]=(((z>>>0>255?(z^-2147483648)>>31:z)&255)+1+(d[y>>0]|0)|0)>>>1;g=g+1|0;b=b+1|0;c=c+1|0}return}function TF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;L=e[d+(w<<1)>>1]|0;K=e[d>>1]|0;J=e[d+(u<<1)>>1]|0;I=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=f+(z<<1)|0;L=L+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[c>>1]=((L>>>0<1024?L:0-L>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<1024?K:0-K>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;J=J+16+a+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;I=I+16+B+((E+F|0)*20|0)+(H(a+G|0,-5)|0)>>5;b[c>>1]=((I>>>0<1024?I:0-I>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(H(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<1024?G:0-G>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(H(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<1024?a:0-a>>31&1023)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function UF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;L=e[d+(w<<1)>>1]|0;K=e[d>>1]|0;J=e[d+(u<<1)>>1]|0;I=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=f+(z<<1)|0;L=L+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[c>>1]=((L>>>0<4096?L:0-L>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;J=J+16+a+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;I=I+16+B+((E+F|0)*20|0)+(H(a+G|0,-5)|0)>>5;b[c>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(H(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(H(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<4096?F:0-F>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<4096?a:0-a>>31&4095)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function VF(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,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,I=0,J=0,K=0,L=0;z=d>>1;u=f>>1;v=H(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;L=e[d+(w<<1)>>1]|0;K=e[d>>1]|0;J=e[d+(u<<1)>>1]|0;I=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((J+K|0)*20|0)+(H(I+L|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=f+(z<<1)|0;L=L+16+F+((I+J|0)*20|0)+(H(G+K|0,-5)|0)>>5;b[c>>1]=((L>>>0<16384?L:0-L>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;K=K+16+E+((G+I|0)*20|0)+(H(F+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;J=J+16+a+((F+G|0)*20|0)+(H(E+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;I=I+16+B+((E+F|0)*20|0)+(H(a+G|0,-5)|0)>>5;b[c>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(H(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(H(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<16384?F:0-F>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<16384?a:0-a>>31&16383)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function WF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function XF(b,c,e,f){b=b|0;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;g=0;while(1){if((g|0)==8)break;k=c+1|0;j=c+-1|0;l=c+2|0;h=H((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+3|0;h=(((d[k>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[m>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=H((d[m>>0]|0)+(d[c>>0]|0)|0,-5)|0;o=c+4|0;n=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+n+(d[o>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=H((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;j=c+5|0;n=(((d[m>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[j>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;n=H((d[j>>0]|0)+(d[l>>0]|0)|0,-5)|0;i=c+6|0;n=(((d[o>>0]|0)+(d[m>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+n+(d[i>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+4|0;n=H((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+7|0;n=(((d[j>>0]|0)+(d[o>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+n+(d[k>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+5|0;n=H((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;l=c+8|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+6|0;n=H((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+9|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[o>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+7|0;i=H((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+10>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function YF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function ZF(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function _F(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function $F(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;g=0;while(1){if((g|0)>=(f|0))break;h=a;j=b;k=j;j=j+4|0;j=yE(c[h>>2]|0,c[h+4>>2]|0,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;k=M()|0;h=a;c[h>>2]=j;c[h+4>>2]=k;h=a+8|0;k=h;j=b+8|0;i=j;j=j+4|0;j=yE(c[k>>2]|0,c[k+4>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=M()|0;c[h>>2]=j;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function aG(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=DE(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;h=a+4|0;i=b+4|0;c[h>>2]=DE(c[h>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;g=g+1|0;a=a+e|0;b=b+e|0}return}function bG(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;g=0;while(1){if((g|0)>=(f|0))break;h=a;j=b;k=j;j=j+4|0;j=yE(c[h>>2]|0,c[h+4>>2]|0,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;k=M()|0;h=a;c[h>>2]=j;c[h+4>>2]=k;h=a+8|0;k=h;j=b+8|0;i=j;j=j+4|0;j=yE(c[k>>2]|0,c[k+4>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=M()|0;c[h>>2]=j;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function cG(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;g=0;while(1){if((g|0)>=(f|0))break;h=a;j=b;k=j;j=j+4|0;j=yE(c[h>>2]|0,c[h+4>>2]|0,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;k=M()|0;h=a;c[h>>2]=j;c[h+4>>2]=k;h=a+8|0;k=h;j=b+8|0;i=j;j=j+4|0;j=yE(c[k>>2]|0,c[k+4>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=M()|0;c[h>>2]=j;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function dG(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;g=0;while(1){if((g|0)>=(f|0))break;h=a;j=b;k=j;j=j+4|0;j=yE(c[h>>2]|0,c[h+4>>2]|0,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;k=M()|0;h=a;c[h>>2]=j;c[h+4>>2]=k;h=a+8|0;k=h;j=b+8|0;i=j;j=j+4|0;j=yE(c[k>>2]|0,c[k+4>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=M()|0;c[h>>2]=j;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function eG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;nF(a,b,c,d);nF(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;nF(a,b,c,d);nF(a+16|0,b+16|0,c,d);return}function fG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function gG(a,b,c){a=a|0;b=b|0;c=c|0;pF(a,b,c,32);pF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;pF(a,b+256|0,c,32);pF(a+16|0,b+272|0,c,32);return}function hG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;qF(a,b,c,d,e,32,16);qF(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function iG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rF(a,b,c,d);rF(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;rF(a,b,c,d);rF(a+8|0,b+8|0,c,d);return}function jG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==21)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;g=c+8|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=b+8|0;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;h=c+12|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+12|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function kG(a,b,c){a=a|0;b=b|0;c=c|0;tF(a,b,c,16);tF(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;tF(a,b+128|0,c,16);tF(a+8|0,b+136|0,c,16);return}function lG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;uF(a,b,c,d,e,16,16);uF(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function mG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vF(a,b,c,d);vF(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;vF(a,b,c,d);vF(a+16|0,b+16|0,c,d);return}function nG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function oG(a,b,c){a=a|0;b=b|0;c=c|0;xF(a,b,c,32);xF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;xF(a,b+256|0,c,32);xF(a+16|0,b+272|0,c,32);return}function pG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;yF(a,b,c,d,e,32,16);yF(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function qG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;zF(a,b,c,d);zF(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;zF(a,b,c,d);zF(a+16|0,b+16|0,c,d);return}function rG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function sG(a,b,c){a=a|0;b=b|0;c=c|0;BF(a,b,c,32);BF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;BF(a,b+256|0,c,32);BF(a+16|0,b+272|0,c,32);return}function tG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;CF(a,b,c,d,e,32,16);CF(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function uG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;DF(a,b,c,d);DF(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;DF(a,b,c,d);DF(a+16|0,b+16|0,c,d);return}function vG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function wG(a,b,c){a=a|0;b=b|0;c=c|0;FF(a,b,c,32);FF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;FF(a,b+256|0,c,32);FF(a+16|0,b+272|0,c,32);return}function xG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;GF(a,b,c,d,e,32,16);GF(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function yG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;HF(a,b,c,d,32,e);f=b+16|0;HF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;HF(a,b,c,d,32,e);HF(a+16|0,f,c+16|0,d,32,e);return}function zG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;IF(a,b,c,d,16,e);f=b+16|0;IF(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;IF(a,b,c,d,16,e);IF(a+8|0,f,c+8|0,d,16,e);return}function AG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;JF(a,b,c,d,32,e);f=b+16|0;JF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;JF(a,b,c,d,32,e);JF(a+16|0,f,c+16|0,d,32,e);return}function BG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;KF(a,b,c,d,32,e);f=b+32|0;KF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;KF(a,b,c,d,32,e);KF(a+16|0,f,c+16|0,d,32,e);return}function CG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;LF(a,b,c,d,32,e);f=b+32|0;LF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;LF(a,b,c,d,32,e);LF(a+16|0,f,c+16|0,d,32,e);return}function DG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;MF(a,b,c,d,32,e);f=b+16|0;MF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;MF(a,b,c,d,32,e);MF(a+16|0,f,c+16|0,d,32,e);return}function EG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;NF(a,b,c,d,16,e);f=b+16|0;NF(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;NF(a,b,c,d,16,e);NF(a+8|0,f,c+8|0,d,16,e);return}function FG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;OF(a,b,c,d,32,e);f=b+16|0;OF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;OF(a,b,c,d,32,e);OF(a+16|0,f,c+16|0,d,32,e);return}function GG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;PF(a,b,c,d,32,e);f=b+32|0;PF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;PF(a,b,c,d,32,e);PF(a+16|0,f,c+16|0,d,32,e);return}function HG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;QF(a,b,c,d,32,e);f=b+32|0;QF(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;QF(a,b,c,d,32,e);QF(a+16|0,f,c+16|0,d,32,e);return}function IG(a,b,c){a=a|0;b=b|0;c=c|0;RF(a,b,c,32);RF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;RF(a,b+256|0,c,32);RF(a+16|0,b+272|0,c,32);return}function JG(a,b,c){a=a|0;b=b|0;c=c|0;SF(a,b,c,16);SF(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;SF(a,b+128|0,c,16);SF(a+8|0,b+136|0,c,16);return}function KG(a,b,c){a=a|0;b=b|0;c=c|0;TF(a,b,c,32);TF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;TF(a,b+256|0,c,32);TF(a+16|0,b+272|0,c,32);return}function LG(a,b,c){a=a|0;b=b|0;c=c|0;UF(a,b,c,32);UF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;UF(a,b+256|0,c,32);UF(a+16|0,b+272|0,c,32);return}function MG(a,b,c){a=a|0;b=b|0;c=c|0;VF(a,b,c,32);VF(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;VF(a,b+256|0,c,32);VF(a+16|0,b+272|0,c,32);return}function NG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;WF(a,b,c,d);WF(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;WF(a,b,c,d);WF(a+16|0,b+16|0,c,d);return}function OG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;XF(a,b,c,d);XF(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;XF(a,b,c,d);XF(a+8|0,b+8|0,c,d);return}function PG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;YF(a,b,c,d);YF(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;YF(a,b,c,d);YF(a+16|0,b+16|0,c,d);return}function QG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZF(a,b,c,d);ZF(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;ZF(a,b,c,d);ZF(a+16|0,b+16|0,c,d);return}function RG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;_F(a,b,c,d);_F(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;_F(a,b,c,d);_F(a+16|0,b+16|0,c,d);return}function SG(a,b,c){a=a|0;b=b|0;c=c|0;$F(a,b,c,16);$F(a+16|0,b+16|0,c,16);return}function TG(a,b,c){a=a|0;b=b|0;c=c|0;aG(a,b,c,16);aG(a+8|0,b+8|0,c,16);return}function UG(a,b,c){a=a|0;b=b|0;c=c|0;bG(a,b,c,16);bG(a+16|0,b+16|0,c,16);return}function VG(a,b,c){a=a|0;b=b|0;c=c|0;cG(a,b,c,16);cG(a+16|0,b+16|0,c,16);return}function WG(a,b,c){a=a|0;b=b|0;c=c|0;dG(a,b,c,16);dG(a+16|0,b+16|0,c,16);return}function XG(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<512?l:0-l>>31&511;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function YG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function ZG(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function _G(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(H(h,g)|0)|0;i=e+(h<<2)|0;i=yE(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;M()|0;c[a+(H(h,f)|0)>>2]=i;h=h+1|0}return}function $G(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=0;while(1){if((g|0)==2)break;j=c+1|0;i=c+-1|0;k=c+2|0;l=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;h=c+3|0;l=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+l+(d[h>>0]|0)>>5;a[b>>0]=l>>>0>255?(l^-2147483648)>>31:l;h=H((d[h>>0]|0)+(d[c>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+4>>0]|0)>>5;a[b+1>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function aH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8;a[b>>0]=g;a[b+1>>0]=g>>8;f=f+1|0;c=c+e|0;b=b+2|0}return}function bH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=0;while(1){if((f|0)==2)break;l=d[c+-2>>0]|0;g=d[c>>0]|0;i=d[c+2>>0]|0;j=d[c+4>>0]|0;h=d[c+6>>0]|0;k=d[c+8>>0]|0;m=(d[c+-4>>0]|0)+16+h+((i+g|0)*20|0)+(H(j+l|0,-5)|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;g=l+16+k+((j+i|0)*20|0)+(H(h+g|0,-5)|0)>>5;a[b+e>>0]=g>>>0>255?(g^-2147483648)>>31:g;f=f+1|0;b=b+1|0;c=c+1|0}return}function cH(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=c+(H(h,g)|0)|0;i=e+(h<<1)|0;b[a+(H(h,f)|0)>>1]=DE((d[j>>0]|d[j+1>>0]<<8)&65535,(d[i>>0]|d[i+1>>0]<<8)&65535)|0;h=h+1|0}return}function dH(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<1024?l:0-l>>31&1023;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function eH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function fH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function gH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(H(h,g)|0)|0;i=e+(h<<2)|0;i=yE(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;M()|0;c[a+(H(h,f)|0)>>2]=i;h=h+1|0}return}function hH(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<4096?l:0-l>>31&4095;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function iH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function jH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function kH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(H(h,g)|0)|0;i=e+(h<<2)|0;i=yE(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;M()|0;c[a+(H(h,f)|0)>>2]=i;h=h+1|0}return}function lH(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;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<16384?l:0-l>>31&16383;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function mH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function nH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function oH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(H(h,g)|0)|0;i=e+(h<<2)|0;i=yE(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;M()|0;c[a+(H(h,f)|0)>>2]=i;h=h+1|0}return}function pH(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,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=H((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=b[g>>1]|0;l=b[g+8>>1]|0;k=b[g+16>>1]|0;m=b[g+24>>1]|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+512+m+((l+n|0)*20|0)+(H(k+f|0,-5)|0)>>10;b[a>>1]=j>>>0<512?j:0-j>>31&511;n=f+512+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<512?n:0-n>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function qH(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;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==7)break;m=f+1|0;l=f+-1|0;n=f+2|0;o=H((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;k=f+3|0;b[i>>1]=(((d[m>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+o+(d[k>>0]|0);k=H((d[k>>0]|0)+(d[f>>0]|0)|0,-5)|0;b[i+2>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+4>>0]|0);i=i+4|0;j=j+1|0;f=f+h|0}f=e+8|0;i=0;while(1){if((i|0)==2)break;e=b[f+-4>>1]|0;o=b[f>>1]|0;m=b[f+4>>1]|0;l=b[f+8>>1]|0;n=b[f+12>>1]|0;k=b[f+16>>1]|0;h=(b[f+-8>>1]|0)+512+n+((m+o|0)*20|0)+(H(l+e|0,-5)|0)>>10;a[c>>0]=h>>>0>255?(h^-2147483648)>>31:h;o=e+512+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;a[c+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;c=c+1|0;f=f+2|0;i=i+1|0}return}function rH(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,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=H((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=(b[g>>1]|0)+10230|0;l=(b[g+8>>1]|0)+10230|0;k=(b[g+16>>1]|0)+10230|0;m=(b[g+24>>1]|0)+10230|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+10742+m+((l+n|0)*20|0)+(H(k+(f+10230)|0,-5)|0)>>10;b[a>>1]=j>>>0<1024?j:0-j>>31&1023;n=f+20972+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<1024?n:0-n>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function sH(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,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=H(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=H(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<4096?g:0-g>>31&4095;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function tH(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,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=H(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=H(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<16384?g:0-g>>31&16383;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function uH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function vH(a,c,e){a=a|0;c=c|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;b[a>>1]=d[c>>0]|d[c+1>>0]<<8;f=f+1|0;c=c+e|0;a=a+e|0}return}function wH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function xH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function yH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function zH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;i=b+(H(h,g)|0)|0;l=i;i=i+4|0;k=e+(h<<3)|0;j=k;k=k+4|0;k=yE(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;j=M()|0;i=a+(H(h,f)|0)|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function AH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==4)break;j=b+(H(h,g)|0)|0;i=e+(h<<2)|0;c[a+(H(h,f)|0)>>2]=DE(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=h+1|0}return}function BH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;i=b+(H(h,g)|0)|0;l=i;i=i+4|0;k=e+(h<<3)|0;j=k;k=k+4|0;k=yE(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;j=M()|0;i=a+(H(h,f)|0)|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function CH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;i=b+(H(h,g)|0)|0;l=i;i=i+4|0;k=e+(h<<3)|0;j=k;k=k+4|0;k=yE(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;j=M()|0;i=a+(H(h,f)|0)|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function DH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;i=b+(H(h,g)|0)|0;l=i;i=i+4|0;k=e+(h<<3)|0;j=k;k=k+4|0;k=yE(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;j=M()|0;i=a+(H(h,f)|0)|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function EH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function FH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function GH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function HH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function IH(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function JH(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,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=H(j,g)|0;k=b+n|0;o=k;k=k+4|0;m=H(j,h)|0;p=e+m|0;l=p;p=p+4|0;p=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24)|0;l=M()|0;k=H(j,f)|0;o=a+k|0;c[o>>2]=p;c[o+4>>2]=l;n=b+(n+8)|0;o=n;n=n+4|0;m=e+(m+8)|0;l=m;m=m+4|0;m=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;l=M()|0;k=a+(k+8)|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function KH(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,n=0,o=0;j=0;while(1){if((j|0)>=(i|0))break;m=H(j,g)|0;o=b+m|0;l=H(j,h)|0;n=e+l|0;k=H(j,f)|0;c[a+k>>2]=DE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24)|0;m=b+(m+4)|0;l=e+(l+4)|0;c[a+(k+4)>>2]=DE(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;j=j+1|0}return}function LH(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,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=H(j,g)|0;k=b+n|0;o=k;k=k+4|0;m=H(j,h)|0;p=e+m|0;l=p;p=p+4|0;p=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24)|0;l=M()|0;k=H(j,f)|0;o=a+k|0;c[o>>2]=p;c[o+4>>2]=l;n=b+(n+8)|0;o=n;n=n+4|0;m=e+(m+8)|0;l=m;m=m+4|0;m=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;l=M()|0;k=a+(k+8)|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}
function Pm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Ec;Ec=Ec+16|0;f=g;h=(b+-9|0)>>>0<8;c[a+128>>2]=h?6:5;c[a+124>>2]=h?8:7;a:do switch(b|0){case 9:{c[a+84>>2]=9;c[a+88>>2]=10;c[a+92>>2]=11;c[a+96>>2]=12;c[a+100>>2]=4;c[a+104>>2]=5;e=(d|0)<2;c[a+108>>2]=e?7:6;c[a+112>>2]=8;c[a+116>>2]=13;c[a+120>>2]=e?27:26;c[a>>2]=5;c[a+4>>2]=6;c[a+8>>2]=7;c[a+12>>2]=8;c[a+16>>2]=1;c[a+20>>2]=2;c[a+24>>2]=3;c[a+28>>2]=4;c[a+32>>2]=9;c[a+36>>2]=10;c[a+40>>2]=11;c[a+44>>2]=5;c[a+48>>2]=6;c[a+52>>2]=7;c[a+56>>2]=12;c[a+60>>2]=e?14:13;c[a+64>>2]=e?16:15;c[a+68>>2]=8;c[a+72>>2]=e?10:9;e=e?12:11;break}case 10:{c[a+84>>2]=14;c[a+88>>2]=15;c[a+92>>2]=16;c[a+96>>2]=17;c[a+100>>2]=17;c[a+104>>2]=18;e=(d|0)<2;c[a+108>>2]=e?20:19;c[a+112>>2]=21;c[a+116>>2]=18;c[a+120>>2]=e?29:28;c[a>>2]=9;c[a+4>>2]=10;c[a+8>>2]=11;c[a+12>>2]=12;c[a+16>>2]=5;c[a+20>>2]=6;c[a+24>>2]=7;c[a+28>>2]=8;c[a+32>>2]=22;c[a+36>>2]=23;c[a+40>>2]=24;c[a+44>>2]=13;c[a+48>>2]=14;c[a+52>>2]=15;c[a+56>>2]=25;c[a+60>>2]=e?27:26;c[a+64>>2]=e?29:28;c[a+68>>2]=16;c[a+72>>2]=e?18:17;e=e?20:19;break}case 12:{c[a+84>>2]=19;c[a+88>>2]=20;c[a+92>>2]=21;c[a+96>>2]=22;c[a+100>>2]=30;c[a+104>>2]=31;e=(d|0)<2;c[a+108>>2]=e?33:32;c[a+112>>2]=34;c[a+116>>2]=23;c[a+120>>2]=e?31:30;c[a>>2]=13;c[a+4>>2]=14;c[a+8>>2]=15;c[a+12>>2]=16;c[a+16>>2]=9;c[a+20>>2]=10;c[a+24>>2]=11;c[a+28>>2]=12;c[a+32>>2]=35;c[a+36>>2]=36;c[a+40>>2]=37;c[a+44>>2]=21;c[a+48>>2]=22;c[a+52>>2]=23;c[a+56>>2]=38;c[a+60>>2]=e?40:39;c[a+64>>2]=e?42:41;c[a+68>>2]=24;c[a+72>>2]=e?26:25;e=e?28:27;break}case 14:{c[a+84>>2]=24;c[a+88>>2]=25;c[a+92>>2]=26;c[a+96>>2]=27;c[a+100>>2]=43;c[a+104>>2]=44;e=(d|0)<2;c[a+108>>2]=e?46:45;c[a+112>>2]=47;c[a+116>>2]=28;c[a+120>>2]=e?33:32;c[a>>2]=17;c[a+4>>2]=18;c[a+8>>2]=19;c[a+12>>2]=20;c[a+16>>2]=13;c[a+20>>2]=14;c[a+24>>2]=15;c[a+28>>2]=16;c[a+32>>2]=48;c[a+36>>2]=49;c[a+40>>2]=50;c[a+44>>2]=29;c[a+48>>2]=30;c[a+52>>2]=31;c[a+56>>2]=51;c[a+60>>2]=e?53:52;c[a+64>>2]=e?55:54;c[a+68>>2]=32;c[a+72>>2]=e?34:33;e=e?36:35;break}default:if((b|0)<9){c[a+84>>2]=29;c[a+88>>2]=30;c[a+92>>2]=31;c[a+96>>2]=32;c[a+100>>2]=56;c[a+104>>2]=57;e=(d|0)<2;c[a+108>>2]=e?59:58;c[a+112>>2]=60;c[a+116>>2]=33;c[a+120>>2]=e?35:34;c[a>>2]=21;c[a+4>>2]=22;c[a+8>>2]=23;c[a+12>>2]=24;c[a+16>>2]=17;c[a+20>>2]=18;c[a+24>>2]=19;c[a+28>>2]=20;c[a+32>>2]=61;c[a+36>>2]=62;c[a+40>>2]=63;c[a+44>>2]=37;c[a+48>>2]=38;c[a+52>>2]=39;c[a+56>>2]=64;c[a+60>>2]=e?66:65;c[a+64>>2]=e?68:67;c[a+68>>2]=40;c[a+72>>2]=e?42:41;e=e?44:43;break a}else{c[f>>2]=150605;c[f+4>>2]=150618;c[f+8>>2]=150;We(0,0,164054,f);Za()}}while(0);c[a+76>>2]=e;c[a+80>>2]=0;c[a+132>>2]=9;Ec=g;return}function Qm(a,b){a=a|0;b=b|0;b=(b+-9|0)>>>0<8;c[a>>2]=b?26:25;c[a+4>>2]=b?28:27;c[a+8>>2]=b?30:29;c[a+12>>2]=b?32:31;c[a+16>>2]=b?34:33;c[a+20>>2]=b?36:35;c[a+24>>2]=b?38:37;c[a+28>>2]=b?40:39;return}function Rm(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,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;switch(b|0){case 9:{b=98;d=102;e=106;f=110;g=99;h=103;i=107;j=111;k=100;l=104;m=108;n=112;o=101;p=105;q=109;r=113;s=130;t=134;u=138;v=142;w=131;x=135;y=139;z=143;A=132;B=136;C=140;D=144;E=133;F=137;G=141;H=145;I=114;J=118;K=122;L=126;M=115;N=119;O=123;P=127;Q=116;R=120;S=124;T=128;U=117;V=121;W=125;X=129;Y=34;Z=38;_=42;$=46;aa=35;ba=39;ca=43;da=47;ea=36;fa=40;ga=44;ha=48;ia=37;ja=41;ka=45;la=49;ma=82;na=86;oa=90;pa=94;qa=83;ra=87;sa=91;ta=95;ua=84;va=88;wa=92;xa=96;ya=85;za=89;Aa=93;Ba=97;Ca=66;Da=70;Ea=74;Fa=78;Ga=67;Ha=71;Ia=75;Ja=79;Ka=68;La=72;Ma=76;Na=80;Oa=69;Pa=73;Qa=77;Ra=81;Sa=50;Ta=54;Ua=58;Va=62;Wa=51;Xa=55;Ya=59;Za=63;_a=52;$a=56;ab=60;bb=64;cb=53;db=57;eb=61;fb=65;break}case 10:{b=322;d=326;e=330;f=334;g=323;h=327;i=331;j=335;k=324;l=328;m=332;n=336;o=325;p=329;q=333;r=337;s=354;t=358;u=362;v=366;w=355;x=359;y=363;z=367;A=356;B=360;C=364;D=368;E=357;F=361;G=365;H=369;I=338;J=342;K=346;L=350;M=339;N=343;O=347;P=351;Q=340;R=344;S=348;T=352;U=341;V=345;W=349;X=353;Y=258;Z=262;_=266;$=270;aa=259;ba=263;ca=267;da=271;ea=260;fa=264;ga=268;ha=272;ia=261;ja=265;ka=269;la=273;ma=306;na=310;oa=314;pa=318;qa=307;ra=311;sa=315;ta=319;ua=308;va=312;wa=316;xa=320;ya=309;za=313;Aa=317;Ba=321;Ca=290;Da=294;Ea=298;Fa=302;Ga=291;Ha=295;Ia=299;Ja=303;Ka=292;La=296;Ma=300;Na=304;Oa=293;Pa=297;Qa=301;Ra=305;Sa=274;Ta=278;Ua=282;Va=286;Wa=275;Xa=279;Ya=283;Za=287;_a=276;$a=280;ab=284;bb=288;cb=277;db=281;eb=285;fb=289;break}case 12:{b=434;d=438;e=442;f=446;g=435;h=439;i=443;j=447;k=436;l=440;m=444;n=448;o=437;p=441;q=445;r=449;s=466;t=470;u=474;v=478;w=467;x=471;y=475;z=479;A=468;B=472;C=476;D=480;E=469;F=473;G=477;H=481;I=450;J=454;K=458;L=462;M=451;N=455;O=459;P=463;Q=452;R=456;S=460;T=464;U=453;V=457;W=461;X=465;Y=370;Z=374;_=378;$=382;aa=371;ba=375;ca=379;da=383;ea=372;fa=376;ga=380;ha=384;ia=373;ja=377;ka=381;la=385;ma=418;na=422;oa=426;pa=430;qa=419;ra=423;sa=427;ta=431;ua=420;va=424;wa=428;xa=432;ya=421;za=425;Aa=429;Ba=433;Ca=402;Da=406;Ea=410;Fa=414;Ga=403;Ha=407;Ia=411;Ja=415;Ka=404;La=408;Ma=412;Na=416;Oa=405;Pa=409;Qa=413;Ra=417;Sa=386;Ta=390;Ua=394;Va=398;Wa=387;Xa=391;Ya=395;Za=399;_a=388;$a=392;ab=396;bb=400;cb=389;db=393;eb=397;fb=401;break}case 14:{b=546;d=550;e=554;f=558;g=547;h=551;i=555;j=559;k=548;l=552;m=556;n=560;o=549;p=553;q=557;r=561;s=578;t=582;u=586;v=590;w=579;x=583;y=587;z=591;A=580;B=584;C=588;D=592;E=581;F=585;G=589;H=593;I=562;J=566;K=570;L=574;M=563;N=567;O=571;P=575;Q=564;R=568;S=572;T=576;U=565;V=569;W=573;X=577;Y=482;Z=486;_=490;$=494;aa=483;ba=487;ca=491;da=495;ea=484;fa=488;ga=492;ha=496;ia=485;ja=489;ka=493;la=497;ma=530;na=534;oa=538;pa=542;qa=531;ra=535;sa=539;ta=543;ua=532;va=536;wa=540;xa=544;ya=533;za=537;Aa=541;Ba=545;Ca=514;Da=518;Ea=522;Fa=526;Ga=515;Ha=519;Ia=523;Ja=527;Ka=516;La=520;Ma=524;Na=528;Oa=517;Pa=521;Qa=525;Ra=529;Sa=498;Ta=502;Ua=506;Va=510;Wa=499;Xa=503;Ya=507;Za=511;_a=500;$a=504;ab=508;bb=512;cb=501;db=505;eb=509;fb=513;break}default:{b=210;d=214;e=218;f=222;g=211;h=215;i=219;j=223;k=212;l=216;m=220;n=224;o=213;p=217;q=221;r=225;s=242;t=246;u=250;v=254;w=243;x=247;y=251;z=255;A=244;B=248;C=252;D=256;E=245;F=249;G=253;H=257;I=226;J=230;K=234;L=238;M=227;N=231;O=235;P=239;Q=228;R=232;S=236;T=240;U=229;V=233;W=237;X=241;Y=146;Z=150;_=154;$=158;aa=147;ba=151;ca=155;da=159;ea=148;fa=152;ga=156;ha=160;ia=149;ja=153;ka=157;la=161;ma=194;na=198;oa=202;pa=206;qa=195;ra=199;sa=203;ta=207;ua=196;va=200;wa=204;xa=208;ya=197;za=201;Aa=205;Ba=209;Ca=178;Da=182;Ea=186;Fa=190;Ga=179;Ha=183;Ia=187;Ja=191;Ka=180;La=184;Ma=188;Na=192;Oa=181;Pa=185;Qa=189;Ra=193;Sa=162;Ta=166;Ua=170;Va=174;Wa=163;Xa=167;Ya=171;Za=175;_a=164;$a=168;ab=172;bb=176;cb=165;db=169;eb=173;fb=177}}c[a>>2]=Y;c[a+4>>2]=aa;c[a+8>>2]=ea;c[a+12>>2]=ia;c[a+16>>2]=Z;c[a+20>>2]=ba;c[a+24>>2]=fa;c[a+28>>2]=ja;c[a+32>>2]=_;c[a+36>>2]=ca;c[a+40>>2]=ga;c[a+44>>2]=ka;c[a+48>>2]=$;c[a+52>>2]=da;c[a+56>>2]=ha;c[a+60>>2]=la;c[a+64>>2]=Sa;c[a+68>>2]=Wa;c[a+72>>2]=_a;c[a+76>>2]=cb;c[a+80>>2]=Ta;c[a+84>>2]=Xa;c[a+88>>2]=$a;c[a+92>>2]=db;c[a+96>>2]=Ua;c[a+100>>2]=Ya;c[a+104>>2]=ab;c[a+108>>2]=eb;c[a+112>>2]=Va;c[a+116>>2]=Za;c[a+120>>2]=bb;c[a+124>>2]=fb;c[a+128>>2]=Ca;c[a+132>>2]=Ga;c[a+136>>2]=Ka;c[a+140>>2]=Oa;c[a+144>>2]=Da;c[a+148>>2]=Ha;c[a+152>>2]=La;c[a+156>>2]=Pa;c[a+160>>2]=Ea;c[a+164>>2]=Ia;c[a+168>>2]=Ma;c[a+172>>2]=Qa;c[a+176>>2]=Fa;c[a+180>>2]=Ja;c[a+184>>2]=Na;c[a+188>>2]=Ra;c[a+192>>2]=ma;c[a+196>>2]=qa;c[a+200>>2]=ua;c[a+204>>2]=ya;c[a+208>>2]=na;c[a+212>>2]=ra;c[a+216>>2]=va;c[a+220>>2]=za;c[a+224>>2]=oa;c[a+228>>2]=sa;c[a+232>>2]=wa;c[a+236>>2]=Aa;c[a+240>>2]=pa;c[a+244>>2]=ta;c[a+248>>2]=xa;c[a+252>>2]=Ba;c[a+256>>2]=b;c[a+260>>2]=g;c[a+264>>2]=k;c[a+268>>2]=o;c[a+272>>2]=d;c[a+276>>2]=h;c[a+280>>2]=l;c[a+284>>2]=p;c[a+288>>2]=e;c[a+292>>2]=i;c[a+296>>2]=m;c[a+300>>2]=q;c[a+304>>2]=f;c[a+308>>2]=j;c[a+312>>2]=n;c[a+316>>2]=r;c[a+320>>2]=I;c[a+324>>2]=M;c[a+328>>2]=Q;c[a+332>>2]=U;c[a+336>>2]=J;c[a+340>>2]=N;c[a+344>>2]=R;c[a+348>>2]=V;c[a+352>>2]=K;c[a+356>>2]=O;c[a+360>>2]=S;c[a+364>>2]=W;c[a+368>>2]=L;c[a+372>>2]=P;c[a+376>>2]=T;c[a+380>>2]=X;c[a+384>>2]=s;c[a+388>>2]=w;c[a+392>>2]=A;c[a+396>>2]=E;c[a+400>>2]=t;c[a+404>>2]=x;c[a+408>>2]=B;c[a+412>>2]=F;c[a+416>>2]=u;c[a+420>>2]=y;c[a+424>>2]=C;c[a+428>>2]=G;c[a+432>>2]=v;c[a+436>>2]=z;c[a+440>>2]=D;c[a+444>>2]=H;return}function Sm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+16|0;f=j;switch(d|0){case 9:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=693;g=692;break}default:{f=608;g=607}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=594;c[a+12>>2]=(b|0)==23?596:595;c[a+16>>2]=597;c[a+20>>2]=598;c[a+24>>2]=599;c[a+28>>2]=d?601:600;c[a+32>>2]=602;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=604;c[a+48>>2]=605;c[a+52>>2]=606;c[a+40>>2]=607;d=14;f=608;break}default:{c[d>>2]=603;d=10;f=612}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=613;i=10}}else{c[a>>2]=607;c[a+4>>2]=608;c[a+8>>2]=594;c[a+12>>2]=609;c[a+16>>2]=597;c[a+20>>2]=598;c[a+24>>2]=599;c[a+28>>2]=610;c[a+32>>2]=611;c[a+36>>2]=603;c[a+40>>2]=612;c[a+44>>2]=613;c[a+48>>2]=614;c[a+52>>2]=615;d=14;f=694;i=10}if((i|0)==10)c[a+(d<<2)>>2]=f;c[a+60>>2]=45;c[a+64>>2]=46;c[a+68>>2]=47;c[a+72>>2]=48;c[a+76>>2]=49;c[a+80>>2]=50;c[a+84>>2]=51;c[a+88>>2]=52;c[a+92>>2]=53;c[a+96>>2]=54;c[a+100>>2]=55;c[a+104>>2]=56;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?37:36;c[a+112>>2]=e?39:38;switch(b|0){case 139:case 179:{c[a+120>>2]=42;break}default:c[a+120>>2]=e?41:40}a:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=55;c[a+124>>2]=56;c[a+128>>2]=57;switch(b|0){case 139:case 179:break;default:break a}c[a+136>>2]=58;d=8;f=183;i=20;break}default:if(e){c[d>>2]=43;c[a+124>>2]=44;c[a+128>>2]=45;c[a+136>>2]=46;c[a+140>>2]=47;c[a+144>>2]=48;d=10;f=181;i=20;break a}else{c[d>>2]=49;c[a+124>>2]=50;c[a+128>>2]=51;c[a+136>>2]=52;c[a+140>>2]=53;c[a+144>>2]=54;d=10;f=182;i=20;break a}}while(0);if((i|0)==20)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?60:59;c[a+152>>2]=61;c[a+160>>2]=62;c[a+156>>2]=63;switch(b|0){case 23:{d=3;f=184;break}case 69:{d=3;f=185;break}case 139:case 179:{c[a+164>>2]=64;c[a+180>>2]=65;d=8;f=186;break}default:{d=3;f=187}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=66;c[a+172>>2]=67;c[a+176>>2]=68;c[a+188>>2]=616;c[a+192>>2]=617;c[a+196>>2]=618;c[a+200>>2]=619;c[a+204>>2]=69;c[a+208>>2]=70;f=126;g=125;h=e?60:59;d=e?58:57;break}case 10:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=693;g=692;break}default:{f=631;g=630}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=620;c[a+12>>2]=(b|0)==23?596:621;c[a+16>>2]=622;c[a+20>>2]=623;c[a+24>>2]=624;c[a+28>>2]=d?601:625;c[a+32>>2]=626;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=604;c[a+48>>2]=628;c[a+52>>2]=629;c[a+40>>2]=630;d=14;f=631;break}default:{c[d>>2]=627;d=10;f=632}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=633;i=34}}else{c[a>>2]=630;c[a+4>>2]=631;c[a+8>>2]=620;c[a+12>>2]=609;c[a+16>>2]=622;c[a+20>>2]=623;c[a+24>>2]=624;c[a+28>>2]=610;c[a+32>>2]=611;c[a+36>>2]=627;c[a+40>>2]=632;c[a+44>>2]=633;c[a+48>>2]=614;c[a+52>>2]=615;d=14;f=694;i=34}if((i|0)==34)c[a+(d<<2)>>2]=f;c[a+60>>2]=61;c[a+64>>2]=62;c[a+68>>2]=63;c[a+72>>2]=64;c[a+76>>2]=65;c[a+80>>2]=66;c[a+84>>2]=67;c[a+88>>2]=68;c[a+92>>2]=69;c[a+96>>2]=70;c[a+100>>2]=71;c[a+104>>2]=72;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?70:69;c[a+112>>2]=e?72:71;switch(b|0){case 139:case 179:{c[a+120>>2]=42;break}default:c[a+120>>2]=e?74:73}b:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=55;c[a+124>>2]=56;c[a+128>>2]=57;switch(b|0){case 139:case 179:break;default:break b}c[a+136>>2]=87;d=8;f=190;i=44;break}default:if(e){c[d>>2]=75;c[a+124>>2]=76;c[a+128>>2]=77;c[a+136>>2]=78;c[a+140>>2]=79;c[a+144>>2]=80;d=10;f=188;i=44;break b}else{c[d>>2]=81;c[a+124>>2]=82;c[a+128>>2]=83;c[a+136>>2]=84;c[a+140>>2]=85;c[a+144>>2]=86;d=10;f=189;i=44;break b}}while(0);if((i|0)==44)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?89:88;c[a+152>>2]=90;c[a+160>>2]=91;c[a+156>>2]=92;switch(b|0){case 23:{d=3;f=184;break}case 69:{d=3;f=185;break}case 139:case 179:{c[a+164>>2]=64;c[a+180>>2]=93;d=8;f=191;break}default:{d=3;f=192}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=94;c[a+172>>2]=95;c[a+176>>2]=96;c[a+188>>2]=634;c[a+192>>2]=635;c[a+196>>2]=636;c[a+200>>2]=637;c[a+204>>2]=71;c[a+208>>2]=72;f=128;g=127;h=e?76:75;d=e?74:73;break}case 12:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=693;g=692;break}default:{f=649;g=648}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=638;c[a+12>>2]=(b|0)==23?596:639;c[a+16>>2]=640;c[a+20>>2]=641;c[a+24>>2]=642;c[a+28>>2]=d?601:643;c[a+32>>2]=644;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=604;c[a+48>>2]=646;c[a+52>>2]=647;c[a+40>>2]=648;d=14;f=649;break}default:{c[d>>2]=645;d=10;f=650}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=651;i=58}}else{c[a>>2]=648;c[a+4>>2]=649;c[a+8>>2]=638;c[a+12>>2]=609;c[a+16>>2]=640;c[a+20>>2]=641;c[a+24>>2]=642;c[a+28>>2]=610;c[a+32>>2]=611;c[a+36>>2]=645;c[a+40>>2]=650;c[a+44>>2]=651;c[a+48>>2]=614;c[a+52>>2]=615;d=14;f=694;i=58}if((i|0)==58)c[a+(d<<2)>>2]=f;c[a+60>>2]=77;c[a+64>>2]=78;c[a+68>>2]=79;c[a+72>>2]=80;c[a+76>>2]=81;c[a+80>>2]=82;c[a+84>>2]=83;c[a+88>>2]=84;c[a+92>>2]=85;c[a+96>>2]=86;c[a+100>>2]=87;c[a+104>>2]=88;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?98:97;c[a+112>>2]=e?100:99;switch(b|0){case 139:case 179:{c[a+120>>2]=42;break}default:c[a+120>>2]=e?102:101}c:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=55;c[a+124>>2]=56;c[a+128>>2]=57;switch(b|0){case 139:case 179:break;default:break c}c[a+136>>2]=115;d=8;f=195;i=68;break}default:if(e){c[d>>2]=103;c[a+124>>2]=104;c[a+128>>2]=105;c[a+136>>2]=106;c[a+140>>2]=107;c[a+144>>2]=108;d=10;f=193;i=68;break c}else{c[d>>2]=109;c[a+124>>2]=110;c[a+128>>2]=111;c[a+136>>2]=112;c[a+140>>2]=113;c[a+144>>2]=114;d=10;f=194;i=68;break c}}while(0);if((i|0)==68)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?117:116;c[a+152>>2]=118;c[a+160>>2]=119;c[a+156>>2]=120;switch(b|0){case 23:{d=3;f=184;break}case 69:{d=3;f=185;break}case 139:case 179:{c[a+164>>2]=64;c[a+180>>2]=121;d=8;f=196;break}default:{d=3;f=197}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=122;c[a+172>>2]=123;c[a+176>>2]=124;c[a+188>>2]=652;c[a+192>>2]=653;c[a+196>>2]=654;c[a+200>>2]=655;c[a+204>>2]=73;c[a+208>>2]=74;f=130;g=129;h=e?92:91;d=e?90:89;break}case 14:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=693;g=692;break}default:{f=667;g=666}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=656;c[a+12>>2]=(b|0)==23?596:657;c[a+16>>2]=658;c[a+20>>2]=659;c[a+24>>2]=660;c[a+28>>2]=d?601:661;c[a+32>>2]=662;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=604;c[a+48>>2]=664;c[a+52>>2]=665;c[a+40>>2]=666;d=14;f=667;break}default:{c[d>>2]=663;d=10;f=668}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=669;i=82}}else{c[a>>2]=666;c[a+4>>2]=667;c[a+8>>2]=656;c[a+12>>2]=609;c[a+16>>2]=658;c[a+20>>2]=659;c[a+24>>2]=660;c[a+28>>2]=610;c[a+32>>2]=611;c[a+36>>2]=663;c[a+40>>2]=668;c[a+44>>2]=669;c[a+48>>2]=614;c[a+52>>2]=615;d=14;f=694;i=82}if((i|0)==82)c[a+(d<<2)>>2]=f;c[a+60>>2]=93;c[a+64>>2]=94;c[a+68>>2]=95;c[a+72>>2]=96;c[a+76>>2]=97;c[a+80>>2]=98;c[a+84>>2]=99;c[a+88>>2]=100;c[a+92>>2]=101;c[a+96>>2]=102;c[a+100>>2]=103;c[a+104>>2]=104;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?126:125;c[a+112>>2]=e?128:127;switch(b|0){case 139:case 179:{c[a+120>>2]=42;break}default:c[a+120>>2]=e?130:129}d:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=55;c[a+124>>2]=56;c[a+128>>2]=57;switch(b|0){case 139:case 179:break;default:break d}c[a+136>>2]=143;d=8;f=200;i=92;break}default:if(e){c[d>>2]=131;c[a+124>>2]=132;c[a+128>>2]=133;c[a+136>>2]=134;c[a+140>>2]=135;c[a+144>>2]=136;d=10;f=198;i=92;break d}else{c[d>>2]=137;c[a+124>>2]=138;c[a+128>>2]=139;c[a+136>>2]=140;c[a+140>>2]=141;c[a+144>>2]=142;d=10;f=199;i=92;break d}}while(0);if((i|0)==92)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?145:144;c[a+152>>2]=146;c[a+160>>2]=147;c[a+156>>2]=148;switch(b|0){case 23:{d=3;f=184;break}case 69:{d=3;f=185;break}case 139:case 179:{c[a+164>>2]=64;c[a+180>>2]=149;d=8;f=201;break}default:{d=3;f=202}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=150;c[a+172>>2]=151;c[a+176>>2]=152;c[a+188>>2]=670;c[a+192>>2]=671;c[a+196>>2]=672;c[a+200>>2]=673;c[a+204>>2]=75;c[a+208>>2]=76;f=132;g=131;h=e?108:107;d=e?106:105;break}default:{if((d|0)>=9){c[f>>2]=150605;c[f+4>>2]=150583;c[f+8>>2]=590;We(0,0,164054,f);Za()}if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=693;g=692;break}default:{f=685;g=684}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=674;c[a+12>>2]=(b|0)==23?596:675;c[a+16>>2]=676;c[a+20>>2]=677;c[a+24>>2]=678;c[a+28>>2]=d?601:679;c[a+32>>2]=680;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=604;c[a+48>>2]=682;c[a+52>>2]=683;c[a+40>>2]=684;d=14;f=685;break}default:{c[d>>2]=681;d=10;f=686}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=687;i=108}}else{c[a>>2]=684;c[a+4>>2]=685;c[a+8>>2]=674;c[a+12>>2]=609;c[a+16>>2]=676;c[a+20>>2]=677;c[a+24>>2]=678;c[a+28>>2]=610;c[a+32>>2]=611;c[a+36>>2]=681;c[a+40>>2]=686;c[a+44>>2]=687;c[a+48>>2]=614;c[a+52>>2]=615;d=14;f=694;i=108}if((i|0)==108)c[a+(d<<2)>>2]=f;c[a+60>>2]=109;c[a+64>>2]=110;c[a+68>>2]=111;c[a+72>>2]=112;c[a+76>>2]=113;c[a+80>>2]=114;c[a+84>>2]=115;c[a+88>>2]=116;c[a+92>>2]=117;c[a+96>>2]=118;c[a+100>>2]=119;c[a+104>>2]=120;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?154:153;c[a+112>>2]=e?156:155;switch(b|0){case 139:case 179:{c[a+120>>2]=42;break}default:c[a+120>>2]=e?158:157}e:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=55;c[a+124>>2]=56;c[a+128>>2]=57;switch(b|0){case 139:case 179:break;default:break e}c[a+136>>2]=171;d=8;f=205;i=118;break}default:if(e){c[d>>2]=159;c[a+124>>2]=160;c[a+128>>2]=161;c[a+136>>2]=162;c[a+140>>2]=163;c[a+144>>2]=164;d=10;f=203;i=118;break e}else{c[d>>2]=165;c[a+124>>2]=166;c[a+128>>2]=167;c[a+136>>2]=168;c[a+140>>2]=169;c[a+144>>2]=170;d=10;f=204;i=118;break e}}while(0);if((i|0)==118)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?173:172;c[a+152>>2]=174;c[a+160>>2]=175;c[a+156>>2]=176;switch(b|0){case 23:{d=3;f=184;break}case 69:{d=3;f=185;break}case 139:case 179:{c[a+164>>2]=64;c[a+180>>2]=177;d=8;f=206;break}default:{d=3;f=207}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=178;c[a+172>>2]=179;c[a+176>>2]=180;c[a+188>>2]=688;c[a+192>>2]=689;c[a+196>>2]=690;c[a+200>>2]=691;c[a+204>>2]=77;c[a+208>>2]=78;f=134;g=133;h=e?124:123;d=e?122:121}}c[a+220>>2]=d;c[a+216>>2]=h;c[a+232>>2]=g;c[a+228>>2]=f;Ec=j;return}function Tm(a,b){a=a|0;b=b|0;c[a+4>>2]=695;c[a>>2]=(b|0)<9?2:1;return}function Um(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,u=0,v=0;v=Ec;Ec=Ec+32|0;t=v+24|0;n=v+16|0;m=v+8|0;g=v;f=e+24|0;k=d+27008|0;p=c[k>>2]|0;r=d+27016|0;u=c[r>>2]|0;l=H(u,p)|0;s=d+27012|0;o=H(c[s>>2]<<1|1,p<<1|1)|0;p=H(u,p+1|0)|0;u=o+(p<<1)|0;a[e+28344>>0]=-2;a[e+28336>>0]=-2;a[e+28328>>0]=-2;a[e+28304>>0]=-2;a[e+28296>>0]=-2;a[e+28288>>0]=-2;a:do if((c[d+25628>>2]|0)==(e|0)){q=d+4|0;c[f>>2]=c[q>>2];c[e+824>>2]=1;c[e+828>>2]=d;c[e+812>>2]=1;i=d+27020|0;j=c[i>>2]|0;c[e+576>>2]=j;h=c[s>>2]|0;c[e+580>>2]=h;c[e+584>>2]=c[k>>2];c[e+588>>2]=c[r>>2];c[e+592>>2]=h<<1|1;j=Of((j<<2)+4|0)|0;c[e+572>>2]=j;if((j|0)==0?(c[i>>2]&1073741823|0)!=1073741823:0){We(c[q>>2]|0,16,150493,g);d=-12;break}g=c[k>>2]|0;d=0;while(1){if((d|0)>=(g|0))break;h=c[s>>2]|0;i=H(h,d)|0;f=0;while(1){if((f|0)>=(h|0))break;c[j+(i+f<<2)>>2]=(H(c[r>>2]|0,d)|0)+f;f=f+1|0}d=d+1|0}h=H(c[r>>2]|0,g+-1|0)|0;i=c[s>>2]|0;c[j+((H(i,g)|0)<<2)>>2]=h+i;j=Of(l)|0;c[e+604>>2]=j;if(!((l|0)==0|(j|0)!=0)){We(c[q>>2]|0,16,150493,m);d=-12;break}m=cf(H((c[k>>2]|0)*17|0,c[r>>2]|0)|0)|0;c[e+608>>2]=m;if((m|0)==0?H((c[k>>2]|0)*17|0,c[r>>2]|0)|0:0){We(c[q>>2]|0,16,150493,n);d=-12;break}n=u<<1;f=Of(n)|0;c[e+27784>>2]=f;if(!((n|0)==0|(f|0)!=0)){We(c[q>>2]|0,16,150493,t);d=-12;break}c[e+612>>2]=f+(c[s>>2]<<1<<1)+4;d=f+(o<<1)+(c[r>>2]<<1)+2|0;c[e+616>>2]=d;c[e+620>>2]=d+(p<<1);d=0;while(1){if((d|0)>=(u|0)){d=0;break a}b[f+(d<<1)>>1]=1024;d=d+1|0}}else{yW(f|0,0,808)|0;d=0}while(0);Ec=v;return d|0}function Vm(a,d,e,f,g,h,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;o=Ec;Ec=Ec+16|0;n=o+8|0;j=o;m=a+25628|0;k=c[m>>2]|0;c[k+21788>>2]=h;c[k+21792>>2]=i;l=k+21796|0;c[l>>2]=(H(c[a+27016>>2]|0,i)|0)+h;e=k+27824|0;f=e+120|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=(c[k+23404>>2]|0)>>>0>d>>>0?d:0;if(!(c[k+23416+(e*40|0)>>2]|0)){We(c[a+4>>2]|0,48,150518,j);e=0}if((c[k+23416+(e*40|0)+24>>2]&3|0)==3){d=(c[a+24384>>2]|0)+(c[l>>2]<<2)|0;n=e*257&65535;b[d>>1]=n;b[d+2>>1]=n;d=H(e,16843009)|0;c[k+28284>>2]=d;c[k+28292>>2]=d;c[k+28300>>2]=d;c[k+28308>>2]=d;g=c[g+4>>2]<<16|c[g>>2]&65535;c[k+28e3>>2]=g;c[k+28004>>2]=g;c[k+28008>>2]=g;c[k+28012>>2]=g;c[k+28032>>2]=g;c[k+28036>>2]=g;c[k+28040>>2]=g;c[k+28044>>2]=g;c[k+28064>>2]=g;c[k+28068>>2]=g;c[k+28072>>2]=g;c[k+28076>>2]=g;c[k+28096>>2]=g;c[k+28100>>2]=g;c[k+28104>>2]=g;c[k+28108>>2]=g;c[k+21828>>2]=0;c[k+21832>>2]=0;vj(a,c[m>>2]|0)}else We(c[a+4>>2]|0,48,150564,n);Ec=o;return}function Wm(a,b,c){a=a|0;b=b|0;c=c|0;return}function Xm(b,c,d,e,f,g,h,i,j,k){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;var l=0,m=0,n=0,o=0,p=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){o=(0-g|0)<(i|0);p=1-g|0;n=c+(H(0-e|0,i)|0)+(H(p,e)|0)|0;c=o?c:n;i=o?i:p}else{p=k+-1|0;c=c+(H(0-e|0,i)|0)+(H(p,e)|0)|0;i=p}if((h|0)<(j|0)){o=(0-f|0)<(h|0);p=1-f|0;l=o?h:p;h=o?c:c+(p-h)|0}else{p=j+-1|0;l=p;h=c+(p-h)|0}c=0-i|0;c=(c|0)>0?c:0;p=0-l|0;p=(p|0)>0?p:0;m=k-i|0;n=(m|0)<(g|0);o=j-l|0;o=(o|0)<(f|0)?o:f;j=o-p|0;i=h+(p+(H(c,e)|0))|0;k=p+(H(c,d)|0)|0;h=b+p|0;l=0;while(1){if((l|0)>=(c|0))break;wW(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=b+k|0;while(1){if((c|0)>=(l|0))break;wW(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;wW(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=o+-1|0;c=g;h=h+(0-((H(g,d)|0)+p))|0;while(1){l=c+-1|0;if(!c)break a;i=h+p|0;c=0;while(1){if((c|0)>=(p|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}i=h+k|0;c=o;while(1){if((c|0)>=(f|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Ym(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;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){p=(0-g|0)<(i|0);q=1-g|0;o=c+(H(0-e|0,i)|0)+(H(q,e)|0)|0;c=p?c:o;i=p?i:q}else{q=k+-1|0;c=c+(H(0-e|0,i)|0)+(H(q,e)|0)|0;i=q}if((h|0)<(j|0)){p=(0-f|0)<(h|0);q=1-f|0;l=p?h:q;h=p?c:c+(q-h<<1)|0}else{q=j+-1|0;l=q;h=c+(q-h<<1)|0}c=0-i|0;c=(c|0)>0?c:0;q=0-l|0;q=(q|0)>0?q:0;m=k-i|0;n=(m|0)<(g|0);p=j-l|0;p=(p|0)<(f|0)?p:f;o=q<<1;i=h+(o+(H(c,e)|0))|0;j=p-q<<1;k=(H(c,d)|0)+o|0;h=a+o|0;l=0;while(1){if((l|0)>=(c|0))break;wW(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=a+k|0;while(1){if((c|0)>=(l|0))break;wW(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;wW(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=p+-1|0;c=g;h=h+(0-((H(g,d)|0)+o))|0;while(1){l=c+-1|0;if(!c)break a;i=h+(q<<1)|0;c=0;while(1){if((c|0)>=(q|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}i=h+(k<<1)|0;c=p;while(1){if((c|0)>=(f|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Zm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function _m(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;i=d[a+(0-e)>>0]|0;h=d[a+(1-e)>>0]|0;g=d[a+(2-e)>>0]|0;f=d[a+(3-e)>>0]|0;b=(i+2+(h<<1)+g|0)>>>2<<8|((d[a+~e>>0]|0)+2+(i<<1)+h|0)>>>2|(h+2+(g<<1)+f|0)>>>2<<16|(g+2+(f<<1)+(d[b>>0]|0)|0)>>>2<<24;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function $m(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(e[a+-2>>1]|0|0,0,65537,65537)|0;g=M()|0;b=a;c[b>>2]=f;c[b+4>>2]=g;b=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(d<<1)|0;c[f>>2]=b;c[f+4>>2]=g;f=d<<1;g=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;f=a+(f<<1)|0;c[f>>2]=g;c[f+4>>2]=b;d=d*3|0;f=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function an(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=d[a+-1>>0]|0;i=d[a+(e+-1)>>0]|0;h=e<<1;g=d[a+(h+-1)>>0]|0;b=e*3|0;f=d[a+(b+-1)>>0]|0;c[a>>2]=H(((d[a+~e>>0]|0)+2+(j<<1)+i|0)>>>2,16843009)|0;c[a+e>>2]=H((j+2+(i<<1)+g|0)>>>2,16843009)|0;c[a+h>>2]=H((i+2+(g<<1)+f|0)>>>2,16843009)|0;c[a+b>>2]=H((g+2+f+(f<<1)|0)>>>2,16843009)|0;return}function bn(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function cn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;f=e<<1;j=d[b+(f+-1)>>0]|0;g=e*3|0;h=d[b+(g+-1)>>0]|0;a[b>>0]=((d[b+(e+-1)>>0]|0)+(d[b+(1-e)>>0]|0)|0)>>>1;i=(j+i|0)>>>1&255;a[b+e>>0]=i;a[b+1>>0]=i;c=(h+c|0)>>>1&255;a[b+(g+3)>>0]=c;a[b+(g+2)>>0]=c;a[b+(f+3)>>0]=c;a[b+(g+1)>>0]=c;a[b+(f+2)>>0]=c;a[b+(e+3)>>0]=c;a[b+g>>0]=c;a[b+(f|1)>>0]=c;a[b+(e+2)>>0]=c;a[b+3>>0]=c;a[b+f>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;return}function dn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function en(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function fn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function gn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function hn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;h=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=(n+1+m|0)>>>1;c=(m+1+l|0)>>>1&255;i=e<<1;a[b+i>>0]=c;a[b+1>>0]=c;c=(l+1+k|0)>>>1&255;a[b+(i|1)>>0]=c;a[b+2>>0]=c;c=(k+1+j|0)>>>1&255;a[b+(i+2)>>0]=c;a[b+3>>0]=c;a[b+e>>0]=(n+2+(m<<1)+l|0)>>>2;m=(m+2+(l<<1)+k|0)>>>2&255;c=e*3|0;a[b+c>>0]=m;a[b+(e+1)>>0]=m;l=(l+2+(k<<1)+j|0)>>>2&255;a[b+(c+1)>>0]=l;a[b+(e+2)>>0]=l;k=(k+2+(j<<1)+h|0)>>>2&255;a[b+(c+2)>>0]=k;a[b+(e+3)>>0]=k;a[b+(i+3)>>0]=(j+2+(h<<1)+g|0)>>>2;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function jn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function kn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function ln(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function mn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=134088+(0-(d[b+~e>>0]|0))|0;f=b+(0-e)|0;g=f+1|0;h=f+2|0;i=f+3|0;c=b;b=0;while(1){if((b|0)==4)break;k=j+(d[c+-1>>0]|0)|0;a[c>>0]=a[k+(d[f>>0]|0)>>0]|0;a[c+1>>0]=a[k+(d[g>>0]|0)>>0]|0;a[c+2>>0]=a[k+(d[h>>0]|0)>>0]|0;a[c+3>>0]=a[k+(d[i>>0]|0)>>0]|0;c=c+e|0;b=b+1|0}return}function nn(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;d=a+(d*3<<1)|0;c[d>>2]=16711935;c[d+4>>2]=16711935;return}function on(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;d=a+(d*3<<1)|0;c[d>>2]=16843009;c[d+4>>2]=16843009;return}function pn(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function qn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=d[b+(1-e)>>0]|0;r=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;n=d[c>>0]|0;l=d[c+1>>0]|0;i=d[c+2>>0]|0;h=d[c+3>>0]|0;s=d[b+(e+-1)>>0]|0;j=e<<1;q=d[b+(j+-1)>>0]|0;c=e*3|0;o=d[b+(c+-1)>>0]|0;m=d[b+((e<<2)+-1)>>0]|0;k=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;f=d[b+((e*7|0)+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+r+(d[b+-1>>0]|0)+q+(s+t<<1)|0)>>>3;s=(t+4+p+s+o+(q+r<<1)|0)>>>3&255;a[b+e>>0]=s;a[b+1>>0]=s;q=(r+4+n+q+m+(o+p<<1)|0)>>>3&255;a[b+j>>0]=q;a[b+(e+1)>>0]=q;a[b+2>>0]=q;o=(p+4+l+o+k+(m+n<<1)|0)>>>3&255;a[b+c>>0]=o;a[b+(j|1)>>0]=o;a[b+(e+2)>>0]=o;a[b+3>>0]=o;m=(n+4+i+m+g+(k+l<<1)|0)>>>3&255;a[b+(c+1)>>0]=m;a[b+(j+2)>>0]=m;a[b+(e+3)>>0]=m;e=(l+4+h+k+f+(g+i<<1)|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(j+3)>>0]=e;a[b+(c+3)>>0]=(i+2+h+g+f|0)>>>2;return}function rn(a,b,c){a=a|0;b=b|0;c=c|0;$t(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,d[a+((c*3|0)+-1)>>0]|0,d[a+((c<<2)+-1)>>0]|0);return}function sn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=d[b+-1>>0]|0;q=d[b+(e+-1)>>0]|0;j=e<<1;m=d[b+(j+-1)>>0]|0;f=e*3|0;l=d[b+(f+-1)>>0]|0;i=d[b+((e<<2)+-1)>>0]|0;h=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;o=d[b+(2-e)>>0]|0;r=d[b+(3-e)>>0]|0;p=d[c>>0]|0;n=d[c+1>>0]|0;k=d[c+2>>0]|0;c=d[c+3>>0]|0;t=q<<1;s=t+4|0;a[b>>0]=(s+(d[b+(1-e)>>0]|0)+r+(o+u<<1)|0)>>>3;a[b+1>>0]=(u+4+t+m+o+(r<<1)+p|0)>>>3;o=m<<1;r=(s+o+r+(p<<1)+n|0)>>>3&255;a[b+e>>0]=r;a[b+2>>0]=r;p=(q+4+o+l+p+(n<<1)+k|0)>>>3&255;a[b+(e+1)>>0]=p;a[b+3>>0]=p;n=(o+4+n+c+(k+l<<1)|0)>>>3&255;a[b+j>>0]=n;a[b+(e+2)>>0]=n;m=(m+4+k+((c+l|0)*3|0)|0)>>>3&255;a[b+(j|1)>>0]=m;a[b+(e+3)>>0]=m;e=l+2|0;l=(e+(i<<1)+h|0)>>>2&255;a[b+(f+1)>>0]=l;a[b+(j+3)>>0]=l;e=(e+i+k+c|0)>>>2&255;a[b+(j+2)>>0]=e;a[b+f>>0]=e;a[b+(f+2)>>0]=(i+1+h|0)>>>1;a[b+(f+3)>>0]=(i+2+(h<<1)+g|0)>>>2;return}function tn(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;d=a+(d*3<<1)|0;c[d>>2]=16777472;c[d+4>>2]=16777472;return}function un(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=d[b+(1-e)>>0]|0;n=d[b+(2-e)>>0]|0;m=d[b+(3-e)>>0]|0;l=d[c>>0]|0;k=d[c+1>>0]|0;h=d[c+2>>0]|0;g=d[c+3>>0]|0;o=d[b+(e+-1)>>0]|0;i=e<<1;j=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+n+(d[b+-1>>0]|0)+j+(o+p<<1)|0)>>>3;o=(p+4+m+o+f+(j+n<<1)|0)>>>3&255;a[b+e>>0]=o;a[b+1>>0]=o;j=(n+4+l+(m<<1)+j+(f*3|0)|0)>>>3&255;a[b+i>>0]=j;a[b+(e+1)>>0]=j;a[b+2>>0]=j;j=f<<2;m=(m+4+k+(l<<1)+j|0)>>>3&255;a[b+c>>0]=m;a[b+(i|1)>>0]=m;a[b+(e+2)>>0]=m;a[b+3>>0]=m;l=(l+4+h+(k<<1)+j|0)>>>3&255;a[b+(c+1)>>0]=l;a[b+(i+2)>>0]=l;a[b+(e+3)>>0]=l;e=(k+4+g+(h<<1)+j|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(i+3)>>0]=e;a[b+(c+3)>>0]=(h+2+g+(f<<1)|0)>>>2;return}function vn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[b+-1>>0]|0;o=d[b+(e+-1)>>0]|0;h=e<<1;l=d[b+(h+-1)>>0]|0;f=e*3|0;g=a[b+(f+-1)>>0]|0;k=g&255;n=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;j=d[c>>0]|0;m=d[c+1>>0]|0;i=d[c+2>>0]|0;c=d[c+3>>0]|0;r=o<<1;q=r+4|0;a[b>>0]=(q+(d[b+(1-e)>>0]|0)+p+(n+s<<1)|0)>>>3;a[b+1>>0]=(s+4+r+l+n+(p<<1)+j|0)>>>3;n=l<<1;p=(q+n+p+(j<<1)+m|0)>>>3&255;a[b+e>>0]=p;a[b+2>>0]=p;j=(o+4+n+k+j+(m<<1)+i|0)>>>3&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=k<<1;m=(n+4+j+m+(i<<1)+c|0)>>>3&255;a[b+h>>0]=m;a[b+(e+2)>>0]=m;k=(l+4+i+((c+k|0)*3|0)|0)>>>3&255;a[b+(h|1)>>0]=k;a[b+(e+3)>>0]=k;a[b+(f+1)>>0]=g;a[b+(h+3)>>0]=g;e=(j+2+i+c|0)>>>2&255;a[b+(h+2)>>0]=e;a[b+f>>0]=e;a[b+(f+3)>>0]=g;a[b+(f+2)>>0]=g;return}function wn(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;e=d[a+((c*3|0)+-1)>>0]|0;$t(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,e,e);return}function xn(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((H(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function yn(a,b,d,f){a=a|0;b=b|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,u=0;p=f>>1;u=e[a+((H(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=M()|0;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=M()|0;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=M()|0;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=M()|0;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=M()|0;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=M()|0;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=M()|0;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=M()|0;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function zn(a,b,d,f){a=a|0;b=b|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,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((H(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function An(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,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Bn(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((H(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Cn(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((H(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Dn(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((H(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function En(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;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Fn(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;n=f>>1;r=e[a+((H(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Gn(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((H(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Hn(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function In(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=16777472;c[e+4>>2]=16777472;e=a+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0;a=a+(d<<1)|0}return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Ln(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Mn(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Nn(a,c){a=a|0;c=c|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;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(H((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+i>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+j>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function On(a,c){a=a|0;c=c|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;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+p>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+o>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Pn(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=134088+(0-(d[b+~c>>0]|0))|0;n=b+(0-c)|0;f=n+1|0;g=n+2|0;h=n+3|0;i=n+4|0;j=n+5|0;k=n+6|0;l=n+7|0;e=0;while(1){if((e|0)==8)break;o=m+(d[b+-1>>0]|0)|0;a[b>>0]=a[o+(d[n>>0]|0)>>0]|0;a[b+1>>0]=a[o+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[o+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[o+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[o+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[o+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[o+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[o+(d[l>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function Qn(a,b){a=a|0;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;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((H(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((H(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;i=f+2>>2;i=nW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((H(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nW(k|0,l|0,65537,65537)|0;h=M()|0;d=nW(f|0,m|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;o=a+((H(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Rn(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((H(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((H(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((H(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nW(d|0,f|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;k=a+((H(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Sn(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==4){b=4;break}g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((H(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Tn(a,b){a=a|0;b=b|0;Sn(a,b);bn(a,0,b);return}function Un(a,b){a=a|0;b=b|0;Qn(a,b);pn(a,0,b);return}function Vn(a,b){a=a|0;b=b|0;Rn(a,b);a=a+(b<<2)|0;tn(a,0,b);tn(a+8|0,0,b);return}function Wn(a,b){a=a|0;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,u=0,v=0,w=0,x=0,y=0;y=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((H(b,y)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-y<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((H(u,y)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((H(b+8|0,y)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((H(b+12|0,y)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-y<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=M()|0;k=h+2>>2;k=nW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=M()|0;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((H(b,y)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nW(m|0,n|0,65537,65537)|0;q=M()|0;m=nW(f|0,o|0,65537,65537)|0;n=M()|0;k=nW(r|0,s|0,65537,65537)|0;l=M()|0;i=nW(g|0,t|0,65537,65537)|0;j=M()|0;g=nW(u|0,v|0,65537,65537)|0;h=M()|0;d=nW(w|0,x|0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8){b=8;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((H(b,y)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Xn(a,b){a=a|0;b=b|0;Rn(a,b);Rn(a+(b<<3)|0,b);return}function Yn(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=M()|0;d=g+2>>2;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==16)break;g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Zn(a,b){a=a|0;b=b|0;Yn(a,b);bn(a,0,b);return}function _n(a,b){a=a|0;b=b|0;Wn(a,b);pn(a,0,b);return}function $n(a,b){a=a|0;b=b|0;Xn(a,b);a=a+(b<<2)|0;tn(a,0,b);tn(a+8|0,0,b);return}function ao(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=0;f=0;while(1){if((f|0)==4)break;h=d[a+((H(f,b)|0)+-1)>>0]|0;g=f+4|0;e=e+h+(d[a+(f-b)>>0]|0)+(d[a+(g-b)>>0]|0)+(d[a+((H(g,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=H((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}h=a+(H(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;h=a+(H(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}return}function bo(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+((H(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=H((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(H(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function co(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=H((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(H(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function eo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=16711935;c[f+4>>2]=16711935;e=e+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+1|0}return}function fo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=16843009;c[f+4>>2]=16843009;e=e+8|0;c[e>>2]=16843009;c[e+4>>2]=16843009;b=b+1|0}return}function go(a,b){a=a|0;b=b|0;Xn(a,b);tn(a,0,b);tn(a+8|0,0,b);return}function ho(a,b){a=a|0;b=b|0;Rn(a,b);tn(a,0,b);tn(a+8|0,0,b);return}function io(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=16777472;c[f+4>>2]=16777472;e=e+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0}return}function jo(a,b){a=a|0;b=b|0;io(a,b);io(a+(b<<3)|0,b);return}function ko(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function lo(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;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((H(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function mo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function no(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=134088+(0-(d[b+~c>>0]|0))|0;v=b+(0-c)|0;f=v+1|0;g=v+2|0;h=v+3|0;i=v+4|0;j=v+5|0;k=v+6|0;l=v+7|0;m=v+8|0;n=v+9|0;o=v+10|0;p=v+11|0;q=v+12|0;r=v+13|0;s=v+14|0;t=v+15|0;e=0;while(1){if((e|0)==16)break;w=u+(d[b+-1>>0]|0)|0;a[b>>0]=a[w+(d[v>>0]|0)>>0]|0;a[b+1>>0]=a[w+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[w+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[w+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[w+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[w+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[w+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[w+(d[l>>0]|0)>>0]|0;a[b+8>>0]=a[w+(d[m>>0]|0)>>0]|0;a[b+9>>0]=a[w+(d[n>>0]|0)>>0]|0;a[b+10>>0]=a[w+(d[o>>0]|0)>>0]|0;a[b+11>>0]=a[w+(d[p>>0]|0)>>0]|0;a[b+12>>0]=a[w+(d[q>>0]|0)>>0]|0;a[b+13>>0]=a[w+(d[r>>0]|0)>>0]|0;a[b+14>>0]=a[w+(d[s>>0]|0)>>0]|0;a[b+15>>0]=a[w+(d[t>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function oo(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+16|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+24|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+(d<<1)|0;a=a+1|0}return}function po(a,b){a=a|0;b=b|0;_t(a,b);return}function qo(a,b){a=a|0;b=b|0;var d=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;c[b>>2]=16843009;c[b+4>>2]=16843009;c[b+8>>2]=16843009;c[b+12>>2]=16843009;c[b+16>>2]=16843009;c[b+20>>2]=16843009;c[b+24>>2]=16843009;c[b+28>>2]=16843009;b=b+(d<<1)|0;a=a+1|0}return}function ro(a,b){a=a|0;b=b|0;Wt(a,b,0,1);return}function so(a,b){a=a|0;b=b|0;Wt(a,b,1,0);return}function to(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((H(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function uo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function vo(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+16|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+24|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+(d<<1)|0;a=a+1|0}return}function wo(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function xo(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function yo(a,d,f){a=a|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;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yW(d|0,0,256)|0;return}function zo(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yW(d|0,0,256)|0;return}function Ao(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,p=0,q=0,r=0,s=0;q=Ec;Ec=Ec+16|0;p=q;o=h>>1;s=e[a+(0-o<<1)>>1]|0;r=e[a+(1-o<<1)>>1]|0;h=e[a+(2-o<<1)>>1]|0;n=e[a+(3-o<<1)>>1]|0;m=e[a+(4-o<<1)>>1]|0;l=e[a+(5-o<<1)>>1]|0;k=e[a+(6-o<<1)>>1]|0;j=e[a+(7-o<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-o<<1)>>1]|0)+(j<<1)|0)>>>2;b[p>>1]=((e[a+((((f|0)!=0)<<31>>31)-o<<1)>>1]|0)+2+(s<<1)+r|0)>>>2;b[p+2>>1]=(s+2+(r<<1)+h|0)>>>2;b[p+4>>1]=(r+2+(h<<1)+n|0)>>>2;b[p+6>>1]=(h+2+(n<<1)+m|0)>>>2;b[p+8>>1]=(n+2+(m<<1)+l|0)>>>2;b[p+10>>1]=(m+2+(l<<1)+k|0)>>>2;b[p+12>>1]=(l+2+(k<<1)+j|0)>>>2;b[p+14>>1]=i;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;s=(c[f>>2]|0)+(e[p+(g<<1)>>1]|0)|0;b[h>>1]=s;s=(c[f+32>>2]|0)+s|0;b[h+(o<<1)>>1]=s;s=(c[f+64>>2]|0)+s|0;b[h+(i<<1)>>1]=s;s=(c[f+96>>2]|0)+s|0;b[h+(j<<1)>>1]=s;s=(c[f+128>>2]|0)+s|0;b[h+(k<<1)>>1]=s;s=(c[f+160>>2]|0)+s|0;b[h+(l<<1)>>1]=s;s=(c[f+192>>2]|0)+s|0;b[h+(m<<1)>>1]=s;b[h+(n<<1)>>1]=(c[f+224>>2]|0)+s;g=g+1|0;h=h+2|0;f=f+4|0}yW(d|0,0,256)|0;Ec=q;return}function Bo(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,p=0,q=0;k=Ec;Ec=Ec+16|0;j=k;i=h>>1;q=e[a+((H(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;p=e[a+-2>>1]|0;o=e[a+(i+-1<<1)>>1]|0;n=e[a+((i<<1)+-1<<1)>>1]|0;m=e[a+((i*3|0)+-1<<1)>>1]|0;l=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+2>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+4>>1]=(o+2+(n<<1)+m|0)>>>2;b[j+6>>1]=(n+2+(m<<1)+l|0)>>>2;b[j+8>>1]=(m+2+(l<<1)+h|0)>>>2;b[j+10>>1]=(l+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;q=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=q;q=(c[h+4>>2]|0)+q|0;b[g+2>>1]=q;q=(c[h+8>>2]|0)+q|0;b[g+4>>1]=q;q=(c[h+12>>2]|0)+q|0;b[g+6>>1]=q;q=(c[h+16>>2]|0)+q|0;b[g+8>>1]=q;q=(c[h+20>>2]|0)+q|0;b[g+10>>1]=q;q=(c[h+24>>2]|0)+q|0;b[g+12>>1]=q;b[g+14>>1]=(c[h+28>>2]|0)+q;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yW(d|0,0,256)|0;Ec=k;return}function Co(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;wo(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Do(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}wo(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;wo(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Eo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;xo(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Fo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}xo(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;xo(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Go(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Ho(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(e[a+-2>>1]|0|0,0,65537,65537)|0;g=M()|0;b=a;c[b>>2]=f;c[b+4>>2]=g;b=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(d<<1)|0;c[f>>2]=b;c[f+4>>2]=g;f=d<<1;g=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;f=a+(f<<1)|0;c[f>>2]=g;c[f+4>>2]=b;d=d*3|0;f=nW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Io(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Jo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Ko(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function Lo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Mo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function No(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Oo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function Po(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Qo(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;d=a+(d*3<<1)|0;c[d>>2]=33489407;c[d+4>>2]=33489407;return}function Ro(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;d=a+(d*3<<1)|0;c[d>>2]=33620481;c[d+4>>2]=33620481;return}function So(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function To(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;d=a+(d*3<<1)|0;c[d>>2]=33554944;c[d+4>>2]=33554944;return}function Uo(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((H(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function Vo(a,b,d,f){a=a|0;b=b|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,u=0;p=f>>1;u=e[a+((H(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=M()|0;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=M()|0;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=M()|0;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=M()|0;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=M()|0;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=M()|0;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=M()|0;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=M()|0;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function Wo(a,b,d,f){a=a|0;b=b|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,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((H(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Xo(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,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Yo(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((H(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Zo(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((H(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function _o(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((H(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function $o(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;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function ap(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;n=f>>1;r=e[a+((H(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function bp(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((H(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function cp(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function dp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=33554944;c[e+4>>2]=33554944;e=a+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0;a=a+(d<<1)|0}return}function ep(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function fp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function gp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function hp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=nW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function ip(a,c){a=a|0;c=c|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;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(H((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+i>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+j>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}
function MH(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,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=H(j,g)|0;k=b+n|0;o=k;k=k+4|0;m=H(j,h)|0;p=e+m|0;l=p;p=p+4|0;p=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24)|0;l=M()|0;k=H(j,f)|0;o=a+k|0;c[o>>2]=p;c[o+4>>2]=l;n=b+(n+8)|0;o=n;n=n+4|0;m=e+(m+8)|0;l=m;m=m+4|0;m=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;l=M()|0;k=a+(k+8)|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function NH(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,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=H(j,g)|0;k=b+n|0;o=k;k=k+4|0;m=H(j,h)|0;p=e+m|0;l=p;p=p+4|0;p=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24)|0;l=M()|0;k=H(j,f)|0;o=a+k|0;c[o>>2]=p;c[o+4>>2]=l;n=b+(n+8)|0;o=n;n=n+4|0;m=e+(m+8)|0;l=m;m=m+4|0;m=yE(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;l=M()|0;k=a+(k+8)|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function OH(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;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function PH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;h=b+4|0;c[a+4>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+1|0;a=a+e|0;b=b+e|0}return}function QH(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;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function RH(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;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function SH(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;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function TH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;JH(a,b,c,d,e,32,16);JH(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function UH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;KH(a,b,c,d,e,16,16);KH(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function VH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;LH(a,b,c,d,e,32,16);LH(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function WH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;MH(a,b,c,d,e,32,16);MH(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function XH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;NH(a,b,c,d,e,32,16);NH(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function YH(a,b,c){a=a|0;b=b|0;c=c|0;OH(a,b,c,16);OH(a+16|0,b+16|0,c,16);return}function ZH(a,b,c){a=a|0;b=b|0;c=c|0;PH(a,b,c,16);PH(a+8|0,b+8|0,c,16);return}function _H(a,b,c){a=a|0;b=b|0;c=c|0;QH(a,b,c,16);QH(a+16|0,b+16|0,c,16);return}function $H(a,b,c){a=a|0;b=b|0;c=c|0;RH(a,b,c,16);RH(a+16|0,b+16|0,c,16);return}function aI(a,b,c){a=a|0;b=b|0;c=c|0;SH(a,b,c,16);SH(a+16|0,b+16|0,c,16);return}function bI(a,c,d,f,g,h){a=a|0;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,u=0,v=0,w=0,x=0,y=0;q=8-g|0;p=8-h|0;s=H(p,q)|0;p=H(p,g)|0;q=H(q,h)|0;o=H(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((H(s,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((H(s,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((H(s,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((H(s,e[c+6>>1]|0)|0)+32|0)>>>6;b[a+8>>1]=((H(s,e[c+8>>1]|0)|0)+32|0)>>>6;b[a+10>>1]=((H(s,e[c+10>>1]|0)|0)+32|0)>>>6;b[a+12>>1]=((H(s,e[c+12>>1]|0)|0)+32|0)>>>6;b[a+14>>1]=((H(s,e[c+14>>1]|0)|0)+32|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=H(s,e[c>>1]|0)|0;b[a>>1]=(q+32+(H(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6;q=H(s,e[c+2>>1]|0)|0;b[a+2>>1]=(q+32+(H(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6;q=H(s,e[c+4>>1]|0)|0;b[a+4>>1]=(q+32+(H(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6;q=H(s,e[c+6>>1]|0)|0;b[a+6>>1]=(q+32+(H(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6;q=H(s,e[c+8>>1]|0)|0;b[a+8>>1]=(q+32+(H(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6;q=H(s,e[c+10>>1]|0)|0;b[a+10>>1]=(q+32+(H(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6;q=H(s,e[c+12>>1]|0)|0;b[a+12>>1]=(q+32+(H(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6;q=H(s,e[c+14>>1]|0)|0;b[a+14>>1]=(q+32+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=H(s,e[c>>1]|0)|0;u=c+2|0;x=H(p,e[u>>1]|0)|0;t=c+(r<<1)|0;y=H(q,e[t>>1]|0)|0;w=c+(h<<1)|0;b[a>>1]=(v+32+x+y+(H(o,e[w>>1]|0)|0)|0)>>>6;u=H(s,e[u>>1]|0)|0;y=c+4|0;x=H(p,e[y>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(d<<1)|0;b[a+2>>1]=(u+32+x+w+(H(o,e[v>>1]|0)|0)|0)>>>6;y=H(s,e[y>>1]|0)|0;w=c+6|0;x=H(p,e[w>>1]|0)|0;v=H(q,e[v>>1]|0)|0;u=c+(i<<1)|0;b[a+4>>1]=(y+32+x+v+(H(o,e[u>>1]|0)|0)|0)>>>6;w=H(s,e[w>>1]|0)|0;v=c+8|0;x=H(p,e[v>>1]|0)|0;u=H(q,e[u>>1]|0)|0;y=c+(j<<1)|0;b[a+6>>1]=(w+32+x+u+(H(o,e[y>>1]|0)|0)|0)>>>6;v=H(s,e[v>>1]|0)|0;u=c+10|0;x=H(p,e[u>>1]|0)|0;y=H(q,e[y>>1]|0)|0;w=c+(k<<1)|0;b[a+8>>1]=(v+32+x+y+(H(o,e[w>>1]|0)|0)|0)>>>6;u=H(s,e[u>>1]|0)|0;y=c+12|0;x=H(p,e[y>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(l<<1)|0;b[a+10>>1]=(u+32+x+w+(H(o,e[v>>1]|0)|0)|0)>>>6;y=H(s,e[y>>1]|0)|0;w=c+14|0;x=H(p,e[w>>1]|0)|0;v=H(q,e[v>>1]|0)|0;u=c+(m<<1)|0;b[a+12>>1]=(y+32+x+v+(H(o,e[u>>1]|0)|0)|0)>>>6;w=H(s,e[w>>1]|0)|0;v=H(p,e[c+16>>1]|0)|0;u=H(q,e[u>>1]|0)|0;b[a+14>>1]=(w+32+v+u+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function cI(b,c,e,f,g,h){b=b|0;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,u=0,v=0,w=0,x=0,y=0;r=8-g|0;q=8-h|0;s=H(q,r)|0;q=H(q,g)|0;r=H(r,h)|0;h=H(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((H(s,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((H(s,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((H(s,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((H(s,d[c+3>>0]|0)|0)+32|0)>>>6;a[b+4>>0]=((H(s,d[c+4>>0]|0)|0)+32|0)>>>6;a[b+5>>0]=((H(s,d[c+5>>0]|0)|0)+32|0)>>>6;a[b+6>>0]=((H(s,d[c+6>>0]|0)|0)+32|0)>>>6;a[b+7>>0]=((H(s,d[c+7>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(s,d[c>>0]|0)|0;a[b>>0]=(r+32+(H(p,d[c+h>>0]|0)|0)|0)>>>6;r=H(s,d[c+1>>0]|0)|0;a[b+1>>0]=(r+32+(H(p,d[c+i>>0]|0)|0)|0)>>>6;r=H(s,d[c+2>>0]|0)|0;a[b+2>>0]=(r+32+(H(p,d[c+j>>0]|0)|0)|0)>>>6;r=H(s,d[c+3>>0]|0)|0;a[b+3>>0]=(r+32+(H(p,d[c+k>>0]|0)|0)|0)>>>6;r=H(s,d[c+4>>0]|0)|0;a[b+4>>0]=(r+32+(H(p,d[c+l>>0]|0)|0)|0)>>>6;r=H(s,d[c+5>>0]|0)|0;a[b+5>>0]=(r+32+(H(p,d[c+m>>0]|0)|0)|0)>>>6;r=H(s,d[c+6>>0]|0)|0;a[b+6>>0]=(r+32+(H(p,d[c+n>>0]|0)|0)|0)>>>6;r=H(s,d[c+7>>0]|0)|0;a[b+7>>0]=(r+32+(H(p,d[c+o>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=H(s,d[c>>0]|0)|0;u=c+1|0;x=H(q,d[u>>0]|0)|0;t=c+e|0;y=H(r,d[t>>0]|0)|0;w=c+i|0;a[b>>0]=(v+32+x+y+(H(h,d[w>>0]|0)|0)|0)>>>6;u=H(s,d[u>>0]|0)|0;y=c+2|0;x=H(q,d[y>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+j|0;a[b+1>>0]=(u+32+x+w+(H(h,d[v>>0]|0)|0)|0)>>>6;y=H(s,d[y>>0]|0)|0;w=c+3|0;x=H(q,d[w>>0]|0)|0;v=H(r,d[v>>0]|0)|0;u=c+k|0;a[b+2>>0]=(y+32+x+v+(H(h,d[u>>0]|0)|0)|0)>>>6;w=H(s,d[w>>0]|0)|0;v=c+4|0;x=H(q,d[v>>0]|0)|0;u=H(r,d[u>>0]|0)|0;y=c+l|0;a[b+3>>0]=(w+32+x+u+(H(h,d[y>>0]|0)|0)|0)>>>6;v=H(s,d[v>>0]|0)|0;u=c+5|0;x=H(q,d[u>>0]|0)|0;y=H(r,d[y>>0]|0)|0;w=c+m|0;a[b+4>>0]=(v+32+x+y+(H(h,d[w>>0]|0)|0)|0)>>>6;u=H(s,d[u>>0]|0)|0;y=c+6|0;x=H(q,d[y>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+n|0;a[b+5>>0]=(u+32+x+w+(H(h,d[v>>0]|0)|0)|0)>>>6;y=H(s,d[y>>0]|0)|0;w=c+7|0;x=H(q,d[w>>0]|0)|0;v=H(r,d[v>>0]|0)|0;u=c+o|0;a[b+6>>0]=(y+32+x+v+(H(h,d[u>>0]|0)|0)|0)>>>6;w=H(s,d[w>>0]|0)|0;v=H(q,d[c+8>>0]|0)|0;u=H(r,d[u>>0]|0)|0;a[b+7>>0]=(w+32+v+u+(H(h,d[c+p>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=t}}while(0);return}function dI(a,c,d,f,g,h){a=a|0;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,u=0;m=8-g|0;l=8-h|0;o=H(l,m)|0;l=H(l,g)|0;m=H(m,h)|0;k=H(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((H(o,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((H(o,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((H(o,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((H(o,e[c+6>>1]|0)|0)+32|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=H(o,e[c>>1]|0)|0;b[a>>1]=(m+32+(H(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6;m=H(o,e[c+2>>1]|0)|0;b[a+2>>1]=(m+32+(H(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6;m=H(o,e[c+4>>1]|0)|0;b[a+4>>1]=(m+32+(H(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6;m=H(o,e[c+6>>1]|0)|0;b[a+6>>1]=(m+32+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(o,e[c>>1]|0)|0;q=c+2|0;t=H(l,e[q>>1]|0)|0;p=c+(n<<1)|0;u=H(m,e[p>>1]|0)|0;s=c+(h<<1)|0;b[a>>1]=(r+32+t+u+(H(k,e[s>>1]|0)|0)|0)>>>6;q=H(o,e[q>>1]|0)|0;u=c+4|0;t=H(l,e[u>>1]|0)|0;s=H(m,e[s>>1]|0)|0;r=c+(d<<1)|0;b[a+2>>1]=(q+32+t+s+(H(k,e[r>>1]|0)|0)|0)>>>6;u=H(o,e[u>>1]|0)|0;s=c+6|0;t=H(l,e[s>>1]|0)|0;r=H(m,e[r>>1]|0)|0;q=c+(i<<1)|0;b[a+4>>1]=(u+32+t+r+(H(k,e[q>>1]|0)|0)|0)>>>6;s=H(o,e[s>>1]|0)|0;r=H(l,e[c+8>>1]|0)|0;q=H(m,e[q>>1]|0)|0;b[a+6>>1]=(s+32+r+q+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function eI(b,c,e,f,g,h){b=b|0;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,u=0;n=8-g|0;m=8-h|0;o=H(m,n)|0;m=H(m,g)|0;n=H(n,h)|0;h=H(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((H(o,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((H(o,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((H(o,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((H(o,d[c+3>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=H(o,d[c>>0]|0)|0;a[b>>0]=(n+32+(H(l,d[c+h>>0]|0)|0)|0)>>>6;n=H(o,d[c+1>>0]|0)|0;a[b+1>>0]=(n+32+(H(l,d[c+i>>0]|0)|0)|0)>>>6;n=H(o,d[c+2>>0]|0)|0;a[b+2>>0]=(n+32+(H(l,d[c+j>>0]|0)|0)|0)>>>6;n=H(o,d[c+3>>0]|0)|0;a[b+3>>0]=(n+32+(H(l,d[c+k>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(o,d[c>>0]|0)|0;q=c+1|0;t=H(m,d[q>>0]|0)|0;p=c+e|0;u=H(n,d[p>>0]|0)|0;s=c+i|0;a[b>>0]=(r+32+t+u+(H(h,d[s>>0]|0)|0)|0)>>>6;q=H(o,d[q>>0]|0)|0;u=c+2|0;t=H(m,d[u>>0]|0)|0;s=H(n,d[s>>0]|0)|0;r=c+j|0;a[b+1>>0]=(q+32+t+s+(H(h,d[r>>0]|0)|0)|0)>>>6;u=H(o,d[u>>0]|0)|0;s=c+3|0;t=H(m,d[s>>0]|0)|0;r=H(n,d[r>>0]|0)|0;q=c+k|0;a[b+2>>0]=(u+32+t+r+(H(h,d[q>>0]|0)|0)|0)>>>6;s=H(o,d[s>>0]|0)|0;r=H(m,d[c+4>>0]|0)|0;q=H(n,d[q>>0]|0)|0;a[b+3>>0]=(s+32+r+q+(H(h,d[c+l>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=p}}while(0);return}function fI(a,c,d,f,g,h){a=a|0;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;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((H(m,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((H(m,e[c+2>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;c=c+(l<<1)|0;g=g+1|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;k=H(m,e[c+2>>1]|0)|0;b[a+2>>1]=(k+32+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,e[c>>1]|0)|0;q=c+2|0;r=H(j,e[q>>1]|0)|0;n=c+(l<<1)|0;p=H(k,e[n>>1]|0)|0;o=c+(h<<1)|0;b[a>>1]=(s+32+r+p+(H(i,e[o>>1]|0)|0)|0)>>>6;q=H(m,e[q>>1]|0)|0;p=H(j,e[c+4>>1]|0)|0;o=H(k,e[o>>1]|0)|0;b[a+2>>1]=(q+32+p+o+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function gI(b,c,e,f,g,h){b=b|0;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;l=8-g|0;k=8-h|0;m=H(k,l)|0;k=H(k,g)|0;l=H(l,h)|0;h=H(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((H(m,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((H(m,d[c+1>>0]|0)|0)+32|0)>>>6;b=b+e|0;c=c+e|0;g=g+1|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=H(m,d[c>>0]|0)|0;a[b>>0]=(l+32+(H(j,d[c+h>>0]|0)|0)|0)>>>6;l=H(m,d[c+1>>0]|0)|0;a[b+1>>0]=(l+32+(H(j,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,d[c>>0]|0)|0;q=c+1|0;r=H(k,d[q>>0]|0)|0;n=c+e|0;p=H(l,d[n>>0]|0)|0;o=c+i|0;a[b>>0]=(s+32+r+p+(H(h,d[o>>0]|0)|0)|0)>>>6;q=H(m,d[q>>0]|0)|0;p=H(k,d[c+2>>0]|0)|0;o=H(l,d[o>>0]|0)|0;a[b+1>>0]=(q+32+p+o+(H(h,d[c+j>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=n}}while(0);return}function hI(a,c,d,f,g,h){a=a|0;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;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((H(m,e[c>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(H(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(m,e[c>>1]|0)|0;o=H(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=H(k,e[d>>1]|0)|0;b[a>>1]=(p+32+o+n+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function iI(b,c,e,f,g,h){b=b|0;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;k=8-g|0;j=8-h|0;l=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;h=H(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((H(l,d[c>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=H(l,d[c>>0]|0)|0;a[b>>0]=(k+32+(H(i,d[c+h>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(l,d[c>>0]|0)|0;o=H(j,d[c+1>>0]|0)|0;m=c+e|0;n=H(k,d[m>>0]|0)|0;a[b>>0]=(p+32+o+n+(H(h,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=m}}while(0);return}function jI(a,c,d,f,g,h){a=a|0;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,u=0,v=0,w=0,x=0,y=0,z=0;q=8-g|0;p=8-h|0;s=H(p,q)|0;p=H(p,g)|0;q=H(q,h)|0;o=H(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((H(s,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+2|0;b[q>>1]=((e[q>>1]|0)+1+(((H(s,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+4|0;b[q>>1]=((e[q>>1]|0)+1+(((H(s,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+6|0;b[q>>1]=((e[q>>1]|0)+1+(((H(s,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+8|0;b[q>>1]=((e[q>>1]|0)+1+(((H(s,e[c+8>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+10|0;b[q>>1]=((e[q>>1]|0)+1+(((H(s,e[c+10>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+12|0;b[q>>1]=((e[q>>1]|0)+1+(((H(s,e[c+12>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+14|0;b[q>>1]=((e[q>>1]|0)+1+(((H(s,e[c+14>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=H(s,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((q+32+(H(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;p=H(s,e[c+2>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;p=H(s,e[c+4>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;p=H(s,e[c+6>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+8|0;p=H(s,e[c+8>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+10|0;p=H(s,e[c+10>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+12|0;p=H(s,e[c+12>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+14|0;p=H(s,e[c+14>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=H(s,e[c>>1]|0)|0;v=c+2|0;z=H(p,e[v>>1]|0)|0;t=c+(r<<1)|0;u=H(q,e[t>>1]|0)|0;x=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((y+32+z+u+(H(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+2|0;v=H(s,e[v>>1]|0)|0;z=c+4|0;y=H(p,e[z>>1]|0)|0;x=H(q,e[x>>1]|0)|0;w=c+(d<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(H(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+4|0;z=H(s,e[z>>1]|0)|0;x=c+6|0;y=H(p,e[x>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(i<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(H(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+6|0;x=H(s,e[x>>1]|0)|0;w=c+8|0;y=H(p,e[w>>1]|0)|0;v=H(q,e[v>>1]|0)|0;z=c+(j<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+y+v+(H(o,e[z>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+8|0;w=H(s,e[w>>1]|0)|0;v=c+10|0;y=H(p,e[v>>1]|0)|0;z=H(q,e[z>>1]|0)|0;x=c+(k<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((w+32+y+z+(H(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+10|0;v=H(s,e[v>>1]|0)|0;z=c+12|0;y=H(p,e[z>>1]|0)|0;x=H(q,e[x>>1]|0)|0;w=c+(l<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(H(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+12|0;z=H(s,e[z>>1]|0)|0;x=c+14|0;y=H(p,e[x>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(m<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(H(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+14|0;x=H(s,e[x>>1]|0)|0;w=H(p,e[c+16>>1]|0)|0;v=H(q,e[v>>1]|0)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+w+v+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function kI(b,c,e,f,g,h){b=b|0;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,u=0,v=0,w=0,x=0,y=0,z=0;r=8-g|0;q=8-h|0;s=H(q,r)|0;q=H(q,g)|0;r=H(r,h)|0;h=H(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((H(s,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+1|0;a[r>>0]=((d[r>>0]|0)+1+(((H(s,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+2|0;a[r>>0]=((d[r>>0]|0)+1+(((H(s,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+3|0;a[r>>0]=((d[r>>0]|0)+1+(((H(s,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+4|0;a[r>>0]=((d[r>>0]|0)+1+(((H(s,d[c+4>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+5|0;a[r>>0]=((d[r>>0]|0)+1+(((H(s,d[c+5>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+6|0;a[r>>0]=((d[r>>0]|0)+1+(((H(s,d[c+6>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+7|0;a[r>>0]=((d[r>>0]|0)+1+(((H(s,d[c+7>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(s,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((r+32+(H(p,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+1|0;q=H(s,d[c+1>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(H(p,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+2|0;q=H(s,d[c+2>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(H(p,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+3|0;q=H(s,d[c+3>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(H(p,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+4|0;q=H(s,d[c+4>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(H(p,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+5|0;q=H(s,d[c+5>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(H(p,d[c+m>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+6|0;q=H(s,d[c+6>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(H(p,d[c+n>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+7|0;q=H(s,d[c+7>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(H(p,d[c+o>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=H(s,d[c>>0]|0)|0;v=c+1|0;z=H(q,d[v>>0]|0)|0;t=c+e|0;u=H(r,d[t>>0]|0)|0;x=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((y+32+z+u+(H(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+1|0;v=H(s,d[v>>0]|0)|0;z=c+2|0;y=H(q,d[z>>0]|0)|0;x=H(r,d[x>>0]|0)|0;w=c+j|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(H(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+2|0;z=H(s,d[z>>0]|0)|0;x=c+3|0;y=H(q,d[x>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+k|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(H(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+3|0;x=H(s,d[x>>0]|0)|0;w=c+4|0;y=H(q,d[w>>0]|0)|0;v=H(r,d[v>>0]|0)|0;z=c+l|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+y+v+(H(h,d[z>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+4|0;w=H(s,d[w>>0]|0)|0;v=c+5|0;y=H(q,d[v>>0]|0)|0;z=H(r,d[z>>0]|0)|0;x=c+m|0;a[u>>0]=((d[u>>0]|0)+1+((w+32+y+z+(H(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+5|0;v=H(s,d[v>>0]|0)|0;z=c+6|0;y=H(q,d[z>>0]|0)|0;x=H(r,d[x>>0]|0)|0;w=c+n|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(H(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+6|0;z=H(s,d[z>>0]|0)|0;x=c+7|0;y=H(q,d[x>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+o|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(H(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+7|0;x=H(s,d[x>>0]|0)|0;w=H(q,d[c+8>>0]|0)|0;v=H(r,d[v>>0]|0)|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+w+v+(H(h,d[c+p>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=t}}while(0);return}function lI(a,c,d,f,g,h){a=a|0;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,u=0,v=0;m=8-g|0;l=8-h|0;o=H(l,m)|0;l=H(l,g)|0;m=H(m,h)|0;k=H(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((H(o,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+2|0;b[m>>1]=((e[m>>1]|0)+1+(((H(o,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+4|0;b[m>>1]=((e[m>>1]|0)+1+(((H(o,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+6|0;b[m>>1]=((e[m>>1]|0)+1+(((H(o,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=H(o,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((m+32+(H(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+2|0;l=H(o,e[c+2>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(H(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+4|0;l=H(o,e[c+4>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(H(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+6|0;l=H(o,e[c+6>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=H(o,e[c>>1]|0)|0;r=c+2|0;v=H(l,e[r>>1]|0)|0;p=c+(n<<1)|0;q=H(m,e[p>>1]|0)|0;t=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((u+32+v+q+(H(k,e[t>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;r=H(o,e[r>>1]|0)|0;v=c+4|0;u=H(l,e[v>>1]|0)|0;t=H(m,e[t>>1]|0)|0;s=c+(d<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((r+32+u+t+(H(k,e[s>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;v=H(o,e[v>>1]|0)|0;t=c+6|0;u=H(l,e[t>>1]|0)|0;s=H(m,e[s>>1]|0)|0;r=c+(i<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((v+32+u+s+(H(k,e[r>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;t=H(o,e[t>>1]|0)|0;s=H(l,e[c+8>>1]|0)|0;r=H(m,e[r>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((t+32+s+r+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function mI(b,c,e,f,g,h){b=b|0;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,u=0,v=0;n=8-g|0;m=8-h|0;o=H(m,n)|0;m=H(m,g)|0;n=H(n,h)|0;h=H(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((H(o,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+1|0;a[n>>0]=((d[n>>0]|0)+1+(((H(o,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+2|0;a[n>>0]=((d[n>>0]|0)+1+(((H(o,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+3|0;a[n>>0]=((d[n>>0]|0)+1+(((H(o,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=H(o,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((n+32+(H(l,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+1|0;m=H(o,d[c+1>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(H(l,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+2|0;m=H(o,d[c+2>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(H(l,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+3|0;m=H(o,d[c+3>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(H(l,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=H(o,d[c>>0]|0)|0;r=c+1|0;v=H(m,d[r>>0]|0)|0;p=c+e|0;q=H(n,d[p>>0]|0)|0;t=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((u+32+v+q+(H(h,d[t>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+1|0;r=H(o,d[r>>0]|0)|0;v=c+2|0;u=H(m,d[v>>0]|0)|0;t=H(n,d[t>>0]|0)|0;s=c+j|0;a[q>>0]=((d[q>>0]|0)+1+((r+32+u+t+(H(h,d[s>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+2|0;v=H(o,d[v>>0]|0)|0;t=c+3|0;u=H(m,d[t>>0]|0)|0;s=H(n,d[s>>0]|0)|0;r=c+k|0;a[q>>0]=((d[q>>0]|0)+1+((v+32+u+s+(H(h,d[r>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+3|0;t=H(o,d[t>>0]|0)|0;s=H(m,d[c+4>>0]|0)|0;r=H(n,d[r>>0]|0)|0;a[q>>0]=((d[q>>0]|0)+1+((t+32+s+r+(H(h,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=p}}while(0);return}function nI(a,c,d,f,g,h){a=a|0;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;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((H(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;k=a+2|0;b[k>>1]=((e[k>>1]|0)+1+(((H(m,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;k=a+2|0;j=H(m,e[c+2>>1]|0)|0;b[k>>1]=((e[k>>1]|0)+1+((j+32+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,e[c>>1]|0)|0;r=c+2|0;q=H(j,e[r>>1]|0)|0;n=c+(l<<1)|0;o=H(k,e[n>>1]|0)|0;p=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((s+32+q+o+(H(i,e[p>>1]|0)|0)|0)>>>6)|0)>>>1;o=a+2|0;r=H(m,e[r>>1]|0)|0;q=H(j,e[c+4>>1]|0)|0;p=H(k,e[p>>1]|0)|0;b[o>>1]=((e[o>>1]|0)+1+((r+32+q+p+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function oI(b,c,e,f,g,h){b=b|0;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;l=8-g|0;k=8-h|0;m=H(k,l)|0;k=H(k,g)|0;l=H(l,h)|0;h=H(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((H(m,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;l=b+1|0;a[l>>0]=((d[l>>0]|0)+1+(((H(m,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=H(m,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((l+32+(H(j,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;l=b+1|0;k=H(m,d[c+1>>0]|0)|0;a[l>>0]=((d[l>>0]|0)+1+((k+32+(H(j,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,d[c>>0]|0)|0;r=c+1|0;q=H(k,d[r>>0]|0)|0;n=c+e|0;o=H(l,d[n>>0]|0)|0;p=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((s+32+q+o+(H(h,d[p>>0]|0)|0)|0)>>>6)|0)>>>1;o=b+1|0;r=H(m,d[r>>0]|0)|0;q=H(k,d[c+2>>0]|0)|0;p=H(l,d[p>>0]|0)|0;a[o>>0]=((d[o>>0]|0)+1+((r+32+q+p+(H(h,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=n}}while(0);return}function pI(a,c,d,f,g,h){a=a|0;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;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((H(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(H(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(m,e[c>>1]|0)|0;o=H(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=H(k,e[d>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((p+32+o+n+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function qI(b,c,e,f,g,h){b=b|0;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;k=8-g|0;j=8-h|0;l=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;h=H(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((H(l,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=H(l,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((k+32+(H(i,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(l,d[c>>0]|0)|0;o=H(j,d[c+1>>0]|0)|0;m=c+e|0;n=H(k,d[m>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((p+32+o+n+(H(h,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=m}}while(0);return}function rI(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function sI(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function tI(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);i=f+8|0;b[i>>1]=(c[g+16>>2]|0)+(e[i>>1]|0);i=f+10|0;b[i>>1]=(c[g+20>>2]|0)+(e[i>>1]|0);i=f+12|0;b[i>>1]=(c[g+24>>2]|0)+(e[i>>1]|0);i=f+14|0;b[i>>1]=(c[g+28>>2]|0)+(e[i>>1]|0);g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yW(d|0,0,256)|0;return}function uI(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);j=c+4|0;a[j>>0]=(d[j>>0]|0)+(e[i+8>>1]|0);j=c+5|0;a[j>>0]=(d[j>>0]|0)+(e[i+10>>1]|0);j=c+6|0;a[j>>0]=(d[j>>0]|0)+(e[i+12>>1]|0);j=c+7|0;a[j>>0]=(d[j>>0]|0)+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function vI(a,d,f){a=a|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;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<512?m:0-m>>31&511;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<512?o:0-o>>31&511;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function wI(a,d,f){a=a|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,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<512?r:0-r>>31&511;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<512?t:0-t>>31&511;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<512?v:0-v>>31&511;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<512?x:0-x>>31&511;g=g+1|0}yW(d|0,0,256)|0;return}function xI(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function yI(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function zI(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;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else xI(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;vI(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function AI(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;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else yI(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;wI(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function BI(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;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)xI((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else vI((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function CI(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;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)xI((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else vI((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[150645+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)xI((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else vI((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function DI(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[150645+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)xI(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else vI(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function EI(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;h=Ec;Ec=Ec+64|0;g=h;f=0;while(1){if((f|0)==4)break;p=f<<2;l=c[b+(p<<2)>>2]|0;m=p|1;j=c[b+(m<<2)>>2]|0;o=j+l|0;j=l-j|0;l=p|2;n=c[b+(l<<2)>>2]|0;i=p|3;q=c[b+(i<<2)>>2]|0;k=n-q|0;n=q+n|0;c[g+(p<<2)>>2]=n+o;c[g+(m<<2)>>2]=o-n;c[g+(l<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;q=d[150641+f>>0]|0;p=c[g+(f<<2)>>2]|0;m=c[g+(f+8<<2)>>2]|0;o=m+p|0;m=p-m|0;p=c[g+(f+4<<2)>>2]|0;l=c[g+(f+12<<2)>>2]|0;n=p-l|0;p=l+p|0;c[a+(q<<2)>>2]=(H(p+o|0,e)|0)+128>>8;c[a+(q+16<<2)>>2]=(H(n+m|0,e)|0)+128>>8;c[a+(q+64<<2)>>2]=(H(m-n|0,e)|0)+128>>8;c[a+(q+80<<2)>>2]=(H(o-p|0,e)|0)+128>>8;f=f+1|0}Ec=h;return}function FI(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=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(H(h+i|0,b)|0)>>7;c[j>>2]=(H(e+f|0,b)|0)>>7;c[g>>2]=(H(i-h|0,b)|0)>>7;c[d>>2]=(H(f-e|0,b)|0)>>7;return}function GI(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;g=Ec;Ec=Ec+32|0;f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[150639+e>>0]|0;i=c[f+(e<<2)>>2]|0;l=c[f+(e+4<<2)>>2]|0;h=l+i|0;l=i-l|0;i=c[f+(e+2<<2)>>2]|0;m=c[f+(e+6<<2)>>2]|0;k=i-m|0;i=m+i|0;c[a+(j<<2)>>2]=(H(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(H(k+l|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(H(l-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(H(h-i|0,b)|0)+128>>8;e=e+1|0}Ec=g;return}function HI(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function II(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function JI(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function KI(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function LI(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;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function MI(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;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function NI(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;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function OI(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;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function PI(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<1;y=g<<1;z=0-C|0;A=H(C,-2)|0;w=H(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function QI(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function RI(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function SI(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<1;v=f<<1;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function TI(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,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function UI(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,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function VI(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,u=0;t=f<<1;s=g<<1;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;u=l-u|0;b[g>>1]=u>>>0<512?u:0-u>>31&511}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function WI(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;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function XI(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;s=f<<1;r=g<<1;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function YI(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;r=f<<1;q=g<<1;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;s=l-s|0;b[g>>1]=s>>>0<512?s:0-s>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function ZI(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;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function _I(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;n=c>>1;m=d<<1;j=f<<1;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function $I(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;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function aJ(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;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function bJ(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;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function cJ(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;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function dJ(a,d,f){a=a|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;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<1024?m:0-m>>31&1023;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<1024?o:0-o>>31&1023;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function eJ(a,d,f){a=a|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,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<1024?r:0-r>>31&1023;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<1024?t:0-t>>31&1023;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<1024?v:0-v>>31&1023;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<1024?x:0-x>>31&1023;g=g+1|0}yW(d|0,0,256)|0;return}function fJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function gJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function hJ(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;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else fJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;dJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function iJ(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;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else gJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;eJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function jJ(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;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)fJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else dJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function kJ(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;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)fJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else dJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[150645+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)fJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else dJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function lJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[150645+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)fJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else dJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|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;h=Ec;Ec=Ec+64|0;g=h;f=0;while(1){if((f|0)==4)break;p=f<<2;l=c[b+(p<<2)>>2]|0;m=p|1;j=c[b+(m<<2)>>2]|0;o=j+l|0;j=l-j|0;l=p|2;n=c[b+(l<<2)>>2]|0;i=p|3;q=c[b+(i<<2)>>2]|0;k=n-q|0;n=q+n|0;c[g+(p<<2)>>2]=n+o;c[g+(m<<2)>>2]=o-n;c[g+(l<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;q=d[150641+f>>0]|0;p=c[g+(f<<2)>>2]|0;m=c[g+(f+8<<2)>>2]|0;o=m+p|0;m=p-m|0;p=c[g+(f+4<<2)>>2]|0;l=c[g+(f+12<<2)>>2]|0;n=p-l|0;p=l+p|0;c[a+(q<<2)>>2]=(H(p+o|0,e)|0)+128>>8;c[a+(q+16<<2)>>2]=(H(n+m|0,e)|0)+128>>8;c[a+(q+64<<2)>>2]=(H(m-n|0,e)|0)+128>>8;c[a+(q+80<<2)>>2]=(H(o-p|0,e)|0)+128>>8;f=f+1|0}Ec=h;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;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(H(h+i|0,b)|0)>>7;c[j>>2]=(H(e+f|0,b)|0)>>7;c[g>>2]=(H(i-h|0,b)|0)>>7;c[d>>2]=(H(f-e|0,b)|0)>>7;return}function oJ(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;g=Ec;Ec=Ec+32|0;f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[150639+e>>0]|0;i=c[f+(e<<2)>>2]|0;l=c[f+(e+4<<2)>>2]|0;h=l+i|0;l=i-l|0;i=c[f+(e+2<<2)>>2]|0;m=c[f+(e+6<<2)>>2]|0;k=i-m|0;i=m+i|0;c[a+(j<<2)>>2]=(H(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(H(k+l|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(H(l-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(H(h-i|0,b)|0)+128>>8;e=e+1|0}Ec=g;return}function pJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function qJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function rJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function sJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function tJ(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;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function uJ(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;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function vJ(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;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function wJ(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;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function xJ(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<2;y=g<<2;z=0-C|0;A=H(C,-2)|0;w=H(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function yJ(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function zJ(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function AJ(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<2;v=f<<2;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function BJ(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,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function CJ(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,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function DJ(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,u=0;t=f<<2;s=g<<2;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;u=l-u|0;b[g>>1]=u>>>0<1024?u:0-u>>31&1023}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function EJ(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;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function FJ(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;s=f<<2;r=g<<2;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function GJ(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;r=f<<2;q=g<<2;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;s=l-s|0;b[g>>1]=s>>>0<1024?s:0-s>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function HJ(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;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function IJ(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;n=c>>1;m=d<<2;j=f<<2;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function JJ(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;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function KJ(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;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function LJ(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;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function MJ(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;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function NJ(a,d,f){a=a|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;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<4096?m:0-m>>31&4095;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<4096?o:0-o>>31&4095;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function OJ(a,d,f){a=a|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,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<4096?r:0-r>>31&4095;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<4096?t:0-t>>31&4095;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<4096?v:0-v>>31&4095;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<4096?x:0-x>>31&4095;g=g+1|0}yW(d|0,0,256)|0;return}function PJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function QJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function RJ(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;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else PJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;NJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function SJ(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;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[150645+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else QJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;OJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function TJ(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;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)PJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else NJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function UJ(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;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[150645+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)PJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else NJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[150645+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)PJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else NJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function VJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[150645+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)PJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else NJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function WJ(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;h=Ec;Ec=Ec+64|0;g=h;f=0;while(1){if((f|0)==4)break;p=f<<2;l=c[b+(p<<2)>>2]|0;m=p|1;j=c[b+(m<<2)>>2]|0;o=j+l|0;j=l-j|0;l=p|2;n=c[b+(l<<2)>>2]|0;i=p|3;q=c[b+(i<<2)>>2]|0;k=n-q|0;n=q+n|0;c[g+(p<<2)>>2]=n+o;c[g+(m<<2)>>2]=o-n;c[g+(l<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;q=d[150641+f>>0]|0;p=c[g+(f<<2)>>2]|0;m=c[g+(f+8<<2)>>2]|0;o=m+p|0;m=p-m|0;p=c[g+(f+4<<2)>>2]|0;l=c[g+(f+12<<2)>>2]|0;n=p-l|0;p=l+p|0;c[a+(q<<2)>>2]=(H(p+o|0,e)|0)+128>>8;c[a+(q+16<<2)>>2]=(H(n+m|0,e)|0)+128>>8;c[a+(q+64<<2)>>2]=(H(m-n|0,e)|0)+128>>8;c[a+(q+80<<2)>>2]=(H(o-p|0,e)|0)+128>>8;f=f+1|0}Ec=h;return}function XJ(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=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(H(h+i|0,b)|0)>>7;c[j>>2]=(H(e+f|0,b)|0)>>7;c[g>>2]=(H(i-h|0,b)|0)>>7;c[d>>2]=(H(f-e|0,b)|0)>>7;return}function YJ(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;g=Ec;Ec=Ec+32|0;f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[150639+e>>0]|0;i=c[f+(e<<2)>>2]|0;l=c[f+(e+4<<2)>>2]|0;h=l+i|0;l=i-l|0;i=c[f+(e+2<<2)>>2]|0;m=c[f+(e+6<<2)>>2]|0;k=i-m|0;i=m+i|0;c[a+(j<<2)>>2]=(H(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(H(k+l|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(H(l-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(H(h-i|0,b)|0)+128>>8;e=e+1|0}Ec=g;return}function ZJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function _J(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function $J(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function aK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function bK(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;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function cK(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;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function dK(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;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function eK(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;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function fK(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<4;y=g<<4;z=0-C|0;A=H(C,-2)|0;w=H(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function gK(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function hK(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,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function iK(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<4;v=f<<4;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function jK(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,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function kK(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,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function lK(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,u=0;t=f<<4;s=g<<4;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;u=l-u|0;b[g>>1]=u>>>0<4096?u:0-u>>31&4095}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function mK(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;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}
function Ij(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,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;ha=Ec;Ec=Ec+16|0;Z=ha+8|0;_=ha;ea=c[f+21748>>2]|0;ga=c[f+21708>>2]|0;S=c[f+21712>>2]|0;T=c[f+21716>>2]|0;U=c[f+21720>>2]|0;c[Z>>2]=U;c[Z+4>>2]=c[f+21724>>2];V=c[f+21728>>2]|0;W=c[f+21732>>2]|0;X=c[f+21736>>2]|0;Y=c[f+21740>>2]|0;c[_>>2]=Y;r=c[f+21744>>2]|0;c[_+4>>2]=r;a:do if(!(g&2048)){b:do if(g&7|0){o=c[(c[e+28212>>2]|0)+56>>2]|0?7:-1;j=f+21768|0;c[j>>2]=65535;h=f+21760|0;c[h>>2]=65535;l=f+21756|0;c[l>>2]=65535;m=f+21764|0;c[m>>2]=61162;n=(o&W|0)!=0;if(n){h=65535;k=60138}else{c[l>>2]=46079;c[h>>2]=13311;c[m>>2]=9962;h=46079;k=8938}i=g&128;do if((i|0)==(Y&128|0)){if(!(Y&o)){h=h&57183;c[l>>2]=h;c[j>>2]=24415}}else{if(!i){if(!((Y&o|0)==0?1:(c[(c[e+24364>>2]|0)+((c[e+27016>>2]|0)+U<<2)>>2]&o|0)==0))break;h=h&57183;c[l>>2]=h;c[j>>2]=24415;break}if(!(Y&o)){h=h&57343;c[l>>2]=h;c[j>>2]=24575;i=24415}else i=65375;if(!(r&o)){h=h&65375;c[l>>2]=h;c[j>>2]=i}}while(0);if(!(o&V))c[l>>2]=h&32767;if(!(o&X))c[m>>2]=k;if(g&1|0){if(!(W&1)){yW(f+21668|0,(n?2:-1)|0,4)|0;k=f+21704|0;l=e+26364|0}else{k=f+21704|0;l=e+26364|0;c[f+21668>>2]=c[(c[k>>2]|0)+(c[(c[l>>2]|0)+(S<<2)>>2]|0)>>2]}j=0;while(1){if((j|0)==2)break b;h=c[_+(j<<2)>>2]|0;if(!(h&1)){h=(h&o|0)==0?-1:2;i=j<<4;a[i+19+(f+21664)>>0]=h;i=i|11}else{R=(c[k>>2]|0)+(c[(c[l>>2]|0)+(c[Z+(j<<2)>>2]<<2)>>2]|0)|0;h=j<<1;i=j<<4;a[(i|11)+(f+21664)>>0]=a[R+(6-(d[ea+h>>0]|0))>>0]|0;h=a[R+(6-(d[ea+(h|1)>>0]|0))>>0]|0;i=i+19|0}a[f+21664+i>>0]=h;j=j+1|0}}}while(0);if(!W){c[f+27828>>2]=1077952576;c[f+27868>>2]=1077952576;p=e+25972|0;h=1077952576}else{p=e+25972|0;h=c[p>>2]|0;c[f+27828>>2]=c[h+(S*48|0)+12>>2];R=(c[e+25680>>2]|0)==0;c[f+27868>>2]=c[(R?28:20)+(h+(S*48|0))>>2];h=c[(R?44:36)+(h+(S*48|0))>>2]|0}c[f+27908>>2]=h;o=e+28216|0;n=0;while(1){if((n|0)==2)break a;if(!(c[_+(n<<2)>>2]|0)){i=n<<4;a[i+99+(f+27824)>>0]=64;a[i+91+(f+27824)>>0]=64;a[i+59+(f+27824)>>0]=64;a[i+51+(f+27824)>>0]=64;a[i+19+(f+27824)>>0]=64;i=i|11;h=64}else{l=c[p>>2]|0;m=c[Z+(n<<2)>>2]|0;h=n<<1;j=ea+(h+8)|0;i=n<<4;a[(i|11)+(f+27824)>>0]=a[(d[j>>0]|0)+(l+(m*48|0))>>0]|0;k=ea+(h+9)|0;a[i+19+(f+27824)>>0]=a[(d[k>>0]|0)+(l+(m*48|0))>>0]|0;switch(c[(c[o>>2]|0)+12>>2]|0){case 3:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+16+(l+(m*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+16+(l+(m*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+32+(l+(m*48|0))>>0]|0;k=(d[k>>0]|0)+32|0;h=i+99|0;break}case 2:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+14+(l+(m*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+14+(l+(m*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+30+(l+(m*48|0))>>0]|0;h=(d[k>>0]|0)+30|0;j=99;q=39;break}default:{i=n<<3;a[i+51+(f+27824)>>0]=a[(d[ea+(h+12)>>0]|0)+(l+(m*48|0))>>0]|0;h=d[ea+(h+13)>>0]|0;j=91;q=39}}if((q|0)==39){q=0;k=h;h=j+i|0}i=h;h=a[l+(m*48|0)+k>>0]|0}a[f+27824+i>>0]=h;n=n+1|0}}while(0);if(!(g&120)){if(g&256|0?c[f+21844>>2]|0:0)q=46}else q=46;c:do if((q|0)==46){x=c[e+26368>>2]|0;y=f+23412|0;z=W|0?-1:-16843010;A=(g&80|0)==0;B=Y|0?-1:-2;C=e+26360|0;D=U<<2|1;E=X|0?-1:-2;F=V|0?-1:-2;G=f+21752|0;I=x<<1;J=x+3|0;K=ga<<2;L=(g&2304|0)==0;M=e+26376|0;N=f+21828|0;O=(V&128|0)!=0;P=(W&128|0)==0;Q=(X&128|0)==0;R=(Y&128|0)==0;s=(r&128|0)==0;t=x*3|0;u=T<<2|2;w=S<<2;v=w|2;w=w|3;r=0;while(1){if(r>>>0>=(c[y>>2]|0)>>>0)break c;m=f+28272+(r*40|0)+12|0;o=c[e+24384+(r<<2)>>2]|0;n=f+27952+(r*160|0)+48|0;p=c[e+24352+(r<<2)>>2]|0;q=12288<<(r<<1);do if(q&g|0){if(!(q&W)){l=f+27952+(r*160|0)+16|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[f+28272+(r*40|0)+4>>2]=z}else{j=(c[(c[C>>2]|0)+(S<<2)>>2]|0)+t|0;i=p+(j<<2)|0;l=c[i+4>>2]|0;k=f+27952+(r*160|0)+16|0;c[k>>2]=c[i>>2];c[k+4>>2]=l;j=p+(j<<2)+8|0;k=c[j+4>>2]|0;l=f+27952+(r*160|0)+24|0;c[l>>2]=c[j>>2];c[l+4>>2]=k;l=a[o+v>>0]|0;a[f+28272+(r*40|0)+5>>0]=l;a[f+28272+(r*40|0)+4>>0]=l;l=a[o+w>>0]|0;a[f+28272+(r*40|0)+7>>0]=l;a[f+28272+(r*40|0)+6>>0]=l}d:do if(A){if(!(Y&q)){c[f+27952+(r*160|0)+44>>2]=0;h=B}else{c[f+27952+(r*160|0)+44>>2]=c[p+((c[(c[C>>2]|0)+(U<<2)>>2]|0)+3+(H(x,d[ea>>0]|0)|0)<<2)>>2];h=a[o+(D+(a[ea>>0]&-2&255))>>0]|0}a[f+28272+(r*40|0)+11>>0]=h}else{l=0;while(1){if((l|0)==2)break d;i=l<<1;j=l<<4;h=j+-1|0;k=c[_+(l<<2)>>2]|0;if(!(k&q)){c[n+(h<<2)>>2]=0;j=j|7;c[n+(j<<2)>>2]=0;i=k|0?-1:-2;a[m+j>>0]=i}else{ia=c[Z+(l<<2)>>2]|0;ka=(c[(c[C>>2]|0)+(ia<<2)>>2]|0)+3|0;ia=ia<<2|1;ja=ea+i|0;c[n+(h<<2)>>2]=c[p+((H(x,d[ja>>0]|0)|0)+ka<<2)>>2];i=ea+(i|1)|0;k=j|7;c[n+(k<<2)>>2]=c[p+((H(x,d[i>>0]|0)|0)+ka<<2)>>2];a[m+h>>0]=a[o+(ia+(a[ja>>0]&-2&255))>>0]|0;i=a[o+(ia+(a[i>>0]&-2&255))>>0]|0;h=k}a[m+h>>0]=i;l=l+1|0}}while(0);if(!(q&X)){c[f+27952+(r*160|0)+32>>2]=0;h=E}else{c[f+27952+(r*160|0)+32>>2]=c[p+((c[(c[C>>2]|0)+(T<<2)>>2]|0)+t<<2)>>2];h=a[o+u>>0]|0}k=f+28272+(r*40|0)+8|0;a[k>>0]=h;j=f+28272+(r*40|0)+6|0;if((a[j>>0]|h)<<24>>24<0){if(!(q&V)){c[f+27952+(r*160|0)+12>>2]=0;h=F}else{h=c[G>>2]|0;c[f+27952+(r*160|0)+12>>2]=c[p+(J+(c[(c[C>>2]|0)+(ga<<2)>>2]|0)+(h&I)<<2)>>2];h=a[o+(K|h&2|1)>>0]|0}a[f+28272+(r*40|0)+3>>0]=h}if(L){a[f+28272+(r*40|0)+30>>0]=-2;a[f+28272+(r*40|0)+14>>0]=-2;c[f+27952+(r*160|0)+56>>2]=0;c[f+27952+(r*160|0)+120>>2]=0;if(!(c[M>>2]|0))break}else if(!(c[M>>2]|0))break;if(!(c[N>>2]|0)){if(O?(ca=f+28272+(r*40|0)+3|0,da=a[ca>>0]|0,da<<24>>24>-1):0){a[ca>>0]=(da&255)>>>1;ka=f+27952+(r*160|0)+14|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+7|0;a[ka>>0]=d[ka>>0]<<1}do if(!P){h=f+28272+(r*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;ka=f+27952+(r*160|0)+18|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+9|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;ka=f+27952+(r*160|0)+22|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+11|0;a[ka>>0]=d[ka>>0]<<1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=(h&255)>>>1;ka=f+27952+(r*160|0)+26|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+13|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;ka=f+27952+(r*160|0)+30|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+15|0;a[ka>>0]=d[ka>>0]<<1}while(0);if(!Q?(fa=a[k>>0]|0,fa<<24>>24>-1):0){a[k>>0]=(fa&255)>>>1;ka=f+27952+(r*160|0)+34|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+17|0;a[ka>>0]=d[ka>>0]<<1}do if(!R){h=f+28272+(r*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;ka=f+27952+(r*160|0)+46|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+23|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;ka=f+27952+(r*160|0)+78|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+39|0;a[ka>>0]=d[ka>>0]<<1}while(0);if(s)break;h=f+28272+(r*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;ka=f+27952+(r*160|0)+110|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+55|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;ka=f+27952+(r*160|0)+142|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+71|0;a[ka>>0]=d[ka>>0]<<1;break}else{if(!O?($=f+28272+(r*40|0)+3|0,aa=a[$>>0]|0,aa<<24>>24>-1):0){a[$>>0]=aa<<24>>24<<1;ka=f+27952+(r*160|0)+14|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+7|0;a[ka>>0]=(d[ka>>0]|0)>>>1}do if(P){h=f+28272+(r*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+18|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+9|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+22|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+11|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=h<<24>>24<<1;ka=f+27952+(r*160|0)+26|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+13|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+30|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+15|0;a[ka>>0]=(d[ka>>0]|0)>>>1}while(0);if(Q?(ba=a[k>>0]|0,ba<<24>>24>-1):0){a[k>>0]=ba<<24>>24<<1;ka=f+27952+(r*160|0)+34|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+17|0;a[ka>>0]=(d[ka>>0]|0)>>>1}do if(R){h=f+28272+(r*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+46|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+23|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+78|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+39|0;a[ka>>0]=(d[ka>>0]|0)>>>1}while(0);if(!s)break;h=f+28272+(r*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+110|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+55|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+142|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+71|0;a[ka>>0]=(d[ka>>0]|0)>>>1;break}}while(0);r=r+1|0}}while(0);c[f+21840>>2]=(Y>>>24&1)+(W>>>24&1);Ec=ha;return}function Jj(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function Kj(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;m=Ec;Ec=Ec+16|0;l=m+8|0;j=m;a:do if(!(e&32768)){e=0;while(1){if((e|0)>=4){k=8;break a}i=b+(e+12)|0;g=a[i>>0]|0;h=a[139674+g>>0]|0;if(249>>>g&1|0)break;if(253>>>g&1|0)a[i>>0]=h;e=e+1|0}c[j>>2]=h<<24>>24;We(d,16,139686,j);e=-1094995529}else k=8;while(0);b:do if((k|0)==8)if((f&34952|0)==34952)e=0;else{e=0;while(1){if((e|0)>=4){e=0;break b}if(!(c[72580+(e<<2)>>2]&f)){g=b+((e<<3)+12)|0;h=a[g>>0]|0;i=a[139737+h>>0]|0;if(370>>>h&1|0)break;if(886>>>h&1|0)a[g>>0]=i}e=e+1|0}c[l>>2]=i<<24>>24;We(d,16,139749,l);e=-1094995529}while(0);Ec=m;return e|0}function Lj(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,i=0;i=Ec;Ec=Ec+32|0;h=i+16|0;g=i+8|0;do if(e>>>0<=3){if(!(c&32768)){c=a[139568+e>>0]|0;if((e|1|0)==3){We(b,16,139572,g);c=-1094995529;break}}else c=e;e=d&32896;if((e|0)!=32896)if((c|2|0)==3){We(b,16,139620,h);c=-1094995529;break}else{Ec=i;return ((e|0)==0|(f|0)==0?a[139669+c>>0]|0:8-(d>>>15&1)+(((c|0)==4&1)<<1)|0)|0}}else{We(b,16,139531,i);c=-1094995529}while(0);Ec=i;return c|0}function Mj(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[126412+a>>0]|0);return d[126924+a>>0]|0|0}function Nj(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[b+21844>>2]|0))Wj(a,b,d);else Vj(a,b,d);return}function Oj(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Pj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(uW(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[126412+b>>0]|0);b=a[127436+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[120443+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function Qj(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=Ec;Ec=Ec+112|0;y=z+32|0;v=z+24|0;t=z+16|0;s=z;x=z+40|0;u=(l|0)<9;do if(!u)if((i|0)>47){r=c[181276+(c[72484+((Rj(f,(i<<4)+-768|0)|0)<<2)>>2]<<4)+4>>2]|0;m=g+8|0;q=c[m>>2]|0;o=c[g>>2]|0;w=o+(q>>>3)|0;w=(uW(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(q&7)>>>24;n=b[r+(w<<2)>>1]|0;w=b[r+(w<<2)+2>>1]|0;p=w<<16>>16;if(w<<16>>16<0){w=q+8|0;o=o+(w>>>3)|0;n=((uW(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24|0)|0)<<(w&7)>>>(p+32|0))+n|0;p=b[r+(n<<2)+2>>1]|0;o=w;n=b[r+(n<<2)>>1]|0}else o=q;o=p+o|0;break}else{r=c[181276+(c[72484+((Rj(f,i)|0)<<2)>>2]<<4)+4>>2]|0;m=g+8|0;q=c[m>>2]|0;o=c[g>>2]|0;w=o+(q>>>3)|0;w=(uW(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(q&7)>>>24;n=b[r+(w<<2)>>1]|0;w=b[r+(w<<2)+2>>1]|0;p=w<<16>>16;if(w<<16>>16<0){w=q+8|0;o=o+(w>>>3)|0;n=((uW(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24|0)|0)<<(w&7)>>>(p+32|0))+n|0;p=b[r+(n<<2)+2>>1]|0;o=w;n=b[r+(n<<2)>>1]|0}else o=q;o=p+o|0;break}else{o=(l|0)==4;w=o?c[45312]|0:c[45316]|0;m=g+8|0;r=c[m>>2]|0;n=(c[g>>2]|0)+(r>>>3)|0;n=(uW(d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24|0)|0)<<(r&7);o=n>>>(o?24:19);n=b[w+(o<<2)>>1]|0;o=r+(b[w+(o<<2)+2>>1]|0)|0}while(0);c[m>>2]=o;w=n>>2;a[(d[150645+i>>0]|0)+(f+27824)>>0]=w;a:do if(w){if(w>>>0>l>>>0){m=c[e+4>>2]|0;y=c[f+21792>>2]|0;c[s>>2]=c[f+21788>>2];c[s+4>>2]=y;c[s+8>>2]=w;We(m,16,139423,s);m=-1;break}o=n&3;s=Sj(g,3)|0;Tj(g,o);c[x>>2]=1-(s>>>1&2);c[x+4>>2]=1-(s&2);c[x+8>>2]=1-(s<<1&2);b:do if((o|0)<(w|0)){p=(o|0)!=3;n=(w|0)>10&p;q=n&1;r=Sj(g,8)|0;s=a[257284+(q<<9)+(r<<1)>>0]|0;m=s<<24>>24;Tj(g,a[257284+(q<<9)+(r<<1)+1>>0]|0);if(s<<24>>24>99){m=m+-100|0;if((m|0)==8)m=(Uj(g)|0)+8|0;do if((m|0)<14){if(n)m=(Bj(g)|0)+(m<<1)|0}else{if((m|0)==14)if(n){m=(Bj(g)|0)+28|0;break}else{m=(Jj(g,4)|0)+14|0;break}do if((m|0)>15)if((m|0)>28){We(c[e+4>>2]|0,16,139468,t);m=-1;break a}else{n=m+-3|0;m=(1<<n)+-4066|0;break}else{m=30;n=12}while(0);m=(Jj(g,n)|0)+m|0}while(0);t=p?m+2|0:m;m=t&1;n=2;m=(t+2>>1^0-m)+m|0}else{m=(p?m>>31|1:0)+m|0;n=(m+3|0)>>>0>6?2:1}c[x+(o<<2)>>2]=m;while(1){o=o+1|0;if((o|0)>=(w|0))break b;s=Sj(g,8)|0;t=a[257284+(n<<9)+(s<<1)>>0]|0;m=t<<24>>24;Tj(g,a[257284+(n<<9)+(s<<1)+1>>0]|0);if(t<<24>>24>99){m=m+-100|0;if((m|0)==8)m=(Uj(g)|0)+8|0;if((m|0)>=15){p=15<<n;if((m|0)==15){m=p;p=12}else{if((m|0)>28)break;t=m+-3|0;m=p+-4096+(1<<t)|0;p=t}}else{m=m<<n;p=n}t=(Jj(g,p)|0)+m|0;m=t&1;m=(t+2>>1^0-m)+m|0}c[x+(o<<2)>>2]=m;t=c[72552+(n<<2)>>2]|0;n=n+((t+m|0)>>>0>t<<1>>>0&1)|0}We(c[e+4>>2]|0,16,139468,v);m=-1094995529;break a}while(0);if((w|0)==(l|0))m=0;else{do if(u)if((l|0)==4){m=29;n=181340+(w<<4)+4|0;break}else{m=27;n=181404+(w<<4)+4|0;break}else{m=23;n=181532+(w<<4)+4|0}while(0);l=c[n>>2]|0;v=g+8|0;t=c[v>>2]|0;u=(c[g>>2]|0)+(t>>>3)|0;u=(uW(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(t&7)>>>m;m=b[l+(u<<2)>>1]|0;c[v>>2]=t+(b[l+(u<<2)+2>>1]|0)}o=j+(w+-1+m)|0;n=(i|0)>47;p=c[x>>2]|0;c:do if(!(c[e+25664>>2]|0))if(n){b[h+(d[o>>0]<<1)>>1]=p;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){k=c[181788+(m<<4)+4>>2]|0;i=c[l>>2]|0;p=(c[g>>2]|0)+(i>>>3)|0;p=(uW(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(i&7)>>>29;q=b[k+(p<<2)>>1]|0;p=i+(b[k+(p<<2)+2>>1]|0)|0}else{t=c[45476]|0;s=c[l>>2]|0;q=c[g>>2]|0;k=q+(s>>>3)|0;k=(uW(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(k<<2)>>1]|0;k=b[t+(k<<2)+2>>1]|0;r=k<<16>>16;if(k<<16>>16<0){s=s+6|0;k=q+(s>>>3)|0;p=((uW(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;k=o+~q|0;b[h+(d[k>>0]<<1)>>1]=c[x+(n<<2)>>2];m=m-q|0;o=k;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;b[h+(d[g>>0]<<1)>>1]=c[x+(n<<2)>>2];o=g;n=n+1|0}}else{l=d[o>>0]|0;b[h+(l<<1)>>1]=((H(c[k+(l<<2)>>2]|0,p)|0)+32|0)>>>6;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){i=c[181788+(m<<4)+4>>2]|0;j=c[l>>2]|0;p=(c[g>>2]|0)+(j>>>3)|0;p=(uW(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(j&7)>>>29;q=b[i+(p<<2)>>1]|0;p=j+(b[i+(p<<2)+2>>1]|0)|0}else{t=c[45476]|0;s=c[l>>2]|0;q=c[g>>2]|0;i=q+(s>>>3)|0;i=(uW(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(i<<2)>>1]|0;i=b[t+(i<<2)+2>>1]|0;r=i<<16>>16;if(i<<16>>16<0){s=s+6|0;i=q+(s>>>3)|0;p=((uW(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;i=o+~q|0;j=d[i>>0]|0;b[h+(j<<1)>>1]=((H(c[k+(j<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32|0)>>>6;m=m-q|0;o=i;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;i=d[g>>0]|0;b[h+(i<<1)>>1]=((H(c[k+(i<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32|0)>>>6;o=g;n=n+1|0}}else if(n){c[h+(d[o>>0]<<2)>>2]=p;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){k=c[181788+(m<<4)+4>>2]|0;i=c[l>>2]|0;p=(c[g>>2]|0)+(i>>>3)|0;p=(uW(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(i&7)>>>29;q=b[k+(p<<2)>>1]|0;p=i+(b[k+(p<<2)+2>>1]|0)|0}else{t=c[45476]|0;s=c[l>>2]|0;q=c[g>>2]|0;k=q+(s>>>3)|0;k=(uW(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(k<<2)>>1]|0;k=b[t+(k<<2)+2>>1]|0;r=k<<16>>16;if(k<<16>>16<0){s=s+6|0;k=q+(s>>>3)|0;p=((uW(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;k=o+~q|0;c[h+(d[k>>0]<<2)>>2]=c[x+(n<<2)>>2];o=k;m=m-q|0;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;c[h+(d[g>>0]<<2)>>2]=c[x+(n<<2)>>2];o=g;n=n+1|0}}else{l=d[o>>0]|0;c[h+(l<<2)>>2]=(H(c[k+(l<<2)>>2]|0,p)|0)+32>>6;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){i=c[181788+(m<<4)+4>>2]|0;j=c[l>>2]|0;p=(c[g>>2]|0)+(j>>>3)|0;p=(uW(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(j&7)>>>29;q=b[i+(p<<2)>>1]|0;p=j+(b[i+(p<<2)+2>>1]|0)|0}else{t=c[45476]|0;s=c[l>>2]|0;q=c[g>>2]|0;i=q+(s>>>3)|0;i=(uW(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(i<<2)>>1]|0;i=b[t+(i<<2)+2>>1]|0;r=i<<16>>16;if(i<<16>>16<0){s=s+6|0;i=q+(s>>>3)|0;p=((uW(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;i=o+~q|0;j=d[i>>0]|0;c[h+(j<<2)>>2]=(H(c[k+(j<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32>>6;o=i;m=m-q|0;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;i=d[g>>0]|0;c[h+(i<<2)>>2]=(H(c[k+(i<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32>>6;o=g;n=n+1|0}}while(0);if((m|0)<0){m=c[e+4>>2]|0;e=c[f+21792>>2]|0;c[y>>2]=c[f+21788>>2];c[y+4>>2]=e;We(m,16,139490,y);m=-1}else m=0}else m=0;while(0);Ec=z;return m|0}function Rj(a,b){a=a|0;b=b|0;b=d[150645+b>>0]|0;b=(d[b+-8+(a+27824)>>0]|0)+(d[b+-1+(a+27824)>>0]|0)|0;return (b>>>0<64?(b+1|0)>>>1:b)&31|0}function Sj(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Tj(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Uj(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+8|0;e=c[b>>2]|0;g=(c[a>>2]|0)+(e>>>3)|0;g=(uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7);a=g>>>0>65535;g=a?g>>>16:g;a=a?16:0;f=(g&65280|0)==0;a=32-(d[120443+(f?g:g>>>8)>>0]|0)-(f?a:a|8)|0;c[b>>2]=a+e;return a+-1|0}function Vj(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,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,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=Ec;Ec=Ec+32|0;C=T+16|0;B=T+8|0;w=T;y=c[f+26368>>2]|0;k=c[g+21796>>2]|0;A=g+21792|0;p=c[A>>2]|0;S=c[h>>2]|0;R=S&64;z=g+25336|0;Xj(f,z,(S>>>7&1)+p|0);S=(R|0)==0;i=61440;u=0;while(1){if((u|0)==2)break;m=a[g+28272+(u*40|0)+11>>0]|0;s=a[g+28272+(u*40|0)+4>>0]|0;j=a[g+28272+(u*40|0)+8>>0]|0;if(j<<24>>24==-2){q=a[g+28272+(u*40|0)+3>>0]|0;r=g+27952+(u*160|0)+12|0}else{q=j<<24>>24;r=g+27952+(u*160|0)+32|0}t=m>>>0>s>>>0?s:m;j=t>>>0>q>>>0?q:t;l=B+(u<<2)|0;c[l>>2]=j;if((j|0)>-1){n=g+27952+(u*160|0)+44|0;o=g+27952+(u*160|0)+16|0;l=(j|0)==(m|0);j=(j|0)==(s|0);do if(((j&1)+(q>>>0<=t>>>0&1)+(l&1)|0)>>>0<=1){if(l){j=c[n>>2]|0;break}if(j){j=c[o>>2]|0;break}else{j=c[r>>2]|0;break}}else{j=Yj(b[n>>1]|0,b[o>>1]|0,b[r>>1]|0)|0;j=(Yj(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[r+2>>1]|0)|0)<<16|j&65535}while(0);c[w+(u<<2)>>2]=j}else{j=~(12288<<(u<<1));c[w+(u<<2)>>2]=0;c[l>>2]=-1;if(S)c[h>>2]=c[h>>2]&j;i=i&j}u=u+1|0}j=c[B>>2]|0;if((j|0)<0?(v=B+4|0,(c[v>>2]|0)<0):0){c[v>>2]=0;c[B>>2]=0;if(S)c[h>>2]=c[h>>2]|61440;s=i|61440;u=0}else{s=i;u=j}i=c[w>>2]|0;j=c[w+4>>2]|0;do if(i|R|j){Q=g+25372|0;r=c[(c[Q>>2]|0)+48>>2]|0;o=c[r+(k<<2)>>2]|0;t=c[h>>2]|0;l=(t&128|0)!=0;do if(!(o&128))if(l){q=c[A>>2]&-2;n=c[f+27016>>2]|0;k=H(q,n)|0;k=k+(c[g+21788>>2]|0)|0;o=c[r+(k<<2)>>2]|0;c[C>>2]=o;l=c[r+(n+k<<2)>>2]|0;m=C+4|0;c[m>>2]=l;n=n<<2|2;p=y*6|0;if((o^l)&128){o=o&-129;c[C>>2]=o;l=l&-129;c[m>>2]=l}m=s|264;if(o&15|0?!((R|0)!=0|(l&15|0)==0):0){O=p;p=q;r=m;l=272;break}O=p;p=q;r=m;l=64}else{n=2;P=36}else{if(l){m=c[g+21852>>2]|0;n=2;o=m+p|0;l=c[f+27016>>2]|0}else{l=(c[A>>2]&-2)+(c[g+21848>>2]|0)|0;n=0;o=l;k=c[g+21788>>2]|0;m=c[f+27016>>2]|0}P=k+(H(l,m)|0)|0;k=P;p=o;o=c[r+(P<<2)>>2]|0;P=36}while(0);do if((P|0)==36){c[C+4>>2]=o;c[C>>2]=o;m=s|264;l=(R|0)!=0;if(l|(o&15|0)==0){if(!l?(x=o&48,x|0):0){O=y;r=m;l=x|256;break}O=y;r=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?m+56|0:m;l=64}else{O=y;r=m;l=264}}while(0);c[h>>2]=t|l;Xj(f,z,p);q=c[Q>>2]|0;m=c[(c[f+26360>>2]|0)+(k<<2)>>2]|0;l=(c[q+36>>2]|0)+(m<<2)|0;m=(c[q+40>>2]|0)+(m<<2)|0;p=k<<2;k=(c[q+68>>2]|0)+p|0;p=(c[q+72>>2]|0)+p|0;if(!n){L=(c[A>>2]&1|0)==0;M=O<<1;N=L?l:l+(M<<2)|0;m=L?m:m+(M<<2)|0;M=L?k:k+2|0;p=L?p:p+2|0}else{N=l;M=k}k=c[h>>2]|0;if((o^k)&128|0){x=r&65535;y=(u&255)*257&65535;t=c[B+4>>2]|0;w=(t&255)*257&65535;v=(u|0)>0?i:0;t=(t|0)>0?j:0;k=0;u=0;while(1){if((u|0)==4)break;r=u&1;o=u>>1;q=(H(o,n)|0)+r|0;r=(0-r&3)+(H(o,O)|0)|0;l=g+28552+(u<<1)|0;if(!(!S?(b[l>>1]&256)==0:0)){b[l>>1]=x;s=d[150645+(u<<2)>>0]|0;P=g+28272+s|0;b[P>>1]=y;b[P+8>>1]=y;P=g+28312+s|0;b[P>>1]=w;b[P+8>>1]=w;do if((c[C+(o<<2)>>2]&7|0)==0?(c[(c[Q>>2]|0)+100>>2]|0)==0:0){l=a[M+q>>0]|0;if(!(l<<24>>24)){L=b[N+(r<<2)>>1]|0;P=L<<16>>16;if(((L<<16>>16>-1?P:0-P|0)|0)>=2){l=j;o=i;break}L=b[N+(r<<2)+2>>1]|0;P=L<<16>>16;if(((L<<16>>16>-1?P:0-P|0)|0)>=2){l=j;o=i;break}}else{if(l<<24>>24>=0){l=j;o=i;break}if(a[p+q>>0]|0){l=j;o=i;break}L=b[m+(r<<2)>>1]|0;P=L<<16>>16;if(((L<<16>>16>-1?P:0-P|0)|0)>=2){l=j;o=i;break}L=b[m+(r<<2)+2>>1]|0;P=L<<16>>16;if(((L<<16>>16>-1?P:0-P|0)|0)>=2){l=j;o=i;break}}l=t;o=v;k=k+1|0}else{l=j;o=i}while(0);P=g+27952+(s<<2)|0;c[P>>2]=o;c[P+4>>2]=o;c[P+32>>2]=o;c[P+36>>2]=o;P=g+28112+(s<<2)|0;c[P>>2]=l;c[P+4>>2]=l;c[P+32>>2]=l;c[P+36>>2]=l}u=u+1|0}if(k&3|R|0)break;c[h>>2]=c[h>>2]&-41337|264;break}if(k&8|0){l=H(u&255,16843009)|0;c[g+28284>>2]=l;c[g+28292>>2]=l;c[g+28300>>2]=l;c[g+28308>>2]=l;l=c[B+4>>2]|0;h=H(l&255,16843009)|0;c[g+28324>>2]=h;c[g+28332>>2]=h;c[g+28340>>2]=h;c[g+28348>>2]=h;do if((o&7|0)==0?(c[q+100>>2]|0)==0:0){k=a[M>>0]|0;if(!(k<<24>>24)){S=b[N>>1]|0;h=S<<16>>16;if(((S<<16>>16>-1?h:0-h|0)|0)>=2)break;S=b[N+2>>1]|0;h=S<<16>>16;if(((S<<16>>16>-1?h:0-h|0)|0)>=2)break}else{if(k<<24>>24>=0)break;if(a[p>>0]|0)break;S=b[m>>1]|0;h=S<<16>>16;if(((S<<16>>16>-1?h:0-h|0)|0)>=2)break;S=b[m+2>>1]|0;h=S<<16>>16;if(((S<<16>>16>-1?h:0-h|0)|0)>=2)break;if((c[f+25704>>2]|0)>>>0<=33)break}j=(l|0)>0?j:0;i=(u|0)>0?i:0}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i;c[g+28160>>2]=j;c[g+28164>>2]=j;c[g+28168>>2]=j;c[g+28172>>2]=j;c[g+28192>>2]=j;c[g+28196>>2]=j;c[g+28200>>2]=j;c[g+28204>>2]=j;c[g+28224>>2]=j;c[g+28228>>2]=j;c[g+28232>>2]=j;c[g+28236>>2]=j;c[g+28256>>2]=j;c[g+28260>>2]=j;c[g+28264>>2]=j;c[g+28268>>2]=j;break}K=r&65535;L=(u&255)*257&65535;E=c[B+4>>2]|0;J=(E&255)*257&65535;I=(o&7|0)==0;F=(r&8|0)==0;G=O*3|0;D=(u|0)==0;E=(E|0)==0;C=f+25704|0;k=0;f=0;while(1){if((f|0)==4)break;o=f&1;q=f>>1;A=g+28552+(f<<1)|0;if(!(!S?(b[A>>1]&256)==0:0))P=79;do if((P|0)==79){P=0;b[A>>1]=K;B=f<<2;z=d[150645+B>>0]|0;r=g+27952+(z<<2)|0;c[r>>2]=i;s=r+4|0;c[s>>2]=i;t=r+32|0;c[t>>2]=i;u=r+36|0;c[u>>2]=i;v=g+28112+(z<<2)|0;c[v>>2]=j;w=v+4|0;c[w>>2]=j;x=v+32|0;c[x>>2]=j;y=v+36|0;c[y>>2]=j;n=g+28272+z|0;b[n>>1]=L;b[n+8>>1]=L;z=g+28312+z|0;b[z>>1]=J;b[z+8>>1]=J;if(I?(c[(c[Q>>2]|0)+100>>2]|0)==0:0){l=a[M+f>>0]|0;n=l<<24>>24==0;if(!n){if(l<<24>>24>=0)break;if(a[p+f>>0]|0)break;if((c[C>>2]|0)>>>0<=33)break}z=n?N:m;if(!F){l=(H(G,q)|0)+(0-o&3)|0;A=b[z+(l<<2)>>1]|0;B=A<<16>>16;if(((A<<16>>16>-1?B:0-B|0)|0)>=2)break;A=b[z+(l<<2)+2>>1]|0;B=A<<16>>16;if(((A<<16>>16>-1?B:0-B|0)|0)>=2)break;if(D){c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0}if(E){c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0}k=k+4|0;break}r=o<<1;q=q<<1;l=0;o=0;while(1){if((o|0)==4)break;n=(H((o>>1)+q|0,O)|0)+(o&1|r)|0;x=b[z+(n<<2)>>1]|0;y=x<<16>>16;if(((x<<16>>16>-1?y:0-y|0)|0)<2?(x=b[z+(n<<2)+2>>1]|0,y=x<<16>>16,((x<<16>>16>-1?y:0-y|0)|0)<2):0){if(D)c[g+27952+(d[150645+(o+B)>>0]<<2)>>2]=0;if(E)c[g+28112+(d[150645+(o+B)>>0]<<2)>>2]=0;l=l+1|0}o=o+1|0}if(!(l&3))b[A>>1]=(e[A>>1]|0)+65480;k=l+k|0}}while(0);f=f+1|0}if(!(k&15|R))c[h>>2]=c[h>>2]&-41337|264}else{M=H(u&255,16843009)|0;c[g+28284>>2]=M;c[g+28292>>2]=M;c[g+28300>>2]=M;c[g+28308>>2]=M;M=H(c[B+4>>2]&255,16843009)|0;c[g+28324>>2]=M;c[g+28332>>2]=M;c[g+28340>>2]=M;c[g+28348>>2]=M;M=g+28e3|0;N=g+28032|0;O=g+28064|0;P=g+28096|0;Q=g+28160|0;R=g+28192|0;S=g+28224|0;g=g+28256|0;c[M>>2]=0;c[M+4>>2]=0;c[M+8>>2]=0;c[M+12>>2]=0;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;c[O+12>>2]=0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;c[S+12>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[h>>2]=c[h>>2]&-41337|264}while(0);Ec=T;return}function Wj(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,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,I=0;F=Ec;Ec=Ec+16|0;C=F;q=c[f+26368>>2]|0;i=c[g+21796>>2]|0;u=g+21792|0;m=c[u>>2]|0;s=c[h>>2]|0;v=s&64;r=g+25336|0;Xj(f,r,(s>>>7&1)+m|0);s=g+25372|0;p=c[(c[s>>2]|0)+48>>2]|0;k=c[p+(i<<2)>>2]|0;t=c[h>>2]|0;j=(t&128|0)!=0;do if(!(k&128))if(j){o=c[u>>2]&-2;l=c[f+27016>>2]|0;n=(H(l,o)|0)+(c[g+21788>>2]|0)|0;k=c[p+(n<<2)>>2]|0;c[C>>2]=k;i=c[p+(l+n<<2)>>2]|0;j=C+4|0;c[j>>2]=i;l=l<<2|2;m=q*6|0;if((k^i)&128){k=k&-129;c[C>>2]=k;i=i&-129;c[j>>2]=i}if(k&15|0?!((v|0)!=0|(i&15|0)==0):0){E=m;i=n;m=o;p=20744;j=61712;o=k;break}E=m;i=n;m=o;p=20744;j=61504;o=k}else{l=2;D=12}else{if(j){k=c[g+21852>>2]|0;l=2;m=k+m|0;j=c[f+27016>>2]|0}else{j=(c[u>>2]&-2)+(c[g+21848>>2]|0)|0;l=0;m=j;i=c[g+21788>>2]|0;k=c[f+27016>>2]|0}k=i+(H(j,k)|0)|0;i=k;k=c[p+(k<<2)>>2]|0;D=12}while(0);do if((D|0)==12){c[C+4>>2]=k;c[C>>2]=k;j=(v|0)!=0;if(j|(k&15|0)==0){if(!j?(n=k&48,n|0):0){E=q;p=20744;j=n|61696;o=k;break}E=q;p=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?20800:20744;j=61504;o=k}else{E=q;p=20744;j=20744;o=k}}while(0);c[h>>2]=t|j;Xj(f,r,m);n=c[s>>2]|0;k=c[(c[f+26360>>2]|0)+(i<<2)>>2]|0;j=(c[n+36>>2]|0)+(k<<2)|0;k=(c[n+40>>2]|0)+(k<<2)|0;m=i<<2;i=(c[n+68>>2]|0)+m|0;m=(c[n+72>>2]|0)+m|0;if(!l){z=(c[u>>2]&1|0)==0;A=E<<1;B=z?j:j+(A<<2)|0;A=z?k:k+(A<<2)|0;y=z?i:i+2|0;m=z?m:m+2|0}else{B=j;A=k;y=i}k=c[h>>2]|0;if((c[f+26376>>2]|0)==0|(k&128|0)==0){z=g+21868|0;j=g+22252|0;w=g+22444|0}else{w=c[u>>2]&1;z=g+21996+(w<<7)|0;j=g+22636+(w*384|0)|0;w=g+22636+(w*384|0)+192|0}x=o>>3&c[n+632>>2]<<4;i=k&128;a:do if((i|0)==(o&128|0)){if(k&8|0){c[g+28324>>2]=0;c[g+28332>>2]=0;c[g+28340>>2]=0;c[g+28348>>2]=0;if(!(o&7)){i=a[y>>0]|0;k=i<<24>>24>-1;if(!k){j=w;i=a[m>>0]|0}E=c[j+(x+(i<<24>>24)<<2)>>2]|0;C=c[z+(E<<2)>>2]|0;D=k?B:A;i=b[D>>1]|0;j=(H(C,i)|0)+128>>8;D=b[D+2>>1]|0;k=(H(C,D)|0)+128>>8;i=k-D<<16|j-i&65535;j=k<<16|j&65535;k=H(E,16843009)|0}else{i=0;j=0;k=0}c[g+28284>>2]=k;c[g+28292>>2]=k;c[g+28300>>2]=k;c[g+28308>>2]=k;c[g+28e3>>2]=j;c[g+28004>>2]=j;c[g+28008>>2]=j;c[g+28012>>2]=j;c[g+28032>>2]=j;c[g+28036>>2]=j;c[g+28040>>2]=j;c[g+28044>>2]=j;c[g+28064>>2]=j;c[g+28068>>2]=j;c[g+28072>>2]=j;c[g+28076>>2]=j;c[g+28096>>2]=j;c[g+28100>>2]=j;c[g+28104>>2]=j;c[g+28108>>2]=j;c[g+28160>>2]=i;c[g+28164>>2]=i;c[g+28168>>2]=i;c[g+28172>>2]=i;c[g+28192>>2]=i;c[g+28196>>2]=i;c[g+28200>>2]=i;c[g+28204>>2]=i;c[g+28224>>2]=i;c[g+28228>>2]=i;c[g+28232>>2]=i;c[g+28236>>2]=i;c[g+28256>>2]=i;c[g+28260>>2]=i;c[g+28264>>2]=i;c[g+28268>>2]=i;break}u=(v|0)==0;v=p&65535;h=(p&8|0)==0;f=E*3|0;t=(o&7|0)==0;s=0;while(1){if((s|0)==4)break a;o=s&1;p=s>>1;i=g+28552+(s<<1)|0;if(!(!u?!(b[i>>1]&256):0))D=43;b:do if((D|0)==43){D=0;b[i>>1]=v;r=s<<2;l=d[150645+r>>0]|0;C=g+28312+l|0;b[C>>1]=0;b[C+8>>1]=0;if(!t){C=g+28272+l|0;b[C>>1]=0;b[C+8>>1]=0;C=g+27952+(l<<2)|0;c[C>>2]=0;c[C+4>>2]=0;c[C+32>>2]=0;c[C+36>>2]=0;C=g+28112+(l<<2)|0;c[C>>2]=0;c[C+4>>2]=0;c[C+32>>2]=0;c[C+36>>2]=0;break}i=a[y+s>>0]|0;if(i<<24>>24>-1){q=B;k=j}else{q=A;i=a[m+s>>0]|0;k=w}k=c[k+(x+(i<<24>>24)<<2)>>2]|0;n=c[z+(k<<2)>>2]|0;C=g+28272+l|0;k=k*257&65535;b[C>>1]=k;b[C+8>>1]=k;if(!h){o=(H(f,p)|0)+(0-o&3)|0;r=b[q+(o<<2)>>1]|0;p=(H(n,r<<16>>16)|0)+128>>8;q=b[q+(o<<2)+2>>1]|0;o=(H(n,q<<16>>16)|0)+128>>8;C=g+27952+(l<<2)|0;n=o<<16|p&65535;c[C>>2]=n;c[C+4>>2]=n;c[C+32>>2]=n;c[C+36>>2]=n;C=g+28112+(l<<2)|0;r=o-(q&65535)<<16|p-(r&65535)&65535;c[C>>2]=r;c[C+4>>2]=r;c[C+32>>2]=r;c[C+36>>2]=r;break}l=o<<1;k=p<<1;i=0;while(1){if((i|0)==4)break b;G=(H((i>>1)+k|0,E)|0)+(i&1|l)|0;p=q+(G<<2)|0;C=d[150645+(i+r)>>0]|0;o=((H(n,b[p>>1]|0)|0)+128|0)>>>8;b[g+27952+(C<<2)>>1]=o;G=q+(G<<2)+2|0;I=((H(n,b[G>>1]|0)|0)+128|0)>>>8;b[g+27952+(C<<2)+2>>1]=I;c[g+28112+(C<<2)>>2]=I-(e[G>>1]|0)<<16|o-(e[p>>1]|0)&65535;i=i+1|0}}while(0);s=s+1|0}}else{h=i>>>6^2;t=(v|0)==0;s=p&65535;r=0;while(1){if((r|0)==4)break a;o=r&1;p=r>>1;i=g+28552+(r<<1)|0;if(!(!t?!(b[i>>1]&256):0)){b[i>>1]=s;q=d[150645+(r<<2)>>0]|0;I=g+28312+q|0;b[I>>1]=0;b[I+8>>1]=0;if(!(c[C+(p<<2)>>2]&7)){k=(H(p,l)|0)+o|0;i=a[y+k>>0]|0;if(i<<24>>24>-1){n=B;k=j}else{n=A;i=a[m+k>>0]|0;k=w}i=c[k+(x+(i<<24>>24)<<2)>>2]|0;I=c[z+(i<<2)>>2]|0;G=g+28272+q|0;i=i*257&65535;b[G>>1]=i;b[G+8>>1]=i;G=(0-o&3)+(H(p,E)|0)|0;i=(b[n+(G<<2)+2>>1]<<h|0)/2|0;G=b[n+(G<<2)>>1]|0;D=(H(I,G<<16>>16)|0)+128>>8;I=(H(i,I)|0)+128>>8;v=g+27952+(q<<2)|0;u=I<<16|D&65535;c[v>>2]=u;c[v+4>>2]=u;c[v+32>>2]=u;c[v+36>>2]=u;i=D-(G&65535)&65535|I-i<<16}else{i=g+28272+q|0;b[i>>1]=0;b[i+8>>1]=0;i=g+27952+(q<<2)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+32>>2]=0;c[i+36>>2]=0;i=0}I=g+28112+(q<<2)|0;c[I>>2]=i;c[I+4>>2]=i;c[I+32>>2]=i;c[I+36>>2]=i}r=r+1|0}}while(0);Ec=F;return}function Xj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[b+36>>2]|0;f=c[e+636>>2]|0;if(c[(c[a+4>>2]|0)+696>>2]&1|0){a=c[a+27008>>2]<<4>>f;d=d<<4>>f;Zh(e+4|0,(d|0)<(a|0)?d:a+-1|0,(f|0?(c[b+24>>2]|0)!=1:0)&1)}return}function Yj(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Zj(a){a=a|0;return c[a+8>>2]|0}function _j(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=$j(d,32)|0;Ec=b;return a|0}function $j(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Jj(a,b)|0;break}else{b=b+-16|0;c=(Jj(a,16)|0)<<b;a=c|(Jj(a,b)|0);break}else a=0;while(0);return a|0}function ak(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;l=Ec;Ec=Ec+32|0;h=l;i=c[a+4>>2]|0;j=c[a+24316>>2]|0;b=d[(qg(c[i+112>>2]|0)|0)+6>>0]|0;g=c[a+26380>>2]|0;n=(g|0)!=3;p=n&1;o=f<<p;f=e<<p;e=(c[i+96>>2]|0)-f|0;e=(o|0)>(e|0)?e:o;if(!((n?(c[a+26384>>2]|0)!=0:0)?!(c[i+240>>2]&2|0):0))k=4;if((k|0)==4?(m=c[i+116>>2]|0,m|0):0){c[h>>2]=H(c[j+32>>2]|0,f)|0;b=H(c[j+36>>2]|0,f>>b)|0;c[h+8>>2]=b;c[h+4>>2]=b;b=3;while(1){if((b|0)==8)break;c[h+(b<<2)>>2]=0;b=b+1|0}Xc[m&63](i,j,h,f,g,e)}Ec=l;return}function bk(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<<b;b=c[a>>2]<<b;c[a>>2]=b;if(!(b&65535))ck(a);return}function ck(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);if(e>>>0<(c[a+20>>2]|0)>>>0)c[b>>2]=e+2;return}function dk(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,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,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;ha=Ec;Ec=Ec+48|0;X=ha+20|0;V=ha;ga=ha+8|0;$=g+21788|0;k=c[$>>2]|0;Z=g+21792|0;o=c[Z>>2]|0;Y=g+21796|0;l=c[Y>>2]|0;aa=c[(c[f+24364>>2]|0)+(l<<2)>>2]|0;n=f+25976|0;U=g+848|0;if(!(c[U>>2]|0))ea=(c[(c[f+28216>>2]|0)+16>>2]|0)!=0;else ea=0;i=f+24316|0;fa=f+25664|0;m=g+21772|0;j=f+12|0;h=0;while(1){if((h|0)==3)break;W=c[fa>>2]|0;ca=c[m>>2]|0;T=(c[(c[i>>2]|0)+(h<<2)>>2]|0)+((H(ca,o)|0)+(k<<W)<<4)|0;c[ga+(h<<2)>>2]=T;W=T+(H(c[$>>2]<<2&12,ca)|0)+(64<<W)|0;Uc[c[j>>2]&1023](W,ca,4);h=h+1|0}p=g+23412|0;a[(c[f+26388>>2]|0)+l>>0]=c[p>>2];W=g+21828|0;h=c[m>>2]|0;a:do if(c[W>>2]|0){m=h<<1;c[g+21784>>2]=m;c[g+21780>>2]=m;n=f+26168|0;b:do if(o&1|0){i=H(h,-15)|0;h=0;while(1){if((h|0)==3)break b;ca=ga+(h<<2)|0;c[ca>>2]=(c[ca>>2]|0)+i;h=h+1|0}}while(0);if(!(c[f+26376>>2]|0))ca=m;else{j=(aa&8|0)==0;i=0;while(1){if(i>>>0>=(c[p>>2]|0)>>>0){ca=m;break a}c:do if(12288<<(i<<1)&aa|0){if(j)h=0;else{T=g+28272+(i*40|0)+12|0;ca=H((a[T>>0]|0)+16^c[Z>>2]&1,16843009)|0;c[T>>2]=ca;c[g+28272+(i*40|0)+20>>2]=ca;c[g+28272+(i*40|0)+28>>2]=ca;c[g+28272+(i*40|0)+36>>2]=ca;break}while(1){if((h|0)>=16)break c;k=(d[150645+h>>0]|0)+(g+28272+(i*40|0))|0;l=a[k>>0]|0;if(l<<24>>24>-1){ca=(c[Z>>2]&1^(l<<24>>24)+16)*257&65535;b[k>>1]=ca;b[k+8>>1]=ca}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21784>>2]=h;c[g+21780>>2]=h;ca=h}while(0);d:do if(!(aa&4)){e:do if(aa&7){T=g+868|0;i=c[T>>2]|0;f:do if(i|0){j=c[ga>>2]|0;k=c[ga+4>>2]|0;l=c[ga+8>>2]|0;y=c[fa>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[Z>>2]&1)if(h){h=1;break}else break f;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){s=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[Y>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;u=c[$>>2]|0}else{u=c[$>>2]|0;s=(u|0)>0;i=(c[Z>>2]|0)>((c[W>>2]|0)!=0|0)&1}w=0-(ca+1+y)|0;q=j+w|0;v=k+w|0;w=l+w|0;x=g+27796+(h<<2)|0;t=c[x>>2]|0;r=u+-1|0;k=t+(u*96|0)|0;if(i|0){l=(y|0)==0;do if(s){h=(8<<y)+(t+(r*96|0))|0;R=h;Q=c[R>>2]|0;R=c[R+4>>2]|0;i=q+(-7<<y)|0;O=i;P=c[O+4>>2]|0;S=h;c[S>>2]=c[O>>2];c[S+4>>2]=P;S=i;c[S>>2]=Q;c[S+4>>2]=R;if(l){h=k;i=q+1|0;o=0;j=c[h>>2]|0;h=c[h+4>>2]|0;l=1;break}else{R=h+8|0;l=R;j=c[l>>2]|0;l=c[l+4>>2]|0;h=i+8|0;S=h;ba=c[S+4>>2]|0;i=R;c[i>>2]=c[S>>2];c[i+4>>2]=ba;c[h>>2]=j;c[h+4>>2]=l;h=k;l=1<<y;i=q+l|0;j=c[h>>2]|0;h=c[h+4>>2]|0;ba=56;break}}else{h=k;j=c[h>>2]|0;h=c[h+4>>2]|0;m=1<<y;i=q+m|0;if(l){o=0;l=m}else{l=m;ba=56}}while(0);if((ba|0)==56){ba=i;o=c[ba+4>>2]|0;c[k>>2]=c[ba>>2];c[k+4>>2]=o;k=i;c[k>>2]=j;c[k+4>>2]=h;k=t+(u*96|0)+8|0;h=k;i=q+l+8|0;o=1;j=c[h>>2]|0;h=c[h+4>>2]|0}m=i;R=c[m+4>>2]|0;S=k;c[S>>2]=c[m>>2];c[S+4>>2]=R;S=i;c[S>>2]=j;c[S+4>>2]=h;h=(8<<y)+(t+(u*96|0))|0;S=h;R=c[S>>2]|0;S=c[S+4>>2]|0;m=9<<y;i=q+m|0;P=i;Q=c[P+4>>2]|0;ba=h;c[ba>>2]=c[P>>2];c[ba+4>>2]=Q;ba=i;c[ba>>2]=R;c[ba+4>>2]=S;if(o){Q=h+8|0;S=Q;R=c[S>>2]|0;S=c[S+4>>2]|0;ba=i+8|0;O=ba;P=c[O+4>>2]|0;c[Q>>2]=c[O>>2];c[Q+4>>2]=P;c[ba>>2]=R;c[ba+4>>2]=S}h=(c[$>>2]|0)+1|0;p=f+27012|0;if((h|0)<(c[p>>2]|0)?(ba=(c[x>>2]|0)+(h*96|0)|0,S=ba,R=c[S>>2]|0,S=c[S+4>>2]|0,z=q+(17<<y)|0,P=z,Q=c[P+4>>2]|0,ba,c[ba>>2]=c[P>>2],c[ba+4>>2]=Q,ba=z,c[ba>>2]=R,c[ba+4>>2]=S,o):0){Q=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+8|0;S=Q;R=c[S>>2]|0;S=c[S+4>>2]|0;ba=z+8|0;O=ba;P=c[O+4>>2]|0;c[Q>>2]=c[O>>2];c[Q+4>>2]=P;c[ba>>2]=R;c[ba+4>>2]=S}if(s){h=(24<<y)+(t+(r*96|0))|0;S=h;R=c[S>>2]|0;S=c[S+4>>2]|0;j=-7<<y;i=v+j|0;P=i;Q=c[P+4>>2]|0;ba=h;c[ba>>2]=c[P>>2];c[ba+4>>2]=Q;ba=i;c[ba>>2]=R;c[ba+4>>2]=S;if(o){Q=h+8|0;S=Q;R=c[S>>2]|0;S=c[S+4>>2]|0;ba=i+8|0;O=ba;P=c[O+4>>2]|0;c[Q>>2]=c[O>>2];c[Q+4>>2]=P;c[ba>>2]=R;c[ba+4>>2]=S}i=(40<<y)+(t+(r*96|0))|0;S=i;R=c[S>>2]|0;S=c[S+4>>2]|0;h=w+j|0;P=h;Q=c[P+4>>2]|0;ba=i;c[ba>>2]=c[P>>2];c[ba+4>>2]=Q;ba=h;c[ba>>2]=R;c[ba+4>>2]=S;if(o){Q=i+8|0;S=Q;R=c[S>>2]|0;S=c[S+4>>2]|0;ba=h+8|0;O=ba;P=c[O+4>>2]|0;c[Q>>2]=c[O>>2];c[Q+4>>2]=P;c[ba>>2]=R;c[ba+4>>2]=S;ba=68}else ba=69}else if(o)ba=68;else ba=69;if((ba|0)==68){i=(16<<y)+(t+(u*96|0))|0;S=i;R=c[S>>2]|0;S=c[S+4>>2]|0;h=v+l|0;P=h;Q=c[P+4>>2]|0;k=i;c[k>>2]=c[P>>2];c[k+4>>2]=Q;k=h;c[k>>2]=R;c[k+4>>2]=S;h=h+8|0;i=i+8|0;k=1}else if((ba|0)==69){h=v+l|0;i=(16<<y)+(t+(u*96|0))|0;k=0}R=i;Q=c[R>>2]|0;R=c[R+4>>2]|0;P=h;O=c[P+4>>2]|0;c[i>>2]=c[P>>2];c[i+4>>2]=O;c[h>>2]=Q;c[h+4>>2]=R;h=(24<<y)+(t+(u*96|0))|0;R=h;Q=c[R>>2]|0;R=c[R+4>>2]|0;i=v+m|0;O=i;P=c[O+4>>2]|0;S=h;c[S>>2]=c[O>>2];c[S+4>>2]=P;S=i;c[S>>2]=Q;c[S+4>>2]=R;if(k){h=h+8|0;R=h;Q=c[R>>2]|0;R=c[R+4>>2]|0;i=i+8|0;P=i;O=c[P+4>>2]|0;c[h>>2]=c[P>>2];c[h+4>>2]=O;c[i>>2]=Q;c[i+4>>2]=R;i=(32<<y)+(t+(u*96|0))|0;R=i;Q=c[R>>2]|0;R=c[R+4>>2]|0;h=w+l|0;O=h;P=c[O+4>>2]|0;S=i;c[S>>2]=c[O>>2];c[S+4>>2]=P;S=h;c[S>>2]=Q;c[S+4>>2]=R;h=h+8|0;i=i+8|0}else{h=w+l|0;i=(32<<y)+(t+(u*96|0))|0}R=i;Q=c[R>>2]|0;R=c[R+4>>2]|0;P=h;O=c[P+4>>2]|0;c[i>>2]=c[P>>2];c[i+4>>2]=O;i=h;c[i>>2]=Q;c[i+4>>2]=R;i=(40<<y)+(t+(u*96|0))|0;R=i;Q=c[R>>2]|0;R=c[R+4>>2]|0;h=w+m|0;O=h;P=c[O+4>>2]|0;S=i;c[S>>2]=c[O>>2];c[S+4>>2]=P;S=h;c[S>>2]=Q;c[S+4>>2]=R;if(k){P=i+8|0;R=P;Q=c[R>>2]|0;R=c[R+4>>2]|0;S=h+8|0;N=S;O=c[N+4>>2]|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;c[S>>2]=Q;c[S+4>>2]=R}h=(c[$>>2]|0)+1|0;if((h|0)<(c[p>>2]|0)){i=16<<y;S=(c[x>>2]|0)+(h*96|0)+i|0;R=S;Q=c[R>>2]|0;R=c[R+4>>2]|0;j=17<<y;h=v+j|0;O=h;P=c[O+4>>2]|0;c[S>>2]=c[O>>2];c[S+4>>2]=P;S=h;c[S>>2]=Q;c[S+4>>2]=R;if(k){P=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+i+8|0;R=P;Q=c[R>>2]|0;R=c[R+4>>2]|0;S=h+8|0;N=S;O=c[N+4>>2]|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;c[S>>2]=Q;c[S+4>>2]=R}i=32<<y;S=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+i|0;R=S;Q=c[R>>2]|0;R=c[R+4>>2]|0;h=w+j|0;O=h;P=c[O+4>>2]|0;c[S>>2]=c[O>>2];c[S+4>>2]=P;S=h;c[S>>2]=Q;c[S+4>>2]=R;if(k){P=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+i+8|0;R=P;Q=c[R>>2]|0;R=c[R+4>>2]|0;S=h+8|0;N=S;O=c[N+4>>2]|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;c[S>>2]=Q;c[S+4>>2]=R}}}}while(0);h=aa&1;x=(h|0)==0;C=g+21660|0;y=f+132|0;z=f+28212|0;R=aa&16777216;A=(R|0)==0;E=f+144|0;D=f+28216|0;F=g+21764|0;G=3-ca|0;I=3-((ca|0)/2|0)|0;J=0-ca|0;B=g+28560|0;K=f+108|0;L=f+100|0;S=f+140|0;N=f+25704|0;O=g+21756|0;P=f+112|0;Q=f+104|0;w=0;while(1){if((w|0)==3)break;v=c[fa>>2]|0;s=c[ga+(w<<2)>>2]|0;i=c[((w|0)==0?U:g+852+(w+-1<<2)|0)>>2]|0;t=w<<4;u=n+(t<<2)|0;g:do if(x){Tc[c[f+25888+(c[C>>2]<<2)>>2]&255](s,ca);if(a[(d[150645+(w+48)>>0]|0)+(g+27824)>>0]|0){if(!ea){Uc[c[y>>2]&1023](g+28560+(w<<8<<v<<1)|0,g+31632+(w<<6)|0,c[(c[(c[z>>2]|0)+173788+(w<<2)>>2]|0)+(i<<6)>>2]|0);break}m=g+28560+(w<<8<<v<<1)|0;j=(v|0)==0;k=g+31632+(w<<6)|0;i=0;while(1){if((i|0)==16)break g;l=d[139932+i>>0]|0;if(j)b[m+(l<<1)>>1]=b[g+31632+(w<<6)+(i<<1)>>1]|0;else c[m+(l<<2)>>2]=c[k+(i<<2)>>2];i=i+1|0}}}else{if(!A){if(ea){l=c[S>>2]|0;k=l}else{k=c[Q>>2]|0;l=c[P>>2]|0}o=w<<8;p=(v|0)==0;m=0;while(1){if((m|0)>=16)break g;q=s+(c[u+(m<<2)>>2]|0)|0;r=a[(d[150645+m>>0]|0)+(g+21664)>>0]|0;i=r<<24>>24;do if(ea?(r<<24>>24<2?(c[(c[D>>2]|0)+4>>2]|0)==244:0):0)if((c[N>>2]|0)>>>0<151){Uc[c[f+25932+(i<<2)>>2]&1023](q,g+28560+((m<<4)+o<<v<<1)|0,ca);break}else{Wc[c[f+25940+(i<<2)>>2]&127](q,g+28560+((m<<4)+o<<v<<1)|0,c[O>>2]<<m&32768,c[F>>2]<<m&16384,ca);break}else ba=94;while(0);h:do if((ba|0)==94){ba=0;r=a[(d[150645+(m+t)>>0]|0)+(g+27824)>>0]|0;Vc[c[f+25796+(i<<2)>>2]&255](q,c[O>>2]<<m&32768,c[F>>2]<<m&16384,ca);i:do switch(r<<24>>24){case 0:break h;case 1:{i=(m<<4)+o|0;if(p)j=e[g+28560+(i<<1)>>1]|0;else j=c[B+(i<<2)>>2]|0;if(!j)break i;Uc[l&1023](q,g+28560+(i<<v<<1)|0,ca);break h}default:i=(m<<4)+o|0}while(0);Uc[k&1023](q,g+28560+(i<<v<<1)|0,ca)}while(0);m=m+4|0}}if(ea){l=c[E>>2]|0;k=l}else{k=c[L>>2]|0;l=c[K>>2]|0}o=w<<8;p=(v|0)==0;q=4<<v;m=0;while(1){if((m|0)==16)break g;r=s+(c[u+(m<<2)>>2]|0)|0;i=a[(d[150645+m>>0]|0)+(g+21664)>>0]|0;j=i<<24>>24;if(ea?(i<<24>>24<2?(c[(c[D>>2]|0)+4>>2]|0)==244:0):0)Uc[c[f+25924+(j<<2)>>2]&1023](r,g+28560+((m<<4)+o<<v<<1)|0,ca);else{do if((i|4)<<24>>24==7){if(c[F>>2]&32768>>>m|0){i=r+q+J|0;break}if(p){c[X>>2]=H(d[r+G>>0]|0,16843009)|0;i=X;break}else{ja=nW(e[r+(I<<1)>>1]|0,0,65537,65537)|0;ia=M()|0;i=V;c[i>>2]=ja;c[i+4>>2]=ia;i=V;break}}else i=0;while(0);Uc[c[f+25736+(j<<2)>>2]&1023](r,i,ca);j:do switch(a[(d[150645+(m+t)>>0]|0)+(g+27824)>>0]|0){case 0:break;case 1:{i=(m<<4)+o|0;if(p)j=e[g+28560+(i<<1)>>1]|0;else j=c[B+(i<<2)>>2]|0;if(!j){ba=124;break j}Uc[l&1023](r,g+28560+(i<<v<<1)|0,ca);break}default:{i=(m<<4)+o|0;ba=124}}while(0);if((ba|0)==124){ba=0;Uc[k&1023](r,g+28560+(i<<v<<1)|0,ca)}}m=m+1|0}}while(0);w=w+1|0}j=c[T>>2]|0;if(j){k=c[ga>>2]|0;l=c[ga+4>>2]|0;o=c[ga+8>>2]|0;y=c[fa>>2]|0;do if(c[f+26376>>2]|0){i=(c[g+21832>>2]|0)!=0;if(c[Z>>2]&1)if(i){m=1;break}else{j=R;i=S;break e}else{m=(i^1)&1;break}}else m=1;while(0);if((j|0)==2){s=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[Y>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;u=c[$>>2]|0}else{u=c[$>>2]|0;s=(u|0)>0;i=(c[Z>>2]|0)>((c[W>>2]|0)!=0|0)&1}w=0-(ca+1+y)|0;q=k+w|0;v=l+w|0;w=o+w|0;x=g+27796+(m<<2)|0;t=c[x>>2]|0;r=u+-1|0;k=t+(u*96|0)|0;if(i){l=(y|0)==0;do if(s){i=(8<<y)+(t+(r*96|0))|0;ia=i;Z=c[ia>>2]|0;ia=c[ia+4>>2]|0;j=q+(-7<<y)|0;X=j;Y=c[X+4>>2]|0;ja=i;c[ja>>2]=c[X>>2];c[ja+4>>2]=Y;ja=j;c[ja>>2]=Z;c[ja+4>>2]=ia;if(l){i=k;j=q+1|0;k=c[i>>2]|0;i=c[i+4>>2]|0;m=1;l=0;break}else{Z=i+8|0;m=Z;ba=c[m>>2]|0;m=c[m+4>>2]|0;i=j+8|0;ia=i;ja=c[ia+4>>2]|0;j=Z;c[j>>2]=c[ia>>2];c[j+4>>2]=ja;c[i>>2]=ba;c[i+4>>2]=m;i=k;m=1<<y;j=q+m|0;k=c[i>>2]|0;i=c[i+4>>2]|0;ba=151;break}}else{i=k;k=c[i>>2]|0;i=c[i+4>>2]|0;m=1<<y;j=q+m|0;if(l)l=0;else ba=151}while(0);if((ba|0)==151){c[j>>2]=k;c[j+4>>2]=i;i=t+(u*96|0)+8|0;j=q+m+8|0;k=c[i>>2]|0;i=c[i+4>>2]|0;l=1}ia=j;c[ia>>2]=k;c[ia+4>>2]=i;i=(8<<y)+(t+(u*96|0))|0;ia=i;ba=c[ia>>2]|0;ia=c[ia+4>>2]|0;o=9<<y;j=q+o|0;Y=j;Z=c[Y+4>>2]|0;ja=i;c[ja>>2]=c[Y>>2];c[ja+4>>2]=Z;ja=j;c[ja>>2]=ba;c[ja+4>>2]=ia;if(l){Z=i+8|0;ia=Z;ba=c[ia>>2]|0;ia=c[ia+4>>2]|0;ja=j+8|0;X=ja;Y=c[X+4>>2]|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=Y;c[ja>>2]=ba;c[ja+4>>2]=ia}i=(c[$>>2]|0)+1|0;p=f+27012|0;if((i|0)<(c[p>>2]|0)?(ja=(c[x>>2]|0)+(i*96|0)|0,ia=ja,ba=c[ia>>2]|0,ia=c[ia+4>>2]|0,_=q+(17<<y)|0,Y=_,Z=c[Y+4>>2]|0,ja,c[ja>>2]=c[Y>>2],c[ja+4>>2]=Z,ja=_,c[ja>>2]=ba,c[ja+4>>2]=ia,l):0){X=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+8|0;ia=X;ba=c[ia>>2]|0;ia=c[ia+4>>2]|0;ja=_+8|0;Y=ja;Z=c[Y+4>>2]|0;_=X;c[_>>2]=c[Y>>2];c[_+4>>2]=Z;c[ja>>2]=ba;c[ja+4>>2]=ia}if(s){i=(24<<y)+(t+(r*96|0))|0;ia=i;ba=c[ia>>2]|0;ia=c[ia+4>>2]|0;k=-7<<y;j=v+k|0;Z=j;_=c[Z+4>>2]|0;ja=i;c[ja>>2]=c[Z>>2];c[ja+4>>2]=_;ja=j;c[ja>>2]=ba;c[ja+4>>2]=ia;if(l){_=i+8|0;ia=_;ba=c[ia>>2]|0;ia=c[ia+4>>2]|0;ja=j+8|0;Y=ja;Z=c[Y+4>>2]|0;c[_>>2]=c[Y>>2];c[_+4>>2]=Z;c[ja>>2]=ba;c[ja+4>>2]=ia}j=(40<<y)+(t+(r*96|0))|0;ia=j;ba=c[ia>>2]|0;ia=c[ia+4>>2]|0;i=w+k|0;Z=i;_=c[Z+4>>2]|0;ja=j;c[ja>>2]=c[Z>>2];c[ja+4>>2]=_;ja=i;c[ja>>2]=ba;c[ja+4>>2]=ia;if(l){_=j+8|0;ja=_;ia=c[ja>>2]|0;ja=c[ja+4>>2]|0;ba=i+8|0;Y=ba;Z=c[Y+4>>2]|0;c[_>>2]=c[Y>>2];c[_+4>>2]=Z;c[ba>>2]=ia;c[ba+4>>2]=ja;ba=163}else ba=164}else if(l)ba=163;else ba=164;if((ba|0)==163){j=(16<<y)+(t+(u*96|0))|0;ia=j;ja=c[ia+4>>2]|0;i=v+m|0;l=i;c[l>>2]=c[ia>>2];c[l+4>>2]=ja;i=i+8|0;j=j+8|0;l=1}else if((ba|0)==164){i=v+m|0;j=(16<<y)+(t+(u*96|0))|0;l=0}_=j;ia=c[_+4>>2]|0;c[i>>2]=c[_>>2];c[i+4>>2]=ia;i=(24<<y)+(t+(u*96|0))|0;ia=i;_=c[ia>>2]|0;ia=c[ia+4>>2]|0;j=v+o|0;Y=j;Z=c[Y+4>>2]|0;ja=i;c[ja>>2]=c[Y>>2];c[ja+4>>2]=Z;ja=j;c[ja>>2]=_;c[ja+4>>2]=ia;if(l){i=i+8|0;_=i;ia=c[_>>2]|0;_=c[_+4>>2]|0;j=j+8|0;Z=j;ja=c[Z+4>>2]|0;c[i>>2]=c[Z>>2];c[i+4>>2]=ja;c[j>>2]=ia;c[j+4>>2]=_;j=(32<<y)+(t+(u*96|0))|0;_=j;ia=c[_+4>>2]|0;i=w+m|0;ja=i;c[ja>>2]=c[_>>2];c[ja+4>>2]=ia;i=i+8|0;j=j+8|0}else{i=w+m|0;j=(32<<y)+(t+(u*96|0))|0}_=j;ia=c[_+4>>2]|0;j=i;c[j>>2]=c[_>>2];c[j+4>>2]=ia;j=(40<<y)+(t+(u*96|0))|0;ia=j;_=c[ia>>2]|0;ia=c[ia+4>>2]|0;i=w+o|0;Y=i;Z=c[Y+4>>2]|0;ja=j;c[ja>>2]=c[Y>>2];c[ja+4>>2]=Z;ja=i;c[ja>>2]=_;c[ja+4>>2]=ia;if(l){Z=j+8|0;ia=Z;_=c[ia>>2]|0;ia=c[ia+4>>2]|0;ja=i+8|0;X=ja;Y=c[X+4>>2]|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=Y;c[ja>>2]=_;c[ja+4>>2]=ia}i=(c[$>>2]|0)+1|0;if((i|0)<(c[p>>2]|0)){j=16<<y;ja=(c[x>>2]|0)+(i*96|0)+j|0;ia=ja;_=c[ia>>2]|0;ia=c[ia+4>>2]|0;k=17<<y;i=v+k|0;Y=i;Z=c[Y+4>>2]|0;c[ja>>2]=c[Y>>2];c[ja+4>>2]=Z;ja=i;c[ja>>2]=_;c[ja+4>>2]=ia;if(l){Z=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+j+8|0;ia=Z;_=c[ia>>2]|0;ia=c[ia+4>>2]|0;ja=i+8|0;X=ja;Y=c[X+4>>2]|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=Y;c[ja>>2]=_;c[ja+4>>2]=ia}j=32<<y;ja=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+j|0;ia=ja;_=c[ia>>2]|0;ia=c[ia+4>>2]|0;i=w+k|0;Y=i;Z=c[Y+4>>2]|0;c[ja>>2]=c[Y>>2];c[ja+4>>2]=Z;ja=i;c[ja>>2]=_;c[ja+4>>2]=ia;if(l){Z=(c[x>>2]|0)+(((c[$>>2]|0)+1|0)*96|0)+j+8|0;ja=Z;ia=c[ja>>2]|0;ja=c[ja+4>>2]|0;j=i+8|0;_=j;$=c[_+4>>2]|0;i=Z;c[i>>2]=c[_>>2];c[i+4>>2]=$;c[j>>2]=ia;c[j+4>>2]=ja;j=R;i=S}else{j=R;i=S}}else{j=R;i=S}}else{j=R;i=S}}else{j=R;i=S}}else{ok(f,g,c[ga>>2]|0,c[ga+4>>2]|0,c[ga+8>>2]|0,f+184|0,f+152|0,f+440|0,f+168|0,f+16|0,f+32|0);j=aa&16777216;E=f+144|0;i=f+140|0;D=f+28216|0;C=g+21660|0;B=g+28560|0;h=aa&1}while(0);A=(h|0)==0;x=(aa&2|0)==0;y=g+21856|0;w=(j|0)!=0;z=w?4:1;w=w?i:E;o=(j|0)==0;p=f+116|0;q=f+120|0;r=f+128|0;m=0;while(1){if((m|0)==3)break d;s=c[fa>>2]|0;t=c[ga+(m<<2)>>2]|0;u=m<<4;v=n+(u<<2)|0;k:do if(A){if(x){if(!(c[y>>2]&15))break;if(!ea)if(o){Wc[c[p>>2]&127](t,v,g+28560+(m<<8<<s<<1)|0,ca,(m*40|0)+(g+27824)|0);break}else{Wc[c[q>>2]&127](t,v,g+28560+(m<<8<<s<<1)|0,ca,(m*40|0)+(g+27824)|0);break}i=c[w>>2]|0;j=m<<8;h=0;while(1){if((h|0)>=16)break k;if(a[(d[150645+(h+u)>>0]|0)+(g+27824)>>0]|0)Uc[i&1023](t+(c[v+(h<<2)>>2]|0)|0,g+28560+((h<<4)+j<<s<<1)|0,ca);h=h+z|0}}if(!ea){Wc[c[r>>2]&127](t,v,g+28560+(m<<8<<s<<1)|0,ca,(m*40|0)+(g+27824)|0);break}if((c[(c[D>>2]|0)+4>>2]|0)==244?(da=c[C>>2]|0,(da+-1|0)>>>0<2):0){Vc[c[f+25960+(da<<2)>>2]&255](t,v,g+28560+(m<<8<<s<<1)|0,ca);break}j=m<<8;k=(s|0)==0;h=0;while(1){if((h|0)==16)break k;l=(h<<4)+j|0;if(!(a[(d[150645+(h+u)>>0]|0)+(g+27824)>>0]|0)){if(k)i=e[g+28560+(l<<1)>>1]|0;else i=c[B+(l<<2)>>2]|0;if(i|0)ba=191}else ba=191;if((ba|0)==191){ba=0;Uc[c[E>>2]&1023](t+(c[v+(h<<2)>>2]|0)|0,g+28560+(l<<s<<1)|0,ca)}h=h+1|0}}while(0);m=m+1|0}}else{if(!(c[fa>>2]|0)){j=g+27780|0;i=0;while(1){if((i|0)==3)break d;k=ga+(i<<2)|0;l=i<<8;h=0;while(1){if((h|0)==16)break;m=(c[k>>2]|0)+(H(h,ca)|0)|0;n=(c[j>>2]|0)+l+(h<<4)|0;o=m+16|0;do{a[m>>0]=a[n>>0]|0;m=m+1|0;n=n+1|0}while((m|0)<(o|0));h=h+1|0}i=i+1|0}}m=c[(c[f+28216>>2]|0)+1184>>2]|0;fk(X,c[g+27780>>2]|0,m*768|0);j=0;while(1){if((j|0)==3)break;k=ga+(j<<2)|0;i=0;while(1){if((i|0)==16)break;l=(c[k>>2]|0)+(H(i,ca)|0)|0;h=0;while(1){if((h|0)==16)break;b[l+(h<<1)>>1]=gk(X,m)|0;h=h+1|0}i=i+1|0}j=j+1|0}}while(0);Ec=ha;return}function ek(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,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,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;Y=Ec;Ec=Ec+32|0;X=Y+8|0;A=Y;F=g+21788|0;i=c[F>>2]|0;D=g+21792|0;k=c[D>>2]|0;C=g+21796|0;j=c[C>>2]|0;I=c[(c[f+24364>>2]|0)+(j<<2)>>2]|0;y=g+848|0;S=f+28216|0;h=c[S>>2]|0;if(!(c[y>>2]|0))P=(c[h+16>>2]|0)!=0;else P=0;t=16>>>(c[f+25680>>2]|0);T=(c[h+12>>2]|0)==2;Q=c[f+24316>>2]|0;V=f+25664|0;R=c[V>>2]|0;B=i<<R;W=g+21772|0;r=c[W>>2]|0;l=(c[Q>>2]|0)+((H(r,k)|0)+B<<4)|0;B=B<<3;h=g+21776|0;m=H(H(t,k)|0,c[h>>2]|0)|0;o=(c[Q+4>>2]|0)+B+m|0;m=(c[Q+8>>2]|0)+B+m|0;B=f+12|0;i=l+(H(i<<2&12,r)|0)+(64<<R)|0;Uc[c[B>>2]&1023](i,r,4);r=o+(H(c[F>>2]&7,c[h>>2]|0)|0)|0;Uc[c[B>>2]&1023](r+(64<<c[V>>2])|0,m-o|0,2);r=g+23412|0;a[(c[f+26388>>2]|0)+j>>0]=c[r>>2];B=g+21828|0;i=c[W>>2]|0;a:do if(c[B>>2]|0){p=i<<1;c[g+21780>>2]=p;h=c[h>>2]|0;q=h<<1;c[g+21784>>2]=q;s=f+26168|0;if(!(k&1))n=l;else{W=H(1-t|0,h)|0;n=l+(H(i,-15)|0)|0;o=o+W|0;m=m+W|0}if(!(c[f+26376>>2]|0)){L=p;W=q;Q=s;K=n;R=m}else{j=(I&8|0)==0;i=0;while(1){if(i>>>0>=(c[r>>2]|0)>>>0){L=p;W=q;Q=s;K=n;R=m;break a}b:do if(12288<<(i<<1)&I|0){if(j)h=0;else{R=g+28272+(i*40|0)+12|0;W=H((a[R>>0]|0)+16^c[D>>2]&1,16843009)|0;c[R>>2]=W;c[g+28272+(i*40|0)+20>>2]=W;c[g+28272+(i*40|0)+28>>2]=W;c[g+28272+(i*40|0)+36>>2]=W;break}while(1){if((h|0)>=16)break b;k=(d[150645+h>>0]|0)+(g+28272+(i*40|0))|0;l=a[k>>0]|0;if(l<<24>>24>-1){W=(c[D>>2]&1^(l<<24>>24)+16)*257&65535;b[k>>1]=W;b[k+8>>1]=W}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21780>>2]=i;W=c[h>>2]|0;c[g+21784>>2]=W;L=i;Q=f+25976|0;K=l;R=m}while(0);c:do if(!(I&4)){G=(I&7|0)!=0;d:do if(G){z=g+868|0;i=c[z>>2]|0;e:do if(i|0){w=c[V>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[D>>2]&1)if(h){h=1;break}else break e;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){q=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[C>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;u=c[F>>2]|0}else{u=c[F>>2]|0;q=(u|0)>0;i=(c[D>>2]|0)>((c[B>>2]|0)!=0|0)&1}p=K+(0-(L+1+w))|0;v=0-(W+1+w)|0;s=o+v|0;v=R+v|0;n=g+27796+(h<<2)|0;t=c[n>>2]|0;r=u+-1|0;l=t+(u*96|0)|0;if(i|0){j=(w|0)==0;do if(q){h=(8<<w)+(t+(r*96|0))|0;k=h;Z=c[k>>2]|0;k=c[k+4>>2]|0;i=p+(-7<<w)|0;$=i;_=c[$+4>>2]|0;m=h;c[m>>2]=c[$>>2];c[m+4>>2]=_;m=i;c[m>>2]=Z;c[m+4>>2]=k;if(j){h=l;i=p+1|0;j=0;k=c[h>>2]|0;h=c[h+4>>2]|0;break}else{_=h+8|0;m=_;j=c[m>>2]|0;m=c[m+4>>2]|0;h=i+8|0;$=h;U=c[$+4>>2]|0;i=_;c[i>>2]=c[$>>2];c[i+4>>2]=U;c[h>>2]=j;c[h+4>>2]=m;h=l;m=1<<w;i=p+m|0;j=c[h>>2]|0;h=c[h+4>>2]|0;U=69;break}}else{h=l;k=c[h>>2]|0;h=c[h+4>>2]|0;m=1<<w;i=p+m|0;if(j)j=0;else{j=k;U=69}}while(0);if((U|0)==69){$=i;k=c[$+4>>2]|0;c[l>>2]=c[$>>2];c[l+4>>2]=k;l=i;c[l>>2]=j;c[l+4>>2]=h;l=t+(u*96|0)+8|0;h=l;i=p+m+8|0;j=1;k=c[h>>2]|0;h=c[h+4>>2]|0}m=i;Z=c[m+4>>2]|0;_=l;c[_>>2]=c[m>>2];c[_+4>>2]=Z;_=i;c[_>>2]=k;c[_+4>>2]=h;h=(8<<w)+(t+(u*96|0))|0;_=h;Z=c[_>>2]|0;_=c[_+4>>2]|0;i=p+(9<<w)|0;l=i;m=c[l+4>>2]|0;$=h;c[$>>2]=c[l>>2];c[$+4>>2]=m;$=i;c[$>>2]=Z;c[$+4>>2]=_;if(j){m=h+8|0;_=m;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=i+8|0;k=$;l=c[k+4>>2]|0;c[m>>2]=c[k>>2];c[m+4>>2]=l;c[$>>2]=Z;c[$+4>>2]=_}h=(c[F>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?($=(c[n>>2]|0)+(h*96|0)|0,_=$,Z=c[_>>2]|0,_=c[_+4>>2]|0,x=p+(17<<w)|0,m=x,p=c[m+4>>2]|0,$,c[$>>2]=c[m>>2],c[$+4>>2]=p,$=x,c[$>>2]=Z,c[$+4>>2]=_,j):0){m=(c[n>>2]|0)+(((c[F>>2]|0)+1|0)*96|0)+8|0;_=m;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=x+8|0;n=$;p=c[n+4>>2]|0;x=m;c[x>>2]=c[n>>2];c[x+4>>2]=p;c[$>>2]=Z;c[$+4>>2]=_}l=16<<w;if(q){h=t+(r*96|0)+l|0;_=h;Z=c[_>>2]|0;_=c[_+4>>2]|0;k=-7<<w;i=s+k|0;q=i;x=c[q+4>>2]|0;$=h;c[$>>2]=c[q>>2];c[$+4>>2]=x;$=i;c[$>>2]=Z;c[$+4>>2]=_;if(j){x=h+8|0;_=x;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=i+8|0;p=$;q=c[p+4>>2]|0;c[x>>2]=c[p>>2];c[x+4>>2]=q;c[$>>2]=Z;c[$+4>>2]=_}i=(24<<w)+(t+(r*96|0))|0;_=i;Z=c[_>>2]|0;_=c[_+4>>2]|0;h=v+k|0;r=h;x=c[r+4>>2]|0;$=i;c[$>>2]=c[r>>2];c[$+4>>2]=x;$=h;c[$>>2]=Z;c[$+4>>2]=_;if(j){Z=i+8|0;$=Z;_=c[$>>2]|0;$=c[$+4>>2]|0;j=h+8|0;r=j;x=c[r+4>>2]|0;c[Z>>2]=c[r>>2];c[Z+4>>2]=x;c[j>>2]=_;c[j+4>>2]=$;j=1}else j=0}i=t+(u*96|0)+l|0;_=i;Z=c[_>>2]|0;_=c[_+4>>2]|0;h=s+1+w|0;s=h;x=c[s+4>>2]|0;$=i;c[$>>2]=c[s>>2];c[$+4>>2]=x;$=h;c[$>>2]=Z;c[$+4>>2]=_;if(j){x=i+8|0;_=x;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=h+8|0;r=$;s=c[r+4>>2]|0;c[x>>2]=c[r>>2];c[x+4>>2]=s;c[$>>2]=Z;c[$+4>>2]=_}i=(24<<w)+(t+(u*96|0))|0;_=i;Z=c[_>>2]|0;_=c[_+4>>2]|0;h=v+1+w|0;w=h;x=c[w+4>>2]|0;$=i;c[$>>2]=c[w>>2];c[$+4>>2]=x;$=h;c[$>>2]=Z;c[$+4>>2]=_;if(j){x=i+8|0;_=x;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=h+8|0;v=$;w=c[v+4>>2]|0;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[$>>2]=Z;c[$+4>>2]=_}}}while(0);w=g+21656|0;Tc[c[f+25844+(c[w>>2]<<2)>>2]&255](o,W);Tc[c[f+25844+(c[w>>2]<<2)>>2]&255](R,W);w=c[V>>2]|0;h=c[y>>2]|0;f:do if(!(I&1)){Tc[c[f+25888+(c[g+21660>>2]<<2)>>2]&255](K,L);if(a[g+27824>>0]|0){if(!P){Uc[c[f+132>>2]&1023](g+28560|0,g+31632|0,c[(c[(c[f+28212>>2]|0)+173788>>2]|0)+(h<<6)>>2]|0);break}l=g+28560|0;i=(w|0)==0;j=g+31632|0;h=0;while(1){if((h|0)==16)break f;k=d[139932+h>>0]|0;if(i)b[g+28560+(k<<1)>>1]=b[g+31632+(h<<1)>>1]|0;else c[l+(k<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}}}else{if(I&16777216|0){if(P){k=c[f+140>>2]|0;j=k}else{j=c[f+104>>2]|0;k=c[f+112>>2]|0}m=f+25704|0;n=g+21756|0;p=g+21764|0;q=(w|0)==0;r=g+28560|0;l=0;while(1){if((l|0)>=16)break f;s=K+(c[Q+(l<<2)>>2]|0)|0;h=d[150645+l>>0]|0;$=a[g+21664+h>>0]|0;i=$<<24>>24;do if(P?($<<24>>24<2?(c[(c[S>>2]|0)+4>>2]|0)==244:0):0)if((c[m>>2]|0)>>>0<151){Uc[c[f+25932+(i<<2)>>2]&1023](s,g+28560+(l<<4<<w<<1)|0,L);break}else{Wc[c[f+25940+(i<<2)>>2]&127](s,g+28560+(l<<4<<w<<1)|0,c[n>>2]<<l&32768,c[p>>2]<<l&16384,L);break}else U=96;while(0);g:do if((U|0)==96){U=0;$=a[g+27824+h>>0]|0;Vc[c[f+25796+(i<<2)>>2]&255](s,c[n>>2]<<l&32768,c[p>>2]<<l&16384,L);switch($<<24>>24){case 0:break g;case 1:{h=l<<4;if(q)i=e[g+28560+(h<<1)>>1]|0;else i=c[r+(h<<2)>>2]|0;if(i){Uc[k&1023](s,g+28560+(h<<w<<1)|0,L);break g}break}default:h=l<<4}Uc[j&1023](s,g+28560+(h<<w<<1)|0,L)}while(0);l=l+4|0}}if(P){l=c[f+144>>2]|0;k=l}else{k=c[f+100>>2]|0;l=c[f+108>>2]|0}n=g+21764|0;p=(w|0)==0;q=3-L|0;r=3-((L|0)/2|0)|0;s=4<<w;t=0-L|0;u=g+28560|0;m=0;while(1){if((m|0)==16)break f;v=K+(c[Q+(m<<2)>>2]|0)|0;i=d[150645+m>>0]|0;h=a[g+21664+i>>0]|0;j=h<<24>>24;if(P?(h<<24>>24<2?(c[(c[S>>2]|0)+4>>2]|0)==244:0):0)Uc[c[f+25924+(j<<2)>>2]&1023](v,g+28560+(m<<4<<w<<1)|0,L);else{do if((h|4)<<24>>24==7){if(c[n>>2]&32768>>>m|0){h=v+s+t|0;break}if(p){c[X>>2]=H(d[v+q>>0]|0,16843009)|0;h=X;break}else{_=nW(e[v+(r<<1)>>1]|0,0,65537,65537)|0;$=M()|0;h=A;c[h>>2]=_;c[h+4>>2]=$;h=A;break}}else h=0;while(0);Uc[c[f+25736+(j<<2)>>2]&1023](v,h,L);switch(a[g+27824+i>>0]|0){case 0:break;case 1:{h=m<<4;if(p)i=e[g+28560+(h<<1)>>1]|0;else i=c[u+(h<<2)>>2]|0;if(!i)U=126;else Uc[l&1023](v,g+28560+(h<<w<<1)|0,L);break}default:{h=m<<4;U=126}}if((U|0)==126){U=0;Uc[k&1023](v,g+28560+(h<<w<<1)|0,L)}}m=m+1|0}}while(0);i=c[z>>2]|0;if(i|0){v=c[V>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[D>>2]&1)if(h){j=1;break}else break d;else{j=(h^1)&1;break}}else j=1;while(0);if((i|0)==2){p=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[C>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);h=c[g+21732>>2]|0;t=c[F>>2]|0}else{t=c[F>>2]|0;p=(t|0)>0;h=(c[D>>2]|0)>((c[B>>2]|0)!=0|0)&1}n=K+(0-(L+1+v))|0;u=0-(W+1+v)|0;r=o+u|0;u=R+u|0;m=g+27796+(j<<2)|0;s=c[m>>2]|0;q=t+-1|0;j=s+(t*96|0)|0;if(h|0){l=(v|0)==0;do if(p){h=(8<<v)+(s+(q*96|0))|0;_=h;Z=c[_>>2]|0;_=c[_+4>>2]|0;i=n+(-7<<v)|0;C=i;D=c[C+4>>2]|0;$=h;c[$>>2]=c[C>>2];c[$+4>>2]=D;$=i;c[$>>2]=Z;c[$+4>>2]=_;if(l){h=j;k=n+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=0;break}else{U=h+8|0;k=U;h=c[k>>2]|0;k=c[k+4>>2]|0;i=i+8|0;_=i;$=c[_+4>>2]|0;c[U>>2]=c[_>>2];c[U+4>>2]=$;c[i>>2]=h;c[i+4>>2]=k;i=j;k=1<<v;j=n+k|0;h=c[i+4>>2]|0;i=c[i>>2]|0;U=152;break}}else{h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;k=1<<v;j=n+k|0;if(l){k=j;j=0}else U=152}while(0);if((U|0)==152){c[j>>2]=i;c[j+4>>2]=h;h=s+(t*96|0)+8|0;k=n+k+8|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=1}_=k;c[_>>2]=i;c[_+4>>2]=h;h=(8<<v)+(s+(t*96|0))|0;_=h;Z=c[_>>2]|0;_=c[_+4>>2]|0;i=n+(9<<v)|0;C=i;D=c[C+4>>2]|0;$=h;c[$>>2]=c[C>>2];c[$+4>>2]=D;$=i;c[$>>2]=Z;c[$+4>>2]=_;if(j){D=h+8|0;_=D;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=i+8|0;B=$;C=c[B+4>>2]|0;c[D>>2]=c[B>>2];c[D+4>>2]=C;c[$>>2]=Z;c[$+4>>2]=_}h=(c[F>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?($=(c[m>>2]|0)+(h*96|0)|0,_=$,Z=c[_>>2]|0,_=c[_+4>>2]|0,E=n+(17<<v)|0,C=E,D=c[C+4>>2]|0,$,c[$>>2]=c[C>>2],c[$+4>>2]=D,$=E,c[$>>2]=Z,c[$+4>>2]=_,j):0){F=(c[m>>2]|0)+(((c[F>>2]|0)+1|0)*96|0)+8|0;_=F;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=E+8|0;D=$;E=c[D+4>>2]|0;c[F>>2]=c[D>>2];c[F+4>>2]=E;c[$>>2]=Z;c[$+4>>2]=_}l=16<<v;if(p){h=s+(q*96|0)+l|0;_=h;Z=c[_>>2]|0;_=c[_+4>>2]|0;k=-7<<v;i=r+k|0;E=i;F=c[E+4>>2]|0;$=h;c[$>>2]=c[E>>2];c[$+4>>2]=F;$=i;c[$>>2]=Z;c[$+4>>2]=_;if(j){F=h+8|0;_=F;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=i+8|0;D=$;E=c[D+4>>2]|0;c[F>>2]=c[D>>2];c[F+4>>2]=E;c[$>>2]=Z;c[$+4>>2]=_}i=(24<<v)+(s+(q*96|0))|0;_=i;Z=c[_>>2]|0;_=c[_+4>>2]|0;h=u+k|0;E=h;F=c[E+4>>2]|0;$=i;c[$>>2]=c[E>>2];c[$+4>>2]=F;$=h;c[$>>2]=Z;c[$+4>>2]=_;if(j){Z=i+8|0;$=Z;_=c[$>>2]|0;$=c[$+4>>2]|0;j=h+8|0;E=j;F=c[E+4>>2]|0;c[Z>>2]=c[E>>2];c[Z+4>>2]=F;c[j>>2]=_;c[j+4>>2]=$;j=1}else j=0}i=s+(t*96|0)+l|0;_=i;Z=c[_>>2]|0;_=c[_+4>>2]|0;h=r+1+v|0;E=h;F=c[E+4>>2]|0;$=i;c[$>>2]=c[E>>2];c[$+4>>2]=F;$=h;c[$>>2]=Z;c[$+4>>2]=_;if(j){F=i+8|0;_=F;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=h+8|0;D=$;E=c[D+4>>2]|0;c[F>>2]=c[D>>2];c[F+4>>2]=E;c[$>>2]=Z;c[$+4>>2]=_}i=(24<<v)+(s+(t*96|0))|0;_=i;Z=c[_>>2]|0;_=c[_+4>>2]|0;h=u+1+v|0;E=h;F=c[E+4>>2]|0;$=i;c[$>>2]=c[E>>2];c[$+4>>2]=F;$=h;c[$>>2]=Z;c[$+4>>2]=_;if(j){F=i+8|0;_=F;Z=c[_>>2]|0;_=c[_+4>>2]|0;$=h+8|0;D=$;E=c[D+4>>2]|0;c[F>>2]=c[D>>2];c[F+4>>2]=E;c[$>>2]=Z;c[$+4>>2]=_}}}}else{h=f+184|0;i=f+152|0;j=f+440|0;k=f+168|0;l=f+16|0;m=f+32|0;if(T){hk(f,g,K,o,R,h,i,j,k,l,m);break}else{ik(f,g,K,o,R,h,i,j,k,l,m);break}}while(0);n=c[V>>2]|0;h:do if(!(I&1)){if(!(I&2)){if(!(c[g+21856>>2]&15))break;h=I&16777216;if(!P)if(!h){Wc[c[f+116>>2]&127](K,Q,g+28560|0,L,g+27824|0);break}else{Wc[c[f+120>>2]&127](K,Q,g+28560|0,L,g+27824|0);break}j=(h|0)!=0;i=j?4:1;j=c[(j?f+140|0:f+144|0)>>2]|0;h=0;while(1){if((h|0)>=16)break h;if(a[(d[150645+h>>0]|0)+(g+27824)>>0]|0)Uc[j&1023](K+(c[Q+(h<<2)>>2]|0)|0,g+28560+(h<<4<<n<<1)|0,L);h=h+i|0}}if(!P){Wc[c[f+128>>2]&127](K,Q,g+28560|0,L,g+27824|0);break}if((c[(c[S>>2]|0)+4>>2]|0)==244?(J=c[g+21660>>2]|0,(J+-1|0)>>>0<2):0){Vc[c[f+25960+(J<<2)>>2]&255](K,Q,g+28560|0,L);break}j=(n|0)==0;k=g+28560|0;l=f+144|0;i=0;while(1){if((i|0)==16)break h;m=i<<4;if(!(a[(d[150645+i>>0]|0)+(g+27824)>>0]|0)){if(j)h=e[g+28560+(m<<1)>>1]|0;else h=c[k+(m<<2)>>2]|0;if(h|0)U=183}else U=183;if((U|0)==183){U=0;Uc[c[l>>2]&1023](K+(c[Q+(i<<2)>>2]|0)|0,g+28560+(m<<n<<1)|0,L)}i=i+1|0}}while(0);if(c[g+21856>>2]&48|0){c[X>>2]=o;h=X+4|0;c[h>>2]=R;i:do if(P){if((G?(c[(c[S>>2]|0)+4>>2]|0)==244:0)?(N=g+21656|0,O=c[N>>2]|0,(O+-1|0)>>>0<2):0){Vc[c[f+25948+(O<<2)>>2]&255](o,Q+64|0,g+28560+(256<<c[V>>2]<<1)|0,W);Vc[c[f+25948+(c[N>>2]<<2)>>2]&255](c[h>>2]|0,Q+128|0,g+28560+(512<<c[V>>2]<<1)|0,W);break}p=c[f+144>>2]|0;q=g+28560|0;o=1;while(1){if((o|0)==3)break i;j=o<<4;m=j|4;r=X+(o+-1<<2)|0;i=j;while(1){if((i|0)>=(m|0))break;k=c[V>>2]|0;l=i<<4;if(!(a[(d[150645+i>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(l<<1)>>1]|0;else h=c[q+(l<<2)>>2]|0;if(h|0)U=211}else U=211;if((U|0)==211){U=0;Uc[p&1023]((c[r>>2]|0)+(c[Q+(i<<2)>>2]|0)|0,g+28560+(l<<k<<1)|0,W)}i=i+1|0}j:do if(T){n=j|8;i=m;while(1){if((i|0)>=(n|0))break j;j=i+4|0;k=c[V>>2]|0;l=i<<4;if(!(a[(d[150645+j>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(l<<1)>>1]|0;else h=c[q+(l<<2)>>2]|0;if(h|0)U=221}else U=221;if((U|0)==221){U=0;Uc[p&1023]((c[r>>2]|0)+(c[Q+(j<<2)>>2]|0)|0,g+28560+(l<<k<<1)|0,W)}i=i+1|0}}while(0);o=o+1|0}}else{h=c[g+852>>2]|0;if(T){i=(c[g+856>>2]|0)+3|0;h=h+3|0}else i=c[g+856>>2]|0;if(a[g+27864>>0]|0)Tc[c[f+136>>2]&255](g+28560+(256<<c[V>>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((G?1:4)<<2)>>2]|0)+(h<<6)>>2]|0);if(a[g+27904>>0]|0)Tc[c[f+136>>2]&255](g+28560+(512<<c[V>>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((G?2:5)<<2)>>2]|0)+(i<<6)>>2]|0);Wc[c[f+124>>2]&127](X,Q,g+28560|0,W,g+27824|0)}while(0)}}else{h=c[S>>2]|0;m=c[h+1184>>2]|0;if(!(c[V>>2]|0)){i=g+27780|0;h=0;while(1){if((h|0)==16)break;j=K+(H(h,L)|0)|0;k=(c[i>>2]|0)+(h<<4)|0;l=j+16|0;do{a[j>>0]=a[k>>0]|0;j=j+1|0;k=k+1|0}while((j|0)<(l|0));h=h+1|0}if(!(c[(c[S>>2]|0)+12>>2]|0)){i=1<<m+-1&255;h=0;while(1){if((h|0)==8)break c;$=H(h,W)|0;yW(o+$|0,i|0,8)|0;yW(R+$|0,i|0,8)|0;h=h+1|0}}else{i=(c[i>>2]|0)+256|0;j=i+(t<<3)|0;h=0;while(1){if((h|0)>=(t|0))break c;$=H(h,W)|0;_=h<<3;Z=i+_|0;V=Z;V=d[V>>0]|d[V+1>>0]<<8|d[V+2>>0]<<16|d[V+3>>0]<<24;Z=Z+4|0;Z=d[Z>>0]|d[Z+1>>0]<<8|d[Z+2>>0]<<16|d[Z+3>>0]<<24;X=o+$|0;g=X;a[g>>0]=V;a[g+1>>0]=V>>8;a[g+2>>0]=V>>16;a[g+3>>0]=V>>24;X=X+4|0;a[X>>0]=Z;a[X+1>>0]=Z>>8;a[X+2>>0]=Z>>16;a[X+3>>0]=Z>>24;_=j+_|0;X=_;X=d[X>>0]|d[X+1>>0]<<8|d[X+2>>0]<<16|d[X+3>>0]<<24;_=_+4|0;_=d[_>>0]|d[_+1>>0]<<8|d[_+2>>0]<<16|d[_+3>>0]<<24;$=R+$|0;Z=$;a[Z>>0]=X;a[Z+1>>0]=X>>8;a[Z+2>>0]=X>>16;a[Z+3>>0]=X>>24;$=$+4|0;a[$>>0]=_;a[$+1>>0]=_>>8;a[$+2>>0]=_>>16;a[$+3>>0]=_>>24;h=h+1|0}}}fk(X,c[g+27780>>2]|0,H(m,e[114516+(c[h+12>>2]<<1)>>1]|0)|0);i=0;while(1){if((i|0)==16)break;j=K+(H(i,L)|0)|0;h=0;while(1){if((h|0)==16)break;b[j+(h<<1)>>1]=gk(X,m)|0;h=h+1|0}i=i+1|0}k:do if(!(c[(c[S>>2]|0)+12>>2]|0)){j=1<<m+-1&65535;i=0;while(1){if((i|0)>=(t|0))break k;l=H(i,W)|0;k=o+l|0;l=R+l|0;h=0;while(1){if((h|0)==8)break;b[l+(h<<1)>>1]=j;b[k+(h<<1)>>1]=j;h=h+1|0}i=i+1|0}}else{i=0;while(1){if((i|0)>=(t|0)){i=0;break}j=o+(H(i,W)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=gk(X,m)|0;h=h+1|0}i=i+1|0}while(1){if((i|0)>=(t|0))break k;j=R+(H(i,W)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=gk(X,m)|0;h=h+1|0}i=i+1|0}}while(0)}while(0);Ec=Y;return}function fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return}function gk(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function hk(d,f,g,h,i,j,k,l,m,n,o){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;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;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)jk(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<<p)+(64<<p)+(H(C+(x<<2&12)|0,c[f+21780>>2]|0)|0)|0;z=d+12|0;Uc[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(H((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<<p)|0;C=c[f+23416+(B*40|0)+4>>2]|0;Uc[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;nk(d,f,0,0,8,8<<c[G>>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);nk(d,f,8,0,8,8<<c[G>>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;nk(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);nk(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;nk(d,f,n,0,4,4<<c[G>>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);nk(d,f,n|2,0,4,4<<c[G>>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;nk(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);nk(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;nk(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else nk(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else nk(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<<E)+(64<<E)+(H(i+(D<<2&12)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;Uc[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(H((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<<E)|0;i=c[f+25336+(h*40|0)+4>>2]|0;Uc[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function ik(d,f,g,h,i,j,k,l,m,n,o){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;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;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)jk(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<<p)+(64<<p)+(H(C+(x<<2&12)|0,c[f+21780>>2]|0)|0)|0;z=d+12|0;Uc[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(H((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<<p)|0;C=c[f+23416+(B*40|0)+4>>2]|0;Uc[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;kk(d,f,0,0,8,8<<c[G>>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);kk(d,f,8,0,8,8<<c[G>>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;kk(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);kk(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;kk(d,f,n,0,4,4<<c[G>>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);kk(d,f,n|2,0,4,4<<c[G>>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;kk(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);kk(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;kk(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else kk(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else kk(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<<E)+(64<<E)+(H(i+(D<<2&12)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;Uc[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(H((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<<E)|0;i=c[f+25336+(h*40|0)+4>>2]|0;Uc[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function jk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=Ec;Ec=Ec+208|0;s=u+8|0;t=u;f=c[(c[a+24364>>2]|0)+(c[d+21796>>2]<<2)>>2]|0;r=t;c[r>>2]=0;c[r+4>>2]=0;yW(s|0,-1,192)|0;a:do if(!(f&8)){if(f&16|0){lk(a,d,s,0,8,0,f&4096,f&16384,t);lk(a,d,s,8,8,8,f&8192,f&32768,t);break}if(f&32|0){lk(a,d,s,0,16,0,f&4096,f&16384,t);lk(a,d,s,4,16,0,f&8192,f&32768,t);break}g=0;while(1){if((g|0)==4)break a;f=e[d+28552+(g<<1)>>1]|0;h=g<<2;i=h&8;b:do if(!(f&8)){if(f&16|0){q=f&4096;r=f&16384;lk(a,d,s,h,4,i,q,r,t);lk(a,d,s,h|2,4,i|4,q,r,t);break}j=f&4096;k=f&16384;if(!(f&32))f=0;else{lk(a,d,s,h,8,i,j,k,t);lk(a,d,s,h|1,8,i,j,k,t);break}while(1){if((f|0)==4)break b;lk(a,d,s,f+h|0,4,f<<1&4|i,j,k,t);f=f+1|0}}else lk(a,d,s,h,8,i,f&4096,f&16384,t);while(0);g=g+1|0}}else lk(a,d,s,0,16,0,f&4096,f&16384,t);while(0);q=a+27008|0;r=d+21832|0;p=a+26380|0;f=c[d+23412>>2]|0;c:while(1){f=f+-1|0;if((f|0)<=-1)break;n=t+(f<<2)|0;m=0;while(1){if((m|0)>=48)continue c;h=c[n>>2]|0;if(!h)continue c;g=b[s+(f*96|0)+(m<<1)>>1]|0;do if(g<<16>>16>-1){o=(c[d+23416+(f*1920|0)+(m*40|0)+24>>2]|0)+-1|0;i=d+23416+(f*1920|0)+(m*40|0)+36|0;j=c[i>>2]|0;v=c[j+636>>2]|0;l=c[q>>2]<<4>>v;k=g<<16>>16<<c[r>>2];c[n>>2]=h+-1;a=(c[p>>2]|0)==3;g=(v|0)!=0;if(g&a){v=k>>1;a=v-(k&1^1)|0;o=l+-1|0;Zh(j+4|0,(a|0)<(l|0)?a:o,1);Zh((c[i>>2]|0)+4|0,(v|0)>(o|0)?o:v,0);break}h=j+4|0;if(!(g|a)){v=(k<<1)+o|0;Zh(h,(v|0)<(l|0)?v:l+-1|0,0);break}g=l+-1|0;g=(k|0)>(g|0)?g:k;if(a){Zh(h,g,0);break}else{Zh(h,g,o);break}}while(0);m=m+1|0}}Ec=u;return}function kk(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){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;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;N=f+880|0;x=c[N>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){V=d[150645+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+V>>0]|0)*384|0)+(a[f+28312+V>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=44;else{P=x;x=5}}else if((x|0)==1){y=f+21792|0;P=y;y=c[y>>2]|0;x=5}else x=44;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;L=c[u>>2]|0;K=c[u+4>>2]|0;O=c[e+25664>>2]|0;V=f+21780|0;s=c[V>>2]|0;S=k+((H(o<<1,s)|0)+(n<<1<<O))|0;T=i>>1;U=f+21784|0;x=c[U>>2]|0;Q=(H(x,o)|0)+(n<<O)|0;R=l+Q|0;Q=m+Q|0;t=(c[f+21788>>2]<<3)+n|0;M=f+21828|0;n=c[M>>2]|0;y=(y>>n<<3)+o|0;if(!(z&A)){B=A&1;z=d[150645+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;k=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;v=z<<2&12|k&3;x=k>>2;y=z>>2;t=(H(y,s)|0)+(x<<O)|0;t=(c[f+23416+(B*1920|0)+(o*40|0)>>2]|0)+t|0;m=c[e+27012>>2]|0;u=m<<4;A=c[e+27008>>2]<<4>>n;n=k&7;N=(n|0)==0?0:-3;g=(z&7|0)==0?0:-3;if((!((x|0)<(0-N|0)|(y|0)<(0-g|0))?(x+16|0)<=(N+u|0):0)?(y+16|0)<=(A+g|0):0){l=0;y=s}else{g=f+27792|0;l=2<<O;_c[c[e+8>>2]&3](c[g>>2]|0,t+(0-l)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+l+(y<<1)|0;l=1}x=p+(v<<2)|0;Uc[c[x>>2]&1023](S,t,y);if(!h)Uc[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[M>>2]|0){z=(1-(c[f+23416+(B*1920|0)+(o*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(A>>1|0)}k=k>>3;v=k<<O;y=z>>3;t=c[U>>2]|0;x=H(t,y)|0;u=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+v+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+v+x|0;v=f+27792|0;if(!l){y=z&7;Xc[q&63](R,u,t,T,n,y)}else{j=A>>1;h=m<<3;O=e+8|0;_c[c[O>>2]&3](c[v>>2]|0,u,t,t,9,9,k,y,h,j);e=z&7;Xc[q&63](R,c[v>>2]|0,c[U>>2]|0,T,n,e);P=c[U>>2]|0;_c[c[O>>2]&3](c[v>>2]|0,x,P,P,9,9,k,y,h,j);x=c[v>>2]|0;y=e}Xc[q&63](Q,x,c[U>>2]|0,T,n,y);Xc[D&63](S,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;i=f+892|0;Xc[C&63](R,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Xc[C&63](Q,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}I=c[f+27788>>2]|0;J=I+(16<<O)|0;G=I+(x<<4)|0;C=d[150645+g>>0]|0;w=a[f+28272+C>>0]|0;F=a[f+28312+C>>0]|0;o=t<<3;z=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;l=B+(b[f+27952+(C<<2)+2>>1]|0)|0;v=l<<2&12|z&3;x=z>>2;y=l>>2;t=(H(y,s)|0)+(x<<O)|0;t=(c[f+23416+(w*40|0)>>2]|0)+t|0;E=e+27012|0;m=c[E>>2]|0;u=m<<4;r=e+27008|0;A=c[r>>2]<<4>>n;n=z&7;D=(n|0)==0?0:-3;g=(l&7|0)==0?0:-3;if((!((x|0)<(0-D|0)|(y|0)<(0-g|0))?(x+16|0)<=(D+u|0):0)?(y+16|0)<=(A+g|0):0){k=0;y=s}else{g=f+27792|0;k=2<<O;_c[c[e+8>>2]&3](c[g>>2]|0,t+(0-k)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Uc[c[x>>2]&1023](S,t,y);D=(h|0)!=0;if(!D)Uc[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[M>>2]|0){l=(1-(c[f+23416+(w*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;h=l>>3;k=h>>>31|k|(h+8|0)>=(A>>1|0)}y=z>>3;s=y<<O;t=l>>3;u=c[U>>2]|0;x=H(u,t)|0;v=(c[f+23416+(w*40|0)+4>>2]|0)+s+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+s+x|0;s=f+27792|0;if(!k){y=l&7;Xc[q&63](R,v,u,T,n,y)}else{g=A>>1;m=m<<3;z=e+8|0;_c[c[z>>2]&3](c[s>>2]|0,v,u,u,9,9,y,t,m,g);h=l&7;Xc[q&63](R,c[s>>2]|0,c[U>>2]|0,T,n,h);A=c[U>>2]|0;_c[c[z>>2]&3](c[s>>2]|0,x,A,A,9,9,y,t,m,g);x=c[s>>2]|0;y=h}Xc[q&63](Q,x,c[U>>2]|0,T,n,y);A=o+(b[f+28112+(C<<2)>>1]|0)|0;l=B+(b[f+28112+(C<<2)+2>>1]|0)|0;z=l<<2&12|A&3;u=A>>2;v=l>>2;y=c[V>>2]|0;t=(H(v,y)|0)+(u<<O)|0;t=(c[f+25336+(F*40|0)>>2]|0)+t|0;n=c[E>>2]|0;x=n<<4;m=c[r>>2]<<4>>c[M>>2];o=A&7;g=(o|0)==0?0:-3;h=(l&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(v|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(v+16|0)<=(m+h|0):0)k=0;else{k=2<<O;_c[c[e+8>>2]&3](c[s>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,x,m);y=c[V>>2]|0;t=(c[s>>2]|0)+k+(y<<1)|0;k=1}x=p+(z<<2)|0;Uc[c[x>>2]&1023](G,t,y);if(!D)Uc[c[x>>2]&1023](G+j|0,t+j|0,c[V>>2]|0);if(c[M>>2]|0){l=(1-(c[f+25336+(F*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;j=l>>3;k=j>>>31|k|(j+8|0)>=(m>>1|0)}v=A>>3;j=v<<O;y=l>>3;t=c[U>>2]|0;x=H(t,y)|0;u=(c[f+25336+(F*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(F*40|0)+8>>2]|0)+j+x|0;if(!k){y=l&7;Xc[q&63](I,u,t,T,o,y)}else{j=m>>1;h=n<<3;g=e+8|0;_c[c[g>>2]&3](c[s>>2]|0,u,t,t,9,9,v,y,h,j);e=l&7;Xc[q&63](I,c[s>>2]|0,c[U>>2]|0,T,o,e);O=c[U>>2]|0;_c[c[g>>2]&3](c[s>>2]|0,x,O,O,9,9,v,y,h,j);x=c[s>>2]|0;y=e}Xc[q&63](J,x,c[U>>2]|0,T,o,y);if((c[N>>2]|0)==2){e=c[f+3216+(w*384|0)+(F<<3)+((c[P>>2]&1)<<2)>>2]|0;f=64-e|0;Yc[L&31](S,G,c[V>>2]|0,i,5,e,f,0);Yc[K&31](R,I,c[U>>2]|0,T,5,e,f,0);Yc[K&31](Q,J,c[U>>2]|0,T,5,e,f,0);break}else{Yc[L&31](S,G,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(F<<4)+8>>2]|0,(c[f+912+(F<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);i=f+892|0;Yc[K&31](R,I,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(F<<5)+16>>2]|0,(c[f+1680+(F<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Yc[K&31](Q,J,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(F<<5)+24>>2]|0,(c[f+1680+(F<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==44){K=c[e+25664>>2]|0;J=f+21780|0;y=c[J>>2]|0;I=k+((H(o<<1,y)|0)+(n<<1<<K))|0;N=f+21784|0;M=(H(c[N>>2]|0,o)|0)+(n<<K)|0;L=l+M|0;M=m+M|0;D=(c[f+21788>>2]<<3)+n|0;F=f+21792|0;G=f+21828|0;x=c[G>>2]|0;E=(c[F>>2]>>x<<3)+o|0;if(v){z=d[150645+g>>0]|0;n=a[f+28272+z>>0]|0;m=(D<<3)+(b[f+27952+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+27952+(z<<2)+2>>1]|0)|0;A=z<<2&12|m&3;u=m>>2;v=z>>2;t=(H(v,y)|0)+(u<<K)|0;t=(c[f+23416+(n*40|0)>>2]|0)+t|0;B=c[e+27012>>2]|0;k=B<<4;o=c[e+27008>>2]<<4>>x;C=m&7;U=(C|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((u|0)<(0-U|0)|(v|0)<(0-V|0))?(u+16|0)<=(U+k|0):0)?(v+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<<K;_c[c[e+8>>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,k,o);y=c[J>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(A<<2)|0;Uc[c[x>>2]&1023](I,t,y);if(!h)Uc[c[x>>2]&1023](I+j|0,t+j|0,c[J>>2]|0);if(c[G>>2]|0){z=(1-(c[f+23416+(n*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;V=z>>3;l=V>>>31|l|(V+8|0)>=(o>>1|0)}t=m>>3;y=t<<K;u=z>>3;v=c[N>>2]|0;x=H(v,u)|0;k=(c[f+23416+(n*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(n*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Xc[q&63](L,k,v,y,C,t)}else{T=o>>1;S=B<<3;Q=e+8|0;_c[c[Q>>2]&3](c[y>>2]|0,k,v,v,9,9,t,u,S,T);U=i>>1;V=z&7;Xc[q&63](L,c[y>>2]|0,c[N>>2]|0,U,C,V);R=c[N>>2]|0;_c[c[Q>>2]&3](c[y>>2]|0,x,R,R,9,9,t,u,S,T);x=c[y>>2]|0;y=U;t=V}Xc[q&63](M,x,c[N>>2]|0,y,C,t);q=s;p=r}if(w|0){z=d[150645+g>>0]|0;m=a[f+28312+z>>0]|0;A=(D<<3)+(b[f+28112+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+28112+(z<<2)+2>>1]|0)|0;k=z<<2&12|A&3;x=A>>2;u=z>>2;y=c[J>>2]|0;t=(H(u,y)|0)+(x<<K)|0;t=(c[f+25336+(m*40|0)>>2]|0)+t|0;n=c[e+27012>>2]|0;v=n<<4;o=c[e+27008>>2]<<4>>c[G>>2];B=A&7;U=(B|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((x|0)<(0-U|0)|(u|0)<(0-V|0))?(x+16|0)<=(v+U|0):0)?(u+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<<K;_c[c[e+8>>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,x+-2|0,u+-2|0,v,o);y=c[J>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(k<<2)|0;Uc[c[x>>2]&1023](I,t,y);if(!h)Uc[c[x>>2]&1023](I+j|0,t+j|0,c[J>>2]|0);if(c[G>>2]|0){z=(1-(c[f+25336+(m*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(o>>1|0)}k=A>>3;y=k<<K;t=z>>3;u=c[N>>2]|0;x=H(u,t)|0;v=(c[f+25336+(m*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(m*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Xc[q&63](L,v,u,y,B,t)}else{j=o>>1;h=n<<3;V=e+8|0;_c[c[V>>2]&3](c[y>>2]|0,v,u,u,9,9,k,t,h,j);f=i>>1;i=z&7;Xc[q&63](L,c[y>>2]|0,c[N>>2]|0,f,B,i);e=c[N>>2]|0;_c[c[V>>2]&3](c[y>>2]|0,x,e,e,9,9,k,t,h,j);x=c[y>>2]|0;y=f;t=i}Xc[q&63](M,x,c[N>>2]|0,y,B,t)}}while(0);return}function lk(e,f,g,h,i,j,k,l,m){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;o=(c[f+21792>>2]>>c[f+21828>>2]<<4)+j|0;do if(k|0){j=a[(d[150645+h>>0]|0)+(f+28272)>>0]|0;if((c[(c[(c[f+23416+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+23416+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=mk(f,h,i,o,0)|0;j=g+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0)c[m>>2]=(c[m>>2]|0)+1;k=k<<16>>16;b[j>>1]=(n|0)<(k|0)?k:n}while(0);do if(l|0){j=a[(d[150645+h>>0]|0)+(f+28312)>>0]|0;if((c[(c[(c[f+25336+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+25336+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=mk(f,h,i,o,1)|0;j=g+96+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0){m=m+4|0;c[m>>2]=(c[m>>2]|0)+1}m=k<<16>>16;b[j>>1]=(n|0)<(m|0)?m:n}while(0);return}function mk(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;g=b[a+27952+(g*160|0)+(d[150645+c>>0]<<2)+2>>1]|0;g=f+e+(g>>2)+(g&3|0?3:0)|0;return ((g|0)>0?g:0)|0}function nk(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){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;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;O=f+880|0;x=c[O>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){U=d[150645+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+U>>0]|0)*384|0)+(a[f+28312+U>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=38;else{N=x;x=5}}else if((x|0)==1){y=f+21792|0;N=y;y=c[y>>2]|0;x=5}else x=38;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;M=c[u>>2]|0;L=c[u+4>>2]|0;P=c[e+25664>>2]|0;Q=o<<1;U=f+21780|0;E=c[U>>2]|0;S=k+((H(E,Q)|0)+(n<<1<<P))|0;T=f+21784|0;x=c[T>>2]|0;Q=(H(x,Q)|0)+(n<<P)|0;R=l+Q|0;Q=m+Q|0;t=(c[f+21788>>2]<<3)+n|0;r=f+21828|0;l=c[r>>2]|0;y=(y>>l<<3)+o|0;if(!(z&A)){B=A&1;z=d[150645+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;v=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;u=z<<2&12|v&3;x=v>>2;A=z>>2;t=(H(A,E)|0)+(x<<P)|0;t=(c[f+23416+(B*1920|0)+(o*40|0)>>2]|0)+t|0;m=c[e+27012>>2]|0;y=m<<4;l=c[e+27008>>2]<<4>>l;n=v&7;N=(n|0)==0?0:-3;O=(z&7|0)==0?0:-3;if((!((x|0)<(0-N|0)|(A|0)<(0-O|0))?(x+16|0)<=(N+y|0):0)?(A+16|0)<=(l+O|0):0){k=0;y=E}else{O=f+27792|0;k=2<<P;_c[c[e+8>>2]&3](c[O>>2]|0,t+(0-k)+(0-(E<<1))|0,E,E,21,21,x+-2|0,A+-2|0,y,l);y=c[U>>2]|0;t=(c[O>>2]|0)+k+(y<<1)|0;k=1}x=p+(u<<2)|0;Uc[c[x>>2]&1023](S,t,y);if(!h)Uc[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);v=v>>3;u=v<<P;y=c[T>>2]|0;x=H(y,A)|0;t=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+u+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+u+x|0;u=f+27792|0;if(!k){e=z<<1&6;Xc[q&63](R,t,y,i,n,e);y=e}else{j=m<<3;h=e+8|0;_c[c[h>>2]&3](c[u>>2]|0,t,y,y,9,17,v,A,j,l);y=z<<1&6;Xc[q&63](R,c[u>>2]|0,c[T>>2]|0,i,n,y);e=c[T>>2]|0;_c[c[h>>2]&3](c[u>>2]|0,x,e,e,9,17,v,A,j,l);x=c[u>>2]|0}Xc[q&63](Q,x,c[T>>2]|0,i,n,y);Xc[D&63](S,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+892|0;Xc[C&63](R,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Xc[C&63](Q,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}J=c[f+27788>>2]|0;K=J+(16<<P)|0;I=J+(x<<4)|0;C=d[150645+g>>0]|0;w=a[f+28272+C>>0]|0;G=a[f+28312+C>>0]|0;o=t<<3;k=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;m=B+(b[f+27952+(C<<2)+2>>1]|0)|0;u=m<<2&12|k&3;x=k>>2;z=m>>2;y=(H(z,E)|0)+(x<<P)|0;y=(c[f+23416+(w*40|0)>>2]|0)+y|0;D=e+27012|0;A=c[D>>2]|0;t=A<<4;s=e+27008|0;l=c[s>>2]<<4>>l;n=k&7;F=(n|0)==0?0:-3;g=(m&7|0)==0?0:-3;if((!((x|0)<(0-F|0)|(z|0)<(0-g|0))?(x+16|0)<=(F+t|0):0)?(z+16|0)<=(l+g|0):0){t=y;v=0;y=E}else{g=f+27792|0;v=2<<P;_c[c[e+8>>2]&3](c[g>>2]|0,y+(0-v)+(0-(E<<1))|0,E,E,21,21,x+-2|0,z+-2|0,t,l);y=c[U>>2]|0;t=(c[g>>2]|0)+v+(y<<1)|0;v=1}x=p+(u<<2)|0;Uc[c[x>>2]&1023](S,t,y);E=(h|0)!=0;if(!E)Uc[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);y=k>>3;F=y<<P;t=c[T>>2]|0;x=H(t,z)|0;u=(c[f+23416+(w*40|0)+4>>2]|0)+F+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+F+x|0;F=f+27792|0;if(!v){y=m<<1&6;Xc[q&63](R,u,t,i,n,y)}else{g=A<<3;A=e+8|0;_c[c[A>>2]&3](c[F>>2]|0,u,t,t,9,17,y,z,g,l);h=m<<1&6;Xc[q&63](R,c[F>>2]|0,c[T>>2]|0,i,n,h);m=c[T>>2]|0;_c[c[A>>2]&3](c[F>>2]|0,x,m,m,9,17,y,z,g,l);x=c[F>>2]|0;y=h}Xc[q&63](Q,x,c[T>>2]|0,i,n,y);z=o+(b[f+28112+(C<<2)>>1]|0)|0;n=B+(b[f+28112+(C<<2)+2>>1]|0)|0;k=n<<2&12|z&3;u=z>>2;o=n>>2;y=c[U>>2]|0;t=(H(o,y)|0)+(u<<P)|0;t=(c[f+25336+(G*40|0)>>2]|0)+t|0;A=c[D>>2]|0;x=A<<4;l=c[s>>2]<<4>>c[r>>2];m=z&7;g=(m|0)==0?0:-3;h=(n&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(o|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(o+16|0)<=(l+h|0):0)v=0;else{v=2<<P;_c[c[e+8>>2]&3](c[F>>2]|0,t+(0-v)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,x,l);y=c[U>>2]|0;t=(c[F>>2]|0)+v+(y<<1)|0;v=1}x=p+(k<<2)|0;Uc[c[x>>2]&1023](I,t,y);if(!E)Uc[c[x>>2]&1023](I+j|0,t+j|0,c[U>>2]|0);u=z>>3;j=u<<P;y=c[T>>2]|0;x=H(y,o)|0;t=(c[f+25336+(G*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(G*40|0)+8>>2]|0)+j+x|0;if(!v){e=n<<1&6;Xc[q&63](J,t,y,i,m,e);y=e}else{j=A<<3;h=e+8|0;_c[c[h>>2]&3](c[F>>2]|0,t,y,y,9,17,u,o,j,l);y=n<<1&6;Xc[q&63](J,c[F>>2]|0,c[T>>2]|0,i,m,y);e=c[T>>2]|0;_c[c[h>>2]&3](c[F>>2]|0,x,e,e,9,17,u,o,j,l);x=c[F>>2]|0}Xc[q&63](K,x,c[T>>2]|0,i,m,y);if((c[O>>2]|0)==2){e=c[f+3216+(w*384|0)+(G<<3)+((c[N>>2]&1)<<2)>>2]|0;f=64-e|0;Yc[M&31](S,I,c[U>>2]|0,i,5,e,f,0);Yc[L&31](R,J,c[T>>2]|0,i,5,e,f,0);Yc[L&31](Q,K,c[T>>2]|0,i,5,e,f,0);break}else{Yc[M&31](S,I,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(G<<4)+8>>2]|0,(c[f+912+(G<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);e=f+892|0;Yc[L&31](R,J,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(G<<5)+16>>2]|0,(c[f+1680+(G<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Yc[L&31](Q,K,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(G<<5)+24>>2]|0,(c[f+1680+(G<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==38){J=c[e+25664>>2]|0;L=o<<1;I=f+21780|0;y=c[I>>2]|0;G=k+((H(y,L)|0)+(n<<1<<J))|0;M=f+21784|0;L=(H(c[M>>2]|0,L)|0)+(n<<J)|0;K=l+L|0;L=m+L|0;D=(c[f+21788>>2]<<3)+n|0;F=f+21828|0;x=c[F>>2]|0;E=(c[f+21792>>2]>>x<<3)+o|0;if(v){n=d[150645+g>>0]|0;A=a[f+28272+n>>0]|0;l=(D<<3)+(b[f+27952+(n<<2)>>1]|0)|0;n=(E<<3)+(b[f+27952+(n<<2)+2>>1]|0)|0;k=n<<2&12|l&3;u=l>>2;o=n>>2;t=(H(o,y)|0)+(u<<J)|0;t=(c[f+23416+(A*40|0)>>2]|0)+t|0;B=c[e+27012>>2]|0;v=B<<4;m=c[e+27008>>2]<<4>>x;C=l&7;T=(C|0)==0?0:-3;U=(n&7|0)==0?0:-3;if((!((u|0)<(0-T|0)|(o|0)<(0-U|0))?(u+16|0)<=(T+v|0):0)?(o+16|0)<=(m+U|0):0)z=0;else{U=f+27792|0;z=2<<J;_c[c[e+8>>2]&3](c[U>>2]|0,t+(0-z)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,v,m);y=c[I>>2]|0;t=(c[U>>2]|0)+z+(y<<1)|0;z=1}x=p+(k<<2)|0;Uc[c[x>>2]&1023](G,t,y);if(!h)Uc[c[x>>2]&1023](G+j|0,t+j|0,c[I>>2]|0);t=l>>3;y=t<<J;u=c[M>>2]|0;x=H(u,o)|0;v=(c[f+23416+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!z){y=n<<1&6;Xc[q&63](K,v,u,i,C,y)}else{T=B<<3;R=e+8|0;_c[c[R>>2]&3](c[y>>2]|0,v,u,u,9,17,t,o,T,m);U=n<<1&6;Xc[q&63](K,c[y>>2]|0,c[M>>2]|0,i,C,U);S=c[M>>2]|0;_c[c[R>>2]&3](c[y>>2]|0,x,S,S,9,17,t,o,T,m);x=c[y>>2]|0;y=U}Xc[q&63](L,x,c[M>>2]|0,i,C,y);q=s;p=r}if(w|0){m=d[150645+g>>0]|0;A=a[f+28312+m>>0]|0;l=(D<<3)+(b[f+28112+(m<<2)>>1]|0)|0;m=(E<<3)+(b[f+28112+(m<<2)+2>>1]|0)|0;v=m<<2&12|l&3;x=l>>2;n=m>>2;y=c[I>>2]|0;t=(H(n,y)|0)+(x<<J)|0;t=(c[f+25336+(A*40|0)>>2]|0)+t|0;o=c[e+27012>>2]|0;u=o<<4;z=c[e+27008>>2]<<4>>c[F>>2];B=l&7;T=(B|0)==0?0:-3;U=(m&7|0)==0?0:-3;if((!((x|0)<(0-T|0)|(n|0)<(0-U|0))?(x+16|0)<=(u+T|0):0)?(n+16|0)<=(z+U|0):0)k=0;else{U=f+27792|0;k=2<<J;_c[c[e+8>>2]&3](c[U>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,x+-2|0,n+-2|0,u,z);y=c[I>>2]|0;t=(c[U>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Uc[c[x>>2]&1023](G,t,y);if(!h)Uc[c[x>>2]&1023](G+j|0,t+j|0,c[I>>2]|0);v=l>>3;y=v<<J;t=c[M>>2]|0;x=H(t,n)|0;u=(c[f+25336+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=m<<1&6;Xc[q&63](K,u,t,i,B,y)}else{j=o<<3;h=e+8|0;_c[c[h>>2]&3](c[y>>2]|0,u,t,t,9,17,v,n,j,z);f=m<<1&6;Xc[q&63](K,c[y>>2]|0,c[M>>2]|0,i,B,f);e=c[M>>2]|0;_c[c[h>>2]&3](c[y>>2]|0,x,e,e,9,17,v,n,j,z);x=c[y>>2]|0;y=f}Xc[q&63](L,x,c[M>>2]|0,i,B,y)}}while(0);return}function ok(d,f,g,h,i,j,k,l,m,n,o){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;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;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)jk(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){A=q<<24>>24;B=c[f+21788>>2]|0;B=((B<<4|8)+(b[f+28e3>>1]>>2)<<p)+(64<<p)+(H((c[f+21792>>2]<<4|B<<2&12)+(b[f+28002>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;z=d+12|0;C=f+21772|0;Uc[c[z>>2]&1023]((c[f+23416+(A*40|0)>>2]|0)+B|0,c[C>>2]|0,4);Uc[c[z>>2]&1023]((c[f+23416+(A*40|0)+4>>2]|0)+B|0,c[C>>2]|0,4);Uc[c[z>>2]&1023]((c[f+23416+(A*40|0)+8>>2]|0)+B|0,c[C>>2]|0,4)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;pk(d,f,0,0,8,8<<c[G>>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);pk(d,f,8,0,8,8<<c[G>>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}A=f+21780|0;if(D&32|0){w=j+64|0;x=k+4|0;y=l+64|0;z=m+4|0;B=n+4|0;C=o+4|0;pk(d,f,0,0,16,c[A>>2]<<3,g,h,i,0,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&4096,D&16384);pk(d,f,4,0,16,c[A>>2]<<3,g,h,i,4,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&8192,D&32768);break}B=j+128|0;C=k+8|0;w=l+128|0;x=m+8|0;y=n+8|0;z=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;pk(d,f,n,0,4,4<<c[G>>2],g,h,i,o,j,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);pk(d,f,n|2,0,4,4<<c[G>>2],g,h,i,o,j|2,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;pk(d,f,n,0,8,c[A>>2]<<2,g,h,i,o,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);pk(d,f,n|1,0,8,c[A>>2]<<2,g,h,i,o|2,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;pk(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,l,q);p=p+1|0}}else pk(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else pk(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){G=F<<24>>24;h=c[f+21788>>2]|0;h=((h<<4|8)+(b[f+28160>>1]>>2)<<E)+(64<<E)+(H((c[f+21792>>2]<<4|h<<2&12)+(b[f+28162>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;i=f+21772|0;Uc[c[g>>2]&1023]((c[f+25336+(G*40|0)>>2]|0)+h|0,c[i>>2]|0,4);Uc[c[g>>2]&1023]((c[f+25336+(G*40|0)+4>>2]|0)+h|0,c[i>>2]|0,4);Uc[c[g>>2]&1023]((c[f+25336+(G*40|0)+8>>2]|0)+h|0,c[i>>2]|0,4)}return}function pk(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){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;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;L=f+880|0;q=c[L>>2]|0;x=(v|0)!=0;y=(w|0)!=0;if(y&(x&(q|0)==2)){Q=d[150645+g>>0]|0;q=f+21792|0;s=c[q>>2]|0;if((c[f+3216+((a[f+28272+Q>>0]|0)*384|0)+(a[f+28312+Q>>0]<<3)+((s&1)<<2)>>2]|0)==32)q=59;else{K=q;q=5}}else if((q|0)==1){s=f+21792|0;K=s;s=c[s>>2]|0;q=5}else q=59;do if((q|0)==5){z=c[t>>2]|0;J=c[u>>2]|0;M=c[e+25664>>2]|0;Q=f+21780|0;w=c[Q>>2]|0;N=(H(o<<1,w)|0)+(n<<1<<M)|0;P=k+N|0;O=l+N|0;N=m+N|0;t=(c[f+21788>>2]<<3)+n|0;B=f+21828|0;u=c[B>>2]|0;q=(s>>u<<3)+o|0;if(!(x&y)){o=y&1;L=d[150645+g>>0]|0;n=a[f+28272+(o*40|0)+L>>0]|0;K=(t<<3)+(b[f+27952+(o*160|0)+(L<<2)>>1]|0)|0;L=(q<<3)+(b[f+27952+(o*160|0)+(L<<2)+2>>1]|0)|0;t=L<<2&12|K&3;y=K>>2;l=L>>2;v=(H(l,w)|0)+(y<<M)|0;q=(c[f+23416+(o*1920|0)+(n*40|0)>>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>u;K=(K&7|0)==0?0:-3;L=(L&7|0)==0?0:-3;if((!((y|0)<(0-K|0)|(l|0)<(0-L|0))?(y+16|0)<=(K+m|0):0)?(l+16|0)<=(k+L|0):0){u=0;s=w}else{L=f+27792|0;u=2<<M;_c[c[e+8>>2]&3](c[L>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[L>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Uc[c[x>>2]&1023](P,q,s);p=(h|0)!=0;if(!p)Uc[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){L=f+27792|0;h=2<<M;s=c[Q>>2]|0;_c[c[e+8>>2]&3](c[L>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[L>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Uc[c[x>>2]&1023](O,q,s);if(!p)Uc[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+8>>2]|0)+v|0;if(t){L=f+27792|0;h=2<<M;s=c[Q>>2]|0;_c[c[e+8>>2]&3](c[L>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[L>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Uc[c[x>>2]&1023](N,q,s);if(!p)Uc[c[x>>2]&1023](N+j|0,q+j|0,c[Q>>2]|0);Xc[z&63](P,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(n<<4)+(o<<3)>>2]|0,c[f+912+(n<<4)+(o<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+21784|0;j=f+892|0;Xc[z&63](O,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)>>2]|0,c[f+1680+(n<<5)+(o<<4)+4>>2]|0);Xc[z&63](N,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)+8>>2]|0,c[f+1680+(n<<5)+(o<<4)+12>>2]|0);break}E=c[f+27788>>2]|0;F=E+(16<<M)|0;G=f+21784|0;I=E+(c[G>>2]<<4)|0;z=d[150645+g>>0]|0;C=a[f+28272+z>>0]|0;D=a[f+28312+z>>0]|0;o=t<<3;x=o+(b[f+27952+(z<<2)>>1]|0)|0;n=q<<3;g=n+(b[f+27952+(z<<2)+2>>1]|0)|0;t=g<<2&12|x&3;l=x>>2;m=g>>2;k=(H(m,w)|0)+(l<<M)|0;q=(c[f+23416+(C*40|0)>>2]|0)+k|0;A=e+27012|0;y=c[A>>2]<<4;r=e+27008|0;v=c[r>>2]<<4>>u;x=(x&7|0)==0?0:-3;g=(g&7|0)==0?0:-3;if((!((l|0)<(0-x|0)|(m|0)<(0-g|0))?(l+16|0)<=(x+y|0):0)?(m+16|0)<=(v+g|0):0){u=0;s=w}else{g=f+27792|0;u=2<<M;_c[c[e+8>>2]&3](c[g>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Uc[c[x>>2]&1023](P,q,s);w=(h|0)!=0;if(!w)Uc[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;_c[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Uc[c[x>>2]&1023](O,q,s);if(!w)Uc[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+8>>2]|0)+k|0;if(t){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;_c[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Uc[c[x>>2]&1023](N,q,s);if(!w)Uc[c[x>>2]&1023](N+j|0,q+j|0,c[Q>>2]|0);g=o+(b[f+28112+(z<<2)>>1]|0)|0;h=n+(b[f+28112+(z<<2)+2>>1]|0)|0;u=h<<2&12|g&3;y=g>>2;l=h>>2;q=c[Q>>2]|0;v=(H(l,q)|0)+(y<<M)|0;s=(c[f+25336+(D*40|0)>>2]|0)+v|0;k=c[A>>2]<<4;x=c[r>>2]<<4>>c[B>>2];g=(g&7|0)==0?0:-3;h=(h&7|0)==0?0:-3;if((!((y|0)<(0-g|0)|(l|0)<(0-h|0))?(y+16|0)<=(k+g|0):0)?(l+16|0)<=(x+h|0):0)t=0;else{h=f+27792|0;t=2<<M;_c[c[e+8>>2]&3](c[h>>2]|0,s+(0-t)+(0-(q<<1))|0,q,q,21,21,y+-2|0,l+-2|0,k,x);q=c[Q>>2]|0;s=(c[h>>2]|0)+t+(q<<1)|0;t=1}u=p+(u<<2)|0;Uc[c[u>>2]&1023](I,s,q);if(!w)Uc[c[u>>2]&1023](I+j|0,s+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+4>>2]|0)+v|0;t=(t|0)!=0;if(t){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;_c[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Uc[c[u>>2]&1023](E,q,s);if(!w)Uc[c[u>>2]&1023](E+j|0,q+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+8>>2]|0)+v|0;if(t){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;_c[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Uc[c[u>>2]&1023](F,q,s);if(!w)Uc[c[u>>2]&1023](F+j|0,q+j|0,c[Q>>2]|0);if((c[L>>2]|0)==2){f=c[f+3216+(C*384|0)+(D<<3)+((c[K>>2]&1)<<2)>>2]|0;j=64-f|0;Yc[J&31](P,I,c[Q>>2]|0,i,5,f,j,0);Yc[J&31](O,E,c[G>>2]|0,i,5,f,j,0);Yc[J&31](N,F,c[G>>2]|0,i,5,f,j,0);break}else{Yc[J&31](P,I,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(C<<4)>>2]|0,c[f+912+(D<<4)+8>>2]|0,(c[f+912+(D<<4)+12>>2]|0)+(c[f+912+(C<<4)+4>>2]|0)|0);j=f+892|0;Yc[J&31](O,E,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)>>2]|0,c[f+1680+(D<<5)+16>>2]|0,(c[f+1680+(D<<5)+20>>2]|0)+(c[f+1680+(C<<5)+4>>2]|0)|0);Yc[J&31](N,F,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)+8>>2]|0,c[f+1680+(D<<5)+24>>2]|0,(c[f+1680+(D<<5)+28>>2]|0)+(c[f+1680+(C<<5)+12>>2]|0)|0);break}}else if((q|0)==59){E=c[e+25664>>2]|0;F=f+21780|0;x=c[F>>2]|0;D=(H(o<<1,x)|0)+(n<<1<<E)|0;B=k+D|0;C=l+D|0;D=m+D|0;z=(c[f+21788>>2]<<3)+n|0;A=f+21828|0;s=c[A>>2]|0;o=(c[f+21792>>2]>>s<<3)+o|0;if(v){i=d[150645+g>>0]|0;v=a[f+28272+i>>0]|0;Q=(z<<3)+(b[f+27952+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+27952+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;l=Q>>2;m=i>>2;k=(H(m,x)|0)+(l<<E)|0;q=(c[f+23416+(v*40|0)>>2]|0)+k|0;n=c[e+27012>>2]<<4;y=c[e+27008>>2]<<4>>s;Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((l|0)<(0-Q|0)|(m|0)<(0-i|0))?(l+16|0)<=(Q+n|0):0)?(m+16|0)<=(y+i|0):0){u=0;s=x}else{i=f+27792|0;u=2<<E;_c[c[e+8>>2]&3](c[i>>2]|0,q+(0-u)+(0-(x<<1))|0,x,x,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Uc[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Uc[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){Q=f+27792|0;i=2<<E;s=c[F>>2]|0;_c[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Uc[c[x>>2]&1023](C,q,s);if(!p)Uc[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+8>>2]|0)+k|0;if(t){Q=f+27792|0;i=2<<E;s=c[F>>2]|0;_c[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Uc[c[x>>2]&1023](D,q,s);if(p)p=r;else{Uc[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0);p=r}}if(w|0){i=d[150645+g>>0]|0;n=a[f+28312+i>>0]|0;Q=(z<<3)+(b[f+28112+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+28112+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;y=Q>>2;l=i>>2;s=c[F>>2]|0;v=(H(l,s)|0)+(y<<E)|0;q=(c[f+25336+(n*40|0)>>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>c[A>>2];Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((y|0)<(0-Q|0)|(l|0)<(0-i|0))?(y+16|0)<=(m+Q|0):0)?(l+16|0)<=(k+i|0):0)u=0;else{i=f+27792|0;u=2<<E;_c[c[e+8>>2]&3](c[i>>2]|0,q+(0-u)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Uc[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Uc[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){i=f+27792|0;h=2<<E;s=c[F>>2]|0;_c[c[e+8>>2]&3](c[i>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+h+(s<<1)|0}else s=c[F>>2]|0;Uc[c[x>>2]&1023](C,q,s);if(!p)Uc[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+8>>2]|0)+v|0;if(t){h=f+27792|0;f=2<<E;s=c[F>>2]|0;_c[c[e+8>>2]&3](c[h>>2]|0,q+(0-f)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[h>>2]|0)+f+(s<<1)|0}else s=c[F>>2]|0;Uc[c[x>>2]&1023](D,q,s);if(!p)Uc[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0)}}while(0);return}function qk(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;do if(c[a+26376>>2]|0){j=c[a+27016>>2]|0;h=(H(j,f&-2)|0)+d|0;g=h+-1|0;i=(f&1|0)!=0;if(i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(g<<1)>>1]|0|0):0)g=((c[b+21828>>2]|0)==((c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>7&1|0)?j:0)+g|0;if(!(c[b+21828>>2]|0)){h=(H(j,f+-1|0)|0)+d|0;break}h=h-j|0;if(!i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(h<<1)>>1]|0|0):0)h=h-((c[(c[a+24364>>2]|0)+(h<<2)>>2]&128|0)==0?0:j)|0}else{h=c[b+21796>>2]|0;g=h+-1|0;h=h-(c[a+27016>>2]<<((c[a+26380>>2]|0)!=3&1))|0}while(0);i=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)==(e[i+(g<<1)>>1]|0|0))g=(c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>11&1^1;else g=0;if((d|0)==(e[i+(h<<1)>>1]|0|0))g=((c[(c[a+24364>>2]|0)+(h<<2)>>2]|0)>>>11&1^1)+g|0;return uk(b+32856|0,((c[b+840>>2]|0)==3?g+13|0:g)+11+(b+32904)|0)|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=(c[b+21796>>2]|0)-(c[a+27016>>2]<<1)|0;return uk(b+32856|0,b+32974+(((c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(d<<1)>>1]|0|0))+(c[b+21828>>2]&(c[b+21788>>2]|0)!=0))|0)|0}function sk(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=Ec;Ec=Ec+16|0;w=B+4|0;y=B;z=g+21796|0;A=c[z>>2]|0;c[y>>2]=0;h=(c[f+25972>>2]|0)+(A*48|0)|0;i=h+48|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));v=g+21828|0;if(!(c[v>>2]|0))h=0;else{c[y>>2]=128;h=128}x=g+840|0;if((c[x>>2]|0)==3){h=h|63744;c[y>>2]=h;if(c[g+21844>>2]|0){tk(f,g,h);wk(f,g,h)}Nj(f,g,y);k=c[y>>2]|2048;c[y>>2]=k;h=f+26368|0}else{k=h|14344;c[y>>2]=k;tk(f,g,k);p=c[f+24384>>2]|0;q=c[f+24352>>2]|0;h=f+26368|0;r=c[h>>2]|0;c[g+28284>>2]=0;c[g+28292>>2]=0;c[g+28300>>2]=0;c[g+28308>>2]=0;l=c[g+21740>>2]|0;if(!(l&12288))if(!l)i=0;else{u=181916;s=-1;m=16}else{i=c[g+21720>>2]|0;u=d[c[g+21748>>2]>>0]|0;j=a[p+((u&254)+(i<<2|1))>>0]|0;i=q+((H(r,u)|0)+3+(c[(c[f+26360>>2]|0)+(i<<2)>>2]|0)<<2)|0;do if(c[f+26376>>2]|0){l=(l&128|0)!=0;if(!(c[v>>2]|0)){if(!l)break;i=c[i>>2]|0;c[w>>2]=i;b[w+2>>1]=i>>16<<1;i=w;j=j>>1;break}else{if(l)break;i=c[i>>2]|0;c[w>>2]=i;b[w+2>>1]=((i>>>16&65535)<<16>>16)/2|0;i=w;j=j<<1;break}}while(0);if(!(c[i>>2]|j))i=0;else{u=i;s=j;m=16}}do if((m|0)==16){l=c[g+21732>>2]|0;if(!(l&12288))if(!l){i=0;break}else{n=-1;o=181916}else{j=c[g+21712>>2]|0;i=a[p+(j<<2|2)>>0]|0;j=q+((c[(c[f+26360>>2]|0)+(j<<2)>>2]|0)+(r*3|0)<<2)|0;do if(c[f+26376>>2]|0){l=(l&128|0)!=0;if(!(c[v>>2]|0)){if(!l)break;o=c[j>>2]|0;j=w+4|0;c[j>>2]=o;b[w+6>>1]=o>>16<<1;i=i>>1;break}else{if(l)break;o=c[j>>2]|0;j=w+4|0;c[j>>2]=o;b[w+6>>1]=((o>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}while(0);if(!(c[j>>2]|i)){i=0;break}else{n=i;o=j}}j=c[g+21736>>2]|0;do if(!(j&12288))if((j|0)==0?(t=c[g+21728>>2]|0,(t&12288|0)!=0):0){l=c[g+21708>>2]|0;m=c[g+21752>>2]|0;i=a[p+(l<<2|m&2|1)>>0]|0;l=q+(r+3+(m&r<<1)+(c[(c[f+26360>>2]|0)+(l<<2)>>2]|0)<<2)|0;if(c[f+26376>>2]|0){j=(t&128|0)!=0;if(!(c[v>>2]|0)){if(!j){m=l;break}v=c[l>>2]|0;m=w+8|0;c[m>>2]=v;b[w+10>>1]=v>>16<<1;i=i>>1;break}else{if(j){m=l;break}v=c[l>>2]|0;m=w+8|0;c[m>>2]=v;b[w+10>>1]=((v>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else m=l}else{m=181916;i=-1}else{l=c[g+21716>>2]|0;i=a[p+(l<<2|2)>>0]|0;l=q+((c[(c[f+26360>>2]|0)+(l<<2)>>2]|0)+(r*3|0)<<2)|0;if(c[f+26376>>2]|0){j=(j&128|0)!=0;if(!(c[v>>2]|0)){if(!j){m=l;break}v=c[l>>2]|0;m=w+8|0;c[m>>2]=v;b[w+10>>1]=v>>16<<1;i=i>>1;break}else{if(j){m=l;break}v=c[l>>2]|0;m=w+8|0;c[m>>2]=v;b[w+10>>1]=((v>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else m=l}while(0);l=(n|0)!=0;j=(s|0)!=0;i=((l^1)&1)+((j^1)&1)+((i|0)==0&1)|0;do if(i>>>0<=1){if((i|0)!=1){i=Ck(b[u>>1]|0,b[o>>1]|0,b[m>>1]|0)|0;j=Ck(b[u+2>>1]|0,b[o+2>>1]|0,b[m+2>>1]|0)|0;break}if(!j){j=b[u+2>>1]|0;i=b[u>>1]|0;break}if(l){j=b[m+2>>1]|0;i=b[m>>1]|0;break}else{j=b[o+2>>1]|0;i=b[o>>1]|0;break}}else{i=Ck(b[u>>1]|0,b[o>>1]|0,b[m>>1]|0)|0;j=Ck(b[u+2>>1]|0,b[o+2>>1]|0,b[m+2>>1]|0)|0}while(0);i=j<<16|i&65535}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i}h=c[h>>2]|0;i=(H(h<<2,c[g+21792>>2]|0)|0)+(c[g+21788>>2]<<2)|0;j=c[z>>2]<<2;if(!(k&12288)){w=(c[f+24384>>2]|0)+j|0;b[w>>1]=-1;b[w+2>>1]=-1}else{w=(c[f+24352>>2]|0)+(i<<2)|0;u=g+28e3|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=g+28008|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28032|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28040|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=g+28064|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28072|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28096|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=g+28104|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[z>>2]<<2)>>2]<<1)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;w=(c[f+24384>>2]|0)+j|0;a[w>>0]=a[g+28284>>0]|0;a[w+1>>0]=a[g+28286>>0]|0;a[w+2>>0]=a[g+28300>>0]|0;a[w+3>>0]=a[g+28302>>0]|0}if(k&49152|0){w=(c[f+24356>>2]|0)+(i<<2)|0;u=g+28160|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=g+28168|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28192|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28200|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=g+28224|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28232|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28256|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=g+28264|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[z>>2]<<2)>>2]<<1)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;w=(c[f+24388>>2]|0)+j|0;a[w>>0]=a[g+28324>>0]|0;a[w+1>>0]=a[g+28326>>0]|0;a[w+2>>0]=a[g+28340>>0]|0;a[w+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[x>>2]|0)!=3)){z=(c[f+26408>>2]|0)+(c[z>>2]<<2)|0;a[z+1>>0]=(e[g+28554>>1]|0)>>>1;a[z+2>>0]=(e[g+28556>>1]|0)>>>1;a[z+3>>0]=(e[g+28558>>1]|0)>>>1}c[(c[f+24364>>2]|0)+(A<<2)>>2]=c[y>>2];a[(c[f+24340>>2]|0)+A>>0]=c[g+848>>2];b[(c[f+26372>>2]|0)+(A<<1)>>1]=c[g+832>>2];c[g+21648>>2]=1;Ec=B;return}
function lj(e,f,g,h,i,j,k,l,m){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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=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;sa=Ec;Ec=Ec+80|0;qa=sa+64|0;ma=sa;o=c[e+96>>2]|0;do if((o|0)!=0?(n=c[e+28212>>2]|0,(c[n+724>>2]|0)==0):0){da=c[e+25664>>2]|0;pa=c[e+28216>>2]|0;u=c[pa+12>>2]|0;ja=(u|0)!=0;la=(u|0)==3;u=(u|0)==2;V=c[f+21796>>2]|0;h=c[f+21740>>2]|0;ha=c[f+21732>>2]|0;pa=(H(c[pa+1184>>2]|0,-6)|0)+48|0;oa=(c[f+872>>2]|0)+52+pa|0;pa=(c[f+876>>2]|0)+52+pa|0;r=c[(c[e+24364>>2]|0)+(V<<2)>>2]|0;ia=c[e+24340>>2]|0;ka=a[ia+V>>0]|0;V=a[ia+(V+-1)>>0]|0;ia=a[ia+(c[f+21712>>2]|0)>>0]|0;na=d[n+548+ka>>0]|0;ga=ka+1|0;t=ga+V>>1;ga=ga+ia>>1;g=na+1|0;V=(g+(d[n+548+V>>0]|0)|0)>>>1;ia=(g+(d[n+548+ia>>0]|0)|0)>>>1;if(r&7|0){I=(c[e+26380>>2]|0)!=3?114524:114532;q=(h|0)!=0;if(q?(p=t+oa|0,s=t+pa|0,!(p>>>0<68|s>>>0<68)):0)Vc[c[e+64>>2]&255](i,l,d[138056+p>>0]|0,d[137900+s>>0]|0);f=(r&16777216|0)!=0;o=oa+ka|0;p=138056+o|0;n=pa+ka|0;h=137900+n|0;n=o>>>0<68|n>>>0<68;if(f){if(!n){ma=d[h>>0]|0;ka=d[p>>0]|0;yW(qa|0,a[138212+(o<<2)+3>>0]|0,4)|0;Wc[c[e+52>>2]&127](i+(8<<da)|0,l,ka,ma,qa)}do if(ha|0?(v=ga+oa|0,w=d[138056+v>>0]|0,ma=ga+pa|0,x=d[137900+ma>>0]|0,!(v>>>0<68|ma>>>0<68)):0){g=b[I>>1]|0;if(g<<16>>16>3){Vc[c[e+60>>2]&255](i,l,w,x);break}else{a[qa>>0]=a[(g<<16>>16)+(138212+(v<<2))>>0]|0;a[qa+1>>0]=a[(b[I+2>>1]|0)+(138212+(v<<2))>>0]|0;a[qa+2>>0]=a[(b[I+4>>1]|0)+(138212+(v<<2))>>0]|0;a[qa+3>>0]=a[(b[I+6>>1]|0)+(138212+(v<<2))>>0]|0;Wc[c[e+48>>2]&127](i,l,w,x,qa);break}}while(0);if(!n){ma=d[h>>0]|0;ka=d[p>>0]|0;yW(qa|0,a[138212+(o<<2)+3>>0]|0,4)|0;Wc[c[e+48>>2]&127](i+(l<<3)|0,l,ka,ma,qa)}}else{if(!n){ma=d[h>>0]|0;ka=d[p>>0]|0;ea=a[138212+(o<<2)+3>>0]|0;fa=e+52|0;yW(qa|0,ea|0,4)|0;Wc[c[fa>>2]&127](i+(4<<da)|0,l,ka,ma,qa);yW(qa|0,ea|0,4)|0;Wc[c[fa>>2]&127](i+(8<<da)|0,l,ka,ma,qa);yW(qa|0,ea|0,4)|0;Wc[c[fa>>2]&127](i+(12<<da)|0,l,ka,ma,qa)}do if(ha|0?(y=ga+oa|0,z=d[138056+y>>0]|0,ma=ga+pa|0,A=d[137900+ma>>0]|0,!(y>>>0<68|ma>>>0<68)):0){g=b[I>>1]|0;if(g<<16>>16>3){Vc[c[e+60>>2]&255](i,l,z,A);break}else{a[qa>>0]=a[(g<<16>>16)+(138212+(y<<2))>>0]|0;a[qa+1>>0]=a[(b[I+2>>1]|0)+(138212+(y<<2))>>0]|0;a[qa+2>>0]=a[(b[I+4>>1]|0)+(138212+(y<<2))>>0]|0;a[qa+3>>0]=a[(b[I+6>>1]|0)+(138212+(y<<2))>>0]|0;Wc[c[e+48>>2]&127](i,l,z,A,qa);break}}while(0);if(!n){ma=d[h>>0]|0;ka=d[p>>0]|0;fa=a[138212+(o<<2)+3>>0]|0;ga=e+48|0;yW(qa|0,fa|0,4)|0;Wc[c[ga>>2]&127](i+(l<<2)|0,l,ka,ma,qa);yW(qa|0,fa|0,4)|0;Wc[c[ga>>2]&127](i+(l<<3)|0,l,ka,ma,qa);yW(qa|0,fa|0,4)|0;Wc[c[ga>>2]&127](i+(l*12|0)|0,l,ka,ma,qa)}}if(!ja)break;if(la){if(q?(B=V+oa|0,C=V+pa|0,!(B>>>0<68|C>>>0<68)):0){m=d[137900+C>>0]|0;ma=d[138056+B>>0]|0;la=e+64|0;Vc[c[la>>2]&255](j,l,ma,m);Vc[c[la>>2]&255](k,l,ma,m)}if(f){g=8<<da;f=oa+na|0;o=138056+f|0;n=pa+na|0;h=137900+n|0;n=f>>>0<68|n>>>0<68;if(!n){m=d[h>>0]|0;na=d[o>>0]|0;la=a[138212+(f<<2)+3>>0]|0;ma=e+52|0;yW(qa|0,la|0,4)|0;Wc[c[ma>>2]&127](j+g|0,l,na,m,qa);yW(qa|0,la|0,4)|0;Wc[c[ma>>2]&127](k+g|0,l,na,m,qa)}do if(ha|0?(J=ia+oa|0,K=d[138056+J>>0]|0,pa=ia+pa|0,L=d[137900+pa>>0]|0,!(J>>>0<68|pa>>>0<68)):0){g=b[I>>1]|0;if(g<<16>>16>3){pa=e+60|0;Vc[c[pa>>2]&255](j,l,K,L);Vc[c[pa>>2]&255](k,l,K,L);break}else{ka=a[(g<<16>>16)+(138212+(J<<2))>>0]|0;a[qa>>0]=ka;i=a[(b[I+2>>1]|0)+(138212+(J<<2))>>0]|0;la=qa+1|0;a[la>>0]=i;ma=a[(b[I+4>>1]|0)+(138212+(J<<2))>>0]|0;na=qa+2|0;a[na>>0]=ma;m=a[(b[I+6>>1]|0)+(138212+(J<<2))>>0]|0;oa=qa+3|0;a[oa>>0]=m;pa=e+48|0;Wc[c[pa>>2]&127](j,l,K,L,qa);a[qa>>0]=ka;a[la>>0]=i;a[na>>0]=ma;a[oa>>0]=m;Wc[c[pa>>2]&127](k,l,K,L,qa);break}}while(0);g=l<<3;if(n)break;pa=d[h>>0]|0;oa=d[o>>0]|0;m=a[138212+(f<<2)+3>>0]|0;e=e+48|0;yW(qa|0,m|0,4)|0;Wc[c[e>>2]&127](j+g|0,l,oa,pa,qa);yW(qa|0,m|0,4)|0;Wc[c[e>>2]&127](k+g|0,l,oa,pa,qa);break}else{g=4<<da;f=oa+na|0;o=138056+f|0;n=pa+na|0;h=137900+n|0;n=f>>>0<68|n>>>0<68;if(!n){m=d[h>>0]|0;na=d[o>>0]|0;i=a[138212+(f<<2)+3>>0]|0;la=e+52|0;yW(qa|0,i|0,4)|0;Wc[c[la>>2]&127](j+g|0,l,na,m,qa);yW(qa|0,i|0,4)|0;Wc[c[la>>2]&127](k+g|0,l,na,m,qa);ma=8<<da;yW(qa|0,i|0,4)|0;Wc[c[la>>2]&127](j+ma|0,l,na,m,qa);yW(qa|0,i|0,4)|0;Wc[c[la>>2]&127](k+ma|0,l,na,m,qa);ma=12<<da;yW(qa|0,i|0,4)|0;Wc[c[la>>2]&127](j+ma|0,l,na,m,qa);yW(qa|0,i|0,4)|0;Wc[c[la>>2]&127](k+ma|0,l,na,m,qa)}do if(ha|0?(M=ia+oa|0,N=d[138056+M>>0]|0,pa=ia+pa|0,O=d[137900+pa>>0]|0,!(M>>>0<68|pa>>>0<68)):0){g=b[I>>1]|0;if(g<<16>>16>3){pa=e+60|0;Vc[c[pa>>2]&255](j,l,N,O);Vc[c[pa>>2]&255](k,l,N,O);break}else{ka=a[(g<<16>>16)+(138212+(M<<2))>>0]|0;a[qa>>0]=ka;i=a[(b[I+2>>1]|0)+(138212+(M<<2))>>0]|0;la=qa+1|0;a[la>>0]=i;ma=a[(b[I+4>>1]|0)+(138212+(M<<2))>>0]|0;na=qa+2|0;a[na>>0]=ma;m=a[(b[I+6>>1]|0)+(138212+(M<<2))>>0]|0;oa=qa+3|0;a[oa>>0]=m;pa=e+48|0;Wc[c[pa>>2]&127](j,l,N,O,qa);a[qa>>0]=ka;a[la>>0]=i;a[na>>0]=ma;a[oa>>0]=m;Wc[c[pa>>2]&127](k,l,N,O,qa);break}}while(0);g=l<<2;if(n)break;pa=d[h>>0]|0;oa=d[o>>0]|0;na=a[138212+(f<<2)+3>>0]|0;m=e+48|0;yW(qa|0,na|0,4)|0;Wc[c[m>>2]&127](j+g|0,l,oa,pa,qa);yW(qa|0,na|0,4)|0;Wc[c[m>>2]&127](k+g|0,l,oa,pa,qa);e=l<<3;yW(qa|0,na|0,4)|0;Wc[c[m>>2]&127](j+e|0,l,oa,pa,qa);yW(qa|0,na|0,4)|0;Wc[c[m>>2]&127](k+e|0,l,oa,pa,qa);e=l*12|0;yW(qa|0,na|0,4)|0;Wc[c[m>>2]&127](j+e|0,l,oa,pa,qa);yW(qa|0,na|0,4)|0;Wc[c[m>>2]&127](k+e|0,l,oa,pa,qa);break}}if(u){if(q?(D=V+oa|0,E=V+pa|0,!(D>>>0<68|E>>>0<68)):0){l=d[137900+E>>0]|0;ma=d[138056+D>>0]|0;la=e+88|0;Vc[c[la>>2]&255](j,m,ma,l);Vc[c[la>>2]&255](k,m,ma,l)}g=4<<da;f=oa+na|0;o=138056+f|0;n=pa+na|0;h=137900+n|0;n=f>>>0<68|n>>>0<68;if(!n){l=d[h>>0]|0;na=d[o>>0]|0;la=(d[138212+(f<<2)+3>>0]|0)+1&255;ma=e+76|0;yW(qa|0,la|0,4)|0;Wc[c[ma>>2]&127](j+g|0,m,na,l,qa);yW(qa|0,la|0,4)|0;Wc[c[ma>>2]&127](k+g|0,m,na,l,qa)}do if(ha|0?(P=ia+oa|0,Q=d[138056+P>>0]|0,l=ia+pa|0,R=d[137900+l>>0]|0,!(P>>>0<68|l>>>0<68)):0){g=b[I>>1]|0;if(g<<16>>16>3){l=e+84|0;Vc[c[l>>2]&255](j,m,Q,R);Vc[c[l>>2]&255](k,m,Q,R);break}else{ka=(d[(g<<16>>16)+(138212+(P<<2))>>0]|0)+1&255;a[qa>>0]=ka;i=(d[(b[I+2>>1]|0)+(138212+(P<<2))>>0]|0)+1&255;la=qa+1|0;a[la>>0]=i;ma=(d[(b[I+4>>1]|0)+(138212+(P<<2))>>0]|0)+1&255;na=qa+2|0;a[na>>0]=ma;oa=(d[(b[I+6>>1]|0)+(138212+(P<<2))>>0]|0)+1&255;pa=qa+3|0;a[pa>>0]=oa;l=e+72|0;Wc[c[l>>2]&127](j,m,Q,R,qa);a[qa>>0]=ka;a[la>>0]=i;a[na>>0]=ma;a[pa>>0]=oa;Wc[c[l>>2]&127](k,m,Q,R,qa);break}}while(0);g=m<<2;if(n)break;l=d[h>>0]|0;pa=d[o>>0]|0;na=(d[138212+(f<<2)+3>>0]|0)+1&255;oa=e+72|0;yW(qa|0,na|0,4)|0;Wc[c[oa>>2]&127](j+g|0,m,pa,l,qa);yW(qa|0,na|0,4)|0;Wc[c[oa>>2]&127](k+g|0,m,pa,l,qa);e=m<<3;yW(qa|0,na|0,4)|0;Wc[c[oa>>2]&127](j+e|0,m,pa,l,qa);yW(qa|0,na|0,4)|0;Wc[c[oa>>2]&127](k+e|0,m,pa,l,qa);e=m*12|0;yW(qa|0,na|0,4)|0;Wc[c[oa>>2]&127](j+e|0,m,pa,l,qa);yW(qa|0,na|0,4)|0;Wc[c[oa>>2]&127](k+e|0,m,pa,l,qa);break}else{if(q?(F=V+oa|0,G=V+pa|0,!(F>>>0<68|G>>>0<68)):0){l=d[137900+G>>0]|0;ma=d[138056+F>>0]|0;la=e+88|0;Vc[c[la>>2]&255](j,m,ma,l);Vc[c[la>>2]&255](k,m,ma,l)}g=4<<da;f=oa+na|0;o=138056+f|0;n=pa+na|0;h=137900+n|0;n=f>>>0<68|n>>>0<68;if(!n){l=d[h>>0]|0;na=d[o>>0]|0;la=(d[138212+(f<<2)+3>>0]|0)+1&255;ma=e+76|0;yW(qa|0,la|0,4)|0;Wc[c[ma>>2]&127](j+g|0,m,na,l,qa);yW(qa|0,la|0,4)|0;Wc[c[ma>>2]&127](k+g|0,m,na,l,qa)}do if(ha|0?(S=ia+oa|0,T=d[138056+S>>0]|0,l=ia+pa|0,U=d[137900+l>>0]|0,!(S>>>0<68|l>>>0<68)):0){g=b[I>>1]|0;if(g<<16>>16>3){l=e+84|0;Vc[c[l>>2]&255](j,m,T,U);Vc[c[l>>2]&255](k,m,T,U);break}else{ka=(d[(g<<16>>16)+(138212+(S<<2))>>0]|0)+1&255;a[qa>>0]=ka;i=(d[(b[I+2>>1]|0)+(138212+(S<<2))>>0]|0)+1&255;la=qa+1|0;a[la>>0]=i;ma=(d[(b[I+4>>1]|0)+(138212+(S<<2))>>0]|0)+1&255;na=qa+2|0;a[na>>0]=ma;oa=(d[(b[I+6>>1]|0)+(138212+(S<<2))>>0]|0)+1&255;pa=qa+3|0;a[pa>>0]=oa;l=e+72|0;Wc[c[l>>2]&127](j,m,T,U,qa);a[qa>>0]=ka;a[la>>0]=i;a[na>>0]=ma;a[pa>>0]=oa;Wc[c[l>>2]&127](k,m,T,U,qa);break}}while(0);g=m<<2;if(n)break;l=d[h>>0]|0;pa=d[o>>0]|0;oa=(d[138212+(f<<2)+3>>0]|0)+1&255;e=e+72|0;yW(qa|0,oa|0,4)|0;Wc[c[e>>2]&127](j+g|0,m,pa,l,qa);yW(qa|0,oa|0,4)|0;Wc[c[e>>2]&127](k+g|0,m,pa,l,qa);break}}p=(r&16777216|0)!=0;g=c[f+21856>>2]|0;if(p?!(la|(g&7|0)!=7):0){o=ma;c[o>>2]=131074;c[o+4>>2]=131074;o=ma+16|0;c[o>>2]=131074;c[o+4>>2]=131074;o=ma+32|0;c[o>>2]=131074;c[o+4>>2]=131074;o=ma+48|0;c[o>>2]=131074;c[o+4>>2]=131074;o=4}else{T=0-((r*5|0)>>>5&1)&3|r>>4;U=4-(0-(r>>>3&(g&15|0)==0)&3)|0;_c[o&3](ma,f+27824|0,f+28272|0,f+27952|0,(c[f+23412>>2]|0)==2&1,U,(r>>24)+1|0,0-((h*5|0)>>>5&1&T>>>1)&3,T,(c[e+26380>>2]|0)!=3&1);o=U}if(h&7|0){U=ma;c[U>>2]=262148;c[U+4>>2]=262148}if(ha&7|0){T=(c[e+26380>>2]|0)!=3;U=ma+32|0;c[U>>2]=T?196611:262148;c[U+4>>2]=T?196611:262148}do if(h|0?(U=ma,T=c[U>>2]|0,q=T&65535,!((T|0)==0&(c[U+4>>2]|0)==0)):0){h=t+oa|0;n=d[138056+h>>0]|0;U=t+pa|0;g=d[137900+U>>0]|0;do if(!(h>>>0<68|U>>>0<68))if(q<<16>>16>3){Vc[c[e+64>>2]&255](i,l,n,g);break}else{a[qa>>0]=a[(q<<16>>16)+(138212+(h<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+2>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+4>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+6>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e+52>>2]&127](i,l,n,g,qa);break}while(0);if(ja){n=V+oa|0;f=d[138056+n>>0]|0;g=V+pa|0;h=d[137900+g>>0]|0;g=n>>>0<68|g>>>0<68;if(la){if(g)break;g=b[ma>>1]|0;if(g<<16>>16>3)Vc[c[e+64>>2]&255](j,l,f,h);else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+2>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+4>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+6>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+52>>2]&127](j,l,f,h,qa)}g=b[ma>>1]|0;if(g<<16>>16>3){Vc[c[e+64>>2]&255](k,l,f,h);break}else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+2>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+4>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+6>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+52>>2]&127](k,l,f,h,qa);break}}else{if(g)break;g=b[ma>>1]|0;if(g<<16>>16>3)Vc[c[e+88>>2]&255](j,m,f,h);else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+2>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+4>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+6>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+76>>2]&127](j,m,f,h,qa)}g=b[ma>>1]|0;if(g<<16>>16>3){Vc[c[e+88>>2]&255](k,m,f,h);break}else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+2>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+4>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+6>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+76>>2]&127](k,m,f,h,qa);break}}}}while(0);do if((o|0)==1){if(ha|0?(Y=ma+32|0,na=Y,ka=c[na>>2]|0,I=ka&65535,!((ka|0)==0&(c[na+4>>2]|0)==0)):0){h=ga+oa|0;n=d[138056+h>>0]|0;na=ga+pa|0;g=d[137900+na>>0]|0;do if(!(h>>>0<68|na>>>0<68))if(I<<16>>16>3){Vc[c[e+60>>2]&255](i,l,n,g);break}else{a[qa>>0]=a[(I<<16>>16)+(138212+(h<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e+48>>2]&127](i,l,n,g,qa);break}while(0);if(ja){n=ia+oa|0;f=d[138056+n>>0]|0;g=ia+pa|0;h=d[137900+g>>0]|0;g=n>>>0<68|g>>>0<68;if(la){if(g)break;g=b[Y>>1]|0;if(g<<16>>16>3)Vc[c[e+60>>2]&255](j,l,f,h);else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](j,l,f,h,qa)}g=b[Y>>1]|0;if(g<<16>>16>3){Vc[c[e+60>>2]&255](k,l,f,h);break}else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](k,l,f,h,qa);break}}else{if(g)break;g=b[Y>>1]|0;if(g<<16>>16>3)Vc[c[e+84>>2]&255](j,m,f,h);else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+72>>2]&127](j,m,f,h,qa)}g=b[Y>>1]|0;if(g<<16>>16>3){Vc[c[e+84>>2]&255](k,m,f,h);break}else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+72>>2]&127](k,m,f,h,qa);break}}}}}else{if(p){p=ma+16|0;fa=p;f=c[fa>>2]|0;do if(!((f|0)==0&(c[fa+4>>2]|0)==0)){g=1<<da;o=g<<3;h=oa+ka|0;n=pa+ka|0;if(!(h>>>0<68|n>>>0<68)){fa=d[137900+n>>0]|0;ea=d[138056+h>>0]|0;a[qa>>0]=a[(f<<16>>16)+(138212+(h<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+18>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+20>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+22>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e+52>>2]&127](i+o|0,l,ea,fa,qa)}if(ja)if(la){g=oa+na|0;h=pa+na|0;if(g>>>0<68|h>>>0<68)break;fa=d[137900+h>>0]|0;ea=d[138056+g>>0]|0;a[qa>>0]=a[(b[p>>1]|0)+(138212+(g<<2))>>0]|0;X=ma+18|0;Y=qa+1|0;a[Y>>0]=a[(b[X>>1]|0)+(138212+(g<<2))>>0]|0;$=ma+20|0;aa=qa+2|0;a[aa>>0]=a[(b[$>>1]|0)+(138212+(g<<2))>>0]|0;ba=ma+22|0;ca=qa+3|0;a[ca>>0]=a[(b[ba>>1]|0)+(138212+(g<<2))>>0]|0;da=e+52|0;Wc[c[da>>2]&127](j+o|0,l,ea,fa,qa);a[qa>>0]=a[(b[p>>1]|0)+(138212+(g<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(138212+(g<<2))>>0]|0;a[aa>>0]=a[(b[$>>1]|0)+(138212+(g<<2))>>0]|0;a[ca>>0]=a[(b[ba>>1]|0)+(138212+(g<<2))>>0]|0;Wc[c[da>>2]&127](k+o|0,l,ea,fa,qa);break}else{g=g<<2;h=oa+na|0;n=pa+na|0;if(h>>>0<68|n>>>0<68)break;fa=d[137900+n>>0]|0;ea=d[138056+h>>0]|0;a[qa>>0]=(d[(b[p>>1]|0)+(138212+(h<<2))>>0]|0)+1;X=ma+18|0;Y=qa+1|0;a[Y>>0]=(d[(b[X>>1]|0)+(138212+(h<<2))>>0]|0)+1;$=ma+20|0;aa=qa+2|0;a[aa>>0]=(d[(b[$>>1]|0)+(138212+(h<<2))>>0]|0)+1;ba=ma+22|0;ca=qa+3|0;a[ca>>0]=(d[(b[ba>>1]|0)+(138212+(h<<2))>>0]|0)+1;da=e+76|0;Wc[c[da>>2]&127](j+g|0,m,ea,fa,qa);a[qa>>0]=(d[(b[p>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[Y>>0]=(d[(b[X>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[aa>>0]=(d[(b[$>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[ca>>0]=(d[(b[ba>>1]|0)+(138212+(h<<2))>>0]|0)+1;Wc[c[da>>2]&127](k+g|0,m,ea,fa,qa);break}}while(0);do if(ha|0?(_=ma+32|0,ha=_,fa=c[ha>>2]|0,Z=fa&65535,!((fa|0)==0&(c[ha+4>>2]|0)==0)):0){h=ga+oa|0;n=d[138056+h>>0]|0;ha=ga+pa|0;g=d[137900+ha>>0]|0;do if(!(h>>>0<68|ha>>>0<68))if(Z<<16>>16>3){Vc[c[e+60>>2]&255](i,l,n,g);break}else{a[qa>>0]=a[(Z<<16>>16)+(138212+(h<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e+48>>2]&127](i,l,n,g,qa);break}while(0);if(ja){n=ia+oa|0;f=d[138056+n>>0]|0;g=ia+pa|0;h=d[137900+g>>0]|0;g=n>>>0<68|g>>>0<68;if(la){if(g)break;g=b[_>>1]|0;if(g<<16>>16>3)Vc[c[e+60>>2]&255](j,l,f,h);else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](j,l,f,h,qa)}g=b[_>>1]|0;if(g<<16>>16>3){Vc[c[e+60>>2]&255](k,l,f,h);break}else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](k,l,f,h,qa);break}}else{if(g)break;g=b[_>>1]|0;if(g<<16>>16>3)Vc[c[e+84>>2]&255](j,m,f,h);else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+72>>2]&127](j,m,f,h,qa)}g=b[_>>1]|0;if(g<<16>>16>3){Vc[c[e+84>>2]&255](k,m,f,h);break}else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+72>>2]&127](k,m,f,h,qa);break}}}}while(0);o=ma+48|0;ia=o;h=c[ia>>2]|0;if((h|0)==0&(c[ia+4>>2]|0)==0)break;f=l<<3;n=oa+ka|0;g=pa+ka|0;if(!(n>>>0<68|g>>>0<68)){ka=d[137900+g>>0]|0;ia=d[138056+n>>0]|0;a[qa>>0]=a[(h<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+50>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+52>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+54>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](i+f|0,l,ia,ka,qa)}if(!ja)break;if(la){h=oa+na|0;g=pa+na|0;if(h>>>0<68|g>>>0<68)break;pa=d[137900+g>>0]|0;oa=d[138056+h>>0]|0;a[qa>>0]=a[(b[o>>1]|0)+(138212+(h<<2))>>0]|0;ja=ma+50|0;ka=qa+1|0;a[ka>>0]=a[(b[ja>>1]|0)+(138212+(h<<2))>>0]|0;i=ma+52|0;la=qa+2|0;a[la>>0]=a[(b[i>>1]|0)+(138212+(h<<2))>>0]|0;na=ma+54|0;m=qa+3|0;a[m>>0]=a[(b[na>>1]|0)+(138212+(h<<2))>>0]|0;e=e+48|0;Wc[c[e>>2]&127](j+f|0,l,oa,pa,qa);a[qa>>0]=a[(b[o>>1]|0)+(138212+(h<<2))>>0]|0;a[ka>>0]=a[(b[ja>>1]|0)+(138212+(h<<2))>>0]|0;a[la>>0]=a[(b[i>>1]|0)+(138212+(h<<2))>>0]|0;a[m>>0]=a[(b[na>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e>>2]&127](k+f|0,l,oa,pa,qa);break}else{n=m<<2;h=oa+na|0;g=pa+na|0;if(h>>>0<68|g>>>0<68)break;l=d[137900+g>>0]|0;pa=d[138056+h>>0]|0;a[qa>>0]=(d[(b[o>>1]|0)+(138212+(h<<2))>>0]|0)+1;ja=ma+50|0;ka=qa+1|0;a[ka>>0]=(d[(b[ja>>1]|0)+(138212+(h<<2))>>0]|0)+1;i=ma+52|0;la=qa+2|0;a[la>>0]=(d[(b[i>>1]|0)+(138212+(h<<2))>>0]|0)+1;na=ma+54|0;oa=qa+3|0;a[oa>>0]=(d[(b[na>>1]|0)+(138212+(h<<2))>>0]|0)+1;e=e+72|0;Wc[c[e>>2]&127](j+n|0,m,pa,l,qa);a[qa>>0]=(d[(b[o>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[ka>>0]=(d[(b[ja>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[la>>0]=(d[(b[i>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[oa>>0]=(d[(b[na>>1]|0)+(138212+(h<<2))>>0]|0)+1;Wc[c[e>>2]&127](k+n|0,m,pa,l,qa);break}}g=ma+8|0;_=g;h=c[_>>2]|0;if(!((h|0)==0&(c[_+4>>2]|0)==0)){n=4<<da;f=oa+ka|0;o=pa+ka|0;if(!(f>>>0<68|o>>>0<68)){_=d[137900+o>>0]|0;Z=d[138056+f>>0]|0;a[qa>>0]=a[(h<<16>>16)+(138212+(f<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+10>>1]|0)+(138212+(f<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+12>>1]|0)+(138212+(f<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+14>>1]|0)+(138212+(f<<2))>>0]|0;Wc[c[e+52>>2]&127](i+n|0,l,Z,_,qa)}if(la?(W=oa+na|0,X=pa+na|0,!(W>>>0<68|X>>>0<68)):0){_=d[137900+X>>0]|0;Z=d[138056+W>>0]|0;a[qa>>0]=a[(b[g>>1]|0)+(138212+(W<<2))>>0]|0;R=ma+10|0;S=qa+1|0;a[S>>0]=a[(b[R>>1]|0)+(138212+(W<<2))>>0]|0;T=ma+12|0;U=qa+2|0;a[U>>0]=a[(b[T>>1]|0)+(138212+(W<<2))>>0]|0;V=ma+14|0;X=qa+3|0;a[X>>0]=a[(b[V>>1]|0)+(138212+(W<<2))>>0]|0;Y=e+52|0;Wc[c[Y>>2]&127](j+n|0,l,Z,_,qa);a[qa>>0]=a[(b[g>>1]|0)+(138212+(W<<2))>>0]|0;a[S>>0]=a[(b[R>>1]|0)+(138212+(W<<2))>>0]|0;a[U>>0]=a[(b[T>>1]|0)+(138212+(W<<2))>>0]|0;a[X>>0]=a[(b[V>>1]|0)+(138212+(W<<2))>>0]|0;Wc[c[Y>>2]&127](k+n|0,l,Z,_,qa)}}p=ma+16|0;_=p;g=c[_>>2]|0;do if(!((g|0)==0&(c[_+4>>2]|0)==0)){h=1<<da;o=h<<3;n=oa+ka|0;f=pa+ka|0;if(!(n>>>0<68|f>>>0<68)){_=d[137900+f>>0]|0;Z=d[138056+n>>0]|0;a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+18>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+20>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+22>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+52>>2]&127](i+o|0,l,Z,_,qa)}if(ja)if(la){g=oa+na|0;h=pa+na|0;if(g>>>0<68|h>>>0<68)break;_=d[137900+h>>0]|0;Z=d[138056+g>>0]|0;a[qa>>0]=a[(b[p>>1]|0)+(138212+(g<<2))>>0]|0;S=ma+18|0;T=qa+1|0;a[T>>0]=a[(b[S>>1]|0)+(138212+(g<<2))>>0]|0;U=ma+20|0;V=qa+2|0;a[V>>0]=a[(b[U>>1]|0)+(138212+(g<<2))>>0]|0;W=ma+22|0;X=qa+3|0;a[X>>0]=a[(b[W>>1]|0)+(138212+(g<<2))>>0]|0;Y=e+52|0;Wc[c[Y>>2]&127](j+o|0,l,Z,_,qa);a[qa>>0]=a[(b[p>>1]|0)+(138212+(g<<2))>>0]|0;a[T>>0]=a[(b[S>>1]|0)+(138212+(g<<2))>>0]|0;a[V>>0]=a[(b[U>>1]|0)+(138212+(g<<2))>>0]|0;a[X>>0]=a[(b[W>>1]|0)+(138212+(g<<2))>>0]|0;Wc[c[Y>>2]&127](k+o|0,l,Z,_,qa);break}else{g=h<<2;h=oa+na|0;n=pa+na|0;if(h>>>0<68|n>>>0<68)break;_=d[137900+n>>0]|0;Z=d[138056+h>>0]|0;a[qa>>0]=(d[(b[p>>1]|0)+(138212+(h<<2))>>0]|0)+1;S=ma+18|0;T=qa+1|0;a[T>>0]=(d[(b[S>>1]|0)+(138212+(h<<2))>>0]|0)+1;U=ma+20|0;V=qa+2|0;a[V>>0]=(d[(b[U>>1]|0)+(138212+(h<<2))>>0]|0)+1;W=ma+22|0;X=qa+3|0;a[X>>0]=(d[(b[W>>1]|0)+(138212+(h<<2))>>0]|0)+1;Y=e+76|0;Wc[c[Y>>2]&127](j+g|0,m,Z,_,qa);a[qa>>0]=(d[(b[p>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[T>>0]=(d[(b[S>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[V>>0]=(d[(b[U>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[X>>0]=(d[(b[W>>1]|0)+(138212+(h<<2))>>0]|0)+1;Wc[c[Y>>2]&127](k+g|0,m,Z,_,qa);break}}while(0);f=ma+24|0;_=f;o=c[_>>2]|0;if(!((o|0)==0&(c[_+4>>2]|0)==0)){g=12<<da;h=oa+ka|0;n=pa+ka|0;if(!(h>>>0<68|n>>>0<68)){da=d[137900+n>>0]|0;_=d[138056+h>>0]|0;a[qa>>0]=a[(o<<16>>16)+(138212+(h<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+26>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+28>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+30>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e+52>>2]&127](i+g|0,l,_,da,qa)}if(la?($=oa+na|0,aa=pa+na|0,!($>>>0<68|aa>>>0<68)):0){da=d[137900+aa>>0]|0;aa=d[138056+$>>0]|0;a[qa>>0]=a[(b[f>>1]|0)+(138212+($<<2))>>0]|0;U=ma+26|0;V=qa+1|0;a[V>>0]=a[(b[U>>1]|0)+(138212+($<<2))>>0]|0;W=ma+28|0;X=qa+2|0;a[X>>0]=a[(b[W>>1]|0)+(138212+($<<2))>>0]|0;Y=ma+30|0;Z=qa+3|0;a[Z>>0]=a[(b[Y>>1]|0)+(138212+($<<2))>>0]|0;_=e+52|0;Wc[c[_>>2]&127](j+g|0,l,aa,da,qa);a[qa>>0]=a[(b[f>>1]|0)+(138212+($<<2))>>0]|0;a[V>>0]=a[(b[U>>1]|0)+(138212+($<<2))>>0]|0;a[X>>0]=a[(b[W>>1]|0)+(138212+($<<2))>>0]|0;a[Z>>0]=a[(b[Y>>1]|0)+(138212+($<<2))>>0]|0;Wc[c[_>>2]&127](k+g|0,l,aa,da,qa)}}do if(ha|0?(ca=ma+32|0,ha=ca,da=c[ha>>2]|0,ba=da&65535,!((da|0)==0&(c[ha+4>>2]|0)==0)):0){h=ga+oa|0;n=d[138056+h>>0]|0;ha=ga+pa|0;g=d[137900+ha>>0]|0;do if(!(h>>>0<68|ha>>>0<68))if(ba<<16>>16>3){Vc[c[e+60>>2]&255](i,l,n,g);break}else{a[qa>>0]=a[(ba<<16>>16)+(138212+(h<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e+48>>2]&127](i,l,n,g,qa);break}while(0);if(ja){n=ia+oa|0;f=d[138056+n>>0]|0;g=ia+pa|0;h=d[137900+g>>0]|0;g=n>>>0<68|g>>>0<68;if(la){if(g)break;g=b[ca>>1]|0;if(g<<16>>16>3)Vc[c[e+60>>2]&255](j,l,f,h);else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](j,l,f,h,qa)}g=b[ca>>1]|0;if(g<<16>>16>3){Vc[c[e+60>>2]&255](k,l,f,h);break}else{a[qa>>0]=a[(g<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](k,l,f,h,qa);break}}else{if(g)break;g=b[ca>>1]|0;if(g<<16>>16>3)Vc[c[e+84>>2]&255](j,m,f,h);else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+72>>2]&127](j,m,f,h,qa)}g=b[ca>>1]|0;if(g<<16>>16>3){Vc[c[e+84>>2]&255](k,m,f,h);break}else{a[qa>>0]=(d[(g<<16>>16)+(138212+(n<<2))>>0]|0)+1;a[qa+1>>0]=(d[(b[ma+34>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+2>>0]=(d[(b[ma+36>>1]|0)+(138212+(n<<2))>>0]|0)+1;a[qa+3>>0]=(d[(b[ma+38>>1]|0)+(138212+(n<<2))>>0]|0)+1;Wc[c[e+72>>2]&127](k,m,f,h,qa);break}}}}while(0);g=ma+40|0;ia=g;h=c[ia>>2]|0;if(!((h|0)==0&(c[ia+4>>2]|0)==0)){n=l<<2;f=oa+ka|0;o=pa+ka|0;if(!(f>>>0<68|o>>>0<68)){ia=d[137900+o>>0]|0;ha=d[138056+f>>0]|0;a[qa>>0]=a[(h<<16>>16)+(138212+(f<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+42>>1]|0)+(138212+(f<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+44>>1]|0)+(138212+(f<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+46>>1]|0)+(138212+(f<<2))>>0]|0;Wc[c[e+48>>2]&127](i+n|0,l,ha,ia,qa)}if(la?(ea=oa+na|0,fa=pa+na|0,!(ea>>>0<68|fa>>>0<68)):0){ia=d[137900+fa>>0]|0;ha=d[138056+ea>>0]|0;a[qa>>0]=a[(b[g>>1]|0)+(138212+(ea<<2))>>0]|0;$=ma+42|0;aa=qa+1|0;a[aa>>0]=a[(b[$>>1]|0)+(138212+(ea<<2))>>0]|0;ba=ma+44|0;ca=qa+2|0;a[ca>>0]=a[(b[ba>>1]|0)+(138212+(ea<<2))>>0]|0;da=ma+46|0;fa=qa+3|0;a[fa>>0]=a[(b[da>>1]|0)+(138212+(ea<<2))>>0]|0;ga=e+48|0;Wc[c[ga>>2]&127](j+n|0,l,ha,ia,qa);a[qa>>0]=a[(b[g>>1]|0)+(138212+(ea<<2))>>0]|0;a[aa>>0]=a[(b[$>>1]|0)+(138212+(ea<<2))>>0]|0;a[ca>>0]=a[(b[ba>>1]|0)+(138212+(ea<<2))>>0]|0;a[fa>>0]=a[(b[da>>1]|0)+(138212+(ea<<2))>>0]|0;Wc[c[ga>>2]&127](k+n|0,l,ha,ia,qa)}}o=ma+48|0;ia=o;g=c[ia>>2]|0;do if(!((g|0)==0&(c[ia+4>>2]|0)==0)){f=l<<3;h=oa+ka|0;n=pa+ka|0;if(!(h>>>0<68|n>>>0<68)){ia=d[137900+n>>0]|0;ha=d[138056+h>>0]|0;a[qa>>0]=a[(g<<16>>16)+(138212+(h<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+50>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+52>>1]|0)+(138212+(h<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+54>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e+48>>2]&127](i+f|0,l,ha,ia,qa)}if(ja)if(la){g=oa+na|0;h=pa+na|0;if(g>>>0<68|h>>>0<68)break;m=d[137900+h>>0]|0;ja=d[138056+g>>0]|0;a[qa>>0]=a[(b[o>>1]|0)+(138212+(g<<2))>>0]|0;ca=ma+50|0;da=qa+1|0;a[da>>0]=a[(b[ca>>1]|0)+(138212+(g<<2))>>0]|0;ea=ma+52|0;fa=qa+2|0;a[fa>>0]=a[(b[ea>>1]|0)+(138212+(g<<2))>>0]|0;ga=ma+54|0;ha=qa+3|0;a[ha>>0]=a[(b[ga>>1]|0)+(138212+(g<<2))>>0]|0;ia=e+48|0;Wc[c[ia>>2]&127](j+f|0,l,ja,m,qa);a[qa>>0]=a[(b[o>>1]|0)+(138212+(g<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(138212+(g<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(138212+(g<<2))>>0]|0;a[ha>>0]=a[(b[ga>>1]|0)+(138212+(g<<2))>>0]|0;Wc[c[ia>>2]&127](k+f|0,l,ja,m,qa);break}else{g=m<<2;h=oa+na|0;n=pa+na|0;if(h>>>0<68|n>>>0<68)break;ja=d[137900+n>>0]|0;ia=d[138056+h>>0]|0;a[qa>>0]=(d[(b[o>>1]|0)+(138212+(h<<2))>>0]|0)+1;ba=ma+50|0;ca=qa+1|0;a[ca>>0]=(d[(b[ba>>1]|0)+(138212+(h<<2))>>0]|0)+1;da=ma+52|0;ea=qa+2|0;a[ea>>0]=(d[(b[da>>1]|0)+(138212+(h<<2))>>0]|0)+1;fa=ma+54|0;ga=qa+3|0;a[ga>>0]=(d[(b[fa>>1]|0)+(138212+(h<<2))>>0]|0)+1;ha=e+72|0;Wc[c[ha>>2]&127](j+g|0,m,ia,ja,qa);a[qa>>0]=(d[(b[o>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[ca>>0]=(d[(b[ba>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[ea>>0]=(d[(b[da>>1]|0)+(138212+(h<<2))>>0]|0)+1;a[ga>>0]=(d[(b[fa>>1]|0)+(138212+(h<<2))>>0]|0)+1;Wc[c[ha>>2]&127](k+g|0,m,ia,ja,qa);break}}while(0);f=ma+56|0;m=f;h=c[m>>2]|0;if(!((h|0)==0&(c[m+4>>2]|0)==0)){o=l*12|0;n=oa+ka|0;g=pa+ka|0;if(!(n>>>0<68|g>>>0<68)){m=d[137900+g>>0]|0;ka=d[138056+n>>0]|0;a[qa>>0]=a[(h<<16>>16)+(138212+(n<<2))>>0]|0;a[qa+1>>0]=a[(b[ma+58>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+2>>0]=a[(b[ma+60>>1]|0)+(138212+(n<<2))>>0]|0;a[qa+3>>0]=a[(b[ma+62>>1]|0)+(138212+(n<<2))>>0]|0;Wc[c[e+48>>2]&127](i+o|0,l,ka,m,qa)}if(la){h=oa+na|0;g=pa+na|0;if(h>>>0<68|g>>>0<68)break;pa=d[137900+g>>0]|0;oa=d[138056+h>>0]|0;a[qa>>0]=a[(b[f>>1]|0)+(138212+(h<<2))>>0]|0;ja=ma+58|0;ka=qa+1|0;a[ka>>0]=a[(b[ja>>1]|0)+(138212+(h<<2))>>0]|0;i=ma+60|0;la=qa+2|0;a[la>>0]=a[(b[i>>1]|0)+(138212+(h<<2))>>0]|0;na=ma+62|0;m=qa+3|0;a[m>>0]=a[(b[na>>1]|0)+(138212+(h<<2))>>0]|0;e=e+48|0;Wc[c[e>>2]&127](j+o|0,l,oa,pa,qa);a[qa>>0]=a[(b[f>>1]|0)+(138212+(h<<2))>>0]|0;a[ka>>0]=a[(b[ja>>1]|0)+(138212+(h<<2))>>0]|0;a[la>>0]=a[(b[i>>1]|0)+(138212+(h<<2))>>0]|0;a[m>>0]=a[(b[na>>1]|0)+(138212+(h<<2))>>0]|0;Wc[c[e>>2]&127](k+o|0,l,oa,pa,qa)}}}while(0)}else ra=3;while(0);if((ra|0)==3)kj(e,f,g,h,i,j,k,l,m);Ec=sa;return}function mj(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;j=a[d+28272+e>>0]|0;k=a[d+28272+f>>0]|0;h=j<<24>>24!=k<<24>>24;if(!(j<<24>>24==-1|h)){h=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=(((h|0)>-1?h:0-h|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6}do if((c[d+23412>>2]|0)==2){if(!h){i=a[d+28312+e>>0]|0;h=a[d+28312+f>>0]|0;l=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;if(!((i<<24>>24!=h<<24>>24?1:((b[d+28112+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|(((l|0)>-1?l:0-l|0)|0)>=(g|0))){h=0;break}}else{h=a[d+28312+f>>0]|0;i=a[d+28312+e>>0]|0}if(j<<24>>24!=h<<24>>24?1:i<<24>>24!=k<<24>>24)h=1;else{l=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;h=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=((((l|0)>-1?l:0-l|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|((b[d+28112+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6|(((h|0)>-1?h:0-h|0)|0)>=(g|0)}}while(0);return h&1|0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[a>>2]|0;d=((b|0)>-1?b:0-b|0)+63&-32;f=a+27788|0;g=a+27804|0;Rk(f,g,d*96|0);b=a+27792|0;Rk(b,a+27808|0,d*42|0);d=a+27796|0;h=h+27012|0;Sk(d,a+27812|0,(c[h>>2]|0)*96|0);e=a+27800|0;Sk(e,a+27816|0,(c[h>>2]|0)*96|0);if((((c[f>>2]|0)!=0?(c[b>>2]|0)!=0:0)?(c[d>>2]|0)!=0:0)?(c[e>>2]|0)!=0:0)b=0;else{Se(f);Se(b);Se(d);Se(e);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;b=-12}return b|0}function oj(a){a=a|0;var b=0;b=0-(pj(a)|0)&7;if(b|0)Qk(a,b);return}function pj(a){a=a|0;return c[a+8>>2]|0}function qj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(pj(a)|0)|0}function rj(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;g=a+16|0;c[a+12>>2]=b;c[a+20>>2]=b+e;h=b+1|0;c[g>>2]=h;f=(d[b>>0]|0)<<18;c[a>>2]=f;e=b+2|0;c[g>>2]=e;f=(d[h>>0]|0)<<10|f;c[a>>2]=f;if(!(e&1))e=512;else{c[g>>2]=b+3;e=(d[e>>0]|0)<<2|2}h=f+e|0;c[a>>2]=h;c[a+4>>2]=510;return ((h|0)>66846720?-1094995529:0)|0}function sj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;b=(c[d+848>>2]|0)+48+(H(c[(c[b+28216>>2]|0)+1184>>2]|0,-6)|0)|0;b=(b|0)>0?((b|0)<51?b:51):0;if((c[d+840>>2]|0)==1)f=146544;else f=140400+(c[d+33928>>2]<<11)|0;e=0;while(1){if((e|0)==1024)break;g=(H(b,a[f+(e<<1)>>0]|0)|0)>>4;g=(g+(a[f+(e<<1)+1>>0]|0)<<1)+-127|0;g=g>>31^g;a[d+32904+e>>0]=(g|0)>124?g&1|124:g;e=e+1|0}return}function tj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a=c[a>>2]|0;if(c[a+29672>>2]|0)Pk((c[a+25628>>2]|0)+24|0,b,d,e,f,g);return}function uj(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,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,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;na=Ec;Ec=Ec+80|0;fa=na+40|0;aa=na+32|0;q=na+24|0;r=na+16|0;n=na+8|0;s=na;ia=na+72|0;Z=na+56|0;_=na+52|0;U=na+48|0;ha=f+28216|0;ca=c[ha>>2]|0;ja=f+28212|0;m=c[(c[ja>>2]|0)+64>>2]|0;k=ca+12|0;ba=((c[k>>2]|0)+-1|0)>>>0<2;ka=c[f+25664>>2]|0;da=g+21788|0;h=c[da>>2]|0;ea=g+21792|0;i=c[ea>>2]|0;X=f+27016|0;ma=(H(c[X>>2]|0,i)|0)+h|0;la=g+21796|0;c[la>>2]=ma;$=g+840|0;W=f+26376|0;if((c[$>>2]|0)!=1){if(!((c[W>>2]|0)==0|(i&1|0)==0)?(c[g+21648>>2]|0)!=0:0)h=c[g+21652>>2]|0;else h=qk(f,g,h,i)|0;if(h){if((c[W>>2]|0?(c[ea>>2]&1|0)==0:0)?(c[(c[f+24364>>2]|0)+(ma<<2)>>2]=2048,la=qk(f,g,c[da>>2]|0,(c[ea>>2]|0)+1|0)|0,c[g+21652>>2]=la,(la|0)==0):0){la=rk(f,g)|0;c[g+21828>>2]=la;c[g+21832>>2]=la}sk(f,g);b[(c[f+26392>>2]|0)+(ma<<1)>>1]=0;a[(c[f+26396>>2]|0)+ma>>0]=0;c[g+864>>2]=0;h=0}else ga=12}else ga=12;a:do if((ga|0)==12){if(c[W>>2]|0?(c[ea>>2]&1|0)==0:0){Y=rk(f,g)|0;c[g+21828>>2]=Y;c[g+21832>>2]=Y}c[g+21648>>2]=0;V=g+21828|0;tk(f,g,0-(c[V>>2]|0)|0);b:do switch(c[$>>2]|0){case 3:{j=g+32856|0;c:do if(!(uk(j,28-(((c[g+21740>>2]|0)+511|0)>>>8&1)+(((c[g+21732>>2]|0)+511|0)>>>8&1^1)+(g+32904)|0)|0)){c[ia>>2]=0;h=0}else{if(!(uk(j,g+32934|0)|0)){h=(uk(j,g+32936|0)|0)+1|0;c[ia>>2]=h;break}i=(uk(j,g+32935|0)|0)<<3;h=g+32936|0;i=((uk(j,h)|0)<<2)+i|0;i=i+((uk(j,h)|0)<<1)|0;i=i+(uk(j,h)|0)|0;if((i|0)<8){h=i+3|0;c[ia>>2]=h;break}switch(i|0){case 13:{h=vk(g,32,0)|0;c[ia>>2]=h;ga=36;break b}case 14:{c[ia>>2]=11;h=11;break c}case 15:{c[ia>>2]=22;h=22;break c}default:{h=(i<<1)+-4+(uk(j,h)|0)|0;c[ia>>2]=h;break c}}}while(0);i=a[114372+(h<<2)+2>>0]|0;h=e[114372+(h<<2)>>1]|0;c[ia>>2]=h;Y=0;break}case 2:{h=g+32856|0;if(uk(h,g+32918|0)|0){h=vk(g,17,0)|0;c[ia>>2]=h;ga=36;break b}if(!(uk(h,g+32919|0)|0))h=(uk(h,g+32920|0)|0)*3|0;else h=2-(uk(h,g+32921|0)|0)|0;i=a[114336+(h<<2)+2>>0]|0;h=e[114336+(h<<2)>>1]|0;c[ia>>2]=h;Y=0;break}default:{h=vk(g,3,1)|0;c[ia>>2]=h;if(h|0?(c[g+836>>2]|0)==5:0){h=h+-1|0;c[ia>>2]=h;ga=36}else ga=36}}while(0);if((ga|0)==36){Y=d[114232+(h<<2)+3>>0]|0;c[g+21660>>2]=d[114232+(h<<2)+2>>0];h=e[114232+(h<<2)>>1]|0;c[ia>>2]=h;i=0}if(c[V>>2]|0){h=h|128;c[ia>>2]=h}b[(c[f+26372>>2]|0)+(ma<<1)>>1]=c[g+832>>2];if(h&4|0){i=(H(c[ca+1184>>2]|0,e[114516+(c[k>>2]<<1)>>1]|0)|0)>>3;j=g+32856|0;h=c[g+32872>>2]|0;k=c[j>>2]|0;h=(k&1|0)==0?h:h+-1|0;h=(k&511|0)==0?h:h+-1|0;k=c[g+32876>>2]|0;if((k-h|0)<(i|0)){h=-1;break}c[g+27780>>2]=h;h=h+i|0;h=rj(j,h,k-h|0)|0;if((h|0)<0)break;b[(c[f+26392>>2]|0)+(ma<<1)>>1]=-2065;a[(c[f+26396>>2]|0)+ma>>0]=0;a[(c[f+24340>>2]|0)+ma>>0]=0;j=(c[f+25972>>2]|0)+(ma*48|0)|0;k=j+48|0;do{a[j>>0]=16;j=j+1|0}while((j|0)<(k|0));c[(c[f+24364>>2]|0)+(ma<<2)>>2]=c[ia>>2];c[g+864>>2]=0;h=0;break}wk(f,g,h);d:do if(!(h&7)){if(i<<24>>24==4){e:do if((c[$>>2]|0)==3){h=0;while(1){if((h|0)==4)break;T=zk(g)|0;c[Z+(h<<2)>>2]=d[114464+((T&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[114464+((T&65535)<<2)>>1]|0;h=h+1|0}if((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256){Nj(f,g,ia);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;h=0;while(1){if((h|0)==4)break e;T=(d[150645+(h<<2)>>0]|0)+(g+28512)|0;S=((e[g+28552+(h<<1)>>1]|0)>>>1&255)*257&65535;b[T>>1]=S;b[T+8>>1]=S;h=h+1|0}}}else{h=0;while(1){if((h|0)==4)break e;T=Ak(g)|0;c[Z+(h<<2)>>2]=d[114356+((T&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[114356+((T&65535)<<2)>>1]|0;h=h+1|0}}while(0);T=g+23412|0;p=g+21832|0;o=0;f:while(1){h=c[T>>2]|0;if(o>>>0>=h>>>0){ga=80;break}l=4096<<(o<<1);n=g+23404+(o<<2)|0;k=0;while(1){if((k|0)>=4)break;h=e[g+28552+(k<<1)>>1]|0;if(!(h&256)){if(l&h){i=c[n>>2]<<c[p>>2];if(i>>>0>1){j=k<<2;h=Bk(g,o,j)|0;if(h>>>0>=i>>>0){ga=75;break f}}else{h=0;ga=76}}else{h=-1;ga=76}if((ga|0)==76){ga=0;j=k<<2}R=h&255;S=d[150645+j>>0]|0;a[S+9+(g+28272+(o*40|0))>>0]=R;a[S+8+(g+28272+(o*40|0))>>0]=R;a[S+1+(g+28272+(o*40|0))>>0]=R}k=k+1|0}o=o+1|0}do if((ga|0)==75){g=c[f+4>>2]|0;c[s>>2]=h;c[s+4>>2]=i;We(g,16,139948,s);h=-1}else if((ga|0)==80){if(!m)m=0;else{S=(c[(c[ha>>2]|0)+72>>2]|0)==0;m=g+28552|0;m=(((S?24117616:7340144)&c[m>>2]|0)==0?((S?24117616:7340144)&c[m+4>>2]|0)==0:0)&1}O=f+24312|0;P=g+21740|0;Q=g+21720|0;R=f+26360|0;S=f+26368|0;N=0;g:while(1){if(N>>>0>=h>>>0){ga=129;break}K=N<<1;G=4096<<K;I=g+28272+(N*40|0)+11|0;J=g+27952+(N*160|0)+40|0;K=12288<<K;L=g+27952+(N*160|0)+42|0;F=0;while(1){if((F|0)>=4)break;M=F<<2;h=d[150645+M>>0]|0;a[g+28272+(N*40|0)+h>>0]=a[h+1+(g+28272+(N*40|0))>>0]|0;i=e[g+28552+(F<<1)>>1]|0;h:do if(!(i&256)){if(!(G&i)){c[g+27952+(N*160|0)+(h<<2)>>2]=0;c[g+27952+(N*160|0)+(h<<2)+4>>2]=0;c[g+27952+(N*160|0)+(h<<2)+32>>2]=0;c[g+27952+(N*160|0)+(h<<2)+36>>2]=0;ga=125;break}B=i&24|0?2:1;C=c[Z+(F<<2)>>2]|0;D=(i&8|0)==0;E=(i&16|0)==0;x=(i&32|0)==0;w=0;while(1){if((w|0)>=(C|0))break h;h=a[150645+((H(w,B)|0)+M)>>0]|0;y=h&255;z=g+27952+(N*160|0)+(y<<2)|0;A=g+28352+(N*80|0)+(y<<1)|0;o=a[g+28272+(N*40|0)+y>>0]|0;p=o<<24>>24;u=y+-8|0;r=a[g+28272+(N*40|0)+u>>0]|0;v=y+-1|0;s=a[g+28272+(N*40|0)+v>>0]|0;q=g+27952+(N*160|0)+(v<<2)|0;t=g+27952+(N*160|0)+(u<<2)|0;i=u+B|0;j=a[g+28272+(N*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((y&7|0)==4&((h&255)>19&(j&(c[W>>2]|0)!=0))){if((a[I>>0]|0)==-2){ga=99;break}n=c[(c[O>>2]|0)+48>>2]|0;c[J>>2]=0;l=(c[P>>2]&128|0)==0;if(!(c[V>>2]|0)){if(l){ga=99;break}l=c[X>>2]|0;h=l+(c[Q>>2]|0)|0;i=(c[ea>>2]<<1&2)+(y>>>5)|0;if(!(c[n+((H(i>>>2,l)|0)+h<<2)>>2]&K)){l=J;k=-1;break}k=c[O>>2]|0;n=c[k+36+(N<<2)>>2]|0;l=(c[(c[R>>2]|0)+(h<<2)>>2]|0)+3+(H(c[S>>2]|0,i)|0)|0;b[J>>1]=b[n+(l<<2)>>1]|0;b[L>>1]=b[n+(l<<2)+2>>1]<<1;l=J;k=a[(c[k+68+(N<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!l){ga=99;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=y>>>2;if(!(c[n+(h<<2)>>2]&K)){l=J;k=-1;break}k=c[O>>2]|0;n=c[k+36+(N<<2)>>2]|0;l=(c[(c[R>>2]|0)+(h<<2)>>2]|0)+3+(H(c[S>>2]|0,i&3)|0)|0;b[J>>1]=b[n+(l<<2)>>1]|0;b[L>>1]=(b[n+(l<<2)+2>>1]|0)/2|0;l=J;k=a[(c[k+68+(N<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ga=99;while(0);do if((ga|0)==99){ga=0;if(j){k=y+-9|0;l=g+27952+(N*160|0)+(k<<2)|0;k=a[g+28272+(N*40|0)+k>>0]|0;break}else{l=g+27952+(N*160|0)+(i<<2)|0;break}}while(0);j=r<<24>>24==o<<24>>24;i=s<<24>>24==o<<24>>24;h=(i&1)+(j&1)+((k|0)==(p|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[q>>1]|0;if(s<<24>>24!=-2&(r<<24>>24==-2&(k|0)==-2)){i=b[g+27952+(N*160|0)+(v<<2)+2>>1]|0;break}else{h=Ck(h,b[t>>1]|0,b[l>>1]|0)|0;i=Ck(b[g+27952+(N*160|0)+(v<<2)+2>>1]|0,b[g+27952+(N*160|0)+(u<<2)+2>>1]|0,b[l+2>>1]|0)|0;break}}if(i){h=b[q>>1]|0;i=b[g+27952+(N*160|0)+(v<<2)+2>>1]|0;break}if(j){h=b[t>>1]|0;i=b[g+27952+(N*160|0)+(u<<2)+2>>1]|0;break}else{h=b[l>>1]|0;i=b[l+2>>1]|0;break}}else{h=Ck(b[q>>1]|0,b[t>>1]|0,b[l>>1]|0)|0;i=Ck(b[g+27952+(N*160|0)+(v<<2)+2>>1]|0,b[g+27952+(N*160|0)+(u<<2)+2>>1]|0,b[l+2>>1]|0)|0}while(0);n=(d[g+28352+(N*80|0)+(u<<1)+1>>0]|0)+(d[g+28352+(N*80|0)+(v<<1)+1>>0]|0)|0;u=Dk(g,40,(d[g+28352+(N*80|0)+(u<<1)>>0]|0)+(d[g+28352+(N*80|0)+(v<<1)>>0]|0)|0,_)|0;v=Dk(g,47,n,U)|0;n=u+h|0;l=v+i|0;if((u|0)==-2147483648|(v|0)==-2147483648){ga=123;break g}do if(D){if(!E){b[z+4>>1]=n;b[z+6>>1]=l;i=c[_>>2]|0;a[A+2>>0]=i;h=c[U>>2]|0;j=h&255;k=1;ga=121;break}if(x){i=c[_>>2]|0;h=c[U>>2]|0;break}else{b[z+32>>1]=n;b[z+34>>1]=l;i=c[_>>2]|0;a[A+16>>0]=i;h=c[U>>2]|0;j=h&255;k=8;ga=121;break}}else{i=n&65535;b[z+36>>1]=i;b[z+32>>1]=i;b[z+4>>1]=i;i=l&65535;b[z+38>>1]=i;b[z+34>>1]=i;b[z+6>>1]=i;i=c[_>>2]|0;h=i&255;a[A+18>>0]=h;a[A+16>>0]=h;a[A+2>>0]=h;h=c[U>>2]|0;j=h&255;a[A+19>>0]=j;a[A+17>>0]=j;k=1;ga=121}while(0);if((ga|0)==121){ga=0;a[A+(k<<1)+1>>0]=j}b[z>>1]=n;b[g+27952+(N*160|0)+(y<<2)+2>>1]=l;a[A>>0]=i;a[g+28352+(N*80|0)+(y<<1)+1>>0]=h;w=w+1|0}}else ga=125;while(0);if((ga|0)==125){ga=0;c[g+28352+(N*80|0)+(h<<1)>>2]=0;c[g+28352+(N*80|0)+(h<<1)+16>>2]=0}F=F+1|0}N=N+1|0;h=c[T>>2]|0}if((ga|0)==123){h=-1094995529;break}else if((ga|0)==129)break d}while(0);break a}if(h&256|0){Nj(f,g,ia);c[g+28376>>2]=0;c[g+28380>>2]=0;c[g+28392>>2]=0;c[g+28396>>2]=0;c[g+28408>>2]=0;c[g+28412>>2]=0;c[g+28424>>2]=0;c[g+28428>>2]=0;c[g+28456>>2]=0;c[g+28460>>2]=0;c[g+28472>>2]=0;c[g+28476>>2]=0;c[g+28488>>2]=0;c[g+28492>>2]=0;c[g+28504>>2]=0;c[g+28508>>2]=0;m=c[ca+72>>2]&m;break}if(h&8|0){t=g+23412|0;k=c[ia>>2]|0;l=g+21832|0;j=0;while(1){h=c[t>>2]|0;if(j>>>0>=h>>>0)break;if(k&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<<c[l>>2];if(i>>>0>1){h=Bk(g,j,0)|0;if(h>>>0>=i>>>0){ga=140;break}}else h=0;X=H(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=X;c[g+28272+(j*40|0)+20>>2]=X;c[g+28272+(j*40|0)+28>>2]=X;c[g+28272+(j*40|0)+36>>2]=X}j=j+1|0}if((ga|0)==140){g=c[f+4>>2]|0;c[n>>2]=h;c[n+4>>2]=i;We(g,16,139948,n);h=-1;break a}s=0;while(1){if(s>>>0>=h>>>0)break d;if(c[ia>>2]&4096<<(s<<1)){i=a[g+28272+(s*40|0)+12>>0]|0;o=a[g+28272+(s*40|0)+4>>0]|0;p=a[g+28272+(s*40|0)+11>>0]|0;n=g+27952+(s*160|0)+44|0;q=g+27952+(s*160|0)+16|0;h=a[g+28272+(s*40|0)+8>>0]|0;if(h<<24>>24==-2){r=g+27952+(s*160|0)+12|0;l=a[g+28272+(s*40|0)+3>>0]|0}else{r=g+27952+(s*160|0)+32|0;l=h<<24>>24}j=o<<24>>24==i<<24>>24;k=p<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((l|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){k=b[n>>1]|0;if(p<<24>>24!=-2&(o<<24>>24==-2&(l|0)==-2)){h=b[g+27952+(s*160|0)+46>>1]|0;break}else{k=Ck(k,b[q>>1]|0,b[r>>1]|0)|0;h=Ck(b[g+27952+(s*160|0)+46>>1]|0,b[g+27952+(s*160|0)+18>>1]|0,b[r+2>>1]|0)|0;break}}if(k){k=b[n>>1]|0;h=b[g+27952+(s*160|0)+46>>1]|0;break}if(j){k=b[q>>1]|0;h=b[g+27952+(s*160|0)+18>>1]|0;break}else{k=b[r>>1]|0;h=b[r+2>>1]|0;break}}else{k=Ck(b[n>>1]|0,b[q>>1]|0,b[r>>1]|0)|0;h=Ck(b[g+27952+(s*160|0)+46>>1]|0,b[g+27952+(s*160|0)+18>>1]|0,b[r+2>>1]|0)|0}while(0);j=(d[g+28352+(s*80|0)+9>>0]|0)+(d[g+28352+(s*80|0)+23>>0]|0)|0;i=Dk(g,40,(d[g+28352+(s*80|0)+8>>0]|0)+(d[g+28352+(s*80|0)+22>>0]|0)|0,Z)|0;j=Dk(g,47,j,_)|0;if((i|0)==-2147483648|(j|0)==-2147483648)break;X=(c[_>>2]<<8&65280|c[Z>>2]&255)*65537|0;c[g+28352+(s*80|0)+24>>2]=X;c[g+28352+(s*80|0)+28>>2]=X;c[g+28352+(s*80|0)+40>>2]=X;c[g+28352+(s*80|0)+44>>2]=X;c[g+28352+(s*80|0)+56>>2]=X;c[g+28352+(s*80|0)+60>>2]=X;c[g+28352+(s*80|0)+72>>2]=X;c[g+28352+(s*80|0)+76>>2]=X;h=j+h<<16|i+k&65535;c[g+27952+(s*160|0)+48>>2]=h;c[g+27952+(s*160|0)+52>>2]=h;c[g+27952+(s*160|0)+56>>2]=h;c[g+27952+(s*160|0)+60>>2]=h;c[g+27952+(s*160|0)+80>>2]=h;c[g+27952+(s*160|0)+84>>2]=h;c[g+27952+(s*160|0)+88>>2]=h;c[g+27952+(s*160|0)+92>>2]=h;c[g+27952+(s*160|0)+112>>2]=h;c[g+27952+(s*160|0)+116>>2]=h;c[g+27952+(s*160|0)+120>>2]=h;c[g+27952+(s*160|0)+124>>2]=h;c[g+27952+(s*160|0)+144>>2]=h;c[g+27952+(s*160|0)+148>>2]=h;c[g+27952+(s*160|0)+152>>2]=h;c[g+27952+(s*160|0)+156>>2]=h;h=c[t>>2]|0}s=s+1|0}h=-1094995529;break a}S=g+23412|0;o=c[ia>>2]|0;p=g+21832|0;if(!(h&16))n=0;else{n=0;i:while(1){h=c[S>>2]|0;if(n>>>0>=h>>>0)break;k=n<<1;l=g+23404+(n<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(o&4096<<j+k))h=-1;else{i=c[l>>2]<<c[p>>2];if(i>>>0>1){h=Bk(g,n,j<<3)|0;if(h>>>0>=i>>>0){ga=171;break i}}else h=0;h=H(h,16843009)|0}U=(j<<4|12)+(g+28272+(n*40|0))|0;c[U>>2]=h;c[U+8>>2]=h;j=j+1|0}n=n+1|0}if((ga|0)==171){g=c[f+4>>2]|0;c[r>>2]=h;c[r+4>>2]=i;We(g,16,139948,r);h=-1;break a}N=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;M=0;j:while(1){if(M>>>0>=h>>>0)break d;z=M<<1;A=g+28272+(M*40|0)+4|0;B=g+27952+(M*160|0)+16|0;C=g+27952+(M*160|0)+18|0;D=g+28272+(M*40|0)+11|0;E=g+27952+(M*160|0)+40|0;F=12288<<z;G=g+27952+(M*160|0)+42|0;I=g+28272+(M*40|0)+27|0;J=g+27952+(M*160|0)+108|0;K=g+27952+(M*160|0)+110|0;y=0;while(1){if((y|0)>=2)break;if(!(c[ia>>2]&4096<<y+z)){U=y<<4|12;c[g+28352+(M*80|0)+(U<<1)>>2]=0;c[g+28352+(M*80|0)+(U<<1)+4>>2]=0;c[g+28352+(M*80|0)+(U<<1)+16>>2]=0;c[g+28352+(M*80|0)+(U<<1)+20>>2]=0;T=g+27952+(M*160|0)+(U<<2)|0;U=g+27952+(M*160|0)+(U<<2)+32|0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0}else{x=y<<3;L=y<<4|12;p=a[g+28272+(M*40|0)+L>>0]|0;q=p<<24>>24;do if(!y){if((a[A>>0]|0)!=p<<24>>24){ga=183;break}k=b[B>>1]|0;j=b[C>>1]|0}else{if((a[I>>0]|0)!=p<<24>>24){ga=183;break}k=b[J>>1]|0;j=b[K>>1]|0}while(0);do if((ga|0)==183){ga=0;k=a[150645+x>>0]|0;n=k&255;w=n+-8|0;u=a[g+28272+(M*40|0)+w>>0]|0;v=n+-1|0;s=a[g+28272+(M*40|0)+v>>0]|0;r=g+27952+(M*160|0)+(v<<2)|0;t=g+27952+(M*160|0)+(w<<2)|0;h=n+-4|0;i=a[g+28272+(M*40|0)+h>>0]|0;l=i<<24>>24;i=i<<24>>24==-2;do if((n&7|0)==4&((k&255)>19&(i&(c[W>>2]|0)!=0))){if((a[D>>0]|0)==-2){ga=192;break}o=c[(c[N>>2]|0)+48>>2]|0;c[E>>2]=0;j=(c[O>>2]&128|0)==0;if(!(c[V>>2]|0)){if(j){ga=192;break}U=c[X>>2]|0;i=U+(c[P>>2]|0)|0;h=(c[ea>>2]<<1&2)+(n>>>5)|0;if(!(c[o+((H(h>>>2,U)|0)+i<<2)>>2]&F)){n=E;l=-1;break}l=c[N>>2]|0;U=c[l+36+(M<<2)>>2]|0;n=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h)|0)|0;b[E>>1]=b[U+(n<<2)>>1]|0;b[G>>1]=b[U+(n<<2)+2>>1]<<1;n=E;l=a[(c[l+68+(M<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!j){ga=192;break}i=c[g+21720+(((k&255)>35&1)<<2)>>2]|0;h=n>>>2;if(!(c[o+(i<<2)>>2]&F)){n=E;l=-1;break}l=c[N>>2]|0;U=c[l+36+(M<<2)>>2]|0;n=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h&3)|0)|0;b[E>>1]=b[U+(n<<2)>>1]|0;b[G>>1]=(b[U+(n<<2)+2>>1]|0)/2|0;n=E;l=a[(c[l+68+(M<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ga=192;while(0);do if((ga|0)==192){ga=0;if(i){l=n+-9|0;n=g+27952+(M*160|0)+(l<<2)|0;l=a[g+28272+(M*40|0)+l>>0]|0;break}else{n=g+27952+(M*160|0)+(h<<2)|0;break}}while(0);j=u<<24>>24==p<<24>>24;i=s<<24>>24==p<<24>>24;h=(i&1)+(j&1)+((l|0)==(q|0)&1)|0;if(h>>>0>1){k=Ck(b[r>>1]|0,b[t>>1]|0,b[n>>1]|0)|0;j=Ck(b[g+27952+(M*160|0)+(v<<2)+2>>1]|0,b[g+27952+(M*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}if((h|0)!=1){k=b[r>>1]|0;if(s<<24>>24!=-2&(u<<24>>24==-2&(l|0)==-2)){j=b[g+27952+(M*160|0)+(v<<2)+2>>1]|0;break}else{k=Ck(k,b[t>>1]|0,b[n>>1]|0)|0;j=Ck(b[g+27952+(M*160|0)+(v<<2)+2>>1]|0,b[g+27952+(M*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(i){k=b[r>>1]|0;j=b[g+27952+(M*160|0)+(v<<2)+2>>1]|0;break}if(j){k=b[t>>1]|0;j=b[g+27952+(M*160|0)+(w<<2)+2>>1]|0;break}else{k=b[n>>1]|0;j=b[n+2>>1]|0;break}}while(0);U=d[150645+x>>0]|0;h=U+-1|0;U=U+-8|0;i=(d[g+28352+(M*80|0)+(U<<1)+1>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)+1>>0]|0)|0;h=Dk(g,40,(d[g+28352+(M*80|0)+(U<<1)>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)>>0]|0)|0,Z)|0;i=Dk(g,47,i,_)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break j;U=(c[_>>2]<<8&65280|c[Z>>2]&255)*65537|0;c[g+28352+(M*80|0)+(L<<1)>>2]=U;c[g+28352+(M*80|0)+(L<<1)+4>>2]=U;c[g+28352+(M*80|0)+(L<<1)+16>>2]=U;c[g+28352+(M*80|0)+(L<<1)+20>>2]=U;U=i+j<<16|h+k&65535;c[g+27952+(M*160|0)+(L<<2)>>2]=U;c[g+27952+(M*160|0)+(L<<2)+4>>2]=U;c[g+27952+(M*160|0)+(L<<2)+8>>2]=U;c[g+27952+(M*160|0)+(L<<2)+12>>2]=U;c[g+27952+(M*160|0)+(L<<2)+32>>2]=U;c[g+27952+(M*160|0)+(L<<2)+36>>2]=U;c[g+27952+(M*160|0)+(L<<2)+40>>2]=U;c[g+27952+(M*160|0)+(L<<2)+44>>2]=U}y=y+1|0}M=M+1|0;h=c[S>>2]|0}h=-1094995529;break a}k:while(1){h=c[S>>2]|0;if(n>>>0>=h>>>0)break;k=n<<1;l=g+23404+(n<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(o&4096<<j+k))h=-1;else{i=c[l>>2]<<c[p>>2];if(i>>>0>1){h=Bk(g,n,j<<2)|0;if(h>>>0>=i>>>0){ga=220;break k}}else h=0;h=h*257&65535}U=(j<<1)+12+(g+28272+(n*40|0))|0;b[U>>1]=h;b[U+8>>1]=h;b[U+16>>1]=h;b[U+24>>1]=h;j=j+1|0}n=n+1|0}if((ga|0)==220){g=c[f+4>>2]|0;c[q>>2]=h;c[q+4>>2]=i;We(g,16,139948,q);h=-1;break a}N=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;M=0;l:while(1){if(M>>>0>=h>>>0)break d;z=M<<1;A=g+28272+(M*40|0)+11|0;B=g+27952+(M*160|0)+44|0;C=g+27952+(M*160|0)+46|0;D=g+27952+(M*160|0)+40|0;E=12288<<z;F=g+27952+(M*160|0)+42|0;G=g+28272+(M*40|0)+8|0;I=g+27952+(M*160|0)+20|0;J=g+28272+(M*40|0)+5|0;K=g+27952+(M*160|0)+32|0;y=0;while(1){if((y|0)>=2)break;if(!(c[ia>>2]&4096<<y+z)){U=(y<<1)+12|0;c[g+28352+(M*80|0)+(U<<1)>>2]=0;c[g+28352+(M*80|0)+(U<<1)+16>>2]=0;c[g+28352+(M*80|0)+(U<<1)+32>>2]=0;c[g+28352+(M*80|0)+(U<<1)+48>>2]=0;c[g+27952+(M*160|0)+(U<<2)>>2]=0;c[g+27952+(M*160|0)+(U<<2)+4>>2]=0;c[g+27952+(M*160|0)+(U<<2)+32>>2]=0;c[g+27952+(M*160|0)+(U<<2)+36>>2]=0;c[g+27952+(M*160|0)+(U<<2)+64>>2]=0;c[g+27952+(M*160|0)+(U<<2)+68>>2]=0;c[g+27952+(M*160|0)+(U<<2)+96>>2]=0;c[g+27952+(M*160|0)+(U<<2)+100>>2]=0}else{x=y<<2;L=(y<<1)+12|0;q=a[g+28272+(M*40|0)+L>>0]|0;u=q<<24>>24;do if(!y)if((a[A>>0]|0)==q<<24>>24){k=b[B>>1]|0;j=b[C>>1]|0}else ga=234;else{h=a[G>>0]|0;if(h<<24>>24==-2){i=I;h=a[J>>0]|0}else i=K;if(h<<24>>24!=q<<24>>24){ga=234;break}k=b[i>>1]|0;j=b[i+2>>1]|0}while(0);do if((ga|0)==234){ga=0;h=a[150645+x>>0]|0;n=h&255;v=n+-8|0;r=a[g+28272+(M*40|0)+v>>0]|0;w=n+-1|0;s=a[g+28272+(M*40|0)+w>>0]|0;p=g+27952+(M*160|0)+(w<<2)|0;t=g+27952+(M*160|0)+(v<<2)|0;i=n+-6|0;j=a[g+28272+(M*40|0)+i>>0]|0;l=j<<24>>24;j=j<<24>>24==-2;do if((n&7|0)==4&((h&255)>19&(j&(c[W>>2]|0)!=0))){if((a[A>>0]|0)==-2){ga=243;break}o=c[(c[N>>2]|0)+48>>2]|0;c[D>>2]=0;k=(c[O>>2]&128|0)==0;if(!(c[V>>2]|0)){if(k){ga=243;break}U=c[X>>2]|0;i=U+(c[P>>2]|0)|0;h=(c[ea>>2]<<1&2)+(n>>>5)|0;if(!(c[o+((H(h>>>2,U)|0)+i<<2)>>2]&E)){n=D;l=-1;break}l=c[N>>2]|0;U=c[l+36+(M<<2)>>2]|0;n=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h)|0)|0;b[D>>1]=b[U+(n<<2)>>1]|0;b[F>>1]=b[U+(n<<2)+2>>1]<<1;n=D;l=a[(c[l+68+(M<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!k){ga=243;break}i=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;h=n>>>2;if(!(c[o+(i<<2)>>2]&E)){n=D;l=-1;break}l=c[N>>2]|0;U=c[l+36+(M<<2)>>2]|0;n=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h&3)|0)|0;b[D>>1]=b[U+(n<<2)>>1]|0;b[F>>1]=(b[U+(n<<2)+2>>1]|0)/2|0;n=D;l=a[(c[l+68+(M<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ga=243;while(0);do if((ga|0)==243){ga=0;if(j){l=n+-9|0;n=g+27952+(M*160|0)+(l<<2)|0;l=a[g+28272+(M*40|0)+l>>0]|0;break}else{n=g+27952+(M*160|0)+(i<<2)|0;break}}while(0);j=r<<24>>24==q<<24>>24;i=s<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((l|0)==(u|0)&1)|0;if(h>>>0>1){k=Ck(b[p>>1]|0,b[t>>1]|0,b[n>>1]|0)|0;j=Ck(b[g+27952+(M*160|0)+(w<<2)+2>>1]|0,b[g+27952+(M*160|0)+(v<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}if((h|0)!=1){k=b[p>>1]|0;if(s<<24>>24!=-2&(r<<24>>24==-2&(l|0)==-2)){j=b[g+27952+(M*160|0)+(w<<2)+2>>1]|0;break}else{k=Ck(k,b[t>>1]|0,b[n>>1]|0)|0;j=Ck(b[g+27952+(M*160|0)+(w<<2)+2>>1]|0,b[g+27952+(M*160|0)+(v<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(i){k=b[p>>1]|0;j=b[g+27952+(M*160|0)+(w<<2)+2>>1]|0;break}if(j){k=b[t>>1]|0;j=b[g+27952+(M*160|0)+(v<<2)+2>>1]|0;break}else{k=b[n>>1]|0;j=b[n+2>>1]|0;break}}while(0);U=d[150645+x>>0]|0;h=U+-1|0;U=U+-8|0;i=(d[g+28352+(M*80|0)+(U<<1)+1>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)+1>>0]|0)|0;h=Dk(g,40,(d[g+28352+(M*80|0)+(U<<1)>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)>>0]|0)|0,Z)|0;i=Dk(g,47,i,_)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break l;U=(c[_>>2]<<8&65280|c[Z>>2]&255)*65537|0;c[g+28352+(M*80|0)+(L<<1)>>2]=U;c[g+28352+(M*80|0)+(L<<1)+16>>2]=U;c[g+28352+(M*80|0)+(L<<1)+32>>2]=U;c[g+28352+(M*80|0)+(L<<1)+48>>2]=U;U=i+j<<16|h+k&65535;c[g+27952+(M*160|0)+(L<<2)>>2]=U;c[g+27952+(M*160|0)+(L<<2)+4>>2]=U;c[g+27952+(M*160|0)+(L<<2)+32>>2]=U;c[g+27952+(M*160|0)+(L<<2)+36>>2]=U;c[g+27952+(M*160|0)+(L<<2)+64>>2]=U;c[g+27952+(M*160|0)+(L<<2)+68>>2]=U;c[g+27952+(M*160|0)+(L<<2)+96>>2]=U;c[g+27952+(M*160|0)+(L<<2)+100>>2]=U}y=y+1|0}M=M+1|0;h=c[S>>2]|0}h=-1094995529;break a}else{if(!(h&1)){Z=g+21660|0;_=Lj(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[Z>>2]|0,0)|0;c[Z>>2]=_;if((_|0)<0){h=-1;break a}}else{m:do if((m|0)!=0?(uk(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)!=0:0){c[ia>>2]=h|16777216;h=0;while(1){if((h|0)>=16)break m;_=d[150645+h>>0]|0;Z=a[_+-1+(g+21664)>>0]|0;X=a[_+-8+(g+21664)>>0]|0;Z=(Z|0)>(X|0)?X:Z;_=g+21664+_|0;Z=(xk(g,(Z|0)<0?2:Z)|0)*257&65535;b[_>>1]=Z;b[_+8>>1]=Z;h=h+4|0}}else{h=0;ga=50}while(0);n:do if((ga|0)==50)while(1){ga=0;if((h|0)==16)break n;ga=d[150645+h>>0]|0;_=a[ga+-1+(g+21664)>>0]|0;Z=a[ga+-8+(g+21664)>>0]|0;_=(_|0)>(Z|0)?Z:_;a[g+21664+ga>>0]=xk(g,(_|0)<0?2:_)|0;h=h+1|0;ga=50}while(0);_=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[la>>2]<<2)>>2]|0)|0;c[_>>2]=c[g+21700>>2];a[_+4>>0]=a[g+21695>>0]|0;a[_+5>>0]=a[g+21687>>0]|0;a[_+6>>0]=a[g+21679>>0]|0;if((Kj(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<0){h=-1;break a}}if(ba){h=yk(f,g)|0;a[(c[f+26396>>2]|0)+ma>>0]=h;h=Lj(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,h,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h}while(0);if(c[ia>>2]&120|0){a[(c[f+26396>>2]|0)+ma>>0]=0;k=c[ia>>2]|0;h=c[f+26368>>2]|0;i=(H(h<<2,c[ea>>2]|0)|0)+(c[da>>2]<<2)|0;l=c[la>>2]<<2;if(!(k&12288)){_=(c[f+24384>>2]|0)+l|0;b[_>>1]=-1;b[_+2>>1]=-1}else{j=(c[f+24352>>2]|0)+(i<<2)|0;Z=g+28e3|0;_=c[Z+4>>2]|0;W=j;c[W>>2]=c[Z>>2];c[W+4>>2]=_;W=g+28008|0;_=c[W+4>>2]|0;Z=j+8|0;c[Z>>2]=c[W>>2];c[Z+4>>2]=_;Z=g+28032|0;_=c[Z+4>>2]|0;W=j+(h<<2)|0;X=W;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28040|0;_=c[X+4>>2]|0;W=W+8|0;c[W>>2]=c[X>>2];c[W+4>>2]=_;W=g+28064|0;_=c[W+4>>2]|0;X=j+(h<<1<<2)|0;Z=X;c[Z>>2]=c[W>>2];c[Z+4>>2]=_;Z=g+28072|0;_=c[Z+4>>2]|0;X=X+8|0;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28096|0;_=c[X+4>>2]|0;j=j+(h*3<<2)|0;Z=j;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28104|0;_=c[Z+4>>2]|0;j=j+8|0;c[j>>2]=c[Z>>2];c[j+4>>2]=_;j=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[la>>2]<<2)>>2]<<1)|0;if(!(k&2048)){X=g+28424|0;Z=c[X+4>>2]|0;_=j;c[_>>2]=c[X>>2];c[_+4>>2]=Z;_=j+6|0;b[_+6>>1]=b[g+28382>>1]|0;b[_+4>>1]=b[g+28398>>1]|0;b[_+2>>1]=b[g+28414>>1]|0}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}_=(c[f+24384>>2]|0)+l|0;a[_>>0]=a[g+28284>>0]|0;a[_+1>>0]=a[g+28286>>0]|0;a[_+2>>0]=a[g+28300>>0]|0;a[_+3>>0]=a[g+28302>>0]|0}if(k&49152|0){Z=(c[f+24356>>2]|0)+(i<<2)|0;W=g+28160|0;_=c[W+4>>2]|0;V=Z;c[V>>2]=c[W>>2];c[V+4>>2]=_;V=g+28168|0;_=c[V+4>>2]|0;W=Z+8|0;c[W>>2]=c[V>>2];c[W+4>>2]=_;W=g+28192|0;_=c[W+4>>2]|0;V=Z+(h<<2)|0;X=V;c[X>>2]=c[W>>2];c[X+4>>2]=_;X=g+28200|0;_=c[X+4>>2]|0;V=V+8|0;c[V>>2]=c[X>>2];c[V+4>>2]=_;V=g+28224|0;_=c[V+4>>2]|0;X=Z+(h<<1<<2)|0;W=X;c[W>>2]=c[V>>2];c[W+4>>2]=_;W=g+28232|0;_=c[W+4>>2]|0;X=X+8|0;c[X>>2]=c[W>>2];c[X+4>>2]=_;X=g+28256|0;_=c[X+4>>2]|0;h=Z+(h*3<<2)|0;Z=h;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28264|0;_=c[Z+4>>2]|0;h=h+8|0;c[h>>2]=c[Z>>2];c[h+4>>2]=_;h=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[la>>2]<<2)>>2]<<1)|0;if(!(k&2048)){X=g+28504|0;Z=c[X+4>>2]|0;_=h;c[_>>2]=c[X>>2];c[_+4>>2]=Z;_=h+6|0;b[_+6>>1]=b[g+28462>>1]|0;b[_+4>>1]=b[g+28478>>1]|0;b[_+2>>1]=b[g+28494>>1]|0}else{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}_=(c[f+24388>>2]|0)+l|0;a[_>>0]=a[g+28324>>0]|0;a[_+1>>0]=a[g+28326>>0]|0;a[_+2>>0]=a[g+28340>>0]|0;a[_+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[$>>2]|0)!=3)){$=(c[f+26408>>2]|0)+(c[la>>2]<<2)|0;a[$+1>>0]=(e[g+28554>>1]|0)>>>1;a[$+2>>0]=(e[g+28556>>1]|0)>>>1;a[$+3>>0]=(e[g+28558>>1]|0)>>>1}}if(!(c[ia>>2]&2)){h=Ek(g)|0;if(ba)u=(Fk(g)|0)<<4|h;else u=h}else if(Y>>>0>15&(ba^1)){We(c[f+4>>2]|0,16,139968,aa);h=-1094995529;break}else u=Y;c[g+21856>>2]=u;b[(c[f+26392>>2]|0)+(ma<<1)>>1]=u;s=(u&15|0)==0;if(!((m|0)==0|s)?(c[ia>>2]&7|0)==0:0){ba=(uk(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)<<24;c[ia>>2]=c[ia>>2]|ba}k=c[ia>>2]|0;do if(!((k&16777216|0)==0?1:(c[(c[ha>>2]|0)+12>>2]|0)!=3)){if((c[f+25704>>2]|0)>>>0>=151){h=0;while(1){if((h|0)==2)break;i=c[g+21740+(h<<2)>>2]|0;if((i|0)!=0&(i&16777216|0)==0){aa=i<<4&64;ba=h<<4;a[ba+99+(g+27824)>>0]=aa;a[ba+91+(g+27824)>>0]=aa;a[ba+59+(g+27824)>>0]=aa;a[ba+51+(g+27824)>>0]=aa;a[ba+19+(g+27824)>>0]=aa;a[(ba|11)+(g+27824)>>0]=aa}h=h+1|0}ba=c[g+21732>>2]|0;h=(ba&4|0)==0?0:1077952576;if(!((ba|0)!=0&(ba&16777216|0)==0))break;c[g+27828>>2]=h;c[g+27868>>2]=h;c[g+27908>>2]=h;break}i=k&7;j=i|0?64:0;h=0;while(1){if((h|0)==2)break;ba=c[g+21740+(h<<2)>>2]|0;if((ba|0)!=0&(ba&16777216|0)==0){ba=h<<4;a[ba+99+(g+27824)>>0]=j;a[ba+91+(g+27824)>>0]=j;a[ba+59+(g+27824)>>0]=j;a[ba+51+(g+27824)>>0]=j;a[ba+19+(g+27824)>>0]=j;a[(ba|11)+(g+27824)>>0]=j}h=h+1|0}ba=c[g+21732>>2]|0;if((ba|0)!=0&(ba&16777216|0)==0){ba=(i|0)==0?0:1077952576;c[g+27828>>2]=ba;c[g+27868>>2]=ba;c[g+27908>>2]=ba}}while(0);c[(c[f+24364>>2]|0)+(ma<<2)>>2]=k;if((u|0)==0?(c[ia>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;c[g+864>>2]=0;h=g+848|0}else ga=302;o:do if((ga|0)==302){v=g+32856|0;m=g+864|0;do if(uk(v,(c[m>>2]|0?61:60)+(g+32904)|0)|0){k=(c[ca+1184>>2]|0)*6|0;l=k+3|0;i=l<<1;h=62;j=1;while(1){if(!(uk(v,g+32904+h|0)|0)){ga=306;break}if((j|0)<(i|0)){h=63;j=j+1|0}else{ga=429;break}}if((ga|0)==306){q=j+1>>1;q=(j&1|0)==0?0-q|0:q;c[m>>2]=q;h=g+848|0;q=(c[h>>2]|0)+q|0;q=(q>>>0>l>>>0?((q|0)<0?k+4|0:-4-k|0):0)+q|0;c[h>>2]=q;ga=c[ja>>2]|0;c[g+852>>2]=d[ga+548+q>>0];c[g+856>>2]=d[ga+636+q>>0];break}else if((ga|0)==429){h=c[f+4>>2]|0;g=c[ea>>2]|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=g;We(h,16,139981,fa);h=-1;break a}}else{c[m>>2]=0;q=g+848|0;h=q;q=c[q>>2]|0}while(0);i=c[ia>>2]|0;ga=(i&128|0)==0;r=(q|0)!=0;t=ga?(r?f+26428|0:f+26716|0):r?f+26572|0:f+26860|0;r=ga?(r?f+26444|0:f+26732|0):r?f+26588|0:f+26876|0;p:do if(!(i&2)){p=i&7|0?0:3;o=(i&16777216|0)==0;n=0;while(1){if((n|0)==4)break p;q:do if(!(1<<n&u)){ga=(d[150645+(n<<2)>>0]|0)+(g+27824)|0;b[ga>>1]=0;b[ga+8>>1]=0}else{if(!o){i=n<<2;j=g+28560+(n<<6<<ka<<1)|0;k=(c[(c[ja>>2]|0)+173812+(p<<2)>>2]|0)+(q<<8)|0;do if((c[(c[ha>>2]|0)+12>>2]|0)==3){l=d[150645+i>>0]|0;ga=(a[l+-1+(g+27824)>>0]|0)!=0&1;if(Gk(v,((a[l+-8+(g+27824)>>0]|0?ga|2:ga)|1012)+(g+32904)|0)|0)break;ga=g+27824+l|0;b[ga>>1]=0;b[ga+8>>1]=0;break q}while(0);Ik(f,g,j,5,i,r,k,64);break}j=(c[(c[ja>>2]|0)+173788+(p<<2)>>2]|0)+(q<<6)|0;k=n<<2;i=0;while(1){if((i|0)==4)break q;l=i+k|0;m=d[150645+l>>0]|0;ga=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,(a[m+-8+(g+27824)>>0]|0?ga|2:ga)+93+(g+32904)|0)|0))a[g+27824+m>>0]=0;else Ik(f,g,g+28560+(l<<4<<ka<<1)|0,2,l,t,j,16);i=i+1|0}}while(0);n=n+1|0}}else{i=g+31632|0;j=i;k=j+64|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Gk(v,((c[g+21860>>2]|0)>>>7&2|(c[g+21864>>2]|0)>>>8&1)+85+(g+32904)|0)|0))a[g+27824>>0]=0;else Hk(f,g,i,0,48,t,16);if(s){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;break}j=(c[(c[ja>>2]|0)+173788>>2]|0)+(q<<6)|0;k=t+1|0;i=0;while(1){if((i|0)==16)break p;l=d[150645+i>>0]|0;ga=(a[l+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,(a[l+-8+(g+27824)>>0]|0?ga|2:ga)+89+(g+32904)|0)|0))a[g+27824+l>>0]=0;else Ik(f,g,g+28560+(i<<4<<ka<<1)|0,1,i,k,j,15);i=i+1|0}}while(0);j=c[(c[ha>>2]|0)+12>>2]|0;if((j|0)!=3){i=(u&48|0)!=0;if((j|0)!=2){r:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break r;l=i+49|0;ga=1<<i+6;ha=(c[j>>2]&ga|0)!=0&1;if(!(Gk(v,(c[k>>2]&ga|0?ha|2:ha)+97+(g+32904)|0)|0))a[(d[150645+l>>0]|0)+(g+27824)>>0]=0;else Hk(f,g,g+28560+((i<<8)+256<<ka<<1)|0,3,l,128049,4);i=i+1|0}}while(0);if(!(u&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}m=t+1|0;i=0;s:while(1){if((i|0)==2)break o;n=i+1|0;o=(c[(c[ja>>2]|0)+173788+((c[ia>>2]&7|0?0:3)+n<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;j=(i<<4)+16|0;i=0;while(1){if((i|0)==4){i=n;continue s}k=j+i|0;l=d[150645+k>>0]|0;ha=(a[l+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,(a[l+-8+(g+27824)>>0]|0?ha|2:ha)+101+(g+32904)|0)|0))a[g+27824+l>>0]=0;else Ik(f,g,g+28560+(k<<4<<ka<<1)|0,4,k,m,o,15);i=i+1|0}}}t:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break t;l=i+49|0;ga=1<<i+6;ha=(c[j>>2]&ga|0)!=0&1;if(!(Gk(v,(c[k>>2]&ga|0?ha|2:ha)+97+(g+32904)|0)|0))a[(d[150645+l>>0]|0)+(g+27824)>>0]=0;else Jk(f,g,g+28560+((i<<8)+256<<ka<<1)|0,l);i=i+1|0}}while(0);if(!(u&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}u=16<<ka;q=t+1|0;r=u<<2;i=0;u:while(1){if((i|0)==2)break o;s=(i<<4)+16|0;t=i+1|0;m=(c[(c[ja>>2]|0)+173788+((c[ia>>2]&7|0?0:3)+t<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;i=g+28560+(s<<4<<ka<<1)|0;j=0;while(1){if((j|0)==2){i=t;continue u}n=(j<<3)+s|0;k=0;l=i;while(1){if((k|0)==4)break;o=n+k|0;p=d[150645+o>>0]|0;ha=(a[p+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,(a[p+-8+(g+27824)>>0]|0?ha|2:ha)+101+(g+32904)|0)|0))a[g+27824+p>>0]=0;else Ik(f,g,l,4,o,q,m,15);k=k+1|0;l=l+(u<<1)|0}i=i+(r<<1)|0;j=j+1|0}}}i=c[ia>>2]|0;q=c[g+852>>2]|0;v:do if(!(i&2)){p=i&7|0?1:4;o=(i&16777216|0)==0;n=0;while(1){if((n|0)==4)break v;w:do if(!(1<<n&u)){ha=(d[150645+((n<<2)+16)>>0]|0)+(g+27824)|0;b[ha>>1]=0;b[ha+8>>1]=0}else{if(!o){i=(n<<2)+16|0;j=c[(c[ja>>2]|0)+173812+(p<<2)>>2]|0;k=d[150645+i>>0]|0;ha=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,((a[k+-8+(g+27824)>>0]|0?ha|2:ha)|1016)+(g+32904)|0)|0)){ha=g+27824+k|0;b[ha>>1]=0;b[ha+8>>1]=0;break}else{Ik(f,g,g+28560+(i<<4<<ka<<1)|0,9,i,r,j+(q<<8)|0,64);break}}j=(c[(c[ja>>2]|0)+173788+(p<<2)>>2]|0)+(q<<6)|0;k=(n<<2)+16|0;i=0;while(1){if((i|0)==4)break w;l=k+i|0;m=d[150645+l>>0]|0;ha=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,((a[m+-8+(g+27824)>>0]|0?ha|2:ha)|468)+(g+32904)|0)|0))a[g+27824+m>>0]=0;else Ik(f,g,g+28560+(l<<4<<ka<<1)|0,8,l,t,j,16);i=i+1|0}}while(0);n=n+1|0}}else{i=g+31696|0;j=i;k=j+64|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Gk(v,((c[g+21864>>2]|0)>>>9&1|(c[g+21860>>2]|0)>>>8&2|460)+(g+32904)|0)|0))a[g+27864>>0]=0;else Hk(f,g,i,6,49,t,16);if(s){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}j=(c[(c[ja>>2]|0)+173792>>2]|0)+(q<<6)|0;k=t+1|0;i=0;while(1){if((i|0)==16)break v;l=i+16|0;m=d[150645+l>>0]|0;ha=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,((a[m+-8+(g+27824)>>0]|0?ha|2:ha)|464)+(g+32904)|0)|0))a[g+27824+m>>0]=0;else Ik(f,g,g+28560+(l<<4<<ka<<1)|0,7,l,k,j,15);i=i+1|0}}while(0);i=c[ia>>2]|0;q=c[g+856>>2]|0;if(i&2|0){i=g+31760|0;j=i;k=j+64|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Gk(v,((c[g+21864>>2]|0)>>>10&1|(c[g+21860>>2]|0)>>>9&2|472)+(g+32904)|0)|0))a[g+27904>>0]=0;else Hk(f,g,i,10,50,t,16);if(s){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}m=(c[(c[ja>>2]|0)+173796>>2]|0)+(q<<6)|0;j=t+1|0;i=0;while(1){if((i|0)==16)break o;k=i+32|0;l=d[150645+k>>0]|0;ja=(a[l+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,((a[l+-8+(g+27824)>>0]|0?ja|2:ja)|476)+(g+32904)|0)|0))a[g+27824+l>>0]=0;else Ik(f,g,g+28560+(k<<4<<ka<<1)|0,11,k,j,m,15);i=i+1|0}}p=i&7|0?2:5;o=(i&16777216|0)==0;n=0;while(1){if((n|0)==4)break o;x:do if(!(1<<n&u)){ia=(d[150645+((n<<2)+32)>>0]|0)+(g+27824)|0;b[ia>>1]=0;b[ia+8>>1]=0}else{if(!o){i=(n<<2)+32|0;j=c[(c[ja>>2]|0)+173812+(p<<2)>>2]|0;k=d[150645+i>>0]|0;ia=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,((a[k+-8+(g+27824)>>0]|0?ia|2:ia)|1020)+(g+32904)|0)|0)){ia=g+27824+k|0;b[ia>>1]=0;b[ia+8>>1]=0;break}else{Ik(f,g,g+28560+(i<<4<<ka<<1)|0,13,i,r,j+(q<<8)|0,64);break}}j=(c[(c[ja>>2]|0)+173788+(p<<2)>>2]|0)+(q<<6)|0;k=(n<<2)+32|0;i=0;while(1){if((i|0)==4)break x;l=k+i|0;m=d[150645+l>>0]|0;ia=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(!(Gk(v,((a[m+-8+(g+27824)>>0]|0?ia|2:ia)|480)+(g+32904)|0)|0))a[g+27824+m>>0]=0;else Ik(f,g,g+28560+(l<<4<<ka<<1)|0,12,l,t,j,16);i=i+1|0}}while(0);n=n+1|0}}while(0);a[(c[f+24340>>2]|0)+ma>>0]=c[h>>2];h=c[la>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);Ec=na;return h|0}function vj(a,b){a=a|0;b=b|0;if((c[(c[a+28216>>2]|0)+12>>2]|0)==3)dk(a,b);else ek(a,b);return}function wj(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){bk(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function xj(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=a+26380|0;h=(c[i>>2]|0)!=3&1;k=c[b+21792>>2]>>h<<4;h=c[a+27008>>2]<<4>>h;g=c[a+26376>>2]|0;d=16<<g;g=20<<g;j=(c[b+868>>2]|0)==0;d=(j|(k+d|0)<(h|0)?0:g)+d|0;g=k-(j?0:g)|0;if((!((h|0)<=(g|0)|(d+g|0)<0)?(f=h-g|0,e=(g|0)<0,f=((d|0)>(f|0)?f:d)+(e?g:0)|0,e=e?0:g,ak(a,b,e,f),(c[a+25684>>2]|0)==0):0)?(c[(c[(c[b>>2]|0)+25628>>2]|0)+600>>2]|0)==0:0)Bh((c[a+24312>>2]|0)+4|0,e+-1+f|0,(c[i>>2]|0)==2&1);return}function yj(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;f=c[a+27016>>2]|0;g=(H(f,c[b+21792>>2]|0)|0)+(c[b+21788>>2]|0)|0;h=c[a+26372>>2]|0;d=g+-1|0;i=c[b+832>>2]|0;if((i|0)!=(e[h+(d<<1)>>1]|0|0)){d=g-f|0;if((i|0)==(e[h+(d<<1)>>1]|0|0))j=3;else d=0}else j=3;if((j|0)==3)d=(c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&1;c[b+21828>>2]=d;c[b+21832>>2]=d;return}function zj(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,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,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;na=Ec;Ec=Ec+208|0;fa=na+128|0;_=na+120|0;ba=na+104|0;aa=na+88|0;r=na+80|0;q=na+72|0;p=na+64|0;s=na+56|0;n=na+40|0;o=na+24|0;m=na+16|0;k=na;ha=na+192|0;T=na+176|0;U=na+144|0;ka=f+28212|0;V=c[(c[ka>>2]|0)+64>>2]|0;ga=f+28216|0;$=((c[(c[ga>>2]|0)+12>>2]|0)+-1|0)>>>0<2;ja=c[f+25664>>2]|0;da=g+21788|0;ea=g+21792|0;Y=f+27016|0;ma=(H(c[Y>>2]|0,c[ea>>2]|0)|0)+(c[da>>2]|0)|0;la=g+21796|0;c[la>>2]=ma;l=g+840|0;if((c[l>>2]|0)!=1){j=g+21816|0;h=c[j>>2]|0;if((h|0)==-1){h=Aj(g+4|0)|0;c[j>>2]=h}i=h+-1|0;c[j>>2]=i;if(h){if(c[f+26376>>2]|0?(c[ea>>2]&1|i|0)==0:0){ma=Bj(g+4|0)|0;c[g+21828>>2]=ma;c[g+21832>>2]=ma}Cj(f,g);h=0}else ca=9}else ca=9;a:do if((ca|0)==9){X=f+26376|0;if(c[X>>2]|0?(c[ea>>2]&1|0)==0:0){ia=Bj(g+4|0)|0;c[g+21828>>2]=ia;c[g+21832>>2]=ia}c[g+21648>>2]=0;ia=g+4|0;i=Dj(ia)|0;c[ha>>2]=i;b:do switch(c[l>>2]|0){case 3:if(i>>>0<23){Z=a[114372+(i<<2)+2>>0]|0;h=e[114372+(i<<2)>>1]|0;c[ha>>2]=h;i=Z;Z=0;break b}else{h=i+-23|0;c[ha>>2]=h;ca=21;break b}case 2:if(i>>>0<5){Z=a[114336+(i<<2)+2>>0]|0;h=e[114336+(i<<2)>>1]|0;c[ha>>2]=h;i=Z;Z=0;break b}else{h=i+-5|0;c[ha>>2]=h;ca=21;break b}default:{h=i+-1|0;if(i|0?(c[g+836>>2]|0)==5:0){c[ha>>2]=h;ca=21}else{h=i;ca=21}}}while(0);do if((ca|0)==21)if(h>>>0>25){f=c[f+4>>2]|0;la=(Xh(c[g+836>>2]|0)|0)<<24>>24;ma=c[da>>2]|0;g=c[ea>>2]|0;c[k>>2]=h;c[k+4>>2]=la;c[k+8>>2]=ma;c[k+12>>2]=g;We(f,16,139146,k);h=-1;break a}else{Z=d[114232+(h<<2)+3>>0]|0;c[g+21660>>2]=d[114232+(h<<2)+2>>0];h=e[114232+(h<<2)>>1]|0;c[ha>>2]=h;i=0;break}while(0);W=g+21828|0;if(c[W>>2]|0){h=h|128;c[ha>>2]=h}b[(c[f+26372>>2]|0)+(ma<<1)>>1]=c[g+832>>2];if(h&4|0){h=c[ga>>2]|0;h=H(c[h+1184>>2]|0,e[114516+(c[h+12>>2]<<1)>>1]|0)|0;c[g+27780>>2]=Ej(ia)|0;if((Fj(ia)|0)<(h|0)){We(c[f+4>>2]|0,16,139189,m);h=-1094995529;break}else{Gj(ia,h);a[(c[f+24340>>2]|0)+ma>>0]=0;k=(c[f+25972>>2]|0)+(ma*48|0)|0;l=k+48|0;do{a[k>>0]=16;k=k+1|0}while((k|0)<(l|0));c[(c[f+24364>>2]|0)+(ma<<2)>>2]=c[ha>>2];h=0;break}}Hj(f,g,h);Ij(f,g,h);c:do if(!(h&7)){if(i<<24>>24==4){d:do if((c[l>>2]|0)==3){h=0;while(1){if((h|0)>=4)break;i=Mj(ia)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>12){ca=52;break}c[T+(h<<2)>>2]=d[114464+(k<<2)+2>>0];b[j>>1]=b[114464+((i&65535)<<2)>>1]|0;h=h+1|0}if((ca|0)==52){g=c[f+4>>2]|0;ma=c[da>>2]|0;f=c[ea>>2]|0;c[o>>2]=k;c[o+4>>2]=ma;c[o+8>>2]=f;We(g,16,139230,o);break}if(!((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256))ca=56;else{Nj(f,g,ha);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;ca=56}}else{h=0;while(1){if((h|0)>=4){ca=56;break d}i=Mj(ia)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>3)break;c[T+(h<<2)>>2]=d[114356+(k<<2)+2>>0];b[j>>1]=b[114356+((i&65535)<<2)>>1]|0;h=h+1|0}g=c[f+4>>2]|0;ma=c[da>>2]|0;f=c[ea>>2]|0;c[n>>2]=k;c[n+4>>2]=ma;c[n+8>>2]=f;We(g,16,139270,n)}while(0);do if((ca|0)==56){S=g+23412|0;m=g+21832|0;l=0;e:while(1){h=c[S>>2]|0;if(l>>>0>=h>>>0)break;if(!(c[ha>>2]&512))k=c[g+23404+(l<<2)>>2]<<c[m>>2];else k=1;j=4096<<(l<<1);i=0;while(1){if((i|0)>=4)break;h=e[g+28552+(i<<1)>>1]|0;if(!(h&256)){f:do if(!(j&h))h=-1;else switch(k|0){case 1:{h=0;break f}case 2:{h=(Bj(ia)|0)^1;break f}default:{h=Mj(ia)|0;if(h>>>0<k>>>0)break f;else{ca=73;break e}}}while(0);c[U+(l<<4)+(i<<2)>>2]=h}i=i+1|0}l=l+1|0}if((ca|0)==73){g=c[f+4>>2]|0;c[s>>2]=h;We(g,16,139310,s);break}if(!V)l=0;else{V=(c[(c[ga>>2]|0)+72>>2]|0)==0;l=g+28552|0;l=(((V?24117616:7340144)&c[l>>2]|0)==0?((V?24117616:7340144)&c[l+4>>2]|0)==0:0)&1}N=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;M=0;while(1){if(M>>>0>=h>>>0)break;J=M<<1;F=4096<<J;G=g+28272+(M*40|0)+11|0;I=g+27952+(M*160|0)+40|0;J=12288<<J;K=g+27952+(M*160|0)+42|0;E=0;while(1){if((E|0)==4)break;h=g+28552+(E<<1)|0;g:do if(!(b[h>>1]&256)){V=c[U+(M<<4)+(E<<2)>>2]&255;L=E<<2;i=d[150645+L>>0]|0;a[i+9+(g+28272+(M*40|0))>>0]=V;a[i+8+(g+28272+(M*40|0))>>0]=V;a[i+1+(g+28272+(M*40|0))>>0]=V;a[g+28272+(M*40|0)+i>>0]=V;h=e[h>>1]|0;if(!(F&h)){c[g+27952+(M*160|0)+(i<<2)+36>>2]=0;c[g+27952+(M*160|0)+(i<<2)+32>>2]=0;c[g+27952+(M*160|0)+(i<<2)+4>>2]=0;c[g+27952+(M*160|0)+(i<<2)>>2]=0;break}A=h&24|0?2:1;B=c[T+(E<<2)>>2]|0;C=(h&8|0)==0;D=(h&16|0)==0;x=(h&32|0)==0;w=0;while(1){if((w|0)>=(B|0))break g;h=a[150645+((H(w,A)|0)+L)>>0]|0;y=h&255;z=g+27952+(M*160|0)+(y<<2)|0;o=a[g+28272+(M*40|0)+y>>0]|0;p=o<<24>>24;u=y+-8|0;r=a[g+28272+(M*40|0)+u>>0]|0;v=y+-1|0;s=a[g+28272+(M*40|0)+v>>0]|0;q=g+27952+(M*160|0)+(v<<2)|0;t=g+27952+(M*160|0)+(u<<2)|0;i=u+A|0;j=a[g+28272+(M*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((y&7|0)==4&((h&255)>19&(j&(c[X>>2]|0)!=0))){if((a[G>>0]|0)==-2){ca=95;break}n=c[(c[N>>2]|0)+48>>2]|0;c[I>>2]=0;m=(c[O>>2]&128|0)==0;if(!(c[W>>2]|0)){if(m){ca=95;break}V=c[Y>>2]|0;h=V+(c[P>>2]|0)|0;i=(c[ea>>2]<<1&2)+(y>>>5)|0;if(!(c[n+((H(i>>>2,V)|0)+h<<2)>>2]&J)){m=I;k=-1;break}k=c[N>>2]|0;V=c[k+36+(M<<2)>>2]|0;m=(c[(c[Q>>2]|0)+(h<<2)>>2]|0)+3+(H(c[R>>2]|0,i)|0)|0;b[I>>1]=b[V+(m<<2)>>1]|0;b[K>>1]=b[V+(m<<2)+2>>1]<<1;m=I;k=a[(c[k+68+(M<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!m){ca=95;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=y>>>2;if(!(c[n+(h<<2)>>2]&J)){m=I;k=-1;break}k=c[N>>2]|0;V=c[k+36+(M<<2)>>2]|0;m=(c[(c[Q>>2]|0)+(h<<2)>>2]|0)+3+(H(c[R>>2]|0,i&3)|0)|0;b[I>>1]=b[V+(m<<2)>>1]|0;b[K>>1]=(b[V+(m<<2)+2>>1]|0)/2|0;m=I;k=a[(c[k+68+(M<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ca=95;while(0);do if((ca|0)==95){ca=0;if(j){k=y+-9|0;m=g+27952+(M*160|0)+(k<<2)|0;k=a[g+28272+(M*40|0)+k>>0]|0;break}else{m=g+27952+(M*160|0)+(i<<2)|0;break}}while(0);j=r<<24>>24==o<<24>>24;i=s<<24>>24==o<<24>>24;h=(i&1)+(j&1)+((k|0)==(p|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[q>>1]|0;if(s<<24>>24!=-2&(r<<24>>24==-2&(k|0)==-2)){h=b[g+27952+(M*160|0)+(v<<2)+2>>1]|0;break}else{i=Oj(i,b[t>>1]|0,b[m>>1]|0)|0;h=Oj(b[g+27952+(M*160|0)+(v<<2)+2>>1]|0,b[g+27952+(M*160|0)+(u<<2)+2>>1]|0,b[m+2>>1]|0)|0;break}}if(i){i=b[q>>1]|0;h=b[g+27952+(M*160|0)+(v<<2)+2>>1]|0;break}if(j){i=b[t>>1]|0;h=b[g+27952+(M*160|0)+(u<<2)+2>>1]|0;break}else{i=b[m>>1]|0;h=b[m+2>>1]|0;break}}else{i=Oj(b[q>>1]|0,b[t>>1]|0,b[m>>1]|0)|0;h=Oj(b[g+27952+(M*160|0)+(v<<2)+2>>1]|0,b[g+27952+(M*160|0)+(u<<2)+2>>1]|0,b[m+2>>1]|0)|0}while(0);k=(Pj(ia)|0)+i|0;i=(Pj(ia)|0)+h|0;do if(C){if(!D){b[z+4>>1]=k;h=i&65535;j=1;ca=115;break}if(x)break;b[z+32>>1]=k;h=i&65535;j=8;ca=115}else{h=k&65535;b[z+36>>1]=h;b[z+32>>1]=h;b[z+4>>1]=h;h=i&65535;b[z+38>>1]=h;b[z+34>>1]=h;j=1;ca=115}while(0);if((ca|0)==115){ca=0;b[z+(j<<2)+2>>1]=h}b[z>>1]=k;b[g+27952+(M*160|0)+(y<<2)+2>>1]=i;w=w+1|0}}else{V=d[150645+(E<<2)>>0]|0;a[g+28272+(M*40|0)+V>>0]=a[V+1+(g+28272+(M*40|0))>>0]|0}while(0);E=E+1|0}M=M+1|0;h=c[S>>2]|0}break c}while(0);h=-1;break a}if(h&256|0){Nj(f,g,ha);l=c[(c[ga>>2]|0)+72>>2]&V;break}if(h&8|0){s=g+23412|0;t=c[ha>>2]|0;k=g+21832|0;j=0;h:while(1){h=c[s>>2]|0;if(j>>>0>=h>>>0){r=0;break}if(t&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<<c[k>>2];switch(i|0){case 1:{h=0;break}case 2:{h=(Bj(ia)|0)^1;break}default:{h=Mj(ia)|0;if(h>>>0>=i>>>0){ca=132;break h}}}Y=H(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=Y;c[g+28272+(j*40|0)+20>>2]=Y;c[g+28272+(j*40|0)+28>>2]=Y;c[g+28272+(j*40|0)+36>>2]=Y}j=j+1|0}if((ca|0)==132){g=c[f+4>>2]|0;c[p>>2]=h;We(g,16,139310,p);h=-1;break a}while(1){if(r>>>0>=h>>>0){l=V;break c}if(t&4096<<(r<<1)){i=a[g+28272+(r*40|0)+12>>0]|0;n=a[g+28272+(r*40|0)+4>>0]|0;o=a[g+28272+(r*40|0)+11>>0]|0;m=g+27952+(r*160|0)+44|0;p=g+27952+(r*160|0)+16|0;h=a[g+28272+(r*40|0)+8>>0]|0;if(h<<24>>24==-2){q=g+27952+(r*160|0)+12|0;l=a[g+28272+(r*40|0)+3>>0]|0}else{q=g+27952+(r*160|0)+32|0;l=h<<24>>24}j=n<<24>>24==i<<24>>24;k=o<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((l|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[m>>1]|0;if(o<<24>>24!=-2&(n<<24>>24==-2&(l|0)==-2)){h=b[g+27952+(r*160|0)+46>>1]|0;break}else{i=Oj(i,b[p>>1]|0,b[q>>1]|0)|0;h=Oj(b[g+27952+(r*160|0)+46>>1]|0,b[g+27952+(r*160|0)+18>>1]|0,b[q+2>>1]|0)|0;break}}if(k){i=b[m>>1]|0;h=b[g+27952+(r*160|0)+46>>1]|0;break}if(j){i=b[p>>1]|0;h=b[g+27952+(r*160|0)+18>>1]|0;break}else{i=b[q>>1]|0;h=b[q+2>>1]|0;break}}else{i=Oj(b[m>>1]|0,b[p>>1]|0,b[q>>1]|0)|0;h=Oj(b[g+27952+(r*160|0)+46>>1]|0,b[g+27952+(r*160|0)+18>>1]|0,b[q+2>>1]|0)|0}while(0);Y=(Pj(ia)|0)+i|0;h=(Pj(ia)|0)+h<<16|Y&65535;c[g+27952+(r*160|0)+48>>2]=h;c[g+27952+(r*160|0)+52>>2]=h;c[g+27952+(r*160|0)+56>>2]=h;c[g+27952+(r*160|0)+60>>2]=h;c[g+27952+(r*160|0)+80>>2]=h;c[g+27952+(r*160|0)+84>>2]=h;c[g+27952+(r*160|0)+88>>2]=h;c[g+27952+(r*160|0)+92>>2]=h;c[g+27952+(r*160|0)+112>>2]=h;c[g+27952+(r*160|0)+116>>2]=h;c[g+27952+(r*160|0)+120>>2]=h;c[g+27952+(r*160|0)+124>>2]=h;c[g+27952+(r*160|0)+144>>2]=h;c[g+27952+(r*160|0)+148>>2]=h;c[g+27952+(r*160|0)+152>>2]=h;c[g+27952+(r*160|0)+156>>2]=h;h=c[s>>2]|0}r=r+1|0}}Q=g+23412|0;R=c[ha>>2]|0;n=g+21832|0;if(!(h&16))m=0;else{m=0;i:while(1){h=c[Q>>2]|0;if(m>>>0>=h>>>0)break;k=m<<1;l=g+23404+(m<<2)|0;j=0;while(1){if((j|0)>=2)break;j:do if(!(R&4096<<j+k))h=255;else{i=c[l>>2]<<c[n>>2];switch(i|0){case 1:{h=0;break j}case 2:{h=(Bj(ia)|0)^1;break j}default:{h=Mj(ia)|0;if(h>>>0<i>>>0)break j;else{ca=161;break i}}}}while(0);U=(j<<4|12)+(g+28272+(m*40|0))|0;T=H(h,16843009)|0;c[U>>2]=T;c[U+8>>2]=T;j=j+1|0}m=m+1|0}if((ca|0)==161){g=c[f+4>>2]|0;c[q>>2]=h;We(g,16,139310,q);h=-1;break a}L=f+24312|0;M=g+21740|0;N=g+21720|0;O=f+26360|0;P=f+26368|0;K=0;while(1){if(K>>>0>=h>>>0){l=V;break c}y=K<<1;z=g+28272+(K*40|0)+4|0;A=g+27952+(K*160|0)+16|0;B=g+27952+(K*160|0)+18|0;C=g+28272+(K*40|0)+11|0;D=g+27952+(K*160|0)+40|0;E=12288<<y;F=g+27952+(K*160|0)+42|0;G=g+28272+(K*40|0)+27|0;I=g+27952+(K*160|0)+108|0;J=g+27952+(K*160|0)+110|0;x=0;while(1){if((x|0)==2)break;if(!(R&4096<<x+y)){i=0;h=x<<4|12}else{i=x<<3;h=x<<4|12;p=a[g+28272+(K*40|0)+h>>0]|0;q=p<<24>>24;do if(!x){if((a[z>>0]|0)!=p<<24>>24){ca=174;break}j=b[A>>1]|0;i=b[B>>1]|0}else{if((a[G>>0]|0)!=p<<24>>24){ca=174;break}j=b[I>>1]|0;i=b[J>>1]|0}while(0);do if((ca|0)==174){ca=0;i=a[150645+i>>0]|0;n=i&255;v=n+-8|0;s=a[g+28272+(K*40|0)+v>>0]|0;w=n+-1|0;t=a[g+28272+(K*40|0)+w>>0]|0;r=g+27952+(K*160|0)+(w<<2)|0;u=g+27952+(K*160|0)+(v<<2)|0;j=n+-4|0;k=a[g+28272+(K*40|0)+j>>0]|0;l=k<<24>>24;k=k<<24>>24==-2;do if((n&7|0)==4&((i&255)>19&(k&(c[X>>2]|0)!=0))){if((a[C>>0]|0)==-2){ca=183;break}o=c[(c[L>>2]|0)+48>>2]|0;c[D>>2]=0;m=(c[M>>2]&128|0)==0;if(!(c[W>>2]|0)){if(m){ca=183;break}U=c[Y>>2]|0;j=U+(c[N>>2]|0)|0;i=(c[ea>>2]<<1&2)+(n>>>5)|0;if(!(c[o+((H(i>>>2,U)|0)+j<<2)>>2]&E)){m=D;l=-1;break}l=c[L>>2]|0;U=c[l+36+(K<<2)>>2]|0;m=(c[(c[O>>2]|0)+(j<<2)>>2]|0)+3+(H(c[P>>2]|0,i)|0)|0;b[D>>1]=b[U+(m<<2)>>1]|0;b[F>>1]=b[U+(m<<2)+2>>1]<<1;m=D;l=a[(c[l+68+(K<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!m){ca=183;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=n>>>2;if(!(c[o+(j<<2)>>2]&E)){m=D;l=-1;break}l=c[L>>2]|0;U=c[l+36+(K<<2)>>2]|0;m=(c[(c[O>>2]|0)+(j<<2)>>2]|0)+3+(H(c[P>>2]|0,i&3)|0)|0;b[D>>1]=b[U+(m<<2)>>1]|0;b[F>>1]=(b[U+(m<<2)+2>>1]|0)/2|0;m=D;l=a[(c[l+68+(K<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else ca=183;while(0);do if((ca|0)==183){ca=0;if(k){l=n+-9|0;m=g+27952+(K*160|0)+(l<<2)|0;l=a[g+28272+(K*40|0)+l>>0]|0;break}else{m=g+27952+(K*160|0)+(j<<2)|0;break}}while(0);k=s<<24>>24==p<<24>>24;j=t<<24>>24==p<<24>>24;i=(j&1)+(k&1)+((l|0)==(q|0)&1)|0;if(i>>>0>1){j=Oj(b[r>>1]|0,b[u>>1]|0,b[m>>1]|0)|0;i=Oj(b[g+27952+(K*160|0)+(w<<2)+2>>1]|0,b[g+27952+(K*160|0)+(v<<2)+2>>1]|0,b[m+2>>1]|0)|0;break}if((i|0)!=1){j=b[r>>1]|0;if(t<<24>>24!=-2&(s<<24>>24==-2&(l|0)==-2)){i=b[g+27952+(K*160|0)+(w<<2)+2>>1]|0;break}else{j=Oj(j,b[u>>1]|0,b[m>>1]|0)|0;i=Oj(b[g+27952+(K*160|0)+(w<<2)+2>>1]|0,b[g+27952+(K*160|0)+(v<<2)+2>>1]|0,b[m+2>>1]|0)|0;break}}if(j){j=b[r>>1]|0;i=b[g+27952+(K*160|0)+(w<<2)+2>>1]|0;break}if(k){j=b[u>>1]|0;i=b[g+27952+(K*160|0)+(v<<2)+2>>1]|0;break}else{j=b[m>>1]|0;i=b[m+2>>1]|0;break}}while(0);U=(Pj(ia)|0)+j|0;i=(Pj(ia)|0)+i<<16|U&65535}c[g+27952+(K*160|0)+(h<<2)>>2]=i;c[g+27952+(K*160|0)+(h<<2)+4>>2]=i;c[g+27952+(K*160|0)+(h<<2)+8>>2]=i;c[g+27952+(K*160|0)+(h<<2)+12>>2]=i;c[g+27952+(K*160|0)+(h<<2)+32>>2]=i;c[g+27952+(K*160|0)+(h<<2)+36>>2]=i;c[g+27952+(K*160|0)+(h<<2)+40>>2]=i;c[g+27952+(K*160|0)+(h<<2)+44>>2]=i;x=x+1|0}K=K+1|0;h=c[Q>>2]|0}}k:while(1){h=c[Q>>2]|0;if(m>>>0>=h>>>0)break;k=m<<1;l=g+23404+(m<<2)|0;j=0;while(1){if((j|0)>=2)break;l:do if(!(R&4096<<j+k))h=255;else{i=c[l>>2]<<c[n>>2];switch(i|0){case 1:{h=0;break l}case 2:{h=(Bj(ia)|0)^1;break l}default:{h=Mj(ia)|0;if(h>>>0<i>>>0)break l;else{ca=208;break k}}}}while(0);U=(j<<1)+12+(g+28272+(m*40|0))|0;T=h*257&65535;b[U>>1]=T;b[U+8>>1]=T;b[U+16>>1]=T;b[U+24>>1]=T;j=j+1|0}m=m+1|0}if((ca|0)==208){g=c[f+4>>2]|0;c[r>>2]=h;We(g,16,139310,r);h=-1;break a}L=f+24312|0;M=g+21740|0;N=g+21720|0;O=f+26360|0;P=f+26368|0;K=0;while(1){if(K>>>0>=h>>>0){l=V;break c}y=K<<1;z=g+28272+(K*40|0)+11|0;A=g+27952+(K*160|0)+44|0;B=g+27952+(K*160|0)+46|0;C=g+27952+(K*160|0)+40|0;D=12288<<y;E=g+27952+(K*160|0)+42|0;F=g+28272+(K*40|0)+8|0;G=g+27952+(K*160|0)+20|0;I=g+28272+(K*40|0)+5|0;J=g+27952+(K*160|0)+32|0;x=0;while(1){if((x|0)==2)break;if(!(R&4096<<x+y)){i=0;h=(x<<1)+12|0}else{j=x<<2;h=(x<<1)+12|0;t=a[g+28272+(K*40|0)+h>>0]|0;w=t<<24>>24;do if(!x)if((a[z>>0]|0)==t<<24>>24){j=b[A>>1]|0;i=b[B>>1]|0}else ca=223;else{i=a[F>>0]|0;if(i<<24>>24==-2){k=G;i=a[I>>0]|0}else k=J;if(i<<24>>24!=t<<24>>24){ca=223;break}j=b[k>>1]|0;i=b[k+2>>1]|0}while(0);do if((ca|0)==223){ca=0;i=a[150645+j>>0]|0;n=i&255;u=n+-8|0;q=a[g+28272+(K*40|0)+u>>0]|0;v=n+-1|0;r=a[g+28272+(K*40|0)+v>>0]|0;p=g+27952+(K*160|0)+(v<<2)|0;s=g+27952+(K*160|0)+(u<<2)|0;j=n+-6|0;k=a[g+28272+(K*40|0)+j>>0]|0;l=k<<24>>24;k=k<<24>>24==-2;do if((n&7|0)==4&((i&255)>19&(k&(c[X>>2]|0)!=0))){if((a[z>>0]|0)==-2){ca=232;break}o=c[(c[L>>2]|0)+48>>2]|0;c[C>>2]=0;m=(c[M>>2]&128|0)==0;if(!(c[W>>2]|0)){if(m){ca=232;break}U=c[Y>>2]|0;j=U+(c[N>>2]|0)|0;i=(c[ea>>2]<<1&2)+(n>>>5)|0;if(!(c[o+((H(i>>>2,U)|0)+j<<2)>>2]&D)){m=C;l=-1;break}l=c[L>>2]|0;U=c[l+36+(K<<2)>>2]|0;m=(c[(c[O>>2]|0)+(j<<2)>>2]|0)+3+(H(c[P>>2]|0,i)|0)|0;b[C>>1]=b[U+(m<<2)>>1]|0;b[E>>1]=b[U+(m<<2)+2>>1]<<1;m=C;l=a[(c[l+68+(K<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!m){ca=232;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=n>>>2;if(!(c[o+(j<<2)>>2]&D)){m=C;l=-1;break}l=c[L>>2]|0;U=c[l+36+(K<<2)>>2]|0;m=(c[(c[O>>2]|0)+(j<<2)>>2]|0)+3+(H(c[P>>2]|0,i&3)|0)|0;b[C>>1]=b[U+(m<<2)>>1]|0;b[E>>1]=(b[U+(m<<2)+2>>1]|0)/2|0;m=C;l=a[(c[l+68+(K<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else ca=232;while(0);do if((ca|0)==232){ca=0;if(k){l=n+-9|0;m=g+27952+(K*160|0)+(l<<2)|0;l=a[g+28272+(K*40|0)+l>>0]|0;break}else{m=g+27952+(K*160|0)+(j<<2)|0;break}}while(0);k=q<<24>>24==t<<24>>24;j=r<<24>>24==t<<24>>24;i=(j&1)+(k&1)+((l|0)==(w|0)&1)|0;if(i>>>0>1){j=Oj(b[p>>1]|0,b[s>>1]|0,b[m>>1]|0)|0;i=Oj(b[g+27952+(K*160|0)+(v<<2)+2>>1]|0,b[g+27952+(K*160|0)+(u<<2)+2>>1]|0,b[m+2>>1]|0)|0;break}if((i|0)!=1){j=b[p>>1]|0;if(r<<24>>24!=-2&(q<<24>>24==-2&(l|0)==-2)){i=b[g+27952+(K*160|0)+(v<<2)+2>>1]|0;break}else{j=Oj(j,b[s>>1]|0,b[m>>1]|0)|0;i=Oj(b[g+27952+(K*160|0)+(v<<2)+2>>1]|0,b[g+27952+(K*160|0)+(u<<2)+2>>1]|0,b[m+2>>1]|0)|0;break}}if(j){j=b[p>>1]|0;i=b[g+27952+(K*160|0)+(v<<2)+2>>1]|0;break}if(k){j=b[s>>1]|0;i=b[g+27952+(K*160|0)+(u<<2)+2>>1]|0;break}else{j=b[m>>1]|0;i=b[m+2>>1]|0;break}}while(0);U=(Pj(ia)|0)+j|0;i=(Pj(ia)|0)+i<<16|U&65535}c[g+27952+(K*160|0)+(h<<2)>>2]=i;c[g+27952+(K*160|0)+(h<<2)+4>>2]=i;c[g+27952+(K*160|0)+(h<<2)+32>>2]=i;c[g+27952+(K*160|0)+(h<<2)+36>>2]=i;c[g+27952+(K*160|0)+(h<<2)+64>>2]=i;c[g+27952+(K*160|0)+(h<<2)+68>>2]=i;c[g+27952+(K*160|0)+(h<<2)+96>>2]=i;c[g+27952+(K*160|0)+(h<<2)+100>>2]=i;x=x+1|0}K=K+1|0;h=c[Q>>2]|0}}else{if(!(h&1)){X=g+21660|0;Y=Lj(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[X>>2]|0,0)|0;c[X>>2]=Y;if((Y|0)<0){h=-1;break a}}else{if((V|0)!=0?(Bj(ia)|0)!=0:0){c[ha>>2]=h|16777216;j=4}else j=1;k=(j|0)==4;i=0;while(1){if((i|0)>=16)break;l=d[150645+i>>0]|0;h=a[l+-1+(g+21664)>>0]|0;Y=a[l+-8+(g+21664)>>0]|0;h=(h|0)>(Y|0)?Y:h;h=(h|0)<0?2:h;if(!(Bj(ia)|0)){Y=Jj(ia,3)|0;h=Y+((Y|0)>=(h|0)&1)|0}if(k){Y=g+21664+l|0;X=h*257&65535;b[Y>>1]=X;b[Y+8>>1]=X}else a[g+21664+l>>0]=h;i=i+j|0}Y=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[la>>2]<<2)>>2]|0)|0;c[Y>>2]=c[g+21700>>2];a[Y+4>>0]=a[g+21695>>0]|0;a[Y+5>>0]=a[g+21687>>0]|0;a[Y+6>>0]=a[g+21679>>0]|0;if((Kj(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<=-1){h=-1;break a}}if($){X=c[f+4>>2]|0;Y=c[g+21760>>2]|0;h=c[g+21768>>2]|0;h=Lj(X,Y,h,Mj(ia)|0,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h;l=V}while(0);h=c[ha>>2]|0;if(h&120|0){i=c[f+26368>>2]|0;j=(H(i<<2,c[ea>>2]|0)|0)+(c[da>>2]<<2)|0;k=c[la>>2]<<2;if(!(h&12288)){Y=(c[f+24384>>2]|0)+k|0;b[Y>>1]=-1;b[Y+2>>1]=-1}else{Y=(c[f+24352>>2]|0)+(j<<2)|0;W=g+28e3|0;X=c[W+4>>2]|0;U=Y;c[U>>2]=c[W>>2];c[U+4>>2]=X;U=g+28008|0;X=c[U+4>>2]|0;W=Y+8|0;c[W>>2]=c[U>>2];c[W+4>>2]=X;W=g+28032|0;X=c[W+4>>2]|0;U=Y+(i<<2)|0;V=U;c[V>>2]=c[W>>2];c[V+4>>2]=X;V=g+28040|0;X=c[V+4>>2]|0;U=U+8|0;c[U>>2]=c[V>>2];c[U+4>>2]=X;U=g+28064|0;X=c[U+4>>2]|0;V=Y+(i<<1<<2)|0;W=V;c[W>>2]=c[U>>2];c[W+4>>2]=X;W=g+28072|0;X=c[W+4>>2]|0;V=V+8|0;c[V>>2]=c[W>>2];c[V+4>>2]=X;V=g+28096|0;X=c[V+4>>2]|0;Y=Y+(i*3<<2)|0;W=Y;c[W>>2]=c[V>>2];c[W+4>>2]=X;W=g+28104|0;X=c[W+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[W>>2];c[Y+4>>2]=X;Y=(c[f+24384>>2]|0)+k|0;a[Y>>0]=a[g+28284>>0]|0;a[Y+1>>0]=a[g+28286>>0]|0;a[Y+2>>0]=a[g+28300>>0]|0;a[Y+3>>0]=a[g+28302>>0]|0}if(h&49152|0){Y=(c[f+24356>>2]|0)+(j<<2)|0;W=g+28160|0;X=c[W+4>>2]|0;U=Y;c[U>>2]=c[W>>2];c[U+4>>2]=X;U=g+28168|0;X=c[U+4>>2]|0;W=Y+8|0;c[W>>2]=c[U>>2];c[W+4>>2]=X;W=g+28192|0;X=c[W+4>>2]|0;U=Y+(i<<2)|0;V=U;c[V>>2]=c[W>>2];c[V+4>>2]=X;V=g+28200|0;X=c[V+4>>2]|0;U=U+8|0;c[U>>2]=c[V>>2];c[U+4>>2]=X;U=g+28224|0;X=c[U+4>>2]|0;V=Y+(i<<1<<2)|0;W=V;c[W>>2]=c[U>>2];c[W+4>>2]=X;W=g+28232|0;X=c[W+4>>2]|0;V=V+8|0;c[V>>2]=c[W>>2];c[V+4>>2]=X;V=g+28256|0;X=c[V+4>>2]|0;Y=Y+(i*3<<2)|0;W=Y;c[W>>2]=c[V>>2];c[W+4>>2]=X;W=g+28264|0;X=c[W+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[W>>2];c[Y+4>>2]=X;Y=(c[f+24388>>2]|0)+k|0;a[Y>>0]=a[g+28324>>0]|0;a[Y+1>>0]=a[g+28326>>0]|0;a[Y+2>>0]=a[g+28340>>0]|0;a[Y+3>>0]=a[g+28342>>0]|0}}h=c[ha>>2]|0;if(h&2)if(Z>>>0>15&($^1)){We(c[f+4>>2]|0,16,139968,_);h=-1094995529;break}else w=Z;else{i=Dj(ia)|0;do if($){if(i>>>0>47){h=c[f+4>>2]|0;f=c[da>>2]|0;g=c[ea>>2]|0;c[aa>>2]=i;c[aa+4>>2]=f;c[aa+8>>2]=g;We(h,16,139327,aa);h=-1;break a}h=c[ha>>2]|0;if(!(h&1)){i=128001+i|0;break}else{i=127953+i|0;break}}else{if(i>>>0>15){h=c[f+4>>2]|0;f=c[da>>2]|0;g=c[ea>>2]|0;c[ba>>2]=i;c[ba+4>>2]=f;c[ba+8>>2]=g;We(h,16,139327,ba);h=-1;break a}h=c[ha>>2]|0;if(!(h&1)){i=139372+i|0;break}else{i=139356+i|0;break}}while(0);w=d[i>>0]|0}u=(w&15|0)==0;if((h&7|0)==0&(((l|0)==0|u)^1)){h=(Bj(ia)|0)<<24;h=c[ha>>2]|h;c[ha>>2]=h}r=f+26392|0;b[(c[r>>2]|0)+(ma<<1)>>1]=w;c[g+21856>>2]=w&65535;c[(c[f+24364>>2]|0)+(ma<<2)>>2]=h;if((w|0)==0?(c[ha>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=g+848|0}else ca=274;m:do if((ca|0)==274){i=(c[(c[ga>>2]|0)+1184>>2]|0)*6|0;k=i+3|0;l=Pj(ia)|0;h=g+848|0;j=(c[h>>2]|0)+l|0;c[h>>2]=j;if(j>>>0>k>>>0){i=((j|0)<0?i+4|0:-4-i|0)+j|0;c[h>>2]=i;if(i>>>0>k>>>0){g=c[f+4>>2]|0;ma=c[da>>2]|0;f=c[ea>>2]|0;c[fa>>2]=l;c[fa+4>>2]=ma;c[fa+8>>2]=f;We(g,16,139388,fa);c[h>>2]=k;h=-1;break a}else j=i}i=c[ka>>2]|0;q=g+852|0;c[q>>2]=d[i+548+j>>0];s=g+856|0;c[s>>2]=d[i+636+j>>0];i=c[ha>>2]|0;fa=(i&128|0)==0;t=(j|0)!=0;v=fa?(t?f+26428|0:f+26716|0):t?f+26572|0:f+26860|0;t=fa?(t?f+26508|0:f+26796|0):t?f+26652|0:f+26940|0;n:do if(!(i&2)){p=i&7|0?0:3;o=(i&16777216|0)==0;i=0;n=0;while(1){if((n|0)>=4)break;o:do if(1<<n&w)if(o){m=n<<2;l=0;while(1){if((l|0)>=4)break o;k=l+m|0;if((Qj(f,g,ia,g+28560+(k<<4<<ja<<1)|0,k,v,(c[(c[ka>>2]|0)+173788+(p<<2)>>2]|0)+(j<<6)|0,16)|0)<0){h=-1;break a}l=l+1|0;i=d[(d[150645+k>>0]|0)+(g+27824)>>0]<<n|i}}else{l=g+28560+(n<<6<<ja<<1)|0;m=n<<2;k=0;while(1){if((k|0)>=4)break;if((Qj(f,g,ia,l,k+m|0,t+(k<<4)|0,(c[(c[ka>>2]|0)+173812+(p<<2)>>2]|0)+(j<<8)|0,16)|0)>-1)k=k+1|0;else{h=-1;break a}}ea=(d[150645+m>>0]|0)+(g+27824)|0;fa=(d[ea+8>>0]|0)+(d[ea+1>>0]|0)+(d[ea+9>>0]|0)+(d[ea>>0]|0)&255;a[ea>>0]=fa;i=(fa<<24>>24!=0&1)<<n|i;break}else{fa=(d[150645+(n<<2)>>0]|0)+(g+27824)|0;a[fa+9>>0]=0;a[fa+8>>0]=0;a[fa+1>>0]=0;a[fa>>0]=0}while(0);n=n+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31632|0;k=i;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if((Qj(f,g,ia,i,48,v,0,16)|0)<0){h=-1;break a}if(u){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;i=0;break}l=v+1|0;k=0;while(1){if((k|0)>=4){i=15;break n}m=k<<2;i=0;while(1){if((i|0)>=4)break;fa=i+m|0;if((Qj(f,g,ia,g+28560+(fa<<4<<ja<<1)|0,fa,l,(c[(c[ka>>2]|0)+173788>>2]|0)+(j<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}k=k+1|0}}while(0);r=(c[r>>2]|0)+(ma<<1)|0;b[r>>1]=i<<12|e[r>>1];r=c[(c[ga>>2]|0)+12>>2]|0;if((r|0)!=3){p:do if(w&48|0){j=r<<2;i=0;while(1){if((i|0)>=2)break p;if((Qj(f,g,ia,g+28560+((i<<8)+256<<ja<<1)|0,i+49|0,(c[(c[ga>>2]|0)+12>>2]|0)==2?128053:128049,0,j)|0)<0){h=-1;break a}else i=i+1|0}}while(0);if(!(w&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}n=v+1|0;o=16<<ja;i=0;q:while(1){if((i|0)>=2)break m;p=i+1|0;q=(c[(c[ka>>2]|0)+173788+((c[ha>>2]&7|0?0:3)+p<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;l=(i<<4)+16|0;i=g+28560+(l<<4<<ja<<1)|0;j=0;while(1){if((j|0)>=(r|0)){i=p;continue q}m=(j<<3)+l|0;k=0;while(1){if((k|0)>=4)break;if((Qj(f,g,ia,i,m+k|0,n,q,15)|0)<=-1){h=-1;break a}k=k+1|0;i=i+(o<<1)|0}j=j+1|0}}}i=c[ha>>2]|0;p=c[q>>2]|0;r:do if(!(i&2)){o=i&7|0?1:4;n=(i&16777216|0)==0;i=0;m=0;while(1){if((m|0)>=4)break;s:do if(1<<m&w)if(n){l=(m<<2)+16|0;k=0;while(1){if((k|0)>=4)break s;j=l+k|0;if((Qj(f,g,ia,g+28560+(j<<4<<ja<<1)|0,j,v,(c[(c[ka>>2]|0)+173788+(o<<2)>>2]|0)+(p<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[150645+j>>0]|0)+(g+27824)>>0]<<m|i}}else{k=g+28560+((m<<6)+256<<ja<<1)|0;l=(m<<2)+16|0;j=0;while(1){if((j|0)>=4)break;if((Qj(f,g,ia,k,j+l|0,t+(j<<4)|0,(c[(c[ka>>2]|0)+173812+(o<<2)>>2]|0)+(p<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}fa=(d[150645+l>>0]|0)+(g+27824)|0;ga=(d[fa+8>>0]|0)+(d[fa+1>>0]|0)+(d[fa+9>>0]|0)+(d[fa>>0]|0)&255;a[fa>>0]=ga;i=(ga<<24>>24!=0&1)<<m|i;break}else{ga=(d[150645+((m<<2)+16)>>0]|0)+(g+27824)|0;a[ga+9>>0]=0;a[ga+8>>0]=0;a[ga+1>>0]=0;a[ga>>0]=0}while(0);m=m+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31696|0;k=i;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if((Qj(f,g,ia,i,49,v,0,16)|0)<0){h=-1;break a}if(u){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}k=v+1|0;j=0;while(1){if((j|0)>=4)break r;l=(j<<2)+16|0;i=0;while(1){if((i|0)>=4)break;ga=l+i|0;if((Qj(f,g,ia,g+28560+(ga<<4<<ja<<1)|0,ga,k,(c[(c[ka>>2]|0)+173792>>2]|0)+(p<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}while(0);i=c[ha>>2]|0;p=c[s>>2]|0;if(i&2|0){i=g+31760|0;k=i;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if((Qj(f,g,ia,i,50,v,0,16)|0)<0){h=-1;break a}if(u){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}k=v+1|0;j=0;while(1){if((j|0)>=4)break m;l=(j<<2)+32|0;i=0;while(1){if((i|0)>=4)break;ha=l+i|0;if((Qj(f,g,ia,g+28560+(ha<<4<<ja<<1)|0,ha,k,(c[(c[ka>>2]|0)+173796>>2]|0)+(p<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}o=i&7|0?2:5;n=(i&16777216|0)==0;i=0;m=0;while(1){if((m|0)>=4)break;t:do if(1<<m&w)if(n){l=(m<<2)+32|0;k=0;while(1){if((k|0)>=4)break t;j=l+k|0;if((Qj(f,g,ia,g+28560+(j<<4<<ja<<1)|0,j,v,(c[(c[ka>>2]|0)+173788+(o<<2)>>2]|0)+(p<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[150645+j>>0]|0)+(g+27824)>>0]<<m|i}}else{k=g+28560+((m<<6)+512<<ja<<1)|0;l=(m<<2)+32|0;j=0;while(1){if((j|0)>=4)break;if((Qj(f,g,ia,k,j+l|0,t+(j<<4)|0,(c[(c[ka>>2]|0)+173812+(o<<2)>>2]|0)+(p<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ga=(d[150645+l>>0]|0)+(g+27824)|0;ha=(d[ga+8>>0]|0)+(d[ga+1>>0]|0)+(d[ga+9>>0]|0)+(d[ga>>0]|0)&255;a[ga>>0]=ha;i=(ha<<24>>24!=0&1)<<m|i;break}else{ha=(d[150645+((m<<2)+32)>>0]|0)+(g+27824)|0;a[ha+9>>0]=0;a[ha+8>>0]=0;a[ha+1>>0]=0;a[ha>>0]=0}while(0);m=m+1|0}if((i|0)<0){h=-1;break a}}while(0);a[(c[f+24340>>2]|0)+ma>>0]=c[h>>2];h=c[la>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);Ec=na;return h|0}function Aj(a){a=a|0;var b=0,c=0,e=0;e=_j(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Gj(a,b);return ($j(a,b+1|0)|0)+-1|0}function Bj(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function Cj(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=Ec;Ec=Ec+16|0;v=z+4|0;x=z;w=f+21796|0;y=c[w>>2]|0;c[x>>2]=0;g=(c[e+25972>>2]|0)+(y*48|0)|0;h=g+48|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));u=f+21828|0;if(!(c[u>>2]|0))g=0;else{c[x>>2]=128;g=128}if((c[f+840>>2]|0)==3){g=g|63744;c[x>>2]=g;if(c[f+21844>>2]|0){Hj(e,f,g);Ij(e,f,g)}Nj(e,f,x);j=c[x>>2]|2048;c[x>>2]=j;g=e+26368|0}else{j=g|14344;c[x>>2]=j;Hj(e,f,j);o=c[e+24384>>2]|0;p=c[e+24352>>2]|0;g=e+26368|0;q=c[g>>2]|0;c[f+28284>>2]=0;c[f+28292>>2]=0;c[f+28300>>2]=0;c[f+28308>>2]=0;k=c[f+21740>>2]|0;if(!(k&12288))if(!k)h=0;else{t=181916;r=-1;l=16}else{h=c[f+21720>>2]|0;t=d[c[f+21748>>2]>>0]|0;i=a[o+((t&254)+(h<<2|1))>>0]|0;h=p+((H(q,t)|0)+3+(c[(c[e+26360>>2]|0)+(h<<2)>>2]|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[u>>2]|0)){if(!k)break;h=c[h>>2]|0;c[v>>2]=h;b[v+2>>1]=h>>16<<1;h=v;i=i>>1;break}else{if(k)break;h=c[h>>2]|0;c[v>>2]=h;b[v+2>>1]=((h>>>16&65535)<<16>>16)/2|0;h=v;i=i<<1;break}}while(0);if(!(c[h>>2]|i))h=0;else{t=h;r=i;l=16}}do if((l|0)==16){k=c[f+21732>>2]|0;if(!(k&12288))if(!k){h=0;break}else{m=-1;n=181916}else{i=c[f+21712>>2]|0;h=a[o+(i<<2|2)>>0]|0;i=p+((c[(c[e+26360>>2]|0)+(i<<2)>>2]|0)+(q*3|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[u>>2]|0)){if(!k)break;n=c[i>>2]|0;i=v+4|0;c[i>>2]=n;b[v+6>>1]=n>>16<<1;h=h>>1;break}else{if(k)break;n=c[i>>2]|0;i=v+4|0;c[i>>2]=n;b[v+6>>1]=((n>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}while(0);if(!(c[i>>2]|h)){h=0;break}else{m=h;n=i}}i=c[f+21736>>2]|0;do if(!(i&12288))if((i|0)==0?(s=c[f+21728>>2]|0,(s&12288|0)!=0):0){k=c[f+21708>>2]|0;l=c[f+21752>>2]|0;h=a[o+(k<<2|l&2|1)>>0]|0;k=p+(q+3+(l&q<<1)+(c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)<<2)|0;if(c[e+26376>>2]|0){i=(s&128|0)!=0;if(!(c[u>>2]|0)){if(!i){l=k;break}u=c[k>>2]|0;l=v+8|0;c[l>>2]=u;b[v+10>>1]=u>>16<<1;h=h>>1;break}else{if(i){l=k;break}u=c[k>>2]|0;l=v+8|0;c[l>>2]=u;b[v+10>>1]=((u>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else l=k}else{l=181916;h=-1}else{k=c[f+21716>>2]|0;h=a[o+(k<<2|2)>>0]|0;k=p+((c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)+(q*3|0)<<2)|0;if(c[e+26376>>2]|0){i=(i&128|0)!=0;if(!(c[u>>2]|0)){if(!i){l=k;break}u=c[k>>2]|0;l=v+8|0;c[l>>2]=u;b[v+10>>1]=u>>16<<1;h=h>>1;break}else{if(i){l=k;break}u=c[k>>2]|0;l=v+8|0;c[l>>2]=u;b[v+10>>1]=((u>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else l=k}while(0);k=(m|0)!=0;i=(r|0)!=0;h=((k^1)&1)+((i^1)&1)+((h|0)==0&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=Oj(b[t>>1]|0,b[n>>1]|0,b[l>>1]|0)|0;i=Oj(b[t+2>>1]|0,b[n+2>>1]|0,b[l+2>>1]|0)|0;break}if(!i){i=b[t+2>>1]|0;h=b[t>>1]|0;break}if(k){i=b[l+2>>1]|0;h=b[l>>1]|0;break}else{i=b[n+2>>1]|0;h=b[n>>1]|0;break}}else{h=Oj(b[t>>1]|0,b[n>>1]|0,b[l>>1]|0)|0;i=Oj(b[t+2>>1]|0,b[n+2>>1]|0,b[l+2>>1]|0)|0}while(0);h=i<<16|h&65535}while(0);c[f+28e3>>2]=h;c[f+28004>>2]=h;c[f+28008>>2]=h;c[f+28012>>2]=h;c[f+28032>>2]=h;c[f+28036>>2]=h;c[f+28040>>2]=h;c[f+28044>>2]=h;c[f+28064>>2]=h;c[f+28068>>2]=h;c[f+28072>>2]=h;c[f+28076>>2]=h;c[f+28096>>2]=h;c[f+28100>>2]=h;c[f+28104>>2]=h;c[f+28108>>2]=h}h=c[g>>2]|0;i=(H(h<<2,c[f+21792>>2]|0)|0)+(c[f+21788>>2]<<2)|0;g=c[w>>2]<<2;if(!(j&12288)){w=(c[e+24384>>2]|0)+g|0;b[w>>1]=-1;b[w+2>>1]=-1}else{w=(c[e+24352>>2]|0)+(i<<2)|0;u=f+28e3|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=f+28008|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28032|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28040|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=f+28064|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28072|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28096|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=f+28104|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[e+24384>>2]|0)+g|0;a[w>>0]=a[f+28284>>0]|0;a[w+1>>0]=a[f+28286>>0]|0;a[w+2>>0]=a[f+28300>>0]|0;a[w+3>>0]=a[f+28302>>0]|0}if(j&49152|0){w=(c[e+24356>>2]|0)+(i<<2)|0;u=f+28160|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=f+28168|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28192|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28200|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=f+28224|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28232|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28256|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=f+28264|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[e+24388>>2]|0)+g|0;a[w>>0]=a[f+28324>>0]|0;a[w+1>>0]=a[f+28326>>0]|0;a[w+2>>0]=a[f+28340>>0]|0;a[w+3>>0]=a[f+28342>>0]|0}c[(c[e+24364>>2]|0)+(y<<2)>>2]=c[x>>2];a[(c[e+24340>>2]|0)+y>>0]=c[f+848>>2];b[(c[e+26372>>2]|0)+(y<<1)>>1]=c[f+832>>2];c[f+21648>>2]=1;Ec=z;return}function Dj(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=Ec;Ec=Ec+16|0;g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(uW(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[120443+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){We(0,16,155802,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[126412+a>>0]|0);a=d[126924+a>>0]|0}while(0);Ec=h;return a|0}function Ej(a){a=a|0;var b=0;b=0-(Zj(a)|0)&7;if(b|0)Tj(a,b);return (c[a>>2]|0)+(c[a+8>>2]>>3)|0}function Fj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Zj(a)|0)|0}function Gj(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Hj(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<<c[b+21828>>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=139804;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?139900:139868;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=139836;h=i}else d=139900;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}
function Rh(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,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;P=Ec;Ec=Ec+240|0;K=P+152|0;G=P+144|0;F=P+120|0;D=P+104|0;B=P+96|0;y=P+88|0;x=P+80|0;u=P+72|0;w=P+64|0;v=P+56|0;t=P+48|0;r=P+40|0;s=P+32|0;q=P+24|0;p=P+16|0;o=P+8|0;j=P;L=P+228|0;M=wg(5300)|0;c[L>>2]=M;N=M;a:do if(!M)g=-12;else{O=M+4|0;J=c[O>>2]|0;h=c[a>>2]|0;g=(c[a+4>>2]|0)-h|0;i=J+5296|0;c[i>>2]=g;if(g>>>0>4096){We(d,48,136456,j);c[i>>2]=4096;h=c[a>>2]|0;g=4096}wW(J+1200|0,h|0,g|0)|0;n=ji(a,8)|0;g=ii(a)|0;h=ii(a)|0;i=ii(a)|0;j=ii(a)|0;k=ii(a)|0;l=ii(a)|0;wi(a);m=ji(a,8)|0;I=gi(a)|0;b:do if(I>>>0>31){c[o>>2]=I;We(d,16,135543,o)}else{c[J>>2]=I;c[J+1164>>2]=24;E=J+4|0;c[E>>2]=n;c[J+1196>>2]=h<<1|g|i<<2|j<<3|k<<4|l<<5;C=J+8|0;c[C>>2]=m;c[J+112>>2]=-1;i=J+672|0;j=J+768|0;k=J+668|0;yW(i|0,16,480)|0;c[k>>2]=0;c[J+128>>2]=2;switch(n|0){case 144:case 138:case 128:case 118:case 86:case 83:case 44:case 244:case 122:case 110:case 100:{g=gi(a)|0;c[J+12>>2]=g;if(g>>>0>3){c[p>>2]=g;Oh(d,136489,p);break b}if((g|0)==3?(z=ii(a)|0,c[J+1192>>2]=z,z|0):0){We(d,16,136510,q);break b}z=J+1184|0;c[z>>2]=(fi(a)|0)+8;g=fi(a)|0;h=g+8|0;c[J+1188>>2]=h;if((h|0)!=(c[z>>2]|0)){Oh(d,136551,s);break b}if(g>>>0>6){c[r>>2]=h;c[r+4>>2]=h;We(d,16,136587,r);break b}c[J+16>>2]=ii(a)|0;g=ni(a,J,0,1,i,j)|0;if((g|0)<0)break b;c[k>>2]=c[k>>2]|g;break}default:{c[J+12>>2]=1;c[J+1184>>2]=8;c[J+1188>>2]=8}}g=fi(a)|0;if(g>>>0>12){c[t>>2]=g;We(d,16,136621,t);break}c[J+20>>2]=g+4;g=gi(a)|0;t=J+24|0;c[t>>2]=g;c:do switch(g|0){case 0:{g=fi(a)|0;if(g>>>0>12){c[v>>2]=g;We(d,16,136672,v);break b}else{c[J+28>>2]=g+4;break c}}case 1:{c[J+32>>2]=ii(a)|0;c[J+36>>2]=ki(a)|0;c[J+40>>2]=ki(a)|0;g=fi(a)|0;i=J+44|0;c[i>>2]=g;if(g>>>0>255){c[w>>2]=g;We(d,16,136711,w);break b}else h=0;while(1){if((h|0)>=(g|0))break c;b[J+148+(h<<1)>>1]=ki(a)|0;h=h+1|0;g=c[i>>2]|0}}case 2:break;default:{c[u>>2]=g;We(d,16,136741,u);break b}}while(0);g=gi(a)|0;r=J+48|0;c[r>>2]=g;w=(c[d+20>>2]|0)==844516691;z=(g|0)>2?g:2;c[r>>2]=w?z:g;g=w?z:g;if((g|0)>16){c[x>>2]=g;We(d,16,136762,x);break}c[J+52>>2]=ii(a)|0;q=J+56|0;c[q>>2]=(fi(a)|0)+1;s=J+60|0;c[s>>2]=(fi(a)|0)+1;g=ii(a)|0;z=J+64|0;c[z>>2]=g;h=c[s>>2]|0;if(h>>>0>1073741822){We(d,16,136792,y);break}c[s>>2]=H(h,2-g|0)|0;if(!g)g=ii(a)|0;else g=0;p=J+68|0;c[p>>2]=g;g=c[q>>2]|0;if((g>>>0<=134217726?(A=c[s>>2]|0,A>>>0<=134217726):0)?(Yg(g<<4,A<<4,0,d)|0)==0:0){o=J+72|0;c[o>>2]=ii(a)|0;B=ii(a)|0;g=J+76|0;c[g>>2]=B;d:do if(!B){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0}else{i=fi(a)|0;j=fi(a)|0;k=fi(a)|0;l=fi(a)|0;m=c[q>>2]<<4;n=c[s>>2]<<4;if(c[d+64>>2]&65536|0){c[D>>2]=i;c[D+4>>2]=j;c[D+8>>2]=k;c[D+12>>2]=l;We(d,48,136835,D);F=J+80|0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;c[F+12>>2]=0;break}h=c[J+12>>2]|0;g=(h+-1|0)>>>0<2&1;h=2-(c[z>>2]|0)<<((h|0)==1&1);D=536870911>>>g;do if((!(i>>>0>D>>>0|j>>>0>D>>>0)?(D=536870911/(h>>>0)|0,!(k>>>0>D>>>0|l>>>0>D>>>0)):0)?j+i<<g>>>0<m>>>0:0){if((H(h,l+k|0)|0)>>>0>=n>>>0)break;c[J+80>>2]=i<<g;c[J+84>>2]=j<<g;c[J+88>>2]=H(h,k)|0;c[J+92>>2]=H(h,l)|0;break d}while(0);c[F>>2]=i;c[F+4>>2]=j;c[F+8>>2]=k;c[F+12>>2]=l;c[F+16>>2]=m;c[F+20>>2]=n;We(d,16,136901,F);break b}while(0);F=ii(a)|0;i=J+96|0;c[i>>2]=F;if(F|0?(xi(a,d,J)|0)<0:0)break;g=yi(a)|0;if((g|0)<0?(f=(f|0)!=0,c[G>>2]=c[i>>2]|0?136942:152685,c[G+4>>2]=0-g,We(d,f?24:16,136946,G),!f):0)break;y=(c[J+660>>2]|0)==0;e:do if(y){if((c[r>>2]|0)==0?(c[d+568>>2]|0)<=0:0)break;h=J+664|0;c[h>>2]=15;g=0;while(1){if(g>>>0>=16)break e;if((c[72128+(g<<3)>>2]|0)==(c[C>>2]|0))break;g=g+1|0}G=(c[72128+(g<<3)+4>>2]|0)/(H(c[s>>2]|0,c[q>>2]|0)|0)|0;c[h>>2]=(G|0)<15?G:15}while(0);g=J+104|0;if(!(c[g>>2]|0))c[g>>2]=1;if(c[d+576>>2]&1|0){x=c[E>>2]|0;w=c[C>>2]|0;v=c[t>>2]|0;u=c[r>>2]|0;t=c[q>>2]|0;s=c[s>>2]|0;if(!(c[z>>2]|0))r=c[p>>2]|0?136970:136977;else r=136985;m=c[o>>2]|0?136989:260868;n=c[J+80>>2]|0;o=c[J+84>>2]|0;p=c[J+88>>2]|0;q=c[J+92>>2]|0;h=c[i>>2]|0?136942:260868;i=136993+((c[J+12>>2]|0)*5|0)|0;if(!(c[J+132>>2]|0)){k=0;l=0}else{k=c[J+136>>2]|0;l=c[J+140>>2]|0}j=c[J+1184>>2]|0;if(y)g=-1;else g=c[J+664>>2]|0;c[K>>2]=I;c[K+4>>2]=x;c[K+8>>2]=w;c[K+12>>2]=v;c[K+16>>2]=u;c[K+20>>2]=t;c[K+24>>2]=s;c[K+28>>2]=r;c[K+32>>2]=m;c[K+36>>2]=n;c[K+40>>2]=o;c[K+44>>2]=p;c[K+48>>2]=q;c[K+52>>2]=h;c[K+56>>2]=i;c[K+60>>2]=k;c[K+64>>2]=l;c[K+68>>2]=j;c[K+72>>2]=g;We(d,48,137013,K)}g=e+(I<<2)|0;h=c[g>>2]|0;do if(h|0){if(ZS(c[h+4>>2]|0,c[O>>2]|0,c[M+8>>2]|0)|0)break;Cf(L);g=0;break a}while(0);zi(e,I);c[g>>2]=N;g=0;break a}We(d,16,136809,B)}while(0);Cf(L);g=-1094995529}while(0);Ec=P;return g|0}function Sh(a,b,c){a=a|0;b=b|0;c=c|0;return vi(a,b,c>>>0>268435455?-8:c<<3)|0}function Th(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;D=Ec;Ec=Ec+128|0;C=D+56|0;o=D+48|0;n=D+40|0;l=D+32|0;m=D+24|0;k=D+16|0;i=D+8|0;f=D;x=D+116|0;B=fi(a)|0;a:do if(B>>>0<=255){f=wg(173836)|0;c[x>>2]=f;A=f;if(!f)f=-12;else{z=c[f+4>>2]|0;g=c[a>>2]|0;f=(c[a+4>>2]|0)-g|0;h=z+4824|0;c[h>>2]=f;if(f>>>0>4096){c[i>>2]=f;c[i+4>>2]=4096;We(b,48,135498,i);c[h>>2]=4096;g=c[a>>2]|0;f=4096}wW(z+728|0,g|0,f|0)|0;f=gi(a)|0;c[z>>2]=f;b:do if(f>>>0<=31?(j=c[d+(f<<2)>>2]|0,(j|0)!=0):0){v=c[j+4>>2]|0;w=v+1184|0;f=c[w>>2]|0;if((f|0)>14){c[m>>2]=f;We(b,16,135567,m);f=-1094995529;break}switch(f|0){case 13:case 11:{c[l>>2]=f;hi(b,135594,l);f=-1163346256;break b}default:{}}t=z+4|0;c[t>>2]=ii(a)|0;c[z+8>>2]=ii(a)|0;s=fi(a)|0;u=z+12|0;c[u>>2]=s+1;if((s|0)>0){c[z+16>>2]=fi(a)|0;We(b,16,135626,n)}r=z+20|0;c[r>>2]=(fi(a)|0)+1;q=fi(a)|0;s=z+24|0;c[s>>2]=q+1;if(((c[r>>2]|0)+-1|q)>>>0>31){We(b,16,135645,o);f=-1094995529;break}q=(c[w>>2]|0)*6|0;k=z+28|0;c[k>>2]=ii(a)|0;c[z+32>>2]=ji(a,2)|0;q=q+-22|0;l=z+36|0;c[l>>2]=q+(ki(a)|0);m=z+40|0;c[m>>2]=q+(ki(a)|0);q=ki(a)|0;j=z+44|0;c[j>>2]=q;if((q+12|0)>>>0>24)f=-1094995529;else{n=z+52|0;c[n>>2]=ii(a)|0;o=z+56|0;c[o>>2]=ii(a)|0;p=z+60|0;c[p>>2]=ii(a)|0;q=z+64|0;c[q>>2]=0;i=z+68|0;f=i;g=v+672|0;h=f+96|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));f=z+164|0;wW(f|0,v+768|0,384)|0;if((li(a)|0)<(e|0)?(mi(v,b)|0)!=0:0){c[q>>2]=ii(a)|0;f=ni(a,v,z,0,i,f)|0;if((f|0)<0)break;a=ki(a)|0;h=z+48|0;c[h>>2]=a;if((a+12|0)>>>0>24){f=-1094995529;break}f=c[j>>2]|0}else{f=c[j>>2]|0;h=z+48|0;c[h>>2]=f}oi(z,0,f,c[w>>2]|0);oi(z,1,c[h>>2]|0,c[w>>2]|0);pi(z,v);g=c[j>>2]|0;f=c[h>>2]|0;if((g|0)!=(f|0))c[z+724>>2]=1;if(c[b+576>>2]&1|0){h=c[z>>2]|0;i=c[t>>2]|0?135671:135677;j=c[u>>2]|0;t=c[r>>2]|0;u=c[s>>2]|0;v=c[k>>2]|0?135683:260868;w=c[l>>2]|0;e=c[m>>2]|0;a=c[n>>2]|0?135692:260868;x=c[o>>2]|0?135697:260868;y=c[p>>2]|0?135704:260868;z=c[q>>2]|0?135709:260868;c[C>>2]=B;c[C+4>>2]=h;c[C+8>>2]=i;c[C+12>>2]=j;c[C+16>>2]=t;c[C+20>>2]=u;c[C+24>>2]=v;c[C+28>>2]=w;c[C+32>>2]=e;c[C+36>>2]=g;c[C+40>>2]=f;c[C+44>>2]=a;c[C+48>>2]=x;c[C+52>>2]=y;c[C+56>>2]=z;We(b,48,135716,C)}qi(d,B);c[d+128+(B<<2)>>2]=A;f=0;break a}}else y=8;while(0);if((y|0)==8){c[k>>2]=f;We(b,16,135543,k);f=-1094995529}Cf(x)}}else{c[f>>2]=B;We(b,16,155191,f);f=-1094995529}while(0);Ec=D;return f|0}function Uh(a,b){a=a|0;b=b|0;var d=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;c[a+28>>2]=0;if(b|0){c[a>>2]=c[b>>2];c[a+4>>2]=b+4;d=0;while(1){if((d|0)==2)break;c[a+8+(d<<2)>>2]=c[b+36+(d<<2)>>2];c[a+16+(d<<2)>>2]=c[b+68+(d<<2)>>2];d=d+1|0}c[a+24>>2]=c[b+48>>2];c[a+28>>2]=c[b+636>>2]}return}function Vh(f){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,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=Ec;Ec=Ec+80|0;B=Y+64|0;t=Y+48|0;s=Y+40|0;r=Y+32|0;q=Y+24|0;p=Y+16|0;m=Y+8|0;l=Y;Q=f+568|0;n=c[Q>>2]|0;T=f+560|0;o=c[T>>2]|0;a:do if((((c[(c[f>>2]|0)+572>>2]|0?(k=f+572|0,c[k>>2]|0):0)?(c[(c[f>>2]|0)+680>>2]|0)==0:0)?Wh(f)|0:0)?(S=f+556|0,j=c[S>>2]|0,h=c[f>>2]|0,(c[k>>2]|0)!=(H(j*3|0,(c[h+272>>2]|0)+(c[h+268>>2]|0)|0)|0)):0){g=f+672|0;C=c[g>>2]|0;U=C+32|0;X=f+580|0;V=f+564|0;i=0;while(1){if((i|0)>=(j|0))break;if((a[(c[X>>2]|0)+((H((c[T>>2]|0)+-1|0,c[V>>2]|0)|0)+i)>>0]|0)!=127)break;i=i+1|0}if(((i|0)==(j|0)?(c[h+16>>2]|0)==2:0)?((c[h+96>>2]|0)+15&16|0)!=0:0){h=c[f>>2]|0;if((c[k>>2]|0)==(H((c[S>>2]|0)*3|0,(c[h+268>>2]|0)+1+(c[h+272>>2]|0)|0)|0)){We(h,48,132785,l);break}}A=f+704|0;i=c[A>>2]|0;do if(i|0){O=c[g>>2]|0;if(((c[i+68>>2]|0)==(c[O+68>>2]|0)?(c[i+72>>2]|0)==(c[O+72>>2]|0):0)?(c[i+80>>2]|0)==(c[O+80>>2]|0):0)break;We(h,24,132814,m);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;c[A+28>>2]=0}while(0);z=f+736|0;h=c[z>>2]|0;do if(h|0){O=c[g>>2]|0;if(((c[h+68>>2]|0)==(c[O+68>>2]|0)?(c[h+72>>2]|0)==(c[O+72>>2]|0):0)?(c[h+80>>2]|0)==(c[O+80>>2]|0):0)break;We(c[f>>2]|0,24,132864,p);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0}while(0);if(!((c[f+680>>2]|0)!=0?(c[f+688>>2]|0)!=0:0))R=27;b:do if((R|0)==27){We(c[f>>2]|0,16,132910,q);i=(H(n<<3,o)|0)+16|0;h=0;while(1){if((h|0)>=2)break b;k=f+768+(h<<2)|0;c[k>>2]=wg(H(c[V>>2]<<2,c[T>>2]|0)|0)|0;j=wg(i)|0;c[f+776+(h<<2)>>2]=j;k=c[k>>2]|0;if((j|0)==0|(k|0)==0){g=0;break}c[f+688+(h<<2)>>2]=c[k+4>>2];c[f+680+(h<<2)>>2]=(c[j+4>>2]|0)+16;h=h+1|0}while(1){if((g|0)==2)break a;Cf(f+768+(g<<2)|0);Cf(f+776+(g<<2)|0);c[f+688+(g<<2)>>2]=0;c[f+680+(g<<2)>>2]=0;g=g+1|0}}while(0);c:do if(c[(c[f>>2]|0)+576>>2]&1024|0){h=0;while(1){if((h|0)<(c[T>>2]|0))i=0;else break c;while(1){if((i|0)>=(c[S>>2]|0))break;N=d[(c[X>>2]|0)+((H(c[V>>2]|0,h)|0)+i)>>0]|0;O=c[f>>2]|0;c[r>>2]=N;We(O,48,132937,r);i=i+1|0}We(c[f>>2]|0,48,132942,s);h=h+1|0}}while(0);N=f+552|0;O=f+548|0;l=1;while(1){if((l|0)==4)break;n=9<<l;o=1<<l;i=0;h=c[N>>2]|0;while(1){m=h+-1|0;if((h|0)<=0)break;j=(c[X>>2]|0)+(c[(c[O>>2]|0)+(m<<2)>>2]|0)|0;k=d[j>>0]|0;h=(n&k|0)==0?i:1;if(!h)a[j>>0]=o|k;i=(k&1|0)==0?h:0;h=m}l=l+1|0}M=f+792|0;d:do if(c[M>>2]|0){i=0;h=c[N>>2]|0;while(1){m=h+-1|0;if((h|0)<=0)break d;j=(c[X>>2]|0)+(c[(c[O>>2]|0)+(m<<2)>>2]|0)|0;k=a[j>>0]|0;l=k&255;h=(l&98|0)==0?((l&16|0)==0?i:0):1;if(!h)a[j>>0]=k|2;i=(l&1|0)==0?h:0;h=m}}while(0);e:do if(c[(c[f>>2]|0)+580>>2]&8|0){h=1;l=(c[N>>2]|0)+-2|0;while(1){if((l|0)<((c[S>>2]|0)+100|0))break e;L=c[O>>2]|0;K=c[X>>2]|0;i=K+(c[L+(l<<2)>>2]|0)|0;j=a[i>>0]|0;k=j&255;h=(k&1|0)==0?h:1;if(j<<24>>24!=127?(a[K+(c[L+(l+1<<2)>>2]|0)>>0]|0)==127:0){if((k&112|0)!=0|(h|0)==0)R=60}else if(!h)R=60;if((R|0)==60){R=0;a[i>>0]=j|14;h=0}l=l+-1|0}}while(0);L=f+600|0;h=9999999;l=1;while(1){if((l|0)==4){h=0;l=0;break}m=1<<l;n=72112+(l+-1<<2)|0;i=c[N>>2]|0;while(1){k=i+-1|0;if((i|0)<=0)break;K=c[(c[O>>2]|0)+(k<<2)>>2]|0;i=(c[X>>2]|0)+K|0;j=d[i>>0]|0;J=c[L>>2]|0;if(!((J|0)!=0?(a[J+K>>0]|0)!=0:0))h=h+1|0;h=(m&j|0)==0?h:0;do if(!(c[M>>2]|0)){if((h|0)>=50)break;a[i>>0]=m|j}else{if((h|0)>=(c[n>>2]|0))break;a[i>>0]=m|j}while(0);h=(j&1|0)==0?h:9999999;i=k}l=l+1|0}while(1){j=c[N>>2]|0;if((l|0)>=(j|0))break;i=(c[X>>2]|0)+(c[(c[O>>2]|0)+(l<<2)>>2]|0)|0;j=d[i>>0]|0;k=j&14;if(!(j&1)){a[i>>0]=h|j;h=k|h}else h=k;l=l+1|0}f:do if(!(c[M>>2]|0)){i=0;h=j;while(1){if((i|0)>=(h|0))break f;h=(c[X>>2]|0)+(c[(c[O>>2]|0)+(i<<2)>>2]|0)|0;K=d[h>>0]|0;a[h>>0]=(K&14|0)==0?K:K|14;i=i+1|0;h=c[N>>2]|0}}else h=j;while(0);i=0;j=0;k=0;l=0;while(1){if((l|0)>=(h|0))break;K=d[(c[X>>2]|0)+(c[(c[O>>2]|0)+(l<<2)>>2]|0)>>0]|0;i=(K>>>2&1)+i|0;j=(K>>>3&1)+j|0;k=(K>>>1&1)+k|0;l=l+1|0}K=c[f>>2]|0;J=(Xh(c[(c[g>>2]|0)+88>>2]|0)|0)<<24>>24;c[t>>2]=i;c[t+4>>2]=k;c[t+8>>2]=j;c[t+12>>2]=J;We(K,32,132944,t);j=(Yh(f)|0)!=0;j=j?1:12296;K=f+696|0;i=0;while(1){h=c[N>>2]|0;if((i|0)>=(h|0))break;h=c[(c[O>>2]|0)+(i<<2)>>2]|0;if((a[(c[X>>2]|0)+h>>0]&12)==12)c[(c[K>>2]|0)+(h<<2)>>2]=j;i=i+1|0}J=c[A>>2]|0;if(!((J|0)!=0?(c[J>>2]|0)!=0:0))R=92;g:do if((R|0)==92){J=c[z>>2]|0;if((J|0)!=0?(c[J>>2]|0)!=0:0)break;else j=0;while(1){if((j|0)>=(h|0))break g;i=(c[K>>2]|0)+(c[(c[O>>2]|0)+(j<<2)>>2]<<2)|0;if(!(c[i>>2]&7)){c[i>>2]=1;h=c[N>>2]|0}j=j+1|0}}while(0);u=f+608|0;v=f+612|0;w=f+800|0;x=f+804|0;y=f+608|0;p=0;while(1){h=c[T>>2]|0;if((p|0)>=(h|0))break;o=p<<1;n=0;while(1){if((n|0)>=(c[S>>2]|0))break;i=(H(c[V>>2]|0,p)|0)+n|0;j=c[(c[K>>2]|0)+(i<<2)>>2]|0;h=c[A>>2]|0;if(!h)h=0;else h=(c[h>>2]|0)!=0;k=(h^1)&1;m=h?1:2;J=d[(c[X>>2]|0)+i>>0]|0;if(!((J&2|0)==0|(J&8|j&7|0)!=0)){h:do if(!(j&64)){J=f+680+(k<<2)|0;h=(H(c[Q>>2]|0,o)|0)+(n<<1)|0;c[u>>2]=b[(c[J>>2]|0)+(h<<2)>>1];c[v>>2]=b[(c[J>>2]|0)+(h<<2)+2>>1];h=0}else{j=c[Q>>2]|0;l=(H(j,p)|0)+n<<1;i=f+680+(k<<2)|0;h=0;while(1){if((h|0)==4){h=1;break h}I=h&1|l;G=h>>1;c[f+608+(h<<3)>>2]=b[(c[i>>2]|0)+((H(j,G)|0)+I<<2)>>1];J=c[Q>>2]|0;c[f+608+(h<<3)+4>>2]=b[(c[i>>2]|0)+((H(J,G)|0)+I<<2)+2>>1];h=h+1|0;j=J}}while(0);Zc[c[w>>2]&1](c[x>>2]|0,0,m,h,y,n,p,0,0)}n=n+1|0}p=p+1|0}i:do if((c[(c[g>>2]|0)+88>>2]|0)==3){o=f+784|0;p=f+640|0;q=f+644|0;r=f+786|0;s=f+740|0;t=f+744|0;n=0;j:while(1){if((n|0)>=(h|0)){P=h;break i}m=n<<1;l=0;while(1){if((l|0)>=(c[S>>2]|0))break;k=(H(m,c[Q>>2]|0)|0)+(l<<1)|0;J=(H(c[V>>2]|0,n)|0)+l|0;if(!((a[(c[X>>2]|0)+J>>0]&10)!=10?1:(c[(c[K>>2]|0)+(J<<2)>>2]&7|0)!=0)){J=c[A>>2]|0;if((J|0)!=0?(c[J>>2]|0)!=0:0)h=3;else h=2;J=c[z>>2]|0;if(!((J|0)!=0?(c[J>>2]|0)!=0:0))h=h&1;i=b[o>>1]|0;if(!(i<<16>>16)){c[u>>2]=0;c[v>>2]=0;c[p>>2]=0;i=0}else{i=i&65535;j=e[r>>1]|0;if((c[(c[f>>2]|0)+16>>2]|0)==27)break j;Zh(c[s>>2]|0,n,0);J=c[t>>2]|0;G=b[J+(k<<2)>>1]|0;c[u>>2]=(H(G,j)|0)/(i|0)|0;J=b[J+(k<<2)+2>>1]|0;c[v>>2]=(H(J,j)|0)/(i|0)|0;I=j-i|0;c[p>>2]=(H(I,G)|0)/(i|0)|0;i=(H(I,J)|0)/(i|0)|0}c[q>>2]=i;Zc[c[w>>2]&1](c[x>>2]|0,0,h,0,y,l,n,0,0)}l=l+1|0}n=n+1|0;h=c[T>>2]|0}c[B>>2]=132995;c[B+4>>2]=133034;c[B+8>>2]=1212;We(0,0,164054,B);Za()}else{_h(f);P=c[T>>2]|0}while(0);J=C+36|0;I=C+40|0;z=f+588|0;A=f+592|0;B=f+596|0;x=0;while(1){if((x|0)>=(P|0))break;C=x<<4;D=x<<3;y=0;while(1){if((y|0)>=(c[S>>2]|0))break;E=(H(c[V>>2]|0,x)|0)+y|0;if(!((c[(c[K>>2]|0)+(E<<2)>>2]&7|0)!=0?(c[M>>2]|0)!=0:0))R=140;do if((R|0)==140){R=0;w=c[g>>2]|0;l=c[U>>2]|0;m=(c[w>>2]|0)+(y<<4)+(H(C,l)|0)|0;n=c[w+4>>2]|0;u=y<<3;F=c[J>>2]|0;o=H(F,D)|0;w=c[w+8>>2]|0;G=c[I>>2]|0;v=H(G,D)|0;p=c[Q>>2]|0;q=(c[z>>2]|0)+((H(p,x)|0)+y<<1<<1)|0;j=0;while(1){if((j|0)==4)break;r=j<<3&8;s=j>>>1<<3;k=0;h=0;while(1){if((k|0)==8)break;t=H(l,k+s|0)|0;i=0;while(1){if((i|0)==8)break;Z=h+(d[m+(i+r+t)>>0]|0)|0;i=i+1|0;h=Z}k=k+1|0}b[q+((H(p,j>>1)|0)+(j&1)<<1)>>1]=(h+4|0)>>>3;j=j+1|0}o=n+u+o|0;n=w+u+v|0;if(!w)break;else{h=0;i=0;k=0}while(1){if((k|0)==8)break;l=H(F,k)|0;m=H(G,k)|0;j=0;while(1){if((j|0)==8)break;Z=i+(d[o+(l+j)>>0]|0)|0;w=h+(d[n+(m+j)>>0]|0)|0;j=j+1|0;h=w;i=Z}k=k+1|0}b[(c[A>>2]|0)+(E<<1)>>1]=(i+4|0)>>>3;b[(c[B>>2]|0)+(E<<1)>>1]=(h+4|0)>>>3}while(0);y=y+1|0}x=x+1|0}$h(f,c[z>>2]|0,c[S>>2]<<1,P<<1,c[Q>>2]|0,1);$h(f,c[A>>2]|0,c[S>>2]|0,c[T>>2]|0,c[V>>2]|0,0);$h(f,c[B>>2]|0,c[S>>2]|0,c[T>>2]|0,c[V>>2]|0,0);ai(c[z>>2]|0,c[S>>2]<<1,c[T>>2]<<1,c[Q>>2]|0);l=0;while(1){h=c[T>>2]|0;if((l|0)>=(h|0))break;i=l<<4;j=l<<3;h=0;while(1){if((h|0)>=(c[S>>2]|0))break;k=(H(c[V>>2]|0,l)|0)+h|0;do if(!(c[(c[K>>2]|0)+(k<<2)>>2]&120)){if(!(a[(c[X>>2]|0)+k>>0]&2))break;R=c[g>>2]|0;P=(c[R>>2]|0)+(h<<4)+(H(i,c[U>>2]|0)|0)|0;Z=h<<3;Q=(c[R+4>>2]|0)+Z+(H(c[J>>2]|0,j)|0)|0;R=c[R+8>>2]|0;Z=R+Z+(H(c[I>>2]|0,j)|0)|0;R=(R|0)==0;bi(f,P,R?0:Q,R?0:Z,h,l)}while(0);h=h+1|0}l=l+1|0}if(c[(c[f>>2]|0)+572>>2]&2|0?(ci(f,c[c[g>>2]>>2]|0,c[S>>2]<<1,h<<1,c[U>>2]|0,1),di(f,c[c[g>>2]>>2]|0,c[S>>2]<<1,c[T>>2]<<1,c[U>>2]|0,1),W=c[g>>2]|0,c[W+8>>2]|0):0){ci(f,c[W+4>>2]|0,c[S>>2]|0,c[T>>2]|0,c[J>>2]|0,0);ci(f,c[(c[g>>2]|0)+8>>2]|0,c[S>>2]|0,c[T>>2]|0,c[I>>2]|0,0);di(f,c[(c[g>>2]|0)+4>>2]|0,c[S>>2]|0,c[T>>2]|0,c[J>>2]|0,0);di(f,c[(c[g>>2]|0)+8>>2]|0,c[S>>2]|0,c[T>>2]|0,c[I>>2]|0,0)}j=f+604|0;i=0;while(1){if((i|0)>=(c[N>>2]|0)){h=0;break}k=c[(c[O>>2]|0)+(i<<2)>>2]|0;h=c[L>>2]|0;do if(h|0){if((a[(c[X>>2]|0)+k>>0]&14)==0?1:(c[(c[g>>2]|0)+88>>2]|0)==3)break;a[h+k>>0]=0}while(0);h=c[j>>2]|0;if(h|0)a[h+k>>0]=1;i=i+1|0}while(1){if((h|0)==2)break;Cf(f+768+(h<<2)|0);Cf(f+776+(h<<2)|0);c[f+688+(h<<2)>>2]=0;c[f+680+(h<<2)>>2]=0;h=h+1|0}h=g+96|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}while(0);Ec=Y;return}function Wh(a){a=a|0;var b=0,d=0;d=c[(c[a>>2]|0)+592>>2]|0;if(!((d|0)!=0?(c[d+32>>2]|0)!=0:0))b=3;if((b|0)==3?c[a+672>>2]|0:0)return (c[a+700>>2]|0)==0|0;return 0}function Xh(a){a=a|0;switch(a|0){case 1:{a=73;break}case 2:{a=80;break}case 3:{a=66;break}case 4:{a=83;break}case 5:{a=105;break}case 6:{a=112;break}case 7:{a=98;break}default:a=63}return a|0}function Yh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=b+704|0;v=c[u>>2]|0;if((v|0)!=0?(c[v>>2]|0)!=0:0)if(!(c[(c[b>>2]|0)+572>>2]&256)){f=c[b+552>>2]|0;g=b+548|0;v=b+580|0;d=0;e=0;while(1){if((d|0)>=(f|0))break;t=e+((a[(c[v>>2]|0)+(c[(c[g>>2]|0)+(d<<2)>>2]|0)>>0]&12)!=12&1)|0;d=d+1|0;e=t}if((e|0)>=5){l=(e|0)>99?(e>>>0)/50|0:1;m=b+560|0;n=b+556|0;o=b+564|0;p=b+672|0;q=b+8|0;r=b+708|0;s=b+696|0;d=0;e=0;k=0;while(1){if((k|0)>=((c[m>>2]|0)+-1|0))break;t=k<<4;j=0;while(1){if((j|0)>=(c[n>>2]|0))break;f=(H(c[o>>2]|0,k)|0)+j|0;do if((a[(c[v>>2]|0)+f>>0]&12)!=12){e=e+1|0;if(!((e|0)%(l|0)|0)){g=c[p>>2]|0;if((c[g+88>>2]|0)!=1)if(!(c[(c[s>>2]|0)+(f<<2)>>2]&7)){d=d+-1|0;break}else{d=d+1|0;break}else{h=g+32|0;w=j<<4;f=c[h>>2]|0;i=H(f,t)|0;g=(c[g>>2]|0)+w+i|0;i=(c[c[u>>2]>>2]|0)+w+i|0;if((c[(c[b>>2]|0)+16>>2]|0)!=27){Zh(c[r>>2]|0,k,0);f=c[h>>2]|0}w=(Pc[c[q>>2]&63](0,i,g,f,16)|0)+d|0;d=c[h>>2]|0;d=w-(Pc[c[q>>2]&63](0,i,i+(d<<4)|0,d,16)|0)|0;break}}}while(0);j=j+1|0}k=k+1|0}d=(d|0)>0&1}else d=0}else d=0;else d=1;return d|0}function Zh(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=Ec;Ec=Ec+16|0;h=j;e=c[a+12>>2]|0;if((e|0?(g=c[e+4>>2]|0,g|0):0)?(i=g+(d<<2)|0,(c[i>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;f=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[f+344>>2]|0){e=c[a>>2]|0;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=g;We(e,48,135461,h)}e=f+184|0;JU(e)|0;a=f+60|0;while(1){if((c[i>>2]|0)>=(b|0))break;yb(a|0,e|0)|0}KU(e)|0}Ec=j;return}function _h(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,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,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;ja=Ec;Ec=Ec+128|0;fa=ja;W=ja+116|0;X=ja+112|0;Z=ja+48|0;_=ja+16|0;ia=e+564|0;da=c[ia>>2]|0;r=e+556|0;ea=c[r>>2]|0;h=c[e+560>>2]|0;q=e+704|0;f=c[q>>2]|0;if((f|0)!=0?(c[f>>2]|0)!=0:0){f=(c[f+72>>2]|0)+15>>4;f=(h|0)>(f|0)?f:h}else f=h;g=c[e+736>>2]|0;if((g|0)!=0?(c[g>>2]|0)!=0:0){ha=(c[g+72>>2]|0)+15>>4;ha=(f|0)>(ha|0)?ha:f}else ha=f;v=c[e+584>>2]|0;S=H(h,da)|0;w=v+(S<<3)|0;S=w+(S<<3)|0;ei(e,W,X);i=e+712|0;if(c[i>>2]|0)Zh(c[e+708>>2]|0,ha+-1|0,0);T=H(ha,ea)|0;j=e+548|0;o=e+580|0;p=e+696|0;k=c[X>>2]|0;l=c[W>>2]|0;U=e+680|0;m=e+720|0;V=e+688|0;h=0;f=0;while(1){if((h|0)>=(T|0))break;g=c[(c[j>>2]|0)+(h<<2)>>2]|0;R=(a[(c[o>>2]|0)+g>>0]&8)==0?8:(c[(c[p>>2]|0)+(g<<2)>>2]&7|0)==0?0:8;a[S+g>>0]=R;if((R|0)!=8){if((c[c[q>>2]>>2]|0)!=0?(n=c[i>>2]|0,(n|0)!=0):0){R=c[ia>>2]|0;R=H((H(k,(g|0)/(R|0)|0)|0)+((g|0)%(R|0)|0)|0,l)|0;Q=c[U>>2]|0;b[Q+(R<<2)>>1]=b[n+(R<<2)>>1]|0;b[Q+(R<<2)+2>>1]=b[n+(R<<2)+2>>1]|0;R=g<<2;a[(c[V>>2]|0)+R>>0]=a[(c[m>>2]|0)+R>>0]|0}}else f=f+1|0;h=h+1|0}a:do if((f|0)>((ea|0)/2|0|0)?(c[(c[e>>2]|0)+572>>2]&1|0)!=0:0){f=0;j=0;b:while(1){if((j|0)>=(ha|0))break;k=H(j,da)|0;l=(j|0)==0;m=j+1|0;n=(m|0)<(ha|0);o=j+-1|0;g=0;while(1){while(1){if((g|0)>=(ea|0)){j=m;continue b}h=g+k|0;if((a[S+h>>0]|0)==8)break;g=g+1|0}if((g|0)!=0?(s=S+(h+-1)|0,(a[s>>0]|0)==0):0){a[s>>0]=1;c[v+(f<<3)>>2]=g+-1;c[v+(f<<3)+4>>2]=j;f=f+1|0}if(!l?(t=S+(h-da)|0,(a[t>>0]|0)==0):0){a[t>>0]=1;c[v+(f<<3)>>2]=g;c[v+(f<<3)+4>>2]=o;f=f+1|0}i=g+1|0;if((i|0)<(ea|0)?(u=S+(h+1)|0,(a[u>>0]|0)==0):0){a[u>>0]=1;c[v+(f<<3)>>2]=i;c[v+(f<<3)+4>>2]=j;f=f+1|0}if(!n){g=i;continue}h=S+(h+da)|0;if(a[h>>0]|0){g=i;continue}a[h>>0]=1;c[v+(f<<3)>>2]=g;c[v+(f<<3)+4>>2]=m;g=i;f=f+1|0}}N=Z+4|0;O=e+672|0;P=e+608|0;Q=e+612|0;R=e+800|0;M=e+804|0;L=f;while(1){f=1;K=0;g=1;while(1){if(!((K|0)<10&((K|0)<2|(f|0)!=0)))break;J=(K|0)>1;I=0;f=0;while(1){if((I|0)>=(L|0))break;E=c[v+(I<<3)>>2]|0;F=c[v+(I<<3)+4>>2]|0;G=(H(F,da)|0)+E|0;c:do if(!((E^K^F)&1)){z=(E|0)>0;if(z)h=d[S+(G+-1)>>0]|0;else h=0;A=(E+1|0)<(ea|0);if(A)h=h|d[S+(G+1)>>0];y=(F|0)>0;if(y)h=h|d[S+(G-da)>>0];x=(F+1|0)<(ha|0);if(x)h=h|d[S+(G+da)>>0];if(!(J&(h&4|0)==0)){B=c[X>>2]|0;D=(H(B,F)|0)+E|0;C=c[W>>2]|0;D=H(D,C)|0;if(z?(Y=G+-1|0,(d[S+Y>>0]|0)>1):0){e=c[U>>2]|0;g=D-C|0;c[Z>>2]=b[e+(g<<2)>>1];c[N>>2]=b[e+(g<<2)+2>>1];c[_>>2]=a[(c[V>>2]|0)+(Y<<2)>>0];g=1}else g=0;do if(A){h=G+1|0;if((d[S+h>>0]|0)<=1)break;u=c[U>>2]|0;e=C+D|0;c[Z+(g<<3)>>2]=b[u+(e<<2)>>1];c[Z+(g<<3)+4>>2]=b[u+(e<<2)+2>>1];c[_+(g<<2)>>2]=a[(c[V>>2]|0)+(h<<2)>>0];g=g+1|0}while(0);do if(y){if((d[S+(G-da)>>0]|0)<=1)break;u=c[U>>2]|0;e=D-(H(C,B)|0)|0;c[Z+(g<<3)>>2]=b[u+(e<<2)>>1];c[Z+(g<<3)+4>>2]=b[u+(e<<2)+2>>1];c[_+(g<<2)>>2]=a[(c[V>>2]|0)+(G-(c[ia>>2]|0)<<2)>>0];g=g+1|0}while(0);do if(x){if((d[S+(G+da)>>0]|0)<=1){ga=73;break}u=c[U>>2]|0;e=(H(C,B)|0)+D|0;c[Z+(g<<3)>>2]=b[u+(e<<2)>>1];c[Z+(g<<3)+4>>2]=b[u+(e<<2)+2>>1];c[_+(g<<2)>>2]=a[(c[V>>2]|0)+((c[ia>>2]|0)+G<<2)>>0];g=g+1|0}else ga=73;while(0);if((ga|0)==73){ga=0;if(!g){g=0;break}}d:do if((g|0)>1){h=0;i=0;j=0;k=0;while(1){if((k|0)>=(g|0))break;j=(c[Z+(k<<3)>>2]|0)+j|0;i=(c[Z+(k<<3)+4>>2]|0)+i|0;e=c[_+(k<<2)>>2]|0;h=e+h|0;if(k|0?(e|0)!=(c[_+(k+-1<<2)>>2]|0):0)break d;k=k+1|0}c[Z+(g<<3)>>2]=(j|0)/(k|0)|0;c[Z+(g<<3)+4>>2]=(i|0)/(k|0)|0;c[_+(g<<2)>>2]=(h|0)/(k|0)|0;k=(g|0)>2;l=k?-99999:0;k=k?99999:0;p=k;q=l;n=k;o=l;m=0;while(1){if((m|0)==(g|0))break;e=c[Z+(m<<3)>>2]|0;u=c[Z+(m<<3)+4>>2]|0;t=c[_+(m<<2)>>2]|0;p=(p|0)>(t|0)?t:p;q=(q|0)>(t|0)?q:t;n=(n|0)>(u|0)?u:n;k=(k|0)>(e|0)?e:k;o=(o|0)>(u|0)?o:u;l=(l|0)>(e|0)?l:e;m=m+1|0}l=j-l-k|0;e=g+1|0;m=Z+(e<<3)|0;c[m>>2]=l;j=i-o-n|0;k=Z+(e<<3)+4|0;c[k>>2]=j;h=h-q-p|0;i=_+(e<<2)|0;c[i>>2]=h;if((g|0)==4){c[m>>2]=(l|0)/2|0;c[k>>2]=(j|0)/2|0;c[i>>2]=(h|0)/2|0}g=g+2|0}else g=1;while(0);c[_+(g<<2)>>2]=0;c[Z+(g<<3)+4>>2]=0;c[Z+(g<<3)>>2]=0;m=g+1|0;e=c[U>>2]|0;u=b[e+(D<<2)>>1]|0;e=b[e+(D<<2)+2>>1]|0;n=a[(c[V>>2]|0)+(G<<2)>>0]|0;c[Z+(m<<3)>>2]=u;c[Z+(m<<3)+4>>2]=e;c[_+(m<<2)>>2]=n;m=g+2|0;n=E<<4;o=F<<4;p=S+(G+-1)|0;q=S+(G+1)|0;r=S+(G-da)|0;s=S+(G+da)|0;t=0;g=1073741824;l=0;while(1){if((l|0)>=(m|0))break;k=c[O>>2]|0;j=k+32|0;k=(c[k>>2]|0)+n+(H(o,c[j>>2]|0)|0)|0;i=c[Z+(l<<3)>>2]|0;c[P>>2]=i;h=c[U>>2]|0;b[h+(D<<2)>>1]=i;i=c[Z+(l<<3)+4>>2]|0;c[Q>>2]=i;b[h+(D<<2)+2>>1]=i;h=c[_+(l<<2)>>2]|0;if((h|0)<0)h=t;else{Zc[c[R>>2]&1](c[M>>2]|0,h,1,0,P,E,F,0,0);e:do if(z){if((d[p>>0]|0)>1){h=0;i=0}else{i=0;break}while(1){if((h|0)==16)break e;ka=H(c[j>>2]|0,h)|0;ka=(d[k+(ka+-1)>>0]|0)-(d[k+ka>>0]|0)|0;h=h+1|0;i=((ka|0)>-1?ka:0-ka|0)+i|0}}else i=0;while(0);f:do if(A){if((d[q>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break f;ka=H(c[j>>2]|0,h)|0;ka=(d[k+(ka+15)>>0]|0)-(d[k+(ka+16)>>0]|0)|0;h=h+1|0;i=((ka|0)>-1?ka:0-ka|0)+i|0}}while(0);g:do if(y){if((d[r>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break g;ka=(d[k+(h-(c[j>>2]|0))>>0]|0)-(d[k+h>>0]|0)|0;h=h+1|0;i=((ka|0)>-1?ka:0-ka|0)+i|0}}while(0);h:do if(x){if((d[s>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break h;ka=c[j>>2]|0;ka=(d[k+((ka*15|0)+h)>>0]|0)-(d[k+((ka<<4)+h)>>0]|0)|0;h=h+1|0;i=((ka|0)>-1?ka:0-ka|0)+i|0}}while(0);ka=(i|0)>(g|0);h=ka?t:l;g=ka?g:i}t=h;l=l+1|0}i=c[Z+(t<<3)>>2]|0;c[P>>2]=i;j=c[Z+(t<<3)+4>>2]|0;c[Q>>2]=j;i=i&65535;j=j&65535;g=0;while(1){if((g|0)>=(C|0))break;k=g+D|0;h=0;while(1){if((h|0)==(C|0))break;A=c[U>>2]|0;ka=(H(B,h)|0)+k|0;b[A+(ka<<2)>>1]=i;b[A+(ka<<2)+2>>1]=j;h=h+1|0}g=g+1|0}Zc[c[R>>2]&1](c[M>>2]|0,c[_+(t<<2)>>2]|0,1,0,P,E,F,0,0);do if((c[P>>2]|0)==(u|0)){if((c[Q>>2]|0)!=(e|0))break;a[S+G>>0]=2;g=0;break c}while(0);a[S+G>>0]=4;g=0;f=f+1|0}}while(0);I=I+1|0}K=K+1|0}if(!g){f=0;k=0}else break a;while(1){if((k|0)>=(L|0))break;i=c[v+(k<<3)>>2]|0;h=c[v+(k<<3)+4>>2]|0;j=(H(h,da)|0)+i|0;g=S+j|0;if(a[g>>0]&14){a[g>>0]=8;if((i|0)>0?($=S+(j+-1)|0,(a[$>>0]|0)==0):0){a[$>>0]=1;c[w+(f<<3)>>2]=i+-1;c[w+(f<<3)+4>>2]=h;f=f+1|0}if((h|0)>0?(aa=S+(j-da)|0,(a[aa>>0]|0)==0):0){a[aa>>0]=1;c[w+(f<<3)>>2]=i;c[w+(f<<3)+4>>2]=h+-1;f=f+1|0}g=i+1|0;if((g|0)<(ea|0)?(ba=S+(j+1)|0,(a[ba>>0]|0)==0):0){a[ba>>0]=1;c[w+(f<<3)>>2]=g;c[w+(f<<3)+4>>2]=h;f=f+1|0}g=h+1|0;if((g|0)<(ha|0)?(ca=S+(j+da)|0,(a[ca>>0]|0)==0):0){a[ca>>0]=1;c[w+(f<<3)>>2]=i;c[w+(f<<3)+4>>2]=g;f=f+1|0}}k=k+1|0}if((f|0)>(T|0))break;else{ka=w;L=f;w=v;v=ka}}c[fa>>2]=135415;c[fa+4>>2]=133034;c[fa+8>>2]=716;We(0,0,164054,fa);Za()}else{k=e+608|0;l=e+612|0;m=e+800|0;i=e+804|0;h=0;while(1){if((h|0)<(ha|0))g=0;else break a;while(1){if((g|0)>=(c[r>>2]|0))break;j=(H(c[ia>>2]|0,h)|0)+g|0;f=c[q>>2]|0;if(!f)f=2;else f=c[f>>2]|0?1:2;if((c[(c[p>>2]|0)+(j<<2)>>2]&7|0)==0?a[(c[o>>2]|0)+j>>0]&8:0){c[k>>2]=0;c[l>>2]=0;Zc[c[m>>2]&1](c[i>>2]|0,0,f,0,k,g,h,0,0)}g=g+1|0}h=h+1|0}}while(0);Ec=ja;return}function $h(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;z=Ec;Ec=Ec+16|0;j=z;x=z+8|0;y=z+4|0;w=Mg(h,g<<3)|0;c[x>>2]=w;v=Mg(h,g<<4)|0;c[y>>2]=v;a:do if((v|0)!=0&(w|0)!=0){v=d+564|0;w=d+696|0;u=d+580|0;n=0;while(1){if((n|0)>=(g|0)){n=0;break}o=n>>i;p=H(n,h)|0;l=0;j=1024;d=-1;while(1){if((l|0)>=(f|0)){k=f;j=1024;d=-1;break}t=(H(c[v>>2]|0,o)|0)+(l>>i)|0;if((c[(c[w>>2]|0)+(t<<2)>>2]&7|0)!=0?(a[(c[u>>2]|0)+t>>0]&4)!=0:0)k=l+p|0;else{k=l+p|0;j=b[e+(k<<1)>>1]|0;d=l}b[(c[x>>2]|0)+(k<<3)+2>>1]=j;c[(c[y>>2]|0)+(k<<4)+4>>2]=(d|0)>-1?l-d|0:9999;l=l+1|0}while(1){m=k+-1|0;if((k|0)<=0)break;t=(H(c[v>>2]|0,o)|0)+(m>>i)|0;if((c[(c[w>>2]|0)+(t<<2)>>2]&7|0)!=0?(a[(c[u>>2]|0)+t>>0]&4)!=0:0){l=j;j=m+p|0}else{j=m+p|0;l=b[e+(j<<1)>>1]|0;d=m}b[(c[x>>2]|0)+(j<<3)>>1]=l;c[(c[y>>2]|0)+(j<<4)>>2]=(d|0)>-1?d-m|0:9999;k=m;j=l}n=n+1|0}while(1){if((n|0)>=(f|0)){k=0;break}o=n>>i;j=1024;d=-1;l=0;while(1){if((l|0)>=(g|0)){k=g;j=1024;d=-1;break}t=(H(c[v>>2]|0,l>>i)|0)+o|0;if((c[(c[w>>2]|0)+(t<<2)>>2]&7|0)!=0?(a[(c[u>>2]|0)+t>>0]&4)!=0:0)k=(H(l,h)|0)+n|0;else{k=(H(l,h)|0)+n|0;j=b[e+(k<<1)>>1]|0;d=l}b[(c[x>>2]|0)+(k<<3)+6>>1]=j;c[(c[y>>2]|0)+(k<<4)+12>>2]=(d|0)>-1?l-d|0:9999;l=l+1|0}while(1){m=k+-1|0;if((k|0)<=0)break;t=(H(c[v>>2]|0,m>>i)|0)+o|0;if((c[(c[w>>2]|0)+(t<<2)>>2]&7|0)!=0?(a[(c[u>>2]|0)+t>>0]&4)!=0:0){l=j;j=(H(m,h)|0)+n|0}else{j=(H(m,h)|0)+n|0;l=b[e+(j<<1)>>1]|0;d=m}b[(c[x>>2]|0)+(j<<3)+4>>1]=l;c[(c[y>>2]|0)+(j<<4)+8>>2]=(d|0)>-1?d-m|0:9999;k=m;j=l}n=n+1|0}while(1){if((k|0)>=(g|0))break a;l=k>>i;m=H(k,h)|0;d=0;while(1){if((d|0)>=(f|0))break;t=(H(c[v>>2]|0,l)|0)+(d>>i)|0;if((c[(c[w>>2]|0)+(t<<2)>>2]&120|0)==0?a[(c[u>>2]|0)+t>>0]&4:0){n=c[y>>2]|0;o=d+m|0;p=c[x>>2]|0;j=0;q=0;r=0;s=0;t=0;while(1){if((j|0)==4)break;A=c[n+(o<<4)+(j<<2)>>2]|0;A=268435456/((A>>>0>1?A:1)>>>0)|0;C=b[p+(o<<3)+(j<<1)>>1]|0;C=nW(C|0,((C|0)<0)<<31>>31|0,A|0,0)|0;C=hW(C|0,M()|0,q|0,r|0)|0;B=M()|0;A=hW(s|0,t|0,A|0,0)|0;j=j+1|0;q=C;r=B;s=A;t=M()|0}C=lW(s|0,t|0,2,0)|0;C=hW(C|0,M()|0,q|0,r|0)|0;C=lW(C|0,M()|0,s|0,t|0)|0;M()|0;b[e+(o<<1)>>1]=C}d=d+1|0}k=k+1|0}}else We(c[d>>2]|0,16,135386,j);while(0);Se(x);Se(y);Ec=z;return}function ai(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=d+-1|0;h=c+-1|0;c=1;while(1){if((c|0)>=(i|0)){c=1;break}g=H(c,e)|0;d=1;f=b[a+(g<<1)>>1]|0;while(1){if((d|0)>=(h|0))break;l=a+(d+g<<1)|0;j=b[l>>1]|0;k=d+1|0;b[l>>1]=((((j<<3)-f-(b[a+(k+g<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=j}c=c+1|0}while(1){if((c|0)>=(h|0))break;d=b[a+(c<<1)>>1]|0;f=1;while(1){if((f|0)>=(i|0))break;j=a+((H(f,e)|0)+c<<1)|0;k=b[j>>1]|0;l=f+1|0;b[j>>1]=((((k<<3)-d-(b[a+((H(l,e)|0)+c<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=l}c=c+1|0}return}function bi(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;v=c[d+672>>2]|0;t=v+32|0;u=d+588|0;m=h<<1;n=i<<1;o=d+568|0;k=0;while(1){if((k|0)==4)break;q=k&1;r=k>>1;p=b[(c[u>>2]|0)+((H(c[o>>2]|0,r+n|0)|0)+(q|m)<<1)>>1]|0;p=p<<16>>16>0?((p<<16>>16<2040?p:2040)&65535)>>>3&255:0;q=q<<3;r=r<<3;l=0;while(1){if((l|0)==8)break;s=l+r|0;j=0;while(1){if((j|0)==8)break;a[e+(j+q+(H(c[t>>2]|0,s)|0))>>0]=p;j=j+1|0}l=l+1|0}k=k+1|0}k=(H(c[d+564>>2]|0,i)|0)+h|0;j=b[(c[d+592>>2]|0)+(k<<1)>>1]|0;k=b[(c[d+596>>2]|0)+(k<<1)>>1]|0;a:do if(g|0){m=j<<16>>16>0?((j<<16>>16<2040?j:2040)&65535)>>>3&255:0;n=v+36|0;e=k<<16>>16>0?((k<<16>>16<2040?k:2040)&65535)>>>3&255:0;l=v+40|0;k=0;while(1){if((k|0)==8)break a;else j=0;while(1){if((j|0)==8)break;a[f+((H(c[n>>2]|0,k)|0)+j)>>0]=m;a[g+((H(c[l>>2]|0,k)|0)+j)>>0]=e;j=j+1|0}k=k+1|0}}while(0);return}function ci(e,f,g,h,i,j){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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;O=Ec;Ec=Ec+16|0;M=O+4|0;I=O;ei(e,M,I);N=c[M>>2]>>j;c[M>>2]=N;M=H(c[I>>2]|0,N)|0;c[I>>2]=M;I=g+-1|0;J=e+580|0;K=e+564|0;L=e+696|0;C=e+680|0;B=0;while(1){if((B|0)>=(h|0))break;D=B>>j;E=H(B,i)|0;F=H(M,B)|0;g=0;a:while(1){if((g|0)>=(I|0))break;x=c[J>>2]|0;l=H(c[K>>2]|0,D)|0;k=l+(g>>j)|0;y=a[x+k>>0]|0;G=g+1|0;l=l+(G>>j)|0;x=a[x+l>>0]|0;m=c[L>>2]|0;o=g+E<<3;n=c[C>>2]|0;g=(H(N,g)|0)+F|0;e=(H(N,G)|0)+F|0;z=(y&14)!=0;A=(x&14)!=0;if(!((x|y)&14)){g=G;continue}if(((c[m+(k<<2)>>2]|c[m+(l<<2)>>2])&7|0)==0?(y=(b[n+(g<<2)>>1]|0)-(b[n+(e<<2)>>1]|0)|0,x=(b[n+(e<<2)+2>>1]|0)+(b[n+(g<<2)+2>>1]|0)|0,(((x|0)>-1?x:0-x|0)+((y|0)>-1?y:0-y|0)|0)<2):0){g=G;continue}r=o|7;s=o|6;t=o+8|0;u=o+9|0;y=z&A;v=o|5;w=o|4;x=o+10|0;l=o+11|0;e=0;while(1){if((e|0)==8){g=G;continue a}m=H(e,i)|0;n=f+(m+r)|0;o=d[n>>0]|0;p=f+(m+s)|0;Q=o-(d[p>>0]|0)|0;q=f+(t+m)|0;g=d[q>>0]|0;P=g-o|0;k=f+(u+m)|0;g=(d[k>>0]|0)-g|0;g=((P|0)>-1?P:0-P|0)-(((Q|0)>-1?Q:0-Q|0)+1+((g|0)>-1?g:0-g|0)>>1)|0;g=(g|0)>0?g:0;g=(P|0)<0?0-g|0:g;if(g|0){g=y?g:(g<<4|0)/9|0;if(z){a[n>>0]=a[134088+((g*7>>4)+o)>>0]|0;a[p>>0]=a[134088+((g*5>>4)+(d[p>>0]|0))>>0]|0;Q=f+(m+v)|0;a[Q>>0]=a[134088+((g*3>>4)+(d[Q>>0]|0))>>0]|0;Q=f+(m+w)|0;a[Q>>0]=a[134088+((g>>4)+(d[Q>>0]|0))>>0]|0}if(A){a[q>>0]=a[134088+((d[q>>0]|0)-(g*7>>4))>>0]|0;a[k>>0]=a[134088+((d[k>>0]|0)-(g*5>>4))>>0]|0;Q=f+(x+m)|0;a[Q>>0]=a[134088+((d[Q>>0]|0)-(g*3>>4))>>0]|0;Q=f+(l+m)|0;a[Q>>0]=a[134088+((d[Q>>0]|0)-(g>>4))>>0]|0}}e=e+1|0}}B=B+1|0}Ec=O;return}function di(e,f,g,h,i,j){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,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=Ec;Ec=Ec+16|0;P=R+4|0;L=R;ei(e,P,L);Q=c[P>>2]>>j;c[P>>2]=Q;P=H(c[L>>2]|0,Q)|0;c[L>>2]=P;L=h+-1|0;M=e+580|0;N=e+564|0;O=e+696|0;x=e+680|0;y=i*7|0;z=i*6|0;A=i<<3;B=i*9|0;C=i*5|0;D=i<<2;E=i*10|0;F=i*11|0;h=0;a:while(1){if((h|0)>=(L|0))break;G=h>>j;I=h+1|0;J=I>>j;K=H(h,i)|0;s=H(P,h)|0;t=H(P,I)|0;r=0;while(1){if((r|0)>=(g|0)){h=I;continue a}S=c[M>>2]|0;e=r>>j;k=c[N>>2]|0;h=(H(k,G)|0)+e|0;q=a[S+h>>0]|0;e=(H(k,J)|0)+e|0;S=a[S+e>>0]|0;k=c[O>>2]|0;u=r+K<<3;l=c[x>>2]|0;o=H(Q,r)|0;m=o+s|0;n=l+(m<<2)|0;o=o+t|0;p=l+(o<<2)|0;v=(q&14)!=0;w=(S&14)!=0;b:do if((S|q)&14){if(((c[k+(h<<2)>>2]|c[k+(e<<2)>>2])&7|0)==0?(S=(b[n>>1]|0)-(b[p>>1]|0)|0,q=(b[l+(o<<2)+2>>1]|0)+(b[l+(m<<2)+2>>1]|0)|0,(((q|0)>-1?q:0-q|0)+((S|0)>-1?S:0-S|0)|0)<2):0)break;q=v&w;e=0;while(1){if((e|0)==8)break b;l=e+u|0;m=f+(l+y)|0;n=d[m>>0]|0;o=f+(l+z)|0;T=n-(d[o>>0]|0)|0;p=f+(l+A)|0;h=d[p>>0]|0;S=h-n|0;k=f+(l+B)|0;h=(d[k>>0]|0)-h|0;h=((S|0)>-1?S:0-S|0)-(((T|0)>-1?T:0-T|0)+1+((h|0)>-1?h:0-h|0)>>1)|0;h=(h|0)>0?h:0;h=(S|0)<0?0-h|0:h;if(h|0){h=q?h:(h<<4|0)/9|0;if(v){a[m>>0]=a[134088+((h*7>>4)+n)>>0]|0;a[o>>0]=a[134088+((h*5>>4)+(d[o>>0]|0))>>0]|0;T=f+(l+C)|0;a[T>>0]=a[134088+((h*3>>4)+(d[T>>0]|0))>>0]|0;T=f+(l+D)|0;a[T>>0]=a[134088+((h>>4)+(d[T>>0]|0))>>0]|0}if(w){a[p>>0]=a[134088+((d[p>>0]|0)-(h*7>>4))>>0]|0;a[k>>0]=a[134088+((d[k>>0]|0)-(h*5>>4))>>0]|0;T=f+(l+E)|0;a[T>>0]=a[134088+((d[T>>0]|0)-(h*3>>4))>>0]|0;T=f+(l+F)|0;a[T>>0]=a[134088+((d[T>>0]|0)-(h>>4))>>0]|0}}e=e+1|0}}while(0);r=r+1|0}}Ec=R;return}function ei(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Ec;Ec=Ec+16|0;f=g;do if((c[(c[a>>2]|0)+16>>2]|0)==27)if(!(c[a+788>>2]|0)){c[f>>2]=135368;c[f+4>>2]=133034;c[f+8>>2]=47;We(0,0,164054,f);Za()}else{c[b>>2]=4;e=c[a+556>>2]<<2;break}else{c[b>>2]=2;e=c[a+568>>2]|0}while(0);c[d>>2]=e;Ec=g;return}function fi(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=Ec;Ec=Ec+16|0;h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[120443+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){We(0,16,155802,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[126412+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[126924+a>>0]|0}while(0);Ec=i;return a|0}function gi(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[126412+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[126924+a>>0]|0|0}function hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;c[f>>2]=d;ui(0,a,b,f);Ec=e;return}function ii(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function ji(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function ki(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uW(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[126412+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[127436+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[120443+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uW(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function li(a){a=a|0;return c[a+8>>2]|0}function mi(a,b){a=a|0;b=b|0;var d=0;d=Ec;Ec=Ec+16|0;switch(c[a+4>>2]|0){case 66:case 77:case 88:{if(!(c[a+1196>>2]&7))a=1;else{We(b,40,136058,d);a=0}break}default:a=1}Ec=d;return a|0}function ni(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;j=(e|0)!=0;if(j)h=0;else h=(c[b+668>>2]|0)!=0;i=h?b+768|0:135790;k=h?b+960|0:135854;if(!(ii(a)|0))return 0;l=ti(a,f,16,135918,h?b+672|0:135918)|0;m=f+16|0;l=ti(a,m,16,135918,f)|0|l;m=l|(ti(a,f+32|0,16,135918,m)|0);l=f+48|0;m=m|(ti(a,l,16,135934,h?b+720|0:135934)|0);h=f+64|0;l=m|(ti(a,h,16,135934,l)|0);h=l|(ti(a,f+80|0,16,135934,h)|0);if(!(!j?(c[d+64>>2]|0)==0:0)){h=ti(a,g,64,135790,i)|0|h;f=g+192|0;h=h|(ti(a,f,64,135854,k)|0);if((c[b+12>>2]|0)==3){m=g+64|0;l=ti(a,m,64,135790,g)|0|h;h=g+256|0;l=l|(ti(a,h,64,135854,f)|0);m=l|(ti(a,g+128|0,64,135790,m)|0);h=m|(ti(a,g+320|0,64,135854,h)|0)}}return ((h|0)==0?e:h)|0}function oi(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+-8|0;h=f*6|0;g=h+51|0;h=h+52|0;e=0;while(1){if((e|0)>=(h|0))break;i=e+d|0;a[b+548+(c*88|0)+e>>0]=a[((i|0)<0?0:(i|0)>(g|0)?g:i)+(128307+(f*88|0))>>0]|0;e=e+1|0}return}function pi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;ri(a,b);f=a+173812|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;f=a+64|0;if(c[f>>2]|0)si(a,b);a:do if(c[b+16>>2]|0){d=0;while(1){if((d|0)==6)break;e=a+173788+(d<<2)|0;b=0;while(1){if((b|0)==16)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}if(c[f>>2]|0){d=0;while(1){if((d|0)==6)break a;e=a+173812+(d<<2)|0;b=0;while(1){if((b|0)==64)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}}}while(0);return}function qi(a,b){a=a|0;b=b|0;Cf(a+128+(b<<2)|0);return}function ri(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173788+(h<<2)|0;c[f>>2]=a+4828+(h*5632|0);b=a+68+(h<<4)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(ZS(a+68+(e<<4)|0,b,16)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+4828+(e*5632|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=(d[128219+g>>0]|0)+2|0;f=d[128131+g>>0]|0;b=0;while(1){if((b|0)==16)break;j=b>>2;c[a+4828+(h*5632|0)+(g<<6)+((b<<2&12|j)<<2)>>2]=(H(d[a+68+(h<<4)+b>>0]|0,d[(j&1)+(b&1)+(128061+(f*3|0))>>0]|0)|0)<<e;b=b+1|0}g=g+1|0;b=8}while(0);h=h+1|0}return}function si(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173812+(h<<2)|0;c[f>>2]=a+38620+(h*22528|0);b=a+164+(h<<6)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(ZS(a+164+(e<<6)|0,b,64)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+38620+(e*22528|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=d[128219+g>>0]|0;f=d[128131+g>>0]|0;b=0;while(1){if((b|0)==64)break;c[a+38620+(h*22528|0)+(g<<8)+((b<<3&56|b>>3)<<2)>>2]=(H(d[a+164+(h<<6)+b>>0]|0,d[(d[128079+(b>>>1&12|b&3)>>0]|0)+(128095+(f*6|0))>>0]|0)|0)<<e;b=b+1|0}g=g+1|0;b=8}while(0);h=h+1|0}return}function ti(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;m=Ec;Ec=Ec+16|0;l=m;k=(f|0)==16?135950:135967;a:do if(ii(b)|0){i=0;h=8;j=8;while(1){if((i|0)>=(f|0)){h=0;break a}if(!h)h=0;else{h=ki(b)|0;if((h+128|0)>>>0>255){i=7;break}h=h+j&255}if(!(h|i)){i=9;break}n=h|0?h:j;a[e+(d[k+i>>0]|0)>>0]=n;i=i+1|0;j=n}if((i|0)==7){c[l>>2]=h;We(0,16,136031,l);h=-1094995529;break}else if((i|0)==9){wW(e|0,g|0,f|0)|0;h=0;break}}else{wW(e|0,h|0,f|0)|0;h=0}while(0);Ec=m;return h|0}function ui(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=Ec;Ec=Ec+16|0;Xe(b,24,c,d);We(b,24,136123,e);if(a|0)We(b,24,136299,e+8|0);Ec=e;return}function vi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+2|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function xi(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;l=Ec;Ec=Ec+32|0;k=l+24|0;i=l+16|0;h=l+8|0;f=l;do if(ii(a)|0){e=ji(a,8)|0;if((e|0)==255){c[d+100>>2]=ji(a,16)|0;c[d+104>>2]=ji(a,16)|0;g=8;break}if(e>>>0<17){e=75092+(e<<3)|0;f=c[e+4>>2]|0;g=d+100|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=8;break}else{We(b,16,137101,f);e=-1094995529;break}}else{c[d+104>>2]=0;c[d+100>>2]=0;g=8}while(0);do if((g|0)==8){if(ii(a)|0)ii(a)|0;g=ii(a)|0;c[d+108>>2]=g;if(g|0?(ji(a,3)|0,c[d+112>>2]=ii(a)|0,g=ii(a)|0,c[d+116>>2]=g,g|0):0){e=d+120|0;c[e>>2]=ji(a,8)|0;f=d+124|0;c[f>>2]=ji(a,8)|0;g=d+128|0;c[g>>2]=ji(a,8)|0;if(!(Ai(c[e>>2]|0)|0))c[e>>2]=2;if(!(Bi(c[f>>2]|0)|0))c[f>>2]=2;if(!(Ci(c[g>>2]|0)|0))c[g>>2]=2}if(ii(a)|0){c[b+332>>2]=(fi(a)|0)+1;fi(a)|0}if(Di(a)|0?(yi(a)|0)<10:0){We(b,24,137123,h);e=0;break}h=ii(a)|0;e=d+132|0;c[e>>2]=h;if(h|0){f=Ei(a,32)|0;g=Ei(a,32)|0;if((f|0)!=0&(g|0)!=0){c[d+136>>2]=f;c[d+140>>2]=g}else{c[i>>2]=g;c[i+4>>2]=f;We(b,16,137138,i);c[e>>2]=0}c[d+144>>2]=ii(a)|0}i=ii(a)|0;e=d+1152|0;c[e>>2]=i;if(i|0?(Fi(a,b,d)|0)<0:0){e=-1094995529;break}i=ii(a)|0;f=d+1156|0;c[f>>2]=i;if(i|0?(Fi(a,b,d)|0)<0:0){e=-1094995529;break}if(!((c[e>>2]|0)==0?!(c[f>>2]|0):0))ii(a)|0;c[d+1160>>2]=ii(a)|0;if((yi(a)|0)!=0?(i=ii(a)|0,j=d+660|0,c[j>>2]=i,(i|0)!=0):0){ii(a)|0;fi(a)|0;fi(a)|0;fi(a)|0;fi(a)|0;f=d+664|0;c[f>>2]=fi(a)|0;fi(a)|0;if((yi(a)|0)<0){c[f>>2]=0;c[j>>2]=0;e=0;break}e=c[f>>2]|0;if(e>>>0>16){c[k>>2]=e;We(b,16,137199,k);c[f>>2]=16;e=-1094995529}else e=0}else e=0}while(0);Ec=l;return e|0}function yi(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(li(a)|0)|0}function zi(a,b){a=a|0;b=b|0;Cf(a+(b<<2)|0);return}function Ai(a){a=a|0;if(a>>>0<23)a=c[72392+(a<<2)>>2]|0;else a=0;return a|0}function Bi(a){a=a|0;if(a>>>0<19)a=c[72316+(a<<2)>>2]|0;else a=0;return a|0}function Ci(a){a=a|0;if(a>>>0<15)a=c[72256+(a<<2)>>2]|0;else a=0;return a|0}function Di(a){a=a|0;return Ji(a)|0}function Ei(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=ji(a,b)|0;break}else{b=b+-16|0;c=(ji(a,16)|0)<<b;a=c|(ji(a,b)|0);break}else a=0;while(0);return a|0}function Fi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Ec;Ec=Ec+16|0;e=h;f=gi(a)|0;g=f+1|0;if(g>>>0>32){c[e>>2]=g;We(b,16,137239,e);b=-1094995529}else{ji(a,4)|0;ji(a,4)|0;b=0;while(1){if((b|0)>(f|0))break;Gi(a);Gi(a);ii(a)|0;b=b+1|0}c[d+1172>>2]=(ji(a,5)|0)+1;c[d+1176>>2]=(ji(a,5)|0)+1;c[d+1180>>2]=(ji(a,5)|0)+1;c[d+1164>>2]=ji(a,5)|0;c[d+1168>>2]=g;b=0}Ec=h;return b|0}function Gi(a){a=a|0;var b=0,c=0,e=0;e=Hi(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Ii(a,b);Ei(a,b+1|0)|0;return}function Hi(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=Ei(d,32)|0;Ec=b;return a|0}function Ii(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Ji(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>31|0}function Ki(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Ni(a)|0)|0}function Li(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Mi(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function Ni(a){a=a|0;return c[a+8>>2]|0}function Oi(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;m=Ec;Ec=Ec+16|0;l=m+8|0;j=m;i=0;g=c[e+1164>>2]|0;while(1){h=(g|0)!=0;if((i|0)==32)break;if(!(h?(c[g+20>>2]|0)!=0:0)){h=c[e+(i<<2)>>2]|0;if(h)g=c[h+4>>2]|0}i=i+1|0}do if(h){if(!((c[g+1152>>2]|0)==0?!(c[g+1156>>2]|0):0)){c[a+16>>2]=cj(b,c[g+1176>>2]|0)|0;c[a+12>>2]=cj(b,c[g+1180>>2]|0)|0}if(c[g+1160>>2]|0){h=Mi(b,4)|0;j=a+4|0;c[j>>2]=h;k=a+8|0;c[k>>2]=0;if(h>>>0>8){g=-1094995529;break}e=d[137754+h>>0]|0;h=g+1164|0;g=0;while(1){if((g|0)==(e|0))break;if(Mi(b,1)|0){i=1<<(Mi(b,2)|0);c[k>>2]=c[k>>2]|i;Zi(b,1);Zi(b,5);i=Mi(b,1)|0;Zi(b,1);Zi(b,1);Zi(b,8);if(!i){if((Mi(b,1)|0?(Zi(b,6),Mi(b,1)|0):0)?(Zi(b,6),Mi(b,1)|0):0)Zi(b,5)}else{Zi(b,6);Zi(b,6);Zi(b,5)}i=c[h>>2]|0;if((i|0)>0)Zi(b,i)}g=g+1|0}b=c[j>>2]|0;c[l>>2]=c[k>>2];c[l+4>>2]=b;We(f,48,137763,l)}c[a>>2]=1;g=0}else{We(f,16,137712,j);g=-1397768184}while(0);Ec=m;return g|0}function Pi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if((c|0)<7)c=-1094995529;else{if((Mi(b,8)|0)==255){Zi(b,8);c=c+-8|0}else c=c+-7|0;Zi(b,8);Zi(b,8);d=cj(b,32)|0;b:do if((d|0)<1195456820){switch(d|0){case 1146373937:break;default:break b}c=ej(a+20|0,b,c)|0;break a}else{switch(d|0){case 1195456820:break;default:break b}c=fj(a+28|0,b,c)|0;break a}while(0);Zi(b,c<<3);c=0}while(0);return c|0}function Qi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+16|0;g=j;h=j+4|0;if((e+-16|0)>>>0<=2147483614){f=e+16|0;i=cf(e+17|0)|0;if(!i)e=-12;else{e=0;while(1){if((e|0)>=(f|0))break;a[i+e>>0]=Mi(d,8)|0;e=e+1|0}a[i+e>>0]=0;f=i+16|0;c[g>>2]=h;d=(fU(f,137680,g)|0)==1;e=c[h>>2]|0;if(d&(e|0)>0)c[b>>2]=e;if(d&(e|0)==1?(_S(f,137695,16)|0)==0:0)c[b>>2]=67;Te(i);e=0}}else e=-1094995529;Ec=j;return e|0}function Ri(a,b){a=a|0;b=b|0;c[a>>2]=$i(b)|0;Zi(b,4);return}function Si(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Ec;Ec=Ec+16|0;i=j;f=dj(b)|0;g=f>>>0>31;if(!g?(h=c[d+(f<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;a:do if(c[g+1152>>2]|0){e=g+1168|0;f=g+1172|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break a;c[a+4+(d<<2)>>2]=cj(b,c[f>>2]|0)|0;Zi(b,c[f>>2]|0);d=d+1|0}}while(0);b:do if(c[g+1156>>2]|0){f=g+1168|0;e=g+1172|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break b;c[a+4+(d<<2)>>2]=cj(b,c[e>>2]|0)|0;Zi(b,c[e>>2]|0);d=d+1|0}}while(0);c[a>>2]=1;d=0}else{c[i>>2]=f;We(e,16,137628,i);d=g?-1094995529:-1397768184}Ec=j;return d|0}function Ti(a,b){a=a|0;b=b|0;var d=0,e=0;c[a+4>>2]=$i(b)|0;d=_i(b)|0;c[a+8>>2]=d;d=(d|0)==0;c[a>>2]=d&1;if(d){d=a+12|0;c[d>>2]=Mi(b,7)|0;e=a+24|0;c[e>>2]=_i(b)|0;c[a+20>>2]=Mi(b,6)|0;Zi(b,3);c[a+28>>2]=_i(b)|0;Zi(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)Zi(b,16);Zi(b,8);c[a+16>>2]=$i(b)|0}aj(b);return}function Ui(a,b){a=a|0;b=b|0;var d=0;d=(_i(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=_i(b)|0;c[a+12>>2]=_i(b)|0;c[a+4>>2]=Mi(b,16)|0;$i(b)|0;aj(b)}return}function Vi(c,d){c=c|0;d=d|0;var e=0;e=(Mi(d,8)|0)&255;a[c>>0]=e;switch(e<<24>>24){case 0:{e=(Mi(d,8)|0)&255;a[c+1>>0]=e;switch(e<<24>>24){case 2:{b[c+2>>1]=Mi(d,16)|0;break}case 3:{b[c+4>>1]=Mi(d,16)|0;break}default:{}}a[c+6>>0]=Mi(d,8)|0;a[c+7>>0]=Mi(d,8)|0;a[c+8>>0]=Mi(d,8)|0;a[c+9>>0]=Mi(d,8)|0;break}case 1:{a[c+10>>0]=Mi(d,8)|0;b[c+12>>1]=Mi(d,16)|0;break}default:{}}return}function Wi(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=Mi(b,8)|0;return}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Yi(a){a=a|0;var b=0;b=0-(Ni(a)|0)&7;if(b|0)Zi(a,b);return}function Zi(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function _i(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function $i(a){a=a|0;var b=0,c=0,e=0;e=bj(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[120443+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Xi(a,b);return (cj(a,b+1|0)|0)+-1|0}function aj(a){a=a|0;Zi(a,1);return}function bj(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=cj(d,32)|0;Ec=b;return a|0}function cj(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Mi(a,b)|0;break}else{b=b+-16|0;c=(Mi(a,16)|0)<<b;a=c|(Mi(a,b)|0);break}else a=0;while(0);return a|0}function dj(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uW(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[126412+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[126924+a>>0]|0|0}function ej(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=1){Zi(d,1);f=Mi(d,1)|0;Zi(d,6);if(f)if((e|0)<2)b=-1094995529;else{Zi(d,4);a[b+4>>0]=Mi(d,4)|0;c[b>>2]=1;b=0}else b=0}else b=-1094995529;return b|0}function fj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:do if((e|0)>=3){if((Mi(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}Zi(d,8);e=e+1|0}}Zi(d,1);if(((Mi(d,1)|0)!=0?(Zi(d,1),g=Mi(d,5)|0,Zi(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=nW(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=hW(f|0,M()|0,e|0,((e|0)<0)<<31>>31|0)|0;f=M()|0;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=gj(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(Mi(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(Mi(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(Mi(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}Zi(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function gj(b,c){b=b|0;c=c|0;do if(c){c=bf(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c)|0;if(!c){Se(b);c=-12;break}else{a[b>>0]=c;a[b+1>>0]=c>>8;a[b+2>>0]=c>>16;a[b+3>>0]=c>>24;c=0;break}}else{Se(b);c=0}while(0);return c|0}function hj(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;B=Ec;Ec=Ec+64|0;p=B+56|0;o=B+48|0;u=B+32|0;s=B+24|0;t=B+16|0;f=B;x=c[d>>2]|0;A=d+21788|0;r=c[A>>2]|0;y=d+868|0;z=c[y>>2]|0;w=c[c[x+24312>>2]>>2]|0;b=c[w+32>>2]|0;e=d+21772|0;c[e>>2]=b;c[d+21776>>2]=c[w+36>>2];b=nj(d,b)|0;a:do if((b|0)>=0){n=d+21816|0;c[n>>2]=-1;if((c[x+26036>>2]|0)!=(((c[e>>2]|0)*12|0)+(12<<c[x+25664>>2])|0)){c[f>>2]=138884;c[f+4>>2]=137858;c[f+8>>2]=2536;We(0,0,164054,f);Za()}if(c[x+25708>>2]|0)c[y>>2]=0;v=x+26376|0;if(!(c[v>>2]|0))b=(c[x+26380>>2]|0)!=3;else b=1;c[d+21820>>2]=b&1;w=x+4|0;if(((((c[(c[w>>2]|0)+696>>2]&2|0)==0?(c[x+26380>>2]|0)==3:0)?(h=c[x+25628>>2]|0,i=c[h+604>>2]|0,i|0):0)?(q=(H(c[x+27012>>2]|0,c[d+21804>>2]|0)|0)+(c[d+21800>>2]|0)|0,g=(c[x+27020>>2]|0)+-1|0,g=(q|0)>(g|0)?g:q,!((q|0)<0|(g|0)==0)):0)?(a[i+(c[(c[h+572>>2]|0)+(g+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0)c[h+600>>2]=1;do if(!(c[(c[x+28212>>2]|0)+4>>2]|0)){m=d+21792|0;f=x+27012|0;i=d+21812|0;l=d+4|0;j=x+26380|0;k=x+27008|0;e=r;while(1){u=(H(c[f>>2]|0,c[m>>2]|0)|0)+(c[A>>2]|0)|0;b=c[i>>2]|0;if((u|0)>=(b|0)){f=46;break}b=zj(x,d)|0;if((b|0)<=-1){f=52;break}vj(x,d);if(c[v>>2]|0){c[m>>2]=(c[m>>2]|0)+1;b=zj(x,d)|0;if((b|0)<=-1){f=50;break}vj(x,d);c[m>>2]=(c[m>>2]|0)+-1}b=(c[A>>2]|0)+1|0;c[A>>2]=b;if((b|0)>=(c[f>>2]|0)){ij(x,d,e,b);c[A>>2]=0;xj(x,d);b=c[m>>2]|0;e=b+1|0;c[m>>2]=e;if(!(c[v>>2]|0)){if((c[j>>2]|0)!=3){e=b+2|0;c[m>>2]=e}}else{b=b+2|0;c[m>>2]=b;if((b|0)<(c[k>>2]|0)){yj(x,d);e=c[m>>2]|0}else e=b}if((e|0)<(c[k>>2]|0))h=0;else{f=61;break}}else h=e;g=qj(l)|0;if((g|0)>=1){e=h;continue}if((c[n>>2]|0)<1){f=68;break}else e=h}if((f|0)==46){z=c[w>>2]|0;c[o>>2]=b;We(z,16,139011,o);tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[A>>2]|0,c[m>>2]|0,14);b=-1094995529;break a}else if((f|0)==50){e=(c[m>>2]|0)+-1|0;c[m>>2]=e}else if((f|0)==52)e=c[m>>2]|0;else if((f|0)==61){b=qj(l)|0;do if(b|0){if((b|0)>0?(c[(c[w>>2]|0)+580>>2]&262144|0)==0:0)break;tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[A>>2]|0,e,112);b=-1094995529;break a}while(0);tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[A>>2]|0)+-1|0,e,112);break}else if((f|0)==68){b=c[d+21800>>2]|0;e=c[d+21804>>2]|0;f=c[A>>2]|0;if(g|0){tj(d,b,e,f,c[m>>2]|0,14);b=-1094995529;break a}tj(d,b,e,f+-1|0,c[m>>2]|0,112);b=c[A>>2]|0;if((b|0)<=(h|0))break;ij(x,d,h,b);break}z=c[w>>2]|0;c[p>>2]=c[A>>2];c[p+4>>2]=e;We(z,16,139115,p);tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[A>>2]|0,c[m>>2]|0,14);break a}else{b=d+4|0;oj(b);o=d+32856|0;q=c[b>>2]|0;q=q+((pj(b)|0)/8|0)|0;b=rj(o,q,((qj(b)|0)+7|0)/8|0)|0;if((b|0)<0)break a;sj(x,d);q=d+21792|0;i=x+27012|0;j=d+21812|0;k=x+25700|0;p=d+32872|0;n=d+32876|0;l=x+27008|0;m=x+26380|0;h=r;b=c[q>>2]|0;while(1){r=(H(c[i>>2]|0,b)|0)+(c[A>>2]|0)|0;b=c[j>>2]|0;if((r|0)>=(b|0)){f=19;break}b=uj(x,d)|0;if((b|0)>-1?(vj(x,d),(c[v>>2]|0)!=0):0){c[q>>2]=(c[q>>2]|0)+1;b=uj(x,d)|0;if((b|0)>-1)vj(x,d);c[q>>2]=(c[q>>2]|0)+-1}g=wj(o)|0;e=c[p>>2]|0;f=c[n>>2]|0;if((c[k>>2]&16384|0)!=0&e>>>0>(f+2|0)>>>0){f=26;break}if(e>>>0>(f+2|0)>>>0){r=c[w>>2]|0;c[s>>2]=f-e;We(r,48,139043,s)}if((b|0)<0){f=31;break}b=c[p>>2]|0;e=c[n>>2]|0;if(b>>>0>(e+4|0)>>>0){f=33;break}b=(c[A>>2]|0)+1|0;c[A>>2]=b;do if((b|0)>=(c[i>>2]|0)){ij(x,d,h,b);c[A>>2]=0;xj(x,d);b=c[q>>2]|0;c[q>>2]=b+1;if(!(c[v>>2]|0)){if((c[m>>2]|0)==3){e=0;break}c[q>>2]=b+2;e=0;break}else{r=b+2|0;c[q>>2]=r;if((r|0)>=(c[l>>2]|0)){e=0;break}yj(x,d);e=0;break}}else e=h;while(0);b=c[q>>2]|0;if(g|0){f=43;break}if((b|0)>=(c[l>>2]|0)){f=43;break}else h=e}if((f|0)==19){z=c[w>>2]|0;c[t>>2]=b;We(z,16,139011,t);tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[A>>2]|0,c[q>>2]|0,14);b=-1094995529;break a}else if((f|0)==26){tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[A>>2]|0)+-1|0,c[q>>2]|0,112);b=c[A>>2]|0;if((b|0)<(h|0))break;ij(x,d,h,b+1|0);break}else if((f|0)==31){e=c[n>>2]|0;b=c[p>>2]|0}else if((f|0)!=33)if((f|0)==43){tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[A>>2]|0)+-1|0,b,112);b=c[A>>2]|0;if((b|0)<=(e|0))break;ij(x,d,e,b);break}z=c[w>>2]|0;y=c[q>>2]|0;c[u>>2]=c[A>>2];c[u+4>>2]=y;c[u+8>>2]=e-b;We(z,16,139068,u);tj(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[A>>2]|0,c[q>>2]|0,14);b=-1094995529;break a}while(0);c[y>>2]=z;b=0}while(0);Ec=B;return b|0}function ij(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,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;aa=e+21792|0;_=b+26376|0;h=c[_>>2]|0;ba=h+(c[aa>>2]|0)|0;ca=e+836|0;$=c[ca>>2]|0;X=b+25664|0;Y=c[X>>2]|0;Z=16>>>(c[b+25680>>2]|0);if(!(c[b+25708>>2]|0)){a:do if(!(c[e+868>>2]|0)){l=b+28212|0;k=e+852|0;j=e+856|0;i=e+21788|0}else{J=b+27016|0;K=e+21796|0;L=b+24364|0;i=e+21788|0;M=b+24316|0;N=e+21772|0;O=b+28216|0;P=e+21776|0;Q=e+21828|0;R=e+21780|0;S=e+21784|0;l=b+28212|0;T=b+24340|0;k=e+852|0;j=e+856|0;U=e+21832|0;V=e+27796|0;W=1-Z|0;while(1){h=c[_>>2]|0;if((f|0)>=(g|0))break a;I=f<<Y;E=ba-h|0;while(1){if((E|0)>(ba|0))break;F=(H(c[J>>2]|0,E)|0)+f|0;c[K>>2]=F;G=c[(c[L>>2]|0)+(F<<2)>>2]|0;t=(c[_>>2]|0)==0;h=G>>>7&1;if(t)h=c[Q>>2]|0;else{c[Q>>2]=h;c[U>>2]=h}c[i>>2]=f;c[aa>>2]=E;C=c[M>>2]|0;p=c[N>>2]|0;m=(c[C>>2]|0)+((H(p,E)|0)+I<<4)|0;s=c[(c[O>>2]|0)+12>>2]|0;z=(s|0)==3;D=H(8<<(z&1),I)|0;r=c[P>>2]|0;o=H(H(E,Z)|0,r)|0;n=(c[C+4>>2]|0)+D+o|0;o=(c[C+8>>2]|0)+D+o|0;if(h){h=p<<1;c[R>>2]=h;q=r<<1;c[S>>2]=q;if(!(E&1)){D=n;C=o;p=h}else{C=H(W,r)|0;m=m+(H(p,-15)|0)|0;D=n+C|0;C=o+C|0;p=h}}else{c[R>>2]=p;c[S>>2]=r;D=n;C=o;q=r}w=c[X>>2]|0;x=(s|0)==2;v=m+(0-p)|0;B=0-q|0;y=D+B|0;B=C+B|0;do if(!t){h=(c[U>>2]|0)!=0;if(!(E&1))if(h){h=0;u=f;A=33;break}else break;if(!h){t=c[V>>2]|0;h=v+(p*15|0)|0;s=h;A=c[s+4>>2]|0;u=t+(f*96|0)|0;c[u>>2]=c[s>>2];c[u+4>>2]=A;u=h+8|0;A=c[u+4>>2]|0;s=t+(f*96|0)+8|0;c[s>>2]=c[u>>2];c[s+4>>2]=A;s=(w|0)!=0;h=h+16|0;if(s){A=h;u=c[A+4>>2]|0;r=t+(f*96|0)+16|0;c[r>>2]=c[A>>2];c[r+4>>2]=u;r=h+8|0;u=c[r+4>>2]|0;A=t+(f*96|0)+24|0;c[A>>2]=c[r>>2];c[A+4>>2]=u}do if(z){h=q*15|0;n=y+h|0;r=n;o=c[r>>2]|0;r=c[r+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=o;c[A+4>>2]=r;A=n+8|0;u=c[A+4>>2]|0;s=t+(f*96|0)+40|0;c[s>>2]=c[A>>2];c[s+4>>2]=u;n=n+16|0;s=n;u=c[s+4>>2]|0;A=t+(f*96|0)+48|0;c[A>>2]=c[s>>2];c[A+4>>2]=u;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+56|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+64|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=h+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+72|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=h+16|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+80|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=88;h=h+8|0;break}else{A=t+(f*96|0)+16|0;c[A>>2]=o;c[A+4>>2]=r;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+24|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+32|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=40;h=h+8|0;break}}else if(x){r=q*15|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q*7|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);A=h;u=c[A+4>>2]|0;h=t+(f*96|0)+n|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=1;u=c[i>>2]|0;A=33}else{h=1;u=f;A=33}}else{h=1;u=f;A=33}while(0);if((A|0)==33){A=0;t=c[e+27796+(h<<2)>>2]|0;r=p<<4;h=v+r|0;s=h;v=c[s+4>>2]|0;o=t+(u*96|0)|0;c[o>>2]=c[s>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;s=t+(u*96|0)+8|0;c[s>>2]=c[o>>2];c[s+4>>2]=v;s=(w|0)!=0;h=h+16|0;if(s){w=h;v=c[w+4>>2]|0;o=t+(u*96|0)+16|0;c[o>>2]=c[w>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;w=t+(u*96|0)+24|0;c[w>>2]=c[o>>2];c[w+4>>2]=v}do if(z){h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;z=h+8|0;y=c[z+4>>2]|0;n=t+(u*96|0)+40|0;c[n>>2]=c[z>>2];c[n+4>>2]=y;n=h+16|0;y=n;h=c[y+4>>2]|0;z=t+(u*96|0)+48|0;c[z>>2]=c[y>>2];c[z+4>>2]=h;n=n+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+56|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+64|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=h+8|0;B=c[n+4>>2]|0;z=t+(u*96|0)+72|0;c[z>>2]=c[n>>2];c[z+4>>2]=B;h=h+16|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+80|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=88;h=h+8|0;break}else{z=t+(u*96|0)+16|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+24|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+32|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=40;h=h+8|0;break}}else if(x){r=q<<4;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q<<3;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);y=h;z=c[y+4>>2]|0;B=t+(u*96|0)+n|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}do if(!(jj(b,e,G)|0)){G=c[l>>2]|0;F=(c[T>>2]|0)+F|0;c[k>>2]=d[(a[F>>0]|0)+(G+548)>>0];c[j>>2]=d[(a[F>>0]|0)+(G+636)>>0];if(!(c[_>>2]|0)){lj(b,e,f,E,m,D,C,p,q);break}else{kj(b,e,f,E,m,D,C,p,q);break}}while(0);E=E+1|0}f=f+1|0}}while(0);c[ca>>2]=$;c[i>>2]=g;c[aa>>2]=ba-h;ba=c[l>>2]|0;ca=c[e+848>>2]|0;c[k>>2]=d[ba+548+ca>>0];c[j>>2]=d[ba+636+ca>>0]}return}function jj(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,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;u=c[f+21796>>2]|0;o=d+27016|0;m=c[o>>2]|0;h=u-(m<<c[f+21828>>2])|0;j=u+-1|0;n=d+26376|0;do if(!(c[n>>2]|0)){t=j;s=j}else{i=c[d+24364>>2]|0;k=c[i+(j<<2)>>2]&128;l=g&128;if(c[f+21792>>2]&1|0){t=j-((k|0)==(l|0)?0:m)|0;s=j;break}if(l)h=(((c[i+(h<<2)>>2]|0)>>>7&1)+-1&m)+h|0;t=j;s=j+((k|0)==(l|0)?0:m)|0}while(0);c[f+21712>>2]=h;c[f+21720>>2]=t;c[f+21724>>2]=s;i=c[f+860>>2]|0;j=c[d+24340>>2]|0;k=a[j+u>>0]|0;do if((i|0)>=(k|0)){l=(t|0)<0;if(!l?(k+1+(a[j+t>>0]|0)>>1|0)>(i|0):0){p=17;break}if((h|0)>=0?(k+1+(a[j+h>>0]|0)>>1|0)>(i|0):0){p=17;break}if(c[n>>2]|0){if(!l?(k+1+(a[j+s>>0]|0)>>1|0)>(i|0):0){p=17;break}r=c[o>>2]|0;if((h|0)>=(r|0)?(k+1+(a[j+(h-r)>>0]|0)>>1|0)>(i|0):0)p=17;else h=1}else h=1}else p=17;while(0);if((p|0)==17){l=c[d+24364>>2]|0;i=c[l+(h<<2)>>2]|0;k=c[l+(t<<2)>>2]|0;l=c[l+(s<<2)>>2]|0;o=d+26372|0;j=c[o>>2]|0;n=b[j+(h<<1)>>1]|0;if((c[f+868>>2]|0)==2){r=c[f+832>>2]|0;p=(r|0)==(e[j+(s<<1)>>1]|0);r=(r|0)==(n&65535|0)?i:0;q=p?k:0;p=p?l:0}else{p=(b[j+(s<<1)>>1]|0)==-1;r=n<<16>>16==-1?0:i;q=p?0:k;p=p?0:l}c[f+21732>>2]=r;c[f+21740>>2]=q;c[f+21744>>2]=p;if(!(g&7)){i=d+26368|0;j=c[i>>2]|0;k=f+28e3|0;l=f+28284|0;m=(g&376|0)==0;do if(!m){if(!(r&12288)){n=f+27968|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28276>>2]=-1}else{y=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(j*3|0)|0;v=h<<2;w=d+29940+((n&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;A=(c[x>>2]|0)+(y<<2)|0;z=c[A+4>>2]|0;n=f+27968|0;c[n>>2]=c[A>>2];c[n+4>>2]=z;y=(c[x>>2]|0)+(y<<2)+8|0;x=c[y+4>>2]|0;n=f+27976|0;c[n>>2]=c[y>>2];c[n+4>>2]=x;n=d+24384|0;x=c[w+(a[(c[n>>2]|0)+(v|2)>>0]<<2)>>2]&255;a[f+28277>>0]=x;a[f+28276>>0]=x;n=c[w+(a[(c[n>>2]|0)+(v|3)>>0]<<2)>>2]&255;a[f+28279>>0]=n;a[f+28278>>0]=n}if(!((q^g)&128))if(!(q&12288)){c[f+27996>>2]=0;c[f+28028>>2]=0;c[f+28060>>2]=0;c[f+28092>>2]=0;a[f+28307>>0]=-1;a[f+28299>>0]=-1;a[f+28291>>0]=-1;a[f+28283>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;c[f+27996>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28028>>2]=c[(c[x>>2]|0)+(z+j<<2)>>2];c[f+28060>>2]=c[(c[x>>2]|0)+(z+(j<<1)<<2)>>2];c[f+28092>>2]=c[(c[x>>2]|0)+(z+(j*3|0)<<2)>>2];z=d+24384|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28291>>0]=x;a[f+28283>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28307>>0]=A;a[f+28299>>0]=A;break}}while(0);if(!(g&12288)){y=f+28032|0;z=f+28064|0;A=f+28096|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[l>>2]=-1;c[f+28292>>2]=-1;c[f+28300>>2]=-1;c[f+28308>>2]=-1}else{y=(c[d+24384>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[l>>2]=x;c[f+28292>>2]=x;c[f+28300>>2]=y;c[f+28308>>2]=y;y=(c[d+24352>>2]|0)+((H(c[f+21792>>2]|0,j)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=k;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28008|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(j<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28032|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28040|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(j<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28064|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28072|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(j*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28096|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28104|0;c[A>>2]=c[y>>2];c[A+4>>2]=z}do if((c[f+23412>>2]|0)==2){i=c[i>>2]|0;j=f+28160|0;k=f+28324|0;do if(!m){if(!(r&49152)){A=f+28128|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[f+28316>>2]=-1}else{w=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(i*3|0)|0;A=h<<2;y=d+29940+((b[(c[o>>2]|0)+(h<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;n=(c[x>>2]|0)+(w<<2)|0;v=c[n+4>>2]|0;z=f+28128|0;c[z>>2]=c[n>>2];c[z+4>>2]=v;w=(c[x>>2]|0)+(w<<2)+8|0;x=c[w+4>>2]|0;z=f+28136|0;c[z>>2]=c[w>>2];c[z+4>>2]=x;z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|2)>>0]<<2)>>2]&255;a[f+28317>>0]=x;a[f+28316>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28319>>0]=A;a[f+28318>>0]=A}if(!((q^g)&128))if(!(q&49152)){c[f+28156>>2]=0;c[f+28188>>2]=0;c[f+28220>>2]=0;c[f+28252>>2]=0;a[f+28347>>0]=-1;a[f+28339>>0]=-1;a[f+28331>>0]=-1;a[f+28323>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;c[f+28156>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28188>>2]=c[(c[x>>2]|0)+(z+i<<2)>>2];c[f+28220>>2]=c[(c[x>>2]|0)+(z+(i<<1)<<2)>>2];c[f+28252>>2]=c[(c[x>>2]|0)+(z+(i*3|0)<<2)>>2];z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28331>>0]=x;a[f+28323>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28347>>0]=A;a[f+28339>>0]=A;break}}while(0);if(!(g&49152)){y=f+28192|0;z=f+28224|0;A=f+28256|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[k>>2]=-1;c[f+28332>>2]=-1;c[f+28340>>2]=-1;c[f+28348>>2]=-1;break}else{y=(c[d+24388>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[k>>2]=x;c[f+28332>>2]=x;c[f+28340>>2]=y;c[f+28348>>2]=y;y=(c[d+24356>>2]|0)+((H(c[f+21792>>2]|0,i)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=j;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28168|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(i<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28192|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28200|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(i<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28224|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28232|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(i*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28256|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28264|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}}while(0);j=d+25972|0;o=c[j>>2]|0;k=f+27836|0;c[k>>2]=c[o+(u*48|0)>>2];l=f+27844|0;c[l>>2]=c[o+(u*48|0)+4>>2];m=f+27852|0;c[m>>2]=c[o+(u*48|0)+8>>2];n=f+27860|0;c[n>>2]=c[o+(u*48|0)+12>>2];o=d+26392|0;i=e[(c[o>>2]|0)+(u<<1)>>1]|0;c[f+21856>>2]=i;if(r|0)c[f+27828>>2]=c[(c[j>>2]|0)+(h*48|0)+12>>2];if(q|0){A=c[j>>2]|0;a[f+27835>>0]=a[A+(t*48|0)+3>>0]|0;a[f+27843>>0]=a[A+(t*48|0)+7>>0]|0;a[f+27851>>0]=a[A+(t*48|0)+11>>0]|0;a[f+27859>>0]=a[A+(t*48|0)+15>>0]|0}A=c[d+28212>>2]|0;if((c[A+4>>2]|0)==0?(c[A+64>>2]|0)!=0:0){if(r&16777216|0){A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&4;a[f+27829>>0]=A;a[f+27828>>0]=A;A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&8;a[f+27831>>0]=A;a[f+27830>>0]=A}if(q&16777216|0){A=(e[(c[o>>2]|0)+(t<<1)>>1]|0)>>>12&2;a[f+27843>>0]=A;a[f+27835>>0]=A}if(p&16777216|0){A=(e[(c[o>>2]|0)+(s<<1)>>1]|0)>>>12&8;a[f+27859>>0]=A;a[f+27851>>0]=A}if(g&16777216){h=i>>>12;A=h&1;a[f+27845>>0]=A;a[l>>0]=A;a[f+27837>>0]=A;a[k>>0]=A;A=h&2;a[f+27847>>0]=A;a[f+27846>>0]=A;a[f+27839>>0]=A;a[f+27838>>0]=A;A=h&4;a[f+27861>>0]=A;a[n>>0]=A;a[f+27853>>0]=A;a[m>>0]=A;h=h&8;a[f+27863>>0]=h;a[f+27862>>0]=h;a[f+27855>>0]=h;a[f+27854>>0]=h;h=0}else h=0}else h=0}else h=0}return h|0}function kj(f,g,h,i,j,k,l,m,n){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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0;Pa=Ec;Ec=Ec+32|0;Na=Pa+16|0;Ja=Pa;Ka=f+27016|0;Aa=(H(c[Ka>>2]|0,i)|0)+h|0;Ba=f+24364|0;Ca=c[(c[Ba>>2]|0)+(Aa<<2)>>2]|0;Da=(Ca>>>6&2^2)+2|0;Ea=f+28216|0;Ha=c[Ea>>2]|0;Fa=(c[Ha+12>>2]|0)!=0;Ha=(H(c[Ha+1184>>2]|0,-6)|0)+48|0;Ga=(c[g+872>>2]|0)+52+Ha|0;Ha=(c[g+876>>2]|0)+52+Ha|0;Ia=f+26376|0;za=g+21740|0;if((c[Ia>>2]|0)!=0?(ya=c[za>>2]|0,!((ya|0)==0|((ya^Ca)&128|0)==0)):0){a:do if(!(Ca&7)){v=c[g+21828>>2]|0;r=i&1;h=f+28212|0;s=f+25972|0;t=f+26392|0;u=(v|0)!=0;q=0;while(1){if((q|0)==8){o=v;break a}p=u?q>>2:q&1;o=c[g+21720+(p<<2)>>2]|0;p=c[g+21740+(p<<2)>>2]|0;if(!(p&7)){if((p&16777216|0)==0?1:(c[(c[h>>2]|0)+4>>2]|0)!=0)o=d[(d[138836+(v<<4)+(r<<3)+q>>0]|0)+((c[s>>2]|0)+(o*48|0))>>0]|0;else o=((u?q&2:r)|0?32768:8192)&e[(c[t>>2]|0)+(o<<1)>>1];o=o|d[(q>>>1<<3)+12+(g+27824)>>0]|0?2:1}else o=4;b[Ja+(q<<1)>>1]=o;q=q+1|0}}else{h=Ja;c[h>>2]=262148;c[h+4>>2]=262148;h=Ja+8|0;c[h>>2]=262148;c[h+4>>2]=262148;h=f+28212|0;o=c[g+21828>>2]|0}while(0);y=c[f+24340>>2]|0;xa=a[y+Aa>>0]|0;x=a[y+(c[g+21720>>2]|0)>>0]|0;y=a[y+(c[g+21724>>2]|0)>>0]|0;t=xa+1|0;ya=c[h>>2]|0;w=(d[ya+548+xa>>0]|0)+1|0;xa=(d[ya+636+xa>>0]|0)+1|0;h=t+x>>1;u=(w+(d[ya+548+x>>0]|0)|0)>>>1;x=(xa+(d[ya+636+x>>0]|0)|0)>>>1;t=t+y>>1;w=(w+(d[ya+548+y>>0]|0)|0)>>>1;y=(xa+(d[ya+636+y>>0]|0)|0)>>>1;do if(!o){s=m<<1;p=h+Ga|0;q=d[138056+p>>0]|0;ya=h+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](j,s,q,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(p<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+8>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+12>>1]|0)+(138212+(p<<2))>>0]|0;Wc[c[f+56>>2]&127](j,s,q,h,Na);break}}while(0);p=j+m|0;v=Ja+2|0;q=t+Ga|0;r=d[138056+q>>0]|0;ya=t+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](p,s,r,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+6>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0;Wc[c[f+56>>2]&127](p,s,r,h,Na);break}}while(0);if(Fa){s=n<<1;p=u+Ga|0;q=d[138056+p>>0]|0;h=u+Ha|0;o=d[137900+h>>0]|0;h=p>>>0<68|h>>>0<68;if((c[(c[Ea>>2]|0)+12>>2]|0)==3){do if(!h){h=b[Ja>>1]|0;if(h<<16>>16>3){Vc[c[f+68>>2]&255](k,s,q,o);break}else{a[Na>>0]=a[(h<<16>>16)+(138212+(p<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+8>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+12>>1]|0)+(138212+(p<<2))>>0]|0;Wc[c[f+56>>2]&127](k,s,q,o,Na);break}}while(0);p=k+n|0;q=w+Ga|0;r=d[138056+q>>0]|0;ya=w+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](p,s,r,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+6>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0;Wc[c[f+56>>2]&127](p,s,r,h,Na);break}}while(0);p=x+Ga|0;q=d[138056+p>>0]|0;ya=x+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](l,s,q,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(p<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+8>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+12>>1]|0)+(138212+(p<<2))>>0]|0;Wc[c[f+56>>2]&127](l,s,q,h,Na);break}}while(0);p=l+n|0;q=y+Ga|0;r=d[138056+q>>0]|0;ya=y+Ha|0;o=d[137900+ya>>0]|0;if(q>>>0<68|ya>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){Vc[c[f+68>>2]&255](p,s,r,o);break}else{a[Na>>0]=a[(h<<16>>16)+(138212+(q<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+6>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0;Wc[c[f+56>>2]&127](p,s,r,o,Na);break}}else{do if(!h){h=b[Ja>>1]|0;if(h<<16>>16>3){Vc[c[f+92>>2]&255](k,s,q,o);break}else{a[Na>>0]=(d[(h<<16>>16)+(138212+(p<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+8>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+12>>1]|0)+(138212+(p<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](k,s,q,o,Na);break}}while(0);p=k+n|0;q=w+Ga|0;r=d[138056+q>>0]|0;ya=w+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){Vc[c[f+92>>2]&255](p,s,r,h);break}else{a[Na>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+6>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](p,s,r,h,Na);break}}while(0);p=x+Ga|0;q=d[138056+p>>0]|0;ya=x+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+92>>2]&255](l,s,q,h);break}else{a[Na>>0]=(d[(o<<16>>16)+(138212+(p<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+8>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+12>>1]|0)+(138212+(p<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](l,s,q,h,Na);break}}while(0);p=l+n|0;q=y+Ga|0;r=d[138056+q>>0]|0;ya=y+Ha|0;o=d[137900+ya>>0]|0;if(q>>>0<68|ya>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){Vc[c[f+92>>2]&255](p,s,r,o);break}else{a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+6>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](p,s,r,o,Na);break}}}}else{p=h+Ga|0;q=d[138056+p>>0]|0;ya=h+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](j,m,q,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(p<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+2>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+6>>1]|0)+(138212+(p<<2))>>0]|0;Wc[c[f+56>>2]&127](j,m,q,h,Na);break}}while(0);p=j+(m<<3)|0;v=Ja+8|0;q=t+Ga|0;r=d[138056+q>>0]|0;ya=t+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](p,m,r,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+12>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0;Wc[c[f+56>>2]&127](p,m,r,h,Na);break}}while(0);if(Fa){h=c[(c[Ea>>2]|0)+12>>2]|0;if((h|0)==3){p=u+Ga|0;q=d[138056+p>>0]|0;ya=u+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](k,n,q,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(p<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+2>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+6>>1]|0)+(138212+(p<<2))>>0]|0;Wc[c[f+56>>2]&127](k,n,q,h,Na);break}}while(0);s=n<<3;p=k+s|0;q=w+Ga|0;r=d[138056+q>>0]|0;ya=w+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](p,n,r,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+12>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0;Wc[c[f+56>>2]&127](p,n,r,h,Na);break}}while(0);p=x+Ga|0;q=d[138056+p>>0]|0;ya=x+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+68>>2]&255](l,n,q,h);break}else{a[Na>>0]=a[(o<<16>>16)+(138212+(p<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+2>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+6>>1]|0)+(138212+(p<<2))>>0]|0;Wc[c[f+56>>2]&127](l,n,q,h,Na);break}}while(0);p=l+s|0;q=y+Ga|0;r=d[138056+q>>0]|0;ya=y+Ha|0;o=d[137900+ya>>0]|0;if(q>>>0<68|ya>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){Vc[c[f+68>>2]&255](p,n,r,o);break}else{a[Na>>0]=a[(h<<16>>16)+(138212+(q<<2))>>0]|0;a[Na+1>>0]=a[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+2>>0]=a[(b[Ja+12>>1]|0)+(138212+(q<<2))>>0]|0;a[Na+3>>0]=a[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0;Wc[c[f+56>>2]&127](p,n,r,o,Na);break}}p=(h|0)==2;q=u+Ga|0;r=d[138056+q>>0]|0;ya=u+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+92>>2]&255](k,n,r,h);break}else{a[Na>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+2>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+4>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+6>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](k,n,r,h,Na);break}}while(0);if(p){s=n<<3;p=k+s|0;q=w+Ga|0;r=d[138056+q>>0]|0;ya=w+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){Vc[c[f+92>>2]&255](p,n,r,h);break}else{a[Na>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+12>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](p,n,r,h,Na);break}}while(0);p=x+Ga|0;q=d[138056+p>>0]|0;ya=x+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+92>>2]&255](l,n,q,h);break}else{a[Na>>0]=(d[(o<<16>>16)+(138212+(p<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+2>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+6>>1]|0)+(138212+(p<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](l,n,q,h,Na);break}}while(0);p=l+s|0;q=y+Ga|0;r=d[138056+q>>0]|0;ya=y+Ha|0;o=d[137900+ya>>0]|0;if(q>>>0<68|ya>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){Vc[c[f+92>>2]&255](p,n,r,o);break}else{a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+12>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](p,n,r,o,Na);break}}else{s=n<<2;p=k+s|0;q=w+Ga|0;r=d[138056+q>>0]|0;ya=w+Ha|0;h=d[137900+ya>>0]|0;do if(!(q>>>0<68|ya>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){Vc[c[f+92>>2]&255](p,n,r,h);break}else{a[Na>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+12>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](p,n,r,h,Na);break}}while(0);p=x+Ga|0;q=d[138056+p>>0]|0;ya=x+Ha|0;h=d[137900+ya>>0]|0;do if(!(p>>>0<68|ya>>>0<68)){o=b[Ja>>1]|0;if(o<<16>>16>3){Vc[c[f+92>>2]&255](l,n,q,h);break}else{a[Na>>0]=(d[(o<<16>>16)+(138212+(p<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+2>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+4>>1]|0)+(138212+(p<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+6>>1]|0)+(138212+(p<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](l,n,q,h,Na);break}}while(0);p=l+s|0;q=y+Ga|0;r=d[138056+q>>0]|0;ya=y+Ha|0;o=d[137900+ya>>0]|0;if(q>>>0<68|ya>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){Vc[c[f+92>>2]&255](p,n,r,o);break}else{a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[Na+1>>0]=(d[(b[Ja+10>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+2>>0]=(d[(b[Ja+12>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[Na+3>>0]=(d[(b[Ja+14>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[f+80>>2]&127](p,n,r,o,Na);break}}}}while(0);da=1}else da=0;ea=Aa+-1|0;fa=g+21732|0;ga=Ca>>>3&7;ha=g+21856|0;ia=Ca&16777216;ja=(Ca&7|0)==0;ka=Ja+6|0;la=Ja+4|0;ma=Ja+2|0;na=f+24340|0;oa=f+25664|0;pa=g+852|0;qa=g+856|0;ra=Na+1|0;sa=Na+2|0;ta=Na+3|0;ua=f+52|0;va=f+76|0;wa=m<<2;xa=f+48|0;ya=f+72|0;G=(i&1|0)==0;I=Ca&128^128;J=m<<1;K=n<<1;L=f+28212|0;M=f+25972|0;N=f+26392|0;O=g+27836|0;P=g+27837|0;Q=Ja+2|0;R=Ja+4|0;S=Ja+6|0;T=g+27839|0;U=g+27838|0;V=Ja+2|0;W=Ja+4|0;X=Ja+6|0;Y=Ja+6|0;Z=Ja+4|0;_=Ja+2|0;$=f+64|0;aa=f+88|0;ba=f+60|0;ca=f+84|0;z=f+26380|0;A=g+21712|0;f=0;while(1){if((f|0)==2)break;i=(f|0)!=0;C=c[(c[Ea>>2]|0)+12>>2]|0;B=(C|0)==3;C=(C|0)==2;D=(f|0)==0;if(D)s=ea;else s=c[A>>2]|0;h=c[(D?za:fa)>>2]|0;F=a[138868+(f<<3)+ga>>0]|0;E=F&255;if(F<<24>>24==3)F=(c[ha>>2]&15|0)==0?1:4;else F=4;o=32>>>f|8;y=o&Ca;r=i^1;b:do if(!(da&r|(h|0)==0)){p=c[Ia>>2]|0;if(!((h&I|0)==0|G&((f|0)==1&(p|0)!=0)^1)){u=Aa-(c[Ka>>2]<<1)|0;v=0;while(1){if((v|0)==2)break b;h=c[(c[Ba>>2]|0)+(u<<2)>>2]|0;c:do if(!((h|Ca)&7)){if((h&16777216|0)==0?1:(c[(c[L>>2]|0)+4>>2]|0)!=0){o=(c[M>>2]|0)+(u*48|0)+12|0;h=0;while(1){if((h|0)==4)break c;b[Ja+(h<<1)>>1]=(a[o+h>>0]|a[h+12+(g+27824)>>0])<<24>>24?2:1;h=h+1|0}}h=b[(c[N>>2]|0)+(u<<1)>>1]|0;if(!(h&16384)){b[Ja>>1]=(a[O>>0]|0)==0?1:2;if(!(a[P>>0]|0))o=1;else Oa=128}else{b[Ja>>1]=2;Oa=128}if((Oa|0)==128){Oa=0;o=2}b[Q>>1]=o;if(h<<16>>16>=0){b[R>>1]=(a[U>>0]|0)==0?1:2;if(!(a[T>>0]|0))h=1;else Oa=132}else{b[R>>1]=2;Oa=132}if((Oa|0)==132){Oa=0;h=2}b[S>>1]=h}else{x=Ja;c[x>>2]=196611;c[x+4>>2]=196611}while(0);p=c[na>>2]|0;h=a[p+u>>0]|0;p=(a[p+Aa>>0]|0)+1+(h<<24>>24)>>1;o=p+Ga|0;p=p+Ha|0;if(!(o>>>0<68|p>>>0<68)){h=d[137900+p>>0]|0;x=d[138056+o>>0]|0;w=j+(H(v,m)|0)|0;a[Na>>0]=a[(b[Ja>>1]|0)+(138212+(o<<2))>>0]|0;a[ra>>0]=a[(b[V>>1]|0)+(138212+(o<<2))>>0]|0;a[sa>>0]=a[(b[W>>1]|0)+(138212+(o<<2))>>0]|0;a[ta>>0]=a[(b[X>>1]|0)+(138212+(o<<2))>>0]|0;Wc[c[xa>>2]&127](w,J,x,h,Na);h=a[(c[na>>2]|0)+u>>0]|0}x=c[L>>2]|0;s=h<<24>>24;h=(c[pa>>2]|0)+1+(d[x+548+s>>0]|0)>>1;s=(c[qa>>2]|0)+1+(d[x+636+s>>0]|0)>>1;do if(Fa){t=H(v,n)|0;p=k+t|0;q=h+Ga|0;r=d[138056+q>>0]|0;o=h+Ha|0;h=d[137900+o>>0]|0;o=q>>>0<68|o>>>0<68;if(B){if(!o){a[Na>>0]=a[(b[Ja>>1]|0)+(138212+(q<<2))>>0]|0;a[ra>>0]=a[(b[V>>1]|0)+(138212+(q<<2))>>0]|0;a[sa>>0]=a[(b[W>>1]|0)+(138212+(q<<2))>>0]|0;a[ta>>0]=a[(b[X>>1]|0)+(138212+(q<<2))>>0]|0;Wc[c[xa>>2]&127](p,K,r,h,Na)}o=s+Ga|0;h=s+Ha|0;if(o>>>0<68|h>>>0<68)break;x=d[137900+h>>0]|0;w=d[138056+o>>0]|0;a[Na>>0]=a[(b[Ja>>1]|0)+(138212+(o<<2))>>0]|0;a[ra>>0]=a[(b[V>>1]|0)+(138212+(o<<2))>>0]|0;a[sa>>0]=a[(b[W>>1]|0)+(138212+(o<<2))>>0]|0;a[ta>>0]=a[(b[X>>1]|0)+(138212+(o<<2))>>0]|0;Wc[c[xa>>2]&127](l+t|0,K,w,x,Na);break}else{if(!o){a[Na>>0]=(d[(b[Ja>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(b[V>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(b[W>>1]|0)+(138212+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(b[X>>1]|0)+(138212+(q<<2))>>0]|0)+1;Wc[c[ya>>2]&127](p,K,r,h,Na)}o=s+Ga|0;h=s+Ha|0;if(o>>>0<68|h>>>0<68)break;x=d[137900+h>>0]|0;w=d[138056+o>>0]|0;a[Na>>0]=(d[(b[Ja>>1]|0)+(138212+(o<<2))>>0]|0)+1;a[ra>>0]=(d[(b[V>>1]|0)+(138212+(o<<2))>>0]|0)+1;a[sa>>0]=(d[(b[W>>1]|0)+(138212+(o<<2))>>0]|0)+1;a[ta>>0]=(d[(b[X>>1]|0)+(138212+(o<<2))>>0]|0)+1;Wc[c[ya>>2]&127](l+t|0,K,w,x,Na);break}}while(0);u=(c[Ka>>2]|0)+u|0;v=v+1|0}}q=h|Ca;d:do if(!(q&7)){if(!((p|0)==0|r)?((h^Ca)&128|0)!=0:0){q=Ja;c[q>>2]=65537;c[q+4>>2]=65537;q=0}else if((y|0)==0|(h&o|0)==0)q=1;else{q=(mj(g,12,i?4:11,Da)|0)&65535;b[Y>>1]=q;b[Z>>1]=q;b[_>>1]=q;b[Ja>>1]=q;q=0}r=i?8:1;p=0;while(1){if((p|0)==4)break;h=(D?p<<3:p)+12|0;o=h-r|0;if(!((a[g+27824+o>>0]|a[g+27824+h>>0])<<24>>24)){if(q){h=(mj(g,h,o,Da)|0)&65535;Oa=166}}else{h=2;Oa=166}if((Oa|0)==166){Oa=0;b[Ja+(p<<1)>>1]=h}p=p+1|0}x=b[Ja>>1]|0;h=b[_>>1]|0;o=b[Z>>1]|0;p=b[Y>>1]|0}else{x=Ja;c[x>>2]=196611;c[x+4>>2]=196611;do if(q&128|0)if(!p)if(D&(c[z>>2]|0)!=3)break;else{x=3;h=3;o=3;p=3;break d}else if(D)break;else{x=3;h=3;o=3;p=3;break d}while(0);x=Ja;c[x>>2]=262148;c[x+4>>2]=262148;x=4;h=4;o=4;p=4}while(0);w=x<<16>>16;v=h<<16>>16;u=o<<16>>16;t=p<<16>>16;do if((v+u+w|0)!=(0-t|0)){q=c[na>>2]|0;s=a[q+s>>0]|0;q=(a[q+Aa>>0]|0)+1+s>>1;h=c[L>>2]|0;r=(c[pa>>2]|0)+1+(d[h+548+s>>0]|0)>>1;s=(c[qa>>2]|0)+1+(d[h+636+s>>0]|0)>>1;h=q+Ga|0;o=d[138056+h>>0]|0;q=q+Ha|0;p=d[137900+q>>0]|0;q=h>>>0<68|q>>>0<68;if(D){do if(!q)if(x<<16>>16>3){Vc[c[$>>2]&255](j,m,o,p);break}else{a[Na>>0]=a[138212+(h<<2)+w>>0]|0;a[ra>>0]=a[138212+(h<<2)+v>>0]|0;a[sa>>0]=a[138212+(h<<2)+u>>0]|0;a[ta>>0]=a[138212+(h<<2)+t>>0]|0;Wc[c[ua>>2]&127](j,m,o,p,Na);break}while(0);if(!Fa)break;p=r+Ga|0;q=d[138056+p>>0]|0;o=r+Ha|0;h=d[137900+o>>0]|0;o=p>>>0<68|o>>>0<68;if(B){do if(!o)if(x<<16>>16>3){Vc[c[$>>2]&255](k,n,q,h);break}else{a[Na>>0]=a[138212+(p<<2)+w>>0]|0;a[ra>>0]=a[138212+(p<<2)+v>>0]|0;a[sa>>0]=a[138212+(p<<2)+u>>0]|0;a[ta>>0]=a[138212+(p<<2)+t>>0]|0;Wc[c[ua>>2]&127](k,n,q,h,Na);break}while(0);o=s+Ga|0;p=d[138056+o>>0]|0;s=s+Ha|0;h=d[137900+s>>0]|0;if(o>>>0<68|s>>>0<68)break;if(x<<16>>16>3){Vc[c[$>>2]&255](l,n,p,h);break}else{a[Na>>0]=a[138212+(o<<2)+w>>0]|0;a[ra>>0]=a[138212+(o<<2)+v>>0]|0;a[sa>>0]=a[138212+(o<<2)+u>>0]|0;a[ta>>0]=a[138212+(o<<2)+t>>0]|0;Wc[c[ua>>2]&127](l,n,p,h,Na);break}}else{do if(!o)if(x<<16>>16>3){Vc[c[aa>>2]&255](k,n,q,h);break}else{a[Na>>0]=(d[138212+(p<<2)+w>>0]|0)+1;a[ra>>0]=(d[138212+(p<<2)+v>>0]|0)+1;a[sa>>0]=(d[138212+(p<<2)+u>>0]|0)+1;a[ta>>0]=(d[138212+(p<<2)+t>>0]|0)+1;Wc[c[va>>2]&127](k,n,q,h,Na);break}while(0);o=s+Ga|0;p=d[138056+o>>0]|0;s=s+Ha|0;h=d[137900+s>>0]|0;if(o>>>0<68|s>>>0<68)break;if(x<<16>>16>3){Vc[c[aa>>2]&255](l,n,p,h);break}else{a[Na>>0]=(d[138212+(o<<2)+w>>0]|0)+1;a[ra>>0]=(d[138212+(o<<2)+v>>0]|0)+1;a[sa>>0]=(d[138212+(o<<2)+u>>0]|0)+1;a[ta>>0]=(d[138212+(o<<2)+t>>0]|0)+1;Wc[c[va>>2]&127](l,n,p,h,Na);break}}}else{do if(!q)if(x<<16>>16>3){Vc[c[ba>>2]&255](j,m,o,p);break}else{a[Na>>0]=a[138212+(h<<2)+w>>0]|0;a[ra>>0]=a[138212+(h<<2)+v>>0]|0;a[sa>>0]=a[138212+(h<<2)+u>>0]|0;a[ta>>0]=a[138212+(h<<2)+t>>0]|0;Wc[c[xa>>2]&127](j,m,o,p,Na);break}while(0);if(!Fa)break;p=r+Ga|0;q=d[138056+p>>0]|0;o=r+Ha|0;h=d[137900+o>>0]|0;o=p>>>0<68|o>>>0<68;if(B){do if(!o)if(x<<16>>16>3){Vc[c[ba>>2]&255](k,n,q,h);break}else{a[Na>>0]=a[138212+(p<<2)+w>>0]|0;a[ra>>0]=a[138212+(p<<2)+v>>0]|0;a[sa>>0]=a[138212+(p<<2)+u>>0]|0;a[ta>>0]=a[138212+(p<<2)+t>>0]|0;Wc[c[xa>>2]&127](k,n,q,h,Na);break}while(0);o=s+Ga|0;p=d[138056+o>>0]|0;s=s+Ha|0;h=d[137900+s>>0]|0;if(o>>>0<68|s>>>0<68)break;if(x<<16>>16>3){Vc[c[ba>>2]&255](l,n,p,h);break}else{a[Na>>0]=a[138212+(o<<2)+w>>0]|0;a[ra>>0]=a[138212+(o<<2)+v>>0]|0;a[sa>>0]=a[138212+(o<<2)+u>>0]|0;a[ta>>0]=a[138212+(o<<2)+t>>0]|0;Wc[c[xa>>2]&127](l,n,p,h,Na);break}}else{do if(!o)if(x<<16>>16>3){Vc[c[ca>>2]&255](k,n,q,h);break}else{a[Na>>0]=(d[138212+(p<<2)+w>>0]|0)+1;a[ra>>0]=(d[138212+(p<<2)+v>>0]|0)+1;a[sa>>0]=(d[138212+(p<<2)+u>>0]|0)+1;a[ta>>0]=(d[138212+(p<<2)+t>>0]|0)+1;Wc[c[ya>>2]&127](k,n,q,h,Na);break}while(0);o=s+Ga|0;p=d[138056+o>>0]|0;s=s+Ha|0;h=d[137900+s>>0]|0;if(o>>>0<68|s>>>0<68)break;if(x<<16>>16>3){Vc[c[ca>>2]&255](l,n,p,h);break}else{a[Na>>0]=(d[138212+(o<<2)+w>>0]|0)+1;a[ra>>0]=(d[138212+(o<<2)+v>>0]|0)+1;a[sa>>0]=(d[138212+(o<<2)+u>>0]|0)+1;a[ta>>0]=(d[138212+(o<<2)+t>>0]|0)+1;Wc[c[ya>>2]&127](l,n,p,h,Na);break}}}}while(0)}while(0);x=D|C^1;w=(y|0)==0;v=i?8:1;u=1;while(1){if((u|0)>=(F|0))break;r=(ia&u<<24|0)==0;do if(!(x&(r^1))){if(ja){if(!(u&E))if(w)p=1;else{p=(H(u,v)|0)+12|0;p=(mj(g,p,p-v|0,Da)|0)&65535;b[ka>>1]=p;b[la>>1]=p;b[ma>>1]=p;b[Ja>>1]=p;p=0}else{p=Ja;c[p>>2]=0;c[p+4>>2]=0;p=0}q=0;while(1){if((q|0)==4)break;h=(D?u:q)+12+((D?q:u)<<3)|0;o=h-v|0;if(!((a[g+27824+o>>0]|a[g+27824+h>>0])<<24>>24)){if(p){h=(mj(g,h,o,Da)|0)&65535;Oa=230}}else{h=2;Oa=230}if((Oa|0)==230){Oa=0;b[Ja+(q<<1)>>1]=h}q=q+1|0}h=b[Ja>>1]|0;o=b[ma>>1]|0;p=b[la>>1]|0;q=b[ka>>1]|0;if(((o<<16>>16)+(h<<16>>16)+(p<<16>>16)|0)==(0-(q<<16>>16)|0))break;else t=q}else{h=Ja;c[h>>2]=196611;c[h+4>>2]=196611;h=3;o=3;p=3;t=3}q=a[(c[na>>2]|0)+Aa>>0]|0;if(D){s=u<<2;r=Ga+q|0;q=Ha+q|0;if(!(r>>>0<68|q>>>0<68)){i=d[137900+q>>0]|0;y=d[138056+r>>0]|0;q=j+(s<<c[oa>>2])|0;a[Na>>0]=a[(h<<16>>16)+(138212+(r<<2))>>0]|0;a[ra>>0]=a[(o<<16>>16)+(138212+(r<<2))>>0]|0;a[sa>>0]=a[(p<<16>>16)+(138212+(r<<2))>>0]|0;a[ta>>0]=a[(t<<16>>16)+(138212+(r<<2))>>0]|0;Wc[c[ua>>2]&127](q,m,y,i,Na)}if(!Fa)break;if(B){r=c[pa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(!(q>>>0<68|r>>>0<68)){i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;r=k+(s<<c[oa>>2])|0;a[Na>>0]=a[(h<<16>>16)+(138212+(q<<2))>>0]|0;a[ra>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[sa>>0]=a[(p<<16>>16)+(138212+(q<<2))>>0]|0;a[ta>>0]=a[(t<<16>>16)+(138212+(q<<2))>>0]|0;Wc[c[ua>>2]&127](r,n,y,i,Na)}r=c[qa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(q>>>0<68|r>>>0<68)break;i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;s=l+(s<<c[oa>>2])|0;a[Na>>0]=a[(h<<16>>16)+(138212+(q<<2))>>0]|0;a[ra>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[sa>>0]=a[(p<<16>>16)+(138212+(q<<2))>>0]|0;a[ta>>0]=a[(t<<16>>16)+(138212+(q<<2))>>0]|0;Wc[c[ua>>2]&127](s,n,y,i,Na);break}if(u&1|0)break;s=u<<1;r=c[pa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(!(q>>>0<68|r>>>0<68)){i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;r=k+(s<<c[oa>>2])|0;a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(p<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(t<<16>>16)+(138212+(q<<2))>>0]|0)+1;Wc[c[va>>2]&127](r,n,y,i,Na)}r=c[qa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(q>>>0<68|r>>>0<68)break;i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;s=l+(s<<c[oa>>2])|0;a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(p<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(t<<16>>16)+(138212+(q<<2))>>0]|0)+1;Wc[c[va>>2]&127](s,n,y,i,Na);break}if(C){if(r?(La=Ga+q|0,Ma=Ha+q|0,!(La>>>0<68|Ma>>>0<68)):0){i=d[137900+Ma>>0]|0;y=d[138056+La>>0]|0;s=j+(H(wa,u)|0)|0;a[Na>>0]=a[(h<<16>>16)+(138212+(La<<2))>>0]|0;a[ra>>0]=a[(o<<16>>16)+(138212+(La<<2))>>0]|0;a[sa>>0]=a[(p<<16>>16)+(138212+(La<<2))>>0]|0;a[ta>>0]=a[(t<<16>>16)+(138212+(La<<2))>>0]|0;Wc[c[xa>>2]&127](s,m,y,i,Na)}if(!Fa)break;s=H(u<<2,n)|0;r=c[pa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(!(q>>>0<68|r>>>0<68)){i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(p<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(t<<16>>16)+(138212+(q<<2))>>0]|0)+1;Wc[c[ya>>2]&127](k+s|0,n,y,i,Na)}r=c[qa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(q>>>0<68|r>>>0<68)break;i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(p<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(t<<16>>16)+(138212+(q<<2))>>0]|0)+1;Wc[c[ya>>2]&127](l+s|0,n,y,i,Na);break}r=u<<2;s=Ga+q|0;q=Ha+q|0;if(!(s>>>0<68|q>>>0<68)){i=d[137900+q>>0]|0;y=d[138056+s>>0]|0;q=j+(H(r,m)|0)|0;a[Na>>0]=a[(h<<16>>16)+(138212+(s<<2))>>0]|0;a[ra>>0]=a[(o<<16>>16)+(138212+(s<<2))>>0]|0;a[sa>>0]=a[(p<<16>>16)+(138212+(s<<2))>>0]|0;a[ta>>0]=a[(t<<16>>16)+(138212+(s<<2))>>0]|0;Wc[c[xa>>2]&127](q,m,y,i,Na)}if(Fa){if(B){s=H(r,n)|0;r=c[pa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(!(q>>>0<68|r>>>0<68)){i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;a[Na>>0]=a[(h<<16>>16)+(138212+(q<<2))>>0]|0;a[ra>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[sa>>0]=a[(p<<16>>16)+(138212+(q<<2))>>0]|0;a[ta>>0]=a[(t<<16>>16)+(138212+(q<<2))>>0]|0;Wc[c[xa>>2]&127](k+s|0,n,y,i,Na)}r=c[qa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(q>>>0<68|r>>>0<68)break;i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;a[Na>>0]=a[(h<<16>>16)+(138212+(q<<2))>>0]|0;a[ra>>0]=a[(o<<16>>16)+(138212+(q<<2))>>0]|0;a[sa>>0]=a[(p<<16>>16)+(138212+(q<<2))>>0]|0;a[ta>>0]=a[(t<<16>>16)+(138212+(q<<2))>>0]|0;Wc[c[xa>>2]&127](l+s|0,n,y,i,Na);break}if(!(u&1)){s=H(u<<1,n)|0;r=c[pa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(!(q>>>0<68|r>>>0<68)){i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(p<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(t<<16>>16)+(138212+(q<<2))>>0]|0)+1;Wc[c[ya>>2]&127](k+s|0,n,y,i,Na)}r=c[qa>>2]|0;q=r+Ga|0;r=r+Ha|0;if(!(q>>>0<68|r>>>0<68)){i=d[137900+r>>0]|0;y=d[138056+q>>0]|0;a[Na>>0]=(d[(h<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(o<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(p<<16>>16)+(138212+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(t<<16>>16)+(138212+(q<<2))>>0]|0)+1;Wc[c[ya>>2]&127](l+s|0,n,y,i,Na)}}}}while(0);u=u+1|0}f=f+1|0}Ec=Pa;return}
function WR(a){a=a|0;var b=0,d=0;a:do switch(c[a+8>>2]|0){case 4:case 3:case 2:case 0:{b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break}case 1:{b=XR(c[a+16>>2]|0)|0;if(!b){b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break a}else{d=c[a+344>>2]|0;a=c[a+348>>2]|0;b=nW(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;b=nW(b|0,M()|0,a|0,((a|0)<0)<<31>>31|0)|0;a=M()|0;break a}}default:{a=0;b=0}}while(0);L(a|0);return b|0}function XR(a){a=a|0;switch(a|0){case 69649:{a=2;break}case 69648:{a=3;break}case 69638:case 69645:case 69632:case 69633:case 69647:{a=4;break}default:a=YR(a)|0}return a|0}function YR(a){a=a|0;var b=0;a:do if((a|0)>=65563){if((a|0)<69655)switch(a|0){case 69646:case 69636:case 69644:{a=4;break a}case 65563:{b=2;break a}case 65566:{b=3;break a}case 65564:{b=4;break a}case 67586:case 67587:case 65565:{b=5;break a}case 67584:case 67585:{b=6;break a}default:{b=7;break a}}if((a|0)>=86070)switch(a|0){case 86071:case 86070:{a=4;break a}case 88072:case 88071:case 88070:case 88069:{b=2;break a}default:{b=7;break a}}if((a|0)<71681)switch(a|0){case 69660:case 69655:case 69661:{a=4;break a}default:{b=7;break a}}if((a|0)<71687)switch(a|0){case 71681:{a=4;break a}default:{b=7;break a}}if((a|0)<83968)switch(a|0){case 71687:{a=4;break a}default:{b=7;break a}}else switch(a|0){case 83968:{b=2;break a}default:{b=7;break a}}}else switch(a|0){case 65553:case 65541:case 65540:case 65542:case 65543:{b=2;break}case 65538:case 65539:case 65554:case 65536:case 65537:{b=3;break}case 65550:case 65551:case 65548:case 65549:case 65552:{b=4;break}case 65557:case 65556:case 65546:case 65547:case 65544:case 65545:{b=5;break}case 65559:case 65558:{b=6;break}default:b=7}while(0);if((b|0)==2)a=8;else if((b|0)==3)a=16;else if((b|0)==4)a=24;else if((b|0)==5)a=32;else if((b|0)==6)a=64;else if((b|0)==7)a=0;return a|0}function ZR(a,d){a=a|0;d=d|0;c[a>>2]=d;b[a+4>>1]=0;b[a+6>>1]=8;return}function _R(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 $R(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 aS(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 bS(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 cS(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[118922+((i>>>24^h>>>8&255)<<1)>>1]|0);s=s<<8^(e[118922+(((s>>>8^i>>>16)&255)<<1)>>1]|0);s=s<<8^(e[118922+(((s^i)>>>8&255)<<1)>>1]|0);h=s<<8^(e[118922+(((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[118922+(((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[118922+(((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[118922+(((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 dS(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;ZR(a+28|0,0);ZR(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 eS(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=184020;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;wS(a);return}function fS(a){a=a|0;vS(a);a=a+4096|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function gS(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=135;else{c[h>>2]=f>>>1;b[g>>1]=e<<4&32752;f=136}Vc[f&255](a,d,i,e);a=a+4096|0;c[a>>2]=(c[a>>2]|0)+e&15;return}function hS(a){a=a|0;var b=0;b=a+9264|0;a=c[b>>2]|0;if(!a)return;AU(a);c[b>>2]=0;return}function iS(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,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;w=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;v=c[w>>2]|0;x=0;while(1){z=v&1;o=a+(m<<11)+(z<<9)|0;kS(b+48+(m*4608|0)+(x<<7)|0,v>>>1,o,a+(m<<11)+1024+(z<<9)|0);k=v&-2;u=v+15&14|1;l=z^1;q=78156+(u<<2)|0;A=78156+(k<<2)|0;G=H(c[A>>2]|0,c[o>>2]|0)|0;g=H(c[q>>2]|0,c[a+(m<<11)+(l<<9)>>2]|0)|0;i=H(c[q+56>>2]|0,c[a+(m<<11)+(l<<9)+4>>2]|0)|0;h=H(c[q+48>>2]|0,c[a+(m<<11)+(l<<9)+8>>2]|0)|0;p=H(c[q+40>>2]|0,c[a+(m<<11)+(l<<9)+12>>2]|0)|0;j=H(c[q+32>>2]|0,c[a+(m<<11)+(l<<9)+16>>2]|0)|0;y=H(c[q+24>>2]|0,c[a+(m<<11)+(l<<9)+20>>2]|0)|0;r=H(c[q+16>>2]|0,c[a+(m<<11)+(l<<9)+24>>2]|0)|0;q=H(c[q+8>>2]|0,c[a+(m<<11)+(l<<9)+28>>2]|0)|0;I=H(c[A+56>>2]|0,c[a+(m<<11)+(z<<9)+4>>2]|0)|0;F=H(c[A+48>>2]|0,c[a+(m<<11)+(z<<9)+8>>2]|0)|0;E=H(c[A+40>>2]|0,c[a+(m<<11)+(z<<9)+12>>2]|0)|0;D=H(c[A+32>>2]|0,c[a+(m<<11)+(z<<9)+16>>2]|0)|0;C=H(c[A+24>>2]|0,c[a+(m<<11)+(z<<9)+20>>2]|0)|0;B=H(c[A+16>>2]|0,c[a+(m<<11)+(z<<9)+24>>2]|0)|0;c[f>>2]=I+G+F+E+D+C+B+(H(c[A+8>>2]|0,c[a+(m<<11)+(z<<9)+28>>2]|0)|0)-(i+g+h+p+j+y+r+q)>>2;q=0-u|0;r=0-k|0;y=s+(l<<9)|0;j=78156;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)){A=j+128+(u<<2)|0;z=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;$=H(c[W+8>>2]|0,c[I>>2]|0)|0;U=H(c[A>>2]|0,c[p>>2]|0)|0;V=H(c[A+56>>2]|0,c[z>>2]|0)|0;T=H(c[A+48>>2]|0,c[J>>2]|0)|0;S=H(c[A+40>>2]|0,c[K>>2]|0)|0;R=H(c[A+32>>2]|0,c[L>>2]|0)|0;Q=H(c[A+24>>2]|0,c[M>>2]|0)|0;P=H(c[A+16>>2]|0,c[N>>2]|0)|0;A=H(c[A+8>>2]|0,c[O>>2]|0)|0;G=f+56|0;aa=H(c[W+16>>2]|0,c[G>>2]|0)|0;F=f+52|0;_=H(c[W+24>>2]|0,c[F>>2]|0)|0;E=f+48|0;Z=H(c[W+32>>2]|0,c[E>>2]|0)|0;D=f+44|0;Y=H(c[W+40>>2]|0,c[D>>2]|0)|0;C=f+40|0;X=H(c[W+48>>2]|0,c[C>>2]|0)|0;B=f+36|0;f=H(c[W+56>>2]|0,c[B>>2]|0)|0;c[h>>2]=aa+$+_+Z+Y+X+f+(H(c[W>>2]|0,c[o>>2]|0)|0)-(V+U+T+S+R+Q+P+A)>>2;A=j+128+(q<<2)|0;f=H(c[A+116>>2]|0,c[O>>2]|0)|0;f=(H(c[A+108>>2]|0,c[N>>2]|0)|0)+f|0;f=f+(H(c[A+100>>2]|0,c[M>>2]|0)|0)|0;f=f+(H(c[A+92>>2]|0,c[L>>2]|0)|0)|0;f=f+(H(c[A+84>>2]|0,c[K>>2]|0)|0)|0;f=f+(H(c[A+76>>2]|0,c[J>>2]|0)|0)|0;f=f+(H(c[A+68>>2]|0,c[z>>2]|0)|0)|0;A=f+(H(c[A+60>>2]|0,c[p>>2]|0)|0)|0;f=j+128+(r<<2)|0;A=A+(H(c[f+60>>2]|0,c[o>>2]|0)|0)|0;B=A+(H(c[f+68>>2]|0,c[B>>2]|0)|0)|0;C=B+(H(c[f+76>>2]|0,c[C>>2]|0)|0)|0;D=C+(H(c[f+84>>2]|0,c[D>>2]|0)|0)|0;E=D+(H(c[f+92>>2]|0,c[E>>2]|0)|0)|0;F=E+(H(c[f+100>>2]|0,c[F>>2]|0)|0)|0;G=F+(H(c[f+108>>2]|0,c[G>>2]|0)|0)|0;c[g>>2]=G+(H(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=80204+(u<<2)|0;$=H(c[aa>>2]|0,c[y>>2]|0)|0;$=$+(H(c[aa+56>>2]|0,c[t+(l<<9)+36>>2]|0)|0)|0;$=$+(H(c[aa+48>>2]|0,c[t+(l<<9)+40>>2]|0)|0)|0;$=$+(H(c[aa+40>>2]|0,c[t+(l<<9)+44>>2]|0)|0)|0;$=$+(H(c[aa+32>>2]|0,c[t+(l<<9)+48>>2]|0)|0)|0;$=$+(H(c[aa+24>>2]|0,c[t+(l<<9)+52>>2]|0)|0)|0;$=$+(H(c[aa+16>>2]|0,c[t+(l<<9)+56>>2]|0)|0)|0;c[f>>2]=0-($+(H(c[aa+8>>2]|0,c[t+(l<<9)+60>>2]|0)|0))>>2;x=x+1|0;if((x|0)==(e|0))break;else{f=f+32|0;v=v+1&15}}}m=m+1|0;if((m|0)==(d|0))break;else{s=s+2048|0;t=t+2048|0}}return}function jS(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,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;v=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;u=c[v>>2]|0;w=0;while(1){z=u&1;k=a+(i<<11)+(z<<9)|0;kS(b+48+(i*4608|0)+(w<<7)|0,u>>>1,k,a+(i<<11)+1024+(z<<9)|0);g=u&-2;q=u+15&14|1;h=z^1;m=78156+(q<<2)|0;A=78156+(g<<2)|0;G=H(c[A>>2]|0,c[k>>2]|0)|0;t=H(c[m>>2]|0,c[a+(i<<11)+(h<<9)>>2]|0)|0;x=H(c[m+56>>2]|0,c[a+(i<<11)+(h<<9)+4>>2]|0)|0;s=H(c[m+48>>2]|0,c[a+(i<<11)+(h<<9)+8>>2]|0)|0;l=H(c[m+40>>2]|0,c[a+(i<<11)+(h<<9)+12>>2]|0)|0;f=H(c[m+32>>2]|0,c[a+(i<<11)+(h<<9)+16>>2]|0)|0;y=H(c[m+24>>2]|0,c[a+(i<<11)+(h<<9)+20>>2]|0)|0;n=H(c[m+16>>2]|0,c[a+(i<<11)+(h<<9)+24>>2]|0)|0;m=H(c[m+8>>2]|0,c[a+(i<<11)+(h<<9)+28>>2]|0)|0;I=H(c[A+56>>2]|0,c[a+(i<<11)+(z<<9)+4>>2]|0)|0;F=H(c[A+48>>2]|0,c[a+(i<<11)+(z<<9)+8>>2]|0)|0;E=H(c[A+40>>2]|0,c[a+(i<<11)+(z<<9)+12>>2]|0)|0;D=H(c[A+32>>2]|0,c[a+(i<<11)+(z<<9)+16>>2]|0)|0;C=H(c[A+24>>2]|0,c[a+(i<<11)+(z<<9)+20>>2]|0)|0;B=H(c[A+16>>2]|0,c[a+(i<<11)+(z<<9)+24>>2]|0)|0;c[r>>2]=I+G+F+E+D+C+B+(H(c[A+8>>2]|0,c[a+(i<<11)+(z<<9)+28>>2]|0)|0)-(x+t+s+l+f+y+n+m)>>2;m=0-g|0;n=0-q|0;y=p+(h<<9)|0;f=78156;l=a+(i<<11)+1024+(h<<9)|0;s=r;t=r+124|0;x=1;while(1){s=s+4|0;I=f+128+(q<<2)|0;G=l+4|0;F=l+8|0;E=l+12|0;D=l+16|0;C=l+20|0;B=l+24|0;A=l+28|0;W=f+128+(g<<2)|0;z=k+60|0;aa=H(c[W+8>>2]|0,c[z>>2]|0)|0;U=H(c[I>>2]|0,c[l>>2]|0)|0;V=H(c[I+56>>2]|0,c[G>>2]|0)|0;T=H(c[I+48>>2]|0,c[F>>2]|0)|0;S=H(c[I+40>>2]|0,c[E>>2]|0)|0;R=H(c[I+32>>2]|0,c[D>>2]|0)|0;Q=H(c[I+24>>2]|0,c[C>>2]|0)|0;O=H(c[I+16>>2]|0,c[B>>2]|0)|0;I=H(c[I+8>>2]|0,c[A>>2]|0)|0;J=k+56|0;ba=H(c[W+16>>2]|0,c[J>>2]|0)|0;K=k+52|0;$=H(c[W+24>>2]|0,c[K>>2]|0)|0;L=k+48|0;_=H(c[W+32>>2]|0,c[L>>2]|0)|0;M=k+44|0;Z=H(c[W+40>>2]|0,c[M>>2]|0)|0;N=k+40|0;Y=H(c[W+48>>2]|0,c[N>>2]|0)|0;P=k+36|0;k=k+32|0;X=H(c[W+56>>2]|0,c[P>>2]|0)|0;c[s>>2]=ba+aa+$+_+Z+Y+X+(H(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=H(c[I+60>>2]|0,c[k>>2]|0)|0;O=(H(c[I+68>>2]|0,c[P>>2]|0)|0)+O|0;N=O+(H(c[I+76>>2]|0,c[N>>2]|0)|0)|0;M=N+(H(c[I+84>>2]|0,c[M>>2]|0)|0)|0;L=M+(H(c[I+92>>2]|0,c[L>>2]|0)|0)|0;K=L+(H(c[I+100>>2]|0,c[K>>2]|0)|0)|0;J=K+(H(c[I+108>>2]|0,c[J>>2]|0)|0)|0;z=J+(H(c[I+116>>2]|0,c[z>>2]|0)|0)|0;I=f+128+(n<<2)|0;A=z+(H(c[I+116>>2]|0,c[A>>2]|0)|0)|0;B=A+(H(c[I+108>>2]|0,c[B>>2]|0)|0)|0;C=B+(H(c[I+100>>2]|0,c[C>>2]|0)|0)|0;D=C+(H(c[I+92>>2]|0,c[D>>2]|0)|0)|0;E=D+(H(c[I+84>>2]|0,c[E>>2]|0)|0)|0;F=E+(H(c[I+76>>2]|0,c[F>>2]|0)|0)|0;G=F+(H(c[I+68>>2]|0,c[G>>2]|0)|0)|0;c[t>>2]=G+(H(c[I+60>>2]|0,c[l>>2]|0)|0)>>2;x=x+1|0;if((x|0)==16)break;else{f=f+128|0;l=l+32|0;t=t+-4|0}}ba=80204+(q<<2)|0;aa=H(c[ba>>2]|0,c[y>>2]|0)|0;aa=aa+(H(c[ba+56>>2]|0,c[o+(h<<9)+36>>2]|0)|0)|0;aa=aa+(H(c[ba+48>>2]|0,c[o+(h<<9)+40>>2]|0)|0)|0;aa=aa+(H(c[ba+40>>2]|0,c[o+(h<<9)+44>>2]|0)|0)|0;aa=aa+(H(c[ba+32>>2]|0,c[o+(h<<9)+48>>2]|0)|0)|0;aa=aa+(H(c[ba+24>>2]|0,c[o+(h<<9)+52>>2]|0)|0)|0;aa=aa+(H(c[ba+16>>2]|0,c[o+(h<<9)+56>>2]|0)|0)|0;c[r+64>>2]=0-(aa+(H(c[ba+8>>2]|0,c[o+(h<<9)+60>>2]|0)|0))>>2;w=w+1|0;if((w|0)==(e|0))break;else{r=r+128|0;u=u+1&15}}}i=i+1|0;if((i|0)==(d|0))break;else{o=o+2048|0;p=p+2048|0}}return}function kS(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 lS(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]=bS(f,l?8:9)|0;c[i+4>>2]=bS(f,c[k>>2]|0)|0;if(!l)if(!g)t=2;else{h=0;do{a[i+8+h>>0]=bS(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]=bS(f,12)|0;m=i+10+(o*116|0)+(n*58|0)+2|0;b[m>>1]=bS(f,9)|0;b[i+10+(o*116|0)+(n*58|0)+4>>1]=bS(f,8)|0;b[i+10+(o*116|0)+(n*58|0)+6>>1]=bS(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(!(bS(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]=bS(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=bS(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=bS(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+16>>0]=bS(f,4)|0;a[i+10+(o*116|0)+(n*58|0)+17>>0]=bS(f,3)|0}else{u=bS(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(!(bS(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]=bS(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=bS(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]=bS(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+14>>0]=bS(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+15>>0]=bS(f,3)|0}u=bS(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 mS(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,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,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,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=Ec;Ec=Ec+7296|0;xb=Ab+2448|0;wb=Ab+2432|0;vb=Ab+2416|0;tb=Ab+2400|0;sb=Ab+2384|0;rb=Ab+2368|0;yb=Ab+2352|0;ub=Ab+2336|0;qb=Ab+2320|0;pb=Ab+16|0;ob=Ab;hb=Ab+7224|0;nb=Ab+7216|0;zb=Ab+2608|0;lb=Ab+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;Ec=Ab;return zb|0}ib=(j|0)==0;gb=80332+(k*12|0)|0;kb=80332+(k*12|0)+8|0;db=80332+(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;Q=c[28439]|0;ab=h+4|0;S=hb+4|0;T=hb+8|0;cb=h+9264|0;U=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;V=pb+20|0;W=pb+22|0;X=pb+24|0;Y=pb+26|0;Z=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;R=zb+2304|0;$a=0;a:while(1){O=i+10+($a*116|0)|0;if(!ib){K=c[gb>>2]|0;N=($a|0)==0;L=0;do{w=i+10+($a*116|0)+(L*58|0)|0;k=nb+(L<<2)|0;c[k>>2]=K;x=i+10+($a*116|0)+(L*58|0)+9|0;n=(a[x>>0]|0)==2;if(n){J=c[((a[i+10+($a*116|0)+(L*58|0)+8>>0]&8)==0?db:kb)>>2]|0;c[k>>2]=J;k=J}else k=K;if(!(c[jb>>2]&4096)){if(N)m=0;else m=d[i+8+L>>0]|0;J=f;o=c[J+4>>2]|0;p=pb;c[p>>2]=c[J>>2];c[p+4>>2]=o;p=e[i+10+($a*116|0)+(L*58|0)+6>>1]|0;o=d[178189+(p<<1)>>0]|0;p=d[178189+(p<<1)+1>>0]|0;if(n){l=18-((d[i+10+($a*116|0)+(L*58|0)+8>>0]|0)>>>3&1)|0;m=l;n=0;while(1){m=m+-1|0;a[i+10+($a*116|0)+(L*58|0)+18+n>>0]=bS(f,o)|0;if(!m)break;else n=n+1|0}a[i+10+($a*116|0)+(L*58|0)+18+l>>0]=bS(f,p)|0;a[l+1+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[l+2+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;I=l|4;a[l+3+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+18+I>>0]=bS(f,p)|0;a[I+1+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[I+2+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[I+3+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[I+4+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[I+5+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[I+6+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;J=l|12;a[I+7+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+18+J>>0]=bS(f,p)|0;a[J+1+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[J+2+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[J+3+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[J+4+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;a[J+5+(i+10+($a*116|0)+(L*58|0)+18)>>0]=bS(f,p)|0;J=w+(l|36)|0;a[J>>0]=0;a[J+1>>0]=0;a[J+2>>0]=0}else{if(!(m&8)){a[i+10+($a*116|0)+(L*58|0)+18>>0]=bS(f,o)|0;a[i+10+($a*116|0)+(L*58|0)+19>>0]=bS(f,o)|0;a[i+10+($a*116|0)+(L*58|0)+20>>0]=bS(f,o)|0;a[i+10+($a*116|0)+(L*58|0)+21>>0]=bS(f,o)|0;a[i+10+($a*116|0)+(L*58|0)+22>>0]=bS(f,o)|0;l=(bS(f,o)|0)&255}else{a[i+10+($a*116|0)+(L*58|0)+18>>0]=a[i+10+(L*58|0)+18>>0]|0;a[i+10+($a*116|0)+(L*58|0)+19>>0]=a[i+10+(L*58|0)+19>>0]|0;a[i+10+($a*116|0)+(L*58|0)+20>>0]=a[i+10+(L*58|0)+20>>0]|0;a[i+10+($a*116|0)+(L*58|0)+21>>0]=a[i+10+(L*58|0)+21>>0]|0;a[i+10+($a*116|0)+(L*58|0)+22>>0]=a[i+10+(L*58|0)+22>>0]|0;l=a[i+10+(L*58|0)+23>>0]|0}a[i+10+($a*116|0)+(L*58|0)+23>>0]=l;if(!(m&4)){a[i+10+($a*116|0)+(L*58|0)+24>>0]=bS(f,o)|0;a[i+10+($a*116|0)+(L*58|0)+25>>0]=bS(f,o)|0;a[i+10+($a*116|0)+(L*58|0)+26>>0]=bS(f,o)|0;a[i+10+($a*116|0)+(L*58|0)+27>>0]=bS(f,o)|0;l=(bS(f,o)|0)&255}else{a[i+10+($a*116|0)+(L*58|0)+24>>0]=a[i+10+(L*58|0)+24>>0]|0;a[i+10+($a*116|0)+(L*58|0)+25>>0]=a[i+10+(L*58|0)+25>>0]|0;a[i+10+($a*116|0)+(L*58|0)+26>>0]=a[i+10+(L*58|0)+26>>0]|0;a[i+10+($a*116|0)+(L*58|0)+27>>0]=a[i+10+(L*58|0)+27>>0]|0;l=a[i+10+(L*58|0)+28>>0]|0}a[i+10+($a*116|0)+(L*58|0)+28>>0]=l;if(!(m&2)){a[i+10+($a*116|0)+(L*58|0)+29>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+30>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+31>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+32>>0]=bS(f,p)|0;l=(bS(f,p)|0)&255}else{a[i+10+($a*116|0)+(L*58|0)+29>>0]=a[i+10+(L*58|0)+29>>0]|0;a[i+10+($a*116|0)+(L*58|0)+30>>0]=a[i+10+(L*58|0)+30>>0]|0;a[i+10+($a*116|0)+(L*58|0)+31>>0]=a[i+10+(L*58|0)+31>>0]|0;a[i+10+($a*116|0)+(L*58|0)+32>>0]=a[i+10+(L*58|0)+32>>0]|0;l=a[i+10+(L*58|0)+33>>0]|0}a[i+10+($a*116|0)+(L*58|0)+33>>0]=l;if(!(m&1)){a[i+10+($a*116|0)+(L*58|0)+34>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+35>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+36>>0]=bS(f,p)|0;a[i+10+($a*116|0)+(L*58|0)+37>>0]=bS(f,p)|0;l=(bS(f,p)|0)&255}else{a[i+10+($a*116|0)+(L*58|0)+34>>0]=a[i+10+(L*58|0)+34>>0]|0;a[i+10+($a*116|0)+(L*58|0)+35>>0]=a[i+10+(L*58|0)+35>>0]|0;a[i+10+($a*116|0)+(L*58|0)+36>>0]=a[i+10+(L*58|0)+36>>0]|0;a[i+10+($a*116|0)+(L*58|0)+37>>0]=a[i+10+(L*58|0)+37>>0]|0;l=a[i+10+(L*58|0)+38>>0]|0}a[i+10+($a*116|0)+(L*58|0)+38>>0]=l;a[i+10+($a*116|0)+(L*58|0)+39>>0]=0}l=_R(pb,f)|0}else{t=(L|0)==0?0:Fa;l=c[bb>>2]|0;J=f;p=c[J+4>>2]|0;m=pb;c[m>>2]=c[J>>2];c[m+4>>2]=p;m=b[i+10+($a*116|0)+(L*58|0)+6>>1]|0;p=m&65535;if(n)u=((d[i+10+($a*116|0)+(L*58|0)+8>>0]|0)>>>3&1)+1&255;else u=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{J=(l>>>0)%36|0;r=(J>>>0)/6|0;s=3;m=(p>>>0)/72|0;q=r;r=J-(r*6|0)|0}while(0);n=178117+(s*12|0)+(u<<2)|0;p=(1<<m)+-1|0;if(!(a[n>>0]|0))l=0;else{o=0;while(1){J=bS(f,m)|0;a[i+10+($a*116|0)+(L*58|0)+18+o>>0]=J;l=o+1|0;a[t+18+o>>0]=(J|0)==(p|0)&1;if(l>>>0<(d[n>>0]|0)>>>0)o=l;else break}}p=(1<<q)+-1|0;n=178117+(s*12|0)+(u<<2)+1|0;if(a[n>>0]|0){o=0;m=l;while(1){J=bS(f,q)|0;a[i+10+($a*116|0)+(L*58|0)+18+m>>0]=J;l=m+1|0;a[t+18+m>>0]=(J|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=178117+(s*12|0)+(u<<2)+2|0;if(a[n>>0]|0){o=0;m=l;while(1){J=bS(f,r)|0;a[i+10+($a*116|0)+(L*58|0)+18+m>>0]=J;l=m+1|0;a[t+18+m>>0]=(J|0)==(p|0)&1;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}n=178117+(s*12|0)+(u<<2)+3|0;if(a[n>>0]|0){o=0;m=l;while(1){J=bS(f,0)|0;a[i+10+($a*116|0)+(L*58|0)+18+m>>0]=J;l=m+1|0;a[t+18+m>>0]=(J|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)+(L*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)+(L*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=178117+(s*12|0)+(u<<2)|0;if(!(a[m>>0]|0))l=0;else{n=0;while(1){l=n+1|0;a[i+10+($a*116|0)+(L*58|0)+18+n>>0]=bS(f,o)|0;if(l>>>0<(d[m>>0]|0)>>>0)n=l;else break}}n=178117+(s*12|0)+(u<<2)+1|0;if(a[n>>0]|0){o=0;m=l;while(1){l=m+1|0;a[i+10+($a*116|0)+(L*58|0)+18+m>>0]=bS(f,q)|0;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}n=178117+(s*12|0)+(u<<2)+2|0;if(a[n>>0]|0){o=0;m=l;while(1){l=m+1|0;a[i+10+($a*116|0)+(L*58|0)+18+m>>0]=bS(f,r)|0;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}n=178117+(s*12|0)+(u<<2)+3|0;if(a[n>>0]|0){o=0;m=l;while(1){l=m+1|0;a[i+10+($a*116|0)+(L*58|0)+18+m>>0]=bS(f,p)|0;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}if(l>>>0<39)yW(w+(l+18)|0,0,39-l|0)|0}l=_R(pb,f)|0}v=zb+(L*2304|0)|0;m=(e[w>>1]|0)-l|0;if((m|0)<0){mb=566;break a}r=(e[i+10+($a*116|0)+(L*58|0)+4>>1]|0)+-210|0;J=i+10+($a*116|0)+(L*58|0)+8|0;n=d[J>>0]|0;s=(n>>>1&1)+1|0;do if((a[x>>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[178221+n>>0])+(d[i+10+($a*116|0)+(L*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)+(L*58|0)+13>>0]<<3)|0;q=r-(d[i+10+($a*116|0)+(L*58|0)+14>>0]<<3)|0;o=r-(d[i+10+($a*116|0)+(L*58|0)+15>>0]<<3)|0;if(l>>>0<576)while(1){c[pb+(n<<2)>>2]=p-(d[i+10+($a*116|0)+(L*58|0)+18+n>>0]<<s);I=n+1|0;c[pb+(I<<2)>>2]=q-(d[i+10+($a*116|0)+(L*58|0)+18+I>>0]<<s);I=n+2|0;c[pb+(I<<2)>>2]=o-(d[i+10+($a*116|0)+(L*58|0)+18+I>>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)+(L*58|0)+18>>0]<<s);c[Ga>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+19>>0]<<s);c[Ra>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+20>>0]<<s);c[Ua>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+21>>0]<<s);c[Va>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+22>>0]<<s);c[Wa>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+23>>0]<<s);c[Xa>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+24>>0]<<s);c[Ya>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+25>>0]<<s);c[Za>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+26>>0]<<s);c[_a>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+27>>0]<<s);c[Ha>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+28>>0]<<s);l=d[i+10+($a*116|0)+(L*58|0)+29>>0]|0;if(!(n&4)){c[Ia>>2]=r-(l<<s);c[Ja>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+30>>0]<<s);c[Ka>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+31>>0]<<s);c[La>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+32>>0]<<s);c[Ma>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+33>>0]<<s);c[Na>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+34>>0]<<s);c[Oa>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+35>>0]<<s);c[Pa>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+36>>0]<<s);c[Qa>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+37>>0]<<s);c[Sa>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+38>>0]<<s);c[Ta>>2]=r-(d[i+10+($a*116|0)+(L*58|0)+39>>0]<<s);break}else{c[Ia>>2]=r-(l+1<<s);c[Ja>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+30>>0]|0)+1<<s);c[Ka>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+31>>0]|0)+1<<s);c[La>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+32>>0]|0)+1<<s);c[Ma>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+33>>0]|0)+2<<s);c[Na>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+34>>0]|0)+2<<s);c[Oa>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+35>>0]|0)+3<<s);c[Pa>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+36>>0]|0)+3<<s);c[Qa>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+37>>0]|0)+3<<s);c[Sa>>2]=r-((d[i+10+($a*116|0)+(L*58|0)+38>>0]|0)+2<<s);c[Ta>>2]=r-(d[i+10+($a*116|0)+(L*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;aS(f,m);o=rW(n|0,o|0,48)|0;M()|0;o=(31-o&-8)+o|0;n=bS(ob,o)|0;s=d[i+10+($a*116|0)+(L*58|0)+10>>0]|0;q=c[77900+(s<<3)>>2]|0;if(!q){P=165;break a}r=zb+(L*2304|0)+(d[k>>0]<<2)|0;w=k+1|0;l=m-o|0;p=c[pb>>2]|0;k=b[i+10+($a*116|0)+(L*58|0)+2>>1]|0;if((m|0)>0&k<<16>>16!=0){I=i+10+($a*116|0)+(L*58|0)+17|0;G=k&65535;z=p;t=Ga;x=e[77900+(s<<3)+4>>1]|0;u=(d[i+10+($a*116|0)+(L*58|0)+16>>0]|0)+1|0;m=0;y=0;p=e[77900+(s<<3)+6>>1]|0;F=0;D=v;while(1){G=G+-1|0;if((D|0)==(r|0)){v=w+1|0;r=D+(d[w>>0]<<2)|0;k=u+-1|0;if(!k){if(!m)k=(d[I>>0]|0)+1|0;else k=0;m=m+1|0;p=d[i+10+($a*116|0)+(L*58|0)+10+m>>0]|0;q=c[77900+(p<<3)>>2]|0;if(!q){P=165;break a}else{s=e[77900+(p<<3)+4>>1]|0;p=e[77900+(p<<3)+6>>1]|0}}else s=x;w=c[t>>2]|0;E=w;t=t+4|0;x=s;C=k;B=m;s=(z|0)==(w|0)?y:0;w=v;A=p}else{E=z;C=u;B=m;s=y;A=p}k=31-o&-8;if((o|0)<21){n=bS(ob,k)|0|n<<k;l=l-k|0;o=k+o|0}k=n>>>(o-A|0)&(1<<A)+-1;if(!(a[q+(k<<1)>>0]&1)){m=A;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))}y=q+(k<<1)|0;m=b[y>>1]|0;o=o-((m&65535)>>>1&7)|0;m=(m&65535)>>>4;k=m&15;u=k&65535;b:do if(!x){if(!(k<<16>>16)){m=s;k=0}else{k=1<<u;if(!(k&s)){s=k|s;p=(E|0)%4|0;k=c[80440+(u<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((E|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;nU(Q,178243,sb)|0;k=2147483647;break}else{k=m<<k;break}else{z=0-k|0;k=z>>>0>31?0:(1<<~k)+m>>z}while(0);if(p)k=H((c[113268+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(u<<2)>>2]=k;m=s}else{m=s;k=c[hb+(u<<2)>>2]|0}z=o+-1|0;o=z;k=(1<<z&n|0)==0?k:0-k|0}c[D>>2]=k;z=(e[y>>1]|0)>>>8&15;u=z&65535;if(!(z<<16>>16)){v=n;k=0;s=m}else{k=1<<u;if(!(k&m)){s=k|m;k=(E|0)/4|0;p=E-(k<<2)|0;z=c[80440+(u<<2)>>2]|0;m=z&134217727;k=(z>>>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;nU(Q,178243,tb)|0;k=2147483647;break}else{k=m<<k;break}else{z=0-k|0;k=z>>>0>31?0:(1<<~k)+m>>z}while(0);if(p)k=H((c[113268+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(u<<2)>>2]=k;m=s}else k=c[hb+(u<<2)>>2]|0;s=o+-1|0;v=n;o=s;k=(1<<s&n|0)==0?k:0-k|0;s=m}}else{c:do switch(m&15){case 0:{v=n;k=0;break}case 15:{if(o>>>0<(x+2|0)>>>0){n=bS(ob,16)|0|n<<16;l=l+-16|0;o=o+16|0}o=o-x|0;p=(E|0)%4|0;k=c[80440+((n>>>o&(1<<x)+-1)+u<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((E|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;nU(Q,178243,qb)|0;k=2147483647;break}else{k=m<<k;break}else{P=0-k|0;k=P>>>0>31?0:(1<<~k)+m>>P}while(0);if(!p){P=118;break c}k=H((c[113268+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;P=118;break}default:{k=1<<u;if(k&s|0){k=c[hb+(u<<2)>>2]|0;P=118;break c}s=k|s;p=(E|0)%4|0;k=c[80440+(u<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((E|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;nU(Q,178243,ub)|0;k=2147483647;break}else{k=m<<k;break}else{P=0-k|0;k=P>>>0>31?0:(1<<~k)+m>>P}while(0);if(p)k=H((c[113268+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(u<<2)>>2]=k;P=118}}while(0);if((P|0)==118){P=0;z=o+-1|0;v=n;o=z;k=(1<<z&n|0)==0?k:0-k|0}c[D>>2]=k;z=(e[y>>1]|0)>>>8;u=z&15;d:do switch(z&15){case 0:{k=0;break b}case 15:{if(o>>>0<(x+1|0)>>>0){n=bS(ob,16)|0|v<<16;l=l+-16|0;o=o+16|0}else n=v;o=o-x|0;p=(E|0)%4|0;k=c[80440+((n>>>o&(1<<x)+-1)+u<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((E|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;nU(Q,178243,yb)|0;k=2147483647;break}else{k=m<<k;break}else{z=0-k|0;k=z>>>0>31?0:(1<<~k)+m>>z}while(0);if(!p)break d;k=H((c[113268+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;break}default:{k=1<<u;if(k&s|0){n=v;k=c[hb+(u<<2)>>2]|0;break d}s=k|s;n=(E|0)%4|0;k=c[80440+(u<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((E|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;nU(Q,178243,rb)|0;k=2147483647;break}else{k=m<<k;break}else{z=0-k|0;k=z>>>0>31?0:(1<<~k)+m>>z}while(0);if(n)k=H((c[113268+(n+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(u<<2)>>2]=k;n=v}}while(0);z=o+-1|0;v=n;o=z;k=(1<<z&n|0)==0?k:0-k|0}while(0);c[D+4>>2]=k;k=F+2|0;m=o+l|0;if(!((G|0)!=0&(m|0)>0)){u=o;s=E;q=w;break}else{n=v;z=E;u=C;m=B;y=s;p=A;F=k;D=zb+(L*2304|0)+(k<<2)|0}}}else{v=n;u=o;s=p;t=Ga;q=w;k=0}if((m|0)<0){mb=568;break a}z=c[77892+((a[J>>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;nU(Q,178243,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=H((c[113268+(p+3<<2)>>2]|0)+32768>>16,n+2048>>12)|0;if((m|0)>0&k>>>0<573){m=v;v=q;while(1){x=zb+(L*2304|0)+(k<<2)|0;if((u|0)<10){y=bS(ob,16)|0|m<<16;l=l+-16|0;m=u+16|0}else{y=m;m=u}q=m+-4|0;o=z+((y>>>q&15)<<1)|0;p=a[o>>0]|0;if(!(p&1)){p=b[o>>1]|0;o=(p&65535)>>>1&7;p=z+((y>>>(q-o|0)&(1<<o)+-1)+((p&65535)>>>4&65535)<<1)|0;o=p;p=a[p>>0]|0;m=q}w=m-((p&255)>>>1&7)|0;if((x|0)==(r|0)){u=v+1|0;r=r+(d[v>>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;nU(Q,178243,wb)|0;n=2147483647;break}else{n=67108864<<m;break}else{J=-2-n|0;n=J>>>0>31?0:(1<<-3-n)+67108864>>J}while(0);if(!p){m=q;break}m=q;n=H((c[113268+(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=u}else q=v;v=(p&16)==0;J=w+-1|0;m=0-n|0;w=v?w:J;c[x>>2]=v?0:(1<<J&y|0)==0?n:m;J=(a[o>>0]&32)==0;v=w+-1|0;w=J?w:v;c[x+4>>2]=J?0:(1<<v&y|0)==0?n:m;v=zb+(L*2304|0)+(k+2<<2)|0;if((v|0)==(r|0)){u=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;nU(Q,178243,xb)|0;n=2147483647;break}else{n=67108864<<m;break}else{J=-2-n|0;n=J>>>0>31?0:(1<<-3-n)+67108864>>J}while(0);if(!p){m=q;break}m=q;n=H((c[113268+(p+3<<2)>>2]|0)+32768>>16,n+2048>>12)|0}while(0);s=m;t=t+4|0;p=n;q=u;m=0-n|0}else p=n;J=(a[o>>0]&64)==0;I=w+-1|0;u=J?w:I;c[v>>2]=J?0:(1<<I&y|0)==0?p:m;I=(a[o>>0]|0)<0;J=u+-1|0;u=I?J:u;c[v+4>>2]=I?((1<<J&y|0)==0?p:m):0;k=k+4|0;m=u+l|0;if(!(k>>>0<573&(m|0)>0))break;else{m=y;n=p;v=q}}}if((l|0)<=-65){P=202;break a}k=(m|0)<0?k+-4|0:k;if((k|0)<576)yW(zb+(L*2304|0)+(k<<2)|0,0,((((k|0)==575?576:575)-k|0)>>>1<<3)+8|0)|0;L=L+1|0}while(L>>>0<j>>>0)}if((c[ab>>2]|0)==2?(eb=c[bb>>2]|0,eb|0):0){u=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)){P=276;break}l=a[i+10+($a*116|0)+66>>0]|0;if((l^a[i+10+($a*116|0)+8>>0])&8){P=276;break}N=eb&65535;b[pb>>1]=N;b[U>>1]=N;b[ea>>1]=N;b[pa>>1]=N;b[za>>1]=N;b[Aa>>1]=N;b[Ba>>1]=N;b[Ca>>1]=N;b[Da>>1]=N;b[Ea>>1]=N;b[V>>1]=N;b[W>>1]=N;b[X>>1]=N;b[Y>>1]=N;b[Z>>1]=N;b[$>>1]=N;b[aa>>1]=N;b[ba>>1]=N;b[ca>>1]=N;b[da>>1]=N;b[fa>>1]=N;b[ga>>1]=N;b[ha>>1]=N;b[ia>>1]=N;b[ja>>1]=N;b[ka>>1]=N;b[la>>1]=N;b[ma>>1]=N;b[na>>1]=N;b[oa>>1]=N;b[qa>>1]=N;b[ra>>1]=N;b[sa>>1]=N;b[ta>>1]=N;b[ua>>1]=N;b[va>>1]=N;b[wa>>1]=N;b[xa>>1]=N;b[ya>>1]=N;e:do if(eb&1|0){t=c[jb>>2]|0;c[jb>>2]=t|256;if(k<<24>>24==2){c[T>>2]=0;c[S>>2]=0;c[hb>>2]=0;if(l&8){o=0;l=0;p=R;k=0;do{P=k;k=k+1|0;P=a[u+P>>0]|0;n=P&255;f:do if(P<<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;P=220}else P=228}else{o=0;l=0;m=R;k=0;P=220}if((P|0)==220){P=0;q=0;r=k;s=0;while(1){N=a[u+r>>0]|0;r=r+1|0;p=N&255;g:do if(!(N<<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)P=228;else{l=k;o=n}}if((P|0)==228){P=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=R;q=0;while(1){N=a[u+q>>0]|0;q=q+1|0;n=N&255;h:do if(!(N<<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[u+q>>0]|0;o=k&255;l=pb+(q<<1)|0;m=b[l>>1]|0;do if(m&1|0){O=a[i+10+($a*116|0)+76+q>>0]|0;n=O&255;if((O&255)>6){b[l>>1]=m&65534;break}if(k<<24>>24){m=(c[113416+(n<<2)>>2]|0)+32768>>16;l=(c[113416+(6-n<<2)>>2]|0)+32768>>16;k=0;do{O=k+p|0;L=zb+(O<<2)|0;N=(c[L>>2]|0)+2048>>12;c[L>>2]=H(N,m)|0;c[zb+2304+(O<<2)>>2]=H(N,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[u+q>>0]|0;o=m&255;k=pb+(q<<1)|0;l=b[k>>1]|0;i:do if(l&1|0){if(a[O+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){N=k+p|0;c[zb+2304+(N<<2)>>2]=c[zb+(N<<2)>>2];k=k+1|0;if((k|0)==(o|0))break i}}m=(c[113296+(n*60|0)+((l+-1|0)>>>1<<2)>>2]|0)+32768>>16;if(!(l&1)){k=0;do{N=k+p|0;c[zb+2304+(N<<2)>>2]=H((c[zb+(N<<2)>>2]|0)+2048>>12,m)|0;k=k+1|0}while((k|0)!=(o|0))}else{k=0;do{N=k+p|0;K=zb+(N<<2)|0;L=c[K>>2]|0;c[K>>2]=H(L+2048>>12,m)|0;c[zb+2304+(N<<2)>>2]=L;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){O=a[u+n>>0]|0;k=O&255;if(O<<24>>24?(b[pb+(n<<1)>>1]|0)==2:0){l=0;do{O=l+m|0;K=zb+(O<<2)|0;O=zb+2304+(O<<2)|0;N=c[O>>2]|0;L=(c[K>>2]|0)+2048|0;c[K>>2]=(L+N>>12)*2896;c[O>>2]=(L-N>>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){y=$a*18|0;x=0;do{w=h+48+(x*4608|0)+(y<<7)|0;v=i+10+($a*116|0)+(x*58|0)+9|0;u=zb+(x*2304|0)|0;if((a[v>>0]|0)==2){k=c[nb+(x<<2)>>2]|0;t=(a[i+10+($a*116|0)+(x*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[S>>2]=s;c[T>>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;N=c[zb+(x*2304|0)+(q<<2)>>2]|0;n=hb+(l<<2)|0;m=c[n>>2]|0;o=ob+(l<<2)|0;O=c[o>>2]|0;P=O+1|0;c[o>>2]=P;c[pb+(m*72|0)+(l*24|0)+(O<<2)>>2]=N;if((P|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}wW(zb+(x*2304|0)+(r<<2)|0,pb+(s*72|0)|0,(H(s,-72)|0)+2304|0)|0;if(!t)nS(u,36)}else nS(u,576);k=a[v>>0]|0;l=a[i+10+($a*116|0)+(x*58|0)+8>>0]&8;if(k<<24>>24==2&l<<24>>24==0){qS(u,lb);pS(lb,(c[cb>>2]|0)+(x*2304|0)|0,w,0);qS(zb+(x*2304|0)+72|0,lb);pS(lb,(c[cb>>2]|0)+(x*2304|0)+72|0,w,1)}else{P=l<<24>>24==0?k&255:0;oS(u,lb,P);pS(lb,(c[cb>>2]|0)+(x*2304|0)|0,w,0);oS(zb+(x*2304|0)+72|0,lb,P);pS(lb,(c[cb>>2]|0)+(x*2304|0)+72|0,w,1)}l=w+132|0;O=w+388|0;N=c[O>>2]|0;c[l>>2]=0-(c[l>>2]|0);l=w+644|0;P=c[l>>2]|0;c[O>>2]=0-N;O=w+900|0;N=c[O>>2]|0;c[l>>2]=0-P;l=w+1156|0;P=c[l>>2]|0;c[O>>2]=0-N;O=w+1412|0;N=c[O>>2]|0;c[l>>2]=0-P;l=w+1668|0;P=c[l>>2]|0;c[O>>2]=0-N;O=w+1924|0;N=c[O>>2]|0;c[l>>2]=0-P;l=w+2180|0;P=c[l>>2]|0;c[O>>2]=0-N;c[l>>2]=0-P;l=576;while(1){k=l;l=l+-1|0;if(c[zb+(x*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[v>>0]|0;l=t>>>0>2;j:do if(k<<24>>24==2)if(l){k=36;l=2;while(1){qS(zb+(x*2304|0)+(k<<2)|0,lb);pS(lb,(c[cb>>2]|0)+(x*2304|0)+(l*72|0)|0,w,l);if(l&1|0){P=w+128+(l<<2)|0;N=w+384+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-(c[P>>2]|0);P=w+640+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;N=w+896+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-O;P=w+1152+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;N=w+1408+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-O;P=w+1664+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;N=w+1920+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-O;P=w+2176+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;c[P>>2]=0-O}l=l+1|0;if(l>>>0>=t>>>0){P=311;break}else k=k+18|0}}else P=312;else if(l){m=36;l=2;while(1){oS(zb+(x*2304|0)+(m<<2)|0,lb,k&255);pS(lb,(c[cb>>2]|0)+(x*2304|0)+(l*72|0)|0,w,l);if(l&1|0){P=w+128+(l<<2)|0;N=w+384+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-(c[P>>2]|0);P=w+640+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;N=w+896+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-O;P=w+1152+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;N=w+1408+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-O;P=w+1664+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;N=w+1920+(l<<2)|0;L=c[N>>2]|0;c[P>>2]=0-O;P=w+2176+(l<<2)|0;O=c[P>>2]|0;c[N>>2]=0-L;c[P>>2]=0-O}l=l+1|0;if(l>>>0>=t>>>0){P=311;break j}k=a[v>>0]|0;m=m+18|0}}else P=312;while(0);if((P|0)==311?(P=0,t>>>0<32):0)P=312;if((P|0)==312){P=0;u=c[cb>>2]|0;do{O=u+(x*2304|0)+(t*72|0)|0;c[h+48+(x*4608|0)+(y<<7)+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+4|0;k=w+128+(t<<2)|0;c[k>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+8|0;c[w+256+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+12|0;p=w+384+(t<<2)|0;c[p>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+16|0;c[w+512+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+20|0;q=w+640+(t<<2)|0;c[q>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+24|0;c[w+768+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+28|0;r=w+896+(t<<2)|0;c[r>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+32|0;c[w+1024+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+36|0;s=w+1152+(t<<2)|0;c[s>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+40|0;c[w+1280+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+44|0;l=w+1408+(t<<2)|0;c[l>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+48|0;c[w+1536+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+52|0;m=w+1664+(t<<2)|0;c[m>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+56|0;c[w+1792+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+60|0;n=w+1920+(t<<2)|0;c[n>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+64|0;c[w+2048+(t<<2)>>2]=c[O>>2];c[O>>2]=0;O=u+(x*2304|0)+(t*72|0)+68|0;o=w+2176+(t<<2)|0;c[o>>2]=c[O>>2];c[O>>2]=0;if(t&1|0){N=c[p>>2]|0;c[k>>2]=0-(c[k>>2]|0);O=c[q>>2]|0;c[p>>2]=0-N;N=c[r>>2]|0;c[q>>2]=0-O;O=c[s>>2]|0;c[r>>2]=0-N;N=c[l>>2]|0;c[s>>2]=0-O;O=c[m>>2]|0;c[l>>2]=0-N;N=c[n>>2]|0;c[m>>2]=0-O;O=c[o>>2]|0;c[n>>2]=0-N;c[o>>2]=0-O}t=t+1|0}while(t>>>0<32)}x=x+1|0}while((x|0)!=(j|0))}$a=$a+1|0;if($a>>>0>=fb>>>0){k=0;P=318;break}}if((P|0)==165)mb=567;else if((P|0)==202)_(178276,178108,1253,178318);else if((P|0)==276){zb=569;Ec=Ab;return zb|0}else if((P|0)==318){Ec=Ab;return k|0}zb=mb;Ec=Ab;return zb|0}function nS(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]=(H(2048-e>>12,-2107)|0)+(f*3512|0);c[b>>2]=(H(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]=(H(2048-g>>12,-1932)|0)+(a*3612|0);c[f>>2]=(H(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]=(H(2048-a>>12,-1284)|0)+(e*3890|0);c[g>>2]=(H(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]=(H(2048-e>>12,-745)|0)+(f*4028|0);c[a>>2]=(H(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]=(H(2048-f>>12,-387)|0)+(g*4078|0);c[e>>2]=(H(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]=(H(2048-g>>12,-168)|0)+(a*4093|0);c[f>>2]=(H(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]=(H(2048-a>>12,-58)|0)+(e&-4096);c[g>>2]=(H(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]=(H(2048-e>>12,-15)|0)+(f&-4096);c[a>>2]=(H(f>>12,-15)|0)+(e+2048&-4096);b=b+72|0}while(b>>>0<d>>>0);return}function oS(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,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,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;z=((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;u=R+X|0;l=z+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=H(U+l>>12,-5266)|0;l=l+2048|0;T=(l-S>>12)*8068|0;U=H(S+U>>12,-2802)|0;Y=H(2048-_+Y>>12,-7094)|0;_=H(a+2048-aa>>12,-7698)|0;$=$+2048|0;aa=H($-aa>>12,-1423)|0;a=H($-a>>12,-6275)|0;$=K+u|0;K=(u<<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;z=(V+2048-z>>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+z|0;z=m-z|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=H(ca+z>>12,-5266)|0;z=z+2048|0;X=(z-W>>12)*8068|0;ca=H(W+ca>>12,-2802)|0;N=H(2048-P+N>>12,-7094)|0;P=H(m+2048-M>>12,-7698)|0;Q=Q+2048|0;M=H(Q-M>>12,-1423)|0;m=H(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=(H(z-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=(H(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;z=b+44|0;c[z>>2]=0-Y;g=b+48|0;c[g>>2]=0-U;o=b+52|0;c[o>>2]=0-Q;u=b+56|0;c[u>>2]=0-$;h=b+60|0;c[h>>2]=0-X;p=b+64|0;c[p>>2]=0-T;v=b+68|0;c[v>>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;E=0-S|0;w=b+80|0;c[w>>2]=E;B=0-O|0;j=b+84|0;c[j>>2]=B;G=0-ba|0;r=b+88|0;c[r>>2]=G;D=0-Z|0;x=b+92|0;c[x>>2]=D;A=0-V|0;k=b+96|0;c[k>>2]=A;J=0-R|0;s=b+100|0;c[s>>2]=J;F=0-N|0;y=b+104|0;c[y>>2]=F;C=b+108|0;c[C>>2]=F;F=b+112|0;c[F>>2]=J;J=b+116|0;c[J>>2]=A;A=b+120|0;c[A>>2]=D;D=b+124|0;c[D>>2]=G;G=b+128|0;c[G>>2]=B;B=b+132|0;c[B>>2]=E;E=b+136|0;c[E>>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[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>2]=(2048-P>>12)*4092;c[i>>2]=(2048-_>>12)*4092;c[q>>2]=(2048-W>>12)*4061;c[w>>2]=(2048-S>>12)*3999;c[j>>2]=(2048-O>>12)*3906;c[r>>2]=(2048-ba>>12)*3784;c[x>>2]=(2048-Z>>12)*3633;c[k>>2]=(2048-V>>12)*3455;c[s>>2]=((c[s>>2]|0)+2048>>12)*3250;c[y>>2]=((c[y>>2]|0)+2048>>12)*3020;c[C>>2]=((c[C>>2]|0)+2048>>12)*2767;c[F>>2]=((c[F>>2]|0)+2048>>12)*2493;c[J>>2]=((c[J>>2]|0)+2048>>12)*2201;c[A>>2]=((c[A>>2]|0)+2048>>12)*1891;c[D>>2]=((c[D>>2]|0)+2048>>12)*1567;c[G>>2]=((c[G>>2]|0)+2048>>12)*1232;c[B>>2]=((c[B>>2]|0)+2048>>12)*887;c[E>>2]=((c[E>>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[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>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[y>>2]=d*3250;c[C>>2]=d*2493;c[F>>2]=b*1567;c[J>>2]=da*535;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}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[z>>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[w>>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[x>>2]=aa*3633;$=2048-V>>12;c[k>>2]=$*3455;_=2048-R>>12;c[s>>2]=_*3250;Z=2048-N>>12;c[y>>2]=Z*3020;c[C>>2]=Z*2767;c[F>>2]=_*2493;c[J>>2]=$*2201;c[A>>2]=aa*1891;c[D>>2]=ba*1567;c[G>>2]=ca*1232;c[B>>2]=d*887;c[E>>2]=b*535;c[I>>2]=da*179;return}default:return}}function pS(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}function qS(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=Ec;Ec=Ec+144|0;e=d;n=(c[a>>2]|0)+2048>>12;l=(c[a+4>>2]|0)+2048>>12;j=H(l,-3784)|0;h=(c[a+8>>2]|0)+2048>>12;i=j+(n*2493|0)+(H(h,-535)|0)|0;g=(c[a+12>>2]|0)+2048>>12;k=(c[a+16>>2]|0)+2048>>12;f=H(k,-1567)|0;m=(c[a+20>>2]|0)+2048>>12;i=i+(g*4061|0)+f+(H(m,-3250)|0)|0;c[e>>2]=i;c[e+20>>2]=0-i;i=(l*1567|0)+(H(n,-3250)|0)+(h*4061|0)+(g*535|0)+(H(k,-3784)|0)+(H(m,-2493)|0)|0;c[e+24>>2]=i;c[e+44>>2]=i;i=j+(n*1567|0)+(h*3784|0)+(H(g,-1567)|0)+f+(m*3784|0)|0;c[e+4>>2]=i;c[e+16>>2]=0-i;l=H(l,-1567)|0;k=k*3784|0;i=l+(H(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)+(H(g,-3250)|0)+k+(H(m,-4061)|0)|0;c[e+8>>2]=k;c[e+12>>2]=0-k;m=j+(H(n,-4061)|0)+(H(h,-3250)|0)+(H(g,-2493)|0)+f+(H(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=H(f,-3784)|0;h=(c[a+32>>2]|0)+2048>>12;n=g+(m*2493|0)+(H(h,-535)|0)|0;j=(c[a+36>>2]|0)+2048>>12;k=(c[a+40>>2]|0)+2048>>12;l=H(k,-1567)|0;i=(c[a+44>>2]|0)+2048>>12;n=n+(j*4061|0)+l+(H(i,-3250)|0)|0;c[e+48>>2]=n;c[e+68>>2]=0-n;n=(f*1567|0)+(H(m,-3250)|0)+(h*4061|0)+(j*535|0)+(H(k,-3784)|0)+(H(i,-2493)|0)|0;c[e+72>>2]=n;c[e+92>>2]=n;n=g+(m*1567|0)+(h*3784|0)+(H(j,-1567)|0)+l+(i*3784|0)|0;c[e+52>>2]=n;c[e+64>>2]=0-n;f=H(f,-1567)|0;k=k*3784|0;n=f+(H(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)+(H(j,-3250)|0)+k+(H(i,-4061)|0)|0;c[e+56>>2]=k;c[e+60>>2]=0-k;i=g+(H(m,-4061)|0)+(H(h,-3250)|0)+(H(j,-2493)|0)+l+(H(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=H(l,-3784)|0;h=(c[a+56>>2]|0)+2048>>12;m=j+(i*2493|0)+(H(h,-535)|0)|0;g=(c[a+60>>2]|0)+2048>>12;k=(c[a+64>>2]|0)+2048>>12;f=H(k,-1567)|0;a=(c[a+68>>2]|0)+2048>>12;m=m+(g*4061|0)+f+(H(a,-3250)|0)|0;c[e+96>>2]=m;c[e+116>>2]=0-m;m=(l*1567|0)+(H(i,-3250)|0)+(h*4061|0)+(g*535|0)+(H(k,-3784)|0)+(H(a,-2493)|0)|0;c[e+120>>2]=m;c[e+140>>2]=m;m=j+(i*1567|0)+(h*3784|0)+(H(g,-1567)|0)+f+(a*3784|0)|0;c[e+100>>2]=m;c[e+112>>2]=0-m;l=H(l,-1567)|0;k=k*3784|0;m=l+(H(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)+(H(g,-3250)|0)+k+(H(a,-4061)|0)|0;c[e+104>>2]=k;c[e+108>>2]=0-k;a=j+(H(i,-4061)|0)+(H(h,-3250)|0)+(H(g,-2493)|0)+f+(H(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;Ec=d;return}function rS(b){b=b|0;var e=0,f=0,g=0,h=0;h=b+28|0;e=$R(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}ZR(h,e);h=0;return h|0}function sS(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=Ec;Ec=Ec+16|0;f=j;g=a+28|0;c[g>>2]=0;h=a+32|0;c[h>>2]=0;i=d+28|0;aS(i,11);if(!(bS(i,1)|0))c[g>>2]=c[g>>2]|16384;k=(bS(i,1)|0)==0;e=c[g>>2]|0;if(!k){if(e&16384|0){c[d+60>>2]=257;k=-1;Ec=j;return k|0}}else c[g>>2]=e|4096;k=bS(i,2)|0;c[a>>2]=4-k;if(!k){c[d+60>>2]=258;k=-1;Ec=j;return k|0}if(!(bS(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]=cS(f,16,-1)|0}e=bS(i,4)|0;if((e|0)==15){c[d+60>>2]=259;k=-1;Ec=j;return k|0}k=c[a>>2]|0;c[a+16>>2]=c[113444+(((c[g>>2]&4096|0)==0?k+-1|0:(k>>>1)+3|0)*60|0)+(e<<2)>>2];e=bS(i,2)|0;if((e|0)==3){c[d+60>>2]=260;k=-1;Ec=j;return k|0}e=c[113744+(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(bS(i,1)|0)c[g>>2]=c[g>>2]|128;if(bS(i,1)|0)c[h>>2]=c[h>>2]|256;c[a+4>>2]=3-(bS(i,2)|0);c[a+8>>2]=bS(i,2)|0;if(bS(i,1)|0)c[g>>2]=c[g>>2]|32;if(bS(i,1)|0)c[g>>2]=c[g>>2]|64;c[a+12>>2]=bS(i,2)|0;if(!(c[g>>2]&16)){k=0;Ec=j;return k|0}b[a+26>>1]=bS(i,16)|0;k=0;Ec=j;return k|0}function tS(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-(H(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)_(178999,179010,144,179018);do if(b>>>0>=d>>>0)if(b>>>0<g>>>0){h=(g>>>0)/(b>>>0)|0;d=(((H(g-(H(h,b)|0)|0,d)|0)>>>0)/(b>>>0)|0)+(H(h,d)|0)|0;break}else{d=((H(d,g)|0)>>>0)/(b>>>0)|0;break}else{h=(d>>>0)/(b>>>0)|0;d=(((H(d-(H(h,b)|0)|0,g)|0)>>>0)/(b>>>0)|0)+(H(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-(H(h,3528e5)|0);return}function uS(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=Ec;Ec=Ec+112|0;j=t+48|0;i=t;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(!(rS(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(((sS(i,j)|0)==0?(c[i>>2]|0)==(c[b>>2]|0):0)?(c[k>>2]|0)==(c[l>>2]|0):0){d=$R(r)|0;g=(c[b>>2]|0)==1;g=((H(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}}aS(r,8)}while((rS(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;Ec=t;return s|0}}else{s=r;c[s>>2]=p;c[s+4>>2]=q}c[a+60>>2]=257;s=-1;Ec=t;return s|0}function vS(a){a=a|0;var b=0;yW(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);yW(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 wS(a){a=a|0;var b=0;yW(a+48|0,0,9216)|0;a=c[a+9264>>2]|0;if(!a)return;yW(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 xS(){yS(0);return}function yS(a){a=a|0;Ca(58512,179033);ra(58528,179038,1,1,0);ya(58536,179043,1,-128,127);ya(58552,179048,1,-128,127);ya(58544,179060,1,0,255);ya(58560,179074,2,-32768,32767);ya(58568,179080,2,0,65535);ya(58576,179095,4,-2147483648,2147483647);ya(58584,179099,4,0,-1);ya(58592,179112,4,-2147483648,2147483647);ya(58600,179117,4,0,-1);xa(58608,179131,4);xa(58616,179137,8);Aa(9528,179144);Aa(57936,179156);Ba(57960,4,179189);wa(9552,179202);za(57984,0,179218);za(57992,0,179248);za(58e3,1,179285);za(58008,2,179324);za(58016,3,179355);za(58024,4,179395);za(58032,5,179424);za(58040,4,179462);za(58048,5,179492);za(57992,0,179531);za(58e3,1,179563);za(58008,2,179596);za(58016,3,179629);za(58024,4,179663);za(58032,5,179696);za(58056,6,179730);za(58064,7,179761);za(58072,7,179793);return}function zS(a){a=a|0;return eU(c[a+4>>2]|0)|0}function AS(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+16|0;d=b;c[d>>2]=FS(c[a+60>>2]|0)|0;a=DS(pa(6,d|0)|0)|0;Ec=b;return a|0}function BS(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=Ec;Ec=Ec+48|0;k=m+32|0;g=m+16|0;f=m;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=DS(ka(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=DS(ka(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}Ec=m;return d|0}function CS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=Ec;Ec=Ec+32|0;h=g+8|0;f=g;c[h>>2]=c[a+60>>2];c[h+4>>2]=d;c[h+8>>2]=b;c[h+12>>2]=f;c[h+16>>2]=e;if((DS(ja(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}L(a|0);Ec=g;return b|0}function DS(a){a=a|0;if(a>>>0>4294963200){c[(ES()|0)>>2]=0-a;a=-1}return a|0}function ES(){return 184092}function FS(a){a=a|0;return a|0}function GS(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=Ec;Ec=Ec+144|0;h=j;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;HS(h,0,0);d=IS(h,d,1,e,f)|0;e=M()|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+120>>2]|0)-(c[g>>2]|0));L(e|0);Ec=j;return d|0}function HS(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 IS(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[(ES()|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=JS(b)|0}while((KS(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=JS(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=JS(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=JS(b)|0;if((d[273+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){HS(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[273+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;HS(b,0,0);c[(ES()|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=JS(b)|0;e=j+-48|0}while(e>>>0<10&i>>>0<429496729);if(e>>>0<10){m=0;do{f=nW(i|0,m|0,10,0)|0;k=M()|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=hW(f|0,k|0,e|0,l|0)|0;m=M()|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=JS(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[180328+((o*23|0)>>>5&7)>>0]|0;f=a[273+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=JS(b)|0;f=a[273+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=rW(-1,-1,n|0)|0;m=M()|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=sW(i|0,e|0,n|0)|0;e=M()|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=JS(b)|0;f=a[273+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[273+i>>0]|0;f=e&255;if(o>>>0>f>>>0){i=0;do{i=f+(H(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=JS(b)|0;e=a[273+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=pW(-1,-1,o|0,0)|0;n=M()|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=nW(i|0,e|0,o|0,0)|0;l=M()|0;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=o;n=76;break d}i=hW(k|0,l|0,f|0,0)|0;e=M()|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=JS(b)|0;f=a[273+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[273+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=JS(b)|0}while(f>>>0>(d[273+i>>0]|0)>>>0);c[(ES()|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[(ES()|0)>>2]=34;g=hW(g|0,h|0,-1,-1)|0;h=M()|0;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(ES()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=iW(i^j|0,e^g|0,j|0,g|0)|0;h=M()|0}while(0);L(h|0);return g|0}function JS(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=LS(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=iW(f|0,g|0,c[m>>2]|0,c[m+4>>2]|0)|0;m=M()|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=hW(c[l>>2]|0,c[l+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;l=M()|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 KS(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function LS(a){a=a|0;var b=0,e=0;e=Ec;Ec=Ec+16|0;b=e;if((MS(a)|0)==0?(Nc[c[a+32>>2]&15](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;Ec=e;return a|0}function MS(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]&15](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 NS(a,b,c){a=a|0;b=b|0;c=c|0;c=GS(a,b,c,0,-2147483648)|0;L(M()|0);return c|0}function OS(a,b,c){a=a|0;b=b|0;c=c|0;c=GS(a,b,c,-1,0)|0;M()|0;return c|0}function PS(a,b,c){a=a|0;b=b|0;c=c|0;c=GS(a,b,c,-2147483648,0)|0;M()|0;return c|0}function QS(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=Ec;Ec=Ec+32|0;l=p+24|0;m=p+16|0;n=p+8|0;o=p;g[h>>3]=a;s=c[h>>2]|0;i=c[h+4>>2]|0;g[h>>3]=b;e=c[h>>2]|0;i=i&2147483647;f=c[h+4>>2]&2147483647;j=i>>>0<f>>>0|(i|0)==(f|0)&s>>>0<e>>>0;r=j?e:s;q=j?f:i;e=j?s:e;f=j?i:f;i=rW(r|0,q|0,52)|0;M()|0;j=rW(e|0,f|0,52)|0;M()|0;c[h>>2]=r;c[h+4>>2]=q;a=+g[h>>3];c[h>>2]=e;c[h+4>>2]=f;k=+g[h>>3];do if((j|0)!=2047){if(!((e|0)==0&(f|0)==0|(i|0)==2047)){if((i-j|0)>64){a=a+k;break}if((i|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{s=(j|0)<573;d=s?1.90109156629516e-211:1.0;b=s?a*5260135901548373507240989.0e186:a;a=s?k*5260135901548373507240989.0e186:k}RS(l,m,b);RS(n,o,a);a=d*+v(+(+g[o>>3]+ +g[m>>3]+ +g[n>>3]+ +g[l>>3]))}}else a=k;while(0);Ec=p;return +a}function RS(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;g[a>>3]=c;g[b>>3]=d*d+(e*e-c+e*2.0*d);return}function SS(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 TS(a){a=+a;var b=0;g[h>>3]=a;b=c[h+4>>2]&2147483647;c[h>>2]=c[h>>2];c[h+4>>2]=b;a=+g[h>>3];do if(b>>>0<1072049730)if(b>>>0<1045430272)a=1.0;else{a=+VS(a);a=a*a/((a+1.0)*2.0)+1.0}else if(b>>>0<1082535490){a=+E(+a);a=(a+1.0/a)*.5;break}else{a=+WS(a);break}while(0);return +a}function US(a){a=+a;var b=0.0,d=0,e=0.0;g[h>>3]=a;d=c[h+4>>2]|0;e=(d|0)<0?-.5:.5;d=d&2147483647;c[h>>2]=c[h>>2];c[h+4>>2]=d;b=+g[h>>3];do if(d>>>0<1082535490){b=+VS(b);if(d>>>0>=1072693248){a=e*(b+b/(b+1.0));break}if(d>>>0>=1045430272)a=e*(b*2.0-b*b/(b+1.0))}else a=e*2.0*+WS(b);while(0);return +a}function VS(a){a=+a;var b=0,d=0,e=0.0,f=0.0,i=0.0,j=0,k=0,l=0.0;g[h>>3]=a;d=c[h+4>>2]|0;b=d&2147483647;d=rW(c[h>>2]|0,d|0,63)|0;M()|0;do if(b>>>0>1078159481){j=XS(a)|0;b=(M()|0)&2147483647;if(!(b>>>0>2146435072|(b|0)==2146435072&j>>>0>0))if(!d)if(a>709.782712893384)a=a*8988465674311579538646525.0e283;else k=11;else a=-1.0}else{if(b>>>0<=1071001154)if(b>>>0<1016070144)break;else{i=0.0;j=0;k=14;break}if(b>>>0<1072734898)if(!d){b=1;e=a+-.6931471803691238;f=1.9082149292705877e-10;k=12;break}else{b=-1;e=a+.6931471803691238;f=-1.9082149292705877e-10;k=12;break}else k=11}while(0);if((k|0)==11){b=~~(a*1.4426950408889634+((d|0)==0?.5:-.5));f=+(b|0);e=a-f*.6931471803691238;f=f*1.9082149292705877e-10;k=12}if((k|0)==12){i=e-f;a=i;i=e-i-f;j=b;k=14}a:do if((k|0)==14){f=a*.5;e=a*f;l=e*(e*(e*(e*(4.008217827329362e-06-e*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;f=3.0-f*l;f=e*((l-f)/(6.0-a*f));if(!j){a=a-(a*f-e);break}f=a*(f-i)-i-e;switch(j|0){case -1:{a=(a-f)*.5+-.5;break a}case 1:if(a<-.25){a=(f-(a+.5))*-2.0;break a}else{a=(a-f)*2.0+1.0;break a}default:{d=sW(j+1023|0,0,52)|0;k=M()|0;c[h>>2]=d;c[h+4>>2]=k;i=+g[h>>3];if(j>>>0>56){a=a-f+1.0;a=((j|0)==1024?a*2.0*8988465674311579538646525.0e283:a*i)+-1.0;break a}b=sW(1023-j|0,0,52)|0;d=M()|0;if((j|0)<20){c[h>>2]=b;c[h+4>>2]=d;e=1.0-+g[h>>3];a=a-f}else{c[h>>2]=b;c[h+4>>2]=d;e=a-(f+ +g[h>>3]);a=1.0}a=(e+a)*i;break a}}}while(0);return +a}function WS(a){a=+a;return +(+E(+(a+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function XS(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;L(c[h+4>>2]|0);return b|0}function YS(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 ZS(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 _S(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function $S(a){a=a|0;return (a+-48|0)>>>0<10|0}function aT(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=Ec;Ec=Ec+160|0;g=j+144|0;i=j;wW(i|0,58224,144)|0;if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;h=4}else{c[(ES()|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=bT(i,e,f)|0;if(h){i=c[g>>2]|0;a[i+(((i|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}Ec=j;return d|0}function bT(a,b,c){a=a|0;b=b|0;c=c|0;return eT(a,b,c,1,211)|0}function cT(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=Ec;Ec=Ec+560|0;l=F+32|0;u=F+536|0;E=F;D=E;m=F+540|0;c[u>>2]=0;C=m+12|0;wT(e)|0;j=M()|0;if((j|0)<0){e=-e;wT(e)|0;B=1;A=180354;j=M()|0}else{B=(h&2049|0)!=0&1;A=(h&2048|0)==0?((h&1|0)==0?180355:180360):180357}do if(0==0&(j&2146435072|0)==2146435072){E=(i&32|0)!=0;j=B+3|0;pT(b,32,f,j,h&-65537);iT(b,A,B);iT(b,e!=e|0.0!=0.0?(E?180396:180381):E?180373:180377,3);pT(b,32,f,j,h^8192)}else{q=+xT(e,u)*2.0;j=q!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;t=i|32;if((t|0)==97){o=i&32;r=(o|0)==0?A:A+9|0;p=B|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[r>>0]|0)==45){e=-(e+(-q-e));break}else{e=q+e-e;break}}else e=q;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=nT(j,((j|0)<0)<<31>>31,C)|0;if((j|0)==(C|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=E;do{B=~~e;j=m+1|0;a[m>>0]=o|d[1008+B>>0];e=(e-+(B|0))*16.0;if((j-D|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-D+m|0)<(g|0):0){k=C;l=n;j=g+2+k-l|0}else{k=C;l=n;j=k-D-l+m|0}C=j+p|0;pT(b,32,f,C,h);iT(b,r,p);pT(b,48,f,C,h^65536);D=m-D|0;iT(b,E,D);E=k-l|0;pT(b,48,j-(D+E)|0,0,0);iT(b,n,E);pT(b,32,f,C,h^8192);j=C;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=q*268435456.0}else{e=q;j=c[u>>2]|0}z=(j|0)<0?l:l+288|0;l=z;do{x=~~e>>>0;c[l>>2]=x;l=l+4|0;e=(e-+(x>>>0))*1.0e9}while(e!=0.0);x=z;if((j|0)>0){o=z;while(1){n=(j|0)<29?j:29;j=l+-4|0;if(j>>>0>=o>>>0){m=0;do{s=sW(c[j>>2]|0,0,n|0)|0;s=hW(s|0,M()|0,m|0,0)|0;v=M()|0;m=pW(s|0,v|0,1e9,0)|0;w=nW(m|0,M()|0,1e9,0)|0;w=iW(s|0,v|0,w|0,M()|0)|0;M()|0;c[j>>2]=w;j=j+-4|0}while(j>>>0>=o>>>0);if(m){w=o+-4|0;c[w>>2]=m;m=w}else m=o}else m=o;a:do if(l>>>0>m>>>0){j=l;while(1){l=j+-4|0;if(c[l>>2]|0){l=j;break a}if(l>>>0>m>>>0)j=l;else break}}while(0);j=(c[u>>2]|0)-n|0;c[u>>2]=j;if((j|0)>0)o=m;else break}}else m=z;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{w=c[j>>2]|0;c[j>>2]=(w>>>r)+p;p=H(w&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?z:m;l=(l-j>>2|0)>(g|0)?j+(g<<2)|0:l;j=(c[u>>2]|0)+r|0;c[u>>2]=j}while((j|0)<0);s=m}else s=m;if(s>>>0<l>>>0){j=(x-s>>2)*9|0;n=c[s>>2]|0;if(n>>>0>=10){m=10;do{m=m*10|0;j=j+1|0}while(n>>>0>=m>>>0)}}else j=0;v=(t|0)==103;w=(k|0)!=0;m=k-((t|0)==102?0:j)+((w&v)<<31>>31)|0;if((m|0)<(((l-x>>2)*9|0)+-9|0)){u=m+9216|0;m=(u|0)/9|0;g=z+4+(m+-1024<<2)|0;m=u-(m*9|0)|0;if((m|0)<8){n=10;while(1){n=n*10|0;if((m|0)<7)m=m+1|0;else break}}else n=10;p=c[g>>2]|0;m=(p>>>0)/(n>>>0)|0;r=p-(H(m,n)|0)|0;o=(g+4|0)==(l|0);if(!(o&(r|0)==0)){q=(m&1|0)==0?9007199254740992.0:9007199254740994.0;u=n>>>1;e=r>>>0<u>>>0?.5:o&(r|0)==(u|0)?1.0:1.5;if(B){u=(a[A>>0]|0)==45;e=u?-e:e;q=u?-q:q}m=p-r|0;c[g>>2]=m;if(q+e!=q){u=m+n|0;c[g>>2]=u;if(u>>>0>999999999){n=g;j=s;while(1){m=n+-4|0;c[n>>2]=0;if(m>>>0<j>>>0){j=j+-4|0;c[j>>2]=0}u=(c[m>>2]|0)+1|0;c[m>>2]=u;if(u>>>0>999999999)n=m;else{n=j;break}}}else{m=g;n=s}j=(x-n>>2)*9|0;p=c[n>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else{m=g;n=s}}else{m=g;n=s}u=m+4|0;l=l>>>0>u>>>0?u:l}else n=s;g=0-j|0;b:do if(l>>>0>n>>>0)while(1){m=l+-4|0;if(c[m>>2]|0){u=l;t=1;break b}if(m>>>0>n>>>0)l=m;else{u=m;t=0;break}}else{u=l;t=0}while(0);do if(v){k=k+((w^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?(y=c[u+-4>>2]|0,(y|0)!=0):0)if(!((y>>>0)%10|0)){m=0;l=10;do{l=l*10|0;m=m+1|0}while(!((y>>>0)%(l>>>0)|0|0))}else m=0;else m=9;l=((u-x>>2)*9|0)+-9|0;if((o|32|0)==102){i=l-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=l+j-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else o=i;while(0);s=(k|0)!=0;p=s?1:h>>>3&1;r=(o|32|0)==102;if(r){v=0;j=(j|0)>0?j:0}else{l=(j|0)<0?g:j;l=nT(l,((l|0)<0)<<31>>31,C)|0;m=C;if((m-l|0)<2)do{l=l+-1|0;a[l>>0]=48}while((m-l|0)<2);a[l+-1>>0]=(j>>31&2)+43;j=l+-2|0;a[j>>0]=o;v=j;j=m-j|0}j=B+1+k+p+j|0;pT(b,32,f,j,h);iT(b,A,B);pT(b,48,f,j,h^65536);if(r){p=n>>>0>z>>>0?z:n;r=E+9|0;n=r;o=E+8|0;m=p;do{l=nT(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>E>>>0){yW(E|0,48,l-D|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}iT(b,l,n-l|0);m=m+4|0}while(m>>>0<=z>>>0);if(!((h&8|0)==0&(s^1)))iT(b,180385,1);if(m>>>0<u>>>0&(k|0)>0)while(1){l=nT(c[m>>2]|0,0,r)|0;if(l>>>0>E>>>0){yW(E|0,48,l-D|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}iT(b,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0<u>>>0&(k|0)>9)){k=l;break}else k=l}pT(b,48,k+9|0,9,0)}else{u=t?u:n+4|0;if(n>>>0<u>>>0&(k|0)>-1){g=E+9|0;s=(h&8|0)==0;t=g;p=0-D|0;r=E+8|0;o=n;do{l=nT(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;iT(b,l,1);if(s&(k|0)<1){l=m;break}iT(b,180385,1);l=m}else{if(l>>>0<=E>>>0)break;yW(E|0,48,l+p|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}while(0);D=t-l|0;iT(b,l,(k|0)>(D|0)?D:k);k=k-D|0;o=o+4|0}while(o>>>0<u>>>0&(k|0)>-1)}pT(b,48,k+18|0,18,0);iT(b,v,C-v|0)}pT(b,32,f,j,h^8192)}while(0);Ec=F;return ((j|0)<(f|0)?f:j)|0}function dT(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 eT(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=Ec;Ec=Ec+224|0;p=t+208|0;q=t+160|0;r=t+80|0;s=t;h=q;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[p>>2]=c[e>>2];if((fT(0,d,p,r,q,f,g)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=gT(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=fT(b,d,p,r,q,f,g)|0;if(j){Nc[c[b+36>>2]&15](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=fT(b,d,p,r,q,f,g)|0;h=c[b>>2]|0;c[b>>2]=h|n;if(o|0)hT(b);e=(h&32|0)==0?e:-1}Ec=t;return e|0}function fT(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;I=Ec;Ec=Ec+64|0;F=I+56|0;H=I+40|0;A=I;C=I+48|0;D=I+60|0;c[F>>2]=e;x=(d|0)!=0;y=A+40|0;z=y;A=A+39|0;B=C+4|0;l=0;e=0;n=0;a:while(1){do{do if((e|0)>-1)if((l|0)>(2147483647-e|0)){c[(ES()|0)>>2]=75;e=-1;break}else{e=l+e|0;break}while(0);r=c[F>>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[F>>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[F>>2]=m}while((a[m>>0]|0)==37)}while(0);l=l-r|0;if(x)iT(d,r,l)}while((l|0)!=0);v=($S(a[(c[F>>2]|0)+1>>0]|0)|0)==0;m=c[F>>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[F>>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[F>>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(($S(a[l+1>>0]|0)|0)!=0?(G=c[F>>2]|0,(a[G+2>>0]|0)==36):0){l=G+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=G+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[F>>2]|0)+1|0}c[F>>2]=m;v=(l|0)<0;u=v?0-l|0:l;o=v?o|8192:o;v=n}else{l=jT(F)|0;if((l|0)<0){e=-1;break}u=l;v=p;m=c[F>>2]|0}do if((a[m>>0]|0)==46){l=m+1|0;if((a[l>>0]|0)!=42){c[F>>2]=l;l=jT(F)|0;m=c[F>>2]|0;break}if($S(a[m+2>>0]|0)|0?(E=c[F>>2]|0,(a[E+3>>0]|0)==36):0){l=E+2|0;c[i+((a[l>>0]|0)+-48<<2)>>2]=10;l=c[h+((a[l>>0]|0)+-48<<3)>>2]|0;m=E+4|0;c[F>>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[F>>2]|0)+2|0;c[F>>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[F>>2]=m;n=a[(a[n>>0]|0)+-65+(544+(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=H;c[w>>2]=c[q>>2];c[w+4>>2]=t;w=54;break}if(!x){e=0;break a}kT(H,p,f,k);m=c[F>>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[H>>2]>>2]=e;l=0;break d}case 1:{c[c[H>>2]>>2]=e;l=0;break d}case 2:{l=c[H>>2]|0;c[l>>2]=e;c[l+4>>2]=((e|0)<0)<<31>>31;l=0;break d}case 3:{b[c[H>>2]>>1]=e;l=0;break d}case 4:{a[c[H>>2]>>0]=e;l=0;break d}case 6:{c[c[H>>2]>>2]=e;l=0;break d}case 7:{l=c[H>>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=H;q=mT(c[q>>2]|0,c[q+4>>2]|0,y)|0;n=z-q|0;o=0;p=180337;l=(t&8|0)==0|(l|0)>(n|0)?l:n+1|0;n=t;w=73;break}case 105:case 100:{n=H;m=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){m=iW(0,0,m|0,n|0)|0;n=M()|0;o=H;c[o>>2]=m;c[o+4>>2]=n;o=1;p=180337;w=72;break e}else{o=(t&2049|0)!=0&1;p=(t&2048|0)==0?((t&1|0)==0?180337:180339):180338;w=72;break e}}case 117:{n=H;o=0;p=180337;m=c[n>>2]|0;n=c[n+4>>2]|0;w=72;break}case 99:{a[A>>0]=c[H>>2];r=A;o=0;p=180337;q=1;m=n;l=z;break}case 115:{s=c[H>>2]|0;s=(s|0)==0?180347:s;t=oT(s,0,l)|0;J=(t|0)==0;r=s;o=0;p=180337;q=J?l:t-s|0;m=n;l=J?s+l|0:t;break}case 67:{c[C>>2]=c[H>>2];c[B>>2]=0;c[H>>2]=C;p=-1;w=79;break}case 83:{if(!l){pT(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[H>>3],u,l,t,m)|0;break d}default:{o=0;p=180337;q=l;m=t;l=z}}while(0);f:do if((w|0)==67){q=H;q=lT(c[q>>2]|0,c[q+4>>2]|0,y,m&32)|0;p=H;p=(n&8|0)==0|(c[p>>2]|0)==0&(c[p+4>>2]|0)==0;o=p?0:2;p=p?180337:180337+(m>>>4)|0;w=73}else if((w|0)==72){q=nT(m,n,y)|0;n=t;w=73}else if((w|0)==79){w=0;o=c[H>>2]|0;l=0;while(1){m=c[o>>2]|0;if(!m)break;m=qT(D,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}}pT(d,32,u,l,t);if(!l){l=0;w=89}else{n=c[H>>2]|0;o=0;while(1){m=c[n>>2]|0;if(!m){w=89;break f}m=qT(D,m)|0;o=m+o|0;if((o|0)>(l|0)){w=89;break f}iT(d,D,m);if(o>>>0>=l>>>0){w=89;break}else n=n+4|0}}}while(0);if((w|0)==73){w=0;m=H;m=(c[m>>2]|0)!=0|(c[m+4>>2]|0)!=0;J=(l|0)!=0|m;m=z-q+((m^1)&1)|0;r=J?q:y;q=J?((l|0)>(m|0)?l:m):0;m=(l|0)>-1?n&-65537:n;l=z}else if((w|0)==89){w=0;pT(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;J=s+o|0;l=(u|0)<(J|0)?J:u;pT(d,32,l,J,m);iT(d,p,o);pT(d,48,l,J,m^65536);pT(d,48,s,t,0);iT(d,r,t);pT(d,32,l,J,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;kT(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);Ec=I;return e|0}function gT(a){a=a|0;return 1}function hT(a){a=a|0;return}function iT(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))uT(b,d,a)|0;return}function jT(b){b=b|0;var d=0,e=0;if(!($S(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(($S(a[e>>0]|0)|0)!=0)}return d|0}
function kT(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:{Tc[e&255](a,d);break a}default:break a}while(0);while(0);return}function lT(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[1008+(b&15)>>0]|0|f;b=rW(b|0,c|0,4)|0;c=M()|0}while(!((b|0)==0&(c|0)==0));return e|0}function mT(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=rW(b|0,c|0,3)|0;c=M()|0}while(!((b|0)==0&(c|0)==0));return d|0}function nT(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=pW(b|0,c|0,10,0)|0;f=c;c=M()|0;g=nW(b|0,c|0,10,0)|0;g=iW(e|0,f|0,g|0,M()|0)|0;M()|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 oT(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=H(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 pT(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=Ec;Ec=Ec+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;yW(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{iT(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}iT(a,f,e)}Ec=g;return}function qT(a,b){a=a|0;b=b|0;if(!a)a=0;else a=rT(a,b,0)|0;return a|0}function rT(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[(sT()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(ES()|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[(ES()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function sT(){return tT()|0}function tT(){return 113760}function uT(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(!(vT(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]&15](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]&15](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);wW(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 vT(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 wT(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;L(c[h+4>>2]|0);return b|0}function xT(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=rW(d|0,e|0,52)|0;M()|0;switch(f&2047){case 0:{if(a!=0.0){a=+xT(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 yT(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;wW(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function zT(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+16|0;d=b;c[d>>2]=FS(a)|0;a=pa(6,d|0)|0;a=DS((a|0)==-4?0:a)|0;Ec=b;return a|0}function AT(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;r=Ec;Ec=Ec+192|0;i=r+168|0;h=r+152|0;q=r+136|0;p=r+120|0;o=r+112|0;l=r+96|0;k=r+80|0;f=r+64|0;m=r+48|0;g=r+32|0;e=r+16|0;s=r;j=r+184|0;c[s>>2]=d;d=(c[s>>2]|0)+(4-1)&~(4-1);n=c[d>>2]|0;c[s>>2]=d+4;n=(b|0)==4?n|32768:n;a:do switch(b|0){case 14:{c[e>>2]=a;c[e+4>>2]=14;c[e+8>>2]=n;d=DS(la(221,e|0)|0)|0;break}case 9:{c[g>>2]=a;c[g+4>>2]=16;c[g+8>>2]=j;d=la(221,g|0)|0;switch(d|0){case -22:{c[m>>2]=a;c[m+4>>2]=9;c[m+8>>2]=n;d=la(221,m|0)|0;break}case 0:{d=c[j+4>>2]|0;d=(c[j>>2]|0)==2?0-d|0:d;break}default:d=DS(d)|0}break}case 1030:{c[f>>2]=a;c[f+4>>2]=1030;c[f+8>>2]=n;d=la(221,f|0)|0;if((d|0)!=-22){if((d|0)>-1){c[k>>2]=d;c[k+4>>2]=2;c[k+8>>2]=1;la(221,k|0)|0}d=DS(d)|0;break a}c[l>>2]=a;c[l+4>>2]=1030;c[l+8>>2]=0;d=la(221,l|0)|0;if((d|0)==-22){c[p>>2]=a;c[p+4>>2]=0;c[p+8>>2]=n;d=la(221,p|0)|0;if((d|0)>-1){c[q>>2]=d;c[q+4>>2]=2;c[q+8>>2]=1;la(221,q|0)|0}d=DS(d)|0;break a}else{if((d|0)>-1){c[o>>2]=d;pa(6,o|0)|0}d=DS(-22)|0;break a}}case 15:case 16:case 12:case 13:{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=n;d=DS(la(221,h|0)|0)|0;break}default:{c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=n;d=DS(la(221,i|0)|0)|0}}while(0);Ec=r;return d|0}function BT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=Ec;Ec=Ec+48|0;g=h+32|0;f=h+16|0;e=h;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=na(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;la(221,g|0)|0}i=DS(e)|0;Ec=h;return i|0}function CT(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=JS(b)|0}while((KS(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=JS(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;while(1){if((h|32|0)!=(a[180387+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=JS(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[180396+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=JS(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=JS(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=JS(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[(ES()|0)>>2]=22;HS(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=JS(b)|0;if((e|32|0)==120){g=+DT(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=+ET(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(ES()|0)>>2]=22;HS(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 DT(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,y=0;y=a+4|0;i=c[y>>2]|0;x=a+104|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=JS(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[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=JS(a)|0;j=1}if((w|0)==10){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=JS(a)|0;if((i|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=JS(a)|0;l=hW(l|0,j|0,-1,-1)|0;j=M()|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=hW(m|0,u|0,1,0)|0;q=i;r=1;p=M()|0}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=JS(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i?(c[y>>2]=(c[y>>2]|0)+-1,!((s|0)==0|i)):0)c[y>>2]=(c[y>>2]|0)+-1}else HS(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=hW(m|0,l|0,1,0)|0;v=l;l=M()|0}while((v|0)<0|(v|0)==0&w>>>0<7);m=j}else m=v;if((i|32|0)==112){j=FT(a,g)|0;i=M()|0;if((j|0)==0&(i|0)==-2147483648){if(!g){HS(a,0,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=sW(p|0,o|0,2)|0;l=hW(l|0,M()|0,-32,-1)|0;l=hW(l|0,M()|0,j|0,i|0)|0;i=M()|0;if(!m){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(ES()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0<y>>>0){c[(ES()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hW(l|0,i|0,-1,-1)|0;i=M()|0}while((j|0)>-1);n=h;m=j}else n=h;y=((b|0)<0)<<31>>31;e=iW(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hW(e|0,M()|0,l|0,i|0)|0;e=M()|0;if((e|0)<(y|0)|(e|0)==(y|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=+HT(+GT(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[(ES()|0)>>2]=34;h=+JT(h,l)}while(0);return +h}function ET(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,t=0.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,I=0.0;G=Ec;Ec=Ec+512|0;D=G;E=f+e|0;F=0-E|0;C=a+4|0;B=a+104|0;j=0;a:while(1){switch(b|0){case 46:{z=7;break a}case 48:break;default:{v=0;p=j;j=0;o=0;break a}}b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=JS(a)|0;j=1}if((z|0)==7){b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=JS(a)|0;if((b|0)==48){j=0;b=0;while(1){j=hW(j|0,b|0,-1,-1)|0;o=M()|0;b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=JS(a)|0;if((b|0)==48)b=o;else{v=1;p=1;break}}}else{v=1;p=j;j=0;o=0}}c[D>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){A=D+496|0;w=0;l=0;s=0;x=v;y=p;z=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;j=p;o=n}else break c;else{p=hW(p|0,n|0,1,0)|0;n=M()|0;v=(b|0)!=48;if((l|0)>=125){if(!v)break;c[A>>2]=c[A>>2]|1;break}m=D+(l<<2)|0;if(!w)b=z;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;l=l+(y&1)|0;s=v?p:s;y=1}while(0);b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=JS(a)|0;z=b+-48|0;m=(b|0)==46;if(!(m|z>>>0<10)){v=x;m=y;z=31;break b}}b=w;m=(y|0)!=0;z=39}else{w=0;l=0;s=0;m=p;p=0;n=0;z=31}while(0);do if((z|0)==31){A=(v|0)==0;j=A?p:j;o=A?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;z=39;break}else{b=w;z=41;break}m=FT(a,h)|0;b=M()|0;if((m|0)==0&(b|0)==-2147483648){if(!h){HS(a,0,0);i=0.0;break}if(!(c[B>>2]|0)){m=0;b=0}else{c[C>>2]=(c[C>>2]|0)+-1;m=0;b=0}}j=hW(m|0,b|0,j|0,o|0)|0;b=w;o=M()|0;z=43}while(0);if((z|0)==39)if(c[B>>2]|0){c[C>>2]=(c[C>>2]|0)+-1;if(m)z=43;else z=42}else z=41;if((z|0)==41)if(m)z=43;else z=42;do if((z|0)==42){c[(ES()|0)>>2]=22;HS(a,0,0);i=0.0}else if((z|0)==43){m=c[D>>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;C=((a|0)<0)<<31>>31;if((o|0)>(C|0)|(o|0)==(C|0)&j>>>0>a>>>0){c[(ES()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;C=((a|0)<0)<<31>>31;if((o|0)<(C|0)|(o|0)==(C|0)&j>>>0<a>>>0){c[(ES()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=D+(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[D>>2]|0)>>>0);break}if((j|0)<9){i=+(g|0)*+((c[D>>2]|0)>>>0)/+(c[1024+(8-j<<2)>>2]|0);break}a=e+27+(H(j,-3)|0)|0;b=c[D>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[1024+(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[1024+(8-s<<2)>>2]|0;if(l){p=1e9/(o|0)|0;n=0;m=0;b=0;do{B=D+(b<<2)|0;C=c[B>>2]|0;a=(C>>>0)/(o>>>0)|0;C=C-(H(a,o)|0)|0;a=a+n|0;c[B>>2]=a;n=H(p,C)|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[D+(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){v=(j|0)<18;w=(j|0)==18;x=D+(m<<2)|0;while(1){if(!v){if(!w)break d;if((c[x>>2]|0)>>>0>=9007199){j=18;break d}}n=0;y=l;l=l+127|0;while(1){p=l&127;o=D+(p<<2)|0;l=sW(c[o>>2]|0,0,29)|0;l=hW(l|0,M()|0,n|0,0)|0;n=M()|0;if(n>>>0>0|(n|0)==0&l>>>0>1e9){s=pW(l|0,n|0,1e9,0)|0;a=nW(s|0,M()|0,1e9,0)|0;l=iW(l|0,n|0,a|0,M()|0)|0;M()|0}else s=0;c[o>>2]=l;a=(p|0)==(m|0);o=(p|0)!=(y+127&127|0)|a?y:(l|0)==0?p:y;if(a)break;else{n=s;y=o;l=p+-1|0}}b=b+-29|0;if(!s)l=y;else break}m=m+127&127;l=o+127&127;n=D+((o+126&127)<<2)|0;if((m|0)==(o|0))c[n>>2]=c[n>>2]|c[D+(l<<2)>>2];else l=y;c[D+(m<<2)>>2]=s;j=j+9|0}e:while(1){w=l+1&127;x=D+((l+127&127)<<2)|0;while(1){p=(j|0)==18;v=(j|0)>27?9:1;y=m;while(1){o=0;while(1){m=o+y&127;if((m|0)==(l|0)){z=92;break}m=c[D+(m<<2)>>2]|0;n=c[114004+(o<<2)>>2]|0;if(m>>>0<n>>>0){z=92;break}if(m>>>0>n>>>0)break;if((o+1|0)>>>0<2)o=1;else{z=92;break}}if((z|0)==92?(z=0,p):0)break e;b=v+b|0;if((y|0)==(l|0))y=l;else break}p=(1<<v)+-1|0;s=1e9>>>v;o=0;m=y;n=y;do{B=D+(n<<2)|0;C=c[B>>2]|0;a=(C>>>v)+o|0;c[B>>2]=a;o=H(C&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((w|0)!=(m|0))break;c[x>>2]=c[x>>2]|1}}c[D+(l<<2)>>2]=o;l=w}i=0.0;j=l;m=0;do{n=m+y&127;l=j+1&127;if((n|0)==(j|0)){c[D+(l+-1<<2)>>2]=0;j=l}i=i*1.0e9+ +((c[D+(n<<2)>>2]|0)>>>0);m=m+1|0}while((m|0)!=2);t=+(g|0);k=i*t;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){I=+HT(+GT(1.0,105-m|0),k);q=+IT(k,+GT(1.0,53-m|0));r=I;i=q;q=I+(k-q)}else{r=0.0;i=0.0;q=k}l=y+2&127;if((l|0)!=(j|0)){l=c[D+(l<<2)>>2]|0;do if(l>>>0>=5e8){if((l|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(j|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((l|0)==0?(y+3&127|0)==(j|0):0)break;i=t*.25+i}while(0);if((53-m|0)>1?!(+IT(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-E|0)){E=!(+u(+i)>=9007199254740992.0);b=b+((E^1)&1)|0;i=E?i:i*.5;if((b+50|0)<=(F|0)?!(k!=0.0&(p&((m|0)!=(o|0)|E))):0)break;c[(ES()|0)>>2]=34}while(0);i=+JT(i,b)}while(0);Ec=G;return +i}function FT(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=JS(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=JS(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=JS(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=nW(f|0,h|0,10,0)|0;b=M()|0;e=hW(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=hW(e|0,M()|0,l|0,b|0)|0;h=M()|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=JS(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=JS(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=iW(0,0,f|0,e|0)|0;l=M()|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}L(e|0);return f|0}function GT(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=sW(b+1023|0,0,52)|0;e=M()|0;c[h>>2]=d;c[h+4>>2]=e;return +(a*+g[h>>3])}function HT(a,b){a=+a;b=+b;return +(+SS(a,b))}function IT(a,b){a=+a;b=+b;return +(+KT(a,b))}function JT(a,b){a=+a;b=b|0;return +(+GT(a,b))}function KT(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=rW(j|0,l|0,52)|0;M()|0;e=e&2047;m=rW(n|0,o|0,52)|0;M()|0;m=m&2047;p=l&-2147483648;i=sW(n|0,o|0,1)|0;k=M()|0;a:do if(!((i|0)==0&(k|0)==0)?(f=LT(b)|0,d=(M()|0)&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=sW(j|0,l|0,1)|0;f=M()|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=sW(j|0,l|0,12)|0;f=M()|0;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=sW(d|0,f|0,1)|0;f=M()|0}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;j=sW(j|0,l|0,1-e|0)|0;i=M()|0}else i=l&1048575|1048576;if(!m){f=sW(n|0,o|0,12)|0;k=M()|0;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=sW(f|0,k|0,1)|0;k=M()|0}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=sW(n|0,o|0,1-d|0)|0;m=d;l=M()|0}else l=o&1048575|1048576;f=iW(j|0,i|0,n|0,l|0)|0;d=M()|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=sW(f|0,d|0,1)|0;i=M()|0;e=e+-1|0;f=iW(j|0,i|0,n|0,l|0)|0;d=M()|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=sW(f|0,d|0,1)|0;d=M()|0;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hW(f|0,d|0,0,-1048576)|0;d=M()|0;e=sW(e|0,0,52)|0;d=d|(M()|0);e=o|e}else{e=rW(f|0,d|0,1-e|0)|0;d=M()|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 LT(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;L(c[h+4>>2]|0);return b|0}function MT(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 NT(b,c){b=b|0;c=c|0;b=OT(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function OT(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(MT(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=H(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 PT(a,b){a=a|0;b=b|0;var e=0;a=QT(a)|0;if(((a|0)!=-1?(e=QT(b)|0,(e|0)!=-1):0)?(d[1056+a>>0]|0)<=207:0)a=e<<16|a;else{c[(ES()|0)>>2]=22;a=-1}return a|0}function QT(b){b=b|0;var c=0,d=0,e=0;d=(a[b>>0]|0)==0?1056:b;b=1056;while(1){if(!(RT(d,b)|0)){e=3;break}b=b+((MT(b)|0)+1)|0;c=a[b>>0]|0;if(!(c<<24>>24)){c=a[b+1>>0]|0;if((c&255)>128)c=2;else c=(((128-(c&255)|0)>>>2)*5|0)+2|0;c=b+c|0;b=c;c=a[c>>0]|0}if(!(c<<24>>24)){b=-1;break}}if((e|0)==3){if(a[b>>0]|0)do b=b+((MT(b)|0)+1)|0;while((a[b>>0]|0)!=0);b=b+1-1056|0}return b|0}function RT(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;a:do if(!(d<<24>>24)){d=0;g=9}else while(1){f=a[c>>0]|0;if(!(f<<24>>24)){g=9;break a}e=d;d=d&255;while(1){if(!((d+-48|0)>>>0>10&((d|32)+-97|0)>>>0>26)){d=e;break}b=b+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;break}else{e=d;d=d&255}}if((d|32)<<24>>24!=f<<24>>24){d=1;break a}b=b+1|0;c=c+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;g=9;break}}while(0);if((g|0)==9)d=d<<24>>24!=(a[c>>0]|0)&1;return d|0}function ST(a){a=a|0;return 0}function TT(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=Ec;Ec=Ec+16|0;h=l;j=(g|0)==0?184096: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[(UT()|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[64+(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[(ES()|0)>>2]=84;g=-1}Ec=l;return g|0}function UT(){return tT()|0}function VT(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=Ec;Ec=Ec+16|0;g=f;c[g>>2]=e;e=aT(a,b,d,g)|0;Ec=f;return e|0}function WT(a,b){a=a|0;b=b|0;XT(a,b)|0;return a|0}function XT(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=10}else f=10;while(0);if((f|0)==10){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function YT(a){a=+a;var b=0,d=0,e=0,f=0.0,i=0.0;g[h>>3]=a;b=c[h+4>>2]|0;d=b&2147483647;do if(d>>>0>1083174911){b=(b|0)>-1|(b|0)==-1&(c[h>>2]|0)>>>0>4294967295;if(b&d>>>0>1083179007){a=a*8988465674311579538646525.0e283;break}if(d>>>0<=2146435071)if(!(a<=-1075.0)|b){e=9;break}else{a=0.0;break}else{a=-1.0/a;break}}else if(d>>>0<1016070144)a=a+1.0;else e=9;while(0);if((e|0)==9){i=a+26388279066624.0;g[h>>3]=i;e=(c[h>>2]|0)+128|0;d=e<<1&510;f=+g[5424+(d<<3)>>3];a=a-(i+-26388279066624.0)-+g[5424+((d|1)<<3)>>3];a=+GT(f+f*a*(a*(a*(a*(a*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(e&-256|0)/256|0)}return +a}function ZT(a){a=+a;a=+_T(a);L((+u(a)>=1.0?(a>0.0?~~+I(+t(a/4294967296.0),4294967295.0)>>>0:~~+G((a-+(~~a>>>0))/4294967296.0)>>>0):0)|0);return ~~a>>>0|0}function _T(a){a=+a;var b=0,d=0;g[h>>3]=a;b=c[h+4>>2]|0;d=b&2146435072;if(!(d>>>0>1126170624|(d|0)==1126170624&0>0)){b=(b|0)<0;a=b?a+-4503599627370496.0+4503599627370496.0:a+4503599627370496.0+-4503599627370496.0;if(a==0.0)a=b?-0.0:0.0}return +a}function $T(a){a=+a;var b=0,d=0;g[h>>3]=a;d=c[h+4>>2]|0;b=d&2147483647;c[h>>2]=c[h>>2];c[h+4>>2]=b;a=+g[h>>3];do if(b>>>0>1071748074)if(b>>>0>1077149696){a=1.0-0.0/a;break}else{a=1.0-2.0/(+VS(a*2.0)+2.0);break}else{if(b>>>0>1070618798){a=+VS(a*2.0);a=a/(a+2.0);break}if(b>>>0>1048575){a=+VS(a*-2.0);a=-a/(a+2.0)}}while(0);return +((d|0)<0?-a:a)}function aU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=DS(ma(3,f|0)|0)|0;Ec=e;return d|0}function bU(a,b){a=a|0;b=b|0;var c=0;c=MT(a)|0;return ((cU(a,1,c,b)|0)!=(c|0))<<31>>31|0}function cU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=H(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(gT(e)|0)==0;a=uT(a,f,e)|0;if(!g)hT(e)}else a=uT(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function dU(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Ec;Ec=Ec+16|0;j=l;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(vT(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]&15](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);Ec=l;return f|0}function eU(a){a=a|0;var b=0,c=0;b=(MT(a)|0)+1|0;c=zU(b)|0;if(!c)a=0;else a=wW(c|0,a|0,b|0)|0;return a|0}function fU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;c[f>>2]=d;d=gU(a,b,f)|0;Ec=e;return d|0}function gU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+144|0;f=e;yW(f|0,0,144)|0;c[f+32>>2]=11;c[f+44>>2]=a;c[f+76>>2]=-1;c[f+84>>2]=a;d=iU(f,b,d)|0;Ec=e;return d|0}function hU(a,b,c){a=a|0;b=b|0;c=c|0;return mU(a,b,c)|0}function iU(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,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;Q=Ec;Ec=Ec+288|0;J=Q+264|0;K=Q;L=Q+260|0;N=Q+272|0;if((c[e+76>>2]|0)>-1)P=gT(e)|0;else P=0;j=a[h>>0]|0;a:do if(j<<24>>24){B=e+4|0;C=e+104|0;D=e+120|0;E=e+8|0;F=K+10|0;G=K+33|0;H=K+46|0;I=K+94|0;A=J+4|0;m=h;h=0;k=0;l=j;j=0;u=0;v=0;b:while(1){c:do if(!(KS(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:{z=0;l=m+2|0;break}default:{if($S(o&255)|0?(a[m+2>>0]|0)==36:0){z=jU(i,(d[l>>0]|0)+-48|0)|0;l=m+3|0;break e}y=(c[i>>2]|0)+(4-1)&~(4-1);z=c[y>>2]|0;c[i>>2]=y+4}}while(0);if(!($S(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(($S(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=(z|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:{y=(a[o>>0]|0)==104;n=y?-2:-1;m=y?m+2|0:o;break}case 108:{y=(a[o>>0]|0)==108;n=y?3:1;m=y?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:{y=(r|0)>1?r:1;break}case 91:{y=r;break}case 110:{kU(z,t,u,v);n=u;o=v;break c}default:{HS(e,0,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=JS(e)|0}while((KS(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}x=D;y=n-(c[E>>2]|0)|0;u=hW(c[x>>2]|0,c[x+4>>2]|0,u|0,v|0)|0;u=hW(u|0,M()|0,y|0,((y|0)<0)<<31>>31|0)|0;y=r;v=M()|0}}x=((y|0)<0)<<31>>31;HS(e,y,x);o=c[B>>2]|0;n=c[C>>2]|0;if(o>>>0<n>>>0)c[B>>2]=o+1;else{if((JS(e)|0)<0){O=143;break b}n=c[C>>2]|0}if(n|0)c[B>>2]=(c[B>>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){yW(K|0,-1,257)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;b[F>>1]=0;b[F+2>>1]=0;a[F+4>>0]=0}}else{s=m+1|0;r=(a[s>>0]|0)==94;n=r&1;m=r?m+2|0:s;yW(K|0,n|0,257)|0;a[K>>0]=0;switch(a[m>>0]|0){case 45:{q=(n^1)&255;a[H>>0]=q;m=m+1|0;break}case 93:{q=(n^1)&255;a[I>>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[K+m>>0]=q;n=a[o>>0]|0}while(m>>>0<(n&255)>>>0);m=o}else m=o;break}default:{}}while(0);a[K+((n&255)+1)>>0]=q;m=m+1|0}}while(0);n=w?y+1|0:31;s=(t|0)==1;t=(l|0)!=0;i:do if(s){if(t){j=zU(n<<2)|0;if(!j){k=0;j=0;O=143;break b}}else j=z;c[J>>2]=0;c[A>>2]=0;k=0;j:while(1){q=(j|0)==0;do{k:while(1){o=c[B>>2]|0;if(o>>>0<(c[C>>2]|0)>>>0){c[B>>2]=o+1;o=d[o>>0]|0}else o=JS(e)|0;if(!(a[K+(o+1)>>0]|0))break j;a[N>>0]=o;switch(TT(L,N,1,J)|0){case -1:{k=0;O=143;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(t&(k|0)==(n|0)));n=n<<1|1;o=CU(j,n<<2)|0;if(!o){k=0;O=143;break b}else j=o}if(!(lU(J)|0)){k=0;O=143;break b}else{q=k;k=0;r=j}}else{if(t){k=zU(n)|0;if(!k){k=0;j=0;O=143;break b}j=0;while(1){q=j;do{j=c[B>>2]|0;if(j>>>0<(c[C>>2]|0)>>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=JS(e)|0;if(!(a[K+(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=CU(k,n)|0;if(!o){j=0;O=143;break b}else{j=q;k=o}}}if(!z)while(1){j=c[B>>2]|0;if(j>>>0<(c[C>>2]|0)>>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=JS(e)|0;if(!(a[K+(j+1)>>0]|0)){q=0;k=0;r=0;j=0;break i}}k=0;while(1){j=c[B>>2]|0;if(j>>>0<(c[C>>2]|0)>>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=JS(e)|0;if(!(a[K+(j+1)>>0]|0)){q=k;k=z;r=0;j=0;break i}a[z+k>>0]=j;k=k+1|0}}while(0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}o=D;n=n-(c[E>>2]|0)|0;n=hW(c[o>>2]|0,c[o+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;o=M()|0;if((n|0)==0&(o|0)==0)break b;if(!((n|0)==(y|0)&(o|0)==(x|0)|w^1))break b;do if(t)if(s){c[z>>2]=r;break}else{c[z>>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=+CT(e,t,0);y=D;w=c[y>>2]|0;y=c[y+4>>2]|0;x=(c[B>>2]|0)-(c[E>>2]|0)|0;x=iW(0,0,x|0,((x|0)<0)<<31>>31|0)|0;if((w|0)==(x|0)&(y|0)==(M()|0))break b;if(z)switch(t|0){case 0:{f[z>>2]=p;break f}case 1:{g[z>>3]=p;break f}case 2:{g[z>>3]=p;break f}default:break f}break}default:{}}while(0);do if((O|0)==131){O=0;n=IS(e,n,0,-1,-1)|0;o=M()|0;y=D;w=c[y>>2]|0;y=c[y+4>>2]|0;x=(c[B>>2]|0)-(c[E>>2]|0)|0;x=iW(0,0,x|0,((x|0)<0)<<31>>31|0)|0;if((w|0)==(x|0)&(y|0)==(M()|0))break b;if((z|0)!=0&(s|0)==112){c[z>>2]=n;break}else{kU(z,t,n,o);break}}while(0);o=D;n=(c[B>>2]|0)-(c[E>>2]|0)|0;o=hW(c[o>>2]|0,c[o+4>>2]|0,u|0,v|0)|0;n=hW(o|0,M()|0,n|0,((n|0)<0)<<31>>31|0)|0;h=h+((z|0)!=0&1)|0;o=M()|0;break c}while(0);m=m+(n&1)|0;HS(e,0,0);l=c[B>>2]|0;if(l>>>0<(c[C>>2]|0)>>>0){c[B>>2]=l+1;l=d[l>>0]|0}else l=JS(e)|0;if((l|0)!=(d[m>>0]|0)){O=23;break b}n=hW(u|0,v|0,1,0)|0;o=M()|0}else{while(1){l=m+1|0;if(!(KS(d[l>>0]|0)|0))break;else m=l}HS(e,0,0);do{l=c[B>>2]|0;if(l>>>0<(c[C>>2]|0)>>>0){c[B>>2]=l+1;l=d[l>>0]|0}else l=JS(e)|0}while((KS(l)|0)!=0);if(!(c[C>>2]|0))l=c[B>>2]|0;else{l=(c[B>>2]|0)+-1|0;c[B>>2]=l}o=D;n=l-(c[E>>2]|0)|0;o=hW(c[o>>2]|0,c[o+4>>2]|0,u|0,v|0)|0;n=hW(o|0,M()|0,n|0,((n|0)<0)<<31>>31|0)|0;o=M()|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[C>>2]|0)c[B>>2]=(c[B>>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){AU(k);AU(j)}}else h=0;while(0);if(P|0)hT(e);Ec=Q;return h|0}function jU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=Ec;Ec=Ec+16|0;d=e;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}Ec=e;return a|0}function kU(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 lU(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function mU(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=oT(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0<d>>>0?f:d;wW(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 nU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Ec;Ec=Ec+16|0;f=e;c[f>>2]=d;d=bT(a,b,f)|0;Ec=e;return d|0}function oU(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=NT(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=pU(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=qU(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=rU(b,c)|0;break}else{b=sU(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function pU(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c>>0]|0)<<8|(d[c+1>>0]|0);c=b+1|0;e=a[c>>0]|0;a:do if(!(e<<24>>24))c=0;else{e=(d[b>>0]|0)<<8|e&255;while(1){b=e&65535;if((b|0)==(f|0))break;c=c+1|0;e=a[c>>0]|0;if(!(e<<24>>24)){c=0;break a}else e=b<<8|e&255}c=c+-1|0}while(0);return c|0}function qU(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-2|0)|0}function rU(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);e=b+3|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=b<<8|c&255;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-3|0)|0}function sU(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=Ec;Ec=Ec+1056|0;u=w+1024|0;v=w;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>>2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;f=a[e>>0]|0;a:do if(f<<24>>24){p=0;do{if(!(a[b+p>>0]|0)){f=0;break a}t=f&255;s=u+(t>>>5<<2)|0;c[s>>2]=c[s>>2]|1<<(t&31);p=p+1|0;c[v+(t<<2)>>2]=p;f=a[e+p>>0]|0}while(f<<24>>24!=0);m=p>>>0>1;if(m){k=1;j=1;l=0;i=-1;n=1;while(1){f=a[e+(j+i)>>0]|0;g=a[e+n>>0]|0;do if(f<<24>>24==g<<24>>24)if((j|0)==(k|0)){h=k;f=1;g=k+l|0;break}else{h=k;f=j+1|0;g=l;break}else if((f&255)>(g&255)){h=n-i|0;f=1;g=n;break}else{h=1;f=1;g=l+1|0;i=l;break}while(0);n=f+g|0;if(n>>>0>=p>>>0)break;else{k=h;j=f;l=g}}if(m){m=1;l=1;n=0;g=-1;o=1;while(1){f=a[e+(l+g)>>0]|0;j=a[e+o>>0]|0;do if(f<<24>>24==j<<24>>24)if((l|0)==(m|0)){f=m;j=1;k=m+n|0;break}else{f=m;j=l+1|0;k=n;break}else if((f&255)<(j&255)){f=o-g|0;j=1;k=o;break}else{f=1;j=1;k=n+1|0;g=n;break}while(0);o=j+k|0;if(o>>>0>=p>>>0){t=p;j=25;break}else{m=f;l=j;n=k}}}else{t=p;f=1;g=-1;j=25}}else{h=1;i=-1;t=p;f=1;g=-1;j=25}}else{h=1;i=-1;t=0;f=1;g=-1;j=25}while(0);b:do if((j|0)==25){r=(g+1|0)>>>0>(i+1|0)>>>0;f=r?f:h;r=r?g:i;s=r+1|0;if(!(ZS(e,e+f|0,s)|0)){m=t-f|0;q=m;l=f}else{m=t-r+-1|0;m=(r>>>0>m>>>0?r:m)+1|0;q=0;l=m;m=t-m|0}n=t|63;o=t+-1|0;p=(q|0)!=0;f=b;k=0;g=b;while(1){h=f;do if((g-h|0)>>>0<t>>>0){i=oT(g,0,n)|0;if(i)if((i-h|0)>>>0<t>>>0){f=0;break b}else break;else{i=g+n|0;break}}else i=g;while(0);g=d[f+o>>0]|0;c:do if(!(1<<(g&31)&c[u+(g>>>5<<2)>>2])){h=0;g=t}else{g=t-(c[v+(g<<2)>>2]|0)|0;if(g|0){h=0;g=p&(k|0)!=0&g>>>0<l>>>0?m:g;break}j=s>>>0>k>>>0;g=j?s:k;h=a[e+g>>0]|0;d:do if(h<<24>>24){while(1){if(h<<24>>24!=(a[f+g>>0]|0))break;g=g+1|0;h=a[e+g>>0]|0;if(!(h<<24>>24))break d}h=0;g=g-r|0;break c}while(0);if(!j)break b;g=s;while(1){g=g+-1|0;if((a[e+g>>0]|0)!=(a[f+g>>0]|0)){h=q;g=l;break c}if(g>>>0<=k>>>0)break b}}while(0);f=f+g|0;k=h;g=i}}while(0);Ec=w;return f|0}function tU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=Ec;Ec=Ec+32|0;f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{i=e&255;h=f+(i>>>5<<2)|0;c[h>>2]=c[h>>2]|1<<(i&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{i=e&255;if(!(c[f+(i>>>5<<2)>>2]&1<<(i&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);Ec=g;return d|0}function uU(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?(gT(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=dU(d,b)|0;hT(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=dU(d,b)|0}while(0);return e|0}function vU(a,b){a=a|0;b=b|0;return +(+wU(a,b,1))}function wU(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=Ec;Ec=Ec+144|0;e=g;yW(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;HS(e,0,0);f=+CT(e,d,1);e=e+120|0;d=(c[i>>2]|0)-(c[h>>2]|0)|0;d=hW(c[e>>2]|0,c[e+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;e=M()|0;if(b|0)c[b>>2]=(d|0)==0&(e|0)==0?a:a+d|0;Ec=g;return +f}function xU(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(H(g,d)|0)|0;f=Mc[e&15](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function yU(a){a=a|0;var b=0,d=0;b=Ec;Ec=Ec+32|0;d=b;c[d>>2]=a;c[d+4>>2]=21523;c[d+8>>2]=b+16;a=(DS(oa(54,d|0)|0)|0)==0&1;Ec=b;return a|0}function zU(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=Ec;Ec=Ec+16|0;n=w;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=c[46025]|0;d=m>>>a;if(d&3|0){b=(d&1^1)+a|0;a=184140+(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[46025]=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;Ec=w;return v|0}l=c[46027]|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=184140+(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[46025]=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[46030]|0;b=l>>>3;d=184140+(b<<1<<2)|0;b=1<<b;if(!(a&b)){c[46025]=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[46027]=h;c[46030]=f;v=i;Ec=w;return v|0}g=c[46026]|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[184404+((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=184404+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[46026]=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[46030]|0;b=l>>>3;d=184140+(b<<1<<2)|0;b=1<<b;if(!(b&m)){c[46025]=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[46027]=j;c[46030]=h}v=i+8|0;Ec=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[46026]|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[184404+(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[184404+((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[46027]|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=184404+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<<a);c[46026]=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=184140+(b<<1<<2)|0;a=c[46025]|0;b=1<<b;if(!(a&b)){c[46025]=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=184404+(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[46026]=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;Ec=w;return v|0}else m=k}else m=k}else m=-1;while(0);d=c[46027]|0;if(d>>>0>=m>>>0){b=d-m|0;a=c[46030]|0;if(b>>>0>15){v=a+m|0;c[46030]=v;c[46027]=b;c[v+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=m|3}else{c[46027]=0;c[46030]=0;c[a+4>>2]=d|3;v=a+d+4|0;c[v>>2]=c[v>>2]|1}v=a+8|0;Ec=w;return v|0}h=c[46028]|0;if(h>>>0>m>>>0){t=h-m|0;c[46028]=t;v=c[46031]|0;u=v+m|0;c[46031]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;Ec=w;return v|0}if(!(c[46143]|0)){c[46145]=4096;c[46144]=4096;c[46146]=-1;c[46147]=-1;c[46148]=0;c[46136]=0;c[46143]=n&-16^1431655768;a=4096}else a=c[46145]|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;Ec=w;return v|0}a=c[46135]|0;if(a|0?(l=c[46133]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){v=0;Ec=w;return v|0}d:do if(!(c[46136]&4)){d=c[46031]|0;e:do if(d){e=184548;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=AW(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=AW(0)|0;if((d|0)!=(-1|0)?(b=d,o=c[46144]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=c[46133]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){n=c[46135]|0;if(n|0?p>>>0<=o>>>0|p>>>0>n>>>0:0){b=0;break}a=AW(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[46145]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;q=145;break d}if((AW(a|0)|0)==(-1|0)){AW(d|0)|0;b=0;break}else{h=a+b|0;g=e;q=145;break d}}while(0);c[46136]=c[46136]|4;q=143}else{b=0;q=143}while(0);if(((q|0)==143?k>>>0<2147483647:0)?(t=AW(k|0)|0,p=AW(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[46133]|0)+h|0;c[46133]=b;if(b>>>0>(c[46134]|0)>>>0)c[46134]=b;j=c[46031]|0;f:do if(j){b=184548;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[46028]|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[46031]=u;c[46028]=t;c[u+4>>2]=t|1;c[j+v+4>>2]=40;c[46032]=c[46147];break}if(g>>>0<(c[46029]|0)>>>0)c[46029]=g;d=g+h|0;b=184548;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[46028]|0)+i|0;c[46028]=v;c[46031]=k;c[k+4>>2]=v|1}else{if((c[46030]|0)==(b|0)){v=(c[46027]|0)+i|0;c[46027]=v;c[46030]=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[46025]=c[46025]&~(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=184404+(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[46026]=c[46026]&~(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=184140+(b<<1<<2)|0;a=c[46025]|0;b=1<<b;if(!(a&b)){c[46025]=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=184404+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[46026]|0;d=1<<e;if(!(a&d)){c[46026]=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;Ec=w;return v|0}b=184548;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[46031]=u;c[46028]=t;c[u+4>>2]=t|1;c[g+d+4>>2]=40;c[46032]=c[46147];d=a+4|0;c[d>>2]=27;c[b>>2]=c[46137];c[b+4>>2]=c[46138];c[b+8>>2]=c[46139];c[b+12>>2]=c[46140];c[46137]=g;c[46138]=h;c[46140]=0;c[46139]=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=184140+(b<<1<<2)|0;a=c[46025]|0;b=1<<b;if(!(a&b)){c[46025]=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=184404+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[46026]|0;a=1<<e;if(!(b&a)){c[46026]=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[46029]|0;if((v|0)==0|g>>>0<v>>>0)c[46029]=g;c[46137]=g;c[46138]=h;c[46140]=0;c[46034]=c[46143];c[46033]=-1;c[46038]=184140;c[46037]=184140;c[46040]=184148;c[46039]=184148;c[46042]=184156;c[46041]=184156;c[46044]=184164;c[46043]=184164;c[46046]=184172;c[46045]=184172;c[46048]=184180;c[46047]=184180;c[46050]=184188;c[46049]=184188;c[46052]=184196;c[46051]=184196;c[46054]=184204;c[46053]=184204;c[46056]=184212;c[46055]=184212;c[46058]=184220;c[46057]=184220;c[46060]=184228;c[46059]=184228;c[46062]=184236;c[46061]=184236;c[46064]=184244;c[46063]=184244;c[46066]=184252;c[46065]=184252;c[46068]=184260;c[46067]=184260;c[46070]=184268;c[46069]=184268;c[46072]=184276;c[46071]=184276;c[46074]=184284;c[46073]=184284;c[46076]=184292;c[46075]=184292;c[46078]=184300;c[46077]=184300;c[46080]=184308;c[46079]=184308;c[46082]=184316;c[46081]=184316;c[46084]=184324;c[46083]=184324;c[46086]=184332;c[46085]=184332;c[46088]=184340;c[46087]=184340;c[46090]=184348;c[46089]=184348;c[46092]=184356;c[46091]=184356;c[46094]=184364;c[46093]=184364;c[46096]=184372;c[46095]=184372;c[46098]=184380;c[46097]=184380;c[46100]=184388;c[46099]=184388;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[46031]=u;c[46028]=t;c[u+4>>2]=t|1;c[g+v+4>>2]=40;c[46032]=c[46147]}while(0);b=c[46028]|0;if(b>>>0>m>>>0){t=b-m|0;c[46028]=t;v=c[46031]|0;u=v+m|0;c[46031]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;Ec=w;return v|0}}c[(ES()|0)>>2]=12;v=0;Ec=w;return v|0}function AU(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[46029]|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[46030]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[46027]=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[46025]=c[46025]&~(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=184404+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[46026]=c[46026]&~(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[46031]|0)==(j|0)){j=(c[46028]|0)+b|0;c[46028]=j;c[46031]=i;c[i+4>>2]=j|1;if((i|0)!=(c[46030]|0))return;c[46030]=0;c[46027]=0;return}if((c[46030]|0)==(j|0)){j=(c[46027]|0)+b|0;c[46027]=j;c[46030]=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[46025]=c[46025]&~(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=184404+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[46026]=c[46026]&~(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[46030]|0)){c[46027]=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=184140+(a<<1<<2)|0;b=c[46025]|0;a=1<<a;if(!(b&a)){c[46025]=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=184404+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[46026]|0;d=1<<e;a:do if(!(b&d)){c[46026]=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[46033]|0)+-1|0;c[46033]=j;if(j|0)return;a=184556;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[46033]=-1;return}function BU(a,b){a=a|0;b=b|0;var d=0;if(a){d=H(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=zU(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;yW(a|0,0,d|0)|0;return a|0}function CU(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=zU(b)|0;return b|0}if(b>>>0>4294967231){c[(ES()|0)>>2]=12;b=0;return b|0}d=DU(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=zU(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;wW(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;AU(a);b=d;return b|0}function DU(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[46145]<<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;EU(k,d);return a|0}if((c[46031]|0)==(i|0)){k=(c[46028]|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[46031]=e;c[46028]=d;return a|0}if((c[46030]|0)==(i|0)){e=(c[46027]|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[46027]=d;c[46030]=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[46025]=c[46025]&~(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=184404+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[46026]=c[46026]&~(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;EU(i,k);return a|0}return 0}function EU(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[46030]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[46027]=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[46025]=c[46025]&~(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=184404+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[46026]=c[46026]&~(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[46031]|0)==(i|0)){i=(c[46028]|0)+b|0;c[46028]=i;c[46031]=h;c[h+4>>2]=i|1;if((h|0)!=(c[46030]|0))return;c[46030]=0;c[46027]=0;return}if((c[46030]|0)==(i|0)){i=(c[46027]|0)+b|0;c[46027]=i;c[46030]=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[46025]=c[46025]&~(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=184404+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[46026]=c[46026]&~(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[46030]|0)){c[46027]=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=184140+(b<<1<<2)|0;a=c[46025]|0;b=1<<b;if(!(a&b)){c[46025]=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=184404+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[h+16>>2]=0;a=c[46026]|0;d=1<<e;if(!(a&d)){c[46026]=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 FU(a,b){a=a|0;b=b|0;if(a>>>0<9){b=zU(b)|0;return b|0}else{b=GU(a,b)|0;return b|0}return 0}function GU(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[(ES()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=zU(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;EU(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;EU(f,i)}i=b+8|0;return i|0}function HU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e|0){a=22;return a|0}if((-64-b|0)>>>0<d>>>0){a=12;return a|0}else{b=GU(b>>>0>16?b:16,d)|0;break}}else b=zU(d)|0;while(0);if(!b){a=12;return a|0}c[a>>2]=b;a=0;return a|0}function IU(a,b){a=a|0;b=b|0;return 0}function JU(a){a=a|0;return 0}function KU(a){a=a|0;return 0}function LU(a){a=a|0;return 0}function MU(a,b){a=a|0;b=b|0;if(!a){b=22;return b|0}b=zU(8)|0;c[b>>2]=0;c[b+4>>2]=38177486;c[a>>2]=b;b=0;return b|0}function NU(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 OU(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 PU(a,b){a=a|0;b=b|0;if((c[a>>2]|0)==324508639)return 0;Rc[b&7]();c[a>>2]=324508639;return 0}function QU(){$(184612);return}function RU(){return 184596}function SU(){return 184604}function TU(){return 184608}function UU(){return 184612}function VU(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=zU(b)|0;if(a|0)break;a=eW()|0;if(!a){a=0;break}Rc[a&7]()}return a|0}function WU(a){a=a|0;AU(a);return}function XU(a,b){a=a|0;b=b|0;var d=0,e=0;e=MT(b)|0;d=VU(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=YU(d)|0;wW(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function YU(a){a=a|0;return a+12|0}function ZU(a,b){a=a|0;b=b|0;c[a>>2]=114104;XU(a+4|0,b);return}function _U(a){a=a|0;return 1}function $U(a){a=a|0;Za()}function aV(a){a=a|0;Za()}function bV(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)wW(a|0,b|0,c|0)|0;return a|0}function cV(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function dV(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)yW(a|0,(eV(c)|0)&255|0,b|0)|0;return a|0}function eV(a){a=a|0;return a&255|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=Ec;Ec=Ec+16|0;g=j;h=b+11|0;f=a[h>>0]|0;i=f<<24>>24<0;if(i)f=c[b+4>>2]|0;else f=f&255;do if(f>>>0>=d>>>0)if(i){i=(c[b>>2]|0)+d|0;a[g>>0]=0;cV(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;cV(b+d|0,g);a[h>>0]=d;break}else gV(b,d-f|0,e)|0;while(0);Ec=j;return}function gV(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=Ec;Ec=Ec+16|0;i=k;if(d|0){j=b+11|0;f=a[j>>0]|0;if(f<<24>>24<0){g=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{g=10;h=f&255}if((g-h|0)>>>0<d>>>0){hV(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;dV(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;cV(g+f|0,i)}Ec=k;return b|0}function hV(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)$U(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=VU(j)|0;if(g|0)bV(k,l,g)|0;e=f-h-g|0;if(e|0)bV(k+g+i|0,l+g+h|0,e)|0;if((d|0)!=10)WU(l);c[b>>2]=k;c[b+8>>2]=j|-2147483648;return}function iV(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)aV(b);if(f)b=c[b>>2]|0;return b+d|0}function jV(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=Ec;Ec=Ec+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=kV()|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]=180536;lV(180486,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[14592]|0)+16>>2]&15](58368,e,f)|0){i=c[f>>2]|0;i=Kc[c[(c[i>>2]|0)+8>>2]&31](i)|0;c[g>>2]=180536;c[g+4>>2]=a;c[g+8>>2]=i;lV(180400,g)}else{c[i>>2]=180536;c[i+4>>2]=a;lV(180445,i)}}lV(180524,h)}function kV(){var a=0,b=0;a=Ec;Ec=Ec+16|0;if(!(PU(184616,6)|0)){b=NU(c[46155]|0)|0;Ec=a;return b|0}else lV(180675,a);return 0}function lV(a,b){a=a|0;b=b|0;var d=0;d=Ec;Ec=Ec+16|0;c[d>>2]=b;b=c[28439]|0;bT(b,a,d)|0;uU(10,b)|0;Za()}function mV(a){a=a|0;return}function nV(a){a=a|0;mV(a);WU(a);return}function oV(a){a=a|0;return}function pV(a){a=a|0;return}function qV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Ec;Ec=Ec+64|0;f=h;if(!(uV(a,b,0)|0))if((b|0)!=0?(g=yV(b,58392,58376,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;Vc[c[(c[g>>2]|0)+28>>2]&255](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;Ec=h;return b|0}function rV(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(uV(a,c[b+8>>2]|0,g)|0)xV(0,b,d,e,f);return}function sV(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(!(uV(b,c[d+8>>2]|0,g)|0)){if(uV(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 wV(0,d,e,f);while(0);return}function tV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(uV(a,c[b+8>>2]|0,0)|0)vV(0,b,d,e);return}function uV(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function vV(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 wV(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 xV(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 yV(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=Ec;Ec=Ec+64|0;n=p;m=c[d>>2]|0;o=d+(c[m+-8>>2]|0)|0;m=c[m+-4>>2]|0;c[n>>2]=f;c[n+4>>2]=d;c[n+8>>2]=e;c[n+12>>2]=g;d=n+16|0;e=n+20|0;g=n+24|0;h=n+28|0;i=n+32|0;j=n+40|0;k=d;l=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(uV(m,f,0)|0){c[n+48>>2]=1;Xc[c[(c[m>>2]|0)+20>>2]&63](m,n,o,o,1,0);d=(c[g>>2]|0)==1?o:0}else{Wc[c[(c[m>>2]|0)+24>>2]&127](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);Ec=p;return d|0}function zV(a){a=a|0;mV(a);WU(a);return}function AV(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(uV(a,c[b+8>>2]|0,g)|0)xV(0,b,d,e,f);else{a=c[a+8>>2]|0;Xc[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e,f,g)}return}function BV(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(!(uV(b,c[d+8>>2]|0,g)|0)){if(!(uV(b,c[d>>2]|0,g)|0)){i=c[b+8>>2]|0;Wc[c[(c[i>>2]|0)+24>>2]&127](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;Xc[c[(c[b>>2]|0)+20>>2]&63](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 wV(0,d,e,f);while(0);return}function CV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(uV(a,c[b+8>>2]|0,0)|0)vV(0,b,d,e);else{a=c[a+8>>2]|0;Vc[c[(c[a>>2]|0)+28>>2]&255](a,b,d,e)}return}function DV(a){a=a|0;return}function EV(){var a=0;a=Ec;Ec=Ec+16|0;if(!(MU(184620,36)|0)){Ec=a;return}else lV(180724,a)}function FV(a){a=a|0;var b=0;b=Ec;Ec=Ec+16|0;AU(a);if(!(OU(c[46155]|0,0)|0)){Ec=b;return}else lV(180774,b)}function GV(){var a=0,b=0;a=kV()|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)HV(c[b+12>>2]|0);HV(IV()|0)}function HV(a){a=a|0;var b=0;b=Ec;Ec=Ec+16|0;Rc[a&7]();lV(180827,b)}function IV(){var a=0;a=c[28503]|0;c[28503]=a+0;return a|0}function JV(a){a=a|0;return}function KV(a){a=a|0;c[a>>2]=114104;OV(a+4|0);return}function LV(a){a=a|0;KV(a);WU(a);return}function MV(a){a=a|0;return NV(a+4|0)|0}function NV(a){a=a|0;return c[a>>2]|0}function OV(a){a=a|0;var b=0,d=0;if(_U(a)|0?(b=PV(c[a>>2]|0)|0,d=b+8|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a+-1|0)<0):0)WU(b);return}function PV(a){a=a|0;return a+-12|0}function QV(a){a=a|0;KV(a);WU(a);return}function RV(a){a=a|0;mV(a);WU(a);return}function SV(a,b,c){a=a|0;b=b|0;c=c|0;return uV(a,b,0)|0}function TV(a){a=a|0;mV(a);WU(a);return}function UV(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=Ec;Ec=Ec+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(VV(a,b,0)|0))if(((b|0)!=0?(e=yV(b,58392,58480,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(!(uV(c[a>>2]|0,c[b>>2]|0,0)|0)?!(uV(c[a>>2]|0,58512,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=yV(a,58392,58376,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=yV(f,58392,58376,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;Vc[c[(c[i>>2]|0)+28>>2]&255](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;Ec=j;return a|0}function VV(a,b,c){a=a|0;b=b|0;c=c|0;if(uV(a,b,0)|0)a=1;else a=uV(b,58520,0)|0;return a|0}function WV(a){a=a|0;mV(a);WU(a);return}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,m=0,n=0,o=0,p=0;if(uV(b,c[d+8>>2]|0,h)|0)xV(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;$V(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;$V(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 YV(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(!(uV(b,c[d+8>>2]|0,g)|0)){if(!(uV(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;aW(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;aW(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;aW(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;aW(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;$V(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 wV(0,d,e,f);while(0);return}function ZV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(uV(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;_V(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{_V(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0<g>>>0)}}else vV(0,d,e,f);while(0);return}function _V(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;Vc[c[(c[a>>2]|0)+28>>2]&255](a,b,d+f|0,(g&2|0)==0?2:e);return}function $V(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;Xc[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}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;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;Wc[c[(c[a>>2]|0)+24>>2]&127](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function bW(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function cW(a){a=a|0;return}function dW(a){a=a|0;return}function eW(){var a=0;a=c[46156]|0;c[46156]=a+0;return a|0}function fW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Ec;Ec=Ec+16|0;e=f;c[e>>2]=c[d>>2];a=Nc[c[(c[a>>2]|0)+16>>2]&15](a,b,e)|0;if(a)c[d>>2]=c[e>>2];Ec=f;return a&1|0}function gW(a){a=a|0;if(!a)a=0;else a=(yV(a,58392,58480,0)|0)!=0&1;return a|0}function hW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (L(b+d+(c>>>0<a>>>0|0)>>>0|0),c|0)|0}function iW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (L(d|0),a-c>>>0|0)|0}function jW(a){a=a|0;return (a?31-(J(a^a-1)|0)|0:32)|0}function kW(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 (L(n|0),f)|0}else{if(!g){n=0;f=0;return (L(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (L(n|0),f)|0}}g=(i|0)==0;do if(h){if(!g){g=(J(i|0)|0)-(J(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 (L(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (L(n|0),f)|0}g=h-1|0;if(g&h|0){i=(J(h|0)|0)+33-(J(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 (L(o|0),p)|0}else{p=jW(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (L(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 (L(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 (L(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>>>((jW(i|0)|0)>>>0);return (L(o|0),p)|0}g=(J(i|0)|0)-(J(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 (L(o|0),p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (L(o|0),p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hW(m|0,l|0,-1,-1)|0;d=M()|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;iW(k|0,d|0,e|0,n|0)|0;p=M()|0;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=iW(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=M()|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 (L(o|0),p)|0}function lW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=iW(j^a|0,i^b|0,j|0,i|0)|0;g=M()|0;a=f^j;b=e^i;return iW((kW(h,g,iW(f^c|0,e^d|0,f|0,e|0)|0,M()|0,0)|0)^a|0,(M()|0)^b|0,a|0,b|0)|0}function mW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=H(e,f)|0;d=a>>>16;a=(c>>>16)+(H(e,d)|0)|0;e=b>>>16;b=H(e,f)|0;return (L((a>>>16)+(H(e,d)|0)+(((a&65535)+b|0)>>>16)|0),a+b<<16|c&65535|0)|0}function nW(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=mW(e,f)|0;a=M()|0;return (L((H(b,f)|0)+(H(d,e)|0)+a|a&0|0),c|0|0)|0}function oW(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;f=Ec;Ec=Ec+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=iW(h^a|0,g^b|0,h|0,g|0)|0;b=M()|0;kW(a,b,iW(k^d|0,j^e|0,k|0,j|0)|0,M()|0,i)|0;e=iW(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=M()|0;Ec=f;return (L(d|0),e)|0}function pW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kW(a,b,c,d,0)|0}function qW(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L(b>>c|0);return a>>>c|(b&(1<<c)-1)<<32-c}L(((b|0)<0?-1:0)|0);return b>>c-32|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L(b>>>c|0);return a>>>c|(b&(1<<c)-1)<<32-c}L(0);return b>>>c-32|0}function sW(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L(b<<c|(a&(1<<c)-1<<32-c)>>>32-c|0);return a<<c}L(a<<c-32|0);return 0}function tW(a){a=a|0;return (a&255)<<8|a>>8&255|0}function uW(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function vW(a){a=+a;return a>=0.0?+t(a+.5):+G(a-.5)}function wW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192){ib(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 xW(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 wW(b,c,d)|0;return b|0}function yW(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 zW(a){a=a|0;return 0}function AW(a){a=a|0;var b=0,d=0,e=0;e=fb()|0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){Fb(b|0)|0;ia(12);return -1}if((b|0)>(e|0))if(!(jb(b|0)|0)){ia(12);return -1}c[i>>2]=b;return d|0}function BW(a,b){a=a|0;b=+b;return +Hc[a&15](+b)}function CW(a,b,c){a=a|0;b=b|0;c=+c;return +Ic[a&0](b|0,+c)}function DW(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return +Jc[a&0](b|0,+c,+d)}function EW(a,b){a=a|0;b=b|0;return Kc[a&31](b|0)|0}function FW(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 GW(a,b,c){a=a|0;b=b|0;c=c|0;return Mc[a&15](b|0,c|0)|0}function HW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nc[a&15](b|0,c|0,d|0)|0}function IW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Oc[a&3](b|0,c|0,d|0,e|0)|0}function JW(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 Pc[a&63](b|0,c|0,d|0,e|0,f|0)|0}function KW(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 Qc[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function LW(a){a=a|0;Rc[a&7]()}function MW(a,b){a=a|0;b=b|0;Sc[a&63](b|0)}function NW(a,b,c){a=a|0;b=b|0;c=c|0;Tc[a&255](b|0,c|0)}function OW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Uc[a&1023](b|0,c|0,d|0)}function PW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Vc[a&255](b|0,c|0,d|0,e|0)}function QW(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Wc[a&127](b|0,c|0,d|0,e|0,f|0)}function RW(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;Xc[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function SW(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;Yc[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function TW(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;Zc[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function UW(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;_c[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function VW(a){a=+a;K(0);return 0.0}function WW(a){a=+a;return +Bb(+a)}function XW(a){a=+a;return +cb(+a)}function YW(a){a=+a;return +Db(+a)}function ZW(a){a=+a;return +ab(+a)}function _W(a){a=+a;return +$a(+a)}function $W(a){a=+a;return +_a(+a)}function aX(a){a=+a;return +kb(+a)}function bX(a){a=+a;return +tb(+a)}function cX(a){a=+a;return +lb(+a)}function dX(a,b){a=a|0;b=+b;K(1);return 0.0}function eX(a,b,c){a=a|0;b=+b;c=+c;K(2);return 0.0}function fX(a){a=a|0;K(3);return 0}function gX(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;K(4);return 0}function hX(a,b){a=a|0;b=b|0;K(5);return 0}function iX(a,b,c){a=a|0;b=b|0;c=c|0;K(6);return 0}function jX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;K(7);return 0}function kX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;K(8);return 0}function lX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;K(9);return 0}function mX(){K(10)}function nX(){ea()}function oX(a){a=a|0;K(11)}function pX(a,b){a=a|0;b=b|0;K(12)}function qX(a,b,c){a=a|0;b=b|0;c=c|0;K(13)}function rX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;K(14)}function sX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;K(15)}function tX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;K(16)}function uX(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;K(17)}function vX(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;K(18)}function wX(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;K(19)}
// EMSCRIPTEN_END_FUNCS
var Hc=[VW,US,TS,$T,WW,XW,YW,ZW,_W,$W,aX,bX,cX,HP,VW,VW];var Ic=[dX];var Jc=[eX];var Kc=[fX,Pe,Pf,Rf,Tf,_g,XM,$Q,bR,cR,oR,AS,MV,ce,le,ne,oe,wg,Bg,Al,mQ,kQ,zQ,IQ,MQ,NR,fX,fX,fX,fX,fX,fX];var Lc=[gX,cT];var Mc=[hX,Qf,LO,aR,nR,he,je,Nf,hj,NL,QL,dQ,hX,hX,hX,hX];var Nc=[iX,_M,uN,BS,yT,qV,SV,UV,re,Ne,ag,hU,iX,iX,iX,iX];var Oc=[jX,Sf,CS,jX];var Pc=[kX,nf,Bl,Cl,Dl,El,Fl,Gl,Hl,Il,Jl,Kl,Ll,Ml,Nl,Ol,Pl,Ql,Rl,Sl,Tl,Ul,Vl,Wl,Xl,Yl,Zl,_l,$l,am,bm,cm,dm,em,fm,gm,hm,im,jm,km,lm,_Q,RR,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX,kX];var Qc=[lX,Qe,YM,sN,ZQ,QR,lX,lX];var Rc=[mX,nX,jV,QM,EQ,FQ,EV,mX];var Sc=[oX,Bd,Ed,Fd,se,te,ve,ye,ze,Ce,De,Vd,Ie,Je,Zd,Re,Uf,ZM,tN,mV,nV,oV,pV,zV,KV,LV,QV,RV,TV,WV,de,id,jd,me,qe,OR,FV,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX,oX];var Tc=[pX,Ee,Fe,Ld,Ge,He,Ke,Le,gd,hd,ge,kd,ld,md,nd,od,pd,qd,rd,sd,td,ud,pe,mg,pg,zm,GI,FI,oJ,nJ,YJ,XJ,GK,FK,oL,nL,Kn,Jn,Mn,Ln,On,Nn,Pn,Qn,Rn,Sn,Tn,Un,Vn,Wn,Xn,Yn,Zn,_n,$n,ao,bo,co,eo,jo,io,ko,lo,mo,no,oo,to,uo,vo,fp,ep,hp,gp,jp,ip,kp,lp,mp,np,op,pp,qp,rp,sp,tp,up,vp,wp,Bp,Ap,Cp,Dp,Ep,Fp,Ip,Jp,Kp,uq,tq,wq,vq,yq,xq,zq,Aq,Bq,Cq,Dq,Eq,Fq,Gq,Hq,Iq,Jq,Kq,Lq,Qq,Pq,Rq,Sq,Tq,Uq,Xq,Yq,Zq,Jr,Ir,Lr,Kr,Nr,Mr,Or,Pr,Qr,Rr,Sr,Tr,Ur,Vr,Wr,Xr,Yr,Zr,_r,ds,cs,es,fs,gs,hs,ks,ls,ms,Ys,Xs,_s,Zs,at,$s,bt,ct,dt,et,ft,gt,ht,it,jt,kt,lt,mt,nt,st,rt,tt,ut,vt,wt,zt,At,Bt,ho,go,fo,so,ro,qo,po,zp,yp,xp,Hp,Gp,Oq,Nq,Mq,Wq,Vq,bs,as,$r,js,is,qt,pt,ot,yt,xt,hO,WO,VO,dT,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX,pX];var Uc=[qX,ee,fe,ie,ke,sI,rI,uI,tI,vI,wI,xI,yI,EI,dJ,eJ,fJ,gJ,mJ,NJ,OJ,PJ,QJ,WJ,vK,wK,xK,yK,EK,dL,eL,fL,gL,mL,eu,ju,ou,tu,yu,Du,Iu,Nu,Su,Xu,av,fv,kv,pv,uv,zv,Ev,Jv,Ov,Tv,Yv,bw,gw,lw,qw,vw,Aw,Fw,Kw,Pw,Uw,Zw,cx,hx,mx,rx,wx,Bx,Gx,Lx,Qx,Vx,_x,dy,iy,ny,sy,xy,Cy,Hy,My,Ry,Wy,$y,ez,jz,oz,tz,yz,Dz,Iz,Nz,Sz,Xz,aA,fA,kA,pA,uA,zA,EA,JA,OA,TA,YA,bB,gB,lB,qB,vB,AB,FB,KB,PB,UB,ZB,cC,hC,mC,rC,wC,BC,GC,LC,QC,VC,_C,dD,iD,nD,sD,xD,CD,HD,MD,RD,WD,$D,eE,jE,oE,tE,du,iu,nu,su,xu,Cu,Hu,Mu,Ru,Wu,$u,ev,jv,ov,tv,yv,Dv,Iv,Nv,Sv,Xv,aw,fw,kw,pw,uw,zw,Ew,Jw,Ow,Tw,Yw,bx,gx,lx,qx,vx,Ax,Fx,Kx,Px,Ux,Zx,cy,hy,my,ry,wy,By,Gy,Ly,Qy,Vy,_y,dz,iz,nz,sz,xz,Cz,Hz,Mz,Rz,Wz,$z,eA,jA,oA,tA,yA,DA,IA,NA,SA,XA,aB,fB,kB,pB,uB,zB,EB,JB,OB,TB,YB,bC,gC,lC,qC,vC,AC,FC,KC,PC,UC,ZC,cD,hD,mD,rD,wD,BD,GD,LD,QD,VD,_D,dE,iE,nE,sE,cu,hu,mu,ru,wu,Bu,Gu,Lu,Qu,Vu,_u,dv,iv,nv,sv,xv,Cv,Hv,Mv,Rv,Wv,$v,ew,jw,ow,tw,yw,Dw,Iw,Nw,Sw,Xw,ax,fx,kx,px,ux,zx,Ex,Jx,Ox,Tx,Yx,by,gy,ly,qy,vy,Ay,Fy,Ky,Py,Uy,Zy,cz,hz,mz,rz,wz,Bz,Gz,Lz,Qz,Vz,_z,dA,iA,nA,sA,xA,CA,HA,MA,RA,WA,$A,eB,jB,oB,tB,yB,DB,IB,NB,SB,XB,aC,fC,kC,pC,uC,zC,EC,JC,OC,TC,YC,bD,gD,lD,qD,vD,AD,FD,KD,PD,UD,ZD,cE,hE,mE,rE,bu,gu,lu,qu,vu,Au,Fu,Ku,Pu,Uu,Zu,cv,hv,mv,rv,wv,Bv,Gv,Lv,Qv,Vv,_v,dw,iw,nw,sw,xw,Cw,Hw,Mw,Rw,Ww,$w,ex,jx,ox,tx,yx,Dx,Ix,Nx,Sx,Xx,ay,fy,ky,py,uy,zy,Ey,Jy,Oy,Ty,Yy,bz,gz,lz,qz,vz,Az,Fz,Kz,Pz,Uz,Zz,cA,hA,mA,rA,wA,BA,GA,LA,QA,VA,_A,dB,iB,nB,sB,xB,CB,HB,MB,RB,WB,$B,eC,jC,oC,tC,yC,DC,IC,NC,SC,XC,aD,fD,kD,pD,uD,zD,ED,JD,OD,TD,YD,bE,gE,lE,qE,au,fu,ku,pu,uu,zu,Eu,Ju,Ou,Tu,Yu,bv,gv,lv,qv,vv,Av,Fv,Kv,Pv,Uv,Zv,cw,hw,mw,rw,ww,Bw,Gw,Lw,Qw,Vw,_w,dx,ix,nx,sx,xx,Cx,Hx,Mx,Rx,Wx,$x,ey,jy,oy,ty,yy,Dy,Iy,Ny,Sy,Xy,az,fz,kz,pz,uz,zz,Ez,Jz,Oz,Tz,Yz,bA,gA,lA,qA,vA,AA,FA,KA,PA,UA,ZA,cB,hB,mB,rB,wB,BB,GB,LB,QB,VB,_B,dC,iC,nC,sC,xC,CC,HC,MC,RC,WC,$C,eD,jD,oD,tD,yD,DD,ID,ND,SD,XD,aE,fE,kE,pE,bn,dn,cn,en,fn,gn,jn,hn,kn,ln,mn,nn,on,Zm,$m,qn,rn,sn,pn,tn,un,vn,wo,xo,yo,zo,Io,Jo,Ko,Lo,Mo,No,Oo,Po,Qo,Ro,Go,Ho,So,To,Lp,Mp,Np,Op,Xp,Yp,Zp,_p,$p,aq,bq,cq,dq,eq,Vp,Wp,fq,gq,_q,$q,ar,br,kr,lr,mr,nr,or,pr,qr,rr,sr,tr,ir,jr,ur,vr,ns,os,ps,qs,zs,As,Bs,Cs,Ds,Es,Fs,Gs,Hs,Is,xs,ys,Js,Ks,Ct,Dt,Et,Ft,_m,an,wn,Wm,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX];var Vc=[rX,tV,CV,ZV,Ye,SI,TI,UI,_I,aJ,$I,cJ,bJ,AJ,BJ,CJ,IJ,KJ,JJ,MJ,LJ,iK,jK,kK,qK,sK,rK,uK,tK,SK,TK,UK,_K,aL,$K,cL,bL,AL,BL,CL,IL,KL,JL,ML,LL,xn,yn,zn,An,Bn,Cn,Dn,En,Fn,Gn,Hn,In,Do,Co,Fo,Eo,Uo,Vo,Wo,Xo,Yo,Zo,_o,$o,ap,bp,cp,dp,Sp,Rp,Up,Tp,hq,iq,jq,kq,lq,mq,nq,oq,pq,qq,rq,sq,fr,er,hr,gr,wr,xr,yr,zr,Ar,Br,Cr,Dr,Er,Fr,Gr,Hr,us,ts,ws,vs,Ls,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ts,Us,Vs,Ws,Jt,It,Lt,Kt,Qt,Vt,Pt,Ut,Ot,Tt,Nt,St,Mt,Rt,jS,iS,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX,rX];var Wc=[sX,sV,BV,YV,zI,AI,CI,BI,DI,PI,QI,RI,VI,XI,WI,ZI,YI,hJ,iJ,kJ,jJ,lJ,xJ,yJ,zJ,DJ,FJ,EJ,HJ,GJ,RJ,SJ,UJ,TJ,VJ,fK,gK,hK,lK,nK,mK,pK,oK,zK,AK,CK,BK,DK,PK,QK,RK,VK,XK,WK,ZK,YK,hL,iL,kL,jL,lL,xL,yL,zL,DL,FL,EL,HL,GL,Ao,Bo,Pp,Qp,cr,dr,rs,ss,Gt,Ht,PR,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX,sX];var Xc=[tX,rV,AV,XV,Sg,HI,II,JI,KI,pJ,qJ,rJ,sJ,ZJ,_J,$J,aK,HK,IK,JK,KK,pL,qL,rL,sL,cI,bI,eI,dI,gI,fI,iI,hI,kI,jI,mI,lI,oI,nI,qI,pI,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX,tX];var Yc=[uX,LI,MI,NI,OI,tJ,uJ,vJ,wJ,bK,cK,dK,eK,LK,MK,NK,OK,tL,uL,vL,wL,uX,uX,uX,uX,uX,uX,uX,uX,uX,uX,uX];var Zc=[vX,Vm];var _c=[wX,Ym,Xm,wX];return{___cxa_can_catch:fW,___cxa_is_pointer_type:gW,___divdi3:lW,___errno_location:ES,___getTypeName:zS,___muldi3:nW,___remdi3:oW,___udivdi3:pW,__get_daylight:SU,__get_environ:UU,__get_timezone:TU,__get_tzname:RU,_bitshift64Ashr:qW,_bitshift64Lshr:rW,_bitshift64Shl:sW,_free:AU,_i64Add:hW,_i64Subtract:iW,_llvm_bswap_i16:tW,_llvm_bswap_i32:uW,_llvm_round_f64:vW,_main:ed,_malloc:zU,_memalign:FU,_memcpy:wW,_memmove:xW,_memset:yW,_pthread_cond_broadcast:zW,_sbrk:AW,_strlen:MT,dynCall_dd:BW,dynCall_did:CW,dynCall_didd:DW,dynCall_ii:EW,dynCall_iidiiii:FW,dynCall_iii:GW,dynCall_iiii:HW,dynCall_iiiii:IW,dynCall_iiiiii:JW,dynCall_iiiiiii:KW,dynCall_v:LW,dynCall_vi:MW,dynCall_vii:NW,dynCall_viii:OW,dynCall_viiii:PW,dynCall_viiiii:QW,dynCall_viiiiii:RW,dynCall_viiiiiiii:SW,dynCall_viiiiiiiii:TW,dynCall_viiiiiiiiii:UW,establishStackSpace:dd,globalCtors:$c,stackAlloc:ad,stackRestore:cd,stackSave:bd}})
// 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 ___divdi3=Module["___divdi3"]=asm["___divdi3"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___remdi3=Module["___remdi3"]=asm["___remdi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var __get_daylight=Module["__get_daylight"]=asm["__get_daylight"];var __get_environ=Module["__get_environ"]=asm["__get_environ"];var __get_timezone=Module["__get_timezone"]=asm["__get_timezone"];var __get_tzname=Module["__get_tzname"]=asm["__get_tzname"];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 _llvm_bswap_i16=Module["_llvm_bswap_i16"]=asm["_llvm_bswap_i16"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _llvm_round_f64=Module["_llvm_round_f64"]=asm["_llvm_round_f64"];var _main=Module["_main"]=asm["_main"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memalign=Module["_memalign"]=asm["_memalign"];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_dd=Module["dynCall_dd"]=asm["dynCall_dd"];var dynCall_did=Module["dynCall_did"]=asm["dynCall_did"];var dynCall_didd=Module["dynCall_didd"]=asm["dynCall_didd"];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_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];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_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"];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();