-
Notifications
You must be signed in to change notification settings - Fork 956
/
draco_encoder.js
35 lines (29 loc) · 859 KB
/
draco_encoder.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
var DracoEncoderModule = (() => {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(DracoEncoderModule = {}) {
var Module=typeof DracoEncoderModule!="undefined"?DracoEncoderModule:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;err("exiting due to exception: "+toLog)}if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=(status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{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){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}}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";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)}}setWindowTitle=title=>document.title=title}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=(
// EMSCRIPTEN_START_ASM
function instantiate(ma){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a<j;a+=4){g=f[o.charCodeAt(a+1)];h=f[o.charCodeAt(a+2)];m[i++]=f[o.charCodeAt(a)]<<2|g>>4;if(i<k)m[i++]=g<<4|h>>2;if(i<k)m[i++]=h<<6|f[o.charCodeAt(a+3)]}}function p(q){l(e,1028,"YAQAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAE41ZHJhY28yOEF0dHJpYnV0ZU9jdGFoZWRyb25UcmFuc2Zvcm1FAAD4SAAAOAQAAHgIAABjb21wcmVzc19jb25uZWN0aXZpdHkAaW5maW5pdHkALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABfX25leHRfcHJpbWUgb3ZlcmZsb3cAc3RvcmVfbnVtYmVyX29mX2VuY29kZWRfcG9pbnRzAHF1YW50aXphdGlvbl9iaXRzAHNwbGl0X21lc2hfb25fc2VhbXMAc3RvcmVfbnVtYmVyX29mX2VuY29kZWRfZmFjZXMAdmVjdG9yAHByZWRpY3RpdmVfZWRnZWJyZWFrZXIAc3RhbmRhcmRfZWRnZWJyZWFrZXIAc3RkOjpleGNlcHRpb24AdXNlX2J1aWx0X2luX2F0dHJpYnV0ZV9jb21wcmVzc2lvbgBxdWFudGl6YXRpb25fb3JpZ2luAG5hbgBzeW1ib2xfZW5jb2RpbmdfY29tcHJlc3Npb25fbGV2ZWwAYmFkX2FycmF5X25ld19sZW5ndGgAYmFzaWNfc3RyaW5nAGluZgAlZgBwcmVkaWN0aW9uX3NjaGVtZQBxdWFudGl6YXRpb25fcmFuZ2UAZWRnZWJyZWFrZXJfbWV0aG9kAHN5bWJvbF9lbmNvZGluZ19tZXRob2QAZW5jb2Rpbmdfc3BlZWQAZGVjb2Rpbmdfc3BlZWQAc3RkOjpiYWRfYWxsb2MARFJBQ08ATkFOAElORgBJbnZhbGlkIGlucHV0IGdlb21ldHJ5LgBGYWlsZWQgdG8gZW5jb2RlIG1lc2ggY29tcG9uZW50LgBGYWlsZWQgdG8gZW5jb2RlIHBvaW50IGF0dHJpYnV0ZXMuAEZhaWxlZCB0byBwcm9jZXNzIG1lc2ggaG9sZXMuAEZhaWxlZCB0byBpbml0aWFsaXplIGVuY29kZXIuAEFsbCB0cmlhbmdsZXMgYXJlIGRlZ2VuZXJhdGUuAEludmFsaWQgZW5jb2RpbmcgbWV0aG9kLgBGYWlsZWQgdG8gZW5jb2RlIG1ldGFkYXRhLgBGYWlsZWQgdG8gZW5jb2RlIHNwbGl0IGRhdGEuAEZhaWxlZCB0byBlbmNvZGUgaW50ZXJuYWwgZGF0YS4ARmFpbGVkIHRvIGluaXRpYWxpemUgYXR0cmlidXRlIGRhdGEuAChudWxsKQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQAgAAAAAAAAAEwIAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAALAAAAGAAAABkAAABONWRyYWNvMzBBdHRyaWJ1dGVRdWFudGl6YXRpb25UcmFuc2Zvcm1FAAAAAPhIAAAgCAAAeAgAAE41ZHJhY28xOEF0dHJpYnV0ZVRyYW5zZm9ybUUAAAAA0EgAAFgIAAD/////AAAAANwIAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAAB4AAAAlAAAATjVkcmFjbzE3QXR0cmlidXRlc0VuY29kZXJFANBIAADACAAAAAAAAEQJAAAmAAAAJwAAABwAAAAdAAAAKAAAAB8AAAAgAAAAIQAAACIAAAAjAAAAKQAAACoAAAArAAAATjVkcmFjbzIzS2RUcmVlQXR0cmlidXRlc0VuY29kZXJFAAAA+EgAACAJAADcCAAAAAAAALAJAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAABONWRyYWNvMjZTZXF1ZW50aWFsQXR0cmlidXRlRW5jb2RlckUAAAAA0EgAAIgJAAAAAAAALAoAADgAAAA5AAAAOgAAADsAAAA8AAAAPQAAAD4AAAA/AAAAQAAAAEEAAABCAAAAQwAAAEQAAABFAAAARgAAAE41ZHJhY28zN1NlcXVlbnRpYWxBdHRyaWJ1dGVFbmNvZGVyc0NvbnRyb2xsZXJFAPhIAAD8CQAA3AgAAAAAAACkCgAARwAAAEgAAABJAAAALwAAAEoAAAAxAAAAMgAAADMAAABLAAAANQAAADYAAABMAAAATQAAAE4AAABONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZUVuY29kZXJFAPhIAAB4CgAAsAkAAP////8AAAAANA0AAE8AAABQAAAAUQAAAFIAAABTAAAAVAAAAFUAAABWAAAAVwAAAFgAAABZAAAAWgAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVFRQBONWRyYWNvMzdQcmVkaWN0aW9uU2NoZW1lVHlwZWRFbmNvZGVySW50ZXJmYWNlSWlpRUUATjVkcmFjbzMyUHJlZGljdGlvblNjaGVtZUVuY29kZXJJbnRlcmZhY2VFAE41ZHJhY28yNVByZWRpY3Rpb25TY2hlbWVJbnRlcmZhY2VFANBIAADYDAAA+EgAAK0MAAD8DAAA+EgAAHkMAAAEDQAA+EgAACUMAAAQDQAA+EgAAI8LAAAcDQAA+EgAAOwKAAAoDQAAAAAAACgNAABPAAAAWwAAAB4AAABSAAAAHgAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAB4AAAAAAAAAHA0AAE8AAABcAAAAHgAAAFIAAAAeAAAAVAAAAFUAAABWAAAAVwAAAFgAAABZAAAAHgAAAAAAAACcDgAAXQAAAF4AAABfAAAAUgAAAGAAAABUAAAAVQAAAFYAAABXAAAAWAAAAGEAAABiAAAATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAA+EgAAOgNAAAoDQAAAAAAAIgPAABjAAAAZAAAAGUAAABSAAAAZgAAAGcAAABoAAAAaQAAAFcAAABYAAAAagAAAGsAAABONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAD4SAAA4A4AACgNAAAAAAAAdBAAAGwAAABtAAAAbgAAAFIAAABvAAAAcAAAAHEAAAByAAAAVwAAAFgAAABzAAAAdAAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAPhIAADMDwAAKA0AAAAAAAD8EQAAdQAAAHYAAAB3AAAAeAAAAHkAAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAANBIAABHEQAA+EgAAJwQAAD0EQAAAAAAAPQRAAB1AAAAegAAAB4AAAB4AAAAHgAAAAAAAACIEwAATwAAAHsAAAB8AAAAUgAAAH0AAABUAAAAVQAAAFYAAABXAAAAWAAAAFkAAAB+AAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAA+EgAAPISAAAcDQAA+EgAAFwSAAB8EwAAAAAAAHwTAABPAAAAfwAAAB4AAABSAAAAHgAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAB4AAAAAAAAArBQAAIAAAACBAAAAggAAAFIAAACDAAAAVAAAAFUAAABWAAAAVwAAAFgAAACEAAAAhQAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAPhIAAAEFAAAfBMAAAAAAACMFQAAhgAAAIcAAACIAAAAUgAAAIkAAACKAAAAiwAAAIwAAABXAAAAWAAAAI0AAACOAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAA+EgAAPAUAAB8EwAAAAAAAGgWAACPAAAAkAAAAJEAAABSAAAAkgAAAJMAAACUAAAAlQAAAFcAAABYAAAAlgAAAJcAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbEVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAPhIAADQFQAAfBMAAAAAAADUFwAAmAAAAJkAAACaAAAAmwAAAJwAAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUA0EgAAC4XAAD4SAAAkBYAAMwXAAAAAAAAzBcAAJgAAACdAAAAHgAAAJsAAAAeAAAAAAAAAJAYAABPAAAAngAAAJ8AAABSAAAAoAAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAKEAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAAAAAPhIAAA0GAAAHA0AAAAAAAAIGQAAogAAAKMAAACkAAAALwAAAEoAAAAxAAAApQAAAKYAAACnAAAANQAAADYAAABMAAAAqAAAAKkAAABONWRyYWNvMzJTZXF1ZW50aWFsTm9ybWFsQXR0cmlidXRlRW5jb2RlckUAAPhIAADcGAAApAoAAAAAAAA8GwAAqgAAAKsAAACsAAAArQAAAK4AAACvAAAAsAAAALEAAACyAAAAswAAALQAAAC1AAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAAPhIAAC1GgAAEA0AAPhIAAAHGgAAJBsAAPhIAABMGQAAMBsAAAAAAABMHAAAtgAAALcAAAC4AAAArQAAALkAAACvAAAAsAAAALEAAACyAAAAswAAALoAAAC7AAAATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAA+EgAAIAbAAAwGwAAAAAAAFAdAAC8AAAAvQAAAL4AAACtAAAAvwAAAMAAAADBAAAAwgAAALIAAACzAAAAwwAAAMQAAABONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAD4SAAAkBwAADAbAAAAAAAAVB4AAMUAAADGAAAAxwAAAK0AAADIAAAAyQAAAMoAAADLAAAAsgAAALMAAADMAAAAzQAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAPhIAACUHQAAMBsAAAAAAAAMIAAAzgAAAM8AAADQAAAA0QAAANIAAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAANBIAAA/HwAA+EgAAHweAAAEIAAAAAAAAKwhAACqAAAA0wAAANQAAACtAAAA1QAAAK8AAACwAAAAsQAAALIAAACzAAAAtAAAANYAAABONWRyYWNvNDBNZXNoUHJlZGljdGlvblNjaGVtZVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAD4SAAA/iAAACQbAAD4SAAAUCAAAKAhAAAAAAAAsCIAANcAAADYAAAA2QAAAK0AAADaAAAArwAAALAAAACxAAAAsgAAALMAAADbAAAA3AAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAPhIAADwIQAAoCEAAAAAAACoIwAA3QAAAN4AAADfAAAArQAAAOAAAADhAAAA4gAAAOMAAACyAAAAswAAAOQAAADlAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAA+EgAAPQiAACgIQAAAAAAAJwkAADmAAAA5wAAAOgAAACtAAAA6QAAAOoAAADrAAAA7AAAALIAAACzAAAA7QAAAO4AAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbEVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAPhIAADsIwAAoCEAAAAAAAA4JgAA7wAAAPAAAADxAAAA8gAAAPMAAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUA0EgAAHolAAD4SAAAxCQAADAmAAAAAAAA8CYAAKoAAAD0AAAA9QAAAK0AAAD2AAAArwAAALAAAACxAAAAsgAAALMAAAC0AAAA9wAAAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFRUUAAAAA+EgAAHwmAAAkGwAAAAAAAHAnAAD4AAAA+QAAAPoAAAAvAAAASgAAADEAAAD7AAAA/AAAAP0AAAA1AAAANgAAAEwAAABNAAAA/gAAAE41ZHJhY28zOFNlcXVlbnRpYWxRdWFudGl6YXRpb25BdHRyaWJ1dGVFbmNvZGVyRQAAAAD4SAAAPCcAAKQKAAAAAAAA/CcAAP8AAAAAAQAAAQEAAAIBAABONWRyYWNvN0VuY29kZXJFAE41ZHJhY28xMUVuY29kZXJCYXNlSU5TXzE4RW5jb2Rlck9wdGlvbnNCYXNlSU5TXzE3R2VvbWV0cnlBdHRyaWJ1dGU0VHlwZUVFRUVFAADQSAAApScAAPhIAACUJwAA9CcAAAAAAABMKAAAAwEAAAQBAABONWRyYWNvMTFFbmNvZGVyQmFzZUlOU18xOEVuY29kZXJPcHRpb25zQmFzZUlpRUVFRQAA0EgAABgoAAAAAAAA9CcAAP8AAAAFAQ==");l(e,10348,"kCgAAAMBAAAGAQAATjVkcmFjbzEzRXhwZXJ0RW5jb2RlckUA+EgAAHgoAABMKAAAAAAAABApAAAHAQAACAEAAAkBAAAKAQAACwEAAAwBAAANAQAADgEAAA8BAAAQAQAAEQEAABIBAAATAQAAFAEAABUBAAAWAQAAFwEAABgBAABONWRyYWNvMjJNZXNoRWRnZWJyZWFrZXJFbmNvZGVyRQAAAAD4SAAA7CgAAOQvAAAAAAAACCoAABkBAAAaAQAAGwEAABwBAAAdAQAAHgEAAB8BAAAgAQAAIQEAACIBAAAjAQAAAAAAAGgqAAAkAQAAJQEAACYBAAAnAQAAKAEAACkBAAAqAQAAKwEAACwBAAAtAQAALgEAAE41ZHJhY28yNk1lc2hFZGdlYnJlYWtlckVuY29kZXJJbXBsSU5TXzMxTWVzaEVkZ2VicmVha2VyVHJhdmVyc2FsRW5jb2RlckVFRQBONWRyYWNvMzVNZXNoRWRnZWJyZWFrZXJFbmNvZGVySW1wbEludGVyZmFjZUUAAADQSAAA0CkAAPhIAACEKQAAACoAAE41ZHJhY28yNk1lc2hFZGdlYnJlYWtlckVuY29kZXJJbXBsSU5TXzM4TWVzaEVkZ2VicmVha2VyVHJhdmVyc2FsVmFsZW5jZUVuY29kZXJFRUUAAPhIAAAUKgAAACoAAAAAAABkKwAALwEAADABAAAxAQAATjVkcmFjbzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAE41ZHJhY28xM1RyYXZlcnNlckJhc2VJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQDQSAAA9SoAAPhIAACIKgAAXCsAAAAAAABcKwAAMgEAADMBAAAxAQ==");l(e,11152,"AQAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAQAAAAUAAAACAAAABQAAAAMAAAAFAAAABAAAAAAAAACULAAANAEAADUBAAA2AQAANwEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAE41ZHJhY28xNVBvaW50c1NlcXVlbmNlckUAAAAA0EgAAG8sAAD4SAAA6CsAAIwsAAD/////AAAAAIQtAAA4AQAAOQEAADoBAABONWRyYWNvMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQBONWRyYWNvMTNUcmF2ZXJzZXJCYXNlSU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAA0EgAACEtAAD4SAAAuCwAAHwtAAAAAAAAfC0AADsBAAA8AQAAOgEAAAAAAAA8LgAAPQEAAD4BAAA/AQAAQAEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAAAA+EgAALwtAACMLAAAAAAAALwuAABBAQAAQgEAADoBAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQD4SAAAXC4AAHwtAAAAAAAAbC8AAEMBAABEAQAARQEAAEYBAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMl9FRUVFRUUAAPhIAADgLgAAjCw=");l(e,12160,"5C8AAEcBAABIAQAACQEAAB4AAABJAQAADAEAAA0BAAAOAQAADwEAAB4AAABKAQAAEgEAAB4AAABLAQAATAEAAE0BAAAeAAAAHgAAAE41ZHJhY28xMU1lc2hFbmNvZGVyRQAAAPhIAADMLwAABDEAAAAAAABgMAAARwEAAE4BAAAJAQAATwEAAEkBAAAMAQAADQEAAA4BAAAPAQAAUAEAAEoBAAASAQAAUQEAAEsBAABMAQAATQEAAFIBAABTAQAATjVkcmFjbzIxTWVzaFNlcXVlbnRpYWxFbmNvZGVyRQD4SAAAQDAAAOQvAAAAAAAAoDAAAFQBAABVAQAAVgEAAFcBAABONWRyYWNvMTVMaW5lYXJTZXF1ZW5jZXJFAAAA+EgAAIQwAACMLAAAAAAAAAQxAABHAQAAWAEAAFkBAAAeAAAASQEAAAwBAABaAQAADgEAAA8BAAAeAAAASgEAABIBAAAeAAAATjVkcmFjbzE3UG9pbnRDbG91ZEVuY29kZXJFANBIAADoMAAAAAAAAGwxAABHAQAAWwEAAFkBAABcAQAASQEAAAwBAABdAQAADgEAAA8BAABeAQAASgEAABIBAABfAQAATjVkcmFjbzIzUG9pbnRDbG91ZEtkVHJlZUVuY29kZXJFAAAA+EgAAEgxAAAEMQAAAAAAANwxAABHAQAAYAEAAFkBAABhAQAASQEAAAwBAABiAQAADgEAAA8BAABjAQAASgEAABIBAABkAQAATjVkcmFjbzI3UG9pbnRDbG91ZFNlcXVlbnRpYWxFbmNvZGVyRQAAAPhIAAC0MQAABDE=");l(e,12804,"AQAAAFZVVVUCAAAAAAAAAAIAAACamZmZAwAAAFZVVVUDAAAAJUmSJAMAAAAAAAAAAwAAAMhxHMcEAAAAmpmZmQQAAABGF110BAAAAFZVVVUEAAAAPLETOwQAAAAlSZIkBAAAABIREREEAAAAAAAAAAQAAADi4eHhBQAAAMhxHMcFAAAAy2sorwUAAACamZmZBQAAAIdhGIYFAAAARhdddAUAAACRhSxkBQAAAFZVVVUFAAAAexSuRwUAAAA8sRM7BQAAANtLaC8FAAAAJUmSJAUAAAASlnsaBQAAABIREREFAAAAhRBCCAUAAAAAAAAABQAAAAgffPAGAAAA4uHh4QYAAADVQR3UBgAAAMhxHMcGAAAATZHPugYAAADLayivBgAAAKVBGqQGAAAAmpmZmQYAAAD6GJyPBgAAAIdhGIYGAAAAGPQFfQYAAABGF110BgAAAG3BFmwGAAAAkYUsZAYAAAC6gphcBgAAAFZVVVUGAAAAcwpeTgYAAAB7FK5HBgAAAEJBQUEGAAAAPLETOwYAAACzzyE1BgAAANtLaC8GAAAAnxLkKQYAAAAlSZIkBgAAAN1HcB8GAAAAEpZ7GgYAAAD45bEVBgAAABIREREGAAAA/BSXDAYAAACFEEIIBgAAAAVBEAQGAAAAAAAAAAYAAAD5gR/4BwAAAAgffPAHAAAAwBoT6QcAAADi4eHhBwAAAGwH5toHAAAA1UEd1AcAAACRaIXNBwAAAMhxHMcHAAAAOXDgwAcAAABNkc+6BwAAAE8b6LQHAAAAy2sorwcAAAAH9o6pBwAAAKVBGqQHAAAAUunIngcAAACamZmZBwAAAM4Pi5QHAAAA+hicjwcAAAD3kMuKBwAAAIdhGIYHAAAAgoGBgQcAAAAY9AV9BwAAABjIpHgHAAAARhdddAcAAADBBS5wBwAAAG3BFmwHAAAAaYEWaAcAAACRhSxkBwAAAAYWWGAHAAAAuoKYXAcAAAAJI+1YBwAAAFZVVVUHAAAAr37QUQcAAABzCl5OBwAAAAZq/UoHAAAAexSuRwcAAABXhm9EBwAAAEJBQUEHAAAAz8siPgcAAAA8sRM7BwAAADmBEzgHAAAAs88hNQcAAACjND4yBwAAANtLaC8HAAAA2bSfLAcAAACfEuQpBwAAAIkLNScHAAAAJUmSJAcAAAATePshBwAAAN1HcB8HAAAA22rwHAcAAAASlnsaBwAAABmBERgHAAAA+OWxFQcAAAAUgVwTBwAAABIREREHAAAAv1bPDgcAAAD8FJcMBwAAAKcQaAoHAAAAhRBCCAcAAAAw3SQGBwAAAAVBEAQHAAAAEQgEAgcAAAAAAAAABwAAACDwB/wIAAAA+YEf+AgAAADlWUb0CAAAAAgffPAIAAAAMXvA7AgAAADAGhPpCAAAAJGsc+UIAAAA4uHh4QgAAABAbl3eCAAAAGwH5toIAAAATGV71wgAAADVQR3UCAAAAPdYy9AIAAAAkWiFzQgAAABWMEvKCAAAAMhxHMcIAAAAHfD4wwgAAAA5cODACAAAAJq40r0IAAAATZHPuggAAADew9a3CAAAAE8b6LQIAAAAB2QDsggAAADLayivCAAAAK0BV6wIAAAAB/aOqQgAAABuGtCmCAAAAKVBGqQIAAAAmD9toQgAAABS6cieCAAAAO8ULZwIAAAAmpmZmQgAAACBTw6XCAAAAM4Pi5QIAAAAnrQPkggAAAD6GJyPCAAAANQYMI0IAAAA95DLiggAAAALX26ICAAAAIdhGIYIAAAArHfJgwgAAACCgYGBCAAAANFfQH8IAAAAGPQFfQgAAACPINJ6CAAAABjIpHgIAAAARM59dggAAABGF110CAAAAPWHQnIIAAAAwQUucAgAAAC1dh9uCAAAAG3BFmwIAAAAFs0TaggAAABpgRZoCAAAAKbGHmYIAAAAkYUsZAgAAABxpz9iCAAAAAYWWGAIAAAAjrt1XggAAAC6gphcCAAAALFWwFoIAAAACSPtWAgAAADG0x5XCAAAAFZVVVUIAAAAkJSQUwgAAACvftBRCAAAAFEBFVAIAAAAcwpeTggAAABziKtMCAAAAAZq/UoIAAAAPJ5TSQgAAAB7FK5HCAAAAIC8DEYIAAAAV4ZvRAgAAABeYtZCCAAAAEJBQUEIAAAA/BOwPwgAAADPyyI+CAAAAEhamTwIAAAAPLETOwgAAADCwpE5CAAAADmBEzgIAAAAPt+YNggAAACzzyE1CAAAALZFrjMIAAAAozQ+MggAAAAUkNEwCAAAANtLaC8IAAAABVwCLggAAADZtJ8sCAAAANFKQCsIAAAAnxLkKQgAAAApAYsoCAAAAIkLNScIAAAACSfiJQgAAAAlSZIkCAAAAIpnRSMIAAAAE3j7IQgAAADHcLQgCAAAAN1HcB8IAAAAtPMuHggAAADbavAcCAAAAAWktBsIAAAAEpZ7GggAAAAJOEUZCAAAABmBERgIAAAAlWjgFggAAAD45bEVCAAAAOHwhRQIAAAAFIFcEwgAAAB2jjUSCAAAABIREREIAAAAEAHvDwgAAAC/Vs8OCAAAAIkKsg0IAAAA/BSXDAgAAADDbn4LCAAAAKcQaAoIAAAAkfNTCQgAAACFEEIICAAAAKVgMgcIAAAAMN0kBggAAAB+fxkFCAAAAAVBEAQIAAAAUhsJAwgAAAARCAQCCAAAAAIBAQEIAAAAAQAAAAEAAAACAAAAAgAAAAQAAAAEAAAACAAAAAgAAAAEAAAACAAAAAEAAAAAAAAA/////wAAAABYOgAAZQEAAGYBAABnAQAAaAEAAGkBAABqAQAAawEAAE41ZHJhY280TWVzaEUAAAD4SAAASDoAAKg6AAD/////AAAAAAAAAACoOgAAbAEAAG0BAABuAQAAbwEAAGkBAABqAQAAcAEAAE41ZHJhY28xMFBvaW50Q2xvdWRFAAAAANBIAACQOgAA/////wAAAAAAACBlRxX3PwCi7y78Bec9OYMrZUcV57++BDrcCcfeP/svcGRHFde/SEwDUGx30j+8kuoos8fOvy75F+ElYso//oIrZUcV57/3AzrcCcfePz98K2VHFde/5FvwUGx30j/lj3bdCcfOvzbnxB52Yco/m6dkvD8Vx79KG/BU0YTEPzw4LKfkicK/Zu5aKC+zwD/4rLFrKCT3PwCwze5fCeG/oczSZvfh9j8A0Ha9lITgv4rUMA49ofY/APjorkMB4L+FbNAy7GH2PwBACzbF/t6/+JgRlfoj9j8A4Lca2f3dv2wCz6Rb5/U/AJDHDK7/3L+4TyFaBaz1PwCg/RE4BNy/Hm4WD+1x9T8A4DoyZwvbvzX4C1kJOfU/ALAtWi8V2r/drWHtTwH1PwBg+Fp/Idm/0HtIjrjK9D8AkHGwTTDYv+5PM7Q5lfQ/AOCp+YlB179p1a/fy2D0PwCQGbUrVda/U7nkTmYt9D8AEJuiI2vVv6bYHREB+/M/AKBfD2WD1L82WAy3lcnzPwCg9jfpndO/Sv22ShyZ8z8AYI1TobrSv7WZ4AyOafM/AEDKQIPZ0b+y5xOC5DrzPwDgQDqF+tC/sb2FGRkN8z8AMOcynB3Qv9dxssol4PI/AGD6on2Fzr+CzRPPBLTyPwCAPWPI08y/UMt8LLCI8j8AoBRMAybLv+VNlGMiXvI/AOBPLxx8yb+xFYY9VjTyPwAAgD8C1se/OK8+40YL8j8A4AUapzPGv92jzf3u4vE/AABX6fWUxL8wOQtYSrvxPwCg4CTk+cK/ACJ/hFOU8T8AwP1aWWLBvzzX1cAGbvE/AIC9dZqcv7/C5LdHX0jxPwDA+VtXe7y/0YUArVgj8T8AgPQPxmC5vyciUw/w/vA/AAC2R+JMtr+POtB3INvwPwBAAbJ4P7O/2YBZ1ua38D8AwEIafTiwv41Ae/4+lfA/AAC1CJJvqr+DO8XKJXPwPwAAd0+VeqS/XBsN5JdR8D8AAAzFqCOdv6KOIMGRMPA/AAB4KSZqkb8hfrMlEBDwPwAA6Nj4IHe/a6fK+X7A7z8AAFCxU/6GP4Tx9tNlRO8/AIAP4cwcoT9/EISfB8zuPwCAi4z8Taw/6FqXmTpX7j8AQFceMqqzP+Y9vfDW5e0/AICL0KAYuT+zOP+BtnftPwBABNrpcr4/Q+lNcrUM7T8AYH9Q0tzBP2N1DtyypOw/AKDeA6t2xD9Ry9bojj/sPwAg4ndDB8c/TAwCTyvd6z8AQKmL3o7JP8oVYABsfes/AODSargNzD+PMy5uNiDrPwDgzq8KhM4/OVApJnDF6j8AgGe0CnnQP90xJ7wBbeo/AMABaAWs0T+L8T+80xbqPwDg/tQR29I/rf5nSdHC6T8AgMVORgbUPwKZfPTkcOk/APA6Cb4t1T/yvII5+yDpPwDQUCCQUdY/8Vn3hwHT6D8A8OrN0nHXP232uevlhug/AJB9hZyO2D+UuVi2lzzoPwBg4VUBqNk/IhDG/wX05z8A0NNuGL7aP8oVFBgirec/AOCgrvLQ2z+M/5753GfnPwBAvz2k4Nw/jgq5EgAg5j8FtkQGqwSJPKY0VwQAYOY/qfdi6pv/YTzF8iXD/5/mP7qQPMvPfoI8BFq5OADg5j8mk3NWiP+IPOOUmeD/H+c/sYJfJ0D9ijwQDlkVAGDnP0GDI7R1/XK81VtlEgCg5z92KyR85gh4PKbpWTIA4Oc/tyL2JuQIYrzSsrTt/x/oPy/JpR5GAoS8w/z6LQBg6D8fmvKi9PdtPFBrjPf/n+g//ZVJCVMEjrxmFWc5AODoP0V7x77zBIq8RRe/4v8f6T88IA5ANPp3vNGfXMz/X+k/XWmgBYD/drxnR7o7AKDpPwN+7MTE+HA8pS255//f6T8CRoxH2X+OPK/9Ltf/H+o/fq7NTVUMaryV/wTe/1/qP2uy6YypfYY8K41eyv+f6j/eE0y1yYSCvOoDrd3/3+o/PC5g6sgSWDxNPQ3x/x/rP5x4J63d+o68WhYhzv9f6z83EsYZF8tTPHTmUNn/n+s/AM6UQdn3czyvqJwTAODrP8CbXSHECnU8md9GWwAg7D/JwelTpu5rPK73uUAAYOw/1nBKJ58HfLyK/VViAKDsPx9M6HZAC3q8XQlM2f/f7D/XtZr5M/mIPM/Wdfn/H+0/vuFfZggsWLyTHFai/1/tP/OV0psoBHu8DIsinf+f7T82og80UQKHPBZ+vGUA4O0/DNikFh4BdbyRR/YCACDuP+Bi7wkvgIk82KbXVwBg7j/69wxYdQt+vAzA7ScAoO4/EZhFCYOEjLx8y/VsAODuP/R2FZUngI+8zH0reAAg7z+PU3Ry2YGPvApFDCYAYO8/3P8nJwBxQLwz1Yzo/5/vP7Co/eHcG1i8iYYP1f/f7z9ujpHLGvmHPGcjKQQAIPA/gUYyZfN/mzxo1uPj/1/wP3uVrt0I+oY8V6eFCgCg8D+R+9OA3uJXvMw/XxoA4PA/FPDFBTOCkbz1uq/4/x/xP8K6gGa7+ou8rZFN5f9f8T/v5zcXEn+dvOE2rBEAoPE///UWBQoAnDxIQsgZAODxP6Bd2uT7gpC8bl7+DwAg8j9D+5xM0P2IvJHYnyYAYPI/gtGUeSr+jDza5qYpAKDyP8WLXnFzAnC8OT4p4P/f8j/5prLaOXybPILw3Pf/H/M/VFLcbjPxfTxgi1rw/1/zP+sxzUxWA568zK4OLgCg8z93pNNL5/B1PDayOwQA4PM/M4idFMt9nDz/h9ECACD0Pyg9Lc+vCH48sXw4DQBg9D+mmWWFNwiCPImfVgQAoPQ/0rxPkFz6ibzzQzUEAOD0PylTF+0lEXi8D38CzP8f9T/cVHeE2IOYPG+zh/3/X/U/ByjQMecJh7y69x3y/5/1PwJ7cmif94c8gTT86//f9T8+6TAukICRvAAAAAAAAAAA0XSeAFedvSqAcFIP//8+JwoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFGAAAADUAAABxAAAAa////877//+Sv///AAAAAAAAAAAZAAoAGRkZAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABkAEQoZGRkDCgcAAQAJCxgAAAkGCwAACwAGGQAAABkZGQ==");l(e,17393,"DgAAAAAAAAAAGQAKDRkZGQANAAACAAkOAAAACQAOAAAO");l(e,17451,"DA==");l(e,17463,"EwAAAAATAAAAAAkMAAAAAAAMAAAM");l(e,17509,"EA==");l(e,17521,"DwAAAAQPAAAAAAkQAAAAAAAQAAAQ");l(e,17567,"Eg==");l(e,17579,"EQAAAAARAAAAAAkSAAAAAAASAAASAAAaAAAAGhoa");l(e,17634,"GgAAABoaGgAAAAAAAAk=");l(e,17683,"FA==");l(e,17695,"FwAAAAAXAAAAAAkUAAAAAAAUAAAU");l(e,17741,"Fg==");l(e,17753,"FQAAAAAVAAAAAAkWAAAAAAAWAAAWAAAwMTIzNDU2Nzg5QUJDREVGAAAAAAIAAAADAAAABQAAAAcAAAALAAAADQAAABEAAAATAAAAFwAAAB0AAAAfAAAAJQAAACkAAAArAAAALwAAADUAAAA7AAAAPQAAAEMAAABHAAAASQAAAE8AAABTAAAAWQAAAGEAAABlAAAAZwAAAGsAAABtAAAAcQAAAH8AAACDAAAAiQAAAIsAAACVAAAAlwAAAJ0AAACjAAAApwAAAK0AAACzAAAAtQAAAL8AAADBAAAAxQAAAMcAAADTAAAAAQAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAeQAAAH8AAACDAAAAiQAAAIsAAACPAAAAlQAAAJcAAACdAAAAowAAAKcAAACpAAAArQAAALMAAAC1AAAAuwAAAL8AAADBAAAAxQAAAMcAAADR");l(e,18196,"CgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QUAypo7AAAAAAAAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OU4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAAAAAPhIAAAISAAAjEoAAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQAAAPhIAAA4SAAALEgAAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQAAAPhIAABoSAAALEgAAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAPhIAACYSAAAjEgAAAAAAABcSAAAdAEAAHUBAAB2AQAAdwEAAHgBAAB5AQAAegEAAHsBAAAAAAAAQEkAAHQBAAB8AQAAdgEAAHcBAAB4AQAAfQEAAH4BAAB/AQAATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAAAAAPhIAAAYSQAAXEgAAAAAAACwSQAADgAAAIABAACBAQAAAAAAANhJAAAOAAAAggEAAIMBAAAAAAAAmEkAAA4AAACEAQAAhQEAAFN0OWV4Y2VwdGlvbgAAAADQSAAAiEkAAFN0OWJhZF9hbGxvYwAAAAD4SAAAoEkAAJhJAABTdDIwYmFkX2FycmF5X25ld19sZW5ndGgAAAAA+EgAALxJAACwSQAAAAAAAAhKAAABAAAAhgEAAIcBAABTdDExbG9naWNfZXJyb3IA+EgAAPhJAACYSQAAAAAAADxKAAABAAAAiAEAAIcBAABTdDEybGVuZ3RoX2Vycm9yAAAAAPhIAAAoSgAACEoAAAAAAABwSgAAAQAAAIkBAACHAQAAU3QxMm91dF9vZl9yYW5nZQAAAAD4SAAAXEoAAAhKAABTdDl0eXBlX2luZm8AAAAA0EgAAHxK");l(e,19092,"wE0B")}var r=new ArrayBuffer(16);var s=new Int32Array(r);var t=new Float32Array(r);var u=new Float64Array(r);function v(w){return s[w]}function x(w,y){s[w]=y}function z(){return u[0]}function A(y){u[0]=y}function B(){throw new Error("abort")}function C(y){t[2]=y}function D(){return t[2]}function la(q){var E=q.a;var F=E.a;var G=F.buffer;F.grow=ja;var H=new Int8Array(G);var I=new Int16Array(G);var J=new Int32Array(G);var K=new Uint8Array(G);var L=new Uint16Array(G);var M=new Uint32Array(G);var N=new Float32Array(G);var O=new Float64Array(G);var P=Math.imul;var Q=Math.fround;var R=Math.abs;var S=Math.clz32;var T=Math.min;var U=Math.max;var V=Math.floor;var W=Math.ceil;var X=Math.trunc;var Y=Math.sqrt;var Z=E.b;var _=E.c;var $=E.d;var aa=E.e;var ba=85440;var ca=0;
// EMSCRIPTEN_START_FUNCS
function ee(a,b,c,d,e){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,C=0,D=0,E=0,F=0,G=0,I=0,L=0;C=ba-48|0;ba=C;a:{b:{if((b|0)<0){break b}if(!b){h=1;break b}J[C+40>>2]=0;J[C+32>>2]=0;J[C+36>>2]=0;c:{d:{if(b>>>0<1073741824){g=b<<2;n=oa(g);J[C+36>>2]=n;J[C+32>>2]=n;j=g+n|0;u=(c|0)<=1?1:c;c=u-1|0;v=c&-4;l=c&3;r=u-2>>>0>2;F=n;g=n;e:{f:{g:{while(1){h=J[(s<<2)+a>>2];h:{if(u>>>0<2){break h}m=0;c=1;if(r){while(1){q=(c+s<<2)+a|0;k=J[q>>2];h=h>>>0>k>>>0?h:k;k=J[q+4>>2];h=h>>>0>k>>>0?h:k;k=J[q+8>>2];h=h>>>0>k>>>0?h:k;q=J[q+12>>2];h=h>>>0>q>>>0?h:q;c=c+4|0;m=m+4|0;if((v|0)!=(m|0)){continue}break}}k=0;if(!l){break h}while(1){m=J[(c+s<<2)+a>>2];h=h>>>0>m>>>0?h:m;c=c+1|0;k=k+1|0;if((l|0)!=(k|0)){continue}break}}c=h?(S(h)^31)+1|0:1;i:{if(g>>>0<j>>>0){J[g>>2]=c;g=g+4|0;J[C+36>>2]=g;break i}m=g-F|0;q=m>>2;g=q+1|0;if(g>>>0>=1073741824){break g}j=j-F|0;k=j>>>1|0;j=j>>>0>=2147483644?1073741823:g>>>0<k>>>0?k:g;if(j){if(j>>>0>=1073741824){break f}n=oa(j<<2)}else{n=0}g=n+(q<<2)|0;J[g>>2]=c;c=ta(n,F,m);g=g+4|0;J[C+36>>2]=g;j=c+(j<<2)|0;if(F){na(F)}F=c}p=h>>>0>p>>>0?h:p;s=s+u|0;if((s|0)<(b|0)){continue}break}J[C+40>>2]=j;J[C+32>>2]=n;c=0;J[C+24>>2]=0;J[C+16>>2]=0;J[C+20>>2]=0;j:{if((g|0)==(F|0)){k=0;break j}c=g-F|0;if((c|0)<0){break e}k=oa(c);J[C+16>>2]=k;J[C+24>>2]=(c&-4)+k;c=F;h=k;while(1){J[h>>2]=J[c>>2];h=h+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}J[C+20>>2]=h;c=h-k>>2;if((h|0)==(k|0)){break j}g=c>>>0<=1?1:c;q=g&3;s=0;k:{if(g-1>>>0<3){h=0;break k}n=g&-4;h=0;m=0;while(1){g=f;f=h<<2;l=J[f+k>>2];g=g+l|0;j=i;j=g>>>0<l>>>0?j+1|0:j;l=J[(f|4)+k>>2];i=l+g|0;g=j;g=l>>>0>i>>>0?g+1|0:g;j=J[(f|8)+k>>2];i=j+i|0;g=j>>>0>i>>>0?g+1|0:g;l=i;i=J[(f|12)+k>>2];f=l+i|0;i=f>>>0<i>>>0?g+1|0:g;h=h+4|0;m=m+4|0;if((n|0)!=(m|0)){continue}break}}if(!q){break j}while(1){j=J[(h<<2)+k>>2];f=j+f|0;g=i;i=f>>>0<j>>>0?g+1|0:g;h=h+1|0;s=s+1|0;if((q|0)!=(s|0)){continue}break}}c=Lg(k,c,32,C);v=ca;r=J[C>>2];if(k){J[C+20>>2]=k;na(k)}m=Lg(a,b,p,C);s=ca;k=J[C>>2];G=(p-k|0)/64|0;if(d){g=oa(32);H[g+22|0]=0;h=K[1587]|K[1588]<<8|(K[1589]<<16|K[1590]<<24);j=K[1583]|K[1584]<<8|(K[1585]<<16|K[1586]<<24);H[g+14|0]=j;H[g+15|0]=j>>>8;H[g+16|0]=j>>>16;H[g+17|0]=j>>>24;H[g+18|0]=h;H[g+19|0]=h>>>8;H[g+20|0]=h>>>16;H[g+21|0]=h>>>24;h=K[1581]|K[1582]<<8|(K[1583]<<16|K[1584]<<24);j=K[1577]|K[1578]<<8|(K[1579]<<16|K[1580]<<24);H[g+8|0]=j;H[g+9|0]=j>>>8;H[g+10|0]=j>>>16;H[g+11|0]=j>>>24;H[g+12|0]=h;H[g+13|0]=h>>>8;H[g+14|0]=h>>>16;H[g+15|0]=h>>>24;h=K[1573]|K[1574]<<8|(K[1575]<<16|K[1576]<<24);j=K[1569]|K[1570]<<8|(K[1571]<<16|K[1572]<<24);H[g|0]=j;H[g+1|0]=j>>>8;H[g+2|0]=j>>>16;H[g+3|0]=j>>>24;H[g+4|0]=h;H[g+5|0]=h>>>8;H[g+6|0]=h>>>16;H[g+7|0]=h>>>24;h=J[d+4>>2];if(h){while(1){j=K[h+27|0];q=j<<24>>24<0;j=q?J[h+20>>2]:j;n=j>>>0<22;l:{m:{n:{o:{p:{q:{l=n?j:22;if(l){q=q?J[h+16>>2]:h+16|0;t=Ba(g,q,l);if(t){break q}if(j>>>0<=22){break p}break l}if(j>>>0<=22){break o}break l}if((t|0)<0){break l}}j=Ba(q,g,l);if(j){break n}}if(n){break m}break d}if((j|0)>=0){break d}}h=h+4|0}h=J[h>>2];if(h){continue}break}}na(g)}if((S(p>>>0<=1?1:p)^30)>>>0<18){g=c;c=Hl(f,i,u,0);f=g+c|0;g=ca+v|0;g=c>>>0>f>>>0?g+1|0:g;c=r<<3;q=c>>31<<1|c>>>31;i=f;f=c<<1;c=i+f|0;j=g+q|0;j=c>>>0<f>>>0?j+1|0:j;f=c;c=k+G<<3;i=c;h=c>>31;c=m;g=k<<3;m=g;c=c+g|0;g=(g>>31)+s|0;h=(c>>>0<m>>>0?g+1|0:g)+h|0;g=c;c=c+i|0;h=g>>>0>c>>>0?h+1|0:h;c=(h|0)<=(j|0)&c>>>0<=f>>>0|(h|0)<(j|0)}else{c=0}break c}J[C+40>>2]=j;J[C+32>>2]=n;break a}J[C+32>>2]=n;xa();B()}break a}break a}na(g);c=oa(32);J[C>>2]=c;J[C+4>>2]=22;J[C+8>>2]=-2147483616;f=K[1587]|K[1588]<<8|(K[1589]<<16|K[1590]<<24);i=K[1583]|K[1584]<<8|(K[1585]<<16|K[1586]<<24);H[c+14|0]=i;H[c+15|0]=i>>>8;H[c+16|0]=i>>>16;H[c+17|0]=i>>>24;H[c+18|0]=f;H[c+19|0]=f>>>8;H[c+20|0]=f>>>16;H[c+21|0]=f>>>24;f=K[1581]|K[1582]<<8|(K[1583]<<16|K[1584]<<24);i=K[1577]|K[1578]<<8|(K[1579]<<16|K[1580]<<24);H[c+8|0]=i;H[c+9|0]=i>>>8;H[c+10|0]=i>>>16;H[c+11|0]=i>>>24;H[c+12|0]=f;H[c+13|0]=f>>>8;H[c+14|0]=f>>>16;H[c+15|0]=f>>>24;f=K[1573]|K[1574]<<8|(K[1575]<<16|K[1576]<<24);i=K[1569]|K[1570]<<8|(K[1571]<<16|K[1572]<<24);H[c|0]=i;H[c+1|0]=i>>>8;H[c+2|0]=i>>>16;H[c+3|0]=i>>>24;H[c+4|0]=f;H[c+5|0]=f>>>8;H[c+6|0]=f>>>16;H[c+7|0]=f>>>24;H[c+22|0]=0;c=Mf(d,C);if(H[C+11|0]>=0){break c}na(J[C>>2])}H[C|0]=c;f=J[e+20>>2];if(!J[e+16>>2]&(f|0)<=0|(f|0)<0){sa(e,J[e+4>>2],C,C+1|0)}h=0;r:{s:{switch(c|0){case 0:p=0;k=ba-336|0;ba=k;pa(k+80|0,0,256);d=J[C+36>>2];c=J[C+32>>2];t:{if((d|0)==(c|0)){break t}d=d-c>>2;d=d>>>0<=1?1:d;i=d&3;if(d-1>>>0>=3){n=d&-4;while(1){f=k+80|0;d=p<<2;g=f+(J[d+c>>2]<<3)|0;j=g;m=J[g>>2];g=J[g+4>>2];m=m+1|0;g=m?g:g+1|0;J[j>>2]=m;J[j+4>>2]=g;g=f+(J[c+(d|4)>>2]<<3)|0;j=J[g>>2];q=J[g+4>>2];j=j+1|0;q=j?q:q+1|0;J[g>>2]=j;J[g+4>>2]=q;g=f+(J[c+(d|8)>>2]<<3)|0;j=J[g>>2];m=J[g+4>>2];j=j+1|0;m=j?m:m+1|0;J[g>>2]=j;J[g+4>>2]=m;d=f+(J[c+(d|12)>>2]<<3)|0;f=J[d>>2];g=J[d+4>>2];f=f+1|0;g=f?g:g+1|0;J[d>>2]=f;J[d+4>>2]=g;p=p+4|0;h=h+4|0;if((n|0)!=(h|0)){continue}break}}if(!i){break t}h=0;while(1){d=(k+80|0)+(J[c+(p<<2)>>2]<<3)|0;f=J[d>>2];q=J[d+4>>2];f=f+1|0;q=f?q:q+1|0;J[d>>2]=f;J[d+4>>2]=q;p=p+1|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}l=k+48|0;J[l>>2]=0;J[l+4>>2]=0;H[l+24|0]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+8>>2]=0;J[l+12>>2]=0;J[k+8>>2]=0;J[k+12>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+24>>2]=0;J[k+28>>2]=0;J[k+32>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k+40>>2]=0;J[k+44>>2]=0;Jg(k,k+80|0,32,e);d=J[k+16>>2];f=J[k+20>>2];c=J[e+4>>2]-J[e>>2]|0;J[k+40>>2]=c;J[k+44>>2]=0;q=f<<1|d>>>31;d=(d<<1)+39|0;m=d>>>0<39?q+1|0:q;d=c+((m&7)<<29|d>>>3)|0;g=m>>>3|0;g=c>>>0>d>>>0?g+1|0:g;c=d+8|0;Ia(e,c);c=J[e>>2];J[k+28>>2]=0;J[k+32>>2]=16384;J[k+24>>2]=c+J[k+40>>2];Fd(l,b<<5,b>>31<<5|b>>>27,0);b=b-u|0;if((b|0)>=0){j=(u|0)<=0;c=b;while(1){p=J[k+32>>2];n=J[C+32>>2];f=J[k>>2]+(J[n+((c|0)/(u|0)<<2)>>2]<<3)|0;d=J[f>>2];i=d<<10;if(p>>>0>=i>>>0){while(1){g=J[k+28>>2];J[k+28>>2]=g+1;H[g+J[k+24>>2]|0]=p;p=J[k+32>>2]>>>8|0;J[k+32>>2]=p;if(i>>>0<=p>>>0){continue}break}n=J[C+32>>2]}g=J[f+4>>2];f=(p>>>0)/(d>>>0)|0;J[k+32>>2]=g+((f<<12)+(p-P(d,f)|0)|0);m=b-c|0;g=(m|0)/(u|0)|0;u:{if(j){break u}d=J[l+20>>2];i=d;f=J[l+16>>2];if(!f&(d|0)<=0|(d|0)<0){break u}g=J[(g<<2)+n>>2];n=0;while(1){if(!(!f&(i|0)<=0|(i|0)<0|(g|0)<=0)){f=J[(n+m<<2)+a>>2];d=J[l+12>>2];F=J[d+4>>2];h=0;while(1){i=F>>>3|0;q=i+J[d>>2]|0;v=K[q|0];D=q;q=F&7;I=D,L=Ll(q)&v,H[I|0]=L;i=i+J[d>>2]|0;H[i|0]=K[i|0]|(f>>>h&1)<<q;F=J[d+4>>2]+1|0;J[d+4>>2]=F;h=h+1|0;if((g|0)!=(h|0)){continue}break}}n=n+1|0;if((u|0)==(n|0)){break u}f=J[l+16>>2];i=J[l+20>>2];continue}}c=c-u|0;if((c|0)>=0){continue}break}}yb(k,e);Ed(l);a=J[e+20>>2];if(!J[e+16>>2]&(a|0)<=0|(a|0)<0){sa(e,J[e+4>>2],J[l>>2],J[l+4>>2])}a=J[k>>2];if(a){J[k+4>>2]=a;na(a)}a=J[l+12>>2];J[l+12>>2]=0;if(a){na(a)}a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}ba=k+336|0;h=1;F=J[C+32>>2];break r;case 1:break s;default:break r}}G=ba-32|0;ba=G;n=1;v:{if((k|0)>0){c=S(k);if((c^30)>>>0>17){break v}n=32-c|0}w:{if(!d){break w}c=oa(48);H[c+33|0]=0;H[c+32|0]=K[1470];f=K[1466]|K[1467]<<8|(K[1468]<<16|K[1469]<<24);i=K[1462]|K[1463]<<8|(K[1464]<<16|K[1465]<<24);H[c+24|0]=i;H[c+25|0]=i>>>8;H[c+26|0]=i>>>16;H[c+27|0]=i>>>24;H[c+28|0]=f;H[c+29|0]=f>>>8;H[c+30|0]=f>>>16;H[c+31|0]=f>>>24;f=K[1458]|K[1459]<<8|(K[1460]<<16|K[1461]<<24);i=K[1454]|K[1455]<<8|(K[1456]<<16|K[1457]<<24);H[c+16|0]=i;H[c+17|0]=i>>>8;H[c+18|0]=i>>>16;H[c+19|0]=i>>>24;H[c+20|0]=f;H[c+21|0]=f>>>8;H[c+22|0]=f>>>16;H[c+23|0]=f>>>24;f=K[1450]|K[1451]<<8|(K[1452]<<16|K[1453]<<24);i=K[1446]|K[1447]<<8|(K[1448]<<16|K[1449]<<24);H[c+8|0]=i;H[c+9|0]=i>>>8;H[c+10|0]=i>>>16;H[c+11|0]=i>>>24;H[c+12|0]=f;H[c+13|0]=f>>>8;H[c+14|0]=f>>>16;H[c+15|0]=f>>>24;f=K[1442]|K[1443]<<8|(K[1444]<<16|K[1445]<<24);i=K[1438]|K[1439]<<8|(K[1440]<<16|K[1441]<<24);H[c|0]=i;H[c+1|0]=i>>>8;H[c+2|0]=i>>>16;H[c+3|0]=i>>>24;H[c+4|0]=f;H[c+5|0]=f>>>8;H[c+6|0]=f>>>16;H[c+7|0]=f>>>24;x:{h=J[d+4>>2];if(h){while(1){f=K[h+27|0];i=f<<24>>24<0;f=i?J[h+20>>2]:f;g=f>>>0<33;y:{z:{A:{B:{C:{D:{j=g?f:33;if(j){i=i?J[h+16>>2]:h+16|0;m=Ba(c,i,j);if(m){break D}if(f>>>0<=33){break C}break y}if(f>>>0<=33){break B}break y}if((m|0)<0){break y}}f=Ba(i,c,j);if(f){break A}}if(g){break z}break x}if((f|0)>=0){break x}}h=h+4|0}h=J[h>>2];if(h){continue}break}}na(c);break w}na(c);c=oa(48);J[G+16>>2]=c;J[G+20>>2]=33;J[G+24>>2]=-2147483600;H[c+32|0]=K[1470];f=K[1466]|K[1467]<<8|(K[1468]<<16|K[1469]<<24);i=K[1462]|K[1463]<<8|(K[1464]<<16|K[1465]<<24);H[c+24|0]=i;H[c+25|0]=i>>>8;H[c+26|0]=i>>>16;H[c+27|0]=i>>>24;H[c+28|0]=f;H[c+29|0]=f>>>8;H[c+30|0]=f>>>16;H[c+31|0]=f>>>24;f=K[1458]|K[1459]<<8|(K[1460]<<16|K[1461]<<24);i=K[1454]|K[1455]<<8|(K[1456]<<16|K[1457]<<24);H[c+16|0]=i;H[c+17|0]=i>>>8;H[c+18|0]=i>>>16;H[c+19|0]=i>>>24;H[c+20|0]=f;H[c+21|0]=f>>>8;H[c+22|0]=f>>>16;H[c+23|0]=f>>>24;f=K[1450]|K[1451]<<8|(K[1452]<<16|K[1453]<<24);i=K[1446]|K[1447]<<8|(K[1448]<<16|K[1449]<<24);H[c+8|0]=i;H[c+9|0]=i>>>8;H[c+10|0]=i>>>16;H[c+11|0]=i>>>24;H[c+12|0]=f;H[c+13|0]=f>>>8;H[c+14|0]=f>>>16;H[c+15|0]=f>>>24;f=K[1442]|K[1443]<<8|(K[1444]<<16|K[1445]<<24);i=K[1438]|K[1439]<<8|(K[1440]<<16|K[1441]<<24);H[c|0]=i;H[c+1|0]=i>>>8;H[c+2|0]=i>>>16;H[c+3|0]=i>>>24;H[c+4|0]=f;H[c+5|0]=f>>>8;H[c+6|0]=f>>>16;H[c+7|0]=f>>>24;H[c+33|0]=0;c=Mf(d,G+16|0);if(H[G+27|0]<0){na(J[G+16>>2])}if((c|0)<=3){n=n-2|0;break w}if(c>>>0<=5){n=n-1|0;break w}if(c>>>0>=10){n=n+2|0;break w}n=(c>>>0>7)+n|0}c=(n|0)<=1?1:n;c=(c|0)>=18?18:c;H[G+15|0]=c;d=J[e+20>>2];if(!J[e+16>>2]&(d|0)<=0|(d|0)<0){sa(e,J[e+4>>2],G+15|0,G+16|0)}h=0;E:{switch(c-1|0){case 0:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;F:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}G:{if((b|0)<=0){break G}a=0;if(b>>>0>=4){h=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;g=J[d>>2];q=J[d+4>>2];g=g+1|0;q=g?q:q+1|0;J[d>>2]=g;J[d+4>>2]=q;d=(J[u+(c|4)>>2]<<3)+n|0;g=J[d>>2];m=J[d+4>>2];g=g+1|0;m=g?m:m+1|0;J[d>>2]=g;J[d+4>>2]=m;d=(J[u+(c|8)>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];q=J[c+4>>2];d=d+1|0;q=d?q:q+1|0;J[c>>2]=d;J[c+4>>2]=q;a=a+4|0;r=r+4|0;if((h|0)!=(r|0)){continue}break}}d=b&3;if(!d){break G}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];m=J[c+4>>2];g=g+1|0;m=g?m:m+1|0;J[c>>2]=g;J[c+4>>2]=m;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;H:{if((a|0)<=0){break H}A=a&3;I:{if(a>>>0<4){a=0;break I}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=q;p=g;g=i+D|0;f=f+x|0;q=(f>>>0<x>>>0?g+1|0:g)+m|0;g=f;f=f+p|0;g=(g>>>0>f>>>0?q+1|0:q)+v|0;m=f;f=f+h|0;h=(m>>>0>f>>>0?g+1|0:g)+k|0;g=f;f=f+j|0;i=g>>>0>f>>>0?h+1|0:h;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break H}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;m=g+i|0;f=e+f|0;i=f>>>0<e>>>0?m+1|0:m;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;J:{if(a>>>0<g>>>0){Wa(l,g-a|0);break J}if(a>>>0<=g>>>0){break J}J[l+4>>2]=e+(g<<3)}k=0;K:{L:{M:{N:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*4096+.5;O:{if(o<4294967296&o>=0){e=~~o>>>0;break O}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==4096){break N}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;P:{if(!g){break P}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break P}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;Q:{R:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break R}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}gc(s,p,t+24|0,e,0,0);break Q}gc(s,p,t+24|0,e,f,a);na(f)}if((k|0)<4096){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)+4096;a=0;break M}if((d|0)>0){h=J[l>>2];r=k-4096|0;while(1){o=4096/+(k|0);e=d;while(1){S:{T:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));U:{if(R(w)<2147483648){i=~~w;break U}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=4096){break T}k=4096;break S}if((d|0)!=(e|0)){break S}a=1;break M}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break M}a=0;if(k>>>0<4097){break M}while(1)continue}if((d|0)<0){break K}break L}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break K}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=4096){break K}a=0;o=0;V:{if((d|0)<0){break V}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break V}a=a<<3;d=J[a+f>>2];if(!d){break V}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*.000244140625)+o}o=W(-o);W:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break W}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;g=d>>>0<39?g+1|0:g;d=a+((g&7)<<29|d>>>3)|0;h=g>>>3|0;j=a>>>0>d>>>0?h+1|0:h;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=16384;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=16384;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<12)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}yb(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break F}h=1;break v;case 1:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;X:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}Y:{if((b|0)<=0){break Y}a=0;if(b>>>0>=4){h=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;d=(J[u+(c|4)>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;d=(J[u+(c|8)>>2]<<3)+n|0;g=J[d>>2];j=J[d+4>>2];g=g+1|0;j=g?j:j+1|0;J[d>>2]=g;J[d+4>>2]=j;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];g=J[c+4>>2];d=d+1|0;g=d?g:g+1|0;J[c>>2]=d;J[c+4>>2]=g;a=a+4|0;r=r+4|0;if((h|0)!=(r|0)){continue}break}}d=b&3;if(!d){break Y}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;h=J[c>>2];g=J[c+4>>2];h=h+1|0;g=h?g:g+1|0;J[c>>2]=h;J[c+4>>2]=g;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;Z:{if((a|0)<=0){break Z}A=a&3;_:{if(a>>>0<4){a=0;break _}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=j;p=h;h=g;j=i+D|0;f=f+x|0;g=(f>>>0<x>>>0?j+1|0:j)+m|0;m=f;f=f+h|0;h=(m>>>0>f>>>0?g+1|0:g)+q|0;g=f;f=f+p|0;q=(g>>>0>f>>>0?h+1|0:h)+k|0;g=f;f=f+v|0;i=g>>>0>f>>>0?q+1|0:q;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break Z}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;g=g+i|0;f=e+f|0;i=f>>>0<e>>>0?g+1|0:g;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;$:{if(a>>>0<g>>>0){Wa(l,g-a|0);break $}if(a>>>0<=g>>>0){break $}J[l+4>>2]=e+(g<<3)}k=0;aa:{ba:{ca:{da:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*4096+.5;ea:{if(o<4294967296&o>=0){e=~~o>>>0;break ea}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==4096){break da}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;fa:{if(!g){break fa}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break fa}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;ga:{ha:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break ha}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}fc(s,p,t+24|0,e,0,0);break ga}fc(s,p,t+24|0,e,f,a);na(f)}if((k|0)<4096){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)+4096;a=0;break ca}if((d|0)>0){h=J[l>>2];r=k-4096|0;while(1){o=4096/+(k|0);e=d;while(1){ia:{ja:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));ka:{if(R(w)<2147483648){i=~~w;break ka}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=4096){break ja}k=4096;break ia}if((d|0)!=(e|0)){break ia}a=1;break ca}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break ca}a=0;if(k>>>0<4097){break ca}while(1)continue}if((d|0)<0){break aa}break ba}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break aa}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=4096){break aa}a=0;o=0;la:{if((d|0)<0){break la}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break la}a=a<<3;d=J[a+f>>2];if(!d){break la}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*.000244140625)+o}o=W(-o);ma:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break ma}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;h=e<<1|d>>>31;d=(d<<1)+39|0;j=h;j=d>>>0<39?j+1|0:j;d=a+((j&7)<<29|d>>>3)|0;q=j>>>3|0;m=a>>>0>d>>>0?q+1|0:q;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=16384;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=16384;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<12)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}yb(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break X}h=1;break v;case 2:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;na:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}oa:{if((b|0)<=0){break oa}a=0;if(b>>>0>=4){g=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;j=J[d>>2];h=J[d+4>>2];j=j+1|0;h=j?h:h+1|0;J[d>>2]=j;J[d+4>>2]=h;d=(J[u+(c|4)>>2]<<3)+n|0;h=J[d>>2];j=J[d+4>>2];h=h+1|0;j=h?j:j+1|0;J[d>>2]=h;J[d+4>>2]=j;d=(J[u+(c|8)>>2]<<3)+n|0;h=J[d>>2];m=J[d+4>>2];h=h+1|0;m=h?m:m+1|0;J[d>>2]=h;J[d+4>>2]=m;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];h=J[c+4>>2];d=d+1|0;h=d?h:h+1|0;J[c>>2]=d;J[c+4>>2]=h;a=a+4|0;r=r+4|0;if((g|0)!=(r|0)){continue}break}}d=b&3;if(!d){break oa}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];j=J[c+4>>2];g=g+1|0;j=g?j:j+1|0;J[c>>2]=g;J[c+4>>2]=j;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;pa:{if((a|0)<=0){break pa}x=a&3;qa:{if(a>>>0<4){a=0;break qa}A=a&-4;a=0;while(1){g=(a<<3)+n|0;p=J[g>>2];m=J[g+4>>2];E=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;D=(v<<3)+n|0;h=J[D>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=p|m?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[D+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=h;h=m;m=i+E|0;f=f+p|0;h=(f>>>0<p>>>0?m+1|0:m)+h|0;m=f;f=g+f|0;q=(m>>>0>f>>>0?h+1|0:h)+q|0;g=f;f=f+v|0;g=(g>>>0>f>>>0?q+1|0:q)+k|0;m=f;f=f+j|0;i=m>>>0>f>>>0?g+1|0:g;a=a+4|0;e=e+4|0;if((A|0)!=(e|0)){continue}break}}if(!x){break pa}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;j=g+i|0;f=e+f|0;i=f>>>0<e>>>0?j+1|0:j;r=r+1|0;if((x|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;ra:{if(a>>>0<g>>>0){Wa(l,g-a|0);break ra}if(a>>>0<=g>>>0){break ra}J[l+4>>2]=e+(g<<3)}k=0;sa:{ta:{ua:{va:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*4096+.5;wa:{if(o<4294967296&o>=0){e=~~o>>>0;break wa}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==4096){break va}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;xa:{if(!g){break xa}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break xa}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;ya:{za:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break za}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}ec(s,p,t+24|0,e,0,0);break ya}ec(s,p,t+24|0,e,f,a);na(f)}if((k|0)<4096){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)+4096;a=0;break ua}if((d|0)>0){h=J[l>>2];r=k-4096|0;while(1){o=4096/+(k|0);e=d;while(1){Aa:{Ba:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Ca:{if(R(w)<2147483648){i=~~w;break Ca}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=4096){break Ba}k=4096;break Aa}if((d|0)!=(e|0)){break Aa}a=1;break ua}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break ua}a=0;if(k>>>0<4097){break ua}while(1)continue}if((d|0)<0){break sa}break ta}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break sa}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=4096){break sa}a=0;o=0;Da:{if((d|0)<0){break Da}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break Da}a=a<<3;d=J[a+f>>2];if(!d){break Da}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*.000244140625)+o}o=W(-o);Ea:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ea}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;q=e<<1|d>>>31;d=(d<<1)+39|0;m=d>>>0<39?q+1|0:q;d=a+((m&7)<<29|d>>>3)|0;g=m>>>3|0;g=a>>>0>d>>>0?g+1|0:g;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=16384;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=16384;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<12)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}yb(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break na}h=1;break v;case 3:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;Fa:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}Ga:{if((b|0)<=0){break Ga}a=0;if(b>>>0>=4){h=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;g=J[d>>2];q=J[d+4>>2];g=g+1|0;q=g?q:q+1|0;J[d>>2]=g;J[d+4>>2]=q;d=(J[u+(c|4)>>2]<<3)+n|0;g=J[d>>2];m=J[d+4>>2];g=g+1|0;m=g?m:m+1|0;J[d>>2]=g;J[d+4>>2]=m;d=(J[u+(c|8)>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];q=J[c+4>>2];d=d+1|0;q=d?q:q+1|0;J[c>>2]=d;J[c+4>>2]=q;a=a+4|0;r=r+4|0;if((h|0)!=(r|0)){continue}break}}d=b&3;if(!d){break Ga}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];m=J[c+4>>2];g=g+1|0;m=g?m:m+1|0;J[c>>2]=g;J[c+4>>2]=m;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;Ha:{if((a|0)<=0){break Ha}A=a&3;Ia:{if(a>>>0<4){a=0;break Ia}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=q;p=g;g=i+D|0;f=f+x|0;q=(f>>>0<x>>>0?g+1|0:g)+m|0;g=f;f=f+p|0;g=(g>>>0>f>>>0?q+1|0:q)+v|0;m=f;f=f+h|0;h=(m>>>0>f>>>0?g+1|0:g)+k|0;g=f;f=f+j|0;i=g>>>0>f>>>0?h+1|0:h;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break Ha}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;m=g+i|0;f=e+f|0;i=f>>>0<e>>>0?m+1|0:m;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;Ja:{if(a>>>0<g>>>0){Wa(l,g-a|0);break Ja}if(a>>>0<=g>>>0){break Ja}J[l+4>>2]=e+(g<<3)}k=0;Ka:{La:{Ma:{Na:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*4096+.5;Oa:{if(o<4294967296&o>=0){e=~~o>>>0;break Oa}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==4096){break Na}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;Pa:{if(!g){break Pa}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break Pa}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;Qa:{Ra:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break Ra}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}dc(s,p,t+24|0,e,0,0);break Qa}dc(s,p,t+24|0,e,f,a);na(f)}if((k|0)<4096){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)+4096;a=0;break Ma}if((d|0)>0){h=J[l>>2];r=k-4096|0;while(1){o=4096/+(k|0);e=d;while(1){Sa:{Ta:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Ua:{if(R(w)<2147483648){i=~~w;break Ua}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=4096){break Ta}k=4096;break Sa}if((d|0)!=(e|0)){break Sa}a=1;break Ma}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break Ma}a=0;if(k>>>0<4097){break Ma}while(1)continue}if((d|0)<0){break Ka}break La}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break Ka}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=4096){break Ka}a=0;o=0;Va:{if((d|0)<0){break Va}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break Va}a=a<<3;d=J[a+f>>2];if(!d){break Va}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*.000244140625)+o}o=W(-o);Wa:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Wa}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;g=d>>>0<39?g+1|0:g;d=a+((g&7)<<29|d>>>3)|0;h=g>>>3|0;j=a>>>0>d>>>0?h+1|0:h;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=16384;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=16384;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<12)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}yb(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break Fa}h=1;break v;case 4:c=0;k=0;n=0;r=0;i=ba+-64|0;ba=i;J[i+56>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;Xa:{d=p+1|0;if(d){if(d>>>0>=536870912){break a}d=d<<3;c=oa(d);J[i+48>>2]=c;k=pa(c,0,(p<<3)+8|0)+d|0}Ya:{if((b|0)<=0){break Ya}p=0;if(b>>>0>=4){h=b&-4;while(1){d=p<<2;f=(J[d+a>>2]<<3)+c|0;j=J[f>>2];g=J[f+4>>2];j=j+1|0;g=j?g:g+1|0;J[f>>2]=j;J[f+4>>2]=g;f=(J[(d|4)+a>>2]<<3)+c|0;j=J[f>>2];g=J[f+4>>2];j=j+1|0;g=j?g:g+1|0;J[f>>2]=j;J[f+4>>2]=g;f=(J[(d|8)+a>>2]<<3)+c|0;g=J[f>>2];j=J[f+4>>2];g=g+1|0;j=g?j:j+1|0;J[f>>2]=g;J[f+4>>2]=j;d=(J[(d|12)+a>>2]<<3)+c|0;f=J[d>>2];g=J[d+4>>2];f=f+1|0;g=f?g:g+1|0;J[d>>2]=f;J[d+4>>2]=g;p=p+4|0;n=n+4|0;if((h|0)!=(n|0)){continue}break}}f=b&3;if(!f){break Ya}while(1){d=(J[(p<<2)+a>>2]<<3)+c|0;h=J[d>>2];g=J[d+4>>2];h=h+1|0;g=h?g:g+1|0;J[d>>2]=h;J[d+4>>2]=g;p=p+1|0;r=r+1|0;if((f|0)!=(r|0)){continue}break}}J[i+8>>2]=0;J[i+12>>2]=0;J[i+16>>2]=0;J[i+20>>2]=0;J[i+24>>2]=0;J[i+28>>2]=0;J[i+32>>2]=0;J[i>>2]=0;J[i+4>>2]=0;J[i+40>>2]=0;J[i+44>>2]=0;Jg(i,c,k-c>>3,e);d=J[i+16>>2];f=J[i+20>>2];c=J[e+4>>2]-J[e>>2]|0;J[i+40>>2]=c;J[i+44>>2]=0;g=f<<1|d>>>31;d=(d<<1)+39|0;j=d>>>0<39?g+1|0:g;d=c+((j&7)<<29|d>>>3)|0;g=j>>>3|0;q=c>>>0>d>>>0?g+1|0:g;c=d+8|0;Ia(e,c);c=J[e>>2];J[i+28>>2]=0;J[i+32>>2]=16384;J[i+24>>2]=c+J[i+40>>2];if((b|0)>0){p=16384;while(1){c=b-1|0;f=J[i>>2]+(J[(c<<2)+a>>2]<<3)|0;d=J[f>>2];g=d<<10;if(g>>>0<=p>>>0){while(1){h=J[i+28>>2];J[i+28>>2]=h+1;H[h+J[i+24>>2]|0]=p;p=J[i+32>>2]>>>8|0;J[i+32>>2]=p;if(g>>>0<=p>>>0){continue}break}}g=J[f+4>>2];f=(p>>>0)/(d>>>0)|0;p=g+((f<<12)+(p-P(d,f)|0)|0)|0;J[i+32>>2]=p;d=(b|0)>1;b=c;if(d){continue}break}}yb(i,e);a=J[i>>2];if(a){J[i+4>>2]=a;na(a)}a=J[i+48>>2];if(a){na(a)}ba=i- -64|0;break Xa}h=1;break v;case 5:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;Za:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}_a:{if((b|0)<=0){break _a}a=0;if(b>>>0>=4){h=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;d=(J[u+(c|4)>>2]<<3)+n|0;g=J[d>>2];j=J[d+4>>2];g=g+1|0;j=g?j:j+1|0;J[d>>2]=g;J[d+4>>2]=j;d=(J[u+(c|8)>>2]<<3)+n|0;g=J[d>>2];q=J[d+4>>2];g=g+1|0;q=g?q:q+1|0;J[d>>2]=g;J[d+4>>2]=q;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];g=J[c+4>>2];d=d+1|0;g=d?g:g+1|0;J[c>>2]=d;J[c+4>>2]=g;a=a+4|0;r=r+4|0;if((h|0)!=(r|0)){continue}break}}d=b&3;if(!d){break _a}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];j=J[c+4>>2];g=g+1|0;j=g?j:j+1|0;J[c>>2]=g;J[c+4>>2]=j;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;$a:{if((a|0)<=0){break $a}A=a&3;ab:{if(a>>>0<4){a=0;break ab}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=q;p=g;q=i+D|0;f=f+x|0;g=(f>>>0<x>>>0?q+1|0:q)+m|0;m=f;f=f+p|0;g=(m>>>0>f>>>0?g+1|0:g)+v|0;m=f;f=f+h|0;h=(m>>>0>f>>>0?g+1|0:g)+k|0;g=f;f=f+j|0;i=g>>>0>f>>>0?h+1|0:h;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break $a}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;j=g+i|0;f=e+f|0;i=f>>>0<e>>>0?j+1|0:j;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;bb:{if(a>>>0<g>>>0){Wa(l,g-a|0);break bb}if(a>>>0<=g>>>0){break bb}J[l+4>>2]=e+(g<<3)}k=0;cb:{db:{eb:{fb:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*4096+.5;gb:{if(o<4294967296&o>=0){e=~~o>>>0;break gb}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==4096){break fb}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;hb:{if(!g){break hb}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break hb}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;ib:{jb:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break jb}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}cc(s,p,t+24|0,e,0,0);break ib}cc(s,p,t+24|0,e,f,a);na(f)}if((k|0)<4096){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)+4096;a=0;break eb}if((d|0)>0){h=J[l>>2];r=k-4096|0;while(1){o=4096/+(k|0);e=d;while(1){kb:{lb:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));mb:{if(R(w)<2147483648){i=~~w;break mb}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=4096){break lb}k=4096;break kb}if((d|0)!=(e|0)){break kb}a=1;break eb}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break eb}a=0;if(k>>>0<4097){break eb}while(1)continue}if((d|0)<0){break cb}break db}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break cb}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=4096){break cb}a=0;o=0;nb:{if((d|0)<0){break nb}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break nb}a=a<<3;d=J[a+f>>2];if(!d){break nb}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*.000244140625)+o}o=W(-o);ob:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break ob}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;q=d>>>0<39?g+1|0:g;d=a+((q&7)<<29|d>>>3)|0;h=q>>>3|0;m=a>>>0>d>>>0?h+1|0:h;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=16384;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=16384;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<12)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}yb(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break Za}h=1;break v;case 6:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;pb:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}qb:{if((b|0)<=0){break qb}a=0;if(b>>>0>=4){h=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;d=(J[u+(c|4)>>2]<<3)+n|0;g=J[d>>2];q=J[d+4>>2];g=g+1|0;q=g?q:q+1|0;J[d>>2]=g;J[d+4>>2]=q;d=(J[u+(c|8)>>2]<<3)+n|0;g=J[d>>2];m=J[d+4>>2];g=g+1|0;m=g?m:m+1|0;J[d>>2]=g;J[d+4>>2]=m;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];g=J[c+4>>2];d=d+1|0;g=d?g:g+1|0;J[c>>2]=d;J[c+4>>2]=g;a=a+4|0;r=r+4|0;if((h|0)!=(r|0)){continue}break}}d=b&3;if(!d){break qb}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];q=J[c+4>>2];g=g+1|0;q=g?q:q+1|0;J[c>>2]=g;J[c+4>>2]=q;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;rb:{if((a|0)<=0){break rb}x=a&3;sb:{if(a>>>0<4){a=0;break sb}A=a&-4;a=0;while(1){g=(a<<3)+n|0;p=J[g>>2];m=J[g+4>>2];E=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;D=(v<<3)+n|0;h=J[D>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=p|m?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[D+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=h;h=g;g=m;m=i+E|0;f=f+p|0;g=(f>>>0<p>>>0?m+1|0:m)+g|0;m=f;f=f+h|0;h=(m>>>0>f>>>0?g+1|0:g)+q|0;g=f;f=f+v|0;g=(g>>>0>f>>>0?h+1|0:h)+k|0;m=f;f=f+j|0;i=m>>>0>f>>>0?g+1|0:g;a=a+4|0;e=e+4|0;if((A|0)!=(e|0)){continue}break}}if(!x){break rb}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;q=g+i|0;f=e+f|0;i=f>>>0<e>>>0?q+1|0:q;r=r+1|0;if((x|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;tb:{if(a>>>0<g>>>0){Wa(l,g-a|0);break tb}if(a>>>0<=g>>>0){break tb}J[l+4>>2]=e+(g<<3)}k=0;ub:{vb:{wb:{xb:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*4096+.5;yb:{if(o<4294967296&o>=0){e=~~o>>>0;break yb}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==4096){break xb}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;zb:{if(!g){break zb}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break zb}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;Ab:{Bb:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break Bb}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}bc(s,p,t+24|0,e,0,0);break Ab}bc(s,p,t+24|0,e,f,a);na(f)}if((k|0)<4096){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)+4096;a=0;break wb}if((d|0)>0){h=J[l>>2];r=k-4096|0;while(1){o=4096/+(k|0);e=d;while(1){Cb:{Db:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Eb:{if(R(w)<2147483648){i=~~w;break Eb}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=4096){break Db}k=4096;break Cb}if((d|0)!=(e|0)){break Cb}a=1;break wb}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break wb}a=0;if(k>>>0<4097){break wb}while(1)continue}if((d|0)<0){break ub}break vb}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break ub}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=4096){break ub}a=0;o=0;Fb:{if((d|0)<0){break Fb}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break Fb}a=a<<3;d=J[a+f>>2];if(!d){break Fb}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*.000244140625)+o}o=W(-o);Gb:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Gb}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;h=e<<1|d>>>31;d=(d<<1)+39|0;m=d>>>0<39?h+1|0:h;g=m>>>3|0;d=a+((m&7)<<29|d>>>3)|0;j=d>>>0<a>>>0?g+1|0:g;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=16384;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=16384;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<12)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}yb(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break pb}h=1;break v;case 7:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;Hb:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}Ib:{if((b|0)<=0){break Ib}a=0;if(b>>>0>=4){g=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;j=J[d>>2];h=J[d+4>>2];j=j+1|0;h=j?h:h+1|0;J[d>>2]=j;J[d+4>>2]=h;d=(J[u+(c|4)>>2]<<3)+n|0;h=J[d>>2];m=J[d+4>>2];h=h+1|0;m=h?m:m+1|0;J[d>>2]=h;J[d+4>>2]=m;d=(J[u+(c|8)>>2]<<3)+n|0;h=J[d>>2];j=J[d+4>>2];h=h+1|0;j=h?j:j+1|0;J[d>>2]=h;J[d+4>>2]=j;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];h=J[c+4>>2];d=d+1|0;h=d?h:h+1|0;J[c>>2]=d;J[c+4>>2]=h;a=a+4|0;r=r+4|0;if((g|0)!=(r|0)){continue}break}}d=b&3;if(!d){break Ib}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];m=J[c+4>>2];g=g+1|0;m=g?m:m+1|0;J[c>>2]=g;J[c+4>>2]=m;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;Jb:{if((a|0)<=0){break Jb}A=a&3;Kb:{if(a>>>0<4){a=0;break Kb}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=j;p=h;j=i+D|0;f=f+x|0;h=(f>>>0<x>>>0?j+1|0:j)+m|0;m=f;f=g+f|0;g=(m>>>0>f>>>0?h+1|0:h)+q|0;m=f;f=f+p|0;g=(m>>>0>f>>>0?g+1|0:g)+k|0;m=f;f=f+v|0;i=m>>>0>f>>>0?g+1|0:g;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break Jb}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;m=g+i|0;f=e+f|0;i=f>>>0<e>>>0?m+1|0:m;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;Lb:{if(a>>>0<g>>>0){Wa(l,g-a|0);break Lb}if(a>>>0<=g>>>0){break Lb}J[l+4>>2]=e+(g<<3)}k=0;Mb:{Nb:{Ob:{Pb:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*4096+.5;Qb:{if(o<4294967296&o>=0){e=~~o>>>0;break Qb}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==4096){break Pb}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;Rb:{if(!g){break Rb}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break Rb}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;Sb:{Tb:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break Tb}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}ac(s,p,t+24|0,e,0,0);break Sb}ac(s,p,t+24|0,e,f,a);na(f)}if((k|0)<4096){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)+4096;a=0;break Ob}if((d|0)>0){h=J[l>>2];r=k-4096|0;while(1){o=4096/+(k|0);e=d;while(1){Ub:{Vb:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Wb:{if(R(w)<2147483648){i=~~w;break Wb}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=4096){break Vb}k=4096;break Ub}if((d|0)!=(e|0)){break Ub}a=1;break Ob}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break Ob}a=0;if(k>>>0<4097){break Ob}while(1)continue}if((d|0)<0){break Mb}break Nb}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break Mb}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=4096){break Mb}a=0;o=0;Xb:{if((d|0)<0){break Xb}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.000244140625)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break Xb}a=a<<3;d=J[a+f>>2];if(!d){break Xb}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*.000244140625)+o}o=W(-o);Yb:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Yb}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;j=d>>>0<39?g+1|0:g;d=a+((j&7)<<29|d>>>3)|0;g=j>>>3|0;q=a>>>0>d>>>0?g+1|0:g;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=16384;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=16384;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<12)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}yb(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break Hb}h=1;break v;case 8:l=a;n=0;r=0;d=0;s=0;f=0;i=0;k=ba+-64|0;ba=k;J[k+56>>2]=0;J[k+48>>2]=0;J[k+52>>2]=0;Zb:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;r=oa(a);J[k+48>>2]=r;n=pa(r,0,(p<<3)+8|0)+a|0}_b:{if((b|0)<=0){break _b}a=0;if(b>>>0>=4){m=b&-4;while(1){c=a<<2;g=(J[c+l>>2]<<3)+r|0;h=g;j=J[g>>2];g=J[g+4>>2];j=j+1|0;g=j?g:g+1|0;J[h>>2]=j;J[h+4>>2]=g;g=(J[l+(c|4)>>2]<<3)+r|0;h=J[g>>2];j=J[g+4>>2];h=h+1|0;j=h?j:j+1|0;J[g>>2]=h;J[g+4>>2]=j;g=(J[l+(c|8)>>2]<<3)+r|0;h=J[g>>2];q=J[g+4>>2];h=h+1|0;q=h?q:q+1|0;J[g>>2]=h;J[g+4>>2]=q;c=(J[l+(c|12)>>2]<<3)+r|0;h=J[c>>2];g=J[c+4>>2];h=h+1|0;g=h?g:g+1|0;J[c>>2]=h;J[c+4>>2]=g;a=a+4|0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}d=b&3;if(!d){break _b}while(1){c=(J[l+(a<<2)>>2]<<3)+r|0;g=J[c>>2];j=J[c+4>>2];g=g+1|0;j=g?j:j+1|0;J[c>>2]=g;J[c+4>>2]=j;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[k+8>>2]=0;J[k+12>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+24>>2]=0;J[k+28>>2]=0;J[k+32>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k+40>>2]=0;J[k+44>>2]=0;d=0;p=0;c=0;s=0;t=ba-32|0;ba=t;a=n-r>>3;$b:{if((a|0)<=0){break $b}A=a&3;ac:{if(a>>>0<4){a=0;break ac}E=a&-4;a=0;while(1){g=(a<<3)+r|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;n=(q<<3)+r|0;g=J[n>>2];u=a|2;v=(u<<3)+r|0;h=J[v>>2];y=a|3;z=(y<<3)+r|0;j=J[z>>2];c=m|x?a:c;m=J[n+4>>2];c=m|g?q:c;q=J[v+4>>2];n=J[z+4>>2];c=n|j?y:q|h?u:c;u=q;v=g;q=i+D|0;f=f+x|0;g=(f>>>0<x>>>0?q+1|0:q)+m|0;m=f;f=f+v|0;g=(m>>>0>f>>>0?g+1|0:g)+u|0;m=f;f=f+h|0;h=(m>>>0>f>>>0?g+1|0:g)+n|0;g=f;f=f+j|0;i=g>>>0>f>>>0?h+1|0:h;a=a+4|0;d=d+4|0;if((E|0)!=(d|0)){continue}break}}if(!A){break $b}while(1){g=(a<<3)+r|0;d=J[g>>2];g=J[g+4>>2];c=d|g?a:c;a=a+1|0;j=g+i|0;f=d+f|0;i=f>>>0<d>>>0?j+1|0:j;p=p+1|0;if((A|0)!=(p|0)){continue}break}}g=c+1|0;J[k+12>>2]=g;d=J[k>>2];a=J[k+4>>2]-d>>3;bc:{if(a>>>0<g>>>0){Wa(k,g-a|0);break bc}if(a>>>0<=g>>>0){break bc}J[k+4>>2]=d+(g<<3)}n=0;cc:{dc:{ec:{fc:{if((c|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[k>>2];a=0;while(1){i=a<<3;h=i+r|0;d=J[h>>2];h=J[h+4>>2];j=(d|h)!=0;m=f+i|0;o=(+(d>>>0)+ +(h>>>0)*4294967296)/w*8192+.5;gc:{if(o<4294967296&o>=0){d=~~o>>>0;break gc}d=0}d=d?d:j?1:d;J[m>>2]=d;n=d+n|0;d=(a|0)==(c|0);a=a+1|0;if(!d){continue}break}if((n|0)==8192){break fc}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;hc:{if(!g){break hc}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;d=0;f=pa(s,0,i);a=0;if(c>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break hc}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}}J[t+24>>2]=k;a=p-s|0;d=a>>2;ic:{jc:{if((a|0)>=513){a=d;while(1){f=oa(a<<2);if(f){break jc}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}$b(s,p,t+24|0,d,0,0);break ic}$b(s,p,t+24|0,d,f,a);na(f)}if((n|0)<8192){a=J[k>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-n|0)- -8192;a=0;break ec}if((c|0)>0){h=J[k>>2];p=n+-8192|0;while(1){o=8192/+(n|0);d=c;while(1){kc:{lc:{f=h+(J[(d<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));mc:{if(R(w)<2147483648){i=~~w;break mc}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(p|0)?a:p;J[q>>2]=m-a;p=p-a|0;n=n-a|0;if((n|0)!=8192){break lc}n=8192;break kc}if((c|0)!=(d|0)){break kc}a=1;break ec}a=(d|0)>1;d=d-1|0;if(a){continue}}break}a=0;if((p|0)>0){continue}break}break ec}a=0;if(n>>>0<8193){break ec}while(1)continue}if((c|0)<0){break cc}break dc}d=J[t+8>>2];if(d){na(d)}if((c|0)<0|a){break cc}}d=J[k>>2];n=0;p=0;a=0;if(c>>>0>=3){i=g&-4;s=0;while(1){f=p<<3;h=f+d|0;J[h+4>>2]=a;j=d+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=d+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=d+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;p=p+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=d+(p<<3)|0;J[i+4>>2]=a;p=p+1|0;a=J[i>>2]+a|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((a|0)!=8192){break cc}a=0;o=0;nc:{if((c|0)<0){break nc}f=J[k>>2];if(c){c=g&-2;d=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.0001220703125)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*.0001220703125)+o}a=a+2|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(g&1)){break nc}a=a<<3;c=J[a+f>>2];if(!c){break nc}a=a+r|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(c>>>0)*.0001220703125)+o}o=W(-o);oc:{if(o<0x10000000000000000&o>=0){c=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break oc}c=0;a=0}J[k+16>>2]=a;J[k+20>>2]=c;Va(k,e)}ba=t+32|0;c=J[k+16>>2];d=J[k+20>>2];a=J[e+4>>2]-J[e>>2]|0;J[k+40>>2]=a;J[k+44>>2]=0;g=d<<1|c>>>31;c=(c<<1)+39|0;q=c>>>0<39?g+1|0:g;c=a+((q&7)<<29|c>>>3)|0;h=q>>>3|0;m=a>>>0>c>>>0?h+1|0:h;a=c+8|0;Ia(e,a);a=J[e>>2];J[k+28>>2]=0;J[k+32>>2]=32768;J[k+24>>2]=a+J[k+40>>2];if((b|0)>0){a=32768;while(1){c=b-1|0;f=J[k>>2]+(J[l+(c<<2)>>2]<<3)|0;d=J[f>>2];i=d<<10;if(i>>>0<=a>>>0){while(1){g=J[k+28>>2];J[k+28>>2]=g+1;H[g+J[k+24>>2]|0]=a;a=J[k+32>>2]>>>8|0;J[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(d>>>0)|0;a=g+((f<<13)+(a-P(d,f)|0)|0)|0;J[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=ba-32|0;ba=a;c=J[e>>2]+J[k+40>>2]|0;b=J[k+32>>2];d=b-32768|0;pc:{if(d>>>0<=63){H[J[k+24>>2]+J[k+28>>2]|0]=b;f=J[k+28>>2]+1|0;break pc}if(d>>>0<=16383){d=J[k+24>>2]+J[k+28>>2]|0;H[d+1|0]=b+49152>>>8;H[d|0]=b;f=J[k+28>>2]+2|0;break pc}if(d>>>0<=4194303){d=J[k+24>>2]+J[k+28>>2]|0;f=b+8355840|0;H[d+2|0]=f>>>16;H[d+1|0]=f>>>8;H[d|0]=b;f=J[k+28>>2]+3|0;break pc}if(d>>>0<=1073741823){d=J[k+24>>2]+J[k+28>>2]|0;f=b-1073774592|0;H[d+3|0]=f>>>24;H[d+2|0]=f>>>16;H[d+1|0]=f>>>8;H[d|0]=b;f=J[k+28>>2]+4|0;break pc}f=J[k+28>>2]}b=f;J[a>>2]=0;J[a+4>>2]=0;H[a+24|0]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;g=b>>31;xb(b,g,a);d=J[a+4>>2]-J[a>>2]|0;ta(d+c|0,c,b);ua(c,J[a>>2],d);c=J[k+40>>2];b=b+d|0;q=J[k+44>>2]+(f>>>0>b>>>0?g+1|0:g)|0;d=b;b=b+c|0;Ia(e,b);b=J[a+12>>2];J[a+12>>2]=0;if(b){na(b)}b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}ba=a+32|0;a=J[k>>2];if(a){J[k+4>>2]=a;na(a)}a=J[k+48>>2];if(a){na(a)}ba=k- -64|0;break Zb}h=1;break v;case 9:l=a;n=0;r=0;d=0;s=0;f=0;i=0;k=ba+-64|0;ba=k;J[k+56>>2]=0;J[k+48>>2]=0;J[k+52>>2]=0;qc:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;r=oa(a);J[k+48>>2]=r;n=pa(r,0,(p<<3)+8|0)+a|0}rc:{if((b|0)<=0){break rc}a=0;if(b>>>0>=4){j=b&-4;while(1){c=a<<2;g=(J[c+l>>2]<<3)+r|0;h=J[g>>2];m=J[g+4>>2];h=h+1|0;m=h?m:m+1|0;J[g>>2]=h;J[g+4>>2]=m;g=(J[l+(c|4)>>2]<<3)+r|0;m=J[g>>2];h=J[g+4>>2];m=m+1|0;h=m?h:h+1|0;J[g>>2]=m;J[g+4>>2]=h;g=(J[l+(c|8)>>2]<<3)+r|0;h=J[g>>2];q=J[g+4>>2];h=h+1|0;q=h?q:q+1|0;J[g>>2]=h;J[g+4>>2]=q;c=(J[l+(c|12)>>2]<<3)+r|0;g=J[c>>2];m=J[c+4>>2];g=g+1|0;m=g?m:m+1|0;J[c>>2]=g;J[c+4>>2]=m;a=a+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=b&3;if(!d){break rc}while(1){c=(J[l+(a<<2)>>2]<<3)+r|0;g=J[c>>2];h=J[c+4>>2];g=g+1|0;h=g?h:h+1|0;J[c>>2]=g;J[c+4>>2]=h;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[k+8>>2]=0;J[k+12>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+24>>2]=0;J[k+28>>2]=0;J[k+32>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k+40>>2]=0;J[k+44>>2]=0;d=0;p=0;c=0;s=0;v=ba-32|0;ba=v;a=n-r>>3;sc:{if((a|0)<=0){break sc}x=a&3;tc:{if(a>>>0<4){a=0;break tc}A=a&-4;a=0;while(1){g=(a<<3)+r|0;t=J[g>>2];m=J[g+4>>2];E=m;q=a|1;n=(q<<3)+r|0;g=J[n>>2];u=a|2;D=(u<<3)+r|0;h=J[D>>2];y=a|3;z=(y<<3)+r|0;j=J[z>>2];c=m|t?a:c;m=J[n+4>>2];c=m|g?q:c;q=J[D+4>>2];n=J[z+4>>2];c=n|j?y:q|h?u:c;u=q;q=i+E|0;f=f+t|0;m=(f>>>0<t>>>0?q+1|0:q)+m|0;i=f;f=g+f|0;g=(i>>>0>f>>>0?m+1|0:m)+u|0;m=f;f=f+h|0;g=(m>>>0>f>>>0?g+1|0:g)+n|0;m=f;f=f+j|0;i=m>>>0>f>>>0?g+1|0:g;a=a+4|0;d=d+4|0;if((A|0)!=(d|0)){continue}break}}if(!x){break sc}while(1){g=(a<<3)+r|0;d=J[g>>2];g=J[g+4>>2];c=d|g?a:c;a=a+1|0;h=g+i|0;f=d+f|0;i=f>>>0<d>>>0?h+1|0:h;p=p+1|0;if((x|0)!=(p|0)){continue}break}}g=c+1|0;J[k+12>>2]=g;d=J[k>>2];a=J[k+4>>2]-d>>3;uc:{if(a>>>0<g>>>0){Wa(k,g-a|0);break uc}if(a>>>0<=g>>>0){break uc}J[k+4>>2]=d+(g<<3)}n=0;vc:{wc:{xc:{yc:{if((c|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[k>>2];a=0;while(1){i=a<<3;h=i+r|0;d=J[h>>2];h=J[h+4>>2];j=(d|h)!=0;m=f+i|0;o=(+(d>>>0)+ +(h>>>0)*4294967296)/w*32768+.5;zc:{if(o<4294967296&o>=0){d=~~o>>>0;break zc}d=0}d=d?d:j?1:d;J[m>>2]=d;n=d+n|0;d=(a|0)==(c|0);a=a+1|0;if(!d){continue}break}if((n|0)==32768){break yc}}J[v+16>>2]=0;J[v+8>>2]=0;J[v+12>>2]=0;p=0;Ac:{if(!g){break Ac}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[v+8>>2]=s;d=0;f=pa(s,0,i);a=0;if(c>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break Ac}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}}J[v+24>>2]=k;a=p-s|0;d=a>>2;Bc:{Cc:{if((a|0)>=513){a=d;while(1){f=oa(a<<2);if(f){break Cc}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}_b(s,p,v+24|0,d,0,0);break Bc}_b(s,p,v+24|0,d,f,a);na(f)}if((n|0)<32768){a=J[k>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-n|0)+32768;a=0;break xc}if((c|0)>0){h=J[k>>2];p=n-32768|0;while(1){o=32768/+(n|0);d=c;while(1){Dc:{Ec:{f=h+(J[(d<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Fc:{if(R(w)<2147483648){i=~~w;break Fc}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(p|0)?a:p;J[q>>2]=m-a;p=p-a|0;n=n-a|0;if((n|0)!=32768){break Ec}n=32768;break Dc}if((c|0)!=(d|0)){break Dc}a=1;break xc}a=(d|0)>1;d=d-1|0;if(a){continue}}break}a=0;if((p|0)>0){continue}break}break xc}a=0;if(n>>>0<32769){break xc}while(1)continue}if((c|0)<0){break vc}break wc}d=J[v+8>>2];if(d){na(d)}if((c|0)<0|a){break vc}}d=J[k>>2];n=0;p=0;a=0;if(c>>>0>=3){i=g&-4;s=0;while(1){f=p<<3;h=f+d|0;J[h+4>>2]=a;j=d+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=d+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=d+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;p=p+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=d+(p<<3)|0;J[i+4>>2]=a;p=p+1|0;a=J[i>>2]+a|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((a|0)!=32768){break vc}a=0;o=0;Gc:{if((c|0)<0){break Gc}f=J[k>>2];if(c){c=g&-2;d=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*30517578125e-15)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*30517578125e-15)+o}a=a+2|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(g&1)){break Gc}a=a<<3;c=J[a+f>>2];if(!c){break Gc}a=a+r|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(c>>>0)*30517578125e-15)+o}o=W(-o);Hc:{if(o<0x10000000000000000&o>=0){c=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Hc}c=0;a=0}J[k+16>>2]=a;J[k+20>>2]=c;Va(k,e)}ba=v+32|0;c=J[k+16>>2];d=J[k+20>>2];a=J[e+4>>2]-J[e>>2]|0;J[k+40>>2]=a;J[k+44>>2]=0;g=d<<1|c>>>31;c=(c<<1)+39|0;q=c>>>0<39?g+1|0:g;c=a+((q&7)<<29|c>>>3)|0;g=q>>>3|0;j=a>>>0>c>>>0?g+1|0:g;a=c+8|0;Ia(e,a);a=J[e>>2];J[k+28>>2]=0;J[k+32>>2]=131072;J[k+24>>2]=a+J[k+40>>2];if((b|0)>0){a=131072;while(1){c=b-1|0;f=J[k>>2]+(J[l+(c<<2)>>2]<<3)|0;d=J[f>>2];i=d<<10;if(i>>>0<=a>>>0){while(1){g=J[k+28>>2];J[k+28>>2]=g+1;H[g+J[k+24>>2]|0]=a;a=J[k+32>>2]>>>8|0;J[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(d>>>0)|0;a=g+((f<<15)+(a-P(d,f)|0)|0)|0;J[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=ba-32|0;ba=a;c=J[e>>2]+J[k+40>>2]|0;b=J[k+32>>2];d=b-131072|0;Ic:{if(d>>>0<=63){H[J[k+24>>2]+J[k+28>>2]|0]=b;f=J[k+28>>2]+1|0;break Ic}if(d>>>0<=16383){d=J[k+24>>2]+J[k+28>>2]|0;H[d+1|0]=b+16384>>>8;H[d|0]=b;f=J[k+28>>2]+2|0;break Ic}if(d>>>0<=4194303){d=J[k+24>>2]+J[k+28>>2]|0;H[d+2|0]=b+8257536>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+3|0;break Ic}if(d>>>0<=1073741823){d=J[k+24>>2]+J[k+28>>2]|0;f=b-1073872896|0;H[d+3|0]=f>>>24;H[d+2|0]=f>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+4|0;break Ic}f=J[k+28>>2]}b=f;J[a>>2]=0;J[a+4>>2]=0;H[a+24|0]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;g=b>>31;xb(b,g,a);d=J[a+4>>2]-J[a>>2]|0;ta(d+c|0,c,b);ua(c,J[a>>2],d);c=J[k+40>>2];b=b+d|0;q=J[k+44>>2]+(f>>>0>b>>>0?g+1|0:g)|0;d=b;b=b+c|0;Ia(e,b);b=J[a+12>>2];J[a+12>>2]=0;if(b){na(b)}b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}ba=a+32|0;a=J[k>>2];if(a){J[k+4>>2]=a;na(a)}a=J[k+48>>2];if(a){na(a)}ba=k- -64|0;break qc}h=1;break v;case 10:l=a;n=0;r=0;d=0;s=0;f=0;i=0;k=ba+-64|0;ba=k;J[k+56>>2]=0;J[k+48>>2]=0;J[k+52>>2]=0;Jc:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;r=oa(a);J[k+48>>2]=r;n=pa(r,0,(p<<3)+8|0)+a|0}Kc:{if((b|0)<=0){break Kc}a=0;if(b>>>0>=4){m=b&-4;while(1){c=a<<2;g=(J[c+l>>2]<<3)+r|0;h=J[g>>2];j=J[g+4>>2];h=h+1|0;j=h?j:j+1|0;J[g>>2]=h;J[g+4>>2]=j;g=(J[l+(c|4)>>2]<<3)+r|0;h=g;j=J[g>>2];g=J[g+4>>2];j=j+1|0;g=j?g:g+1|0;J[h>>2]=j;J[h+4>>2]=g;g=(J[l+(c|8)>>2]<<3)+r|0;h=J[g>>2];q=J[g+4>>2];h=h+1|0;q=h?q:q+1|0;J[g>>2]=h;J[g+4>>2]=q;c=(J[l+(c|12)>>2]<<3)+r|0;g=J[c>>2];j=J[c+4>>2];g=g+1|0;j=g?j:j+1|0;J[c>>2]=g;J[c+4>>2]=j;a=a+4|0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}d=b&3;if(!d){break Kc}while(1){c=(J[l+(a<<2)>>2]<<3)+r|0;h=J[c>>2];g=J[c+4>>2];h=h+1|0;g=h?g:g+1|0;J[c>>2]=h;J[c+4>>2]=g;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[k+8>>2]=0;J[k+12>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+24>>2]=0;J[k+28>>2]=0;J[k+32>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k+40>>2]=0;J[k+44>>2]=0;d=0;p=0;c=0;s=0;t=ba-32|0;ba=t;a=n-r>>3;Lc:{if((a|0)<=0){break Lc}A=a&3;Mc:{if(a>>>0<4){a=0;break Mc}E=a&-4;a=0;while(1){g=(a<<3)+r|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;n=(q<<3)+r|0;g=J[n>>2];u=a|2;v=(u<<3)+r|0;h=J[v>>2];y=a|3;z=(y<<3)+r|0;j=J[z>>2];c=m|x?a:c;m=J[n+4>>2];c=m|g?q:c;q=J[v+4>>2];n=J[z+4>>2];c=n|j?y:q|h?u:c;u=j;v=q;q=i+D|0;f=f+x|0;j=(f>>>0<x>>>0?q+1|0:q)+m|0;m=f;f=g+f|0;g=(m>>>0>f>>>0?j+1|0:j)+v|0;m=f;f=f+h|0;m=(m>>>0>f>>>0?g+1|0:g)+n|0;g=f;f=f+u|0;i=g>>>0>f>>>0?m+1|0:m;a=a+4|0;d=d+4|0;if((E|0)!=(d|0)){continue}break}}if(!A){break Lc}while(1){g=(a<<3)+r|0;d=J[g>>2];g=J[g+4>>2];c=d|g?a:c;a=a+1|0;g=g+i|0;f=d+f|0;i=f>>>0<d>>>0?g+1|0:g;p=p+1|0;if((A|0)!=(p|0)){continue}break}}g=c+1|0;J[k+12>>2]=g;d=J[k>>2];a=J[k+4>>2]-d>>3;Nc:{if(a>>>0<g>>>0){Wa(k,g-a|0);break Nc}if(a>>>0<=g>>>0){break Nc}J[k+4>>2]=d+(g<<3)}n=0;Oc:{Pc:{Qc:{Rc:{if((c|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[k>>2];a=0;while(1){i=a<<3;h=i+r|0;d=J[h>>2];h=J[h+4>>2];j=(d|h)!=0;m=f+i|0;o=(+(d>>>0)+ +(h>>>0)*4294967296)/w*65536+.5;Sc:{if(o<4294967296&o>=0){d=~~o>>>0;break Sc}d=0}d=d?d:j?1:d;J[m>>2]=d;n=d+n|0;d=(a|0)==(c|0);a=a+1|0;if(!d){continue}break}if((n|0)==65536){break Rc}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;Tc:{if(!g){break Tc}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;d=0;f=pa(s,0,i);a=0;if(c>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break Tc}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}}J[t+24>>2]=k;a=p-s|0;d=a>>2;Uc:{Vc:{if((a|0)>=513){a=d;while(1){f=oa(a<<2);if(f){break Vc}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Zb(s,p,t+24|0,d,0,0);break Uc}Zb(s,p,t+24|0,d,f,a);na(f)}if((n|0)<65536){a=J[k>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-n|0)+65536;a=0;break Qc}if((c|0)>0){h=J[k>>2];p=n-65536|0;while(1){o=65536/+(n|0);d=c;while(1){Wc:{Xc:{f=h+(J[(d<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Yc:{if(R(w)<2147483648){i=~~w;break Yc}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(p|0)?a:p;J[q>>2]=m-a;p=p-a|0;n=n-a|0;if((n|0)!=65536){break Xc}n=65536;break Wc}if((c|0)!=(d|0)){break Wc}a=1;break Qc}a=(d|0)>1;d=d-1|0;if(a){continue}}break}a=0;if((p|0)>0){continue}break}break Qc}a=0;if(n>>>0<65537){break Qc}while(1)continue}if((c|0)<0){break Oc}break Pc}d=J[t+8>>2];if(d){na(d)}if((c|0)<0|a){break Oc}}d=J[k>>2];n=0;p=0;a=0;if(c>>>0>=3){i=g&-4;s=0;while(1){f=p<<3;h=f+d|0;J[h+4>>2]=a;j=d+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=d+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=d+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;p=p+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=d+(p<<3)|0;J[i+4>>2]=a;p=p+1|0;a=J[i>>2]+a|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((a|0)!=65536){break Oc}a=0;o=0;Zc:{if((c|0)<0){break Zc}f=J[k>>2];if(c){c=g&-2;d=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*152587890625e-16)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*152587890625e-16)+o}a=a+2|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(g&1)){break Zc}a=a<<3;c=J[a+f>>2];if(!c){break Zc}a=a+r|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(c>>>0)*152587890625e-16)+o}o=W(-o);_c:{if(o<0x10000000000000000&o>=0){c=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break _c}c=0;a=0}J[k+16>>2]=a;J[k+20>>2]=c;Va(k,e)}ba=t+32|0;c=J[k+16>>2];d=J[k+20>>2];a=J[e+4>>2]-J[e>>2]|0;J[k+40>>2]=a;J[k+44>>2]=0;g=d<<1|c>>>31;c=(c<<1)+39|0;q=c>>>0<39?g+1|0:g;c=a+((q&7)<<29|c>>>3)|0;m=q>>>3|0;h=a>>>0>c>>>0?m+1|0:m;a=c+8|0;Ia(e,a);a=J[e>>2];J[k+28>>2]=0;J[k+32>>2]=262144;J[k+24>>2]=a+J[k+40>>2];if((b|0)>0){a=262144;while(1){c=b-1|0;f=J[k>>2]+(J[l+(c<<2)>>2]<<3)|0;d=J[f>>2];i=d<<10;if(i>>>0<=a>>>0){while(1){g=J[k+28>>2];J[k+28>>2]=g+1;H[g+J[k+24>>2]|0]=a;a=J[k+32>>2]>>>8|0;J[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(d>>>0)|0;a=g+((f<<16)+(a-P(d,f)|0)|0)|0;J[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=ba-32|0;ba=a;c=J[e>>2]+J[k+40>>2]|0;b=J[k+32>>2];d=b-262144|0;$c:{if(d>>>0<=63){H[J[k+24>>2]+J[k+28>>2]|0]=b;f=J[k+28>>2]+1|0;break $c}if(d>>>0<=16383){d=J[k+24>>2]+J[k+28>>2]|0;H[d+1|0]=b+16384>>>8;H[d|0]=b;f=J[k+28>>2]+2|0;break $c}if(d>>>0<=4194303){d=J[k+24>>2]+J[k+28>>2]|0;H[d+2|0]=b+8126464>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+3|0;break $c}if(d>>>0<=1073741823){d=J[k+24>>2]+J[k+28>>2]|0;f=b-1074003968|0;H[d+3|0]=f>>>24;H[d+2|0]=f>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+4|0;break $c}f=J[k+28>>2]}b=f;J[a>>2]=0;J[a+4>>2]=0;H[a+24|0]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;g=b>>31;xb(b,g,a);d=J[a+4>>2]-J[a>>2]|0;ta(d+c|0,c,b);ua(c,J[a>>2],d);c=J[k+40>>2];b=b+d|0;q=J[k+44>>2]+(f>>>0>b>>>0?g+1|0:g)|0;d=b;b=b+c|0;Ia(e,b);b=J[a+12>>2];J[a+12>>2]=0;if(b){na(b)}b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}ba=a+32|0;a=J[k>>2];if(a){J[k+4>>2]=a;na(a)}a=J[k+48>>2];if(a){na(a)}ba=k- -64|0;break Jc}h=1;break v;case 11:l=a;n=0;r=0;d=0;s=0;f=0;i=0;k=ba+-64|0;ba=k;J[k+56>>2]=0;J[k+48>>2]=0;J[k+52>>2]=0;ad:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;r=oa(a);J[k+48>>2]=r;n=pa(r,0,(p<<3)+8|0)+a|0}bd:{if((b|0)<=0){break bd}a=0;if(b>>>0>=4){j=b&-4;while(1){c=a<<2;g=(J[c+l>>2]<<3)+r|0;m=J[g>>2];h=J[g+4>>2];m=m+1|0;h=m?h:h+1|0;J[g>>2]=m;J[g+4>>2]=h;g=(J[l+(c|4)>>2]<<3)+r|0;h=J[g>>2];m=J[g+4>>2];h=h+1|0;m=h?m:m+1|0;J[g>>2]=h;J[g+4>>2]=m;g=(J[l+(c|8)>>2]<<3)+r|0;h=J[g>>2];q=J[g+4>>2];h=h+1|0;q=h?q:q+1|0;J[g>>2]=h;J[g+4>>2]=q;c=(J[l+(c|12)>>2]<<3)+r|0;g=J[c>>2];h=J[c+4>>2];g=g+1|0;h=g?h:h+1|0;J[c>>2]=g;J[c+4>>2]=h;a=a+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=b&3;if(!d){break bd}while(1){c=(J[l+(a<<2)>>2]<<3)+r|0;g=J[c>>2];m=J[c+4>>2];g=g+1|0;m=g?m:m+1|0;J[c>>2]=g;J[c+4>>2]=m;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[k+8>>2]=0;J[k+12>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+24>>2]=0;J[k+28>>2]=0;J[k+32>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k+40>>2]=0;J[k+44>>2]=0;d=0;p=0;c=0;s=0;t=ba-32|0;ba=t;a=n-r>>3;cd:{if((a|0)<=0){break cd}A=a&3;dd:{if(a>>>0<4){a=0;break dd}E=a&-4;a=0;while(1){g=(a<<3)+r|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;n=(q<<3)+r|0;g=J[n>>2];u=a|2;v=(u<<3)+r|0;h=J[v>>2];y=a|3;z=(y<<3)+r|0;j=J[z>>2];c=m|x?a:c;m=J[n+4>>2];c=m|g?q:c;q=J[v+4>>2];n=J[z+4>>2];c=n|j?y:q|h?u:c;u=j;j=h;v=q;q=i+D|0;f=f+x|0;h=(f>>>0<x>>>0?q+1|0:q)+m|0;m=f;f=g+f|0;g=(m>>>0>f>>>0?h+1|0:h)+v|0;m=f;f=f+j|0;j=(m>>>0>f>>>0?g+1|0:g)+n|0;g=f;f=f+u|0;i=g>>>0>f>>>0?j+1|0:j;a=a+4|0;d=d+4|0;if((E|0)!=(d|0)){continue}break}}if(!A){break cd}while(1){g=(a<<3)+r|0;d=J[g>>2];g=J[g+4>>2];c=d|g?a:c;a=a+1|0;m=g+i|0;f=d+f|0;i=f>>>0<d>>>0?m+1|0:m;p=p+1|0;if((A|0)!=(p|0)){continue}break}}g=c+1|0;J[k+12>>2]=g;d=J[k>>2];a=J[k+4>>2]-d>>3;ed:{if(a>>>0<g>>>0){Wa(k,g-a|0);break ed}if(a>>>0<=g>>>0){break ed}J[k+4>>2]=d+(g<<3)}n=0;fd:{gd:{hd:{id:{if((c|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[k>>2];a=0;while(1){i=a<<3;h=i+r|0;d=J[h>>2];h=J[h+4>>2];j=(d|h)!=0;m=f+i|0;o=(+(d>>>0)+ +(h>>>0)*4294967296)/w*262144+.5;jd:{if(o<4294967296&o>=0){d=~~o>>>0;break jd}d=0}d=d?d:j?1:d;J[m>>2]=d;n=d+n|0;d=(a|0)==(c|0);a=a+1|0;if(!d){continue}break}if((n|0)==262144){break id}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;kd:{if(!g){break kd}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;d=0;f=pa(s,0,i);a=0;if(c>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break kd}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}}J[t+24>>2]=k;a=p-s|0;d=a>>2;ld:{md:{if((a|0)>=513){a=d;while(1){f=oa(a<<2);if(f){break md}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Yb(s,p,t+24|0,d,0,0);break ld}Yb(s,p,t+24|0,d,f,a);na(f)}if((n|0)<262144){a=J[k>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-n|0)+262144;a=0;break hd}if((c|0)>0){h=J[k>>2];p=n-262144|0;while(1){o=262144/+(n|0);d=c;while(1){nd:{od:{f=h+(J[(d<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));pd:{if(R(w)<2147483648){i=~~w;break pd}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(p|0)?a:p;J[q>>2]=m-a;p=p-a|0;n=n-a|0;if((n|0)!=262144){break od}n=262144;break nd}if((c|0)!=(d|0)){break nd}a=1;break hd}a=(d|0)>1;d=d-1|0;if(a){continue}}break}a=0;if((p|0)>0){continue}break}break hd}a=0;if(n>>>0<262145){break hd}while(1)continue}if((c|0)<0){break fd}break gd}d=J[t+8>>2];if(d){na(d)}if((c|0)<0|a){break fd}}d=J[k>>2];n=0;p=0;a=0;if(c>>>0>=3){i=g&-4;s=0;while(1){f=p<<3;h=f+d|0;J[h+4>>2]=a;j=d+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=d+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=d+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;p=p+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=d+(p<<3)|0;J[i+4>>2]=a;p=p+1|0;a=J[i>>2]+a|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((a|0)!=262144){break fd}a=0;o=0;qd:{if((c|0)<0){break qd}f=J[k>>2];if(c){c=g&-2;d=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*3814697265625e-18)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*3814697265625e-18)+o}a=a+2|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(g&1)){break qd}a=a<<3;c=J[a+f>>2];if(!c){break qd}a=a+r|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(c>>>0)*3814697265625e-18)+o}o=W(-o);rd:{if(o<0x10000000000000000&o>=0){c=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break rd}c=0;a=0}J[k+16>>2]=a;J[k+20>>2]=c;Va(k,e)}ba=t+32|0;c=J[k+16>>2];d=J[k+20>>2];a=J[e+4>>2]-J[e>>2]|0;J[k+40>>2]=a;J[k+44>>2]=0;g=d<<1|c>>>31;c=(c<<1)+39|0;q=c>>>0<39?g+1|0:g;c=a+((q&7)<<29|c>>>3)|0;j=q>>>3|0;g=a>>>0>c>>>0?j+1|0:j;a=c+8|0;Ia(e,a);a=J[e>>2];J[k+28>>2]=0;J[k+32>>2]=1048576;J[k+24>>2]=a+J[k+40>>2];if((b|0)>0){a=1048576;while(1){c=b-1|0;f=J[k>>2]+(J[l+(c<<2)>>2]<<3)|0;d=J[f>>2];i=d<<10;if(i>>>0<=a>>>0){while(1){g=J[k+28>>2];J[k+28>>2]=g+1;H[g+J[k+24>>2]|0]=a;a=J[k+32>>2]>>>8|0;J[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(d>>>0)|0;a=g+((f<<18)+(a-P(d,f)|0)|0)|0;J[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=ba-32|0;ba=a;c=J[e>>2]+J[k+40>>2]|0;b=J[k+32>>2];d=b+-1048576|0;sd:{if(d>>>0<=63){H[J[k+24>>2]+J[k+28>>2]|0]=b;f=J[k+28>>2]+1|0;break sd}if(d>>>0<=16383){d=J[k+24>>2]+J[k+28>>2]|0;H[d+1|0]=b+16384>>>8;H[d|0]=b;f=J[k+28>>2]+2|0;break sd}if(d>>>0<=4194303){d=J[k+24>>2]+J[k+28>>2]|0;H[d+2|0]=b+7340032>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+3|0;break sd}if(d>>>0<=1073741823){d=J[k+24>>2]+J[k+28>>2]|0;f=b-1074790400|0;H[d+3|0]=f>>>24;H[d+2|0]=f>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+4|0;break sd}f=J[k+28>>2]}b=f;J[a>>2]=0;J[a+4>>2]=0;H[a+24|0]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;g=b>>31;xb(b,g,a);d=J[a+4>>2]-J[a>>2]|0;ta(d+c|0,c,b);ua(c,J[a>>2],d);c=J[k+40>>2];b=b+d|0;q=J[k+44>>2]+(f>>>0>b>>>0?g+1|0:g)|0;d=b;b=b+c|0;Ia(e,b);b=J[a+12>>2];J[a+12>>2]=0;if(b){na(b)}b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}ba=a+32|0;a=J[k>>2];if(a){J[k+4>>2]=a;na(a)}a=J[k+48>>2];if(a){na(a)}ba=k- -64|0;break ad}h=1;break v;case 12:l=a;n=0;r=0;d=0;s=0;f=0;i=0;k=ba+-64|0;ba=k;J[k+56>>2]=0;J[k+48>>2]=0;J[k+52>>2]=0;td:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;r=oa(a);J[k+48>>2]=r;n=pa(r,0,(p<<3)+8|0)+a|0}ud:{if((b|0)<=0){break ud}a=0;if(b>>>0>=4){m=b&-4;while(1){c=a<<2;g=(J[c+l>>2]<<3)+r|0;h=g;j=J[g>>2];g=J[g+4>>2];j=j+1|0;g=j?g:g+1|0;J[h>>2]=j;J[h+4>>2]=g;g=(J[l+(c|4)>>2]<<3)+r|0;h=J[g>>2];j=J[g+4>>2];h=h+1|0;j=h?j:j+1|0;J[g>>2]=h;J[g+4>>2]=j;g=(J[l+(c|8)>>2]<<3)+r|0;h=J[g>>2];q=J[g+4>>2];h=h+1|0;q=h?q:q+1|0;J[g>>2]=h;J[g+4>>2]=q;c=(J[l+(c|12)>>2]<<3)+r|0;h=J[c>>2];g=J[c+4>>2];h=h+1|0;g=h?g:g+1|0;J[c>>2]=h;J[c+4>>2]=g;a=a+4|0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}d=b&3;if(!d){break ud}while(1){c=(J[l+(a<<2)>>2]<<3)+r|0;g=J[c>>2];j=J[c+4>>2];g=g+1|0;j=g?j:j+1|0;J[c>>2]=g;J[c+4>>2]=j;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[k+8>>2]=0;J[k+12>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+24>>2]=0;J[k+28>>2]=0;J[k+32>>2]=0;J[k>>2]=0;J[k+4>>2]=0;J[k+40>>2]=0;J[k+44>>2]=0;d=0;p=0;c=0;s=0;t=ba-32|0;ba=t;a=n-r>>3;vd:{if((a|0)<=0){break vd}A=a&3;wd:{if(a>>>0<4){a=0;break wd}E=a&-4;a=0;while(1){g=(a<<3)+r|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;n=(q<<3)+r|0;g=J[n>>2];u=a|2;v=(u<<3)+r|0;h=J[v>>2];y=a|3;z=(y<<3)+r|0;j=J[z>>2];c=m|x?a:c;m=J[n+4>>2];c=m|g?q:c;q=J[v+4>>2];n=J[z+4>>2];c=n|j?y:q|h?u:c;u=q;v=g;q=i+D|0;f=f+x|0;g=(f>>>0<x>>>0?q+1|0:q)+m|0;m=f;f=f+v|0;g=(m>>>0>f>>>0?g+1|0:g)+u|0;m=f;f=f+h|0;h=(m>>>0>f>>>0?g+1|0:g)+n|0;g=f;f=f+j|0;i=g>>>0>f>>>0?h+1|0:h;a=a+4|0;d=d+4|0;if((E|0)!=(d|0)){continue}break}}if(!A){break vd}while(1){g=(a<<3)+r|0;d=J[g>>2];g=J[g+4>>2];c=d|g?a:c;a=a+1|0;j=g+i|0;f=d+f|0;i=f>>>0<d>>>0?j+1|0:j;p=p+1|0;if((A|0)!=(p|0)){continue}break}}g=c+1|0;J[k+12>>2]=g;d=J[k>>2];a=J[k+4>>2]-d>>3;xd:{if(a>>>0<g>>>0){Wa(k,g-a|0);break xd}if(a>>>0<=g>>>0){break xd}J[k+4>>2]=d+(g<<3)}n=0;yd:{zd:{Ad:{Bd:{if((c|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[k>>2];a=0;while(1){i=a<<3;h=i+r|0;d=J[h>>2];h=J[h+4>>2];j=(d|h)!=0;m=f+i|0;o=(+(d>>>0)+ +(h>>>0)*4294967296)/w*524288+.5;Cd:{if(o<4294967296&o>=0){d=~~o>>>0;break Cd}d=0}d=d?d:j?1:d;J[m>>2]=d;n=d+n|0;d=(a|0)==(c|0);a=a+1|0;if(!d){continue}break}if((n|0)==524288){break Bd}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;Dd:{if(!g){break Dd}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;d=0;f=pa(s,0,i);a=0;if(c>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break Dd}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}}J[t+24>>2]=k;a=p-s|0;d=a>>2;Ed:{Fd:{if((a|0)>=513){a=d;while(1){f=oa(a<<2);if(f){break Fd}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Xb(s,p,t+24|0,d,0,0);break Ed}Xb(s,p,t+24|0,d,f,a);na(f)}if((n|0)<524288){a=J[k>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-n|0)+524288;a=0;break Ad}if((c|0)>0){h=J[k>>2];p=n-524288|0;while(1){o=524288/+(n|0);d=c;while(1){Gd:{Hd:{f=h+(J[(d<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Id:{if(R(w)<2147483648){i=~~w;break Id}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(p|0)?a:p;J[q>>2]=m-a;p=p-a|0;n=n-a|0;if((n|0)!=524288){break Hd}n=524288;break Gd}if((c|0)!=(d|0)){break Gd}a=1;break Ad}a=(d|0)>1;d=d-1|0;if(a){continue}}break}a=0;if((p|0)>0){continue}break}break Ad}a=0;if(n>>>0<524289){break Ad}while(1)continue}if((c|0)<0){break yd}break zd}d=J[t+8>>2];if(d){na(d)}if((c|0)<0|a){break yd}}d=J[k>>2];n=0;p=0;a=0;if(c>>>0>=3){i=g&-4;s=0;while(1){f=p<<3;h=f+d|0;J[h+4>>2]=a;j=d+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=d+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=d+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;p=p+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=d+(p<<3)|0;J[i+4>>2]=a;p=p+1|0;a=J[i>>2]+a|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((a|0)!=524288){break yd}a=0;o=0;Jd:{if((c|0)<0){break Jd}f=J[k>>2];if(c){c=g&-2;d=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*19073486328125e-19)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+r|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*19073486328125e-19)+o}a=a+2|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(g&1)){break Jd}a=a<<3;c=J[a+f>>2];if(!c){break Jd}a=a+r|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(c>>>0)*19073486328125e-19)+o}o=W(-o);Kd:{if(o<0x10000000000000000&o>=0){c=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Kd}c=0;a=0}J[k+16>>2]=a;J[k+20>>2]=c;Va(k,e)}ba=t+32|0;c=J[k+16>>2];d=J[k+20>>2];a=J[e+4>>2]-J[e>>2]|0;J[k+40>>2]=a;J[k+44>>2]=0;g=d<<1|c>>>31;c=(c<<1)+39|0;q=c>>>0<39?g+1|0:g;c=a+((q&7)<<29|c>>>3)|0;h=q>>>3|0;m=a>>>0>c>>>0?h+1|0:h;a=c+8|0;Ia(e,a);a=J[e>>2];J[k+28>>2]=0;J[k+32>>2]=2097152;J[k+24>>2]=a+J[k+40>>2];if((b|0)>0){a=2097152;while(1){c=b-1|0;f=J[k>>2]+(J[l+(c<<2)>>2]<<3)|0;d=J[f>>2];i=d<<10;if(i>>>0<=a>>>0){while(1){g=J[k+28>>2];J[k+28>>2]=g+1;H[g+J[k+24>>2]|0]=a;a=J[k+32>>2]>>>8|0;J[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(d>>>0)|0;a=g+((f<<19)+(a-P(d,f)|0)|0)|0;J[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=ba-32|0;ba=a;c=J[e>>2]+J[k+40>>2]|0;b=J[k+32>>2];d=b-2097152|0;Ld:{if(d>>>0<=63){H[J[k+24>>2]+J[k+28>>2]|0]=b;f=J[k+28>>2]+1|0;break Ld}if(d>>>0<=16383){d=J[k+24>>2]+J[k+28>>2]|0;H[d+1|0]=b+16384>>>8;H[d|0]=b;f=J[k+28>>2]+2|0;break Ld}if(d>>>0<=4194303){d=J[k+24>>2]+J[k+28>>2]|0;H[d+2|0]=b+6291456>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+3|0;break Ld}if(d>>>0<=1073741823){d=J[k+24>>2]+J[k+28>>2]|0;f=b-1075838976|0;H[d+3|0]=f>>>24;H[d+2|0]=f>>>16;H[d+1|0]=b>>>8;H[d|0]=b;f=J[k+28>>2]+4|0;break Ld}f=J[k+28>>2]}b=f;J[a>>2]=0;J[a+4>>2]=0;H[a+24|0]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;g=b>>31;xb(b,g,a);d=J[a+4>>2]-J[a>>2]|0;ta(d+c|0,c,b);ua(c,J[a>>2],d);c=J[k+40>>2];b=b+d|0;q=J[k+44>>2]+(f>>>0>b>>>0?g+1|0:g)|0;d=b;b=b+c|0;Ia(e,b);b=J[a+12>>2];J[a+12>>2]=0;if(b){na(b)}b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}ba=a+32|0;a=J[k>>2];if(a){J[k+4>>2]=a;na(a)}a=J[k+48>>2];if(a){na(a)}ba=k- -64|0;break td}h=1;break v;case 13:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;Md:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}Nd:{if((b|0)<=0){break Nd}a=0;if(b>>>0>=4){g=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;h=J[d>>2];m=J[d+4>>2];h=h+1|0;m=h?m:m+1|0;J[d>>2]=h;J[d+4>>2]=m;d=(J[u+(c|4)>>2]<<3)+n|0;j=J[d>>2];h=J[d+4>>2];j=j+1|0;h=j?h:h+1|0;J[d>>2]=j;J[d+4>>2]=h;d=(J[u+(c|8)>>2]<<3)+n|0;h=J[d>>2];q=J[d+4>>2];h=h+1|0;q=h?q:q+1|0;J[d>>2]=h;J[d+4>>2]=q;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];m=J[c+4>>2];d=d+1|0;m=d?m:m+1|0;J[c>>2]=d;J[c+4>>2]=m;a=a+4|0;r=r+4|0;if((g|0)!=(r|0)){continue}break}}d=b&3;if(!d){break Nd}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];h=J[c+4>>2];g=g+1|0;h=g?h:h+1|0;J[c>>2]=g;J[c+4>>2]=h;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;Od:{if((a|0)<=0){break Od}x=a&3;Pd:{if(a>>>0<4){a=0;break Pd}A=a&-4;a=0;while(1){g=(a<<3)+n|0;p=J[g>>2];m=J[g+4>>2];E=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;D=(v<<3)+n|0;h=J[D>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=p|m?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[D+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=q;q=i+E|0;f=f+p|0;m=(f>>>0<p>>>0?q+1|0:q)+m|0;i=f;f=g+f|0;g=(i>>>0>f>>>0?m+1|0:m)+v|0;m=f;f=f+h|0;g=(m>>>0>f>>>0?g+1|0:g)+k|0;m=f;f=f+j|0;i=m>>>0>f>>>0?g+1|0:g;a=a+4|0;e=e+4|0;if((A|0)!=(e|0)){continue}break}}if(!x){break Od}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;h=g+i|0;f=e+f|0;i=f>>>0<e>>>0?h+1|0:h;r=r+1|0;if((x|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;Qd:{if(a>>>0<g>>>0){Wa(l,g-a|0);break Qd}if(a>>>0<=g>>>0){break Qd}J[l+4>>2]=e+(g<<3)}k=0;Rd:{Sd:{Td:{Ud:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*1048576+.5;Vd:{if(o<4294967296&o>=0){e=~~o>>>0;break Vd}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==1048576){break Ud}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;Wd:{if(!g){break Wd}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break Wd}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;Xd:{Yd:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break Yd}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Wb(s,p,t+24|0,e,0,0);break Xd}Wb(s,p,t+24|0,e,f,a);na(f)}if((k|0)<1048576){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)- -1048576;a=0;break Td}if((d|0)>0){h=J[l>>2];r=k+-1048576|0;while(1){o=1048576/+(k|0);e=d;while(1){Zd:{_d:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));$d:{if(R(w)<2147483648){i=~~w;break $d}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=1048576){break _d}k=1048576;break Zd}if((d|0)!=(e|0)){break Zd}a=1;break Td}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break Td}a=0;if(k>>>0<1048577){break Td}while(1)continue}if((d|0)<0){break Rd}break Sd}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break Rd}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=1048576){break Rd}a=0;o=0;ae:{if((d|0)<0){break ae}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break ae}a=a<<3;d=J[a+f>>2];if(!d){break ae}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*9.5367431640625e-7)+o}o=W(-o);be:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break be}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;q=d>>>0<39?g+1|0:g;d=a+((q&7)<<29|d>>>3)|0;g=q>>>3|0;j=a>>>0>d>>>0?g+1|0:g;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=4194304;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=4194304;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<20)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}rc(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break Md}h=1;break v;case 14:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;ce:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}de:{if((b|0)<=0){break de}a=0;if(b>>>0>=4){h=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;d=(J[u+(c|4)>>2]<<3)+n|0;g=J[d>>2];q=J[d+4>>2];g=g+1|0;q=g?q:q+1|0;J[d>>2]=g;J[d+4>>2]=q;d=(J[u+(c|8)>>2]<<3)+n|0;g=J[d>>2];j=J[d+4>>2];g=g+1|0;j=g?j:j+1|0;J[d>>2]=g;J[d+4>>2]=j;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];g=J[c+4>>2];d=d+1|0;g=d?g:g+1|0;J[c>>2]=d;J[c+4>>2]=g;a=a+4|0;r=r+4|0;if((h|0)!=(r|0)){continue}break}}d=b&3;if(!d){break de}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];q=J[c+4>>2];g=g+1|0;q=g?q:q+1|0;J[c>>2]=g;J[c+4>>2]=q;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;ee:{if((a|0)<=0){break ee}A=a&3;fe:{if(a>>>0<4){a=0;break fe}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=j;p=g;j=i+D|0;f=f+x|0;g=(f>>>0<x>>>0?j+1|0:j)+m|0;m=f;f=f+p|0;g=(m>>>0>f>>>0?g+1|0:g)+q|0;m=f;f=f+h|0;m=(m>>>0>f>>>0?g+1|0:g)+k|0;g=f;f=f+v|0;i=g>>>0>f>>>0?m+1|0:m;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break ee}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;q=g+i|0;f=e+f|0;i=f>>>0<e>>>0?q+1|0:q;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;ge:{if(a>>>0<g>>>0){Wa(l,g-a|0);break ge}if(a>>>0<=g>>>0){break ge}J[l+4>>2]=e+(g<<3)}k=0;he:{ie:{je:{ke:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*1048576+.5;le:{if(o<4294967296&o>=0){e=~~o>>>0;break le}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==1048576){break ke}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;me:{if(!g){break me}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break me}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;ne:{oe:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break oe}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Vb(s,p,t+24|0,e,0,0);break ne}Vb(s,p,t+24|0,e,f,a);na(f)}if((k|0)<1048576){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)- -1048576;a=0;break je}if((d|0)>0){h=J[l>>2];r=k+-1048576|0;while(1){o=1048576/+(k|0);e=d;while(1){pe:{qe:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));re:{if(R(w)<2147483648){i=~~w;break re}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=1048576){break qe}k=1048576;break pe}if((d|0)!=(e|0)){break pe}a=1;break je}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break je}a=0;if(k>>>0<1048577){break je}while(1)continue}if((d|0)<0){break he}break ie}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break he}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=1048576){break he}a=0;o=0;se:{if((d|0)<0){break se}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break se}a=a<<3;d=J[a+f>>2];if(!d){break se}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*9.5367431640625e-7)+o}o=W(-o);te:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break te}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;j=d>>>0<39?g+1|0:g;d=a+((j&7)<<29|d>>>3)|0;m=j>>>3|0;h=a>>>0>d>>>0?m+1|0:m;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=4194304;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=4194304;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<20)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}rc(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break ce}h=1;break v;case 15:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;ue:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}ve:{if((b|0)<=0){break ve}a=0;if(b>>>0>=4){m=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;h=J[d>>2];g=J[d+4>>2];h=h+1|0;g=h?g:g+1|0;J[d>>2]=h;J[d+4>>2]=g;d=(J[u+(c|4)>>2]<<3)+n|0;g=J[d>>2];j=J[d+4>>2];g=g+1|0;j=g?j:j+1|0;J[d>>2]=g;J[d+4>>2]=j;d=(J[u+(c|8)>>2]<<3)+n|0;g=J[d>>2];h=J[d+4>>2];g=g+1|0;h=g?h:h+1|0;J[d>>2]=g;J[d+4>>2]=h;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];g=J[c+4>>2];d=d+1|0;g=d?g:g+1|0;J[c>>2]=d;J[c+4>>2]=g;a=a+4|0;r=r+4|0;if((m|0)!=(r|0)){continue}break}}d=b&3;if(!d){break ve}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];j=J[c+4>>2];g=g+1|0;j=g?j:j+1|0;J[c>>2]=g;J[c+4>>2]=j;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;we:{if((a|0)<=0){break we}A=a&3;xe:{if(a>>>0<4){a=0;break xe}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=h;p=g;h=i+D|0;f=f+x|0;g=(f>>>0<x>>>0?h+1|0:h)+m|0;m=f;f=f+p|0;m=(m>>>0>f>>>0?g+1|0:g)+q|0;g=f;f=f+v|0;g=(g>>>0>f>>>0?m+1|0:m)+k|0;m=f;f=f+j|0;i=m>>>0>f>>>0?g+1|0:g;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break we}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;j=g+i|0;f=e+f|0;i=f>>>0<e>>>0?j+1|0:j;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;ye:{if(a>>>0<g>>>0){Wa(l,g-a|0);break ye}if(a>>>0<=g>>>0){break ye}J[l+4>>2]=e+(g<<3)}k=0;ze:{Ae:{Be:{Ce:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*1048576+.5;De:{if(o<4294967296&o>=0){e=~~o>>>0;break De}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==1048576){break Ce}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;Ee:{if(!g){break Ee}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break Ee}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;Fe:{Ge:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break Ge}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Ub(s,p,t+24|0,e,0,0);break Fe}Ub(s,p,t+24|0,e,f,a);na(f)}if((k|0)<1048576){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)- -1048576;a=0;break Be}if((d|0)>0){h=J[l>>2];r=k+-1048576|0;while(1){o=1048576/+(k|0);e=d;while(1){He:{Ie:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));Je:{if(R(w)<2147483648){i=~~w;break Je}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=1048576){break Ie}k=1048576;break He}if((d|0)!=(e|0)){break He}a=1;break Be}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break Be}a=0;if(k>>>0<1048577){break Be}while(1)continue}if((d|0)<0){break ze}break Ae}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break ze}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=1048576){break ze}a=0;o=0;Ke:{if((d|0)<0){break Ke}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break Ke}a=a<<3;d=J[a+f>>2];if(!d){break Ke}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*9.5367431640625e-7)+o}o=W(-o);Le:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Le}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;m=e<<1|d>>>31;d=(d<<1)+39|0;h=m;h=d>>>0<39?h+1|0:h;g=h>>>3|0;d=a+((h&7)<<29|d>>>3)|0;q=d>>>0<a>>>0?g+1|0:g;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=4194304;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=4194304;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<20)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}rc(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break ue}h=1;break v;case 16:u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;Me:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}Ne:{if((b|0)<=0){break Ne}a=0;if(b>>>0>=4){g=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;h=J[d>>2];m=J[d+4>>2];h=h+1|0;m=h?m:m+1|0;J[d>>2]=h;J[d+4>>2]=m;d=(J[u+(c|4)>>2]<<3)+n|0;j=J[d>>2];h=J[d+4>>2];j=j+1|0;h=j?h:h+1|0;J[d>>2]=j;J[d+4>>2]=h;d=(J[u+(c|8)>>2]<<3)+n|0;h=J[d>>2];q=J[d+4>>2];h=h+1|0;q=h?q:q+1|0;J[d>>2]=h;J[d+4>>2]=q;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];m=J[c+4>>2];d=d+1|0;m=d?m:m+1|0;J[c>>2]=d;J[c+4>>2]=m;a=a+4|0;r=r+4|0;if((g|0)!=(r|0)){continue}break}}d=b&3;if(!d){break Ne}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];h=J[c+4>>2];g=g+1|0;h=g?h:h+1|0;J[c>>2]=g;J[c+4>>2]=h;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;Oe:{if((a|0)<=0){break Oe}x=a&3;Pe:{if(a>>>0<4){a=0;break Pe}A=a&-4;a=0;while(1){g=(a<<3)+n|0;p=J[g>>2];m=J[g+4>>2];E=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;D=(v<<3)+n|0;h=J[D>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=p|m?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[D+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=q;q=i+E|0;f=f+p|0;m=(f>>>0<p>>>0?q+1|0:q)+m|0;i=f;f=g+f|0;g=(i>>>0>f>>>0?m+1|0:m)+v|0;m=f;f=f+h|0;g=(m>>>0>f>>>0?g+1|0:g)+k|0;m=f;f=f+j|0;i=m>>>0>f>>>0?g+1|0:g;a=a+4|0;e=e+4|0;if((A|0)!=(e|0)){continue}break}}if(!x){break Oe}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;h=g+i|0;f=e+f|0;i=f>>>0<e>>>0?h+1|0:h;r=r+1|0;if((x|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;Qe:{if(a>>>0<g>>>0){Wa(l,g-a|0);break Qe}if(a>>>0<=g>>>0){break Qe}J[l+4>>2]=e+(g<<3)}k=0;Re:{Se:{Te:{Ue:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*1048576+.5;Ve:{if(o<4294967296&o>=0){e=~~o>>>0;break Ve}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==1048576){break Ue}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;We:{if(!g){break We}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break We}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;Xe:{Ye:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break Ye}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Tb(s,p,t+24|0,e,0,0);break Xe}Tb(s,p,t+24|0,e,f,a);na(f)}if((k|0)<1048576){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)- -1048576;a=0;break Te}if((d|0)>0){h=J[l>>2];r=k+-1048576|0;while(1){o=1048576/+(k|0);e=d;while(1){Ze:{_e:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));$e:{if(R(w)<2147483648){i=~~w;break $e}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=1048576){break _e}k=1048576;break Ze}if((d|0)!=(e|0)){break Ze}a=1;break Te}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break Te}a=0;if(k>>>0<1048577){break Te}while(1)continue}if((d|0)<0){break Re}break Se}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break Re}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=1048576){break Re}a=0;o=0;af:{if((d|0)<0){break af}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break af}a=a<<3;d=J[a+f>>2];if(!d){break af}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*9.5367431640625e-7)+o}o=W(-o);bf:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break bf}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;q=d>>>0<39?g+1|0:g;d=a+((q&7)<<29|d>>>3)|0;g=q>>>3|0;j=a>>>0>d>>>0?g+1|0:g;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=4194304;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=4194304;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<20)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}rc(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break Me}h=1;break v;case 17:break E;default:break v}}u=a;k=0;n=0;r=0;s=0;f=0;i=0;l=ba+-64|0;ba=l;J[l+56>>2]=0;J[l+48>>2]=0;J[l+52>>2]=0;cf:{a=p+1|0;if(a){if(a>>>0>=536870912){break a}a=a<<3;n=oa(a);J[l+48>>2]=n;k=pa(n,0,(p<<3)+8|0)+a|0}df:{if((b|0)<=0){break df}a=0;if(b>>>0>=4){h=b&-4;while(1){c=a<<2;d=(J[c+u>>2]<<3)+n|0;j=J[d>>2];g=J[d+4>>2];j=j+1|0;g=j?g:g+1|0;J[d>>2]=j;J[d+4>>2]=g;d=(J[u+(c|4)>>2]<<3)+n|0;g=J[d>>2];q=J[d+4>>2];g=g+1|0;q=g?q:q+1|0;J[d>>2]=g;J[d+4>>2]=q;d=(J[u+(c|8)>>2]<<3)+n|0;g=J[d>>2];j=J[d+4>>2];g=g+1|0;j=g?j:j+1|0;J[d>>2]=g;J[d+4>>2]=j;c=(J[u+(c|12)>>2]<<3)+n|0;d=J[c>>2];g=J[c+4>>2];d=d+1|0;g=d?g:g+1|0;J[c>>2]=d;J[c+4>>2]=g;a=a+4|0;r=r+4|0;if((h|0)!=(r|0)){continue}break}}d=b&3;if(!d){break df}while(1){c=(J[u+(a<<2)>>2]<<3)+n|0;g=J[c>>2];q=J[c+4>>2];g=g+1|0;q=g?q:q+1|0;J[c>>2]=g;J[c+4>>2]=q;a=a+1|0;s=s+1|0;if((d|0)!=(s|0)){continue}break}}J[l+8>>2]=0;J[l+12>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;J[l+24>>2]=0;J[l+28>>2]=0;J[l+32>>2]=0;J[l>>2]=0;J[l+4>>2]=0;J[l+40>>2]=0;J[l+44>>2]=0;c=e;e=0;r=0;d=0;s=0;t=ba-32|0;ba=t;a=k-n>>3;ef:{if((a|0)<=0){break ef}A=a&3;ff:{if(a>>>0<4){a=0;break ff}E=a&-4;a=0;while(1){g=(a<<3)+n|0;x=J[g>>2];m=J[g+4>>2];D=m;q=a|1;k=(q<<3)+n|0;g=J[k>>2];v=a|2;p=(v<<3)+n|0;h=J[p>>2];y=a|3;z=(y<<3)+n|0;j=J[z>>2];d=m|x?a:d;m=J[k+4>>2];d=m|g?q:d;q=J[p+4>>2];k=J[z+4>>2];d=k|j?y:q|h?v:d;v=j;p=g;j=i+D|0;f=f+x|0;g=(f>>>0<x>>>0?j+1|0:j)+m|0;m=f;f=f+p|0;g=(m>>>0>f>>>0?g+1|0:g)+q|0;m=f;f=f+h|0;m=(m>>>0>f>>>0?g+1|0:g)+k|0;g=f;f=f+v|0;i=g>>>0>f>>>0?m+1|0:m;a=a+4|0;e=e+4|0;if((E|0)!=(e|0)){continue}break}}if(!A){break ef}while(1){g=(a<<3)+n|0;e=J[g>>2];g=J[g+4>>2];d=e|g?a:d;a=a+1|0;q=g+i|0;f=e+f|0;i=f>>>0<e>>>0?q+1|0:q;r=r+1|0;if((A|0)!=(r|0)){continue}break}}g=d+1|0;J[l+12>>2]=g;e=J[l>>2];a=J[l+4>>2]-e>>3;gf:{if(a>>>0<g>>>0){Wa(l,g-a|0);break gf}if(a>>>0<=g>>>0){break gf}J[l+4>>2]=e+(g<<3)}k=0;hf:{jf:{kf:{lf:{if((d|0)>=0){w=+(f>>>0)+ +(i>>>0)*4294967296;f=J[l>>2];a=0;while(1){i=a<<3;h=i+n|0;e=J[h>>2];h=J[h+4>>2];j=(e|h)!=0;m=f+i|0;o=(+(e>>>0)+ +(h>>>0)*4294967296)/w*1048576+.5;mf:{if(o<4294967296&o>=0){e=~~o>>>0;break mf}e=0}e=e?e:j?1:e;J[m>>2]=e;k=e+k|0;e=(a|0)==(d|0);a=a+1|0;if(!e){continue}break}if((k|0)==1048576){break lf}}J[t+16>>2]=0;J[t+8>>2]=0;J[t+12>>2]=0;p=0;nf:{if(!g){break nf}if(g>>>0>=1073741824){break a}i=g<<2;s=oa(i);J[t+8>>2]=s;e=0;f=pa(s,0,i);a=0;if(d>>>0>=7){h=g&-8;while(1){J[f+(a<<2)>>2]=a;j=a|1;J[f+(j<<2)>>2]=j;j=a|2;J[f+(j<<2)>>2]=j;j=a|3;J[f+(j<<2)>>2]=j;j=a|4;J[f+(j<<2)>>2]=j;j=a|5;J[f+(j<<2)>>2]=j;j=a|6;J[f+(j<<2)>>2]=j;j=a|7;J[f+(j<<2)>>2]=j;a=a+8|0;p=p+8|0;if((h|0)!=(p|0)){continue}break}}p=f+i|0;i=g&7;if(!i){break nf}while(1){J[f+(a<<2)>>2]=a;a=a+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}J[t+24>>2]=l;a=p-s|0;e=a>>2;of:{pf:{if((a|0)>=513){a=e;while(1){f=oa(a<<2);if(f){break pf}f=a>>>0>1;a=a>>>1|0;if(f){continue}break}}Sb(s,p,t+24|0,e,0,0);break of}Sb(s,p,t+24|0,e,f,a);na(f)}if((k|0)<1048576){a=J[l>>2]+(J[p-4>>2]<<3)|0;J[a>>2]=(J[a>>2]-k|0)- -1048576;a=0;break kf}if((d|0)>0){h=J[l>>2];r=k+-1048576|0;while(1){o=1048576/+(k|0);e=d;while(1){qf:{rf:{f=h+(J[(e<<2)+s>>2]<<3)|0;a=J[f>>2];if(a>>>0>=2){q=f;m=a;w=V(o*+(a>>>0));sf:{if(R(w)<2147483648){i=~~w;break sf}i=-2147483648}f=(a|0)==(i|0)?1:a-i|0;a=(a|0)>(f|0)?f:a-1|0;a=(a|0)<(r|0)?a:r;J[q>>2]=m-a;r=r-a|0;k=k-a|0;if((k|0)!=1048576){break rf}k=1048576;break qf}if((d|0)!=(e|0)){break qf}a=1;break kf}a=(e|0)>1;e=e-1|0;if(a){continue}}break}a=0;if((r|0)>0){continue}break}break kf}a=0;if(k>>>0<1048577){break kf}while(1)continue}if((d|0)<0){break hf}break jf}e=J[t+8>>2];if(e){na(e)}if((d|0)<0|a){break hf}}e=J[l>>2];k=0;r=0;a=0;if(d>>>0>=3){i=g&-4;s=0;while(1){f=r<<3;h=f+e|0;J[h+4>>2]=a;j=e+(f|8)|0;a=J[h>>2]+a|0;J[j+4>>2]=a;h=e+(f|16)|0;a=a+J[j>>2]|0;J[h+4>>2]=a;f=e+(f|24)|0;a=a+J[h>>2]|0;J[f+4>>2]=a;a=a+J[f>>2]|0;r=r+4|0;s=s+4|0;if((i|0)!=(s|0)){continue}break}}f=g&3;if(f){while(1){i=e+(r<<3)|0;J[i+4>>2]=a;r=r+1|0;a=J[i>>2]+a|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((a|0)!=1048576){break hf}a=0;o=0;tf:{if((d|0)<0){break tf}f=J[l>>2];if(d){d=g&-2;e=0;while(1){i=a<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}i=(a|1)<<3;h=J[i+f>>2];if(h){i=i+n|0;o=(+M[i>>2]+ +M[i+4>>2]*4294967296)*va(+(h>>>0)*9.5367431640625e-7)+o}a=a+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!(g&1)){break tf}a=a<<3;d=J[a+f>>2];if(!d){break tf}a=a+n|0;o=(+M[a>>2]+ +M[a+4>>2]*4294967296)*va(+(d>>>0)*9.5367431640625e-7)+o}o=W(-o);uf:{if(o<0x10000000000000000&o>=0){d=R(o)>=1?~~(o>0?T(V(o*2.3283064365386963e-10),4294967295):W((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break uf}d=0;a=0}J[l+16>>2]=a;J[l+20>>2]=d;Va(l,c)}ba=t+32|0;d=J[l+16>>2];e=J[l+20>>2];a=J[c+4>>2]-J[c>>2]|0;J[l+40>>2]=a;J[l+44>>2]=0;g=e<<1|d>>>31;d=(d<<1)+39|0;j=d>>>0<39?g+1|0:g;d=a+((j&7)<<29|d>>>3)|0;m=j>>>3|0;h=a>>>0>d>>>0?m+1|0:m;a=d+8|0;Ia(c,a);a=J[c>>2];J[l+28>>2]=0;J[l+32>>2]=4194304;J[l+24>>2]=a+J[l+40>>2];if((b|0)>0){a=4194304;while(1){d=b-1|0;f=J[l>>2]+(J[u+(d<<2)>>2]<<3)|0;e=J[f>>2];i=e<<10;if(i>>>0<=a>>>0){while(1){g=J[l+28>>2];J[l+28>>2]=g+1;H[g+J[l+24>>2]|0]=a;a=J[l+32>>2]>>>8|0;J[l+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}g=J[f+4>>2];f=(a>>>0)/(e>>>0)|0;a=g+((f<<20)+(a-P(e,f)|0)|0)|0;J[l+32>>2]=a;e=(b|0)>1;b=d;if(e){continue}break}}rc(l,c);a=J[l>>2];if(a){J[l+4>>2]=a;na(a)}a=J[l+48>>2];if(a){na(a)}ba=l- -64|0;break cf}h=1}ba=G+32|0}if(!F){break b}J[C+36>>2]=F;na(F)}ba=C+48|0;return h}qa();B()}function Ih(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=Q(0),x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,T=0,U=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;d=ba-1680|0;ba=d;c=10-cb(J[J[a+28>>2]+48>>2])|0;c=(c|0)>=6?6:c;f=J[a+72>>2];H[d+1679|0]=(c&255)==6?(f|0)>15?5:c:c;c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],d+1679|0,d+1680|0);f=J[a+72>>2]}y=J[J[J[a+28>>2]+4>>2]+80>>2];J[d+1668>>2]=0;J[d+1660>>2]=0;J[d+1664>>2]=0;J[d+1648>>2]=y;J[d+1652>>2]=f;J[d+1656>>2]=f<<2;a:{b:{c:{d:{g=P(f,y);if(g){if(g>>>0>=1073741824){break d}c=g<<2;h=oa(c);J[d+1660>>2]=h;k=c+h|0;J[d+1668>>2]=k;pa(h,0,c);J[d+1664>>2]=k}J[d+1672>>2]=h;k=J[a+4>>2];if((k|0)!=J[a+8>>2]){while(1){e=J[J[J[J[a+28>>2]+4>>2]+8>>2]+(J[(i<<2)+k>>2]<<2)>>2];c=J[e+28>>2];if(c-1>>>0>=6){if((c|0)!=9){break a}e=J[J[a+60>>2]+(p<<2)>>2];if(!e){break a}p=p+1|0;c=J[e+28>>2]}e:{f:{g:{switch(c-1|0){case 5:if(!y){break e}k=0;while(1){f=(J[d+1672>>2]+(o<<2)|0)+(P(J[d+1652>>2],k)<<2)|0;h=J[J[e>>2]>>2];g=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],K[e+84|0]?k:J[J[e+68>>2]+(k<<2)>>2],0);j=c;c=c+g|0;ua(f,c+h|0,K[e+24|0]<<2);k=k+1|0;if((y|0)!=(k|0)){continue}break};break e;case 0:case 2:case 4:c=K[e+24|0];h:{if(!c){g=0;h=0;break h}h=0;c=c<<2;g=oa(c);pa(g,0,c);c=K[e+24|0];if(!c){break h}c=c<<2;h=oa(c);pa(h,0,c)}if(y){f=0;while(1){$c(e,K[e+84|0]?f:J[J[e+68>>2]+(f<<2)>>2],H[e+24|0],g);j=K[e+24|0];i:{if(!j){break i}l=J[a+48>>2];k=0;if((j|0)!=1){n=j&254;c=0;while(1){r=k<<2;J[r+h>>2]=J[g+r>>2]-J[l+(k+q<<2)>>2];r=k|1;v=r<<2;J[v+h>>2]=J[g+v>>2]-J[l+(q+r<<2)>>2];k=k+2|0;c=c+2|0;if((n|0)!=(c|0)){continue}break}}if(!(j&1)){break i}c=k<<2;J[c+h>>2]=J[c+g>>2]-J[l+(k+q<<2)>>2]}ua((J[d+1672>>2]+(o<<2)|0)+(P(J[d+1652>>2],f)<<2)|0,h,j<<2);f=f+1|0;if((y|0)!=(f|0)){continue}break}}c=K[e+24|0];if(h){na(h)}q=c+q|0;if(g){break f}break e;default:break g}}c=K[e+24|0];j:{if(!c){g=0;break j}c=c<<2;g=oa(c);pa(g,0,c)}if(y){k=0;while(1){c=K[e+84|0]?k:J[J[e+68>>2]+(k<<2)>>2];j=K[e+24|0];l=0;k:{if(!g){break k}l:{m:{switch(J[e+28>>2]-1|0){case 0:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;c=J[h+4>>2];while(1){if(c>>>0<=f>>>0){break k}J[(l<<2)+g>>2]=H[f|0];f=f+1|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 1:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;c=J[h+4>>2];while(1){if(c>>>0<=f>>>0){break k}J[(l<<2)+g>>2]=K[f|0];f=f+1|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 2:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;c=J[h+4>>2];while(1){if(c>>>0<=f>>>0){break k}J[(l<<2)+g>>2]=I[f>>1];f=f+2|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 3:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;c=J[h+4>>2];while(1){if(c>>>0<=f>>>0){break k}J[(l<<2)+g>>2]=L[f>>1];f=f+2|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 4:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;c=J[h+4>>2];while(1){if(c>>>0<=f>>>0){break k}J[(l<<2)+g>>2]=J[f>>2];f=f+4|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 5:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;c=J[h+4>>2];while(1){if(c>>>0<=f>>>0){break k}J[(l<<2)+g>>2]=J[f>>2];f=f+4|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 6:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;n=J[h+4>>2];while(1){if(f>>>0>=n>>>0){break k}c=J[f>>2];if(J[f+4>>2]){break k}J[(l<<2)+g>>2]=c;f=f+8|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 7:h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;n=J[h+4>>2];while(1){if(f>>>0>=n>>>0){break k}c=J[f>>2];if(J[f+4>>2]){break k}J[(l<<2)+g>>2]=c;f=f+8|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}break l;case 8:n:{o:{h=K[e+24|0];if(!(h>>>0<j>>>0?h:j)){break o}f=J[e>>2];h=J[f>>2];l=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+l|0;l=c+h|0;n=J[f+4>>2];f=n-h|0;if(!K[e+32|0]){if((c|0)>=(f|0)){break n}f=0;while(1){w=N[l>>2];if(w>=Q(4294967296)|w<Q(0)|(Q(R(w))==Q(Infinity)|w!=w)){break n}m=(f<<2)+g|0;if(w<Q(4294967296)&w>=Q(0)){c=~~w>>>0}else{c=0}J[m>>2]=c;f=f+1|0;h=K[e+24|0];if(f>>>0>=(h>>>0<j>>>0?h:j)>>>0){break o}l=l+4|0;if(n>>>0>l>>>0){continue}break}break n}if((c|0)>=(f|0)){break n}f=0;while(1){w=N[l>>2];if(w>=Q(4294967296)|w<Q(0)|(Q(R(w))==Q(Infinity)|w!=w)){break n}if(w>Q(1)){break n}m=(f<<2)+g|0;t=V(+w*4294967295+.5);p:{if(t<4294967296&t>=0){c=~~t>>>0;break p}c=0}J[m>>2]=c;f=f+1|0;h=K[e+24|0];if(f>>>0>=(h>>>0<j>>>0?h:j)>>>0){break o}l=l+4|0;if(n>>>0>l>>>0){continue}break}break n}if(h>>>0>=j>>>0){break n}pa((h<<2)+g|0,0,j-h<<2)}break k;case 9:q:{r:{h=K[e+24|0];if(!(h>>>0<j>>>0?h:j)){break r}f=J[e>>2];h=J[f>>2];l=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+l|0;l=c+h|0;n=J[f+4>>2];f=n-h|0;if(!K[e+32|0]){if((c|0)>=(f|0)){break q}f=0;while(1){t=O[l>>3];if(t>=4294967295|t<0|(R(t)==Infinity|t!=t)){break q}m=(f<<2)+g|0;if(t<4294967296&t>=0){c=~~t>>>0}else{c=0}J[m>>2]=c;f=f+1|0;h=K[e+24|0];if(f>>>0>=(h>>>0<j>>>0?h:j)>>>0){break r}l=l+8|0;if(n>>>0>l>>>0){continue}break}break q}if((c|0)>=(f|0)){break q}f=0;while(1){t=O[l>>3];if(t>=4294967295|t<0|(R(t)==Infinity|t!=t)){break q}if(t>1){break q}m=(f<<2)+g|0;t=V(t*4294967295+.5);s:{if(t<4294967296&t>=0){c=~~t>>>0;break s}c=0}J[m>>2]=c;f=f+1|0;h=K[e+24|0];if(f>>>0>=(h>>>0<j>>>0?h:j)>>>0){break r}l=l+8|0;if(n>>>0>l>>>0){continue}break}break q}if(h>>>0>=j>>>0){break q}pa((h<<2)+g|0,0,j-h<<2)}break k;case 10:break m;default:break k}}h=K[e+24|0];if(h>>>0<j>>>0?h:j){h=J[e>>2];f=J[h>>2];n=J[e+48>>2];c=Hl(J[e+40>>2],J[e+44>>2],c,0);m=c;c=c+n|0;f=c+f|0;c=J[h+4>>2];while(1){if(c>>>0<=f>>>0){break k}J[(l<<2)+g>>2]=K[f|0];f=f+1|0;l=l+1|0;h=K[e+24|0];if(l>>>0<(h>>>0<j>>>0?h:j)>>>0){continue}break}}if(h>>>0>=j>>>0){break k}pa((h<<2)+g|0,0,j-h<<2);break k}if(h>>>0>=j>>>0){break k}pa((h<<2)+g|0,0,j-h<<2)}ua((J[d+1672>>2]+(o<<2)|0)+(P(J[d+1652>>2],k)<<2)|0,g,K[e+24|0]<<2);k=k+1|0;if((y|0)!=(k|0)){continue}break}}if(!g){break e}}na(g)}o=K[e+24|0]+o|0;i=i+1|0;k=J[a+4>>2];if(i>>>0<J[a+8>>2]-k>>2>>>0){continue}break}f=J[a+72>>2];g=P(y,f);h=J[d+1672>>2]}k=0;if((g|0)<=0){break b}c=g&1;if((g|0)==1){g=0;break c}e=g&-2;g=0;a=0;while(1){j=g<<2;l=J[j+h>>2];if(l){l=S(l);k=(l^31)<(k|0)?k:32-l|0}j=J[(j|4)+h>>2];if(j){j=S(j);k=(j^31)<(k|0)?k:32-j|0}g=g+2|0;a=a+2|0;if((e|0)!=(a|0)){continue}break}break c}qa();B()}if(!c){break b}a=J[(g<<2)+h>>2];if(!a){break b}a=S(a);k=(a^31)<(k|0)?k:32-a|0}t:{u:{switch(K[d+1679|0]){case 6:p=Zc(d+456|0,f);a=J[d+1652>>2];J[d+448>>2]=a;J[d+432>>2]=a;J[d+32>>2]=a;J[d+16>>2]=a;J[d+440>>2]=0;J[d+424>>2]=J[d+1648>>2];a=d+1648|0;J[d+444>>2]=a;c=J[d+444>>2];J[d+24>>2]=J[d+440>>2];J[d+28>>2]=c;J[d+428>>2]=a;J[d+420>>2]=k;a=J[d+428>>2];J[d+8>>2]=J[d+424>>2];J[d+12>>2]=a;n=ba-32|0;ba=n;J[p>>2]=J[d+420>>2];a=J[d+8>>2]-J[d+24>>2]|0;J[p+4>>2]=a;c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){a=p+4|0;sa(b,J[b+4>>2],p,a);c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],a,p+8|0)}a=J[a>>2]}if(a){W=p+12|0;te(W);X=p+1068|0;a=X;J[a+12>>2]=0;J[a+16>>2]=0;J[a+4>>2]=J[a>>2];Y=p+1088|0;a=Y;J[a+12>>2]=0;J[a+16>>2]=0;J[a+4>>2]=J[a>>2];Z=p+1108|0;a=Z;J[a+12>>2]=0;J[a+16>>2]=0;J[a+4>>2]=J[a>>2];J[n+24>>2]=J[d+32>>2];a=J[d+28>>2];J[n+16>>2]=J[d+24>>2];J[n+20>>2]=a;J[n+8>>2]=J[d+16>>2];a=J[d+12>>2];J[n>>2]=J[d+8>>2];J[n+4>>2]=a;c=0;g=0;i=ba+-64|0;ba=i;e=J[p+8>>2];J[i+48>>2]=0;J[i+40>>2]=0;J[i+44>>2]=0;v:{w:{if(e){if(e>>>0>=1073741824){break w}a=e<<2;c=oa(a);J[i+40>>2]=c;g=a+c|0;J[i+48>>2]=g;pa(c,0,a);J[i+44>>2]=g}a=J[p+1164>>2];k=J[a>>2];if(k){J[a+4>>2]=k;na(k);e=J[p+8>>2];g=J[i+44>>2];c=J[i+40>>2]}J[a+4>>2]=g;J[a>>2]=c;J[a+8>>2]=J[i+48>>2];c=0;J[i+48>>2]=0;J[i+40>>2]=0;J[i+44>>2]=0;a=0;x:{if(e){if(e>>>0>=1073741824){break x}k=e<<2;a=oa(k);J[i+40>>2]=a;c=a+k|0;J[i+48>>2]=c;pa(a,0,k);J[i+44>>2]=c}k=J[p+1176>>2];f=J[k>>2];if(f){J[k+4>>2]=f;na(f);c=J[i+44>>2];a=J[i+40>>2]}J[k+4>>2]=c;J[k>>2]=a;J[k+8>>2]=J[i+48>>2];h=J[n+20>>2];l=J[n+24>>2];f=J[n+4>>2];y=J[n+8>>2];c=J[n>>2];k=J[n+16>>2];J[i+56>>2]=0;J[i+60>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;J[i+40>>2]=0;J[i+44>>2]=0;fb(i+40|0);a=J[i+56>>2]+J[i+60>>2]|0;e=(a>>>0)/113|0;a=J[J[i+44>>2]+(e<<2)>>2]+P(a-P(e,113)|0,36)|0;J[a+32>>2]=0;J[a+28>>2]=c-k;J[a+24>>2]=0;J[a+16>>2]=f;J[a+20>>2]=y;J[a+12>>2]=c;J[a+4>>2]=h;J[a+8>>2]=l;J[a>>2]=k;e=J[i+60>>2]+1|0;J[i+60>>2]=e;if(e){a=l;aa=a&-4;_=a&3;ca=p+1068|0;$=p+12|0;da=p+1108|0;ea=a>>>0<4;while(1){a=J[i+44>>2];g=J[i+56>>2];o=e-1|0;c=g+o|0;k=(c>>>0)/113|0;c=J[a+(k<<2)>>2]+P(c-P(k,113)|0,36)|0;T=J[c+32>>2];j=J[c+12>>2];k=J[c>>2];J[i+60>>2]=o;c=J[i+48>>2];if((((a|0)!=(c|0)?P(c-a>>2,113)-1|0:0)-(e+g|0)|0)+1>>>0>=226){na(J[c-4>>2]);J[i+48>>2]=J[i+48>>2]-4}J[n+16>>2]=k;J[n>>2]=j;a=J[p+1164>>2];c=J[p+1176>>2];J[i+32>>2]=J[n+24>>2];e=J[n+20>>2];J[i+24>>2]=J[n+16>>2];J[i+28>>2]=e;J[i+16>>2]=J[n+8>>2];e=J[n+4>>2];J[i+8>>2]=J[n>>2];J[i+12>>2]=e;U=P(T,12);v=a+U|0;q=v;D=c+U|0;a=D;e=0;g=J[p+8>>2];y:{z:{A:{B:{s=J[i+8>>2];o=J[i+24>>2];u=s-o|0;if(u>>>0>=64){if(!g){break z}E=J[p+1140>>2];F=J[a>>2];G=J[p+1128>>2];if((o|0)!=(s|0)){break B}g=0;while(1){a=g<<2;c=a+G|0;J[c>>2]=0;q=a+E|0;e=J[p>>2];a=J[a+F>>2];J[q>>2]=e-a;if((a|0)!=(e|0)){q=c;a=J[c>>2];c=u-a|0;J[q>>2]=a>>>0<c>>>0?c:a}c=J[p+8>>2];g=g+1|0;if(c>>>0>g>>>0){continue}break}break A}if(g>>>0<2){break y}o=g-1|0;q=o&3;c=J[a>>2];a=0;C:{if(g-2>>>0<3){g=1;break C}r=o&-4;g=1;o=0;while(1){s=g+3|0;u=g+2|0;x=g+1|0;e=M[c+(e<<2)>>2]>M[c+(g<<2)>>2]?g:e;e=M[c+(e<<2)>>2]>M[c+(x<<2)>>2]?x:e;e=M[c+(e<<2)>>2]>M[c+(u<<2)>>2]?u:e;e=M[c+(e<<2)>>2]>M[c+(s<<2)>>2]?s:e;g=g+4|0;o=o+4|0;if((r|0)!=(o|0)){continue}break}}if(!q){break y}while(1){e=M[c+(e<<2)>>2]>M[c+(g<<2)>>2]?g:e;g=g+1|0;a=a+1|0;if((q|0)!=(a|0)){continue}break}break y}z=J[i+28>>2];C=J[q>>2];fa=u&1;q=o+1|0;ga=(q|0)!=(s|0);m=J[i+32>>2];ha=P(m,o)<<2;while(1){a=e<<2;r=a+G|0;J[r>>2]=0;c=J[p>>2];g=J[a+F>>2];x=c-g|0;J[a+E>>2]=x;if((c|0)!=(g|0)){x=J[a+C>>2]+(1<<x-1)|0;A=a+J[z+24>>2]|0;c=J[r>>2];if(fa){c=(x>>>0>M[A+ha>>2])+c|0;J[r>>2]=c;a=q}else{a=o}g=a;if(ga){while(1){a=(x>>>0>M[A+(P(g,m)<<2)>>2])+c|0;J[r>>2]=a;c=a+(x>>>0>M[A+(P(m,g+1|0)<<2)>>2])|0;J[r>>2]=c;g=g+2|0;if((s|0)!=(g|0)){continue}break}}a=u-c|0;J[r>>2]=a>>>0>c>>>0?a:c}c=J[p+8>>2];e=e+1|0;if(c>>>0>e>>>0){continue}break}}if(!c){e=0;break z}u=c&1;q=J[p+1128>>2];r=J[p+1140>>2];D:{if((c|0)==1){g=0;c=0;e=0;break D}x=c&-2;g=0;c=0;e=0;o=0;while(1){a=g<<2;E:{if(!J[a+r>>2]){a=c;break E}s=J[a+q>>2];a=c>>>0>s>>>0?c:s;e=c>>>0<s>>>0?g:e}A=g|1;c=A<<2;F:{if(!J[c+r>>2]){c=a;break F}s=J[c+q>>2];c=a>>>0>s>>>0?a:s;e=a>>>0<s>>>0?A:e}g=g+2|0;o=o+2|0;if((x|0)!=(o|0)){continue}break}}if(!u){break z}a=g<<2;if(!J[a+r>>2]){break z}e=M[a+q>>2]>c>>>0?g:e}Ib(p+1088|0,4,e)}c=J[p>>2];q=e<<2;g=J[q+J[D>>2]>>2];G:{H:{if((c|0)==(g|0)){break H}I:{J:{x=j-k|0;if(x>>>0<=2){g=J[p+1152>>2];J[g>>2]=e;c=1;a=J[p+8>>2];if(a>>>0>1){break J}break I}a=J[p+1164>>2];F=T+1|0;A=P(F,12);o=a+A|0;if((o|0)!=(v|0)){bb(o,J[v>>2],J[v+4>>2]);a=J[p+1164>>2]}a=q+J[a+A>>2]|0;r=J[a>>2]+(1<<c+(g^-1))|0;J[a>>2]=r;a=k;K:{if((j|0)==(a|0)){break K}G=J[h+24>>2];D=G+q|0;a=j;c=k;if(!l){if(r>>>0>M[D>>2]){break K}while(1){a=a-1|0;if((c|0)==(a|0)){a=c;break K}if(r>>>0<=M[(q+J[f+24>>2]|0)+(P(a,y)<<2)>>2]){continue}c=c+1|0;if((c|0)!=(a|0)){continue}break}break K}while(1){g=P(c,l)<<2;if(r>>>0>M[g+D>>2]){c=c+1|0;if((c|0)!=(a|0)){continue}break K}while(1){a=a-1|0;if((c|0)==(a|0)){a=c;break K}v=J[f+24>>2]+(P(a,y)<<2)|0;if(r>>>0<=M[v+q>>2]){continue}break}s=g+G|0;E=0;g=0;o=0;if(!ea){while(1){u=g<<2;m=u+s|0;z=J[m>>2];C=m;m=v+u|0;J[C>>2]=J[m>>2];J[m>>2]=z;m=u|4;z=m+s|0;C=J[z>>2];m=v+m|0;J[z>>2]=J[m>>2];J[m>>2]=C;m=u|8;z=m+s|0;C=J[z>>2];m=v+m|0;J[z>>2]=J[m>>2];J[m>>2]=C;u=u|12;m=u+s|0;z=J[m>>2];u=v+u|0;J[m>>2]=J[u>>2];J[u>>2]=z;g=g+4|0;o=o+4|0;if((aa|0)!=(o|0)){continue}break}}if(_){while(1){o=g<<2;u=o+s|0;m=J[u>>2];o=o+v|0;J[u>>2]=J[o>>2];J[o>>2]=m;g=g+1|0;E=E+1|0;if((_|0)!=(E|0)){continue}break}}c=c+1|0;if((c|0)!=(a|0)){continue}break}}o=a-k|0;r=j-a|0;if((o|0)!=(r|0)){xc(da,o>>>0<r>>>0)}c=S(x);v=c^31;g=x>>>1|0;L:{if(o>>>0<r>>>0){if(!v){break L}s=g-o|0;c=1<<30-c;g=0;while(1){Ca((g<<5)+$|0,(c&s)!=0);c=c>>>1|0;g=g+1|0;if((v|0)!=(g|0)){continue}break}break L}if(!v){break L}s=g-r|0;c=1<<30-c;g=0;while(1){Ca((g<<5)+$|0,(c&s)!=0);c=c>>>1|0;g=g+1|0;if((v|0)!=(g|0)){continue}break}}m=q;c=J[p+1176>>2];g=c+U|0;q=J[g>>2];v=m+q|0;J[v>>2]=J[v>>2]+1;bb(c+A|0,q,J[g+4>>2]);if((a|0)!=(k|0)){g=J[i+60>>2]+J[i+56>>2]|0;q=J[i+48>>2];c=J[i+44>>2];if((g|0)==(((c|0)!=(q|0)?P(q-c>>2,113)-1|0:0)|0)){fb(i+40|0);g=J[i+56>>2]+J[i+60>>2]|0;q=J[i+44>>2]}else{q=c}c=(g>>>0)/113|0;c=J[q+(c<<2)>>2]+P(g-P(c,113)|0,36)|0;J[c+32>>2]=T;J[c+28>>2]=o;J[c+24>>2]=e;J[c+16>>2]=h;J[c+12>>2]=a;J[c+4>>2]=h;J[c+8>>2]=l;J[c>>2]=k;J[c+20>>2]=l;J[i+60>>2]=J[i+60>>2]+1}if((a|0)==(j|0)){break H}g=J[i+60>>2]+J[i+56>>2]|0;k=J[i+48>>2];c=J[i+44>>2];if((g|0)==(((c|0)!=(k|0)?P(k-c>>2,113)-1|0:0)|0)){fb(i+40|0);g=J[i+56>>2]+J[i+60>>2]|0;q=J[i+44>>2]}else{q=c}c=(g>>>0)/113|0;c=J[q+(c<<2)>>2]+P(g-P(c,113)|0,36)|0;J[c+32>>2]=F;J[c+28>>2]=r;J[c+24>>2]=e;J[c+16>>2]=f;J[c+20>>2]=y;J[c+12>>2]=j;J[c+4>>2]=h;J[c>>2]=a;J[c+8>>2]=l;e=J[i+60>>2]+1|0;J[i+60>>2]=e;break G}while(1){e=(a-1|0)!=(e|0)?e+1|0:0;J[g+(c<<2)>>2]=e;a=J[p+8>>2];c=c+1|0;if(a>>>0>c>>>0){continue}break}}g=0;c=a;if((j|0)==(k|0)){break H}while(1){M:{if(!c){c=0;break M}j=J[h+24>>2]+(P(J[h+4>>2],g+k|0)<<2)|0;e=0;while(1){c=J[p>>2];o=J[J[p+1152>>2]+(e<<2)>>2]<<2;q=J[o+J[D>>2]>>2];if((c|0)!=(q|0)){Ib(ca,c-q|0,J[j+o>>2]);a=J[p+8>>2]}c=a;e=e+1|0;if(c>>>0>e>>>0){continue}break}}g=g+1|0;if((x|0)!=(g|0)){continue}break}}e=J[i+60>>2]}if(e){continue}break}}J[i+60>>2]=0;f=J[i+48>>2];e=J[i+44>>2];a=f-e|0;if(a>>>0>=9){while(1){na(J[e>>2]);e=J[i+44>>2]+4|0;J[i+44>>2]=e;f=J[i+48>>2];a=f-e|0;if(a>>>0>8){continue}break}}c=56;N:{switch((a>>>2|0)-1|0){case 1:c=113;case 0:J[i+56>>2]=c;break;default:break N}}O:{if((e|0)==(f|0)){break O}while(1){na(J[e>>2]);e=e+4|0;if((f|0)!=(e|0)){continue}break}a=J[i+48>>2];c=J[i+44>>2];if((a|0)==(c|0)){break O}J[i+48>>2]=a+((c-a|0)+3&-4)}a=J[i+40>>2];if(a){na(a)}ba=i- -64|0;break v}qa();B()}qa();B()}se(W,b);eb(X,b);eb(Y,b);eb(Z,b)}ba=n+32|0;_c(p);break t;case 5:c=Zc(d+456|0,f);a=J[d+1652>>2];J[d+416>>2]=a;J[d+400>>2]=a;J[d- -64>>2]=a;J[d+48>>2]=a;J[d+408>>2]=0;J[d+392>>2]=J[d+1648>>2];a=d+1648|0;J[d+412>>2]=a;f=J[d+412>>2];J[d+56>>2]=J[d+408>>2];J[d+60>>2]=f;J[d+396>>2]=a;J[d+420>>2]=k;a=J[d+396>>2];J[d+40>>2]=J[d+392>>2];J[d+44>>2]=a;a=Ae(c,d+56|0,d+40|0,d+420|0,b);_c(c);if(a){break t}break a;case 4:c=Zc(d+456|0,f);a=J[d+1652>>2];J[d+384>>2]=a;J[d+368>>2]=a;J[d+96>>2]=a;J[d+80>>2]=a;J[d+376>>2]=0;J[d+360>>2]=J[d+1648>>2];a=d+1648|0;J[d+380>>2]=a;f=J[d+380>>2];J[d+88>>2]=J[d+376>>2];J[d+92>>2]=f;J[d+364>>2]=a;J[d+420>>2]=k;a=J[d+364>>2];J[d+72>>2]=J[d+360>>2];J[d+76>>2]=a;a=Ae(c,d+88|0,d+72|0,d+420|0,b);_c(c);if(a){break t}break a;case 3:c=ze(d+456|0,f);a=J[d+1652>>2];J[d+352>>2]=a;J[d+336>>2]=a;J[d+128>>2]=a;J[d+112>>2]=a;J[d+344>>2]=0;J[d+328>>2]=J[d+1648>>2];a=d+1648|0;J[d+348>>2]=a;f=J[d+348>>2];J[d+120>>2]=J[d+344>>2];J[d+124>>2]=f;J[d+332>>2]=a;J[d+420>>2]=k;a=J[d+332>>2];J[d+104>>2]=J[d+328>>2];J[d+108>>2]=a;a=ye(c,d+120|0,d+104|0,d+420|0,b);xe(c);if(a){break t}break a;case 2:c=ze(d+456|0,f);a=J[d+1652>>2];J[d+320>>2]=a;J[d+304>>2]=a;J[d+160>>2]=a;J[d+144>>2]=a;J[d+312>>2]=0;J[d+296>>2]=J[d+1648>>2];a=d+1648|0;J[d+316>>2]=a;f=J[d+316>>2];J[d+152>>2]=J[d+312>>2];J[d+156>>2]=f;J[d+300>>2]=a;J[d+420>>2]=k;a=J[d+300>>2];J[d+136>>2]=J[d+296>>2];J[d+140>>2]=a;a=ye(c,d+152|0,d+136|0,d+420|0,b);xe(c);if(a){break t}break a;case 1:c=we(d+456|0,f);a=J[d+1652>>2];J[d+288>>2]=a;J[d+272>>2]=a;J[d+192>>2]=a;J[d+176>>2]=a;J[d+280>>2]=0;J[d+264>>2]=J[d+1648>>2];a=d+1648|0;J[d+284>>2]=a;f=J[d+284>>2];J[d+184>>2]=J[d+280>>2];J[d+188>>2]=f;J[d+268>>2]=a;J[d+420>>2]=k;a=J[d+268>>2];J[d+168>>2]=J[d+264>>2];J[d+172>>2]=a;a=ve(c,d+184|0,d+168|0,d+420|0,b);ue(c);if(a){break t}break a;case 0:break u;default:break a}}c=we(d+456|0,f);a=J[d+1652>>2];J[d+256>>2]=a;J[d+240>>2]=a;J[d+224>>2]=a;J[d+208>>2]=a;J[d+248>>2]=0;J[d+232>>2]=J[d+1648>>2];a=d+1648|0;J[d+252>>2]=a;f=J[d+252>>2];J[d+216>>2]=J[d+248>>2];J[d+220>>2]=f;J[d+236>>2]=a;J[d+420>>2]=k;a=J[d+236>>2];J[d+200>>2]=J[d+232>>2];J[d+204>>2]=a;a=ve(c,d+216|0,d+200|0,d+420|0,b);ue(c);if(!a){break a}}s=1}a=J[d+1660>>2];if(a){J[d+1664>>2]=a;na(a)}ba=d+1680|0;return s|0}function Xe(a,b,c,d){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,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,I=0;w=ba-160|0;ba=w;J[w+60>>2]=b;J[w+20>>2]=b;J[w+24>>2]=-1;h=w+16|0;J[h+112>>2]=0;J[h+116>>2]=0;n=J[h+44>>2]-J[h+4>>2]|0;J[h+120>>2]=n;J[h+124>>2]=n>>31;J[h+104>>2]=J[h+8>>2];s=ba-48|0;ba=s;if(d>>>0<=2){a:{d=d<<2;D=J[d+17292>>2];E=J[d+17280>>2];while(1){d=J[h+4>>2];b:{if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;d=K[d|0];break b}d=La(h)}if((d|0)==32|d-9>>>0<5){continue}break}n=1;c:{d:{switch(d-43|0){case 0:case 2:break d;default:break c}}n=(d|0)==45?-1:1;d=J[h+4>>2];if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;d=K[d|0];break c}d=La(h)}e:{f:{while(1){if(H[g+1154|0]==(d|32)){g:{if(g>>>0>6){break g}d=J[h+4>>2];if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;d=K[d|0];break g}d=La(h)}g=g+1|0;if((g|0)!=8){continue}break f}break}if((g|0)!=3){if((g|0)==8){break f}if(g>>>0<4){break e}if((g|0)==8){break f}}d=J[h+116>>2];if((d|0)>0|(d|0)>=0){J[h+4>>2]=J[h+4>>2]-1}if(g>>>0<4){break f}d=(d|0)<0;while(1){if(!d){J[h+4>>2]=J[h+4>>2]-1}g=g-1|0;if(g>>>0>3){continue}break}}m=ba-16|0;ba=m;r=(C(Q(Q(n|0)*Q(Infinity))),v(2));d=r&2147483647;h:{if(d-8388608>>>0<=2130706431){l=(d>>>7|0)+1065353216|0;j=d<<25;break h}l=r>>>7|2147418112;j=r<<25;if(d>>>0>=2139095040){break h}l=0;j=0;if(!d){break h}g=d;d=S(d);Pa(m,g,0,0,0,d+81|0);i=J[m>>2];k=J[m+4>>2];l=J[m+12>>2]^65536|16265-d<<16;j=J[m+8>>2]}J[s>>2]=i;J[s+4>>2]=k;J[s+8>>2]=j;J[s+12>>2]=r&-2147483648|l;ba=m+16|0;i=J[s+8>>2];k=J[s+12>>2];j=J[s>>2];m=J[s+4>>2];break a}i:{j:{k:{if(g){break k}g=0;while(1){if(H[g+1434|0]!=(d|32)){break k}l:{if(g>>>0>1){break l}d=J[h+4>>2];if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;d=K[d|0];break l}d=La(h)}g=g+1|0;if((g|0)!=3){continue}break}break j}m:{switch(g|0){case 0:n:{if((d|0)!=48){break n}g=J[h+4>>2];o:{if((g|0)!=J[h+104>>2]){J[h+4>>2]=g+1;g=K[g|0];break o}g=La(h)}if((g&-33)==88){f=ba-432|0;ba=f;d=J[h+4>>2];p:{if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;g=K[d|0];break p}g=La(h)}q:{r:{while(1){if((g|0)!=48){s:{if((g|0)!=46){break q}d=J[h+4>>2];if((d|0)==J[h+104>>2]){break s}J[h+4>>2]=d+1;g=K[d|0];break r}}else{d=J[h+4>>2];if((d|0)!=J[h+104>>2]){x=1;J[h+4>>2]=d+1;g=K[d|0]}else{x=1;g=La(h)}continue}break}g=La(h)}e=1;if((g|0)!=48){break q}while(1){d=r;r=d-1|0;t=t-!d|0;d=J[h+4>>2];t:{if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;g=K[d|0];break t}g=La(h)}if((g|0)==48){continue}break}x=1}m=1073676288;while(1){u:{d=g|32;v:{w:{F=g-48|0;if(F>>>0<10){break w}if((g|0)!=46&d-97>>>0>=6){break u}if((g|0)!=46){break w}if(e){break u}e=1;r=i;t=k;break v}d=(g|0)>57?d-87|0:F;x:{if((k|0)<=0&i>>>0<=7|(k|0)<0){p=d+(p<<4)|0;break x}if(!k&i>>>0<=28){$a(f+48|0,d);Ea(f+32|0,A,B,j,m,0,0,0,1073414144);A=J[f+32>>2];B=J[f+36>>2];j=J[f+40>>2];m=J[f+44>>2];Ea(f+16|0,J[f+48>>2],J[f+52>>2],J[f+56>>2],J[f+60>>2],A,B,j,m);_a(f,J[f+16>>2],J[f+20>>2],J[f+24>>2],J[f+28>>2],l,o,y,z);y=J[f+8>>2];z=J[f+12>>2];l=J[f>>2];o=J[f+4>>2];break x}if(G|!d){break x}Ea(f+80|0,A,B,j,m,0,0,0,1073610752);_a(f- -64|0,J[f+80>>2],J[f+84>>2],J[f+88>>2],J[f+92>>2],l,o,y,z);y=J[f+72>>2];z=J[f+76>>2];G=1;l=J[f+64>>2];o=J[f+68>>2]}i=i+1|0;k=i?k:k+1|0;x=1}d=J[h+4>>2];if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;g=K[d|0]}else{g=La(h)}continue}break}y:{if(!x){d=J[h+116>>2];if((d|0)>0|(d|0)>=0){z:{d=J[h+4>>2];J[h+4>>2]=d-1;J[h+4>>2]=d-2;if(!e){break z}J[h+4>>2]=d-3}}qb(f+96|0,+(n|0)*0);l=J[f+96>>2];o=J[f+100>>2];i=J[f+108>>2];d=J[f+104>>2];break y}if((k|0)<=0&i>>>0<=7|(k|0)<0){j=i;m=k;while(1){p=p<<4;j=j+1|0;m=j?m:m+1|0;if((j|0)!=8|m){continue}break}}A:{B:{C:{if((g&-33)==80){j=Ye(h);d=ca;m=d;if(j|(d|0)!=-2147483648){break A}d=J[h+116>>2];if((d|0)>0|(d|0)>=0){break C}break B}j=0;m=0;if(J[h+116>>2]<0){break A}}J[h+4>>2]=J[h+4>>2]-1}j=0;m=0}if(!p){qb(f+112|0,+(n|0)*0);l=J[f+112>>2];o=J[f+116>>2];i=J[f+124>>2];d=J[f+120>>2];break y}d=e?r:i;k=(e?t:k)<<2|d>>>30;d=j+(d<<2)|0;g=k+m|0;g=d>>>0<j>>>0?g+1|0:g;i=d-32|0;k=g-(d>>>0<32)|0;d=k;if(i>>>0>0-D>>>0&(d|0)>=0|(d|0)>0){J[4804]=68;$a(f+160|0,n);Ea(f+144|0,J[f+160>>2],J[f+164>>2],J[f+168>>2],J[f+172>>2],-1,-1,-1,2147418111);Ea(f+128|0,J[f+144>>2],J[f+148>>2],J[f+152>>2],J[f+156>>2],-1,-1,-1,2147418111);l=J[f+128>>2];o=J[f+132>>2];i=J[f+140>>2];d=J[f+136>>2];break y}d=D-226|0;j=d>>31;if((k|0)>=(j|0)&d>>>0<=i>>>0|(j|0)<(k|0)){if((p|0)>=0){while(1){_a(f+416|0,l,o,y,z,0,0,0,-1073807360);d=Oe(l,o,y,z,1073610752);j=(d|0)>=0;d=j;_a(f+400|0,l,o,y,z,d?J[f+416>>2]:l,d?J[f+420>>2]:o,d?J[f+424>>2]:y,d?J[f+428>>2]:z);d=i;i=d-1|0;k=k-!d|0;y=J[f+408>>2];z=J[f+412>>2];l=J[f+400>>2];o=J[f+404>>2];p=j|p<<1;if((p|0)>=0){continue}break}}g=k-((D>>31)+(i>>>0<D>>>0)|0)|0;d=(i-D|0)+32|0;g=d>>>0<32?g+1|0:g;j=d>>>0<E>>>0&(g|0)<=0|(g|0)<0?(d|0)>0?d:0:E;D:{if((j|0)>=113){$a(f+384|0,n);r=J[f+392>>2];t=J[f+396>>2];A=J[f+384>>2];B=J[f+388>>2];g=0;d=0;break D}qb(f+352|0,pd(144-j|0));$a(f+336|0,n);A=J[f+336>>2];B=J[f+340>>2];r=J[f+344>>2];t=J[f+348>>2];$e(f+368|0,J[f+352>>2],J[f+356>>2],J[f+360>>2],J[f+364>>2],A,B,r,t);q=J[f+376>>2];u=J[f+380>>2];g=J[f+372>>2];d=J[f+368>>2]}k=!(p&1)&((Hb(l,o,y,z,0,0,0,0)|0)!=0&(j|0)<32);Lb(f+320|0,k+p|0);Ea(f+304|0,A,B,r,t,J[f+320>>2],J[f+324>>2],J[f+328>>2],J[f+332>>2]);j=d;_a(f+272|0,J[f+304>>2],J[f+308>>2],J[f+312>>2],J[f+316>>2],d,g,q,u);d=k;Ea(f+288|0,A,B,r,t,d?0:l,d?0:o,d?0:y,d?0:z);_a(f+256|0,J[f+288>>2],J[f+292>>2],J[f+296>>2],J[f+300>>2],J[f+272>>2],J[f+276>>2],J[f+280>>2],J[f+284>>2]);od(f+240|0,J[f+256>>2],J[f+260>>2],J[f+264>>2],J[f+268>>2],j,g,q,u);d=J[f+240>>2];l=J[f+244>>2];j=J[f+248>>2];r=J[f+252>>2];if(!Hb(d,l,j,r,0,0,0,0)){J[4804]=68}_e(f+224|0,d,l,j,r,i);l=J[f+224>>2];o=J[f+228>>2];i=J[f+236>>2];d=J[f+232>>2];break y}J[4804]=68;$a(f+208|0,n);Ea(f+192|0,J[f+208>>2],J[f+212>>2],J[f+216>>2],J[f+220>>2],0,0,0,65536);Ea(f+176|0,J[f+192>>2],J[f+196>>2],J[f+200>>2],J[f+204>>2],0,0,0,65536);l=J[f+176>>2];o=J[f+180>>2];i=J[f+188>>2];d=J[f+184>>2]}J[s+16>>2]=l;J[s+20>>2]=o;J[s+24>>2]=d;J[s+28>>2]=i;ba=f+432|0;i=J[s+24>>2];k=J[s+28>>2];j=J[s+16>>2];m=J[s+20>>2];break a}if(J[h+116>>2]<0){break n}J[h+4>>2]=J[h+4>>2]-1}g=h;f=n;h=0;e=ba-8976|0;ba=e;G=0-D|0;F=G-E|0;E:{F:{while(1){if((d|0)!=48){G:{if((d|0)!=46){break E}d=J[g+4>>2];if((d|0)==J[g+104>>2]){break G}J[g+4>>2]=d+1;d=K[d|0];break F}}else{d=J[g+4>>2];if((d|0)!=J[g+104>>2]){J[g+4>>2]=d+1;d=K[d|0]}else{d=La(g)}h=1;continue}break}d=La(g)}q=1;if((d|0)!=48){break E}while(1){d=i;i=d-1|0;k=k-!d|0;d=J[g+4>>2];H:{if((d|0)!=J[g+104>>2]){J[g+4>>2]=d+1;d=K[d|0];break H}d=La(g)}if((d|0)==48){continue}break}h=1}J[e+784>>2]=0;I:{J:{n=(d|0)==46;l=d-48|0;K:{L:{if(n|l>>>0<=9){while(1){M:{if(n&1){if(!q){i=j;k=m;q=1;break M}n=!h;break L}j=j+1|0;m=j?m:m+1|0;if((p|0)<=2044){x=(d|0)==48?x:j;n=(e+784|0)+(p<<2)|0;if(u){l=(P(J[n>>2],10)+d|0)-48|0}J[n>>2]=l;h=1;l=u+1|0;d=(l|0)==9;u=d?0:l;p=d+p|0;break M}if((d|0)==48){break M}J[e+8960>>2]=J[e+8960>>2]|1;x=18396}d=J[g+4>>2];N:{if((d|0)!=J[g+104>>2]){J[g+4>>2]=d+1;d=K[d|0];break N}d=La(g)}n=(d|0)==46;l=d-48|0;if(n|l>>>0<10){continue}break}}i=q?i:j;k=q?k:m;if(!(!h|(d&-33)!=69)){l=Ye(g);d=ca;o=d;O:{if(l|(d|0)!=-2147483648){break O}l=0;o=0;if(J[g+116>>2]<0){break O}J[g+4>>2]=J[g+4>>2]-1}k=k+o|0;i=i+l|0;k=i>>>0<l>>>0?k+1|0:k;break J}n=!h;if((d|0)<0){break K}}if(J[g+116>>2]<0){break K}J[g+4>>2]=J[g+4>>2]-1}if(!n){break J}J[4804]=28;j=0;m=0;J[g+112>>2]=0;J[g+116>>2]=0;d=J[g+44>>2]-J[g+4>>2]|0;J[g+120>>2]=d;J[g+124>>2]=d>>31;J[g+104>>2]=J[g+8>>2];i=0;d=0;break I}d=J[e+784>>2];if(!d){qb(e,+(f|0)*0);j=J[e>>2];m=J[e+4>>2];i=J[e+12>>2];d=J[e+8>>2];break I}if(!(j>>>0>9&(m|0)>=0|(m|0)>0|((i|0)!=(j|0)|(k|0)!=(m|0))|(d>>>E|0?(E|0)<=30:0))){$a(e+48|0,f);Lb(e+32|0,d);Ea(e+16|0,J[e+48>>2],J[e+52>>2],J[e+56>>2],J[e+60>>2],J[e+32>>2],J[e+36>>2],J[e+40>>2],J[e+44>>2]);j=J[e+16>>2];m=J[e+20>>2];i=J[e+28>>2];d=J[e+24>>2];break I}if(i>>>0>G>>>1>>>0&(k|0)>=0|(k|0)>0){J[4804]=68;$a(e+96|0,f);Ea(e+80|0,J[e+96>>2],J[e+100>>2],J[e+104>>2],J[e+108>>2],-1,-1,-1,2147418111);Ea(e- -64|0,J[e+80>>2],J[e+84>>2],J[e+88>>2],J[e+92>>2],-1,-1,-1,2147418111);j=J[e+64>>2];m=J[e+68>>2];i=J[e+76>>2];d=J[e+72>>2];break I}d=D-226|0;g=i>>>0<d>>>0;d=d>>31;if(g&(k|0)<=(d|0)|(d|0)>(k|0)){J[4804]=68;$a(e+144|0,f);Ea(e+128|0,J[e+144>>2],J[e+148>>2],J[e+152>>2],J[e+156>>2],0,0,0,65536);Ea(e+112|0,J[e+128>>2],J[e+132>>2],J[e+136>>2],J[e+140>>2],0,0,0,65536);j=J[e+112>>2];m=J[e+116>>2];i=J[e+124>>2];d=J[e+120>>2];break I}if(u){if((u|0)<=8){d=(e+784|0)+(p<<2)|0;g=J[d>>2];while(1){g=P(g,10);u=u+1|0;if((u|0)!=9){continue}break}J[d>>2]=g}p=p+1|0}P:{q=i;if((x|0)>(i|0)|(x|0)>=9|(i|0)>17){break P}if((q|0)==9){$a(e+192|0,f);Lb(e+176|0,J[e+784>>2]);Ea(e+160|0,J[e+192>>2],J[e+196>>2],J[e+200>>2],J[e+204>>2],J[e+176>>2],J[e+180>>2],J[e+184>>2],J[e+188>>2]);j=J[e+160>>2];m=J[e+164>>2];i=J[e+172>>2];d=J[e+168>>2];break I}if((q|0)<=8){$a(e+272|0,f);Lb(e+256|0,J[e+784>>2]);Ea(e+240|0,J[e+272>>2],J[e+276>>2],J[e+280>>2],J[e+284>>2],J[e+256>>2],J[e+260>>2],J[e+264>>2],J[e+268>>2]);$a(e+224|0,J[(0-q<<2)+17280>>2]);Ne(e+208|0,J[e+240>>2],J[e+244>>2],J[e+248>>2],J[e+252>>2],J[e+224>>2],J[e+228>>2],J[e+232>>2],J[e+236>>2]);j=J[e+208>>2];m=J[e+212>>2];i=J[e+220>>2];d=J[e+216>>2];break I}d=(P(q,-3)+E|0)+27|0;i=J[e+784>>2];if(i>>>d|0?(d|0)<=30:0){break P}$a(e+352|0,f);Lb(e+336|0,i);Ea(e+320|0,J[e+352>>2],J[e+356>>2],J[e+360>>2],J[e+364>>2],J[e+336>>2],J[e+340>>2],J[e+344>>2],J[e+348>>2]);$a(e+304|0,J[(q<<2)+17208>>2]);Ea(e+288|0,J[e+320>>2],J[e+324>>2],J[e+328>>2],J[e+332>>2],J[e+304>>2],J[e+308>>2],J[e+312>>2],J[e+316>>2]);j=J[e+288>>2];m=J[e+292>>2];i=J[e+300>>2];d=J[e+296>>2];break I}while(1){d=p;p=d-1|0;if(!J[(e+784|0)+(p<<2)>>2]){continue}break}u=0;i=(q|0)%9|0;Q:{if(!i){n=0;break Q}n=0;i=(q|0)<0?i+9|0:i;R:{if(!d){d=0;break R}j=J[(0-i<<2)+17280>>2];k=1e9/(j|0)|0;l=0;g=0;while(1){m=(e+784|0)+(g<<2)|0;h=J[m>>2];p=(h>>>0)/(j>>>0)|0;l=p+l|0;J[m>>2]=l;l=!l&(g|0)==(n|0);n=l?n+1&2047:n;q=l?q-9|0:q;l=P(k,h-P(j,p)|0);g=g+1|0;if((g|0)!=(d|0)){continue}break}if(!l){break R}J[(e+784|0)+(d<<2)>>2]=l;d=d+1|0}q=(q-i|0)+9|0}while(1){x=(e+784|0)+(n<<2)|0;S:{while(1){if(((q|0)!=36|M[x>>2]>=10384593)&(q|0)>=36){break S}p=d+2047|0;l=0;h=d;while(1){d=h;o=p&2047;h=(e+784|0)+(o<<2)|0;i=J[h>>2];m=i>>>3|0;j=i<<29;i=j+l|0;g=m;k=i>>>0<j>>>0?g+1|0:g;if(!k&i>>>0<1000000001){l=0}else{l=Jl(i,k,1e9,0);i=i-Hl(l,ca,1e9,0)|0}J[h>>2]=i;h=(o|0)!=(d-1&2047)?d:(n|0)==(o|0)?d:i?d:o;p=o-1|0;if((n|0)!=(o|0)){continue}break}u=u-29|0;if(!l){continue}break}n=n-1&2047;if((n|0)==(h|0)){i=e+784|0;d=i+((h+2046&2047)<<2)|0;g=d;k=J[d>>2];d=h-1&2047;J[g>>2]=k|J[i+(d<<2)>>2]}q=q+9|0;J[(e+784|0)+(n<<2)>>2]=l;continue}break}T:{U:while(1){i=d+1&2047;l=(e+784|0)+((d-1&2047)<<2)|0;while(1){j=(q|0)>45?9:1;V:{while(1){h=n;g=0;W:{while(1){X:{k=g+h&2047;if((k|0)==(d|0)){break X}k=J[(e+784|0)+(k<<2)>>2];m=J[(g<<2)+17232>>2];if(k>>>0<m>>>0){break X}if(k>>>0>m>>>0){break W}g=g+1|0;if((g|0)!=4){continue}}break}if((q|0)!=36){break W}i=0;k=0;g=0;j=0;m=0;while(1){l=g+h&2047;if((l|0)==(d|0)){d=d+1&2047;J[(e+(d<<2)|0)+780>>2]=0}Lb(e+768|0,J[(e+784|0)+(l<<2)>>2]);Ea(e+752|0,i,k,j,m,0,0,1342177280,1075633366);_a(e+736|0,J[e+752>>2],J[e+756>>2],J[e+760>>2],J[e+764>>2],J[e+768>>2],J[e+772>>2],J[e+776>>2],J[e+780>>2]);j=J[e+744>>2];m=J[e+748>>2];i=J[e+736>>2];k=J[e+740>>2];g=g+1|0;if((g|0)!=4){continue}break}$a(e+720|0,f);Ea(e+704|0,i,k,j,m,J[e+720>>2],J[e+724>>2],J[e+728>>2],J[e+732>>2]);j=J[e+712>>2];m=J[e+716>>2];i=0;k=0;l=J[e+704>>2];o=J[e+708>>2];x=u+113|0;n=x-D|0;q=(n|0)<(E|0);g=q?(n|0)>0?n:0:E;if((g|0)<=112){break V}break T}u=j+u|0;n=d;if((d|0)==(h|0)){continue}break}m=1e9>>>j|0;p=-1<<j^-1;g=0;n=h;while(1){k=g;g=(e+784|0)+(h<<2)|0;o=J[g>>2];k=k+(o>>>j|0)|0;J[g>>2]=k;k=!k&(h|0)==(n|0);n=k?n+1&2047:n;q=k?q-9|0:q;g=P(m,o&p);h=h+1&2047;if((h|0)!=(d|0)){continue}break}if(!g){continue}if((i|0)!=(n|0)){J[(e+784|0)+(d<<2)>>2]=g;d=i;continue U}J[l>>2]=J[l>>2]|1;continue}break}break}qb(e+656|0,pd(225-g|0));$e(e+688|0,J[e+656>>2],J[e+660>>2],J[e+664>>2],J[e+668>>2],l,o,j,m);y=J[e+696>>2];z=J[e+700>>2];A=J[e+688>>2];B=J[e+692>>2];qb(e+640|0,pd(113-g|0));Ze(e+672|0,l,o,j,m,J[e+640>>2],J[e+644>>2],J[e+648>>2],J[e+652>>2]);i=J[e+672>>2];k=J[e+676>>2];r=J[e+680>>2];t=J[e+684>>2];od(e+624|0,l,o,j,m,i,k,r,t);_a(e+608|0,A,B,y,z,J[e+624>>2],J[e+628>>2],J[e+632>>2],J[e+636>>2]);j=J[e+616>>2];m=J[e+620>>2];l=J[e+608>>2];o=J[e+612>>2]}p=h+4&2047;Y:{if((p|0)==(d|0)){break Y}p=J[(e+784|0)+(p<<2)>>2];Z:{if(p>>>0<=499999999){if(!p&(h+5&2047)==(d|0)){break Z}qb(e+496|0,+(f|0)*.25);_a(e+480|0,i,k,r,t,J[e+496>>2],J[e+500>>2],J[e+504>>2],J[e+508>>2]);r=J[e+488>>2];t=J[e+492>>2];i=J[e+480>>2];k=J[e+484>>2];break Z}if((p|0)!=5e8){qb(e+592|0,+(f|0)*.75);_a(e+576|0,i,k,r,t,J[e+592>>2],J[e+596>>2],J[e+600>>2],J[e+604>>2]);r=J[e+584>>2];t=J[e+588>>2];i=J[e+576>>2];k=J[e+580>>2];break Z}I=+(f|0);if((h+5&2047)==(d|0)){qb(e+528|0,I*.5);_a(e+512|0,i,k,r,t,J[e+528>>2],J[e+532>>2],J[e+536>>2],J[e+540>>2]);r=J[e+520>>2];t=J[e+524>>2];i=J[e+512>>2];k=J[e+516>>2];break Z}qb(e+560|0,I*.75);_a(e+544|0,i,k,r,t,J[e+560>>2],J[e+564>>2],J[e+568>>2],J[e+572>>2]);r=J[e+552>>2];t=J[e+556>>2];i=J[e+544>>2];k=J[e+548>>2]}if((g|0)>111){break Y}Ze(e+464|0,i,k,r,t,0,0,0,1073676288);if(Hb(J[e+464>>2],J[e+468>>2],J[e+472>>2],J[e+476>>2],0,0,0,0)){break Y}_a(e+448|0,i,k,r,t,0,0,0,1073676288);r=J[e+456>>2];t=J[e+460>>2];i=J[e+448>>2];k=J[e+452>>2]}_a(e+432|0,l,o,j,m,i,k,r,t);od(e+416|0,J[e+432>>2],J[e+436>>2],J[e+440>>2],J[e+444>>2],A,B,y,z);j=J[e+424>>2];m=J[e+428>>2];l=J[e+416>>2];o=J[e+420>>2];_:{if((F-2|0)>=(x&2147483647)){break _}J[e+408>>2]=j;J[e+412>>2]=m&2147483647;J[e+400>>2]=l;J[e+404>>2]=o;Ea(e+384|0,l,o,j,m,0,0,0,1073610752);d=Oe(J[e+400>>2],J[e+404>>2],J[e+408>>2],J[e+412>>2],1081081856);d=(d|0)>=0;j=d?J[e+392>>2]:j;m=d?J[e+396>>2]:m;l=d?J[e+384>>2]:l;o=d?J[e+388>>2]:o;u=d+u|0;if(!((Hb(i,k,r,t,0,0,0,0)|0)!=0&(d?q&(g|0)!=(n|0):q))&(u+110|0)<=(F|0)){break _}J[4804]=68}_e(e+368|0,l,o,j,m,u);j=J[e+368>>2];m=J[e+372>>2];i=J[e+380>>2];d=J[e+376>>2]}J[s+40>>2]=d;J[s+44>>2]=i;J[s+32>>2]=j;J[s+36>>2]=m;ba=e+8976|0;i=J[s+40>>2];k=J[s+44>>2];j=J[s+32>>2];m=J[s+36>>2];break a;case 3:break j;default:break m}}d=J[h+116>>2];if((d|0)>0|(d|0)>=0){J[h+4>>2]=J[h+4>>2]-1}J[4804]=28;break i}$:{d=J[h+4>>2];aa:{if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;d=K[d|0];break aa}d=La(h)}if((d|0)==40){g=1;break $}k=2147450880;if(J[h+116>>2]<0){break a}J[h+4>>2]=J[h+4>>2]-1;break a}while(1){ba:{d=J[h+4>>2];ca:{if((d|0)!=J[h+104>>2]){J[h+4>>2]=d+1;d=K[d|0];break ca}d=La(h)}if(!(d-48>>>0<10|d-65>>>0<26|(d|0)==95)){if(d-97>>>0>=26){break ba}}g=g+1|0;continue}break}k=2147450880;if((d|0)==41){break a}d=J[h+116>>2];if((d|0)>0|(d|0)>=0){J[h+4>>2]=J[h+4>>2]-1}if(!g){break a}while(1){g=g-1|0;if((d|0)>0|(d|0)>=0){J[h+4>>2]=J[h+4>>2]-1}if(g){continue}break}break a}J[h+112>>2]=0;J[h+116>>2]=0;d=J[h+44>>2]-J[h+4>>2]|0;J[h+120>>2]=d;J[h+124>>2]=d>>31;J[h+104>>2]=J[h+8>>2]}}J[w>>2]=j;J[w+4>>2]=m;J[w+8>>2]=i;J[w+12>>2]=k;ba=s+48|0;d=J[w+8>>2];j=J[w+12>>2];i=J[w>>2];l=J[w+4>>2];if(c){J[c>>2]=((J[w+20>>2]+J[w+136>>2]|0)-J[w+60>>2]|0)+b}J[a+8>>2]=d;J[a+12>>2]=j;J[a>>2]=i;J[a+4>>2]=l;ba=w+160|0}function Kj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=ba-32|0;ba=l;d=J[b+8>>2];a:{b:{if(K[b+352|0]){d=jf(d);f=J[b+12>>2];J[b+12>>2]=d;if(f){break b}break a}d=kf(d);f=J[b+12>>2];J[b+12>>2]=d;if(!f){break a}}qc(f)}c:{d=J[b+12>>2];d:{if(!(J[d+40>>2]!=((J[d+4>>2]-J[d>>2]>>2>>>0)/3|0)?d:0)){b=oa(32);H[b+29|0]=0;d=K[1828]|K[1829]<<8|(K[1830]<<16|K[1831]<<24);c=K[1824]|K[1825]<<8|(K[1826]<<16|K[1827]<<24);H[b+21|0]=c;H[b+22|0]=c>>>8;H[b+23|0]=c>>>16;H[b+24|0]=c>>>24;H[b+25|0]=d;H[b+26|0]=d>>>8;H[b+27|0]=d>>>16;H[b+28|0]=d>>>24;d=K[1823]|K[1824]<<8|(K[1825]<<16|K[1826]<<24);c=K[1819]|K[1820]<<8|(K[1821]<<16|K[1822]<<24);H[b+16|0]=c;H[b+17|0]=c>>>8;H[b+18|0]=c>>>16;H[b+19|0]=c>>>24;H[b+20|0]=d;H[b+21|0]=d>>>8;H[b+22|0]=d>>>16;H[b+23|0]=d>>>24;d=K[1815]|K[1816]<<8|(K[1817]<<16|K[1818]<<24);c=K[1811]|K[1812]<<8|(K[1813]<<16|K[1814]<<24);H[b+8|0]=c;H[b+9|0]=c>>>8;H[b+10|0]=c>>>16;H[b+11|0]=c>>>24;H[b+12|0]=d;H[b+13|0]=d>>>8;H[b+14|0]=d>>>16;H[b+15|0]=d>>>24;d=K[1807]|K[1808]<<8|(K[1809]<<16|K[1810]<<24);c=K[1803]|K[1804]<<8|(K[1805]<<16|K[1806]<<24);H[b|0]=c;H[b+1|0]=c>>>8;H[b+2|0]=c>>>16;H[b+3|0]=c>>>24;H[b+4|0]=d;H[b+5|0]=d>>>8;H[b+6|0]=d>>>16;H[b+7|0]=d>>>24;J[a>>2]=-1;Ga(a+4|0,b,29);na(b);break d}j=b+200|0;d=j;J[d+128>>2]=2;J[d+132>>2]=7;J[d+64>>2]=b;c=da[J[J[b>>2]+32>>2]](b)|0;J[d+88>>2]=c;c=J[c+28>>2]-J[c+24>>2]>>2;e=J[d+108>>2];h=J[d+104>>2];d=e-h>>2;e:{if(c>>>0>d>>>0){Fa(j+104|0,c-d|0);h=J[j+104>>2];e=J[j+108>>2];break e}if(c>>>0>=d>>>0){break e}e=(c<<2)+h|0;J[j+108>>2]=e}if((e|0)!=(h|0)){h=0;while(1){n=J[j+104>>2];q=n+(h<<2)|0;d=J[j+88>>2];f=-1;f:{if((h|0)==-1){break f}f=0;c=J[J[d+24>>2]+(h<<2)>>2];if((c|0)==-1){break f}k=J[d+12>>2];g=1;d=c;while(1){f=f+1|0;e=g;g:{if(e&255){g=0;i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;if((d|0)==-1){d=c;break g}i=J[k+(d<<2)>>2];if((i|0)==-1){d=c;break g}d=c;p=i+1|0;i=(p>>>0)%3|0?p:i-2|0;if((i|0)==-1){break g}g=e;d=i;if((c|0)!=(d|0)){break g}break f}h:{if((d>>>0)%3|0){d=d-1|0;break h}d=d+2|0;if((d|0)==-1){break f}}d=J[k+(d<<2)>>2];if((d|0)==-1){break f}d=(d>>>0)%3|0?d-1|0:d+2|0;g=0}if((d|0)!=-1){continue}break}}J[q>>2]=f;h=h+1|0;if(h>>>0<J[j+108>>2]-n>>2>>>0){continue}break}}c=j+92|0;h=J[j+88>>2];e=J[h>>2];d=J[h+4>>2]-e>>2;f=J[j+92>>2];g=J[j+96>>2]-f>>2;i:{if(d>>>0>g>>>0){Ld(c,d-g|0);h=J[j+88>>2];e=J[h>>2];break i}if(d>>>0>=g>>>0){break i}J[j+96>>2]=f+(d<<2)}d=J[h+4>>2];j:{if((d|0)==(e|0)){break j}d=d-e>>2;g=d>>>0<=1?1:d;i=g&3;d=J[c>>2];h=0;if(g-1>>>0>=3){g=g&-4;f=0;while(1){c=h<<2;J[c+d>>2]=J[c+e>>2];k=c|4;J[k+d>>2]=J[e+k>>2];k=c|8;J[k+d>>2]=J[e+k>>2];c=c|12;J[c+d>>2]=J[c+e>>2];h=h+4|0;f=f+4|0;if((g|0)!=(f|0)){continue}break}}if(!i){break j}while(1){c=h<<2;J[c+d>>2]=J[c+e>>2];h=h+1|0;m=m+1|0;if((i|0)!=(m|0)){continue}break}}c=(J[j+132>>2]-J[j+128>>2]|0)+1|0;e=J[j+140>>2];d=J[j+136>>2];g=(e-d|0)/12|0;k:{if(c>>>0>g>>>0){h=0;c=c-g|0;f=J[j+144>>2];d=J[j+140>>2];if(c>>>0<=(f-d|0)/12>>>0){if(c){e=d;d=P(c,12)-12|0;d=(d-((d>>>0)%12|0)|0)+12|0;d=pa(e,0,d)+d|0}J[j+140>>2]=d;break k}l:{m:{n:{e=J[j+136>>2];i=(d-e|0)/12|0;g=i+c|0;if(g>>>0<357913942){f=(f-e|0)/12|0;m=f<<1;f=f>>>0>=178956970?357913941:g>>>0<m>>>0?m:g;if(f){if(f>>>0>=357913942){break n}h=oa(P(f,12))}g=P(i,12)+h|0;c=P(c,12)-12|0;i=(c-((c>>>0)%12|0)|0)+12|0;c=pa(g,0,i);i=c+i|0;f=P(f,12)+h|0;if((d|0)==(e|0)){break m}while(1){g=g-12|0;d=d-12|0;J[g>>2]=J[d>>2];J[g+4>>2]=J[d+4>>2];J[g+8>>2]=J[d+8>>2];J[d+8>>2]=0;J[d>>2]=0;J[d+4>>2]=0;if((d|0)!=(e|0)){continue}break}J[j+144>>2]=f;e=J[j+140>>2];J[j+140>>2]=i;d=J[j+136>>2];J[j+136>>2]=g;if((d|0)==(e|0)){break l}while(1){c=e-12|0;g=J[c>>2];if(g){J[e-8>>2]=g;na(g)}e=c;if((c|0)!=(d|0)){continue}break}break l}break c}xa();B()}J[j+144>>2]=f;J[j+140>>2]=i;J[j+136>>2]=c}if(d){na(d)}break k}if(c>>>0<g>>>0){c=d+P(c,12)|0;if((c|0)!=(e|0)){while(1){d=e-12|0;g=J[d>>2];if(g){J[e-8>>2]=g;na(g)}e=d;if((d|0)!=(c|0)){continue}break}}J[j+140>>2]=c}}d=J[b+12>>2];Aa((J[d+28>>2]-J[d+24>>2]>>2)-J[d+44>>2]|0,J[J[b+4>>2]+44>>2]);d=J[b+12>>2];Aa(((J[d+4>>2]-J[d>>2]>>2>>>0)/3|0)-J[d+40>>2]|0,J[J[b+4>>2]+44>>2]);d=J[b+8>>2];c=J[d+100>>2];d=J[d+96>>2];H[l+16|0]=0;m=b+28|0;c=(c-d|0)/12|0;d=l+16|0;Na(m,c,d);c=J[b+12>>2];e=J[c+28>>2];c=J[c+24>>2];J[l+16>>2]=-1;wb(b+52|0,e-c>>2,d);d=J[b+40>>2];J[b+44>>2]=d;g=J[b+12>>2];c=J[g+4>>2]-J[g>>2]>>2;c=c-((c>>>0)%3|0)|0;o:{if(c>>>0<=J[b+48>>2]-d>>2>>>0){break o}if(c>>>0>=1073741824){break c}e=c<<2;c=oa(e);J[b+44>>2]=c;J[b+40>>2]=c;J[b+48>>2]=c+e;if(!d){break o}na(d);g=J[b+12>>2]}d=J[g+28>>2];c=J[g+24>>2];H[l+16|0]=0;Na(b+84|0,d-c>>2,l+16|0);J[b+164>>2]=-1;J[b+168>>2]=0;J[b+100>>2]=J[b+96>>2];J[b+112>>2]=J[b+108>>2];if(J[b+132>>2]){g=J[b+128>>2];if(g){while(1){d=J[g>>2];na(g);g=d;if(d){continue}break}}g=0;J[b+128>>2]=0;d=J[b+124>>2];p:{if(!d){break p}if(d>>>0>=4){f=d&-4;e=0;while(1){c=g<<2;J[c+J[b+120>>2]>>2]=0;J[J[b+120>>2]+(c|4)>>2]=0;J[J[b+120>>2]+(c|8)>>2]=0;J[J[b+120>>2]+(c|12)>>2]=0;g=g+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}d=d&3;if(!d){break p}f=0;while(1){J[J[b+120>>2]+(g<<2)>>2]=0;g=g+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}J[b+132>>2]=0}J[b+144>>2]=0;d=J[b+12>>2];c=J[d+28>>2];d=J[d+24>>2];J[l+16>>2]=-1;wb(b+152|0,c-d>>2,l+16|0);d=J[b+72>>2];J[b+76>>2]=d;q=b+72|0;c=J[b+12>>2];c=J[c+4>>2]-J[c>>2]|0;e=(c>>2>>>0)/3|0;q:{if(e>>>0<=J[b+80>>2]-d>>2>>>0){break q}if((c|0)<0){break c}e=e<<2;c=oa(e);J[b+76>>2]=c;J[b+72>>2]=c;J[b+80>>2]=c+e;if(!d){break q}na(d)}J[b- -64>>2]=0;if(!kg(b)){b=oa(32);H[b+29|0]=0;d=K[1768]|K[1769]<<8|(K[1770]<<16|K[1771]<<24);c=K[1764]|K[1765]<<8|(K[1766]<<16|K[1767]<<24);H[b+21|0]=c;H[b+22|0]=c>>>8;H[b+23|0]=c>>>16;H[b+24|0]=c>>>24;H[b+25|0]=d;H[b+26|0]=d>>>8;H[b+27|0]=d>>>16;H[b+28|0]=d>>>24;d=K[1763]|K[1764]<<8|(K[1765]<<16|K[1766]<<24);c=K[1759]|K[1760]<<8|(K[1761]<<16|K[1762]<<24);H[b+16|0]=c;H[b+17|0]=c>>>8;H[b+18|0]=c>>>16;H[b+19|0]=c>>>24;H[b+20|0]=d;H[b+21|0]=d>>>8;H[b+22|0]=d>>>16;H[b+23|0]=d>>>24;d=K[1755]|K[1756]<<8|(K[1757]<<16|K[1758]<<24);c=K[1751]|K[1752]<<8|(K[1753]<<16|K[1754]<<24);H[b+8|0]=c;H[b+9|0]=c>>>8;H[b+10|0]=c>>>16;H[b+11|0]=c>>>24;H[b+12|0]=d;H[b+13|0]=d>>>8;H[b+14|0]=d>>>16;H[b+15|0]=d>>>24;d=K[1747]|K[1748]<<8|(K[1749]<<16|K[1750]<<24);c=K[1743]|K[1744]<<8|(K[1745]<<16|K[1746]<<24);H[b|0]=c;H[b+1|0]=c>>>8;H[b+2|0]=c>>>16;H[b+3|0]=c>>>24;H[b+4|0]=d;H[b+5|0]=d>>>8;H[b+6|0]=d>>>16;H[b+7|0]=d>>>24;J[a>>2]=-1;Ga(a+4|0,b,29);na(b);break d}g=0;c=b;r:{if(K[b+352|0]){break r}b=J[c+8>>2];e=J[b+12>>2]-J[b+8>>2]|0;f=e>>2;b=f-1|0;d=J[c+176>>2];h=J[c+172>>2];i=(d-h|0)/136|0;s:{if(b>>>0>i>>>0){cg(c+172|0,b-i|0);break s}if(b>>>0>=i>>>0){break s}i=h+P(b,136)|0;if((i|0)!=(d|0)){while(1){b=d-136|0;h=J[b+116>>2];if(h){J[d-16>>2]=h;na(h)}h=J[d-32>>2];if(h){J[d-28>>2]=h;na(h)}pc(d-132|0);d=b;if((b|0)!=(i|0)){continue}break}}J[c+176>>2]=i}if((e|0)==4|(e|0)<=0){break r}i=(f|0)<=1?1:f;d=0;t:{while(1){h=J[J[J[c+8>>2]+8>>2]+(d<<2)>>2];if(J[h+56>>2]){k=P(g,136);b=k+J[c+172>>2]|0;J[b>>2]=d;e=J[b+104>>2];J[b+108>>2]=e;f=J[c+12>>2];f=J[f+4>>2]-J[f>>2]|0;n=f>>2;u:{if(n>>>0<=J[b+112>>2]-e>>2>>>0){break u}if((f|0)<0){break t}f=oa(f);J[b+108>>2]=f;J[b+104>>2]=f;J[b+112>>2]=f+(n<<2);if(!e){break u}na(e)}b=k+J[c+172>>2]|0;J[b+128>>2]=0;lf(b+4|0,J[c+8>>2],J[c+12>>2],h);g=g+1|0}d=d+1|0;if((i|0)!=(d|0)){continue}break}break r}break c}b=(J[c+176>>2]-J[c+172>>2]|0)/136|0;H[l+31|0]=b;d=J[J[c+4>>2]+44>>2];e=J[d+20>>2];if(!J[d+16>>2]&(e|0)<=0|(e|0)<0){sa(d,J[d+4>>2],l+31|0,l+32|0);b=K[l+31|0]}J[c+284>>2]=b&255;b=J[c+12>>2];g=J[b>>2];b=J[b+4>>2];ig(j);e=0;J[l+24>>2]=0;J[l+16>>2]=0;J[l+20>>2]=0;d=0;v:{w:{x:{b=b-g|0;if((b|0)>0){b=b>>>2|0;p=b>>>0<=1?1:b;g=0;while(1){b=(g>>>0)/3|0;s=b>>>5<<2;t=1<<b;y:{if(J[s+J[m>>2]>>2]&t){break y}if(Fc(J[c+12>>2],b)){break y}J[l+8>>2]=0;b=hg(c,b,l+8|0);Ca(j,b);i=J[l+8>>2];if(b){h=-1;f=-1;k=-1;z:{if((i|0)==-1){break z}n=J[J[c+12>>2]>>2];b=n+(i<<2)|0;h=i+1|0;h=(h>>>0)%3|0?h:i-2|0;if((h|0)!=-1){f=J[n+(h<<2)>>2]}h=J[b>>2];A:{if((i>>>0)%3|0){b=i-1|0;break A}b=i+2|0;k=-1;if((b|0)==-1){break z}}k=J[n+(b<<2)>>2]}b=J[c+84>>2];n=b+(h>>>3&536870908)|0;J[n>>2]=J[n>>2]|1<<h;h=b+(f>>>3&536870908)|0;J[h>>2]=J[h>>2]|1<<f;b=b+(k>>>3&536870908)|0;J[b>>2]=J[b>>2]|1<<k;b=J[c+100>>2];h=J[c+104>>2];B:{if(b>>>0<h>>>0){J[b>>2]=1;J[c+100>>2]=b+4;break B}k=b;b=J[c+96>>2];k=k-b|0;n=k>>2;f=n+1|0;if(f>>>0>=1073741824){break c}r=n<<2;h=h-b|0;n=h>>>1|0;f=h>>>0>=2147483644?1073741823:f>>>0<n>>>0?n:f;if(f){if(f>>>0>=1073741824){break x}h=oa(f<<2)}else{h=0}n=r+h|0;J[n>>2]=1;r=f<<2;f=ta(h,b,k);J[c+104>>2]=r+f;J[c+100>>2]=n+4;J[c+96>>2]=f;if(!b){break B}na(b)}b=s+J[m>>2]|0;J[b>>2]=t|J[b>>2];h=-1;if((i|0)!=-1){b=i+1|0;h=(b>>>0)%3|0?b:i-2|0}C:{if(e>>>0<o>>>0){J[e>>2]=h;e=e+4|0;J[l+20>>2]=e;break C}f=e-d>>2;b=f+1|0;if(b>>>0>=1073741824){break c}k=o-d|0;o=k>>>1|0;b=k>>>0>=2147483644?1073741823:b>>>0<o>>>0?o:b;if(b){if(b>>>0>=1073741824){break x}k=oa(b<<2)}else{k=0}f=k+(f<<2)|0;J[f>>2]=h;o=k+(b<<2)|0;b=f+4|0;if((d|0)!=(e|0)){while(1){f=f-4|0;e=e-4|0;J[f>>2]=J[e>>2];if((d|0)!=(e|0)){continue}break}}J[l+24>>2]=o;J[l+20>>2]=b;J[l+16>>2]=f;if(d){na(d)}d=f;e=b}if((i|0)==-1){break y}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1){break y}b=J[J[J[c+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break y}f=(b>>>0)/3|0;if(J[J[m>>2]+(f>>>3&268435452)>>2]>>>f&1){break y}if(_f(c,b)){break y}break w}if((i|0)!=-1){b=i+1|0;b=(b>>>0)%3|0?b:i-2|0}else{b=-1}Hc(c,b,1);if(!_f(c,J[l+8>>2])){break w}}g=g+1|0;if((p|0)!=(g|0)){continue}break}}g=J[c+72>>2];b=J[c+76>>2];D:{if((g|0)==(b|0)){break D}f=b-4|0;if(g>>>0>=f>>>0){break D}while(1){i=J[g>>2];J[g>>2]=J[f>>2];J[f>>2]=i;f=f-4|0;g=g+4|0;if(f>>>0>g>>>0){continue}break}}fg(q,b,d,e);E:{if(J[c+172>>2]==J[c+176>>2]){break E}b=J[c+8>>2];e=J[b+100>>2];b=J[b+96>>2];H[l+8|0]=0;Na(m,(e-b|0)/12|0,l+8|0);g=J[c+72>>2];b=J[c+76>>2];if((g|0)==(b|0)){break E}while(1){eg(c,J[g>>2]);g=g+4|0;if((b|0)!=(g|0)){continue}break}}m=0;g=0;b=j+32|0;ya(j,b);if(!(!J[j+80>>2]|J[j+84>>2]<=0)){while(1){ya(J[j+80>>2]+(m<<5)|0,b);m=m+1|0;if((m|0)<J[j+84>>2]){continue}break}}m=J[j+136>>2];if((m|0)!=J[j+140>>2]){while(1){e=P(g,12);f=e+m|0;Aa(J[f+4>>2]-J[f>>2]>>2,b);m=J[j+136>>2];e=e+m|0;f=J[e+4>>2];e=J[e>>2];if((f|0)!=(e|0)){ee(e,f-e>>2,1,0,b);m=J[j+136>>2]}g=g+1|0;if(g>>>0<(J[j+140>>2]-m|0)/12>>>0){continue}break}}Aa(J[c+324>>2],J[J[c+4>>2]+44>>2]);Aa(J[c+168>>2],J[J[c+4>>2]+44>>2]);if(!dg(c)){b=oa(32);H[b+28|0]=0;c=K[1909]|K[1910]<<8|(K[1911]<<16|K[1912]<<24);H[b+24|0]=c;H[b+25|0]=c>>>8;H[b+26|0]=c>>>16;H[b+27|0]=c>>>24;c=K[1905]|K[1906]<<8|(K[1907]<<16|K[1908]<<24);e=K[1901]|K[1902]<<8|(K[1903]<<16|K[1904]<<24);H[b+16|0]=e;H[b+17|0]=e>>>8;H[b+18|0]=e>>>16;H[b+19|0]=e>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1897]|K[1898]<<8|(K[1899]<<16|K[1900]<<24);e=K[1893]|K[1894]<<8|(K[1895]<<16|K[1896]<<24);H[b+8|0]=e;H[b+9|0]=e>>>8;H[b+10|0]=e>>>16;H[b+11|0]=e>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1889]|K[1890]<<8|(K[1891]<<16|K[1892]<<24);e=K[1885]|K[1886]<<8|(K[1887]<<16|K[1888]<<24);H[b|0]=e;H[b+1|0]=e>>>8;H[b+2|0]=e>>>16;H[b+3|0]=e>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,28);na(b);break v}b=J[J[c+4>>2]+44>>2];e=J[b+20>>2];if(!J[b+16>>2]&(e|0)<=0|(e|0)<0){sa(b,J[b+4>>2],J[c+232>>2],J[c+236>>2])}J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;break v}xa();B()}b=oa(48);H[b+32|0]=0;c=K[1703]|K[1704]<<8|(K[1705]<<16|K[1706]<<24);e=K[1699]|K[1700]<<8|(K[1701]<<16|K[1702]<<24);H[b+24|0]=e;H[b+25|0]=e>>>8;H[b+26|0]=e>>>16;H[b+27|0]=e>>>24;H[b+28|0]=c;H[b+29|0]=c>>>8;H[b+30|0]=c>>>16;H[b+31|0]=c>>>24;c=K[1695]|K[1696]<<8|(K[1697]<<16|K[1698]<<24);e=K[1691]|K[1692]<<8|(K[1693]<<16|K[1694]<<24);H[b+16|0]=e;H[b+17|0]=e>>>8;H[b+18|0]=e>>>16;H[b+19|0]=e>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1687]|K[1688]<<8|(K[1689]<<16|K[1690]<<24);e=K[1683]|K[1684]<<8|(K[1685]<<16|K[1686]<<24);H[b+8|0]=e;H[b+9|0]=e>>>8;H[b+10|0]=e>>>16;H[b+11|0]=e>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1679]|K[1680]<<8|(K[1681]<<16|K[1682]<<24);e=K[1675]|K[1676]<<8|(K[1677]<<16|K[1678]<<24);H[b|0]=e;H[b+1|0]=e>>>8;H[b+2|0]=e>>>16;H[b+3|0]=e>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,32);na(b)}if(!d){break d}na(d)}ba=l+32|0;return}qa();B()}function el(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,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,C=0,D=0,E=0,F=0,G=0,I=0,L=0,M=0,N=0,O=0,Q=0,S=0,U=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,da=0,ea=0,fa=0;i=ba-224|0;ba=i;J[a+8>>2]=e;C=a+32|0;h=J[C>>2];f=J[a+36>>2]-h>>2;a:{if(f>>>0<e>>>0){Fa(C,e-f|0);break a}if(e>>>0>=f>>>0){break a}J[a+36>>2]=h+(e<<2)}b:{if(!d){break b}g=J[b>>2];c:{if((d|0)<2){d=g;break c}h=1;f=d-1|0;s=f&1;d:{if((d|0)==2){d=g;break d}y=f&-2;d=g;while(1){j=(h<<2)+b|0;f=J[j+4>>2];j=J[j>>2];l=(j|0)<(d|0);d=l?j:d;t=(d|0)>(f|0);d=t?f:d;j=l?g:(g|0)<(j|0)?j:g;g=t?j:(f|0)>(j|0)?f:j;h=h+2|0;k=k+2|0;if((y|0)!=(k|0)){continue}break}}if(!s){break c}f=J[(h<<2)+b>>2];h=(f|0)<(d|0);d=h?f:d;g=h?g:(f|0)>(g|0)?f:g}J[a+16>>2]=g;J[a+12>>2]=d;f=g-d|0;d=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;if(!d&f>>>0>2147483646|d){break b}d=f+1|0;J[a+20>>2]=d;f=d>>>1|0;J[a+24>>2]=f;J[a+28>>2]=0-f;if(d&1){break b}J[a+24>>2]=f-1}Z=J[a+52>>2];z=J[a+48>>2];J[i+184>>2]=0;J[i+188>>2]=0;J[i+176>>2]=0;J[i+180>>2]=0;J[i+168>>2]=0;J[i+172>>2]=0;J[i+160>>2]=0;J[i+164>>2]=0;J[i+152>>2]=0;J[i+156>>2]=0;J[i+144>>2]=0;J[i+148>>2]=0;e:{if(!e){g=0;d=0;break e}Fa(i+144|0,e);g=J[i+156>>2];d=J[i+160>>2]}d=d-g>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}J[i+160>>2]=(e<<2)+g;break f}Fa(i+144|12,e-d|0)}f=J[i+168>>2];d=J[i+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}J[i+172>>2]=f+(e<<2);break g}Fa(i+168|0,e-d|0)}h:{i:{f=J[i+180>>2];d=J[i+184>>2]-f>>2;j:{k:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){J[i+184>>2]=f+(e<<2)}J[i+136>>2]=0;J[i+128>>2]=0;J[i+132>>2]=0;if(e){break k}d=1;break j}Fa(i+180|0,e-d|0);J[i+136>>2]=0;J[i+128>>2]=0;J[i+132>>2]=0}if(e>>>0>=1073741824){break i}d=e<<2;f=oa(d);J[i+128>>2]=f;h=d+f|0;J[i+136>>2]=h;pa(f,0,d);J[i+132>>2]=h;d=0}A=a+152|0;h=J[a+152>>2];f=J[a+156>>2]-h>>2;l:{m:{if(f>>>0<e>>>0){Fa(A,e-f|0);J[i+104>>2]=0;J[i+108>>2]=0;J[i+96>>2]=0;J[i+100>>2]=0;J[i+88>>2]=0;J[i+92>>2]=0;J[i+80>>2]=0;J[i+84>>2]=0;J[i+72>>2]=0;J[i+76>>2]=0;d=i- -64|0;J[d>>2]=0;J[d+4>>2]=0;J[i+56>>2]=0;J[i+60>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;break m}if(e>>>0<f>>>0){J[a+156>>2]=h+(e<<2)}J[i+104>>2]=0;J[i+108>>2]=0;J[i+96>>2]=0;J[i+100>>2]=0;J[i+88>>2]=0;J[i+92>>2]=0;J[i+80>>2]=0;J[i+84>>2]=0;J[i+72>>2]=0;J[i+76>>2]=0;f=i- -64|0;J[f>>2]=0;J[f+4>>2]=0;J[i+56>>2]=0;J[i+60>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;s=0;if(d){break l}}d=e<<2;q=oa(d);s=pa(q,0,d)+d|0}d=J[a+56>>2];d=J[d+4>>2]-J[d>>2]|0;if((d|0)<5){break h}L=e&-2;M=e&1;_=e&-4;S=e&3;N=e-1|0;U=e<<2;O=a+112|0;y=d>>>2|0;Q=s-q|0;D=Q>>2;X=(Q-4&-4)+4|0;$=i+36|0;aa=i+24|0;while(1){f=J[a+56>>2];d=J[f>>2];n:{o:{t=y-1|0;if(t>>>0<J[f+4>>2]-d>>2>>>0){f=0;j=0;k=J[d+(t<<2)>>2];p:{if((k|0)==-1){break p}o=1;d=k+2|0;j=(k>>>0)%3|0;u=j?k-1|0:d;E=1<<u;l=J[z>>2];G=l+(u>>>3&536870908)|0;h=0;I=(j|0)!=0|(d|0)!=-1;d=k;while(1){q:{if(J[l+(d>>>3&536870908)>>2]>>>d&1){break q}j=J[J[J[z+64>>2]+12>>2]+(d<<2)>>2];if((j|0)==-1){break q}n=J[Z>>2];g=J[z+28>>2];m=J[n+(J[g+(j<<2)>>2]<<2)>>2];if((m|0)>=(t|0)){break q}p=j+1|0;p=J[n+(J[g+(((p>>>0)%3|0?p:j-2|0)<<2)>>2]<<2)>>2];if((p|0)>=(t|0)){break q}g=J[n+(J[g+(j+((j>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(t|0)){break q}r:{if(!e){break r}j=J[(i+144|0)+P(h,12)>>2];n=P(e,g);p=P(e,p);x=P(e,m);g=0;m=0;if(N){while(1){J[j+(g<<2)>>2]=(J[(g+n<<2)+b>>2]+J[(g+p<<2)+b>>2]|0)-J[(g+x<<2)+b>>2];w=g|1;J[j+(w<<2)>>2]=(J[(n+w<<2)+b>>2]+J[(p+w<<2)+b>>2]|0)-J[(x+w<<2)+b>>2];g=g+2|0;m=m+2|0;if((L|0)!=(m|0)){continue}break}}if(!M){break r}J[j+(g<<2)>>2]=(J[(g+n<<2)+b>>2]+J[(g+p<<2)+b>>2]|0)-J[(g+x<<2)+b>>2]}j=4;h=h+1|0;if((h|0)==4){break p}}s:{if(o&1){g=d-2|0;j=d+1|0;d=-1;j=(j>>>0)%3|0?j:g;if((j|0)==-1|J[l+(j>>>3&536870908)>>2]>>>j&1){break s}j=J[J[J[z+64>>2]+12>>2]+(j<<2)>>2];if((j|0)==-1){break s}d=j+1|0;d=(d>>>0)%3|0?d:j-2|0;break s}t:{if((d>>>0)%3|0){g=d-1|0;break t}g=d+2|0;d=-1;if((g|0)==-1){break s}}d=-1;if(J[l+(g>>>3&536870908)>>2]>>>g&1){break s}j=J[J[J[z+64>>2]+12>>2]+(g<<2)>>2];if((j|0)==-1){break s}if((j>>>0)%3|0){d=j-1|0;break s}d=j+2|0}if((d|0)==(k|0)){j=h;break p}if((d|0)==-1&o){if(!I){j=h;break p}if(E&J[G>>2]){j=h;break p}d=J[J[J[z+64>>2]+12>>2]+(u<<2)>>2];if((d|0)==-1){j=h;break p}o=0;d=(d>>>0)%3|0?d-1|0:d+2|0}j=h;if((d|0)!=-1){continue}break}}H[i+16|0]=0;J[i+8>>2]=0;J[i+12>>2]=0;J[i+44>>2]=0;J[i+36>>2]=0;J[i+40>>2]=0;J[i+28>>2]=0;J[i+32>>2]=0;J[i+20>>2]=0;J[i+24>>2]=0;I=P(e,t)<<2;x=I+b|0;k=(P(y-2|0,e)<<2)+b|0;l=J[A>>2];d=0;if(e){while(1){g=f<<2;h=J[g+k>>2]-J[g+x>>2]|0;J[g+q>>2]=h;J[g+l>>2]=(h|0)<0?(h^-1)<<1|1:h<<1;g=d;d=h>>31;d=g+((d^h)-d|0)|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}f=i+200|0;Db(f,O,l,e);l=Cb(f);h=J[f+12>>2];f=J[f+16>>2];h=(((h-f|0)+1|0)/64|0)+f<<3;n=f<<3;f=h+n|0;h=(h>>31)+(n>>31)|0;g=ca+(f>>>0<n>>>0?h+1|0:h)|0;h=f;f=f+l|0;h=h>>>0>f>>>0?g+1|0:g;E=(j|0)<=0;if(!E){o=(j<<3)-8|0;g=o+(i+48|0)|0;n=g;l=J[g>>2];g=J[g+4>>2];l=j+l|0;g=l>>>0<j>>>0?g+1|0:g;J[n>>2]=l;J[n+4>>2]=g;v=W(Eb(l,J[o+(i+80|0)>>2])*(+(l>>>0)+ +(g|0)*4294967296));u:{if(R(v)<0x8000000000000000){l=R(v)>=1?~~(v>0?T(V(v*2.3283064365386963e-10),4294967295):W((v-+(~~v>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~v>>>0;break u}l=-2147483648;g=0}f=f+g|0;h=f}J[i+20>>2]=0;H[i+16|0]=0;J[i+8>>2]=f;J[i+12>>2]=d;tc(aa,k,k+U|0);bb($,q,s);v:{w:{x:{if(E){break x}n=(i+124|0)+j|0;l=n-1|0;Y=j<<3;d=Y-8|0;G=d+(i+48|0)|0;da=d+(i+80|0)|0;o=1;w=0;while(1){d=i+124|0;pa(d,1,j);w=w+1|0;pa(d,0,w);y:{z:while(1){if(e){pa(J[i+128>>2],0,U)}m=0;d=J[i+128>>2];u=0;while(1){if(!K[(i+124|0)+m|0]){A:{if(!e){break A}f=J[(i+144|0)+P(m,12)>>2];h=0;g=0;k=0;if(e>>>0>3){while(1){p=g<<2;r=p+d|0;J[r>>2]=J[r>>2]+J[f+p>>2];r=p|4;F=r+d|0;J[F>>2]=J[F>>2]+J[f+r>>2];r=p|8;F=r+d|0;J[F>>2]=J[F>>2]+J[f+r>>2];p=p|12;r=p+d|0;J[r>>2]=J[r>>2]+J[f+p>>2];g=g+4|0;k=k+4|0;if((_|0)!=(k|0)){continue}break}}if(!S){break A}while(1){k=g<<2;p=k+d|0;J[p>>2]=J[p>>2]+J[f+k>>2];g=g+1|0;h=h+1|0;if((S|0)!=(h|0)){continue}break}}u=1<<m|u}m=m+1|0;if((m|0)!=(j|0)){continue}break}f=J[i+128>>2];B:{C:{D:{if(e){g=0;d=0;if(N){break D}break C}k=J[A>>2];h=0;break B}while(1){h=g<<2;k=h+f|0;J[k>>2]=J[k>>2]/(o|0);h=(h|4)+f|0;J[h>>2]=J[h>>2]/(o|0);g=g+2|0;d=d+2|0;if((L|0)!=(d|0)){continue}break}}if(M){d=(g<<2)+f|0;J[d>>2]=J[d>>2]/(o|0)}k=J[A>>2];f=J[i+128>>2];d=0;h=0;if(!e){break B}while(1){m=d<<2;g=J[m+f>>2]-J[m+x>>2]|0;J[m+q>>2]=g;J[k+m>>2]=(g|0)<0?(g^-1)<<1|1:g<<1;m=h;h=g>>31;h=m+((h^g)-h|0)|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=i+200|0;Db(d,O,k,e);k=Cb(d);g=J[d+12>>2];d=J[d+16>>2];g=(((g-d|0)+1|0)/64|0)+d<<3;m=d<<3;d=g+m|0;d=d+k|0;k=J[G+4>>2];g=J[G>>2];v=W(Eb(g,J[da>>2]+o|0)*(+(g>>>0)+ +(k|0)*4294967296));E:{if(R(v)<0x8000000000000000){g=~~v>>>0;break E}g=0}d=g+d|0;g=J[i+8>>2];if(!((d|0)>=(g|0)&((d|0)>(g|0)|(h|0)>=J[i+12>>2]))){J[i+20>>2]=o;H[i+16|0]=u;J[i+8>>2]=d;J[i+12>>2]=h;k=J[i+132>>2];m=k-f|0;g=m>>2;d=J[i+32>>2];h=J[i+24>>2];F:{if(g>>>0<=d-h>>2>>>0){m=J[i+28>>2]-h|0;d=m+f|0;u=m>>2;m=u>>>0<g>>>0?d:k;p=m-f|0;if((f|0)!=(m|0)){ta(h,f,p)}if(g>>>0>u>>>0){g=J[i+28>>2];if((k|0)==(m|0)){break F}while(1){J[g>>2]=J[d>>2];g=g+4|0;d=d+4|0;if((k|0)!=(d|0)){continue}break}break F}g=h+p|0;break F}if(h){J[i+28>>2]=h;na(h);J[i+32>>2]=0;J[i+24>>2]=0;J[i+28>>2]=0;d=0}if((m|0)<0){break w}h=d>>>1|0;d=d>>>0>=2147483644?1073741823:g>>>0<h>>>0?h:g;if(d>>>0>=1073741824){break w}d=d<<2;g=oa(d);J[i+24>>2]=g;J[i+32>>2]=d+g;if((f|0)==(k|0)){break F}d=(m-4&-4)+4|0;g=ua(g,f,d)+d|0}J[i+28>>2]=g;d=J[i+44>>2];f=J[i+36>>2];G:{if(d-f>>2>>>0>=D>>>0){h=J[i+40>>2]-f|0;d=h+q|0;k=h>>2;h=k>>>0<D>>>0?d:s;g=h-q|0;if((h|0)!=(q|0)){ta(f,q,g)}if(k>>>0<D>>>0){g=J[i+40>>2];if((h|0)==(s|0)){break G}while(1){J[g>>2]=J[d>>2];g=g+4|0;d=d+4|0;if((s|0)!=(d|0)){continue}break}break G}g=f+g|0;break G}if(f){J[i+40>>2]=f;na(f);J[i+44>>2]=0;J[i+36>>2]=0;J[i+40>>2]=0;d=0}if((Q|0)<0){break v}f=d>>>1|0;d=d>>>0>=2147483644?1073741823:f>>>0>D>>>0?f:D;if(d>>>0>=1073741824){break v}d=d<<2;g=oa(d);J[i+36>>2]=g;J[i+44>>2]=d+g;if((q|0)==(s|0)){break G}g=ua(g,q,X)+X|0}J[i+40>>2]=g}if((l|0)==(i+124|0)){break y}g=K[l|0];d=-1;while(1){k=g&255;f=d-1|0;h=f+n|0;g=K[h|0];if(k>>>0>g>>>0){f=n;while(1){f=f-1|0;k=K[f|0];if(k>>>0<=g>>>0){continue}break}H[h|0]=k;H[f|0]=g;if((d|0)==-1){continue z}g=d+n|0;d=l;while(1){f=K[g|0];H[g|0]=K[d|0];H[d|0]=f;d=d-1|0;g=g+1|0;if(d>>>0>g>>>0){continue}break}continue z}d=f;if((h|0)!=(i+124|0)){continue}break}break}f=i+124|0;g=f;d=l;if(f>>>0>=d>>>0){break y}while(1){f=K[g|0];H[g|0]=K[d|0];H[d|0]=f;d=d-1|0;g=g+1|0;if(d>>>0>g>>>0){continue}break}}o=o+1|0;if((j|0)!=(w|0)){continue}break}if((j|0)<=0){break x}h=J[i+20>>2];g=h;d=i+Y|0;f=g+J[d+72>>2]|0;h=J[d+76>>2]+(g>>31)|0;J[d+72>>2]=f;J[d+76>>2]=f>>>0<g>>>0?h+1|0:h}if(!e){break n}d=J[A>>2];g=0;f=J[i+36>>2];k=0;if(!N){break o}while(1){l=g<<2;h=J[l+f>>2];J[d+l>>2]=(h|0)<0?(h^-1)<<1|1:h<<1;l=l|4;h=J[l+f>>2];J[d+l>>2]=(h|0)<0?(h^-1)<<1|1:h<<1;g=g+2|0;k=k+2|0;if((L|0)!=(k|0)){continue}break}break o}qa();B()}qa();B()}ra();B()}if(!M){break n}h=g<<2;f=J[h+f>>2];J[d+h>>2]=(f|0)<0?(f^-1)<<1|1:f<<1}Nc(i+200|0,O,J[A>>2],e);H:{if(E){break H}g=P(j,12)+a|0;d=0;while(1){I:{k=J[g+56>>2];l=k<<5;f=J[g+52>>2];J:{if(!(K[i+16|0]>>>d&1)){h=f;K:{if((f|0)!=(l|0)){break K}if((f+1|0)<0){break I}L:{if(f>>>0<=1073741822){k=k<<6;l=(f&-32)+32|0;l=k>>>0>l>>>0?k:l;h=f;if(f>>>0>=l>>>0){break K}if((l|0)>=0){break L}break I}l=2147483647;h=-1;if(f>>>0>=2147483647){break K}}l=(l-1>>>5|0)+1|0;h=oa(l<<2);k=J[g+48>>2];J[h+((f>>>0>=33?f-1>>>5|0:0)<<2)>>2]=0;M:{N:{if(!f){break N}n=f>>>5|0;if(f>>>0>=32){ta(h,k,n<<2)}o=f&31;if(!o){break N}n=n<<2;m=n+h|0;o=-1>>>32-o|0;J[m>>2]=J[m>>2]&(o^-1)|o&J[k+n>>2];J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=l;break M}J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=l;h=f;if(!k){break K}}na(k);h=J[g+52>>2]}J[g+52>>2]=h+1;f=J[g+48>>2]+(h>>>3&536870908)|0;J[f>>2]=J[f>>2]|1<<h;break J}h=f;O:{if((f|0)!=(l|0)){break O}if((f+1|0)<0){break I}P:{if(f>>>0<=1073741822){k=k<<6;l=(f&-32)+32|0;l=k>>>0>l>>>0?k:l;h=f;if(f>>>0>=l>>>0){break O}if((l|0)<0){break I}break P}l=2147483647;h=-1;if(f>>>0>=2147483647){break O}}l=(l-1>>>5|0)+1|0;h=oa(l<<2);k=J[g+48>>2];J[h+((f>>>0>=33?f-1>>>5|0:0)<<2)>>2]=0;Q:{R:{if(!f){break R}n=f>>>5|0;if(f>>>0>=32){ta(h,k,n<<2)}o=f&31;if(!o){break R}n=n<<2;m=n+h|0;o=-1>>>32-o|0;J[m>>2]=J[m>>2]&(o^-1)|o&J[k+n>>2];J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=l;break Q}J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=l;h=f;if(!k){break O}}na(k);h=J[g+52>>2]}J[g+52>>2]=h+1;f=J[g+48>>2]+(h>>>3&536870908)|0;k=J[f>>2];ea=f,fa=Ll(h)&k,J[ea>>2]=fa}d=d+1|0;if((j|0)!=(d|0)){continue}break H}break}qa();B()}g=J[a+8>>2];if((g|0)>0){n=c+I|0;d=J[C>>2];l=0;k=J[i+24>>2];while(1){h=d;if((g|0)>0){h=J[C>>2];g=0;while(1){f=g<<2;j=J[f+k>>2];o=J[a+16>>2];S:{if((j|0)>(o|0)){J[f+h>>2]=o;break S}f=f+h|0;o=J[a+12>>2];if((o|0)>(j|0)){J[f>>2]=o;break S}J[f>>2]=j}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}j=l<<2;f=j+n|0;j=J[j+x>>2]-J[h+j>>2]|0;J[f>>2]=j;T:{if((j|0)<J[a+28>>2]){g=j+J[a+20>>2]|0}else{if((j|0)<=J[a+24>>2]){break T}g=j-J[a+20>>2]|0}J[f>>2]=g}k=h;g=J[a+8>>2];l=l+1|0;if((g|0)>(l|0)){continue}break}}d=J[i+36>>2];if(d){J[i+40>>2]=d;na(d)}d=J[i+24>>2];if(d){J[i+28>>2]=d;na(d)}d=(y|0)>2;y=t;if(d){continue}break}break h}qa();B()}if((e|0)>0){pa(J[i+144>>2],0,e<<2)}g=J[a+8>>2];if((g|0)>0){d=J[a+32>>2];l=0;k=J[i+144>>2];while(1){h=d;if((g|0)>0){h=J[C>>2];g=0;while(1){e=g<<2;f=J[e+k>>2];j=J[a+16>>2];U:{if((f|0)>(j|0)){J[e+h>>2]=j;break U}e=e+h|0;j=J[a+12>>2];if((j|0)>(f|0)){J[e>>2]=j;break U}J[e>>2]=f}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}f=l<<2;e=f+c|0;f=J[b+f>>2]-J[f+h>>2]|0;J[e>>2]=f;V:{if((f|0)<J[a+28>>2]){f=f+J[a+20>>2]|0}else{if((f|0)<=J[a+24>>2]){break V}f=f-J[a+20>>2]|0}J[e>>2]=f}k=h;g=J[a+8>>2];l=l+1|0;if((g|0)>(l|0)){continue}break}}if(q){na(q)}a=J[i+128>>2];if(a){J[i+132>>2]=a;na(a)}a=J[i+180>>2];if(a){J[i+184>>2]=a;na(a)}a=J[i+168>>2];if(a){J[i+172>>2]=a;na(a)}a=J[i+156>>2];if(a){J[i+160>>2]=a;na(a)}a=J[i+144>>2];if(a){J[i+148>>2]=a;na(a)}ba=i+224|0;return 1}function Wk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,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,C=0,D=0,E=0,F=0,G=0,I=0,L=0,M=0,N=0,O=0,Q=0,S=0,U=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,da=0,ea=0,fa=0;i=ba-224|0;ba=i;J[a+8>>2]=e;z=a+32|0;h=J[z>>2];f=J[a+36>>2]-h>>2;a:{if(f>>>0<e>>>0){Fa(z,e-f|0);break a}if(e>>>0>=f>>>0){break a}J[a+36>>2]=h+(e<<2)}b:{if(!d){break b}g=J[b>>2];c:{if((d|0)<2){d=g;break c}h=1;f=d-1|0;w=f&1;d:{if((d|0)==2){d=g;break d}u=f&-2;d=g;while(1){j=(h<<2)+b|0;f=J[j+4>>2];j=J[j>>2];l=(j|0)<(d|0);d=l?j:d;m=(d|0)>(f|0);d=m?f:d;j=l?g:(g|0)<(j|0)?j:g;g=m?j:(f|0)>(j|0)?f:j;h=h+2|0;k=k+2|0;if((u|0)!=(k|0)){continue}break}}if(!w){break c}f=J[(h<<2)+b>>2];h=(f|0)<(d|0);d=h?f:d;g=h?g:(f|0)>(g|0)?f:g}J[a+16>>2]=g;J[a+12>>2]=d;f=g-d|0;d=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;if(!d&f>>>0>2147483646|d){break b}d=f+1|0;J[a+20>>2]=d;f=d>>>1|0;J[a+24>>2]=f;J[a+28>>2]=0-f;if(d&1){break b}J[a+24>>2]=f-1}Z=J[a+52>>2];N=J[a+48>>2];J[i+184>>2]=0;J[i+188>>2]=0;J[i+176>>2]=0;J[i+180>>2]=0;J[i+168>>2]=0;J[i+172>>2]=0;J[i+160>>2]=0;J[i+164>>2]=0;J[i+152>>2]=0;J[i+156>>2]=0;J[i+144>>2]=0;J[i+148>>2]=0;e:{if(!e){g=0;d=0;break e}Fa(i+144|0,e);g=J[i+156>>2];d=J[i+160>>2]}d=d-g>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}J[i+160>>2]=(e<<2)+g;break f}Fa(i+144|12,e-d|0)}f=J[i+168>>2];d=J[i+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}J[i+172>>2]=f+(e<<2);break g}Fa(i+168|0,e-d|0)}h:{i:{f=J[i+180>>2];d=J[i+184>>2]-f>>2;j:{k:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){J[i+184>>2]=f+(e<<2)}J[i+136>>2]=0;J[i+128>>2]=0;J[i+132>>2]=0;if(e){break k}d=1;break j}Fa(i+180|0,e-d|0);J[i+136>>2]=0;J[i+128>>2]=0;J[i+132>>2]=0}if(e>>>0>=1073741824){break i}d=e<<2;f=oa(d);J[i+128>>2]=f;h=d+f|0;J[i+136>>2]=h;pa(f,0,d);J[i+132>>2]=h;d=0}x=a+152|0;h=J[a+152>>2];f=J[a+156>>2]-h>>2;l:{m:{if(f>>>0<e>>>0){Fa(x,e-f|0);J[i+104>>2]=0;J[i+108>>2]=0;J[i+96>>2]=0;J[i+100>>2]=0;J[i+88>>2]=0;J[i+92>>2]=0;J[i+80>>2]=0;J[i+84>>2]=0;J[i+72>>2]=0;J[i+76>>2]=0;d=i- -64|0;J[d>>2]=0;J[d+4>>2]=0;J[i+56>>2]=0;J[i+60>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;break m}if(e>>>0<f>>>0){J[a+156>>2]=h+(e<<2)}J[i+104>>2]=0;J[i+108>>2]=0;J[i+96>>2]=0;J[i+100>>2]=0;J[i+88>>2]=0;J[i+92>>2]=0;J[i+80>>2]=0;J[i+84>>2]=0;J[i+72>>2]=0;J[i+76>>2]=0;f=i- -64|0;J[f>>2]=0;J[f+4>>2]=0;J[i+56>>2]=0;J[i+60>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;u=0;if(d){break l}}d=e<<2;r=oa(d);u=pa(r,0,d)+d|0}d=J[a+56>>2];d=J[d+4>>2]-J[d>>2]|0;if((d|0)<5){break h}F=e&-2;G=e&1;_=e&-4;O=e&3;I=e-1|0;Q=e<<2;L=a+112|0;E=d>>>2|0;M=u-r|0;A=M>>2;S=(M-4&-4)+4|0;$=i+36|0;aa=i+24|0;while(1){f=J[a+56>>2];d=J[f>>2];n:{o:{w=E-1|0;if(w>>>0<J[f+4>>2]-d>>2>>>0){f=0;l=0;d=J[d+(w<<2)>>2];p:{if((d|0)==-1){break p}m=J[N+12>>2];h=d+2|0;l=(d>>>0)%3|0;y=m+((l?d-1|0:h)<<2)|0;j=0;C=(l|0)!=0|(h|0)!=-1;q=1;h=d;while(1){l=J[m+(h<<2)>>2];q:{if((l|0)==-1){break q}k=-1;p=J[Z>>2];n=J[N>>2];g=p+(J[n+(l<<2)>>2]<<2)|0;o=l+1|0;o=(o>>>0)%3|0?o:l-2|0;if((o|0)!=-1){k=J[n+(o<<2)>>2]}o=J[g>>2];r:{s:{if((l>>>0)%3|0){g=l-1|0;break s}g=l+2|0;s=-1;if((g|0)==-1){break r}}s=J[n+(g<<2)>>2]}if((o|0)>=(w|0)){break q}g=J[p+(k<<2)>>2];if((g|0)>=(w|0)){break q}k=J[p+(s<<2)>>2];if((k|0)>=(w|0)){break q}l=J[(i+144|0)+P(j,12)>>2];t:{if(!e){break t}k=P(e,k);n=P(e,g);o=P(e,o);g=0;p=0;if(I){while(1){J[l+(g<<2)>>2]=(J[(g+k<<2)+b>>2]+J[(g+n<<2)+b>>2]|0)-J[(g+o<<2)+b>>2];s=g|1;J[l+(s<<2)>>2]=(J[(k+s<<2)+b>>2]+J[(n+s<<2)+b>>2]|0)-J[(o+s<<2)+b>>2];g=g+2|0;p=p+2|0;if((F|0)!=(p|0)){continue}break}}if(!G){break t}J[l+(g<<2)>>2]=(J[(g+k<<2)+b>>2]+J[(g+n<<2)+b>>2]|0)-J[(g+o<<2)+b>>2]}l=4;j=j+1|0;if((j|0)==4){break p}}u:{if(q&1){g=h+1|0;h=(g>>>0)%3|0?g:h-2|0;l=-1;if((h|0)==-1){break u}h=J[m+(h<<2)>>2];l=-1;if((h|0)==-1){break u}l=h+1|0;l=(l>>>0)%3|0?l:h-2|0;break u}v:{if((h>>>0)%3|0){g=h-1|0;break v}g=h+2|0;l=-1;if((g|0)==-1){break u}}h=J[m+(g<<2)>>2];l=-1;if((h|0)==-1){break u}l=h-1|0;if((h>>>0)%3|0){break u}l=h+2|0}h=l;if((d|0)==(h|0)){l=j;break p}if((h|0)==-1&q){if(!C){l=j;break p}h=J[y>>2];if((h|0)==-1){l=j;break p}q=0;h=(h>>>0)%3|0?h-1|0:h+2|0}l=j;if((h|0)!=-1){continue}break}}H[i+16|0]=0;J[i+8>>2]=0;J[i+12>>2]=0;J[i+44>>2]=0;J[i+36>>2]=0;J[i+40>>2]=0;J[i+28>>2]=0;J[i+32>>2]=0;J[i+20>>2]=0;J[i+24>>2]=0;U=P(e,w)<<2;s=U+b|0;k=(P(E-2|0,e)<<2)+b|0;g=J[x>>2];d=0;if(e){while(1){j=f<<2;h=J[j+k>>2]-J[j+s>>2]|0;J[j+r>>2]=h;J[g+j>>2]=(h|0)<0?(h^-1)<<1|1:h<<1;j=d;d=h>>31;d=j+((d^h)-d|0)|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}f=i+200|0;Db(f,L,g,e);j=Cb(f);h=J[f+12>>2];f=J[f+16>>2];h=(((h-f|0)+1|0)/64|0)+f<<3;m=f<<3;f=h+m|0;h=(h>>31)+(m>>31)|0;g=ca+(f>>>0<m>>>0?h+1|0:h)|0;h=f;f=f+j|0;h=h>>>0>f>>>0?g+1|0:g;C=(l|0)<=0;if(!C){n=(l<<3)-8|0;j=n+(i+48|0)|0;m=j;g=J[j>>2];j=J[j+4>>2];g=g+l|0;j=g>>>0<l>>>0?j+1|0:j;J[m>>2]=g;J[m+4>>2]=j;v=W(Eb(g,J[n+(i+80|0)>>2])*(+(g>>>0)+ +(j|0)*4294967296));w:{if(R(v)<0x8000000000000000){g=R(v)>=1?~~(v>0?T(V(v*2.3283064365386963e-10),4294967295):W((v-+(~~v>>>0>>>0))*2.3283064365386963e-10))>>>0:0;j=~~v>>>0;break w}g=-2147483648;j=0}f=f+j|0;h=f}J[i+20>>2]=0;H[i+16|0]=0;J[i+8>>2]=f;J[i+12>>2]=d;tc(aa,k,k+Q|0);bb($,r,u);x:{y:{z:{if(C){break z}n=(i+124|0)+l|0;m=n-1|0;X=l<<3;d=X-8|0;Y=d+(i+48|0)|0;da=d+(i+80|0)|0;q=1;y=0;while(1){d=i+124|0;pa(d,1,l);y=y+1|0;pa(d,0,y);A:{B:while(1){if(e){pa(J[i+128>>2],0,Q)}p=0;d=J[i+128>>2];j=0;while(1){if(!K[(i+124|0)+p|0]){C:{if(!e){break C}f=J[(i+144|0)+P(p,12)>>2];h=0;g=0;k=0;if(e>>>0>3){while(1){o=g<<2;t=o+d|0;J[t>>2]=J[t>>2]+J[f+o>>2];t=o|4;D=t+d|0;J[D>>2]=J[D>>2]+J[f+t>>2];t=o|8;D=t+d|0;J[D>>2]=J[D>>2]+J[f+t>>2];o=o|12;t=o+d|0;J[t>>2]=J[t>>2]+J[f+o>>2];g=g+4|0;k=k+4|0;if((_|0)!=(k|0)){continue}break}}if(!O){break C}while(1){k=g<<2;o=k+d|0;J[o>>2]=J[o>>2]+J[f+k>>2];g=g+1|0;h=h+1|0;if((O|0)!=(h|0)){continue}break}}j=1<<p|j}p=p+1|0;if((p|0)!=(l|0)){continue}break}f=J[i+128>>2];D:{E:{F:{if(e){g=0;d=0;if(I){break F}break E}k=J[x>>2];h=0;break D}while(1){h=g<<2;k=h+f|0;J[k>>2]=J[k>>2]/(q|0);h=(h|4)+f|0;J[h>>2]=J[h>>2]/(q|0);g=g+2|0;d=d+2|0;if((F|0)!=(d|0)){continue}break}}if(G){d=(g<<2)+f|0;J[d>>2]=J[d>>2]/(q|0)}k=J[x>>2];f=J[i+128>>2];d=0;h=0;if(!e){break D}while(1){p=d<<2;g=J[p+f>>2]-J[p+s>>2]|0;J[p+r>>2]=g;J[k+p>>2]=(g|0)<0?(g^-1)<<1|1:g<<1;o=h;h=g>>31;h=o+((h^g)-h|0)|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=i+200|0;Db(d,L,k,e);k=Cb(d);g=J[d+12>>2];d=J[d+16>>2];g=(((g-d|0)+1|0)/64|0)+d<<3;p=d<<3;d=g+p|0;d=d+k|0;k=J[Y+4>>2];g=J[Y>>2];v=W(Eb(g,J[da>>2]+q|0)*(+(g>>>0)+ +(k|0)*4294967296));G:{if(R(v)<0x8000000000000000){g=~~v>>>0;break G}g=0}d=g+d|0;g=J[i+8>>2];if(!((d|0)>=(g|0)&((d|0)>(g|0)|(h|0)>=J[i+12>>2]))){J[i+20>>2]=q;H[i+16|0]=j;J[i+8>>2]=d;J[i+12>>2]=h;j=J[i+132>>2];k=j-f|0;g=k>>2;d=J[i+32>>2];h=J[i+24>>2];H:{if(g>>>0<=d-h>>2>>>0){k=J[i+28>>2]-h|0;d=k+f|0;o=k>>2;k=o>>>0<g>>>0?d:j;p=k-f|0;if((f|0)!=(k|0)){ta(h,f,p)}if(g>>>0>o>>>0){g=J[i+28>>2];if((j|0)==(k|0)){break H}while(1){J[g>>2]=J[d>>2];g=g+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}break H}g=h+p|0;break H}if(h){J[i+28>>2]=h;na(h);J[i+32>>2]=0;J[i+24>>2]=0;J[i+28>>2]=0;d=0}if((k|0)<0){break y}h=d>>>1|0;d=d>>>0>=2147483644?1073741823:g>>>0<h>>>0?h:g;if(d>>>0>=1073741824){break y}d=d<<2;g=oa(d);J[i+24>>2]=g;J[i+32>>2]=d+g;if((f|0)==(j|0)){break H}d=(k-4&-4)+4|0;g=ua(g,f,d)+d|0}J[i+28>>2]=g;d=J[i+44>>2];f=J[i+36>>2];I:{if(d-f>>2>>>0>=A>>>0){h=J[i+40>>2]-f|0;d=h+r|0;g=h>>2;h=g>>>0<A>>>0?d:u;j=h-r|0;if((h|0)!=(r|0)){ta(f,r,j)}if(g>>>0<A>>>0){g=J[i+40>>2];if((h|0)==(u|0)){break I}while(1){J[g>>2]=J[d>>2];g=g+4|0;d=d+4|0;if((u|0)!=(d|0)){continue}break}break I}g=f+j|0;break I}if(f){J[i+40>>2]=f;na(f);J[i+44>>2]=0;J[i+36>>2]=0;J[i+40>>2]=0;d=0}if((M|0)<0){break x}f=d>>>1|0;d=d>>>0>=2147483644?1073741823:f>>>0>A>>>0?f:A;if(d>>>0>=1073741824){break x}d=d<<2;g=oa(d);J[i+36>>2]=g;J[i+44>>2]=d+g;if((r|0)==(u|0)){break I}g=ua(g,r,S)+S|0}J[i+40>>2]=g}if((m|0)==(i+124|0)){break A}g=K[m|0];d=-1;while(1){j=g&255;f=d-1|0;h=f+n|0;g=K[h|0];if(j>>>0>g>>>0){f=n;while(1){f=f-1|0;j=K[f|0];if(j>>>0<=g>>>0){continue}break}H[h|0]=j;H[f|0]=g;if((d|0)==-1){continue B}g=d+n|0;d=m;while(1){f=K[g|0];H[g|0]=K[d|0];H[d|0]=f;d=d-1|0;g=g+1|0;if(d>>>0>g>>>0){continue}break}continue B}d=f;if((h|0)!=(i+124|0)){continue}break}break}f=i+124|0;g=f;d=m;if(f>>>0>=d>>>0){break A}while(1){f=K[g|0];H[g|0]=K[d|0];H[d|0]=f;d=d-1|0;g=g+1|0;if(d>>>0>g>>>0){continue}break}}q=q+1|0;if((l|0)!=(y|0)){continue}break}if((l|0)<=0){break z}h=J[i+20>>2];j=h;d=i+X|0;f=h+J[d+72>>2]|0;h=J[d+76>>2]+(h>>31)|0;J[d+72>>2]=f;J[d+76>>2]=f>>>0<j>>>0?h+1|0:h}if(!e){break n}d=J[x>>2];g=0;f=J[i+36>>2];k=0;if(!I){break o}while(1){j=g<<2;h=J[j+f>>2];J[d+j>>2]=(h|0)<0?(h^-1)<<1|1:h<<1;j=j|4;h=J[j+f>>2];J[d+j>>2]=(h|0)<0?(h^-1)<<1|1:h<<1;g=g+2|0;k=k+2|0;if((F|0)!=(k|0)){continue}break}break o}qa();B()}qa();B()}ra();B()}if(!G){break n}h=g<<2;f=J[h+f>>2];J[d+h>>2]=(f|0)<0?(f^-1)<<1|1:f<<1}Nc(i+200|0,L,J[x>>2],e);J:{if(C){break J}g=P(l,12)+a|0;d=0;while(1){K:{j=J[g+56>>2];k=j<<5;f=J[g+52>>2];L:{if(!(K[i+16|0]>>>d&1)){h=f;M:{if((f|0)!=(k|0)){break M}if((f+1|0)<0){break K}N:{if(f>>>0<=1073741822){j=j<<6;k=(f&-32)+32|0;j=j>>>0>k>>>0?j:k;h=f;if(f>>>0>=j>>>0){break M}if((j|0)>=0){break N}break K}j=2147483647;h=-1;if(f>>>0>=2147483647){break M}}k=(j-1>>>5|0)+1|0;h=oa(k<<2);j=J[g+48>>2];J[h+((f>>>0>=33?f-1>>>5|0:0)<<2)>>2]=0;O:{P:{if(!f){break P}m=f>>>5|0;if(f>>>0>=32){ta(h,j,m<<2)}n=f&31;if(!n){break P}m=m<<2;q=m+h|0;n=-1>>>32-n|0;J[q>>2]=J[q>>2]&(n^-1)|n&J[j+m>>2];J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=k;break O}J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=k;h=f;if(!j){break M}}na(j);h=J[g+52>>2]}J[g+52>>2]=h+1;f=J[g+48>>2]+(h>>>3&536870908)|0;J[f>>2]=J[f>>2]|1<<h;break L}h=f;Q:{if((f|0)!=(k|0)){break Q}if((f+1|0)<0){break K}R:{if(f>>>0<=1073741822){j=j<<6;k=(f&-32)+32|0;j=j>>>0>k>>>0?j:k;h=f;if(f>>>0>=j>>>0){break Q}if((j|0)<0){break K}break R}j=2147483647;h=-1;if(f>>>0>=2147483647){break Q}}k=(j-1>>>5|0)+1|0;h=oa(k<<2);j=J[g+48>>2];J[h+((f>>>0>=33?f-1>>>5|0:0)<<2)>>2]=0;S:{T:{if(!f){break T}m=f>>>5|0;if(f>>>0>=32){ta(h,j,m<<2)}n=f&31;if(!n){break T}m=m<<2;q=m+h|0;n=-1>>>32-n|0;J[q>>2]=J[q>>2]&(n^-1)|n&J[j+m>>2];J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=k;break S}J[g+48>>2]=h;J[g+52>>2]=f;J[g+56>>2]=k;h=f;if(!j){break Q}}na(j);h=J[g+52>>2]}J[g+52>>2]=h+1;f=J[g+48>>2]+(h>>>3&536870908)|0;j=J[f>>2];ea=f,fa=Ll(h)&j,J[ea>>2]=fa}d=d+1|0;if((l|0)!=(d|0)){continue}break J}break}qa();B()}g=J[a+8>>2];if((g|0)>0){m=c+U|0;d=J[z>>2];j=0;k=J[i+24>>2];while(1){h=d;if((g|0)>0){h=J[z>>2];g=0;while(1){f=g<<2;l=J[f+k>>2];n=J[a+16>>2];U:{if((l|0)>(n|0)){J[f+h>>2]=n;break U}f=f+h|0;n=J[a+12>>2];if((n|0)>(l|0)){J[f>>2]=n;break U}J[f>>2]=l}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}l=j<<2;f=l+m|0;l=J[l+s>>2]-J[h+l>>2]|0;J[f>>2]=l;V:{if((l|0)<J[a+28>>2]){g=l+J[a+20>>2]|0}else{if((l|0)<=J[a+24>>2]){break V}g=l-J[a+20>>2]|0}J[f>>2]=g}k=h;g=J[a+8>>2];j=j+1|0;if((g|0)>(j|0)){continue}break}}d=J[i+36>>2];if(d){J[i+40>>2]=d;na(d)}d=J[i+24>>2];if(d){J[i+28>>2]=d;na(d)}d=(E|0)>2;E=w;if(d){continue}break}break h}qa();B()}if((e|0)>0){pa(J[i+144>>2],0,e<<2)}g=J[a+8>>2];if((g|0)>0){d=J[a+32>>2];j=0;k=J[i+144>>2];while(1){h=d;if((g|0)>0){h=J[z>>2];g=0;while(1){e=g<<2;f=J[e+k>>2];l=J[a+16>>2];W:{if((f|0)>(l|0)){J[e+h>>2]=l;break W}e=e+h|0;l=J[a+12>>2];if((l|0)>(f|0)){J[e>>2]=l;break W}J[e>>2]=f}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}f=j<<2;e=f+c|0;f=J[b+f>>2]-J[f+h>>2]|0;J[e>>2]=f;X:{if((f|0)<J[a+28>>2]){f=f+J[a+20>>2]|0}else{if((f|0)<=J[a+24>>2]){break X}f=f-J[a+20>>2]|0}J[e>>2]=f}k=h;g=J[a+8>>2];j=j+1|0;if((g|0)>(j|0)){continue}break}}if(r){na(r)}a=J[i+128>>2];if(a){J[i+132>>2]=a;na(a)}a=J[i+180>>2];if(a){J[i+184>>2]=a;na(a)}a=J[i+168>>2];if(a){J[i+172>>2]=a;na(a)}a=J[i+156>>2];if(a){J[i+160>>2]=a;na(a)}a=J[i+144>>2];if(a){J[i+148>>2]=a;na(a)}ba=i+224|0;return 1}function Fk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,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,C=0,D=0,E=0,F=0,G=0,I=0,L=0,M=0,N=0,O=0,Q=0,S=0,U=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,da=0,ea=0,fa=0;g=ba-240|0;ba=g;Z=J[a+36>>2];C=J[a+32>>2];J[g+184>>2]=0;J[g+188>>2]=0;J[g+176>>2]=0;J[g+180>>2]=0;J[g+168>>2]=0;J[g+172>>2]=0;J[g+160>>2]=0;J[g+164>>2]=0;J[g+152>>2]=0;J[g+156>>2]=0;J[g+144>>2]=0;J[g+148>>2]=0;if(e){Fa(g+144|0,e);i=J[g+156>>2];d=J[g+160>>2]}else{d=0}d=d-i>>2;a:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break a}J[g+160>>2]=(e<<2)+i;break a}Fa(g+144|12,e-d|0)}d=J[g+168>>2];f=J[g+172>>2]-d>>2;b:{if(f>>>0>=e>>>0){if(e>>>0>=f>>>0){break b}J[g+172>>2]=d+(e<<2);break b}Fa(g+168|0,e-f|0)}c:{d:{d=J[g+180>>2];f=J[g+184>>2]-d>>2;e:{f:{if(f>>>0>=e>>>0){if(e>>>0<f>>>0){J[g+184>>2]=d+(e<<2)}J[g+136>>2]=0;J[g+128>>2]=0;J[g+132>>2]=0;if(e){break f}d=1;break e}Fa(g+180|0,e-f|0);J[g+136>>2]=0;J[g+128>>2]=0;J[g+132>>2]=0}if(e>>>0>=1073741824){break d}j=e<<2;f=oa(j);J[g+128>>2]=f;d=f+j|0;J[g+136>>2]=d;pa(f,0,j);J[g+132>>2]=d;d=0}D=a+136|0;f=J[a+136>>2];j=J[a+140>>2]-f>>2;g:{h:{if(j>>>0<e>>>0){Fa(D,e-j|0);J[g+104>>2]=0;J[g+108>>2]=0;J[g+96>>2]=0;J[g+100>>2]=0;J[g+88>>2]=0;J[g+92>>2]=0;J[g+80>>2]=0;J[g+84>>2]=0;J[g+72>>2]=0;J[g+76>>2]=0;d=g- -64|0;J[d>>2]=0;J[d+4>>2]=0;J[g+56>>2]=0;J[g+60>>2]=0;J[g+48>>2]=0;J[g+52>>2]=0;break h}if(e>>>0<j>>>0){J[a+140>>2]=f+(e<<2)}J[g+104>>2]=0;J[g+108>>2]=0;J[g+96>>2]=0;J[g+100>>2]=0;J[g+88>>2]=0;J[g+92>>2]=0;J[g+80>>2]=0;J[g+84>>2]=0;J[g+72>>2]=0;J[g+76>>2]=0;f=g- -64|0;J[f>>2]=0;J[f+4>>2]=0;J[g+56>>2]=0;J[g+60>>2]=0;J[g+48>>2]=0;J[g+52>>2]=0;f=0;if(d){break g}}d=e<<2;t=oa(d);f=pa(t,0,d)+d|0}d=J[a+40>>2];d=J[d+4>>2]-J[d>>2]|0;if((d|0)<5){break c}M=e&-2;N=e&1;_=e&-4;U=e&3;O=e-1|0;X=e<<2;$=a+8|0;Q=a+96|0;G=d>>>2|0;E=f;S=f-t|0;F=S>>2;Y=(S-4&-4)+4|0;aa=g+36|0;da=g+24|0;while(1){d=J[a+40>>2];f=J[d>>2];i:{j:{z=G-1|0;if(z>>>0<J[d+4>>2]-f>>2>>>0){d=0;j=0;l=J[f+(z<<2)>>2];k:{if((l|0)==-1){break k}u=1;h=l+2|0;j=(l>>>0)%3|0;A=j?l-1|0:h;r=1<<A;s=J[C>>2];q=s+(A>>>3&536870908)|0;f=0;n=(j|0)!=0|(h|0)!=-1;h=l;while(1){l:{if(J[s+(h>>>3&536870908)>>2]>>>h&1){break l}o=J[J[J[C+64>>2]+12>>2]+(h<<2)>>2];if((o|0)==-1){break l}w=J[Z>>2];x=J[C+28>>2];k=J[w+(J[x+(o<<2)>>2]<<2)>>2];if((k|0)>=(z|0)){break l}j=o+1|0;m=J[w+(J[x+(((j>>>0)%3|0?j:o-2|0)<<2)>>2]<<2)>>2];if((m|0)>=(z|0)){break l}j=J[w+(J[x+(o+((o>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((j|0)>=(z|0)){break l}m:{if(!e){break m}o=J[(g+144|0)+P(f,12)>>2];x=P(e,j);w=P(e,m);m=P(e,k);i=0;p=0;if(O){while(1){J[o+(i<<2)>>2]=(J[(i+x<<2)+b>>2]+J[(i+w<<2)+b>>2]|0)-J[(i+m<<2)+b>>2];j=i|1;J[o+(j<<2)>>2]=(J[(j+x<<2)+b>>2]+J[(j+w<<2)+b>>2]|0)-J[(j+m<<2)+b>>2];i=i+2|0;p=p+2|0;if((M|0)!=(p|0)){continue}break}}if(!N){break m}J[o+(i<<2)>>2]=(J[(i+x<<2)+b>>2]+J[(i+w<<2)+b>>2]|0)-J[(i+m<<2)+b>>2]}j=4;f=f+1|0;if((f|0)==4){break k}}n:{if(u&1){j=h-2|0;m=h+1|0;h=-1;j=(m>>>0)%3|0?m:j;if((j|0)==-1|J[s+(j>>>3&536870908)>>2]>>>j&1){break n}m=J[J[J[C+64>>2]+12>>2]+(j<<2)>>2];if((m|0)==-1){break n}j=m+1|0;h=(j>>>0)%3|0?j:m-2|0;break n}o:{if((h>>>0)%3|0){i=h-1|0;break o}i=h+2|0;h=-1;if((i|0)==-1){break n}}h=-1;if(J[s+(i>>>3&536870908)>>2]>>>i&1){break n}j=J[J[J[C+64>>2]+12>>2]+(i<<2)>>2];if((j|0)==-1){break n}if((j>>>0)%3|0){h=j-1|0;break n}h=j+2|0}if((h|0)==(l|0)){j=f;break k}if((h|0)==-1&u){if(!n){j=f;break k}if(r&J[q>>2]){j=f;break k}j=J[J[J[C+64>>2]+12>>2]+(A<<2)>>2];if((j|0)==-1){j=f;break k}u=0;h=(j>>>0)%3|0?j-1|0:j+2|0}j=f;if((h|0)!=-1){continue}break}}H[g+16|0]=0;J[g+8>>2]=0;J[g+12>>2]=0;J[g+44>>2]=0;J[g+36>>2]=0;J[g+40>>2]=0;J[g+28>>2]=0;J[g+32>>2]=0;J[g+20>>2]=0;J[g+24>>2]=0;w=P(e,z)<<2;I=w+b|0;q=(P(G-2|0,e)<<2)+b|0;l=J[D>>2];h=0;if(e){while(1){f=d<<2;m=J[f+q>>2]-J[f+I>>2]|0;J[f+t>>2]=m;J[f+l>>2]=(m|0)<0?(m^-1)<<1|1:m<<1;f=m>>31;h=((f^m)-f|0)+h|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=g+200|0;Db(d,Q,l,e);m=Cb(d);f=J[d+12>>2];d=J[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;d=d<<3;n=f+d|0;f=(f>>31)+(d>>31)|0;k=ca+(d>>>0>n>>>0?f+1|0:f)|0;f=m+n|0;d=f>>>0<n>>>0?k+1|0:k;A=(j|0)<=0;if(!A){k=(j<<3)-8|0;l=k+(g+48|0)|0;n=l;m=J[l>>2];l=J[l+4>>2];m=j+m|0;l=m>>>0<j>>>0?l+1|0:l;J[n>>2]=m;J[n+4>>2]=l;y=W(Eb(m,J[k+(g+80|0)>>2])*(+(m>>>0)+ +(l|0)*4294967296));p:{if(R(y)<0x8000000000000000){m=~~y>>>0;l=R(y)>=1?~~(y>0?T(V(y*2.3283064365386963e-10),4294967295):W((y-+(~~y>>>0>>>0))*2.3283064365386963e-10))>>>0:0;break p}m=0;l=-2147483648}f=f+m|0;d=f}J[g+20>>2]=0;H[g+16|0]=0;J[g+8>>2]=f;J[g+12>>2]=h;tc(da,q,q+X|0);bb(aa,t,E);q:{r:{s:{if(A){break s}m=(g+124|0)+j|0;l=m-1|0;r=j<<3;d=r-8|0;x=d+(g+48|0)|0;q=d+(g+80|0)|0;u=1;L=0;while(1){d=g+124|0;pa(d,1,j);L=L+1|0;pa(d,0,L);t:{u:while(1){if(e){pa(J[g+128>>2],0,X)}p=0;o=J[g+128>>2];s=0;while(1){if(!K[(g+124|0)+p|0]){v:{if(!e){break v}n=J[(g+144|0)+P(p,12)>>2];f=0;i=0;v=0;if(e>>>0>3){while(1){k=i<<2;d=k+o|0;J[d>>2]=J[d>>2]+J[k+n>>2];h=k|4;d=h+o|0;J[d>>2]=J[d>>2]+J[h+n>>2];h=k|8;d=h+o|0;J[d>>2]=J[d>>2]+J[h+n>>2];h=k|12;d=h+o|0;J[d>>2]=J[d>>2]+J[h+n>>2];i=i+4|0;v=v+4|0;if((_|0)!=(v|0)){continue}break}}if(!U){break v}while(1){h=i<<2;d=h+o|0;J[d>>2]=J[d>>2]+J[h+n>>2];i=i+1|0;f=f+1|0;if((U|0)!=(f|0)){continue}break}}s=1<<p|s}p=p+1|0;if((p|0)!=(j|0)){continue}break}d=J[g+128>>2];w:{x:{y:{if(e){i=0;h=0;if(O){break y}break x}v=J[D>>2];f=0;break w}while(1){k=i<<2;f=k+d|0;J[f>>2]=J[f>>2]/(u|0);f=(k|4)+d|0;J[f>>2]=J[f>>2]/(u|0);i=i+2|0;h=h+2|0;if((M|0)!=(h|0)){continue}break}}if(N){d=(i<<2)+d|0;J[d>>2]=J[d>>2]/(u|0)}v=J[D>>2];d=J[g+128>>2];h=0;f=0;if(!e){break w}while(1){k=h<<2;n=J[k+d>>2]-J[k+I>>2]|0;J[k+t>>2]=n;J[k+v>>2]=(n|0)<0?(n^-1)<<1|1:n<<1;i=f;f=n>>31;f=i+((f^n)-f|0)|0;h=h+1|0;if((h|0)!=(e|0)){continue}break}}h=g+200|0;Db(h,Q,v,e);n=Cb(h);i=J[h+12>>2];h=J[h+16>>2];k=(((i-h|0)+1|0)/64|0)+h<<3;h=h<<3;o=k+h|0;h=n+o|0;k=J[x+4>>2];n=J[x>>2];y=W(Eb(n,J[q>>2]+u|0)*(+(n>>>0)+ +(k|0)*4294967296));z:{if(R(y)<0x8000000000000000){i=~~y>>>0;break z}i=0}k=i+h|0;h=J[g+8>>2];if(!((k|0)>=(h|0)&((h|0)<(k|0)|(f|0)>=J[g+12>>2]))){J[g+20>>2]=u;H[g+16|0]=s;J[g+8>>2]=k;J[g+12>>2]=f;s=J[g+132>>2];k=s-d|0;o=k>>2;h=J[g+32>>2];p=J[g+24>>2];A:{if(o>>>0<=h-p>>2>>>0){f=J[g+28>>2]-p|0;h=f+d|0;f=f>>2;n=f>>>0<o>>>0?h:s;k=n-d|0;if((d|0)!=(n|0)){ta(p,d,k)}if(f>>>0<o>>>0){i=J[g+28>>2];if((n|0)==(s|0)){break A}while(1){J[i>>2]=J[h>>2];i=i+4|0;h=h+4|0;if((s|0)!=(h|0)){continue}break}break A}i=k+p|0;break A}if(p){J[g+28>>2]=p;na(p);J[g+32>>2]=0;J[g+24>>2]=0;J[g+28>>2]=0;h=0}if((k|0)<0){break r}f=h>>>1|0;f=h>>>0>=2147483644?1073741823:f>>>0>o>>>0?f:o;if(f>>>0>=1073741824){break r}f=f<<2;i=oa(f);J[g+24>>2]=i;J[g+32>>2]=f+i;if((d|0)==(s|0)){break A}f=d;d=(k-4&-4)+4|0;i=ua(i,f,d)+d|0}J[g+28>>2]=i;h=J[g+44>>2];n=J[g+36>>2];B:{if(h-n>>2>>>0>=F>>>0){d=J[g+40>>2]-n|0;h=d+t|0;d=d>>2;k=d>>>0<F>>>0?h:E;f=k-t|0;if((k|0)!=(t|0)){ta(n,t,f)}if(d>>>0<F>>>0){i=J[g+40>>2];if((k|0)==(E|0)){break B}while(1){J[i>>2]=J[h>>2];i=i+4|0;h=h+4|0;if((E|0)!=(h|0)){continue}break}break B}i=f+n|0;break B}if(n){J[g+40>>2]=n;na(n);J[g+44>>2]=0;J[g+36>>2]=0;J[g+40>>2]=0;h=0}if((S|0)<0){break q}d=h>>>1|0;d=h>>>0>=2147483644?1073741823:d>>>0>F>>>0?d:F;if(d>>>0>=1073741824){break q}d=d<<2;i=oa(d);J[g+36>>2]=i;J[g+44>>2]=d+i;if((t|0)==(E|0)){break B}i=ua(i,t,Y)+Y|0}J[g+40>>2]=i}if((l|0)==(g+124|0)){break t}i=K[l|0];h=-1;while(1){f=i&255;d=h-1|0;k=d+m|0;i=K[k|0];if(f>>>0>i>>>0){d=m;while(1){d=d-1|0;f=K[d|0];if(f>>>0<=i>>>0){continue}break}H[k|0]=f;H[d|0]=i;if((h|0)==-1){continue u}i=h+m|0;h=l;while(1){d=K[i|0];H[i|0]=K[h|0];H[h|0]=d;i=i+1|0;h=h-1|0;if(i>>>0<h>>>0){continue}break}continue u}h=d;if((k|0)!=(g+124|0)){continue}break}break}d=g+124|0;i=d;h=l;if(d>>>0>=h>>>0){break t}while(1){d=K[i|0];H[i|0]=K[h|0];H[h|0]=d;i=i+1|0;h=h-1|0;if(i>>>0<h>>>0){continue}break}}u=u+1|0;if((j|0)!=(L|0)){continue}break}if((j|0)<=0){break s}d=J[g+20>>2];f=d;l=g+r|0;h=d+J[l+72>>2]|0;d=J[l+76>>2]+(d>>31)|0;J[l+72>>2]=h;J[l+76>>2]=f>>>0>h>>>0?d+1|0:d}if(!e){break i}l=J[D>>2];i=0;h=J[g+36>>2];v=0;if(!O){break j}while(1){d=i<<2;f=J[d+h>>2];J[d+l>>2]=(f|0)<0?(f^-1)<<1|1:f<<1;d=d|4;f=J[d+h>>2];J[d+l>>2]=(f|0)<0?(f^-1)<<1|1:f<<1;i=i+2|0;v=v+2|0;if((M|0)!=(v|0)){continue}break}break j}qa();B()}qa();B()}ra();B()}if(!N){break i}d=i<<2;f=J[d+h>>2];J[d+l>>2]=(f|0)<0?(f^-1)<<1|1:f<<1}Nc(g+200|0,Q,J[D>>2],e);C:{if(A){break C}l=P(j,12)+a|0;h=0;while(1){D:{k=J[l+40>>2];m=k<<5;d=J[l+36>>2];E:{if(!(K[g+16|0]>>>h&1)){f=d;F:{if((d|0)!=(m|0)){break F}if((d+1|0)<0){break D}G:{if(d>>>0<=1073741822){k=k<<6;m=(d&-32)+32|0;i=k>>>0>m>>>0?k:m;f=d;if(d>>>0>=i>>>0){break F}if((i|0)>=0){break G}break D}i=2147483647;f=-1;if(d>>>0>=2147483647){break F}}n=(i-1>>>5|0)+1|0;r=oa(n<<2);q=J[l+32>>2];J[r+((d>>>0>=33?d-1>>>5|0:0)<<2)>>2]=0;H:{I:{if(!d){break I}f=d>>>5|0;if(d>>>0>=32){ta(r,q,f<<2)}k=d&31;if(!k){break I}m=f<<2;f=m+r|0;i=f;o=J[f>>2];f=-1>>>32-k|0;J[i>>2]=o&(f^-1)|f&J[m+q>>2];J[l+32>>2]=r;J[l+36>>2]=d;J[l+40>>2]=n;break H}J[l+32>>2]=r;J[l+36>>2]=d;J[l+40>>2]=n;f=d;if(!q){break F}}na(q);f=J[l+36>>2]}J[l+36>>2]=f+1;d=J[l+32>>2]+(f>>>3&536870908)|0;J[d>>2]=J[d>>2]|1<<f;break E}f=d;J:{if((d|0)!=(m|0)){break J}if((d+1|0)<0){break D}K:{if(d>>>0<=1073741822){k=k<<6;m=(d&-32)+32|0;i=k>>>0>m>>>0?k:m;f=d;if(d>>>0>=i>>>0){break J}if((i|0)<0){break D}break K}i=2147483647;f=-1;if(d>>>0>=2147483647){break J}}n=(i-1>>>5|0)+1|0;r=oa(n<<2);q=J[l+32>>2];J[r+((d>>>0>=33?d-1>>>5|0:0)<<2)>>2]=0;L:{M:{if(!d){break M}f=d>>>5|0;if(d>>>0>=32){ta(r,q,f<<2)}k=d&31;if(!k){break M}m=f<<2;f=m+r|0;i=f;o=J[f>>2];f=-1>>>32-k|0;J[i>>2]=o&(f^-1)|f&J[m+q>>2];J[l+32>>2]=r;J[l+36>>2]=d;J[l+40>>2]=n;break L}J[l+32>>2]=r;J[l+36>>2]=d;J[l+40>>2]=n;f=d;if(!q){break J}}na(q);f=J[l+36>>2]}J[l+36>>2]=f+1;m=J[l+32>>2]+(f>>>3&536870908)|0;d=J[m>>2];ea=m,fa=Ll(f)&d,J[ea>>2]=fa}h=h+1|0;if((j|0)!=(h|0)){continue}break C}break}qa();B()}d=J[g+24>>2];j=J[d>>2];f=J[d+4>>2];d=J[I+4>>2];J[g+232>>2]=J[I>>2];J[g+236>>2]=d;J[g+224>>2]=j;J[g+228>>2]=f;Ya(g+200|0,$,g+232|0,g+224|0);d=c+w|0;J[d>>2]=J[g+200>>2];J[d+4>>2]=J[g+204>>2];d=J[g+36>>2];if(d){J[g+40>>2]=d;na(d)}d=J[g+24>>2];if(d){J[g+28>>2]=d;na(d)}d=(G|0)>2;G=z;if(d){continue}break}break c}qa();B()}d=J[g+144>>2];if((e|0)>0){pa(d,0,e<<2)}f=J[d>>2];e=J[d+4>>2];d=J[b+4>>2];J[g+200>>2]=J[b>>2];J[g+204>>2]=d;J[g+232>>2]=f;J[g+236>>2]=e;Ya(g+8|0,a+8|0,g+200|0,g+232|0);J[c>>2]=J[g+8>>2];J[c+4>>2]=J[g+12>>2];if(t){na(t)}a=J[g+128>>2];if(a){J[g+132>>2]=a;na(a)}a=J[g+180>>2];if(a){J[g+184>>2]=a;na(a)}a=J[g+168>>2];if(a){J[g+172>>2]=a;na(a)}a=J[g+156>>2];if(a){J[g+160>>2]=a;na(a)}a=J[g+144>>2];if(a){J[g+148>>2]=a;na(a)}ba=g+240|0;return 1}function tk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,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,C=0,D=0,E=0,F=0,G=0,I=0,L=0,M=0,N=0,O=0,Q=0,S=0,U=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,da=0,ea=0,fa=0;g=ba-240|0;ba=g;Y=J[a+36>>2];M=J[a+32>>2];J[g+184>>2]=0;J[g+188>>2]=0;J[g+176>>2]=0;J[g+180>>2]=0;J[g+168>>2]=0;J[g+172>>2]=0;J[g+160>>2]=0;J[g+164>>2]=0;J[g+152>>2]=0;J[g+156>>2]=0;J[g+144>>2]=0;J[g+148>>2]=0;if(e){Fa(g+144|0,e);h=J[g+156>>2];d=J[g+160>>2]}else{d=0}d=d-h>>2;a:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break a}J[g+160>>2]=(e<<2)+h;break a}Fa(g+144|12,e-d|0)}f=J[g+168>>2];d=J[g+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}J[g+172>>2]=f+(e<<2);break b}Fa(g+168|0,e-d|0)}c:{d:{f=J[g+180>>2];d=J[g+184>>2]-f>>2;e:{f:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){J[g+184>>2]=f+(e<<2)}J[g+136>>2]=0;J[g+128>>2]=0;J[g+132>>2]=0;if(e){break f}d=1;break e}Fa(g+180|0,e-d|0);J[g+136>>2]=0;J[g+128>>2]=0;J[g+132>>2]=0}if(e>>>0>=1073741824){break d}d=e<<2;f=oa(d);J[g+128>>2]=f;i=d+f|0;J[g+136>>2]=i;pa(f,0,d);J[g+132>>2]=i;d=0}x=a+136|0;i=J[a+136>>2];f=J[a+140>>2]-i>>2;g:{h:{if(f>>>0<e>>>0){Fa(x,e-f|0);J[g+104>>2]=0;J[g+108>>2]=0;J[g+96>>2]=0;J[g+100>>2]=0;J[g+88>>2]=0;J[g+92>>2]=0;J[g+80>>2]=0;J[g+84>>2]=0;J[g+72>>2]=0;J[g+76>>2]=0;d=g- -64|0;J[d>>2]=0;J[d+4>>2]=0;J[g+56>>2]=0;J[g+60>>2]=0;J[g+48>>2]=0;J[g+52>>2]=0;break h}if(e>>>0<f>>>0){J[a+140>>2]=i+(e<<2)}J[g+104>>2]=0;J[g+108>>2]=0;J[g+96>>2]=0;J[g+100>>2]=0;J[g+88>>2]=0;J[g+92>>2]=0;J[g+80>>2]=0;J[g+84>>2]=0;J[g+72>>2]=0;J[g+76>>2]=0;f=g- -64|0;J[f>>2]=0;J[f+4>>2]=0;J[g+56>>2]=0;J[g+60>>2]=0;J[g+48>>2]=0;J[g+52>>2]=0;v=0;if(d){break g}}d=e<<2;r=oa(d);v=pa(r,0,d)+d|0}d=J[a+40>>2];d=J[d+4>>2]-J[d>>2]|0;if((d|0)<5){break c}E=e&-2;F=e&1;Z=e&-4;N=e&3;G=e-1|0;O=e<<2;_=a+8|0;I=a+96|0;D=d>>>2|0;L=v-r|0;z=L>>2;Q=(L-4&-4)+4|0;$=g+36|0;aa=g+24|0;while(1){d=J[a+40>>2];f=J[d>>2];i:{j:{w=D-1|0;if(w>>>0<J[d+4>>2]-f>>2>>>0){d=0;k=0;l=J[f+(w<<2)>>2];k:{if((l|0)==-1){break k}j=J[M+12>>2];i=l+2|0;k=(l>>>0)%3|0;y=j+((k?l-1|0:i)<<2)|0;f=0;A=(k|0)!=0|(i|0)!=-1;p=1;i=l;while(1){k=J[j+(i<<2)>>2];l:{if((k|0)==-1){break l}m=J[Y>>2];n=J[M>>2];s=J[m+(J[n+(k<<2)>>2]<<2)>>2];h=k+1|0;h=(h>>>0)%3|0?h:k-2|0;if((h|0)!=-1){o=J[n+(h<<2)>>2]}else{o=-1}m:{n:{if((k>>>0)%3|0){h=k-1|0;break n}h=k+2|0;q=-1;if((h|0)==-1){break m}}q=J[n+(h<<2)>>2]}if((s|0)>=(w|0)){break l}h=J[(o<<2)+m>>2];if((h|0)>=(w|0)){break l}n=J[m+(q<<2)>>2];if((n|0)>=(w|0)){break l}k=J[(g+144|0)+P(f,12)>>2];o:{if(!e){break o}n=P(e,n);o=P(e,h);s=P(e,s);h=0;m=0;if(G){while(1){J[k+(h<<2)>>2]=(J[(h+n<<2)+b>>2]+J[(h+o<<2)+b>>2]|0)-J[(h+s<<2)+b>>2];q=h|1;J[k+(q<<2)>>2]=(J[(n+q<<2)+b>>2]+J[(o+q<<2)+b>>2]|0)-J[(q+s<<2)+b>>2];h=h+2|0;m=m+2|0;if((E|0)!=(m|0)){continue}break}}if(!F){break o}J[k+(h<<2)>>2]=(J[(h+n<<2)+b>>2]+J[(h+o<<2)+b>>2]|0)-J[(h+s<<2)+b>>2]}k=4;f=f+1|0;if((f|0)==4){break k}}p:{if(p&1){h=i+1|0;i=(h>>>0)%3|0?h:i-2|0;k=-1;if((i|0)==-1){break p}i=J[j+(i<<2)>>2];k=-1;if((i|0)==-1){break p}k=i+1|0;k=(k>>>0)%3|0?k:i-2|0;break p}q:{if((i>>>0)%3|0){h=i-1|0;break q}h=i+2|0;k=-1;if((h|0)==-1){break p}}i=J[j+(h<<2)>>2];k=-1;if((i|0)==-1){break p}k=i-1|0;if((i>>>0)%3|0){break p}k=i+2|0}i=k;if((l|0)==(i|0)){k=f;break k}if((i|0)==-1&p){if(!A){k=f;break k}i=J[y>>2];if((i|0)==-1){k=f;break k}p=0;i=(i>>>0)%3|0?i-1|0:i+2|0}k=f;if((i|0)!=-1){continue}break}}H[g+16|0]=0;J[g+8>>2]=0;J[g+12>>2]=0;J[g+44>>2]=0;J[g+36>>2]=0;J[g+40>>2]=0;J[g+28>>2]=0;J[g+32>>2]=0;J[g+20>>2]=0;J[g+24>>2]=0;S=P(e,w)<<2;s=S+b|0;l=(P(D-2|0,e)<<2)+b|0;j=J[x>>2];h=0;if(e){while(1){i=d<<2;f=J[i+l>>2]-J[i+s>>2]|0;J[i+r>>2]=f;J[i+j>>2]=(f|0)<0?(f^-1)<<1|1:f<<1;i=f;f=f>>31;h=((i^f)-f|0)+h|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=g+200|0;Db(d,I,j,e);f=Cb(d);i=J[d+12>>2];d=J[d+16>>2];i=(((i-d|0)+1|0)/64|0)+d<<3;n=d<<3;d=i+n|0;i=(i>>31)+(n>>31)|0;j=ca+(d>>>0<n>>>0?i+1|0:i)|0;i=d;d=d+f|0;f=i>>>0>d>>>0?j+1|0:j;A=(k|0)<=0;if(!A){p=(k<<3)-8|0;i=p+(g+48|0)|0;n=i;j=J[i>>2];i=J[i+4>>2];j=j+k|0;i=j>>>0<k>>>0?i+1|0:i;J[n>>2]=j;J[n+4>>2]=i;u=W(Eb(j,J[p+(g+80|0)>>2])*(+(j>>>0)+ +(i|0)*4294967296));r:{if(R(u)<0x8000000000000000){j=R(u)>=1?~~(u>0?T(V(u*2.3283064365386963e-10),4294967295):W((u-+(~~u>>>0>>>0))*2.3283064365386963e-10))>>>0:0;i=~~u>>>0;break r}j=-2147483648;i=0}d=d+i|0;f=d}J[g+20>>2]=0;H[g+16|0]=0;J[g+8>>2]=d;J[g+12>>2]=h;tc(aa,l,l+O|0);bb($,r,v);s:{t:{u:{if(A){break u}n=(g+124|0)+k|0;l=n-1|0;U=k<<3;d=U-8|0;X=d+(g+48|0)|0;da=d+(g+80|0)|0;p=1;y=0;while(1){d=g+124|0;pa(d,1,k);y=y+1|0;pa(d,0,y);v:{w:while(1){if(e){pa(J[g+128>>2],0,O)}m=0;d=J[g+128>>2];f=0;while(1){if(!K[(g+124|0)+m|0]){x:{if(!e){break x}o=J[(g+144|0)+P(m,12)>>2];i=0;h=0;j=0;if(e>>>0>3){while(1){q=h<<2;t=q+d|0;J[t>>2]=J[t>>2]+J[o+q>>2];t=q|4;C=t+d|0;J[C>>2]=J[C>>2]+J[o+t>>2];t=q|8;C=t+d|0;J[C>>2]=J[C>>2]+J[o+t>>2];q=q|12;t=q+d|0;J[t>>2]=J[t>>2]+J[o+q>>2];h=h+4|0;j=j+4|0;if((Z|0)!=(j|0)){continue}break}}if(!N){break x}while(1){j=h<<2;q=j+d|0;J[q>>2]=J[q>>2]+J[j+o>>2];h=h+1|0;i=i+1|0;if((N|0)!=(i|0)){continue}break}}f=1<<m|f}m=m+1|0;if((m|0)!=(k|0)){continue}break}d=J[g+128>>2];y:{z:{A:{if(e){h=0;i=0;if(G){break A}break z}j=J[x>>2];i=0;break y}while(1){j=h<<2;m=j+d|0;J[m>>2]=J[m>>2]/(p|0);j=(j|4)+d|0;J[j>>2]=J[j>>2]/(p|0);h=h+2|0;i=i+2|0;if((E|0)!=(i|0)){continue}break}}if(F){d=(h<<2)+d|0;J[d>>2]=J[d>>2]/(p|0)}j=J[x>>2];d=J[g+128>>2];h=0;i=0;if(!e){break y}while(1){o=h<<2;m=J[o+d>>2]-J[o+s>>2]|0;J[o+r>>2]=m;J[j+o>>2]=(m|0)<0?(m^-1)<<1|1:m<<1;o=i;i=m>>31;i=o+((i^m)-i|0)|0;h=h+1|0;if((h|0)!=(e|0)){continue}break}}h=g+200|0;Db(h,I,j,e);m=Cb(h);o=J[h+12>>2];h=J[h+16>>2];j=(((o-h|0)+1|0)/64|0)+h<<3;o=h<<3;h=j+o|0;h=h+m|0;m=J[X+4>>2];j=J[X>>2];u=W(Eb(j,J[da>>2]+p|0)*(+(j>>>0)+ +(m|0)*4294967296));B:{if(R(u)<0x8000000000000000){o=~~u>>>0;break B}o=0}h=o+h|0;j=J[g+8>>2];if(!((h|0)>=(j|0)&((h|0)>(j|0)|(i|0)>=J[g+12>>2]))){J[g+20>>2]=p;H[g+16|0]=f;J[g+8>>2]=h;J[g+12>>2]=i;j=J[g+132>>2];m=j-d|0;h=m>>2;i=J[g+32>>2];f=J[g+24>>2];C:{if(h>>>0<=i-f>>2>>>0){m=J[g+28>>2]-f|0;i=m+d|0;q=m>>2;m=q>>>0<h>>>0?i:j;o=m-d|0;if((d|0)!=(m|0)){ta(f,d,o)}if(h>>>0>q>>>0){h=J[g+28>>2];if((j|0)==(m|0)){break C}while(1){J[h>>2]=J[i>>2];h=h+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}break C}h=f+o|0;break C}if(f){J[g+28>>2]=f;na(f);J[g+32>>2]=0;J[g+24>>2]=0;J[g+28>>2]=0;i=0}if((m|0)<0){break t}f=i>>>1|0;f=i>>>0>=2147483644?1073741823:f>>>0>h>>>0?f:h;if(f>>>0>=1073741824){break t}f=f<<2;h=oa(f);J[g+24>>2]=h;J[g+32>>2]=f+h;if((d|0)==(j|0)){break C}f=d;d=(m-4&-4)+4|0;h=ua(h,f,d)+d|0}J[g+28>>2]=h;i=J[g+44>>2];d=J[g+36>>2];D:{if(i-d>>2>>>0>=z>>>0){f=J[g+40>>2]-d|0;i=f+r|0;j=f>>2;f=j>>>0<z>>>0?i:v;h=f-r|0;if((f|0)!=(r|0)){ta(d,r,h)}if(j>>>0<z>>>0){h=J[g+40>>2];if((f|0)==(v|0)){break D}while(1){J[h>>2]=J[i>>2];h=h+4|0;i=i+4|0;if((v|0)!=(i|0)){continue}break}break D}h=d+h|0;break D}if(d){J[g+40>>2]=d;na(d);J[g+44>>2]=0;J[g+36>>2]=0;J[g+40>>2]=0;i=0}if((L|0)<0){break s}d=i>>>1|0;d=i>>>0>=2147483644?1073741823:d>>>0>z>>>0?d:z;if(d>>>0>=1073741824){break s}d=d<<2;h=oa(d);J[g+36>>2]=h;J[g+44>>2]=d+h;if((r|0)==(v|0)){break D}h=ua(h,r,Q)+Q|0}J[g+40>>2]=h}if((l|0)==(g+124|0)){break v}h=K[l|0];i=-1;while(1){j=h&255;d=i-1|0;f=d+n|0;h=K[f|0];if(j>>>0>h>>>0){d=n;while(1){d=d-1|0;j=K[d|0];if(j>>>0<=h>>>0){continue}break}H[f|0]=j;H[d|0]=h;if((i|0)==-1){continue w}h=i+n|0;i=l;while(1){d=K[h|0];H[h|0]=K[i|0];H[i|0]=d;h=h+1|0;i=i-1|0;if(h>>>0<i>>>0){continue}break}continue w}i=d;if((f|0)!=(g+124|0)){continue}break}break}d=g+124|0;h=d;i=l;if(d>>>0>=i>>>0){break v}while(1){d=K[h|0];H[h|0]=K[i|0];H[i|0]=d;h=h+1|0;i=i-1|0;if(h>>>0<i>>>0){continue}break}}p=p+1|0;if((k|0)!=(y|0)){continue}break}if((k|0)<=0){break u}f=J[g+20>>2];l=f;d=g+U|0;i=f+J[d+72>>2]|0;f=J[d+76>>2]+(f>>31)|0;J[d+72>>2]=i;J[d+76>>2]=i>>>0<l>>>0?f+1|0:f}if(!e){break i}d=J[x>>2];h=0;f=J[g+36>>2];j=0;if(!G){break j}while(1){l=h<<2;i=J[l+f>>2];J[d+l>>2]=(i|0)<0?(i^-1)<<1|1:i<<1;l=l|4;i=J[l+f>>2];J[d+l>>2]=(i|0)<0?(i^-1)<<1|1:i<<1;h=h+2|0;j=j+2|0;if((E|0)!=(j|0)){continue}break}break j}qa();B()}qa();B()}ra();B()}if(!F){break i}i=h<<2;f=J[i+f>>2];J[d+i>>2]=(f|0)<0?(f^-1)<<1|1:f<<1}Nc(g+200|0,I,J[x>>2],e);E:{if(A){break E}l=P(k,12)+a|0;i=0;while(1){F:{h=J[l+40>>2];j=h<<5;d=J[l+36>>2];G:{if(!(K[g+16|0]>>>i&1)){f=d;H:{if((d|0)!=(j|0)){break H}if((d+1|0)<0){break F}I:{if(d>>>0<=1073741822){h=h<<6;j=(d&-32)+32|0;h=h>>>0>j>>>0?h:j;f=d;if(d>>>0>=h>>>0){break H}if((h|0)>=0){break I}break F}h=2147483647;f=-1;if(d>>>0>=2147483647){break H}}j=(h-1>>>5|0)+1|0;f=oa(j<<2);h=J[l+32>>2];J[f+((d>>>0>=33?d-1>>>5|0:0)<<2)>>2]=0;J:{K:{if(!d){break K}n=d>>>5|0;if(d>>>0>=32){ta(f,h,n<<2)}p=d&31;if(!p){break K}n=n<<2;m=n+f|0;p=-1>>>32-p|0;J[m>>2]=J[m>>2]&(p^-1)|p&J[h+n>>2];J[l+32>>2]=f;J[l+36>>2]=d;J[l+40>>2]=j;break J}J[l+32>>2]=f;J[l+36>>2]=d;J[l+40>>2]=j;f=d;if(!h){break H}}na(h);f=J[l+36>>2]}J[l+36>>2]=f+1;d=J[l+32>>2]+(f>>>3&536870908)|0;J[d>>2]=J[d>>2]|1<<f;break G}f=d;L:{if((d|0)!=(j|0)){break L}if((d+1|0)<0){break F}M:{if(d>>>0<=1073741822){h=h<<6;j=(d&-32)+32|0;h=h>>>0>j>>>0?h:j;f=d;if(d>>>0>=h>>>0){break L}if((h|0)<0){break F}break M}h=2147483647;f=-1;if(d>>>0>=2147483647){break L}}j=(h-1>>>5|0)+1|0;f=oa(j<<2);h=J[l+32>>2];J[f+((d>>>0>=33?d-1>>>5|0:0)<<2)>>2]=0;N:{O:{if(!d){break O}n=d>>>5|0;if(d>>>0>=32){ta(f,h,n<<2)}p=d&31;if(!p){break O}n=n<<2;m=n+f|0;p=-1>>>32-p|0;J[m>>2]=J[m>>2]&(p^-1)|p&J[h+n>>2];J[l+32>>2]=f;J[l+36>>2]=d;J[l+40>>2]=j;break N}J[l+32>>2]=f;J[l+36>>2]=d;J[l+40>>2]=j;f=d;if(!h){break L}}na(h);f=J[l+36>>2]}J[l+36>>2]=f+1;d=J[l+32>>2]+(f>>>3&536870908)|0;h=J[d>>2];ea=d,fa=Ll(f)&h,J[ea>>2]=fa}i=i+1|0;if((k|0)!=(i|0)){continue}break E}break}qa();B()}d=J[g+24>>2];f=J[d>>2];d=J[d+4>>2];i=J[s+4>>2];J[g+232>>2]=J[s>>2];J[g+236>>2]=i;J[g+224>>2]=f;J[g+228>>2]=d;Ya(g+200|0,_,g+232|0,g+224|0);d=c+S|0;J[d>>2]=J[g+200>>2];J[d+4>>2]=J[g+204>>2];d=J[g+36>>2];if(d){J[g+40>>2]=d;na(d)}d=J[g+24>>2];if(d){J[g+28>>2]=d;na(d)}d=(D|0)>2;D=w;if(d){continue}break}break c}qa();B()}d=J[g+144>>2];if((e|0)>0){pa(d,0,e<<2)}e=J[d>>2];d=J[d+4>>2];f=J[b+4>>2];J[g+200>>2]=J[b>>2];J[g+204>>2]=f;J[g+232>>2]=e;J[g+236>>2]=d;Ya(g+8|0,a+8|0,g+200|0,g+232|0);J[c>>2]=J[g+8>>2];J[c+4>>2]=J[g+12>>2];if(r){na(r)}a=J[g+128>>2];if(a){J[g+132>>2]=a;na(a)}a=J[g+180>>2];if(a){J[g+184>>2]=a;na(a)}a=J[g+168>>2];if(a){J[g+172>>2]=a;na(a)}a=J[g+156>>2];if(a){J[g+160>>2]=a;na(a)}a=J[g+144>>2];if(a){J[g+148>>2]=a;na(a)}ba=g+240|0;return 1}function Nj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;i=ba-32|0;ba=i;c=J[b+8>>2];a:{b:{if(K[b+288|0]){c=jf(c);e=J[b+12>>2];J[b+12>>2]=c;if(e){break b}break a}c=kf(c);e=J[b+12>>2];J[b+12>>2]=c;if(!e){break a}}qc(e)}c=J[b+12>>2];c:{if(!(J[c+40>>2]!=((J[c+4>>2]-J[c>>2]>>2>>>0)/3|0)?c:0)){b=oa(32);H[b+29|0]=0;c=K[1828]|K[1829]<<8|(K[1830]<<16|K[1831]<<24);d=K[1824]|K[1825]<<8|(K[1826]<<16|K[1827]<<24);H[b+21|0]=d;H[b+22|0]=d>>>8;H[b+23|0]=d>>>16;H[b+24|0]=d>>>24;H[b+25|0]=c;H[b+26|0]=c>>>8;H[b+27|0]=c>>>16;H[b+28|0]=c>>>24;c=K[1823]|K[1824]<<8|(K[1825]<<16|K[1826]<<24);d=K[1819]|K[1820]<<8|(K[1821]<<16|K[1822]<<24);H[b+16|0]=d;H[b+17|0]=d>>>8;H[b+18|0]=d>>>16;H[b+19|0]=d>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1815]|K[1816]<<8|(K[1817]<<16|K[1818]<<24);d=K[1811]|K[1812]<<8|(K[1813]<<16|K[1814]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1807]|K[1808]<<8|(K[1809]<<16|K[1810]<<24);d=K[1803]|K[1804]<<8|(K[1805]<<16|K[1806]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,29);na(b);break c}J[b+264>>2]=b;Aa((J[c+28>>2]-J[c+24>>2]>>2)-J[c+44>>2]|0,J[J[b+4>>2]+44>>2]);c=J[b+12>>2];Aa(((J[c+4>>2]-J[c>>2]>>2>>>0)/3|0)-J[c+40>>2]|0,J[J[b+4>>2]+44>>2]);c=J[b+8>>2];d=J[c+100>>2];c=J[c+96>>2];H[i+16|0]=0;o=b+28|0;j=(d-c|0)/12|0;c=i+16|0;Na(o,j,c);d=J[b+12>>2];e=J[d+28>>2];d=J[d+24>>2];J[i+16>>2]=-1;wb(b+52|0,e-d>>2,c);c=J[b+40>>2];J[b+44>>2]=c;d:{e:{f:{g:{h:{i:{j:{d=J[b+12>>2];e=J[d+4>>2]-J[d>>2]>>2;e=e-((e>>>0)%3|0)|0;k:{if(e>>>0<=J[b+48>>2]-c>>2>>>0){break k}if(e>>>0>=1073741824){break j}g=e<<2;e=oa(g);J[b+44>>2]=e;J[b+40>>2]=e;J[b+48>>2]=e+g;if(!c){break k}na(c);d=J[b+12>>2]}c=J[d+28>>2];d=J[d+24>>2];H[i+16|0]=0;Na(b+84|0,c-d>>2,i+16|0);J[b+164>>2]=-1;J[b+168>>2]=0;J[b+100>>2]=J[b+96>>2];J[b+112>>2]=J[b+108>>2];if(J[b+132>>2]){d=J[b+128>>2];if(d){while(1){c=J[d>>2];na(d);d=c;if(c){continue}break}}d=0;J[b+128>>2]=0;c=J[b+124>>2];l:{if(!c){break l}if(c>>>0>=4){k=c&-4;g=0;while(1){e=d<<2;J[e+J[b+120>>2]>>2]=0;J[J[b+120>>2]+(e|4)>>2]=0;J[J[b+120>>2]+(e|8)>>2]=0;J[J[b+120>>2]+(e|12)>>2]=0;d=d+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=c&3;if(!c){break l}e=0;while(1){J[J[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}J[b+132>>2]=0}J[b+144>>2]=0;c=J[b+12>>2];d=J[c+28>>2];c=J[c+24>>2];J[i+16>>2]=-1;wb(b+152|0,d-c>>2,i+16|0);c=J[b+72>>2];J[b+76>>2]=c;s=b+72|0;d=J[b+12>>2];d=J[d+4>>2]-J[d>>2]|0;e=(d>>2>>>0)/3|0;m:{if(e>>>0<=J[b+80>>2]-c>>2>>>0){break m}if((d|0)<0){break i}e=e<<2;d=oa(e);J[b+76>>2]=d;J[b+72>>2]=d;J[b+80>>2]=d+e;if(!c){break m}na(c)}J[b- -64>>2]=0;if(!kg(b)){b=oa(32);H[b+29|0]=0;c=K[1768]|K[1769]<<8|(K[1770]<<16|K[1771]<<24);d=K[1764]|K[1765]<<8|(K[1766]<<16|K[1767]<<24);H[b+21|0]=d;H[b+22|0]=d>>>8;H[b+23|0]=d>>>16;H[b+24|0]=d>>>24;H[b+25|0]=c;H[b+26|0]=c>>>8;H[b+27|0]=c>>>16;H[b+28|0]=c>>>24;c=K[1763]|K[1764]<<8|(K[1765]<<16|K[1766]<<24);d=K[1759]|K[1760]<<8|(K[1761]<<16|K[1762]<<24);H[b+16|0]=d;H[b+17|0]=d>>>8;H[b+18|0]=d>>>16;H[b+19|0]=d>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1755]|K[1756]<<8|(K[1757]<<16|K[1758]<<24);d=K[1751]|K[1752]<<8|(K[1753]<<16|K[1754]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1747]|K[1748]<<8|(K[1749]<<16|K[1750]<<24);d=K[1743]|K[1744]<<8|(K[1745]<<16|K[1746]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,29);na(b);break c}c=b;n:{if(K[b+288|0]){break n}b=J[c+8>>2];e=J[b+12>>2]-J[b+8>>2]|0;g=e>>2;d=g-1|0;b=J[c+176>>2];f=J[c+172>>2];k=(b-f|0)/136|0;o:{if(d>>>0>k>>>0){cg(c+172|0,d-k|0);break o}if(d>>>0>=k>>>0){break o}k=f+P(d,136)|0;if((k|0)!=(b|0)){while(1){d=b-136|0;f=J[d+116>>2];if(f){J[b-16>>2]=f;na(f)}f=J[b-32>>2];if(f){J[b-28>>2]=f;na(f)}pc(b-132|0);b=d;if((k|0)!=(b|0)){continue}break}}J[c+176>>2]=k}if((e|0)==4|(e|0)<=0){break n}k=(g|0)<=1?1:g;b=0;p:{while(1){f=J[J[J[c+8>>2]+8>>2]+(b<<2)>>2];if(J[f+56>>2]){h=P(n,136);d=h+J[c+172>>2]|0;J[d>>2]=b;e=J[d+104>>2];J[d+108>>2]=e;g=J[c+12>>2];g=J[g+4>>2]-J[g>>2]|0;j=g>>2;q:{if(j>>>0<=J[d+112>>2]-e>>2>>>0){break q}if((g|0)<0){break p}g=oa(g);J[d+108>>2]=g;J[d+104>>2]=g;J[d+112>>2]=g+(j<<2);if(!e){break q}na(e)}d=h+J[c+172>>2]|0;J[d+128>>2]=0;lf(d+4|0,J[c+8>>2],J[c+12>>2],f);n=n+1|0}b=b+1|0;if((k|0)!=(b|0)){continue}break}break n}qa();B()}b=(J[c+176>>2]-J[c+172>>2]|0)/136|0;H[i+31|0]=b;d=J[J[c+4>>2]+44>>2];e=J[d+20>>2];if(!J[d+16>>2]&(e|0)<=0|(e|0)<0){sa(d,J[d+4>>2],i+31|0,i+32|0);b=K[i+31|0]}J[c+284>>2]=b&255;b=J[c+12>>2];d=J[b>>2];b=J[b+4>>2];n=c+200|0;ig(n);g=0;J[i+24>>2]=0;J[i+16>>2]=0;J[i+20>>2]=0;k=0;b=b-d|0;if((b|0)>0){b=b>>>2|0;t=b>>>0<=1?1:b;d=0;while(1){b=(d>>>0)/3|0;p=b>>>5<<2;r=1<<b;r:{if(r&J[J[o>>2]+p>>2]){break r}if(Fc(J[c+12>>2],b)){break r}J[i+8>>2]=0;b=hg(c,b,i+8|0);Ca(n,b);f=J[i+8>>2];if(b){h=-1;e=-1;j=-1;s:{if((f|0)==-1){break s}l=J[J[c+12>>2]>>2];b=l+(f<<2)|0;h=f+1|0;h=(h>>>0)%3|0?h:f-2|0;if((h|0)!=-1){e=J[l+(h<<2)>>2]}h=J[b>>2];t:{if((f>>>0)%3|0){b=f-1|0;break t}b=f+2|0;j=-1;if((b|0)==-1){break s}}j=J[l+(b<<2)>>2]}b=J[c+84>>2];l=b+(h>>>3&536870908)|0;J[l>>2]=J[l>>2]|1<<h;h=b+(e>>>3&536870908)|0;J[h>>2]=J[h>>2]|1<<e;b=b+(j>>>3&536870908)|0;J[b>>2]=J[b>>2]|1<<j;b=J[c+100>>2];h=J[c+104>>2];u:{if(b>>>0<h>>>0){J[b>>2]=1;J[c+100>>2]=b+4;break u}j=b;b=J[c+96>>2];j=j-b|0;l=j>>2;e=l+1|0;if(e>>>0>=1073741824){break h}q=l<<2;h=h-b|0;l=h>>>1|0;e=h>>>0>=2147483644?1073741823:e>>>0<l>>>0?l:e;if(e){if(e>>>0>=1073741824){break g}h=oa(e<<2)}else{h=0}l=q+h|0;J[l>>2]=1;q=e<<2;e=ta(h,b,j);J[c+104>>2]=q+e;J[c+100>>2]=l+4;J[c+96>>2]=e;if(!b){break u}na(b)}b=J[o>>2]+p|0;J[b>>2]=J[b>>2]|r;h=-1;if((f|0)!=-1){b=f+1|0;h=(b>>>0)%3|0?b:f-2|0}v:{if(g>>>0<m>>>0){J[g>>2]=h;g=g+4|0;J[i+20>>2]=g;break v}e=g-k>>2;b=e+1|0;if(b>>>0>=1073741824){break f}j=m-k|0;m=j>>>1|0;b=j>>>0>=2147483644?1073741823:b>>>0<m>>>0?m:b;if(b){if(b>>>0>=1073741824){break g}j=oa(b<<2)}else{j=0}e=j+(e<<2)|0;J[e>>2]=h;m=j+(b<<2)|0;b=e+4|0;if((g|0)!=(k|0)){while(1){e=e-4|0;g=g-4|0;J[e>>2]=J[g>>2];if((g|0)!=(k|0)){continue}break}}J[i+24>>2]=m;J[i+20>>2]=b;J[i+16>>2]=e;if(k){na(k)}k=e;g=b}if((f|0)==-1){break r}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)==-1){break r}b=J[J[J[c+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break r}e=(b>>>0)/3|0;if(J[J[o>>2]+(e>>>3&268435452)>>2]>>>e&1){break r}if(gg(c,b)){break r}break e}if((f|0)!=-1){b=f+1|0;b=(b>>>0)%3|0?b:f-2|0}else{b=-1}Hc(c,b,1);if(!gg(c,J[i+8>>2])){break e}}d=d+1|0;if((t|0)!=(d|0)){continue}break}}d=J[c+72>>2];b=J[c+76>>2];w:{if((d|0)==(b|0)){break w}e=b-4|0;if(e>>>0<=d>>>0){break w}while(1){f=J[d>>2];J[d>>2]=J[e>>2];J[e>>2]=f;d=d+4|0;e=e-4|0;if(d>>>0<e>>>0){continue}break}}fg(s,b,k,g);x:{if(J[c+172>>2]==J[c+176>>2]){break x}b=J[c+8>>2];d=J[b+100>>2];b=J[b+96>>2];H[i+8|0]=0;Na(o,(d-b|0)/12|0,i+8|0);d=J[c+72>>2];b=J[c+76>>2];if((d|0)==(b|0)){break x}while(1){eg(c,J[d>>2]);d=d+4|0;if((b|0)!=(d|0)){continue}break}}e=n;h=e+32|0;b=J[e+64>>2];b=J[(da[J[J[b>>2]+40>>2]](b)|0)+56>>2];Fd(h,P((J[b+100>>2]-J[b+96>>2]|0)/12|0,3),0,1);b=J[e+72>>2]-J[e+68>>2]|0;y:{if((b|0)<=0){break y}d=J[e+52>>2];if(!J[e+48>>2]&(d|0)<=0|(d|0)<0){break y}b=b>>>2|0;while(1){g=b;b=b-1|0;d=J[e+52>>2];z:{if(!J[e+48>>2]&(d|0)<=0|(d|0)<0){break z}o=J[J[e+68>>2]+(b<<2)>>2];if(!(171>>>o&1)){break z}j=J[(o<<2)+11152>>2];f=J[e+44>>2];d=J[f+4>>2];n=0;while(1){m=d>>>3|0;p=m+J[f>>2]|0;l=K[p|0];d=d&7;u=p,v=Ll(d)&l,H[u|0]=v;m=m+J[f>>2]|0;H[m|0]=K[m|0]|(o>>>n&1)<<d;d=J[f+4>>2]+1|0;J[f+4>>2]=d;n=n+1|0;if((j|0)!=(n|0)){continue}break}}if((g|0)>1){continue}break}}Ed(h);b=c+232|0;ya(e,b);if(!(!J[c+280>>2]|J[c+284>>2]<=0)){d=0;while(1){ya(J[c+280>>2]+(d<<5)|0,b);d=d+1|0;if((d|0)<J[c+284>>2]){continue}break}}Aa(J[c+272>>2]-J[c+268>>2]>>2,J[J[c+4>>2]+44>>2]);Aa(J[c+168>>2],J[J[c+4>>2]+44>>2]);if(!dg(c)){b=oa(32);H[b+28|0]=0;c=K[1909]|K[1910]<<8|(K[1911]<<16|K[1912]<<24);H[b+24|0]=c;H[b+25|0]=c>>>8;H[b+26|0]=c>>>16;H[b+27|0]=c>>>24;c=K[1905]|K[1906]<<8|(K[1907]<<16|K[1908]<<24);d=K[1901]|K[1902]<<8|(K[1903]<<16|K[1904]<<24);H[b+16|0]=d;H[b+17|0]=d>>>8;H[b+18|0]=d>>>16;H[b+19|0]=d>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1897]|K[1898]<<8|(K[1899]<<16|K[1900]<<24);d=K[1893]|K[1894]<<8|(K[1895]<<16|K[1896]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1889]|K[1890]<<8|(K[1891]<<16|K[1892]<<24);d=K[1885]|K[1886]<<8|(K[1887]<<16|K[1888]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,28);na(b);break d}b=J[J[c+4>>2]+44>>2];d=J[b+20>>2];if(!J[b+16>>2]&(d|0)<=0|(d|0)<0){sa(b,J[b+4>>2],J[c+232>>2],J[c+236>>2])}J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;break d}qa();B()}qa();B()}qa();B()}xa();B()}qa();B()}b=oa(48);H[b+32|0]=0;c=K[1703]|K[1704]<<8|(K[1705]<<16|K[1706]<<24);d=K[1699]|K[1700]<<8|(K[1701]<<16|K[1702]<<24);H[b+24|0]=d;H[b+25|0]=d>>>8;H[b+26|0]=d>>>16;H[b+27|0]=d>>>24;H[b+28|0]=c;H[b+29|0]=c>>>8;H[b+30|0]=c>>>16;H[b+31|0]=c>>>24;c=K[1695]|K[1696]<<8|(K[1697]<<16|K[1698]<<24);d=K[1691]|K[1692]<<8|(K[1693]<<16|K[1694]<<24);H[b+16|0]=d;H[b+17|0]=d>>>8;H[b+18|0]=d>>>16;H[b+19|0]=d>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1687]|K[1688]<<8|(K[1689]<<16|K[1690]<<24);d=K[1683]|K[1684]<<8|(K[1685]<<16|K[1686]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1679]|K[1680]<<8|(K[1681]<<16|K[1682]<<24);d=K[1675]|K[1676]<<8|(K[1677]<<16|K[1678]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,32);na(b)}if(!k){break c}na(k)}ba=i+32|0}function lf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f=ba-16|0;ba=f;a:{b:{if(c){J[a+88>>2]=0;J[a+92>>2]=0;e=J[a+84>>2];J[a+84>>2]=0;if(e){na(e)}J[a+76>>2]=0;J[a+80>>2]=0;e=J[a+72>>2];J[a+72>>2]=0;if(e){na(e)}e=J[c>>2];g=J[c+4>>2];H[f+15|0]=0;Na(a,g-e>>2,f+15|0);e=J[c+28>>2];g=J[c+24>>2];H[f+14|0]=0;Na(a+12|0,e-g>>2,f+14|0);wb(a+28|0,J[c+4>>2]-J[c>>2]>>2,14948);g=J[c+28>>2]-J[c+24>>2]|0;h=g>>2;j=J[a+52>>2];c:{if(h>>>0<=J[a+60>>2]-j>>2>>>0){break c}if((g|0)<0){break a}e=J[a+56>>2];g=oa(g);h=g+(h<<2)|0;i=g+(e-j&-4)|0;g=i;if((e|0)!=(j|0)){while(1){g=g-4|0;e=e-4|0;J[g>>2]=J[e>>2];if((e|0)!=(j|0)){continue}break}}J[a+60>>2]=h;J[a+56>>2]=i;J[a+52>>2]=g;if(!j){break c}na(j)}g=J[c+28>>2]-J[c+24>>2]|0;h=g>>2;j=J[a+40>>2];d:{if(h>>>0<=J[a+48>>2]-j>>2>>>0){break d}if((g|0)<0){break a}e=J[a+44>>2];g=oa(g);h=g+(h<<2)|0;i=g+(e-j&-4)|0;g=i;if((e|0)!=(j|0)){while(1){g=g-4|0;e=e-4|0;J[g>>2]=J[e>>2];if((e|0)!=(j|0)){continue}break}}J[a+48>>2]=h;J[a+44>>2]=i;J[a+40>>2]=g;if(!j){break d}na(j)}H[a+24|0]=1;J[a+64>>2]=c}ba=f+16|0;c=(c|0)!=0;break b}if(c){J[a+88>>2]=0;J[a+92>>2]=0;c=J[a+84>>2];J[a+84>>2]=0;if(c){na(c)}J[a+76>>2]=0;J[a+80>>2]=0;c=J[a+72>>2];J[a+72>>2]=0;if(c){na(c)}h=J[a+64>>2];if(J[h+4>>2]!=J[h>>2]){c=0;while(1){m=(c>>>0)/3|0;f=Fc(h,m);h=J[a+64>>2];e:{if(f){break e}j=J[J[h+12>>2]+(c<<2)>>2];f:{g:{if((j|0)==-1){f=J[a>>2]+(c>>>3&536870908)|0;J[f>>2]=J[f>>2]|1<<c;e=-1;f=c+1|0;f=(f>>>0)%3|0?f:c-2|0;if((f|0)!=-1){e=J[J[h>>2]+(f<<2)>>2]}f=J[a+12>>2];g=f+(e>>>3&536870908)|0;J[g>>2]=J[g>>2]|1<<e;if((c>>>0)%3|0){e=c-1|0;break g}g=-1;e=c+2|0;if((e|0)!=-1){break g}break f}if(c>>>0>j>>>0){break e}e=-1;k=K[d+84|0];g=-1;l=c+1|0;n=c-2|0;i=(l>>>0)%3|0?l:n;if((i|0)>=0){f=(i>>>0)/3|0;g=J[(J[b+96>>2]+P(f,12)|0)+(i-P(f,3)<<2)>>2]}f=j+((j>>>0)%3|0?-1:2)|0;if((f|0)>=0){e=(f>>>0)/3|0;e=J[(J[b+96>>2]+P(e,12)|0)+(f-P(e,3)<<2)>>2]}if(!k){o=J[d+68>>2];e=J[o+(e<<2)>>2];g=J[(g<<2)+o>>2]}if((e|0)==(g|0)){e=-1;g=-1;if((i|0)!=-1){g=i+1|0;g=(g>>>0)%3|0?g:i-2|0}h:{if((f|0)==-1){break h}if((f>>>0)%3|0){e=f-1|0;break h}e=f+2|0}f=-1;i=-1;if((g|0)>=0){i=(g>>>0)/3|0;i=J[(J[b+96>>2]+P(i,12)|0)+(g-P(i,3)<<2)>>2]}if((e|0)>=0){f=(e>>>0)/3|0;f=J[(J[b+96>>2]+P(f,12)|0)+(e-P(f,3)<<2)>>2]}if(!k){e=J[d+68>>2];f=J[e+(f<<2)>>2];i=J[e+(i<<2)>>2]}if((f|0)==(i|0)){break e}}H[a+24|0]=0;f=J[a>>2];e=f+(c>>>3&536870908)|0;J[e>>2]=J[e>>2]|1<<c;f=f+(j>>>3&536870908)|0;J[f>>2]=J[f>>2]|1<<j;i=-1;f=(l>>>0)%3|0?l:n;if((f|0)!=-1){i=J[J[h>>2]+(f<<2)>>2]}f=J[a+12>>2];e=f+(i>>>3&536870908)|0;J[e>>2]=J[e>>2]|1<<i;i:{j:{if((P(m,3)|0)!=(c|0)){e=c-1|0;break j}e=c+2|0;g=-1;if((e|0)==-1){break i}}g=J[J[h>>2]+(e<<2)>>2]}e=(g>>>3&536870908)+f|0;J[e>>2]=J[e>>2]|1<<g;g=-1;e=j+1|0;e=(e>>>0)%3|0?e:j-2|0;if((e|0)!=-1){g=J[J[h>>2]+(e<<2)>>2]}e=(g>>>3&536870908)+f|0;J[e>>2]=J[e>>2]|1<<g;if((j>>>0)%3|0){e=j-1|0;break g}g=-1;e=j+2|0;if((e|0)==-1){break f}}g=J[J[h>>2]+(e<<2)>>2]}f=(g>>>3&536870908)+f|0;J[f>>2]=J[f>>2]|1<<g}c=c+1|0;if(c>>>0<J[h+4>>2]-J[h>>2]>>2>>>0){continue}break}}if(!(!b|!d)){h=b;j=d;b=0;l=0;e=a;J[e+56>>2]=J[e+52>>2];J[e+44>>2]=J[e+40>>2];k:{d=J[e+64>>2];f=J[d+24>>2];if((f|0)==J[d+28>>2]){break k}l:{m:{while(1){a=b;b=J[(l<<2)+f>>2];n:{if((b|0)==-1){b=a;break n}if((b|0)<0){c=-1}else{c=(b>>>0)/3|0;c=J[(J[h+96>>2]+P(c,12)|0)+(b-P(c,3)<<2)>>2]}c=K[j+84|0]?c:J[J[j+68>>2]+(c<<2)>>2];d=J[e+56>>2];g=J[e+60>>2];o:{if(d>>>0<g>>>0){J[d>>2]=c;J[e+56>>2]=d+4;break o}i=J[e+52>>2];m=d-i>>2;f=m+1|0;if(f>>>0>=1073741824){break a}g=g-i|0;k=g>>>1|0;k=g>>>0>=2147483644?1073741823:f>>>0<k>>>0?k:f;if(k){if(k>>>0>=1073741824){break m}g=oa(k<<2)}else{g=0}f=g+(m<<2)|0;J[f>>2]=c;c=f+4|0;if((d|0)!=(i|0)){while(1){f=f-4|0;d=d-4|0;J[f>>2]=J[d>>2];if((d|0)!=(i|0)){continue}break}}J[e+60>>2]=g+(k<<2);J[e+56>>2]=c;J[e+52>>2]=f;if(!i){break o}na(i)}p:{q:{if(!(J[J[e+12>>2]+(l>>>3&536870908)>>2]>>>l&1)){break q}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1|J[J[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break q}c=J[J[J[e+64>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break q}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1){break q}g=J[e+64>>2];i=J[e>>2];while(1){c=d;d=-1;f=c+1|0;f=(f>>>0)%3|0?f:c-2|0;r:{if((f|0)==-1|J[i+(f>>>3&536870908)>>2]>>>f&1){break r}f=J[J[g+12>>2]+(f<<2)>>2];if((f|0)==-1){break r}d=f+1|0;d=(d>>>0)%3|0?d:f-2|0}if((b|0)!=(d|0)){if((d|0)==-1){break p}continue}break}break k}c=b}J[J[e+28>>2]+(c<<2)>>2]=a;d=J[e+44>>2];s:{if((d|0)!=J[e+48>>2]){J[d>>2]=c;J[e+44>>2]=d+4;break s}g=J[e+40>>2];b=d-g|0;k=b>>2;f=k+1|0;if(f>>>0>=1073741824){break l}i=b>>>1|0;i=b>>>0>=2147483644?1073741823:f>>>0<i>>>0?i:f;if(i){if(i>>>0>=1073741824){break m}b=oa(i<<2)}else{b=0}f=b+(k<<2)|0;J[f>>2]=c;k=f+4|0;if((d|0)!=(g|0)){while(1){f=f-4|0;d=d-4|0;J[f>>2]=J[d>>2];if((d|0)!=(g|0)){continue}break}}J[e+48>>2]=b+(i<<2);J[e+44>>2]=k;J[e+40>>2]=f;if(!g){break s}na(g)}b=a+1|0;d=J[e+64>>2];if((c|0)==-1){break n}t:{if((c>>>0)%3|0){f=c-1|0;break t}f=c+2|0;if((f|0)==-1){break n}}f=J[J[d+12>>2]+(f<<2)>>2];if((f|0)==-1){break n}i=f+((f>>>0)%3|0?-1:2)|0;if((i|0)==-1|(c|0)==(i|0)){break n}while(1){d=i+1|0;d=(d>>>0)%3|0?d:i-2|0;if(J[J[e>>2]+(d>>>3&536870908)>>2]>>>d&1){g=(i|0)<0?-1:J[(J[h+96>>2]+P((i>>>0)/3|0,12)|0)+((i>>>0)%3<<2)>>2];g=K[j+84|0]?g:J[J[j+68>>2]+(g<<2)>>2];d=J[e+56>>2];f=J[e+60>>2];u:{if(d>>>0<f>>>0){J[d>>2]=g;J[e+56>>2]=d+4;break u}k=J[e+52>>2];n=d-k>>2;a=n+1|0;if(a>>>0>=1073741824){break a}f=f-k|0;m=f>>>1|0;m=f>>>0>=2147483644?1073741823:a>>>0<m>>>0?m:a;if(m){if(m>>>0>=1073741824){break m}a=oa(m<<2)}else{a=0}f=a+(n<<2)|0;J[f>>2]=g;g=f+4|0;if((d|0)!=(k|0)){while(1){f=f-4|0;d=d-4|0;J[f>>2]=J[d>>2];if((d|0)!=(k|0)){continue}break}}J[e+60>>2]=a+(m<<2);J[e+56>>2]=g;J[e+52>>2]=f;if(!k){break u}na(k)}g=b+1|0;d=J[e+44>>2];v:{if((d|0)!=J[e+48>>2]){J[d>>2]=i;J[e+44>>2]=d+4;break v}k=J[e+40>>2];a=d-k|0;n=a>>2;f=n+1|0;if(f>>>0>=1073741824){break l}m=a>>>1|0;m=a>>>0>=2147483644?1073741823:f>>>0<m>>>0?m:f;if(m){if(m>>>0>=1073741824){break m}a=oa(m<<2)}else{a=0}f=a+(n<<2)|0;J[f>>2]=i;n=f+4|0;if((d|0)!=(k|0)){while(1){f=f-4|0;d=d-4|0;J[f>>2]=J[d>>2];if((d|0)!=(k|0)){continue}break}}J[e+48>>2]=a+(m<<2);J[e+44>>2]=n;J[e+40>>2]=f;if(!k){break v}na(k)}a=b;b=g}J[J[e+28>>2]+(i<<2)>>2]=a;d=J[e+64>>2];w:{if((i>>>0)%3|0){f=i-1|0;break w}f=i+2|0;if((f|0)==-1){break n}}f=J[J[d+12>>2]+(f<<2)>>2];if((f|0)==-1){break n}i=f+((f>>>0)%3|0?-1:2)|0;if((i|0)==-1){break n}if((c|0)!=(i|0)){continue}break}}l=l+1|0;f=J[d+24>>2];if(l>>>0<J[d+28>>2]-f>>2>>>0){continue}break}break k}xa();B()}break a}return}b=0;f=0;e=a;J[e+56>>2]=J[e+52>>2];J[e+44>>2]=J[e+40>>2];x:{d=J[e+64>>2];h=J[d+24>>2];if((h|0)==J[d+28>>2]){break x}y:{z:{while(1){a=b;b=J[(f<<2)+h>>2];A:{if((b|0)==-1){b=a;break A}d=J[e+56>>2];B:{if((d|0)!=J[e+60>>2]){J[d>>2]=a;J[e+56>>2]=d+4;break B}g=J[e+52>>2];c=d-g|0;h=c>>2;j=h+1|0;if(j>>>0>=1073741824){break a}i=c>>>1|0;j=c>>>0>=2147483644?1073741823:i>>>0>j>>>0?i:j;if(j){if(j>>>0>=1073741824){break z}c=oa(j<<2)}else{c=0}h=c+(h<<2)|0;J[h>>2]=a;i=h+4|0;if((d|0)!=(g|0)){while(1){h=h-4|0;d=d-4|0;J[h>>2]=J[d>>2];if((d|0)!=(g|0)){continue}break}}J[e+60>>2]=c+(j<<2);J[e+56>>2]=i;J[e+52>>2]=h;if(!g){break B}na(g)}C:{D:{if(!(J[J[e+12>>2]+(f>>>3&536870908)>>2]>>>f&1)){break D}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1|J[J[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break D}c=J[J[J[e+64>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break D}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1){break D}j=J[e+64>>2];h=J[e>>2];while(1){c=d;d=-1;g=c+1|0;g=(g>>>0)%3|0?g:c-2|0;E:{if((g|0)==-1|J[h+(g>>>3&536870908)>>2]>>>g&1){break E}g=J[J[j+12>>2]+(g<<2)>>2];if((g|0)==-1){break E}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0}if((b|0)!=(d|0)){if((d|0)==-1){break C}continue}break}break x}c=b}J[J[e+28>>2]+(c<<2)>>2]=a;d=J[e+44>>2];F:{if((d|0)!=J[e+48>>2]){J[d>>2]=c;J[e+44>>2]=d+4;break F}g=J[e+40>>2];b=d-g|0;h=b>>2;j=h+1|0;if(j>>>0>=1073741824){break y}i=b>>>1|0;j=b>>>0>=2147483644?1073741823:i>>>0>j>>>0?i:j;if(j){if(j>>>0>=1073741824){break z}b=oa(j<<2)}else{b=0}h=b+(h<<2)|0;J[h>>2]=c;i=h+4|0;if((d|0)!=(g|0)){while(1){h=h-4|0;d=d-4|0;J[h>>2]=J[d>>2];if((d|0)!=(g|0)){continue}break}}J[e+48>>2]=b+(j<<2);J[e+44>>2]=i;J[e+40>>2]=h;if(!g){break F}na(g)}b=a+1|0;d=J[e+64>>2];if((c|0)==-1){break A}G:{if((c>>>0)%3|0){h=c-1|0;break G}h=c+2|0;if((h|0)==-1){break A}}g=J[J[d+12>>2]+(h<<2)>>2];if((g|0)==-1){break A}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)==-1|(c|0)==(g|0)){break A}while(1){d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if(J[J[e>>2]+(d>>>3&536870908)>>2]>>>d&1){d=J[e+56>>2];H:{if((d|0)!=J[e+60>>2]){J[d>>2]=b;J[e+56>>2]=d+4;break H}j=J[e+52>>2];a=d-j|0;l=a>>2;h=l+1|0;if(h>>>0>=1073741824){break a}i=a>>>1|0;i=a>>>0>=2147483644?1073741823:i>>>0>h>>>0?i:h;if(i){if(i>>>0>=1073741824){break z}a=oa(i<<2)}else{a=0}h=a+(l<<2)|0;J[h>>2]=b;l=h+4|0;if((d|0)!=(j|0)){while(1){h=h-4|0;d=d-4|0;J[h>>2]=J[d>>2];if((d|0)!=(j|0)){continue}break}}J[e+60>>2]=a+(i<<2);J[e+56>>2]=l;J[e+52>>2]=h;if(!j){break H}na(j)}j=b+1|0;d=J[e+44>>2];I:{if((d|0)!=J[e+48>>2]){J[d>>2]=g;J[e+44>>2]=d+4;break I}i=J[e+40>>2];a=d-i|0;k=a>>2;h=k+1|0;if(h>>>0>=1073741824){break y}l=a>>>1|0;l=a>>>0>=2147483644?1073741823:h>>>0<l>>>0?l:h;if(l){if(l>>>0>=1073741824){break z}a=oa(l<<2)}else{a=0}h=a+(k<<2)|0;J[h>>2]=g;k=h+4|0;if((d|0)!=(i|0)){while(1){h=h-4|0;d=d-4|0;J[h>>2]=J[d>>2];if((d|0)!=(i|0)){continue}break}}J[e+48>>2]=a+(l<<2);J[e+44>>2]=k;J[e+40>>2]=h;if(!i){break I}na(i)}a=b;b=j}J[J[e+28>>2]+(g<<2)>>2]=a;d=J[e+64>>2];J:{if((g>>>0)%3|0){h=g-1|0;break J}h=g+2|0;if((h|0)==-1){break A}}g=J[J[d+12>>2]+(h<<2)>>2];if((g|0)==-1){break A}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)==-1){break A}if((c|0)!=(g|0)){continue}break}}f=f+1|0;h=J[d+24>>2];if(f>>>0<J[d+28>>2]-h>>2>>>0){continue}break}break x}xa();B()}break a}}return}qa();B()}function mf(a){var 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,A=0,C=0;z=ba-16|0;ba=z;b=oa(88);J[b>>2]=0;J[b+4>>2]=0;J[b+56>>2]=0;J[b+48>>2]=0;J[b+52>>2]=0;J[b+40>>2]=0;J[b+44>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;J[b+24>>2]=0;J[b+28>>2]=0;J[b+16>>2]=0;J[b+20>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;c=b- -64|0;J[c>>2]=0;J[c+4>>2]=0;J[b+72>>2]=0;J[b+76>>2]=0;J[b+80>>2]=0;J[b+84>>2]=0;J[b+60>>2]=b;c=a;w=ba-16|0;ba=w;J[b+80>>2]=0;J[b+84>>2]=0;d=J[b+76>>2];a=b;J[b+76>>2]=0;if(d){na(d)}J[a+68>>2]=0;J[a+72>>2]=0;b=a- -64|0;d=J[b>>2];J[b>>2]=0;if(d){na(d)}f=J[c+4>>2];d=J[c>>2];b=(f-d|0)/12|0;l=P(b,3);i=J[a>>2];e=J[a+4>>2]-i>>2;a:{if(l>>>0>e>>>0){Ld(a,l-e|0);f=J[c+4>>2];d=J[c>>2];b=(f-d|0)/12|0;break a}if(e>>>0<=l>>>0){break a}J[a+4>>2]=i+(l<<2)}b:{if((d|0)==(f|0)){break b}f=b>>>0<=1?1:b;e=f&1;g=J[a>>2];c=0;if(b>>>0>=2){i=f&-2;b=0;while(1){j=P(c,12);f=j+g|0;l=d+j|0;J[f>>2]=J[l>>2];J[g+(j|4)>>2]=J[l+4>>2];J[f+8>>2]=J[l+8>>2];f=P(c|1,12);l=f+g|0;f=d+f|0;J[l>>2]=J[f>>2];J[l+4>>2]=J[f+4>>2];J[l+8>>2]=J[f+8>>2];c=c+2|0;b=b+2|0;if((i|0)!=(b|0)){continue}break}}if(!e){break b}c=P(c,12);b=c+g|0;c=c+d|0;J[b>>2]=J[c>>2];J[b+4>>2]=J[c+4>>2];J[b+8>>2]=J[c+8>>2]}J[w+12>>2]=-1;c=0;f=0;g=0;o=ba-32|0;ba=o;c:{s=w+12|0;d:{if(!s){break d}b=J[a+4>>2];j=J[a>>2];e=b-j|0;m=e>>2;d=J[a+12>>2];i=J[a+16>>2]-d>>2;e:{if(m>>>0>i>>>0){Ma(a+12|0,m-i|0,14880);b=J[a+4>>2];j=J[a>>2];e=b-j|0;m=e>>2;break e}if(i>>>0<=m>>>0){break e}J[a+16>>2]=d+(m<<2)}J[o+24>>2]=0;J[o+16>>2]=0;J[o+20>>2]=0;d=(b|0)==(j|0);if(!d){if((e|0)<0){break c}f=oa(e);J[o+20>>2]=f;J[o+16>>2]=f;J[o+24>>2]=(m<<2)+f}f:{g:{h:{i:{j:{if(e){while(1){d=J[(c<<2)+j>>2];e=J[o+20>>2]-f>>2;k:{if(d>>>0<e>>>0){break k}J[o>>2]=0;i=d+1|0;if(i>>>0>e>>>0){jc(o+16|0,i-e|0,o);j=J[a>>2];b=J[a+4>>2];f=J[o+16>>2];break k}if(e>>>0<=i>>>0){break k}J[o+20>>2]=(i<<2)+f}d=(d<<2)+f|0;J[d>>2]=J[d>>2]+1;c=c+1|0;e=b-j|0;m=e>>2;if(c>>>0<m>>>0){continue}break}break j}e=0;if(!d){break i}break h}if((b|0)==(j|0)){e=0;break h}if(e>>>0>=2147483645){break g}}e=oa(e<<1);pa(e,255,m<<3)}J[o+8>>2]=0;J[o>>2]=0;J[o+4>>2]=0;c=J[o+20>>2];b=c-f|0;y=b>>2;l:{m:{if((c|0)==(f|0)){break m}if((b|0)<0){break l}v=oa(b);J[o>>2]=v;J[o+8>>2]=(y<<2)+v;q=pa(v,0,b);J[o+4>>2]=q+b;b=y>>>0<=1?1:y;l=b&3;c=0;if(b-1>>>0>=3){i=b&-4;while(1){p=g<<2;J[p+q>>2]=c;b=p|4;c=J[f+p>>2]+c|0;J[b+q>>2]=c;d=p|8;c=c+J[b+f>>2]|0;J[d+q>>2]=c;b=p|12;c=c+J[d+f>>2]|0;J[b+q>>2]=c;c=c+J[b+f>>2]|0;g=g+4|0;h=h+4|0;if((i|0)!=(h|0)){continue}break}}if(!l){break m}while(1){b=g<<2;J[b+q>>2]=c;g=g+1|0;c=J[b+f>>2]+c|0;r=r+1|0;if((l|0)!=(r|0)){continue}break}}if(!m){break f}u=J[a+40>>2];k=J[a+12>>2];l=0;while(1){q=l<<2;d=q+j|0;r=-1;b=l+1|0;c=(b>>>0)%3|0?b:l-2|0;if((c|0)!=-1){r=J[(c<<2)+j>>2]}p=J[d>>2];n:{o:{if(!((l>>>0)%3|0)){h=-1;c=l+2|0;if((c|0)!=-1){h=J[(c<<2)+j>>2]}if(!((p|0)==(r|0)|(h|0)==(p|0))&(h|0)!=(r|0)){break o}u=u+1|0;J[a+40>>2]=u;b=l+3|0;break n}h=J[d-4>>2]}c=h<<2;t=J[c+f>>2];p:{q:{if((t|0)<=0){break q}c=J[c+v>>2];g=0;while(1){i=(c<<3)+e|0;d=J[i>>2];if((d|0)==-1){break q}r:{if((d|0)!=(r|0)){break r}n=J[i+4>>2];if((n|0)!=-1){d=J[(n<<2)+j>>2]}else{d=-1}if((d|0)==(p|0)){break r}while(1){s:{d=c;g=g+1|0;if((t|0)<=(g|0)){break s}c=d+1|0;p=(c<<3)+e|0;x=J[p>>2];i=(d<<3)+e|0;J[i+4>>2]=J[p+4>>2];J[i>>2]=x;if((x|0)!=-1){continue}}break}J[(d<<3)+e>>2]=-1;if((n|0)==-1){break q}J[k+q>>2]=n;J[k+(n<<2)>>2]=l;break p}c=c+1|0;g=g+1|0;if((t|0)!=(g|0)){continue}break}}c=r<<2;d=J[c+f>>2];if((d|0)<=0){break p}c=J[c+v>>2];g=0;while(1){i=(c<<3)+e|0;if(J[i>>2]==-1){J[i>>2]=h;J[i+4>>2]=l;break p}c=c+1|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}}l=b;if(l>>>0<m>>>0){continue}break}break f}break c}ke(1313);B()}J[s>>2]=y;if(v){na(v)}if(e){na(e)}c=J[o+16>>2];if(!c){break d}J[o+20>>2]=c;na(c)}ba=o+32|0;x=(s|0)!=0;if(x){n=ba-32|0;ba=n;c=J[a>>2];g=J[a+4>>2];J[n+24>>2]=0;J[n+16>>2]=0;J[n+20>>2]=0;if((c|0)==(g|0)){b=g}else{c=g-c|0;if((c|0)<0){break c}d=c>>2;b=(d-1>>>5|0)+1|0;c=oa(b<<2);J[n+24>>2]=b;J[n+20>>2]=0;J[n+16>>2]=c;mc(n+16|0,d);g=J[a>>2];b=J[a+4>>2]}J[n+8>>2]=0;J[n>>2]=0;while(1){t:{k=0;m=0;if((b|0)==(g|0)){break t}while(1){e=J[n+16>>2];u:{if(J[e+(m>>>3&536870908)>>2]>>>m&1){break u}b=J[n>>2];J[n+4>>2]=b;f=J[a+12>>2];c=m;while(1){v:{d=c+1|0;i=c;c=(d>>>0)%3|0?d:c-2|0;if((c|0)==-1){break v}d=J[f+(c<<2)>>2];if((d|0)==-1){break v}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((m|0)==(c|0)|(c|0)==-1){break v}if(!(J[e+(c>>>3&536870908)>>2]>>>c&1)){continue}}break}j=i;w:{x:{y:{while(1){c=J[n+16>>2]+(j>>>3&536870908)|0;J[c>>2]=J[c>>2]|1<<j;c=j+1|0;e=(c>>>0)%3|0?c:j-2|0;g=J[a>>2];q=(j>>>0)%3|0;d=(q?-1:2)+j|0;l=J[n>>2];p=(l|0)==(b|0);z:{if(p){break z}t=J[(e<<2)+g>>2];s=J[a+12>>2];c=l;if((d|0)!=-1){f=s+(d<<2)|0;while(1){A:{if((t|0)!=J[c>>2]){break A}u=J[f>>2];h=J[c+4>>2];if((u|0)==(h|0)){break A}f=d;b=-1;c=-1;if((h|0)==-1){break w}break x}c=c+8|0;if((b|0)!=(c|0)){continue}break}break z}while(1){if((t|0)==J[c>>2]){u=-1;f=-1;h=J[c+4>>2];if((h|0)!=-1){break x}}c=c+8|0;if((b|0)!=(c|0)){continue}break}}g=J[(d<<2)+g>>2];B:{if(J[n+8>>2]!=(b|0)){J[b>>2]=g;J[b+4>>2]=e;b=b+8|0;J[n+4>>2]=b;break B}h=b-l|0;d=h>>3;f=d+1|0;if(f>>>0>=536870912){break c}c=h>>>2|0;h=h>>>0>=2147483640?536870911:c>>>0>f>>>0?c:f;if(h){if(h>>>0>=536870912){break y}f=oa(h<<3)}else{f=0}c=f+(d<<3)|0;J[c>>2]=g;J[c+4>>2]=e;d=c+8|0;if(!p){while(1){b=b-8|0;e=J[b+4>>2];c=c-8|0;J[c>>2]=J[b>>2];J[c+4>>2]=e;if((b|0)!=(l|0)){continue}break}b=J[n>>2]}J[n+8>>2]=f+(h<<3);J[n+4>>2]=d;J[n>>2]=c;if(b){na(b)}b=d}C:{D:{if(q){c=j-1|0;break D}c=j+2|0;if((c|0)==-1){break C}}c=J[J[a+12>>2]+(c<<2)>>2];if((c|0)==-1){break C}j=c+((c>>>0)%3|0?-1:2)|0;if((i|0)==(j|0)){break C}if((j|0)!=-1){continue}}break}g=J[a>>2];break u}xa();B()}b=J[s+(h<<2)>>2];d=f;c=h}if((u|0)!=-1){J[s+(u<<2)>>2]=-1}if((b|0)!=-1){J[s+(b<<2)>>2]=-1}J[s+(d<<2)>>2]=-1;J[s+(c<<2)>>2]=-1;k=1}m=m+1|0;b=J[a+4>>2];if(m>>>0<b-g>>2>>>0){continue}break}if(k){continue}}break}c=J[n>>2];if(c){na(c)}c=J[n+16>>2];if(c){na(c)}ba=n+32|0;l=0;k=ba-32|0;ba=k;f=J[w+12>>2];J[a+36>>2]=f;t=a+24|0;c=J[a+24>>2];b=J[a+28>>2]-c>>2;E:{F:{if(b>>>0<f>>>0){Ma(t,f-b|0,14880);J[k+24>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;break F}if(b>>>0>f>>>0){J[a+28>>2]=c+(f<<2)}J[k+24>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;if(!f){break E}}if((f|0)<0){break c}b=(f-1>>>5|0)+1|0;c=oa(b<<2);J[k+24>>2]=b;J[k+20>>2]=0;J[k+16>>2]=c;mc(k+16|0,f)}c=J[a>>2];d=J[a+4>>2];J[k+8>>2]=0;J[k>>2]=0;J[k+4>>2]=0;G:{if((c|0)==(d|0)){c=d}else{c=d-c|0;if((c|0)<0){break c}d=c>>2;b=(d-1>>>5|0)+1|0;c=oa(b<<2);J[k+8>>2]=b;J[k+4>>2]=0;J[k>>2]=c;mc(k,d);d=J[a>>2];c=J[a+4>>2]}if(c-d>>>0<12){break G}H:{while(1){q=P(l,3);e=(q<<2)+d|0;h=J[e>>2];b=-1;i=q+1|0;if((i|0)!=-1){b=J[(i<<2)+d>>2]}I:{if((b|0)==(h|0)){break I}i=J[e+8>>2];if((i|0)==(h|0)|(b|0)==(i|0)){break I}r=0;m=J[k>>2];while(1){i=q+r|0;if(!(J[(i>>>3&536870908)+m>>2]>>>i&1)){c=J[(i<<2)+d>>2];b=1<<c;e=J[k+16>>2];d=c>>>5|0;m=J[e+(d<<2)>>2];p=b&m;if(p){b=J[a+28>>2];J:{if((b|0)!=J[a+32>>2]){J[b>>2]=-1;J[a+28>>2]=b+4;break J}g=J[t>>2];j=b-g|0;e=j>>2;h=e+1|0;if(h>>>0>=1073741824){break c}d=j>>>1|0;j=j>>>0>=2147483644?1073741823:d>>>0>h>>>0?d:h;if(j){if(j>>>0>=1073741824){break H}d=oa(j<<2)}else{d=0}e=d+(e<<2)|0;J[e>>2]=-1;h=e+4|0;if((b|0)!=(g|0)){while(1){e=e-4|0;b=b-4|0;J[e>>2]=J[b>>2];if((b|0)!=(g|0)){continue}break}}J[a+32>>2]=d+(j<<2);J[a+28>>2]=h;J[a+24>>2]=e;if(!g){break J}na(g)}b=J[a+52>>2];K:{if((b|0)!=J[a+56>>2]){J[b>>2]=c;J[a+52>>2]=b+4;break K}g=J[a+48>>2];j=b-g|0;e=j>>2;h=e+1|0;if(h>>>0>=1073741824){break c}d=j>>>1|0;h=j>>>0>=2147483644?1073741823:d>>>0>h>>>0?d:h;if(h){if(h>>>0>=1073741824){break H}d=oa(h<<2)}else{d=0}e=d+(e<<2)|0;J[e>>2]=c;c=e+4|0;if((b|0)!=(g|0)){while(1){e=e-4|0;b=b-4|0;J[e>>2]=J[b>>2];if((b|0)!=(g|0)){continue}break}}J[a+56>>2]=d+(h<<2);J[a+52>>2]=c;J[a+48>>2]=e;if(!g){break K}na(g)}b=J[k+20>>2];c=J[k+24>>2];if((b|0)==c<<5){if((b+1|0)<0){break c}e=k+16|0;if(b>>>0<=1073741822){d=c<<6;c=(b&-32)+32|0;c=c>>>0<d>>>0?d:c}else{c=2147483647}wc(e,c);b=J[k+20>>2]}J[k+20>>2]=b+1;e=J[k+16>>2];d=e+(b>>>3&536870908)|0;c=J[d>>2];A=d,C=Ll(b)&c,J[A>>2]=C;b=1<<f;d=f>>>5|0;m=J[(d<<2)+e>>2];c=f;f=c+1|0}J[(d<<2)+e>>2]=b|m;j=J[a+24>>2]+(c<<2)|0;g=J[a+12>>2];d=J[a>>2];m=J[k>>2];b=i;L:{M:{N:{while(1){if((b|0)==-1){break N}e=(b>>>3&536870908)+m|0;J[e>>2]=J[e>>2]|1<<b;J[j>>2]=b;if(p){J[(b<<2)+d>>2]=c}h=b+1|0;b=(h>>>0)%3|0?h:b-2|0;e=-1;O:{if((b|0)==-1){break O}h=J[g+(b<<2)>>2];e=-1;if((h|0)==-1){break O}b=h+1|0;e=(b>>>0)%3|0?b:h-2|0}b=e;if((i|0)!=(b|0)){continue}break}if((i|0)!=-1){break L}b=1;break M}if((i>>>0)%3|0){b=i-1|0;break M}b=i+2|0;if((b|0)==-1){break L}}b=J[g+(b<<2)>>2];if((b|0)==-1){break L}P:{if((b>>>0)%3|0){b=b-1|0;break P}b=b+2|0;if((b|0)==-1){break L}}e=J[a+12>>2];d=J[a>>2];while(1){i=(b>>>3&536870908)+m|0;J[i>>2]=J[i>>2]|1<<b;if(p){J[(b<<2)+d>>2]=c}Q:{if((b>>>0)%3|0){b=b-1|0;break Q}b=b+2|0;if((b|0)==-1){break L}}b=J[e+(b<<2)>>2];if((b|0)==-1){break L}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){continue}break}}}r=r+1|0;if((r|0)!=3){continue}break}d=J[a>>2];c=J[a+4>>2]}l=l+1|0;if(l>>>0<(c-d>>2>>>0)/3>>>0){continue}break}break G}xa();B()}b=0;J[a+44>>2]=0;c=J[k+16>>2];d=J[k+20>>2];if(d){i=d&31;f=(d>>>3&536870908)+c|0;e=c;m=0;while(1){if(!(J[e>>2]>>>b&1)){m=m+1|0;J[a+44>>2]=m}d=(b|0)==31;b=d?0:b+1|0;e=(d<<2)+e|0;if((f|0)!=(e|0)|(b|0)!=(i|0)){continue}break}}b=J[k>>2];if(b){na(b);c=J[k+16>>2]}if(c){na(c)}ba=k+32|0}ba=w+16|0;if(!x){J[z+8>>2]=0;qc(a);a=0}ba=z+16|0;return a}qa();B()}function nd(a){a=a|0;var 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;l=ba-16|0;ba=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{if(a>>>0<=244){g=J[4849];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=g>>>c|0;if(b&3){c=c+((b^-1)&1)|0;a=c<<3;b=a+19436|0;d=J[a+19444>>2];a=J[d+8>>2];j:{if((b|0)==(a|0)){m=19396,n=Ll(c)&g,J[m>>2]=n;break j}J[a+12>>2]=b;J[b+8>>2]=a}a=d+8|0;b=c<<3;J[d+4>>2]=b|3;b=b+d|0;J[b+4>>2]=J[b+4>>2]|1;break a}k=J[4851];if(k>>>0>=h>>>0){break i}if(b){a=2<<c;a=(0-a|a)&b<<c;d=Gl(0-a&a);a=d<<3;b=a+19436|0;e=J[a+19444>>2];a=J[e+8>>2];k:{if((b|0)==(a|0)){g=Ll(d)&g;J[4849]=g;break k}J[a+12>>2]=b;J[b+8>>2]=a}J[e+4>>2]=h|3;c=e+h|0;a=d<<3;d=a-h|0;J[c+4>>2]=d|1;J[a+e>>2]=d;if(k){b=(k&-8)+19436|0;f=J[4854];a=1<<(k>>>3);l:{if(!(a&g)){J[4849]=a|g;a=b;break l}a=J[b+8>>2]}J[b+8>>2]=f;J[a+12>>2]=f;J[f+12>>2]=b;J[f+8>>2]=a}a=e+8|0;J[4854]=c;J[4851]=d;break a}j=J[4850];if(!j){break i}c=J[(Gl(0-j&j)<<2)+19700>>2];f=(J[c+4>>2]&-8)-h|0;b=c;while(1){m:{a=J[b+16>>2];if(!a){a=J[b+20>>2];if(!a){break m}}b=(J[a+4>>2]&-8)-h|0;d=b>>>0<f>>>0;f=d?b:f;c=d?a:c;b=a;continue}break}i=J[c+24>>2];d=J[c+12>>2];if((d|0)!=(c|0)){a=J[c+8>>2];J[a+12>>2]=d;J[d+8>>2]=a;break b}b=c+20|0;a=J[b>>2];if(!a){a=J[c+16>>2];if(!a){break h}b=c+16|0}while(1){e=b;d=a;b=a+20|0;a=J[b>>2];if(a){continue}b=d+16|0;a=J[d+16>>2];if(a){continue}break}J[e>>2]=0;break b}h=-1;if(a>>>0>4294967231){break i}a=a+11|0;h=a&-8;j=J[4850];if(!j){break i}f=0-h|0;g=0;n:{if(h>>>0<256){break n}g=31;if(h>>>0>16777215){break n}a=S(a>>>8|0);g=((h>>>38-a&1)-(a<<1)|0)+62|0}b=J[(g<<2)+19700>>2];o:{p:{q:{if(!b){a=0;break q}a=0;c=h<<((g|0)!=31?25-(g>>>1|0)|0:0);while(1){r:{e=(J[b+4>>2]&-8)-h|0;if(e>>>0>=f>>>0){break r}d=b;f=e;if(e){break r}f=0;a=b;break p}e=J[b+20>>2];b=J[((c>>>29&4)+b|0)+16>>2];a=e?(e|0)==(b|0)?a:e:a;c=c<<1;if(b){continue}break}}if(!(a|d)){d=0;a=2<<g;a=(0-a|a)&j;if(!a){break i}a=J[(Gl(a&0-a)<<2)+19700>>2]}if(!a){break o}}while(1){b=(J[a+4>>2]&-8)-h|0;c=b>>>0<f>>>0;f=c?b:f;d=c?a:d;b=J[a+16>>2];if(b){a=b}else{a=J[a+20>>2]}if(a){continue}break}}if(!d|J[4851]-h>>>0<=f>>>0){break i}g=J[d+24>>2];c=J[d+12>>2];if((d|0)!=(c|0)){a=J[d+8>>2];J[a+12>>2]=c;J[c+8>>2]=a;break c}b=d+20|0;a=J[b>>2];if(!a){a=J[d+16>>2];if(!a){break g}b=d+16|0}while(1){e=b;c=a;b=a+20|0;a=J[b>>2];if(a){continue}b=c+16|0;a=J[c+16>>2];if(a){continue}break}J[e>>2]=0;break c}a=J[4851];if(a>>>0>=h>>>0){d=J[4854];b=a-h|0;s:{if(b>>>0>=16){c=d+h|0;J[c+4>>2]=b|1;J[a+d>>2]=b;J[d+4>>2]=h|3;break s}J[d+4>>2]=a|3;a=a+d|0;J[a+4>>2]=J[a+4>>2]|1;c=0;b=0}J[4851]=b;J[4854]=c;a=d+8|0;break a}i=J[4852];if(i>>>0>h>>>0){b=i-h|0;J[4852]=b;c=J[4855];a=c+h|0;J[4855]=a;J[a+4>>2]=b|1;J[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(J[4967]){c=J[4969]}else{J[4970]=-1;J[4971]=-1;J[4968]=4096;J[4969]=4096;J[4967]=l+12&-16^1431655768;J[4972]=0;J[4960]=0;c=4096}e=j+c|0;f=0-c|0;b=e&f;if(b>>>0<=h>>>0){break a}d=J[4959];if(d){c=J[4957];g=c+b|0;if(d>>>0<g>>>0|c>>>0>=g>>>0){break a}}t:{if(!(K[19840]&4)){u:{v:{w:{x:{d=J[4855];if(d){a=19844;while(1){c=J[a>>2];if(c>>>0<=d>>>0&d>>>0<c+J[a+4>>2]>>>0){break x}a=J[a+8>>2];if(a){continue}break}}c=Kb(0);if((c|0)==-1){break u}g=b;d=J[4968];a=d-1|0;if(a&c){g=(b-c|0)+(a+c&0-d)|0}if(g>>>0<=h>>>0){break u}d=J[4959];if(d){a=J[4957];f=a+g|0;if(d>>>0<f>>>0|a>>>0>=f>>>0){break u}}a=Kb(g);if((c|0)!=(a|0)){break w}break t}g=f&e-i;c=Kb(g);if((c|0)==(J[a>>2]+J[a+4>>2]|0)){break v}a=c}if((a|0)==-1){break u}if(h+48>>>0<=g>>>0){c=a;break t}c=J[4969];c=c+(j-g|0)&0-c;if((Kb(c)|0)==-1){break u}g=c+g|0;c=a;break t}if((c|0)!=-1){break t}}J[4960]=J[4960]|4}c=Kb(b);a=Kb(0);if((c|0)==-1|(a|0)==-1|a>>>0<=c>>>0){break d}g=a-c|0;if(g>>>0<=h+40>>>0){break d}}a=J[4957]+g|0;J[4957]=a;if(a>>>0>M[4958]){J[4958]=a}y:{e=J[4855];if(e){a=19844;while(1){d=J[a>>2];b=J[a+4>>2];if((d+b|0)==(c|0)){break y}a=J[a+8>>2];if(a){continue}break}break f}a=J[4853];if(!(a>>>0<=c>>>0?a:0)){J[4853]=c}a=0;J[4962]=g;J[4961]=c;J[4857]=-1;J[4858]=J[4967];J[4964]=0;while(1){d=a<<3;b=d+19436|0;J[d+19444>>2]=b;J[d+19448>>2]=b;a=a+1|0;if((a|0)!=32){continue}break}d=g-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;J[4852]=b;a=a+c|0;J[4855]=a;J[a+4>>2]=b|1;J[(c+d|0)+4>>2]=40;J[4856]=J[4971];break e}if(K[a+12|0]&8|d>>>0>e>>>0|c>>>0<=e>>>0){break f}J[a+4>>2]=b+g;a=e+8&7?-8-e&7:0;c=a+e|0;J[4855]=c;b=J[4852]+g|0;a=b-a|0;J[4852]=a;J[c+4>>2]=a|1;J[(b+e|0)+4>>2]=40;J[4856]=J[4971];break e}d=0;break b}c=0;break c}if(M[4853]>c>>>0){J[4853]=c}b=c+g|0;a=19844;z:{A:{B:{C:{D:{E:{while(1){if((b|0)!=J[a>>2]){a=J[a+8>>2];if(a){continue}break E}break}if(!(K[a+12|0]&8)){break D}}a=19844;while(1){b=J[a>>2];if(b>>>0<=e>>>0){f=b+J[a+4>>2]|0;if(f>>>0>e>>>0){break C}}a=J[a+8>>2];continue}}J[a>>2]=c;J[a+4>>2]=J[a+4>>2]+g;j=(c+8&7?-8-c&7:0)+c|0;J[j+4>>2]=h|3;g=b+(b+8&7?-8-b&7:0)|0;i=h+j|0;a=g-i|0;if((e|0)==(g|0)){J[4855]=i;a=J[4852]+a|0;J[4852]=a;J[i+4>>2]=a|1;break A}if(J[4854]==(g|0)){J[4854]=i;a=J[4851]+a|0;J[4851]=a;J[i+4>>2]=a|1;J[a+i>>2]=a;break A}f=J[g+4>>2];if((f&3)==1){e=f&-8;F:{if(f>>>0<=255){d=J[g+8>>2];b=f>>>3|0;c=J[g+12>>2];if((c|0)==(d|0)){m=19396,n=J[4849]&Ll(b),J[m>>2]=n;break F}J[d+12>>2]=c;J[c+8>>2]=d;break F}h=J[g+24>>2];c=J[g+12>>2];G:{if((g|0)!=(c|0)){b=J[g+8>>2];J[b+12>>2]=c;J[c+8>>2]=b;break G}H:{f=g+20|0;b=J[f>>2];if(b){break H}f=g+16|0;b=J[f>>2];if(b){break H}c=0;break G}while(1){d=f;c=b;f=c+20|0;b=J[f>>2];if(b){continue}f=c+16|0;b=J[c+16>>2];if(b){continue}break}J[d>>2]=0}if(!h){break F}d=J[g+28>>2];b=(d<<2)+19700|0;I:{if(J[b>>2]==(g|0)){J[b>>2]=c;if(c){break I}m=19400,n=J[4850]&Ll(d),J[m>>2]=n;break F}J[h+(J[h+16>>2]==(g|0)?16:20)>>2]=c;if(!c){break F}}J[c+24>>2]=h;b=J[g+16>>2];if(b){J[c+16>>2]=b;J[b+24>>2]=c}b=J[g+20>>2];if(!b){break F}J[c+20>>2]=b;J[b+24>>2]=c}g=e+g|0;f=J[g+4>>2];a=a+e|0}J[g+4>>2]=f&-2;J[i+4>>2]=a|1;J[a+i>>2]=a;if(a>>>0<=255){b=(a&-8)+19436|0;c=J[4849];a=1<<(a>>>3);J:{if(!(c&a)){J[4849]=a|c;a=b;break J}a=J[b+8>>2]}J[b+8>>2]=i;J[a+12>>2]=i;J[i+12>>2]=b;J[i+8>>2]=a;break A}f=31;if(a>>>0<=16777215){b=S(a>>>8|0);f=((a>>>38-b&1)-(b<<1)|0)+62|0}J[i+28>>2]=f;J[i+16>>2]=0;J[i+20>>2]=0;b=(f<<2)+19700|0;d=J[4850];c=1<<f;K:{if(!(d&c)){J[4850]=c|d;J[b>>2]=i;break K}f=a<<((f|0)!=31?25-(f>>>1|0)|0:0);c=J[b>>2];while(1){b=c;if((J[c+4>>2]&-8)==(a|0)){break B}c=f>>>29|0;f=f<<1;d=(c&4)+b|0;c=J[d+16>>2];if(c){continue}break}J[d+16>>2]=i}J[i+24>>2]=b;J[i+12>>2]=i;J[i+8>>2]=i;break A}d=g-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;J[4852]=b;a=a+c|0;J[4855]=a;J[a+4>>2]=b|1;J[(c+d|0)+4>>2]=40;J[4856]=J[4971];a=(f+(f-39&7?39-f&7:0)|0)-47|0;d=a>>>0<e+16>>>0?e:a;J[d+4>>2]=27;a=J[4964];J[d+16>>2]=J[4963];J[d+20>>2]=a;a=J[4962];J[d+8>>2]=J[4961];J[d+12>>2]=a;J[4963]=d+8;J[4962]=g;J[4961]=c;J[4964]=0;a=d+24|0;while(1){J[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0<f>>>0){continue}break}if((d|0)==(e|0)){break e}J[d+4>>2]=J[d+4>>2]&-2;f=d-e|0;J[e+4>>2]=f|1;J[d>>2]=f;if(f>>>0<=255){b=(f&-8)+19436|0;c=J[4849];a=1<<(f>>>3);L:{if(!(c&a)){J[4849]=a|c;a=b;break L}a=J[b+8>>2]}J[b+8>>2]=e;J[a+12>>2]=e;J[e+12>>2]=b;J[e+8>>2]=a;break e}a=31;if(f>>>0<=16777215){a=S(f>>>8|0);a=((f>>>38-a&1)-(a<<1)|0)+62|0}J[e+28>>2]=a;J[e+16>>2]=0;J[e+20>>2]=0;b=(a<<2)+19700|0;d=J[4850];c=1<<a;M:{if(!(d&c)){J[4850]=c|d;J[b>>2]=e;break M}a=f<<((a|0)!=31?25-(a>>>1|0)|0:0);d=J[b>>2];while(1){b=d;if((f|0)==(J[b+4>>2]&-8)){break z}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;d=J[c+16>>2];if(d){continue}break}J[c+16>>2]=e}J[e+24>>2]=b;J[e+12>>2]=e;J[e+8>>2]=e;break e}a=J[b+8>>2];J[a+12>>2]=i;J[b+8>>2]=i;J[i+24>>2]=0;J[i+12>>2]=b;J[i+8>>2]=a}a=j+8|0;break a}a=J[b+8>>2];J[a+12>>2]=e;J[b+8>>2]=e;J[e+24>>2]=0;J[e+12>>2]=b;J[e+8>>2]=a}a=J[4852];if(a>>>0<=h>>>0){break d}b=a-h|0;J[4852]=b;c=J[4855];a=c+h|0;J[4855]=a;J[a+4>>2]=b|1;J[c+4>>2]=h|3;a=c+8|0;break a}J[4804]=48;a=0;break a}N:{if(!g){break N}b=J[d+28>>2];a=(b<<2)+19700|0;O:{if(J[a>>2]==(d|0)){J[a>>2]=c;if(c){break O}j=Ll(b)&j;J[4850]=j;break N}J[g+(J[g+16>>2]==(d|0)?16:20)>>2]=c;if(!c){break N}}J[c+24>>2]=g;a=J[d+16>>2];if(a){J[c+16>>2]=a;J[a+24>>2]=c}a=J[d+20>>2];if(!a){break N}J[c+20>>2]=a;J[a+24>>2]=c}P:{if(f>>>0<=15){a=f+h|0;J[d+4>>2]=a|3;a=a+d|0;J[a+4>>2]=J[a+4>>2]|1;break P}J[d+4>>2]=h|3;e=d+h|0;J[e+4>>2]=f|1;J[e+f>>2]=f;if(f>>>0<=255){b=(f&-8)+19436|0;c=J[4849];a=1<<(f>>>3);Q:{if(!(c&a)){J[4849]=a|c;a=b;break Q}a=J[b+8>>2]}J[b+8>>2]=e;J[a+12>>2]=e;J[e+12>>2]=b;J[e+8>>2]=a;break P}a=31;if(f>>>0<=16777215){a=S(f>>>8|0);a=((f>>>38-a&1)-(a<<1)|0)+62|0}J[e+28>>2]=a;J[e+16>>2]=0;J[e+20>>2]=0;b=(a<<2)+19700|0;R:{c=1<<a;S:{if(!(c&j)){J[4850]=c|j;J[b>>2]=e;break S}a=f<<((a|0)!=31?25-(a>>>1|0)|0:0);h=J[b>>2];while(1){b=h;if((J[b+4>>2]&-8)==(f|0)){break R}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=J[c+16>>2];if(h){continue}break}J[c+16>>2]=e}J[e+24>>2]=b;J[e+12>>2]=e;J[e+8>>2]=e;break P}a=J[b+8>>2];J[a+12>>2]=e;J[b+8>>2]=e;J[e+24>>2]=0;J[e+12>>2]=b;J[e+8>>2]=a}a=d+8|0;break a}T:{if(!i){break T}b=J[c+28>>2];a=(b<<2)+19700|0;U:{if(J[a>>2]==(c|0)){J[a>>2]=d;if(d){break U}m=19400,n=Ll(b)&j,J[m>>2]=n;break T}J[i+(J[i+16>>2]==(c|0)?16:20)>>2]=d;if(!d){break T}}J[d+24>>2]=i;a=J[c+16>>2];if(a){J[d+16>>2]=a;J[a+24>>2]=d}a=J[c+20>>2];if(!a){break T}J[d+20>>2]=a;J[a+24>>2]=d}V:{if(f>>>0<=15){a=f+h|0;J[c+4>>2]=a|3;a=a+c|0;J[a+4>>2]=J[a+4>>2]|1;break V}J[c+4>>2]=h|3;d=c+h|0;J[d+4>>2]=f|1;J[d+f>>2]=f;if(k){b=(k&-8)+19436|0;e=J[4854];a=1<<(k>>>3);W:{if(!(a&g)){J[4849]=a|g;a=b;break W}a=J[b+8>>2]}J[b+8>>2]=e;J[a+12>>2]=e;J[e+12>>2]=b;J[e+8>>2]=a}J[4854]=d;J[4851]=f}a=c+8|0}ba=l+16|0;return a|0}function Kh(a){a=a|0;var 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=Q(0);e=ba+-64|0;ba=e;c=J[a+4>>2];i=J[a+8>>2];a:{if((c|0)==(i|0)){J[a+72>>2]=0;b=1;break a}d=i-c>>2;m=d>>>0<=1?1:d;j=m&3;h=J[J[a+28>>2]+4>>2];d=J[h+8>>2];if(m-1>>>0>=3){m=m&-4;while(1){l=g;g=b<<2;g=(((l+K[J[d+(J[g+c>>2]<<2)>>2]+24|0]|0)+K[J[d+(J[(g|4)+c>>2]<<2)>>2]+24|0]|0)+K[J[d+(J[(g|8)+c>>2]<<2)>>2]+24|0]|0)+K[J[d+(J[(g|12)+c>>2]<<2)>>2]+24|0]|0;b=b+4|0;k=k+4|0;if((m|0)!=(k|0)){continue}break}}if(j){while(1){g=K[J[d+(J[(b<<2)+c>>2]<<2)>>2]+24|0]+g|0;b=b+1|0;f=f+1|0;if((j|0)!=(f|0)){continue}break}}o=J[h+80>>2];J[a+72>>2]=g;if((c|0)==(i|0)){b=1;break a}m=0;while(1){b=J[(m<<2)+c>>2];J[e+60>>2]=b;b:{c:{d:{e:{f:{c=J[a+28>>2];i=J[J[J[c+4>>2]+8>>2]+(b<<2)>>2];switch(J[i+28>>2]-1|0){case 0:case 2:case 4:break e;case 8:break f;default:break b}}J[e+36>>2]=-1;J[e+32>>2]=2032;J[e+48>>2]=0;J[e+52>>2]=0;J[e+40>>2]=0;J[e+44>>2]=0;g=J[c+48>>2];b=oa(32);J[e+16>>2]=b;J[e+20>>2]=17;J[e+24>>2]=-2147483616;H[b+16|0]=K[1261];c=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);d=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);d=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+17|0]=0;g=jb(g,e+60|0,e+16|0,-1);if(H[e+27|0]<0){na(J[e+16>>2])}g:{if((g|0)<=0){break g}j=J[J[a+28>>2]+48>>2];b=oa(32);J[e+16>>2]=b;J[e+20>>2]=19;J[e+24>>2]=-2147483616;d=0;c=K[1429]|K[1430]<<8|(K[1431]<<16|K[1432]<<24);H[b+15|0]=c;H[b+16|0]=c>>>8;H[b+17|0]=c>>>16;H[b+18|0]=c>>>24;c=K[1426]|K[1427]<<8|(K[1428]<<16|K[1429]<<24);f=K[1422]|K[1423]<<8|(K[1424]<<16|K[1425]<<24);H[b+8|0]=f;H[b+9|0]=f>>>8;H[b+10|0]=f>>>16;H[b+11|0]=f>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1418]|K[1419]<<8|(K[1420]<<16|K[1421]<<24);f=K[1414]|K[1415]<<8|(K[1416]<<16|K[1417]<<24);H[b|0]=f;H[b+1|0]=f>>>8;H[b+2|0]=f>>>16;H[b+3|0]=f>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+19|0]=0;h:{if(!yc(j,e+60|0,e+16|0)){break h}f=J[J[a+28>>2]+48>>2];b=oa(32);J[e>>2]=b;J[e+4>>2]=18;J[e+8>>2]=-2147483616;c=K[1547]|K[1548]<<8;H[b+16|0]=c;H[b+17|0]=c>>>8;c=K[1543]|K[1544]<<8|(K[1545]<<16|K[1546]<<24);d=K[1539]|K[1540]<<8|(K[1541]<<16|K[1542]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1535]|K[1536]<<8|(K[1537]<<16|K[1538]<<24);d=K[1531]|K[1532]<<8|(K[1533]<<16|K[1534]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+18|0]=0;d=yc(f,e+60|0,e);if(H[e+11|0]>=0){break h}na(J[e>>2])}if(H[e+27|0]<0){na(J[e+16>>2])}i:{if(d){b=K[i+24|0];j:{if(!b){d=0;break j}b=b<<2;d=oa(b);pa(d,0,b)}j=J[J[a+28>>2]+48>>2];b=oa(32);J[e+16>>2]=b;J[e+20>>2]=19;J[e+24>>2]=-2147483616;c=K[1429]|K[1430]<<8|(K[1431]<<16|K[1432]<<24);H[b+15|0]=c;H[b+16|0]=c>>>8;H[b+17|0]=c>>>16;H[b+18|0]=c>>>24;c=K[1426]|K[1427]<<8|(K[1428]<<16|K[1429]<<24);f=K[1422]|K[1423]<<8|(K[1424]<<16|K[1425]<<24);H[b+8|0]=f;H[b+9|0]=f>>>8;H[b+10|0]=f>>>16;H[b+11|0]=f>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1418]|K[1419]<<8|(K[1420]<<16|K[1421]<<24);f=K[1414]|K[1415]<<8|(K[1416]<<16|K[1417]<<24);H[b|0]=f;H[b+1|0]=f>>>8;H[b+2|0]=f>>>16;H[b+3|0]=f>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+19|0]=0;De(j,e+60|0,e+16|0,K[i+24|0],d);if(H[e+27|0]<0){na(J[e+16>>2])}j=J[J[a+28>>2]+48>>2];b=oa(32);J[e+16>>2]=b;J[e+20>>2]=18;J[e+24>>2]=-2147483616;c=K[1547]|K[1548]<<8;H[b+16|0]=c;H[b+17|0]=c>>>8;c=K[1543]|K[1544]<<8|(K[1545]<<16|K[1546]<<24);f=K[1539]|K[1540]<<8|(K[1541]<<16|K[1542]<<24);H[b+8|0]=f;H[b+9|0]=f>>>8;H[b+10|0]=f>>>16;H[b+11|0]=f>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1535]|K[1536]<<8|(K[1537]<<16|K[1538]<<24);f=K[1531]|K[1532]<<8|(K[1533]<<16|K[1534]<<24);H[b|0]=f;H[b+1|0]=f>>>8;H[b+2|0]=f>>>16;H[b+3|0]=f>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+18|0]=0;p=Ce(j,e+60|0,e+16|0);if(H[e+27|0]<0){na(J[e+16>>2])}ch(e+32|0,g,d,K[i+24|0],p);if(!d){break i}na(d);break i}if(!_g(e+32|0,i,g)){break g}}d=J[a+40>>2];k:{if((d|0)!=J[a+44>>2]){J[d>>2]=2032;b=J[e+36>>2];J[d+16>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;J[d+4>>2]=b;b=J[e+44>>2];c=J[e+40>>2];if((b|0)!=(c|0)){b=b-c|0;if((b|0)<0){break d}c=oa(b);J[d+12>>2]=c;J[d+8>>2]=c;J[d+16>>2]=(b&-4)+c;b=J[e+40>>2];g=J[e+44>>2];if((b|0)!=(g|0)){while(1){N[c>>2]=N[b>>2];c=c+4|0;b=b+4|0;if((g|0)!=(b|0)){continue}break}}J[d+12>>2]=c}N[d+20>>2]=N[e+52>>2];J[a+40>>2]=d+24;break k}f=0;l:{m:{n:{o:{b=J[a+40>>2];j=J[a+36>>2];d=(b-j|0)/24|0;c=d+1|0;if(c>>>0<178956971){g=(J[a+44>>2]-j|0)/24|0;h=g<<1;h=g>>>0>=89478485?178956970:c>>>0<h>>>0?h:c;if(h){if(h>>>0>=178956971){break o}f=oa(P(h,24))}c=P(d,24)+f|0;J[c>>2]=2032;d=J[e+36>>2];J[c+16>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[c+4>>2]=d;g=J[e+40>>2];k=J[e+44>>2];if((g|0)!=(k|0)){l=k-g|0;if((l|0)<0){break n}d=oa(l);J[c+8>>2]=d;J[c+16>>2]=(l&-4)+d;while(1){N[d>>2]=N[g>>2];d=d+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}J[c+12>>2]=d}d=P(h,24)+f|0;N[c+20>>2]=N[e+52>>2];g=c+24|0;if((b|0)==(j|0)){break m}while(1){c=c-24|0;J[c>>2]=2032;b=b-24|0;J[c+4>>2]=J[b+4>>2];J[c+8>>2]=J[b+8>>2];J[c+12>>2]=J[b+12>>2];J[c+16>>2]=J[b+16>>2];J[b+16>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;N[c+20>>2]=N[b+20>>2];if((b|0)!=(j|0)){continue}break}J[a+44>>2]=d;d=J[a+40>>2];J[a+40>>2]=g;b=J[a+36>>2];J[a+36>>2]=c;if((b|0)==(d|0)){break l}while(1){d=d-24|0;da[J[J[d>>2]>>2]](d)|0;if((b|0)!=(d|0)){continue}break}break l}qa();B()}xa();B()}qa();B()}J[a+44>>2]=d;J[a+40>>2]=g;J[a+36>>2]=c}if(b){na(b)}}b=e+32|0;c=Mc(b,i,o);J[e>>2]=c;J[e+24>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;je(b,i,e+16|0,c);b=J[e+16>>2];if(b){J[e+20>>2]=b;na(b)}b=J[a+64>>2];p:{if(b>>>0<M[a+68>>2]){c=J[e>>2];J[e>>2]=0;J[b>>2]=c;J[a+64>>2]=b+4;break p}c=0;q:{r:{s:{d=J[a+60>>2];g=J[a+64>>2]-d>>2;b=g+1|0;if(b>>>0<1073741824){d=J[a+68>>2]-d|0;i=d>>>1|0;d=d>>>0>=2147483644?1073741823:b>>>0<i>>>0?i:b;if(d){if(d>>>0>=1073741824){break s}c=oa(d<<2)}i=J[e>>2];J[e>>2]=0;b=(g<<2)+c|0;J[b>>2]=i;d=(d<<2)+c|0;g=b+4|0;c=J[a+64>>2];i=J[a+60>>2];if((c|0)==(i|0)){break r}while(1){c=c-4|0;f=J[c>>2];J[c>>2]=0;b=b-4|0;J[b>>2]=f;if((c|0)!=(i|0)){continue}break}J[a+68>>2]=d;d=J[a+64>>2];J[a+64>>2]=g;c=J[a+60>>2];J[a+60>>2]=b;if((c|0)==(d|0)){break q}while(1){d=d-4|0;b=J[d>>2];J[d>>2]=0;if(b){Ka(b)}if((c|0)!=(d|0)){continue}break}break q}qa();B()}xa();B()}J[a+68>>2]=d;J[a+64>>2]=g;J[a+60>>2]=b}if(c){na(c)}}b=J[e>>2];J[e>>2]=0;if(b){Ka(b)}J[e+32>>2]=2032;b=J[e+40>>2];if(!b){break b}J[e+44>>2]=b;na(b);break b}J[e+32>>2]=2032;a=J[e+40>>2];if(a){J[e+44>>2]=a;na(a)}b=0;break a}j=0;t:{u:{g=K[i+24|0];v:{if(!g){d=0;break v}b=0;f=g<<2;d=oa(f);c=d;h=g&7;if(h){while(1){J[c>>2]=2147483647;c=c+4|0;b=b+1|0;if((h|0)!=(b|0)){continue}break}}if((g-1&1073741823)>>>0>=7){b=d+f|0;while(1){J[c+24>>2]=2147483647;J[c+28>>2]=2147483647;J[c+16>>2]=2147483647;J[c+20>>2]=2147483647;J[c+8>>2]=2147483647;J[c+12>>2]=2147483647;J[c>>2]=2147483647;J[c+4>>2]=2147483647;c=c+32|0;if((b|0)!=(c|0)){continue}break}}b=K[i+24|0];if(b){break u}}g=0;b=0;break t}b=b<<2;g=oa(b);pa(g,0,b);b=K[i+24|0]}if(!J[i+80>>2]){break c}while(1){$c(i,j,b<<24>>24,g);b=K[i+24|0];w:{if(!b){break w}c=0;if((b|0)!=1){l=b&254;f=0;while(1){h=c<<2;k=h+d|0;n=J[g+h>>2];if((n|0)<J[k>>2]){J[k>>2]=n}h=h|4;k=h+d|0;h=J[g+h>>2];if(J[k>>2]>(h|0)){J[k>>2]=h}c=c+2|0;f=f+2|0;if((l|0)!=(f|0)){continue}break}}if(!(b&1)){break w}c=c<<2;f=c+d|0;c=J[c+g>>2];if(J[f>>2]<=(c|0)){break w}J[f>>2]=c}j=j+1|0;if(j>>>0<M[i+80>>2]){continue}break}break c}qa();B()}c=0;x:{if(!b){break x}y:{while(1){z:{k=(c<<2)+d|0;b=J[a+52>>2];A:{if((b|0)!=J[a+56>>2]){J[b>>2]=J[k>>2];J[a+52>>2]=b+4;break A}h=b;b=J[a+48>>2];f=h-b|0;l=f>>2;j=l+1|0;if(j>>>0>=1073741824){break z}h=f>>>1|0;j=f>>>0>=2147483644?1073741823:j>>>0<h>>>0?h:j;if(j){if(j>>>0>=1073741824){break y}h=oa(j<<2)}else{h=0}l=h+(l<<2)|0;J[l>>2]=J[k>>2];f=ta(h,b,f);J[a+56>>2]=f+(j<<2);J[a+52>>2]=l+4;J[a+48>>2]=f;if(!b){break A}na(b)}c=c+1|0;if(c>>>0<K[i+24|0]){continue}break x}break}qa();B()}xa();B()}if(g){na(g)}if(!d){break b}na(d)}b=1;m=m+1|0;c=J[a+4>>2];if(m>>>0<J[a+8>>2]-c>>2>>>0){continue}break}}ba=e- -64|0;return b|0}function ml(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ba-48|0;ba=i;h=J[a+4>>2];e=J[a+12>>2];J[i+40>>2]=0;J[i+32>>2]=0;J[i+36>>2]=0;J[i+24>>2]=0;J[i+28>>2]=0;J[i+16>>2]=0;J[i+20>>2]=0;J[i+8>>2]=0;J[i+12>>2]=0;l=J[J[J[h+4>>2]+8>>2]+(e<<2)>>2];d=i+8|0;if((b|0)==-1){b=bh(e,h)}a:{if((b|0)==-2){break a}if((da[J[J[h>>2]+8>>2]](h)|0)==1){j=ba-32|0;ba=j;k=J[J[J[h+4>>2]+8>>2]+(e<<2)>>2];b:{c:{d:{if((da[J[J[h>>2]+8>>2]](h)|0)!=1|b-1>>>0>5){break d}f=da[J[J[h>>2]+52>>2]](h)|0;g=da[J[J[h>>2]+60>>2]](h,e)|0;if(!f|!g){break d}c=da[J[J[h>>2]+56>>2]](h,e)|0;if(c){a=J[h+56>>2];J[j+20>>2]=c;J[j+16>>2]=a;J[j+28>>2]=g;J[j+24>>2]=g+12;e=j+16|0;a=0;e:{f:{switch(b-1|0){case 0:b=oa(60);J[b+4>>2]=k;J[b>>2]=3456;a=J[d+4>>2];J[b+8>>2]=J[d>>2];J[b+12>>2]=a;a=J[d+12>>2];J[b+16>>2]=J[d+8>>2];J[b+20>>2]=a;a=J[d+20>>2];J[b+24>>2]=J[d+16>>2];J[b+28>>2]=a;J[b+40>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;a=J[d+24>>2];g=J[d+28>>2];if((a|0)!=(g|0)){f=g-a|0;if((f|0)<0){break c}c=oa(f);J[b+32>>2]=c;J[b+40>>2]=(f&-4)+c;while(1){J[c>>2]=J[a>>2];c=c+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}J[b+36>>2]=c}a=J[e+4>>2];J[b+44>>2]=J[e>>2];J[b+48>>2]=a;a=J[e+12>>2];J[b+52>>2]=J[e+8>>2];J[b+56>>2]=a;J[b>>2]=2748;a=b;break e;case 3:b=oa(168);J[b+4>>2]=k;J[b>>2]=3456;a=J[d+4>>2];J[b+8>>2]=J[d>>2];J[b+12>>2]=a;a=J[d+12>>2];J[b+16>>2]=J[d+8>>2];J[b+20>>2]=a;a=J[d+20>>2];J[b+24>>2]=J[d+16>>2];J[b+28>>2]=a;J[b+40>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;a=J[d+24>>2];g=J[d+28>>2];if((a|0)!=(g|0)){f=g-a|0;if((f|0)<0){break c}c=oa(f);J[b+32>>2]=c;J[b+40>>2]=(f&-4)+c;while(1){J[c>>2]=J[a>>2];c=c+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}J[b+36>>2]=c}a=J[e+4>>2];J[b+44>>2]=J[e>>2];J[b+48>>2]=a;a=b;b=J[e+12>>2];J[a+52>>2]=J[e+8>>2];J[a+56>>2]=b;J[a+60>>2]=0;J[a+64>>2]=0;J[a>>2]=3512;J[a+68>>2]=0;J[a+72>>2]=0;J[a+76>>2]=0;J[a+80>>2]=0;J[a+84>>2]=0;J[a+88>>2]=0;J[a+92>>2]=0;J[a+96>>2]=0;J[a+100>>2]=0;J[a+104>>2]=0;J[a+108>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+120>>2]=0;J[a+112>>2]=0;J[a+116>>2]=0;J[a+136>>2]=0;J[a+140>>2]=0;J[a+144>>2]=0;J[a+160>>2]=0;J[a+152>>2]=0;J[a+156>>2]=0;break e;case 4:b=oa(104);J[b+4>>2]=k;J[b>>2]=3456;a=J[d+4>>2];J[b+8>>2]=J[d>>2];J[b+12>>2]=a;a=J[d+12>>2];J[b+16>>2]=J[d+8>>2];J[b+20>>2]=a;a=J[d+20>>2];J[b+24>>2]=J[d+16>>2];J[b+28>>2]=a;J[b+40>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;a=J[d+24>>2];g=J[d+28>>2];if((a|0)!=(g|0)){f=g-a|0;if((f|0)<0){break c}c=oa(f);J[b+32>>2]=c;J[b+40>>2]=(f&-4)+c;while(1){J[c>>2]=J[a>>2];c=c+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}J[b+36>>2]=c}a=J[e+4>>2];J[b+44>>2]=J[e>>2];J[b+48>>2]=a;a=J[e+12>>2];J[b+52>>2]=J[e+8>>2];J[b+56>>2]=a;J[b+84>>2]=0;J[b+76>>2]=0;J[b+80>>2]=0;J[b+60>>2]=0;J[b+64>>2]=0;J[b>>2]=3760;a=J[e+4>>2];J[b+88>>2]=J[e>>2];J[b+92>>2]=a;a=J[e+12>>2];J[b+96>>2]=J[e+8>>2];J[b+100>>2]=a;a=b;break e;case 5:break f;default:break e}}a=oa(144);J[a+4>>2]=k;J[a>>2]=3456;b=J[d+4>>2];J[a+8>>2]=J[d>>2];J[a+12>>2]=b;b=J[d+12>>2];J[a+16>>2]=J[d+8>>2];J[a+20>>2]=b;b=J[d+20>>2];J[a+24>>2]=J[d+16>>2];J[a+28>>2]=b;J[a+40>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;g:{h:{c=J[d+28>>2];b=J[d+24>>2];if((c|0)!=(b|0)){c=c-b|0;if((c|0)<0){break h}b=oa(c);J[a+36>>2]=b;J[a+32>>2]=b;J[a+40>>2]=(c&-4)+b;c=J[d+24>>2];f=J[d+28>>2];if((c|0)!=(f|0)){while(1){J[b>>2]=J[c>>2];b=b+4|0;c=c+4|0;if((f|0)!=(c|0)){continue}break}}J[a+36>>2]=b}J[a>>2]=3400;b=J[e+4>>2];J[a+44>>2]=J[e>>2];J[a+48>>2]=b;b=J[e+12>>2];J[a+52>>2]=J[e+8>>2];J[a+56>>2]=b;b=a- -64|0;J[b>>2]=0;J[b+4>>2]=0;J[a+60>>2]=4624;J[a>>2]=3996;b=J[e+4>>2];J[a+72>>2]=J[e>>2];J[a+76>>2]=b;b=J[e+12>>2];J[a+80>>2]=J[e+8>>2];J[a+84>>2]=b;J[a+104>>2]=1065353216;J[a+108>>2]=-1;J[a+96>>2]=-1;J[a+100>>2]=-1;J[a+88>>2]=1;J[a+92>>2]=-1;J[a+60>>2]=4232;J[a+112>>2]=0;J[a+116>>2]=0;J[a+136>>2]=0;J[a+140>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+120>>2]=0;J[a+124>>2]=0;break g}qa();B()}break e}c=a;break d}a=J[h+56>>2];J[j+20>>2]=f;J[j+16>>2]=a;J[j+28>>2]=g;J[j+24>>2]=g+12;e=j+16|0;a=0;i:{j:{switch(b-1|0){case 0:b=oa(60);J[b+4>>2]=k;J[b>>2]=3456;a=J[d+4>>2];J[b+8>>2]=J[d>>2];J[b+12>>2]=a;a=J[d+12>>2];J[b+16>>2]=J[d+8>>2];J[b+20>>2]=a;a=J[d+20>>2];J[b+24>>2]=J[d+16>>2];J[b+28>>2]=a;J[b+40>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;a=J[d+24>>2];g=J[d+28>>2];if((a|0)!=(g|0)){f=g-a|0;if((f|0)<0){break c}c=oa(f);J[b+32>>2]=c;J[b+40>>2]=(f&-4)+c;while(1){J[c>>2]=J[a>>2];c=c+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}J[b+36>>2]=c}a=J[e+4>>2];J[b+44>>2]=J[e>>2];J[b+48>>2]=a;a=J[e+12>>2];J[b+52>>2]=J[e+8>>2];J[b+56>>2]=a;J[b>>2]=4652;a=b;break i;case 3:b=oa(168);J[b+4>>2]=k;J[b>>2]=3456;a=J[d+4>>2];J[b+8>>2]=J[d>>2];J[b+12>>2]=a;a=J[d+12>>2];J[b+16>>2]=J[d+8>>2];J[b+20>>2]=a;a=J[d+20>>2];J[b+24>>2]=J[d+16>>2];J[b+28>>2]=a;J[b+40>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;a=J[d+24>>2];g=J[d+28>>2];if((a|0)!=(g|0)){f=g-a|0;if((f|0)<0){break c}c=oa(f);J[b+32>>2]=c;J[b+40>>2]=(f&-4)+c;while(1){J[c>>2]=J[a>>2];c=c+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}J[b+36>>2]=c}a=J[e+4>>2];J[b+44>>2]=J[e>>2];J[b+48>>2]=a;a=b;b=J[e+12>>2];J[a+52>>2]=J[e+8>>2];J[a+56>>2]=b;J[a+60>>2]=0;J[a+64>>2]=0;J[a>>2]=5076;J[a+68>>2]=0;J[a+72>>2]=0;J[a+76>>2]=0;J[a+80>>2]=0;J[a+84>>2]=0;J[a+88>>2]=0;J[a+92>>2]=0;J[a+96>>2]=0;J[a+100>>2]=0;J[a+104>>2]=0;J[a+108>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+120>>2]=0;J[a+112>>2]=0;J[a+116>>2]=0;J[a+136>>2]=0;J[a+140>>2]=0;J[a+144>>2]=0;J[a+160>>2]=0;J[a+152>>2]=0;J[a+156>>2]=0;break i;case 4:b=oa(104);J[b+4>>2]=k;J[b>>2]=3456;a=J[d+4>>2];J[b+8>>2]=J[d>>2];J[b+12>>2]=a;a=J[d+12>>2];J[b+16>>2]=J[d+8>>2];J[b+20>>2]=a;a=J[d+20>>2];J[b+24>>2]=J[d+16>>2];J[b+28>>2]=a;J[b+40>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;a=J[d+24>>2];g=J[d+28>>2];if((a|0)!=(g|0)){f=g-a|0;if((f|0)<0){break c}c=oa(f);J[b+32>>2]=c;J[b+40>>2]=(f&-4)+c;while(1){J[c>>2]=J[a>>2];c=c+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}J[b+36>>2]=c}a=J[e+4>>2];J[b+44>>2]=J[e>>2];J[b+48>>2]=a;a=J[e+12>>2];J[b+52>>2]=J[e+8>>2];J[b+56>>2]=a;J[b+84>>2]=0;J[b+76>>2]=0;J[b+80>>2]=0;J[b+60>>2]=0;J[b+64>>2]=0;J[b>>2]=5312;a=J[e+4>>2];J[b+88>>2]=J[e>>2];J[b+92>>2]=a;a=J[e+12>>2];J[b+96>>2]=J[e+8>>2];J[b+100>>2]=a;a=b;break i;case 5:break j;default:break i}}a=oa(144);J[a+4>>2]=k;J[a>>2]=3456;b=J[d+4>>2];J[a+8>>2]=J[d>>2];J[a+12>>2]=b;b=J[d+12>>2];J[a+16>>2]=J[d+8>>2];J[a+20>>2]=b;b=J[d+20>>2];J[a+24>>2]=J[d+16>>2];J[a+28>>2]=b;J[a+40>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;k:{l:{c=J[d+28>>2];b=J[d+24>>2];if((c|0)!=(b|0)){c=c-b|0;if((c|0)<0){break l}b=oa(c);J[a+36>>2]=b;J[a+32>>2]=b;J[a+40>>2]=(c&-4)+b;c=J[d+24>>2];f=J[d+28>>2];if((c|0)!=(f|0)){while(1){J[b>>2]=J[c>>2];b=b+4|0;c=c+4|0;if((f|0)!=(c|0)){continue}break}}J[a+36>>2]=b}J[a>>2]=5020;b=J[e+4>>2];J[a+44>>2]=J[e>>2];J[a+48>>2]=b;b=J[e+12>>2];J[a+52>>2]=J[e+8>>2];J[a+56>>2]=b;b=a- -64|0;J[b>>2]=0;J[b+4>>2]=0;J[a+60>>2]=6120;J[a>>2]=5536;b=J[e+4>>2];J[a+72>>2]=J[e>>2];J[a+76>>2]=b;b=J[e+12>>2];J[a+80>>2]=J[e+8>>2];J[a+84>>2]=b;J[a+104>>2]=1065353216;J[a+108>>2]=-1;J[a+96>>2]=-1;J[a+100>>2]=-1;J[a+88>>2]=1;J[a+92>>2]=-1;J[a+60>>2]=5756;J[a+112>>2]=0;J[a+116>>2]=0;J[a+136>>2]=0;J[a+140>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+120>>2]=0;J[a+124>>2]=0;break k}qa();B()}break i}c=a}ba=j+32|0;break b}qa();B()}if(c){break a}}c=oa(44);J[c+4>>2]=l;J[c>>2]=3456;a=J[d+4>>2];J[c+8>>2]=J[d>>2];J[c+12>>2]=a;a=J[d+12>>2];J[c+16>>2]=J[d+8>>2];J[c+20>>2]=a;a=J[d+20>>2];J[c+24>>2]=J[d+16>>2];J[c+28>>2]=a;J[c+40>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;m:{a=J[d+24>>2];l=J[d+28>>2];if((a|0)!=(l|0)){f=l-a|0;if((f|0)<0){break m}b=oa(f);J[c+32>>2]=b;J[c+40>>2]=(f&-4)+b;while(1){J[b>>2]=J[a>>2];b=b+4|0;a=a+4|0;if((l|0)!=(a|0)){continue}break}J[c+36>>2]=b}J[c>>2]=6148;break a}qa();B()}a=J[i+32>>2];if(a){J[i+36>>2]=a;na(a)}ba=i+48|0;return c|0}function Ne(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,L=0,N=0,O=0,P=0;k=ba-336|0;ba=k;n=h;p=i&65535;o=d;m=e&65535;u=(e^i)&-2147483648;s=i>>>16&32767;q=e>>>16&32767;a:{b:{if(s-32767>>>0>4294934529&q-32767>>>0>=4294934530){break b}j=e&2147483647;if(!(!d&(j|0)==2147418112?!(b|c):j>>>0<2147418112)){r=d;u=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){r=h;u=i|32768;b=f;c=g;break a}if(!(b|d|(j^2147418112|c))){if(!(f|h|(e^2147418112|g))){b=0;c=0;u=2147450880;break a}u=u|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){b=0;c=0;break a}if(!(b|d|(c|j))){b=!(f|h|(e|g));r=b?0:r;u=b?2147450880:u;b=0;c=0;break a}if(!(f|h|(e|g))){u=u|2147418112;b=0;c=0;break a}if((j|0)==65535|j>>>0<65535){d=!(m|o);i=d;j=d?b:o;d=d<<6;h=d;i=S(i?c:m);d=d+((i|0)==32?S(j)+32|0:i)|0;Pa(k+320|0,b,c,o,m,d-15|0);v=16-d|0;o=J[k+328>>2];m=J[k+332>>2];c=J[k+324>>2];b=J[k+320>>2]}if(e>>>0>65535){break b}d=!(n|p);h=d;i=d?f:n;d=d<<6;e=d;h=S(h?g:p);d=d+((h|0)==32?S(i)+32|0:h)|0;Pa(k+304|0,f,g,n,p,d-15|0);v=(d+v|0)-16|0;n=J[k+312>>2];p=J[k+316>>2];f=J[k+304>>2];g=J[k+308>>2]}e=p|65536;A=e;B=n;d=n;j=e<<15|d>>>17;e=d<<15|g>>>17;d=e;i=0-d|0;h=j;j=1963258675-(j+((d|0)!=0)|0)|0;Xa(k+288|0,d,h,0,0,i,j,0,0);d=J[k+296>>2];Xa(k+272|0,0-d|0,0-(J[k+300>>2]+((d|0)!=0)|0)|0,0,0,i,j,0,0);d=J[k+280>>2];i=d<<1|J[k+276>>2]>>>31;d=J[k+284>>2]<<1|d>>>31;Xa(k+256|0,i,d,0,0,e,h,0,0);j=J[k+264>>2];Xa(k+240|0,i,d,0,0,0-j|0,0-(J[k+268>>2]+((j|0)!=0)|0)|0,0,0);i=J[k+248>>2];j=i<<1|J[k+244>>2]>>>31;d=J[k+252>>2]<<1|i>>>31;Xa(k+224|0,j,d,0,0,e,h,0,0);i=J[k+232>>2];Xa(k+208|0,j,d,0,0,0-i|0,0-(J[k+236>>2]+((i|0)!=0)|0)|0,0,0);d=J[k+216>>2];i=d<<1|J[k+212>>2]>>>31;d=J[k+220>>2]<<1|d>>>31;Xa(k+192|0,i,d,0,0,e,h,0,0);j=J[k+200>>2];Xa(k+176|0,i,d,0,0,0-j|0,0-(J[k+204>>2]+((j|0)!=0)|0)|0,0,0);i=e;e=J[k+184>>2];d=h;n=e<<1|J[k+180>>2]>>>31;h=n-1|0;e=(J[k+188>>2]<<1|e>>>31)-!n|0;Xa(k+160|0,i,d,0,0,h,e,0,0);d=h;Xa(k+144|0,f<<15,g<<15|f>>>17,0,0,d,e,0,0);t=k+112|0;y=J[k+168>>2];h=J[k+172>>2];n=J[k+160>>2];i=J[k+152>>2];l=n+i|0;p=J[k+164>>2];j=p+J[k+156>>2]|0;j=i>>>0>l>>>0?j+1|0:j;i=j;j=(p|0)==(j|0)&l>>>0<n>>>0|j>>>0<p>>>0;p=j+y|0;j=j>>>0>p>>>0?h+1|0:h;n=!i&l>>>0>1|(i|0)!=0;h=n+p|0;j=n>>>0>h>>>0?j+1|0:j;Xa(t,d,e,0,0,0-h|0,0-(((h|0)!=0)+j|0)|0,0,0);Xa(k+128|0,1-l|0,0-((l>>>0>1)+i|0)|0,0,0,d,e,0,0);H=(q-s|0)+v|0;e=J[k+116>>2];t=e;d=J[k+112>>2];j=e<<1|d>>>31;n=d<<1;q=j;d=j;h=J[k+140>>2];z=h;e=J[k+136>>2];j=h<<1|e>>>31;i=e<<1|J[k+132>>2]>>>31;h=i+n|0;d=d+j|0;d=h>>>0<i>>>0?d+1|0:d;e=d;d=d-(h>>>0<13927)|0;x=d;y=d;l=0;j=m|65536;I=j;K=o;d=o;j=j<<1|d>>>31;N=d<<1;O=j;D=j;d=Hl(x,l,j,0);j=ca;E=d;w=j;v=b<<1;d=c<<1|b>>>31;s=d;j=0;p=j;i=h-13927|0;x=(e|0)==(x|0)&i>>>0<h>>>0|e>>>0>x>>>0;e=(e|0)==(q|0)&h>>>0<n>>>0|e>>>0<q>>>0;d=J[k+120>>2];h=J[k+124>>2]<<1|d>>>31;d=d<<1|t>>>31;j=h;l=z>>>31|0;d=l+d|0;j=d>>>0<l>>>0?j+1|0:j;h=d;d=d+e|0;l=h>>>0>d>>>0?j+1|0:j;e=d;d=d+x|0;l=e>>>0>d>>>0?l+1|0:l;e=d-1|0;x=l-!d|0;q=0;j=Hl(s,p,x,q);d=j+E|0;h=ca+w|0;h=d>>>0<j>>>0?h+1|0:h;t=(w|0)==(h|0)&d>>>0<E>>>0|h>>>0<w>>>0;j=0;z=e;L=c>>>31|0;C=L|o<<1;w=0;e=Hl(e,j,C,w);o=e+d|0;j=ca+h|0;l=0;j=e>>>0>o>>>0?j+1|0:j;n=j;d=(j|0)==(h|0)&d>>>0>o>>>0|h>>>0>j>>>0;e=d;d=d+t|0;l=e>>>0>d>>>0?1:l;e=Hl(D,p,x,q);d=e+d|0;j=ca+l|0;t=d;d=d>>>0<e>>>0?j+1|0:j;e=Hl(D,p,z,w);m=ca;h=e;e=Hl(C,w,x,q);l=h+e|0;j=ca+m|0;j=e>>>0>l>>>0?j+1|0:j;e=j;j=(m|0)==(j|0)&h>>>0>l>>>0|j>>>0<m>>>0;m=t+e|0;d=d+j|0;d=m>>>0<e>>>0?d+1|0:d;t=m;m=d;e=0;d=e+o|0;j=l+n|0;j=d>>>0<e>>>0?j+1|0:j;e=j;h=(j|0)==(n|0)&d>>>0<o>>>0|j>>>0<n>>>0;j=m;l=h;h=h+t|0;j=l>>>0>h>>>0?j+1|0:j;F=h;l=j;t=d;m=d;o=e;E=i;d=Hl(i,0,C,w);h=ca;e=d;i=Hl(y,r,s,r);d=d+i|0;j=ca+h|0;j=d>>>0<i>>>0?j+1|0:j;i=(h|0)==(j|0)&d>>>0<e>>>0|h>>>0>j>>>0;h=j;G=v&-2;e=Hl(z,w,G,0);n=e+d|0;j=ca+j|0;j=e>>>0>n>>>0?j+1|0:j;e=j;d=(j|0)==(h|0)&d>>>0>n>>>0|h>>>0>j>>>0;h=0;i=d+i|0;d=(i>>>0<d>>>0?1:h)+o|0;j=l;m=i+m|0;d=m>>>0<i>>>0?d+1|0:d;i=d;d=(d|0)==(o|0)&m>>>0<t>>>0|d>>>0<o>>>0;h=d;d=d+F|0;j=h>>>0>d>>>0?j+1|0:j;P=d;t=j;d=Hl(D,p,E,r);F=ca;D=d;h=Hl(x,q,G,r);d=d+h|0;j=ca+F|0;o=d;p=Hl(y,r,C,w);l=d+p|0;h=d>>>0<h>>>0?j+1|0:j;d=h+ca|0;d=l>>>0<p>>>0?d+1|0:d;q=l;j=Hl(s,r,z,w);p=l+j|0;l=ca+d|0;l=j>>>0>p>>>0?l+1|0:l;z=0;C=(d|0)==(l|0)&p>>>0<q>>>0|d>>>0>l>>>0;j=(h|0)==(F|0)&o>>>0<D>>>0|h>>>0<F>>>0;d=(d|0)==(h|0)&o>>>0>q>>>0|d>>>0<h>>>0;d=d+j|0;d=d+C|0;h=l;q=h+m|0;j=(d|z)+i|0;j=h>>>0>q>>>0?j+1|0:j;o=j;d=(i|0)==(j|0)&m>>>0>q>>>0|i>>>0>j>>>0;j=t;h=d;d=d+P|0;j=h>>>0>d>>>0?j+1|0:j;z=d;i=j;d=Hl(y,r,G,r);y=ca;m=d;h=Hl(s,r,E,r);d=d+h|0;j=ca+y|0;j=d>>>0<h>>>0?j+1|0:j;t=0;h=(j|0)==(y|0)&d>>>0<m>>>0|j>>>0<y>>>0;m=j;d=j+n|0;j=(h|t)+e|0;j=d>>>0<m>>>0?j+1|0:j;h=j;m=(e|0)==(j|0)&d>>>0<n>>>0|e>>>0>j>>>0;j=p;p=0;n=p+d|0;l=h+j|0;j=0;l=n>>>0<p>>>0?l+1|0:l;d=(h|0)==(l|0)&d>>>0>n>>>0|h>>>0>l>>>0;e=d;d=d+m|0;j=(e>>>0>d>>>0?1:j)+o|0;l=i;e=d;d=d+q|0;j=e>>>0>d>>>0?j+1|0:j;e=j;h=(o|0)==(j|0)&d>>>0<q>>>0|j>>>0<o>>>0;i=h;h=h+z|0;l=i>>>0>h>>>0?l+1|0:l;i=l;c:{if((l|0)==131071|l>>>0<131071){K=N|L;I=w|O;Xa(k+80|0,d,e,h,i,f,g,B,A);l=J[k+84>>2];p=l;j=b<<17;n=0;m=J[k+88>>2];c=n-m|0;b=J[k+80>>2];l=(l|b)!=0;o=c-l|0;m=(j-(J[k+92>>2]+(m>>>0>n>>>0)|0)|0)-(c>>>0<l>>>0)|0;n=0-b|0;p=0-(((b|0)!=0)+p|0)|0;b=H+16382|0;break c}d=(e&1)<<31|d>>>1;e=h<<31|e>>>1;h=(i&1)<<31|h>>>1;i=i>>>1|0;Xa(k+96|0,d,e,h,i,f,g,B,A);o=J[k+100>>2];s=o;v=J[k+104>>2];n=0-v|0;l=J[k+96>>2];m=(o|l)!=0;o=n-m|0;m=((b<<16)-(J[k+108>>2]+(p>>>0<v>>>0)|0)|0)-(m>>>0>n>>>0)|0;n=0-l|0;p=0-(((l|0)!=0)+s|0)|0;v=b;s=c;b=H+16383|0}if((b|0)>=32767){u=u|2147418112;b=0;c=0;break a}d:{if((b|0)>0){l=m<<1|o>>>31;o=o<<1|p>>>31;m=l;v=h;s=i&65535|b<<16;l=p<<1|n>>>31;i=n<<1;break d}if((b|0)<=-113){b=0;c=0;break a}Gb(k- -64|0,d,e,h,i,1-b|0);Pa(k+48|0,v,s,K,I,b+112|0);d=J[k+64>>2];e=J[k+68>>2];v=J[k+72>>2];s=J[k+76>>2];Xa(k+32|0,f,g,B,A,d,e,v,s);b=J[k+40>>2];c=J[k+56>>2];l=J[k+36>>2];o=b<<1|l>>>31;n=c-o|0;m=J[k+60>>2]-((J[k+44>>2]<<1|b>>>31)+(c>>>0<o>>>0)|0)|0;b=J[k+32>>2];h=l<<1|b>>>31;j=b<<1;i=J[k+52>>2];c=J[k+48>>2];b=(h|0)==(i|0)&j>>>0>c>>>0|h>>>0>i>>>0;o=n-b|0;m=m-(b>>>0>n>>>0)|0;l=i-((c>>>0<j>>>0)+h|0)|0;i=c-j|0}b=i;Xa(k+16|0,f,g,B,A,3,0,0,0);Xa(k,f,g,B,A,5,0,0,0);c=0;h=l+c|0;j=d&1;b=b+j|0;h=i>>>0>b>>>0?h+1|0:h;i=b;g=(g|0)==(h|0)&b>>>0>f>>>0|g>>>0<h>>>0;l=m;b=(c|0)==(h|0)&b>>>0<j>>>0|c>>>0>h>>>0;f=b+o|0;l=b>>>0>f>>>0?l+1|0:l;j=e;b=(l|0)==(A|0);b=b&(f|0)==(B|0)?g:b&f>>>0>B>>>0|l>>>0>A>>>0;c=b;b=b+d|0;j=c>>>0>b>>>0?j+1|0:j;c=j;d=(e|0)==(j|0)&b>>>0<d>>>0|e>>>0>j>>>0;j=s;e=d;d=d+v|0;j=e>>>0>d>>>0?j+1|0:j;g=d;e=J[k+20>>2];m=(e|0)==(h|0)&M[k+16>>2]<i>>>0|e>>>0<h>>>0;e=J[k+28>>2];d=J[k+24>>2];e=j>>>0<2147418112&((d|0)==(f|0)&(e|0)==(l|0)?m:(e|0)==(l|0)&d>>>0<f>>>0|e>>>0<l>>>0);d=c;m=e;e=b+e|0;d=m>>>0>e>>>0?d+1|0:d;b=(c|0)==(d|0)&b>>>0>e>>>0|c>>>0>d>>>0;c=b;b=b+g|0;j=c>>>0>b>>>0?j+1|0:j;g=b;c=J[k+4>>2];h=(c|0)==(h|0)&M[k>>2]<i>>>0|c>>>0<h>>>0;c=J[k+12>>2];b=J[k+8>>2];b=j>>>0<2147418112&((b|0)==(f|0)&(c|0)==(l|0)?h:(c|0)==(l|0)&b>>>0<f>>>0|c>>>0<l>>>0);c=b;b=b+e|0;l=c>>>0>b>>>0?d+1|0:d;c=l;e=(d|0)==(l|0)&b>>>0<e>>>0|d>>>0>l>>>0;d=j;f=e;e=e+g|0;d=f>>>0>e>>>0?d+1|0:d;r=e|r;u=d|u}J[a>>2]=b;J[a+4>>2]=c;J[a+8>>2]=r;J[a+12>>2]=u;ba=k+336|0}function ye(a,b,c,d,e){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,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,L=0,N=0,O=0,Q=0;s=ba-32|0;ba=s;J[a>>2]=J[d>>2];d=J[c>>2]-J[b>>2]|0;J[a+4>>2]=d;t=J[e+20>>2];if(!J[e+16>>2]&(t|0)<=0|(t|0)<0){d=a+4|0;sa(e,J[e+4>>2],a,d);t=J[e+20>>2];if(!J[e+16>>2]&(t|0)<=0|(t|0)<0){sa(e,J[e+4>>2],d,a+8|0)}d=J[d>>2]}if(d){F=a+12|0;za(F);G=a+44|0;d=G;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];H=a- -64|0;d=H;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];I=a+84|0;d=I;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];J[s+24>>2]=J[b+8>>2];d=J[b+4>>2];J[s+16>>2]=J[b>>2];J[s+20>>2]=d;J[s+8>>2]=J[c+8>>2];b=J[c+4>>2];J[s>>2]=J[c>>2];J[s+4>>2]=b;c=0;b=0;f=ba-32|0;ba=f;o=a;i=J[a+8>>2];J[f+16>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;a:{b:{if(i){if(i>>>0>=1073741824){break b}a=i<<2;c=oa(a);J[f+8>>2]=c;b=a+c|0;J[f+16>>2]=b;pa(c,0,a);J[f+12>>2]=b}a=J[o+140>>2];d=J[a>>2];if(d){J[a+4>>2]=d;na(d);i=J[o+8>>2];c=J[f+8>>2];b=J[f+12>>2]}J[a+4>>2]=b;J[a>>2]=c;J[a+8>>2]=J[f+16>>2];c=0;J[f+16>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;b=0;c:{if(i){if(i>>>0>=1073741824){break c}a=i<<2;b=oa(a);J[f+8>>2]=b;c=a+b|0;J[f+16>>2]=c;pa(b,0,a);J[f+12>>2]=c}a=J[o+152>>2];d=J[a>>2];if(d){J[a+4>>2]=d;na(d);c=J[f+12>>2];b=J[f+8>>2]}J[a+4>>2]=c;J[a>>2]=b;J[a+8>>2]=J[f+16>>2];t=J[s+20>>2];z=J[s+24>>2];d=J[s+4>>2];C=J[s+8>>2];b=J[s>>2];c=J[s+16>>2];J[f+24>>2]=0;J[f+28>>2]=0;J[f+16>>2]=0;J[f+20>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;fb(f+8|0);a=J[f+24>>2]+J[f+28>>2]|0;v=(a>>>0)/113|0;a=J[J[f+12>>2]+(v<<2)>>2]+P(a-P(v,113)|0,36)|0;J[a+32>>2]=0;J[a+28>>2]=b-c;J[a+24>>2]=0;J[a+16>>2]=d;J[a+20>>2]=C;J[a+12>>2]=b;J[a+4>>2]=t;J[a+8>>2]=z;J[a>>2]=c;i=J[f+28>>2]+1|0;J[f+28>>2]=i;if(i){a=z;L=a&-4;K=a&3;N=o+44|0;m=o+12|0;O=o+84|0;Q=a>>>0<4;while(1){b=J[f+12>>2];h=J[f+24>>2];g=i-1|0;a=h+g|0;c=(a>>>0)/113|0;a=J[b+(c<<2)>>2]+P(a-P(c,113)|0,36)|0;E=J[a+32>>2];c=J[a+24>>2];v=J[a+12>>2];a=J[a>>2];J[f+28>>2]=g;g=J[f+16>>2];if((((b|0)!=(g|0)?P(g-b>>2,113)-1|0:0)-(h+i|0)|0)+1>>>0>=226){na(J[g-4>>2]);J[f+16>>2]=J[f+16>>2]-4}g=J[o>>2];i=(c|0)!=(J[o+8>>2]-1|0)?c+1|0:0;q=i<<2;D=P(E,12);h=D+J[o+152>>2]|0;c=J[q+J[h>>2]>>2];d:{e:{if((g|0)==(c|0)){break e}f:{g:{j=v-a|0;if(j>>>0<=2){g=J[o+128>>2];J[g>>2]=i;c=1;b=J[o+8>>2];if(b>>>0>1){break g}break f}h=J[o+140>>2];b=h+D|0;n=h;h=D+12|0;bb(n+h|0,J[b>>2],J[b+4>>2]);b=J[h+J[o+140>>2]>>2]+q|0;g=J[b>>2]+(1<<g+(c^-1))|0;J[b>>2]=g;b=a;h:{if((a|0)==(v|0)){break h}y=J[t+24>>2];n=y+q|0;b=v;c=a;if(!z){if(g>>>0>M[n>>2]){break h}while(1){b=b-1|0;if((c|0)==(b|0)){b=c;break h}if(g>>>0<=M[(J[d+24>>2]+q|0)+(P(b,C)<<2)>>2]){continue}c=c+1|0;if((c|0)!=(b|0)){continue}break}break h}while(1){h=P(c,z)<<2;if(g>>>0>M[h+n>>2]){c=c+1|0;if((c|0)!=(b|0)){continue}break h}while(1){b=b-1|0;if((c|0)==(b|0)){b=c;break h}r=J[d+24>>2]+(P(b,C)<<2)|0;if(g>>>0<=M[r+q>>2]){continue}break}w=h+y|0;u=0;h=0;p=0;if(!Q){while(1){k=h<<2;l=k+w|0;x=J[l>>2];A=l;l=k+r|0;J[A>>2]=J[l>>2];J[l>>2]=x;l=k|4;x=l+w|0;A=J[x>>2];l=l+r|0;J[x>>2]=J[l>>2];J[l>>2]=A;l=k|8;x=l+w|0;A=J[x>>2];l=l+r|0;J[x>>2]=J[l>>2];J[l>>2]=A;k=k|12;l=k+w|0;x=J[l>>2];k=k+r|0;J[l>>2]=J[k>>2];J[k>>2]=x;h=h+4|0;p=p+4|0;if((L|0)!=(p|0)){continue}break}}if(K){while(1){k=h<<2;p=k+w|0;l=J[p>>2];k=k+r|0;J[p>>2]=J[k>>2];J[k>>2]=l;h=h+1|0;u=u+1|0;if((K|0)!=(u|0)){continue}break}}c=c+1|0;if((c|0)!=(b|0)){continue}break}}r=b-a|0;w=v-b|0;if((r|0)!=(w|0)){xc(O,r>>>0<w>>>0)}c=J[m>>2];n=J[c+8>>2];g=J[c+12>>2];h=(j>>>1|0)-(r>>>0<w>>>0?r:w)|0;h=h<<24|(h&65280)<<8|(h>>>8&65280|h>>>24);h=h>>>4&252645135|(h&252645135)<<4;h=h>>>2&858993459|(h&858993459)<<2;l=h>>>1&1431655765|(h&1431655765)<<1;h=S(j)^31;p=32-h|0;k=l>>>p|0;j=Kl(k);n=j+n|0;g=j>>>0>n>>>0?g+1|0:g;J[c+8>>2]=n;J[c+12>>2]=g;g=h-j|0;n=g;j=g+J[c>>2]|0;g=J[c+4>>2]+(g>>31)|0;J[c>>2]=j;J[c+4>>2]=j>>>0<n>>>0?g+1|0:g;i:{j:{k:{l:{c=J[m+28>>2];u=32-c|0;m:{if((u|0)>=(h|0)){g=c+h|0;J[m+28>>2]=g;n=J[m+24>>2]&(-1>>>p<<c^-1)|k<<c;J[m+24>>2]=n;if((g|0)!=32){break i}c=J[m+16>>2];if((c|0)!=J[m+20>>2]){J[c>>2]=n;J[m+16>>2]=c+4;h=0;c=0;break m}g=c;c=J[m+12>>2];k=g-c|0;u=k>>2;j=u+1|0;if(j>>>0>=1073741824){break l}h=0;g=0;p=k>>>1|0;j=k>>>0>=2147483644?1073741823:j>>>0<p>>>0?p:j;if(j){if(j>>>0>=1073741824){break k}g=oa(j<<2)}u=(u<<2)+g|0;J[u>>2]=n;g=ta(g,c,k);J[m+20>>2]=g+(j<<2);J[m+16>>2]=u+4;J[m+12>>2]=g;if(!c){c=0;break m}na(c);c=0;break m}p=J[m+24>>2]&(-1<<c^-1)|k<<c;J[m+24>>2]=p;c=J[m+16>>2];n:{if((c|0)!=J[m+20>>2]){J[c>>2]=p;J[m+16>>2]=c+4;break n}g=c;c=J[m+12>>2];g=g-c|0;y=g>>2;j=y+1|0;if(j>>>0>=1073741824){break j}n=g>>>1|0;j=g>>>0>=2147483644?1073741823:j>>>0<n>>>0?n:j;if(j){if(j>>>0>=1073741824){break k}n=oa(j<<2)}else{n=0}y=n+(y<<2)|0;J[y>>2]=p;g=ta(n,c,g);J[m+20>>2]=g+(j<<2);J[m+16>>2]=y+4;J[m+12>>2]=g;if(!c){break n}na(c)}c=h-u|0;h=-1>>>32-c&k>>>u}J[m+28>>2]=c;J[m+24>>2]=h;break i}qa();B()}xa();B()}qa();B()}c=J[o+152>>2];g=c+D|0;h=J[g>>2];q=h+q|0;J[q>>2]=J[q>>2]+1;q=E+1|0;bb(c+P(q,12)|0,h,J[g+4>>2]);if((a|0)!=(b|0)){h=J[f+28>>2]+J[f+24>>2]|0;c=J[f+16>>2];g=J[f+12>>2];if((h|0)==(((c|0)!=(g|0)?P(c-g>>2,113)-1|0:0)|0)){fb(f+8|0);h=J[f+24>>2]+J[f+28>>2]|0;g=J[f+12>>2]}c=(h>>>0)/113|0;c=J[g+(c<<2)>>2]+P(h-P(c,113)|0,36)|0;J[c+32>>2]=E;J[c+28>>2]=r;J[c+24>>2]=i;J[c+16>>2]=t;J[c+12>>2]=b;J[c+4>>2]=t;J[c+8>>2]=z;J[c>>2]=a;J[c+20>>2]=z;J[f+28>>2]=J[f+28>>2]+1}if((b|0)==(v|0)){break e}g=J[f+28>>2]+J[f+24>>2]|0;a=J[f+16>>2];c=J[f+12>>2];if((g|0)==(((a|0)!=(c|0)?P(a-c>>2,113)-1|0:0)|0)){fb(f+8|0);g=J[f+24>>2]+J[f+28>>2]|0;c=J[f+12>>2]}a=(g>>>0)/113|0;a=J[c+(a<<2)>>2]+P(g-P(a,113)|0,36)|0;J[a+32>>2]=q;J[a+28>>2]=w;J[a+24>>2]=i;J[a+16>>2]=d;J[a+20>>2]=C;J[a+12>>2]=v;J[a+4>>2]=t;J[a>>2]=b;J[a+8>>2]=z;i=J[f+28>>2]+1|0;J[f+28>>2]=i;break d}while(1){i=(b-1|0)!=(i|0)?i+1|0:0;J[g+(c<<2)>>2]=i;b=J[o+8>>2];c=c+1|0;if(b>>>0>c>>>0){continue}break}}if(!b|(a|0)==(v|0)){break e}g=0;c=1;while(1){i=0;o:{if(!c){c=0;break o}v=J[t+24>>2]+(P(J[t+4>>2],a+g|0)<<2)|0;while(1){c=J[o>>2];q=J[J[o+128>>2]+(i<<2)>>2]<<2;r=J[q+J[h>>2]>>2];if((c|0)!=(r|0)){Ib(N,c-r|0,J[v+q>>2]);b=J[o+8>>2]}c=b;i=i+1|0;if(c>>>0>i>>>0){continue}break}}g=g+1|0;if((j|0)!=(g|0)){continue}break}}i=J[f+28>>2]}if(i){continue}break}}J[f+28>>2]=0;a=J[f+16>>2];i=J[f+12>>2];b=a-i|0;if(b>>>0>=9){while(1){na(J[i>>2]);i=J[f+12>>2]+4|0;J[f+12>>2]=i;a=J[f+16>>2];b=a-i|0;if(b>>>0>8){continue}break}}c=56;p:{switch((b>>>2|0)-1|0){case 1:c=113;case 0:J[f+24>>2]=c;break;default:break p}}q:{if((a|0)==(i|0)){break q}while(1){na(J[i>>2]);i=i+4|0;if((i|0)!=(a|0)){continue}break}a=J[f+16>>2];b=J[f+12>>2];if((a|0)==(b|0)){break q}J[f+16>>2]=a+((b-a|0)+3&-4)}a=J[f+8>>2];if(a){na(a)}ba=f+32|0;break a}qa();B()}qa();B()}ya(F,e);eb(G,e);eb(H,e);eb(I,e)}ba=s+32|0;return 1}function Re(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,B=0,C=0;m=ba-560|0;ba=m;J[m+44>>2]=0;A(+b);g=v(1)|0;v(0)|0;a:{if((g|0)<0){s=1;y=1173;b=-b;A(+b);g=v(1)|0;v(0)|0;break a}if(e&2048){s=1;y=1176;break a}s=e&1;y=s?1179:1174;z=!s}b:{if((g&2146435072)==2146435072){g=s+3|0;Qa(a,32,c,g,e&-65537);Oa(a,y,s);d=f&32;Oa(a,b!=b?d?1434:1643:d?1506:1647,3);Qa(a,32,c,g,e^8192);n=(c|0)<(g|0)?g:c;break b}u=m+16|0;c:{d:{e:{b=Ve(b,m+44|0);b=b+b;if(b!=0){g=J[m+44>>2];J[m+44>>2]=g-1;w=f|32;if((w|0)!=97){break e}break c}w=f|32;if((w|0)==97){break c}k=J[m+44>>2];l=(d|0)<0?6:d;break d}k=g-29|0;J[m+44>>2]=k;b=b*268435456;l=(d|0)<0?6:d}q=(m+48|0)+((k|0)>=0?288:0)|0;h=q;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}J[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((k|0)<=0){d=k;g=h;i=q;break f}i=q;d=k;while(1){o=(d|0)>=29?29:d;g=h-4|0;g:{if(i>>>0>g>>>0){break g}d=0;while(1){j=J[g>>2];x=d;d=o&31;if((o&63)>>>0>=32){n=j<<d;d=0}else{n=(1<<d)-1&j>>>32-d;d=j<<d}x=x+d|0;j=n+p|0;d=Jl(x,d>>>0>x>>>0?j+1|0:j,1e9,0);B=g,C=x-Hl(d,ca,1e9,0)|0,J[B>>2]=C;g=g-4|0;if(i>>>0<=g>>>0){continue}break}if(!d){break g}i=i-4|0;J[i>>2]=d}while(1){g=h;if(i>>>0<g>>>0){h=g-4|0;if(!J[h>>2]){continue}}break}d=J[m+44>>2]-o|0;J[m+44>>2]=d;h=g;if((d|0)>0){continue}break}}if((d|0)<0){t=((l+25>>>0)/9|0)+1|0;p=(w|0)==102;while(1){d=0-d|0;n=(d|0)>=9?9:d;h:{if(g>>>0<=i>>>0){h=J[i>>2];break h}o=1e9>>>n|0;j=-1<<n^-1;d=0;h=i;while(1){x=d;d=J[h>>2];J[h>>2]=x+(d>>>n|0);d=P(o,d&j);h=h+4|0;if(h>>>0<g>>>0){continue}break}h=J[i>>2];if(!d){break h}J[g>>2]=d;g=g+4|0}d=n+J[m+44>>2]|0;J[m+44>>2]=d;i=(!h<<2)+i|0;h=p?q:i;g=g-h>>2>(t|0)?h+(t<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=i>>>0){break i}d=P(q-i>>2,9);h=10;j=J[i>>2];if(j>>>0<10){break i}while(1){d=d+1|0;h=P(h,10);if(j>>>0>=h>>>0){continue}break}}h=(l-((w|0)!=102?d:0)|0)-((w|0)==103&(l|0)!=0)|0;if((h|0)<(P(g-q>>2,9)-9|0)){o=h+9216|0;j=(o|0)/9|0;k=((((k|0)<0?4:292)+m|0)+(j<<2)|0)-4048|0;h=10;n=o-P(j,9)|0;if((n|0)<=7){while(1){h=P(h,10);n=n+1|0;if((n|0)!=8){continue}break}}o=J[k>>2];t=(o>>>0)/(h>>>0)|0;p=o-P(h,t)|0;j=k+4|0;j:{if(!p&(j|0)==(g|0)){break j}k:{if(!(t&1)){b=9007199254740992;if(!(H[k-4|0]&1)|((h|0)!=1e9|i>>>0>=k>>>0)){break k}}b=9007199254740994}r=(g|0)==(j|0)?1:1.5;j=h>>>1|0;r=j>>>0>p>>>0?.5:(j|0)==(p|0)?r:1.5;if(!(K[y|0]!=45|z)){r=-r;b=-b}j=o-p|0;J[k>>2]=j;if(b+r==b){break j}d=h+j|0;J[k>>2]=d;if(d>>>0>=1e9){while(1){J[k>>2]=0;k=k-4|0;if(k>>>0<i>>>0){i=i-4|0;J[i>>2]=0}d=J[k>>2]+1|0;J[k>>2]=d;if(d>>>0>999999999){continue}break}}d=P(q-i>>2,9);h=10;j=J[i>>2];if(j>>>0<10){break j}while(1){d=d+1|0;h=P(h,10);if(j>>>0>=h>>>0){continue}break}}h=k+4|0;g=g>>>0>h>>>0?h:g}while(1){j=g;o=g>>>0<=i>>>0;if(!o){g=j-4|0;if(!J[g>>2]){continue}}break}l:{if((w|0)!=103){k=e&8;break l}h=l?l:1;g=(h|0)>(d|0)&(d|0)>-5;l=(g?d^-1:-1)+h|0;f=(g?-1:-2)+f|0;k=e&8;if(k){break l}g=-9;m:{if(o){break m}k=J[j-4>>2];if(!k){break m}n=10;g=0;if((k>>>0)%10|0){break m}while(1){h=g;g=g+1|0;n=P(n,10);if(!((k>>>0)%(n>>>0)|0)){continue}break}g=h^-1}h=P(j-q>>2,9);if((f&-33)==70){k=0;g=(g+h|0)-9|0;g=(g|0)>0?g:0;l=(g|0)>(l|0)?l:g;break l}k=0;g=((d+h|0)+g|0)-9|0;g=(g|0)>0?g:0;l=(g|0)>(l|0)?l:g}n=-1;o=k|l;if(((o?2147483645:2147483646)|0)<(l|0)){break b}p=(((o|0)!=0)+l|0)+1|0;h=f&-33;n:{if((h|0)==70){if((p^2147483647)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=Mb((g^d)-g|0,0,u);if((u-g|0)<=1){while(1){g=g-1|0;H[g|0]=48;if((u-g|0)<2){continue}break}}t=g-2|0;H[t|0]=f;H[g-1|0]=(d|0)<0?45:43;g=u-t|0;if((g|0)>(p^2147483647)){break b}}d=g+p|0;if((d|0)>(s^2147483647)){break b}p=d+s|0;Qa(a,32,c,p,e);Oa(a,y,s);Qa(a,48,c,p,e^65536);o:{p:{q:{if((h|0)==70){f=m+16|0;d=f|8;k=f|9;h=i>>>0>q>>>0?q:i;i=h;while(1){g=Mb(J[i>>2],0,k);r:{if((h|0)!=(i|0)){if(m+16>>>0>=g>>>0){break r}while(1){g=g-1|0;H[g|0]=48;if(m+16>>>0<g>>>0){continue}break}break r}if((g|0)!=(k|0)){break r}H[m+24|0]=48;g=d}Oa(a,g,k-g|0);i=i+4|0;if(q>>>0>=i>>>0){continue}break}if(o){Oa(a,1981,1)}if((l|0)<=0|i>>>0>=j>>>0){break q}while(1){g=Mb(J[i>>2],0,k);if(g>>>0>m+16>>>0){while(1){g=g-1|0;H[g|0]=48;if(m+16>>>0<g>>>0){continue}break}}Oa(a,g,(l|0)>=9?9:l);g=l-9|0;i=i+4|0;if(j>>>0<=i>>>0){break p}d=(l|0)>9;l=g;if(d){continue}break}break p}s:{if((l|0)<0){break s}q=i>>>0<j>>>0?j:i+4|0;f=m+16|0;d=f|8;j=f|9;h=i;while(1){g=Mb(J[h>>2],0,j);if((j|0)==(g|0)){H[m+24|0]=48;g=d}t:{if((h|0)!=(i|0)){if(m+16>>>0>=g>>>0){break t}while(1){g=g-1|0;H[g|0]=48;if(m+16>>>0<g>>>0){continue}break}break t}Oa(a,g,1);g=g+1|0;if(!(k|l)){break t}Oa(a,1981,1)}f=j-g|0;Oa(a,g,(f|0)>(l|0)?l:f);l=l-f|0;h=h+4|0;if(q>>>0<=h>>>0){break s}if((l|0)>=0){continue}break}}Qa(a,48,l+18|0,18,0);Oa(a,t,u-t|0);break o}g=l}Qa(a,48,g+9|0,9,0)}Qa(a,32,c,p,e^8192);n=(c|0)<(p|0)?p:c;break b}k=(f<<26>>31&9)+y|0;u:{if(d>>>0>11){break u}g=12-d|0;r=16;while(1){r=r*16;g=g-1|0;if(g){continue}break}if(K[k|0]==45){b=-(r+(-b-r));break u}b=b+r-r}g=J[m+44>>2];h=g>>31;g=Mb((g^h)-h|0,0,u);if((u|0)==(g|0)){H[m+15|0]=48;g=m+15|0}q=s|2;i=f&32;h=J[m+44>>2];l=g-2|0;H[l|0]=f+15;H[g-1|0]=(h|0)<0?45:43;g=e&8;h=m+16|0;while(1){f=h;if(R(b)<2147483648){j=~~b}else{j=-2147483648}H[h|0]=i|K[j+17776|0];b=(b-+(j|0))*16;h=f+1|0;if(!(!((d|0)>0|g)&b==0|(h-(m+16|0)|0)!=1)){H[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}n=-1;g=u-l|0;f=g+q|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}i=h-(m+16|0)|0;if((i-2|0)>=(d|0)){break w}d=d+2|0;break v}i=h-(m+16|0)|0;d=i}f=d+f|0;Qa(a,32,c,f,e);Oa(a,k,q);Qa(a,48,c,f,e^65536);Oa(a,m+16|0,i);Qa(a,48,d-i|0,0,0);Oa(a,l,g);Qa(a,32,c,f,e^8192);n=(c|0)<(f|0)?f:c}ba=m+560|0;return n|0}function Ae(a,b,c,d,e){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,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,L=0,N=0,O=0,Q=0;o=ba-32|0;ba=o;J[a>>2]=J[d>>2];d=J[c>>2]-J[b>>2]|0;J[a+4>>2]=d;p=J[e+20>>2];if(!J[e+16>>2]&(p|0)<=0|(p|0)<0){d=a+4|0;sa(e,J[e+4>>2],a,d);p=J[e+20>>2];if(!J[e+16>>2]&(p|0)<=0|(p|0)<0){sa(e,J[e+4>>2],d,a+8|0)}d=J[d>>2]}if(d){C=a+12|0;te(C);D=a+1068|0;d=D;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];E=a+1088|0;d=E;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];F=a+1108|0;d=F;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];J[o+24>>2]=J[b+8>>2];d=J[b+4>>2];J[o+16>>2]=J[b>>2];J[o+20>>2]=d;J[o+8>>2]=J[c+8>>2];b=J[c+4>>2];J[o>>2]=J[c>>2];J[o+4>>2]=b;b=0;f=ba-32|0;ba=f;l=a;h=J[a+8>>2];J[f+16>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;a:{b:{if(h){if(h>>>0>=1073741824){break b}a=h<<2;b=oa(a);J[f+8>>2]=b;g=a+b|0;J[f+16>>2]=g;pa(b,0,a);J[f+12>>2]=g}a=J[l+1164>>2];c=J[a>>2];if(c){J[a+4>>2]=c;na(c);h=J[l+8>>2];g=J[f+12>>2];b=J[f+8>>2]}J[a+4>>2]=g;J[a>>2]=b;J[a+8>>2]=J[f+16>>2];b=0;J[f+16>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;a=0;c:{if(h){if(h>>>0>=1073741824){break c}c=h<<2;a=oa(c);J[f+8>>2]=a;b=a+c|0;J[f+16>>2]=b;pa(a,0,c);J[f+12>>2]=b}c=J[l+1176>>2];d=J[c>>2];if(d){J[c+4>>2]=d;na(d);b=J[f+12>>2];a=J[f+8>>2]}J[c+4>>2]=b;J[c>>2]=a;J[c+8>>2]=J[f+16>>2];p=J[o+20>>2];u=J[o+24>>2];d=J[o+4>>2];x=J[o+8>>2];b=J[o>>2];c=J[o+16>>2];J[f+24>>2]=0;J[f+28>>2]=0;J[f+16>>2]=0;J[f+20>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;fb(f+8|0);a=J[f+24>>2]+J[f+28>>2]|0;r=(a>>>0)/113|0;a=J[J[f+12>>2]+(r<<2)>>2]+P(a-P(r,113)|0,36)|0;J[a+32>>2]=0;J[a+28>>2]=b-c;J[a+24>>2]=0;J[a+16>>2]=d;J[a+20>>2]=x;J[a+12>>2]=b;J[a+4>>2]=p;J[a+8>>2]=u;J[a>>2]=c;h=J[f+28>>2]+1|0;J[f+28>>2]=h;if(h){a=u;L=a&-4;G=a&3;N=l+1068|0;H=l+12|0;O=l+1108|0;Q=a>>>0<4;while(1){b=J[f+12>>2];m=J[f+24>>2];j=h-1|0;a=m+j|0;c=(a>>>0)/113|0;a=J[b+(c<<2)>>2]+P(a-P(c,113)|0,36)|0;z=J[a+32>>2];g=J[a+24>>2];r=J[a+12>>2];c=J[a>>2];J[f+28>>2]=j;a=J[f+16>>2];if((((a|0)!=(b|0)?P(a-b>>2,113)-1|0:0)-(h+m|0)|0)+1>>>0>=226){na(J[a-4>>2]);J[f+16>>2]=J[f+16>>2]-4}b=J[l>>2];h=(g|0)!=(J[l+8>>2]-1|0)?g+1|0:0;m=h<<2;y=P(z,12);j=y+J[l+1176>>2]|0;g=J[m+J[j>>2]>>2];d:{e:{if((b|0)==(g|0)){break e}f:{g:{t=r-c|0;if(t>>>0<=2){g=J[l+1152>>2];J[g>>2]=h;b=1;a=J[l+8>>2];if(a>>>0>1){break g}break f}j=J[l+1164>>2];a=j+y|0;i=j;j=y+12|0;bb(i+j|0,J[a>>2],J[a+4>>2]);a=m+J[j+J[l+1164>>2]>>2]|0;j=J[a>>2]+(1<<b+(g^-1))|0;J[a>>2]=j;a=c;h:{if((r|0)==(a|0)){break h}I=J[p+24>>2];K=m+I|0;a=r;b=c;if(!u){if(j>>>0>M[K>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(j>>>0<=M[(m+J[d+24>>2]|0)+(P(a,x)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){g=P(b,u)<<2;if(j>>>0>M[g+K>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}n=J[d+24>>2]+(P(a,x)<<2)|0;if(j>>>0<=M[n+m>>2]){continue}break}q=g+I|0;A=0;g=0;v=0;if(!Q){while(1){k=g<<2;i=k+q|0;s=J[i>>2];w=i;i=k+n|0;J[w>>2]=J[i>>2];J[i>>2]=s;i=k|4;s=i+q|0;w=J[s>>2];i=i+n|0;J[s>>2]=J[i>>2];J[i>>2]=w;i=k|8;s=i+q|0;w=J[s>>2];i=i+n|0;J[s>>2]=J[i>>2];J[i>>2]=w;k=k|12;i=k+q|0;s=J[i>>2];k=k+n|0;J[i>>2]=J[k>>2];J[k>>2]=s;g=g+4|0;v=v+4|0;if((L|0)!=(v|0)){continue}break}}if(G){while(1){k=g<<2;v=k+q|0;i=J[v>>2];k=k+n|0;J[v>>2]=J[k>>2];J[k>>2]=i;g=g+1|0;A=A+1|0;if((A|0)!=(G|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}j=a-c|0;n=r-a|0;if((j|0)!=(n|0)){xc(O,j>>>0<n>>>0)}k=z+1|0;b=S(t);q=b^31;g=t>>>1|0;i:{if(j>>>0<n>>>0){if(!q){break i}t=g-j|0;b=1<<30-b;g=0;while(1){Ca((g<<5)+H|0,(b&t)!=0);b=b>>>1|0;g=g+1|0;if((q|0)!=(g|0)){continue}break}break i}if(!q){break i}t=g-n|0;b=1<<30-b;g=0;while(1){Ca((g<<5)+H|0,(b&t)!=0);b=b>>>1|0;g=g+1|0;if((q|0)!=(g|0)){continue}break}}i=m;b=J[l+1176>>2];g=b+y|0;m=J[g>>2];q=i+m|0;J[q>>2]=J[q>>2]+1;bb(b+P(k,12)|0,m,J[g+4>>2]);if((a|0)!=(c|0)){g=J[f+28>>2]+J[f+24>>2]|0;m=J[f+16>>2];b=J[f+12>>2];if((g|0)==(((b|0)!=(m|0)?P(m-b>>2,113)-1|0:0)|0)){fb(f+8|0);g=J[f+24>>2]+J[f+28>>2]|0;i=J[f+12>>2]}else{i=b}b=(g>>>0)/113|0;b=J[i+(b<<2)>>2]+P(g-P(b,113)|0,36)|0;J[b+32>>2]=z;J[b+28>>2]=j;J[b+24>>2]=h;J[b+16>>2]=p;J[b+12>>2]=a;J[b+4>>2]=p;J[b+8>>2]=u;J[b>>2]=c;J[b+20>>2]=u;J[f+28>>2]=J[f+28>>2]+1}if((a|0)==(r|0)){break e}g=J[f+28>>2]+J[f+24>>2]|0;c=J[f+16>>2];b=J[f+12>>2];if((g|0)==(((b|0)!=(c|0)?P(c-b>>2,113)-1|0:0)|0)){fb(f+8|0);g=J[f+24>>2]+J[f+28>>2]|0;c=J[f+12>>2]}else{c=b}b=(g>>>0)/113|0;b=J[c+(b<<2)>>2]+P(g-P(b,113)|0,36)|0;J[b+32>>2]=k;J[b+28>>2]=n;J[b+24>>2]=h;J[b+16>>2]=d;J[b+20>>2]=x;J[b+12>>2]=r;J[b+4>>2]=p;J[b>>2]=a;J[b+8>>2]=u;h=J[f+28>>2]+1|0;J[f+28>>2]=h;break d}while(1){h=(a-1|0)!=(h|0)?h+1|0:0;J[g+(b<<2)>>2]=h;a=J[l+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}g=0;b=a;if((c|0)==(r|0)){break e}while(1){j:{if(!b){b=0;break j}r=J[p+24>>2]+(P(J[p+4>>2],c+g|0)<<2)|0;h=0;while(1){b=J[l>>2];m=J[J[l+1152>>2]+(h<<2)>>2]<<2;n=J[m+J[j>>2]>>2];if((b|0)!=(n|0)){Ib(N,b-n|0,J[m+r>>2]);a=J[l+8>>2]}b=a;h=h+1|0;if(h>>>0<a>>>0){continue}break}}g=g+1|0;if((t|0)!=(g|0)){continue}break}}h=J[f+28>>2]}if(h){continue}break}}J[f+28>>2]=0;c=J[f+16>>2];h=J[f+12>>2];a=c-h|0;if(a>>>0>=9){while(1){na(J[h>>2]);h=J[f+12>>2]+4|0;J[f+12>>2]=h;c=J[f+16>>2];a=c-h|0;if(a>>>0>8){continue}break}}b=56;k:{switch((a>>>2|0)-1|0){case 1:b=113;case 0:J[f+24>>2]=b;break;default:break k}}l:{if((c|0)==(h|0)){break l}while(1){na(J[h>>2]);h=h+4|0;if((h|0)!=(c|0)){continue}break}a=J[f+16>>2];b=J[f+12>>2];if((a|0)==(b|0)){break l}J[f+16>>2]=a+((b-a|0)+3&-4)}a=J[f+8>>2];if(a){na(a)}ba=f+32|0;break a}qa();B()}qa();B()}se(C,e);eb(D,e);eb(E,e);eb(F,e)}ba=o+32|0;return 1}function Ue(a,b,c,d){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;l=1510;g=ba-80|0;ba=g;J[g+76>>2]=1510;w=g+55|0;r=g+56|0;a:{b:{c:{d:{e:while(1){h=l;if((n^2147483647)<(e|0)){break d}n=e+n|0;f:{g:{h:{e=h;f=K[e|0];if(f){while(1){i:{f=f&255;j:{if(!f){l=e;break j}if((f|0)!=37){break i}f=e;while(1){if(K[f+1|0]!=37){l=f;break j}e=e+1|0;k=K[f+2|0];l=f+2|0;f=l;if((k|0)==37){continue}break}}e=e-h|0;v=n^2147483647;if((e|0)>(v|0)){break d}if(a){Oa(a,h,e)}if(e){continue e}J[g+76>>2]=l;e=l+1|0;o=-1;if(!(K[l+2|0]!=36|H[l+1|0]-48>>>0>=10)){o=H[l+1|0]-48|0;s=1;e=l+3|0}J[g+76>>2]=e;m=0;f=H[e|0];l=f-32|0;k:{if(l>>>0>31){i=e;break k}i=e;l=1<<l;if(!(l&75913)){break k}while(1){i=e+1|0;J[g+76>>2]=i;m=m|l;f=H[e+1|0];l=f-32|0;if(l>>>0>=32){break k}e=i;l=1<<l;if(l&75913){continue}break}}l:{if((f|0)==42){m:{if(!(K[i+2|0]!=36|H[i+1|0]-48>>>0>=10)){J[((H[i+1|0]<<2)+d|0)-192>>2]=10;f=i+3|0;s=1;e=J[((H[i+1|0]<<3)+c|0)-384>>2];break m}if(s){break h}f=i+1|0;if(!a){J[g+76>>2]=f;s=0;p=0;break l}e=J[b>>2];J[b>>2]=e+4;s=0;e=J[e>>2]}J[g+76>>2]=f;p=e;if((e|0)>=0){break l}p=0-p|0;m=m|8192;break l}p=Te(g+76|0);if((p|0)<0){break d}f=J[g+76>>2]}e=0;j=-1;n:{if(K[f|0]!=46){l=f;f=0;break n}if(K[f+1|0]==42){o:{if(!(K[f+3|0]!=36|H[f+2|0]-48>>>0>=10)){J[((H[f+2|0]<<2)+d|0)-192>>2]=10;l=f+4|0;j=J[((H[f+2|0]<<3)+c|0)-384>>2];break o}if(s){break h}l=f+2|0;j=0;if(!a){break o}f=J[b>>2];J[b>>2]=f+4;j=J[f>>2]}J[g+76>>2]=l;f=(j^-1)>>>31|0;break n}J[g+76>>2]=f+1;j=Te(g+76|0);l=J[g+76>>2];f=1}t=f;while(1){q=e;i=28;k=l;e=H[k|0];if(e-123>>>0<4294967238){break c}l=k+1|0;e=K[(e+P(q,58)|0)+17247|0];if(e-1>>>0<8){continue}break}J[g+76>>2]=l;p:{q:{if((e|0)!=27){if(!e){break c}if((o|0)>=0){J[(o<<2)+d>>2]=e;f=(o<<3)+c|0;e=J[f+4>>2];J[g+64>>2]=J[f>>2];J[g+68>>2]=e;break q}if(!a){break f}Se(g- -64|0,e,b);break p}if((o|0)>=0){break c}}e=0;if(!a){continue e}}f=m&-65537;m=m&8192?f:m;o=0;u=1163;i=r;r:{s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{e=H[k|0];e=q?(e&15)==3?e&-33:e:e;switch(e-88|0){case 11:break r;case 9:case 13:case 14:case 15:break s;case 27:break x;case 12:case 17:break A;case 23:break B;case 0:case 32:break C;case 24:break D;case 22:break E;case 29:break F;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break G}}H:{switch(e-65|0){case 0:case 4:case 5:case 6:break s;case 2:break v;case 1:case 3:break g;default:break H}}if((e|0)==83){break w}break g}f=J[g+64>>2];k=J[g+68>>2];e=1163;break z}e=0;I:{switch(q&255){case 0:J[J[g+64>>2]>>2]=n;continue e;case 1:J[J[g+64>>2]>>2]=n;continue e;case 2:h=J[g+64>>2];J[h>>2]=n;J[h+4>>2]=n>>31;continue e;case 3:I[J[g+64>>2]>>1]=n;continue e;case 4:H[J[g+64>>2]]=n;continue e;case 6:J[J[g+64>>2]>>2]=n;continue e;case 7:break I;default:continue e}}h=J[g+64>>2];J[h>>2]=n;J[h+4>>2]=n>>31;continue e}j=j>>>0<=8?8:j;m=m|8;e=120}h=r;f=J[g+64>>2];k=J[g+68>>2];if(f|k){x=e&32;while(1){h=h-1|0;H[h|0]=x|K[(f&15)+17776|0];y=!k&f>>>0>15|(k|0)!=0;q=k;k=k>>>4|0;f=(q&15)<<28|f>>>4;if(y){continue}break}}if(!(J[g+64>>2]|J[g+68>>2])|!(m&8)){break y}u=(e>>>4|0)+1163|0;o=2;break y}e=r;h=J[g+68>>2];k=h;f=J[g+64>>2];if(h|f){while(1){e=e-1|0;H[e|0]=f&7|48;q=!k&f>>>0>7|(k|0)!=0;h=k;k=h>>>3|0;f=(h&7)<<29|f>>>3;if(q){continue}break}}h=e;if(!(m&8)){break y}e=r-h|0;j=(e|0)<(j|0)?j:e+1|0;break y}f=J[g+64>>2];e=J[g+68>>2];k=e;if((e|0)<0){h=0-(k+((f|0)!=0)|0)|0;k=h;f=0-f|0;J[g+64>>2]=f;J[g+68>>2]=h;o=1;e=1163;break z}if(m&2048){o=1;e=1164;break z}o=m&1;e=o?1165:1163}u=e;h=Mb(f,k,r)}if((j|0)<0?t:0){break d}m=t?m&-65537:m;e=J[g+64>>2];f=J[g+68>>2];if(!(j|(e|f)!=0)){h=r;j=0;break g}e=!(e|f)+(r-h|0)|0;j=(e|0)<(j|0)?j:e;break g}q=j>>>0>=2147483647?2147483647:j;i=q;m=(i|0)!=0;e=J[g+64>>2];h=e?e:1983;e=h;J:{K:{L:{M:{if(!(e&3)|!i){break M}while(1){if(!K[e|0]){break L}i=i-1|0;m=(i|0)!=0;e=e+1|0;if(!(e&3)){break M}if(i){continue}break}}if(!m){break K}if(!(!K[e|0]|i>>>0<4)){while(1){k=J[e>>2];if((k^-1)&k-16843009&-2139062144){break L}e=e+4|0;i=i-4|0;if(i>>>0>3){continue}break}}if(!i){break K}}while(1){if(!K[e|0]){break J}e=e+1|0;i=i-1|0;if(i){continue}break}}e=0}e=e?e-h|0:q;i=e+h|0;if((j|0)>=0){m=f;j=e;break g}m=f;j=e;if(K[i|0]){break d}break g}if(j){f=J[g+64>>2];break u}e=0;Qa(a,32,p,0,m);break t}J[g+12>>2]=0;J[g+8>>2]=J[g+64>>2];f=g+8|0;J[g+64>>2]=f;j=-1}e=0;N:{while(1){h=J[f>>2];if(!h){break N}k=Pe(g+4|0,h);h=(k|0)<0;if(!(h|k>>>0>j-e>>>0)){f=f+4|0;e=e+k|0;if(j>>>0>e>>>0){continue}break N}break}if(h){break b}}i=61;if((e|0)<0){break c}Qa(a,32,p,e,m);if(!e){e=0;break t}i=0;f=J[g+64>>2];while(1){h=J[f>>2];if(!h){break t}h=Pe(g+4|0,h);i=h+i|0;if(i>>>0>e>>>0){break t}Oa(a,g+4|0,h);f=f+4|0;if(e>>>0>i>>>0){continue}break}}Qa(a,32,p,e,m^8192);e=(e|0)<(p|0)?p:e;continue e}if((j|0)<0?t:0){break d}i=61;e=Re(a,O[g+64>>3],p,j,m,e);if((e|0)>=0){continue e}break c}H[g+55|0]=J[g+64>>2];j=1;h=w;m=f;break g}f=K[e+1|0];e=e+1|0;continue}}if(a){break a}if(!s){break f}e=1;while(1){a=J[(e<<2)+d>>2];if(a){Se((e<<3)+c|0,a,b);n=1;e=e+1|0;if((e|0)!=10){continue}break a}break}n=1;if(e>>>0>=10){break a}while(1){if(J[(e<<2)+d>>2]){break h}e=e+1|0;if((e|0)!=10){continue}break}break a}i=28;break c}k=i-h|0;f=(j|0)>(k|0)?j:k;if((f|0)>(o^2147483647)){break d}i=61;j=f+o|0;e=(j|0)<(p|0)?p:j;if((v|0)<(e|0)){break c}Qa(a,32,e,j,m);Oa(a,u,o);Qa(a,48,e,j,m^65536);Qa(a,48,f,k,0);Oa(a,h,k);Qa(a,32,e,j,m^8192);continue}break}n=0;break a}i=61}J[4804]=i}n=-1}ba=g+80|0;return n}function Qf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=ba-16|0;ba=g;J[b+44>>2]=d;J[b+48>>2]=c;d=J[b+12>>2];f=J[b+8>>2];if((d|0)!=(f|0)){while(1){d=d-4|0;e=J[d>>2];J[d>>2]=0;if(e){da[J[J[e>>2]+4>>2]](e)}if((d|0)!=(f|0)){continue}break}}J[b+12>>2]=f;J[b+24>>2]=J[b+20>>2];J[b+36>>2]=J[b+32>>2];a:{if(!J[b+4>>2]){b=oa(32);H[b+23|0]=0;c=K[1670]|K[1671]<<8|(K[1672]<<16|K[1673]<<24);d=K[1666]|K[1667]<<8|(K[1668]<<16|K[1669]<<24);H[b+15|0]=d;H[b+16|0]=d>>>8;H[b+17|0]=d>>>16;H[b+18|0]=d>>>24;H[b+19|0]=c;H[b+20|0]=c>>>8;H[b+21|0]=c>>>16;H[b+22|0]=c>>>24;c=K[1663]|K[1664]<<8|(K[1665]<<16|K[1666]<<24);d=K[1659]|K[1660]<<8|(K[1661]<<16|K[1662]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1655]|K[1656]<<8|(K[1657]<<16|K[1658]<<24);d=K[1651]|K[1652]<<8|(K[1653]<<16|K[1654]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,23);na(b);break a}d=ba-16|0;ba=d;e=J[b+44>>2];f=J[e+20>>2];if(!J[e+16>>2]&(f|0)<=0|(f|0)<0){sa(e,J[e+4>>2],1637,1642)}e=da[J[J[b>>2]+8>>2]](b)|0;H[d+15|0]=e;H[d+14|0]=2;H[d+13|0]=e&255?2:3;e=J[b+44>>2];f=J[e+20>>2];b:{if(!!J[e+16>>2]&(f|0)>=0|(f|0)>0){break b}sa(e,J[e+4>>2],d+14|0,d+15|0);e=J[b+44>>2];f=J[e+20>>2];if(!!J[e+16>>2]&(f|0)>=0|(f|0)>0){break b}sa(e,J[e+4>>2],d+13|0,d+14|0);e=J[b+44>>2];f=J[e+20>>2];if(!!J[e+16>>2]&(f|0)>=0|(f|0)>0){break b}sa(e,J[e+4>>2],d+15|0,d+16|0);e=J[b+44>>2]}j=d,k=da[J[J[b>>2]+12>>2]](b)|0,H[j+12|0]=k;f=J[e+20>>2];if(!J[e+16>>2]&(f|0)<=0|(f|0)<0){sa(e,J[e+4>>2],d+12|0,d+13|0)}I[d+10>>1]=(J[J[b+4>>2]+4>>2]!=0)<<15;e=J[b+44>>2];f=J[e+20>>2];if(!J[e+16>>2]&(f|0)<=0|(f|0)<0){sa(e,J[e+4>>2],d+10|0,d+12|0)}J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;ba=d+16|0;if(J[a>>2]){break a}if(H[a+15|0]<0){na(J[a+4>>2])}d=J[J[b+4>>2]+4>>2];c:{if(!d){J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;break c}e=J[b+44>>2];if(d){Aa(J[d+28>>2]-J[d+24>>2]>>2,e);f=J[d+24>>2];i=J[d+28>>2];if((f|0)!=(i|0)){while(1){h=J[f>>2];if(h){Aa(J[h+24>>2],e);td(g,e,h)}f=f+4|0;if((i|0)!=(f|0)){continue}break}}td(g,e,d)}if(d){J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;break c}d=oa(32);H[d+26|0]=0;e=K[1882]|K[1883]<<8;H[d+24|0]=e;H[d+25|0]=e>>>8;e=K[1878]|K[1879]<<8|(K[1880]<<16|K[1881]<<24);f=K[1874]|K[1875]<<8|(K[1876]<<16|K[1877]<<24);H[d+16|0]=f;H[d+17|0]=f>>>8;H[d+18|0]=f>>>16;H[d+19|0]=f>>>24;H[d+20|0]=e;H[d+21|0]=e>>>8;H[d+22|0]=e>>>16;H[d+23|0]=e>>>24;e=K[1870]|K[1871]<<8|(K[1872]<<16|K[1873]<<24);f=K[1866]|K[1867]<<8|(K[1868]<<16|K[1869]<<24);H[d+8|0]=f;H[d+9|0]=f>>>8;H[d+10|0]=f>>>16;H[d+11|0]=f>>>24;H[d+12|0]=e;H[d+13|0]=e>>>8;H[d+14|0]=e>>>16;H[d+15|0]=e>>>24;e=K[1862]|K[1863]<<8|(K[1864]<<16|K[1865]<<24);f=K[1858]|K[1859]<<8|(K[1860]<<16|K[1861]<<24);H[d|0]=f;H[d+1|0]=f>>>8;H[d+2|0]=f>>>16;H[d+3|0]=f>>>24;H[d+4|0]=e;H[d+5|0]=e>>>8;H[d+6|0]=e>>>16;H[d+7|0]=e>>>24;J[a>>2]=-1;Ga(a+4|0,d,26);na(d);if(J[a>>2]){break a}if(H[a+15|0]>=0){break c}na(J[a+4>>2])}if(!(da[J[J[b>>2]+16>>2]](b)|0)){b=oa(32);H[b+29|0]=0;c=K[1798]|K[1799]<<8|(K[1800]<<16|K[1801]<<24);d=K[1794]|K[1795]<<8|(K[1796]<<16|K[1797]<<24);H[b+21|0]=d;H[b+22|0]=d>>>8;H[b+23|0]=d>>>16;H[b+24|0]=d>>>24;H[b+25|0]=c;H[b+26|0]=c>>>8;H[b+27|0]=c>>>16;H[b+28|0]=c>>>24;c=K[1793]|K[1794]<<8|(K[1795]<<16|K[1796]<<24);d=K[1789]|K[1790]<<8|(K[1791]<<16|K[1792]<<24);H[b+16|0]=d;H[b+17|0]=d>>>8;H[b+18|0]=d>>>16;H[b+19|0]=d>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1785]|K[1786]<<8|(K[1787]<<16|K[1788]<<24);d=K[1781]|K[1782]<<8|(K[1783]<<16|K[1784]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1777]|K[1778]<<8|(K[1779]<<16|K[1780]<<24);d=K[1773]|K[1774]<<8|(K[1775]<<16|K[1776]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,29);na(b);break a}if(!(da[J[J[b>>2]+20>>2]](b)|0)){b=oa(32);H[b+31|0]=0;c=K[1941]|K[1942]<<8|(K[1943]<<16|K[1944]<<24);d=K[1937]|K[1938]<<8|(K[1939]<<16|K[1940]<<24);H[b+23|0]=d;H[b+24|0]=d>>>8;H[b+25|0]=d>>>16;H[b+26|0]=d>>>24;H[b+27|0]=c;H[b+28|0]=c>>>8;H[b+29|0]=c>>>16;H[b+30|0]=c>>>24;c=K[1934]|K[1935]<<8|(K[1936]<<16|K[1937]<<24);d=K[1930]|K[1931]<<8|(K[1932]<<16|K[1933]<<24);H[b+16|0]=d;H[b+17|0]=d>>>8;H[b+18|0]=d>>>16;H[b+19|0]=d>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1926]|K[1927]<<8|(K[1928]<<16|K[1929]<<24);d=K[1922]|K[1923]<<8|(K[1924]<<16|K[1925]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1918]|K[1919]<<8|(K[1920]<<16|K[1921]<<24);d=K[1914]|K[1915]<<8|(K[1916]<<16|K[1917]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,31);na(b);break a}da[J[J[b>>2]+24>>2]](a,b);if(J[a>>2]){break a}if(H[a+15|0]<0){na(J[a+4>>2])}if(!(da[J[J[b>>2]+28>>2]](b)|0)){b=Pc(g,1708);J[a>>2]=-1;a=a+4|0;if(H[b+11|0]>=0){c=J[b+4>>2];J[a>>2]=J[b>>2];J[a+4>>2]=c;J[a+8>>2]=J[b+8>>2];break a}Ga(a,J[b>>2],J[b+4>>2]);if(H[b+11|0]>=0){break a}na(J[b>>2]);break a}d=c;c=Pc(g,1214);d=Pb(d,c,0);if(H[c+11|0]<0){na(J[c>>2])}if(d){da[J[J[b>>2]+48>>2]](b)}J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0}ba=g+16|0}function ve(a,b,c,d,e){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,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,L=0,N=0,O=0,Q=0;o=ba-32|0;ba=o;J[a>>2]=J[d>>2];d=J[c>>2]-J[b>>2]|0;J[a+4>>2]=d;p=J[e+20>>2];if(!J[e+16>>2]&(p|0)<=0|(p|0)<0){d=a+4|0;sa(e,J[e+4>>2],a,d);p=J[e+20>>2];if(!J[e+16>>2]&(p|0)<=0|(p|0)<0){sa(e,J[e+4>>2],d,a+8|0)}d=J[d>>2]}if(d){C=a+12|0;d=C;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];D=a+32|0;d=D;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];E=a+52|0;d=E;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];F=a+72|0;d=F;J[d+12>>2]=0;J[d+16>>2]=0;J[d+4>>2]=J[d>>2];J[o+24>>2]=J[b+8>>2];d=J[b+4>>2];J[o+16>>2]=J[b>>2];J[o+20>>2]=d;J[o+8>>2]=J[c+8>>2];b=J[c+4>>2];J[o>>2]=J[c>>2];J[o+4>>2]=b;c=0;b=0;f=ba-32|0;ba=f;l=a;g=J[a+8>>2];J[f+16>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;a:{b:{if(g){if(g>>>0>=1073741824){break b}a=g<<2;c=oa(a);J[f+8>>2]=c;b=a+c|0;J[f+16>>2]=b;pa(c,0,a);J[f+12>>2]=b}a=J[l+128>>2];d=J[a>>2];if(d){J[a+4>>2]=d;na(d);g=J[l+8>>2];c=J[f+8>>2];b=J[f+12>>2]}J[a+4>>2]=b;J[a>>2]=c;J[a+8>>2]=J[f+16>>2];c=0;J[f+16>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;b=0;c:{if(g){if(g>>>0>=1073741824){break c}a=g<<2;b=oa(a);J[f+8>>2]=b;c=a+b|0;J[f+16>>2]=c;pa(b,0,a);J[f+12>>2]=c}a=J[l+140>>2];d=J[a>>2];if(d){J[a+4>>2]=d;na(d);c=J[f+12>>2];b=J[f+8>>2]}J[a+4>>2]=c;J[a>>2]=b;J[a+8>>2]=J[f+16>>2];p=J[o+20>>2];t=J[o+24>>2];d=J[o+4>>2];w=J[o+8>>2];b=J[o>>2];c=J[o+16>>2];J[f+24>>2]=0;J[f+28>>2]=0;J[f+16>>2]=0;J[f+20>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;fb(f+8|0);a=J[f+24>>2]+J[f+28>>2]|0;q=(a>>>0)/113|0;a=J[J[f+12>>2]+(q<<2)>>2]+P(a-P(q,113)|0,36)|0;J[a+32>>2]=0;J[a+28>>2]=b-c;J[a+24>>2]=0;J[a+16>>2]=d;J[a+20>>2]=w;J[a+12>>2]=b;J[a+4>>2]=p;J[a+8>>2]=t;J[a>>2]=c;g=J[f+28>>2]+1|0;J[f+28>>2]=g;if(g){a=t;K=a&-4;G=a&3;L=l+32|0;N=l+12|0;O=l+72|0;Q=a>>>0<4;while(1){b=J[f+12>>2];i=J[f+24>>2];h=g-1|0;a=i+h|0;c=(a>>>0)/113|0;a=J[b+(c<<2)>>2]+P(a-P(c,113)|0,36)|0;z=J[a+32>>2];c=J[a+24>>2];q=J[a+12>>2];a=J[a>>2];J[f+28>>2]=h;h=J[f+16>>2];if((((b|0)!=(h|0)?P(h-b>>2,113)-1|0:0)-(g+i|0)|0)+1>>>0>=226){na(J[h-4>>2]);J[f+16>>2]=J[f+16>>2]-4}i=J[l>>2];g=(c|0)!=(J[l+8>>2]-1|0)?c+1|0:0;h=g<<2;x=P(z,12);k=x+J[l+140>>2]|0;c=J[h+J[k>>2]>>2];d:{e:{if((i|0)==(c|0)){break e}f:{g:{y=q-a|0;if(y>>>0<=2){h=J[l+116>>2];J[h>>2]=g;c=1;b=J[l+8>>2];if(b>>>0>1){break g}break f}k=J[l+128>>2];b=k+x|0;j=k;k=x+12|0;bb(j+k|0,J[b>>2],J[b+4>>2]);b=h+J[k+J[l+128>>2]>>2]|0;k=J[b>>2]+(1<<i+(c^-1))|0;J[b>>2]=k;b=a;h:{if((a|0)==(q|0)){break h}H=J[p+24>>2];I=h+H|0;b=q;c=a;if(!t){if(k>>>0>M[I>>2]){break h}while(1){b=b-1|0;if((c|0)==(b|0)){b=c;break h}if(k>>>0<=M[(h+J[d+24>>2]|0)+(P(b,w)<<2)>>2]){continue}c=c+1|0;if((c|0)!=(b|0)){continue}break}break h}while(1){i=P(c,t)<<2;if(k>>>0>M[i+I>>2]){c=c+1|0;if((c|0)!=(b|0)){continue}break h}while(1){b=b-1|0;if((c|0)==(b|0)){b=c;break h}n=J[d+24>>2]+(P(b,w)<<2)|0;if(k>>>0<=M[n+h>>2]){continue}break}r=i+H|0;A=0;i=0;u=0;if(!Q){while(1){m=i<<2;j=m+r|0;s=J[j>>2];v=j;j=n+m|0;J[v>>2]=J[j>>2];J[j>>2]=s;j=m|4;s=j+r|0;v=J[s>>2];j=j+n|0;J[s>>2]=J[j>>2];J[j>>2]=v;j=m|8;s=j+r|0;v=J[s>>2];j=j+n|0;J[s>>2]=J[j>>2];J[j>>2]=v;m=m|12;j=m+r|0;s=J[j>>2];m=n+m|0;J[j>>2]=J[m>>2];J[m>>2]=s;i=i+4|0;u=u+4|0;if((K|0)!=(u|0)){continue}break}}if(G){while(1){m=i<<2;u=m+r|0;j=J[u>>2];m=n+m|0;J[u>>2]=J[m>>2];J[m>>2]=j;i=i+1|0;A=A+1|0;if((A|0)!=(G|0)){continue}break}}c=c+1|0;if((c|0)!=(b|0)){continue}break}}k=b-a|0;n=q-b|0;if((k|0)!=(n|0)){xc(O,k>>>0<n>>>0)}Ib(N,S(y)^31,(y>>>1|0)-(k>>>0<n>>>0?k:n)|0);j=h;c=J[l+140>>2];h=c+x|0;i=J[h>>2];r=j+i|0;J[r>>2]=J[r>>2]+1;r=z+1|0;bb(c+P(r,12)|0,i,J[h+4>>2]);if((a|0)!=(b|0)){i=J[f+28>>2]+J[f+24>>2]|0;c=J[f+16>>2];h=J[f+12>>2];if((i|0)==(((c|0)!=(h|0)?P(c-h>>2,113)-1|0:0)|0)){fb(f+8|0);i=J[f+24>>2]+J[f+28>>2]|0;h=J[f+12>>2]}c=(i>>>0)/113|0;c=J[h+(c<<2)>>2]+P(i-P(c,113)|0,36)|0;J[c+32>>2]=z;J[c+28>>2]=k;J[c+24>>2]=g;J[c+16>>2]=p;J[c+12>>2]=b;J[c+4>>2]=p;J[c+8>>2]=t;J[c>>2]=a;J[c+20>>2]=t;J[f+28>>2]=J[f+28>>2]+1}if((b|0)==(q|0)){break e}h=J[f+28>>2]+J[f+24>>2]|0;a=J[f+16>>2];c=J[f+12>>2];if((h|0)==(((a|0)!=(c|0)?P(a-c>>2,113)-1|0:0)|0)){fb(f+8|0);h=J[f+24>>2]+J[f+28>>2]|0;c=J[f+12>>2]}a=(h>>>0)/113|0;a=J[c+(a<<2)>>2]+P(h-P(a,113)|0,36)|0;J[a+32>>2]=r;J[a+28>>2]=n;J[a+24>>2]=g;J[a+16>>2]=d;J[a+20>>2]=w;J[a+12>>2]=q;J[a+4>>2]=p;J[a>>2]=b;J[a+8>>2]=t;g=J[f+28>>2]+1|0;J[f+28>>2]=g;break d}while(1){g=(b-1|0)!=(g|0)?g+1|0:0;J[h+(c<<2)>>2]=g;b=J[l+8>>2];c=c+1|0;if(b>>>0>c>>>0){continue}break}}if(!b|(a|0)==(q|0)){break e}h=0;c=1;while(1){g=0;i:{if(!c){c=0;break i}q=J[p+24>>2]+(P(J[p+4>>2],a+h|0)<<2)|0;while(1){c=J[l>>2];i=J[J[l+116>>2]+(g<<2)>>2]<<2;n=J[i+J[k>>2]>>2];if((c|0)!=(n|0)){Ib(L,c-n|0,J[i+q>>2]);b=J[l+8>>2]}c=b;g=g+1|0;if(c>>>0>g>>>0){continue}break}}h=h+1|0;if((y|0)!=(h|0)){continue}break}}g=J[f+28>>2]}if(g){continue}break}}J[f+28>>2]=0;a=J[f+16>>2];g=J[f+12>>2];b=a-g|0;if(b>>>0>=9){while(1){na(J[g>>2]);g=J[f+12>>2]+4|0;J[f+12>>2]=g;a=J[f+16>>2];b=a-g|0;if(b>>>0>8){continue}break}}c=56;j:{switch((b>>>2|0)-1|0){case 1:c=113;case 0:J[f+24>>2]=c;break;default:break j}}k:{if((a|0)==(g|0)){break k}while(1){na(J[g>>2]);g=g+4|0;if((g|0)!=(a|0)){continue}break}a=J[f+16>>2];b=J[f+12>>2];if((a|0)==(b|0)){break k}J[f+16>>2]=a+((b-a|0)+3&-4)}a=J[f+8>>2];if(a){na(a)}ba=f+32|0;break a}qa();B()}qa();B()}eb(C,e);eb(D,e);eb(E,e);eb(F,e)}ba=o+32|0;return 1}function gg(a,b){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;l=ba-32|0;ba=l;d=J[a+16>>2];J[a+20>>2]=d;a:{b:{c:{d:{e:{f:{g:{h:{if((d|0)!=J[a+24>>2]){J[d>>2]=b;b=d+4|0;J[a+20>>2]=b;e=d;break h}e=oa(4);J[e>>2]=b;b=e+4|0;J[a+24>>2]=b;J[a+20>>2]=b;J[a+16>>2]=e;if(d){break g}}d=J[a+8>>2];d=J[d+100>>2]-J[d+96>>2]|0;break f}na(d);b=J[a+20>>2];e=J[a+16>>2];if((b|0)==(e|0)){break e}d=J[a+8>>2];d=J[d+100>>2]-J[d+96>>2]|0}if((d|0)>0){q=a+120|0;d=(d|0)/12|0;r=(d|0)<=1?1:d;while(1){i:{j:{e=b-4|0;b=J[e>>2];if((b|0)==-1){break j}d=(b>>>0)/3|0;if(J[J[a+28>>2]+(d>>>3&268435452)>>2]>>>d&1){break j}m=0;while(1){J[a+164>>2]=J[a+164>>2]+1;e=b;g=(b>>>0)/3|0;f=(b|0)==-1;n=f?-1:g;b=J[a+28>>2]+(n>>>3&536870908)|0;J[b>>2]=J[b>>2]|1<<n;b=J[a+76>>2];k:{if((b|0)!=J[a+80>>2]){J[b>>2]=e;J[a+76>>2]=b+4;break k}i=J[a+72>>2];j=b-i|0;c=j>>2;k=c+1|0;if(k>>>0>1073741823){break d}d=j>>>1|0;k=j>>>0>=2147483644?1073741823:d>>>0>k>>>0?d:k;if(k){if(k>>>0>1073741823){break a}d=oa(k<<2)}else{d=0}h=d+(c<<2)|0;J[h>>2]=e;c=h+4|0;if((b|0)!=(i|0)){while(1){h=h-4|0;b=b-4|0;J[h>>2]=J[b>>2];if((b|0)!=(i|0)){continue}break}}J[a+80>>2]=d+(k<<2);J[a+76>>2]=c;J[a+72>>2]=h;if(!i){break k}na(i)}b=-1;h=J[a+12>>2];b=(e|0)!=-1?J[J[h>>2]+(e<<2)>>2]:b;k=b<<2;p=J[k+J[a+152>>2]>>2];l:{m:{c=J[a+84>>2]+(b>>>3&536870908)|0;d=J[c>>2];b=1<<b;if(!(d&b)){J[c>>2]=b|d;if((p|0)==-1){break m}}n:{if(f){break n}b=-1;d=e+1|0;f=(d>>>0)%3|0?d:e-2|0;if((f|0)!=-1){b=J[J[h+12>>2]+(f<<2)>>2]}i=e-P(g,3)|0;o:{p:{if(i){c=e-1|0;break p}c=e+2|0;d=-1;if((c|0)==-1){break o}}d=J[J[h+12>>2]+(c<<2)>>2]}o=(d|0)==-1;j=o?-1:(d>>>0)/3|0;q:{if((f|0)==-1){break q}g=J[h+12>>2];c=J[g+(f<<2)>>2];if((c|0)==-1){break q}f=J[a+28>>2];c=(c>>>0)/3|0;if(J[f+(c>>>3&268435452)>>2]>>>c&1){break q}r:{s:{if(i){h=e-1|0;break s}h=e+2|0;if((h|0)==-1){break r}}c=J[(h<<2)+g>>2];if((c|0)==-1){break r}c=(c>>>0)/3|0;if(J[f+(c>>>3&268435452)>>2]>>>c&1){break r}c=J[a+272>>2];t:{if((c|0)!=J[a+276>>2]){J[c>>2]=1;J[a+272>>2]=c+4;break t}i=J[a+268>>2];j=c-i|0;f=j>>2;g=f+1|0;if(g>>>0>1073741823){break c}c=j>>>1|0;g=j>>>0>=2147483644?1073741823:c>>>0>g>>>0?c:g;if(g){if(g>>>0>1073741823){break a}c=oa(g<<2)}else{c=0}f=c+(f<<2)|0;J[f>>2]=1;c=ta(c,i,j);J[a+276>>2]=c+(g<<2);J[a+272>>2]=f+4;J[a+268>>2]=c;if(!i){break t}na(i)}J[a+168>>2]=J[a+168>>2]+1;u:{if((p|0)==-1){break u}c=J[J[a+152>>2]+k>>2];if(J[J[a+140>>2]+(c>>>3&536870908)>>2]>>>c&1){break u}Hc(a,e,0)}c=J[a+164>>2];J[l+4>>2]=n;e=l+4|0;J[l+16>>2]=e;bg(l+24|0,q,e,l+16|0);J[J[l+24>>2]+12>>2]=c;h=J[a+20>>2];J[h-4>>2]=d;if(J[a+24>>2]!=(h|0)){J[h>>2]=b;J[a+20>>2]=h+4;break i}g=J[a+16>>2];f=h-g|0;e=f>>2;c=e+1|0;if(c>>>0>1073741823){break b}d=f>>>1|0;c=f>>>0>=2147483644?1073741823:c>>>0<d>>>0?d:c;if(c){if(c>>>0>1073741823){break a}d=oa(c<<2)}else{d=0}e=d+(e<<2)|0;J[e>>2]=b;b=e+4|0;if((g|0)!=(h|0)){while(1){e=e-4|0;h=h-4|0;J[e>>2]=J[h>>2];if((g|0)!=(h|0)){continue}break}}J[a+24>>2]=d+(c<<2);J[a+20>>2]=b;J[a+16>>2]=e;if(!g){break i}na(g);break i}if(!o){Qb(a,J[a+164>>2],0,j)}d=J[a+272>>2];if((d|0)!=J[a+276>>2]){J[d>>2]=3;J[a+272>>2]=d+4;break l}g=J[a+268>>2];f=d-g|0;e=f>>2;c=e+1|0;if(c>>>0>1073741823){break c}d=f>>>1|0;c=f>>>0>=2147483644?1073741823:c>>>0<d>>>0?d:c;if(c){if(c>>>0>1073741823){break a}d=oa(c<<2)}else{d=0}e=d+(e<<2)|0;J[e>>2]=3;d=ta(d,g,f);J[a+276>>2]=d+(c<<2);J[a+272>>2]=e+4;J[a+268>>2]=d;if(!g){break l}na(g);break l}c=(b|0)==-1;if(!c){Qb(a,J[a+164>>2],1,c?-1:(b>>>0)/3|0)}v:{w:{if(i){b=e-1|0;break w}b=e+2|0;if((b|0)==-1){break v}}b=J[J[J[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break v}b=(b>>>0)/3|0;if(J[J[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break v}b=J[a+272>>2];if((b|0)!=J[a+276>>2]){J[b>>2]=5;J[a+272>>2]=b+4;b=d;break l}g=J[a+268>>2];f=b-g|0;e=f>>2;c=e+1|0;if(c>>>0>1073741823){break c}b=f>>>1|0;c=f>>>0>=2147483644?1073741823:b>>>0>c>>>0?b:c;if(c){if(c>>>0>1073741823){break a}b=oa(c<<2)}else{b=0}e=b+(e<<2)|0;J[e>>2]=5;b=ta(b,g,f);J[a+276>>2]=b+(c<<2);J[a+272>>2]=e+4;J[a+268>>2]=b;if(!g){b=d;break l}na(g);b=d;break l}if(o){break n}Qb(a,J[a+164>>2],0,j)}b=J[a+272>>2];x:{if((b|0)!=J[a+276>>2]){J[b>>2]=7;J[a+272>>2]=b+4;break x}f=J[a+268>>2];c=b-f|0;d=c>>2;e=d+1|0;if(e>>>0>1073741823){break c}b=c>>>1|0;e=c>>>0>=2147483644?1073741823:b>>>0>e>>>0?b:e;if(e){if(e>>>0>1073741823){break a}b=oa(e<<2)}else{b=0}d=b+(d<<2)|0;J[d>>2]=7;b=ta(b,f,c);J[a+276>>2]=b+(e<<2);J[a+272>>2]=d+4;J[a+268>>2]=b;if(!f){break x}na(f)}J[a+20>>2]=J[a+20>>2]-4;break i}b=J[a+272>>2];y:{if((b|0)!=J[a+276>>2]){J[b>>2]=0;J[a+272>>2]=b+4;break y}g=J[a+268>>2];f=b-g|0;d=f>>2;c=d+1|0;if(c>>>0>1073741823){break c}b=f>>>1|0;c=f>>>0>=2147483644?1073741823:b>>>0>c>>>0?b:c;if(c){if(c>>>0>1073741823){break a}b=oa(c<<2)}else{b=0}d=b+(d<<2)|0;J[d>>2]=0;b=ta(b,g,f);J[a+276>>2]=b+(c<<2);J[a+272>>2]=d+4;J[a+268>>2]=b;if(!g){break y}na(g)}b=-1;if((e|0)==-1){break l}d=e+1|0;d=(d>>>0)%3|0?d:e-2|0;if((d|0)==-1){break l}b=J[J[J[a+12>>2]+12>>2]+(d<<2)>>2]}m=m+1|0;if((r|0)!=(m|0)){continue}break}break i}J[a+20>>2]=e}b=J[a+20>>2];if((b|0)!=J[a+16>>2]){continue}break}break e}f=J[a+28>>2];while(1){d=b-4|0;c=J[d>>2];z:{if((c|0)!=-1){c=(c>>>0)/3|0;if(!(J[f+(c>>>3&268435452)>>2]>>>c&1)){break z}}J[a+20>>2]=d;b=d}if((b|0)!=(e|0)){continue}break}}ba=l+32|0;return 1}qa();B()}qa();B()}qa();B()}xa();B()}function $c(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=Q(0),n=Q(0),o=0;a:{b:{if(!d){break b}c:{switch(J[a+28>>2]-1|0){case 0:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}J[(g<<2)+d>>2]=H[b|0];b=b+1|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 1:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}J[(g<<2)+d>>2]=K[b|0];b=b+1|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 2:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}J[(g<<2)+d>>2]=I[b>>1];b=b+2|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 3:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}J[(g<<2)+d>>2]=L[b>>1];b=b+2|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 4:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}J[(g<<2)+d>>2]=J[b>>2];b=b+4|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 5:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){return 0}e=J[b>>2];if((e|0)<0){break b}J[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 6:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;k=J[e+4>>2];while(1){if(b>>>0>=k>>>0){break b}h=J[b+4>>2];e=J[b>>2];if(e- -2147483648>>>0<2147483648?h+1|0:h){break b}J[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 7:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}k=J[b+4>>2];e=J[b>>2];if(!k&e>>>0>2147483647|k){break b}J[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}break a;case 8:d:{e:{e=K[a+24|0];c=c&255;if(!(c>>>0>e>>>0?e:c)){break e}e=J[a>>2];j=J[e>>2];g=j;f=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+f|0;g=b+g|0;f=J[e+4>>2];e=f-j|0;if(!K[a+32|0]){j=0;if((b|0)>=(e|0)){break d}b=0;while(1){m=N[g>>2];if(m>=Q(2147483648)|m<Q(-2147483648)|m!=m){break d}n=Q(R(m));if(n==Q(Infinity)){break d}e=(b<<2)+d|0;if(n<Q(2147483648)){i=~~m}else{i=-2147483648}J[e>>2]=i;b=b+1|0;e=K[a+24|0];if(b>>>0>=(c>>>0>e>>>0?e:c)>>>0){break e}g=g+4|0;if(f>>>0>g>>>0){continue}break}break d}j=0;if((b|0)>=(e|0)){break d}b=0;while(1){m=N[g>>2];if(m>=Q(2147483648)|m<Q(-2147483648)|(Q(R(m))==Q(Infinity)|m!=m)){break d}if(m<Q(0)|m>Q(1)){break d}e=(b<<2)+d|0;l=V(+m*2147483647+.5);f:{if(R(l)<2147483648){i=~~l;break f}i=-2147483648}J[e>>2]=i;b=b+1|0;e=K[a+24|0];if(b>>>0>=(c>>>0>e>>>0?e:c)>>>0){break e}g=g+4|0;if(f>>>0>g>>>0){continue}break}break d}j=1;if(c>>>0<=e>>>0){break d}pa((e<<2)+d|0,0,c-e<<2)}return j;case 9:g:{h:{e=K[a+24|0];c=c&255;if(!(c>>>0>e>>>0?e:c)){break h}e=J[a>>2];j=J[e>>2];g=j;f=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+f|0;g=b+g|0;f=J[e+4>>2];e=f-j|0;if(!K[a+32|0]){j=0;if((b|0)>=(e|0)){break g}b=0;while(1){l=O[g>>3];if(l>=2147483647|l<-2147483648|l!=l){break g}o=R(l);if(o==Infinity){break g}e=(b<<2)+d|0;if(o<2147483648){i=~~l}else{i=-2147483648}J[e>>2]=i;b=b+1|0;e=K[a+24|0];if(b>>>0>=(c>>>0>e>>>0?e:c)>>>0){break h}g=g+8|0;if(f>>>0>g>>>0){continue}break}break g}j=0;if((b|0)>=(e|0)){break g}b=0;while(1){l=O[g>>3];if(l>=2147483647|l<-2147483648|(R(l)==Infinity|l!=l)){break g}if(l<0|l>1){break g}e=(b<<2)+d|0;l=V(l*2147483647+.5);i:{if(R(l)<2147483648){i=~~l;break i}i=-2147483648}J[e>>2]=i;b=b+1|0;e=K[a+24|0];if(b>>>0>=(c>>>0>e>>>0?e:c)>>>0){break h}g=g+8|0;if(f>>>0>g>>>0){continue}break}break g}j=1;if(c>>>0<=e>>>0){break g}pa((e<<2)+d|0,0,c-e<<2)}return j;case 10:break c;default:break b}}e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];k=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);i=b;b=b+k|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}J[(g<<2)+d>>2]=K[b|0];b=b+1|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}j=1;if(e>>>0>=f>>>0){break b}pa((e<<2)+d|0,0,(c&255)-e<<2)}return j}pa((e<<2)+d|0,0,(c&255)-e<<2);return 1}function fe(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=J[b+48>>2];if(!g){b=oa(32);H[b+23|0]=0;c=K[1670]|K[1671]<<8|(K[1672]<<16|K[1673]<<24);e=K[1666]|K[1667]<<8|(K[1668]<<16|K[1669]<<24);H[b+15|0]=e;H[b+16|0]=e>>>8;H[b+17|0]=e>>>16;H[b+18|0]=e>>>24;H[b+19|0]=c;H[b+20|0]=c>>>8;H[b+21|0]=c>>>16;H[b+22|0]=c>>>24;c=K[1663]|K[1664]<<8|(K[1665]<<16|K[1666]<<24);e=K[1659]|K[1660]<<8|(K[1661]<<16|K[1662]<<24);H[b+8|0]=e;H[b+9|0]=e>>>8;H[b+10|0]=e>>>16;H[b+11|0]=e>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1655]|K[1656]<<8|(K[1657]<<16|K[1658]<<24);e=K[1651]|K[1652]<<8|(K[1653]<<16|K[1654]<<24);H[b|0]=e;H[b+1|0]=e>>>8;H[b+2|0]=e>>>16;H[b+3|0]=e>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,23);na(b);return}h=J[b+52>>2];if(!h){e=ba-32|0;ba=e;d=oa(16);J[e+16>>2]=d;J[e+20>>2]=15;J[e+24>>2]=-2147483632;f=K[1587]|K[1588]<<8|(K[1589]<<16|K[1590]<<24);h=K[1583]|K[1584]<<8|(K[1585]<<16|K[1586]<<24);H[d+7|0]=h;H[d+8|0]=h>>>8;H[d+9|0]=h>>>16;H[d+10|0]=h>>>24;H[d+11|0]=f;H[d+12|0]=f>>>8;H[d+13|0]=f>>>16;H[d+14|0]=f>>>24;f=K[1580]|K[1581]<<8|(K[1582]<<16|K[1583]<<24);h=K[1576]|K[1577]<<8|(K[1578]<<16|K[1579]<<24);H[d|0]=h;H[d+1|0]=h>>>8;H[d+2|0]=h>>>16;H[d+3|0]=h>>>24;H[d+4|0]=f;H[d+5|0]=f>>>8;H[d+6|0]=f>>>16;H[d+7|0]=f>>>24;H[d+15|0]=0;h=b+4|0;j=Bb(h,e+16|0,-1);if(H[e+27|0]<0){na(J[e+16>>2])}a:{b:{c:{d:{e:{switch(j+1|0){case 1:d=oa(56);J[d>>2]=0;J[d+4>>2]=0;J[d+48>>2]=0;J[d+52>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=nc(d);J[d>>2]=12672;break c;case 0:break e;default:break d}}if((cb(h)|0)!=10){break d}d=oa(56);J[d>>2]=0;J[d+4>>2]=0;J[d+48>>2]=0;J[d+52>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=nc(d);J[d>>2]=12672;break c}J[e+12>>2]=0;f:{i=J[g+12>>2];f=J[g+8>>2];if((i-f|0)>0){d=0;while(1){k=J[J[(d<<2)+f>>2]+28>>2];if(k-1>>>0>=6){if((k|0)!=9){break f}d=oa(32);J[e+16>>2]=d;J[e+20>>2]=17;J[e+24>>2]=-2147483616;H[d+16|0]=K[1261];f=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);i=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[d+8|0]=i;H[d+9|0]=i>>>8;H[d+10|0]=i>>>16;H[d+11|0]=i>>>24;H[d+12|0]=f;H[d+13|0]=f>>>8;H[d+14|0]=f>>>16;H[d+15|0]=f>>>24;f=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);i=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[d|0]=i;H[d+1|0]=i>>>8;H[d+2|0]=i>>>16;H[d+3|0]=i>>>24;H[d+4|0]=f;H[d+5|0]=f>>>8;H[d+6|0]=f>>>16;H[d+7|0]=f>>>24;H[d+17|0]=0;d=jb(h,e+12|0,e+16|0,-1);if(H[e+27|0]<0){na(J[e+16>>2])}if((d|0)<=0){break f}f=J[g+8>>2];i=J[g+12>>2];d=J[e+12>>2]}d=d+1|0;J[e+12>>2]=d;if(i-f>>2>(d|0)){continue}break}}d=oa(56);J[d>>2]=0;J[d+4>>2]=0;J[d+48>>2]=0;J[d+52>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=nc(d);J[d>>2]=12564;break c}if((j|0)==1){break b}d=oa(56);J[d>>2]=0;J[d+4>>2]=0;J[d+48>>2]=0;J[d+52>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=nc(d);J[d>>2]=12672}J[d+4>>2]=g;Qf(a,d,h,c);if(!J[a>>2]){if(H[a+15|0]<0){na(J[a+4>>2])}c=J[d+52>>2];J[b+44>>2]=0;J[b+40>>2]=c;J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0}da[J[J[d>>2]+4>>2]](d);break a}b=oa(32);H[b+24|0]=0;c=K[1853]|K[1854]<<8|(K[1855]<<16|K[1856]<<24);d=K[1849]|K[1850]<<8|(K[1851]<<16|K[1852]<<24);H[b+16|0]=d;H[b+17|0]=d>>>8;H[b+18|0]=d>>>16;H[b+19|0]=d>>>24;H[b+20|0]=c;H[b+21|0]=c>>>8;H[b+22|0]=c>>>16;H[b+23|0]=c>>>24;c=K[1845]|K[1846]<<8|(K[1847]<<16|K[1848]<<24);d=K[1841]|K[1842]<<8|(K[1843]<<16|K[1844]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1837]|K[1838]<<8|(K[1839]<<16|K[1840]<<24);d=K[1833]|K[1834]<<8|(K[1835]<<16|K[1836]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;J[a>>2]=-1;Ga(a+4|0,b,24);na(b)}ba=e+32|0;return}d=ba-16|0;ba=d;e=oa(16);J[d>>2]=e;J[d+4>>2]=15;J[d+8>>2]=-2147483632;g=K[1587]|K[1588]<<8|(K[1589]<<16|K[1590]<<24);f=K[1583]|K[1584]<<8|(K[1585]<<16|K[1586]<<24);H[e+7|0]=f;H[e+8|0]=f>>>8;H[e+9|0]=f>>>16;H[e+10|0]=f>>>24;H[e+11|0]=g;H[e+12|0]=g>>>8;H[e+13|0]=g>>>16;H[e+14|0]=g>>>24;g=K[1580]|K[1581]<<8|(K[1582]<<16|K[1583]<<24);f=K[1576]|K[1577]<<8|(K[1578]<<16|K[1579]<<24);H[e|0]=f;H[e+1|0]=f>>>8;H[e+2|0]=f>>>16;H[e+3|0]=f>>>24;H[e+4|0]=g;H[e+5|0]=g>>>8;H[e+6|0]=g>>>16;H[e+7|0]=g>>>24;H[e+15|0]=0;g=b+4|0;e=Bb(g,d,-1);if(H[d+11|0]<0){na(J[d>>2])}g:{h:{i:{switch(e+1|0){case 0:if((cb(g)|0)==10){break h}break;case 2:break i;default:break h}}e=Tf(oa(68));J[e+64>>2]=0;J[e>>2]=10404;break g}e=Tf(oa(64));J[e>>2]=12280}J[e+56>>2]=h;J[e+4>>2]=h;Qf(a,e,g,c);if(!J[a>>2]){if(H[a+15|0]<0){na(J[a+4>>2])}J[b+40>>2]=J[e+52>>2];J[b+44>>2]=J[e+60>>2];J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0}da[J[J[e>>2]+4>>2]](e);ba=d+16|0}function ci(a){a=a|0;var 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=Q(0),u=0,v=0,w=0,x=0,y=Q(0),z=0,A=0;c=ba+-64|0;ba=c;f=J[a+80>>2];J[c+40>>2]=0;J[c+44>>2]=0;J[c+56>>2]=a;J[c+48>>2]=a;J[c+32>>2]=0;J[c+36>>2]=0;J[c+52>>2]=1065353216;df(c+32|0,f);f=J[a+80>>2];J[c+24>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;a:{b:{c:{d:{if(!f){break d}if(f>>>0>=1073741824){break a}f=f<<2;s=oa(f);J[c+16>>2]=s;b=f+s|0;J[c+24>>2]=b;pa(s,0,f);J[c+20>>2]=b;J[c+8>>2]=0;J[c>>2]=0;J[c+4>>2]=0;z=c+40|0;f=0;while(1){e=0;b=J[c+48>>2];m=J[b+8>>2];n=J[b+12>>2]-m|0;v=(n|0)<=0;e:{if(v){break e}b=n>>>2|0;b=b>>>0<=1?1:b;i=b&1;h=0;if(n>>>0>=8){g=b&1073741822;b=0;while(1){j=h<<2;d=J[j+m>>2];if(K[d+84|0]){d=f}else{d=J[J[d+68>>2]+(f<<2)>>2]}h=h+2|0;l=d<<3^e<<2;e=J[m+(j|4)>>2];if(K[e+84|0]){d=f}else{d=J[J[e+68>>2]+(f<<2)>>2]}e=l^d<<2;b=b+2|0;if((g|0)!=(b|0)){continue}break}}if(!i){break e}b=J[m+(h<<2)>>2];if(K[b+84|0]){b=f}else{b=J[J[b+68>>2]+(f<<2)>>2]}e=b<<2^e<<1}f:{g:{j=J[c+36>>2];if(!j){break g}g=J[c+32>>2];i=Kl(j)>>>0>1;b=j-1&e;h:{if(!i){break h}b=e;if(b>>>0<j>>>0){break h}b=(e>>>0)%(j>>>0)|0}d=b;b=J[g+(d<<2)>>2];if(!b){break g}k=J[b>>2];if(!k){break g}p=J[c+56>>2];i:{j:{if(!i){w=j-1|0;while(1){b=J[k+4>>2];k:{if((b|0)!=(e|0)){if((d|0)==(b&w)){break k}break g}x=J[p+8>>2];b=J[p+12>>2]-x|0;if((b|0)<4){break i}i=J[k+8>>2];o=b>>2;A=(o|0)<=1?1:o;l=0;h=0;while(1){b=f;g=J[x+(h<<2)>>2];if(K[g+84|0]){g=i}else{g=J[g+68>>2];b=J[g+(f<<2)>>2];g=J[g+(i<<2)>>2]}if((b|0)==(g|0)){h=h+1|0;l=(o|0)<=(h|0);if((h|0)!=(A|0)){continue}}break}if(l){break j}}k=J[k>>2];if(k){continue}break}break g}while(1){b=J[k+4>>2];l:{if((b|0)!=(e|0)){if(b>>>0>=j>>>0){b=(b>>>0)%(j>>>0)|0}if((b|0)==(d|0)){break l}break g}w=J[p+8>>2];b=J[p+12>>2]-w|0;if((b|0)<4){break i}i=J[k+8>>2];o=b>>2;x=(o|0)<=1?1:o;l=0;h=0;while(1){b=f;g=J[w+(h<<2)>>2];if(K[g+84|0]){g=i}else{g=J[g+68>>2];b=J[g+(f<<2)>>2];g=J[g+(i<<2)>>2]}if((b|0)==(g|0)){h=h+1|0;l=(o|0)<=(h|0);if((h|0)!=(x|0)){continue}}break}if(l){break j}}k=J[k>>2];if(k){continue}break}break g}if(!k){break g}}J[(f<<2)+s>>2]=J[k+12>>2];break f}m:{if(v){e=0;break m}b=n>>>2|0;b=b>>>0<=1?1:b;i=b&1;e=0;h=0;if(n>>>0>=8){g=b&1073741822;b=0;while(1){l=h<<2;d=J[l+m>>2];if(K[d+84|0]){d=f}else{d=J[J[d+68>>2]+(f<<2)>>2]}h=h+2|0;n=d<<3^e<<2;e=J[m+(l|4)>>2];if(K[e+84|0]){d=f}else{d=J[J[e+68>>2]+(f<<2)>>2]}e=n^d<<2;b=b+2|0;if((g|0)!=(b|0)){continue}break}}if(!i){break m}b=J[m+(h<<2)>>2];if(K[b+84|0]){b=f}else{b=J[J[b+68>>2]+(f<<2)>>2]}e=b<<2^e<<1}n:{o:{if(!j){break o}m=j-1|0;if(m&j){k=e>>>0>=j>>>0?(e>>>0)%(j>>>0)|0:e;g=J[J[c+32>>2]+(k<<2)>>2];if(!g){break o}m=J[c+56>>2];while(1){g=J[g>>2];if(!g){break o}b=J[g+4>>2];if((b|0)!=(e|0)){if(b>>>0>=j>>>0){b=(b>>>0)%(j>>>0)|0}if((b|0)!=(k|0)){break o}}p=J[m+8>>2];b=J[m+12>>2]-p|0;if((b|0)<4){break n}d=J[g+8>>2];n=b>>2;o=(n|0)<=1?1:n;l=0;h=0;while(1){b=f;i=J[p+(h<<2)>>2];if(K[i+84|0]){i=d}else{i=J[i+68>>2];b=J[i+(f<<2)>>2];i=J[i+(d<<2)>>2]}if((b|0)==(i|0)){h=h+1|0;l=(n|0)<=(h|0);if((h|0)!=(o|0)){continue}}break}if(!l){continue}break}break n}k=e&m;g=J[J[c+32>>2]+(k<<2)>>2];if(!g){break o}n=J[c+56>>2];while(1){g=J[g>>2];if(!g){break o}b=J[g+4>>2];if((b|0)!=(e|0)&(b&m)!=(k|0)){break o}o=J[n+8>>2];b=J[n+12>>2]-o|0;if((b|0)<4){break n}d=J[g+8>>2];p=b>>2;v=(p|0)<=1?1:p;l=0;h=0;while(1){b=f;i=J[o+(h<<2)>>2];if(K[i+84|0]){i=d}else{i=J[i+68>>2];b=J[i+(f<<2)>>2];i=J[i+(d<<2)>>2]}if((b|0)==(i|0)){h=h+1|0;l=(p|0)<=(h|0);if((h|0)!=(v|0)){continue}}break}if(!l){continue}break}break n}d=oa(16);J[d+8>>2]=f;J[d+4>>2]=e;J[d>>2]=0;J[d+12>>2]=u;y=Q(J[c+44>>2]+1>>>0);t=N[c+52>>2];p:{if(y>Q(t*Q(j>>>0))?0:j){break p}g=c+32|0;i=(j-1&j)!=0|j>>>0<3|j<<1;t=Q(W(Q(y/t)));q:{if(t<Q(4294967296)&t>=Q(0)){b=~~t>>>0;break q}b=0}df(g,b>>>0<i>>>0?i:b);j=J[c+36>>2];b=j-1|0;if(!(b&j)){k=b&e;break p}if(e>>>0<j>>>0){k=e;break p}k=(e>>>0)%(j>>>0)|0}e=J[c+32>>2]+(k<<2)|0;b=J[e>>2];r:{s:{if(!b){J[d>>2]=J[c+40>>2];J[c+40>>2]=d;J[e>>2]=z;b=J[d>>2];if(!b){break r}b=J[b+4>>2];e=j-1|0;t:{if(!(e&j)){b=b&e;break t}if(b>>>0<j>>>0){break t}b=(b>>>0)%(j>>>0)|0}b=J[c+32>>2]+(b<<2)|0;break s}J[d>>2]=J[b>>2]}J[b>>2]=d}J[c+44>>2]=J[c+44>>2]+1;q=J[c+8>>2];r=J[c+4>>2];s=J[c+16>>2]}J[(f<<2)+s>>2]=u;u=u+1|0;if((q|0)!=(r|0)){J[r>>2]=f;r=r+4|0;J[c+4>>2]=r;break f}e=J[c>>2];b=q-e|0;i=b>>2;d=i+1|0;if(d>>>0>=1073741824){break c}g=b>>>1|0;d=b>>>0>=2147483644?1073741823:d>>>0<g>>>0?g:d;if(d){if(d>>>0>=1073741824){break b}b=oa(d<<2)}else{b=0}h=b+(i<<2)|0;J[h>>2]=f;r=h+4|0;if((e|0)!=(q|0)){while(1){h=h-4|0;q=q-4|0;J[h>>2]=J[q>>2];if((e|0)!=(q|0)){continue}break}}q=b+(d<<2)|0;J[c+8>>2]=q;J[c+4>>2]=r;J[c>>2]=h;if(e){na(e)}}f=f+1|0;b=J[a+80>>2];if(f>>>0<b>>>0){continue}break}if((b|0)!=(u|0)){da[J[J[a>>2]+24>>2]](a,c+16|0,c);J[a+80>>2]=u}a=J[c>>2];if(!a){break d}J[c+4>>2]=a;na(a)}a=J[c+16>>2];if(a){J[c+20>>2]=a;na(a)}f=J[c+40>>2];if(f){while(1){a=J[f>>2];na(f);f=a;if(f){continue}break}}a=J[c+32>>2];J[c+32>>2]=0;if(a){na(a)}ba=c- -64|0;return}qa();B()}xa();B()}qa();B()}function hb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=Q(0),l=0,m=0,n=Q(0),o=0;a:{if(!d){break a}b:{c:{switch(J[a+28>>2]-1|0){case 0:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(g<<3)+d|0;i=H[b|0];J[e>>2]=i;J[e+4>>2]=i>>31;b=b+1|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 1:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(g<<3)+d|0;J[e>>2]=K[b|0];J[e+4>>2]=0;b=b+1|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 2:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(g<<3)+d|0;i=I[b>>1];J[e>>2]=i;J[e+4>>2]=i>>31;b=b+2|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 3:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(g<<3)+d|0;J[e>>2]=L[b>>1];J[e+4>>2]=0;b=b+2|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 4:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(g<<3)+d|0;i=J[b>>2];J[e>>2]=i;J[e+4>>2]=i>>31;b=b+4|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 5:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(g<<3)+d|0;J[e>>2]=J[b>>2];J[e+4>>2]=0;b=b+4|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 6:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}i=J[b+4>>2];e=(g<<3)+d|0;J[e>>2]=J[b>>2];J[e+4>>2]=i;b=b+8|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 7:e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=J[b>>2];i=J[b+4>>2];if((i|0)<0){break a}j=(g<<3)+d|0;J[j>>2]=e;J[j+4>>2]=i;b=b+8|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 8:d:{e=K[a+24|0];f=c&255;if(!(e>>>0<f>>>0?e:f)){break d}if(K[a+32|0]){break a}e=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+e|0;e=J[a>>2];i=J[e+4>>2];e=J[e>>2];if((b|0)>=(i-e|0)){break a}g=b+e|0;h=c&255;b=0;while(1){k=N[g>>2];if(k>=Q(0x8000000000000000)|k<Q(-0x8000000000000000)|k!=k){break a}n=Q(R(k));if(n==Q(Infinity)){break a}e=(b<<3)+d|0;e:{if(n<Q(0x8000000000000000)){j=Q(R(k))>=Q(1)?~~(k>Q(0)?Q(T(Q(V(Q(k*Q(2.3283064365386963e-10)))),Q(4294967296))):Q(W(Q(Q(k-Q(~~k>>>0>>>0))*Q(2.3283064365386963e-10)))))>>>0:0;m=~~k>>>0;break e}j=-2147483648;m=0}J[e>>2]=m;J[e+4>>2]=j;b=b+1|0;e=K[a+24|0];if(b>>>0>=(e>>>0<h>>>0?e:h)>>>0){break d}g=g+4|0;if(i>>>0>g>>>0){continue}break}break a}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 9:f:{e=K[a+24|0];f=c&255;if(!(e>>>0<f>>>0?e:f)){break f}if(K[a+32|0]){break a}e=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+e|0;e=J[a>>2];i=J[e+4>>2];e=J[e>>2];if((b|0)>=(i-e|0)){break a}g=b+e|0;h=c&255;b=0;while(1){l=O[g>>3];if(l>=0x8000000000000000|l<-0x8000000000000000|l!=l){break a}o=R(l);if(o==Infinity){break a}e=(b<<3)+d|0;g:{if(o<0x8000000000000000){j=R(l)>=1?~~(l>0?T(V(l*2.3283064365386963e-10),4294967295):W((l-+(~~l>>>0>>>0))*2.3283064365386963e-10))>>>0:0;m=~~l>>>0;break g}j=-2147483648;m=0}J[e>>2]=m;J[e+4>>2]=j;b=b+1|0;e=K[a+24|0];if(b>>>0>=(e>>>0<h>>>0?e:h)>>>0){break f}g=g+8|0;if(i>>>0>g>>>0){continue}break}break a}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0;break b;case 10:break c;default:break a}}e=K[a+24|0];f=c&255;if(e>>>0<f>>>0?e:f){e=J[a>>2];h=J[e>>2];i=J[a+48>>2];b=Hl(J[a+40>>2],J[a+44>>2],b,0);j=b;b=b+i|0;b=b+h|0;h=J[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(g<<3)+d|0;J[e>>2]=K[b|0];J[e+4>>2]=0;b=b+1|0;g=g+1|0;e=K[a+24|0];if(g>>>0<(e>>>0<f>>>0?e:f)>>>0){continue}break}}if(e>>>0>=f>>>0){break a}d=(e<<3)+d|0;a=(c&255)-e|0}pa(d,0,a<<3)}}function ak(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=ba-16|0;ba=e;f=J[a+48>>2];b=oa(32);J[e>>2]=b;J[e+4>>2]=20;J[e+8>>2]=-2147483616;c=K[1359]|K[1360]<<8|(K[1361]<<16|K[1362]<<24);H[b+16|0]=c;H[b+17|0]=c>>>8;H[b+18|0]=c>>>16;H[b+19|0]=c>>>24;c=K[1355]|K[1356]<<8|(K[1357]<<16|K[1358]<<24);d=K[1351]|K[1352]<<8|(K[1353]<<16|K[1354]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1347]|K[1348]<<8|(K[1349]<<16|K[1350]<<24);d=K[1343]|K[1344]<<8|(K[1345]<<16|K[1346]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+20|0]=0;f=Lf(f+24|0,e);if(H[e+11|0]<0){na(J[e>>2])}g=J[a+48>>2];b=oa(32);J[e>>2]=b;J[e+4>>2]=22;J[e+8>>2]=-2147483616;c=K[1338]|K[1339]<<8|(K[1340]<<16|K[1341]<<24);d=K[1334]|K[1335]<<8|(K[1336]<<16|K[1337]<<24);H[b+14|0]=d;H[b+15|0]=d>>>8;H[b+16|0]=d>>>16;H[b+17|0]=d>>>24;H[b+18|0]=c;H[b+19|0]=c>>>8;H[b+20|0]=c>>>16;H[b+21|0]=c>>>24;c=K[1332]|K[1333]<<8|(K[1334]<<16|K[1335]<<24);d=K[1328]|K[1329]<<8|(K[1330]<<16|K[1331]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1324]|K[1325]<<8|(K[1326]<<16|K[1327]<<24);d=K[1320]|K[1321]<<8|(K[1322]<<16|K[1323]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+22|0]=0;g=Lf(g+24|0,e);if(H[e+11|0]<0){na(J[e>>2])}b=J[a+64>>2];J[a+64>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}b=J[a+56>>2];h=J[b+100>>2];i=J[a+48>>2];j=J[b+96>>2];b=oa(32);J[e>>2]=b;J[e+4>>2]=18;J[e+8>>2]=-2147483616;c=K[1566]|K[1567]<<8;H[b+16|0]=c;H[b+17|0]=c>>>8;c=K[1562]|K[1563]<<8|(K[1564]<<16|K[1565]<<24);d=K[1558]|K[1559]<<8|(K[1560]<<16|K[1561]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1554]|K[1555]<<8|(K[1556]<<16|K[1557]<<24);d=K[1550]|K[1551]<<8|(K[1552]<<16|K[1553]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+18|0]=0;b=Bb(i,e,-1);if(H[e+11|0]<0){na(J[e>>2])}c=(h-j|0)/12|0;a:{b:{c:{d:{e:{f:{g:{h:{switch(b+1|0){case 1:break f;case 3:break g;case 0:break h;default:break c}}if(!f){break g}if(c>>>0<1e3|(cb(J[a+48>>2])|0)>4|g^1){break e}}b=J[a+44>>2];H[e|0]=2;c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],e,e+1|0)}b=oa(360);J[b+4>>2]=0;J[b+8>>2]=0;J[b+72>>2]=0;J[b+76>>2]=0;J[b>>2]=10584;J[b+12>>2]=0;J[b+16>>2]=0;J[b+20>>2]=0;J[b+24>>2]=0;J[b+28>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;J[b+40>>2]=0;J[b+44>>2]=0;J[b+48>>2]=0;J[b+52>>2]=0;J[b+56>>2]=0;J[b+60>>2]=0;J[b+64>>2]=0;J[b+80>>2]=0;J[b+84>>2]=0;J[b+88>>2]=0;J[b+92>>2]=0;J[b+96>>2]=0;J[b+100>>2]=0;J[b+104>>2]=0;J[b+108>>2]=0;J[b+112>>2]=0;J[b+116>>2]=0;J[b+120>>2]=0;J[b+124>>2]=0;J[b+128>>2]=0;J[b+132>>2]=0;J[b+136>>2]=1065353216;J[b+156>>2]=0;J[b+160>>2]=0;J[b+148>>2]=0;J[b+152>>2]=0;J[b+140>>2]=0;J[b+144>>2]=0;J[b+168>>2]=0;J[b+172>>2]=0;J[b+164>>2]=-1;J[b+176>>2]=0;J[b+180>>2]=0;J[b+184>>2]=0;J[b+188>>2]=0;J[b+192>>2]=0;c=b+200|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=b+232|0;J[c>>2]=0;J[c+4>>2]=0;H[c+24|0]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[b+304>>2]=0;J[b+308>>2]=0;J[b+296>>2]=0;J[b+300>>2]=0;J[b+288>>2]=0;J[b+292>>2]=0;J[b+280>>2]=0;J[b+284>>2]=0;J[b+272>>2]=0;J[b+276>>2]=0;J[b+264>>2]=0;J[b+268>>2]=0;H[b+352|0]=0;J[b+344>>2]=0;J[b+336>>2]=0;J[b+340>>2]=0;J[b+328>>2]=2;J[b+332>>2]=7;J[b+320>>2]=-1;J[b+324>>2]=0;J[b+312>>2]=0;J[b+316>>2]=-1;break d}if(!f){break c}}b=J[a+44>>2];H[e|0]=0;c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],e,e+1|0)}b=oa(296);J[b+4>>2]=0;J[b+8>>2]=0;J[b+72>>2]=0;J[b+76>>2]=0;J[b>>2]=10532;J[b+12>>2]=0;J[b+16>>2]=0;J[b+20>>2]=0;J[b+24>>2]=0;J[b+28>>2]=0;J[b+32>>2]=0;J[b+36>>2]=0;J[b+40>>2]=0;J[b+44>>2]=0;J[b+48>>2]=0;J[b+52>>2]=0;J[b+56>>2]=0;J[b+60>>2]=0;J[b+64>>2]=0;J[b+80>>2]=0;J[b+84>>2]=0;J[b+88>>2]=0;J[b+92>>2]=0;J[b+96>>2]=0;J[b+100>>2]=0;J[b+104>>2]=0;J[b+108>>2]=0;J[b+112>>2]=0;J[b+116>>2]=0;J[b+120>>2]=0;J[b+124>>2]=0;J[b+128>>2]=0;J[b+132>>2]=0;J[b+136>>2]=1065353216;J[b+156>>2]=0;J[b+160>>2]=0;J[b+148>>2]=0;J[b+152>>2]=0;J[b+140>>2]=0;J[b+144>>2]=0;J[b+168>>2]=0;J[b+172>>2]=0;J[b+164>>2]=-1;J[b+176>>2]=0;J[b+180>>2]=0;J[b+184>>2]=0;J[b+188>>2]=0;J[b+192>>2]=0;c=b+200|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=b+232|0;J[c>>2]=0;J[c+4>>2]=0;H[c+24|0]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;H[b+288|0]=0;J[b+280>>2]=0;J[b+284>>2]=0;J[b+272>>2]=0;J[b+276>>2]=0;J[b+264>>2]=0;J[b+268>>2]=0}c=J[a+64>>2];J[a+64>>2]=b;if(!c){break b}da[J[J[c>>2]+4>>2]](c)}b=J[a+64>>2];if(b){break b}a=0;break a}a=da[J[J[b>>2]+8>>2]](b,a)|0}ba=e+16|0;return a|0}function qh(a,b,c,d){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,C=0,D=0,E=0,F=0,G=0,I=0,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=ba-80|0;ba=i;f=-1;h=-1;a:{if((b|0)==-1){break a}h=b+1|0;f=(h>>>0)%3|0?h:b-2|0;h=b-1|0;if((b>>>0)%3|0){break a}h=b+2|0}e=J[a+36>>2];b=J[e>>2];b:{c:{d:{e:{f:{g:{e=J[e+4>>2]-b>>2;g=f<<2;f=J[J[a+32>>2]+28>>2];g=J[g+f>>2];if(e>>>0<=g>>>0){break g}h=J[f+(h<<2)>>2];if(h>>>0>=e>>>0){break g}h:{j=J[b+(h<<2)>>2];g=J[b+(g<<2)>>2];if((j|0)>=(d|0)|(g|0)>=(d|0)){break h}b=(j<<3)+c|0;z=J[b+4>>2];f=(g<<3)+c|0;h=J[f+4>>2];f=J[f>>2];C=J[b>>2];if(!((f|0)!=(C|0)|(h|0)!=(z|0))){J[a+8>>2]=f;J[a+12>>2]=h;break c}b=J[J[a+4>>2]+(d<<2)>>2];J[i+72>>2]=0;J[i+76>>2]=0;e=i- -64|0;J[e>>2]=0;J[e+4>>2]=0;J[i+56>>2]=0;J[i+60>>2]=0;e=J[a>>2];if(!K[e+84|0]){b=J[J[e+68>>2]+(b<<2)>>2]}hb(e,b,H[e+24|0],i+56|0);b=J[J[a+4>>2]+(g<<2)>>2];J[i+48>>2]=0;J[i+52>>2]=0;J[i+40>>2]=0;J[i+44>>2]=0;J[i+32>>2]=0;J[i+36>>2]=0;e=J[a>>2];if(!K[e+84|0]){b=J[J[e+68>>2]+(b<<2)>>2]}hb(e,b,H[e+24|0],i+32|0);b=J[J[a+4>>2]+(j<<2)>>2];J[i+24>>2]=0;J[i+28>>2]=0;J[i+16>>2]=0;J[i+20>>2]=0;J[i+8>>2]=0;J[i+12>>2]=0;e=J[a>>2];if(!K[e+84|0]){b=J[J[e+68>>2]+(b<<2)>>2]}hb(e,b,H[e+24|0],i+8|0);b=J[i+16>>2];p=J[i+40>>2];u=b-p|0;N=J[i+44>>2];b=J[i+20>>2]-(N+(b>>>0<p>>>0)|0)|0;I=b;e=Hl(u,b,u,b);j=ca;b=J[i+8>>2];x=J[i+32>>2];D=b-x|0;O=J[i+36>>2];b=J[i+12>>2]-(O+(b>>>0<x>>>0)|0)|0;L=b;k=e;e=Hl(D,b,D,b);b=k+e|0;k=ca+j|0;k=b>>>0<e>>>0?k+1|0:k;e=J[i+24>>2];E=J[i+48>>2];F=e-E|0;P=J[i+52>>2];e=J[i+28>>2]-(P+(e>>>0<E>>>0)|0)|0;M=e;m=b;b=Hl(F,e,F,e);o=m+b|0;e=ca+k|0;q=b>>>0>o>>>0?e+1|0:e;if(!(q|o)){break h}b=0;v=Jl(-1,2147483647,o,q);e=f;f=e>>31;G=f;r=e;e=f>>31;g=e;l=r^e;e=l-e|0;f=(f^g)-((g>>>0>l>>>0)+g|0)|0;g=f;f=h>>31;Q=f;s=h;h=f>>31;l=s^h;n=l-h|0;k=f>>31;h=(k^f)-((h>>>0>l>>>0)+k|0)|0;f=(h|0)==(g|0)&e>>>0>n>>>0|g>>>0>h>>>0;e=f?e:n;j=ca;h=f?g:h;if((j|0)==(h|0)&e>>>0>v>>>0|h>>>0>j>>>0){break b}j=J[i+64>>2];R=J[i+68>>2];h=Hl(j-p|0,R-((j>>>0<p>>>0)+N|0)|0,u,I);f=ca;l=J[i+56>>2];S=J[i+60>>2];e=Hl(l-x|0,S-((l>>>0<x>>>0)+O|0)|0,D,L);h=e+h|0;g=ca+f|0;g=e>>>0>h>>>0?g+1|0:g;f=h;n=J[i+72>>2];T=J[i+76>>2];h=Hl(n-E|0,T-((n>>>0<E>>>0)+P|0)|0,F,M);t=f+h|0;f=ca+g|0;f=h>>>0>t>>>0?f+1|0:f;v=f;e=f>>31;k=e^t;h=k-e|0;k=(e^f)-((e>>>0>k>>>0)+e|0)|0;f=C;C=f-r|0;f=(f>>31)-((f>>>0<r>>>0)+G|0)|0;U=f;A=f>>31;m=A^C;g=m-A|0;e=f>>31;f=(e^f)-((m>>>0<A>>>0)+e|0)|0;m=f;A=z-s|0;f=(z>>31)-((s>>>0>z>>>0)+Q|0)|0;z=f;e=g;W=e;w=f>>31;y=w^A;V=y-w|0;g=f>>31;f=(g^f)-((w>>>0>y>>>0)+g|0)|0;e=(m|0)==(f|0)&e>>>0>V>>>0|f>>>0<m>>>0;f=Jl(-1,2147483647,e?W:V,e?m:f);e=ca;if((e|0)==(k|0)&f>>>0<h>>>0|e>>>0<k>>>0){break b}f=h;h=k;e=L>>31;g=e;m=e^D;e=m-e|0;g=(g^L)-((g>>>0>m>>>0)+g|0)|0;k=I>>31;w=k^u;y=w-k|0;k=(k^I)-((k>>>0>w>>>0)+k|0)|0;m=(g|0)==(k|0)&e>>>0>y>>>0|g>>>0>k>>>0;e=m?e:y;g=m?g:k;k=M>>31;m=e;w=k^F;y=w-k|0;k=(k^M)-((k>>>0>w>>>0)+k|0)|0;e=(g|0)==(k|0)&e>>>0>y>>>0|g>>>0>k>>>0;e=Jl(-1,2147483647,e?m:y,e?g:k);g=ca;if((g|0)==(h|0)&e>>>0<f>>>0|g>>>0<h>>>0){break b}b=Hl(t,v,A,z);h=ca;f=Hl(o,q,s,Q);s=f+b|0;b=ca+h|0;k=f>>>0>s>>>0?b+1|0:b;b=Hl(t,v,C,U);h=ca;f=b;b=Hl(r,G,o,q);r=f+b|0;e=ca+h|0;G=b>>>0>r>>>0?e+1|0:e;h=1;b=0;g=Il(Hl(t,v,u,I),ca,o,q);e=g+p|0;f=ca+N|0;f=e>>>0<g>>>0?f+1|0:f;g=j-e|0;f=R-((e>>>0>j>>>0)+f|0)|0;j=Hl(g,f,g,f);p=ca;e=Il(Hl(t,v,D,L),ca,o,q);f=e+x|0;g=ca+O|0;g=e>>>0>f>>>0?g+1|0:g;e=l-f|0;f=S-((f>>>0>l>>>0)+g|0)|0;g=Hl(e,f,e,f);f=g+j|0;e=ca+p|0;e=f>>>0<g>>>0?e+1|0:e;l=f;j=Il(Hl(t,v,F,M),ca,o,q);g=j+E|0;f=ca+P|0;f=g>>>0<j>>>0?f+1|0:f;j=n-g|0;f=T-((g>>>0>n>>>0)+f|0)|0;j=Hl(j,f,j,f);f=j+l|0;g=ca+e|0;f=Hl(f,f>>>0<j>>>0?g+1|0:g,o,q);e=ca;j=e;if(!e&f>>>0<=1){break f}l=f;while(1){g=b<<1|h>>>31;h=h<<1;b=g;n=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(n){continue}break}break e}if((d|0)>(g|0)){b=g<<1}else{if((d|0)<=0){J[a+8>>2]=0;J[a+12>>2]=0;break c}b=(d<<1)-2|0}b=(b<<2)+c|0;J[a+8>>2]=J[b>>2];J[a+12>>2]=J[b+4>>2];break c}ra();B()}b=j;h=f;if(f-1|0){break d}}while(1){e=Jl(f,j,h,b);b=b+ca|0;g=h;h=e+h|0;b=g>>>0>h>>>0?b+1|0:b;h=(b&1)<<31|h>>>1;b=b>>>1|0;e=Hl(h,b,h,b);g=ca;if((j|0)==(g|0)&e>>>0>f>>>0|g>>>0>j>>>0){continue}break}}t=a+16|0;j=(d<<3)+c|0;d=J[j+4>>2];g=Hl(h,b,C,U);p=ca;c=Il(s-g|0,k-(p+(g>>>0>s>>>0)|0)|0,o,q);f=d-c|0;e=d>>31;l=e-(ca+(c>>>0>d>>>0)|0)|0;n=Hl(f,l,f,l);u=ca;j=J[j>>2];f=j>>31;v=f;l=Hl(h,b,A,z);x=ca;b=G+x|0;h=l+r|0;b=h>>>0<r>>>0?b+1|0:b;m=n;h=Il(h,b,o,q);b=j-h|0;f=f-(ca+(h>>>0>j>>>0)|0)|0;n=Hl(b,f,b,f);b=m+n|0;f=ca+u|0;u=b;n=b>>>0<n>>>0?f+1|0:f;f=e;e=k+p|0;b=g+s|0;e=b>>>0<s>>>0?e+1|0:e;b=Il(b,e,o,q);e=d-b|0;d=f-(ca+(b>>>0>d>>>0)|0)|0;e=Hl(e,d,e,d);p=ca;d=Il(r-l|0,G-((l>>>0>r>>>0)+x|0)|0,o,q);f=j-d|0;g=v-(ca+(d>>>0>j>>>0)|0)|0;j=Hl(f,g,f,g);g=j+e|0;f=ca+p|0;f=g>>>0<j>>>0?f+1|0:f;i:{if((f|0)==(n|0)&g>>>0>u>>>0|f>>>0>n>>>0){H[i+7|0]=1;Wc(t,i+7|0);break i}H[i+7|0]=0;Wc(t,i+7|0);c=b;h=d}J[a+8>>2]=h;J[a+12>>2]=c}b=1}ba=i+80|0;return b}function lh(a,b,c,d){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,C=0,D=0,E=0,F=0,G=0,I=0,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=ba-80|0;ba=i;h=-1;a:{if((b|0)==-1){break a}f=J[a+32>>2];e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){h=J[J[f>>2]+(e<<2)>>2]}e=((b>>>0)%3|0?-1:2)+b|0;b=-1;b=(e|0)!=-1?J[J[f>>2]+(e<<2)>>2]:b;e=J[a+36>>2];f=J[e>>2];e=J[e+4>>2]-f>>2;if(e>>>0<=h>>>0|b>>>0>=e>>>0){break a}b:{c:{d:{e:{f:{g:{j=J[f+(b<<2)>>2];g=J[f+(h<<2)>>2];if((j|0)>=(d|0)|(g|0)>=(d|0)){break g}b=(j<<3)+c|0;z=J[b+4>>2];f=(g<<3)+c|0;h=J[f+4>>2];f=J[f>>2];C=J[b>>2];if(!((f|0)!=(C|0)|(h|0)!=(z|0))){J[a+8>>2]=f;J[a+12>>2]=h;break c}b=J[J[a+4>>2]+(d<<2)>>2];J[i+72>>2]=0;J[i+76>>2]=0;e=i- -64|0;J[e>>2]=0;J[e+4>>2]=0;J[i+56>>2]=0;J[i+60>>2]=0;e=J[a>>2];if(!K[e+84|0]){b=J[J[e+68>>2]+(b<<2)>>2]}hb(e,b,H[e+24|0],i+56|0);b=J[J[a+4>>2]+(g<<2)>>2];J[i+48>>2]=0;J[i+52>>2]=0;J[i+40>>2]=0;J[i+44>>2]=0;J[i+32>>2]=0;J[i+36>>2]=0;e=J[a>>2];if(!K[e+84|0]){b=J[J[e+68>>2]+(b<<2)>>2]}hb(e,b,H[e+24|0],i+32|0);b=J[J[a+4>>2]+(j<<2)>>2];J[i+24>>2]=0;J[i+28>>2]=0;J[i+16>>2]=0;J[i+20>>2]=0;J[i+8>>2]=0;J[i+12>>2]=0;e=J[a>>2];if(!K[e+84|0]){b=J[J[e+68>>2]+(b<<2)>>2]}hb(e,b,H[e+24|0],i+8|0);b=J[i+16>>2];p=J[i+40>>2];u=b-p|0;N=J[i+44>>2];b=J[i+20>>2]-(N+(b>>>0<p>>>0)|0)|0;I=b;e=Hl(u,b,u,b);j=ca;b=J[i+8>>2];x=J[i+32>>2];D=b-x|0;O=J[i+36>>2];b=J[i+12>>2]-(O+(b>>>0<x>>>0)|0)|0;L=b;k=e;e=Hl(D,b,D,b);b=k+e|0;k=ca+j|0;k=b>>>0<e>>>0?k+1|0:k;e=J[i+24>>2];E=J[i+48>>2];F=e-E|0;P=J[i+52>>2];e=J[i+28>>2]-(P+(e>>>0<E>>>0)|0)|0;M=e;m=b;b=Hl(F,e,F,e);o=m+b|0;e=ca+k|0;q=b>>>0>o>>>0?e+1|0:e;if(!(q|o)){break g}b=0;v=Jl(-1,2147483647,o,q);e=f;f=e>>31;G=f;r=e;e=f>>31;g=e;l=r^e;e=l-e|0;f=(f^g)-((g>>>0>l>>>0)+g|0)|0;g=f;f=h>>31;Q=f;s=h;h=f>>31;l=s^h;n=l-h|0;k=f>>31;h=(k^f)-((h>>>0>l>>>0)+k|0)|0;f=(h|0)==(g|0)&e>>>0>n>>>0|g>>>0>h>>>0;e=f?e:n;j=ca;h=f?g:h;if((j|0)==(h|0)&e>>>0>v>>>0|h>>>0>j>>>0){break b}j=J[i+64>>2];R=J[i+68>>2];h=Hl(j-p|0,R-((j>>>0<p>>>0)+N|0)|0,u,I);f=ca;l=J[i+56>>2];S=J[i+60>>2];e=Hl(l-x|0,S-((l>>>0<x>>>0)+O|0)|0,D,L);h=e+h|0;g=ca+f|0;g=e>>>0>h>>>0?g+1|0:g;f=h;n=J[i+72>>2];T=J[i+76>>2];h=Hl(n-E|0,T-((n>>>0<E>>>0)+P|0)|0,F,M);t=f+h|0;f=ca+g|0;f=h>>>0>t>>>0?f+1|0:f;v=f;e=f>>31;k=e^t;h=k-e|0;k=(e^f)-((e>>>0>k>>>0)+e|0)|0;f=C;C=f-r|0;f=(f>>31)-((f>>>0<r>>>0)+G|0)|0;U=f;A=f>>31;m=A^C;g=m-A|0;e=f>>31;f=(e^f)-((m>>>0<A>>>0)+e|0)|0;m=f;A=z-s|0;f=(z>>31)-((s>>>0>z>>>0)+Q|0)|0;z=f;e=g;W=e;w=f>>31;y=w^A;V=y-w|0;g=f>>31;f=(g^f)-((w>>>0>y>>>0)+g|0)|0;e=(m|0)==(f|0)&e>>>0>V>>>0|f>>>0<m>>>0;f=Jl(-1,2147483647,e?W:V,e?m:f);e=ca;if((e|0)==(k|0)&f>>>0<h>>>0|e>>>0<k>>>0){break b}f=h;h=k;e=L>>31;g=e;m=e^D;e=m-e|0;g=(g^L)-((g>>>0>m>>>0)+g|0)|0;k=I>>31;w=k^u;y=w-k|0;k=(k^I)-((k>>>0>w>>>0)+k|0)|0;m=(g|0)==(k|0)&e>>>0>y>>>0|g>>>0>k>>>0;e=m?e:y;g=m?g:k;k=M>>31;m=e;w=k^F;y=w-k|0;k=(k^M)-((k>>>0>w>>>0)+k|0)|0;e=(g|0)==(k|0)&e>>>0>y>>>0|g>>>0>k>>>0;e=Jl(-1,2147483647,e?m:y,e?g:k);g=ca;if((g|0)==(h|0)&e>>>0<f>>>0|g>>>0<h>>>0){break b}b=Hl(t,v,A,z);h=ca;f=Hl(o,q,s,Q);s=f+b|0;b=ca+h|0;k=f>>>0>s>>>0?b+1|0:b;b=Hl(t,v,C,U);h=ca;f=b;b=Hl(r,G,o,q);r=f+b|0;e=ca+h|0;G=b>>>0>r>>>0?e+1|0:e;h=1;b=0;g=Il(Hl(t,v,u,I),ca,o,q);e=g+p|0;f=ca+N|0;f=e>>>0<g>>>0?f+1|0:f;g=j-e|0;f=R-((e>>>0>j>>>0)+f|0)|0;j=Hl(g,f,g,f);p=ca;e=Il(Hl(t,v,D,L),ca,o,q);f=e+x|0;g=ca+O|0;g=e>>>0>f>>>0?g+1|0:g;e=l-f|0;f=S-((f>>>0>l>>>0)+g|0)|0;g=Hl(e,f,e,f);f=g+j|0;e=ca+p|0;e=f>>>0<g>>>0?e+1|0:e;l=f;j=Il(Hl(t,v,F,M),ca,o,q);g=j+E|0;f=ca+P|0;f=g>>>0<j>>>0?f+1|0:f;j=n-g|0;f=T-((g>>>0>n>>>0)+f|0)|0;j=Hl(j,f,j,f);f=j+l|0;g=ca+e|0;f=Hl(f,f>>>0<j>>>0?g+1|0:g,o,q);e=ca;j=e;if(!e&f>>>0<=1){break f}l=f;while(1){g=b<<1|h>>>31;h=h<<1;b=g;n=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(n){continue}break}break e}if((d|0)>(g|0)){b=g<<1}else{if((d|0)<=0){J[a+8>>2]=0;J[a+12>>2]=0;break c}b=(d<<1)-2|0}b=(b<<2)+c|0;J[a+8>>2]=J[b>>2];J[a+12>>2]=J[b+4>>2];break c}b=j;h=f;if(f-1|0){break d}}while(1){e=Jl(f,j,h,b);b=b+ca|0;g=h;h=e+h|0;b=g>>>0>h>>>0?b+1|0:b;h=(b&1)<<31|h>>>1;b=b>>>1|0;e=Hl(h,b,h,b);g=ca;if((j|0)==(g|0)&e>>>0>f>>>0|g>>>0>j>>>0){continue}break}}t=a+16|0;j=(d<<3)+c|0;d=J[j+4>>2];g=Hl(h,b,C,U);p=ca;c=Il(s-g|0,k-(p+(g>>>0>s>>>0)|0)|0,o,q);f=d-c|0;e=d>>31;l=e-(ca+(c>>>0>d>>>0)|0)|0;n=Hl(f,l,f,l);u=ca;j=J[j>>2];f=j>>31;v=f;l=Hl(h,b,A,z);x=ca;b=G+x|0;h=l+r|0;b=h>>>0<r>>>0?b+1|0:b;m=n;h=Il(h,b,o,q);b=j-h|0;f=f-(ca+(h>>>0>j>>>0)|0)|0;n=Hl(b,f,b,f);b=m+n|0;f=ca+u|0;u=b;n=b>>>0<n>>>0?f+1|0:f;f=e;e=k+p|0;b=g+s|0;e=b>>>0<s>>>0?e+1|0:e;b=Il(b,e,o,q);e=d-b|0;d=f-(ca+(b>>>0>d>>>0)|0)|0;e=Hl(e,d,e,d);p=ca;d=Il(r-l|0,G-((l>>>0>r>>>0)+x|0)|0,o,q);f=j-d|0;g=v-(ca+(d>>>0>j>>>0)|0)|0;j=Hl(f,g,f,g);g=j+e|0;f=ca+p|0;f=g>>>0<j>>>0?f+1|0:f;h:{if((f|0)==(n|0)&g>>>0>u>>>0|f>>>0>n>>>0){H[i+7|0]=1;Wc(t,i+7|0);break h}H[i+7|0]=0;Wc(t,i+7|0);c=b;h=d}J[a+8>>2]=h;J[a+12>>2]=c}b=1}ba=i+80|0;return b}ra();B()}function Zc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=ba-16|0;ba=e;J[a+8>>2]=b;J[a>>2]=0;d=a+12|0;J[d>>2]=0;J[d+4>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;c=d+32|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d- -64|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+96|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+128|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+160|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+192|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+224|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+256|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+288|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+320|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+352|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+384|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+416|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+448|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+480|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+512|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+544|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+576|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+608|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+640|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+672|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+704|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+736|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+768|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+800|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+832|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+864|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+896|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+928|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;c=d+960|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;d=d+992|0;J[d>>2]=0;J[d+4>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=a+1036|0;J[d>>2]=0;J[d+4>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=a+1068|0;J[d>>2]=0;J[d+4>>2]=0;J[d+16>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=a+1088|0;J[d>>2]=0;J[d+4>>2]=0;J[d+16>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;d=a+1108|0;J[d>>2]=0;J[d+4>>2]=0;J[d+16>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;J[a+1136>>2]=0;J[a+1128>>2]=0;J[a+1132>>2]=0;h=a+1164|0;a:{b:{if(b){if(b>>>0<1073741824){break b}qa();B()}J[a+1140>>2]=0;J[a+1144>>2]=0;d=a+1156|0;J[d>>2]=0;J[d+4>>2]=0;d=a+1148|0;J[d>>2]=0;J[d+4>>2]=0;J[e+8>>2]=0;J[e>>2]=0;J[e+4>>2]=0;d=1;break a}d=b<<2;c=oa(d);J[a+1128>>2]=c;f=c+d|0;J[a+1136>>2]=f;pa(c,0,d);g=a+1148|0;J[g>>2]=0;J[a+1140>>2]=0;J[a+1144>>2]=0;J[a+1132>>2]=f;c=oa(d);J[a+1140>>2]=c;f=c+d|0;J[g>>2]=f;pa(c,0,d);g=a+1160|0;J[g>>2]=0;J[a+1152>>2]=0;J[a+1156>>2]=0;J[a+1144>>2]=f;c=oa(d);J[a+1152>>2]=c;f=c+d|0;J[g>>2]=f;pa(c,0,d);J[a+1156>>2]=f;c=oa(d);J[e>>2]=c;f=c+d|0;J[e+8>>2]=f;pa(c,0,d);J[e+4>>2]=f;d=b<<5|1}Jb(h,d,e);c=J[e>>2];if(c){J[e+4>>2]=c;na(c)}J[e+8>>2]=0;J[e>>2]=0;J[e+4>>2]=0;if(b){b=b<<2;c=oa(b);J[e>>2]=c;f=b+c|0;J[e+8>>2]=f;pa(c,0,b);J[e+4>>2]=f}Jb(a+1176|0,d,e);b=J[e>>2];if(b){J[e+4>>2]=b;na(b)}ba=e+16|0;return a}function Xf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{if(J[a+92>>2]==J[a+88>>2]){break e}c=J[a+52>>2];f:{if((c|0)!=J[a+56>>2]){J[c>>2]=b;J[a+52>>2]=c+4;break f}h=J[a+48>>2];g=c-h|0;d=g>>2;f=d+1|0;if(f>>>0>=1073741824){break a}e=g>>>1|0;g=g>>>0>=2147483644?1073741823:f>>>0<e>>>0?e:f;if(g){if(g>>>0>=1073741824){break d}e=oa(g<<2)}else{e=0}f=e+(d<<2)|0;J[f>>2]=b;d=f+4|0;if((c|0)!=(h|0)){while(1){f=f-4|0;c=c-4|0;J[f>>2]=J[c>>2];if((c|0)!=(h|0)){continue}break}}J[a+56>>2]=e+(g<<2);J[a+52>>2]=d;J[a+48>>2]=f;if(!h){break f}na(h)}J[a+84>>2]=0;c=-1;e=-1;g:{if((b|0)==-1){break g}d=J[a+4>>2];e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){c=J[J[d>>2]+(e<<2)>>2]}h:{if((b>>>0)%3|0){l=b-1|0;break h}l=b+2|0;e=-1;if((l|0)==-1){break g}}e=J[J[d>>2]+(l<<2)>>2]}i=e>>>3&536870908;d=J[a+36>>2];h=d+(c>>>3&536870908)|0;g=J[h>>2];f=1<<c;if(!(g&f)){J[h>>2]=f|g;f=a+8|0;if((b|0)!=-1){d=b+1|0;d=(d>>>0)%3|0?d:b-2|0}else{d=-1}mb(f,c,d);d=J[a+36>>2]}f=d+i|0;d=J[f>>2];c=1<<e;if(!(d&c)){J[f>>2]=c|d;d=a+8|0;c=-1;i:{if((b|0)==-1){break i}c=b-1|0;if((b>>>0)%3|0){break i}c=b+2|0}mb(d,e,c)}c=-1;c=(b|0)!=-1?J[J[J[a+4>>2]>>2]+(b<<2)>>2]:c;f=J[a+36>>2]+(c>>>3&536870908)|0;d=J[f>>2];e=1<<c;if(!(d&e)){J[f>>2]=d|e;mb(a+8|0,c,b)}d=J[a+84>>2];if((d|0)>2){break e}while(1){e=P(d,12)+a|0;b=J[e+52>>2];if((b|0)==J[e+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}b=b-4|0;c=J[b>>2];J[e+52>>2]=b;J[a+84>>2]=d;if((c|0)==-1){break e}f=J[a+24>>2];b=(c>>>0)/3|0;j:{if(J[f+(b>>>3&268435452)>>2]>>>b&1){break j}k:{while(1){k=(c>>>0)/3|0;b=(k>>>3&268435452)+f|0;J[b>>2]=J[b>>2]|1<<k;d=-1;l:{m:{n:{o:{p:{q:{r:{s:{d=(c|0)!=-1?J[J[J[a+4>>2]>>2]+(c<<2)>>2]:d;f=J[a+36>>2]+(d>>>3&536870908)|0;e=J[f>>2];b=1<<d;if(!(e&b)){J[f>>2]=b|e;i=J[(J[J[a+16>>2]+96>>2]+P(k,12)|0)+((c>>>0)%3<<2)>>2];l=J[J[a+20>>2]+4>>2];f=J[l+4>>2];t:{if((f|0)!=J[l+8>>2]){J[f>>2]=i;J[l+4>>2]=f+4;break t}j=J[l>>2];h=f-j|0;g=h>>2;e=g+1|0;if(e>>>0>=1073741824){break s}b=h>>>1|0;h=h>>>0>=2147483644?1073741823:b>>>0>e>>>0?b:e;if(h){if(h>>>0>=1073741824){break d}e=oa(h<<2)}else{e=0}b=e+(g<<2)|0;J[b>>2]=i;g=b+4|0;if((f|0)!=(j|0)){while(1){b=b-4|0;f=f-4|0;J[b>>2]=J[f>>2];if((f|0)!=(j|0)){continue}break}}J[l+8>>2]=e+(h<<2);J[l+4>>2]=g;J[l>>2]=b;if(!j){break t}na(j)}j=J[a+12>>2];f=J[j+4>>2];u:{if((f|0)!=J[j+8>>2]){J[f>>2]=c;J[j+4>>2]=f+4;break u}i=J[j>>2];h=f-i|0;g=h>>2;e=g+1|0;if(e>>>0>=1073741824){break r}b=h>>>1|0;h=h>>>0>=2147483644?1073741823:b>>>0>e>>>0?b:e;if(h){if(h>>>0>=1073741824){break d}e=oa(h<<2)}else{e=0}b=e+(g<<2)|0;J[b>>2]=c;g=b+4|0;if((f|0)!=(i|0)){while(1){b=b-4|0;f=f-4|0;J[b>>2]=J[f>>2];if((f|0)!=(i|0)){continue}break}}J[j+8>>2]=e+(h<<2);J[j+4>>2]=g;J[j>>2]=b;if(!i){break u}na(i)}b=J[a+12>>2];J[J[b+12>>2]+(d<<2)>>2]=J[b+24>>2];J[b+24>>2]=J[b+24>>2]+1}if((c|0)==-1){break k}g=J[a+4>>2];f=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){f=J[J[g+12>>2]+(b<<2)>>2]}v:{w:{if((P(k,3)|0)!=(c|0)){d=c-1|0;break w}d=c+2|0;c=-1;if((d|0)==-1){break v}}c=J[J[g+12>>2]+(d<<2)>>2]}d=(c|0)==-1;e=(c>>>0)/3|0;if((f|0)!=-1){b=(f>>>0)/3|0;b=J[J[a+24>>2]+(b>>>3&268435452)>>2]&1<<b;if(d){break q}l=(b|0)!=0;break p}l=1;if(!d){break p}break k}qa();B()}qa();B()}if(!b){break o}break k}b=d?-1:e;x:{if(J[J[a+24>>2]+(b>>>3&536870908)>>2]>>>b&1){break x}k=0;b=J[J[g>>2]+(c<<2)>>2];if(!(J[J[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=J[a+88>>2]+(b<<2)|0;e=J[b>>2];J[b>>2]=e+1;k=(e|0)<=0?2:1}if(J[a+84>>2]>=(k|0)&l){break m}j=P(k,12)+a|0;b=J[j+52>>2];y:{if((b|0)!=J[j+56>>2]){J[b>>2]=c;J[j+52>>2]=b+4;break y}i=J[j+48>>2];h=b-i|0;d=h>>2;g=d+1|0;if(g>>>0>=1073741824){break c}e=h>>>1|0;g=h>>>0>=2147483644?1073741823:e>>>0>g>>>0?e:g;if(g){if(g>>>0>=1073741824){break d}e=oa(g<<2)}else{e=0}d=e+(d<<2)|0;J[d>>2]=c;c=d+4|0;if((b|0)!=(i|0)){while(1){d=d-4|0;b=b-4|0;J[d>>2]=J[b>>2];if((b|0)!=(i|0)){continue}break}}J[j+48>>2]=d;J[j+52>>2]=c;J[j+56>>2]=e+(g<<2);if(!i){break y}na(i)}if(J[a+84>>2]<=(k|0)){break x}J[a+84>>2]=k}if(l){break k}c=-1;if((f|0)==-1){break n}}c=J[J[J[a+4>>2]>>2]+(f<<2)>>2]}b=0;if(!(J[J[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=J[a+88>>2]+(c<<2)|0;c=J[b>>2];J[b>>2]=c+1;b=(c|0)<=0?2:1}if(J[a+84>>2]<(b|0)){break l}c=f}f=J[a+24>>2];continue}break}k=P(b,12)+a|0;c=J[k+52>>2];z:{if((c|0)!=J[k+56>>2]){J[c>>2]=f;J[k+52>>2]=c+4;break z}i=J[k+48>>2];h=c-i|0;d=h>>2;g=d+1|0;if(g>>>0>=1073741824){break b}e=h>>>1|0;g=h>>>0>=2147483644?1073741823:e>>>0>g>>>0?e:g;if(g){if(g>>>0>=1073741824){break d}e=oa(g<<2)}else{e=0}d=e+(d<<2)|0;J[d>>2]=f;f=d+4|0;if((c|0)!=(i|0)){while(1){d=d-4|0;c=c-4|0;J[d>>2]=J[c>>2];if((c|0)!=(i|0)){continue}break}}J[k+48>>2]=d;J[k+52>>2]=f;J[k+56>>2]=e+(g<<2);if(!i){break z}na(i)}d=J[a+84>>2];if((d|0)<=(b|0)){break j}J[a+84>>2]=b;d=b;break j}d=J[a+84>>2]}if((d|0)<3){continue}break}}return 1}xa();B()}qa();B()}qa();B()}qa();B()}function Ha(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=ba-16|0;ba=e;J[e+12>>2]=a;a:{if(a>>>0<=211){d=J[Ke(17792,17984,e+12|0)>>2];break a}if(a>>>0>=4294967292){Z();B()}f=(a>>>0)/210|0;d=P(f,210);J[e+8>>2]=a-d;g=Ke(17984,18176,e+8|0)-17984>>2;while(1){d=J[(g<<2)+17984>>2]+d|0;a=5;while(1){b:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0<a>>>0){break a}if((P(a,b)|0)==(d|0)){break b}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}if((P(b,c)|0)==(d|0)){break b}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}a=a+210|0;if((P(b,c)|0)!=(d|0)){continue}break}break b}b=J[(a<<2)+17792>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break a}a=a+1|0;if((P(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=P(f,210);continue}}ba=e+16|0;return d}function Hd(a,b){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=Q(0),q=0,r=0,s=0,t=0,u=Q(0);f=ba-112|0;ba=f;J[f+88>>2]=0;J[f+92>>2]=0;J[f+80>>2]=0;J[f+84>>2]=0;J[f+96>>2]=1065353216;c=J[a+80>>2];J[f+40>>2]=0;J[f+32>>2]=0;J[f+36>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}h=c<<2;l=oa(h);J[f+32>>2]=l;c=h+l|0;J[f+40>>2]=c;pa(l,0,h);J[f+36>>2]=c;while(1){d=J[J[b>>2]>>2];h=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],o,0);j=c;c=c+h|0;e=c+d|0;c=K[e+12|0]|K[e+13|0]<<8|(K[e+14|0]<<16|K[e+15|0]<<24);J[f+72>>2]=K[e+8|0]|K[e+9|0]<<8|(K[e+10|0]<<16|K[e+11|0]<<24);J[f+76>>2]=c;c=K[e+4|0]|K[e+5|0]<<8|(K[e+6|0]<<16|K[e+7|0]<<24);J[f+64>>2]=K[e|0]|K[e+1|0]<<8|(K[e+2|0]<<16|K[e+3|0]<<24);J[f+68>>2]=c;k=K[e+12|0]|K[e+13|0]<<8|(K[e+14|0]<<16|K[e+15|0]<<24);h=K[e+8|0]|K[e+9|0]<<8|(K[e+10|0]<<16|K[e+11|0]<<24);J[f+56>>2]=h;J[f+60>>2]=k;d=K[e+4|0]|K[e+5|0]<<8|(K[e+6|0]<<16|K[e+7|0]<<24);c=K[e|0]|K[e+1|0]<<8|(K[e+2|0]<<16|K[e+3|0]<<24);J[f+48>>2]=c;J[f+52>>2]=d;J[f+16>>2]=h;J[f+20>>2]=k;J[f+8>>2]=c;J[f+12>>2]=d;J[f+24>>2]=q;c=0;m=f+8|0;h=J[m+12>>2]^(J[m+8>>2]^(J[m+4>>2]^(J[m>>2]^318)+239)+239)+239;b:{c:{n=f+80|0;j=J[n+4>>2];if(!j){break c}d=Kl(j);d:{if(d>>>0>=2){c=h;if(c>>>0>=j>>>0){c=(h>>>0)%(j>>>0)|0}i=J[J[n>>2]+(c<<2)>>2];if(!i){break c}if(d>>>0<2){break d}k=J[m+12>>2];r=J[m+8>>2];s=J[m+4>>2];e=J[m>>2];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(h|0)){if(d>>>0>=j>>>0){d=(d>>>0)%(j>>>0)|0}if((c|0)!=(d|0)){break c}}d=J[i+8>>2];e:{if((d|0)!=(e|0)){d=(d|0)==(e|0);break e}d=J[i+12>>2];if((d|0)!=(s|0)){d=(d|0)==(s|0);break e}d=J[i+16>>2];if((d|0)!=(r|0)){d=(d|0)==(r|0);break e}d=(k|0)==J[i+20>>2]}if(!d){continue}break}c=0;break b}c=h&j-1;i=J[J[n>>2]+(c<<2)>>2];if(!i){break c}}e=j-1|0;k=J[m+12>>2];t=J[m+8>>2];r=J[m+4>>2];s=J[m>>2];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(h|0)&(d&e)!=(c|0)){break c}d=J[i+8>>2];f:{if((d|0)!=(s|0)){d=(d|0)==(s|0);break f}d=J[i+12>>2];if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=J[i+16>>2];if((d|0)!=(t|0)){d=(d|0)==(t|0);break f}d=(k|0)==J[i+20>>2]}if(!d){continue}break}c=0;break b}i=oa(28);d=J[m+12>>2];J[i+16>>2]=J[m+8>>2];J[i+20>>2]=d;d=J[m+4>>2];J[i+8>>2]=J[m>>2];J[i+12>>2]=d;d=J[m+16>>2];J[i>>2]=0;J[i+4>>2]=h;J[i+24>>2]=d;p=Q(J[n+12>>2]+1>>>0);u=N[n+16>>2];g:{if(p>Q(u*Q(j>>>0))?0:j){break g}c=2;d=(j-1&j)!=0|j>>>0<3|j<<1;p=Q(W(Q(p/u)));h:{if(p<Q(4294967296)&p>=Q(0)){k=~~p>>>0;break h}k=0}d=d>>>0>k>>>0?d:k;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);j=J[n+4>>2]}j:{if(c>>>0<=j>>>0){if(c>>>0>=j>>>0){break j}k=j>>>0<3;p=Q(W(Q(Q(M[n+12>>2])/N[n+16>>2])));k:{if(p<Q(4294967296)&p>=Q(0)){d=~~p>>>0;break k}d=0}l:{m:{if(k){break m}if(Kl(j)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(j>>>0<=c>>>0){break j}}db(n,c)}j=J[n+4>>2];c=j-1|0;if(!(c&j)){c=c&h;break g}if(h>>>0<j>>>0){c=h;break g}c=(h>>>0)%(j>>>0)|0}h=J[n>>2]+(c<<2)|0;c=J[h>>2];n:{o:{if(!c){c=n+8|0;J[i>>2]=J[c>>2];J[n+8>>2]=i;J[h>>2]=c;c=J[i>>2];if(!c){break n}c=J[c+4>>2];h=j-1|0;p:{if(!(h&j)){c=c&h;break p}if(c>>>0<j>>>0){break p}c=(c>>>0)%(j>>>0)|0}c=J[n>>2]+(c<<2)|0;break o}J[i>>2]=J[c>>2]}J[c>>2]=i}J[n+12>>2]=J[n+12>>2]+1;c=1}H[f+108|0]=c;J[f+104>>2]=i;q:{if(!K[f+108|0]){J[(o<<2)+l>>2]=J[J[f+104>>2]+24>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,q)|0,f- -64|0,c);l=J[f+32>>2];J[l+(o<<2)>>2]=q;q=q+1|0}o=o+1|0;g=o?g:g+1|0;e=J[a+80>>2];if(!g&o>>>0<e>>>0){continue}break}if((e|0)!=(q|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];e=J[a+68>>2];if((b|0)==(e|0)){break r}b=b-e>>2;g=b>>>0<=1?1:b;h=g&3;c=0;b=0;if(g-1>>>0>=3){o=g&-4;k=0;while(1){d=b<<2;g=d+e|0;J[g>>2]=J[(J[g>>2]<<2)+l>>2];g=e+(d|4)|0;J[g>>2]=J[(J[g>>2]<<2)+l>>2];g=e+(d|8)|0;J[g>>2]=J[(J[g>>2]<<2)+l>>2];g=e+(d|12)|0;J[g>>2]=J[(J[g>>2]<<2)+l>>2];b=b+4|0;k=k+4|0;if((o|0)!=(k|0)){continue}break}}if(!h){break r}while(1){g=e+(b<<2)|0;J[g>>2]=J[(J[g>>2]<<2)+l>>2];b=b+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;g=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<e>>>0){Ma(g,e-c|0,2176);e=J[a+80>>2];break s}if(c>>>0<=e>>>0){break s}J[a+72>>2]=b+(e<<2)}if(!e){break r}d=J[g>>2];c=0;b=0;if(e>>>0>=4){o=e&-4;k=0;while(1){h=b<<2;J[h+d>>2]=J[h+l>>2];g=h|4;J[g+d>>2]=J[g+l>>2];g=h|8;J[g+d>>2]=J[g+l>>2];g=h|12;J[g+d>>2]=J[g+l>>2];b=b+4|0;k=k+4|0;if((o|0)!=(k|0)){continue}break}}o=e&3;if(!o){break r}while(1){g=b<<2;J[g+d>>2]=J[g+l>>2];b=b+1|0;c=c+1|0;if((o|0)!=(c|0)){continue}break}}J[a+80>>2]=q}na(l)}b=J[f+88>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[f+80>>2];J[f+80>>2]=0;if(a){na(a)}ba=f+112|0;return q}qa();B()}function ll(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=ba-32|0;ba=h;a:{b:{if(!J[J[a+8>>2]+80>>2]){e=1;break b}H[h+31|0]=254;d=J[a+36>>2];if(d){if(!(da[J[J[a>>2]+40>>2]](a,d)|0)){break b}d=J[a+36>>2];n=h,o=da[J[J[d>>2]+8>>2]](d)|0,H[n+31|0]=o}d=J[c+20>>2];if(!J[c+16>>2]&(d|0)<=0|(d|0)<0){sa(c,J[c+4>>2],h+31|0,h+32|0)}d=J[a+36>>2];c:{if(!d){break c}n=h,o=da[J[J[d>>2]+36>>2]](d)|0,H[n+16|0]=o;d=J[c+20>>2];if(!!J[c+16>>2]&(d|0)>=0|(d|0)>0){break c}sa(c,J[c+4>>2],h+16|0,h+17|0)}d=J[a+32>>2];e=J[d+48>>2];f=J[J[d>>2]>>2];g=J[d+80>>2];k=K[d+24|0];J[h+24>>2]=0;J[h+16>>2]=0;J[h+20>>2]=0;g=P(g,k);if(g){if(g>>>0>=1073741824){break a}d=g<<2;i=oa(d);pa(i,0,d)}d=e+f|0;f=J[a+36>>2];d:{e:{f:{if(!f){break f}e=0;if(!(da[J[J[f>>2]+44>>2]](f,d,i,g,k,J[b>>2])|0)){break d}e=J[a+36>>2];if(!e){break f}if(da[J[J[e>>2]+32>>2]](e)|0){break e}d=J[a+36>>2]?i:d}e=0;f=0;g:{if((g|0)<=0){break g}if((g|0)!=1){m=g&-2;while(1){l=e<<2;j=J[l+d>>2];J[i+l>>2]=(j|0)<0?(j^-1)<<1|1:j<<1;l=l|4;j=J[l+d>>2];J[i+l>>2]=(j|0)<0?(j^-1)<<1|1:j<<1;e=e+2|0;f=f+2|0;if((m|0)!=(f|0)){continue}break}}if(!(g&1)){break g}e=e<<2;d=J[e+d>>2];J[e+i>>2]=(d|0)<0?(d^-1)<<1|1:d<<1}}h:{i:{j:{k:{d=J[a+4>>2];if(!d){break k}j=J[d+48>>2];d=oa(48);J[h>>2]=d;J[h+4>>2]=34;J[h+8>>2]=-2147483600;e=K[1411]|K[1412]<<8;H[d+32|0]=e;H[d+33|0]=e>>>8;e=K[1407]|K[1408]<<8|(K[1409]<<16|K[1410]<<24);f=K[1403]|K[1404]<<8|(K[1405]<<16|K[1406]<<24);H[d+24|0]=f;H[d+25|0]=f>>>8;H[d+26|0]=f>>>16;H[d+27|0]=f>>>24;H[d+28|0]=e;H[d+29|0]=e>>>8;H[d+30|0]=e>>>16;H[d+31|0]=e>>>24;e=K[1399]|K[1400]<<8|(K[1401]<<16|K[1402]<<24);f=K[1395]|K[1396]<<8|(K[1397]<<16|K[1398]<<24);H[d+16|0]=f;H[d+17|0]=f>>>8;H[d+18|0]=f>>>16;H[d+19|0]=f>>>24;H[d+20|0]=e;H[d+21|0]=e>>>8;H[d+22|0]=e>>>16;H[d+23|0]=e>>>24;e=K[1391]|K[1392]<<8|(K[1393]<<16|K[1394]<<24);f=K[1387]|K[1388]<<8|(K[1389]<<16|K[1390]<<24);H[d+8|0]=f;H[d+9|0]=f>>>8;H[d+10|0]=f>>>16;H[d+11|0]=f>>>24;H[d+12|0]=e;H[d+13|0]=e>>>8;H[d+14|0]=e>>>16;H[d+15|0]=e>>>24;e=K[1383]|K[1384]<<8|(K[1385]<<16|K[1386]<<24);f=K[1379]|K[1380]<<8|(K[1381]<<16|K[1382]<<24);H[d|0]=f;H[d+1|0]=f>>>8;H[d+2|0]=f>>>16;H[d+3|0]=f>>>24;H[d+4|0]=e;H[d+5|0]=e>>>8;H[d+6|0]=e>>>16;H[d+7|0]=e>>>24;H[d+34|0]=0;d=Pb(j,h,1);if(H[h+11|0]<0){na(J[h>>2])}if(d){break k}if(!g){break j}d=0;e=0;b=0;if(g>>>0>=4){j=g&-4;f=0;while(1){k=e<<2;b=J[(k|12)+i>>2]|(J[(k|8)+i>>2]|(J[(k|4)+i>>2]|(J[i+k>>2]|b)));e=e+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}f=g&3;if(f){while(1){b=J[(e<<2)+i>>2]|b;e=e+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(!b){break j}d=4-(S(b)>>>3|0)|0;break i}H[h|0]=1;d=J[c+20>>2];if(!J[c+16>>2]&(d|0)<=0|(d|0)<0){sa(c,J[c+4>>2],h,h+1|0)}J[h>>2]=h|4;J[h+4>>2]=0;J[h+8>>2]=0;d=J[a+4>>2];if(d){j=10-cb(J[d+48>>2])|0;e=ba-16|0;ba=e;l:{if(j>>>0>10){break l}d=oa(48);J[e>>2]=d;J[e+4>>2]=33;J[e+8>>2]=-2147483600;H[d+32|0]=K[1470];g=K[1466]|K[1467]<<8|(K[1468]<<16|K[1469]<<24);f=K[1462]|K[1463]<<8|(K[1464]<<16|K[1465]<<24);H[d+24|0]=f;H[d+25|0]=f>>>8;H[d+26|0]=f>>>16;H[d+27|0]=f>>>24;H[d+28|0]=g;H[d+29|0]=g>>>8;H[d+30|0]=g>>>16;H[d+31|0]=g>>>24;g=K[1458]|K[1459]<<8|(K[1460]<<16|K[1461]<<24);f=K[1454]|K[1455]<<8|(K[1456]<<16|K[1457]<<24);H[d+16|0]=f;H[d+17|0]=f>>>8;H[d+18|0]=f>>>16;H[d+19|0]=f>>>24;H[d+20|0]=g;H[d+21|0]=g>>>8;H[d+22|0]=g>>>16;H[d+23|0]=g>>>24;g=K[1450]|K[1451]<<8|(K[1452]<<16|K[1453]<<24);f=K[1446]|K[1447]<<8|(K[1448]<<16|K[1449]<<24);H[d+8|0]=f;H[d+9|0]=f>>>8;H[d+10|0]=f>>>16;H[d+11|0]=f>>>24;H[d+12|0]=g;H[d+13|0]=g>>>8;H[d+14|0]=g>>>16;H[d+15|0]=g>>>24;g=K[1442]|K[1443]<<8|(K[1444]<<16|K[1445]<<24);f=K[1438]|K[1439]<<8|(K[1440]<<16|K[1441]<<24);H[d|0]=f;H[d+1|0]=f>>>8;H[d+2|0]=f>>>16;H[d+3|0]=f>>>24;H[d+4|0]=g;H[d+5|0]=g>>>8;H[d+6|0]=g>>>16;H[d+7|0]=g>>>24;H[d+33|0]=0;vb(h,e,j);if(H[e+11|0]>=0){break l}na(J[e>>2])}ba=e+16|0}b=ee(i,P(k,J[b+4>>2]-J[b>>2]>>2),k,h,c);Da(h,J[h+4>>2]);e=0;if(b){break h}break d}d=1}H[h|0]=0;b=J[c+20>>2];m:{if(!!J[c+16>>2]&(b|0)>=0|(b|0)>0){break m}e=h+1|0;sa(c,J[c+4>>2],h,e);f=J[c+16>>2];b=J[c+20>>2];H[h|0]=d;if(!!f&(b|0)>=0|(b|0)>0){break m}sa(c,J[c+4>>2],h,e)}n:{if((d|0)!=J[3712]){if(!g){break h}e=J[c+20>>2];f=e;b=J[c+16>>2];if(!!b&(e|0)>=0|(e|0)>0){break h}e=0;break n}b=J[c+20>>2];if(!!J[c+16>>2]&(b|0)>=0|(b|0)>0){break h}sa(c,J[c+4>>2],i,(g<<2)+i|0);break h}while(1){if(!b&(f|0)<=0|(f|0)<0){b=(e<<2)+i|0;sa(c,J[c+4>>2],b,b+d|0)}e=e+1|0;if((g|0)==(e|0)){break h}b=J[c+16>>2];f=J[c+20>>2];continue}}e=1;a=J[a+36>>2];if(!a){break d}da[J[J[a>>2]+40>>2]](a,c)|0}if(!i){break b}na(i)}ba=h+32|0;return e|0}qa();B()}function Ea(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;k=ba-96|0;ba=k;u=i&65535;o=(e^i)&-2147483648;q=e&65535;z=q;Q=i>>>16&32767;R=e>>>16&32767;a:{b:{if(Q-32767>>>0>4294934529&R-32767>>>0>=4294934530){break b}s=e&2147483647;r=s;j=d;if(!(!d&(r|0)==2147418112?!(b|c):r>>>0<2147418112)){m=d;o=e|32768;break a}s=i&2147483647;p=s;e=h;if(!(!e&(p|0)==2147418112?!(f|g):p>>>0<2147418112)){m=h;o=i|32768;b=f;c=g;break a}if(!(b|j|(r^2147418112|c))){if(!(e|f|(g|p))){o=2147450880;b=0;c=0;break a}o=o|2147418112;b=0;c=0;break a}if(!(e|f|(p^2147418112|g))){e=b|j;d=c|r;b=0;c=0;if(!(d|e)){o=2147450880;break a}o=o|2147418112;break a}if(!(b|j|(c|r))){b=0;c=0;break a}if(!(e|f|(g|p))){b=0;c=0;break a}if((r|0)==65535|r>>>0<65535){j=!(d|q);i=j?b:d;s=j<<6;e=S(i)+32|0;i=S(j?c:q);i=s+((i|0)==32?e:i)|0;Pa(k+80|0,b,c,d,q,i-15|0);t=16-i|0;d=J[k+88>>2];z=J[k+92>>2];c=J[k+84>>2];b=J[k+80>>2]}if(p>>>0>65535){break b}i=!(h|u);e=i?f:h;q=i<<6;j=S(e)+32|0;e=S(i?g:u);e=q+((e|0)==32?j:e)|0;Pa(k- -64|0,f,g,h,u,e-15|0);t=(t-e|0)+16|0;h=J[k+72>>2];u=J[k+76>>2];f=J[k+64>>2];g=J[k+68>>2]}e=f;f=g<<15|f>>>17;i=e<<15;e=0;v=i&-32768;K=c;s=Hl(v,e,c,0);e=ca;y=e;L=f;r=b;b=Hl(f,0,b,0);i=b+s|0;f=ca+e|0;c=b>>>0>i>>>0?f+1|0:f;j=0;b=Hl(r,l,v,l);p=j+b|0;f=i;e=f+ca|0;e=b>>>0>p>>>0?e+1|0:e;q=e;M=(f|0)==(e|0)&j>>>0>p>>>0|e>>>0<f>>>0;N=d;w=Hl(v,l,d,0);O=ca;b=Hl(K,l,L,l);x=b+w|0;j=ca+O|0;j=b>>>0>x>>>0?j+1|0:j;b=u<<15|h>>>17;A=h<<15|g>>>17;d=Hl(A,0,r,l);B=d+x|0;f=ca+j|0;f=d>>>0>B>>>0?f+1|0:f;C=f;d=(c|0)==(y|0)&i>>>0<s>>>0|c>>>0<y>>>0;D=c+B|0;f=d+f|0;f=c>>>0>D>>>0?f+1|0:f;u=f;g=D;c=f;E=z|65536;z=Hl(v,l,E,n);P=ca;d=Hl(N,m,L,l);F=d+z|0;e=ca+P|0;e=d>>>0>F>>>0?e+1|0:e;i=e;G=b|-2147483648;b=Hl(G,0,r,l);H=b+F|0;f=ca+e|0;f=b>>>0>H>>>0?f+1|0:f;b=Hl(A,m,K,l);y=b+H|0;I=f;f=f+ca|0;s=b>>>0>y>>>0?f+1|0:f;b=0;r=b+g|0;e=c+y|0;v=b>>>0>r>>>0?e+1|0:e;f=v;b=r+M|0;c=b>>>0<r>>>0?f+1|0:f;t=((R+Q|0)+t|0)-16383|0;d=Hl(G,m,K,l);h=ca;e=Hl(E,m,L,l);g=e+d|0;f=ca+h|0;f=e>>>0>g>>>0?f+1|0:f;n=(h|0)==(f|0)&d>>>0>g>>>0|f>>>0<h>>>0;h=f;e=Hl(A,m,N,m);d=e+g|0;f=ca+f|0;f=d>>>0<e>>>0?f+1|0:f;e=f;g=(f|0)==(h|0)&d>>>0<g>>>0|f>>>0<h>>>0;f=0;h=g;g=g+n|0;f=h>>>0>g>>>0?1:f;h=g;g=Hl(G,m,E,m);h=h+g|0;f=ca+f|0;M=h;g=g>>>0>h>>>0?f+1|0:f;h=d;l=e;e=(j|0)==(O|0)&w>>>0>x>>>0|j>>>0<O>>>0;f=0;j=(j|0)==(C|0)&x>>>0>B>>>0|j>>>0>C>>>0;n=j;j=e+j|0;e=(n>>>0>j>>>0?1:f)+l|0;f=g;d=d+j|0;e=d>>>0<j>>>0?e+1|0:e;n=e;w=d;d=(e|0)==(l|0)&d>>>0<h>>>0|e>>>0<l>>>0;e=d;d=d+M|0;f=e>>>0>d>>>0?f+1|0:f;j=d;g=f;e=Hl(A,m,E,m);l=ca;d=Hl(G,m,N,m);h=d+e|0;f=ca+l|0;f=d>>>0>h>>>0?f+1|0:f;d=f;f=(l|0)==(f|0)&e>>>0>h>>>0|f>>>0<l>>>0;x=d+j|0;e=f+g|0;e=d>>>0>x>>>0?e+1|0:e;l=x;g=e;e=0;d=e+w|0;f=h+n|0;f=d>>>0<e>>>0?f+1|0:f;e=f;h=(n|0)==(f|0)&d>>>0<w>>>0|f>>>0<n>>>0;f=g;g=h+l|0;f=g>>>0<h>>>0?f+1|0:f;w=g;g=f;h=d;j=e;e=(s|0)==(I|0)&y>>>0<H>>>0|s>>>0<I>>>0;d=(i|0)==(P|0)&z>>>0>F>>>0|i>>>0<P>>>0;i=(i|0)==(I|0)&F>>>0>H>>>0|i>>>0>I>>>0;d=d+i|0;d=d+e|0;n=s;i=n+h|0;e=d+j|0;f=g;d=i;e=d>>>0<n>>>0?e+1|0:e;h=(e|0)==(j|0)&h>>>0>d>>>0|e>>>0<j>>>0;g=h+w|0;f=h>>>0>g>>>0?f+1|0:f;j=g;g=f;h=d;f=0;i=e;n=(u|0)==(v|0)&r>>>0<D>>>0|u>>>0>v>>>0;l=n;n=n+((u|0)==(C|0)&B>>>0>D>>>0|u>>>0<C>>>0)|0;e=e+(l>>>0>n>>>0?1:f)|0;f=g;d=d+n|0;e=d>>>0<n>>>0?e+1|0:e;h=(e|0)==(i|0)&d>>>0<h>>>0|e>>>0<i>>>0;g=h;h=h+j|0;f=g>>>0>h>>>0?f+1|0:f;i=f;c:{if(f&65536){t=t+1|0;break c}j=q>>>31|0;g=0;f=i<<1|h>>>31;h=h<<1|e>>>31;i=f;f=e<<1|d>>>31;d=d<<1|c>>>31;e=f;f=q<<1|p>>>31;p=p<<1;q=f;f=c<<1|b>>>31;b=b<<1|j;c=f|g}if((t|0)>=32767){o=o|2147418112;b=0;c=0;break a}d:{if((t|0)<=0){g=1-t|0;if(g>>>0<=127){f=t+127|0;Pa(k+48|0,p,q,b,c,f);Pa(k+32|0,d,e,h,i,f);Gb(k+16|0,p,q,b,c,g);Gb(k,d,e,h,i,g);p=J[k+32>>2]|J[k+16>>2]|(J[k+48>>2]|J[k+56>>2]|(J[k+52>>2]|J[k+60>>2]))!=0;q=J[k+36>>2]|J[k+20>>2];b=J[k+40>>2]|J[k+24>>2];c=J[k+44>>2]|J[k+28>>2];d=J[k>>2];e=J[k+4>>2];g=J[k+8>>2];f=J[k+12>>2];break d}b=0;c=0;break a}g=h;f=i&65535|t<<16}m=g|m;o=f|o;if(!(!b&(c|0)==-2147483648?!(p|q):(c|0)>0|(c|0)>=0)){b=d+1|0;c=b?e:e+1|0;d=(e|0)==(c|0)&b>>>0<d>>>0|c>>>0<e>>>0;e=o;m=d+m|0;o=m>>>0<d>>>0?e+1|0:e;break a}if(b|p|(c^-2147483648|q)){b=d;c=e;break a}j=o;f=e;b=d&1;c=b;b=b+d|0;c=c>>>0>b>>>0?f+1|0:f;d=(f|0)==(c|0)&b>>>0<d>>>0|c>>>0<f>>>0;m=d+m|0;o=d>>>0>m>>>0?j+1|0:j}J[a>>2]=b;J[a+4>>2]=c;J[a+8>>2]=m;J[a+12>>2]=o;ba=k+96|0}function ej(a){a=a|0;var 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;o=ba-16|0;ba=o;a:{if(!(da[J[J[a>>2]+32>>2]](a)|0)){break a}e=J[a+44>>2];c=J[a+12>>2];b=J[a+8>>2];H[o+15|0]=c-b>>>2;d=J[e+20>>2];if(!J[e+16>>2]&(d|0)<=0|(d|0)<0){sa(e,J[e+4>>2],o+15|0,o+16|0);c=J[a+12>>2];b=J[a+8>>2]}if((b|0)!=(c|0)){while(1){e=J[b>>2];if(!(da[J[J[e>>2]+8>>2]](e,a,J[a+4>>2])|0)){break a}b=b+4|0;if((c|0)!=(b|0)){continue}break}}f=ba-48|0;ba=f;e=a;q=a+32|0;g=J[a+12>>2];a=J[a+8>>2];d=g-a|0;c=d>>2;h=J[e+32>>2];b=J[e+36>>2]-h>>2;b:{if(c>>>0>b>>>0){Fa(q,c-b|0);g=J[e+12>>2];a=J[e+8>>2];d=g-a|0;c=d>>2;break b}if(b>>>0<=c>>>0){break b}J[e+36>>2]=h+(c<<2)}J[f+40>>2]=0;J[f+32>>2]=0;J[f+36>>2]=0;b=a;c:{d:{if((a|0)!=(g|0)){if((d|0)<0){break d}a=(c-1>>>5|0)+1|0;b=oa(a<<2);J[f+40>>2]=a;J[f+36>>2]=0;J[f+32>>2]=b;mc(f+32|0,c);b=J[e+12>>2];a=J[e+8>>2]}e:{while(1){f:{c=b-a>>2;if(k>>>0<c>>>0){g=(a|0)!=(b|0);m=0;b=a;d=0;if(!g){break f}while(1){i=J[f+32>>2];n=d>>>5<<2;h=J[i+n>>2];p=1<<d;g:{if(h&p){break g}b=0;j=1;l=d<<2;g=J[l+a>>2];c=J[g+4>>2];if((c|0)!=J[g+8>>2]){while(1){a=0;c=J[(b<<2)+c>>2];h:{if((da[J[J[g>>2]+24>>2]](g,c)|0)<=0){break h}while(1){i:{g=J[l+J[e+8>>2]>>2];g=da[J[J[g>>2]+28>>2]](g,c,a)|0;if((g|0)==(d|0)){break i}g=J[J[e+20>>2]+(g<<2)>>2];if(J[J[f+32>>2]+(g>>>3&536870908)>>2]>>>g&1){break i}j=0;break h}g=J[l+J[e+8>>2]>>2];a=a+1|0;if((da[J[J[g>>2]+24>>2]](g,c)|0)>(a|0)){continue}break}}a=J[e+8>>2];g=J[l+a>>2];c=J[g+4>>2];b=b+1|0;if(b>>>0<J[g+8>>2]-c>>2>>>0){continue}break}if(!j){break g}i=J[f+32>>2];h=J[n+i>>2]}J[J[q>>2]+(k<<2)>>2]=d;J[i+n>>2]=h|p;m=1;k=k+1|0}b=J[e+12>>2];c=b-a>>2;d=d+1|0;if(c>>>0>d>>>0){continue}break}break f}m=0;J[f+24>>2]=0;J[f+16>>2]=0;J[f+20>>2]=0;d=J[e+4>>2];c=J[d+12>>2];d=J[d+8>>2];J[f+8>>2]=0;J[f>>2]=0;J[f+4>>2]=0;j:{k:{l:{if((c|0)!=(d|0)){a=c-d|0;if((a|0)<0){break l}a=a>>2;b=(a-1>>>5|0)+1|0;c=oa(b<<2);J[f+8>>2]=b;J[f+4>>2]=0;J[f>>2]=c;mc(f,a);b=J[e+12>>2];a=J[e+8>>2]}m:{if((a|0)==(b|0)){b=1;break m}while(1){g=J[J[q>>2]+(m<<2)>>2]<<2;b=J[g+a>>2];b=J[b+8>>2]-J[b+4>>2]|0;n:{if((b|0)<8){break n}c=b>>2;b=J[f+16>>2];a=J[f+20>>2]-b>>2;o:{if(c>>>0>a>>>0){Fa(f+16|0,c-a|0);break o}if(a>>>0<=c>>>0){break o}J[f+20>>2]=b+(c<<2)}i=(c|0)<=1?1:c;h=0;p:{while(1){if((c|0)<=(h|0)){break p}b=0;d=J[f>>2];j=0;while(1){p=1<<b;n=b>>>5<<2;q:{if(p&J[n+d>>2]){break q}a=0;d=J[g+J[e+8>>2]>>2];k=J[J[d+4>>2]+(b<<2)>>2];if((da[J[J[d>>2]+24>>2]](d,k)|0)>0){while(1){d=J[g+J[e+8>>2]>>2];l=da[J[J[d>>2]+28>>2]](d,k,a)|0;d=J[f>>2];if(!(J[d+(l>>>3&536870908)>>2]>>>l&1)){break q}d=J[g+J[e+8>>2]>>2];a=a+1|0;if((da[J[J[d>>2]+24>>2]](d,k)|0)>(a|0)){continue}break}}J[J[f+16>>2]+(h<<2)>>2]=b;d=J[f>>2];a=n+d|0;J[a>>2]=p|J[a>>2];j=1;h=h+1|0}b=b+1|0;if((i|0)!=(b|0)){continue}break}if((c|0)<=(h|0)|j){continue}break}b=0;break m}a=J[e+8>>2];b=J[g+a>>2];d=J[b+4>>2];J[b+8>>2]=d;J[b+20>>2]=J[b+16>>2];g=J[f+16>>2];l=J[f+20>>2];if((g|0)==(l|0)){break n}k=b+16|0;c=d;while(1){a=J[g>>2];r:{if(J[b+12>>2]!=(c|0)){J[c>>2]=a;J[b+8>>2]=c+4;break r}c=c-d|0;i=c>>2;h=i+1|0;if(h>>>0>=1073741824){break k}j=c>>>1|0;h=c>>>0>=2147483644?1073741823:h>>>0<j>>>0?j:h;if(h){if(h>>>0>=1073741824){break j}j=oa(h<<2)}else{j=0}i=j+(i<<2)|0;J[i>>2]=a;c=ta(j,d,c);J[b+12>>2]=c+(h<<2);J[b+8>>2]=i+4;J[b+4>>2]=c;if(!d){break r}na(d)}c=J[b+16>>2];d=J[b+20>>2]-c>>2;s:{if((d|0)>(a|0)){break s}J[f+44>>2]=-1;h=a+1|0;if(h>>>0>d>>>0){jc(k,h-d|0,f+44|0);c=J[k>>2];break s}if(d>>>0<=h>>>0){break s}J[b+20>>2]=(h<<2)+c}a=(a<<2)+c|0;c=J[b+8>>2];d=J[b+4>>2];J[a>>2]=(c-d>>2)-1;g=g+4|0;if((l|0)!=(g|0)){continue}break}a=J[e+8>>2]}b=1;m=m+1|0;if(m>>>0<J[e+12>>2]-a>>2>>>0){continue}break}}a=J[f>>2];if(a){na(a)}a=J[f+16>>2];if(!a){break e}J[f+20>>2]=a;na(a);break e}qa();B()}qa();B()}xa();B()}if(m&1|c>>>0<=k>>>0){continue}break}b=0}a=J[f+32>>2];if(a){na(a)}ba=f+48|0;break c}qa();B()}if(!b){break a}b=J[e+32>>2];a=J[e+36>>2];t:{if((b|0)==(a|0)){break t}while(1){if(!(da[J[J[e>>2]+40>>2]](e,J[b>>2])|0)){break a}b=b+4|0;if((a|0)!=(b|0)){continue}break}b=J[e+32>>2];a=J[e+36>>2];if((b|0)==(a|0)){break t}while(1){c=J[J[e+8>>2]+(J[b>>2]<<2)>>2];if(!(da[J[J[c>>2]+12>>2]](c,J[e+44>>2])|0)){break a}b=b+4|0;if((a|0)!=(b|0)){continue}break}}r=da[J[J[e>>2]+44>>2]](e)|0}ba=o+16|0;return r|0}function Id(a,b){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=Q(0),p=0,q=0,r=0,s=Q(0);f=ba-96|0;ba=f;J[f+72>>2]=0;J[f+76>>2]=0;J[f+64>>2]=0;J[f+68>>2]=0;J[f+80>>2]=1065353216;c=J[a+80>>2];J[f+24>>2]=0;J[f+16>>2]=0;J[f+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}e=c<<2;k=oa(e);J[f+16>>2]=k;c=e+k|0;J[f+24>>2]=c;pa(k,0,e);J[f+20>>2]=c;while(1){d=J[J[b>>2]>>2];e=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],n,0);h=c;c=c+e|0;e=c+d|0;J[f+56>>2]=K[e+8|0]|K[e+9|0]<<8|(K[e+10|0]<<16|K[e+11|0]<<24);c=K[e+4|0]|K[e+5|0]<<8|(K[e+6|0]<<16|K[e+7|0]<<24);J[f+48>>2]=K[e|0]|K[e+1|0]<<8|(K[e+2|0]<<16|K[e+3|0]<<24);J[f+52>>2]=c;c=K[e+8|0]|K[e+9|0]<<8|(K[e+10|0]<<16|K[e+11|0]<<24);J[f+40>>2]=c;d=K[e+4|0]|K[e+5|0]<<8|(K[e+6|0]<<16|K[e+7|0]<<24);e=K[e|0]|K[e+1|0]<<8|(K[e+2|0]<<16|K[e+3|0]<<24);J[f+32>>2]=e;J[f+36>>2]=d;J[f+8>>2]=c;J[f>>2]=e;J[f+4>>2]=d;J[f+12>>2]=p;c=0;e=J[f+8>>2]^(J[f+4>>2]^(J[f>>2]^318)+239)+239;b:{c:{m=f- -64|0;h=J[m+4>>2];if(!h){break c}d=Kl(h);d:{if(d>>>0>=2){c=e;if(e>>>0>=h>>>0){c=(e>>>0)%(h>>>0)|0}i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}if(d>>>0<2){break d}l=J[f+8>>2];q=J[f+4>>2];j=J[f>>2];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(e|0)){if(d>>>0>=h>>>0){d=(d>>>0)%(h>>>0)|0}if((c|0)!=(d|0)){break c}}d=J[i+8>>2];e:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break e}d=J[i+12>>2];if((d|0)!=(q|0)){d=(d|0)==(q|0);break e}d=(l|0)==J[i+16>>2]}if(!d){continue}break}c=0;break b}c=e&h-1;i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}}j=h-1|0;l=J[f+8>>2];r=J[f+4>>2];q=J[f>>2];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(e|0)&(d&j)!=(c|0)){break c}d=J[i+8>>2];f:{if((d|0)!=(q|0)){d=(d|0)==(q|0);break f}d=J[i+12>>2];if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=(l|0)==J[i+16>>2]}if(!d){continue}break}c=0;break b}i=oa(24);J[i+16>>2]=J[f+8>>2];d=J[f+4>>2];J[i+8>>2]=J[f>>2];J[i+12>>2]=d;d=J[f+12>>2];J[i>>2]=0;J[i+4>>2]=e;J[i+20>>2]=d;o=Q(J[m+12>>2]+1>>>0);s=N[m+16>>2];g:{if(o>Q(s*Q(h>>>0))?0:h){break g}c=2;d=(h-1&h)!=0|h>>>0<3|h<<1;o=Q(W(Q(o/s)));h:{if(o<Q(4294967296)&o>=Q(0)){l=~~o>>>0;break h}l=0}d=d>>>0>l>>>0?d:l;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);h=J[m+4>>2]}j:{if(c>>>0<=h>>>0){if(c>>>0>=h>>>0){break j}l=h>>>0<3;o=Q(W(Q(Q(M[m+12>>2])/N[m+16>>2])));k:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break k}d=0}l:{m:{if(l){break m}if(Kl(h)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(h>>>0<=c>>>0){break j}}db(m,c)}h=J[m+4>>2];c=h-1|0;if(!(c&h)){c=c&e;break g}if(e>>>0<h>>>0){c=e;break g}c=(e>>>0)%(h>>>0)|0}e=J[m>>2]+(c<<2)|0;c=J[e>>2];n:{o:{if(!c){c=m+8|0;J[i>>2]=J[c>>2];J[m+8>>2]=i;J[e>>2]=c;c=J[i>>2];if(!c){break n}c=J[c+4>>2];e=h-1|0;p:{if(!(e&h)){c=c&e;break p}if(c>>>0<h>>>0){break p}c=(c>>>0)%(h>>>0)|0}c=J[m>>2]+(c<<2)|0;break o}J[i>>2]=J[c>>2]}J[c>>2]=i}J[m+12>>2]=J[m+12>>2]+1;c=1}H[f+92|0]=c;J[f+88>>2]=i;q:{if(!K[f+92|0]){J[(n<<2)+k>>2]=J[J[f+88>>2]+20>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,p)|0,f+48|0,c);k=J[f+16>>2];J[k+(n<<2)>>2]=p;p=p+1|0}n=n+1|0;g=n?g:g+1|0;j=J[a+80>>2];if(!g&n>>>0<j>>>0){continue}break}if((j|0)!=(p|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];j=J[a+68>>2];if((b|0)==(j|0)){break r}b=b-j>>2;g=b>>>0<=1?1:b;e=g&3;c=0;b=0;if(g-1>>>0>=3){n=g&-4;l=0;while(1){d=b<<2;g=d+j|0;J[g>>2]=J[(J[g>>2]<<2)+k>>2];g=j+(d|4)|0;J[g>>2]=J[(J[g>>2]<<2)+k>>2];g=j+(d|8)|0;J[g>>2]=J[(J[g>>2]<<2)+k>>2];g=j+(d|12)|0;J[g>>2]=J[(J[g>>2]<<2)+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}if(!e){break r}while(1){g=j+(b<<2)|0;J[g>>2]=J[(J[g>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;g=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<j>>>0){Ma(g,j-c|0,2176);j=J[a+80>>2];break s}if(c>>>0<=j>>>0){break s}J[a+72>>2]=b+(j<<2)}if(!j){break r}d=J[g>>2];c=0;b=0;if(j>>>0>=4){n=j&-4;l=0;while(1){e=b<<2;J[e+d>>2]=J[e+k>>2];g=e|4;J[g+d>>2]=J[g+k>>2];g=e|8;J[g+d>>2]=J[g+k>>2];g=e|12;J[g+d>>2]=J[g+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}n=j&3;if(!n){break r}while(1){g=b<<2;J[g+d>>2]=J[g+k>>2];b=b+1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}J[a+80>>2]=p}na(k)}b=J[f+72>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[f+64>>2];J[f+64>>2]=0;if(a){na(a)}ba=f+96|0;return p}qa();B()}function jj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=ba-16|0;ba=j;c=J[b+56>>2];f=J[c+100>>2];e=J[c+96>>2];d=(f-e|0)/12|0;Aa(d,J[b+44>>2]);Aa(J[J[b+56>>2]+80>>2],J[b+44>>2]);k=J[b+48>>2];c=oa(32);J[j>>2]=c;J[j+4>>2]=21;J[j+8>>2]=-2147483616;g=K[1149]|K[1150]<<8|(K[1151]<<16|K[1152]<<24);i=K[1145]|K[1146]<<8|(K[1147]<<16|K[1148]<<24);H[c+13|0]=i;H[c+14|0]=i>>>8;H[c+15|0]=i>>>16;H[c+16|0]=i>>>24;H[c+17|0]=g;H[c+18|0]=g>>>8;H[c+19|0]=g>>>16;H[c+20|0]=g>>>24;g=K[1144]|K[1145]<<8|(K[1146]<<16|K[1147]<<24);i=K[1140]|K[1141]<<8|(K[1142]<<16|K[1143]<<24);H[c+8|0]=i;H[c+9|0]=i>>>8;H[c+10|0]=i>>>16;H[c+11|0]=i>>>24;H[c+12|0]=g;H[c+13|0]=g>>>8;H[c+14|0]=g>>>16;H[c+15|0]=g>>>24;g=K[1136]|K[1137]<<8|(K[1138]<<16|K[1139]<<24);i=K[1132]|K[1133]<<8|(K[1134]<<16|K[1135]<<24);H[c|0]=i;H[c+1|0]=i>>>8;H[c+2|0]=i>>>16;H[c+3|0]=i>>>24;H[c+4|0]=g;H[c+5|0]=g>>>8;H[c+6|0]=g>>>16;H[c+7|0]=g>>>24;H[c+21|0]=0;g=Pb(k,j,0);if(H[j+11|0]<0){na(J[j>>2])}c=J[b+44>>2];a:{if(g){H[j|0]=0;d=J[c+20>>2];if(!J[c+16>>2]&(d|0)<=0|(d|0)<0){sa(c,J[c+4>>2],j,j+1|0)}e=0;c=0;g=ba-16|0;ba=g;J[g>>2]=0;J[g+4>>2]=0;d=J[b+56>>2];f=J[d+100>>2];d=J[d+96>>2];if((f|0)!=(d|0)){c=(f-d|0)/12|0;p=c>>>0<=1?1:c;c=0;d=J[g>>2];b:{c:{while(1){d:{i=J[J[b+56>>2]+96>>2]+P(n,12)|0;l=J[i>>2];f=l-m|0;k=f>>31;k=(f^k)-k<<1|f>>>31;e:{if((e|0)!=(h|0)){J[e>>2]=k;e=e+4|0;J[g+4>>2]=e;break e}f=e-c|0;m=f>>2;h=m+1|0;if(h>>>0>=1073741824){break d}e=f>>>1|0;h=f>>>0>=2147483644?1073741823:e>>>0>h>>>0?e:h;if(h){if(h>>>0>=1073741824){break c}d=oa(h<<2)}else{d=0}e=d+(m<<2)|0;J[e>>2]=k;f=ta(d,c,f);e=e+4|0;J[g+4>>2]=e;h=f+(h<<2)|0;if(c){na(c)}c=f}o=J[i+4>>2];f=o-l|0;k=f>>31;k=(f^k)-k<<1|f>>>31;f:{if((e|0)!=(h|0)){J[e>>2]=k;e=e+4|0;J[g+4>>2]=e;break f}f=e-c|0;l=f>>2;h=l+1|0;if(h>>>0>1073741823){break d}e=f>>>1|0;h=f>>>0>=2147483644?1073741823:e>>>0>h>>>0?e:h;if(h){if(h>>>0>1073741823){break c}d=oa(h<<2)}else{d=0}e=d+(l<<2)|0;J[e>>2]=k;f=ta(d,c,f);e=e+4|0;J[g+4>>2]=e;h=f+(h<<2)|0;if(c){na(c)}c=f}m=J[i+8>>2];f=m-o|0;i=f>>31;i=(f^i)-i<<1|f>>>31;g:{if((e|0)!=(h|0)){J[e>>2]=i;e=e+4|0;J[g+4>>2]=e;break g}f=e-c|0;k=f>>2;h=k+1|0;if(h>>>0>1073741823){break d}e=f>>>1|0;h=f>>>0>=2147483644?1073741823:e>>>0>h>>>0?e:h;if(h){if(h>>>0>1073741823){break c}d=oa(h<<2)}else{d=0}e=d+(k<<2)|0;J[e>>2]=i;f=ta(d,c,f);e=e+4|0;J[g+4>>2]=e;h=f+(h<<2)|0;if(c){na(c)}c=f}n=n+1|0;if((p|0)!=(n|0)){continue}break b}break}J[g+8>>2]=e;J[g>>2]=d;qa();B()}J[g>>2]=d;xa();B()}J[g>>2]=d}ee(c,e-c>>2,1,0,J[b+44>>2]);if(c){na(c)}ba=g+16|0;break a}H[j|0]=1;g=J[c+20>>2];if(!J[c+16>>2]&(g|0)<=0|(g|0)<0){sa(c,J[c+4>>2],j,j+1|0)}c=J[J[b+56>>2]+80>>2];if(c>>>0<=255){if((f|0)==(e|0)){break a}h=d>>>0<=1?1:d;f=j+1|0;c=0;while(1){d=J[b+44>>2];e=J[J[b+56>>2]+96>>2]+P(c,12)|0;H[j|0]=J[e>>2];g=J[d+20>>2];h:{if(!!J[d+16>>2]&(g|0)>=0|(g|0)>0){break h}sa(d,J[d+4>>2],j,f);d=J[b+44>>2];g=J[d+20>>2];i=J[d+16>>2];H[j|0]=J[e+4>>2];if(!!i&(g|0)>=0|(g|0)>0){break h}sa(d,J[d+4>>2],j,f);d=J[b+44>>2];g=J[d+20>>2];i=J[d+16>>2];H[j|0]=J[e+8>>2];if(!!i&(g|0)>=0|(g|0)>0){break h}sa(d,J[d+4>>2],j,f)}c=c+1|0;if((h|0)!=(c|0)){continue}break}break a}if(c>>>0<=65535){if((f|0)==(e|0)){break a}h=d>>>0<=1?1:d;f=j+2|0;c=0;while(1){d=J[b+44>>2];e=J[J[b+56>>2]+96>>2]+P(c,12)|0;I[j>>1]=J[e>>2];g=J[d+20>>2];i:{if(!!J[d+16>>2]&(g|0)>=0|(g|0)>0){break i}sa(d,J[d+4>>2],j,f);d=J[b+44>>2];g=J[d+20>>2];i=J[d+16>>2];I[j>>1]=J[e+4>>2];if(!!i&(g|0)>=0|(g|0)>0){break i}sa(d,J[d+4>>2],j,f);d=J[b+44>>2];g=J[d+20>>2];i=J[d+16>>2];I[j>>1]=J[e+8>>2];if(!!i&(g|0)>=0|(g|0)>0){break i}sa(d,J[d+4>>2],j,f)}c=c+1|0;if((h|0)!=(c|0)){continue}break}break a}if(c>>>0>=2097152){if((f|0)==(e|0)){break a}c=J[b+44>>2];f=!!J[c+16>>2];c=J[c+20>>2];if(f&(c|0)>=0|(c|0)>0){break a}f=d>>>0<=1?1:d;c=0;while(1){d=J[b+44>>2];e=J[d+20>>2];if(!J[d+16>>2]&(e|0)<=0|(e|0)<0){e=d;g=J[d+4>>2];d=J[J[b+56>>2]+96>>2]+P(c,12)|0;sa(e,g,d,d+12|0)}c=c+1|0;if((f|0)!=(c|0)){continue}break}break a}if((f|0)==(e|0)){break a}f=d>>>0<=1?1:d;c=0;while(1){d=J[J[b+56>>2]+96>>2]+P(c,12)|0;Aa(J[d>>2],J[b+44>>2]);Aa(J[d+4>>2],J[b+44>>2]);Aa(J[d+8>>2],J[b+44>>2]);c=c+1|0;if((f|0)!=(c|0)){continue}break}}J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;ba=j+16|0}function vf(a,b){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=Q(0),p=0,q=0,r=0,s=0,t=0,u=0,v=Q(0);i=ba-80|0;ba=i;J[i+56>>2]=0;J[i+60>>2]=0;J[i+48>>2]=0;J[i+52>>2]=0;J[i+64>>2]=1065353216;c=J[a+80>>2];J[i+32>>2]=0;J[i+24>>2]=0;J[i+28>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}f=c<<2;k=oa(f);J[i+24>>2]=k;c=f+k|0;J[i+32>>2]=c;pa(k,0,f);J[i+28>>2]=c;while(1){d=J[J[b>>2]>>2];f=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],n,0);g=c;c=c+f|0;c=c+d|0;f=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);c=K[c+4|0]|K[c+5|0]<<8|(K[c+6|0]<<16|K[c+7|0]<<24);J[i+40>>2]=f;J[i+44>>2]=c;J[i+16>>2]=p;J[i+8>>2]=f;J[i+12>>2]=c;c=0;m=i+8|0;f=L[m+6>>1]^(L[m+4>>1]^(L[m+2>>1]^(L[m>>1]^318)+239)+239)+239;b:{c:{l=i+48|0;g=J[l+4>>2];if(!g){break c}d=Kl(g);d:{if(d>>>0>=2){c=f;if(c>>>0>=g>>>0){c=(f>>>0)%(g>>>0)|0}h=J[J[l>>2]+(c<<2)>>2];if(!h){break c}if(d>>>0<2){break d}q=L[m>>1];r=L[m+2>>1];t=L[m+4>>1];j=L[m+6>>1];while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((d|0)!=(f|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break c}}d=L[h+8>>1];e:{if((d|0)!=(q|0)){d=(d|0)==(q|0);break e}d=L[h+10>>1];if((d|0)!=(r|0)){d=(d|0)==(r|0);break e}d=L[h+12>>1];if((d|0)!=(t|0)){d=(d|0)==(t|0);break e}d=(j|0)==L[h+14>>1]}if(!d){continue}break}c=0;break b}c=f&g-1;h=J[J[l>>2]+(c<<2)>>2];if(!h){break c}}t=g-1|0;u=L[m>>1];q=L[m+2>>1];r=L[m+4>>1];j=L[m+6>>1];while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((d|0)!=(f|0)&(d&t)!=(c|0)){break c}d=L[h+8>>1];f:{if((d|0)!=(u|0)){d=(d|0)==(u|0);break f}d=L[h+10>>1];if((d|0)!=(q|0)){d=(d|0)==(q|0);break f}d=L[h+12>>1];if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=(j|0)==L[h+14>>1]}if(!d){continue}break}c=0;break b}h=oa(20);d=J[m+4>>2];J[h+8>>2]=J[m>>2];J[h+12>>2]=d;d=J[m+8>>2];J[h+4>>2]=f;J[h+16>>2]=d;J[h>>2]=0;o=Q(J[l+12>>2]+1>>>0);v=N[l+16>>2];g:{if(o>Q(v*Q(g>>>0))?0:g){break g}c=2;d=(g-1&g)!=0|g>>>0<3|g<<1;o=Q(W(Q(o/v)));h:{if(o<Q(4294967296)&o>=Q(0)){j=~~o>>>0;break h}j=0}d=d>>>0>j>>>0?d:j;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);g=J[l+4>>2]}j:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break j}j=g>>>0<3;o=Q(W(Q(Q(M[l+12>>2])/N[l+16>>2])));k:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break k}d=0}l:{m:{if(j){break m}if(Kl(g)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(g>>>0<=c>>>0){break j}}db(l,c)}g=J[l+4>>2];c=g-1|0;if(!(c&g)){c=c&f;break g}if(f>>>0<g>>>0){c=f;break g}c=(f>>>0)%(g>>>0)|0}f=J[l>>2]+(c<<2)|0;c=J[f>>2];n:{o:{if(!c){c=l+8|0;J[h>>2]=J[c>>2];J[l+8>>2]=h;J[f>>2]=c;c=J[h>>2];if(!c){break n}c=J[c+4>>2];f=g-1|0;p:{if(!(f&g)){c=c&f;break p}if(c>>>0<g>>>0){break p}c=(c>>>0)%(g>>>0)|0}c=J[l>>2]+(c<<2)|0;break o}J[h>>2]=J[c>>2]}J[c>>2]=h}J[l+12>>2]=J[l+12>>2]+1;c=1}H[i+76|0]=c;J[i+72>>2]=h;q:{if(!K[i+76|0]){J[(n<<2)+k>>2]=J[J[i+72>>2]+16>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,p)|0,i+40|0,c);k=J[i+24>>2];J[k+(n<<2)>>2]=p;p=p+1|0}n=n+1|0;e=n?e:e+1|0;j=J[a+80>>2];if(!e&n>>>0<j>>>0){continue}break}if((j|0)!=(p|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];j=J[a+68>>2];if((b|0)==(j|0)){break r}b=b-j>>2;e=b>>>0<=1?1:b;f=e&3;c=0;b=0;if(e-1>>>0>=3){n=e&-4;while(1){d=b<<2;e=d+j|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|4)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|8)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|12)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+4|0;s=s+4|0;if((n|0)!=(s|0)){continue}break}}if(!f){break r}while(1){e=j+(b<<2)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;e=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<j>>>0){Ma(e,j-c|0,2176);j=J[a+80>>2];break s}if(c>>>0<=j>>>0){break s}J[a+72>>2]=b+(j<<2)}if(!j){break r}d=J[e>>2];c=0;b=0;if(j>>>0>=4){n=j&-4;while(1){f=b<<2;J[f+d>>2]=J[f+k>>2];e=f|4;J[e+d>>2]=J[e+k>>2];e=f|8;J[e+d>>2]=J[e+k>>2];e=f|12;J[e+d>>2]=J[e+k>>2];b=b+4|0;s=s+4|0;if((n|0)!=(s|0)){continue}break}}n=j&3;if(!n){break r}while(1){e=b<<2;J[e+d>>2]=J[e+k>>2];b=b+1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}J[a+80>>2]=p}na(k)}b=J[i+56>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[i+48>>2];J[i+48>>2]=0;if(a){na(a)}ba=i+80|0;return p}qa();B()}function wf(a,b){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=Q(0),p=0,q=0,r=0,s=Q(0);e=ba-80|0;ba=e;J[e+56>>2]=0;J[e+60>>2]=0;J[e+48>>2]=0;J[e+52>>2]=0;J[e+64>>2]=1065353216;c=J[a+80>>2];J[e+24>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}g=c<<2;k=oa(g);J[e+16>>2]=k;c=g+k|0;J[e+24>>2]=c;pa(k,0,g);J[e+20>>2]=c;while(1){d=J[J[b>>2]>>2];g=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],n,0);h=c;c=c+g|0;c=c+d|0;I[e+44>>1]=K[c+4|0]|K[c+5|0]<<8;J[e+40>>2]=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);g=K[c+4|0]|K[c+5|0]<<8;I[e+36>>1]=g;c=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);J[e+32>>2]=c;I[e+4>>1]=g;J[e>>2]=c;J[e+8>>2]=p;c=0;g=L[e+4>>1]^(L[e+2>>1]^(L[e>>1]^318)+239)+239;b:{c:{m=e+48|0;h=J[m+4>>2];if(!h){break c}d=Kl(h);d:{if(d>>>0>=2){c=g;if(c>>>0>=h>>>0){c=(g>>>0)%(h>>>0)|0}i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}if(d>>>0<2){break d}q=L[e>>1];j=L[e+2>>1];l=L[e+4>>1];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(g|0)){if(d>>>0>=h>>>0){d=(d>>>0)%(h>>>0)|0}if((c|0)!=(d|0)){break c}}d=L[i+8>>1];e:{if((d|0)!=(q|0)){d=(d|0)==(q|0);break e}d=L[i+10>>1];if((d|0)!=(j|0)){d=(d|0)==(j|0);break e}d=(l|0)==L[i+12>>1]}if(!d){continue}break}c=0;break b}c=g&h+262143;i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}}j=h-1|0;r=L[e>>1];q=L[e+2>>1];l=L[e+4>>1];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(g|0)&(d&j)!=(c|0)){break c}d=L[i+8>>1];f:{if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=L[i+10>>1];if((d|0)!=(q|0)){d=(d|0)==(q|0);break f}d=(l|0)==L[i+12>>1]}if(!d){continue}break}c=0;break b}i=oa(20);I[i+12>>1]=L[e+4>>1];J[i+8>>2]=J[e>>2];d=J[e+8>>2];J[i>>2]=0;J[i+4>>2]=g;J[i+16>>2]=d;o=Q(J[m+12>>2]+1>>>0);s=N[m+16>>2];g:{if(o>Q(s*Q(h>>>0))?0:h){break g}c=2;d=(h-1&h)!=0|h>>>0<3|h<<1;o=Q(W(Q(o/s)));h:{if(o<Q(4294967296)&o>=Q(0)){l=~~o>>>0;break h}l=0}d=d>>>0>l>>>0?d:l;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);h=J[m+4>>2]}j:{if(c>>>0<=h>>>0){if(c>>>0>=h>>>0){break j}l=h>>>0<3;o=Q(W(Q(Q(M[m+12>>2])/N[m+16>>2])));k:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break k}d=0}l:{m:{if(l){break m}if(Kl(h)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(h>>>0<=c>>>0){break j}}db(m,c)}h=J[m+4>>2];c=h-1|0;if(!(c&h)){c=c&g;break g}if(g>>>0<h>>>0){c=g;break g}c=(g>>>0)%(h>>>0)|0}g=J[m>>2]+(c<<2)|0;c=J[g>>2];n:{o:{if(!c){c=m+8|0;J[i>>2]=J[c>>2];J[m+8>>2]=i;J[g>>2]=c;c=J[i>>2];if(!c){break n}c=J[c+4>>2];g=h-1|0;p:{if(!(g&h)){c=c&g;break p}if(c>>>0<h>>>0){break p}c=(c>>>0)%(h>>>0)|0}c=J[m>>2]+(c<<2)|0;break o}J[i>>2]=J[c>>2]}J[c>>2]=i}J[m+12>>2]=J[m+12>>2]+1;c=1}H[e+76|0]=c;J[e+72>>2]=i;q:{if(!K[e+76|0]){J[(n<<2)+k>>2]=J[J[e+72>>2]+16>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,p)|0,e+40|0,c);k=J[e+16>>2];J[k+(n<<2)>>2]=p;p=p+1|0}n=n+1|0;f=n?f:f+1|0;j=J[a+80>>2];if(!f&n>>>0<j>>>0){continue}break}if((j|0)!=(p|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];j=J[a+68>>2];if((b|0)==(j|0)){break r}b=b-j>>2;f=b>>>0<=1?1:b;g=f&3;c=0;b=0;if(f-1>>>0>=3){n=f&-4;l=0;while(1){d=b<<2;f=d+j|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];f=j+(d|4)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];f=j+(d|8)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];f=j+(d|12)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}if(!g){break r}while(1){f=j+(b<<2)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;f=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<j>>>0){Ma(f,j-c|0,2176);j=J[a+80>>2];break s}if(c>>>0<=j>>>0){break s}J[a+72>>2]=b+(j<<2)}if(!j){break r}d=J[f>>2];c=0;b=0;if(j>>>0>=4){n=j&-4;l=0;while(1){g=b<<2;J[g+d>>2]=J[g+k>>2];f=g|4;J[f+d>>2]=J[f+k>>2];f=g|8;J[f+d>>2]=J[f+k>>2];f=g|12;J[f+d>>2]=J[f+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}n=j&3;if(!n){break r}while(1){f=b<<2;J[f+d>>2]=J[f+k>>2];b=b+1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}J[a+80>>2]=p}na(k)}b=J[e+56>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[e+48>>2];J[e+48>>2]=0;if(a){na(a)}ba=e+80|0;return p}qa();B()}function If(a,b){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=Q(0),q=0,r=0,s=0,t=0,u=Q(0);i=ba+-64|0;ba=i;J[i+40>>2]=0;J[i+44>>2]=0;J[i+32>>2]=0;J[i+36>>2]=0;J[i+48>>2]=1065353216;c=J[a+80>>2];J[i+24>>2]=0;J[i+16>>2]=0;J[i+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}f=c<<2;k=oa(f);J[i+16>>2]=k;c=f+k|0;J[i+24>>2]=c;pa(k,0,f);J[i+20>>2]=c;while(1){d=J[J[b>>2]>>2];f=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],o,0);g=c;c=c+f|0;c=c+d|0;c=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);J[i+28>>2]=c;J[i+12>>2]=q;J[i+8>>2]=c;c=0;n=i+8|0;f=K[n+3|0]^(K[n+2|0]^(K[n+1|0]^(K[n|0]^318)+239)+239)+239;b:{c:{m=i+32|0;g=J[m+4>>2];if(!g){break c}d=Kl(g);d:{if(d>>>0>=2){c=f;if(c>>>0>=g>>>0){c=(f>>>0)%(g>>>0)|0}h=J[J[m>>2]+(c<<2)>>2];if(!h){break c}if(d>>>0<2){break d}r=K[n|0];s=K[n+1|0];j=K[n+2|0];l=K[n+3|0];while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((d|0)!=(f|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break c}}d=K[h+8|0];e:{if((d|0)!=(r|0)){d=(d|0)==(r|0);break e}d=K[h+9|0];if((d|0)!=(s|0)){d=(d|0)==(s|0);break e}d=K[h+10|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break e}d=(l|0)==K[h+11|0]}if(!d){continue}break}c=0;break b}c=f&g-1;h=J[J[m>>2]+(c<<2)>>2];if(!h){break c}}j=g-1|0;t=K[n|0];r=K[n+1|0];s=K[n+2|0];l=K[n+3|0];while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((d|0)!=(f|0)&(d&j)!=(c|0)){break c}d=K[h+8|0];f:{if((d|0)!=(t|0)){d=(d|0)==(t|0);break f}d=K[h+9|0];if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=K[h+10|0];if((d|0)!=(s|0)){d=(d|0)==(s|0);break f}d=(l|0)==K[h+11|0]}if(!d){continue}break}c=0;break b}h=oa(16);J[h+8>>2]=J[n>>2];d=J[n+4>>2];J[h+4>>2]=f;J[h+12>>2]=d;J[h>>2]=0;p=Q(J[m+12>>2]+1>>>0);u=N[m+16>>2];g:{if(p>Q(u*Q(g>>>0))?0:g){break g}c=2;d=(g-1&g)!=0|g>>>0<3|g<<1;p=Q(W(Q(p/u)));h:{if(p<Q(4294967296)&p>=Q(0)){l=~~p>>>0;break h}l=0}d=d>>>0>l>>>0?d:l;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);g=J[m+4>>2]}j:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break j}l=g>>>0<3;p=Q(W(Q(Q(M[m+12>>2])/N[m+16>>2])));k:{if(p<Q(4294967296)&p>=Q(0)){d=~~p>>>0;break k}d=0}l:{m:{if(l){break m}if(Kl(g)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(g>>>0<=c>>>0){break j}}db(m,c)}g=J[m+4>>2];c=g-1|0;if(!(c&g)){c=c&f;break g}if(f>>>0<g>>>0){c=f;break g}c=(f>>>0)%(g>>>0)|0}f=J[m>>2]+(c<<2)|0;c=J[f>>2];n:{o:{if(!c){c=m+8|0;J[h>>2]=J[c>>2];J[m+8>>2]=h;J[f>>2]=c;c=J[h>>2];if(!c){break n}c=J[c+4>>2];f=g-1|0;p:{if(!(f&g)){c=c&f;break p}if(c>>>0<g>>>0){break p}c=(c>>>0)%(g>>>0)|0}c=J[m>>2]+(c<<2)|0;break o}J[h>>2]=J[c>>2]}J[c>>2]=h}J[m+12>>2]=J[m+12>>2]+1;c=1}H[i+60|0]=c;J[i+56>>2]=h;q:{if(!K[i+60|0]){J[(o<<2)+k>>2]=J[J[i+56>>2]+12>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,q)|0,i+28|0,c);k=J[i+16>>2];J[k+(o<<2)>>2]=q;q=q+1|0}o=o+1|0;e=o?e:e+1|0;j=J[a+80>>2];if(!e&o>>>0<j>>>0){continue}break}if((j|0)!=(q|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];j=J[a+68>>2];if((b|0)==(j|0)){break r}b=b-j>>2;e=b>>>0<=1?1:b;f=e&3;c=0;b=0;if(e-1>>>0>=3){o=e&-4;l=0;while(1){d=b<<2;e=d+j|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|4)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|8)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|12)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+4|0;l=l+4|0;if((o|0)!=(l|0)){continue}break}}if(!f){break r}while(1){e=j+(b<<2)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;e=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<j>>>0){Ma(e,j-c|0,2176);j=J[a+80>>2];break s}if(c>>>0<=j>>>0){break s}J[a+72>>2]=b+(j<<2)}if(!j){break r}d=J[e>>2];c=0;b=0;if(j>>>0>=4){o=j&-4;l=0;while(1){f=b<<2;J[f+d>>2]=J[f+k>>2];e=f|4;J[e+d>>2]=J[e+k>>2];e=f|8;J[e+d>>2]=J[e+k>>2];e=f|12;J[e+d>>2]=J[e+k>>2];b=b+4|0;l=l+4|0;if((o|0)!=(l|0)){continue}break}}o=j&3;if(!o){break r}while(1){e=b<<2;J[e+d>>2]=J[e+k>>2];b=b+1|0;c=c+1|0;if((o|0)!=(c|0)){continue}break}}J[a+80>>2]=q}na(k)}b=J[i+40>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[i+32>>2];J[i+32>>2]=0;if(a){na(a)}ba=i- -64|0;return q}qa();B()}function Tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=ba-96|0;ba=e;f=J[a+16>>2];H[e+92|0]=1;J[e+88>>2]=b;J[e+84>>2]=b;J[e+80>>2]=f;j=J[a+20>>2];d=J[j>>2];a:{b:{f=J[J[f+28>>2]+(b<<2)>>2];if(f>>>0<J[j+4>>2]-d>>2>>>0){d=J[J[a+8>>2]+(J[d+(f<<2)>>2]<<2)>>2];f=J[a+4>>2];if(!K[f+84|0]){d=J[J[f+68>>2]+(d<<2)>>2]}J[e+72>>2]=0;J[e+76>>2]=0;j=e- -64|0;J[j>>2]=0;J[j+4>>2]=0;J[e+56>>2]=0;J[e+60>>2]=0;hb(f,d,H[f+24|0],e+56|0);if((b|0)!=-1){f=b+1|0;j=(f>>>0)%3|0?f:b-2|0;m=((b>>>0)%3|0?-1:2)+b|0;while(1){d=j;f=m;c:{if(!J[a+28>>2]){break c}f=b+1|0;d=(f>>>0)%3|0?f:b-2|0;f=b-1|0;if((b>>>0)%3|0){break c}f=b+2|0}n=J[a+20>>2];b=J[n>>2];d=J[J[J[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=J[n+4>>2]-b>>2>>>0){break b}d=J[J[a+8>>2]+(J[b+(d<<2)>>2]<<2)>>2];b=J[a+4>>2];if(!K[b+84|0]){d=J[J[b+68>>2]+(d<<2)>>2]}J[e+48>>2]=0;J[e+52>>2]=0;J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;hb(b,d,H[b+24|0],e+32|0);d=J[a+20>>2];b=J[d>>2];f=J[J[J[a+16>>2]+28>>2]+(f<<2)>>2];if(f>>>0>=J[d+4>>2]-b>>2>>>0){break a}d=J[J[a+8>>2]+(J[b+(f<<2)>>2]<<2)>>2];b=J[a+4>>2];if(!K[b+84|0]){d=J[J[b+68>>2]+(d<<2)>>2]}J[e+24>>2]=0;J[e+28>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;hb(b,d,H[b+24|0],e+8|0);g=J[e+8>>2];b=J[e+56>>2];d=g-b|0;p=J[e+60>>2];t=J[e+12>>2]-(p+(b>>>0>g>>>0)|0)|0;h=J[e+40>>2];f=J[e+64>>2];n=h-f|0;u=J[e+68>>2];x=J[e+44>>2]-(u+(f>>>0>h>>>0)|0)|0;g=Hl(d,t,n,x);v=o-g|0;w=i-(ca+(g>>>0>o>>>0)|0)|0;i=v;h=J[e+16>>2];g=h-f|0;u=J[e+20>>2]-((f>>>0>h>>>0)+u|0)|0;k=J[e+32>>2];h=k-b|0;v=J[e+36>>2]-((b>>>0>k>>>0)+p|0)|0;b=Hl(g,u,h,v);o=i+b|0;i=ca+w|0;i=b>>>0>o>>>0?i+1|0:i;b=l;l=d;p=t;k=J[e+48>>2];f=J[e+72>>2];d=k-f|0;t=J[e+76>>2];w=J[e+52>>2]-(t+(f>>>0>k>>>0)|0)|0;l=Hl(l,p,d,w);k=b+l|0;b=ca+q|0;b=k>>>0<l>>>0?b+1|0:b;l=J[e+24>>2];p=l-f|0;f=J[e+28>>2]-((f>>>0>l>>>0)+t|0)|0;q=Hl(p,f,h,v);l=k-q|0;q=b-(ca+(k>>>0<q>>>0)|0)|0;b=Hl(g,u,d,w);d=r-b|0;b=s-(ca+(b>>>0>r>>>0)|0)|0;s=Hl(p,f,n,x);r=s+d|0;b=ca+b|0;s=r>>>0<s>>>0?b+1|0:b;b=J[e+88>>2];f=J[e+80>>2];d:{if(K[e+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|J[J[f>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=J[J[J[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}J[e+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;J[e+88>>2]=b;if((b|0)!=-1){break e}}b=J[e+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(J[J[f>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=J[J[J[f+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}H[e+92|0]=0;J[e+88>>2]=d;break d}if((b|0)!=J[e+84>>2]){break d}J[e+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(J[J[f>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=J[J[J[f+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}J[e+88>>2]=d}b=J[e+88>>2];if((b|0)!=-1){continue}break}}b=s>>31;f=b^r;d=f-b|0;b=(b^s)-((b>>>0>f>>>0)+b|0)|0;m=-1;f=2147483647;g=q>>31;h=g^l;j=h-g|0;n=(g^q)-((h>>>0<g>>>0)+g|0)|0;h=n;k=j^-1;g=h^2147483647;n=i;m:{n:{if(!J[a+28>>2]){if((b|0)==(g|0)&d>>>0>k>>>0|b>>>0>g>>>0){break m}b=b+h|0;a=d+j|0;b=a>>>0<j>>>0?b+1|0:b;f=a;g=i;a=g>>31;d=a;m=d^o;a=m-d|0;i=a;d=(d^g)-((d>>>0>m>>>0)+d|0)|0;a=a+f|0;d=d^2147483647;i=(d|0)==(b|0)&(i^-1)>>>0<f>>>0|b>>>0>d>>>0;a=i?-1:a;if(!(i&0)&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(g|0)&d>>>0>k>>>0|b>>>0>g>>>0){break o}b=b+h|0;a=d+j|0;b=a>>>0<j>>>0?b+1|0:b;k=i;d=i>>31;h=d^o;i=h-d|0;j=(d^k)-((d>>>0>h>>>0)+d|0)|0;g=j^2147483647;d=a;a=i;if((g|0)==(b|0)&d>>>0>(a^-1)>>>0|b>>>0>g>>>0){break o}b=b+j|0;m=a+d|0;b=m>>>0<a>>>0?b+1|0:b;f=b;if(!b&m>>>0<536870913){break m}}b=f>>>29|0;a=(f&536870911)<<3|m>>>29}o=Il(o,n,a,b);l=Il(l,q,a,b);r=Il(r,s,a,b)}J[c+8>>2]=o;J[c+4>>2]=l;J[c>>2]=r;ba=e+96|0;return}ra();B()}ra();B()}ra();B()}function Kf(a,b){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=Q(0),p=0,q=0,r=0,s=Q(0);e=ba+-64|0;ba=e;J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;J[e+48>>2]=1065353216;c=J[a+80>>2];J[e+16>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}g=c<<2;k=oa(g);J[e+8>>2]=k;c=g+k|0;J[e+16>>2]=c;pa(k,0,g);J[e+12>>2]=c;while(1){d=J[J[b>>2]>>2];g=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],n,0);h=c;c=c+g|0;c=c+d|0;H[e+30|0]=K[c+2|0];I[e+28>>1]=K[c|0]|K[c+1|0]<<8;g=K[c+2|0];H[e+26|0]=g;c=K[c|0]|K[c+1|0]<<8;I[e+24>>1]=c;H[e+2|0]=g;I[e>>1]=c;J[e+4>>2]=p;c=0;g=K[e+2|0]^(K[e+1|0]^(K[e|0]^318)+239)+239;b:{c:{m=e+32|0;h=J[m+4>>2];if(!h){break c}d=Kl(h);d:{if(d>>>0>=2){c=g;if(c>>>0>=h>>>0){c=(g>>>0)%(h>>>0)|0}i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}if(d>>>0<2){break d}q=K[e|0];j=K[e+1|0];l=K[e+2|0];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(g|0)){if(d>>>0>=h>>>0){d=(d>>>0)%(h>>>0)|0}if((c|0)!=(d|0)){break c}}d=K[i+8|0];e:{if((d|0)!=(q|0)){d=(d|0)==(q|0);break e}d=K[i+9|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break e}d=(l|0)==K[i+10|0]}if(!d){continue}break}c=0;break b}c=g&h-1;i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}}j=h-1|0;r=K[e|0];q=K[e+1|0];l=K[e+2|0];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(g|0)&(d&j)!=(c|0)){break c}d=K[i+8|0];f:{if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=K[i+9|0];if((d|0)!=(q|0)){d=(d|0)==(q|0);break f}d=(l|0)==K[i+10|0]}if(!d){continue}break}c=0;break b}i=oa(16);H[i+10|0]=K[e+2|0];I[i+8>>1]=L[e>>1];d=J[e+4>>2];J[i>>2]=0;J[i+4>>2]=g;J[i+12>>2]=d;o=Q(J[m+12>>2]+1>>>0);s=N[m+16>>2];g:{if(o>Q(s*Q(h>>>0))?0:h){break g}c=2;d=(h-1&h)!=0|h>>>0<3|h<<1;o=Q(W(Q(o/s)));h:{if(o<Q(4294967296)&o>=Q(0)){l=~~o>>>0;break h}l=0}d=d>>>0>l>>>0?d:l;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);h=J[m+4>>2]}j:{if(c>>>0<=h>>>0){if(c>>>0>=h>>>0){break j}l=h>>>0<3;o=Q(W(Q(Q(M[m+12>>2])/N[m+16>>2])));k:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break k}d=0}l:{m:{if(l){break m}if(Kl(h)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(h>>>0<=c>>>0){break j}}db(m,c)}h=J[m+4>>2];c=h-1|0;if(!(c&h)){c=c&g;break g}if(g>>>0<h>>>0){c=g;break g}c=(g>>>0)%(h>>>0)|0}g=J[m>>2]+(c<<2)|0;c=J[g>>2];n:{o:{if(!c){c=m+8|0;J[i>>2]=J[c>>2];J[m+8>>2]=i;J[g>>2]=c;c=J[i>>2];if(!c){break n}c=J[c+4>>2];g=h-1|0;p:{if(!(g&h)){c=c&g;break p}if(c>>>0<h>>>0){break p}c=(c>>>0)%(h>>>0)|0}c=J[m>>2]+(c<<2)|0;break o}J[i>>2]=J[c>>2]}J[c>>2]=i}J[m+12>>2]=J[m+12>>2]+1;c=1}H[e+60|0]=c;J[e+56>>2]=i;q:{if(!K[e+60|0]){J[(n<<2)+k>>2]=J[J[e+56>>2]+12>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,p)|0,e+28|0,c);k=J[e+8>>2];J[k+(n<<2)>>2]=p;p=p+1|0}n=n+1|0;f=n?f:f+1|0;j=J[a+80>>2];if(!f&n>>>0<j>>>0){continue}break}if((j|0)!=(p|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];j=J[a+68>>2];if((b|0)==(j|0)){break r}b=b-j>>2;f=b>>>0<=1?1:b;g=f&3;c=0;b=0;if(f-1>>>0>=3){n=f&-4;l=0;while(1){d=b<<2;f=d+j|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];f=j+(d|4)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];f=j+(d|8)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];f=j+(d|12)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}if(!g){break r}while(1){f=j+(b<<2)|0;J[f>>2]=J[(J[f>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;f=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<j>>>0){Ma(f,j-c|0,2176);j=J[a+80>>2];break s}if(c>>>0<=j>>>0){break s}J[a+72>>2]=b+(j<<2)}if(!j){break r}d=J[f>>2];c=0;b=0;if(j>>>0>=4){n=j&-4;l=0;while(1){g=b<<2;J[g+d>>2]=J[g+k>>2];f=g|4;J[f+d>>2]=J[f+k>>2];f=g|8;J[f+d>>2]=J[f+k>>2];f=g|12;J[f+d>>2]=J[f+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}n=j&3;if(!n){break r}while(1){f=b<<2;J[f+d>>2]=J[f+k>>2];b=b+1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}J[a+80>>2]=p}na(k)}b=J[e+40>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[e+32>>2];J[e+32>>2]=0;if(a){na(a)}ba=e- -64|0;return p}qa();B()}function Rc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=ba-96|0;ba=f;d=J[a+16>>2];H[f+92|0]=1;J[f+88>>2]=b;J[f+84>>2]=b;J[f+80>>2]=d;a:{if((b|0)==-1){break a}j=J[a+20>>2];e=J[j>>2];d=J[J[d>>2]+(b<<2)>>2];if(d>>>0>=J[j+4>>2]-e>>2>>>0){break a}e=J[J[a+8>>2]+(J[e+(d<<2)>>2]<<2)>>2];d=J[a+4>>2];if(!K[d+84|0]){e=J[J[d+68>>2]+(e<<2)>>2]}J[f+72>>2]=0;J[f+76>>2]=0;j=f- -64|0;J[j>>2]=0;J[j+4>>2]=0;J[f+56>>2]=0;J[f+60>>2]=0;hb(d,e,H[d+24|0],f+56|0);d=b+1|0;j=(d>>>0)%3|0?d:b-2|0;m=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){e=j;d=m;d:{if(!J[a+28>>2]){break d}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((e|0)==-1){break b}n=J[a+20>>2];b=J[n>>2];e=J[J[J[a+16>>2]>>2]+(e<<2)>>2];if(e>>>0>=J[n+4>>2]-b>>2>>>0){break b}e=J[J[a+8>>2]+(J[b+(e<<2)>>2]<<2)>>2];b=J[a+4>>2];if(!K[b+84|0]){e=J[J[b+68>>2]+(e<<2)>>2]}J[f+48>>2]=0;J[f+52>>2]=0;J[f+40>>2]=0;J[f+44>>2]=0;J[f+32>>2]=0;J[f+36>>2]=0;hb(b,e,H[b+24|0],f+32|0);if((d|0)==-1){break c}e=J[a+20>>2];b=J[e>>2];d=J[J[J[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=J[e+4>>2]-b>>2>>>0){break c}e=J[J[a+8>>2]+(J[b+(d<<2)>>2]<<2)>>2];b=J[a+4>>2];if(!K[b+84|0]){e=J[J[b+68>>2]+(e<<2)>>2]}J[f+24>>2]=0;J[f+28>>2]=0;J[f+16>>2]=0;J[f+20>>2]=0;J[f+8>>2]=0;J[f+12>>2]=0;hb(b,e,H[b+24|0],f+8|0);g=J[f+8>>2];b=J[f+56>>2];e=g-b|0;p=J[f+60>>2];t=J[f+12>>2]-(p+(b>>>0>g>>>0)|0)|0;h=J[f+40>>2];d=J[f+64>>2];n=h-d|0;u=J[f+68>>2];x=J[f+44>>2]-(u+(d>>>0>h>>>0)|0)|0;g=Hl(e,t,n,x);v=o-g|0;w=i-(ca+(g>>>0>o>>>0)|0)|0;i=v;h=J[f+16>>2];g=h-d|0;u=J[f+20>>2]-((d>>>0>h>>>0)+u|0)|0;k=J[f+32>>2];h=k-b|0;v=J[f+36>>2]-((b>>>0>k>>>0)+p|0)|0;b=Hl(g,u,h,v);o=i+b|0;i=ca+w|0;i=b>>>0>o>>>0?i+1|0:i;b=l;l=e;p=t;k=J[f+48>>2];d=J[f+72>>2];e=k-d|0;t=J[f+76>>2];w=J[f+52>>2]-(t+(d>>>0>k>>>0)|0)|0;l=Hl(l,p,e,w);k=b+l|0;b=ca+q|0;b=k>>>0<l>>>0?b+1|0:b;l=J[f+24>>2];p=l-d|0;d=J[f+28>>2]-((d>>>0>l>>>0)+t|0)|0;q=Hl(p,d,h,v);l=k-q|0;q=b-(ca+(k>>>0<q>>>0)|0)|0;b=Hl(g,u,e,w);e=r-b|0;b=s-(ca+(b>>>0>r>>>0)|0)|0;s=Hl(p,d,n,x);r=s+e|0;b=ca+b|0;s=r>>>0<s>>>0?b+1|0:b;b=J[f+88>>2];e=J[f+80>>2];e:{if(K[f+92|0]){f:{g:{h:{i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break i}b=J[J[e+12>>2]+(b<<2)>>2];if((b|0)!=-1){break h}}J[f+88>>2]=-1;break g}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;J[f+88>>2]=b;if((b|0)!=-1){break f}}b=J[f+84>>2];d=-1;j:{if((b|0)==-1){break j}k:{if((b>>>0)%3|0){b=b-1|0;break k}b=b+2|0;d=-1;if((b|0)==-1){break j}}b=J[J[e+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break j}d=b-1|0;if((b>>>0)%3|0){break j}d=b+2|0}H[f+92|0]=0;J[f+88>>2]=d;break e}if((b|0)!=J[f+84>>2]){break e}J[f+88>>2]=-1;break e}d=-1;l:{if((b|0)==-1){break l}m:{if((b>>>0)%3|0){b=b-1|0;break m}b=b+2|0;d=-1;if((b|0)==-1){break l}}b=J[J[e+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break l}d=b-1|0;if((b>>>0)%3|0){break l}d=b+2|0}J[f+88>>2]=d}b=J[f+88>>2];if((b|0)!=-1){continue}break}b=s>>31;d=b^r;e=d-b|0;b=(b^s)-((b>>>0>d>>>0)+b|0)|0;m=-1;d=2147483647;g=q>>31;h=g^l;j=h-g|0;n=(g^q)-((h>>>0<g>>>0)+g|0)|0;h=n;k=j^-1;g=h^2147483647;n=i;n:{o:{if(!J[a+28>>2]){if((b|0)==(g|0)&e>>>0>k>>>0|b>>>0>g>>>0){break n}b=b+h|0;a=e+j|0;b=a>>>0<j>>>0?b+1|0:b;d=a;g=i;a=g>>31;e=a;m=e^o;a=m-e|0;i=a;e=(e^g)-((e>>>0>m>>>0)+e|0)|0;a=a+d|0;e=e^2147483647;i=(e|0)==(b|0)&(i^-1)>>>0<d>>>0|b>>>0>e>>>0;a=i?-1:a;if(!(i&0)&(a|0)<=536870912|(a|0)<536870912){break n}b=0;a=a>>>29|0;break o}p:{if((b|0)==(g|0)&e>>>0>k>>>0|b>>>0>g>>>0){break p}b=b+h|0;a=e+j|0;b=a>>>0<j>>>0?b+1|0:b;k=i;e=i>>31;h=e^o;i=h-e|0;j=(e^k)-((e>>>0>h>>>0)+e|0)|0;g=j^2147483647;e=a;a=i;if((g|0)==(b|0)&e>>>0>(a^-1)>>>0|b>>>0>g>>>0){break p}b=b+j|0;m=a+e|0;b=m>>>0<a>>>0?b+1|0:b;d=b;if(!b&m>>>0<536870913){break n}}b=d>>>29|0;a=(d&536870911)<<3|m>>>29}o=Il(o,n,a,b);l=Il(l,q,a,b);r=Il(r,s,a,b)}J[c+8>>2]=o;J[c+4>>2]=l;J[c>>2]=r;ba=f+96|0;return}ra();B()}ra();B()}ra();B()}function Jd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=Q(0),o=0,p=0,q=0,r=0,s=0,t=Q(0);h=ba-80|0;ba=h;J[h+56>>2]=0;J[h+60>>2]=0;J[h+48>>2]=0;J[h+52>>2]=0;J[h+64>>2]=1065353216;c=J[a+80>>2];J[h+32>>2]=0;J[h+24>>2]=0;J[h+28>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}f=c<<2;k=oa(f);J[h+24>>2]=k;c=f+k|0;J[h+32>>2]=c;pa(k,0,f);J[h+28>>2]=c;while(1){d=J[J[b>>2]>>2];f=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],m,0);g=c;c=c+f|0;c=c+d|0;f=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);c=K[c+4|0]|K[c+5|0]<<8|(K[c+6|0]<<16|K[c+7|0]<<24);J[h+40>>2]=f;J[h+44>>2]=c;J[h+16>>2]=p;J[h+8>>2]=f;J[h+12>>2]=c;c=0;o=h+8|0;f=J[o+4>>2]^(J[o>>2]^318)+239;b:{c:{l=h+48|0;g=J[l+4>>2];if(!g){break c}d=Kl(g);d:{if(d>>>0>=2){c=f;if(c>>>0>=g>>>0){c=(f>>>0)%(g>>>0)|0}j=J[J[l>>2]+(c<<2)>>2];if(!j){break c}if(d>>>0<2){break d}i=J[o+4>>2];r=J[o>>2];while(1){j=J[j>>2];if(!j){break c}d=J[j+4>>2];if((d|0)!=(f|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break c}}d=J[j+8>>2];e:{if((d|0)!=(r|0)){d=(d|0)==(r|0);break e}d=(i|0)==J[j+12>>2]}if(!d){continue}break}c=0;break b}c=f&g-1;j=J[J[l>>2]+(c<<2)>>2];if(!j){break c}}r=g-1|0;i=J[o+4>>2];s=J[o>>2];while(1){j=J[j>>2];if(!j){break c}d=J[j+4>>2];if((d|0)!=(f|0)&(d&r)!=(c|0)){break c}d=J[j+8>>2];f:{if((d|0)!=(s|0)){d=(d|0)==(s|0);break f}d=(i|0)==J[j+12>>2]}if(!d){continue}break}c=0;break b}j=oa(20);d=J[o+4>>2];J[j+8>>2]=J[o>>2];J[j+12>>2]=d;d=J[o+8>>2];J[j+4>>2]=f;J[j+16>>2]=d;J[j>>2]=0;n=Q(J[l+12>>2]+1>>>0);t=N[l+16>>2];g:{if(n>Q(t*Q(g>>>0))?0:g){break g}c=2;d=(g-1&g)!=0|g>>>0<3|g<<1;n=Q(W(Q(n/t)));h:{if(n<Q(4294967296)&n>=Q(0)){i=~~n>>>0;break h}i=0}d=d>>>0>i>>>0?d:i;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);g=J[l+4>>2]}j:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break j}i=g>>>0<3;n=Q(W(Q(Q(M[l+12>>2])/N[l+16>>2])));k:{if(n<Q(4294967296)&n>=Q(0)){d=~~n>>>0;break k}d=0}l:{m:{if(i){break m}if(Kl(g)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(g>>>0<=c>>>0){break j}}db(l,c)}g=J[l+4>>2];c=g-1|0;if(!(c&g)){c=c&f;break g}if(f>>>0<g>>>0){c=f;break g}c=(f>>>0)%(g>>>0)|0}f=J[l>>2]+(c<<2)|0;c=J[f>>2];n:{o:{if(!c){c=l+8|0;J[j>>2]=J[c>>2];J[l+8>>2]=j;J[f>>2]=c;c=J[j>>2];if(!c){break n}c=J[c+4>>2];f=g-1|0;p:{if(!(f&g)){c=c&f;break p}if(c>>>0<g>>>0){break p}c=(c>>>0)%(g>>>0)|0}c=J[l>>2]+(c<<2)|0;break o}J[j>>2]=J[c>>2]}J[c>>2]=j}J[l+12>>2]=J[l+12>>2]+1;c=1}H[h+76|0]=c;J[h+72>>2]=j;q:{if(!K[h+76|0]){J[(m<<2)+k>>2]=J[J[h+72>>2]+16>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,p)|0,h+40|0,c);k=J[h+24>>2];J[k+(m<<2)>>2]=p;p=p+1|0}m=m+1|0;e=m?e:e+1|0;i=J[a+80>>2];if(!e&m>>>0<i>>>0){continue}break}if((i|0)!=(p|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];i=J[a+68>>2];if((b|0)==(i|0)){break r}b=b-i>>2;e=b>>>0<=1?1:b;f=e&3;c=0;b=0;if(e-1>>>0>=3){m=e&-4;while(1){d=b<<2;e=d+i|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=i+(d|4)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=i+(d|8)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=i+(d|12)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+4|0;q=q+4|0;if((m|0)!=(q|0)){continue}break}}if(!f){break r}while(1){e=i+(b<<2)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;e=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<i>>>0){Ma(e,i-c|0,2176);i=J[a+80>>2];break s}if(c>>>0<=i>>>0){break s}J[a+72>>2]=b+(i<<2)}if(!i){break r}d=J[e>>2];c=0;b=0;if(i>>>0>=4){m=i&-4;while(1){f=b<<2;J[f+d>>2]=J[f+k>>2];e=f|4;J[e+d>>2]=J[e+k>>2];e=f|8;J[e+d>>2]=J[e+k>>2];e=f|12;J[e+d>>2]=J[e+k>>2];b=b+4|0;q=q+4|0;if((m|0)!=(q|0)){continue}break}}m=i&3;if(!m){break r}while(1){e=b<<2;J[e+d>>2]=J[e+k>>2];b=b+1|0;c=c+1|0;if((m|0)!=(c|0)){continue}break}}J[a+80>>2]=p}na(k)}b=J[h+56>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[h+48>>2];J[h+48>>2]=0;if(a){na(a)}ba=h+80|0;return p}qa();B()}function fb(a){var 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;f=ba-32|0;ba=f;a:{b=J[a+16>>2];b:{if(b>>>0>=113){J[a+16>>2]=b-113;b=J[a+4>>2];j=J[b>>2];c=b+4|0;J[a+4>>2]=c;b=J[a+8>>2];c:{if((b|0)!=J[a+12>>2]){d=b;break c}k=J[a>>2];if(k>>>0<c>>>0){e=((c-k>>2)+1|0)/-2<<2;b=b-c|0;d=ta(e+c|0,c,b)+b|0;J[a+8>>2]=d;J[a+4>>2]=e+J[a+4>>2];break c}d=(b|0)==(k|0)?1:b-k>>1;if(d>>>0>=1073741824){break a}e=d<<2;h=oa(e);l=e+h|0;e=h+(d&-4)|0;d=e;d:{if((b|0)==(c|0)){break d}b=b-c|0;m=b&-4;i=b-4|0;g=(i>>>2|0)+1&7;e:{if(!g){b=e;break e}d=0;b=e;while(1){J[b>>2]=J[c>>2];c=c+4|0;b=b+4|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}d=e+m|0;if(i>>>0<28){break d}while(1){J[b>>2]=J[c>>2];J[b+4>>2]=J[c+4>>2];J[b+8>>2]=J[c+8>>2];J[b+12>>2]=J[c+12>>2];J[b+16>>2]=J[c+16>>2];J[b+20>>2]=J[c+20>>2];J[b+24>>2]=J[c+24>>2];J[b+28>>2]=J[c+28>>2];c=c+32|0;b=b+32|0;if((d|0)!=(b|0)){continue}break}}J[a+12>>2]=l;J[a+8>>2]=d;J[a+4>>2]=e;J[a>>2]=h;if(!k){break c}na(k);d=J[a+8>>2]}J[d>>2]=j;J[a+8>>2]=J[a+8>>2]+4;break b}c=J[a+8>>2];b=J[a+4>>2];l=c-b|0;h=l>>2;g=J[a+12>>2];d=J[a>>2];e=g-d|0;if(h>>>0<e>>2>>>0){if((c|0)!=(g|0)){n=f,o=oa(4068),J[n+8>>2]=o;d=a;f:{g:{b=J[a+8>>2];h:{if((b|0)!=J[a+12>>2]){e=b;break h}c=J[d+4>>2];h=J[d>>2];if(c>>>0>h>>>0){g=((c-h>>2)+1|0)/-2<<2;a=b-c|0;e=ta(g+c|0,c,a)+a|0;J[d+8>>2]=e;J[d+4>>2]=g+J[d+4>>2];break h}e=(b|0)==(h|0)?1:b-h>>1;if(e>>>0>=1073741824){break g}a=e<<2;j=oa(a);l=a+j|0;a=j+(e&-4)|0;e=a;i:{if((b|0)==(c|0)){break i}b=b-c|0;m=b&-4;i=b-4|0;g=(i>>>2|0)+1&7;j:{if(!g){b=a;break j}e=0;b=a;while(1){J[b>>2]=J[c>>2];c=c+4|0;b=b+4|0;e=e+1|0;if((g|0)!=(e|0)){continue}break}}e=a+m|0;if(i>>>0<28){break i}while(1){J[b>>2]=J[c>>2];J[b+4>>2]=J[c+4>>2];J[b+8>>2]=J[c+8>>2];J[b+12>>2]=J[c+12>>2];J[b+16>>2]=J[c+16>>2];J[b+20>>2]=J[c+20>>2];J[b+24>>2]=J[c+24>>2];J[b+28>>2]=J[c+28>>2];c=c+32|0;b=b+32|0;if((e|0)!=(b|0)){continue}break}}J[d+12>>2]=l;J[d+8>>2]=e;J[d+4>>2]=a;J[d>>2]=j;if(!h){break h}na(h);e=J[d+8>>2]}J[e>>2]=J[f+8>>2];J[d+8>>2]=J[d+8>>2]+4;break f}xa();B()}break b}n=f,o=oa(4068),J[n+8>>2]=o;qe(a,f+8|0);b=J[a+4>>2];j=J[b>>2];c=b+4|0;J[a+4>>2]=c;b=J[a+8>>2];k:{if((b|0)!=J[a+12>>2]){d=b;break k}k=J[a>>2];if(k>>>0<c>>>0){e=((c-k>>2)+1|0)/-2<<2;b=b-c|0;d=ta(e+c|0,c,b)+b|0;J[a+8>>2]=d;J[a+4>>2]=e+J[a+4>>2];break k}d=(b|0)==(k|0)?1:b-k>>1;if(d>>>0>=1073741824){break a}e=d<<2;h=oa(e);l=e+h|0;e=h+(d&-4)|0;d=e;l:{if((b|0)==(c|0)){break l}b=b-c|0;m=b&-4;i=b-4|0;g=(i>>>2|0)+1&7;m:{if(!g){b=e;break m}d=0;b=e;while(1){J[b>>2]=J[c>>2];c=c+4|0;b=b+4|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}d=e+m|0;if(i>>>0<28){break l}while(1){J[b>>2]=J[c>>2];J[b+4>>2]=J[c+4>>2];J[b+8>>2]=J[c+8>>2];J[b+12>>2]=J[c+12>>2];J[b+16>>2]=J[c+16>>2];J[b+20>>2]=J[c+20>>2];J[b+24>>2]=J[c+24>>2];J[b+28>>2]=J[c+28>>2];c=c+32|0;b=b+32|0;if((d|0)!=(b|0)){continue}break}}J[a+12>>2]=l;J[a+8>>2]=d;J[a+4>>2]=e;J[a>>2]=h;if(!k){break k}na(k);d=J[a+8>>2]}J[d>>2]=j;J[a+8>>2]=J[a+8>>2]+4;break b}J[f+24>>2]=a+12;m=(d|0)==(g|0)?1:e>>1;if(m>>>0>=1073741824){break a}e=m<<2;g=oa(e);J[f+8>>2]=g;j=e+g|0;J[f+20>>2]=j;d=(h<<2)+g|0;J[f+12>>2]=d;i=oa(4068);n:{if((h|0)!=(m|0)){break n}if((l|0)>0){d=((h+1|0)/-2<<2)+d|0;J[f+12>>2]=d;break n}d=(b|0)==(c|0)?1:l>>1;if(d>>>0>=1073741824){break a}b=d<<2;e=oa(b);J[f+8>>2]=e;j=b+e|0;J[f+20>>2]=j;d=e+(d&-4)|0;J[f+12>>2]=d;na(g);b=J[a+4>>2];c=J[a+8>>2];g=e}J[d>>2]=i;i=d+4|0;J[f+16>>2]=i;e=b;if((b|0)!=(c|0)){while(1){c=c-4|0;qe(f+8|0,c);if(J[a+4>>2]!=(c|0)){continue}break}j=J[f+20>>2];i=J[f+16>>2];d=J[f+12>>2];g=J[f+8>>2];e=c;b=J[a+8>>2]}c=J[a>>2];J[a>>2]=g;J[f+8>>2]=c;J[a+4>>2]=d;J[f+12>>2]=e;J[a+8>>2]=i;J[f+16>>2]=b;d=J[a+12>>2];J[a+12>>2]=j;J[f+20>>2]=d;if((b|0)!=(e|0)){J[f+16>>2]=((e-b|0)+3&-4)+b}if(!c){break b}na(c)}ba=f+32|0;return}xa();B()}function _k(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=ba-48|0;ba=k;J[a+68>>2]=f;o=a+112|0;za(o);d=J[a+56>>2];e=J[d>>2];d=J[d+4>>2];J[k+40>>2]=0;J[k+32>>2]=0;J[k+36>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+8>>2]=0;J[k+12>>2]=0;J[k>>2]=0;J[k+4>>2]=0;a:{d=d-e|0;if((d|0)>0){p=a+60|0;d=d>>>2|0;q=d>>>0<=1?1:d;r=c+4|0;while(1){e=J[a+56>>2];d=J[e>>2];if(J[e+4>>2]-d>>2>>>0<=n>>>0){break a}Tc(p,J[d+(n<<2)>>2],k+32|0);f=J[k+36>>2];d=f>>31;g=J[k+32>>2];e=g>>31;i=(d^f)-d+((e^g)-e)|0;h=J[k+40>>2];d=h>>31;e=(d^h)-d|0;d=0;m=e;e=e+i|0;d=m>>>0>e>>>0?1:d;b:{if(!(d|e)){j=J[a+108>>2];i=j;break b}j=J[a+108>>2];i=j>>31;f=Il(Hl(j,i,f,f>>31),ca,e,d);l=f>>31;i=Il(Hl(j,i,g,g>>31),ca,e,d);d=i>>31;d=(f^l)-l+((d^i)-d)|0;h=(h|0)<0?d-j|0:j-d|0}c:{if((i|0)>=0){e=f+j|0;l=h+j|0;break c}d:{if((f|0)<0){d=h>>31;e=(d^h)-d|0;break d}d=h>>31;e=J[a+100>>2]+(d-(d^h)|0)|0}if((h|0)<0){d=f>>31;l=(d^f)-d|0;break c}d=f>>31;l=J[a+100>>2]+(d-(d^f)|0)|0}d=J[a+100>>2];m=d;g=d;e:{if(!(e|l)){break e}if(!((d|0)!=(l|0)|e)){m=l;g=l;break e}if(!((d|0)!=(e|0)|l)){m=e;g=e;break e}if(!((j|0)>=(l|0)|e)){m=(j<<1)-l|0;g=0;break e}if(!((d|0)!=(e|0)|(j|0)<=(l|0))){m=(j<<1)-l|0;g=e;break e}if(!((d|0)!=(l|0)|(e|0)>=(j|0))){m=l;g=(j<<1)-e|0;break e}if(l){m=l;g=e;break e}m=0;g=e;if((e|0)<=(j|0)){break e}g=(j<<1)-e|0}J[k+28>>2]=m;J[k+24>>2]=g;J[k+40>>2]=0-h;J[k+36>>2]=0-f;J[k+32>>2]=0-i;f:{if((i|0)<=0){i=j-h|0;e=j-f|0;break f}e=f>>31;e=(e^f)-e|0;i=(h|0)>0?e:d-e|0;e=h>>31;e=(e^h)-e|0;e=(f|0)>0?e:d-e|0}g:{if(!(e|i)){i=d;break g}if(!((d|0)!=(i|0)|e)){i=d;break g}f=(d|0)!=(e|0);if(!(i|f)){i=d;break g}if(!((i|0)<=(j|0)|e)){i=(j<<1)-i|0;d=0;break g}if(!((i|0)>=(j|0)|f)){i=(j<<1)-i|0;break g}if(!((d|0)!=(i|0)|(e|0)>=(j|0))){i=d;d=(j<<1)-e|0;break g}if(i){d=e;break g}i=0;if((e|0)<=(j|0)){d=e;break g}d=(j<<1)-e|0}J[k+20>>2]=i;J[k+16>>2]=d;h=J[a+8>>2];h:{if((h|0)<=0){break h}l=(n<<3)+b|0;i=J[a+32>>2];e=0;g=k+24|0;while(1){j=i;if((h|0)>0){j=J[a+32>>2];f=0;while(1){d=f<<2;m=J[d+g>>2];h=J[a+16>>2];i:{if((m|0)>(h|0)){J[d+j>>2]=h;break i}d=d+j|0;h=J[a+12>>2];if((h|0)>(m|0)){J[d>>2]=h;break i}J[d>>2]=m}f=f+1|0;h=J[a+8>>2];if((f|0)<(h|0)){continue}break}}f=e<<2;d=f+(k+8|0)|0;g=J[f+l>>2]-J[f+j>>2]|0;J[d>>2]=g;f=d;d=J[a+28>>2];j:{if((g|0)<(d|0)){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break j}g=g-J[a+20>>2]|0}J[f>>2]=g}g=j;e=e+1|0;if((e|0)<(h|0)){continue}break}if((h|0)<=0){break h}i=J[a+32>>2];e=0;g=k+16|0;while(1){j=i;if((h|0)>0){j=J[a+32>>2];f=0;while(1){d=f<<2;m=J[d+g>>2];h=J[a+16>>2];k:{if((m|0)>(h|0)){J[d+j>>2]=h;break k}d=d+j|0;h=J[a+12>>2];if((h|0)>(m|0)){J[d>>2]=h;break k}J[d>>2]=m}f=f+1|0;h=J[a+8>>2];if((f|0)<(h|0)){continue}break}d=J[a+28>>2]}g=e<<2;f=g+k|0;g=J[g+l>>2]-J[j+g>>2]|0;J[f>>2]=g;l:{if((d|0)>(g|0)){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break l}g=g-J[a+20>>2]|0}J[f>>2]=g}g=j;e=e+1|0;if((e|0)<(h|0)){continue}break}}f=J[k+8>>2];e=J[a+108>>2];m:{if((f|0)>(e|0)){f=f-J[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=J[a+96>>2]+f|0}J[k+8>>2]=f;h=J[k+12>>2];n:{if((e|0)<(h|0)){h=h-J[a+96>>2]|0;break n}if((0-e|0)<=(h|0)){break n}h=J[a+96>>2]+h|0}J[k+12>>2]=h;d=J[k>>2];o:{if((e|0)<(d|0)){d=d-J[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=J[a+96>>2]+d|0}g=n<<1;J[k>>2]=d;i=J[k+4>>2];p:{if((e|0)<(i|0)){i=i-J[a+96>>2]|0;break p}if((0-e|0)<=(i|0)){break p}i=J[a+96>>2]+i|0}J[k+4>>2]=i;e=h>>31;e=(e^h)-e|0;l=f>>31;l=(l^f)-l|0;m=l>>>0>(e^2147483647)>>>0?2147483647:e+l|0;e=i>>31;e=(e^i)-e|0;l=d>>31;l=(l^d)-l|0;e=m>>>0>=(l>>>0>(e^2147483647)>>>0?2147483647:e+l|0)>>>0;Ca(o,e);g=g<<2;d=e?d:f;J[g+c>>2]=(J[a+96>>2]&d>>31)+d;d=e?i:h;J[g+r>>2]=(J[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)!=(n|0)){continue}break}}ba=k+48|0;return 1}ra();B()}function Qk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=ba-48|0;ba=k;J[a+68>>2]=f;o=a+112|0;za(o);d=J[a+56>>2];e=J[d>>2];d=J[d+4>>2];J[k+40>>2]=0;J[k+32>>2]=0;J[k+36>>2]=0;J[k+16>>2]=0;J[k+20>>2]=0;J[k+8>>2]=0;J[k+12>>2]=0;J[k>>2]=0;J[k+4>>2]=0;a:{d=d-e|0;if((d|0)>0){p=a+60|0;d=d>>>2|0;q=d>>>0<=1?1:d;r=c+4|0;while(1){e=J[a+56>>2];d=J[e>>2];if(J[e+4>>2]-d>>2>>>0<=n>>>0){break a}Rc(p,J[d+(n<<2)>>2],k+32|0);f=J[k+36>>2];d=f>>31;g=J[k+32>>2];e=g>>31;i=(d^f)-d+((e^g)-e)|0;h=J[k+40>>2];d=h>>31;e=(d^h)-d|0;d=0;m=e;e=e+i|0;d=m>>>0>e>>>0?1:d;b:{if(!(d|e)){j=J[a+108>>2];i=j;break b}j=J[a+108>>2];i=j>>31;f=Il(Hl(j,i,f,f>>31),ca,e,d);l=f>>31;i=Il(Hl(j,i,g,g>>31),ca,e,d);d=i>>31;d=(f^l)-l+((d^i)-d)|0;h=(h|0)<0?d-j|0:j-d|0}c:{if((i|0)>=0){e=f+j|0;l=h+j|0;break c}d:{if((f|0)<0){d=h>>31;e=(d^h)-d|0;break d}d=h>>31;e=J[a+100>>2]+(d-(d^h)|0)|0}if((h|0)<0){d=f>>31;l=(d^f)-d|0;break c}d=f>>31;l=J[a+100>>2]+(d-(d^f)|0)|0}d=J[a+100>>2];m=d;g=d;e:{if(!(e|l)){break e}if(!((d|0)!=(l|0)|e)){m=l;g=l;break e}if(!((d|0)!=(e|0)|l)){m=e;g=e;break e}if(!((j|0)>=(l|0)|e)){m=(j<<1)-l|0;g=0;break e}if(!((d|0)!=(e|0)|(j|0)<=(l|0))){m=(j<<1)-l|0;g=e;break e}if(!((d|0)!=(l|0)|(e|0)>=(j|0))){m=l;g=(j<<1)-e|0;break e}if(l){m=l;g=e;break e}m=0;g=e;if((e|0)<=(j|0)){break e}g=(j<<1)-e|0}J[k+28>>2]=m;J[k+24>>2]=g;J[k+40>>2]=0-h;J[k+36>>2]=0-f;J[k+32>>2]=0-i;f:{if((i|0)<=0){i=j-h|0;e=j-f|0;break f}e=f>>31;e=(e^f)-e|0;i=(h|0)>0?e:d-e|0;e=h>>31;e=(e^h)-e|0;e=(f|0)>0?e:d-e|0}g:{if(!(e|i)){i=d;break g}if(!((d|0)!=(i|0)|e)){i=d;break g}f=(d|0)!=(e|0);if(!(i|f)){i=d;break g}if(!((i|0)<=(j|0)|e)){i=(j<<1)-i|0;d=0;break g}if(!((i|0)>=(j|0)|f)){i=(j<<1)-i|0;break g}if(!((d|0)!=(i|0)|(e|0)>=(j|0))){i=d;d=(j<<1)-e|0;break g}if(i){d=e;break g}i=0;if((e|0)<=(j|0)){d=e;break g}d=(j<<1)-e|0}J[k+20>>2]=i;J[k+16>>2]=d;h=J[a+8>>2];h:{if((h|0)<=0){break h}l=(n<<3)+b|0;i=J[a+32>>2];e=0;g=k+24|0;while(1){j=i;if((h|0)>0){j=J[a+32>>2];f=0;while(1){d=f<<2;m=J[d+g>>2];h=J[a+16>>2];i:{if((m|0)>(h|0)){J[d+j>>2]=h;break i}d=d+j|0;h=J[a+12>>2];if((h|0)>(m|0)){J[d>>2]=h;break i}J[d>>2]=m}f=f+1|0;h=J[a+8>>2];if((f|0)<(h|0)){continue}break}}f=e<<2;d=f+(k+8|0)|0;g=J[f+l>>2]-J[f+j>>2]|0;J[d>>2]=g;f=d;d=J[a+28>>2];j:{if((g|0)<(d|0)){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break j}g=g-J[a+20>>2]|0}J[f>>2]=g}g=j;e=e+1|0;if((e|0)<(h|0)){continue}break}if((h|0)<=0){break h}i=J[a+32>>2];e=0;g=k+16|0;while(1){j=i;if((h|0)>0){j=J[a+32>>2];f=0;while(1){d=f<<2;m=J[d+g>>2];h=J[a+16>>2];k:{if((m|0)>(h|0)){J[d+j>>2]=h;break k}d=d+j|0;h=J[a+12>>2];if((h|0)>(m|0)){J[d>>2]=h;break k}J[d>>2]=m}f=f+1|0;h=J[a+8>>2];if((f|0)<(h|0)){continue}break}d=J[a+28>>2]}g=e<<2;f=g+k|0;g=J[g+l>>2]-J[j+g>>2]|0;J[f>>2]=g;l:{if((d|0)>(g|0)){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break l}g=g-J[a+20>>2]|0}J[f>>2]=g}g=j;e=e+1|0;if((e|0)<(h|0)){continue}break}}f=J[k+8>>2];e=J[a+108>>2];m:{if((f|0)>(e|0)){f=f-J[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=J[a+96>>2]+f|0}J[k+8>>2]=f;h=J[k+12>>2];n:{if((e|0)<(h|0)){h=h-J[a+96>>2]|0;break n}if((0-e|0)<=(h|0)){break n}h=J[a+96>>2]+h|0}J[k+12>>2]=h;d=J[k>>2];o:{if((e|0)<(d|0)){d=d-J[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=J[a+96>>2]+d|0}g=n<<1;J[k>>2]=d;i=J[k+4>>2];p:{if((e|0)<(i|0)){i=i-J[a+96>>2]|0;break p}if((0-e|0)<=(i|0)){break p}i=J[a+96>>2]+i|0}J[k+4>>2]=i;e=h>>31;e=(e^h)-e|0;l=f>>31;l=(l^f)-l|0;m=l>>>0>(e^2147483647)>>>0?2147483647:e+l|0;e=i>>31;e=(e^i)-e|0;l=d>>31;l=(l^d)-l|0;e=m>>>0>=(l>>>0>(e^2147483647)>>>0?2147483647:e+l|0)>>>0;Ca(o,e);g=g<<2;d=e?d:f;J[g+c>>2]=(J[a+96>>2]&d>>31)+d;d=e?i:h;J[g+r>>2]=(J[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)!=(n|0)){continue}break}}ba=k+48|0;return 1}ra();B()}function Ef(a,b){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=Q(0),p=0,q=0,r=0,s=Q(0);h=ba+-64|0;ba=h;J[h+40>>2]=0;J[h+44>>2]=0;J[h+32>>2]=0;J[h+36>>2]=0;J[h+48>>2]=1065353216;c=J[a+80>>2];J[h+24>>2]=0;J[h+16>>2]=0;J[h+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}f=c<<2;k=oa(f);J[h+16>>2]=k;c=f+k|0;J[h+24>>2]=c;pa(k,0,f);J[h+20>>2]=c;while(1){d=J[J[b>>2]>>2];f=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],n,0);g=c;c=c+f|0;c=c+d|0;c=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);J[h+28>>2]=c;J[h+12>>2]=q;J[h+8>>2]=c;c=0;p=h+8|0;f=L[p+2>>1]^(L[p>>1]^318)+239;b:{c:{m=h+32|0;g=J[m+4>>2];if(!g){break c}d=Kl(g);d:{if(d>>>0>=2){c=f;if(c>>>0>=g>>>0){c=(f>>>0)%(g>>>0)|0}i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}if(d>>>0<2){break d}j=L[p>>1];l=L[p+2>>1];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(f|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break c}}d=L[i+8>>1];e:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break e}d=(l|0)==L[i+10>>1]}if(!d){continue}break}c=0;break b}c=f&g+131071;i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}}j=g-1|0;r=L[p>>1];l=L[p+2>>1];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(f|0)&(d&j)!=(c|0)){break c}d=L[i+8>>1];f:{if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=(l|0)==L[i+10>>1]}if(!d){continue}break}c=0;break b}i=oa(16);J[i+8>>2]=J[p>>2];d=J[p+4>>2];J[i+4>>2]=f;J[i+12>>2]=d;J[i>>2]=0;o=Q(J[m+12>>2]+1>>>0);s=N[m+16>>2];g:{if(o>Q(s*Q(g>>>0))?0:g){break g}c=2;d=(g-1&g)!=0|g>>>0<3|g<<1;o=Q(W(Q(o/s)));h:{if(o<Q(4294967296)&o>=Q(0)){l=~~o>>>0;break h}l=0}d=d>>>0>l>>>0?d:l;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);g=J[m+4>>2]}j:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break j}l=g>>>0<3;o=Q(W(Q(Q(M[m+12>>2])/N[m+16>>2])));k:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break k}d=0}l:{m:{if(l){break m}if(Kl(g)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(g>>>0<=c>>>0){break j}}db(m,c)}g=J[m+4>>2];c=g-1|0;if(!(c&g)){c=c&f;break g}if(f>>>0<g>>>0){c=f;break g}c=(f>>>0)%(g>>>0)|0}f=J[m>>2]+(c<<2)|0;c=J[f>>2];n:{o:{if(!c){c=m+8|0;J[i>>2]=J[c>>2];J[m+8>>2]=i;J[f>>2]=c;c=J[i>>2];if(!c){break n}c=J[c+4>>2];f=g-1|0;p:{if(!(f&g)){c=c&f;break p}if(c>>>0<g>>>0){break p}c=(c>>>0)%(g>>>0)|0}c=J[m>>2]+(c<<2)|0;break o}J[i>>2]=J[c>>2]}J[c>>2]=i}J[m+12>>2]=J[m+12>>2]+1;c=1}H[h+60|0]=c;J[h+56>>2]=i;q:{if(!K[h+60|0]){J[(n<<2)+k>>2]=J[J[h+56>>2]+12>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,q)|0,h+28|0,c);k=J[h+16>>2];J[k+(n<<2)>>2]=q;q=q+1|0}n=n+1|0;e=n?e:e+1|0;j=J[a+80>>2];if(!e&n>>>0<j>>>0){continue}break}if((j|0)!=(q|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];j=J[a+68>>2];if((b|0)==(j|0)){break r}b=b-j>>2;e=b>>>0<=1?1:b;f=e&3;c=0;b=0;if(e-1>>>0>=3){n=e&-4;l=0;while(1){d=b<<2;e=d+j|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|4)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|8)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|12)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}if(!f){break r}while(1){e=j+(b<<2)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;e=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<j>>>0){Ma(e,j-c|0,2176);j=J[a+80>>2];break s}if(c>>>0<=j>>>0){break s}J[a+72>>2]=b+(j<<2)}if(!j){break r}d=J[e>>2];c=0;b=0;if(j>>>0>=4){n=j&-4;l=0;while(1){f=b<<2;J[f+d>>2]=J[f+k>>2];e=f|4;J[e+d>>2]=J[e+k>>2];e=f|8;J[e+d>>2]=J[e+k>>2];e=f|12;J[e+d>>2]=J[e+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}n=j&3;if(!n){break r}while(1){e=b<<2;J[e+d>>2]=J[e+k>>2];b=b+1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}J[a+80>>2]=q}na(k)}b=J[h+40>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[h+32>>2];J[h+32>>2]=0;if(a){na(a)}ba=h- -64|0;return q}qa();B()}function Jg(a,b,c,d){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;p=ba-32|0;ba=p;a:{if((c|0)<=0){break a}t=c&3;b:{if(c>>>0<4){c=0;break b}z=c&-4;c=0;while(1){g=(c<<3)+b|0;s=J[g>>2];u=J[g+4>>2];v=c|1;g=(v<<3)+b|0;i=J[g>>2];w=c|2;h=(w<<3)+b|0;m=J[h>>2];x=c|3;j=(x<<3)+b|0;y=J[j>>2];g=J[g+4>>2];h=J[h+4>>2];j=J[j+4>>2];n=j|y?x:h|m?w:g|i?v:s|u?c:n;f=f+u|0;e=e+s|0;f=(e>>>0<s>>>0?f+1|0:f)+g|0;g=e;e=e+i|0;f=(g>>>0>e>>>0?f+1|0:f)+h|0;g=e;e=e+m|0;f=(g>>>0>e>>>0?f+1|0:f)+j|0;g=e;e=e+y|0;f=g>>>0>e>>>0?f+1|0:f;c=c+4|0;l=l+4|0;if((z|0)!=(l|0)){continue}break}}if(!t){break a}while(1){g=(c<<3)+b|0;i=J[g>>2];g=J[g+4>>2];n=i|g?c:n;c=c+1|0;f=f+g|0;e=e+i|0;f=e>>>0<i>>>0?f+1|0:f;o=o+1|0;if((t|0)!=(o|0)){continue}break}}m=n+1|0;J[a+12>>2]=m;c=J[a>>2];g=J[a+4>>2]-c>>3;c:{if(g>>>0<m>>>0){Wa(a,m-g|0);break c}if(g>>>0<=m>>>0){break c}J[a+4>>2]=c+(m<<3)}j=0;d:{e:{f:{g:{h:{if((n|0)>=0){k=+(e>>>0)+ +(f>>>0)*4294967296;i=J[a>>2];c=0;while(1){f=c<<3;e=f+b|0;h=J[e>>2];e=J[e+4>>2];g=(h|e)!=0;l=f+i|0;r=(+(h>>>0)+ +(e>>>0)*4294967296)/k*4096+.5;i:{if(r<4294967296&r>=0){e=~~r>>>0;break i}e=0}e=e?e:g?1:e;J[l>>2]=e;j=e+j|0;e=(c|0)==(n|0);c=c+1|0;if(!e){continue}break}if((j|0)==4096){break h}}J[p+16>>2]=0;J[p+8>>2]=0;J[p+12>>2]=0;i=0;j:{if(!m){break j}if(m>>>0>=1073741824){break g}g=m<<2;q=oa(g);J[p+8>>2]=q;l=0;h=pa(q,0,g);c=0;if(n>>>0>=7){f=m&-8;while(1){J[h+(c<<2)>>2]=c;e=c|1;J[h+(e<<2)>>2]=e;e=c|2;J[h+(e<<2)>>2]=e;e=c|3;J[h+(e<<2)>>2]=e;e=c|4;J[h+(e<<2)>>2]=e;e=c|5;J[h+(e<<2)>>2]=e;e=c|6;J[h+(e<<2)>>2]=e;e=c|7;J[h+(e<<2)>>2]=e;c=c+8|0;i=i+8|0;if((f|0)!=(i|0)){continue}break}}i=h+g|0;e=m&7;if(!e){break j}while(1){J[h+(c<<2)>>2]=c;c=c+1|0;l=l+1|0;if((e|0)!=(l|0)){continue}break}}J[p+24>>2]=a;c=i-q|0;e=c>>2;k:{l:{if((c|0)>=513){c=e;while(1){f=oa(c<<2);if(f){break l}f=c>>>0>1;c=c>>>1|0;if(f){continue}break}}hc(q,i,p+24|0,e,0,0);break k}hc(q,i,p+24|0,e,f,c);na(f)}if((j|0)<4096){c=J[a>>2]+(J[i-4>>2]<<3)|0;J[c>>2]=(J[c>>2]-j|0)+4096;c=0;break f}if((n|0)>0){f=J[a>>2];o=j-4096|0;while(1){r=4096/+(j|0);l=n;while(1){m:{n:{e=f+(J[(l<<2)+q>>2]<<3)|0;c=J[e>>2];if(c>>>0>=2){h=e;i=c;k=V(r*+(c>>>0));o:{if(R(k)<2147483648){g=~~k;break o}g=-2147483648}e=(c|0)==(g|0)?1:c-g|0;c=(c|0)>(e|0)?e:c-1|0;c=(c|0)<(o|0)?c:o;J[h>>2]=i-c;o=o-c|0;j=j-c|0;if((j|0)!=4096){break n}j=4096;break m}if((n|0)!=(l|0)){break m}c=1;break f}c=(l|0)>1;l=l-1|0;if(c){continue}}break}c=0;if((o|0)>0){continue}break}break f}c=0;if(j>>>0<4097){break f}while(1)continue}if((n|0)<0){break d}break e}qa();B()}e=J[p+8>>2];if(e){na(e)}if((n|0)<0|c){break d}}h=J[a>>2];j=0;o=0;c=0;if(n>>>0>=3){g=m&-4;q=0;while(1){i=o<<3;f=i+h|0;J[f+4>>2]=c;e=h+(i|8)|0;c=J[f>>2]+c|0;J[e+4>>2]=c;f=h+(i|16)|0;c=c+J[e>>2]|0;J[f+4>>2]=c;e=h+(i|24)|0;c=c+J[f>>2]|0;J[e+4>>2]=c;c=c+J[e>>2]|0;o=o+4|0;q=q+4|0;if((g|0)!=(q|0)){continue}break}}f=m&3;if(f){while(1){e=h+(o<<3)|0;J[e+4>>2]=c;o=o+1|0;c=J[e>>2]+c|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}}if((c|0)!=4096){break d}c=0;k=0;p:{if((n|0)<0){break p}h=J[a>>2];if(n){i=m&-2;l=0;while(1){e=c<<3;g=J[e+h>>2];if(g){f=b+e|0;k=(+M[f>>2]+ +M[f+4>>2]*4294967296)*va(+(g>>>0)*.000244140625)+k}e=(c|1)<<3;g=J[e+h>>2];if(g){f=b+e|0;k=(+M[f>>2]+ +M[f+4>>2]*4294967296)*va(+(g>>>0)*.000244140625)+k}c=c+2|0;l=l+2|0;if((i|0)!=(l|0)){continue}break}}if(!(m&1)){break p}c=c<<3;e=J[c+h>>2];if(!e){break p}c=b+c|0;k=(+M[c>>2]+ +M[c+4>>2]*4294967296)*va(+(e>>>0)*.000244140625)+k}k=W(-k);q:{if(k<0x10000000000000000&k>=0){c=~~k>>>0;b=R(k)>=1?~~(k>0?T(V(k*2.3283064365386963e-10),4294967295):W((k-+(~~k>>>0>>>0))*2.3283064365386963e-10))>>>0:0;break q}c=0;b=0}J[a+16>>2]=c;J[a+20>>2]=b;Va(a,d)}ba=p+32|0}function Kk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=ba-48|0;ba=b;g=J[J[a+4>>2]+48>>2];J[b+8>>2]=J[a+12>>2];c=oa(32);J[b+24>>2]=c;J[b+28>>2]=17;J[b+32>>2]=-2147483616;H[c+16|0]=K[1261];f=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);e=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[c+8|0]=e;H[c+9|0]=e>>>8;H[c+10|0]=e>>>16;H[c+11|0]=e>>>24;H[c+12|0]=f;H[c+13|0]=f>>>8;H[c+14|0]=f>>>16;H[c+15|0]=f>>>24;f=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);e=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[c|0]=e;H[c+1|0]=e>>>8;H[c+2|0]=e>>>16;H[c+3|0]=e>>>24;H[c+4|0]=f;H[c+5|0]=f>>>8;H[c+6|0]=f>>>16;H[c+7|0]=f>>>24;H[c+17|0]=0;c=jb(g,b+8|0,b+24|0,-1);if(H[b+35|0]<0){na(J[b+24>>2])}J[b+32>>2]=-1;J[b+36>>2]=1065353216;J[b+24>>2]=-1;J[b+28>>2]=-1;J[b+40>>2]=-1;c=-1<<c^-1;a:{if(!(c&1)){break a}c=S(c)^31;if(c-1>>>0>28){break a}J[b+24>>2]=c+1;c=-2<<c;J[b+28>>2]=c^-1;c=c^-2;J[b+32>>2]=c;J[b+40>>2]=c>>1;N[b+36>>2]=Q(2)/Q(c|0)}g=bh(J[a+12>>2],J[a+4>>2]);h=J[J[a+4>>2]+48>>2];J[b+20>>2]=J[a+12>>2];c=oa(32);J[b+8>>2]=c;J[b+12>>2]=17;J[b+16>>2]=-2147483616;H[c+16|0]=K[1529];f=K[1525]|K[1526]<<8|(K[1527]<<16|K[1528]<<24);e=K[1521]|K[1522]<<8|(K[1523]<<16|K[1524]<<24);H[c+8|0]=e;H[c+9|0]=e>>>8;H[c+10|0]=e>>>16;H[c+11|0]=e>>>24;H[c+12|0]=f;H[c+13|0]=f>>>8;H[c+14|0]=f>>>16;H[c+15|0]=f>>>24;f=K[1517]|K[1518]<<8|(K[1519]<<16|K[1520]<<24);e=K[1513]|K[1514]<<8|(K[1515]<<16|K[1516]<<24);H[c|0]=e;H[c+1|0]=e>>>8;H[c+2|0]=e>>>16;H[c+3|0]=e>>>24;H[c+4|0]=f;H[c+5|0]=f>>>8;H[c+6|0]=f>>>16;H[c+7|0]=f>>>24;H[c+17|0]=0;c=jb(h,b+20|0,b+8|0,g);if(H[b+19|0]<0){na(J[b+8>>2])}b:{c:{d:{switch(c|0){case 6:e=J[a+4>>2];h=J[a+12>>2];a=J[J[J[e+4>>2]+8>>2]+(h<<2)>>2];if((da[J[J[e>>2]+8>>2]](e)|0)!=1){break c}c=b+24|0;f=ba-32|0;ba=f;i=J[J[J[e+4>>2]+8>>2]+(h<<2)>>2];e:{if((da[J[J[e>>2]+8>>2]](e)|0)!=1){break e}j=da[J[J[e>>2]+52>>2]](e)|0;g=da[J[J[e>>2]+60>>2]](e,h)|0;if(!j|!g){break e}d=da[J[J[e>>2]+56>>2]](e,h)|0;if(d){e=J[e+56>>2];J[f+20>>2]=d;J[f+16>>2]=e;J[f+28>>2]=g;J[f+24>>2]=g+12;d=oa(128);J[d+4>>2]=i;e=J[c+4>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=e;e=J[c+12>>2];J[d+16>>2]=J[c+8>>2];J[d+20>>2]=e;J[d+24>>2]=J[c+16>>2];c=J[f+20>>2];J[d+28>>2]=J[f+16>>2];J[d+32>>2]=c;c=J[f+28>>2];J[d+36>>2]=J[f+24>>2];J[d+40>>2]=c;J[d+48>>2]=0;J[d+52>>2]=0;J[d>>2]=7524;c=J[f+20>>2];J[d+56>>2]=J[f+16>>2];J[d+60>>2]=c;e=J[f+28>>2];c=d- -64|0;J[c>>2]=J[f+24>>2];J[c+4>>2]=e;J[d+88>>2]=1065353216;J[d+92>>2]=-1;J[d+80>>2]=-1;J[d+84>>2]=-1;J[d+72>>2]=1;J[d+76>>2]=-1;J[d+44>>2]=7784;J[d+96>>2]=0;J[d+100>>2]=0;J[d+120>>2]=0;J[d+124>>2]=0;J[d+112>>2]=0;J[d+116>>2]=0;J[d+104>>2]=0;J[d+108>>2]=0;break e}d=J[e+56>>2];J[f+20>>2]=j;J[f+16>>2]=d;J[f+28>>2]=g;J[f+24>>2]=g+12;d=oa(128);J[d+4>>2]=i;e=J[c+4>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=e;e=J[c+12>>2];J[d+16>>2]=J[c+8>>2];J[d+20>>2]=e;J[d+24>>2]=J[c+16>>2];c=J[f+20>>2];J[d+28>>2]=J[f+16>>2];J[d+32>>2]=c;c=J[f+28>>2];J[d+36>>2]=J[f+24>>2];J[d+40>>2]=c;J[d+48>>2]=0;J[d+52>>2]=0;J[d>>2]=9148;c=J[f+20>>2];J[d+56>>2]=J[f+16>>2];J[d+60>>2]=c;e=J[f+28>>2];c=d- -64|0;J[c>>2]=J[f+24>>2];J[c+4>>2]=e;J[d+88>>2]=1065353216;J[d+92>>2]=-1;J[d+80>>2]=-1;J[d+84>>2]=-1;J[d+72>>2]=1;J[d+76>>2]=-1;J[d+44>>2]=9392;J[d+96>>2]=0;J[d+100>>2]=0;J[d+120>>2]=0;J[d+124>>2]=0;J[d+112>>2]=0;J[d+116>>2]=0;J[d+104>>2]=0;J[d+108>>2]=0}ba=f+32|0;if(!d){break c}break b;case 0:break d;default:break b}}c=J[a+4>>2];a=J[J[J[c+4>>2]+8>>2]+(J[a+12>>2]<<2)>>2];if((da[J[J[c>>2]+8>>2]](c)|0)!=1){break c}da[J[J[c>>2]+8>>2]](c)|0}d=oa(28);J[d+4>>2]=a;a=J[b+28>>2];J[d+8>>2]=J[b+24>>2];J[d+12>>2]=a;a=J[b+36>>2];J[d+16>>2]=J[b+32>>2];J[d+20>>2]=a;J[d+24>>2]=J[b+40>>2];J[d>>2]=9804}ba=b+48|0;return d|0}function Nf(a,b){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=Q(0),p=0,q=0,r=0,s=Q(0);h=ba+-64|0;ba=h;J[h+40>>2]=0;J[h+44>>2]=0;J[h+32>>2]=0;J[h+36>>2]=0;J[h+48>>2]=1065353216;c=J[a+80>>2];J[h+24>>2]=0;J[h+16>>2]=0;J[h+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}f=c<<2;k=oa(f);J[h+16>>2]=k;c=f+k|0;J[h+24>>2]=c;pa(k,0,f);J[h+20>>2]=c;while(1){d=J[J[b>>2]>>2];f=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],n,0);g=c;c=c+f|0;c=c+d|0;c=K[c|0]|K[c+1|0]<<8;I[h+30>>1]=c;J[h+12>>2]=q;I[h+8>>1]=c;c=0;p=h+8|0;f=K[p+1|0]^(K[p|0]^318)+239;b:{c:{m=h+32|0;g=J[m+4>>2];if(!g){break c}d=Kl(g);d:{if(d>>>0>=2){c=f;if(c>>>0>=g>>>0){c=(f>>>0)%(g>>>0)|0}i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}if(d>>>0<2){break d}j=K[p|0];l=K[p+1|0];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(f|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break c}}d=K[i+8|0];e:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break e}d=(l|0)==K[i+9|0]}if(!d){continue}break}c=0;break b}c=f&g+1023;i=J[J[m>>2]+(c<<2)>>2];if(!i){break c}}j=g-1|0;r=K[p|0];l=K[p+1|0];while(1){i=J[i>>2];if(!i){break c}d=J[i+4>>2];if((d|0)!=(f|0)&(d&j)!=(c|0)){break c}d=K[i+8|0];f:{if((d|0)!=(r|0)){d=(d|0)==(r|0);break f}d=(l|0)==K[i+9|0]}if(!d){continue}break}c=0;break b}i=oa(16);I[i+8>>1]=L[p>>1];d=J[p+4>>2];J[i+4>>2]=f;J[i+12>>2]=d;J[i>>2]=0;o=Q(J[m+12>>2]+1>>>0);s=N[m+16>>2];g:{if(o>Q(s*Q(g>>>0))?0:g){break g}c=2;d=(g-1&g)!=0|g>>>0<3|g<<1;o=Q(W(Q(o/s)));h:{if(o<Q(4294967296)&o>=Q(0)){l=~~o>>>0;break h}l=0}d=d>>>0>l>>>0?d:l;i:{if((d|0)==1){break i}if(!(d&d-1)){c=d;break i}c=Ha(d);g=J[m+4>>2]}j:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break j}l=g>>>0<3;o=Q(W(Q(Q(M[m+12>>2])/N[m+16>>2])));k:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break k}d=0}l:{m:{if(l){break m}if(Kl(g)>>>0>1){break m}d=d>>>0<2?d:1<<32-S(d-1|0);break l}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(g>>>0<=c>>>0){break j}}db(m,c)}g=J[m+4>>2];c=g-1|0;if(!(c&g)){c=c&f;break g}if(f>>>0<g>>>0){c=f;break g}c=(f>>>0)%(g>>>0)|0}f=J[m>>2]+(c<<2)|0;c=J[f>>2];n:{o:{if(!c){c=m+8|0;J[i>>2]=J[c>>2];J[m+8>>2]=i;J[f>>2]=c;c=J[i>>2];if(!c){break n}c=J[c+4>>2];f=g-1|0;p:{if(!(f&g)){c=c&f;break p}if(c>>>0<g>>>0){break p}c=(c>>>0)%(g>>>0)|0}c=J[m>>2]+(c<<2)|0;break o}J[i>>2]=J[c>>2]}J[c>>2]=i}J[m+12>>2]=J[m+12>>2]+1;c=1}H[h+60|0]=c;J[h+56>>2]=i;q:{if(!K[h+60|0]){J[(n<<2)+k>>2]=J[J[h+56>>2]+12>>2];break q}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,q)|0,h+30|0,c);k=J[h+16>>2];J[k+(n<<2)>>2]=q;q=q+1|0}n=n+1|0;e=n?e:e+1|0;j=J[a+80>>2];if(!e&n>>>0<j>>>0){continue}break}if((j|0)!=(q|0)){r:{if(!K[a+84|0]){b=J[a+72>>2];j=J[a+68>>2];if((b|0)==(j|0)){break r}b=b-j>>2;e=b>>>0<=1?1:b;f=e&3;c=0;b=0;if(e-1>>>0>=3){n=e&-4;l=0;while(1){d=b<<2;e=d+j|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|4)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|8)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];e=j+(d|12)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}if(!f){break r}while(1){e=j+(b<<2)|0;J[e>>2]=J[(J[e>>2]<<2)+k>>2];b=b+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}break r}H[a+84|0]=0;e=a+68|0;b=J[a+68>>2];c=J[a+72>>2]-b>>2;s:{if(c>>>0<j>>>0){Ma(e,j-c|0,2176);j=J[a+80>>2];break s}if(c>>>0<=j>>>0){break s}J[a+72>>2]=b+(j<<2)}if(!j){break r}d=J[e>>2];c=0;b=0;if(j>>>0>=4){n=j&-4;l=0;while(1){f=b<<2;J[f+d>>2]=J[f+k>>2];e=f|4;J[e+d>>2]=J[e+k>>2];e=f|8;J[e+d>>2]=J[e+k>>2];e=f|12;J[e+d>>2]=J[e+k>>2];b=b+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}n=j&3;if(!n){break r}while(1){e=b<<2;J[e+d>>2]=J[e+k>>2];b=b+1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}J[a+80>>2]=q}na(k)}b=J[h+40>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[h+32>>2];J[h+32>>2]=0;if(a){na(a)}ba=h- -64|0;return q}qa();B()}function Vg(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0;h=ba-16|0;ba=h;J[h+12>>2]=b;b=oa(32);J[h>>2]=b;J[h+4>>2]=17;J[h+8>>2]=-2147483616;H[b+16|0]=K[1261];g=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);i=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[b+8|0]=i;H[b+9|0]=i>>>8;H[b+10|0]=i>>>16;H[b+11|0]=i>>>24;H[b+12|0]=g;H[b+13|0]=g>>>8;H[b+14|0]=g>>>16;H[b+15|0]=g>>>24;g=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);i=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[b|0]=i;H[b+1|0]=i>>>8;H[b+2|0]=i>>>16;H[b+3|0]=i>>>24;H[b+4|0]=g;H[b+5|0]=g>>>8;H[b+6|0]=g>>>16;H[b+7|0]=g>>>24;H[b+17|0]=0;i=a+4|0;Wg(i,h+12|0,h,c);if(H[h+11|0]<0){na(J[h>>2])}a=oa(32);J[h>>2]=a;J[h+4>>2]=19;J[h+8>>2]=-2147483616;b=K[1429]|K[1430]<<8|(K[1431]<<16|K[1432]<<24);H[a+15|0]=b;H[a+16|0]=b>>>8;H[a+17|0]=b>>>16;H[a+18|0]=b>>>24;b=K[1426]|K[1427]<<8|(K[1428]<<16|K[1429]<<24);c=K[1422]|K[1423]<<8|(K[1424]<<16|K[1425]<<24);H[a+8|0]=c;H[a+9|0]=c>>>8;H[a+10|0]=c>>>16;H[a+11|0]=c>>>24;H[a+12|0]=b;H[a+13|0]=b>>>8;H[a+14|0]=b>>>16;H[a+15|0]=b>>>24;b=K[1418]|K[1419]<<8|(K[1420]<<16|K[1421]<<24);c=K[1414]|K[1415]<<8|(K[1416]<<16|K[1417]<<24);H[a|0]=c;H[a+1|0]=c>>>8;H[a+2|0]=c>>>16;H[a+3|0]=c>>>24;H[a+4|0]=b;H[a+5|0]=b>>>8;H[a+6|0]=b>>>16;H[a+7|0]=b>>>24;H[a+19|0]=0;g=ba-48|0;ba=g;j=J[h+12>>2];a=i+16|0;c=J[a>>2];a:{b:{if(!c){break b}b=a;while(1){k=(j|0)>J[c+16>>2];b=k?b:c;c=J[(k?c+4|0:c)>>2];if(c){continue}break}if((a|0)==(b|0)){break b}if((j|0)>=J[b+16>>2]){break a}}J[g+28>>2]=0;J[g+32>>2]=0;c=g+24|0;J[g+24>>2]=c|4;a=g+16|0;J[a>>2]=0;J[a+4>>2]=0;J[g+8>>2]=j;J[g+12>>2]=a;a=g+8|0;Oc(g+40|0,i+12|0,a,a);b=J[g+40>>2];Da(a|4,J[g+16>>2]);Da(c,J[g+28>>2])}b=b+20|0;a=ba-48|0;ba=a;J[a+24>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;c:{if((d|0)<=0){break c}gd(a,N[e>>2]);c=K[a+11|0];j=c<<24>>24<0;jd(a+16|0,j?J[a>>2]:a,j?J[a+4>>2]:c);if(H[a+11|0]<0){na(J[a>>2])}c=1;if((d|0)==1){break c}while(1){j=a+16|0;jd(j,2020,rb(2020));gd(a,N[(c<<2)+e>>2]);l=j;j=K[a+11|0];k=j<<24>>24<0;jd(l,k?J[a>>2]:a,k?J[a+4>>2]:j);if(H[a+11|0]<0){na(J[a>>2])}c=c+1|0;if((d|0)!=(c|0)){continue}break}}J[a+40>>2]=h;ge(a,b,h,a+40|0);d=J[a>>2];b=d+28|0;d:{if((b|0)==(a+16|0)){break d}e=K[a+27|0];c=e<<24>>24;if(H[d+39|0]>=0){if((c|0)>=0){c=J[a+20>>2];J[b>>2]=J[a+16>>2];J[b+4>>2]=c;J[b+8>>2]=J[a+24>>2];break d}hd(b,J[a+16>>2],J[a+20>>2]);break d}d=b;b=(c|0)<0;id(d,b?J[a+16>>2]:a+16|0,b?J[a+20>>2]:e)}if(H[a+27|0]<0){na(J[a+16>>2])}ba=a+48|0;ba=g+48|0;if(H[h+11|0]<0){na(J[h>>2])}a=oa(32);J[h>>2]=a;J[h+4>>2]=18;J[h+8>>2]=-2147483616;b=K[1547]|K[1548]<<8;H[a+16|0]=b;H[a+17|0]=b>>>8;b=K[1543]|K[1544]<<8|(K[1545]<<16|K[1546]<<24);c=K[1539]|K[1540]<<8|(K[1541]<<16|K[1542]<<24);H[a+8|0]=c;H[a+9|0]=c>>>8;H[a+10|0]=c>>>16;H[a+11|0]=c>>>24;H[a+12|0]=b;H[a+13|0]=b>>>8;H[a+14|0]=b>>>16;H[a+15|0]=b>>>24;b=K[1535]|K[1536]<<8|(K[1537]<<16|K[1538]<<24);c=K[1531]|K[1532]<<8|(K[1533]<<16|K[1534]<<24);H[a|0]=c;H[a+1|0]=c>>>8;H[a+2|0]=c>>>16;H[a+3|0]=c>>>24;H[a+4|0]=b;H[a+5|0]=b>>>8;H[a+6|0]=b>>>16;H[a+7|0]=b>>>24;H[a+18|0]=0;b=ba-48|0;ba=b;c=J[h+12>>2];a=i+16|0;e=J[a>>2];e:{f:{if(!e){break f}d=a;while(1){g=(c|0)>J[e+16>>2];d=g?d:e;e=J[(g?e+4|0:e)>>2];if(e){continue}break}if((a|0)==(d|0)){break f}if((c|0)>=J[d+16>>2]){break e}}J[b+28>>2]=0;J[b+32>>2]=0;e=b+24|0;J[b+24>>2]=e|4;a=b+16|0;J[a>>2]=0;J[a+4>>2]=0;J[b+8>>2]=c;J[b+12>>2]=a;a=b+8|0;Oc(b+40|0,i+12|0,a,a);d=J[b+40>>2];Da(a|4,J[b+16>>2]);Da(e,J[b+28>>2])}a=ba-48|0;ba=a;gd(a+8|0,f);J[a+32>>2]=h;ge(a+40|0,d+20|0,h,a+32|0);c=J[a+40>>2];if(H[c+39|0]<0){na(J[c+28>>2])}d=J[a+12>>2];J[c+28>>2]=J[a+8>>2];J[c+32>>2]=d;J[c+36>>2]=J[a+16>>2];ba=a+48|0;ba=b+48|0;if(H[h+11|0]<0){na(J[h>>2])}ba=h+16|0}function lk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=Q(0);f=ba-32|0;ba=f;J[f+28>>2]=c;a:{if(!me(a,b,c)){break a}i=J[J[J[b+4>>2]+8>>2]+(c<<2)>>2];if(J[i+28>>2]!=9){break a}g=J[b+48>>2];c=oa(32);J[f+16>>2]=c;J[f+20>>2]=17;J[f+24>>2]=-2147483616;H[c+16|0]=K[1261];e=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);h=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[c+8|0]=h;H[c+9|0]=h>>>8;H[c+10|0]=h>>>16;H[c+11|0]=h>>>24;H[c+12|0]=e;H[c+13|0]=e>>>8;H[c+14|0]=e>>>16;H[c+15|0]=e>>>24;e=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);h=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[c|0]=h;H[c+1|0]=h>>>8;H[c+2|0]=h>>>16;H[c+3|0]=h>>>24;H[c+4|0]=e;H[c+5|0]=e>>>8;H[c+6|0]=e>>>16;H[c+7|0]=e>>>24;H[c+17|0]=0;h=jb(g,f+28|0,f+16|0,-1);if(H[f+27|0]<0){na(J[f+16>>2])}if((h|0)<=0){break a}j=J[b+48>>2];c=oa(32);J[f+16>>2]=c;J[f+20>>2]=19;J[f+24>>2]=-2147483616;e=K[1429]|K[1430]<<8|(K[1431]<<16|K[1432]<<24);H[c+15|0]=e;H[c+16|0]=e>>>8;H[c+17|0]=e>>>16;H[c+18|0]=e>>>24;e=K[1426]|K[1427]<<8|(K[1428]<<16|K[1429]<<24);g=K[1422]|K[1423]<<8|(K[1424]<<16|K[1425]<<24);H[c+8|0]=g;H[c+9|0]=g>>>8;H[c+10|0]=g>>>16;H[c+11|0]=g>>>24;H[c+12|0]=e;H[c+13|0]=e>>>8;H[c+14|0]=e>>>16;H[c+15|0]=e>>>24;e=K[1418]|K[1419]<<8|(K[1420]<<16|K[1421]<<24);g=K[1414]|K[1415]<<8|(K[1416]<<16|K[1417]<<24);H[c|0]=g;H[c+1|0]=g>>>8;H[c+2|0]=g>>>16;H[c+3|0]=g>>>24;H[c+4|0]=e;H[c+5|0]=e>>>8;H[c+6|0]=e>>>16;H[c+7|0]=e>>>24;H[c+19|0]=0;b:{if(!yc(j,f+28|0,f+16|0)){break b}g=J[b+48>>2];c=oa(32);J[f>>2]=c;J[f+4>>2]=18;J[f+8>>2]=-2147483616;d=K[1547]|K[1548]<<8;H[c+16|0]=d;H[c+17|0]=d>>>8;d=K[1543]|K[1544]<<8|(K[1545]<<16|K[1546]<<24);e=K[1539]|K[1540]<<8|(K[1541]<<16|K[1542]<<24);H[c+8|0]=e;H[c+9|0]=e>>>8;H[c+10|0]=e>>>16;H[c+11|0]=e>>>24;H[c+12|0]=d;H[c+13|0]=d>>>8;H[c+14|0]=d>>>16;H[c+15|0]=d>>>24;d=K[1535]|K[1536]<<8|(K[1537]<<16|K[1538]<<24);e=K[1531]|K[1532]<<8|(K[1533]<<16|K[1534]<<24);H[c|0]=e;H[c+1|0]=e>>>8;H[c+2|0]=e>>>16;H[c+3|0]=e>>>24;H[c+4|0]=d;H[c+5|0]=d>>>8;H[c+6|0]=d>>>16;H[c+7|0]=d>>>24;H[c+18|0]=0;d=yc(g,f+28|0,f);if(H[f+11|0]>=0){break b}na(J[f>>2])}if(H[f+27|0]<0){na(J[f+16>>2])}c:{if(d){c=0;d=K[i+24|0];if(d){d=d<<2;c=oa(d);pa(c,0,d)}j=J[b+48>>2];d=oa(32);J[f+16>>2]=d;J[f+20>>2]=19;J[f+24>>2]=-2147483616;e=K[1429]|K[1430]<<8|(K[1431]<<16|K[1432]<<24);H[d+15|0]=e;H[d+16|0]=e>>>8;H[d+17|0]=e>>>16;H[d+18|0]=e>>>24;e=K[1426]|K[1427]<<8|(K[1428]<<16|K[1429]<<24);g=K[1422]|K[1423]<<8|(K[1424]<<16|K[1425]<<24);H[d+8|0]=g;H[d+9|0]=g>>>8;H[d+10|0]=g>>>16;H[d+11|0]=g>>>24;H[d+12|0]=e;H[d+13|0]=e>>>8;H[d+14|0]=e>>>16;H[d+15|0]=e>>>24;e=K[1418]|K[1419]<<8|(K[1420]<<16|K[1421]<<24);g=K[1414]|K[1415]<<8|(K[1416]<<16|K[1417]<<24);H[d|0]=g;H[d+1|0]=g>>>8;H[d+2|0]=g>>>16;H[d+3|0]=g>>>24;H[d+4|0]=e;H[d+5|0]=e>>>8;H[d+6|0]=e>>>16;H[d+7|0]=e>>>24;H[d+19|0]=0;De(j,f+28|0,f+16|0,K[i+24|0],c);if(H[f+27|0]<0){na(J[f+16>>2])}g=J[b+48>>2];b=oa(32);J[f+16>>2]=b;J[f+20>>2]=18;J[f+24>>2]=-2147483616;d=K[1547]|K[1548]<<8;H[b+16|0]=d;H[b+17|0]=d>>>8;d=K[1543]|K[1544]<<8|(K[1545]<<16|K[1546]<<24);e=K[1539]|K[1540]<<8|(K[1541]<<16|K[1542]<<24);H[b+8|0]=e;H[b+9|0]=e>>>8;H[b+10|0]=e>>>16;H[b+11|0]=e>>>24;H[b+12|0]=d;H[b+13|0]=d>>>8;H[b+14|0]=d>>>16;H[b+15|0]=d>>>24;d=K[1535]|K[1536]<<8|(K[1537]<<16|K[1538]<<24);e=K[1531]|K[1532]<<8|(K[1533]<<16|K[1534]<<24);H[b|0]=e;H[b+1|0]=e>>>8;H[b+2|0]=e>>>16;H[b+3|0]=e>>>24;H[b+4|0]=d;H[b+5|0]=d>>>8;H[b+6|0]=d>>>16;H[b+7|0]=d>>>24;H[b+18|0]=0;k=Ce(g,f+28|0,f+16|0);if(H[f+27|0]<0){na(J[f+16>>2])}a=ch(a+40|0,h,c,K[i+24|0],k);if(c){na(c)}d=0;if(a){break c}break a}d=0;if(!_g(a+40|0,i,h)){break a}}d=1}ba=f+32|0;return d|0}function _f(a,b){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;k=ba-32|0;ba=k;c=J[a+16>>2];J[a+20>>2]=c;a:{b:{c:{d:{e:{f:{g:{if((c|0)!=J[a+24>>2]){J[c>>2]=b;b=c+4|0;J[a+20>>2]=b;d=c;break g}d=oa(4);J[d>>2]=b;b=d+4|0;J[a+24>>2]=b;J[a+20>>2]=b;J[a+16>>2]=d;if(c){break f}}c=J[a+8>>2];c=J[c+100>>2]-J[c+96>>2]|0;break e}na(c);b=J[a+20>>2];d=J[a+16>>2];if((b|0)==(d|0)){break d}c=J[a+8>>2];c=J[c+100>>2]-J[c+96>>2]|0}if((c|0)>0){r=a+120|0;m=a+200|0;c=(c|0)/12|0;s=(c|0)<=1?1:c;while(1){h:{i:{d=b-4|0;b=J[d>>2];if((b|0)==-1){break i}c=(b>>>0)/3|0;if(J[J[a+28>>2]+(c>>>3&268435452)>>2]>>>c&1){break i}n=0;while(1){J[a+164>>2]=J[a+164>>2]+1;e=b;h=(b>>>0)/3|0;g=(b|0)==-1;o=g?-1:h;b=J[a+28>>2]+(o>>>3&536870908)|0;J[b>>2]=J[b>>2]|1<<o;b=J[a+76>>2];j:{if((b|0)!=J[a+80>>2]){J[b>>2]=e;J[a+76>>2]=b+4;break j}j=J[a+72>>2];l=b-j|0;d=l>>2;i=d+1|0;if(i>>>0>1073741823){break c}c=l>>>1|0;i=l>>>0>=2147483644?1073741823:c>>>0>i>>>0?c:i;if(i){if(i>>>0>1073741823){break a}c=oa(i<<2)}else{c=0}f=c+(d<<2)|0;J[f>>2]=e;d=f+4|0;if((b|0)!=(j|0)){while(1){f=f-4|0;b=b-4|0;J[f>>2]=J[b>>2];if((b|0)!=(j|0)){continue}break}}J[a+80>>2]=c+(i<<2);J[a+76>>2]=d;J[a+72>>2]=f;if(!j){break j}na(j)}J[a+320>>2]=e;b=-1;f=J[a+12>>2];b=(e|0)!=-1?J[J[f>>2]+(e<<2)>>2]:b;i=b<<2;q=J[i+J[a+152>>2]>>2];k:{l:{d=J[a+84>>2]+(b>>>3&536870908)|0;c=J[d>>2];b=1<<b;if(!(c&b)){J[d>>2]=b|c;if((q|0)==-1){break l}}m:{if(g){break m}b=-1;c=e+1|0;g=(c>>>0)%3|0?c:e-2|0;if((g|0)!=-1){b=J[J[f+12>>2]+(g<<2)>>2]}j=e-P(h,3)|0;n:{o:{if(j){d=e-1|0;break o}d=e+2|0;c=-1;if((d|0)==-1){break n}}c=J[J[f+12>>2]+(d<<2)>>2]}p=(c|0)==-1;l=p?-1:(c>>>0)/3|0;p:{if((g|0)==-1){break p}h=J[f+12>>2];d=J[h+(g<<2)>>2];if((d|0)==-1){break p}g=J[a+28>>2];d=(d>>>0)/3|0;if(J[g+(d>>>3&268435452)>>2]>>>d&1){break p}q:{r:{if(j){f=e-1|0;break r}f=e+2|0;if((f|0)==-1){break q}}d=J[(f<<2)+h>>2];if((d|0)==-1){break q}d=(d>>>0)/3|0;if(J[g+(d>>>3&268435452)>>2]>>>d&1){break q}oc(m,1);J[a+168>>2]=J[a+168>>2]+1;s:{if((q|0)==-1){break s}d=J[J[a+152>>2]+i>>2];if(J[J[a+140>>2]+(d>>>3&536870908)>>2]>>>d&1){break s}Hc(a,e,0)}e=J[a+164>>2];J[k+4>>2]=o;d=k+4|0;J[k+16>>2]=d;bg(k+24|0,r,d,k+16|0);J[J[k+24>>2]+12>>2]=e;f=J[a+20>>2];J[f-4>>2]=c;if(J[a+24>>2]!=(f|0)){J[f>>2]=b;J[a+20>>2]=f+4;break h}h=J[a+16>>2];g=f-h|0;d=g>>2;e=d+1|0;if(e>>>0>1073741823){break b}c=g>>>1|0;e=g>>>0>=2147483644?1073741823:c>>>0>e>>>0?c:e;if(e){if(e>>>0>1073741823){break a}c=oa(e<<2)}else{c=0}d=c+(d<<2)|0;J[d>>2]=b;b=d+4|0;if((f|0)!=(h|0)){while(1){d=d-4|0;f=f-4|0;J[d>>2]=J[f>>2];if((f|0)!=(h|0)){continue}break}}J[a+24>>2]=c+(e<<2);J[a+20>>2]=b;J[a+16>>2]=d;if(!h){break h}na(h);break h}if(!p){Qb(a,J[a+164>>2],0,l)}oc(m,3);break k}d=(b|0)==-1;if(!d){Qb(a,J[a+164>>2],1,d?-1:(b>>>0)/3|0)}t:{u:{if(j){b=e-1|0;break u}b=e+2|0;if((b|0)==-1){break t}}b=J[J[J[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break t}b=(b>>>0)/3|0;if(J[J[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break t}oc(m,5);b=c;break k}if(p){break m}Qb(a,J[a+164>>2],0,l)}oc(m,7);J[a+20>>2]=J[a+20>>2]-4;break h}oc(m,0);b=-1;if((e|0)==-1){break k}c=e+1|0;c=(c>>>0)%3|0?c:e-2|0;if((c|0)==-1){break k}b=J[J[J[a+12>>2]+12>>2]+(c<<2)>>2]}n=n+1|0;if((s|0)!=(n|0)){continue}break}break h}J[a+20>>2]=d}b=J[a+20>>2];if((b|0)!=J[a+16>>2]){continue}break}break d}g=J[a+28>>2];while(1){c=b-4|0;e=J[c>>2];v:{if((e|0)!=-1){e=(e>>>0)/3|0;if(!(J[g+(e>>>3&268435452)>>2]>>>e&1)){break v}}J[a+20>>2]=c;b=c}if((b|0)!=(d|0)){continue}break}}ba=k+32|0;return 1}qa();B()}qa();B()}xa();B()}function Ff(a,b){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=Q(0),p=0,q=0,r=Q(0);g=ba+-64|0;ba=g;J[g+40>>2]=0;J[g+44>>2]=0;J[g+32>>2]=0;J[g+36>>2]=0;J[g+48>>2]=1065353216;c=J[a+80>>2];J[g+24>>2]=0;J[g+16>>2]=0;J[g+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}e=c<<2;j=oa(e);J[g+16>>2]=j;c=e+j|0;J[g+24>>2]=c;pa(j,0,e);J[g+20>>2]=c;while(1){d=J[J[b>>2]>>2];e=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],m,0);f=c;c=c+e|0;c=c+d|0;c=K[c|0]|K[c+1|0]<<8;I[g+30>>1]=c;J[g+12>>2]=p;I[g+8>>1]=c;c=0;q=g+8|0;n=L[q>>1];e=n^318;b:{c:{k=g+32|0;f=J[k+4>>2];if(!f){break c}d=Kl(f);d:{if(d>>>0>=2){c=e;if(f>>>0<=c>>>0){c=(e>>>0)%(f>>>0)|0}h=J[J[k>>2]+(c<<2)>>2];if(!h){break c}if(d>>>0<=1){break d}while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((d|0)!=(e|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break c}}if(L[h+8>>1]!=(n|0)){continue}break}c=0;break b}c=e&f-1;h=J[J[k>>2]+(c<<2)>>2];if(!h){break c}}l=f-1|0;while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((e|0)!=(d|0)&(d&l)!=(c|0)){break c}if(L[h+8>>1]!=(n|0)){continue}break}c=0;break b}h=oa(16);I[h+8>>1]=L[q>>1];d=J[q+4>>2];J[h+4>>2]=e;J[h+12>>2]=d;J[h>>2]=0;o=Q(J[k+12>>2]+1>>>0);r=N[k+16>>2];e:{if(o>Q(r*Q(f>>>0))?0:f){break e}c=2;d=(f-1&f)!=0|f>>>0<3|f<<1;o=Q(W(Q(o/r)));f:{if(o<Q(4294967296)&o>=Q(0)){l=~~o>>>0;break f}l=0}d=d>>>0>l>>>0?d:l;g:{if((d|0)==1){break g}if(!(d&d-1)){c=d;break g}c=Ha(d);f=J[k+4>>2]}h:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break h}l=f>>>0<3;o=Q(W(Q(Q(M[k+12>>2])/N[k+16>>2])));i:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break i}d=0}j:{k:{if(l){break k}if(Kl(f)>>>0>1){break k}d=d>>>0<2?d:1<<32-S(d-1|0);break j}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(f>>>0<=c>>>0){break h}}db(k,c)}f=J[k+4>>2];c=f-1|0;if(!(c&f)){c=c&e;break e}if(e>>>0<f>>>0){c=e;break e}c=(e>>>0)%(f>>>0)|0}e=J[k>>2]+(c<<2)|0;c=J[e>>2];l:{m:{if(!c){c=k+8|0;J[h>>2]=J[c>>2];J[k+8>>2]=h;J[e>>2]=c;c=J[h>>2];if(!c){break l}c=J[c+4>>2];e=f-1|0;n:{if(!(e&f)){c=c&e;break n}if(c>>>0<f>>>0){break n}c=(c>>>0)%(f>>>0)|0}c=J[k>>2]+(c<<2)|0;break m}J[h>>2]=J[c>>2]}J[c>>2]=h}J[k+12>>2]=J[k+12>>2]+1;c=1}H[g+60|0]=c;J[g+56>>2]=h;o:{if(!K[g+60|0]){J[(m<<2)+j>>2]=J[J[g+56>>2]+12>>2];break o}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,p)|0,g+30|0,c);j=J[g+16>>2];J[j+(m<<2)>>2]=p;p=p+1|0}m=m+1|0;i=m?i:i+1|0;c=J[a+80>>2];if(!i&m>>>0<c>>>0){continue}break}if((c|0)!=(p|0)){p:{if(!K[a+84|0]){b=J[a+72>>2];d=J[a+68>>2];if((b|0)==(d|0)){break p}b=b-d>>2;c=b>>>0<=1?1:b;m=c&3;n=0;b=0;if(c-1>>>0>=3){i=c&-4;l=0;while(1){e=b<<2;c=e+d|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];c=d+(e|4)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];c=d+(e|8)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];c=d+(e|12)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];b=b+4|0;l=l+4|0;if((i|0)!=(l|0)){continue}break}}if(!m){break p}while(1){c=d+(b<<2)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];b=b+1|0;n=n+1|0;if((m|0)!=(n|0)){continue}break}break p}H[a+84|0]=0;m=a+68|0;b=J[a+68>>2];i=J[a+72>>2]-b>>2;q:{if(i>>>0<c>>>0){Ma(m,c-i|0,2176);c=J[a+80>>2];break q}if(c>>>0>=i>>>0){break q}J[a+72>>2]=b+(c<<2)}if(!c){break p}d=J[m>>2];n=0;b=0;if(c>>>0>=4){m=c&-4;l=0;while(1){e=b<<2;J[e+d>>2]=J[e+j>>2];i=e|4;J[i+d>>2]=J[j+i>>2];i=e|8;J[i+d>>2]=J[j+i>>2];i=e|12;J[i+d>>2]=J[j+i>>2];b=b+4|0;l=l+4|0;if((m|0)!=(l|0)){continue}break}}i=c&3;if(!i){break p}while(1){c=b<<2;J[c+d>>2]=J[c+j>>2];b=b+1|0;n=n+1|0;if((i|0)!=(n|0)){continue}break}}J[a+80>>2]=p}na(j)}b=J[g+40>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[g+32>>2];J[g+32>>2]=0;if(a){na(a)}ba=g- -64|0;return p}qa();B()}function Yk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;J[a+8>>2]=e;q=a+32|0;f=J[q>>2];h=J[a+36>>2]-f>>2;a:{if(h>>>0<e>>>0){Fa(q,e-h|0);break a}if(e>>>0>=h>>>0){break a}J[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=J[b>>2];c:{if((d|0)<2){h=g;break c}f=1;h=d-1|0;l=h&1;d:{if((d|0)==2){h=g;break d}o=h&-2;d=0;h=g;while(1){i=(f<<2)+b|0;p=J[i+4>>2];k=J[i>>2];j=(k|0)<(h|0);h=j?k:h;i=(h|0)>(p|0);h=i?p:h;g=j?g:(g|0)<(k|0)?k:g;g=i?g:(g|0)<(p|0)?p:g;f=f+2|0;d=d+2|0;if((o|0)!=(d|0)){continue}break}}if(!l){break c}f=J[(f<<2)+b>>2];d=(f|0)<(h|0);h=d?f:h;g=d?g:(f|0)>(g|0)?f:g}J[a+16>>2]=g;J[a+12>>2]=h;f=(g>>31)-((h>>31)+(g>>>0<h>>>0)|0)|0;d=g-h|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;J[a+20>>2]=f;d=f>>>1|0;J[a+24>>2]=d;J[a+28>>2]=0-d;if(f&1){break b}J[a+24>>2]=d-1}s=e<<2;d=e>>>0>1073741823?-1:s;h=pa(oa(d),0,d);d=J[a+56>>2];t=J[d>>2];d=J[d+4>>2]-t|0;if((d|0)>=5){w=J[a+52>>2];u=J[a+48>>2];x=e&-2;y=e&1;v=d>>2;l=v;while(1){o=l;e:{f:{l=l-1|0;if(v>>>0>l>>>0){p=P(e,l);d=J[(l<<2)+t>>2];if((d|0)==-1){break f}g=J[J[u+12>>2]+(d<<2)>>2];if((g|0)==-1){break f}j=J[w>>2];k=J[u>>2];i=J[j+(J[k+(g<<2)>>2]<<2)>>2];d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)!=-1){f=J[k+(d<<2)>>2]}else{f=-1}g:{h:{if((g>>>0)%3|0){g=g-1|0;break h}g=g+2|0;d=-1;if((g|0)==-1){break g}}d=J[k+(g<<2)>>2]}if((i|0)>=(l|0)){break f}f=J[(f<<2)+j>>2];if((f|0)>=(l|0)){break f}d=J[j+(d<<2)>>2];if((d|0)>=(l|0)){break f}i:{if((e|0)<=0){break i}k=P(d,e);j=P(e,f);i=P(e,i);g=0;d=0;if((e|0)!=1){while(1){J[h+(g<<2)>>2]=(J[(g+k<<2)+b>>2]+J[(g+j<<2)+b>>2]|0)-J[(g+i<<2)+b>>2];f=g|1;J[h+(f<<2)>>2]=(J[(f+k<<2)+b>>2]+J[(f+j<<2)+b>>2]|0)-J[(f+i<<2)+b>>2];g=g+2|0;d=d+2|0;if((x|0)!=(d|0)){continue}break}}if(!y){break i}J[h+(g<<2)>>2]=(J[(g+k<<2)+b>>2]+J[(g+j<<2)+b>>2]|0)-J[(g+i<<2)+b>>2]}g=J[a+8>>2];if((g|0)<=0){break e}d=p<<2;p=d+c|0;k=b+d|0;i=J[q>>2];m=0;d=h;while(1){f=i;if((g|0)>0){f=J[q>>2];g=0;while(1){n=g<<2;r=J[n+d>>2];j=J[a+16>>2];j:{if((r|0)>(j|0)){J[f+n>>2]=j;break j}n=f+n|0;j=J[a+12>>2];if((j|0)>(r|0)){J[n>>2]=j;break j}J[n>>2]=r}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}g=m<<2;d=g+p|0;g=J[g+k>>2]-J[f+g>>2]|0;J[d>>2]=g;k:{if((g|0)<J[a+28>>2]){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break k}g=g-J[a+20>>2]|0}J[d>>2]=g}d=f;g=J[a+8>>2];m=m+1|0;if((g|0)>(m|0)){continue}break}break e}ra();B()}g=J[a+8>>2];if((g|0)<=0){break e}d=p<<2;p=d+c|0;k=b+d|0;d=(P(o-2|0,e)<<2)+b|0;i=J[q>>2];m=0;while(1){f=i;if((g|0)>0){f=J[q>>2];g=0;while(1){n=g<<2;r=J[n+d>>2];j=J[a+16>>2];l:{if((r|0)>(j|0)){J[f+n>>2]=j;break l}n=f+n|0;j=J[a+12>>2];if((j|0)>(r|0)){J[n>>2]=j;break l}J[n>>2]=r}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}g=m<<2;d=g+p|0;g=J[g+k>>2]-J[f+g>>2]|0;J[d>>2]=g;m:{if((g|0)<J[a+28>>2]){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break m}g=g-J[a+20>>2]|0}J[d>>2]=g}d=f;g=J[a+8>>2];m=m+1|0;if((g|0)>(m|0)){continue}break}}if((o|0)>2){continue}break}}if((e|0)>0){pa(h,0,s)}g=J[a+8>>2];if((g|0)>0){e=J[a+32>>2];m=0;d=h;while(1){f=e;if((g|0)>0){f=J[q>>2];g=0;while(1){o=g<<2;l=J[o+d>>2];i=J[a+16>>2];n:{if((l|0)>(i|0)){J[f+o>>2]=i;break n}o=f+o|0;i=J[a+12>>2];if((i|0)>(l|0)){J[o>>2]=i;break n}J[o>>2]=l}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}g=m<<2;d=g+c|0;g=J[b+g>>2]-J[f+g>>2]|0;J[d>>2]=g;o:{if((g|0)<J[a+28>>2]){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break o}g=g-J[a+20>>2]|0}J[d>>2]=g}d=f;g=J[a+8>>2];m=m+1|0;if((g|0)>(m|0)){continue}break}}na(h);return 1}function Rf(a,b){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=Q(0),p=0,q=0,r=Q(0);g=ba+-64|0;ba=g;J[g+40>>2]=0;J[g+44>>2]=0;J[g+32>>2]=0;J[g+36>>2]=0;J[g+48>>2]=1065353216;c=J[a+80>>2];J[g+24>>2]=0;J[g+16>>2]=0;J[g+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}e=c<<2;j=oa(e);J[g+16>>2]=j;c=e+j|0;J[g+24>>2]=c;pa(j,0,e);J[g+20>>2]=c;while(1){d=J[J[b>>2]>>2];e=J[b+48>>2];c=Hl(J[b+40>>2],J[b+44>>2],m,0);f=c;c=c+e|0;c=K[c+d|0];H[g+31|0]=c;J[g+12>>2]=p;H[g+8|0]=c;c=0;q=g+8|0;n=K[q|0];e=n^318;b:{c:{k=g+32|0;f=J[k+4>>2];if(!f){break c}d=Kl(f);d:{if(d>>>0>=2){c=e;if(f>>>0<=c>>>0){c=(e>>>0)%(f>>>0)|0}h=J[J[k>>2]+(c<<2)>>2];if(!h){break c}if(d>>>0<=1){break d}while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((d|0)!=(e|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break c}}if(K[h+8|0]!=(n|0)){continue}break}c=0;break b}c=e&f-1;h=J[J[k>>2]+(c<<2)>>2];if(!h){break c}}l=f-1|0;while(1){h=J[h>>2];if(!h){break c}d=J[h+4>>2];if((e|0)!=(d|0)&(d&l)!=(c|0)){break c}if(K[h+8|0]!=(n|0)){continue}break}c=0;break b}h=oa(16);H[h+8|0]=K[q|0];d=J[q+4>>2];J[h+4>>2]=e;J[h+12>>2]=d;J[h>>2]=0;o=Q(J[k+12>>2]+1>>>0);r=N[k+16>>2];e:{if(o>Q(r*Q(f>>>0))?0:f){break e}c=2;d=(f-1&f)!=0|f>>>0<3|f<<1;o=Q(W(Q(o/r)));f:{if(o<Q(4294967296)&o>=Q(0)){l=~~o>>>0;break f}l=0}d=d>>>0>l>>>0?d:l;g:{if((d|0)==1){break g}if(!(d&d-1)){c=d;break g}c=Ha(d);f=J[k+4>>2]}h:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break h}l=f>>>0<3;o=Q(W(Q(Q(M[k+12>>2])/N[k+16>>2])));i:{if(o<Q(4294967296)&o>=Q(0)){d=~~o>>>0;break i}d=0}j:{k:{if(l){break k}if(Kl(f)>>>0>1){break k}d=d>>>0<2?d:1<<32-S(d-1|0);break j}d=Ha(d)}c=c>>>0>d>>>0?c:d;if(f>>>0<=c>>>0){break h}}db(k,c)}f=J[k+4>>2];c=f-1|0;if(!(c&f)){c=c&e;break e}if(e>>>0<f>>>0){c=e;break e}c=(e>>>0)%(f>>>0)|0}e=J[k>>2]+(c<<2)|0;c=J[e>>2];l:{m:{if(!c){c=k+8|0;J[h>>2]=J[c>>2];J[k+8>>2]=h;J[e>>2]=c;c=J[h>>2];if(!c){break l}c=J[c+4>>2];e=f-1|0;n:{if(!(e&f)){c=c&e;break n}if(c>>>0<f>>>0){break n}c=(c>>>0)%(f>>>0)|0}c=J[k>>2]+(c<<2)|0;break m}J[h>>2]=J[c>>2]}J[c>>2]=h}J[k+12>>2]=J[k+12>>2]+1;c=1}H[g+60|0]=c;J[g+56>>2]=h;o:{if(!K[g+60|0]){J[(m<<2)+j>>2]=J[J[g+56>>2]+12>>2];break o}c=J[a+40>>2];ua(J[J[a>>2]>>2]+P(c,p)|0,g+31|0,c);j=J[g+16>>2];J[j+(m<<2)>>2]=p;p=p+1|0}m=m+1|0;i=m?i:i+1|0;c=J[a+80>>2];if(!i&m>>>0<c>>>0){continue}break}if((c|0)!=(p|0)){p:{if(!K[a+84|0]){b=J[a+72>>2];d=J[a+68>>2];if((b|0)==(d|0)){break p}b=b-d>>2;c=b>>>0<=1?1:b;m=c&3;n=0;b=0;if(c-1>>>0>=3){i=c&-4;l=0;while(1){e=b<<2;c=e+d|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];c=d+(e|4)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];c=d+(e|8)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];c=d+(e|12)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];b=b+4|0;l=l+4|0;if((i|0)!=(l|0)){continue}break}}if(!m){break p}while(1){c=d+(b<<2)|0;J[c>>2]=J[(J[c>>2]<<2)+j>>2];b=b+1|0;n=n+1|0;if((m|0)!=(n|0)){continue}break}break p}H[a+84|0]=0;m=a+68|0;b=J[a+68>>2];i=J[a+72>>2]-b>>2;q:{if(i>>>0<c>>>0){Ma(m,c-i|0,2176);c=J[a+80>>2];break q}if(c>>>0>=i>>>0){break q}J[a+72>>2]=b+(c<<2)}if(!c){break p}d=J[m>>2];n=0;b=0;if(c>>>0>=4){m=c&-4;l=0;while(1){e=b<<2;J[e+d>>2]=J[e+j>>2];i=e|4;J[i+d>>2]=J[j+i>>2];i=e|8;J[i+d>>2]=J[j+i>>2];i=e|12;J[i+d>>2]=J[j+i>>2];b=b+4|0;l=l+4|0;if((m|0)!=(l|0)){continue}break}}i=c&3;if(!i){break p}while(1){c=b<<2;J[c+d>>2]=J[c+j>>2];b=b+1|0;n=n+1|0;if((i|0)!=(n|0)){continue}break}}J[a+80>>2]=p}na(j)}b=J[g+40>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[g+32>>2];J[g+32>>2]=0;if(a){na(a)}ba=g- -64|0;return p}qa();B()}function gl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;J[a+8>>2]=e;q=a+32|0;f=J[q>>2];h=J[a+36>>2]-f>>2;a:{if(h>>>0<e>>>0){Fa(q,e-h|0);break a}if(e>>>0>=h>>>0){break a}J[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=J[b>>2];c:{if((d|0)<2){h=g;break c}f=1;h=d-1|0;l=h&1;d:{if((d|0)==2){h=g;break d}o=h&-2;d=0;h=g;while(1){i=(f<<2)+b|0;m=J[i+4>>2];p=J[i>>2];j=(p|0)<(h|0);h=j?p:h;i=(h|0)>(m|0);h=i?m:h;g=j?g:(g|0)<(p|0)?p:g;g=i?g:(g|0)<(m|0)?m:g;f=f+2|0;d=d+2|0;if((o|0)!=(d|0)){continue}break}}if(!l){break c}f=J[(f<<2)+b>>2];d=(f|0)<(h|0);h=d?f:h;g=d?g:(f|0)>(g|0)?f:g}J[a+16>>2]=g;J[a+12>>2]=h;f=(g>>31)-((h>>31)+(g>>>0<h>>>0)|0)|0;d=g-h|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;J[a+20>>2]=f;d=f>>>1|0;J[a+24>>2]=d;J[a+28>>2]=0-d;if(f&1){break b}J[a+24>>2]=d-1}t=e<<2;d=e>>>0>1073741823?-1:t;h=pa(oa(d),0,d);d=J[a+56>>2];u=J[d>>2];d=J[d+4>>2]-u|0;if((d|0)>=5){w=J[a+52>>2];s=J[a+48>>2];x=e&-2;y=e&1;v=d>>2;l=v;while(1){o=l;e:{f:{l=l-1|0;if(v>>>0>l>>>0){p=P(e,l);d=J[(l<<2)+u>>2];if((d|0)==-1|J[J[s>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}m=J[J[J[s+64>>2]+12>>2]+(d<<2)>>2];if((m|0)==-1){break f}i=J[w>>2];j=J[s+28>>2];g=J[i+(J[j+(m<<2)>>2]<<2)>>2];if((g|0)>=(l|0)){break f}d=m+1|0;f=J[i+(J[j+(((d>>>0)%3|0?d:m-2|0)<<2)>>2]<<2)>>2];if((f|0)>=(l|0)){break f}d=J[i+(J[j+(m+((m>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(l|0)){break f}g:{if((e|0)<=0){break g}j=P(d,e);i=P(e,f);f=P(e,g);g=0;k=0;if((e|0)!=1){while(1){J[h+(g<<2)>>2]=(J[(g+j<<2)+b>>2]+J[(g+i<<2)+b>>2]|0)-J[(f+g<<2)+b>>2];d=g|1;J[h+(d<<2)>>2]=(J[(d+j<<2)+b>>2]+J[(d+i<<2)+b>>2]|0)-J[(d+f<<2)+b>>2];g=g+2|0;k=k+2|0;if((x|0)!=(k|0)){continue}break}}if(!y){break g}J[h+(g<<2)>>2]=(J[(g+j<<2)+b>>2]+J[(g+i<<2)+b>>2]|0)-J[(f+g<<2)+b>>2]}g=J[a+8>>2];if((g|0)<=0){break e}d=p<<2;m=d+c|0;p=b+d|0;i=J[q>>2];k=0;d=h;while(1){f=i;if((g|0)>0){f=J[q>>2];g=0;while(1){n=g<<2;r=J[n+d>>2];j=J[a+16>>2];h:{if((r|0)>(j|0)){J[f+n>>2]=j;break h}n=f+n|0;j=J[a+12>>2];if((j|0)>(r|0)){J[n>>2]=j;break h}J[n>>2]=r}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}g=k<<2;d=g+m|0;g=J[g+p>>2]-J[f+g>>2]|0;J[d>>2]=g;i:{if((g|0)<J[a+28>>2]){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break i}g=g-J[a+20>>2]|0}J[d>>2]=g}d=f;g=J[a+8>>2];k=k+1|0;if((g|0)>(k|0)){continue}break}break e}ra();B()}g=J[a+8>>2];if((g|0)<=0){break e}d=p<<2;m=d+c|0;p=b+d|0;d=(P(o-2|0,e)<<2)+b|0;i=J[q>>2];k=0;while(1){f=i;if((g|0)>0){f=J[q>>2];g=0;while(1){n=g<<2;r=J[n+d>>2];j=J[a+16>>2];j:{if((r|0)>(j|0)){J[f+n>>2]=j;break j}n=f+n|0;j=J[a+12>>2];if((j|0)>(r|0)){J[n>>2]=j;break j}J[n>>2]=r}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}g=k<<2;d=g+m|0;g=J[g+p>>2]-J[f+g>>2]|0;J[d>>2]=g;k:{if((g|0)<J[a+28>>2]){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break k}g=g-J[a+20>>2]|0}J[d>>2]=g}d=f;g=J[a+8>>2];k=k+1|0;if((g|0)>(k|0)){continue}break}}if((o|0)>2){continue}break}}if((e|0)>0){pa(h,0,t)}g=J[a+8>>2];if((g|0)>0){e=J[a+32>>2];k=0;d=h;while(1){f=e;if((g|0)>0){f=J[q>>2];g=0;while(1){o=g<<2;l=J[o+d>>2];i=J[a+16>>2];l:{if((l|0)>(i|0)){J[f+o>>2]=i;break l}o=f+o|0;i=J[a+12>>2];if((i|0)>(l|0)){J[o>>2]=i;break l}J[o>>2]=l}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}g=k<<2;d=g+c|0;g=J[b+g>>2]-J[f+g>>2]|0;J[d>>2]=g;m:{if((g|0)<J[a+28>>2]){g=g+J[a+20>>2]|0}else{if((g|0)<=J[a+24>>2]){break m}g=g-J[a+20>>2]|0}J[d>>2]=g}d=f;g=J[a+8>>2];k=k+1|0;if((g|0)>(k|0)){continue}break}}na(h);return 1}function je(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=Q(0),f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=Q(0),p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;if(J[c>>2]==J[c+4>>2]){m=J[d+80>>2];u=ba-16|0;ba=u;g=J[a+4>>2];k=K[b+24|0];h=J[d+48>>2];n=J[J[d>>2]>>2];c=u+8|0;J[c>>2]=1065353216;d=c;N[c>>2]=Q(-1<<g^-1)/N[a+20>>2];c=oa(k<<2);a:{if(!m|!k){break a}p=h+n|0;o=N[d>>2];n=J[a+8>>2];v=J[b>>2];d=J[b+48>>2];g=J[b+40>>2];w=J[b+44>>2];if(!K[b+84|0]){f=J[b+68>>2];s=k&254;t=k&1;a=0;while(1){b=J[v>>2];l=Hl(g,w,J[f+(i<<2)>>2],0)+d|0;h=ua(c,b+l|0,g);b=0;q=0;if((k|0)!=1){while(1){l=p+(a<<2)|0;j=b<<2;e=Q(V(Q(Q(o*Q(N[j+h>>2]-N[n+j>>2]))+Q(.5))));b:{if(Q(R(e))<Q(2147483648)){r=~~e;break b}r=-2147483648}J[l>>2]=r;j=j|4;e=Q(V(Q(Q(o*Q(N[j+h>>2]-N[n+j>>2]))+Q(.5))));c:{if(Q(R(e))<Q(2147483648)){j=~~e;break c}j=-2147483648}J[l+4>>2]=j;b=b+2|0;a=a+2|0;q=q+2|0;if((s|0)!=(q|0)){continue}break}}if(t){l=p+(a<<2)|0;b=b<<2;e=Q(V(Q(Q(o*Q(N[b+h>>2]-N[b+n>>2]))+Q(.5))));d:{if(Q(R(e))<Q(2147483648)){b=~~e;break d}b=-2147483648}J[l>>2]=b;a=a+1|0}i=i+1|0;if((m|0)!=(i|0)){continue}break}break a}s=k&254;t=k&1;a=0;while(1){b=J[v>>2];h=Hl(g,w,i,l)+d|0;j=ua(c,b+h|0,g);b=0;q=0;if((k|0)!=1){while(1){h=p+(a<<2)|0;f=b<<2;e=Q(V(Q(Q(o*Q(N[f+j>>2]-N[f+n>>2]))+Q(.5))));e:{if(Q(R(e))<Q(2147483648)){r=~~e;break e}r=-2147483648}J[h>>2]=r;f=f|4;e=Q(V(Q(Q(o*Q(N[f+j>>2]-N[f+n>>2]))+Q(.5))));f:{if(Q(R(e))<Q(2147483648)){f=~~e;break f}f=-2147483648}J[h+4>>2]=f;b=b+2|0;a=a+2|0;q=q+2|0;if((s|0)!=(q|0)){continue}break}}if(t){h=p+(a<<2)|0;b=b<<2;e=Q(V(Q(Q(o*Q(N[b+j>>2]-N[b+n>>2]))+Q(.5))));g:{if(Q(R(e))<Q(2147483648)){b=~~e;break g}b=-2147483648}J[h>>2]=b;a=a+1|0}b=l;i=i+1|0;b=i?b:b+1|0;l=b;if((i|0)!=(m|0)|b){continue}break}}na(c);ba=u+16|0;return 1}j=ba-16|0;ba=j;m=J[a+4>>2];i=K[b+24|0];g=J[d+48>>2];h=J[J[d>>2]>>2];d=j+8|0;J[d>>2]=1065353216;l=d;N[d>>2]=Q(-1<<m^-1)/N[a+20>>2];d=oa(i<<2);m=J[c+4>>2];q=J[c>>2];h:{if(!i|(m|0)==(q|0)){break h}n=h+g|0;c=m-q>>2;u=c>>>0<=1?1:c;o=N[l>>2];h=J[a+8>>2];v=J[b>>2];l=J[b+48>>2];m=J[b+40>>2];w=J[b+44>>2];if(K[b+84|0]){s=i&254;t=i&1;a=0;c=0;while(1){b=J[v>>2];g=Hl(m,w,J[q+(c<<2)>>2],0)+l|0;p=ua(d,b+g|0,m);b=0;k=0;if((i|0)!=1){while(1){g=n+(a<<2)|0;f=b<<2;e=Q(V(Q(Q(o*Q(N[f+p>>2]-N[h+f>>2]))+Q(.5))));i:{if(Q(R(e))<Q(2147483648)){r=~~e;break i}r=-2147483648}J[g>>2]=r;f=f|4;e=Q(V(Q(Q(o*Q(N[f+p>>2]-N[h+f>>2]))+Q(.5))));j:{if(Q(R(e))<Q(2147483648)){f=~~e;break j}f=-2147483648}J[g+4>>2]=f;b=b+2|0;a=a+2|0;k=k+2|0;if((s|0)!=(k|0)){continue}break}}if(t){g=n+(a<<2)|0;b=b<<2;e=Q(V(Q(Q(o*Q(N[b+p>>2]-N[b+h>>2]))+Q(.5))));k:{if(Q(R(e))<Q(2147483648)){b=~~e;break k}b=-2147483648}J[g>>2]=b;a=a+1|0}c=c+1|0;if((u|0)!=(c|0)){continue}break}break h}s=J[b+68>>2];t=i&254;x=i&1;a=0;c=0;while(1){b=J[v>>2];g=Hl(m,w,J[s+(J[q+(c<<2)>>2]<<2)>>2],0)+l|0;p=ua(d,b+g|0,m);b=0;k=0;if((i|0)!=1){while(1){g=n+(a<<2)|0;f=b<<2;e=Q(V(Q(Q(o*Q(N[f+p>>2]-N[h+f>>2]))+Q(.5))));l:{if(Q(R(e))<Q(2147483648)){r=~~e;break l}r=-2147483648}J[g>>2]=r;f=f|4;e=Q(V(Q(Q(o*Q(N[f+p>>2]-N[h+f>>2]))+Q(.5))));m:{if(Q(R(e))<Q(2147483648)){f=~~e;break m}f=-2147483648}J[g+4>>2]=f;b=b+2|0;a=a+2|0;k=k+2|0;if((t|0)!=(k|0)){continue}break}}if(x){g=n+(a<<2)|0;b=b<<2;e=Q(V(Q(Q(o*Q(N[b+p>>2]-N[b+h>>2]))+Q(.5))));n:{if(Q(R(e))<Q(2147483648)){b=~~e;break n}b=-2147483648}J[g>>2]=b;a=a+1|0}c=c+1|0;if((u|0)!=(c|0)){continue}break}}na(d);ba=j+16|0;return 1}function bi(a){a=a|0;var 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=Q(0);c=1;a:{if(!J[a+80>>2]){break a}f=J[a+8>>2];if((J[a+12>>2]-f|0)<4){break a}while(1){b=J[(n<<2)+f>>2];k=0;l=0;j=0;c=0;f=0;e=-1;b:{c:{d:{e:{switch(J[b+28>>2]-1|0){case 8:f:{switch(K[b+24|0]-1|0){case 0:e=ba+-64|0;ba=e;J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;J[e+48>>2]=1065353216;g=J[b+80>>2];J[e+24>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;g:{h:{if(g){if(g>>>0>=1073741824){break h}d=g<<2;g=oa(d);J[e+16>>2]=g;h=d+g|0;J[e+24>>2]=h;pa(g,0,d);J[e+20>>2]=h;while(1){d=J[J[b>>2]>>2];h=J[b+48>>2];m=Hl(J[b+40>>2],J[b+44>>2],c,0);h=h+m|0;d=d+h|0;o=(x(2,K[d|0]|K[d+1|0]<<8|(K[d+2|0]<<16|K[d+3|0]<<24)),D());N[e+28>>2]=o;J[e+12>>2]=k;N[e+8>>2]=o;d=e+8|0;qf(e+56|0,e+32|0,d,d);i:{if(!K[e+60|0]){J[(c<<2)+g>>2]=J[J[e+56>>2]+12>>2];break i}g=J[b+40>>2];ua(J[J[b>>2]>>2]+P(g,k)|0,e+28|0,g);g=J[e+16>>2];J[g+(c<<2)>>2]=k;k=k+1|0}c=c+1|0;f=c?f:f+1|0;d=J[b+80>>2];if(!f&c>>>0<d>>>0){continue}break}if((d|0)!=(k|0)){j:{if(!K[b+84|0]){c=J[b+72>>2];f=J[b+68>>2];if((c|0)==(f|0)){break j}c=c-f>>2;d=c>>>0<=1?1:c;h=d&3;c=0;if(d-1>>>0>=3){m=d&-4;while(1){d=c<<2;i=d+f|0;J[i>>2]=J[(J[i>>2]<<2)+g>>2];i=f+(d|4)|0;J[i>>2]=J[(J[i>>2]<<2)+g>>2];i=f+(d|8)|0;J[i>>2]=J[(J[i>>2]<<2)+g>>2];d=f+(d|12)|0;J[d>>2]=J[(J[d>>2]<<2)+g>>2];c=c+4|0;j=j+4|0;if((m|0)!=(j|0)){continue}break}}if(!h){break j}while(1){d=f+(c<<2)|0;J[d>>2]=J[(J[d>>2]<<2)+g>>2];c=c+1|0;l=l+1|0;if((h|0)!=(l|0)){continue}break}break j}H[b+84|0]=0;c=b+68|0;h=J[b+68>>2];f=J[b+72>>2]-h>>2;k:{if(f>>>0<d>>>0){Ma(c,d-f|0,2176);d=J[b+80>>2];break k}if(d>>>0>=f>>>0){break k}J[b+72>>2]=h+(d<<2)}if(!d){break j}f=J[c>>2];c=0;if(d>>>0>=4){m=d&-4;while(1){h=c<<2;J[h+f>>2]=J[g+h>>2];i=h|4;J[i+f>>2]=J[g+i>>2];i=h|8;J[i+f>>2]=J[g+i>>2];h=h|12;J[h+f>>2]=J[g+h>>2];c=c+4|0;j=j+4|0;if((m|0)!=(j|0)){continue}break}}d=d&3;if(!d){break j}while(1){j=c<<2;J[j+f>>2]=J[g+j>>2];c=c+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}J[b+80>>2]=k}na(g)}c=J[e+40>>2];if(c){while(1){f=J[c>>2];na(c);c=f;if(c){continue}break}}c=J[e+32>>2];J[e+32>>2]=0;if(c){na(c)}ba=e- -64|0;c=k;break g}qa();B()}break d;case 1:c=Jd(b,b);break d;case 2:c=Id(b,b);break d;case 3:break f;default:break c}}c=Hd(b,b);break d;case 0:l:{switch(K[b+24|0]-1|0){case 0:c=Rf(b,b);break d;case 1:c=Nf(b,b);break d;case 2:c=Kf(b,b);break d;case 3:break l;default:break c}}c=If(b,b);break d;case 1:case 10:m:{switch(K[b+24|0]-1|0){case 0:c=Rf(b,b);break d;case 1:c=Nf(b,b);break d;case 2:c=Kf(b,b);break d;case 3:break m;default:break c}}c=If(b,b);break d;case 3:n:{switch(K[b+24|0]-1|0){case 0:c=Ff(b,b);break d;case 1:c=Ef(b,b);break d;case 2:c=wf(b,b);break d;case 3:break n;default:break c}}c=vf(b,b);break d;case 2:o:{switch(K[b+24|0]-1|0){case 0:c=Ff(b,b);break d;case 1:c=Ef(b,b);break d;case 2:c=wf(b,b);break d;case 3:break o;default:break c}}c=vf(b,b);break d;case 5:p:{switch(K[b+24|0]-1|0){case 0:c=uf(b,b);break d;case 1:c=Jd(b,b);break d;case 2:c=Id(b,b);break d;case 3:break p;default:break c}}c=Hd(b,b);break d;case 4:break e;default:break b}}q:{switch(K[b+24|0]-1|0){case 0:c=uf(b,b);break d;case 1:c=Jd(b,b);break d;case 2:c=Id(b,b);break d;case 3:break q;default:break c}}c=Hd(b,b)}e=c;if(e){break b}}e=-1}c=(e|0)!=0;if(!e){break a}n=n+1|0;f=J[a+8>>2];if((n|0)<J[a+12>>2]-f>>2){continue}break}}return c|0}function ic(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=ba-16|0;ba=k;a:{if(!J[a+8>>2]){break a}e=J[a>>2];J[a>>2]=a+4;J[J[a+4>>2]+8>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;f=J[e+4>>2];e=f?f:e;if(!e){Da(a,e);break a}h=J[e+8>>2];b:{if(!h){break b}f=J[h>>2];if((f|0)==(e|0)){J[h>>2]=0;d=h;f=J[d+4>>2];if(!f){break b}while(1){d=f;f=J[d>>2];if(f){continue}f=J[d+4>>2];if(f){continue}break}break b}J[h+4>>2]=0;d=h;if(!f){break b}while(1){d=f;f=J[d>>2];if(f){continue}f=J[d+4>>2];if(f){continue}break}}c:{if((b|0)==(c|0)){h=e;break c}f=b;while(1){h=d;J[k+12>>2]=e+28;J[k+8>>2]=e+16;b=f+16|0;d=J[k+8>>2];d:{if((b|0)==(d|0)){break d}i=K[b+11|0];g=i<<24>>24;if(H[d+11|0]>=0){if((g|0)>=0){g=J[b+4>>2];J[d>>2]=J[b>>2];J[d+4>>2]=g;J[d+8>>2]=J[b+8>>2];break d}hd(d,J[b>>2],J[b+4>>2]);break d}l=d;d=(g|0)<0;id(l,d?J[b>>2]:b,d?J[b+4>>2]:i)}d=J[k+12>>2];g=b+12|0;if((d|0)!=(g|0)){e:{j=K[b+23|0];i=j<<24>>24;if(H[d+11|0]>=0){if((i|0)>=0){b=J[g+4>>2];J[d>>2]=J[g>>2];J[d+4>>2]=b;J[d+8>>2]=J[g+8>>2];break e}hd(d,J[b+12>>2],J[b+16>>2]);break e}l=d;d=(i|0)<0;id(l,d?J[b+12>>2]:g,d?J[b+16>>2]:j)}}g=J[a+4>>2];f:{if(!g){b=a+4|0;d=b;break f}b=K[e+27|0];d=b<<24>>24<0;j=d?J[e+16>>2]:e+16|0;i=d?J[e+20>>2]:b;while(1){b=g;g=K[b+27|0];d=g<<24>>24<0;g:{h:{i:{g=d?J[b+20>>2]:g;l=g>>>0<i>>>0?g:i;if(l){d=Ba(j,d?J[b+16>>2]:b+16|0,l);if(d){break i}}if(g>>>0>i>>>0){break h}break g}if((d|0)>=0){break g}}d=b;g=J[b>>2];if(g){continue}break f}g=J[b+4>>2];if(g){continue}break}d=b+4|0}J[e+8>>2]=b;J[e>>2]=0;J[e+4>>2]=0;J[d>>2]=e;b=e;e=J[J[a>>2]>>2];if(e){J[a>>2]=e;b=J[d>>2]}sb(J[a+4>>2],b);J[a+8>>2]=J[a+8>>2]+1;d=0;j:{if(!h){break j}e=J[h+8>>2];if(!e){break j}b=J[e>>2];if((h|0)==(b|0)){J[e>>2]=0;d=e;b=J[d+4>>2];if(!b){break j}while(1){d=b;b=J[b>>2];if(b){continue}b=J[d+4>>2];if(b){continue}break}break j}J[e+4>>2]=0;d=e;if(!b){break j}while(1){d=b;b=J[b>>2];if(b){continue}b=J[d+4>>2];if(b){continue}break}}e=J[f+4>>2];k:{if(e){while(1){b=e;e=J[b>>2];if(e){continue}break k}}while(1){b=J[f+8>>2];e=J[b>>2]!=(f|0);f=b;if(e){continue}break}}if(!h){break c}f=b;e=h;if((b|0)!=(c|0)){continue}break}}Da(a,h);if(!d){break a}while(1){e=J[d+8>>2];if(e){d=e;continue}break}Da(a,d)}if((b|0)!=(c|0)){while(1){f=oa(40);g=f+16|0;l:{if(H[b+27|0]>=0){d=J[b+20>>2];J[g>>2]=J[b+16>>2];J[g+4>>2]=d;J[g+8>>2]=J[b+24>>2];break l}Ga(g,J[b+16>>2],J[b+20>>2])}d=a+4|0;e=f+28|0;m:{if(H[b+39|0]>=0){h=J[b+32>>2];J[e>>2]=J[b+28>>2];J[e+4>>2]=h;J[e+8>>2]=J[b+36>>2];break m}Ga(e,J[b+28>>2],J[b+32>>2])}e=d;h=J[d>>2];n:{if(!h){break n}e=K[f+27|0];d=e<<24>>24<0;i=d?J[f+20>>2]:e;g=d?J[f+16>>2]:g;while(1){d=h;h=K[d+27|0];e=h<<24>>24<0;o:{p:{q:{h=e?J[d+20>>2]:h;j=h>>>0<i>>>0?h:i;if(j){e=Ba(g,e?J[d+16>>2]:d+16|0,j);if(e){break q}}if(h>>>0>i>>>0){break p}break o}if((e|0)>=0){break o}}e=d;h=J[d>>2];if(h){continue}break n}h=J[d+4>>2];if(h){continue}break}e=d+4|0}J[f+8>>2]=d;J[f>>2]=0;J[f+4>>2]=0;J[e>>2]=f;d=f;f=J[J[a>>2]>>2];if(f){J[a>>2]=f;d=J[e>>2]}sb(J[a+4>>2],d);J[a+8>>2]=J[a+8>>2]+1;f=J[b+4>>2];r:{if(f){while(1){e=f;f=J[e>>2];if(f){continue}break r}}while(1){e=J[b+8>>2];d=J[e>>2]!=(b|0);b=e;if(d){continue}break}}b=e;if((c|0)!=(b|0)){continue}break}}ba=k+16|0}function ef(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}c=J[a+12>>2];d=J[a+8>>2];if(c-d>>2>>>0<=b>>>0){break a}d=d+(b<<2)|0;e=J[d>>2];i=J[e+60>>2];f=J[e+56>>2];e=d+4|0;if((e|0)!=(c|0)){while(1){h=J[e>>2];J[e>>2]=0;g=J[d>>2];J[d>>2]=h;if(g){Ka(g)}d=d+4|0;e=e+4|0;if((e|0)!=(c|0)){continue}break}c=J[a+12>>2]}if((c|0)!=(d|0)){while(1){c=c-4|0;e=J[c>>2];J[c>>2]=0;if(e){Ka(e)}if((c|0)!=(d|0)){continue}break}}J[a+12>>2]=d;g=J[a+4>>2];b:{if(!g|(i|0)<0){break b}c=J[g+24>>2];d=J[g+28>>2];if((c|0)==(d|0)){break b}while(1){if((i|0)==J[J[c>>2]+24>>2]){d=c+4|0;i=J[g+28>>2];if((d|0)!=(i|0)){while(1){h=J[d>>2];J[d>>2]=0;e=J[c>>2];J[c>>2]=h;if(e){lb(e+12|0,J[e+16>>2]);kb(e,J[e+4>>2]);na(e)}c=c+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}d=J[g+28>>2]}if((c|0)!=(d|0)){while(1){d=d-4|0;e=J[d>>2];J[d>>2]=0;if(e){lb(e+12|0,J[e+16>>2]);kb(e,J[e+4>>2]);na(e)}if((c|0)!=(d|0)){continue}break}}J[g+28>>2]=c;break b}c=c+4|0;if((d|0)!=(c|0)){continue}break}}c:{if((f|0)>4){break c}d:{e=P(f,12)+a|0;c=J[e+20>>2];d=J[e+24>>2];if((c|0)==(d|0)){break d}while(1){if(J[c>>2]==(b|0)){break d}c=c+4|0;if((d|0)!=(c|0)){continue}break}break c}if((c|0)==(d|0)){break c}f=c;c=c+4|0;ta(f,c,d-c|0);J[e+24>>2]=d-4}c=J[a+24>>2];d=J[a+20>>2];e:{if((c|0)==(d|0)){break e}e=c-d|0;c=e>>2;g=c>>>0<=1?1:c;i=g&1;c=0;if(e>>>0>=8){g=g&-2;e=0;while(1){f=c<<2;h=f+d|0;j=J[h>>2];if((j|0)>(b|0)){J[h>>2]=j-1}f=d+(f|4)|0;h=J[f>>2];if((h|0)>(b|0)){J[f>>2]=h-1}c=c+2|0;e=e+2|0;if((g|0)!=(e|0)){continue}break}}if(!i){break e}c=d+(c<<2)|0;d=J[c>>2];if((d|0)<=(b|0)){break e}J[c>>2]=d-1}c=J[a+36>>2];d=J[a+32>>2];f:{if((c|0)==(d|0)){break f}e=c-d|0;c=e>>2;g=c>>>0<=1?1:c;i=g&1;c=0;if(e>>>0>=8){g=g&-2;e=0;while(1){f=c<<2;h=f+d|0;j=J[h>>2];if((j|0)>(b|0)){J[h>>2]=j-1}f=d+(f|4)|0;h=J[f>>2];if((h|0)>(b|0)){J[f>>2]=h-1}c=c+2|0;e=e+2|0;if((g|0)!=(e|0)){continue}break}}if(!i){break f}c=d+(c<<2)|0;d=J[c>>2];if((d|0)<=(b|0)){break f}J[c>>2]=d-1}c=J[a+48>>2];d=J[a+44>>2];g:{if((c|0)==(d|0)){break g}e=c-d|0;c=e>>2;g=c>>>0<=1?1:c;i=g&1;c=0;if(e>>>0>=8){g=g&-2;e=0;while(1){f=c<<2;h=f+d|0;j=J[h>>2];if((j|0)>(b|0)){J[h>>2]=j-1}f=d+(f|4)|0;h=J[f>>2];if((h|0)>(b|0)){J[f>>2]=h-1}c=c+2|0;e=e+2|0;if((g|0)!=(e|0)){continue}break}}if(!i){break g}c=d+(c<<2)|0;d=J[c>>2];if((d|0)<=(b|0)){break g}J[c>>2]=d-1}c=J[a+60>>2];d=J[a+56>>2];h:{if((c|0)==(d|0)){break h}e=c-d|0;c=e>>2;g=c>>>0<=1?1:c;i=g&1;c=0;if(e>>>0>=8){g=g&-2;e=0;while(1){f=c<<2;h=f+d|0;j=J[h>>2];if((j|0)>(b|0)){J[h>>2]=j-1}f=d+(f|4)|0;h=J[f>>2];if((h|0)>(b|0)){J[f>>2]=h-1}c=c+2|0;e=e+2|0;if((g|0)!=(e|0)){continue}break}}if(!i){break h}c=d+(c<<2)|0;d=J[c>>2];if((d|0)<=(b|0)){break h}J[c>>2]=d-1}c=J[a+72>>2];a=J[a+68>>2];if((c|0)==(a|0)){break a}d=c-a|0;c=d>>2;e=c>>>0<=1?1:c;g=e&1;c=0;if(d>>>0>=8){d=e&-2;e=0;while(1){i=c<<2;f=i+a|0;h=J[f>>2];if((h|0)>(b|0)){J[f>>2]=h-1}i=a+(i|4)|0;f=J[i>>2];if((f|0)>(b|0)){J[i>>2]=f-1}c=c+2|0;e=e+2|0;if((d|0)!=(e|0)){continue}break}}if(!g){break a}f=b;a=a+(c<<2)|0;b=J[a>>2];if((f|0)>=(b|0)){break a}J[a>>2]=b-1}}function _a(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=ba-112|0;ba=j;k=i&2147483647;a:{b:{l=e&2147483647;m=!(b|c);if(!(d|l?l-2147418112>>>0<2147549184:m)){o=k-2147418112|0;if(!h&(o|0)==-2147418112?f|g:(o|0)==-2147418112&(h|0)!=0|o>>>0>2147549184){break b}}if(!(!d&(l|0)==2147418112?m:l>>>0<2147418112)){h=d;i=e|32768;f=b;g=c;break a}if(!(!h&(k|0)==2147418112?!(f|g):k>>>0<2147418112)){i=i|32768;break a}if(!(b|d|(l^2147418112|c))){n=d;d=!(b^f|d^h|(c^g|e^i^-2147483648));h=d?0:n;i=d?2147450880:e;f=d?0:b;g=d?0:c;break a}if(!(f|h|(k^2147418112|g))){break a}if(!(b|d|(c|l))){if(f|h|(g|k)){break a}f=b&f;g=c&g;h=d&h;i=e&i;break a}if(f|h|(g|k)){break b}f=b;g=c;h=d;i=e;break a}n=(k|0)==(l|0);r=n&(d|0)==(h|0)?(c|0)==(g|0)&b>>>0<f>>>0|c>>>0<g>>>0:n&d>>>0<h>>>0|k>>>0>l>>>0;m=r;l=m?f:b;o=m?g:c;n=m?i:e;s=n;m=m?h:d;q=n&65535;d=r?d:h;e=r?e:i;t=e;n=e>>>16&32767;p=s>>>16&32767;if(!p){e=!(m|q);i=e;k=e?l:m;e=e<<6;h=e;i=S(i?o:q);e=e+((i|0)==32?S(k)+32|0:i)|0;Pa(j+96|0,l,o,m,q,e-15|0);m=J[j+104>>2];q=J[j+108>>2];o=J[j+100>>2];p=16-e|0;l=J[j+96>>2]}f=r?b:f;g=r?c:g;h=d;i=t&65535;if(!n){b=!(h|i);e=b;k=b?f:h;b=b<<6;c=b;e=S(e?g:i);b=b+((e|0)==32?S(k)+32|0:e)|0;Pa(j+80|0,f,g,h,i,b-15|0);n=16-b|0;h=J[j+88>>2];i=J[j+92>>2];g=J[j+84>>2];f=J[j+80>>2]}c=i<<3|h>>>29;b=h<<3|g>>>29;c=c|524288;h=m<<3|o>>>29;i=q<<3|m>>>29;r=s^t;e=g<<3|f>>>29;d=f<<3;c:{if((n|0)==(p|0)){break c}f=p-n|0;if(f>>>0>127){b=0;c=0;e=0;d=1;break c}Pa(j- -64|0,d,e,b,c,128-f|0);Gb(j+48|0,d,e,b,c,f);b=J[j+56>>2];c=J[j+60>>2];e=J[j+52>>2];d=J[j+48>>2]|(J[j+64>>2]|J[j+72>>2]|(J[j+68>>2]|J[j+76>>2]))!=0}m=d;k=e;n=h;q=i|524288;e=o<<3|l>>>29;o=l<<3;l=e;d:{if((r|0)<0){f=0;g=0;h=0;i=0;if(!(m^o|b^n|(k^l|c^q))){break a}d=o-m|0;e=l-((m>>>0>o>>>0)+k|0)|0;f=n-b|0;g=(k|0)==(l|0)&m>>>0>o>>>0|k>>>0>l>>>0;h=f-g|0;b=(q-((b>>>0>n>>>0)+c|0)|0)-(f>>>0<g>>>0)|0;i=b;if(b>>>0>524287){break d}b=!(h|i);f=b;g=b?d:h;b=b<<6;c=b;f=S(f?e:i);b=b+((f|0)==32?S(g)+32|0:f)|0;b=b-12|0;Pa(j+32|0,d,e,h,i,b);p=p-b|0;h=J[j+40>>2];i=J[j+44>>2];d=J[j+32>>2];e=J[j+36>>2];break d}e=k+l|0;d=m+o|0;e=d>>>0<o>>>0?e+1|0:e;f=(k|0)==(e|0)&d>>>0<m>>>0|e>>>0<k>>>0;k=c+q|0;b=b+n|0;k=b>>>0<n>>>0?k+1|0:k;h=b+f|0;i=h>>>0<b>>>0?k+1|0:k;if(!(i&1048576)){break d}d=m&1|((e&1)<<31|d>>>1);e=h<<31|e>>>1;p=p+1|0;h=(i&1)<<31|h>>>1;i=i>>>1|0}c=0;l=s&-2147483648;if((p|0)>=32767){h=c;i=l|2147418112;f=0;g=0;break a}n=0;e:{if((p|0)>0){n=p;break e}Pa(j+16|0,d,e,h,i,p+127|0);Gb(j,d,e,h,i,1-p|0);d=J[j>>2]|(J[j+16>>2]|J[j+24>>2]|(J[j+20>>2]|J[j+28>>2]))!=0;e=J[j+4>>2];h=J[j+8>>2];i=J[j+12>>2]}o=d&7;d=(e&7)<<29|d>>>3;f=(o>>>0>4)+d|0;b=h<<29|e>>>3;g=d>>>0>f>>>0?b+1|0:b;d=(b|0)==(g|0)&d>>>0>f>>>0|b>>>0>g>>>0;b=c|((i&7)<<29|h>>>3);h=d+b|0;i=l|(i>>>3&65535|n<<16);i=b>>>0>h>>>0?i+1|0:i;f:{if((o|0)==4){b=0;k=g+b|0;d=f;c=f&1;f=f+c|0;g=d>>>0>f>>>0?k+1|0:k;b=(b|0)==(g|0)&c>>>0>f>>>0|b>>>0>g>>>0;h=b+h|0;i=b>>>0>h>>>0?i+1|0:i;break f}if(!o){break a}}}J[a>>2]=f;J[a+4>>2]=g;J[a+8>>2]=h;J[a+12>>2]=i;ba=j+112|0}function na(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=J[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=J[d>>2];d=d-b|0;if(d>>>0<M[4853]){break a}a=a+b|0;if(J[4854]!=(d|0)){if(b>>>0<=255){e=J[d+8>>2];b=b>>>3|0;c=J[d+12>>2];if((c|0)==(e|0)){i=19396,j=J[4849]&Ll(b),J[i>>2]=j;break b}J[e+12>>2]=c;J[c+8>>2]=e;break b}h=J[d+24>>2];b=J[d+12>>2];c:{if((d|0)!=(b|0)){c=J[d+8>>2];J[c+12>>2]=b;J[b+8>>2]=c;break c}d:{e=d+20|0;c=J[e>>2];if(c){break d}e=d+16|0;c=J[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=J[e>>2];if(c){continue}e=b+16|0;c=J[b+16>>2];if(c){continue}break}J[g>>2]=0}if(!h){break b}e=J[d+28>>2];c=(e<<2)+19700|0;e:{if(J[c>>2]==(d|0)){J[c>>2]=b;if(b){break e}i=19400,j=J[4850]&Ll(e),J[i>>2]=j;break b}J[h+(J[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}J[b+24>>2]=h;c=J[d+16>>2];if(c){J[b+16>>2]=c;J[c+24>>2]=b}c=J[d+20>>2];if(!c){break b}J[b+20>>2]=c;J[c+24>>2]=b;break b}b=J[f+4>>2];if((b&3)!=3){break b}J[4851]=a;J[f+4>>2]=b&-2;J[d+4>>2]=a|1;J[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=J[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(J[4855]==(f|0)){J[4855]=d;a=J[4852]+a|0;J[4852]=a;J[d+4>>2]=a|1;if(J[4854]!=(d|0)){break a}J[4851]=0;J[4854]=0;return}if(J[4854]==(f|0)){J[4854]=d;a=J[4851]+a|0;J[4851]=a;J[d+4>>2]=a|1;J[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=J[f+8>>2];b=b>>>3|0;c=J[f+12>>2];if((c|0)==(e|0)){i=19396,j=J[4849]&Ll(b),J[i>>2]=j;break g}J[e+12>>2]=c;J[c+8>>2]=e;break g}h=J[f+24>>2];b=J[f+12>>2];h:{if((f|0)!=(b|0)){c=J[f+8>>2];J[c+12>>2]=b;J[b+8>>2]=c;break h}i:{e=f+20|0;c=J[e>>2];if(c){break i}e=f+16|0;c=J[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=J[e>>2];if(c){continue}e=b+16|0;c=J[b+16>>2];if(c){continue}break}J[g>>2]=0}if(!h){break g}e=J[f+28>>2];c=(e<<2)+19700|0;j:{if(J[c>>2]==(f|0)){J[c>>2]=b;if(b){break j}i=19400,j=J[4850]&Ll(e),J[i>>2]=j;break g}J[h+(J[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}J[b+24>>2]=h;c=J[f+16>>2];if(c){J[b+16>>2]=c;J[c+24>>2]=b}c=J[f+20>>2];if(!c){break g}J[b+20>>2]=c;J[c+24>>2]=b}J[d+4>>2]=a|1;J[a+d>>2]=a;if(J[4854]!=(d|0)){break f}J[4851]=a;return}J[f+4>>2]=b&-2;J[d+4>>2]=a|1;J[a+d>>2]=a}if(a>>>0<=255){b=(a&-8)+19436|0;c=J[4849];a=1<<(a>>>3);k:{if(!(c&a)){J[4849]=a|c;a=b;break k}a=J[b+8>>2]}J[b+8>>2]=d;J[a+12>>2]=d;J[d+12>>2]=b;J[d+8>>2]=a;return}e=31;if(a>>>0<=16777215){b=S(a>>>8|0);e=((a>>>38-b&1)-(b<<1)|0)+62|0}J[d+28>>2]=e;J[d+16>>2]=0;J[d+20>>2]=0;g=(e<<2)+19700|0;l:{m:{c=J[4850];b=1<<e;n:{if(!(c&b)){J[4850]=b|c;J[g>>2]=d;J[d+24>>2]=g;break n}e=a<<((e|0)!=31?25-(e>>>1|0)|0:0);b=J[g>>2];while(1){c=b;if((J[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=J[g+16>>2];if(b){continue}break}J[g+16>>2]=d;J[d+24>>2]=c}J[d+12>>2]=d;J[d+8>>2]=d;break l}a=J[c+8>>2];J[a+12>>2]=d;J[c+8>>2]=d;J[d+24>>2]=0;J[d+12>>2]=c;J[d+8>>2]=a}a=J[4857]-1|0;J[4857]=a?a:-1}}function xk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=ba-48|0;ba=k;d=J[a+8>>2];if(d-2>>>0<=28){J[a+76>>2]=d;e=-1<<d;d=-2-e|0;J[a+84>>2]=d;J[a+80>>2]=e^-1;J[a+92>>2]=(d|0)/2;N[a+88>>2]=Q(2)/Q(d|0)}J[a+52>>2]=f;o=a+96|0;za(o);d=J[a+40>>2];e=J[d>>2];d=J[d+4>>2];J[k+16>>2]=0;J[k+8>>2]=0;J[k+12>>2]=0;a:{d=d-e|0;if((d|0)>0){p=a+8|0;q=a+44|0;d=d>>>2|0;r=d>>>0<=1?1:d;s=c+4|0;while(1){e=J[a+40>>2];d=J[e>>2];if(J[e+4>>2]-d>>2>>>0<=n>>>0){break a}Tc(q,J[d+(n<<2)>>2],k+8|0);f=J[k+12>>2];d=f>>31;i=J[k+8>>2];e=i>>31;g=(d^f)-d+((e^i)-e)|0;l=J[k+16>>2];d=l>>31;e=(d^l)-d|0;d=0;m=e;e=e+g|0;d=m>>>0>e>>>0?1:d;b:{if(!(d|e)){j=J[a+92>>2];g=j;break b}j=J[a+92>>2];g=j>>31;f=Il(Hl(j,g,f,f>>31),ca,e,d);h=f>>31;g=Il(Hl(j,g,i,i>>31),ca,e,d);d=g>>31;d=(f^h)-h+((d^g)-d)|0;l=(l|0)<0?d-j|0:j-d|0}c:{if((g|0)>=0){i=f+j|0;h=j+l|0;break c}d:{if((f|0)<0){d=l>>31;i=(d^l)-d|0;break d}d=l>>31;i=J[a+84>>2]+(d-(d^l)|0)|0}if((l|0)<0){d=f>>31;h=(d^f)-d|0;break c}d=f>>31;h=J[a+84>>2]+(d-(d^f)|0)|0}d=J[a+84>>2];m=d;e=d;e:{if(!(h|i)){break e}if(!((d|0)!=(h|0)|i)){m=h;e=h;break e}if(!((d|0)!=(i|0)|h)){m=i;e=i;break e}if(!((h|0)<=(j|0)|i)){m=(j<<1)-h|0;e=0;break e}if(!((d|0)!=(i|0)|(h|0)>=(j|0))){m=(j<<1)-h|0;e=i;break e}if(!((d|0)!=(h|0)|(j|0)<=(i|0))){m=h;e=(j<<1)-i|0;break e}if(h){m=h;e=i;break e}m=0;e=i;if((e|0)<=(j|0)){break e}e=(j<<1)-i|0}i=e;J[k+16>>2]=0-l;J[k+12>>2]=0-f;J[k+8>>2]=0-g;f:{if((g|0)<=0){g=j-l|0;e=j-f|0;break f}e=f>>31;e=(e^f)-e|0;g=(l|0)>0?e:d-e|0;e=l>>31;e=(e^l)-e|0;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(j|0)|e)){g=(j<<1)-g|0;d=0;break g}if(!((g|0)>=(j|0)|f)){g=(j<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(j|0))){g=d;d=(j<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(j|0)){d=e;break g}d=(j<<1)-e|0}e=(n<<3)+b|0;f=J[e>>2];h=J[e+4>>2];J[k+28>>2]=m;J[k+24>>2]=i;J[k+32>>2]=f;J[k+36>>2]=h;i=k+40|0;h=k+32|0;m=k+24|0;Ya(i,p,h,m);f=J[k+44>>2];l=J[k+40>>2];j=J[e>>2];e=J[e+4>>2];J[k+28>>2]=g;J[k+24>>2]=d;J[k+32>>2]=j;J[k+36>>2]=e;Ya(i,p,h,m);d=J[k+44>>2];g=J[k+40>>2];e=J[a+92>>2];h:{if((e|0)<(l|0)){l=l-J[a+80>>2]|0;break h}if((0-e|0)<=(l|0)){break h}l=J[a+80>>2]+l|0}i:{if((e|0)<(f|0)){f=f-J[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=J[a+80>>2]+f|0}j:{if((e|0)<(g|0)){g=g-J[a+80>>2]|0;break j}if((0-e|0)<=(g|0)){break j}g=J[a+80>>2]+g|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-J[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=J[a+80>>2]+d|0}e=f>>31;e=(e^f)-e|0;h=l>>31;h=(h^l)-h|0;m=h>>>0>(e^2147483647)>>>0?2147483647:e+h|0;e=d>>31;e=(e^d)-e|0;h=g>>31;h=(h^g)-h|0;e=m>>>0>=(h>>>0>(e^2147483647)>>>0?2147483647:e+h|0)>>>0;Ca(o,e);i=i<<2;g=e?g:l;J[i+c>>2]=(J[a+80>>2]&g>>31)+g;d=e?d:f;J[i+s>>2]=(J[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)!=(n|0)){continue}break}}ba=k+48|0;return 1}ra();B()}function nk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=ba-48|0;ba=k;d=J[a+8>>2];if(d-2>>>0<=28){J[a+76>>2]=d;e=-1<<d;d=-2-e|0;J[a+84>>2]=d;J[a+80>>2]=e^-1;J[a+92>>2]=(d|0)/2;N[a+88>>2]=Q(2)/Q(d|0)}J[a+52>>2]=f;o=a+96|0;za(o);d=J[a+40>>2];e=J[d>>2];d=J[d+4>>2];J[k+16>>2]=0;J[k+8>>2]=0;J[k+12>>2]=0;a:{d=d-e|0;if((d|0)>0){p=a+8|0;q=a+44|0;d=d>>>2|0;r=d>>>0<=1?1:d;s=c+4|0;while(1){e=J[a+40>>2];d=J[e>>2];if(J[e+4>>2]-d>>2>>>0<=n>>>0){break a}Rc(q,J[d+(n<<2)>>2],k+8|0);f=J[k+12>>2];d=f>>31;i=J[k+8>>2];e=i>>31;g=(d^f)-d+((e^i)-e)|0;l=J[k+16>>2];d=l>>31;e=(d^l)-d|0;d=0;m=e;e=e+g|0;d=m>>>0>e>>>0?1:d;b:{if(!(d|e)){j=J[a+92>>2];g=j;break b}j=J[a+92>>2];g=j>>31;f=Il(Hl(j,g,f,f>>31),ca,e,d);h=f>>31;g=Il(Hl(j,g,i,i>>31),ca,e,d);d=g>>31;d=(f^h)-h+((d^g)-d)|0;l=(l|0)<0?d-j|0:j-d|0}c:{if((g|0)>=0){i=f+j|0;h=j+l|0;break c}d:{if((f|0)<0){d=l>>31;i=(d^l)-d|0;break d}d=l>>31;i=J[a+84>>2]+(d-(d^l)|0)|0}if((l|0)<0){d=f>>31;h=(d^f)-d|0;break c}d=f>>31;h=J[a+84>>2]+(d-(d^f)|0)|0}d=J[a+84>>2];m=d;e=d;e:{if(!(h|i)){break e}if(!((d|0)!=(h|0)|i)){m=h;e=h;break e}if(!((d|0)!=(i|0)|h)){m=i;e=i;break e}if(!((h|0)<=(j|0)|i)){m=(j<<1)-h|0;e=0;break e}if(!((d|0)!=(i|0)|(h|0)>=(j|0))){m=(j<<1)-h|0;e=i;break e}if(!((d|0)!=(h|0)|(j|0)<=(i|0))){m=h;e=(j<<1)-i|0;break e}if(h){m=h;e=i;break e}m=0;e=i;if((e|0)<=(j|0)){break e}e=(j<<1)-i|0}i=e;J[k+16>>2]=0-l;J[k+12>>2]=0-f;J[k+8>>2]=0-g;f:{if((g|0)<=0){g=j-l|0;e=j-f|0;break f}e=f>>31;e=(e^f)-e|0;g=(l|0)>0?e:d-e|0;e=l>>31;e=(e^l)-e|0;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(j|0)|e)){g=(j<<1)-g|0;d=0;break g}if(!((g|0)>=(j|0)|f)){g=(j<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(j|0))){g=d;d=(j<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(j|0)){d=e;break g}d=(j<<1)-e|0}e=(n<<3)+b|0;f=J[e>>2];h=J[e+4>>2];J[k+28>>2]=m;J[k+24>>2]=i;J[k+32>>2]=f;J[k+36>>2]=h;i=k+40|0;h=k+32|0;m=k+24|0;Ya(i,p,h,m);f=J[k+44>>2];l=J[k+40>>2];j=J[e>>2];e=J[e+4>>2];J[k+28>>2]=g;J[k+24>>2]=d;J[k+32>>2]=j;J[k+36>>2]=e;Ya(i,p,h,m);d=J[k+44>>2];g=J[k+40>>2];e=J[a+92>>2];h:{if((e|0)<(l|0)){l=l-J[a+80>>2]|0;break h}if((0-e|0)<=(l|0)){break h}l=J[a+80>>2]+l|0}i:{if((e|0)<(f|0)){f=f-J[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=J[a+80>>2]+f|0}j:{if((e|0)<(g|0)){g=g-J[a+80>>2]|0;break j}if((0-e|0)<=(g|0)){break j}g=J[a+80>>2]+g|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-J[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=J[a+80>>2]+d|0}e=f>>31;e=(e^f)-e|0;h=l>>31;h=(h^l)-h|0;m=h>>>0>(e^2147483647)>>>0?2147483647:e+h|0;e=d>>31;e=(e^d)-e|0;h=g>>31;h=(h^g)-h|0;e=m>>>0>=(h>>>0>(e^2147483647)>>>0?2147483647:e+h|0)>>>0;Ca(o,e);i=i<<2;g=e?g:l;J[i+c>>2]=(J[a+80>>2]&g>>31)+g;d=e?d:f;J[i+s>>2]=(J[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)!=(n|0)){continue}break}}ba=k+48|0;return 1}ra();B()}function Vf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}g=(b>>>0)/3|0;if(!(J[J[a+24>>2]+(g>>>3&268435452)>>2]>>>g&1)){e=J[a+48>>2];J[a+52>>2]=e;a:{if((e|0)!=J[a+56>>2]){J[e>>2]=b;J[a+52>>2]=e+4;break a}d=oa(4);J[d>>2]=b;c=d+4|0;J[a+56>>2]=c;J[a+52>>2]=c;J[a+48>>2]=d;if(!e){break a}na(e)}c=b+1|0;i=(c>>>0)%3|0?c:b-2|0;c=J[J[a+4>>2]+28>>2];k=J[(i<<2)+c>>2];if((k|0)==-1){return 0}e=(b-P(g,3)|0?-1:2)+b|0;j=J[c+(e<<2)>>2];if((j|0)==-1){return 0}b=J[a+36>>2];g=b+(k>>>3&536870908)|0;d=J[g>>2];c=1<<k;if(!(d&c)){J[g>>2]=c|d;mb(a+8|0,k,i);b=J[a+36>>2]}d=(j>>>3&536870908)+b|0;c=J[d>>2];b=1<<j;if(!(c&b)){J[d>>2]=b|c;mb(a+8|0,j,e)}f=J[a+52>>2];if((f|0)==J[a+48>>2]){return 1}k=a+8|0;while(1){b:{c:{f=f-4|0;b=J[f>>2];if((b|0)==-1){break c}c=(b>>>0)/3|0;g=J[a+24>>2]+(c>>>3&268435452)|0;d=J[g>>2];c=1<<c;if(d&c){break c}J[g>>2]=c|d;h=J[a+4>>2];c=J[J[h+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{e:{j=J[a+36>>2]+(c>>>3&536870908)|0;i=J[j>>2];e=1<<c;if(i&e){break e}f:{g=J[J[h+40>>2]+(c<<2)>>2];g:{if((g|0)==-1){break g}b=g+1|0;b=(b>>>0)%3|0?b:g-2|0;if((b|0)==-1|J[J[h>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}g=J[J[J[h+64>>2]+12>>2]+(b<<2)>>2];if((g|0)!=-1){break f}}J[j>>2]=e|i;mb(k,c,d);h=J[a+4>>2];break e}J[j>>2]=e|i;mb(k,c,d);h=J[a+4>>2];b=g+1|0;if((((b>>>0)%3|0?b:g-2|0)|0)==-1){break e}b=-1;h:{if((d|0)==-1){break h}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1|J[J[h>>2]+(c>>>3&536870908)>>2]>>>c&1){break h}b=J[J[J[h+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;d=1<<c;f=J[a+24>>2];e=c>>>5|0;j=J[f+(e<<2)>>2];break d}i:{j:{if((d|0)==-1){break j}c=-1;b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if(!((b|0)==-1|J[J[h>>2]+(b>>>3&536870908)>>2]>>>b&1)){c=J[J[J[h+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((d>>>0)%3|0){f=d-1|0;break l}f=d+2|0;b=-1;if((f|0)==-1){break k}}b=-1;if(J[J[h>>2]+(f>>>3&536870908)>>2]>>>f&1){break k}b=J[J[J[h+64>>2]+12>>2]+(f<<2)>>2]}g=(b|0)==-1;i=g?-1:(b>>>0)/3|0;if((c|0)!=-1){f=J[a+24>>2];d=(c>>>0)/3|0;e=d>>>5|0;j=J[f+(e<<2)>>2];d=1<<d;if(!(j&d)){break i}}if(g){break j}d=1<<i;f=J[a+24>>2];e=i>>>5|0;j=J[f+(e<<2)>>2];if(!(d&j)){break d}}f=J[a+52>>2]-4|0;J[a+52>>2]=f;break b}if(g){b=c;break d}if(J[(i>>>3&536870908)+f>>2]>>>i&1){b=c;break d}h=J[a+52>>2];J[h-4>>2]=b;if(J[a+56>>2]!=(h|0)){J[h>>2]=c;f=h+4|0;break c}m:{i=J[a+48>>2];e=h-i|0;g=e>>2;d=g+1|0;if(d>>>0<1073741824){b=e>>>1|0;e=e>>>0>=2147483644?1073741823:b>>>0>d>>>0?b:d;if(e){if(e>>>0>=1073741824){break m}d=oa(e<<2)}else{d=0}b=d+(g<<2)|0;J[b>>2]=c;f=b+4|0;if((h|0)!=(i|0)){while(1){b=b-4|0;h=h-4|0;J[b>>2]=J[h>>2];if((h|0)!=(i|0)){continue}break}}J[a+56>>2]=d+(e<<2);J[a+52>>2]=f;J[a+48>>2]=b;if(!i){break b}na(i);f=J[a+52>>2];break b}qa();B()}xa();B()}J[(e<<2)+f>>2]=d|j;c=J[J[h+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}J[a+52>>2]=f}if(J[a+48>>2]!=(f|0)){continue}break}}return 1}function cg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=J[a+8>>2];d=J[a+4>>2];if((h-d|0)/136>>>0>=b>>>0){a:{if(!b){break a}c=d;f=b&7;if(f){while(1){Ra(c);c=c+136|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}d=P(b,136)+d|0;if((b-1&536870911)>>>0<7){break a}while(1){Ra(c);Ra(c+136|0);Ra(c+272|0);Ra(c+408|0);Ra(c+544|0);Ra(c+680|0);Ra(c+816|0);Ra(c+952|0);c=c+1088|0;if((c|0)!=(d|0)){continue}break}}J[a+4>>2]=d;return}b:{c:{d:{c=J[a>>2];f=(d-c|0)/136|0;g=f+b|0;if(g>>>0<31580642){d=(h-c|0)/136|0;c=d<<1;g=d>>>0>=15790320?31580641:c>>>0>g>>>0?c:g;if(g){if(g>>>0>=31580642){break d}i=oa(P(g,136))}d=P(f,136)+i|0;c=d;f=b&7;if(f){while(1){Ra(c);c=c+136|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}h=P(b,136)+d|0;if((b-1&536870911)>>>0>=7){while(1){Ra(c);Ra(c+136|0);Ra(c+272|0);Ra(c+408|0);Ra(c+544|0);Ra(c+680|0);Ra(c+816|0);Ra(c+952|0);c=c+1088|0;if((h|0)!=(c|0)){continue}break}}f=P(g,136)+i|0;c=J[a+4>>2];e=J[a>>2];if((c|0)==(e|0)){break c}while(1){d=d-136|0;c=c-136|0;J[d>>2]=J[c>>2];J[d+4>>2]=J[c+4>>2];J[d+8>>2]=J[c+8>>2];J[d+12>>2]=J[c+12>>2];J[c+12>>2]=0;J[c+4>>2]=0;J[c+8>>2]=0;J[d+16>>2]=J[c+16>>2];J[d+20>>2]=J[c+20>>2];J[d+24>>2]=J[c+24>>2];J[c+24>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;b=K[c+28|0];J[d+40>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;H[d+28|0]=b;J[d+32>>2]=J[c+32>>2];J[d+36>>2]=J[c+36>>2];J[d+40>>2]=J[c+40>>2];J[c+40>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;J[d+52>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;J[d+44>>2]=J[c+44>>2];J[d+48>>2]=J[c+48>>2];J[d+52>>2]=J[c+52>>2];J[c+52>>2]=0;J[c+44>>2]=0;J[c+48>>2]=0;b=d- -64|0;J[b>>2]=0;J[d+56>>2]=0;J[d+60>>2]=0;J[d+56>>2]=J[c+56>>2];J[d+60>>2]=J[c+60>>2];i=b;b=c- -64|0;J[i>>2]=J[b>>2];J[b>>2]=0;J[c+56>>2]=0;J[c+60>>2]=0;J[d+68>>2]=J[c+68>>2];b=J[c+72>>2];J[d+84>>2]=0;J[d+76>>2]=0;J[d+80>>2]=0;J[d+72>>2]=b;J[d+76>>2]=J[c+76>>2];J[d+80>>2]=J[c+80>>2];J[d+84>>2]=J[c+84>>2];J[c+84>>2]=0;J[c+76>>2]=0;J[c+80>>2]=0;J[d+96>>2]=0;J[d+88>>2]=0;J[d+92>>2]=0;J[d+88>>2]=J[c+88>>2];J[d+92>>2]=J[c+92>>2];J[d+96>>2]=J[c+96>>2];J[c+96>>2]=0;J[c+88>>2]=0;J[c+92>>2]=0;b=K[c+100|0];J[d+112>>2]=0;J[d+104>>2]=0;J[d+108>>2]=0;H[d+100|0]=b;J[d+104>>2]=J[c+104>>2];J[d+108>>2]=J[c+108>>2];J[d+112>>2]=J[c+112>>2];J[c+112>>2]=0;J[c+104>>2]=0;J[c+108>>2]=0;J[d+124>>2]=0;J[d+116>>2]=0;J[d+120>>2]=0;J[d+116>>2]=J[c+116>>2];J[d+120>>2]=J[c+120>>2];J[d+124>>2]=J[c+124>>2];J[c+124>>2]=0;J[c+116>>2]=0;J[c+120>>2]=0;J[d+128>>2]=J[c+128>>2];J[d+132>>2]=J[c+132>>2];if((c|0)!=(e|0)){continue}break}J[a+8>>2]=f;e=J[a+4>>2];J[a+4>>2]=h;c=J[a>>2];J[a>>2]=d;if((c|0)==(e|0)){break b}while(1){a=e-136|0;b=J[a+116>>2];if(b){J[e-16>>2]=b;na(b)}b=J[e-32>>2];if(b){J[e-28>>2]=b;na(b)}pc(e-132|0);e=a;if((a|0)!=(c|0)){continue}break}break b}qa();B()}xa();B()}J[a+8>>2]=f;J[a+4>>2]=h;J[a>>2]=d}if(c){na(c)}}function Qj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=ba+-64|0;ba=e;a:{b:{c:{d:{if(!K[a+288|0]){break d}c=1;h=da[J[J[a>>2]+40>>2]](a)|0;if((J[h+12>>2]-J[h+8>>2]|0)<=0){break d}kc(J[J[(da[J[J[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=J[c+J[J[(da[J[J[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=J[c+J[J[(da[J[J[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;c=J[a+176>>2];d=J[a+172>>2];e:{if((c|0)==(d|0)){break e}c=(c-d|0)/136|0;g=c>>>0<=1?1:c;c=0;while(1){if(J[d+P(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{if(!K[a+288|0]){c=J[i+56>>2];if(!(!f|!c)){if(!K[(d+P(h,136)|0)+28|0]|(f|0)!=1){break i}break h}if(c){break h}}c=a+40|0;break g}d=d+P(h,136)|0;c=J[d+56>>2];f=J[d+60>>2];J[e>>2]=-1;wb(d+116|0,f-c>>2,e);c=oa(80);f=J[a+8>>2];J[c+12>>2]=0;J[c+16>>2]=0;J[c>>2]=11984;J[c+4>>2]=0;J[c+20>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;J[c+76>>2]=0;i=d+104|0;J[c+72>>2]=i;J[c+68>>2]=f;J[c- -64>>2]=0;g=c+56|0;J[g>>2]=0;J[g+4>>2]=0;J[c+8>>2]=10876;J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;j=e+24|0;J[j>>2]=0;J[j+4>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+56>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;J[e+48>>2]=0;J[e+52>>2]=0;J[e>>2]=10876;l=d+4|0;J[e+4>>2]=l;d=J[d+68>>2];k=J[d>>2];d=J[d+4>>2];H[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Na(j,k,d);j=J[e+4>>2];k=J[j+56>>2];j=J[j+52>>2];H[e+63|0]=0;Na(e+36|0,k-j>>2,d);J[e+20>>2]=c;J[e+16>>2]=f;J[e+12>>2]=i;J[e+8>>2]=l;J[c+76>>2]=a+72;Kc(c+8|0,e);Rb(g,J[e+48>>2],J[e+52>>2]);J[e>>2]=10876;d=J[e+48>>2];if(d){J[e+52>>2]=d;na(d)}J[e>>2]=11128;d=J[e+36>>2];if(d){na(d)}d=J[e+24>>2];if(d){na(d)}d=0;break f}c=J[a+12>>2];f=J[c+28>>2];c=J[c+24>>2];J[e>>2]=-1;g=d;d=P(h,136);g=g+d|0;wb(g+116|0,f-c>>2,e);H[(d+J[a+172>>2]|0)+100|0]=0;c=g+104|0}j:{k:{if(cb(J[(da[J[J[a>>2]+40>>2]](a)|0)+48>>2])|J[i+56>>2]){break k}if(K[a+288|0]){d=J[a+8>>2];if((J[d+12>>2]-J[d+8>>2]|0)>4){break k}}d=1;c=ng(a,c);break j}d=0;c=mg(a,c)}if(c){break f}c=0;break c}J[((h|0)==-1?a+68|0:(J[a+172>>2]+P(h,136)|0)+132|0)>>2]=d;i=pe(oa(76),c,b);b=J[a+188>>2];l:{if((b|0)!=J[a+192>>2]){J[b>>2]=h;J[a+188>>2]=b+4;break l}c=b;b=J[a+184>>2];c=c-b|0;g=c>>2;d=g+1|0;if(d>>>0>=1073741824){break b}f=c>>>1|0;d=c>>>0>=2147483644?1073741823:d>>>0<f>>>0?f:d;if(d){if(d>>>0>=1073741824){break a}f=oa(d<<2)}else{f=0}g=f+(g<<2)|0;J[g>>2]=h;c=ta(f,b,c);J[a+192>>2]=c+(d<<2);J[a+188>>2]=g+4;J[a+184>>2]=c;if(!b){break l}na(b)}a=da[J[J[a>>2]+40>>2]](a)|0;J[e>>2]=i;b=J[a+12>>2];m:{if(b>>>0<M[a+16>>2]){J[e>>2]=0;J[b>>2]=i;J[a+12>>2]=b+4;break m}Ic(a+8|0,e)}a=J[e>>2];J[e>>2]=0;if(a){da[J[J[a>>2]+4>>2]](a)}c=1}ba=e- -64|0;return c|0}qa();B()}xa();B()}function Lj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=ba+-64|0;ba=e;a:{b:{c:{d:{if(!K[a+352|0]){break d}c=1;h=da[J[J[a>>2]+40>>2]](a)|0;if((J[h+12>>2]-J[h+8>>2]|0)<=0){break d}kc(J[J[(da[J[J[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=J[c+J[J[(da[J[J[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=J[c+J[J[(da[J[J[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;c=J[a+176>>2];d=J[a+172>>2];e:{if((c|0)==(d|0)){break e}c=(c-d|0)/136|0;g=c>>>0<=1?1:c;c=0;while(1){if(J[d+P(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{if(!K[a+352|0]){c=J[i+56>>2];if(!(!f|!c)){if(!K[(d+P(h,136)|0)+28|0]|(f|0)!=1){break i}break h}if(c){break h}}c=a+40|0;break g}d=d+P(h,136)|0;c=J[d+56>>2];f=J[d+60>>2];J[e>>2]=-1;wb(d+116|0,f-c>>2,e);c=oa(80);f=J[a+8>>2];J[c+12>>2]=0;J[c+16>>2]=0;J[c>>2]=11984;J[c+4>>2]=0;J[c+20>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;J[c+40>>2]=0;J[c+44>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;J[c+76>>2]=0;i=d+104|0;J[c+72>>2]=i;J[c+68>>2]=f;J[c- -64>>2]=0;g=c+56|0;J[g>>2]=0;J[g+4>>2]=0;J[c+8>>2]=10876;J[e+40>>2]=0;J[e+44>>2]=0;J[e+32>>2]=0;J[e+36>>2]=0;j=e+24|0;J[j>>2]=0;J[j+4>>2]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+56>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;J[e+48>>2]=0;J[e+52>>2]=0;J[e>>2]=10876;l=d+4|0;J[e+4>>2]=l;d=J[d+68>>2];k=J[d>>2];d=J[d+4>>2];H[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Na(j,k,d);j=J[e+4>>2];k=J[j+56>>2];j=J[j+52>>2];H[e+63|0]=0;Na(e+36|0,k-j>>2,d);J[e+20>>2]=c;J[e+16>>2]=f;J[e+12>>2]=i;J[e+8>>2]=l;J[c+76>>2]=a+72;Kc(c+8|0,e);Rb(g,J[e+48>>2],J[e+52>>2]);J[e>>2]=10876;d=J[e+48>>2];if(d){J[e+52>>2]=d;na(d)}J[e>>2]=11128;d=J[e+36>>2];if(d){na(d)}d=J[e+24>>2];if(d){na(d)}d=0;break f}c=J[a+12>>2];f=J[c+28>>2];c=J[c+24>>2];J[e>>2]=-1;g=d;d=P(h,136);g=g+d|0;wb(g+116|0,f-c>>2,e);H[(d+J[a+172>>2]|0)+100|0]=0;c=g+104|0}j:{k:{if(cb(J[(da[J[J[a>>2]+40>>2]](a)|0)+48>>2])|J[i+56>>2]){break k}if(K[a+352|0]){d=J[a+8>>2];if((J[d+12>>2]-J[d+8>>2]|0)>4){break k}}d=1;c=ng(a,c);break j}d=0;c=mg(a,c)}if(c){break f}c=0;break c}J[((h|0)==-1?a+68|0:(J[a+172>>2]+P(h,136)|0)+132|0)>>2]=d;i=pe(oa(76),c,b);b=J[a+188>>2];l:{if((b|0)!=J[a+192>>2]){J[b>>2]=h;J[a+188>>2]=b+4;break l}c=b;b=J[a+184>>2];c=c-b|0;g=c>>2;d=g+1|0;if(d>>>0>=1073741824){break b}f=c>>>1|0;d=c>>>0>=2147483644?1073741823:d>>>0<f>>>0?f:d;if(d){if(d>>>0>=1073741824){break a}f=oa(d<<2)}else{f=0}g=f+(g<<2)|0;J[g>>2]=h;c=ta(f,b,c);J[a+192>>2]=c+(d<<2);J[a+188>>2]=g+4;J[a+184>>2]=c;if(!b){break l}na(b)}a=da[J[J[a>>2]+40>>2]](a)|0;J[e>>2]=i;b=J[a+12>>2];m:{if(b>>>0<M[a+16>>2]){J[e>>2]=0;J[b>>2]=i;J[a+12>>2]=b+4;break m}Ic(a+8|0,e)}a=J[e>>2];J[e>>2]=0;if(a){da[J[J[a>>2]+4>>2]](a)}c=1}ba=e- -64|0;return c|0}qa();B()}xa();B()}function oc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=ba-16|0;ba=j;J[a+124>>2]=J[a+124>>2]+1;h=-1;d=J[a+120>>2];c=-1;a:{if((d|0)==-1){break a}c=d+1|0;h=(c>>>0)%3|0?c:d-2|0;c=d-1|0;if((d>>>0)%3|0){break a}c=d+2|0}e=J[a+104>>2];f=J[a+92>>2];g=f+(h<<2)|0;k=e+(J[g>>2]<<2)|0;i=J[k>>2];b:{c:{switch(b|0){case 0:case 1:J[k>>2]=i-1;d=(J[(c<<2)+f>>2]<<2)+e|0;J[d>>2]=J[d>>2]-1;if((b|0)!=1){break b}g=0;d:{if((c|0)==-1){d=0;break d}d=0;c=J[J[J[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}while(1){e:{e=J[a+64>>2];if(da[J[J[e>>2]+36>>2]](e,(c>>>0)/3|0)|0){break e}d=d+1|0;e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;if((c|0)==-1){break e}c=J[J[J[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}}break}e=J[a+104>>2];f=J[a+92>>2]}J[(J[(J[a+120>>2]<<2)+f>>2]<<2)+e>>2]=d+1;f:{if((h|0)==-1){break f}c=J[J[J[a+88>>2]+12>>2]+(h<<2)>>2];if((c|0)==-1){break f}e=J[a+108>>2]-e>>2;while(1){f=J[a+64>>2];d=(c>>>0)/3|0;if(da[J[J[f>>2]+36>>2]](f,d)|0){break f}f=c+1|0;J[J[a+92>>2]+(((f>>>0)%3|0?f:c-2|0)<<2)>>2]=e;g=g+1|0;f=J[a+88>>2];g:{if((P(d,3)|0)!=(c|0)){c=c-1|0;break g}c=c+2|0;if((c|0)==-1){break f}}c=J[J[f+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}break}}J[j+12>>2]=g+1;h:{c=J[a+108>>2];f=J[a+112>>2];if(c>>>0<f>>>0){J[c>>2]=J[j+12>>2];J[a+108>>2]=c+4;break h}i:{d=c;c=J[a+104>>2];d=d-c|0;h=d>>2;e=h+1|0;if(e>>>0<1073741824){f=f-c|0;g=f>>>1|0;e=f>>>0>=2147483644?1073741823:e>>>0<g>>>0?g:e;if(e){if(e>>>0>=1073741824){break i}f=oa(e<<2)}else{f=0}h=f+(h<<2)|0;J[h>>2]=J[j+12>>2];g=e<<2;e=ta(f,c,d);J[a+112>>2]=g+e;J[a+108>>2]=h+4;J[a+104>>2]=e;if(c){na(c)}break h}qa();B()}xa();B()}break b;case 5:d=(J[(d<<2)+f>>2]<<2)+e|0;J[d>>2]=J[d>>2]-1;d=(J[g>>2]<<2)+e|0;J[d>>2]=J[d>>2]-1;c=(J[(c<<2)+f>>2]<<2)+e|0;J[c>>2]=J[c>>2]-2;break b;case 3:d=(J[(d<<2)+f>>2]<<2)+e|0;J[d>>2]=J[d>>2]-1;d=(J[g>>2]<<2)+e|0;J[d>>2]=J[d>>2]-2;c=(J[(c<<2)+f>>2]<<2)+e|0;J[c>>2]=J[c>>2]-1;break b;case 7:break c;default:break b}}d=(J[(d<<2)+f>>2]<<2)+e|0;J[d>>2]=J[d>>2]-2;d=(J[g>>2]<<2)+e|0;J[d>>2]=J[d>>2]-2;c=(J[(c<<2)+f>>2]<<2)+e|0;J[c>>2]=J[c>>2]-2}j:{k:{c=J[a+116>>2];l:{if((c|0)==-1){break l}h=J[(c<<2)+11184>>2];c=J[a+132>>2];d=(c|0)>(i|0)?i:c;c=J[a+128>>2];c=J[a+136>>2]+P((c|0)<=(i|0)?d-c|0:0,12)|0;e=J[c+4>>2];d=J[c+8>>2];if(e>>>0<d>>>0){J[e>>2]=h;J[c+4>>2]=e+4;break l}f=e;e=J[c>>2];i=f-e|0;g=i>>2;f=g+1|0;if(f>>>0>=1073741824){break k}d=d-e|0;k=d>>>1|0;f=d>>>0>=2147483644?1073741823:f>>>0<k>>>0?k:f;if(f){if(f>>>0>=1073741824){break j}d=oa(f<<2)}else{d=0}g=d+(g<<2)|0;J[g>>2]=h;d=ta(d,e,i);J[c>>2]=d;J[c+4>>2]=g+4;J[c+8>>2]=d+(f<<2);if(!e){break l}na(e)}J[a+116>>2]=b;ba=j+16|0;return}qa();B()}xa();B()}function Wf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}g=(b>>>0)/3|0;if(!(J[J[a+24>>2]+(g>>>3&268435452)>>2]>>>g&1)){f=J[a+48>>2];J[a+52>>2]=f;a:{if((f|0)!=J[a+56>>2]){J[f>>2]=b;J[a+52>>2]=f+4;break a}d=oa(4);J[d>>2]=b;c=d+4|0;J[a+56>>2]=c;J[a+52>>2]=c;J[a+48>>2]=d;if(!f){break a}na(f)}e=-1;d=J[a+4>>2];c=b+1|0;i=(c>>>0)%3|0?c:b-2|0;if((i|0)!=-1){e=J[J[d>>2]+(i<<2)>>2]}b:{h=b-P(g,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}j=J[J[d>>2]+(c<<2)>>2];if((j|0)==-1){return 0}c=J[a+36>>2];f=c+(e>>>3&536870908)|0;g=J[f>>2];d=1<<e;if(!(g&d)){J[f>>2]=d|g;mb(a+8|0,e,i);c=J[a+36>>2]}g=(j>>>3&536870908)+c|0;d=J[g>>2];c=1<<j;if(!(d&c)){J[g>>2]=c|d;mb(a+8|0,j,(h?-1:2)+b|0)}c=J[a+52>>2];if((c|0)==J[a+48>>2]){return 1}j=a+8|0;while(1){c:{d:{c=c-4|0;b=J[c>>2];if((b|0)==-1){break d}d=(b>>>0)/3|0;f=J[a+24>>2]+(d>>>3&268435452)|0;g=J[f>>2];d=1<<d;if(g&d){break d}J[f>>2]=d|g;while(1){i=J[a+4>>2];e=J[J[i>>2]+(b<<2)>>2];if((e|0)==-1){return 0}e:{f:{h=J[a+36>>2]+(e>>>3&536870908)|0;f=J[h>>2];g=1<<e;if(f&g){break f}g:{d=J[J[i+24>>2]+(e<<2)>>2];h:{if((d|0)==-1){break h}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break h}d=J[J[i+12>>2]+(c<<2)>>2];if((d|0)!=-1){break g}}J[h>>2]=f|g;mb(j,e,b);break f}J[h>>2]=f|g;mb(j,e,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}c=b-2|0;d=b+1|0;b=-1;c=(d>>>0)%3|0?d:c;if((c|0)!=-1){b=J[J[J[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;d=1<<c;e=J[a+24>>2];f=c>>>5|0;i=J[e+(f<<2)>>2];break e}c=-1;g=J[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=J[J[g+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=J[J[g+12>>2]+(e<<2)>>2]}g=(b|0)==-1;h=g?-1:(b>>>0)/3|0;k:{if((c|0)!=-1){e=J[a+24>>2];d=(c>>>0)/3|0;f=d>>>5|0;i=J[e+(f<<2)>>2];d=1<<d;if(!(i&d)){break k}}if(!g){d=1<<h;e=J[a+24>>2];f=h>>>5|0;i=J[e+(f<<2)>>2];if(!(d&i)){break e}}c=J[a+52>>2]-4|0;J[a+52>>2]=c;break c}if(g){b=c;break e}if(J[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break e}e=J[a+52>>2];J[e-4>>2]=b;if(J[a+56>>2]!=(e|0)){J[e>>2]=c;c=e+4|0;break d}l:{h=J[a+48>>2];f=e-h|0;g=f>>2;d=g+1|0;if(d>>>0<1073741824){b=f>>>1|0;f=f>>>0>=2147483644?1073741823:b>>>0>d>>>0?b:d;if(f){if(f>>>0>=1073741824){break l}d=oa(f<<2)}else{d=0}b=d+(g<<2)|0;J[b>>2]=c;c=b+4|0;if((e|0)!=(h|0)){while(1){b=b-4|0;e=e-4|0;J[b>>2]=J[e>>2];if((e|0)!=(h|0)){continue}break}}J[a+56>>2]=d+(f<<2);J[a+52>>2]=c;J[a+48>>2]=b;if(!h){break c}na(h);c=J[a+52>>2];break c}qa();B()}xa();B()}J[(f<<2)+e>>2]=d|i;if((b|0)!=-1){continue}break}return 0}J[a+52>>2]=c}if(J[a+48>>2]!=(c|0)){continue}break}}return 1}function Mg(a,b){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;d=a+4|0;if((d|0)!=(b|0)){ic(d,J[b>>2],b+4|0);f=J[b+12>>2];k=b+16|0;d=0;h=a+16|0;a:{if(!J[h+8>>2]){break a}e=J[h>>2];j=h+4|0;J[h>>2]=j;J[J[h+4>>2]+8>>2]=0;J[h+4>>2]=0;J[h+8>>2]=0;c=J[e+4>>2];g=c?c:e;if(!g){nb(h,g);break a}e=J[g+8>>2];b:{if(!e){break b}c=J[e>>2];if((g|0)==(c|0)){J[e>>2]=0;d=e;c=J[e+4>>2];if(!c){break b}while(1){d=c;c=J[c>>2];if(c){continue}c=J[d+4>>2];if(c){continue}break}break b}J[e+4>>2]=0;d=e;if(!c){break b}while(1){d=c;c=J[c>>2];if(c){continue}c=J[d+4>>2];if(c){continue}break}}c:{if((f|0)==(k|0)){i=g;break c}c=f;while(1){i=d;J[g+16>>2]=J[c+16>>2];if((c|0)!=(g|0)){ic(g+20|0,J[c+20>>2],c+24|0)}f=j;d=f;e=J[d>>2];d:{if(!e){break d}l=J[g+16>>2];while(1){f=e;if((l|0)<J[e+16>>2]){d=f;e=J[d>>2];if(e){continue}break d}e=J[f+4>>2];if(e){continue}break}d=f+4|0}J[g+8>>2]=f;J[g>>2]=0;J[g+4>>2]=0;J[d>>2]=g;f=J[J[h>>2]>>2];if(f){J[h>>2]=f;g=J[d>>2]}sb(J[h+4>>2],g);J[h+8>>2]=J[h+8>>2]+1;d=0;e:{if(!i){break e}e=J[i+8>>2];if(!e){break e}f=J[e>>2];if((i|0)==(f|0)){J[e>>2]=0;d=e;f=J[e+4>>2];if(!f){break e}while(1){d=f;f=J[d>>2];if(f){continue}f=J[d+4>>2];if(f){continue}break}break e}J[e+4>>2]=0;d=e;if(!f){break e}while(1){d=f;f=J[d>>2];if(f){continue}f=J[d+4>>2];if(f){continue}break}}e=J[c+4>>2];f:{if(e){while(1){f=e;e=J[e>>2];if(e){continue}break f}}while(1){f=J[c+8>>2];e=J[f>>2]!=(c|0);c=f;if(e){continue}break}}if(!i){break c}g=i;c=f;if((k|0)!=(c|0)){continue}break}}nb(h,i);if(!d){break a}while(1){c=J[d+8>>2];if(c){d=c;continue}break}nb(h,d)}if((f|0)!=(k|0)){while(1){n=ba-16|0;ba=n;i=oa(32);g=f+16|0;d=J[g>>2];m=i+24|0;J[m>>2]=0;J[m+4>>2]=0;J[i+16>>2]=d;l=i+20|0;J[l>>2]=m;e=h+4|0;c=J[g+4>>2];j=g+8|0;if((c|0)!=(j|0)){while(1){d=c+16|0;Qg(n+8|0,l,m,d,d);g=J[c+4>>2];g:{if(g){while(1){d=g;g=J[d>>2];if(g){continue}break g}}while(1){d=J[c+8>>2];g=J[d>>2]!=(c|0);c=d;if(g){continue}break}}c=d;if((j|0)!=(c|0)){continue}break}}c=e;d=J[c>>2];h:{if(!d){break h}g=J[i+16>>2];while(1){e=d;if((g|0)<J[e+16>>2]){c=e;d=J[c>>2];if(d){continue}break h}d=J[e+4>>2];if(d){continue}break}c=e+4|0}J[i+8>>2]=e;J[i>>2]=0;J[i+4>>2]=0;J[c>>2]=i;d=i;e=J[J[h>>2]>>2];if(e){J[h>>2]=e;d=J[c>>2]}sb(J[h+4>>2],d);J[h+8>>2]=J[h+8>>2]+1;ba=n+16|0;e=J[f+4>>2];i:{if(e){while(1){c=e;e=J[c>>2];if(e){continue}break i}}while(1){c=J[f+8>>2];d=J[c>>2]!=(f|0);f=c;if(d){continue}break}}f=c;if((c|0)!=(k|0)){continue}break}}ic(a+28|0,J[b+24>>2],b+28|0)}}function nl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=ba-16|0;ba=m;f=J[a+4>>2];a:{b:{if(f){if(da[J[J[a>>2]+52>>2]](a,b,J[J[f+4>>2]+80>>2])|0){break b}break a}if(!(da[J[J[a>>2]+52>>2]](a,b,0)|0)){break a}}n=1;if(!K[a+28|0]){break a}d=J[a+32>>2];i=J[a+8>>2];c=J[i+80>>2];f=0;J[m+8>>2]=0;J[m>>2]=0;J[m+4>>2]=0;c:{d:{e:{if(c){if(c>>>0>=1073741824){break e}c=c<<2;f=oa(c);pa(f,0,c)}e=J[b+4>>2];c=J[b>>2];f:{if((e|0)==(c|0)){break f}b=e-c>>2;if(K[i+84|0]){e=b>>>0<=1?1:b;h=e&3;b=0;if(e-1>>>0>=3){j=e&-4;e=0;while(1){J[(J[c+(b<<2)>>2]<<2)+f>>2]=b;k=b|1;J[(J[c+(k<<2)>>2]<<2)+f>>2]=k;k=b|2;J[(J[c+(k<<2)>>2]<<2)+f>>2]=k;k=b|3;J[(J[c+(k<<2)>>2]<<2)+f>>2]=k;b=b+4|0;e=e+4|0;if((j|0)!=(e|0)){continue}break}}if(!h){break f}while(1){J[(J[c+(b<<2)>>2]<<2)+f>>2]=b;b=b+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}break f}g=b>>>0<=1?1:b;j=g&3;h=J[i+68>>2];e=0;b=0;if(g-1>>>0>=3){k=g&-4;g=0;while(1){J[(J[h+(J[c+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;l=b|1;J[(J[h+(J[c+(l<<2)>>2]<<2)>>2]<<2)+f>>2]=l;l=b|2;J[(J[h+(J[c+(l<<2)>>2]<<2)>>2]<<2)+f>>2]=l;l=b|3;J[(J[h+(J[c+(l<<2)>>2]<<2)>>2]<<2)+f>>2]=l;b=b+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}if(!j){break f}while(1){J[(J[h+(J[c+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;b=b+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}b=J[a+4>>2];g:{if(!K[d+84|0]){break g}c=J[J[b+4>>2]+80>>2];H[d+84|0]=0;g=J[d+68>>2];e=J[d+72>>2]-g>>2;if(e>>>0<c>>>0){Ma(d+68|0,c-e|0,2736);b=J[a+4>>2];break g}if(c>>>0>=e>>>0){break g}J[d+72>>2]=g+(c<<2)}h=J[J[b+4>>2]+80>>2];if(!h){break d}c=J[d+68>>2];if(K[i+84|0]){a=0;b=0;if(h>>>0>=4){g=h&-4;e=0;while(1){d=b<<2;J[d+c>>2]=J[f+d>>2];i=d|4;J[i+c>>2]=J[f+i>>2];i=d|8;J[i+c>>2]=J[f+i>>2];d=d|12;J[d+c>>2]=J[f+d>>2];b=b+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}e=h&3;if(!e){break c}while(1){d=b<<2;J[d+c>>2]=J[f+d>>2];b=b+1|0;a=a+1|0;if((e|0)!=(a|0)){continue}break}break c}a=J[i+68>>2];e=0;b=0;if(h>>>0>=4){i=h&-4;g=0;while(1){d=b<<2;J[d+c>>2]=J[(J[a+d>>2]<<2)+f>>2];j=d|4;J[j+c>>2]=J[(J[a+j>>2]<<2)+f>>2];j=d|8;J[j+c>>2]=J[(J[a+j>>2]<<2)+f>>2];d=d|12;J[d+c>>2]=J[(J[a+d>>2]<<2)+f>>2];b=b+4|0;g=g+4|0;if((i|0)!=(g|0)){continue}break}}d=h&3;if(!d){break c}while(1){g=b<<2;J[g+c>>2]=J[(J[a+g>>2]<<2)+f>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}break c}qa();B()}if(!f){break a}}na(f)}ba=m+16|0;return n|0}function Pg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{c:{d:{e:{f:{i=a+4|0;g:{if((i|0)==(b|0)){break g}f=K[b+27|0];g=f<<24>>24<0;h=K[e+11|0];j=h<<24>>24;k=(j|0)<0;f=g?J[b+20>>2]:f;h=k?J[e+4>>2]:h;l=f>>>0<h>>>0;m=l?f:h;if(m){k=k?J[e>>2]:e;g=g?J[b+16>>2]:b+16|0;n=Ba(k,g,m);if(!n){if(f>>>0>h>>>0){break g}break f}if((n|0)>=0){break f}break g}if(f>>>0<=h>>>0){break e}}d=J[b>>2];h:{f=b;i:{if((f|0)==J[a>>2]){break i}j:{if(!d){a=b;while(1){f=J[a+8>>2];h=J[f>>2]==(a|0);a=f;if(h){continue}break}break j}a=d;while(1){f=a;a=J[f+4>>2];if(a){continue}break}}a=K[e+11|0];k=a<<24>>24;h=(k|0)<0;j=K[f+27|0];g=j<<24>>24<0;k:{a=h?J[e+4>>2]:a;j=g?J[f+20>>2]:j;l=a>>>0<j>>>0?a:j;if(l){h=Ba(g?J[f+16>>2]:f+16|0,h?J[e>>2]:e,l);if(h){break k}}if(a>>>0>j>>>0){break i}break h}if((h|0)>=0){break h}}if(!d){J[c>>2]=b;return b}J[c>>2]=f;return f+4|0}d=J[i>>2];if(!d){J[c>>2]=i;return i}e=(k|0)<0?J[e>>2]:e;b=i;while(1){f=d;d=K[f+27|0];i=d<<24>>24<0;d=i?J[f+20>>2]:d;h=d>>>0<a>>>0;l:{m:{n:{o:{g=h?d:a;p:{if(g){i=i?J[f+16>>2]:f+16|0;j=Ba(e,i,g);if(!j){if(a>>>0<d>>>0){break p}break o}if((j|0)>=0){break o}break p}if(a>>>0>=d>>>0){break n}}b=f;d=J[f>>2];if(d){continue}break b}d=Ba(i,e,g);if(d){break m}}if(h){break l}break b}if((d|0)>=0){break b}}b=f+4|0;d=J[f+4>>2];if(d){continue}break}break b}a=Ba(g,k,m);if(a){break d}}if(l){break c}break a}if((a|0)>=0){break a}}d=J[b+4>>2];q:{if(!d){a=b;while(1){f=J[a+8>>2];g=J[f>>2]!=(a|0);a=f;if(g){continue}break}break q}a=d;while(1){f=a;a=J[f>>2];if(a){continue}break}}r:{s:{if((f|0)==(i|0)){break s}g=K[f+27|0];a=g<<24>>24<0;t:{g=a?J[f+20>>2]:g;k=h>>>0>g>>>0?g:h;if(k){a=Ba((j|0)<0?J[e>>2]:e,a?J[f+16>>2]:f+16|0,k);if(a){break t}}if(h>>>0<g>>>0){break s}break r}if((a|0)>=0){break r}}if(!d){J[c>>2]=b;return b+4|0}J[c>>2]=f;return f}a=J[i>>2];if(!a){J[c>>2]=i;return i}d=(j|0)<0?J[e>>2]:e;b=i;while(1){f=a;a=K[f+27|0];e=a<<24>>24<0;a=e?J[f+20>>2]:a;i=a>>>0<h>>>0;u:{v:{w:{x:{g=i?a:h;y:{if(g){e=e?J[f+16>>2]:f+16|0;j=Ba(d,e,g);if(!j){if(a>>>0>h>>>0){break y}break x}if((j|0)>=0){break x}break y}if(a>>>0<=h>>>0){break w}}b=f;a=J[f>>2];if(a){continue}break b}a=Ba(e,d,g);if(a){break v}}if(i){break u}break b}if((a|0)>=0){break b}}b=f+4|0;a=J[f+4>>2];if(a){continue}break}}J[c>>2]=f;return b}J[c>>2]=b;J[d>>2]=b;return d}function Dc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{b:{d=b;g=J[b>>2];if(g){c=J[b+4>>2];if(!c){break b}while(1){d=c;c=J[c>>2];if(c){continue}break}}g=J[d+4>>2];if(g){break b}g=0;e=1;break a}J[g+8>>2]=J[d+8>>2];e=0}f=J[d+8>>2];c=J[f>>2];c:{if((d|0)==(c|0)){J[f>>2]=g;if((a|0)==(d|0)){c=0;a=g;break c}c=J[f+4>>2];break c}J[f+4>>2]=g}h=!K[d+12|0];if((b|0)!=(d|0)){f=J[b+8>>2];J[d+8>>2]=f;J[f+((J[J[b+8>>2]>>2]!=(b|0))<<2)>>2]=d;f=J[b>>2];J[d>>2]=f;J[f+8>>2]=d;f=J[b+4>>2];J[d+4>>2]=f;if(f){J[f+8>>2]=d}H[d+12|0]=K[b+12|0];a=(a|0)==(b|0)?d:a}if(!(h|!a)){if(e){while(1){b=K[c+12|0];d:{e=J[c+8>>2];if(J[e>>2]!=(c|0)){if(!b){H[c+12|0]=1;H[e+12|0]=0;d=J[e+4>>2];b=J[d>>2];J[e+4>>2]=b;if(b){J[b+8>>2]=e}J[d+8>>2]=J[e+8>>2];b=J[e+8>>2];J[(((e|0)!=J[b>>2])<<2)+b>>2]=d;J[d>>2]=e;J[e+8>>2]=d;b=J[c>>2];a=(b|0)==(a|0)?c:a;c=J[b+4>>2]}e:{f:{d=J[c>>2];g:{if(!(K[d+12|0]?0:d)){b=J[c+4>>2];if(K[b+12|0]?0:b){break g}H[c+12|0]=0;c=J[c+8>>2];h:{if((c|0)==(a|0)){c=a;break h}if(K[c+12|0]){break d}}H[c+12|0]=1;return}b=J[c+4>>2];if(!b){break f}}if(K[b+12|0]){break f}d=c;break e}H[d+12|0]=1;H[c+12|0]=0;a=J[d+4>>2];J[c>>2]=a;if(a){J[a+8>>2]=c}J[d+8>>2]=J[c+8>>2];a=J[c+8>>2];J[((J[a>>2]!=(c|0))<<2)+a>>2]=d;J[d+4>>2]=c;J[c+8>>2]=d;b=c}c=J[d+8>>2];H[d+12|0]=K[c+12|0];H[c+12|0]=1;H[b+12|0]=1;b=J[c+4>>2];a=J[b>>2];J[c+4>>2]=a;if(a){J[a+8>>2]=c}J[b+8>>2]=J[c+8>>2];a=J[c+8>>2];J[(((c|0)!=J[a>>2])<<2)+a>>2]=b;J[b>>2]=c;J[c+8>>2]=b;return}if(!b){H[c+12|0]=1;H[e+12|0]=0;b=J[c+4>>2];J[e>>2]=b;if(b){J[b+8>>2]=e}J[c+8>>2]=J[e+8>>2];b=J[e+8>>2];J[(((e|0)!=J[b>>2])<<2)+b>>2]=c;J[c+4>>2]=e;J[e+8>>2]=c;a=(a|0)==(e|0)?c:a;c=J[e>>2]}b=J[c>>2];i:{if(!(!b|K[b+12|0])){d=c;break i}d=J[c+4>>2];if(!(K[d+12|0]?0:d)){H[c+12|0]=0;c=J[c+8>>2];if((a|0)!=(c|0)?K[c+12|0]:0){break d}H[c+12|0]=1;return}if(b){if(!K[b+12|0]){d=c;break i}d=J[c+4>>2]}H[d+12|0]=1;H[c+12|0]=0;a=J[d>>2];J[c+4>>2]=a;if(a){J[a+8>>2]=c}J[d+8>>2]=J[c+8>>2];a=J[c+8>>2];J[((J[a>>2]!=(c|0))<<2)+a>>2]=d;J[d>>2]=c;J[c+8>>2]=d;b=c}c=J[d+8>>2];H[d+12|0]=K[c+12|0];H[c+12|0]=1;H[b+12|0]=1;b=J[c>>2];a=J[b+4>>2];J[c>>2]=a;if(a){J[a+8>>2]=c}J[b+8>>2]=J[c+8>>2];a=J[c+8>>2];J[(((c|0)!=J[a>>2])<<2)+a>>2]=b;J[b+4>>2]=c;J[c+8>>2]=b;return}b=J[c+8>>2];c=J[((J[b>>2]==(c|0))<<2)+b>>2];continue}}H[g+12|0]=1}}function wc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=ba-32|0;ba=h;a:{b:{if(J[a+8>>2]<<5>>>0>=b>>>0){break b}if((b|0)<0){break a}b=(b-1>>>5|0)+1|0;c=oa(b<<2);J[h+24>>2]=b;J[h+20>>2]=0;J[h+16>>2]=c;b=J[a>>2];J[h+12>>2]=0;J[h+8>>2]=b;c=J[a+4>>2];J[h+4>>2]=c&31;J[h>>2]=b+(c>>>3&536870908);e=ba-32|0;ba=e;i=J[h+4>>2];g=J[h+12>>2];j=J[h>>2];d=J[h+8>>2];b=(i-g|0)+(j-d<<3)|0;f=J[h+20>>2];c=b+f|0;J[h+20>>2]=c;if(!((c-1^f-1)>>>0<32?f:0)){J[J[h+16>>2]+((c>>>0>=33?c-1>>>5|0:0)<<2)>>2]=0}c=J[h+16>>2]+(f>>>3&536870908)|0;f=f&31;c:{if((f|0)==(g|0)){if((b|0)<=0){break c}if(g){i=32-g|0;f=(b|0)<(i|0)?b:i;i=-1<<g&-1>>>i-f;J[c>>2]=J[c>>2]&(i^-1)|i&J[d>>2];d=d+4|0;c=(g+f>>>3&536870908)+c|0;b=b-f|0}g=(b|0)/32|0;if(b+31>>>0>=63){ta(c,d,g<<2)}b=b-(g<<5)|0;if((b|0)<=0){break c}f=c;c=g<<2;g=f+c|0;b=-1>>>32-b|0;J[g>>2]=J[g>>2]&(b^-1)|b&J[c+d>>2];break c}J[e+28>>2]=g;J[e+24>>2]=d;J[e+20>>2]=i;J[e+16>>2]=j;J[e+12>>2]=f;J[e+8>>2]=c;b=J[e+28>>2];c=J[e+24>>2];g=(J[e+20>>2]-b|0)+(J[e+16>>2]-c<<3)|0;d:{if((g|0)<=0){b=J[e+12>>2];d=J[e+8>>2];break d}e:{if(!b){b=J[e+12>>2];break e}d=J[e+12>>2];j=32-d|0;k=32-b|0;f=(g|0)<(k|0)?g:k;i=f>>>0>j>>>0?j:f;l=J[e+8>>2];m=J[l>>2]&(-1<<d&-1>>>j-i^-1);j=J[c>>2]&(-1<<b&-1>>>k-f);J[l>>2]=m|(b>>>0<d>>>0?j<<d-b:j>>>b-d|0);c=d+i|0;b=c&31;J[e+12>>2]=b;d=l+(c>>>3&536870908)|0;J[e+8>>2]=d;c=f-i|0;if((c|0)>0){J[d>>2]=J[d>>2]&(-1>>>32-c^-1)|j>>>i+J[e+28>>2];J[e+12>>2]=c;b=c}g=g-f|0;c=J[e+24>>2]+4|0;J[e+24>>2]=c}i=-1<<b;f=32-b|0;if((g|0)>=32){j=i^-1;while(1){d=J[e+8>>2];c=J[c>>2];J[d>>2]=j&J[d>>2]|c<<b;J[e+8>>2]=d+4;J[d+4>>2]=i&J[d+4>>2]|c>>>f;c=J[e+24>>2]+4|0;J[e+24>>2]=c;d=g>>>0>63;g=g-32|0;if(d){continue}break}}d=J[e+8>>2];if((g|0)<=0){break d}j=f;f=(g|0)>(f|0)?f:g;j=J[d>>2]&(i&-1>>>j-f^-1);i=J[c>>2]&-1>>>32-g;J[d>>2]=j|i<<b;b=b+f|0;c=b&31;J[e+12>>2]=c;d=(b>>>3&536870908)+d|0;J[e+8>>2]=d;b=g-f|0;if((b|0)<=0){b=c;break d}J[d>>2]=J[d>>2]&(-1>>>32-b^-1)|i>>>f;J[e+12>>2]=b}J[e+4>>2]=b;J[e>>2]=d}ba=e+32|0;b=J[a>>2];J[a>>2]=J[h+16>>2];J[h+16>>2]=b;c=J[a+4>>2];J[a+4>>2]=J[h+20>>2];J[h+20>>2]=c;c=J[a+8>>2];J[a+8>>2]=J[h+24>>2];J[h+24>>2]=c;if(!b){break b}na(b)}ba=h+32|0;return}qa();B()}function Yj(a){a=a|0;var 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;g=ba-16|0;ba=g;b=J[a+64>>2];a:{if(!b){break a}i=da[J[J[b>>2]+32>>2]](b)|0;if(!i){break a}n=(J[i+28>>2]-J[i+24>>2]>>2)-J[i+44>>2]|0;b=J[a+56>>2];d=J[b+8>>2];b:{if((J[b+12>>2]-d|0)<5){break b}J[g+8>>2]=0;J[g>>2]=0;J[g+4>>2]=0;c:{d:{while(1){e:{f:{if(!J[J[(c<<2)+d>>2]+56>>2]){break f}j=da[J[J[a>>2]+56>>2]](a,c)|0;if(!j){break f}if(J[g+8>>2]!=(f|0)){J[f>>2]=j;f=f+4|0;J[g+4>>2]=f;break f}b=J[g>>2];h=f-b|0;f=h>>2;d=f+1|0;if(d>>>0>=1073741824){break e}e=h>>>1|0;d=h>>>0>=2147483644?1073741823:d>>>0<e>>>0?e:d;if(d){if(d>>>0>=1073741824){break d}e=oa(d<<2)}else{e=0}f=e+(f<<2)|0;J[f>>2]=j;h=ta(e,b,h);J[g+8>>2]=h+(d<<2);f=f+4|0;J[g+4>>2]=f;J[g>>2]=h;if(!b){break f}na(b)}m=J[a+56>>2];d=J[m+8>>2];c=c+1|0;if((c|0)<J[m+12>>2]-d>>2){continue}break c}break}qa();B()}xa();B()}j=J[g>>2];o=J[i+24>>2];b=J[i+28>>2];if((o|0)!=(b|0)){b=b-o>>2;q=b>>>0<=1?1:b;b=f-j>>2;r=b>>>0<=1?1:b;while(1){e=J[(p<<2)+o>>2];if((e|0)!=-1){g:{if((e|0)<0){c=(e>>>0)%3|0;b=-1;break g}b=(e>>>0)/3|0;c=e-P(b,3)|0;b=J[(J[m+96>>2]+P(b,12)|0)+(c<<2)>>2]}h:{i:{if(c){c=e-1|0;break i}c=e+2|0;if((c|0)!=-1){break i}l=0;break h}l=0;c=J[J[i+12>>2]+(c<<2)>>2];if((c|0)==-1){break h}j:{if((c>>>0)%3|0){d=c-1|0;break j}d=c+2|0;if((d|0)==-1){break h}}h=e;while(1){c=(d|0)<0?-1:J[(J[m+96>>2]+P((d>>>0)/3|0,12)|0)+((d>>>0)%3<<2)>>2];k:{if((b|0)==(c|0)){c=0;if((f|0)==(j|0)){c=b;break k}l:{while(1){k=J[J[(c<<2)+j>>2]+28>>2];if(J[k+(d<<2)>>2]!=J[k+(h<<2)>>2]){break l}c=c+1|0;if((r|0)!=(c|0)){continue}break}c=b;break k}c=b}l=l+1|0}if((d|0)==(e|0)|(d|0)==-1){break h}m:{if((d>>>0)%3|0){b=d-1|0;break m}b=d+2|0;if((b|0)==-1){break h}}k=J[J[i+12>>2]+(b<<2)>>2];if((k|0)==-1){break h}b=c;h=d;c=k+((k>>>0)%3|0?-1:2)|0;d=c;if((c|0)!=-1){continue}break}}c=1;b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;n:{if((b|0)==-1){break n}b=J[J[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break n}c=b+1|0;c=(((c>>>0)%3|0?c:b-2|0)|0)==-1}n=(l+n|0)-((c^-1)&(l|0)!=0)|0}p=p+1|0;if((q|0)!=(p|0)){continue}break}}if(!j){break b}na(j)}J[a+52>>2]=n}ba=g+16|0}function Ze(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=ba-128|0;ba=j;a:{b:{c:{if(!Hb(f,g,h,i,0,0,0,0)){break c}l=i&65535;n=i>>>16&32767;d:{e:{if((n|0)!=32767){k=4;if(n){break e}k=f|h|(g|l)?3:2;break d}k=!(f|h|(g|l))}}s=e>>>16|0;o=s&32767;if((o|0)==32767){break c}if(k){break b}}Ea(j+16|0,b,c,d,e,f,g,h,i);b=J[j+16>>2];d=J[j+20>>2];e=J[j+24>>2];c=J[j+28>>2];Ne(j,b,d,e,c,b,d,e,c);d=J[j+8>>2];e=J[j+12>>2];h=J[j>>2];i=J[j+4>>2];break a}k=d;p=e&2147483647;n=h;m=i&2147483647;if((Hb(b,c,k,p,f,g,h,m)|0)<=0){if(Hb(b,c,k,p,f,g,n,m)){h=b;i=c;break a}Ea(j+112|0,b,c,d,e,0,0,0,0);d=J[j+120>>2];e=J[j+124>>2];h=J[j+112>>2];i=J[j+116>>2];break a}q=i>>>16&32767;if(o){i=c;h=b}else{Ea(j+96|0,b,c,k,p,0,0,0,1081540608);k=J[j+104>>2];h=J[j+108>>2];p=h;o=(h>>>16|0)-120|0;i=J[j+100>>2];h=J[j+96>>2]}if(!q){Ea(j+80|0,f,g,n,m,0,0,0,1081540608);n=J[j+88>>2];f=J[j+92>>2];m=f;q=(f>>>16|0)-120|0;g=J[j+84>>2];f=J[j+80>>2]}r=n;t=m&65535|65536;p=p&65535|65536;if((o|0)>(q|0)){while(1){m=k-r|0;l=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;n=m-l|0;l=(p-((k>>>0<r>>>0)+t|0)|0)-(l>>>0>m>>>0)|0;f:{if((l|0)>0|(l|0)>=0){k=h;h=h-f|0;i=i-((f>>>0>k>>>0)+g|0)|0;if(!(h|n|(i|l))){Ea(j+32|0,b,c,d,e,0,0,0,0);d=J[j+40>>2];e=J[j+44>>2];h=J[j+32>>2];i=J[j+36>>2];break a}l=l<<1|n>>>31;k=n<<1|i>>>31;break f}l=p<<1|k>>>31;k=k<<1|i>>>31}p=l;l=i<<1|h>>>31;h=h<<1;i=l;o=o-1|0;if((o|0)>(q|0)){continue}break}o=q}m=k-r|0;l=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;n=m-l|0;l=(p-((k>>>0<r>>>0)+t|0)|0)-(l>>>0>m>>>0)|0;m=l;g:{if((l|0)<0){n=k;m=p;break g}k=h;h=h-f|0;i=i-((f>>>0>k>>>0)+g|0)|0;if(h|n|(i|m)){break g}Ea(j+48|0,b,c,d,e,0,0,0,0);d=J[j+56>>2];e=J[j+60>>2];h=J[j+48>>2];i=J[j+52>>2];break a}if((m|0)==65535|m>>>0<65535){while(1){b=i>>>31|0;o=o-1|0;p=i<<1|h>>>31;h=h<<1;i=p;c=b;b=m<<1|n>>>31;n=c|n<<1;m=b;if(b>>>0<65536){continue}break}}b=s&32768;if((o|0)<=0){Ea(j- -64|0,h,i,n,m&65535|(b|o+120)<<16,0,0,0,1065811968);d=J[j+72>>2];e=J[j+76>>2];h=J[j+64>>2];i=J[j+68>>2];break a}d=n;e=m&65535|(b|o)<<16}J[a>>2]=h;J[a+4>>2]=i;J[a+8>>2]=d;J[a+12>>2]=e;ba=j+128|0}function Ki(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;f=ba+-64|0;ba=f;a:{b:{c:{d:{e:{f:{if(!b){break f}e=rb(c);if(e>>>0>=2147483632){break e}g:{h:{if(e>>>0>=11){a=(e|15)+1|0;g=oa(a);J[f+56>>2]=a|-2147483648;J[f+48>>2]=g;a=e+g|0;break h}H[f+59|0]=e;g=f+48|0;a=e+g|0;if(!e){break g}}ua(g,c,e)}H[a|0]=0;e=rb(d);if(e>>>0>=2147483632){break d}i:{j:{if(e>>>0>=11){a=(e|15)+1|0;g=oa(a);J[f+40>>2]=a|-2147483648;J[f+32>>2]=g;a=e+g|0;break j}H[f+43|0]=e;g=f+32|0;a=e+g|0;if(!e){break i}}ua(g,d,e)}H[a|0]=0;e=rb(c);if(e>>>0>=2147483632){break c}k:{l:{if(e>>>0>=11){a=(e|15)+1|0;g=oa(a);J[f+24>>2]=a|-2147483648;J[f+16>>2]=g;J[f+20>>2]=e;a=e+g|0;break l}H[f+27|0]=e;g=f+16|0;a=e+g|0;if(!e){break k}}ua(g,c,e)}H[a|0]=0;c=rb(d);if(c>>>0>=2147483632){break b}m:{n:{if(c>>>0>=11){e=(c|15)+1|0;a=oa(e);J[f+8>>2]=e|-2147483648;J[f>>2]=a;J[f+4>>2]=c;g=a+c|0;break n}H[f+11|0]=c;g=c+f|0;a=f;if(!c){break m}}ua(a,d,c)}H[g|0]=0;e=ba-48|0;ba=e;d=ob(b,f+16|0);if((d|0)!=(b+4|0)){a=J[d+4>>2];o:{if(!a){a=d;while(1){c=J[a+8>>2];g=J[c>>2]!=(a|0);a=c;if(g){continue}break}break o}while(1){c=a;a=J[a>>2];if(a){continue}break}}if((d|0)==J[b>>2]){J[b>>2]=c}J[b+8>>2]=J[b+8>>2]-1;Dc(J[b+4>>2],d);a=J[d+28>>2];if(a){J[d+32>>2]=a;na(a)}if(H[d+27|0]<0){na(J[d+16>>2])}na(d)}g=0;J[e+8>>2]=0;J[e>>2]=0;J[e+4>>2]=0;c=K[f+11|0];d=c<<24>>24;p:{q:{h=J[f+4>>2];a=(d|0)<0?h:c;if(a){if((a|0)<0){break q}c=a;g=oa(a);a=pa(g,0,a);c=c+a|0;J[e+8>>2]=c;J[e+4>>2]=c;J[e>>2]=a;h=J[f+4>>2];c=K[f+11|0];d=c}a=d<<24>>24<0;ua(g,a?J[f>>2]:f,a?h:c);break p}qa();B()}r:{if(H[f+27|0]>=0){J[e+24>>2]=J[f+24>>2];a=J[f+20>>2];J[e+16>>2]=J[f+16>>2];J[e+20>>2]=a;break r}Ga(e+16|0,J[f+16>>2],J[f+20>>2])}Ob(e+28|0,e);a=e+16|0;Cc(e+40|0,b,a,a);a=J[e+28>>2];if(a){J[e+32>>2]=a;na(a)}if(H[e+27|0]<0){na(J[e+16>>2])}a=J[e>>2];if(a){J[e+4>>2]=a;na(a)}ba=e+48|0;if(H[f+11|0]<0){na(J[f>>2])}if(H[f+27|0]<0){na(J[f+16>>2])}if(H[f+43|0]<0){na(J[f+32>>2])}if(H[f+59|0]>=0){break f}na(J[f+48>>2])}ba=f- -64|0;a=(b|0)!=0;break a}gb();B()}gb();B()}gb();B()}gb();B()}return a|0}function nf(a,b){var c=0,d=0,e=0,f=0;f=ba-16|0;ba=f;e=oa(32);J[f>>2]=e;J[f+4>>2]=30;J[f+8>>2]=-2147483616;c=K[1240]|K[1241]<<8|(K[1242]<<16|K[1243]<<24);d=K[1236]|K[1237]<<8|(K[1238]<<16|K[1239]<<24);H[e+22|0]=d;H[e+23|0]=d>>>8;H[e+24|0]=d>>>16;H[e+25|0]=d>>>24;H[e+26|0]=c;H[e+27|0]=c>>>8;H[e+28|0]=c>>>16;H[e+29|0]=c>>>24;c=K[1234]|K[1235]<<8|(K[1236]<<16|K[1237]<<24);d=K[1230]|K[1231]<<8|(K[1232]<<16|K[1233]<<24);H[e+16|0]=d;H[e+17|0]=d>>>8;H[e+18|0]=d>>>16;H[e+19|0]=d>>>24;H[e+20|0]=c;H[e+21|0]=c>>>8;H[e+22|0]=c>>>16;H[e+23|0]=c>>>24;c=K[1226]|K[1227]<<8|(K[1228]<<16|K[1229]<<24);d=K[1222]|K[1223]<<8|(K[1224]<<16|K[1225]<<24);H[e+8|0]=d;H[e+9|0]=d>>>8;H[e+10|0]=d>>>16;H[e+11|0]=d>>>24;H[e+12|0]=c;H[e+13|0]=c>>>8;H[e+14|0]=c>>>16;H[e+15|0]=c>>>24;c=K[1218]|K[1219]<<8|(K[1220]<<16|K[1221]<<24);d=K[1214]|K[1215]<<8|(K[1216]<<16|K[1217]<<24);H[e|0]=d;H[e+1|0]=d>>>8;H[e+2|0]=d>>>16;H[e+3|0]=d>>>24;H[e+4|0]=c;H[e+5|0]=c>>>8;H[e+6|0]=c>>>16;H[e+7|0]=c>>>24;H[e+30|0]=0;e=a+4|0;vb(e,f,b);if(H[f+11|0]<0){na(J[f>>2])}a=oa(32);J[f>>2]=a;J[f+4>>2]=29;J[f+8>>2]=-2147483616;c=K[1308]|K[1309]<<8|(K[1310]<<16|K[1311]<<24);d=K[1304]|K[1305]<<8|(K[1306]<<16|K[1307]<<24);H[a+21|0]=d;H[a+22|0]=d>>>8;H[a+23|0]=d>>>16;H[a+24|0]=d>>>24;H[a+25|0]=c;H[a+26|0]=c>>>8;H[a+27|0]=c>>>16;H[a+28|0]=c>>>24;c=K[1303]|K[1304]<<8|(K[1305]<<16|K[1306]<<24);d=K[1299]|K[1300]<<8|(K[1301]<<16|K[1302]<<24);H[a+16|0]=d;H[a+17|0]=d>>>8;H[a+18|0]=d>>>16;H[a+19|0]=d>>>24;H[a+20|0]=c;H[a+21|0]=c>>>8;H[a+22|0]=c>>>16;H[a+23|0]=c>>>24;c=K[1295]|K[1296]<<8|(K[1297]<<16|K[1298]<<24);d=K[1291]|K[1292]<<8|(K[1293]<<16|K[1294]<<24);H[a+8|0]=d;H[a+9|0]=d>>>8;H[a+10|0]=d>>>16;H[a+11|0]=d>>>24;H[a+12|0]=c;H[a+13|0]=c>>>8;H[a+14|0]=c>>>16;H[a+15|0]=c>>>24;c=K[1287]|K[1288]<<8|(K[1289]<<16|K[1290]<<24);d=K[1283]|K[1284]<<8|(K[1285]<<16|K[1286]<<24);H[a|0]=d;H[a+1|0]=d>>>8;H[a+2|0]=d>>>16;H[a+3|0]=d>>>24;H[a+4|0]=c;H[a+5|0]=c>>>8;H[a+6|0]=c>>>16;H[a+7|0]=c>>>24;H[a+29|0]=0;vb(e,f,b);if(H[f+11|0]<0){na(J[f>>2])}ba=f+16|0}function sd(a,b){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;j=ba-32|0;ba=j;J[a+4>>2]=0;J[a+8>>2]=0;c=a+16|0;J[c>>2]=0;J[c+4>>2]=0;i=a+4|0;J[a>>2]=i;J[a+12>>2]=c;f=J[b>>2];k=b+4|0;if((f|0)!=(k|0)){while(1){g=ba-16|0;ba=g;c=f+16|0;h=Pg(a,i,g+12|0,g+8|0,c);d=J[h>>2];if(d){c=0}else{d=oa(40);e=d+16|0;a:{if(H[c+11|0]>=0){l=J[c+4>>2];J[e>>2]=J[c>>2];J[e+4>>2]=l;J[e+8>>2]=J[c+8>>2];break a}Ga(e,J[c>>2],J[c+4>>2])}Ob(d+28|0,c+12|0);J[d+8>>2]=J[g+12>>2];J[d>>2]=0;J[d+4>>2]=0;J[h>>2]=d;c=d;e=J[J[a>>2]>>2];if(e){J[a>>2]=e;c=J[h>>2]}sb(J[a+4>>2],c);J[a+8>>2]=J[a+8>>2]+1;c=1}H[j+28|0]=c;J[j+24>>2]=d;ba=g+16|0;c=J[f+4>>2];b:{if(c){while(1){f=c;c=J[c>>2];if(c){continue}break b}}while(1){c=f;f=J[f+8>>2];if((c|0)!=J[f>>2]){continue}break}}if((f|0)!=(k|0)){continue}break}}f=J[b+12>>2];l=b+16|0;if((f|0)!=(l|0)){g=a+12|0;while(1){m=oa(24);sd(m,J[f+28>>2]);b=f+16|0;J[j+16>>2]=b;c:{d:{c=J[g+4>>2];e:{if(!c){d=g+4|0;b=d;break e}d=K[b+11|0];e=d<<24>>24<0;h=e?J[b>>2]:b;e=e?J[b+4>>2]:d;while(1){b=c;i=K[c+27|0];d=i<<24>>24<0;c=d?J[c+20>>2]:i;i=c>>>0<e>>>0;f:{g:{h:{i:{k=i?c:e;j:{if(k){d=d?J[b+16>>2]:b+16|0;n=Ba(h,d,k);if(!n){if(c>>>0>e>>>0){break j}break i}if((n|0)>=0){break i}break j}if(c>>>0<=e>>>0){break h}}d=b;c=J[b>>2];if(c){continue}break e}c=Ba(d,h,k);if(c){break g}}if(i){break f}break d}if((c|0)>=0){break d}}c=J[b+4>>2];if(c){continue}break}d=b+4|0}c=oa(32);h=c+16|0;e=J[j+16>>2];k:{if(H[e+11|0]>=0){i=J[e+4>>2];J[h>>2]=J[e>>2];J[h+4>>2]=i;J[h+8>>2]=J[e+8>>2];break k}Ga(h,J[e>>2],J[e+4>>2])}J[c+8>>2]=b;J[c>>2]=0;J[c+4>>2]=0;J[c+28>>2]=0;J[d>>2]=c;b=c;e=J[J[g>>2]>>2];if(e){J[g>>2]=e;b=J[d>>2]}sb(J[g+4>>2],b);J[g+8>>2]=J[g+8>>2]+1;b=1;break c}c=b;b=0}H[j+28|0]=b;J[j+24>>2]=c;c=J[j+24>>2];b=J[c+28>>2];J[c+28>>2]=m;if(b){lb(b+12|0,J[b+16>>2]);kb(b,J[b+4>>2]);na(b)}c=J[f+4>>2];l:{if(c){while(1){f=c;c=J[c>>2];if(c){continue}break l}}while(1){b=f;f=J[f+8>>2];if((b|0)!=J[f>>2]){continue}break}}if((f|0)!=(l|0)){continue}break}}ba=j+32|0;return a}function Pk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;J[a+8>>2]=e;m=a+32|0;g=J[m>>2];f=J[a+36>>2]-g>>2;a:{if(f>>>0<e>>>0){Fa(m,e-f|0);break a}if(e>>>0>=f>>>0){break a}J[a+36>>2]=g+(e<<2)}b:{if(!d){break b}g=J[b>>2];c:{if((d|0)<2){i=g;break c}f=1;i=d-1|0;q=i&1;d:{if((d|0)==2){i=g;break d}o=i&-2;i=g;while(1){j=(f<<2)+b|0;k=J[j+4>>2];j=J[j>>2];l=(j|0)<(i|0);i=l?j:i;p=(i|0)>(k|0);i=p?k:i;g=l?g:(g|0)<(j|0)?j:g;g=p?g:(g|0)<(k|0)?k:g;f=f+2|0;h=h+2|0;if((o|0)!=(h|0)){continue}break}}if(!q){break c}f=J[(f<<2)+b>>2];h=(f|0)<(i|0);i=h?f:i;g=h?g:(f|0)>(g|0)?f:g}J[a+16>>2]=g;J[a+12>>2]=i;f=g-i|0;g=(g>>31)-((i>>31)+(g>>>0<i>>>0)|0)|0;if(!g&f>>>0>2147483646|g){break b}f=f+1|0;J[a+20>>2]=f;g=f>>>1|0;J[a+24>>2]=g;J[a+28>>2]=0-g;if(f&1){break b}J[a+24>>2]=g-1}k=d-e|0;g=J[a+8>>2];if(!((k|0)<=0|(g|0)<=0)){p=0-e<<2;while(1){if((g|0)>0){d=k<<2;q=d+c|0;o=b+d|0;h=o+p|0;d=J[m>>2];i=0;while(1){f=d;if((g|0)>0){f=J[m>>2];g=0;while(1){j=g<<2;l=J[j+h>>2];n=J[a+16>>2];e:{if((l|0)>(n|0)){J[f+j>>2]=n;break e}j=f+j|0;n=J[a+12>>2];if((n|0)>(l|0)){J[j>>2]=n;break e}J[j>>2]=l}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}h=i<<2;g=h+q|0;h=J[h+o>>2]-J[f+h>>2]|0;J[g>>2]=h;f:{if((h|0)<J[a+28>>2]){h=h+J[a+20>>2]|0}else{if((h|0)<=J[a+24>>2]){break f}h=h-J[a+20>>2]|0}J[g>>2]=h}h=f;g=J[a+8>>2];i=i+1|0;if((g|0)>(i|0)){continue}break}}k=k-e|0;if((k|0)>0){continue}break}}i=0;d=e>>>0>1073741823?-1:e<<2;d=pa(oa(d),0,d);if((g|0)>0){e=J[a+32>>2];h=d;while(1){f=e;if((g|0)>0){f=J[m>>2];g=0;while(1){k=g<<2;j=J[k+h>>2];l=J[a+16>>2];g:{if((j|0)>(l|0)){J[f+k>>2]=l;break g}k=f+k|0;l=J[a+12>>2];if((l|0)>(j|0)){J[k>>2]=l;break g}J[k>>2]=j}g=g+1|0;if((g|0)<J[a+8>>2]){continue}break}}h=i<<2;g=h+c|0;h=J[b+h>>2]-J[f+h>>2]|0;J[g>>2]=h;h:{if((h|0)<J[a+28>>2]){h=h+J[a+20>>2]|0}else{if((h|0)<=J[a+24>>2]){break h}h=h-J[a+20>>2]|0}J[g>>2]=h}h=f;g=J[a+8>>2];i=i+1|0;if((g|0)>(i|0)){continue}break}}na(d);return 1}function uf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=ba+-64|0;ba=d;J[d+40>>2]=0;J[d+44>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+48>>2]=1065353216;e=J[a+80>>2];J[d+24>>2]=0;J[d+16>>2]=0;J[d+20>>2]=0;a:{if(e){if(e>>>0>=1073741824){break a}c=e<<2;e=oa(c);J[d+16>>2]=e;g=c+e|0;J[d+24>>2]=g;pa(e,0,c);J[d+20>>2]=g;while(1){c=J[J[b>>2]>>2];g=J[b+48>>2];h=Hl(J[b+40>>2],J[b+44>>2],f,0);g=g+h|0;c=c+g|0;c=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);J[d+28>>2]=c;J[d+12>>2]=k;J[d+8>>2]=c;c=d+8|0;qf(d+56|0,d+32|0,c,c);b:{if(!K[d+60|0]){J[(f<<2)+e>>2]=J[J[d+56>>2]+12>>2];break b}e=J[a+40>>2];ua(J[J[a>>2]>>2]+P(e,k)|0,d+28|0,e);e=J[d+16>>2];J[e+(f<<2)>>2]=k;k=k+1|0}f=f+1|0;i=f?i:i+1|0;c=J[a+80>>2];if(!i&f>>>0<c>>>0){continue}break}if((c|0)!=(k|0)){c:{if(!K[a+84|0]){b=J[a+72>>2];f=J[a+68>>2];if((b|0)==(f|0)){break c}b=b-f>>2;c=b>>>0<=1?1:b;h=c&3;i=0;b=0;if(c-1>>>0>=3){l=c&-4;g=0;while(1){c=b<<2;j=c+f|0;J[j>>2]=J[(J[j>>2]<<2)+e>>2];j=f+(c|4)|0;J[j>>2]=J[(J[j>>2]<<2)+e>>2];j=f+(c|8)|0;J[j>>2]=J[(J[j>>2]<<2)+e>>2];c=f+(c|12)|0;J[c>>2]=J[(J[c>>2]<<2)+e>>2];b=b+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(!h){break c}while(1){c=f+(b<<2)|0;J[c>>2]=J[(J[c>>2]<<2)+e>>2];b=b+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}break c}H[a+84|0]=0;b=a+68|0;i=J[a+68>>2];f=J[a+72>>2]-i>>2;d:{if(f>>>0<c>>>0){Ma(b,c-f|0,2176);c=J[a+80>>2];break d}if(c>>>0>=f>>>0){break d}J[a+72>>2]=i+(c<<2)}if(!c){break c}f=J[b>>2];i=0;b=0;if(c>>>0>=4){l=c&-4;g=0;while(1){h=b<<2;J[h+f>>2]=J[e+h>>2];j=h|4;J[j+f>>2]=J[e+j>>2];j=h|8;J[j+f>>2]=J[e+j>>2];h=h|12;J[h+f>>2]=J[e+h>>2];b=b+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}c=c&3;if(!c){break c}while(1){g=b<<2;J[g+f>>2]=J[e+g>>2];b=b+1|0;i=i+1|0;if((c|0)!=(i|0)){continue}break}}J[a+80>>2]=k}na(e)}b=J[d+40>>2];if(b){while(1){a=J[b>>2];na(b);b=a;if(b){continue}break}}a=J[d+32>>2];J[d+32>>2]=0;if(a){na(a)}ba=d- -64|0;return k}qa();B()}function Rj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ba-16|0;ba=f;J[a+4>>2]=b;J[a+8>>2]=J[b+56>>2];J[a+188>>2]=J[a+184>>2];e=J[b+48>>2];c=oa(32);H[c+19|0]=0;b=K[1278]|K[1279]<<8|(K[1280]<<16|K[1281]<<24);H[c+15|0]=b;H[c+16|0]=b>>>8;H[c+17|0]=b>>>16;H[c+18|0]=b>>>24;b=K[1275]|K[1276]<<8|(K[1277]<<16|K[1278]<<24);d=K[1271]|K[1272]<<8|(K[1273]<<16|K[1274]<<24);H[c+8|0]=d;H[c+9|0]=d>>>8;H[c+10|0]=d>>>16;H[c+11|0]=d>>>24;H[c+12|0]=b;H[c+13|0]=b>>>8;H[c+14|0]=b>>>16;H[c+15|0]=b>>>24;b=K[1267]|K[1268]<<8|(K[1269]<<16|K[1270]<<24);d=K[1263]|K[1264]<<8|(K[1265]<<16|K[1266]<<24);H[c|0]=d;H[c+1|0]=d>>>8;H[c+2|0]=d>>>16;H[c+3|0]=d>>>24;H[c+4|0]=b;H[c+5|0]=b>>>8;H[c+6|0]=b>>>16;H[c+7|0]=b>>>24;a:{b:{b=J[e+4>>2];if(b){while(1){d=K[b+27|0];e=d<<24>>24<0;d=e?J[b+20>>2]:d;h=d>>>0<19;c:{d:{e:{f:{g:{h:{g=h?d:19;if(g){e=e?J[b+16>>2]:b+16|0;i=Ba(c,e,g);if(i){break h}if(d>>>0<=19){break g}break c}if(d>>>0<=19){break f}break c}if((i|0)<0){break c}}d=Ba(e,c,g);if(d){break e}}if(h){break d}break b}if((d|0)>=0){break b}}b=b+4|0}b=J[b>>2];if(b){continue}break}}na(c);if((cb(J[J[a+4>>2]+48>>2])|0)>=6){H[a+288|0]=1;break a}H[a+288|0]=0;break a}na(c);e=J[J[a+4>>2]+48>>2];b=oa(32);J[f>>2]=b;J[f+4>>2]=19;J[f+8>>2]=-2147483616;c=K[1278]|K[1279]<<8|(K[1280]<<16|K[1281]<<24);H[b+15|0]=c;H[b+16|0]=c>>>8;H[b+17|0]=c>>>16;H[b+18|0]=c>>>24;c=K[1275]|K[1276]<<8|(K[1277]<<16|K[1278]<<24);d=K[1271]|K[1272]<<8|(K[1273]<<16|K[1274]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1267]|K[1268]<<8|(K[1269]<<16|K[1270]<<24);d=K[1263]|K[1264]<<8|(K[1265]<<16|K[1266]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+19|0]=0;j=a,k=Pb(e,f,0),H[j+288|0]=k;if(H[f+11|0]>=0){break a}na(J[f>>2])}ba=f+16|0;return 1}function Mj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ba-16|0;ba=f;J[a+4>>2]=b;J[a+8>>2]=J[b+56>>2];J[a+188>>2]=J[a+184>>2];e=J[b+48>>2];c=oa(32);H[c+19|0]=0;b=K[1278]|K[1279]<<8|(K[1280]<<16|K[1281]<<24);H[c+15|0]=b;H[c+16|0]=b>>>8;H[c+17|0]=b>>>16;H[c+18|0]=b>>>24;b=K[1275]|K[1276]<<8|(K[1277]<<16|K[1278]<<24);d=K[1271]|K[1272]<<8|(K[1273]<<16|K[1274]<<24);H[c+8|0]=d;H[c+9|0]=d>>>8;H[c+10|0]=d>>>16;H[c+11|0]=d>>>24;H[c+12|0]=b;H[c+13|0]=b>>>8;H[c+14|0]=b>>>16;H[c+15|0]=b>>>24;b=K[1267]|K[1268]<<8|(K[1269]<<16|K[1270]<<24);d=K[1263]|K[1264]<<8|(K[1265]<<16|K[1266]<<24);H[c|0]=d;H[c+1|0]=d>>>8;H[c+2|0]=d>>>16;H[c+3|0]=d>>>24;H[c+4|0]=b;H[c+5|0]=b>>>8;H[c+6|0]=b>>>16;H[c+7|0]=b>>>24;a:{b:{b=J[e+4>>2];if(b){while(1){d=K[b+27|0];e=d<<24>>24<0;d=e?J[b+20>>2]:d;h=d>>>0<19;c:{d:{e:{f:{g:{h:{g=h?d:19;if(g){e=e?J[b+16>>2]:b+16|0;i=Ba(c,e,g);if(i){break h}if(d>>>0<=19){break g}break c}if(d>>>0<=19){break f}break c}if((i|0)<0){break c}}d=Ba(e,c,g);if(d){break e}}if(h){break d}break b}if((d|0)>=0){break b}}b=b+4|0}b=J[b>>2];if(b){continue}break}}na(c);if((cb(J[J[a+4>>2]+48>>2])|0)>=6){H[a+352|0]=1;break a}H[a+352|0]=0;break a}na(c);e=J[J[a+4>>2]+48>>2];b=oa(32);J[f>>2]=b;J[f+4>>2]=19;J[f+8>>2]=-2147483616;c=K[1278]|K[1279]<<8|(K[1280]<<16|K[1281]<<24);H[b+15|0]=c;H[b+16|0]=c>>>8;H[b+17|0]=c>>>16;H[b+18|0]=c>>>24;c=K[1275]|K[1276]<<8|(K[1277]<<16|K[1278]<<24);d=K[1271]|K[1272]<<8|(K[1273]<<16|K[1274]<<24);H[b+8|0]=d;H[b+9|0]=d>>>8;H[b+10|0]=d>>>16;H[b+11|0]=d>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1267]|K[1268]<<8|(K[1269]<<16|K[1270]<<24);d=K[1263]|K[1264]<<8|(K[1265]<<16|K[1266]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+19|0]=0;j=a,k=Pb(e,f,0),H[j+352|0]=k;if(H[f+11|0]>=0){break a}na(J[f>>2])}ba=f+16|0;return 1}function uh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=ba-32|0;ba=c;d=a- -64|0;Aa(J[d>>2],b);if(J[d>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+64>>2];if((d|0)>0){while(1){f=d-1|0;Ca(c,J[J[a+60>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}ya(c,b);wa(c)}Aa(J[a+76>>2],b);if(J[a+76>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+76>>2];if((d|0)>=2){while(1){f=d-2|0;Ca(c,J[J[a+72>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;Ca(c,J[J[a+72>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}ya(c,b);wa(c)}Aa(J[a+88>>2],b);if(J[a+88>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+88>>2];if((d|0)>=3){while(1){f=d-3|0;Ca(c,J[J[a+84>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;Ca(c,J[J[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ca(c,J[J[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}ya(c,b);wa(c)}Aa(J[a+100>>2],b);if(J[a+100>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+100>>2];if((d|0)>=4){while(1){f=d-4|0;Ca(c,J[J[a+96>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;Ca(c,J[J[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;Ca(c,J[J[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ca(c,J[J[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}ya(c,b);wa(c)}J[c>>2]=J[a+12>>2];d=J[b+20>>2];a:{if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;sa(b,J[b+4>>2],c,f);d=J[b+20>>2];e=J[b+16>>2];J[c>>2]=J[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c,f)}ba=c+32|0;return 1}function jh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=ba-32|0;ba=c;Aa(J[a+48>>2],b);if(J[a+48>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+48>>2];if((d|0)>0){while(1){f=d-1|0;Ca(c,J[J[a+44>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}ya(c,b);wa(c)}Aa(J[a+60>>2],b);if(J[a+60>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+60>>2];if((d|0)>=2){while(1){f=d-2|0;Ca(c,J[J[a+56>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;Ca(c,J[J[a+56>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}ya(c,b);wa(c)}Aa(J[a+72>>2],b);if(J[a+72>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+72>>2];if((d|0)>=3){while(1){f=d-3|0;Ca(c,J[J[a+68>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;Ca(c,J[J[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ca(c,J[J[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}ya(c,b);wa(c)}Aa(J[a+84>>2],b);if(J[a+84>>2]){J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);d=J[a+84>>2];if((d|0)>=4){while(1){f=d-4|0;Ca(c,J[J[a+80>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;Ca(c,J[J[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;Ca(c,J[J[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ca(c,J[J[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}ya(c,b);wa(c)}J[c>>2]=J[a+12>>2];d=J[b+20>>2];a:{if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;sa(b,J[b+4>>2],c,f);d=J[b+20>>2];e=J[b+16>>2];J[c>>2]=J[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c,f)}ba=c+32|0;return 1}function wk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=ba-32|0;ba=d;o=e<<2;f=e>>>0>1073741823?-1:o;l=pa(oa(f),0,f);f=J[a+40>>2];f=J[f+4>>2]-J[f>>2]|0;if((f|0)>=5){q=J[a+36>>2];p=J[a+32>>2];r=e&-2;s=e&1;t=a+8|0;f=f>>>2|0;while(1){j=J[a+40>>2];g=J[j>>2];a:{b:{h=J[j+4>>2]-g>>2;j=f-1|0;if(h>>>0>j>>>0){u=P(e,j);g=J[g+(j<<2)>>2];if((g|0)==-1){break b}g=J[J[p+12>>2]+(g<<2)>>2];if((g|0)==-1){break b}k=J[q>>2];h=J[p>>2];m=J[k+(J[h+(g<<2)>>2]<<2)>>2];i=g+1|0;i=(i>>>0)%3|0?i:g-2|0;if((i|0)!=-1){i=J[h+(i<<2)>>2]}else{i=-1}c:{d:{if((g>>>0)%3|0){g=g-1|0;break d}g=g+2|0;n=-1;if((g|0)==-1){break c}}n=J[h+(g<<2)>>2]}if((j|0)<=(m|0)){break b}g=J[(i<<2)+k>>2];if((g|0)>=(j|0)){break b}h=J[k+(n<<2)>>2];if((h|0)>=(j|0)){break b}e:{if((e|0)<=0){break e}h=P(e,h);k=P(e,g);m=P(e,m);g=0;n=0;if((e|0)!=1){while(1){J[(g<<2)+l>>2]=(J[(g+h<<2)+b>>2]+J[(g+k<<2)+b>>2]|0)-J[(g+m<<2)+b>>2];i=g|1;J[(i<<2)+l>>2]=(J[(h+i<<2)+b>>2]+J[(i+k<<2)+b>>2]|0)-J[(i+m<<2)+b>>2];g=g+2|0;n=n+2|0;if((r|0)!=(n|0)){continue}break}}if(!s){break e}J[(g<<2)+l>>2]=(J[(g+h<<2)+b>>2]+J[(g+k<<2)+b>>2]|0)-J[(g+m<<2)+b>>2]}g=J[l>>2];h=J[l+4>>2];break a}ra();B()}h=(P(f-2|0,e)<<2)+b|0;g=J[h>>2];h=J[h+4>>2]}k=u<<2;m=k+b|0;i=J[m+4>>2];J[d+16>>2]=J[m>>2];J[d+20>>2]=i;J[d+8>>2]=g;J[d+12>>2]=h;Ya(d+24|0,t,d+16|0,d+8|0);g=c+k|0;J[g>>2]=J[d+24>>2];J[g+4>>2]=J[d+28>>2];g=(f|0)>2;f=j;if(g){continue}break}}if((e|0)>0){pa(l,0,o)}e=J[l>>2];f=J[l+4>>2];g=J[b+4>>2];J[d+16>>2]=J[b>>2];J[d+20>>2]=g;J[d+8>>2]=e;J[d+12>>2]=f;Ya(d+24|0,a+8|0,d+16|0,d+8|0);J[c>>2]=J[d+24>>2];J[c+4>>2]=J[d+28>>2];na(l);ba=d+32|0;return 1}function fg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=J[a>>2];n=b-k|0;h=(n&-4)+k|0;i=d-c|0;if((i|0)<=0){return}a:{l=i>>2;g=J[a+8>>2];j=J[a+4>>2];if((l|0)<=g-j>>2){f=j-h|0;g=f>>2;if((g|0)>=(l|0)){b=j;g=d;break a}b=j;g=(g<<2)+c|0;if((g|0)!=(d|0)){e=g;while(1){J[b>>2]=J[e>>2];b=b+4|0;e=e+4|0;if((e|0)!=(d|0)){continue}break}}J[a+4>>2]=b;if((f|0)>0){break a}return}b:{f=l+(j-k>>2)|0;if(f>>>0<1073741824){e=g-k|0;g=e>>>1|0;m=e>>>0>=2147483644?1073741823:f>>>0<g>>>0?g:f;if(m){if(m>>>0>=1073741824){break b}g=oa(m<<2)}else{g=0}e=g+(n&-4)|0;f=e;if((c|0)!=(d|0)){f=ua(e,c,i&-4)+(l<<2)|0}c:{if((b|0)==(k|0)){break c}i=n-4|0;d=(i>>>2|0)+1&3;d:{if(!d){b=h;break d}c=0;b=h;while(1){e=e-4|0;b=b-4|0;J[e>>2]=J[b>>2];c=c+1|0;if((d|0)!=(c|0)){continue}break}}if(i>>>0<12){break c}while(1){J[e-4>>2]=J[b-4>>2];J[e-8>>2]=J[b-8>>2];J[e-12>>2]=J[b-12>>2];e=e-16|0;b=b-16|0;J[e>>2]=J[b>>2];if((b|0)!=(k|0)){continue}break}}if((h|0)!=(j|0)){while(1){J[f>>2]=J[h>>2];f=f+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}J[a+8>>2]=(m<<2)+g;J[a+4>>2]=f;J[a>>2]=e;if(k){na(k)}return}qa();B()}xa();B()}d=l<<2;i=d+h|0;f=b;e=b-d|0;if(j>>>0>e>>>0){d=e;while(1){J[f>>2]=J[d>>2];f=f+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}J[a+4>>2]=f;e:{if((b|0)==(i|0)){break e}d=(b-i|0)-4|0;a=(d>>>2|0)+1&3;if(a){f=0;while(1){b=b-4|0;e=e-4|0;J[b>>2]=J[e>>2];f=f+1|0;if((a|0)!=(f|0)){continue}break}}if(d>>>0<12){break e}while(1){J[b-4>>2]=J[e-4>>2];J[b-8>>2]=J[e-8>>2];J[b-12>>2]=J[e-12>>2];b=b-16|0;e=e-16|0;J[b>>2]=J[e>>2];if((e|0)!=(h|0)){continue}break}}if((c|0)==(g|0)){return}b=h;while(1){J[b>>2]=J[c>>2];b=b+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}}function ff(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=ba-16|0;ba=k;J[k+8>>2]=c;h=J[a+12>>2];d=J[a+8>>2];g=h-d>>2;a:{if((g|0)>(b|0)){break a}e=b+1|0;if(e>>>0>g>>>0){l=e-g|0;f=J[a+16>>2];d=J[a+12>>2];if(l>>>0<=f-d>>2>>>0){if(l){e=d;d=l<<2;d=pa(e,0,d)+d|0}J[a+12>>2]=d;break a}b:{c:{d:{m=J[a+8>>2];g=d-m>>2;i=g+l|0;if(i>>>0<1073741824){e=f-m|0;f=e>>>1|0;e=e>>>0>=2147483644?1073741823:f>>>0>i>>>0?f:i;if(e){if(e>>>0>=1073741824){break d}j=oa(e<<2)}h=(g<<2)+j|0;f=l<<2;i=pa(h,0,f);g=f+i|0;e=(e<<2)+j|0;if((d|0)==(m|0)){break c}while(1){d=d-4|0;f=J[d>>2];J[d>>2]=0;h=h-4|0;J[h>>2]=f;if((d|0)!=(m|0)){continue}break}J[a+16>>2]=e;e=J[a+12>>2];J[a+12>>2]=g;d=J[a+8>>2];J[a+8>>2]=h;if((d|0)==(e|0)){break b}while(1){e=e-4|0;f=J[e>>2];J[e>>2]=0;if(f){Ka(f)}if((d|0)!=(e|0)){continue}break}break b}qa();B()}xa();B()}J[a+16>>2]=e;J[a+12>>2]=g;J[a+8>>2]=i}if(d){na(d)}break a}if(e>>>0>=g>>>0){break a}d=d+(e<<2)|0;if((d|0)!=(h|0)){while(1){h=h-4|0;c=J[h>>2];J[h>>2]=0;if(c){Ka(c)}if((d|0)!=(h|0)){continue}break}c=J[k+8>>2]}J[a+12>>2]=d}e:{f:{d=J[c+56>>2];g:{if((d|0)>4){break g}j=P(d,12)+a|0;d=J[j+24>>2];if((d|0)!=J[j+28>>2]){J[d>>2]=b;J[j+24>>2]=d+4;break g}i=J[j+20>>2];g=d-i|0;f=g>>2;e=f+1|0;if(e>>>0>=1073741824){break f}d=g>>>1|0;e=g>>>0>=2147483644?1073741823:d>>>0>e>>>0?d:e;if(e){if(e>>>0>=1073741824){break e}d=oa(e<<2)}else{d=0}f=d+(f<<2)|0;J[f>>2]=b;d=ta(d,i,g);J[j+20>>2]=d;J[j+24>>2]=f+4;J[j+28>>2]=d+(e<<2);if(!i){break g}na(i)}J[c+60>>2]=b;a=J[a+8>>2];J[k+8>>2]=0;a=a+(b<<2)|0;b=J[a>>2];J[a>>2]=c;if(b){Ka(b)}a=J[k+8>>2];J[k+8>>2]=0;if(a){Ka(a)}ba=k+16|0;return}qa();B()}xa();B()}function qf(a,b,c,d){var e=0,f=0,g=0,h=0,i=Q(0),j=0,k=0,l=Q(0);j=J[c>>2];g=j^318;a:{b:{f=J[b+4>>2];if(!f){break b}h=Kl(f);c:{if(h>>>0>=2){e=g;if(e>>>0>=f>>>0){e=(g>>>0)%(f>>>0)|0}c=J[J[b>>2]+(e<<2)>>2];if(!c){break b}if(h>>>0<=1){break c}while(1){c=J[c>>2];if(!c){break b}h=J[c+4>>2];if((h|0)!=(g|0)){if(f>>>0<=h>>>0){h=(h>>>0)%(f>>>0)|0}if((e|0)!=(h|0)){break b}}if(J[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&g;c=J[J[b>>2]+(e<<2)>>2];if(!c){break b}}h=f-1|0;while(1){c=J[c>>2];if(!c){break b}k=J[c+4>>2];if((k|0)!=(g|0)&(h&k)!=(e|0)){break b}if(J[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=oa(16);J[c+8>>2]=J[d>>2];d=J[d+4>>2];J[c+4>>2]=g;J[c+12>>2]=d;J[c>>2]=0;i=Q(J[b+12>>2]+1>>>0);l=N[b+16>>2];d:{if(i>Q(l*Q(f>>>0))?0:f){break d}d=2;h=(f-1&f)!=0|f>>>0<3|f<<1;i=Q(W(Q(i/l)));e:{if(i<Q(4294967296)&i>=Q(0)){e=~~i>>>0;break e}e=0}e=e>>>0<h>>>0?h:e;f:{if((e|0)==1){break f}if(!(e&e-1)){d=e;break f}d=Ha(e);f=J[b+4>>2]}g:{if(d>>>0<=f>>>0){if(d>>>0>=f>>>0){break g}h=f>>>0<3;i=Q(W(Q(Q(M[b+12>>2])/N[b+16>>2])));h:{if(i<Q(4294967296)&i>=Q(0)){e=~~i>>>0;break h}e=0}i:{j:{if(h){break j}if(Kl(f)>>>0>1){break j}e=e>>>0<2?e:1<<32-S(e-1|0);break i}e=Ha(e)}d=d>>>0>e>>>0?d:e;if(f>>>0<=d>>>0){break g}}db(b,d)}f=J[b+4>>2];d=f-1|0;if(!(d&f)){e=d&g;break d}if(f>>>0>g>>>0){e=g;break d}e=(g>>>0)%(f>>>0)|0}g=J[b>>2]+(e<<2)|0;d=J[g>>2];k:{l:{if(!d){d=b+8|0;J[c>>2]=J[d>>2];J[b+8>>2]=c;J[g>>2]=d;d=J[c>>2];if(!d){break k}d=J[d+4>>2];g=f-1|0;m:{if(!(g&f)){d=d&g;break m}if(d>>>0<f>>>0){break m}d=(d>>>0)%(f>>>0)|0}d=J[b>>2]+(d<<2)|0;break l}J[c>>2]=J[d>>2]}J[d>>2]=c}J[b+12>>2]=J[b+12>>2]+1;b=1}H[a+4|0]=b;J[a>>2]=c}function bl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;J[a+8>>2]=e;J[a- -64>>2]=f;o=a+32|0;f=J[o>>2];g=J[a+36>>2]-f>>2;a:{if(g>>>0<e>>>0){Fa(o,e-g|0);break a}if(e>>>0>=g>>>0){break a}J[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=J[b>>2];c:{if((d|0)<2){d=f;break c}h=1;g=d-1|0;n=g&1;d:{if((d|0)==2){d=f;break d}q=g&-2;g=0;d=f;while(1){j=(h<<2)+b|0;k=J[j+4>>2];l=J[j>>2];i=(l|0)<(d|0);d=i?l:d;j=(d|0)>(k|0);d=j?k:d;f=i?f:(f|0)<(l|0)?l:f;f=j?f:(f|0)<(k|0)?k:f;h=h+2|0;g=g+2|0;if((q|0)!=(g|0)){continue}break}}if(!n){break c}h=J[(h<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}J[a+16>>2]=f;J[a+12>>2]=d;g=f-d|0;f=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=g;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;J[a+20>>2]=f;d=f>>>1|0;J[a+24>>2]=d;J[a+28>>2]=0-d;if(f&1){break b}J[a+24>>2]=d-1}r=1;e:{d=J[a+56>>2];d=J[d+4>>2]-J[d>>2]|0;if((d|0)>=4){t=a+60|0;q=a+68|0;n=d>>>2|0;while(1){d=J[a+56>>2];f=J[d>>2];i=n-1|0;if(i>>>0>=J[d+4>>2]-f>>2>>>0){break e}r=qh(t,J[f+(i<<2)>>2],b,i);if(!r){return 0}f=J[a+8>>2];if((f|0)>0){d=P(e,i)<<2;k=d+c|0;l=b+d|0;j=J[o>>2];p=0;g=q;while(1){h=j;if((f|0)>0){h=J[o>>2];f=0;while(1){m=f<<2;s=J[m+g>>2];d=J[a+16>>2];f:{if((s|0)>(d|0)){J[h+m>>2]=d;break f}m=h+m|0;d=J[a+12>>2];if((d|0)>(s|0)){J[m>>2]=d;break f}J[m>>2]=s}f=f+1|0;if((f|0)<J[a+8>>2]){continue}break}}f=p<<2;d=f+k|0;f=J[f+l>>2]-J[f+h>>2]|0;J[d>>2]=f;g:{if((f|0)<J[a+28>>2]){f=f+J[a+20>>2]|0}else{if((f|0)<=J[a+24>>2]){break g}f=f-J[a+20>>2]|0}J[d>>2]=f}g=h;f=J[a+8>>2];p=p+1|0;if((f|0)>(p|0)){continue}break}}d=(n|0)>1;n=i;if(d){continue}break}}return r|0}ra();B()}function Tk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;J[a+8>>2]=e;J[a- -64>>2]=f;o=a+32|0;f=J[o>>2];g=J[a+36>>2]-f>>2;a:{if(g>>>0<e>>>0){Fa(o,e-g|0);break a}if(e>>>0>=g>>>0){break a}J[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=J[b>>2];c:{if((d|0)<2){d=f;break c}h=1;g=d-1|0;n=g&1;d:{if((d|0)==2){d=f;break d}q=g&-2;g=0;d=f;while(1){j=(h<<2)+b|0;k=J[j+4>>2];l=J[j>>2];i=(l|0)<(d|0);d=i?l:d;j=(d|0)>(k|0);d=j?k:d;f=i?f:(f|0)<(l|0)?l:f;f=j?f:(f|0)<(k|0)?k:f;h=h+2|0;g=g+2|0;if((q|0)!=(g|0)){continue}break}}if(!n){break c}h=J[(h<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}J[a+16>>2]=f;J[a+12>>2]=d;g=f-d|0;f=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=g;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;J[a+20>>2]=f;d=f>>>1|0;J[a+24>>2]=d;J[a+28>>2]=0-d;if(f&1){break b}J[a+24>>2]=d-1}r=1;e:{d=J[a+56>>2];d=J[d+4>>2]-J[d>>2]|0;if((d|0)>=4){t=a+60|0;q=a+68|0;n=d>>>2|0;while(1){d=J[a+56>>2];f=J[d>>2];i=n-1|0;if(i>>>0>=J[d+4>>2]-f>>2>>>0){break e}r=lh(t,J[f+(i<<2)>>2],b,i);if(!r){return 0}f=J[a+8>>2];if((f|0)>0){d=P(e,i)<<2;k=d+c|0;l=b+d|0;j=J[o>>2];p=0;g=q;while(1){h=j;if((f|0)>0){h=J[o>>2];f=0;while(1){m=f<<2;s=J[m+g>>2];d=J[a+16>>2];f:{if((s|0)>(d|0)){J[h+m>>2]=d;break f}m=h+m|0;d=J[a+12>>2];if((d|0)>(s|0)){J[m>>2]=d;break f}J[m>>2]=s}f=f+1|0;if((f|0)<J[a+8>>2]){continue}break}}f=p<<2;d=f+k|0;f=J[f+l>>2]-J[f+h>>2]|0;J[d>>2]=f;g:{if((f|0)<J[a+28>>2]){f=f+J[a+20>>2]|0}else{if((f|0)<=J[a+24>>2]){break g}f=f-J[a+20>>2]|0}J[d>>2]=f}g=h;f=J[a+8>>2];p=p+1|0;if((f|0)>(p|0)){continue}break}}d=(n|0)>1;n=i;if(d){continue}break}}return r|0}ra();B()}function bg(a,b,c,d){var e=0,f=0,g=0,h=0,i=Q(0),j=0,k=Q(0);h=J[c>>2];a:{b:{e=J[b+4>>2];if(!e){break b}g=Kl(e);c:{if(g>>>0>=2){f=h;if(f>>>0>=e>>>0){f=(h>>>0)%(e>>>0)|0}c=J[J[b>>2]+(f<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=J[c>>2];if(!c){break b}g=J[c+4>>2];if((g|0)!=(h|0)){if(e>>>0<=g>>>0){g=(g>>>0)%(e>>>0)|0}if((f|0)!=(g|0)){break b}}if(J[c+8>>2]!=(h|0)){continue}break}b=0;break a}f=e-1&h;c=J[J[b>>2]+(f<<2)>>2];if(!c){break b}}g=e-1|0;while(1){c=J[c>>2];if(!c){break b}j=J[c+4>>2];if((j|0)!=(h|0)&(g&j)!=(f|0)){break b}if(J[c+8>>2]!=(h|0)){continue}break}b=0;break a}c=oa(16);d=J[J[d>>2]>>2];J[c+12>>2]=0;J[c+8>>2]=d;J[c+4>>2]=h;J[c>>2]=0;k=Q(J[b+12>>2]+1>>>0);i=N[b+16>>2];d:{if(k>Q(i*Q(e>>>0))?0:e){break d}f=2;g=(e-1&e)!=0|e>>>0<3|e<<1;i=Q(W(Q(k/i)));e:{if(i<Q(4294967296)&i>=Q(0)){d=~~i>>>0;break e}d=0}d=d>>>0<g>>>0?g:d;f:{if((d|0)==1){break f}if(!(d&d-1)){f=d;break f}f=Ha(d);e=J[b+4>>2]}g:{if(e>>>0>=f>>>0){if(e>>>0<=f>>>0){break g}g=e>>>0<3;i=Q(W(Q(Q(M[b+12>>2])/N[b+16>>2])));h:{if(i<Q(4294967296)&i>=Q(0)){d=~~i>>>0;break h}d=0}i:{j:{if(g){break j}if(Kl(e)>>>0>1){break j}d=d>>>0<2?d:1<<32-S(d-1|0);break i}d=Ha(d)}f=d>>>0<f>>>0?f:d;if(f>>>0>=e>>>0){break g}}db(b,f)}e=J[b+4>>2];d=e-1|0;if(!(d&e)){f=d&h;break d}if(e>>>0>h>>>0){f=h;break d}f=(h>>>0)%(e>>>0)|0}f=J[b>>2]+(f<<2)|0;d=J[f>>2];k:{l:{if(!d){d=b+8|0;J[c>>2]=J[d>>2];J[b+8>>2]=c;J[f>>2]=d;d=J[c>>2];if(!d){break k}d=J[d+4>>2];f=e-1|0;m:{if(!(f&e)){d=d&f;break m}if(d>>>0<e>>>0){break m}d=(d>>>0)%(e>>>0)|0}d=J[b>>2]+(d<<2)|0;break l}J[c>>2]=J[d>>2]}J[d>>2]=c}J[b+12>>2]=J[b+12>>2]+1;b=1}H[a+4|0]=b;J[a>>2]=c}function Ik(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=ba-32|0;ba=d;p=e<<2;f=e>>>0>1073741823?-1:p;l=pa(oa(f),0,f);f=J[a+40>>2];f=J[f+4>>2]-J[f>>2]|0;if((f|0)>=5){q=J[a+36>>2];n=J[a+32>>2];r=e&-2;s=e&1;t=a+8|0;f=f>>>2|0;while(1){j=J[a+40>>2];g=J[j>>2];a:{b:{h=J[j+4>>2]-g>>2;j=f-1|0;if(h>>>0>j>>>0){u=P(e,j);g=J[g+(j<<2)>>2];if((g|0)==-1|J[J[n>>2]+(g>>>3&536870908)>>2]>>>g&1){break b}g=J[J[J[n+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break b}k=J[q>>2];h=J[n+28>>2];m=J[k+(J[h+(g<<2)>>2]<<2)>>2];if((m|0)>=(j|0)){break b}i=g+1|0;i=J[k+(J[h+(((i>>>0)%3|0?i:g-2|0)<<2)>>2]<<2)>>2];if((i|0)>=(j|0)){break b}g=J[k+(J[h+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(j|0)){break b}c:{if((e|0)<=0){break c}h=P(e,g);k=P(e,i);m=P(e,m);g=0;o=0;if((e|0)!=1){while(1){J[(g<<2)+l>>2]=(J[(g+h<<2)+b>>2]+J[(g+k<<2)+b>>2]|0)-J[(g+m<<2)+b>>2];i=g|1;J[(i<<2)+l>>2]=(J[(h+i<<2)+b>>2]+J[(i+k<<2)+b>>2]|0)-J[(i+m<<2)+b>>2];g=g+2|0;o=o+2|0;if((r|0)!=(o|0)){continue}break}}if(!s){break c}J[(g<<2)+l>>2]=(J[(g+h<<2)+b>>2]+J[(g+k<<2)+b>>2]|0)-J[(g+m<<2)+b>>2]}g=J[l>>2];h=J[l+4>>2];break a}ra();B()}h=(P(f-2|0,e)<<2)+b|0;g=J[h>>2];h=J[h+4>>2]}k=u<<2;m=k+b|0;i=J[m+4>>2];J[d+16>>2]=J[m>>2];J[d+20>>2]=i;J[d+8>>2]=g;J[d+12>>2]=h;Ya(d+24|0,t,d+16|0,d+8|0);g=c+k|0;J[g>>2]=J[d+24>>2];J[g+4>>2]=J[d+28>>2];g=(f|0)>2;f=j;if(g){continue}break}}if((e|0)>0){pa(l,0,p)}e=J[l>>2];f=J[l+4>>2];g=J[b+4>>2];J[d+16>>2]=J[b>>2];J[d+20>>2]=g;J[d+8>>2]=e;J[d+12>>2]=f;Ya(d+24|0,a+8|0,d+16|0,d+8|0);J[c>>2]=J[d+24>>2];J[c+4>>2]=J[d+28>>2];na(l);ba=d+32|0;return 1}function ya(a,b){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;g=ba-32|0;ba=g;e=J[a>>2];d=J[e>>2];c=J[e+4>>2];k=+(d>>>0)+ +(c>>>0)*4294967296;c=J[e+12>>2]+c|0;i=d;d=J[e+8>>2];e=i+d|0;c=e>>>0<d>>>0?c+1|0:c;i=e;e=!(c|e);k=k/(+((e?1:i)>>>0)+ +((e?0:c)>>>0)*4294967296)*256+.5;a:{if(k<4294967296&k>=0){c=~~k>>>0;break a}c=0}c=c>>>0>=255?255:c;l=!c+c|0;H[g+23|0]=l;j=J[a+16>>2];p=J[a+12>>2];J[g+16>>2]=0;J[g+8>>2]=0;J[g+12>>2]=0;b:{c:{c=(j-p<<1)- -64|0;if(c){if((c|0)<0){break c}h=oa(c);pa(h,0,c)}c=J[a+28>>2]-1|0;if((c|0)<0){d=4096;break b}m=0-l|0;q=m&255;i=J[a+24>>2];d=4096;while(1){n=i&1<<c;e=(n?m:l)&255;if(e<<12>>>0<=d>>>0){H[f+h|0]=d;f=f+1|0;d=d>>>8|0}o=(e<<3)+12784|0;Hl(J[o>>2],0,d,0);d=((n?0:q)+d|0)+P(256-e|0,ca+d>>>J[o+4>>2]|0)|0;c=c-1|0;if((c|0)>=0){continue}break}break b}qa();B()}if((j|0)!=(p|0)){m=0-l|0;q=m&255;while(1){j=j-4|0;i=J[j>>2];c=31;while(1){e=c;n=i&1<<c;c=(n?m:l)&255;if(c<<12>>>0<=d>>>0){H[f+h|0]=d;f=f+1|0;d=d>>>8|0}o=(c<<3)+12784|0;Hl(J[o>>2],0,d,0);d=((n?0:q)+d|0)+P(256-c|0,ca+d>>>J[o+4>>2]|0)|0;c=e-1|0;if(e){continue}break}if((j|0)!=(p|0)){continue}break}}c=d-4096|0;d:{if(c>>>0<=63){H[f+h|0]=d;f=f+1|0;break d}if(c>>>0<=16383){c=f+h|0;H[c|0]=d;H[c+1|0]=d+12288>>>8;f=f+2|0;break d}if(c>>>0>4194303){break d}c=f+h|0;H[c|0]=d;e=d+8384512|0;H[c+2|0]=e>>>16;H[c+1|0]=e>>>8;f=f+3|0}c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],g+23|0,g+24|0)}Aa(f,b);c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],h,f+h|0)}J[g+24>>2]=0;J[g+28>>2]=0;ie(a,g+24|0);J[a+24>>2]=0;J[a+28>>2]=0;J[a+16>>2]=J[a+12>>2];if(h){na(h)}ba=g+32|0}function he(a){var b=0,c=0,d=0,e=0;d=ba-16|0;ba=d;J[a+4>>2]=0;J[a+8>>2]=0;c=a+16|0;b=c;J[b>>2]=0;J[b+4>>2]=0;J[a>>2]=a+4;b=a+28|0;J[b>>2]=0;J[b+4>>2]=0;J[a+12>>2]=c;J[a+24>>2]=b;b=oa(32);J[d>>2]=b;J[d+4>>2]=20;J[d+8>>2]=-2147483616;c=K[1359]|K[1360]<<8|(K[1361]<<16|K[1362]<<24);H[b+16|0]=c;H[b+17|0]=c>>>8;H[b+18|0]=c>>>16;H[b+19|0]=c>>>24;c=K[1355]|K[1356]<<8|(K[1357]<<16|K[1358]<<24);e=K[1351]|K[1352]<<8|(K[1353]<<16|K[1354]<<24);H[b+8|0]=e;H[b+9|0]=e>>>8;H[b+10|0]=e>>>16;H[b+11|0]=e>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1347]|K[1348]<<8|(K[1349]<<16|K[1350]<<24);e=K[1343]|K[1344]<<8|(K[1345]<<16|K[1346]<<24);H[b|0]=e;H[b+1|0]=e>>>8;H[b+2|0]=e>>>16;H[b+3|0]=e>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+20|0]=0;e=a+24|0;vb(e,d,1);if(H[d+11|0]<0){na(J[d>>2])}a=oa(32);J[d>>2]=a;J[d+4>>2]=22;J[d+8>>2]=-2147483616;b=K[1338]|K[1339]<<8|(K[1340]<<16|K[1341]<<24);c=K[1334]|K[1335]<<8|(K[1336]<<16|K[1337]<<24);H[a+14|0]=c;H[a+15|0]=c>>>8;H[a+16|0]=c>>>16;H[a+17|0]=c>>>24;H[a+18|0]=b;H[a+19|0]=b>>>8;H[a+20|0]=b>>>16;H[a+21|0]=b>>>24;b=K[1332]|K[1333]<<8|(K[1334]<<16|K[1335]<<24);c=K[1328]|K[1329]<<8|(K[1330]<<16|K[1331]<<24);H[a+8|0]=c;H[a+9|0]=c>>>8;H[a+10|0]=c>>>16;H[a+11|0]=c>>>24;H[a+12|0]=b;H[a+13|0]=b>>>8;H[a+14|0]=b>>>16;H[a+15|0]=b>>>24;b=K[1324]|K[1325]<<8|(K[1326]<<16|K[1327]<<24);c=K[1320]|K[1321]<<8|(K[1322]<<16|K[1323]<<24);H[a|0]=c;H[a+1|0]=c>>>8;H[a+2|0]=c>>>16;H[a+3|0]=c>>>24;H[a+4|0]=b;H[a+5|0]=b>>>8;H[a+6|0]=b>>>16;H[a+7|0]=b>>>24;H[a+22|0]=0;vb(e,d,1);if(H[d+11|0]<0){na(J[d>>2])}ba=d+16|0}function of(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=J[a+8>>2];e=J[a+4>>2];if((f-e|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=e;g=P(b,12)-12|0;h=((g>>>0)/12|0)+1&3;if(h){while(1){f=J[c+4>>2];J[d>>2]=J[c>>2];J[d+4>>2]=f;J[d+8>>2]=J[c+8>>2];d=d+12|0;j=j+1|0;if((h|0)!=(j|0)){continue}break}}e=P(b,12)+e|0;if(g>>>0<36){break a}while(1){b=J[c+4>>2];J[d>>2]=J[c>>2];J[d+4>>2]=b;J[d+8>>2]=J[c+8>>2];J[d+20>>2]=J[c+8>>2];b=J[c+4>>2];J[d+12>>2]=J[c>>2];J[d+16>>2]=b;J[d+32>>2]=J[c+8>>2];b=J[c+4>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=b;b=J[c+4>>2];J[d+36>>2]=J[c>>2];J[d+40>>2]=b;J[d+44>>2]=J[c+8>>2];d=d+48|0;if((e|0)!=(d|0)){continue}break}}J[a+4>>2]=e;return}b:{d=J[a>>2];h=(e-d|0)/12|0;g=h+b|0;if(g>>>0<357913942){f=(f-d|0)/12|0;d=f<<1;k=f>>>0>=178956970?357913941:d>>>0>g>>>0?d:g;if(k){if(k>>>0>=357913942){break b}l=oa(P(k,12))}i=P(h,12)+l|0;d=i;g=P(b,12);h=g-12|0;f=((h>>>0)/12|0)+1&3;if(f){while(1){b=J[c+4>>2];J[d>>2]=J[c>>2];J[d+4>>2]=b;J[d+8>>2]=J[c+8>>2];d=d+12|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}}f=g+i|0;if(h>>>0>=36){while(1){b=J[c+4>>2];J[d>>2]=J[c>>2];J[d+4>>2]=b;J[d+8>>2]=J[c+8>>2];J[d+20>>2]=J[c+8>>2];b=J[c+4>>2];J[d+12>>2]=J[c>>2];J[d+16>>2]=b;J[d+32>>2]=J[c+8>>2];b=J[c+4>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=b;b=J[c+4>>2];J[d+36>>2]=J[c>>2];J[d+40>>2]=b;J[d+44>>2]=J[c+8>>2];d=d+48|0;if((f|0)!=(d|0)){continue}break}}c=J[a>>2];if((c|0)!=(e|0)){while(1){e=e-12|0;b=J[e+4>>2];i=i-12|0;d=i;J[d>>2]=J[e>>2];J[d+4>>2]=b;J[d+8>>2]=J[e+8>>2];if((c|0)!=(e|0)){continue}break}e=J[a>>2]}J[a+8>>2]=P(k,12)+l;J[a+4>>2]=f;J[a>>2]=i;if(e){na(e)}return}qa();B()}xa();B()}function ng(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=ba-112|0;ba=c;d=oa(120);i=J[a+8>>2];J[d+12>>2]=0;J[d+16>>2]=0;J[d>>2]=11224;J[d+4>>2]=0;J[d+20>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;J[d+52>>2]=0;J[d+56>>2]=0;J[d+60>>2]=0;J[d+8>>2]=11436;e=d- -64|0;J[e>>2]=0;J[e+4>>2]=0;J[d+72>>2]=0;J[d+76>>2]=0;J[d+80>>2]=0;J[d+84>>2]=0;J[d+88>>2]=0;J[d+116>>2]=0;J[d+112>>2]=b;J[d+108>>2]=i;J[d+104>>2]=0;J[d+96>>2]=0;J[d+100>>2]=0;g=J[a+12>>2];J[c+48>>2]=0;J[c+52>>2]=0;J[c+40>>2]=0;J[c+44>>2]=0;f=c+32|0;e=f;J[e>>2]=0;J[e+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;e=c- -64|0;J[e>>2]=0;J[e+4>>2]=0;J[c+72>>2]=0;J[c+76>>2]=0;J[c+80>>2]=0;J[c+84>>2]=0;J[c+88>>2]=0;J[c+104>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+56>>2]=0;J[c+60>>2]=0;J[c+8>>2]=11436;J[c+96>>2]=0;J[c+100>>2]=0;J[c+12>>2]=g;h=J[g>>2];e=J[g+4>>2];H[c+111|0]=0;j=f;f=c+111|0;Na(j,(e-h>>2>>>0)/3|0,f);e=J[c+12>>2];h=J[e+28>>2];e=J[e+24>>2];H[c+111|0]=0;Na(c+44|0,h-e>>2,f);J[c+28>>2]=d;J[c+24>>2]=i;J[c+20>>2]=b;J[c+16>>2]=g;J[d+116>>2]=a+72;a=d+8|0;b=c+8|0;Kc(a,b);a:{if((a|0)==(b|0)){J[d+92>>2]=J[b+84>>2];break a}Rb(d+56|0,J[b+48>>2],J[b+52>>2]);Rb(d+68|0,J[b+60>>2],J[b- -64>>2]);Rb(d+80|0,J[b+72>>2],J[b+76>>2]);J[d+92>>2]=J[b+84>>2];bb(d+96|0,J[b+88>>2],J[b+92>>2])}J[c+8>>2]=11436;a=J[c+96>>2];if(a){J[c+100>>2]=a;na(a)}a=J[c+80>>2];if(a){J[c+84>>2]=a;na(a)}a=J[c+68>>2];if(a){J[c+72>>2]=a;na(a)}a=J[c+56>>2];if(a){J[c+60>>2]=a;na(a)}J[c+8>>2]=11672;a=J[c+44>>2];if(a){na(a)}a=J[c+32>>2];if(a){na(a)}ba=c+112|0;return d}function vb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=ba-48|0;ba=g;f=ba-32|0;ba=f;h=f+21|0;d=h;l=f+32|0;e=l;if(!((d|0)==(e|0)|(c|0)>=0)){H[d|0]=45;d=d+1|0;c=0-c|0}i=e-d|0;a:{if((i|0)<=9){j=P(32-S(c|1)|0,1233)>>12;k=61;if((i|0)<((M[(j<<2)+18192>>2]<=c>>>0)+j|0)){break a}}b:{if(c>>>0<=999999){if(c>>>0<=9999){if(c>>>0<=99){if(c>>>0<=9){H[d|0]=c+48;e=d+1|0;break b}e=Fb(d,c);break b}if(c>>>0<=999){e=(c>>>0)/100|0;H[d|0]=e+48;e=Fb(d+1|0,c-P(e,100)|0);break b}e=fd(d,c);break b}if(c>>>0<=99999){e=(c>>>0)/1e4|0;H[d|0]=e+48;e=fd(d+1|0,c-P(e,1e4)|0);break b}e=ed(d,c);break b}if(c>>>0<=99999999){if(c>>>0<=9999999){e=(c>>>0)/1e6|0;H[d|0]=e+48;e=ed(d+1|0,c-P(e,1e6)|0);break b}e=dd(d,c);break b}if(c>>>0<=999999999){e=(c>>>0)/1e8|0;H[d|0]=e+48;e=dd(d+1|0,c-P(e,1e8)|0);break b}e=d;d=(c>>>0)/1e8|0;e=dd(Fb(e,d),c-P(d,1e8)|0)}k=0}J[f+12>>2]=k;J[f+8>>2]=e;j=ba-16|0;ba=j;e=ba-16|0;ba=e;c=g+8|0;c:{i=J[f+8>>2];f=i-h|0;if(f>>>0<=2147483631){d:{if(f>>>0<11){H[c+11|0]=f|K[c+11|0]&128;H[c+11|0]=K[c+11|0]&127;d=c;break d}k=e+8|0;if(f>>>0>=11){m=f+16&-16;d=m-1|0;d=(d|0)==11?m:d}else{d=10}Ac(k,d+1|0);d=J[e+8>>2];J[c>>2]=d;J[c+8>>2]=J[c+8>>2]&-2147483648|J[e+12>>2]&2147483647;J[c+8>>2]=J[c+8>>2]|-2147483648;J[c+4>>2]=f}while(1){if((h|0)!=(i|0)){H[d|0]=K[h|0];d=d+1|0;h=h+1|0;continue}break}H[e+7|0]=0;H[d|0]=K[e+7|0];ba=e+16|0;break c}gb();B()}ba=j+16|0;ba=l;J[g+32>>2]=b;ge(g+40|0,a,b,g+32|0);a=J[g+40>>2];if(H[a+39|0]<0){na(J[a+28>>2])}b=J[g+12>>2];J[a+28>>2]=J[g+8>>2];J[a+32>>2]=b;J[a+36>>2]=J[g+16>>2];ba=g+48|0}function df(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=Q(0);a:{b:{c:{d:{d=2;e:{if((b|0)==1){break e}d=b;if(!(b-1&b)){break e}d=Ha(b)}b=J[a+4>>2];if(d>>>0<=b>>>0){if(b>>>0<=d>>>0){break a}e=b>>>0<3;i=Q(W(Q(Q(M[a+12>>2])/N[a+20>>2])));f:{if(i<Q(4294967296)&i>=Q(0)){c=~~i>>>0;break f}c=0}g:{h:{if(e){break h}if(Kl(b)>>>0>1){break h}c=c>>>0<2?c:1<<32-S(c-1|0);break g}c=Ha(c)}d=c>>>0<d>>>0?d:c;if(b>>>0<=d>>>0){break a}if(!d){break d}}if(d>>>0>=1073741824){break c}c=oa(d<<2);b=J[a>>2];J[a>>2]=c;if(b){na(b)}J[a+4>>2]=d;e=0;b=0;if(d-1>>>0>=3){g=d&-4;while(1){c=b<<2;J[c+J[a>>2]>>2]=0;J[J[a>>2]+(c|4)>>2]=0;J[J[a>>2]+(c|8)>>2]=0;J[J[a>>2]+(c|12)>>2]=0;b=b+4|0;f=f+4|0;if((g|0)!=(f|0)){continue}break}}c=d&3;if(c){while(1){J[J[a>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=J[a+8>>2];if(!b){break a}c=a+8|0;f=J[b+4>>2];e=d-1|0;if(!(e&d)){break b}f=d>>>0<=f>>>0?(f>>>0)%(d>>>0)|0:f;J[J[a>>2]+(f<<2)>>2]=c;while(1){c=J[b>>2];if(!c){break a}e=J[c+4>>2];if(e>>>0>=d>>>0){e=(e>>>0)%(d>>>0)|0}if((e|0)==(f|0)){b=c;continue}g=e<<2;h=g+J[a>>2]|0;if(J[h>>2]){J[b>>2]=J[c>>2];J[c>>2]=J[J[g+J[a>>2]>>2]>>2];J[J[g+J[a>>2]>>2]>>2]=c}else{J[h>>2]=b;b=c;f=e}continue}}b=J[a>>2];J[a>>2]=0;if(b){na(b)}J[a+4>>2]=0;break a}xa();B()}f=e&f;J[J[a>>2]+(f<<2)>>2]=c;while(1){c=J[b>>2];if(!c){break a}d=e&J[c+4>>2];if((d|0)==(f|0)){b=c;continue}g=d<<2;h=g+J[a>>2]|0;if(J[h>>2]){J[b>>2]=J[c>>2];J[c>>2]=J[J[g+J[a>>2]>>2]>>2];J[J[g+J[a>>2]>>2]>>2]=c}else{J[h>>2]=b;b=c;f=d}continue}}}function Be(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=ba-32|0;ba=h;e=a+4|0;a=ob(a,b);a:{if((e|0)==(a|0)){break a}b:{if(H[a+39|0]>=0){J[h+24>>2]=J[a+36>>2];b=J[a+32>>2];J[h+16>>2]=J[a+28>>2];J[h+20>>2]=b;break b}Ga(h+16|0,J[a+28>>2],J[a+32>>2])}b=K[h+27|0];a=b<<24>>24;if(!(!((a|0)<0?J[h+20>>2]:b)|(c|0)<=0)){b=0;a=(a|0)<0?J[h+16>>2]:h+16|0;while(1){c:{l=ba-16|0;ba=l;Xe(l,a,h+12|0,0);j=J[l>>2];k=J[l+4>>2];i=ba-32|0;ba=i;n=J[l+12>>2];g=n&2147483647;e=g-1065418752|0;m=g-1082064896|0;f=J[l+8>>2];d:{if((e|0)==(m|0)&f>>>0<f>>>0|e>>>0<m>>>0){g=(n&33554431)<<7|f>>>25;e=0;m=e;f=f&33554431;if(!(!e&(f|0)==16777216?!(j|k):!e&f>>>0<16777216)){e=g+1073741825|0;break d}e=g+1073741824|0;if(f^16777216|j|(k|m)){break d}e=(g&1)+e|0;break d}if(!(!f&(g|0)==2147418112?!(j|k):g>>>0<2147418112)){e=((n&33554431)<<7|f>>>25)&4194303|2143289344;break d}e=2139095040;if(g>>>0>1082064895){break d}e=0;g=g>>>16|0;if(g>>>0<16145){break d}e=n&65535|65536;Pa(i+16|0,j,k,f,e,g-16129|0);Gb(i,j,k,f,e,16257-g|0);f=J[i+8>>2];e=(J[i+12>>2]&33554431)<<7|f>>>25;g=J[i>>2]|(J[i+16>>2]|J[i+24>>2]|(J[i+20>>2]|J[i+28>>2]))!=0;k=J[i+4>>2];j=0;f=f&33554431;if(!(!j&(f|0)==16777216?!(g|k):!j&f>>>0<16777216)){e=e+1|0;break d}if(f^16777216|g|(j|k)){break d}e=(e&1)+e|0}ba=i+32|0;ba=l+16|0;m=a;a=J[h+12>>2];if((m|0)==(a|0)){break c}J[(b<<2)+d>>2]=n&-2147483648|e;b=b+1|0;if((c|0)!=(b|0)){continue}}break}a=K[h+27|0]}if(a<<24>>24>=0){break a}na(J[h+16>>2])}ba=h+32|0}function bh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=J[b+48>>2];d=ba-32|0;ba=d;J[d+28>>2]=a;a=0;a:{if((cb(f)|0)>9){break a}if((da[J[J[b>>2]+8>>2]](b)|0)!=1){break a}a=oa(32);J[d+16>>2]=a;J[d+20>>2]=17;J[d+24>>2]=-2147483616;H[a+16|0]=K[1261];e=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);c=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[a+8|0]=c;H[a+9|0]=c>>>8;H[a+10|0]=c>>>16;H[a+11|0]=c>>>24;H[a+12|0]=e;H[a+13|0]=e>>>8;H[a+14|0]=e>>>16;H[a+15|0]=e>>>24;e=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);c=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[a|0]=c;H[a+1|0]=c>>>8;H[a+2|0]=c>>>16;H[a+3|0]=c>>>24;H[a+4|0]=e;H[a+5|0]=e>>>8;H[a+6|0]=e>>>16;H[a+7|0]=e>>>24;H[a+17|0]=0;a=jb(f,d+28|0,d+16|0,-1);if(H[d+27|0]<0){na(J[d+16>>2])}c=J[b+4>>2];e=J[J[c+8>>2]+(J[d+28>>2]<<2)>>2];b:{if((a|0)==-1|J[e+56>>2]!=3|K[e+24|0]!=2){break b}c=rd(c);if(!c){break b}c=J[c+28>>2];if(!(2558>>>c&c>>>0<12)){h=d,i=Nb(J[b+4>>2],0),J[h+12>>2]=i;c=Pc(d+16|0,1245);g=jb(f,d+12|0,c,-1);if(H[c+11|0]<0){na(J[c>>2])}if((a+(g<<1)|0)>63|g-1>>>0>20){break b}}a=5;if((cb(f)|0)<4){break a}}a=J[e+56>>2];e=cb(f);if((a|0)==1){c:{if((e|0)>3){break c}h=d,i=Nb(J[b+4>>2],0),J[h+12>>2]=i;a=rd(J[b+4>>2]);if(!a){break c}a=J[a+28>>2];if(2558>>>a&a>>>0<12){a=6;break a}a=Pc(d+16|0,1245);b=jb(f,d+12|0,a,-1);if(H[a+11|0]<0){na(J[a>>2])}a=6;if((b|0)>0){break a}}a=0;break a}a=0;if((e|0)>7){break a}a=1;if((cb(f)|0)>1){break a}a=M[J[b+4>>2]+80>>2]<40?1:4}ba=d+32|0;return a}function hc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Ig(a,i,c,h,e);f=b;b=e+j|0;Ig(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}hc(a,i,c,h,e,f);hc(i,b,c,g,e,f);de(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function gc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Hg(a,i,c,h,e);f=b;b=e+j|0;Hg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}gc(a,i,c,h,e,f);gc(i,b,c,g,e,f);ce(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function fc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Gg(a,i,c,h,e);f=b;b=e+j|0;Gg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}fc(a,i,c,h,e,f);fc(i,b,c,g,e,f);be(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function ec(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Fg(a,i,c,h,e);f=b;b=e+j|0;Fg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}ec(a,i,c,h,e,f);ec(i,b,c,g,e,f);ae(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function dc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Eg(a,i,c,h,e);f=b;b=e+j|0;Eg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}dc(a,i,c,h,e,f);dc(i,b,c,g,e,f);$d(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function cc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Dg(a,i,c,h,e);f=b;b=e+j|0;Dg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}cc(a,i,c,h,e,f);cc(i,b,c,g,e,f);_d(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function bc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Cg(a,i,c,h,e);f=b;b=e+j|0;Cg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}bc(a,i,c,h,e,f);bc(i,b,c,g,e,f);Zd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function ac(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Bg(a,i,c,h,e);f=b;b=e+j|0;Bg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}ac(a,i,c,h,e,f);ac(i,b,c,g,e,f);Yd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function _b(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){zg(a,i,c,h,e);f=b;b=e+j|0;zg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}_b(a,i,c,h,e,f);_b(i,b,c,g,e,f);Wd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Zb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){yg(a,i,c,h,e);f=b;b=e+j|0;yg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Zb(a,i,c,h,e,f);Zb(i,b,c,g,e,f);Vd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Yb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){wg(a,i,c,h,e);f=b;b=e+j|0;wg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Yb(a,i,c,h,e,f);Yb(i,b,c,g,e,f);Ud(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Xb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){vg(a,i,c,h,e);f=b;b=e+j|0;vg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Xb(a,i,c,h,e,f);Xb(i,b,c,g,e,f);Td(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Wb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){ug(a,i,c,h,e);f=b;b=e+j|0;ug(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Wb(a,i,c,h,e,f);Wb(i,b,c,g,e,f);Sd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Vb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){tg(a,i,c,h,e);f=b;b=e+j|0;tg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Vb(a,i,c,h,e,f);Vb(i,b,c,g,e,f);Rd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Ub(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){sg(a,i,c,h,e);f=b;b=e+j|0;sg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Ub(a,i,c,h,e,f);Ub(i,b,c,g,e,f);Qd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Tb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){rg(a,i,c,h,e);f=b;b=e+j|0;rg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Tb(a,i,c,h,e,f);Tb(i,b,c,g,e,f);Pd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Sb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){qg(a,i,c,h,e);f=b;b=e+j|0;qg(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}Sb(a,i,c,h,e,f);Sb(i,b,c,g,e,f);Od(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function $b(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;e=b-4|0;b=J[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break c}if(M[c+(b<<3)>>2]>=M[c+(d<<3)>>2]){break a}J[a>>2]=b;J[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}i=J[c>>2];while(1){f=J[d>>2];e:{e=a;if((e|0)==(d|0)){break e}f:{h=J[i>>2];j=J[i+4>>2]-h>>3;if(j>>>0<=f>>>0){break f}k=h+(f<<3)|0;e=d;while(1){c=e-4|0;g=J[c>>2];if(g>>>0>=j>>>0){break f}if(M[k>>2]>=M[h+(g<<3)>>2]){break e}J[e>>2]=g;e=c;if((e|0)!=(a|0)){continue}break}e=a;break e}ra();B()}J[e>>2]=f;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ra();B()}h=d>>>1|0;g=d-h|0;j=h<<2;i=j+a|0;g:{h:{if((d|0)<=(f|0)){Ag(a,i,c,h,e);f=b;b=e+j|0;Ag(i,f,c,g,b);f=(d<<2)+e|0;c=J[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){J[a>>2]=J[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}i=J[c>>2];g=J[c+4>>2]-i>>3;h=J[d>>2];if(g>>>0<=h>>>0){break h}k=g;g=J[e>>2];if(k>>>0<=g>>>0){break h}j=g;k=h;h=J[i+(h<<3)>>2];i=J[i+(g<<3)>>2];g=h>>>0>=i>>>0;J[a>>2]=g?j:k;d=((i>>>0>h>>>0)<<2)+d|0;a=a+4|0;e=(g<<2)+e|0;if((b|0)!=(e|0)){continue}break}break g}$b(a,i,c,h,e,f);$b(i,b,c,g,e,f);Xd(a,i,b,c,h,g,e,f);return}ra();B()}if((d|0)==(f|0)){break a}while(1){J[a>>2]=J[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Ii(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=ba-32|0;ba=a;a:{b:{c:{d:{if(!b){break d}f=rb(c);if(f>>>0>=2147483632){break c}e:{f:{if(f>>>0>=11){g=(f|15)+1|0;h=oa(g);J[a+24>>2]=g|-2147483648;J[a+16>>2]=h;J[a+20>>2]=f;g=f+h|0;break f}H[a+27|0]=f;h=a+16|0;g=f+h|0;if(!f){break e}}ua(h,c,f)}H[g|0]=0;J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;if(e){if((e|0)<0){break b}c=e<<2;e=oa(c);J[a>>2]=e;f=c+e|0;J[a+8>>2]=f;ua(e,d,c);J[a+4>>2]=f}f=ba-48|0;ba=f;e=ob(b,a+16|0);if((e|0)!=(b+4|0)){c=J[e+4>>2];g:{if(!c){c=e;while(1){d=J[c+8>>2];g=J[d>>2]!=(c|0);c=d;if(g){continue}break}break g}while(1){d=c;c=J[c>>2];if(c){continue}break}}if((e|0)==J[b>>2]){J[b>>2]=d}J[b+8>>2]=J[b+8>>2]-1;Dc(J[b+4>>2],e);c=J[e+28>>2];if(c){J[e+32>>2]=c;na(c)}if(H[e+27|0]<0){na(J[e+16>>2])}na(e)}J[f+8>>2]=0;J[f>>2]=0;J[f+4>>2]=0;c=J[a+4>>2];d=J[a>>2];e=c-d|0;g=0;h:{i:{if((c|0)!=(d|0)){if((e|0)<0){break i}g=oa(e);c=pa(g,0,e);h=c+e|0;J[f+8>>2]=h;J[f+4>>2]=h;J[f>>2]=c;c=d}ua(g,c,e);j:{if(H[a+27|0]>=0){J[f+24>>2]=J[a+24>>2];c=J[a+20>>2];J[f+16>>2]=J[a+16>>2];J[f+20>>2]=c;break j}Ga(f+16|0,J[a+16>>2],J[a+20>>2])}Ob(f+28|0,f);c=f+16|0;Cc(f+40|0,b,c,c);c=J[f+28>>2];if(c){J[f+32>>2]=c;na(c)}if(H[f+27|0]<0){na(J[f+16>>2])}c=J[f>>2];if(c){J[f+4>>2]=c;na(c)}ba=f+48|0;break h}qa();B()}c=J[a>>2];if(c){J[a+4>>2]=c;na(c)}if(H[a+27|0]>=0){break d}na(J[a+16>>2])}ba=a+32|0;a=(b|0)!=0;break a}gb();B()}qa();B()}return a|0}function gd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=ba-16|0;ba=d;g=ba-16|0;ba=g;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;ba=g+16|0;md(d,K[d+11|0]>>>7|0?(J[d+8>>2]&2147483647)-1|0:10);i=ba-16|0;ba=i;l=+b;if(K[d+11|0]>>>7|0){g=J[d+4>>2]}else{g=K[d+11|0]&127}while(1){a:{if(K[d+11|0]>>>7|0){e=J[d>>2]}else{e=d}O[i>>3]=l;k=ba-16|0;ba=k;J[k+12>>2]=i;c=ba-160|0;ba=c;f=g+1|0;h=f?e:c+158|0;J[c+144>>2]=h;e=-1;j=f-1|0;J[c+148>>2]=f>>>0>=j>>>0?j:0;c=pa(c,0,144);J[c+76>>2]=-1;J[c+36>>2]=371;J[c+80>>2]=-1;J[c+44>>2]=c+159;J[c+84>>2]=c+144;b:{if((f|0)<0){J[4804]=61;break b}H[h|0]=0;h=0;f=ba-208|0;ba=f;J[f+204>>2]=i;e=f+160|0;pa(e,0,40);J[f+200>>2]=J[f+204>>2];c:{if((Ue(0,f+200|0,f+80|0,e)|0)<0){e=-1;break c}m=J[c+76>>2]>=0;j=J[c>>2];if(J[c+72>>2]<=0){J[c>>2]=j&-33}d:{e:{f:{if(!J[c+48>>2]){J[c+48>>2]=80;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;h=J[c+44>>2];J[c+44>>2]=f;break f}if(J[c+16>>2]){break e}}e=-1;if(We(c)){break d}}e=Ue(c,f+200|0,f+80|0,f+160|0)}if(h){da[J[c+36>>2]](c,0,0)|0;J[c+48>>2]=0;J[c+44>>2]=h;J[c+28>>2]=0;h=J[c+20>>2];J[c+16>>2]=0;J[c+20>>2]=0;e=h?e:-1}h=J[c>>2];J[c>>2]=h|j&32;e=h&32?-1:e;if(!m){break c}}ba=f+208|0}ba=c+160|0;ba=k+16|0;g:{if((e|0)>=0){if(e>>>0<=g>>>0){break a}g=e;break g}g=g<<1|1}md(d,g);continue}break}md(d,e);g=J[d+4>>2];J[a>>2]=J[d>>2];J[a+4>>2]=g;J[a+8>>2]=J[d+8>>2];J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;ba=i+16|0;if(K[d+11|0]>>>7|0){na(J[d>>2])}ba=d+16|0}function tl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=ba-16|0;ba=c;b=J[J[a+4>>2]+(b<<2)>>2];J[c+12>>2]=b;a=J[a+28>>2];e=J[J[J[a+4>>2]+8>>2]+(b<<2)>>2];b=J[e+28>>2];a:{if(b-1>>>0>=6){b:{if((b|0)!=9){break b}f=J[a+48>>2];a=oa(32);J[c>>2]=a;J[c+4>>2]=17;J[c+8>>2]=-2147483616;H[a+16|0]=K[1261];b=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);d=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[a+8|0]=d;H[a+9|0]=d>>>8;H[a+10|0]=d>>>16;H[a+11|0]=d>>>24;H[a+12|0]=b;H[a+13|0]=b>>>8;H[a+14|0]=b>>>16;H[a+15|0]=b>>>24;b=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);d=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[a|0]=d;H[a+1|0]=d>>>8;H[a+2|0]=d>>>16;H[a+3|0]=d>>>24;H[a+4|0]=b;H[a+5|0]=b>>>8;H[a+6|0]=b>>>16;H[a+7|0]=b>>>24;H[a+17|0]=0;a=jb(f,c+12|0,c,-1);if(H[c+11|0]<0){na(J[c>>2])}if((a|0)<=0){break b}if(J[e+56>>2]==1){a=oa(48);J[a>>2]=0;J[a+4>>2]=0;J[a+40>>2]=0;J[a+44>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;a=ne(a);J[a+40>>2]=1032;J[a>>2]=6308;J[a+44>>2]=-1;break a}a=ne(oa(64));J[a+40>>2]=2032;J[a>>2]=9988;J[a+48>>2]=0;J[a+52>>2]=0;J[a+44>>2]=-1;J[a+56>>2]=0;J[a+60>>2]=0;break a}a=oa(36);J[a+32>>2]=0;J[a+12>>2]=-1;J[a+4>>2]=0;J[a+8>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a>>2]=2392;H[a+21|0]=0;H[a+22|0]=0;H[a+23|0]=0;H[a+24|0]=0;H[a+25|0]=0;H[a+26|0]=0;H[a+27|0]=0;H[a+28|0]=0;break a}a=ne(oa(40))}ba=c+16|0;return a|0}function ul(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=J[a+8>>2]-J[a+4>>2]>>2;b=J[a+40>>2];d=J[a+36>>2];c=b-d>>2;a:{if(e>>>0>c>>>0){g=e-c|0;d=J[a+44>>2];b=J[a+40>>2];if(g>>>0<=d-b>>2>>>0){if(g){i=b;b=g<<2;b=pa(i,0,b)+b|0}J[a+40>>2]=b;break a}b:{c:{d:{j=J[a+36>>2];e=b-j>>2;f=e+g|0;if(f>>>0<1073741824){c=d-j|0;d=c>>>1|0;c=c>>>0>=2147483644?1073741823:d>>>0>f>>>0?d:f;if(c){if(c>>>0>=1073741824){break d}i=oa(c<<2)}h=(e<<2)+i|0;d=g<<2;f=pa(h,0,d);e=d+f|0;c=(c<<2)+i|0;if((b|0)==(j|0)){break c}while(1){b=b-4|0;d=J[b>>2];J[b>>2]=0;h=h-4|0;J[h>>2]=d;if((b|0)!=(j|0)){continue}break}J[a+44>>2]=c;c=J[a+40>>2];J[a+40>>2]=e;b=J[a+36>>2];J[a+36>>2]=h;if((b|0)==(c|0)){break b}while(1){c=c-4|0;d=J[c>>2];J[c>>2]=0;if(d){da[J[J[d>>2]+4>>2]](d)}if((b|0)!=(c|0)){continue}break}break b}qa();B()}xa();B()}J[a+44>>2]=c;J[a+40>>2]=e;J[a+36>>2]=f}if(b){na(b)}break a}if(c>>>0<=e>>>0){break a}d=d+(e<<2)|0;if((d|0)!=(b|0)){while(1){b=b-4|0;c=J[b>>2];J[b>>2]=0;if(c){da[J[J[c>>2]+4>>2]](c)}if((b|0)!=(d|0)){continue}break}}J[a+40>>2]=d}if(J[a+8>>2]==J[a+4>>2]){return 1}b=0;while(1){e=da[J[J[a>>2]+56>>2]](a,b)|0;c=b<<2;d=c+J[a+36>>2]|0;f=J[d>>2];J[d>>2]=e;if(f){da[J[J[f>>2]+4>>2]](f)}c=J[c+J[a+36>>2]>>2];d=(c|0)!=0;if(c){if(!(!(J[J[a+48>>2]+(b>>>3&536870908)>>2]>>>b&1)|M[a+52>>2]<=b>>>0)){H[c+28|0]=1}b=b+1|0;if(b>>>0<J[a+8>>2]-J[a+4>>2]>>2>>>0){continue}}break}return d|0}function Yf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;J[a>>2]=10584;c=a+200|0;d=J[c+136>>2];if(d){b=d;e=J[c+140>>2];if((b|0)!=(e|0)){while(1){b=e-12|0;f=J[b>>2];if(f){J[e-8>>2]=f;na(f)}e=b;if((b|0)!=(d|0)){continue}break}b=J[c+136>>2]}J[c+140>>2]=d;na(b)}b=J[c+104>>2];if(b){J[c+108>>2]=b;na(b)}b=J[c+92>>2];if(b){J[c+96>>2]=b;na(b)}d=J[c+80>>2];J[c+80>>2]=0;if(d){e=d-4|0;b=J[e>>2];if(b){b=d+(b<<5)|0;while(1){b=wa(b-32|0);if((d|0)!=(b|0)){continue}break}}na(e)}b=J[c+68>>2];if(b){J[c+72>>2]=b;na(b)}b=J[c+44>>2];J[c+44>>2]=0;if(b){na(b)}b=J[c+32>>2];if(b){J[c+36>>2]=b;na(b)}wa(c);b=J[a+184>>2];if(b){J[a+188>>2]=b;na(b)}d=J[a+172>>2];if(d){b=J[a+176>>2];e=d;if((b|0)!=(d|0)){while(1){e=b-136|0;f=J[e+116>>2];if(f){J[b-16>>2]=f;na(f)}f=J[b-32>>2];if(f){J[b-28>>2]=f;na(f)}pc(b-132|0);b=e;if((d|0)!=(b|0)){continue}break}e=J[a+172>>2]}J[a+176>>2]=d;na(e)}b=J[a+152>>2];if(b){J[a+156>>2]=b;na(b)}b=J[a+140>>2];if(b){na(b)}b=J[a+128>>2];if(b){while(1){e=J[b>>2];na(b);b=e;if(b){continue}break}}b=J[a+120>>2];J[a+120>>2]=0;if(b){na(b)}b=J[a+108>>2];if(b){J[a+112>>2]=b;na(b)}b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+84>>2];if(b){na(b)}b=J[a+72>>2];if(b){J[a+76>>2]=b;na(b)}b=J[a+52>>2];if(b){J[a+56>>2]=b;na(b)}b=J[a+40>>2];if(b){J[a+44>>2]=b;na(b)}b=J[a+28>>2];if(b){na(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}b=J[a+12>>2];J[a+12>>2]=0;if(b){qc(b)}return a|0}function Xd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Xd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Xd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}
function de(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}de(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}de(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function ce(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}ce(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}ce(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function be(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}be(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}be(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function ae(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}ae(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}ae(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function _d(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}_d(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}_d(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Zd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Zd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Zd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Yd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Yd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Yd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Wd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Wd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Wd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Vd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Vd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Vd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Ud(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Ud(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Ud(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Td(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Td(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Td(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Sd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Sd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Sd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Rd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Rd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Rd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Qd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Qd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Qd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Pd(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Pd(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Pd(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Od(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}Od(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}Od(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function $d(a,b,c,d,e,f,g,h){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=ba-16|0;ba=s;a:{if(!f){break a}while(1){if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=J[d>>2];o=J[i>>2];b:{c:{p=J[i+4>>2]-o>>3;i=J[b>>2];d:{if(p>>>0<=i>>>0){break d}n=(i<<3)+o|0;while(1){j=J[a>>2];if(j>>>0>=p>>>0){break d}if(M[n>>2]>=M[(j<<3)+o>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}e:{f:{if((e|0)<(f|0)){n=(f|0)/2|0;i=(n<<2)+b|0;g:{if((a|0)==(b|0)){j=b;break g}j=J[i>>2];if(j>>>0>=p>>>0){break d}m=b-a>>2;l=m>>>1|0;q=(l<<2)+a|0;k=J[q>>2];if(k>>>0>=p>>>0){break d}r=q+4|0;q=J[(j<<3)+o>>2];k=q>>>0<M[(k<<3)+o>>2];j=k?a:r;m=k?l:m+(l^-1)|0;if(!m){break g}while(1){l=m>>>1|0;k=(l<<2)+j|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=q>>>0<M[(r<<3)+o>>2];j=k?j:t;m=k?l:(l^-1)+m|0;if(m){continue}break}}l=j-a>>2;break f}if((e|0)==1){J[a>>2]=i;J[b>>2]=j;break a}l=(e|0)/2|0;j=(l<<2)+a|0;i=c;if((i|0)!=(b|0)){m=c-b>>2;i=J[j>>2];if(i>>>0>=p>>>0){break e}q=(i<<3)+o|0;i=b;while(1){n=m>>>1|0;k=(n<<2)+i|0;r=J[k>>2];if(r>>>0>=p>>>0){break d}t=k+4|0;k=M[(r<<3)+o>>2]<M[q>>2];i=k?t:i;m=k?(n^-1)+m|0:n;if(m){continue}break}}n=i-b>>2}Ta(s+8|0,j,b,i);b=J[s+8>>2];e=e-l|0;f=f-n|0;if((l+n|0)>=(e+f|0)){break c}$d(a,j,b,d,l,n,g,h);a=b;b=i;break b}}ra();B()}$d(b,i,c,d,e,f,g,h);f=n;e=l;c=b;b=j}if(f){continue}break a}break}Sa(a,b,c,d,e,f,g)}ba=s+16|0}function Kg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=ba-16|0;ba=m;f=J[b+28>>2];g=J[b+24>>2];J[a+8>>2]=g;J[a+12>>2]=f;f=J[b+20>>2];J[a>>2]=J[b+16>>2];J[a+4>>2]=f;f=J[b+36>>2];J[a+16>>2]=J[b+32>>2];J[a+20>>2]=f;J[a+8>>2]=d+g;a:{b:{if((d|0)>0){j=J[b>>2];f=J[a+12>>2];n=J[a+16>>2];o=O[a>>3];while(1){i=J[b+4>>2]-j>>2;g=J[(h<<2)+c>>2];c:{if(i>>>0>g>>>0){break c}J[m+12>>2]=0;k=g+1|0;if(k>>>0>i>>>0){jc(b,k-i|0,m+12|0);j=J[b>>2];break c}if(i>>>0<=k>>>0){break c}J[b+4>>2]=(k<<2)+j}k=(g<<2)+j|0;i=J[k>>2];d:{if((i|0)>=2){l=+(i|0);l=va(l)*l;break d}l=0;if(i){break d}n=n+1|0;J[a+16>>2]=n;if(f>>>0>=g>>>0){break d}J[a+12>>2]=g;f=g}g=i+1|0;J[k>>2]=g;p=+(g|0);o=va(p)*p-l+o;O[a>>3]=o;h=h+1|0;if((h|0)!=(d|0)){continue}break}if(e){break b}if((d|0)<=0){break a}a=J[b>>2];j=0;h=0;if(d>>>0>=4){g=d&-4;e=0;while(1){b=h<<2;f=a+(J[b+c>>2]<<2)|0;J[f>>2]=J[f>>2]-1;f=a+(J[(b|4)+c>>2]<<2)|0;J[f>>2]=J[f>>2]-1;f=a+(J[(b|8)+c>>2]<<2)|0;J[f>>2]=J[f>>2]-1;b=a+(J[(b|12)+c>>2]<<2)|0;J[b>>2]=J[b>>2]-1;h=h+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}b=d&3;if(!b){break a}while(1){d=a+(J[(h<<2)+c>>2]<<2)|0;J[d>>2]=J[d>>2]-1;h=h+1|0;j=j+1|0;if((b|0)!=(j|0)){continue}break}break a}if(!e){break a}}c=J[a+4>>2];J[b+16>>2]=J[a>>2];J[b+20>>2]=c;J[b+32>>2]=J[a+16>>2];c=J[a+12>>2];J[b+24>>2]=J[a+8>>2];J[b+28>>2]=c}ba=m+16|0}function Ya(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=J[b+16>>2];f=J[c+4>>2]-e|0;J[c>>2]=0|J[c>>2]-e;J[c+4>>2]=f;f=J[d+4>>2]-e|0;e=J[d>>2]-e|0;J[d>>2]=g|e;J[d+4>>2]=f;i=J[b+16>>2];g=f>>31;h=(g^f)-g|0;g=e>>31;if(i>>>0<h+((g^e)-g|0)>>>0){j=J[c+4>>2];k=J[c>>2];a:{b:{if((k|0)>=0){h=1;g=1;if((j|0)>=0){break a}e=1;h=-1;g=-1;if(k){break b}break a}e=-1;h=-1;g=-1;if((j|0)<=0){break a}}h=(j|0)<=0?-1:1;g=e}f=1;e=-1;l=k<<1;k=P(g,i);l=l-k|0;g=(P(g,h)|0)>=0;h=P(h,i);J[c+4>>2]=((g?0-l|0:l)+h|0)/2;h=(j<<1)-h|0;J[c>>2]=(k+(g?0-h|0:h)|0)/2;g=J[d+4>>2];h=J[d>>2];c:{d:{if((h|0)>=0){e=1;if((g|0)>=0){break c}if(h){break d}f=-1;e=-1;break c}f=-1;if((g|0)<=0){break c}}f=(g|0)<=0?-1:1}i=h<<1;h=J[b+16>>2];j=P(h,e);i=i-j|0;e=(P(f,e)|0)>=0;h=P(f,h);f=((e?0-i|0:i)+h|0)/2|0;J[d+4>>2]=f;g=(g<<1)-h|0;e=(j+(e?0-g|0:g)|0)/2|0;J[d>>2]=e}e:{f:{g:{h:{i:{j:{if(e){if((e|0)>=0){break j}if((f|0)>0){break h}break e}if(f){break i}f=0;e=0;break e}if((f|0)<0){break g}f=0-J[c+4>>2]|0;J[c>>2]=0-J[c>>2];J[c+4>>2]=f;e=0-J[d>>2]|0;f=0-J[d+4>>2]|0;break f}if((f|0)<=0){break g}}f=J[c>>2];J[c>>2]=0-J[c+4>>2];J[c+4>>2]=f;e=0-J[d+4>>2]|0;f=J[d>>2];break f}f=0-J[c>>2]|0;J[c>>2]=J[c+4>>2];J[c+4>>2]=f;e=J[d+4>>2];f=0-J[d>>2]|0}J[d>>2]=e;J[d+4>>2]=f}d=J[c>>2];b=J[b+4>>2];c=J[c+4>>2]-f|0;J[a+4>>2]=(b&c>>31)+c;c=a;a=d-e|0;J[c>>2]=(b&a>>31)+a}function eg(a,b){var c=0,d=0,e=0,f=0,g=0;e=-1;c=(b|0)==-1;d=-1;a:{if(c){break a}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}f=c?-1:(b>>>0)/3|0;g=J[a+28>>2]+(f>>>3&536870908)|0;J[g>>2]=J[g>>2]|1<<f;b:{if(c){break b}c=J[J[J[a+12>>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break b}c=(c>>>0)/3|0;if(J[J[a+28>>2]+(c>>>3&268435452)>>2]>>>c&1){break b}c=J[a+172>>2];if((c|0)==J[a+176>>2]){break b}f=1<<b;g=b>>>5<<2;b=0;while(1){Ca(J[a+280>>2]+(b<<5)|0,(f&J[g+J[(P(b,136)+c|0)+4>>2]>>2])!=0);b=b+1|0;c=J[a+172>>2];if(b>>>0<(J[a+176>>2]-c|0)/136>>>0){continue}break}}c:{if((e|0)==-1){break c}b=J[J[J[a+12>>2]+12>>2]+(e<<2)>>2];if((b|0)==-1){break c}b=(b>>>0)/3|0;if(J[J[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break c}c=J[a+172>>2];if((c|0)==J[a+176>>2]){break c}f=1<<e;e=e>>>5<<2;b=0;while(1){Ca(J[a+280>>2]+(b<<5)|0,(f&J[e+J[(P(b,136)+c|0)+4>>2]>>2])!=0);b=b+1|0;c=J[a+172>>2];if(b>>>0<(J[a+176>>2]-c|0)/136>>>0){continue}break}}d:{if((d|0)==-1){break d}b=J[J[J[a+12>>2]+12>>2]+(d<<2)>>2];if((b|0)==-1){break d}b=(b>>>0)/3|0;if(J[J[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break d}c=J[a+172>>2];if((c|0)==J[a+176>>2]){break d}e=1<<d;d=d>>>5<<2;b=0;while(1){Ca(J[a+280>>2]+(b<<5)|0,(e&J[d+J[(P(b,136)+c|0)+4>>2]>>2])!=0);b=b+1|0;c=J[a+172>>2];if(b>>>0<(J[a+176>>2]-c|0)/136>>>0){continue}break}}}function yf(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;a=0;a:{if(!d|(!b|(c|0)<0)){break a}f=J[b+8>>2];if(J[b+12>>2]-f>>2<=(c|0)){break a}if(!J[b+4>>2]){a=oa(36);J[a+4>>2]=0;J[a+8>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;e=a+16|0;J[e>>2]=0;J[e+4>>2]=0;J[a>>2]=a+4;J[a+32>>2]=0;J[a+12>>2]=e;J[b+4>>2]=a}a=J[J[f+(c<<2)>>2]+60>>2];d=sd(oa(28),d);J[d+24>>2]=a;a=J[b+4>>2];c=ba-16|0;ba=c;J[c+8>>2]=d;b:{if(!d){break b}b=J[a+28>>2];c:{if(b>>>0<M[a+32>>2]){J[c+8>>2]=0;J[b>>2]=d;J[a+28>>2]=b+4;break c}b=0;d:{e:{f:{e=J[a+24>>2];f=J[a+28>>2]-e>>2;d=f+1|0;if(d>>>0<1073741824){e=J[a+32>>2]-e|0;g=e>>>1|0;e=e>>>0>=2147483644?1073741823:d>>>0<g>>>0?g:d;if(e){if(e>>>0>=1073741824){break f}b=oa(e<<2)}g=J[c+8>>2];J[c+8>>2]=0;d=(f<<2)+b|0;J[d>>2]=g;e=(e<<2)+b|0;f=d+4|0;b=J[a+28>>2];g=J[a+24>>2];if((b|0)==(g|0)){break e}while(1){b=b-4|0;h=J[b>>2];J[b>>2]=0;d=d-4|0;J[d>>2]=h;if((b|0)!=(g|0)){continue}break}J[a+32>>2]=e;e=J[a+28>>2];J[a+28>>2]=f;b=J[a+24>>2];J[a+24>>2]=d;if((b|0)==(e|0)){break d}while(1){e=e-4|0;a=J[e>>2];J[e>>2]=0;if(a){lb(a+12|0,J[a+16>>2]);kb(a,J[a+4>>2]);na(a)}if((b|0)!=(e|0)){continue}break}break d}qa();B()}xa();B()}J[a+32>>2]=e;J[a+28>>2]=f;J[a+24>>2]=d}if(b){na(b)}}a=J[c+8>>2];J[c+8>>2]=0;if(!a){break b}lb(a+12|0,J[a+16>>2]);kb(a,J[a+4>>2]);na(a)}ba=c+16|0;a=1}return a|0}function pl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=J[a+16>>2];a:{if(J[a+20>>2]-e>>2<=(b|0)){break a}h=J[e+(b<<2)>>2];if((h|0)<0){break a}if(M[a+52>>2]<=h>>>0){b:{b=ba-16|0;ba=b;c:{f=J[a+52>>2];c=h+1|0;d:{if(f>>>0<c>>>0){e=c-f|0;g=J[a+56>>2];d=g<<5;e:{if(!(e>>>0>d>>>0|f>>>0>d-e>>>0)){J[a+52>>2]=c;d=f&31;c=J[a+48>>2]+(f>>>3&536870908)|0;break e}J[b+8>>2]=0;J[b>>2]=0;J[b+4>>2]=0;if((c|0)<0){break c}if(d>>>0<=1073741822){d=g<<6;c=c+31&-32;c=c>>>0<d>>>0?d:c}else{c=2147483647}wc(b,c);d=J[a+52>>2];J[b+4>>2]=d+e;f=J[a+48>>2];c=J[b>>2];f:{if((d|0)<=0){d=0;break f}g=d>>>5|0;if(d>>>0>=32){ta(c,f,g<<2)}g=g<<2;c=g+c|0;d=d&31;if(d){i=-1>>>32-d|0;J[c>>2]=J[c>>2]&(i^-1)|J[f+g>>2]&i}f=J[a+48>>2]}J[a+48>>2]=J[b>>2];J[b>>2]=f;g=J[a+52>>2];J[a+52>>2]=J[b+4>>2];J[b+4>>2]=g;g=J[a+56>>2];J[a+56>>2]=J[b+8>>2];J[b+8>>2]=g;if(!f){break e}na(f)}if(!e){break d}if(d){f=32-d|0;g=e>>>0>f>>>0?f:e;J[c>>2]=J[c>>2]&(-1<<d&-1>>>f-g^-1);e=e-g|0;c=c+4|0}d=e>>>5|0;if(e>>>0>=32){pa(c,0,d<<2)}if((e&-32)==(e|0)){break d}c=(d<<2)+c|0;J[c>>2]=J[c>>2]&(-1>>>32-(e&31)^-1);break d}J[a+52>>2]=c}ba=b+16|0;break b}qa();B()}}c=1;b=J[a+48>>2]+(h>>>3&536870908)|0;J[b>>2]=J[b>>2]|1<<h;b=J[a+40>>2];a=J[a+36>>2];if(b-a>>2>>>0<=h>>>0){break a}H[J[a+(h<<2)>>2]+28|0]=1}return c|0}function Va(a,b){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;g=ba-16|0;ba=g;Aa(J[a+12>>2],b);a:{if(!J[a+12>>2]){break a}n=g+15|0;o=g+16|0;while(1){b:{c:{e=J[a>>2];j=J[e+(h<<3)>>2];c=j>>>0<64;if(!c){d=1;if(j>>>0<16384){break c}d=2;if(j>>>0<=4194303){break c}break a}d=0;if(j){break c}while(1){d:{if(J[(e+(d+h<<3)|0)+8>>2]){c=d;break d}c=d+1|0;if(J[(e+(h+c<<3)|0)+8>>2]){break d}c=d+2|0;if(J[(e+(h+c<<3)|0)+8>>2]){break d}c=63;d=d+3|0;if((d|0)!=63){continue}}break}H[g+15|0]=c<<2|3;d=J[b+20>>2];if(!J[b+16>>2]&(d|0)<=0|(d|0)<0){sa(b,J[b+4>>2],g+15|0,o)}h=c+h|0;break b}H[g+14|0]=j<<2|d;e=J[b+20>>2];if(!J[b+16>>2]&(e|0)<=0|(e|0)<0){sa(b,J[b+4>>2],g+14|0,n)}if(c){break b}c=J[b+20>>2];if(!!J[b+16>>2]&(c|0)>=0|(c|0)>0){break b}p=d>>>0<=1?1:d;d=0;while(1){d=d+1|0;e:{c=J[b+20>>2];if(!!J[b+16>>2]&(c|0)>=0|(c|0)>0){break e}m=j>>>(d<<3)-2|0;f=J[b+8>>2];e=J[b+4>>2];if((f-e|0)>0){H[e|0]=m;J[b+4>>2]=e+1;break e}k=J[b>>2];c=e-k|0;i=c+1|0;if((i|0)>=0){f=f-k|0;l=f<<1;f=f>>>0>=1073741823?2147483647:i>>>0<l>>>0?l:i;if(f){i=oa(f)}else{i=0}l=i+c|0;H[l|0]=m;c=ta(i,k,c);e=ta(l+1|0,e,0);J[b+8>>2]=c+f;J[b+4>>2]=e;J[b>>2]=c;if(!k){break e}na(k);break e}qa();B()}if((d|0)!=(p|0)){continue}break}}h=h+1|0;if(h>>>0<M[a+12>>2]){continue}break}}ba=g+16|0}function Ye(a){var b=0,c=0,d=0,e=0,f=0;a:{b:{c:{d:{e:{b=J[a+4>>2];f:{if((b|0)!=J[a+104>>2]){J[a+4>>2]=b+1;b=K[b|0];break f}b=La(a)}switch(b-43|0){case 0:case 2:break e;default:break d}}f=(b|0)==45;b=J[a+4>>2];g:{if((b|0)!=J[a+104>>2]){J[a+4>>2]=b+1;b=K[b|0];break g}b=La(a)}e=b-58|0;if(e>>>0>4294967285){break c}if(J[a+116>>2]<0){break b}J[a+4>>2]=J[a+4>>2]-1;break b}e=b-58|0}if(e>>>0<4294967286){break b}e=b-48|0;if(e>>>0<10){while(1){d=(P(d,10)+b|0)-48|0;c=(d|0)<214748364;b=J[a+4>>2];h:{if((b|0)!=J[a+104>>2]){J[a+4>>2]=b+1;b=K[b|0];break h}b=La(a)}e=b-48|0;if(c&e>>>0<=9){continue}break}c=d>>31}i:{if(e>>>0>=10){break i}while(1){d=Hl(d,c,10,0);b=d+b|0;c=ca;c=b>>>0<d>>>0?c+1|0:c;d=b-48|0;c=c-(b>>>0<48)|0;b=J[a+4>>2];j:{if((b|0)!=J[a+104>>2]){J[a+4>>2]=b+1;b=K[b|0];break j}b=La(a)}e=b-48|0;if(e>>>0>9){break i}if(d>>>0<2061584302&(c|0)<=21474836|(c|0)<21474836){continue}break}}if(e>>>0<10){while(1){b=J[a+4>>2];k:{if((b|0)!=J[a+104>>2]){J[a+4>>2]=b+1;b=K[b|0];break k}b=La(a)}if(b-48>>>0<10){continue}break}}b=J[a+116>>2];if((b|0)>0|(b|0)>=0){J[a+4>>2]=J[a+4>>2]-1}a=d;d=f?0-a|0:a;c=f?0-(((a|0)!=0)+c|0)|0:c;break a}c=-2147483648;if(J[a+116>>2]<0){break a}J[a+4>>2]=J[a+4>>2]-1;ca=-2147483648;return 0}ca=c;return d}function Hi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,f=0,g=0,h=0,i=0;g=ba-16|0;ba=g;a:{b:{c:{if(!b){break c}e=rb(c);if(e>>>0>=2147483632){break b}d:{e:{if(e>>>0>=11){f=(e|15)+1|0;a=oa(f);J[g+8>>2]=f|-2147483648;J[g>>2]=a;J[g+4>>2]=e;f=a+e|0;break e}H[g+11|0]=e;f=e+g|0;a=g;if(!e){break d}}ua(a,c,e)}H[f|0]=0;h=ba-16|0;ba=h;O[h+8>>3]=d;f=ba-48|0;ba=f;e=ob(b,g);if((e|0)!=(b+4|0)){a=J[e+4>>2];f:{if(!a){a=e;while(1){c=J[a+8>>2];i=J[c>>2]!=(a|0);a=c;if(i){continue}break}break f}while(1){c=a;a=J[a>>2];if(a){continue}break}}if((e|0)==J[b>>2]){J[b>>2]=c}J[b+8>>2]=J[b+8>>2]-1;Dc(J[b+4>>2],e);a=J[e+28>>2];if(a){J[e+32>>2]=a;na(a)}if(H[e+27|0]<0){na(J[e+16>>2])}na(e)}a=oa(8);J[f>>2]=a;c=a+8|0;J[f+8>>2]=c;J[f+4>>2]=c;c=J[h+12>>2];e=J[h+8>>2];H[a|0]=e;H[a+1|0]=e>>>8;H[a+2|0]=e>>>16;H[a+3|0]=e>>>24;H[a+4|0]=c;H[a+5|0]=c>>>8;H[a+6|0]=c>>>16;H[a+7|0]=c>>>24;g:{if(H[g+11|0]>=0){J[f+24>>2]=J[g+8>>2];a=J[g+4>>2];J[f+16>>2]=J[g>>2];J[f+20>>2]=a;break g}Ga(f+16|0,J[g>>2],J[g+4>>2])}Ob(f+28|0,f);a=f+16|0;Cc(f+40|0,b,a,a);a=J[f+28>>2];if(a){J[f+32>>2]=a;na(a)}if(H[f+27|0]<0){na(J[f+16>>2])}a=J[f>>2];if(a){J[f+4>>2]=a;na(a)}ba=f+48|0;ba=h+16|0;if(H[g+11|0]>=0){break c}na(J[g>>2])}ba=g+16|0;a=(b|0)!=0;break a}gb();B()}return a|0}function ze(a,b){var c=0,d=0,e=0,f=0,g=0;e=ba-16|0;ba=e;J[a+8>>2]=b;J[a>>2]=0;c=a+12|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[a+44>>2]=0;J[a+48>>2]=0;J[a+60>>2]=0;J[a+52>>2]=0;J[a+56>>2]=0;c=a- -64|0;J[c>>2]=0;J[c+4>>2]=0;J[c+16>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[a+84>>2]=0;J[a+88>>2]=0;J[a+100>>2]=0;J[a+92>>2]=0;J[a+96>>2]=0;J[a+112>>2]=0;J[a+104>>2]=0;J[a+108>>2]=0;g=a+140|0;a:{b:{if(b){if(b>>>0<1073741824){break b}qa();B()}J[a+116>>2]=0;J[a+120>>2]=0;J[a+132>>2]=0;J[a+136>>2]=0;J[a+124>>2]=0;J[a+128>>2]=0;J[e+8>>2]=0;J[e>>2]=0;J[e+4>>2]=0;c=1;break a}c=b<<2;d=oa(c);J[a+104>>2]=d;f=c+d|0;J[a+112>>2]=f;pa(d,0,c);J[a+124>>2]=0;J[a+116>>2]=0;J[a+120>>2]=0;J[a+108>>2]=f;d=oa(c);J[a+116>>2]=d;f=c+d|0;J[a+124>>2]=f;pa(d,0,c);J[a+136>>2]=0;J[a+128>>2]=0;J[a+132>>2]=0;J[a+120>>2]=f;d=oa(c);J[a+128>>2]=d;f=c+d|0;J[a+136>>2]=f;pa(d,0,c);J[a+132>>2]=f;d=oa(c);J[e>>2]=d;f=c+d|0;J[e+8>>2]=f;pa(d,0,c);J[e+4>>2]=f;c=b<<5|1}Jb(g,c,e);d=J[e>>2];if(d){J[e+4>>2]=d;na(d)}J[e+8>>2]=0;J[e>>2]=0;J[e+4>>2]=0;if(b){b=b<<2;d=oa(b);J[e>>2]=d;f=b+d|0;J[e+8>>2]=f;pa(d,0,b);J[e+4>>2]=f}Jb(a+152|0,c,e);b=J[e>>2];if(b){J[e+4>>2]=b;na(b)}ba=e+16|0;return a}function lj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=ba-16|0;ba=f;da[J[J[b>>2]+64>>2]](a,b);if(!J[a>>2]){if(H[a+15|0]<0){na(J[a+4>>2])}g=J[b+48>>2];c=oa(32);J[f>>2]=c;J[f+4>>2]=29;J[f+8>>2]=-2147483616;d=K[1308]|K[1309]<<8|(K[1310]<<16|K[1311]<<24);e=K[1304]|K[1305]<<8|(K[1306]<<16|K[1307]<<24);H[c+21|0]=e;H[c+22|0]=e>>>8;H[c+23|0]=e>>>16;H[c+24|0]=e>>>24;H[c+25|0]=d;H[c+26|0]=d>>>8;H[c+27|0]=d>>>16;H[c+28|0]=d>>>24;d=K[1303]|K[1304]<<8|(K[1305]<<16|K[1306]<<24);e=K[1299]|K[1300]<<8|(K[1301]<<16|K[1302]<<24);H[c+16|0]=e;H[c+17|0]=e>>>8;H[c+18|0]=e>>>16;H[c+19|0]=e>>>24;H[c+20|0]=d;H[c+21|0]=d>>>8;H[c+22|0]=d>>>16;H[c+23|0]=d>>>24;d=K[1295]|K[1296]<<8|(K[1297]<<16|K[1298]<<24);e=K[1291]|K[1292]<<8|(K[1293]<<16|K[1294]<<24);H[c+8|0]=e;H[c+9|0]=e>>>8;H[c+10|0]=e>>>16;H[c+11|0]=e>>>24;H[c+12|0]=d;H[c+13|0]=d>>>8;H[c+14|0]=d>>>16;H[c+15|0]=d>>>24;d=K[1287]|K[1288]<<8|(K[1289]<<16|K[1290]<<24);e=K[1283]|K[1284]<<8|(K[1285]<<16|K[1286]<<24);H[c|0]=e;H[c+1|0]=e>>>8;H[c+2|0]=e>>>16;H[c+3|0]=e>>>24;H[c+4|0]=d;H[c+5|0]=d>>>8;H[c+6|0]=d>>>16;H[c+7|0]=d>>>24;H[c+29|0]=0;c=Pb(g,f,0);if(H[f+11|0]<0){na(J[f>>2])}if(c){da[J[J[b>>2]+68>>2]](b)}J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0}ba=f+16|0}function db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{b:{c:{d:{if(b){if(b>>>0>=1073741824){break d}d=oa(b<<2);c=J[a>>2];J[a>>2]=d;if(c){na(c)}J[a+4>>2]=b;c=0;if(b>>>0>=4){d=b&-4;while(1){g=c<<2;J[g+J[a>>2]>>2]=0;J[J[a>>2]+(g|4)>>2]=0;J[J[a>>2]+(g|8)>>2]=0;J[J[a>>2]+(g|12)>>2]=0;c=c+4|0;e=e+4|0;if((d|0)!=(e|0)){continue}break}}d=b&3;if(d){while(1){J[J[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}d=J[a+8>>2];if(!d){break a}c=a+8|0;f=J[d+4>>2];e=Kl(b);if(e>>>0<2){break c}f=b>>>0<=f>>>0?(f>>>0)%(b>>>0)|0:f;J[J[a>>2]+(f<<2)>>2]=c;c=J[d>>2];if(!c){break a}if(e>>>0<=1){break b}while(1){e=J[c+4>>2];if(e>>>0>=b>>>0){e=(e>>>0)%(b>>>0)|0}e:{if((f|0)==(e|0)){d=c;break e}h=e<<2;g=h+J[a>>2]|0;if(!J[g>>2]){J[g>>2]=d;d=c;f=e;break e}J[d>>2]=J[c>>2];J[c>>2]=J[J[h+J[a>>2]>>2]>>2];J[J[h+J[a>>2]>>2]>>2]=c}c=J[d>>2];if(c){continue}break}break a}b=J[a>>2];J[a>>2]=0;if(b){na(b)}J[a+4>>2]=0;break a}xa();B()}f=b-1&f;J[J[a>>2]+(f<<2)>>2]=c;c=J[d>>2];if(!c){break a}}g=b-1|0;while(1){b=g&J[c+4>>2];f:{if((b|0)==(f|0)){d=c;break f}h=b<<2;e=h+J[a>>2]|0;if(J[e>>2]){J[d>>2]=J[c>>2];J[c>>2]=J[J[h+J[a>>2]>>2]>>2];J[J[h+J[a>>2]>>2]>>2]=c;break f}J[e>>2]=d;d=c;f=b}c=J[d>>2];if(c){continue}break}}}function cb(a){var b=0,c=0,d=0,e=0,f=0;e=ba-16|0;ba=e;b=oa(16);J[e>>2]=b;J[e+4>>2]=14;J[e+8>>2]=-2147483632;c=K[1602]|K[1603]<<8|(K[1604]<<16|K[1605]<<24);d=K[1598]|K[1599]<<8|(K[1600]<<16|K[1601]<<24);H[b+6|0]=d;H[b+7|0]=d>>>8;H[b+8|0]=d>>>16;H[b+9|0]=d>>>24;H[b+10|0]=c;H[b+11|0]=c>>>8;H[b+12|0]=c>>>16;H[b+13|0]=c>>>24;c=K[1596]|K[1597]<<8|(K[1598]<<16|K[1599]<<24);d=K[1592]|K[1593]<<8|(K[1594]<<16|K[1595]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+14|0]=0;f=Bb(a,e,-1);if(H[e+11|0]<0){na(J[e>>2])}b=oa(16);J[e>>2]=b;J[e+4>>2]=14;J[e+8>>2]=-2147483632;c=K[1617]|K[1618]<<8|(K[1619]<<16|K[1620]<<24);d=K[1613]|K[1614]<<8|(K[1615]<<16|K[1616]<<24);H[b+6|0]=d;H[b+7|0]=d>>>8;H[b+8|0]=d>>>16;H[b+9|0]=d>>>24;H[b+10|0]=c;H[b+11|0]=c>>>8;H[b+12|0]=c>>>16;H[b+13|0]=c>>>24;c=K[1611]|K[1612]<<8|(K[1613]<<16|K[1614]<<24);d=K[1607]|K[1608]<<8|(K[1609]<<16|K[1610]<<24);H[b|0]=d;H[b+1|0]=d>>>8;H[b+2|0]=d>>>16;H[b+3|0]=d>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+14|0]=0;a=Bb(a,e,-1);if(H[e+11|0]<0){na(J[e>>2])}ba=e+16|0;a=(a|0)<(f|0)?f:a;return(a|0)==-1?5:a}function ei(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;ff(a,b,c);c=J[a+84>>2];d=J[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=J[a+92>>2];c=J[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;e=d&7;if(e){while(1){J[b>>2]=1;b=b+4|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}c=(d<<2)+c|0;if((d-1&1073741823)>>>0<7){break c}while(1){J[b+24>>2]=1;J[b+28>>2]=1;J[b+16>>2]=1;J[b+20>>2]=1;J[b+8>>2]=1;J[b+12>>2]=1;J[b>>2]=1;J[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}J[a+88>>2]=c;break b}d:{b=c;c=J[a+84>>2];i=b-c|0;g=i>>2;b=g+d|0;if(b>>>0<1073741824){e=e-c|0;h=e>>>1|0;e=e>>>0>=2147483644?1073741823:b>>>0<h>>>0?h:b;if(e){if(e>>>0>=1073741824){break d}j=oa(e<<2)}g=(g<<2)+j|0;b=g;h=d&7;if(h){while(1){J[b>>2]=1;b=b+4|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}f=g+(d<<2)|0;if((d-1&1073741823)>>>0>=7){while(1){J[b+24>>2]=1;J[b+28>>2]=1;J[b+16>>2]=1;J[b+20>>2]=1;J[b+8>>2]=1;J[b+12>>2]=1;J[b>>2]=1;J[b+4>>2]=1;b=b+32|0;if((f|0)!=(b|0)){continue}break}}b=ta(j,c,i);J[a+88>>2]=f;J[a+84>>2]=b;J[a+92>>2]=b+(e<<2);if(c){na(c)}break b}qa();B()}xa();B()}return}if(b>>>0>=d>>>0){break a}J[a+88>>2]=c+(b<<2)}}function ie(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=J[a+8>>2];e=J[a>>2];if(c-e>>3>>>0>=2){f=J[a+4>>2];h=f-e>>3;d=h>>>0>=2?2:h;b:{if(!d){break b}c=e;g=d;i=d&7;if(i){while(1){k=J[b+4>>2];J[c>>2]=J[b>>2];J[c+4>>2]=k;g=g-1|0;c=c+8|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(d>>>0<8){break b}while(1){d=J[b+4>>2];J[c>>2]=J[b>>2];J[c+4>>2]=d;d=J[b+4>>2];J[c+8>>2]=J[b>>2];J[c+12>>2]=d;d=J[b+4>>2];J[c+16>>2]=J[b>>2];J[c+20>>2]=d;d=J[b+4>>2];J[c+24>>2]=J[b>>2];J[c+28>>2]=d;d=J[b+4>>2];J[c+32>>2]=J[b>>2];J[c+36>>2]=d;d=J[b+4>>2];J[c+40>>2]=J[b>>2];J[c+44>>2]=d;d=J[b+4>>2];J[c+48>>2]=J[b>>2];J[c+52>>2]=d;d=J[b+4>>2];J[c+56>>2]=J[b>>2];J[c+60>>2]=d;c=c- -64|0;g=g-8|0;if(g){continue}break}}if(h>>>0<2){c=(2-h<<3)+f|0;while(1){e=J[b+4>>2];J[f>>2]=J[b>>2];J[f+4>>2]=e;f=f+8|0;if((c|0)!=(f|0)){continue}break}J[a+4>>2]=c;return}break a}if(e){J[a+4>>2]=e;na(e);J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;c=0}e=c>>>2|0;e=c>>>0>=2147483640?536870911:e>>>0<=2?2:e;if(e>>>0<536870912){c=e<<3;e=oa(c);J[a>>2]=e;J[a+8>>2]=c+e;d=J[b>>2];g=J[b+4>>2];c=e;b=0;while(1){J[c>>2]=d;J[c+4>>2]=g;c=c+8|0;b=b+1|0;if((b|0)!=2){continue}break}break a}qa();B()}J[a+4>>2]=e+16}function we(a,b){var c=0,d=0,e=0,f=0,g=0;d=ba-16|0;ba=d;J[a+8>>2]=b;J[a>>2]=0;J[a+12>>2]=0;J[a+16>>2]=0;J[a+28>>2]=0;J[a+20>>2]=0;J[a+24>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;J[a+48>>2]=0;J[a+40>>2]=0;J[a+44>>2]=0;J[a+52>>2]=0;J[a+56>>2]=0;J[a+68>>2]=0;J[a+60>>2]=0;J[a+64>>2]=0;J[a+72>>2]=0;J[a+76>>2]=0;J[a+88>>2]=0;J[a+80>>2]=0;J[a+84>>2]=0;J[a+100>>2]=0;J[a+92>>2]=0;J[a+96>>2]=0;g=a+128|0;a:{b:{if(b){if(b>>>0<1073741824){break b}qa();B()}J[a+104>>2]=0;J[a+108>>2]=0;J[a+120>>2]=0;J[a+124>>2]=0;J[a+112>>2]=0;J[a+116>>2]=0;J[d+8>>2]=0;J[d>>2]=0;J[d+4>>2]=0;e=1;break a}e=b<<2;c=oa(e);J[a+92>>2]=c;f=c+e|0;J[a+100>>2]=f;pa(c,0,e);J[a+112>>2]=0;J[a+104>>2]=0;J[a+108>>2]=0;J[a+96>>2]=f;c=oa(e);J[a+104>>2]=c;f=c+e|0;J[a+112>>2]=f;pa(c,0,e);J[a+124>>2]=0;J[a+116>>2]=0;J[a+120>>2]=0;J[a+108>>2]=f;c=oa(e);J[a+116>>2]=c;f=c+e|0;J[a+124>>2]=f;pa(c,0,e);J[a+120>>2]=f;c=oa(e);J[d>>2]=c;f=c+e|0;J[d+8>>2]=f;pa(c,0,e);J[d+4>>2]=f;e=b<<5|1}Jb(g,e,d);c=J[d>>2];if(c){J[d+4>>2]=c;na(c)}J[d+8>>2]=0;J[d>>2]=0;J[d+4>>2]=0;if(b){b=b<<2;c=oa(b);J[d>>2]=c;f=b+c|0;J[d+8>>2]=f;pa(c,0,b);J[d+4>>2]=f}Jb(a+140|0,e,d);b=J[d>>2];if(b){J[d+4>>2]=b;na(b)}ba=d+16|0;return a}function Ji(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;f=ba-16|0;ba=f;a:{b:{c:{if(!b){break c}e=rb(c);if(e>>>0>=2147483632){break b}d:{e:{if(e>>>0>=11){g=(e|15)+1|0;a=oa(g);J[f+8>>2]=g|-2147483648;J[f>>2]=a;J[f+4>>2]=e;g=a+e|0;break e}H[f+11|0]=e;g=e+f|0;a=f;if(!e){break d}}ua(a,c,e)}H[g|0]=0;g=ba-16|0;ba=g;J[g+12>>2]=d;e=ba-48|0;ba=e;d=ob(b,f);if((d|0)!=(b+4|0)){a=J[d+4>>2];f:{if(!a){a=d;while(1){c=J[a+8>>2];h=J[c>>2]!=(a|0);a=c;if(h){continue}break}break f}while(1){c=a;a=J[a>>2];if(a){continue}break}}if((d|0)==J[b>>2]){J[b>>2]=c}J[b+8>>2]=J[b+8>>2]-1;Dc(J[b+4>>2],d);a=J[d+28>>2];if(a){J[d+32>>2]=a;na(a)}if(H[d+27|0]<0){na(J[d+16>>2])}na(d)}a=oa(4);J[e>>2]=a;c=a+4|0;J[e+8>>2]=c;J[e+4>>2]=c;c=J[g+12>>2];H[a|0]=c;H[a+1|0]=c>>>8;H[a+2|0]=c>>>16;H[a+3|0]=c>>>24;g:{if(H[f+11|0]>=0){J[e+24>>2]=J[f+8>>2];a=J[f+4>>2];J[e+16>>2]=J[f>>2];J[e+20>>2]=a;break g}Ga(e+16|0,J[f>>2],J[f+4>>2])}Ob(e+28|0,e);a=e+16|0;Cc(e+40|0,b,a,a);a=J[e+28>>2];if(a){J[e+32>>2]=a;na(a)}if(H[e+27|0]<0){na(J[e+16>>2])}a=J[e>>2];if(a){J[e+4>>2]=a;na(a)}ba=e+48|0;ba=g+16|0;if(H[f+11|0]>=0){break c}na(J[f>>2])}ba=f+16|0;a=(b|0)!=0;break a}gb();B()}return a|0}function wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=J[a+8>>2];e=J[a>>2];if(d-e>>2>>>0>=b>>>0){f=J[a+4>>2];h=f-e>>2;i=b>>>0>h>>>0?h:b;a:{if(!i){break a}d=e;g=i;j=g&7;if(j){while(1){J[d>>2]=J[c>>2];g=g-1|0;d=d+4|0;k=k+1|0;if((k|0)!=(j|0)){continue}break}}if(i>>>0<8){break a}while(1){J[d>>2]=J[c>>2];J[d+4>>2]=J[c>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=J[c>>2];J[d+16>>2]=J[c>>2];J[d+20>>2]=J[c>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=J[c>>2];d=d+32|0;g=g-8|0;if(g){continue}break}}if(b>>>0>h>>>0){b=(b-h<<2)+f|0;while(1){J[f>>2]=J[c>>2];f=f+4|0;if((b|0)!=(f|0)){continue}break}J[a+4>>2]=b;return}J[a+4>>2]=e+(b<<2);return}if(e){J[a+4>>2]=e;na(e);J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;d=0}b:{if(b>>>0>=1073741824){break b}e=d>>>1|0;d=d>>>0>=2147483644?1073741823:b>>>0<e>>>0?e:b;if(d>>>0>=1073741824){break b}d=d<<2;e=oa(d);J[a>>2]=e;J[a+8>>2]=d+e;c=J[c>>2];d=e;g=b&7;if(g){while(1){J[d>>2]=c;d=d+4|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){J[d+28>>2]=c;J[d+24>>2]=c;J[d+20>>2]=c;J[d+16>>2]=c;J[d+12>>2]=c;J[d+8>>2]=c;J[d+4>>2]=c;J[d>>2]=c;d=d+32|0;if((e|0)!=(d|0)){continue}break}}J[a+4>>2]=e;return}qa();B()}function Ma(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=J[a+8>>2];e=J[a+4>>2];if(d-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=b&7;if(g){while(1){J[d>>2]=J[c>>2];d=d+4|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){J[d>>2]=J[c>>2];J[d+4>>2]=J[c>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=J[c>>2];J[d+16>>2]=J[c>>2];J[d+20>>2]=J[c>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=J[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}J[a+4>>2]=e;return}b:{i=J[a>>2];f=e-i>>2;h=f+b|0;if(h>>>0<1073741824){j=d-i|0;d=j>>>1|0;h=j>>>0>=2147483644?1073741823:d>>>0>h>>>0?d:h;if(h){if(h>>>0>=1073741824){break b}k=oa(h<<2)}f=(f<<2)+k|0;d=f;j=b&7;if(j){while(1){J[d>>2]=J[c>>2];d=d+4|0;g=g+1|0;if((j|0)!=(g|0)){continue}break}}g=(b<<2)+f|0;if((b-1&1073741823)>>>0>=7){while(1){J[d>>2]=J[c>>2];J[d+4>>2]=J[c>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=J[c>>2];J[d+16>>2]=J[c>>2];J[d+20>>2]=J[c>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=J[c>>2];d=d+32|0;if((g|0)!=(d|0)){continue}break}}if((e|0)!=(i|0)){while(1){f=f-4|0;e=e-4|0;J[f>>2]=J[e>>2];if((e|0)!=(i|0)){continue}break}}J[a+8>>2]=(h<<2)+k;J[a+4>>2]=g;J[a>>2]=f;if(i){na(i)}return}qa();B()}xa();B()}function kg(a){var 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;a:{b=J[a+12>>2];c=J[b+4>>2];b=J[b>>2];if((c|0)!=(b|0)){b=c-b>>2;j=b>>>0<=1?1:b;k=a+140|0;while(1){b:{if(Fc(J[a+12>>2],(e>>>0)/3|0)){break b}b=J[a+12>>2];if(J[J[b+12>>2]+(e<<2)>>2]!=-1){break b}f=J[a+152>>2];d=e+1|0;d=(d>>>0)%3|0?d:e-2|0;if((d|0)!=-1){b=J[J[b>>2]+(d<<2)>>2]}else{b=-1}c=b<<2;if(J[f+c>>2]!=-1){break b}g=-1;h=J[a+144>>2];b=h;d=J[a+148>>2];if((b|0)==d<<5){if((h+1|0)<0){break a}if(h>>>0<=1073741822){b=d<<6;d=(h&-32)+32|0;b=b>>>0>d>>>0?b:d}else{b=2147483647}wc(k,b);f=J[a+152>>2];g=J[c+f>>2];b=J[a+144>>2]}J[a+144>>2]=b+1;d=J[a+140>>2]+(b>>>3&536870908)|0;i=J[d>>2];m=d,n=Ll(b)&i,J[m>>2]=n;if((g|0)!=-1){break b}c=c+f|0;i=J[a+12>>2];b=e;while(1){d=b;J[c>>2]=h;b=-1;g=-1;c:{if((d|0)==-1){break c}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break c}l=J[i+12>>2];while(1){d=J[(c<<2)+l>>2];if((d|0)!=-1){c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)!=-1){continue}break c}break}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){g=J[J[i>>2]+(b<<2)>>2]}b=c}c=(g<<2)+f|0;if(J[c>>2]==-1){continue}break}}e=e+1|0;if((j|0)!=(e|0)){continue}break}}return 1}qa();B()}function mb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=(c>>>0)/3|0;j=J[(J[J[a+8>>2]+96>>2]+P(f,12)|0)+(c-P(f,3)<<2)>>2];a:{h=J[J[a+12>>2]+4>>2];e=J[h+4>>2];if((e|0)!=J[h+8>>2]){J[e>>2]=j;J[h+4>>2]=e+4;break a}b:{i=J[h>>2];f=e-i|0;g=f>>2;d=g+1|0;if(d>>>0<1073741824){k=g<<2;g=f>>>1|0;g=f>>>0>=2147483644?1073741823:d>>>0<g>>>0?g:d;if(g){if(g>>>0>=1073741824){break b}f=oa(g<<2)}else{f=0}d=k+f|0;J[d>>2]=j;j=d+4|0;if((e|0)!=(i|0)){while(1){d=d-4|0;e=e-4|0;J[d>>2]=J[e>>2];if((e|0)!=(i|0)){continue}break}}J[h+8>>2]=f+(g<<2);J[h+4>>2]=j;J[h>>2]=d;if(i){na(i)}break a}qa();B()}xa();B()}c:{d:{h=J[a+4>>2];e=J[h+4>>2];e:{if((e|0)!=J[h+8>>2]){J[e>>2]=c;J[h+4>>2]=e+4;break e}i=J[h>>2];f=e-i|0;j=f>>2;d=j+1|0;if(d>>>0>=1073741824){break d}g=f>>>1|0;g=f>>>0>=2147483644?1073741823:d>>>0<g>>>0?g:d;if(g){if(g>>>0>=1073741824){break c}f=oa(g<<2)}else{f=0}d=f+(j<<2)|0;J[d>>2]=c;c=d+4|0;if((e|0)!=(i|0)){while(1){d=d-4|0;e=e-4|0;J[d>>2]=J[e>>2];if((e|0)!=(i|0)){continue}break}}J[h+8>>2]=f+(g<<2);J[h+4>>2]=c;J[h>>2]=d;if(!i){break e}na(i)}a=J[a+4>>2];J[J[a+12>>2]+(b<<2)>>2]=J[a+24>>2];J[a+24>>2]=J[a+24>>2]+1;return}qa();B()}xa();B()}function $g(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=ba-16|0;ba=i;J[a+4>>2]=0;J[a+8>>2]=0;d=a+16|0;J[d>>2]=0;J[d+4>>2]=0;J[a>>2]=a+4;g=a+28|0;J[g>>2]=0;J[g+4>>2]=0;J[a+12>>2]=d;J[a+24>>2]=g;if((b+4|0)!=(a|0)){ic(a,J[b+4>>2],b+8|0)}d=a+24|0;if((d|0)!=(b+28|0)){ic(d,J[b+28>>2],b+32|0)}J[i+12>>2]=0;h=J[c+12>>2];f=J[c+8>>2];a:{if((h-f|0)<=0){break a}g=b+20|0;if(!J[g>>2]){break a}while(1){b=J[g>>2];b:{if(!b){break b}j=J[J[(e<<2)+f>>2]+56>>2];d=g;while(1){k=(j|0)>J[b+16>>2];d=k?d:b;b=J[(k?b+4|0:b)>>2];if(b){continue}break}if((d|0)==(g|0)|(j|0)<J[d+16>>2]){break b}h=d+20|0;e=ba-48|0;ba=e;j=J[i+12>>2];d=a+16|0;f=J[d>>2];c:{d:{if(!f){break d}b=d;while(1){k=(j|0)>J[f+16>>2];b=k?b:f;f=J[(k?f+4|0:f)>>2];if(f){continue}break}if((b|0)==(d|0)){break d}if((j|0)>=J[b+16>>2]){break c}}J[e+28>>2]=0;J[e+32>>2]=0;f=e+24|0;J[e+24>>2]=f|4;b=e+16|0;J[b>>2]=0;J[b+4>>2]=0;J[e+8>>2]=j;J[e+12>>2]=b;d=e+8|0;Oc(e+40|0,a+12|0,d,d);b=J[e+40>>2];Da(d|4,J[e+16>>2]);Da(f,J[e+28>>2])}b=b+20|0;if((b|0)!=(h|0)){ic(b,J[h>>2],h+4|0)}ba=e+48|0;f=J[c+8>>2];h=J[c+12>>2];e=J[i+12>>2]}e=e+1|0;J[i+12>>2]=e;if(h-f>>2>(e|0)){continue}break}}ba=i+16|0}function Yg(a,b,c){var d=0,e=0,f=0,g=0;f=ba-16|0;ba=f;d=oa(16);J[f>>2]=d;J[f+4>>2]=14;J[f+8>>2]=-2147483632;g=K[1602]|K[1603]<<8|(K[1604]<<16|K[1605]<<24);e=K[1598]|K[1599]<<8|(K[1600]<<16|K[1601]<<24);H[d+6|0]=e;H[d+7|0]=e>>>8;H[d+8|0]=e>>>16;H[d+9|0]=e>>>24;H[d+10|0]=g;H[d+11|0]=g>>>8;H[d+12|0]=g>>>16;H[d+13|0]=g>>>24;g=K[1596]|K[1597]<<8|(K[1598]<<16|K[1599]<<24);e=K[1592]|K[1593]<<8|(K[1594]<<16|K[1595]<<24);H[d|0]=e;H[d+1|0]=e>>>8;H[d+2|0]=e>>>16;H[d+3|0]=e>>>24;H[d+4|0]=g;H[d+5|0]=g>>>8;H[d+6|0]=g>>>16;H[d+7|0]=g>>>24;H[d+14|0]=0;d=a+4|0;vb(d,f,b);if(H[f+11|0]<0){na(J[f>>2])}a=oa(16);J[f>>2]=a;J[f+4>>2]=14;J[f+8>>2]=-2147483632;e=K[1617]|K[1618]<<8|(K[1619]<<16|K[1620]<<24);b=K[1613]|K[1614]<<8|(K[1615]<<16|K[1616]<<24);H[a+6|0]=b;H[a+7|0]=b>>>8;H[a+8|0]=b>>>16;H[a+9|0]=b>>>24;H[a+10|0]=e;H[a+11|0]=e>>>8;H[a+12|0]=e>>>16;H[a+13|0]=e>>>24;e=K[1611]|K[1612]<<8|(K[1613]<<16|K[1614]<<24);b=K[1607]|K[1608]<<8|(K[1609]<<16|K[1610]<<24);H[a|0]=b;H[a+1|0]=b>>>8;H[a+2|0]=b>>>16;H[a+3|0]=b>>>24;H[a+4|0]=e;H[a+5|0]=e>>>8;H[a+6|0]=e>>>16;H[a+7|0]=e>>>24;H[a+14|0]=0;vb(d,f,c);if(H[f+11|0]<0){na(J[f>>2])}ba=f+16|0}function sa(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=d-c|0;if((h|0)<=0){return}a:{e=J[a+8>>2];i=J[a+4>>2];if((e-i|0)>=(h|0)){j=i-b|0;if((j|0)>=(h|0)){f=i;g=d;break a}f=i;g=c+j|0;if((g|0)!=(d|0)){e=g;while(1){H[f|0]=K[e|0];f=f+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}J[a+4>>2]=f;if((j|0)>0){break a}return}k=J[a>>2];g=(i-k|0)+h|0;if((g|0)>=0){j=b-k|0;f=e-k|0;e=f<<1;f=f>>>0>=1073741823?2147483647:e>>>0>g>>>0?e:g;if(f){e=oa(f)}else{e=0}g=j+e|0;if((c|0)!=(d|0)){g=ua(g,c,h)+h|0}d=ta(e,k,j);c=i-b|0;b=ta(g,b,c);J[a+8>>2]=e+f;J[a+4>>2]=b+c;J[a>>2]=d;if(k){na(k)}return}qa();B()}e=f;d=e-h|0;if(i>>>0>d>>>0){while(1){H[e|0]=K[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}J[a+4>>2]=e;a=b+h|0;if((a|0)!=(f|0)){a=f-a|0;ta(f-a|0,b,a)}if((c|0)==(g|0)){return}f=(c^-1)+g|0;a=g-c&7;b:{if(!a){e=b;break b}d=0;e=b;while(1){H[e|0]=K[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}if(f>>>0<7){return}while(1){H[e|0]=K[c|0];H[e+1|0]=K[c+1|0];H[e+2|0]=K[c+2|0];H[e+3|0]=K[c+3|0];H[e+4|0]=K[c+4|0];H[e+5|0]=K[c+5|0];H[e+6|0]=K[c+6|0];H[e+7|0]=K[c+7|0];e=e+8|0;c=c+8|0;if((g|0)!=(c|0)){continue}break}}function La(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=J[a+112>>2];e=J[a+116>>2];h=(b|e)!=0;c=b;d=J[a+4>>2];g=J[a+44>>2];b=d-g|0;i=b;f=b+J[a+120>>2]|0;b=J[a+124>>2]+(b>>31)|0;a:{b=f>>>0<i>>>0?b+1|0:b;if(!((c>>>0<=f>>>0&(b|0)>=(e|0)|(b|0)>(e|0))&h)){e=ba-16|0;ba=e;d=-1;c=J[a+72>>2];J[a+72>>2]=c-1|c;if(J[a+20>>2]!=J[a+28>>2]){da[J[a+36>>2]](a,0,0)|0}J[a+28>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;c=J[a>>2];b:{if(c&4){J[a>>2]=c|32;c=-1;break b}g=J[a+44>>2]+J[a+48>>2]|0;J[a+8>>2]=g;J[a+4>>2]=g;c=c<<27>>31}c:{if(c){break c}if((da[J[a+32>>2]](a,e+15|0,1)|0)!=1){break c}d=K[e+15|0]}ba=e+16|0;e=d;if((d|0)>=0){break a}g=J[a+44>>2];d=J[a+4>>2]}J[a+112>>2]=-1;J[a+116>>2]=-1;J[a+104>>2]=d;e=g-d|0;d=e+f|0;b=(e>>31)+b|0;J[a+120>>2]=d;J[a+124>>2]=d>>>0<e>>>0?b+1|0:b;return-1}d=f+1|0;b=d?b:b+1|0;h=J[a+4>>2];g=J[a+8>>2];c=J[a+116>>2];i=c;f=J[a+112>>2];d:{if(!(c|f)){break d}c=f-d|0;f=i-(b+(d>>>0>f>>>0)|0)|0;j=g-h|0;i=j>>31;if((f|0)>=(i|0)&c>>>0>=j>>>0|(f|0)>(i|0)){break d}g=c+h|0}J[a+104>>2]=g;f=J[a+44>>2];c=f-h|0;d=c+d|0;b=(c>>31)+b|0;J[a+120>>2]=d;J[a+124>>2]=d>>>0<c>>>0?b+1|0:b;if(f>>>0>=h>>>0){H[h-1|0]=e}return e}function yc(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{b:{f=a+16|0;d=J[f>>2];if(!d){break b}g=J[b>>2];b=f;while(1){e=(g|0)>J[d+16>>2];b=e?b:d;d=J[(e?d+4|0:d)>>2];if(d){continue}break}if((b|0)==(f|0)|(g|0)<J[b+16>>2]){break b}d=J[b+24>>2];if(!d){break a}a=K[c+11|0];b=a<<24>>24<0;f=b?J[c>>2]:c;a=b?J[c+4>>2]:a;while(1){b=K[d+27|0];c=b<<24>>24<0;b=c?J[d+20>>2]:b;g=b>>>0<a>>>0;c:{d:{e:{f:{g:{h:{e=g?b:a;if(e){c=c?J[d+16>>2]:d+16|0;h=Ba(f,c,e);if(h){break h}if(a>>>0>=b>>>0){break g}break c}if(a>>>0>=b>>>0){break f}break c}if((h|0)<0){break c}}b=Ba(c,f,e);if(b){break e}}if(g){break d}return 1}if((b|0)<0){break d}return 1}d=d+4|0}d=J[d>>2];if(d){continue}break}break a}d=J[a+4>>2];if(!d){break a}a=K[c+11|0];b=a<<24>>24<0;f=b?J[c>>2]:c;a=b?J[c+4>>2]:a;while(1){b=K[d+27|0];c=b<<24>>24<0;b=c?J[d+20>>2]:b;g=b>>>0<a>>>0;i:{j:{k:{l:{m:{n:{e=g?b:a;if(e){c=c?J[d+16>>2]:d+16|0;h=Ba(f,c,e);if(h){break n}if(a>>>0>=b>>>0){break m}break i}if(a>>>0>=b>>>0){break l}break i}if((h|0)<0){break i}}b=Ba(c,f,e);if(b){break k}}if(g){break j}return 1}if((b|0)<0){break j}return 1}d=d+4|0}d=J[d>>2];if(d){continue}break}}return 0}function ua(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){aa(a|0,b|0,c|0);return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){H[c|0]=K[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0<e>>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0<c>>>0){break c}while(1){J[c>>2]=J[b>>2];J[c+4>>2]=J[b+4>>2];J[c+8>>2]=J[b+8>>2];J[c+12>>2]=J[b+12>>2];J[c+16>>2]=J[b+16>>2];J[c+20>>2]=J[b+20>>2];J[c+24>>2]=J[b+24>>2];J[c+28>>2]=J[b+28>>2];J[c+32>>2]=J[b+32>>2];J[c+36>>2]=J[b+36>>2];J[c+40>>2]=J[b+40>>2];J[c+44>>2]=J[b+44>>2];J[c+48>>2]=J[b+48>>2];J[c+52>>2]=J[b+52>>2];J[c+56>>2]=J[b+56>>2];J[c+60>>2]=J[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){J[c>>2]=J[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0<a>>>0){c=a;break a}c=a;while(1){H[c|0]=K[b|0];H[c+1|0]=K[b+1|0];H[c+2|0]=K[b+2|0];H[c+3|0]=K[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0<e>>>0){while(1){H[c|0]=K[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function Zf(a){a=a|0;var b=0,c=0,d=0,e=0;J[a>>2]=10532;c=J[a+280>>2];J[a+280>>2]=0;if(c){d=c-4|0;b=J[d>>2];if(b){b=c+(b<<5)|0;while(1){b=wa(b-32|0);if((c|0)!=(b|0)){continue}break}}na(d)}b=J[a+268>>2];if(b){J[a+272>>2]=b;na(b)}b=J[a+244>>2];J[a+244>>2]=0;if(b){na(b)}b=J[a+232>>2];if(b){J[a+236>>2]=b;na(b)}wa(a+200|0);b=J[a+184>>2];if(b){J[a+188>>2]=b;na(b)}c=J[a+172>>2];if(c){d=c;b=J[a+176>>2];if((c|0)!=(b|0)){while(1){d=b-136|0;e=J[d+116>>2];if(e){J[b-16>>2]=e;na(e)}e=J[b-32>>2];if(e){J[b-28>>2]=e;na(e)}pc(b-132|0);b=d;if((c|0)!=(b|0)){continue}break}d=J[a+172>>2]}J[a+176>>2]=c;na(d)}b=J[a+152>>2];if(b){J[a+156>>2]=b;na(b)}b=J[a+140>>2];if(b){na(b)}b=J[a+128>>2];if(b){while(1){c=J[b>>2];na(b);b=c;if(b){continue}break}}b=J[a+120>>2];J[a+120>>2]=0;if(b){na(b)}b=J[a+108>>2];if(b){J[a+112>>2]=b;na(b)}b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+84>>2];if(b){na(b)}b=J[a+72>>2];if(b){J[a+76>>2]=b;na(b)}b=J[a+52>>2];if(b){J[a+56>>2]=b;na(b)}b=J[a+40>>2];if(b){J[a+44>>2]=b;na(b)}b=J[a+28>>2];if(b){na(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}b=J[a+12>>2];J[a+12>>2]=0;if(b){qc(b)}return a|0}function Hc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=-1;a:{if((b|0)==-1){h=J[a+12>>2];d=1;g=-1;break a}h=J[a+12>>2];b:{c:{if((b>>>0)%3|0){e=b-1|0;break c}e=b+2|0;if((e|0)!=-1){break c}d=1;break b}g=J[h+12>>2];while(1){f=e;d=J[g+(e<<2)>>2];if((d|0)!=-1){f=-1;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)!=-1){continue}}break}d=(d|0)!=-1;g=-1;if((b|0)==-1){break a}}g=J[J[h>>2]+(b<<2)>>2]}b=0;if(c){b=J[a+84>>2]+(g>>>3&536870908)|0;J[b>>2]=J[b>>2]|1<<g;b=1}c=J[J[a+152>>2]+(g<<2)>>2];e=J[a+140>>2]+(c>>>3&536870908)|0;J[e>>2]=J[e>>2]|1<<c;c=-1;d:{if(d){break d}e:{if((f>>>0)%3|0){e=f-1|0;break e}e=f+2|0;c=-1;if((e|0)==-1){break d}}c=J[J[h>>2]+(e<<2)>>2]}if((g|0)!=(c|0)){i=J[a+84>>2];while(1){a=f;f=(c>>>3&536870908)+i|0;J[f>>2]=J[f>>2]|1<<c;f=-1;c=-1;f:{if((a|0)==-1){break f}d=a+1|0;d=(d>>>0)%3|0?d:a-2|0;if((d|0)==-1){break f}e=J[h+12>>2];while(1){a=J[e+(d<<2)>>2];if((a|0)!=-1){d=a+1|0;d=(d>>>0)%3|0?d:a-2|0;if((d|0)!=-1){continue}break f}break}g:{if((d>>>0)%3|0){e=d-1|0;break g}e=d+2|0;if((e|0)!=-1){break g}f=-3;break f}c=J[J[h>>2]+(e<<2)>>2];f=d}b=b+1|0;if((c|0)!=(g|0)){continue}break}}}function Qb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{g=J[a+124>>2];c:{if(!g){break c}e=J[a+120>>2];i=Kl(g);h=g-1&d;d:{if(i>>>0<=1){break d}h=d;if(d>>>0<g>>>0){break d}h=(d>>>0)%(g>>>0)|0}e=J[e+(h<<2)>>2];if(!e){break c}f=J[e>>2];if(!f){break c}e:{if(i>>>0<=1){e=g-1|0;while(1){g=J[f+4>>2];f:{if((g|0)!=(d|0)){if((h|0)==(e&g)){break f}break c}if(J[f+8>>2]==(d|0)){break e}}f=J[f>>2];if(f){continue}break}break c}while(1){e=J[f+4>>2];g:{if((e|0)!=(d|0)){if(e>>>0>=g>>>0){e=(e>>>0)%(g>>>0)|0}if((e|0)==(h|0)){break g}break c}if(J[f+8>>2]==(d|0)){break e}}f=J[f>>2];if(f){continue}break}break c}f=J[f+12>>2];if((f|0)==-1){break c}g=c&1;c=J[a+112>>2];if((c|0)!=J[a+116>>2]){H[c+8|0]=g;J[c+4>>2]=b;J[c>>2]=f;J[a+112>>2]=c+12;return}d=J[a+108>>2];i=c-d|0;c=(i|0)/12|0;e=c+1|0;if(e>>>0>=357913942){break b}h=c<<1;e=c>>>0>=178956970?357913941:e>>>0<h>>>0?h:e;if(e){if(e>>>0>=357913942){break a}h=oa(P(e,12))}else{h=0}c=h+P(c,12)|0;H[c+8|0]=g;J[c+4>>2]=b;J[c>>2]=f;b=ta(c+P((i|0)/-12|0,12)|0,d,i);J[a+116>>2]=h+P(e,12);J[a+112>>2]=c+12;J[a+108>>2]=b;if(!d){break c}na(d)}return}qa();B()}xa();B()}function jc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=J[a+8>>2];e=J[a+4>>2];if(d-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;f=b&7;if(f){while(1){J[d>>2]=J[c>>2];d=d+4|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){J[d>>2]=J[c>>2];J[d+4>>2]=J[c>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=J[c>>2];J[d+16>>2]=J[c>>2];J[d+20>>2]=J[c>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=J[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}J[a+4>>2]=e;return}b:{i=J[a>>2];j=e-i|0;f=j>>2;g=f+b|0;if(g>>>0<1073741824){d=d-i|0;e=d>>>1|0;g=d>>>0>=2147483644?1073741823:e>>>0>g>>>0?e:g;if(g){if(g>>>0>=1073741824){break b}k=oa(g<<2)}f=(f<<2)+k|0;d=f;e=b&7;if(e){while(1){J[d>>2]=J[c>>2];d=d+4|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}e=f+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){J[d>>2]=J[c>>2];J[d+4>>2]=J[c>>2];J[d+8>>2]=J[c>>2];J[d+12>>2]=J[c>>2];J[d+16>>2]=J[c>>2];J[d+20>>2]=J[c>>2];J[d+24>>2]=J[c>>2];J[d+28>>2]=J[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}b=ta(k,i,j);J[a+4>>2]=e;J[a>>2]=b;J[a+8>>2]=b+(g<<2);if(i){na(i)}return}qa();B()}xa();B()}function cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=J[c>>2];m=J[c+4>>2];a:{if((f|0)==(m|0)){h=J[a+12>>2];b=J[a+8>>2];i=h-b|0;c=0;break a}o=J[b>>2];h=J[a+12>>2];b=J[a+8>>2];i=h-b|0;if((i|0)<=0){c=0;while(1){e=J[(J[f>>2]<<2)+o>>2];c=c>>>0>e>>>0?c:e+1|0;f=f+4|0;if((m|0)!=(f|0)){continue}break}break a}c=i>>>2|0;c=c>>>0<=1?1:c;q=c&1073741822;r=c&1;c=0;s=i>>>0<8;while(1){e=J[f>>2];k=e<<2;l=J[o+k>>2];if(l>>>0>=c>>>0){c=0;j=0;if(!s){while(1){p=c<<2;d=J[p+b>>2];g=J[d+68>>2];d=K[d+84|0]?e:J[g+k>>2];n=g;g=l<<2;J[n+g>>2]=d;n=g;d=J[(p|4)+b>>2];g=J[d+68>>2];J[n+g>>2]=K[d+84|0]?e:J[g+k>>2];c=c+2|0;j=j+2|0;if((q|0)!=(j|0)){continue}break}}if(r){c=J[(c<<2)+b>>2];d=J[c+68>>2];j=d+(l<<2)|0;if(!K[c+84|0]){e=J[d+k>>2]}J[j>>2]=e}c=l+1|0}f=f+4|0;if((m|0)!=(f|0)){continue}break}}d=0;if((i|0)>0){while(1){b=J[(d<<2)+b>>2];H[b+84|0]=0;f=J[b+68>>2];e=J[b+72>>2]-f>>2;b:{if(e>>>0<c>>>0){Ma(b+68|0,c-e|0,15024);h=J[a+12>>2];break b}if(c>>>0>=e>>>0){break b}J[b+72>>2]=f+(c<<2)}d=d+1|0;b=J[a+8>>2];if((d|0)<h-b>>2){continue}break}}}function me(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;J[a+4>>2]=b;d=J[J[J[b+4>>2]+8>>2]+(c<<2)>>2];J[a+12>>2]=c;J[a+8>>2]=d;a:{if((da[J[J[a>>2]+32>>2]](a)|0)==1&J[J[a+8>>2]+28>>2]-1>>>0>5){break a}f=J[b+48>>2];d=ba-16|0;ba=d;J[d+12>>2]=c;b=oa(32);J[d>>2]=b;J[d+4>>2]=17;J[d+8>>2]=-2147483616;H[b+16|0]=K[1529];c=K[1525]|K[1526]<<8|(K[1527]<<16|K[1528]<<24);e=K[1521]|K[1522]<<8|(K[1523]<<16|K[1524]<<24);H[b+8|0]=e;H[b+9|0]=e>>>8;H[b+10|0]=e>>>16;H[b+11|0]=e>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1517]|K[1518]<<8|(K[1519]<<16|K[1520]<<24);e=K[1513]|K[1514]<<8|(K[1515]<<16|K[1516]<<24);H[b|0]=e;H[b+1|0]=e>>>8;H[b+2|0]=e>>>16;H[b+3|0]=e>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+17|0]=0;b=jb(f,d+12|0,d,-1);if(H[d+11|0]<0){na(J[d>>2])}ba=d+16|0;c=da[J[J[a>>2]+48>>2]](a,(b|0)==-1?-1:b>>>0>6?-2:b)|0;b=J[a+36>>2];J[a+36>>2]=c;e=1;if(b){da[J[J[b>>2]+4>>2]](b);c=J[a+36>>2]}if(!c){break a}if(da[J[J[a>>2]+36>>2]](a,c)|0){break a}b=J[a+36>>2];J[a+36>>2]=0;if(!b){break a}da[J[J[b>>2]+4>>2]](b)}return e|0}function md(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(K[a+11|0]>>>7|0){e=J[a+4>>2]}else{e=K[a+11|0]&127}if(e>>>0<b>>>0){h=ba-16|0;ba=h;g=b-e|0;if(g){f=K[a+11|0]>>>7|0?(J[a+8>>2]&2147483647)-1|0:10;if(K[a+11|0]>>>7|0){b=J[a+4>>2]}else{b=K[a+11|0]&127}i=b+g|0;if(f-b>>>0<g>>>0){b:{d=ba-16|0;ba=d;c=i-f|0;if(c>>>0<=2147483631-f>>>0){if(K[a+11|0]>>>7|0){e=J[a>>2]}else{e=a}if(f>>>0<1073741799){J[d+12>>2]=f<<1;J[d>>2]=c+f;c=ba-16|0;ba=c;ba=c+16|0;c=d+12|0;c=J[(M[d>>2]<M[c>>2]?c:d)>>2];if(c>>>0>=11){j=c+16&-16;c=j-1|0;c=(c|0)==11?j:c}else{c=10}c=c+1|0}else{c=2147483631}Ac(d,c);c=J[d>>2];if(b){Ab(c,e,b)}if((f|0)!=10){na(e)}J[a>>2]=c;J[a+8>>2]=J[a+8>>2]&-2147483648|J[d+4>>2]&2147483647;J[a+8>>2]=J[a+8>>2]|-2147483648;ba=d+16|0;break b}gb();B()}}if(K[a+11|0]>>>7|0){e=J[a>>2]}else{e=a}b=e+b|0;d=ba-16|0;ba=d;H[d+15|0]=0;while(1){if(g){H[b|0]=K[d+15|0];g=g-1|0;b=b+1|0;continue}break}ba=d+16|0;ld(a,i);H[h+15|0]=0;H[e+i|0]=K[h+15|0]}ba=h+16|0;break a}if(K[a+11|0]>>>7|0){e=J[a>>2]}else{e=a}d=ba-16|0;ba=d;ld(a,b);H[d+15|0]=0;H[b+e|0]=K[d+15|0];ba=d+16|0}}function kf(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ba-16|0;ba=f;a:{d=rd(a);b:{if(!d){a=0;break b}e=J[a+100>>2];g=J[a+96>>2];J[f+8>>2]=0;J[f>>2]=0;J[f+4>>2]=0;b=e-g|0;c=(b|0)/12|0;c:{if((e|0)==(g|0)){break c}if(c>>>0>=357913942){break a}e=oa(b);J[f>>2]=e;J[f+8>>2]=e+P(c,12);a=0;h=e;e=b-12|0;b=(e-((e>>>0)%12|0)|0)+12|0;e=pa(h,0,b);J[f+4>>2]=b+e;if(K[d+84|0]){d=c>>>0<=1?1:c;i=d&1;if(c>>>0>=2){j=d&-2;c=0;while(1){b=P(a,12);d=b+g|0;h=J[d>>2];k=J[d+4>>2];b=b+e|0;J[b+8>>2]=J[d+8>>2];J[b>>2]=h;J[b+4>>2]=k;b=P(a|1,12);d=b+g|0;h=J[d>>2];k=J[d+4>>2];b=b+e|0;J[b+8>>2]=J[d+8>>2];J[b>>2]=h;J[b+4>>2]=k;a=a+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!i){break c}c=P(a,12);a=c+g|0;g=J[a+4>>2];d=J[a>>2];c=c+e|0;J[c+8>>2]=J[a+8>>2];J[c>>2]=d;J[c+4>>2]=g;break c}i=c>>>0<=1?1:c;a=J[d+68>>2];c=0;while(1){b=P(c,12);d=b+g|0;j=J[a+(J[d>>2]<<2)>>2];h=J[a+(J[d+4>>2]<<2)>>2];b=b+e|0;J[b+8>>2]=J[a+(J[d+8>>2]<<2)>>2];J[b+4>>2]=h;J[b>>2]=j;c=c+1|0;if((i|0)!=(c|0)){continue}break}}a=mf(f);c=J[f>>2];if(!c){break b}J[f+4>>2]=c;na(c)}ba=f+16|0;return a}qa();B()}function Kd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{if(J[a+64>>2]){break a}c=oa(32);J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;d=J[a+64>>2];J[a+64>>2]=c;if(!d){break a}c=J[d>>2];if(c){J[d+4>>2]=c;na(c)}na(d)}d=J[a+64>>2];c=J[a+28>>2]-1|0;if(c>>>0<=10){i=J[(c<<2)+14832>>2]}else{i=-1}c=P(i,K[a+24|0]);i=c;k=c>>31;c=Hl(c,k,b,0);b:{if((ca|0)<0){break b}c:{f=J[d+4>>2];e=J[d>>2];g=f-e|0;d:{if(c>>>0>g>>>0){j=c-g|0;h=J[d+8>>2];if(j>>>0<=h-f>>>0){l=d,m=pa(f,0,j)+j|0,J[l+4>>2]=m;break d}if((c|0)<0){break c}f=h-e|0;h=f<<1;f=f>>>0>=1073741823?2147483647:c>>>0<h>>>0?h:c;h=oa(f);pa(h+g|0,0,j);g=ta(h,e,g);J[d+8>>2]=g+f;J[d+4>>2]=c+g;J[d>>2]=g;if(!e){break d}na(e);break d}if(c>>>0>=g>>>0){break d}J[d+4>>2]=c+e}c=J[d+28>>2];e=J[d+24>>2]+1|0;c=e?c:c+1|0;J[d+24>>2]=e;J[d+28>>2]=c;e=1;break b}qa();B()}if(e){c=J[a+64>>2];J[a>>2]=c;d=J[c+20>>2];J[a+8>>2]=J[c+16>>2];J[a+12>>2]=d;d=J[c+24>>2];c=J[c+28>>2];J[a+48>>2]=0;J[a+52>>2]=0;J[a+40>>2]=i;J[a+44>>2]=k;J[a+16>>2]=d;J[a+20>>2]=c;J[a+80>>2]=b}}function _g(a,b,c){var d=0,e=Q(0),f=0,g=Q(0),h=0,i=0,j=Q(0),k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!(J[a+4>>2]!=-1|c-1>>>0>29)){J[a+4>>2]=c;h=K[b+24|0];c=0;J[a+20>>2]=0;if(h){d=h<<2;c=oa(d);f=pa(c,0,d)+d|0}d=J[a+8>>2];if(d){J[a+12>>2]=d;na(d)}J[a+8>>2]=c;J[a+16>>2]=f;J[a+12>>2]=f;d=h<<2;k=oa(d);o=oa(d);d=J[b+40>>2];s=J[b+44>>2];p=d;l=J[b+48>>2];m=J[b>>2];ua(c,l+J[m>>2]|0,d);n=ua(k,l+J[m>>2]|0,d);b=J[b+80>>2];a:{if(!(!h|b>>>0<2)){k=b;d=1;c=0;while(1){b=J[m>>2];f=Hl(d,c,p,s)+l|0;t=ua(o,b+f|0,p);u=J[a+8>>2];f=0;b=0;while(1){i=b<<2;q=t+i|0;e=N[q>>2];if(e!=e){break a}r=i+u|0;if(N[r>>2]>e){N[r>>2]=e;e=N[q>>2]}i=i+n|0;if(N[i>>2]<e){N[i>>2]=e}b=b+1|0;if((h|0)!=(b|0)){continue}break}d=d+1|0;c=d?c:c+1|0;if((d|0)!=(k|0)|c){continue}break}}e=N[a+20>>2];if(h){c=J[a+8>>2];f=0;b=0;while(1){d=b<<2;g=N[d+c>>2];if(g!=g|Q(R(g))==Q(Infinity)){break a}j=N[d+n>>2];if(j!=j|Q(R(j))==Q(Infinity)){break a}g=Q(j-g);if(g>e){N[a+20>>2]=g;e=g}b=b+1|0;if((h|0)!=(b|0)){continue}break}}f=1;if(e!=Q(0)){break a}J[a+20>>2]=1065353216}na(o);na(n)}return f}function va(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;A(+a);d=v(1)|0;b=v(0)|0;c=d>>>16|0;f=d-1072604335|0;if((f|0)==135337|f>>>0<135337){if(!b&(d|0)==1072693248){return 0}g=O[1879];a=a+-1;A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);h=+z();i=g*h;e=a*a;j=e*(a*O[1888]+O[1887]);k=i+j;l=e*e;return k+(l*(l*(e*(a*O[1896]+O[1895])+(a*O[1894]+O[1893]))+(e*(a*O[1892]+O[1891])+(a*O[1890]+O[1889])))+((a-h)*g+a*O[1880]+(j+(i-k))))}a:{if(c-32752>>>0<=4294934559){if(!(d&2147483647|b)){b=ba-16|0;O[b+8>>3]=-1;return O[b+8>>3]/0}if(!b&(d|0)==2146435072){break a}if(!(!(c&32768)&(c&32752)!=32752)){a=a-a;return a/a}A(+(a*4503599627370496));d=v(1)|0;b=v(0)|0;d=d-54525952|0}c=d-1072037888|0;f=c;c=(c>>>14&63)<<4;g=O[c+15184>>3]+ +(f>>20);h=O[1879];a=O[c+15176>>3];x(0,b-0|0);x(1,d-((f&-1048576)+(b>>>0<m>>>0)|0)|0);a=a*(+z()-O[c+16200>>3]-O[c+16208>>3]);A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);i=+z();j=h*i;k=g+j;e=a*a;a=k+(e*(e*e*(a*O[1886]+O[1885])+(e*(a*O[1884]+O[1883])+(a*O[1882]+O[1881])))+((a-i)*h+O[1880]*a+(j+(g-k))))}return a}function Ib(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=32-b|0;c=c<<e;a:{b:{d=J[a+16>>2];f=32-d|0;c:{if((f|0)>=(b|0)){b=b+d|0;J[a+16>>2]=b;f=J[a+12>>2]|c>>>d;J[a+12>>2]=f;if((b|0)!=32){break c}b=J[a+4>>2];d:{if((b|0)!=J[a+8>>2]){J[b>>2]=f;J[a+4>>2]=b+4;break d}c=b;b=J[a>>2];c=c-b|0;g=c>>2;d=g+1|0;if(d>>>0>=1073741824){break b}e=c>>>1|0;d=c>>>0>=2147483644?1073741823:d>>>0<e>>>0?e:d;if(d){if(d>>>0>=1073741824){break a}e=oa(d<<2)}else{e=0}g=e+(g<<2)|0;J[g>>2]=f;c=ta(e,b,c);J[a+8>>2]=c+(d<<2);J[a+4>>2]=g+4;J[a>>2]=c;if(!b){break d}na(b)}J[a+12>>2]=0;J[a+16>>2]=0;return}b=b-f|0;J[a+16>>2]=b;g=c>>>e|0;f=J[a+12>>2]|g>>>b;J[a+12>>2]=f;b=J[a+4>>2];e:{if((b|0)!=J[a+8>>2]){J[b>>2]=f;J[a+4>>2]=b+4;break e}c=b;b=J[a>>2];c=c-b|0;h=c>>2;d=h+1|0;if(d>>>0>=1073741824){break b}e=c>>>1|0;d=c>>>0>=2147483644?1073741823:d>>>0<e>>>0?e:d;if(d){if(d>>>0>=1073741824){break a}e=oa(d<<2)}else{e=0}h=e+(h<<2)|0;J[h>>2]=f;c=ta(e,b,c);J[a+8>>2]=c+(d<<2);J[a+4>>2]=h+4;J[a>>2]=c;if(!b){break e}na(b)}J[a+12>>2]=g<<32-J[a+16>>2]}return}qa();B()}xa();B()}function sb(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);H[b+12|0]=c;a:{if(c){break a}while(1){d=J[b+8>>2];if(K[d+12|0]){break a}b:{c=J[d+8>>2];e=J[c>>2];if((e|0)==(d|0)){e=J[c+4>>2];if(!(!e|K[e+12|0])){break b}c:{if(J[d>>2]==(b|0)){b=d;break c}b=J[d+4>>2];a=J[b>>2];J[d+4>>2]=a;if(a){J[a+8>>2]=d;c=J[d+8>>2]}J[b+8>>2]=c;a=J[d+8>>2];J[((J[a>>2]!=(d|0))<<2)+a>>2]=b;J[b>>2]=d;J[d+8>>2]=b;c=J[b+8>>2];d=J[c>>2]}H[b+12|0]=1;H[c+12|0]=0;a=J[d+4>>2];J[c>>2]=a;if(a){J[a+8>>2]=c}J[d+8>>2]=J[c+8>>2];a=J[c+8>>2];J[((J[a>>2]!=(c|0))<<2)+a>>2]=d;J[d+4>>2]=c;J[c+8>>2]=d;return}if(!(K[e+12|0]|!e)){break b}d:{if(J[d>>2]!=(b|0)){b=d;break d}a=J[b+4>>2];J[d>>2]=a;if(a){J[a+8>>2]=d;c=J[d+8>>2]}J[b+8>>2]=c;a=J[d+8>>2];J[((J[a>>2]!=(d|0))<<2)+a>>2]=b;J[b+4>>2]=d;J[d+8>>2]=b;c=J[b+8>>2]}H[b+12|0]=1;H[c+12|0]=0;a=J[c+4>>2];b=J[a>>2];J[c+4>>2]=b;if(b){J[b+8>>2]=c}J[a+8>>2]=J[c+8>>2];b=J[c+8>>2];J[((J[b>>2]!=(c|0))<<2)+b>>2]=a;J[a>>2]=c;J[c+8>>2]=a;break a}H[d+12|0]=1;H[c+12|0]=(a|0)==(c|0);H[e+12|0]=1;b=c;if((c|0)!=(a|0)){continue}break}}}function Jl(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!c){break k}if(!d){break j}e=S(d)-S(b)|0;if(e>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}ca=0;a=(a>>>0)/(c>>>0)|0;break a}if(!a){break h}if(!d|d-1&d){break g}a=b>>>Gl(d)|0;ca=0;break a}if(!(c-1&c)){break f}h=(S(c)+33|0)-S(b)|0;g=0-h|0;break d}h=e+1|0;g=63-e|0;break d}ca=0;a=(b>>>0)/(d>>>0)|0;break a}e=S(d)-S(b)|0;if(e>>>0<31){break e}break c}if((c|0)==1){break b}d=Gl(c);c=d&31;if((d&63)>>>0>=32){a=b>>>c|0}else{e=b>>>c|0;a=((1<<c)-1&b)<<32-c|a>>>c}ca=e;break a}h=e+1|0;g=63-e|0}e=h&63;f=e&31;if(e>>>0>=32){e=0;i=b>>>f|0}else{e=b>>>f|0;i=((1<<f)-1&b)<<32-f|a>>>f}g=g&63;f=g&31;if(g>>>0>=32){b=a<<f;a=0}else{b=(1<<f)-1&a>>>32-f|b<<f;a=a<<f}if(h){f=d-1|0;g=c-1|0;m=(g|0)!=-1?f+1|0:f;while(1){j=e<<1|i>>>31;e=i<<1|b>>>31;f=m-(j+(e>>>0>g>>>0)|0)>>31;k=c&f;i=e-k|0;e=j-((d&f)+(e>>>0<k>>>0)|0)|0;b=b<<1|a>>>31;a=l|a<<1;l=f&1;h=h-1|0;if(h){continue}break}}ca=b<<1|a>>>31;a=l|a<<1;break a}a=0;b=0}ca=b}return a}function Lg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=ba-16|0;ba=j;J[j+8>>2]=0;J[j>>2]=0;J[j+4>>2]=0;a:{b:{e=c+1|0;if(e){if(e>>>0>=1073741824){break b}h=oa(e<<2);pa(h,0,(c<<2)+4|0)}c:{if((b|0)<=0){break c}e=0;if(b>>>0>=4){k=b&-4;while(1){f=e<<2;i=(J[f+a>>2]<<2)+h|0;J[i>>2]=J[i>>2]+1;i=(J[(f|4)+a>>2]<<2)+h|0;J[i>>2]=J[i>>2]+1;i=(J[(f|8)+a>>2]<<2)+h|0;J[i>>2]=J[i>>2]+1;f=(J[(f|12)+a>>2]<<2)+h|0;J[f>>2]=J[f>>2]+1;e=e+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}f=b&3;if(!f){break c}while(1){k=(J[(e<<2)+a>>2]<<2)+h|0;J[k>>2]=J[k>>2]+1;e=e+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}e=0;if((c|0)<0){a=0;break a}o=+(b|0);a=0;while(1){b=J[(e<<2)+h>>2];if((b|0)>0){n=+(b|0);g=n*va(n/o)+g;a=a+1|0}b=(c|0)==(e|0);e=e+1|0;if(!b){continue}break}break a}qa();B()}if(d){J[d>>2]=a}if(h){na(h)}g=-g;d:{if(R(g)<0x8000000000000000){b=R(g)>=1?~~(g>0?T(V(g*2.3283064365386963e-10),4294967295):W((g-+(~~g>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~g>>>0;break d}b=-2147483648;a=0}ba=j+16|0;ca=b;return a}function Ig(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;hc(a,h,c,g,e,g);d=d-g|0;hc(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}
function zg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;_b(a,h,c,g,e,g);d=d-g|0;_b(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function yg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Zb(a,h,c,g,e,g);d=d-g|0;Zb(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function wg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Yb(a,h,c,g,e,g);d=d-g|0;Yb(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function vg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Xb(a,h,c,g,e,g);d=d-g|0;Xb(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function ug(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Wb(a,h,c,g,e,g);d=d-g|0;Wb(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function tg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Vb(a,h,c,g,e,g);d=d-g|0;Vb(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function sg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Ub(a,h,c,g,e,g);d=d-g|0;Ub(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function rg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Tb(a,h,c,g,e,g);d=d-g|0;Tb(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function qg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;Sb(a,h,c,g,e,g);d=d-g|0;Sb(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Hg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;gc(a,h,c,g,e,g);d=d-g|0;gc(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Gg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;fc(a,h,c,g,e,g);d=d-g|0;fc(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Fg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;ec(a,h,c,g,e,g);d=d-g|0;ec(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Eg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;dc(a,h,c,g,e,g);d=d-g|0;dc(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Dg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;cc(a,h,c,g,e,g);d=d-g|0;cc(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Cg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;bc(a,h,c,g,e,g);d=d-g|0;bc(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Bg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;ac(a,h,c,g,e,g);d=d-g|0;ac(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Ag(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=J[c>>2];c=J[d>>2];d=J[d+4>>2]-c>>3;h=b-4|0;b=J[h>>2];if(d>>>0<=b>>>0){break d}f=d;d=J[a>>2];if(f>>>0<=d>>>0){break d}if(M[c+(b<<3)>>2]<M[c+(d<<3)>>2]){J[e>>2]=b;J[e+4>>2]=J[a>>2];return}J[e>>2]=d;J[e+4>>2]=J[h>>2];return;default:if((d|0)<=8){Ua(a,b,e,c);return}g=d>>>1|0;i=g<<2;h=i+a|0;$b(a,h,c,g,e,g);d=d-g|0;$b(h,b,c,d,e+i|0,d);c=J[c>>2];d=h;while(1){if((b|0)==(d|0)){if((a|0)==(h|0)){break a}while(1){J[e>>2]=J[a>>2];e=e+4|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}break a}g=J[c>>2];f=J[c+4>>2]-g>>3;i=J[d>>2];if(f>>>0<=i>>>0){break c}j=f;f=J[a>>2];if(j>>>0<=f>>>0){break c}j=i;k=f;i=J[g+(i<<3)>>2];g=J[g+(f<<3)>>2];f=i>>>0<g>>>0;J[e>>2]=f?j:k;d=(f<<2)+d|0;e=e+4|0;a=((g>>>0<=i>>>0)<<2)+a|0;if((h|0)!=(a|0)){continue}break};break b;case 0:break a;case 1:break e}}J[e>>2]=J[a>>2];break a}ra();B()}ra();B()}if((b|0)==(d|0)){break a}while(1){J[e>>2]=J[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function zj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=ba-16|0;ba=g;e=J[a+4>>2];d=J[e>>2];a:{b=J[a+12>>2];c=J[b+28>>2]-J[b+24>>2]|0;f=c>>2;b:{if(f>>>0<=J[e+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}b=J[e+4>>2];c=oa(c);f=c+(f<<2)|0;h=c+(b-d&-4)|0;c=h;if((b|0)!=(d|0)){while(1){c=c-4|0;b=b-4|0;J[c>>2]=J[b>>2];if((b|0)!=(d|0)){continue}break}}J[e+8>>2]=f;J[e+4>>2]=h;J[e>>2]=c;if(!d){break b}na(d)}b=J[a+12>>2];c=J[b+28>>2];b=J[b+24>>2];J[g+12>>2]=0;b=c-b>>2;d=a+96|0;e=J[d>>2];c=J[a+100>>2]-e>>2;c:{if(b>>>0>c>>>0){jc(d,b-c|0,g+12|0);break c}if(b>>>0>=c>>>0){break c}J[a+100>>2]=e+(b<<2)}e=a+8|0;b=J[a+116>>2];d:{if(b){d=J[b>>2];if((d|0)==J[b+4>>2]){c=1;break d}b=0;while(1){c=Xf(e,J[(b<<2)+d>>2]);if(!c){break d}f=J[a+116>>2];d=J[f>>2];b=b+1|0;if(b>>>0<J[f+4>>2]-d>>2>>>0){continue}break}break d}c=1;a=J[a+12>>2];a=J[a+4>>2]-J[a>>2]|0;if(a>>>0<12){break d}a=(a>>2>>>0)/3|0;b=0;while(1){c=Xf(e,P(b,3));if(!c){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}ba=g+16|0;return c|0}qa();B()}function Zk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=J[b+88>>2];if(!(!c|J[c>>2]!=1)){e=J[c+8>>2];J[a+4>>2]=K[e|0]|K[e+1|0]<<8|(K[e+2|0]<<16|K[e+3|0]<<24);f=a+8|0;d=K[b+24|0];h=J[a+8>>2];g=J[a+12>>2]-h>>2;a:{if(d>>>0>g>>>0){Fa(f,d-g|0);d=K[b+24|0];e=J[c+8>>2];break a}if(d>>>0>=g>>>0){break a}J[a+12>>2]=h+(d<<2)}b:{if(!d){b=4;break b}h=d&3;f=J[f>>2];c:{if(d-1>>>0<3){b=4;d=0;break c}k=d&252;d=0;b=4;while(1){g=d<<2;c=b+e|0;J[g+f>>2]=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);J[f+(g|4)>>2]=K[c+4|0]|K[c+5|0]<<8|(K[c+6|0]<<16|K[c+7|0]<<24);J[f+(g|8)>>2]=K[c+8|0]|K[c+9|0]<<8|(K[c+10|0]<<16|K[c+11|0]<<24);J[f+(g|12)>>2]=K[c+12|0]|K[c+13|0]<<8|(K[c+14|0]<<16|K[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((k|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+e|0;J[f+(d<<2)>>2]=K[c|0]|K[c+1|0]<<8|(K[c+2|0]<<16|K[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((h|0)!=(j|0)){continue}break}}d=a;a=b+e|0;J[d+20>>2]=K[a|0]|K[a+1|0]<<8|(K[a+2|0]<<16|K[a+3|0]<<24);d=1}return d|0}function Le(a,b,c,d){var e=0,f=0,g=0,h=0;g=ba-32|0;ba=g;e=d&2147483647;h=e;f=e-1006698496|0;e=e-1140785152|0;a:{if((f|0)==(e|0)&0|e>>>0>f>>>0){e=c<<4|b>>>28;c=d<<4|c>>>28;b=b&268435455;if((b|0)==134217728&(a|0)!=0|b>>>0>134217728){f=c+1073741824|0;e=e+1|0;f=e?f:f+1|0;break a}f=c+1073741824|0;if(a|(b|0)!=134217728){break a}a=e&1;e=a+e|0;f=a>>>0>e>>>0?f+1|0:f;break a}if(!(!c&(h|0)==2147418112?!(a|b):h>>>0<2147418112)){a=d<<4|c>>>28;e=c<<4|b>>>28;f=a&524287|2146959360;break a}e=0;f=2146435072;if(h>>>0>1140785151){break a}f=0;h=h>>>16|0;if(h>>>0<15249){break a}e=d&65535|65536;Pa(g+16|0,a,b,c,e,h-15233|0);Gb(g,a,b,c,e,15361-h|0);b=J[g+8>>2];e=b<<4;b=J[g+12>>2]<<4|b>>>28;c=J[g>>2];f=J[g+4>>2];h=f;e=f>>>28|e;f=b;a=h&268435455;b=c|(J[g+16>>2]|J[g+24>>2]|(J[g+20>>2]|J[g+28>>2]))!=0;if((a|0)==134217728&(b|0)!=0|a>>>0>134217728){e=e+1|0;f=e?f:f+1|0;break a}if(b|(a|0)!=134217728){break a}a=e;e=e+(e&1)|0;f=a>>>0>e>>>0?f+1|0:f}ba=g+32|0;x(0,e|0);x(1,d&-2147483648|f);return+z()}function nj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=J[a+12>>2];c=J[a+68>>2];d=J[c+80>>2];H[b+84|0]=0;n=b+68|0;i=J[b+68>>2];e=J[b+72>>2]-i>>2;a:{if(e>>>0<d>>>0){Ma(n,d-e|0,11424);c=J[a+68>>2];d=J[c+80>>2];break a}if(d>>>0>=e>>>0){break a}J[b+72>>2]=i+(d<<2)}b=J[c+100>>2];e=J[c+96>>2];i=(b-e|0)/12|0;m=1;b:{if((b|0)==(e|0)){break b}k=J[k+28>>2];f=J[k>>2];if((f|0)==-1){return 0}o=i>>>0<=1?1:i;c=e;b=0;m=0;while(1){g=J[c>>2];if(g>>>0>=d>>>0){break b}j=J[J[a+72>>2]+12>>2];h=J[j+(f<<2)>>2];if(h>>>0>=d>>>0){break b}f=J[n>>2];J[f+(g<<2)>>2]=h;g=k+(l<<2)|0;h=J[g+4>>2];if((h|0)==-1){break b}l=J[c+4>>2];if(l>>>0>=d>>>0){break b}h=J[(h<<2)+j>>2];if(h>>>0>=d>>>0){break b}J[f+(l<<2)>>2]=h;g=J[g+8>>2];if((g|0)==-1){break b}c=J[c+8>>2];if(c>>>0>=d>>>0){break b}j=J[(g<<2)+j>>2];if(j>>>0>=d>>>0){break b}J[f+(c<<2)>>2]=j;b=b+1|0;m=i>>>0<=b>>>0;if((b|0)==(o|0)){break b}c=e+P(b,12)|0;l=P(b,3);f=J[k+(l<<2)>>2];if((f|0)!=-1){continue}break}}return m|0}function xg(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,k=0,l=0,m=0;h=J[d+80>>2];e=ba-48|0;ba=e;a=J[a+4>>2];m=a-2|0;a:{if(m>>>0>28){break a}j=J[J[d>>2]>>2]+J[d+48>>2]|0;J[e+16>>2]=a;a=-1<<a;J[e+20>>2]=a^-1;a=-2-a|0;J[e+24>>2]=a;J[e+32>>2]=(a|0)/2;N[e+28>>2]=Q(2)/Q(a|0);f=J[c>>2];if((f|0)!=J[c+4>>2]){a=0;d=0;while(1){g=J[(d<<2)+f>>2];h=e+36|0;k=J[J[b>>2]>>2];l=J[b+48>>2];f=J[b+40>>2];i=J[b+44>>2];if(!K[b+84|0]){g=J[J[b+68>>2]+(g<<2)>>2]}g=Hl(f,i,g,0);i=g;g=g+l|0;ua(h,g+k|0,f);Uf(e+16|0,h,e+12|0,e+8|0);f=a<<2;J[f+j>>2]=J[e+12>>2];J[(f|4)+j>>2]=J[e+8>>2];a=a+2|0;d=d+1|0;f=J[c>>2];if(d>>>0<J[c+4>>2]-f>>2>>>0){continue}break}break a}if(!h){break a}d=0;a=0;while(1){k=e+36|0;l=J[J[b>>2]>>2];i=J[b+48>>2];c=J[b+40>>2];f=Hl(c,J[b+44>>2],K[b+84|0]?a:J[J[b+68>>2]+(a<<2)>>2],0);g=f;f=f+i|0;ua(k,f+l|0,c);Uf(e+16|0,k,e+12|0,e+8|0);c=d<<2;J[c+j>>2]=J[e+12>>2];J[(c|4)+j>>2]=J[e+8>>2];d=d+2|0;a=a+1|0;if((h|0)!=(a|0)){continue}break}}ba=e+48|0;return m>>>0<29|0}function yk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=Q(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=ba-16|0;ba=k;if(J[c+28>>2]==9){d=J[a+4>>2];h=K[c+24|0];e=h<<2;f=oa(e);l=k+8|0;J[l>>2]=1065353216;i=N[a+20>>2];d=-1<<d^-1;if((d|0)>0){N[l>>2]=i/Q(d|0)}o=(d|0)>0;a:{if(!o){break a}j=J[c+80>>2];if(!j){break a}if(h){p=J[J[b>>2]>>2]+J[b+48>>2]|0;t=h&254;u=h&1;b=0;while(1){m=J[a+8>>2];i=N[l>>2];d=0;n=0;if((h|0)!=1){while(1){g=d<<2;q=(b<<2)+p|0;N[g+f>>2]=Q(i*Q(J[q>>2]))+N[g+m>>2];g=g|4;N[g+f>>2]=Q(i*Q(J[q+4>>2]))+N[g+m>>2];d=d+2|0;b=b+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){d=d<<2;N[d+f>>2]=Q(i*Q(J[(b<<2)+p>>2]))+N[d+m>>2];b=b+1|0}ua(J[J[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}break a}b=0;if((j|0)!=1){a=j&-2;d=0;while(1){ua(J[J[c+64>>2]>>2]+b|0,f,e);b=b+e|0;ua(b+J[J[c+64>>2]>>2]|0,f,e);b=b+e|0;d=d+2|0;if((a|0)!=(d|0)){continue}break}}if(!(j&1)){break a}ua(J[J[c+64>>2]>>2]+b|0,f,e)}na(f)}ba=k+16|0;return o|0}function Aj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c=J[a+12>>2];d=J[a+108>>2];e=J[d+80>>2];H[b+84|0]=0;m=b+68|0;h=J[b+68>>2];f=J[b+72>>2]-h>>2;a:{if(f>>>0<e>>>0){Ma(m,e-f|0,11424);d=J[a+108>>2];e=J[d+80>>2];break a}if(e>>>0>=f>>>0){break a}J[b+72>>2]=h+(e<<2)}b=J[d+100>>2];f=J[d+96>>2];h=(b-f|0)/12|0;k=1;b:{if((b|0)==(f|0)){break b}n=h>>>0<=1?1:h;o=J[c>>2];c=0;d=f;b=0;k=0;while(1){c=(c<<2)+o|0;i=J[c>>2];if((i|0)==-1){break b}g=J[d>>2];if(g>>>0>=e>>>0){break b}l=J[J[a+112>>2]+12>>2];j=J[l+(i<<2)>>2];if(j>>>0>=e>>>0){break b}i=J[m>>2];J[i+(g<<2)>>2]=j;g=J[c+4>>2];if((g|0)==-1){break b}j=J[d+4>>2];if(j>>>0>=e>>>0){break b}g=J[(g<<2)+l>>2];if(g>>>0>=e>>>0){break b}J[i+(j<<2)>>2]=g;c=J[c+8>>2];if((c|0)==-1){break b}d=J[d+8>>2];if(d>>>0>=e>>>0){break b}c=J[(c<<2)+l>>2];if(c>>>0>=e>>>0){break b}J[i+(d<<2)>>2]=c;b=b+1|0;k=h>>>0<=b>>>0;if((b|0)==(n|0)){break b}c=P(b,3);d=f+P(b,12)|0;if((b|0)!=1431655765){continue}break}}return k|0}function sj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c=J[a+12>>2];d=J[a+68>>2];e=J[d+80>>2];H[b+84|0]=0;m=b+68|0;h=J[b+68>>2];f=J[b+72>>2]-h>>2;a:{if(f>>>0<e>>>0){Ma(m,e-f|0,11424);d=J[a+68>>2];e=J[d+80>>2];break a}if(e>>>0>=f>>>0){break a}J[b+72>>2]=h+(e<<2)}b=J[d+100>>2];f=J[d+96>>2];h=(b-f|0)/12|0;k=1;b:{if((b|0)==(f|0)){break b}n=h>>>0<=1?1:h;o=J[c>>2];c=0;d=f;b=0;k=0;while(1){c=(c<<2)+o|0;i=J[c>>2];if((i|0)==-1){break b}g=J[d>>2];if(g>>>0>=e>>>0){break b}l=J[J[a+72>>2]+12>>2];j=J[l+(i<<2)>>2];if(j>>>0>=e>>>0){break b}i=J[m>>2];J[i+(g<<2)>>2]=j;g=J[c+4>>2];if((g|0)==-1){break b}j=J[d+4>>2];if(j>>>0>=e>>>0){break b}g=J[(g<<2)+l>>2];if(g>>>0>=e>>>0){break b}J[i+(j<<2)>>2]=g;c=J[c+8>>2];if((c|0)==-1){break b}d=J[d+8>>2];if(d>>>0>=e>>>0){break b}c=J[(c<<2)+l>>2];if(c>>>0>=e>>>0){break b}J[i+(d<<2)>>2]=c;b=b+1|0;k=h>>>0<=b>>>0;if((b|0)==(n|0)){break b}c=P(b,3);d=f+P(b,12)|0;if((b|0)!=1431655765){continue}break}}return k|0}function mg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=ba+-64|0;ba=c;d=oa(80);i=J[a+8>>2];J[d+12>>2]=0;J[d+16>>2]=0;J[d>>2]=11692;J[d+4>>2]=0;J[d+20>>2]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+32>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;J[d+52>>2]=0;J[d+76>>2]=0;J[d+72>>2]=b;J[d+68>>2]=i;J[d- -64>>2]=0;j=d+56|0;e=j;J[e>>2]=0;J[e+4>>2]=0;J[d+8>>2]=11856;e=J[a+12>>2];J[c+40>>2]=0;J[c+44>>2]=0;J[c+32>>2]=0;J[c+36>>2]=0;f=c+24|0;J[f>>2]=0;J[f+4>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+56>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;J[c+48>>2]=0;J[c+52>>2]=0;J[c>>2]=11856;J[c+4>>2]=e;g=J[e>>2];h=J[e+4>>2];H[c+63|0]=0;k=f;f=c+63|0;Na(k,(h-g>>2>>>0)/3|0,f);g=J[c+4>>2];h=J[g+28>>2];g=J[g+24>>2];H[c+63|0]=0;Na(c+36|0,h-g>>2,f);J[c+20>>2]=d;J[c+16>>2]=i;J[c+12>>2]=b;J[c+8>>2]=e;J[d+76>>2]=a+72;Kc(d+8|0,c);Rb(j,J[c+48>>2],J[c+52>>2]);J[c>>2]=11856;a=J[c+48>>2];if(a){J[c+52>>2]=a;na(a)}J[c>>2]=11672;a=J[c+36>>2];if(a){na(a)}a=J[c+24>>2];if(a){na(a)}ba=c- -64|0;return d}function Sa(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0;a:{b:{if((e|0)<=(f|0)){if((a|0)==(b|0)){break b}f=g;e=a;while(1){J[f>>2]=J[e>>2];f=f+4|0;e=e+4|0;if((e|0)!=(b|0)){continue}break}if((f|0)==(g|0)){break b}d=J[d>>2];while(1){if((b|0)==(c|0)){ta(a,g,f-g|0);return}c:{e=J[d>>2];h=J[d+4>>2]-e>>3;i=J[b>>2];if(h>>>0<=i>>>0){break c}j=h;h=J[g>>2];if(j>>>0<=h>>>0){break c}j=h;k=i;i=J[e+(i<<3)>>2];e=J[e+(h<<3)>>2];h=i>>>0>=e>>>0;J[a>>2]=h?j:k;b=((e>>>0>i>>>0)<<2)+b|0;a=a+4|0;g=(h<<2)+g|0;if((g|0)!=(f|0)){continue}break b}break}ra();B()}if((b|0)==(c|0)){break b}f=g;e=b;while(1){J[f>>2]=J[e>>2];f=f+4|0;e=e+4|0;if((e|0)!=(c|0)){continue}break}if((f|0)==(g|0)){break b}while(1){if((a|0)==(b|0)){a=f-g|0;ta(c-a|0,g,a);return}i=J[d>>2];e=J[i>>2];h=J[i+4>>2]-e>>3;k=f-4|0;i=J[k>>2];if(h>>>0<=i>>>0){break a}j=h;l=b-4|0;h=J[l>>2];if(j>>>0<=h>>>0){break a}c=c-4|0;e=M[e+(i<<3)>>2]<M[e+(h<<3)>>2];J[c>>2]=e?h:i;b=e?l:b;f=e?f:k;if((g|0)!=(f|0)){continue}break}}return}ra();B()}function _c(a){var b=0,c=0,d=0,e=0;c=J[a+1176>>2];if(c){d=c;b=J[a+1180>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=J[d>>2];if(e){J[b-8>>2]=e;na(e)}b=d;if((c|0)!=(b|0)){continue}break}d=J[a+1176>>2]}J[a+1180>>2]=c;na(d)}c=J[a+1164>>2];if(c){d=c;b=J[a+1168>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=J[d>>2];if(e){J[b-8>>2]=e;na(e)}b=d;if((c|0)!=(b|0)){continue}break}d=J[a+1164>>2]}J[a+1168>>2]=c;na(d)}b=J[a+1152>>2];if(b){J[a+1156>>2]=b;na(b)}b=J[a+1140>>2];if(b){J[a+1144>>2]=b;na(b)}b=J[a+1128>>2];if(b){J[a+1132>>2]=b;na(b)}tb(a+1108|0);tb(a+1088|0);tb(a+1068|0);wa(a+1036|0);a=a+12|0;wa(a+992|0);wa(a+960|0);wa(a+928|0);wa(a+896|0);wa(a+864|0);wa(a+832|0);wa(a+800|0);wa(a+768|0);wa(a+736|0);wa(a+704|0);wa(a+672|0);wa(a+640|0);wa(a+608|0);wa(a+576|0);wa(a+544|0);wa(a+512|0);wa(a+480|0);wa(a+448|0);wa(a+416|0);wa(a+384|0);wa(a+352|0);wa(a+320|0);wa(a+288|0);wa(a+256|0);wa(a+224|0);wa(a+192|0);wa(a+160|0);wa(a+128|0);wa(a+96|0);wa(a- -64|0);wa(a+32|0);wa(a)}function Ed(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=ba-32|0;ba=d;a:{b=J[a+16>>2];c=J[a+20>>2];if(!!b&(c|0)>=0|(c|0)>0){e=J[J[a+12>>2]+4>>2]+7|0;f=e>>>0<7?1:f;c=f>>>3|0;f=f<<29|e>>>3;if(K[a+24|0]){e=J[a+4>>2];J[d>>2]=0;J[d+4>>2]=0;H[d+24|0]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;xb(f,c,d);c=e-b|0;e=c-8|0;b=J[d+4>>2]-J[d>>2]|0;ta(e+b|0,c,f);ua(e,J[d>>2],b);c=8-b|0;b=J[a+20>>2];e=c;c=c+J[a+16>>2]|0;b=e>>>0>c>>>0?b+1|0:b;J[a+16>>2]=c;J[a+20>>2]=b;b=J[d+12>>2];J[d+12>>2]=0;if(b){na(b)}b=J[d>>2];if(b){J[d+4>>2]=b;na(b)}b=J[a+16>>2]}b=f-b|0;g=J[a+4>>2];f=J[a>>2];e=g-f|0;c=b+e|0;b:{if(c>>>0>e>>>0){h=J[a+8>>2];if(h-g>>>0>=b>>>0){i=a,j=pa(g,0,b)+b|0,J[i+4>>2]=j;break b}if((c|0)<0){break a}g=h-f|0;h=g<<1;g=g>>>0>=1073741823?2147483647:c>>>0<h>>>0?h:c;h=oa(g);pa(h+e|0,0,b);b=ta(h,f,e);J[a+8>>2]=b+g;J[a+4>>2]=b+c;J[a>>2]=b;if(!f){break b}na(f);break b}if(c>>>0>=e>>>0){break b}J[a+4>>2]=c+f}J[a+16>>2]=0;J[a+20>>2]=0}ba=d+32|0;return}qa();B()}function dj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=J[a+4>>2];b=J[b+12>>2]-J[b+8>>2]|0;a:{if((b|0)>3){b=0;while(1){if(da[J[J[a>>2]+36>>2]](a,b)|0){b=b+1|0;c=J[a+4>>2];c=J[c+12>>2]-J[c+8>>2]>>2;if((b|0)<(c|0)){continue}break a}break}return 0}c=b>>2}b=a+20|0;d=J[a+20>>2];e=J[a+24>>2]-d>>2;b:{if(e>>>0<c>>>0){Fa(b,c-e|0);break b}if(c>>>0>=e>>>0){break b}J[a+24>>2]=d+(c<<2)}f=J[a+8>>2];a=J[a+12>>2];if((f|0)==(a|0)){return 1}a=a-f>>2;j=a>>>0<=1?1:a;e=J[b>>2];b=0;while(1){a=J[(b<<2)+f>>2];d=J[a+8>>2];c=J[a+4>>2];c:{if((d|0)==(c|0)){break c}a=d-c>>2;d=a>>>0<=1?1:a;i=d&3;g=0;a=0;if(d-1>>>0>=3){k=d&-4;h=0;while(1){d=a<<2;J[e+(J[d+c>>2]<<2)>>2]=b;J[e+(J[c+(d|4)>>2]<<2)>>2]=b;J[e+(J[c+(d|8)>>2]<<2)>>2]=b;J[e+(J[c+(d|12)>>2]<<2)>>2]=b;a=a+4|0;h=h+4|0;if((k|0)!=(h|0)){continue}break}}if(!i){break c}while(1){J[e+(J[c+(a<<2)>>2]<<2)>>2]=b;a=a+1|0;g=g+1|0;if((g|0)!=(i|0)){continue}break}}b=b+1|0;if((j|0)!=(b|0)){continue}break}return 1}function ek(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=J[a+12>>2];i=J[a+8>>2];d=e-i>>2;b=K[b+24|0];a:{if(d>>>0<b>>>0){Fa(a+8|0,b-d|0);i=J[a+8>>2];e=J[a+12>>2];break a}if(b>>>0>=d>>>0){break a}e=(b<<2)+i|0;J[a+12>>2]=e}b=0;f=J[c+8>>2];h=J[c+12>>2];j=J[c+20>>2];e=e-i|0;d=J[c+16>>2];g=e+d|0;j=e>>>0>g>>>0?j+1|0:j;b:{if(f>>>0<g>>>0&(h|0)<=(j|0)|(h|0)<(j|0)){break b}ua(i,d+J[c>>2]|0,e);d=J[c+20>>2];g=e;e=e+J[c+16>>2]|0;d=g>>>0>e>>>0?d+1|0:d;J[c+16>>2]=e;J[c+20>>2]=d;f=J[c+8>>2];h=J[c+12>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;if(f>>>0<g>>>0&(d|0)>=(h|0)|(d|0)>(h|0)){break b}d=e+J[c>>2]|0;J[a+20>>2]=K[d|0]|K[d+1|0]<<8|(K[d+2|0]<<16|K[d+3|0]<<24);d=J[c+20>>2];g=d;f=d;e=J[c+16>>2];d=e+4|0;f=d>>>0<4?f+1|0:f;J[c+16>>2]=d;J[c+20>>2]=f;h=J[c+12>>2];if((f|0)>=(h|0)&d>>>0>=M[c+8>>2]|(f|0)>(h|0)){break b}f=K[d+J[c>>2]|0];d=g;e=e+5|0;d=e>>>0<5?d+1|0:d;J[c+16>>2]=e;J[c+20>>2]=d;if(f-1>>>0>29){break b}J[a+4>>2]=f;b=1}return b|0}function qe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{f=J[a+4>>2];b:{if((f|0)!=J[a>>2]){c=f;break b}g=J[a+8>>2];c=J[a+12>>2];if(g>>>0<c>>>0){e=((c-g>>2)+1|0)/2<<2;c=e+g|0;if((f|0)!=(g|0)){d=g-f|0;c=c-d|0;ta(c,f,d);f=J[a+8>>2]}J[a+4>>2]=c;J[a+8>>2]=e+f;break b}d=(c|0)==(f|0)?1:c-f>>1;if(d>>>0>=1073741824){break a}c=d<<2;i=oa(c);k=i+c|0;c=(d+3&-4)+i|0;h=c;c:{if((f|0)==(g|0)){break c}g=g-f|0;l=g&-4;e=c;d=f;j=g-4|0;g=(j>>>2|0)+1&7;if(g){h=0;while(1){J[e>>2]=J[d>>2];d=d+4|0;e=e+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}h=c+l|0;if(j>>>0<28){break c}while(1){J[e>>2]=J[d>>2];J[e+4>>2]=J[d+4>>2];J[e+8>>2]=J[d+8>>2];J[e+12>>2]=J[d+12>>2];J[e+16>>2]=J[d+16>>2];J[e+20>>2]=J[d+20>>2];J[e+24>>2]=J[d+24>>2];J[e+28>>2]=J[d+28>>2];d=d+32|0;e=e+32|0;if((h|0)!=(e|0)){continue}break}}J[a+12>>2]=k;J[a+8>>2]=h;J[a+4>>2]=c;J[a>>2]=i;if(!f){break b}na(f);c=J[a+4>>2]}J[c-4>>2]=J[b>>2];J[a+4>>2]=J[a+4>>2]-4;return}xa();B()}function vd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=c-b|0;e=J[a+8>>2];d=J[a>>2];if(f>>>0<=e-d>>>0){h=J[a+4>>2]-d|0;e=h+b|0;g=f>>>0>h>>>0?e:c;a:{if((g|0)==(b|0)){break a}k=(b^-1)+g|0;i=g-b&7;if(i){while(1){H[d|0]=K[b|0];d=d+1|0;b=b+1|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){H[d|0]=K[b|0];H[d+1|0]=K[b+1|0];H[d+2|0]=K[b+2|0];H[d+3|0]=K[b+3|0];H[d+4|0]=K[b+4|0];H[d+5|0]=K[b+5|0];H[d+6|0]=K[b+6|0];H[d+7|0]=K[b+7|0];d=d+8|0;b=b+8|0;if((g|0)!=(b|0)){continue}break}}if(f>>>0>h>>>0){b=J[a+4>>2];if((c|0)!=(g|0)){while(1){H[b|0]=K[e|0];b=b+1|0;e=e+1|0;if((e|0)!=(c|0)){continue}break}}J[a+4>>2]=b;return}J[a+4>>2]=d;return}if(d){J[a+4>>2]=d;na(d);J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;e=0}b:{if((f|0)<0){break b}d=e<<1;e=e>>>0>=1073741823?2147483647:d>>>0>f>>>0?d:f;if((e|0)<0){break b}d=oa(e);J[a+4>>2]=d;J[a>>2]=d;J[a+8>>2]=d+e;if((b|0)!=(c|0)){d=ua(d,b,f)+f|0}J[a+4>>2]=d;return}qa();B()}function Uf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+N[b>>2];k=+N[b+4>>2];l=+N[b+8>>2];g=R(j)+R(k)+R(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=J[a+16>>2];l=+(h|0);g=V(j*l+.5);b:{if(R(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=(f^m)-f|0;g=V(k*l+.5);c:{if(R(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+((f^b)-b|0)|0)|0;i=(b|0)>0?b:0;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=J[a+8>>2];e=h+f|0;break d}b=f>>31;b=(b^f)-b|0;a=J[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}if(!((a|0)!=(e|0)|b)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((a|0)!=(e|0)|(b|0)>=(h|0))){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}J[c>>2]=a;J[d>>2]=b}function ge(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{e=J[b+4>>2];c:{if(!e){f=b+4|0;c=f;break c}f=K[c+11|0];g=f<<24>>24<0;i=g?J[c>>2]:c;g=g?J[c+4>>2]:f;while(1){c=e;h=K[e+27|0];f=h<<24>>24<0;e=f?J[e+20>>2]:h;h=e>>>0<g>>>0;d:{e:{f:{g:{j=h?e:g;h:{if(j){f=f?J[c+16>>2]:c+16|0;k=Ba(i,f,j);if(!k){if(e>>>0>g>>>0){break h}break g}if((k|0)>=0){break g}break h}if(e>>>0<=g>>>0){break f}}f=c;e=J[c>>2];if(e){continue}break c}e=Ba(f,i,j);if(e){break e}}if(h){break d}break b}if((e|0)>=0){break b}}e=J[c+4>>2];if(e){continue}break}f=c+4|0}e=oa(40);g=e+16|0;d=J[d>>2];i:{if(H[d+11|0]>=0){i=J[d+4>>2];J[g>>2]=J[d>>2];J[g+4>>2]=i;J[g+8>>2]=J[d+8>>2];break i}Ga(g,J[d>>2],J[d+4>>2])}J[e+8>>2]=c;J[e>>2]=0;J[e+4>>2]=0;J[e+36>>2]=0;J[e+28>>2]=0;J[e+32>>2]=0;J[f>>2]=e;c=e;d=J[J[b>>2]>>2];if(d){J[b>>2]=d;c=J[f>>2]}sb(J[b+4>>2],c);J[b+8>>2]=J[b+8>>2]+1;b=1;break a}e=c;b=0}H[a+4|0]=b;J[a>>2]=e}function rc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=ba-32|0;ba=d;h=J[b>>2]+J[a+40>>2]|0;e=J[a+32>>2];c=e-4194304|0;a:{if(c>>>0<=63){H[J[a+24>>2]+J[a+28>>2]|0]=e;g=J[a+28>>2]+1|0;break a}if(c>>>0<=16383){c=J[a+24>>2]+J[a+28>>2]|0;H[c+1|0]=e+16384>>>8;H[c|0]=e;g=J[a+28>>2]+2|0;break a}if(c>>>0<=4194303){c=J[a+24>>2]+J[a+28>>2]|0;H[c+2|0]=e+4194304>>>16;H[c+1|0]=e>>>8;H[c|0]=e;g=J[a+28>>2]+3|0;break a}if(c>>>0<=1073741823){f=J[a+24>>2]+J[a+28>>2]|0;c=e-1077936128|0;H[f+3|0]=c>>>24;H[f+2|0]=c>>>16;H[f+1|0]=e>>>8;H[f|0]=e;g=J[a+28>>2]+4|0;break a}g=J[a+28>>2]}f=g;J[d>>2]=0;J[d+4>>2]=0;H[d+24|0]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;c=f>>31;xb(f,c,d);e=J[d+4>>2]-J[d>>2]|0;ta(e+h|0,h,f);ua(h,J[d>>2],e);h=J[a+40>>2];a=J[a+44>>2];f=e+f|0;c=a+(g>>>0>f>>>0?c+1|0:c)|0;a=f+h|0;Ia(b,a);a=J[d+12>>2];J[d+12>>2]=0;if(a){na(a)}a=J[d>>2];if(a){J[d+4>>2]=a;na(a)}ba=d+32|0}function yb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=ba-32|0;ba=d;h=J[b>>2]+J[a+40>>2]|0;f=J[a+32>>2];c=f-16384|0;a:{if(c>>>0<=63){H[J[a+24>>2]+J[a+28>>2]|0]=f;g=J[a+28>>2]+1|0;break a}if(c>>>0<=16383){c=J[a+24>>2]+J[a+28>>2]|0;H[c|0]=f;H[c+1|0]=f>>>8;g=J[a+28>>2]+2|0;break a}if(c>>>0<=4194303){e=J[a+24>>2]+J[a+28>>2]|0;c=f+8372224|0;H[e+2|0]=c>>>16;H[e+1|0]=c>>>8;H[e|0]=f;g=J[a+28>>2]+3|0;break a}if(c>>>0<=1073741823){e=J[a+24>>2]+J[a+28>>2]|0;c=f-1073758208|0;H[e+3|0]=c>>>24;H[e+2|0]=c>>>16;H[e+1|0]=c>>>8;H[e|0]=f;g=J[a+28>>2]+4|0;break a}g=J[a+28>>2]}e=g;J[d>>2]=0;J[d+4>>2]=0;H[d+24|0]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;c=e>>31;xb(e,c,d);f=J[d+4>>2]-J[d>>2]|0;ta(f+h|0,h,e);ua(h,J[d>>2],f);h=J[a+40>>2];a=J[a+44>>2];e=e+f|0;c=a+(g>>>0>e>>>0?c+1|0:c)|0;a=e+h|0;Ia(b,a);a=J[d+12>>2];J[d+12>>2]=0;if(a){na(a)}a=J[d>>2];if(a){J[d+4>>2]=a;na(a)}ba=d+32|0}function ii(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=Q(0),f=Q(0),g=Q(0),h=Q(0),i=Q(0),j=0,k=Q(0),l=Q(0),m=Q(0),n=Q(0),o=0;a:{if(J[c+28>>2]!=9|K[c+24|0]!=3){break a}a=J[a+4>>2];if(a-2>>>0>28){break a}o=1;j=J[c+80>>2];if(!j){break a}k=Q(Q(2)/Q((1<<a)-2|0));c=J[J[c>>2]>>2]+J[c+48>>2]|0;a=J[J[b>>2]>>2]+J[b+48>>2]|0;b=0;while(1){g=Q(0);l=Q(0);m=Q(0);e=Q(Q(Q(J[a>>2])*k)+Q(-1));f=Q(Q(Q(J[a+4>>2])*k)+Q(-1));i=Q(Q(Q(1)-Q(R(e)))-Q(R(f)));h=Q(U(Q(-i),Q(0)));n=Q(-h);f=Q(f+(f<Q(0)?h:n));e=Q(e+(e<Q(0)?h:n));h=Q(Q(f*f)+Q(Q(i*i)+Q(e*e)));if(!(+h<1e-6)){g=Q(Q(1)/Q(Y(h)));m=Q(f*g);l=Q(e*g);g=Q(i*g)}a=a+8|0;d=(C(m),v(2));H[c+8|0]=d;H[c+9|0]=d>>>8;H[c+10|0]=d>>>16;H[c+11|0]=d>>>24;d=(C(l),v(2));H[c+4|0]=d;H[c+5|0]=d>>>8;H[c+6|0]=d>>>16;H[c+7|0]=d>>>24;d=(C(g),v(2));H[c|0]=d;H[c+1|0]=d>>>8;H[c+2|0]=d>>>16;H[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function lg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=ba-16|0;ba=c;b=J[J[a+184>>2]+(b<<2)>>2];H[c+15|0]=b;e=J[J[a+4>>2]+44>>2];d=J[e+20>>2];if(!J[e+16>>2]&(d|0)<=0|(d|0)<0){sa(e,J[e+4>>2],c+15|0,c+16|0);b=K[c+15|0]}a:{b:{c:{if(b<<24>>24<0){e=J[a+68>>2];break c}b=J[J[a+172>>2]+P(b&255,136)>>2];d=da[J[J[a>>2]+40>>2]](a)|0;f=J[a+172>>2]+P(H[c+15|0],136)|0;e=J[f+132>>2];d:{switch(J[J[J[d+56>>2]+84>>2]+(b<<2)>>2]){case 0:break c;case 1:break d;default:break b}}if(!K[f+28|0]){break b}}b=J[J[a+4>>2]+44>>2];H[c+14|0]=0;d=J[b+20>>2];if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+14|0,c+15|0);break a}b=J[J[a+4>>2]+44>>2];H[c+13|0]=1;d=J[b+20>>2];if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+13|0,c+14|0)}a=J[J[a+4>>2]+44>>2];H[c+12|0]=e;b=J[a+20>>2];if(!J[a+16>>2]&(b|0)<=0|(b|0)<0){sa(a,J[a+4>>2],c+12|0,c+13|0)}ba=c+16|0;return 1}function Cc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{e=J[b+4>>2];c:{if(!e){f=b+4|0;c=f;break c}f=K[c+11|0];g=f<<24>>24<0;h=g?J[c>>2]:c;g=g?J[c+4>>2]:f;while(1){c=e;e=K[e+27|0];f=e<<24>>24<0;e=f?J[c+20>>2]:e;j=e>>>0<g>>>0;d:{e:{f:{g:{i=j?e:g;h:{if(i){f=f?J[c+16>>2]:c+16|0;k=Ba(h,f,i);if(!k){if(e>>>0>g>>>0){break h}break g}if((k|0)>=0){break g}break h}if(e>>>0<=g>>>0){break f}}f=c;e=J[c>>2];if(e){continue}break c}e=Ba(f,h,i);if(e){break e}}if(j){break d}break b}if((e|0)>=0){break b}}e=J[c+4>>2];if(e){continue}break}f=c+4|0}e=oa(40);J[e+24>>2]=J[d+8>>2];g=J[d+4>>2];h=J[d>>2];J[e+16>>2]=h;J[e+20>>2]=g;J[d>>2]=0;J[d+4>>2]=0;J[d+8>>2]=0;Ob(e+28|0,d+12|0);J[e+8>>2]=c;J[e>>2]=0;J[e+4>>2]=0;J[f>>2]=e;c=e;d=J[J[b>>2]>>2];if(d){J[b>>2]=d;c=J[f>>2]}sb(J[b+4>>2],c);J[b+8>>2]=J[b+8>>2]+1;b=1;break a}e=c;b=0}H[a+4|0]=b;J[a>>2]=e}function El(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=1;a:{b:{c:{if((da[J[J[b>>2]+20>>2]](b)|0)<=0){break c}while(1){e=Nb(J[J[a+4>>2]+4>>2],da[J[J[b>>2]+24>>2]](b,i)|0);j=(e|0)!=-1;if((e|0)==-1){break c}c=J[a+20>>2];d:{if((c|0)!=J[a+24>>2]){J[c>>2]=e;J[a+20>>2]=c+4;break d}f=c;c=J[a+16>>2];d=f-c|0;h=d>>2;g=h+1|0;if(g>>>0>=1073741824){break b}f=d>>>1|0;g=d>>>0>=2147483644?1073741823:g>>>0<f>>>0?f:g;if(g){if(g>>>0>=1073741824){break a}f=oa(g<<2)}else{f=0}h=f+(h<<2)|0;J[h>>2]=e;d=ta(f,c,d);J[a+24>>2]=d+(g<<2);J[a+20>>2]=h+4;J[a+16>>2]=d;if(!c){break d}na(c)}c=J[a+4>>2];e:{if((e|0)<0){break e}d=J[c+4>>2];if(J[d+12>>2]-J[d+8>>2]>>2<=(e|0)){break e}c=J[J[c+8>>2]+(J[J[c+20>>2]+(e<<2)>>2]<<2)>>2];da[J[J[c>>2]+32>>2]](c,e)|0}i=i+1|0;if((da[J[J[b>>2]+20>>2]](b)|0)>(i|0)){continue}break}}return j|0}qa();B()}xa();B()}function Ta(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==(c|0)){J[a+4>>2]=d;J[a>>2]=d;return}if((c|0)==(d|0)){J[a+4>>2]=c;J[a>>2]=b;return}a:{if((b+4|0)==(c|0)){f=J[b>>2];e=b;b=d-c|0;c=ta(e,c,b)+b|0;J[c>>2]=f;break a}if((c+4|0)==(d|0)){f=d-4|0;e=J[f>>2];c=d;if((b|0)!=(f|0)){f=f-b|0;c=d-f|0;ta(c,b,f)}J[b>>2]=e;break a}g=c-b>>2;h=d-c>>2;if((g|0)==(h|0)){e=c;while(1){f=J[b>>2];J[b>>2]=J[e>>2];J[e>>2]=f;b=b+4|0;if((c|0)==(b|0)){break a}e=e+4|0;if((e|0)!=(d|0)){continue}break}break a}e=h;f=g;while(1){c=f;f=e;e=(c|0)%(e|0)|0;if(e){continue}break}if(f){e=(f<<2)+b|0;while(1){e=e-4|0;j=g<<2;c=e+j|0;k=J[e>>2];f=e;while(1){i=f;f=c;J[i>>2]=J[c>>2];i=c+j|0;c=d-c>>2;c=(c|0)>(g|0)?i:(g-c<<2)+b|0;if((e|0)!=(c|0)){continue}break}J[f>>2]=k;if((b|0)!=(e|0)){continue}break}}c=(h<<2)+b|0}J[a+4>>2]=d;J[a>>2]=c}function Kc(a,b){var c=0,d=0;c=J[b+8>>2];J[a+4>>2]=J[b+4>>2];J[a+8>>2]=c;J[a+20>>2]=J[b+20>>2];c=J[b+16>>2];J[a+12>>2]=J[b+12>>2];J[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=J[b+28>>2];if(c){d=J[a+24>>2];if(J[a+32>>2]<<5>>>0<c>>>0){if(d){na(d);J[a+32>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;c=J[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=oa(c<<2);J[a+32>>2]=c;J[a+28>>2]=0;J[a+24>>2]=d;c=J[b+28>>2]}ta(d,J[b+24>>2],(c-1>>>3&536870908)+4|0);c=J[b+28>>2]}else{c=0}J[a+28>>2]=c;c=J[b+40>>2];if(c){d=J[a+36>>2];if(J[a+44>>2]<<5>>>0<c>>>0){if(d){na(d);J[a+44>>2]=0;J[a+36>>2]=0;J[a+40>>2]=0;c=J[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=oa(c<<2);J[a+44>>2]=c;J[a+40>>2]=0;J[a+36>>2]=d;c=J[b+40>>2]}ta(d,J[b+36>>2],(c-1>>>3&536870908)+4|0);b=J[b+40>>2]}else{b=0}J[a+40>>2]=b}return}qa();B()}qa();B()}function jf(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ba-16|0;ba=f;d=J[a+100>>2];e=J[a+96>>2];J[f+8>>2]=0;J[f>>2]=0;J[f+4>>2]=0;b=d-e|0;g=(b|0)/12|0;a:{b:{if((d|0)==(e|0)){break b}if(g>>>0>=357913942){break a}d=oa(b);J[f>>2]=d;J[f+8>>2]=d+P(g,12);a=0;c=d;d=b-12|0;b=(d-((d>>>0)%12|0)|0)+12|0;d=pa(c,0,b);J[f+4>>2]=b+d;b=g>>>0<=1?1:g;j=b&1;if(g>>>0>=2){k=b&-2;g=0;while(1){c=P(a,12);b=c+e|0;h=J[b>>2];i=J[b+4>>2];c=d+c|0;J[c+8>>2]=J[b+8>>2];J[c>>2]=h;J[c+4>>2]=i;c=P(a|1,12);b=c+e|0;h=J[b>>2];i=J[b+4>>2];c=d+c|0;J[c+8>>2]=J[b+8>>2];J[c>>2]=h;J[c+4>>2]=i;a=a+2|0;g=g+2|0;if((k|0)!=(g|0)){continue}break}}if(!j){break b}c=e;e=P(a,12);a=c+e|0;g=J[a+4>>2];b=J[a>>2];e=d+e|0;J[e+8>>2]=J[a+8>>2];J[e>>2]=b;J[e+4>>2]=g}e=mf(f);a=J[f>>2];if(a){J[f+4>>2]=a;na(a)}ba=f+16|0;return e}qa();B()}function dg(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=J[a+112>>2];b=J[a+108>>2];c=(d-b|0)/12|0;Aa(c,J[J[a+4>>2]+44>>2]);if((b|0)!=(d|0)){f=c>>>0<=1?1:c;d=0;while(1){b=J[a+108>>2]+P(d,12)|0;Aa(J[b+4>>2]-g|0,J[J[a+4>>2]+44>>2]);Aa(J[b+4>>2]-J[b>>2]|0,J[J[a+4>>2]+44>>2]);g=J[b+4>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}d=0;Fd(J[J[a+4>>2]+44>>2],c,0,0);b=J[J[a+4>>2]+44>>2];e=!!J[b+16>>2];b=J[b+20>>2];if(e&(b|0)>=0|(b|0)>0){f=c>>>0<=1?1:c;while(1){c=J[J[a+4>>2]+44>>2];b=J[c+20>>2];if(!!J[c+16>>2]&(b|0)>=0|(b|0)>0){g=K[(J[a+108>>2]+P(d,12)|0)+8|0];c=J[c+12>>2];e=J[c+4>>2];b=e>>>3|0;h=b+J[c>>2]|0;i=K[h|0];e=e&7;j=h,k=Ll(e)&i,H[j|0]=k;b=b+J[c>>2]|0;H[b|0]=K[b|0]|(g&1)<<e;J[c+4>>2]=J[c+4>>2]+1}d=d+1|0;if((f|0)!=(d|0)){continue}break}}Ed(J[J[a+4>>2]+44>>2])}return 1}function mj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;e=J[a+4>>2];d=J[e>>2];a:{b=J[a+12>>2];c=J[b+56>>2]-J[b+52>>2]|0;f=c>>2;b:{if(f>>>0<=J[e+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}b=J[e+4>>2];c=oa(c);f=c+(f<<2)|0;g=c+(b-d&-4)|0;c=g;if((b|0)!=(d|0)){while(1){c=c-4|0;b=b-4|0;J[c>>2]=J[b>>2];if((b|0)!=(d|0)){continue}break}}J[e+8>>2]=f;J[e+4>>2]=g;J[e>>2]=c;if(!d){break b}na(d)}e=a+8|0;b=J[a+76>>2];c:{if(b){d=J[b>>2];if((d|0)==J[b+4>>2]){return 1}b=0;while(1){c=Vf(e,J[(b<<2)+d>>2]);if(!c){break c}f=J[a+76>>2];d=J[f>>2];b=b+1|0;if(b>>>0<J[f+4>>2]-d>>2>>>0){continue}break}break c}c=1;a=J[J[a+12>>2]+64>>2];a=J[a+4>>2]-J[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Vf(e,P(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}qa();B()}function rj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;e=J[a+4>>2];d=J[e>>2];a:{b=J[a+12>>2];c=J[b+28>>2]-J[b+24>>2]|0;f=c>>2;b:{if(f>>>0<=J[e+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}b=J[e+4>>2];c=oa(c);f=c+(f<<2)|0;g=c+(b-d&-4)|0;c=g;if((b|0)!=(d|0)){while(1){c=c-4|0;b=b-4|0;J[c>>2]=J[b>>2];if((b|0)!=(d|0)){continue}break}}J[e+8>>2]=f;J[e+4>>2]=g;J[e>>2]=c;if(!d){break b}na(d)}e=a+8|0;b=J[a+76>>2];c:{if(b){d=J[b>>2];if((d|0)==J[b+4>>2]){return 1}b=0;while(1){c=Wf(e,J[(b<<2)+d>>2]);if(!c){break c}f=J[a+76>>2];d=J[f>>2];b=b+1|0;if(b>>>0<J[f+4>>2]-d>>2>>>0){continue}break}break c}c=1;a=J[a+12>>2];a=J[a+4>>2]-J[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Wf(e,P(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}qa();B()}function Ok(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ba-16|0;ba=d;J[d+12>>2]=c;a:{if(!me(a,b,c)|K[J[a+8>>2]+24|0]!=3){break a}f=J[b+48>>2];b=oa(32);J[d>>2]=b;J[d+4>>2]=17;J[d+8>>2]=-2147483616;H[b+16|0]=K[1261];c=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);e=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[b+8|0]=e;H[b+9|0]=e>>>8;H[b+10|0]=e>>>16;H[b+11|0]=e>>>24;H[b+12|0]=c;H[b+13|0]=c>>>8;H[b+14|0]=c>>>16;H[b+15|0]=c>>>24;c=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);e=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[b|0]=e;H[b+1|0]=e>>>8;H[b+2|0]=e>>>16;H[b+3|0]=e>>>24;H[b+4|0]=c;H[b+5|0]=c>>>8;H[b+6|0]=c>>>16;H[b+7|0]=c>>>24;H[b+17|0]=0;b=jb(f,d+12|0,d,-1);if(H[d+11|0]<0){na(J[d>>2])}if((b|0)<=0){break a}J[a+44>>2]=b;g=1}ba=d+16|0;return g|0}function Oc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=ba-16|0;ba=i;e=J[b+4>>2];a:{b:{if(!e){h=b+4|0;g=h;break b}f=J[c>>2];while(1){g=e;c=J[e+16>>2];if((c|0)>(f|0)){h=g;e=J[g>>2];if(e){continue}break b}if((c|0)>=(f|0)){f=g;b=0;break a}e=J[g+4>>2];if(e){continue}break}h=g+4|0}f=oa(32);c=J[d>>2];j=f+24|0;e=j;J[e>>2]=0;J[e+4>>2]=0;J[f+16>>2]=c;k=f+20|0;J[k>>2]=e;e=J[d+4>>2];d=d+8|0;if((e|0)!=(d|0)){while(1){c=e+16|0;Qg(i+8|0,k,j,c,c);c=J[e+4>>2];c:{if(c){while(1){e=c;c=J[e>>2];if(c){continue}break c}}while(1){c=e;e=J[e+8>>2];if((c|0)!=J[e>>2]){continue}break}}if((d|0)!=(e|0)){continue}break}}J[f+8>>2]=g;J[f>>2]=0;J[f+4>>2]=0;J[h>>2]=f;e=f;c=J[J[b>>2]>>2];if(c){J[b>>2]=c;e=J[h>>2]}sb(J[b+4>>2],e);J[b+8>>2]=J[b+8>>2]+1;b=1}H[a+4|0]=b;J[a>>2]=f;ba=i+16|0}function Me(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=ba-16|0;ba=c;Aa(J[a+8>>2]-J[a+4>>2]>>2,b);e=J[a+4>>2];if((e|0)!=J[a+8>>2]){h=c+13|0;i=c+14|0;j=c+15|0;k=c+16|0;while(1){e=J[J[J[a+32>>2]+8>>2]+(J[(g<<2)+e>>2]<<2)>>2];H[c+15|0]=J[e+56>>2];d=J[b+20>>2];a:{if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+15|0,k);d=J[b+20>>2];f=J[b+16>>2];H[c+14|0]=J[e+28>>2];if(!!f&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+14|0,j);d=J[b+20>>2];f=J[b+16>>2];H[c+13|0]=K[e+24|0];if(!!f&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+13|0,i);d=J[b+20>>2];f=J[b+16>>2];H[c+12|0]=K[e+32|0];if(!!f&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+12|0,h)}Aa(J[e+60>>2],b);g=g+1|0;e=J[a+4>>2];if(g>>>0<J[a+8>>2]-e>>2>>>0){continue}break}}ba=c+16|0;return 1}function eb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=ba-16|0;ba=g;a:{b:{c=J[a+4>>2];c:{if((c|0)!=J[a+8>>2]){J[c>>2]=J[a+12>>2];c=c+4|0;J[a+4>>2]=c;break c}e=J[a>>2];c=c-e|0;h=c>>2;d=h+1|0;if(d>>>0>=1073741824){break b}f=c>>>1|0;d=c>>>0>=2147483644?1073741823:d>>>0<f>>>0?f:d;if(d){if(d>>>0>=1073741824){break a}f=oa(d<<2)}else{f=0}h=f+(h<<2)|0;J[h>>2]=J[a+12>>2];i=d<<2;d=ta(f,e,c);J[a+8>>2]=i+d;c=h+4|0;J[a+4>>2]=c;J[a>>2]=d;if(!e){break c}na(e);c=J[a+4>>2]}f=c;c=J[a>>2];J[g+12>>2]=f-c;e=J[b+20>>2];d:{if(!!J[b+16>>2]&(e|0)>=0|(e|0)>0){break d}sa(b,J[b+4>>2],g+12|0,g+16|0);c=J[a>>2];e=J[b+20>>2];if(!!J[b+16>>2]&(e|0)>=0|(e|0)>0){break d}sa(b,J[b+4>>2],c,J[g+12>>2]+c|0);c=J[a>>2]}J[a+12>>2]=0;J[a+16>>2]=0;J[a+4>>2]=c;ba=g+16|0;return}qa();B()}xa();B()}function ta(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return ua(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0<b>>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}H[d|0]=K[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;H[d|0]=K[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;J[c+a>>2]=J[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;H[c+a|0]=K[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){J[d>>2]=J[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){H[d|0]=K[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function hg(a,b,c){var d=0,e=0,f=0,g=0;a:{b=P(b,3);if((b|0)==-1){break a}b:{e=J[a+12>>2];f=J[e+12>>2];d=b<<2;c:{if(J[f+d>>2]==-1){break c}a=J[a+152>>2];e=J[e>>2];if(J[a+(J[e+d>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(J[d+f>>2]==-1){break c}if(J[a+(J[d+e>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(J[d+f>>2]==-1){break c}if(J[a+(J[d+e>>2]<<2)>>2]!=-1){break b}g=1;a=b+1|0;b=(a>>>0)%3|0?a:b-2|0}J[c>>2]=b;return g}while(1){d:{a=b;e:{if((b>>>0)%3|0){b=a-1|0;break e}b=a+2|0;if((b|0)==-1){break d}}b=J[(b<<2)+f>>2];if((b|0)==-1){break d}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){continue}}break}J[c>>2]=a+((a>>>0)%3|0?-1:2);return 0}J[c>>2]=-1;return 0}function Se(a,b,c){a:{switch(b-9|0){case 0:b=J[c>>2];J[c>>2]=b+4;J[a>>2]=J[b>>2];return;case 6:b=J[c>>2];J[c>>2]=b+4;b=I[b>>1];J[a>>2]=b;J[a+4>>2]=b>>31;return;case 7:b=J[c>>2];J[c>>2]=b+4;J[a>>2]=L[b>>1];J[a+4>>2]=0;return;case 8:b=J[c>>2];J[c>>2]=b+4;b=H[b|0];J[a>>2]=b;J[a+4>>2]=b>>31;return;case 9:b=J[c>>2];J[c>>2]=b+4;J[a>>2]=K[b|0];J[a+4>>2]=0;return;case 16:b=J[c>>2]+7&-8;J[c>>2]=b+8;O[a>>3]=O[b>>3];return;case 17:Qe(a,c);default:return;case 1:case 4:case 14:b=J[c>>2];J[c>>2]=b+4;b=J[b>>2];J[a>>2]=b;J[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=J[c>>2];J[c>>2]=b+4;J[a>>2]=J[b>>2];J[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=J[c>>2]+7&-8;J[c>>2]=b+8;c=J[b+4>>2];J[a>>2]=J[b>>2];J[a+4>>2]=c}function _e(a,b,c,d,e,f){var g=0;g=ba-80|0;ba=g;a:{if((f|0)>=16384){Ea(g+32|0,b,c,d,e,0,0,0,2147352576);d=J[g+40>>2];e=J[g+44>>2];b=J[g+32>>2];c=J[g+36>>2];if(f>>>0<32767){f=f-16383|0;break a}Ea(g+16|0,b,c,d,e,0,0,0,2147352576);f=((f|0)>=49149?49149:f)-32766|0;d=J[g+24>>2];e=J[g+28>>2];b=J[g+16>>2];c=J[g+20>>2];break a}if((f|0)>-16383){break a}Ea(g- -64|0,b,c,d,e,0,0,0,7471104);d=J[g+72>>2];e=J[g+76>>2];b=J[g+64>>2];c=J[g+68>>2];if(f>>>0>4294934644){f=f+16269|0;break a}Ea(g+48|0,b,c,d,e,0,0,0,7471104);f=((f|0)<=-48920?-48920:f)+32538|0;d=J[g+56>>2];e=J[g+60>>2];b=J[g+48>>2];c=J[g+52>>2]}Ea(g,b,c,d,e,0,0,0,f+16383<<16);b=J[g+12>>2];J[a+8>>2]=J[g+8>>2];J[a+12>>2]=b;b=J[g+4>>2];J[a>>2]=J[g>>2];J[a+4>>2]=b;ba=g+80|0}function bd(a,b,c){var d=0,e=0,f=0;d=ba+-64|0;ba=d;f=J[a>>2];e=J[f-4>>2];f=J[f-8>>2];J[d+32>>2]=0;J[d+36>>2]=0;J[d+40>>2]=0;J[d+44>>2]=0;J[d+48>>2]=0;J[d+52>>2]=0;H[d+55|0]=0;H[d+56|0]=0;H[d+57|0]=0;H[d+58|0]=0;H[d+59|0]=0;H[d+60|0]=0;H[d+61|0]=0;H[d+62|0]=0;J[d+24>>2]=0;J[d+28>>2]=0;J[d+20>>2]=0;J[d+16>>2]=b;J[d+12>>2]=a;J[d+8>>2]=c;a=a+f|0;b=0;a:{if(pb(e,c,0)){J[d+56>>2]=1;da[J[J[e>>2]+20>>2]](e,d+8|0,a,a,1,0);b=J[d+32>>2]==1?a:0;break a}da[J[J[e>>2]+24>>2]](e,d+8|0,a,1,0);b:{switch(J[d+44>>2]){case 0:b=J[d+48>>2]==1?J[d+36>>2]==1?J[d+40>>2]==1?J[d+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(J[d+32>>2]!=1){if(J[d+48>>2]|J[d+36>>2]!=1|J[d+40>>2]!=1){break a}}b=J[d+24>>2]}ba=d- -64|0;return b}function Ca(a,b){var c=0,d=0,e=0,f=0;c=J[a>>2];a:{if(b){b=J[c+12>>2];d=J[c+8>>2]+1|0;b=d?b:b+1|0;J[c+8>>2]=d;J[c+12>>2]=b;b=J[a+28>>2];J[a+24>>2]=J[a+24>>2]|1<<b;break a}b=J[c+4>>2];d=J[c>>2]+1|0;b=d?b:b+1|0;J[c>>2]=d;J[c+4>>2]=b;b=J[a+28>>2]}b=b+1|0;J[a+28>>2]=b;b:{c:{if((b|0)==32){b=J[a+16>>2];d:{if((b|0)!=J[a+20>>2]){J[b>>2]=J[a+24>>2];J[a+16>>2]=b+4;break d}e=b;b=J[a+12>>2];c=e-b|0;f=c>>2;d=f+1|0;if(d>>>0>=1073741824){break c}e=c>>>1|0;d=c>>>0>=2147483644?1073741823:d>>>0<e>>>0?e:d;if(d){if(d>>>0>=1073741824){break b}e=oa(d<<2)}else{e=0}f=e+(f<<2)|0;J[f>>2]=J[a+24>>2];c=ta(e,b,c);J[a+20>>2]=c+(d<<2);J[a+16>>2]=f+4;J[a+12>>2]=c;if(!b){break d}na(b)}J[a+24>>2]=0;J[a+28>>2]=0}return}qa();B()}xa();B()}function pa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!c){break a}H[a|0]=b;d=a+c|0;H[d-1|0]=b;if(c>>>0<3){break a}H[a+2|0]=b;H[a+1|0]=b;H[d-3|0]=b;H[d-2|0]=b;if(c>>>0<7){break a}H[a+3|0]=b;H[d-4|0]=b;if(c>>>0<9){break a}d=0-a&3;e=d+a|0;b=P(b&255,16843009);J[e>>2]=b;d=c-d&-4;c=d+e|0;J[c-4>>2]=b;if(d>>>0<9){break a}J[e+8>>2]=b;J[e+4>>2]=b;J[c-8>>2]=b;J[c-12>>2]=b;if(d>>>0<25){break a}J[e+24>>2]=b;J[e+20>>2]=b;J[e+16>>2]=b;J[e+12>>2]=b;J[c-16>>2]=b;J[c-20>>2]=b;J[c-24>>2]=b;J[c-28>>2]=b;g=e&4|24;c=d-g|0;if(c>>>0<32){break a}d=Hl(b,0,1,1);f=ca;b=e+g|0;while(1){J[b+24>>2]=d;J[b+28>>2]=f;J[b+16>>2]=d;J[b+20>>2]=f;J[b+8>>2]=d;J[b+12>>2]=f;J[b>>2]=d;J[b+4>>2]=f;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function De(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{g=a+16|0;f=J[g>>2];b:{if(!f){break b}i=J[b>>2];b=g;while(1){h=(i|0)>J[f+16>>2];b=h?b:f;f=J[(h?f+4|0:f)>>2];if(f){continue}break}if((b|0)==(g|0)|(i|0)<J[b+16>>2]){break b}f=J[b+24>>2];if(!f){break b}m=b+20|0;b=K[c+11|0];g=b<<24>>24<0;i=g?J[c>>2]:c;b=g?J[c+4>>2]:b;while(1){g=K[f+27|0];h=g<<24>>24<0;g=h?J[f+20>>2]:g;k=g>>>0<b>>>0;c:{d:{e:{f:{g:{h:{j=k?g:b;if(j){h=h?J[f+16>>2]:f+16|0;l=Ba(i,h,j);if(l){break h}if(b>>>0>=g>>>0){break g}break c}if(b>>>0>=g>>>0){break f}break c}if((l|0)<0){break c}}g=Ba(h,i,j);if(g){break e}}if(k){break d}break a}if((g|0)<0){break d}break a}f=f+4|0}f=J[f>>2];if(f){continue}break}}Be(a,c,d,e);return}Be(m,c,d,e)}function jb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=a+16|0;e=J[f>>2];a:{if(!e){break a}g=J[b>>2];b=f;while(1){h=(g|0)>J[e+16>>2];b=h?b:e;e=J[(h?e+4|0:e)>>2];if(e){continue}break}if((b|0)==(f|0)|(g|0)<J[b+16>>2]){break a}e=J[b+24>>2];if(!e){break a}g=b+20|0;b=K[c+11|0];f=b<<24>>24<0;h=f?J[c>>2]:c;b=f?J[c+4>>2]:b;while(1){f=K[e+27|0];i=f<<24>>24<0;f=i?J[e+20>>2]:f;k=f>>>0<b>>>0;b:{c:{d:{e:{f:{g:{j=k?f:b;if(j){i=i?J[e+16>>2]:e+16|0;l=Ba(h,i,j);if(l){break g}if(b>>>0>=f>>>0){break f}break b}if(b>>>0>=f>>>0){break e}break b}if((l|0)<0){break b}}f=Ba(i,h,j);if(f){break d}}if(k){break c}return Bb(g,c,d)}if((f|0)<0){break c}return Bb(g,c,d)}e=e+4|0}e=J[e>>2];if(e){continue}break}}return Bb(a,c,d)}function Fd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;a:{e=J[a+20>>2];b:{if(!((!J[a+16>>2]&(e|0)<=0|(e|0)<0)&(!!b&(c|0)>=0|(c|0)>0))){break b}H[a+24|0]=d;e=b+7|0;c=e>>>0<7?c+1|0:c;e=(c&7)<<29|e>>>3;J[a+16>>2]=e;J[a+20>>2]=c>>>3;f=J[a+4>>2];h=J[a>>2];c=f-h|0;b=c+8|0;d=d?b:c;b=d+e|0;c:{if(b>>>0>c>>>0){e=b-c|0;g=J[a+8>>2];if(e>>>0<=g-f>>>0){i=a,j=pa(f,0,e)+e|0,J[i+4>>2]=j;break c}if((b|0)<0){break a}f=g-h|0;g=f<<1;f=f>>>0>=1073741823?2147483647:b>>>0<g>>>0?g:b;g=oa(f);pa(g+c|0,0,e);c=ta(g,h,c);J[a+8>>2]=c+f;J[a+4>>2]=b+c;J[a>>2]=c;if(!h){break c}na(h);break c}if(b>>>0>=c>>>0){break c}J[a+4>>2]=b+h}c=J[a>>2];b=oa(8);J[b+4>>2]=0;J[b>>2]=c+d;c=J[a+12>>2];J[a+12>>2]=b;if(!c){break b}na(c)}return}qa();B()}function Ce(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+16|0;d=J[e>>2];a:{if(!d){break a}f=J[b>>2];b=e;while(1){g=(f|0)>J[d+16>>2];b=g?b:d;d=J[(g?d+4|0:d)>>2];if(d){continue}break}if((b|0)==(e|0)|(f|0)<J[b+16>>2]){break a}d=J[b+24>>2];if(!d){break a}f=b+20|0;b=K[c+11|0];e=b<<24>>24<0;g=e?J[c>>2]:c;b=e?J[c+4>>2]:b;while(1){e=K[d+27|0];h=e<<24>>24<0;e=h?J[d+20>>2]:e;j=e>>>0<b>>>0;b:{c:{d:{e:{f:{g:{i=j?e:b;if(i){h=h?J[d+16>>2]:d+16|0;k=Ba(g,h,i);if(k){break g}if(b>>>0>=e>>>0){break f}break b}if(b>>>0>=e>>>0){break e}break b}if((k|0)<0){break b}}e=Ba(h,g,i);if(e){break d}}if(j){break c}return Dd(f,c)}if((e|0)<0){break c}return Dd(f,c)}d=d+4|0}d=J[d>>2];if(d){continue}break}}return Dd(a,c)}function td(a,b,c){var d=0,e=0,f=0,g=0;Aa(J[c+8>>2],b);e=J[c>>2];g=c+4|0;if((e|0)!=(g|0)){while(1){if(!hf(b,e+16|0)){return}d=J[e+32>>2]-J[e+28>>2]|0;Aa(d,b);f=J[b+20>>2];if(!J[b+16>>2]&(f|0)<=0|(f|0)<0){f=J[e+28>>2];sa(b,J[b+4>>2],f,d+f|0)}f=J[e+4>>2];a:{if(f){while(1){d=f;f=J[d>>2];if(f){continue}break a}}while(1){d=J[e+8>>2];f=J[d>>2]!=(e|0);e=d;if(f){continue}break}}e=d;if((d|0)!=(g|0)){continue}break}}Aa(J[c+20>>2],b);d=J[c+12>>2];c=c+16|0;if((d|0)==(c|0)){return}while(1){if(!hf(b,d+16|0)){return}td(a,b,J[d+28>>2]);f=d;e=J[d+4>>2];b:{if(e){while(1){d=e;e=J[d>>2];if(e){continue}break b}}while(1){d=J[f+8>>2];e=J[d>>2]!=(f|0);f=d;if(e){continue}break}}if((c|0)!=(d|0)){continue}break}}function kl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=J[b+4>>2]-J[b>>2]>>2;f=J[a+8>>2];i=K[f+24|0];d=i;g=ba+-64|0;ba=g;e=Lc(g);h=P(d,J[3712]);Nd(e,J[J[a+8>>2]+56>>2],0,d,5,h,h>>31);e=jg(oa(96),e);Kd(e,j);d=J[a+32>>2];J[a+32>>2]=e;if(d){Ka(d)}a:{if(!c){break a}d=J[a+32>>2];H[d+84|0]=0;h=J[d+68>>2];e=J[d+72>>2]-h>>2;if(e>>>0<c>>>0){Ma(d+68|0,c-e|0,2736);break a}if(c>>>0>=e>>>0){break a}J[d+72>>2]=h+(c<<2)}ba=g- -64|0;c=J[b>>2];d=J[b+4>>2];if((c|0)==(d|0)){return 1}a=J[a+32>>2];g=J[J[a>>2]>>2]+J[a+48>>2]|0;b=0;while(1){a=J[c>>2];if(!K[f+84|0]){a=J[J[f+68>>2]+(a<<2)>>2]}a=$c(f,a,H[f+24|0],g+(b<<2)|0);if(a){b=b+i|0;c=c+4|0;if((d|0)!=(c|0)){continue}}break}return a|0}function Rb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=c-b|0;h=f>>2;d=J[a+8>>2];e=J[a>>2];if(h>>>0<=d-e>>2>>>0){d=J[a+4>>2];g=d-e|0;f=g+b|0;i=g>>2;g=i>>>0<h>>>0?f:c;if((g|0)!=(b|0)){while(1){J[e>>2]=J[b>>2];e=e+4|0;b=b+4|0;if((g|0)!=(b|0)){continue}break}}if(h>>>0>i>>>0){if((c|0)!=(g|0)){while(1){J[d>>2]=J[f>>2];d=d+4|0;f=f+4|0;if((f|0)!=(c|0)){continue}break}}J[a+4>>2]=d;return}J[a+4>>2]=e;return}if(e){J[a+4>>2]=e;na(e);J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}e=d>>>1|0;d=d>>>0>=2147483644?1073741823:e>>>0>h>>>0?e:h;if(d>>>0>=1073741824){break a}e=d<<2;d=oa(e);J[a>>2]=d;J[a+8>>2]=d+e;if((b|0)!=(c|0)){c=b;b=(f-4&-4)+4|0;d=ua(d,c,b)+b|0}J[a+4>>2]=d;return}qa();B()}function Na(a,b,c){var d=0,e=0,f=0;e=ba-16|0;ba=e;J[a+4>>2]=0;a:{b:{if(!b){break b}f=J[a+8>>2];d=f<<5;c:{if(d>>>0>=b>>>0){J[a+4>>2]=b;break c}J[e+8>>2]=0;J[e>>2]=0;J[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=f<<6;d=b+31&-32;d=d>>>0<f>>>0?f:d}else{d=2147483647}wc(e,d);f=J[a>>2];J[a>>2]=J[e>>2];J[e>>2]=f;d=J[a+4>>2];J[a+4>>2]=b;J[e+4>>2]=d;d=J[a+8>>2];J[a+8>>2]=J[e+8>>2];J[e+8>>2]=d;if(!f){break c}na(f)}d=b>>>5|0;a=J[a>>2];if(K[c|0]){if(b>>>0>=32){pa(a,255,d<<2)}if((b&-32)==(b|0)){break b}a=a+(d<<2)|0;J[a>>2]=J[a>>2]|-1>>>32-(b&31);break b}if(b>>>0>=32){pa(a,0,d<<2)}if((b&-32)==(b|0)){break b}a=a+(d<<2)|0;J[a>>2]=J[a>>2]&(-1>>>32-(b&31)^-1)}ba=e+16|0;return}qa();B()}function kc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=ba-16|0;ba=h;a:{b:{c=J[a+8>>2];c:{if((c|0)!=J[a+12>>2]){J[c>>2]=b;J[a+8>>2]=c+4;break c}f=c;c=J[a+4>>2];e=f-c|0;g=e>>2;d=g+1|0;if(d>>>0>=1073741824){break b}f=e>>>1|0;d=e>>>0>=2147483644?1073741823:d>>>0<f>>>0?f:d;if(d){if(d>>>0>=1073741824){break a}f=oa(d<<2)}else{f=0}g=f+(g<<2)|0;J[g>>2]=b;e=ta(f,c,e);J[a+12>>2]=e+(d<<2);J[a+8>>2]=g+4;J[a+4>>2]=e;if(!c){break c}na(c)}c=J[a+16>>2];e=J[a+20>>2]-c>>2;d:{if((e|0)>(b|0)){break d}J[h+12>>2]=-1;d=b+1|0;if(d>>>0>e>>>0){jc(a+16|0,d-e|0,h+12|0);c=J[a+16>>2];break d}if(d>>>0>=e>>>0){break d}J[a+20>>2]=(d<<2)+c}J[(b<<2)+c>>2]=(J[a+8>>2]-J[a+4>>2]>>2)-1;ba=h+16|0;return}qa();B()}xa();B()}function gh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=ba-48|0;ba=d;J[d+40>>2]=J[a- -64>>2];c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],d+40|0,d+44|0)}c=d+8|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);if(J[d+40>>2]>0){f=1;while(1){g=f;f=J[J[a+60>>2]+(e>>>3&536870908)>>2]>>>e|0;Ca(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)<J[d+40>>2]){continue}break}}ya(c,b);J[d+44>>2]=J[a+12>>2];e=J[b+20>>2];a:{if(!!J[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;sa(b,J[b+4>>2],d+44|0,f);e=J[b+20>>2];g=J[b+16>>2];J[d+44>>2]=J[a+24>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}sa(b,J[b+4>>2],d+44|0,f)}wa(c);ba=d+48|0;return 1}function rh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=ba-48|0;ba=d;J[d+40>>2]=J[a+80>>2];c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],d+40|0,d+44|0)}c=d+8|0;J[c>>2]=0;J[c+4>>2]=0;J[c+24>>2]=0;J[c+28>>2]=0;J[c+16>>2]=0;J[c+20>>2]=0;J[c+8>>2]=0;J[c+12>>2]=0;za(c);if(J[d+40>>2]>0){f=1;while(1){g=f;f=J[J[a+76>>2]+(e>>>3&536870908)>>2]>>>e|0;Ca(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)<J[d+40>>2]){continue}break}}ya(c,b);J[d+44>>2]=J[a+12>>2];e=J[b+20>>2];a:{if(!!J[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;sa(b,J[b+4>>2],d+44|0,f);e=J[b+20>>2];g=J[b+16>>2];J[d+44>>2]=J[a+16>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}sa(b,J[b+4>>2],d+44|0,f)}wa(c);ba=d+48|0;return 1}function Ic(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=J[a>>2];f=J[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=J[a+8>>2]-e|0;g=e>>>1|0;c=e>>>0>=2147483644?1073741823:c>>>0<g>>>0?g:c;if(c){if(c>>>0>=1073741824){break c}d=oa(c<<2)}e=J[b>>2];J[b>>2]=0;b=(f<<2)+d|0;J[b>>2]=e;c=(c<<2)+d|0;e=b+4|0;d=J[a+4>>2];f=J[a>>2];if((d|0)==(f|0)){break b}while(1){d=d-4|0;g=J[d>>2];J[d>>2]=0;b=b-4|0;J[b>>2]=g;if((d|0)!=(f|0)){continue}break}J[a+8>>2]=c;c=J[a+4>>2];J[a+4>>2]=e;d=J[a>>2];J[a>>2]=b;if((c|0)==(d|0)){break a}while(1){c=c-4|0;a=J[c>>2];J[c>>2]=0;if(a){da[J[J[a>>2]+4>>2]](a)}if((c|0)!=(d|0)){continue}break}break a}qa();B()}xa();B()}J[a+8>>2]=c;J[a+4>>2]=e;J[a>>2]=b}if(d){na(d)}}function kd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0;i=ba-16|0;ba=i;if((b^-1)+2147483631>>>0>=c>>>0){if(K[a+11|0]>>>7|0){k=J[a>>2]}else{k=a}if(b>>>0<1073741799){J[i+12>>2]=b<<1;J[i>>2]=b+c;c=ba-16|0;ba=c;ba=c+16|0;c=i+12|0;c=J[(M[i>>2]<M[c>>2]?c:i)>>2];if(c>>>0>=11){j=c+16&-16;c=j-1|0;c=(c|0)==11?j:c}else{c=10}c=c+1|0}else{c=2147483631}Ac(i,c);c=J[i>>2];if(e){Ab(c,k,e)}if(g){Ab(c+e|0,h,g)}j=e+f|0;h=d-j|0;if((d|0)!=(j|0)){Ab((c+e|0)+g|0,(e+k|0)+f|0,h)}if((b|0)!=10){na(k)}J[a>>2]=c;J[a+8>>2]=J[a+8>>2]&-2147483648|J[i+4>>2]&2147483647;J[a+8>>2]=J[a+8>>2]|-2147483648;b=a;a=h+(e+g|0)|0;J[b+4>>2]=a;H[i+12|0]=0;H[a+c|0]=K[i+12|0];ba=i+16|0;return}gb();B()}function Lk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;J[b>>2]=1;f=b+8|0;c=J[b+8>>2];d=J[b+12>>2]-c|0;if(d>>>0<=4294967291){Gc(f,d+4|0);c=J[f>>2]}c=c+d|0;d=J[a+4>>2];H[c|0]=d;H[c+1|0]=d>>>8;H[c+2|0]=d>>>16;H[c+3|0]=d>>>24;c=J[a+8>>2];if((c|0)!=J[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=J[b+8>>2];e=J[b+12>>2]-c|0;if(e>>>0<=4294967291){Gc(f,e+4|0);c=J[f>>2]}c=c+e|0;e=J[g>>2];H[c|0]=e;H[c+1|0]=e>>>8;H[c+2|0]=e>>>16;H[c+3|0]=e>>>24;d=d+1|0;c=J[a+8>>2];if(d>>>0<J[a+12>>2]-c>>2>>>0){continue}break}}c=J[b+12>>2];b=J[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){Gc(f,c+4|0);b=J[f>>2]}b=b+c|0;a=J[a+20>>2];H[b|0]=a;H[b+1|0]=a>>>8;H[b+2|0]=a>>>16;H[b+3|0]=a>>>24}function bb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=c-b|0;g=f>>2;d=J[a+8>>2];e=J[a>>2];if(g>>>0<=d-e>>2>>>0){f=J[a+4>>2]-e|0;d=f+b|0;h=f>>2;f=h>>>0<g>>>0?d:c;i=f-b|0;if((b|0)!=(f|0)){ta(e,b,i)}if(g>>>0>h>>>0){b=J[a+4>>2];if((c|0)!=(f|0)){while(1){J[b>>2]=J[d>>2];b=b+4|0;d=d+4|0;if((d|0)!=(c|0)){continue}break}}J[a+4>>2]=b;return}J[a+4>>2]=e+i;return}if(e){J[a+4>>2]=e;na(e);J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}e=d>>>1|0;d=d>>>0>=2147483644?1073741823:e>>>0>g>>>0?e:g;if(d>>>0>=1073741824){break a}e=d<<2;d=oa(e);J[a>>2]=d;J[a+8>>2]=d+e;if((b|0)!=(c|0)){c=b;b=(f-4&-4)+4|0;d=ua(d,c,b)+b|0}J[a+4>>2]=d;return}qa();B()}function Xg(a,b,c){var d=0,e=0,f=0;d=ba-16|0;ba=d;J[d+12>>2]=b;b=oa(32);J[d>>2]=b;J[d+4>>2]=17;J[d+8>>2]=-2147483616;H[b+16|0]=K[1261];e=K[1257]|K[1258]<<8|(K[1259]<<16|K[1260]<<24);f=K[1253]|K[1254]<<8|(K[1255]<<16|K[1256]<<24);H[b+8|0]=f;H[b+9|0]=f>>>8;H[b+10|0]=f>>>16;H[b+11|0]=f>>>24;H[b+12|0]=e;H[b+13|0]=e>>>8;H[b+14|0]=e>>>16;H[b+15|0]=e>>>24;e=K[1249]|K[1250]<<8|(K[1251]<<16|K[1252]<<24);f=K[1245]|K[1246]<<8|(K[1247]<<16|K[1248]<<24);H[b|0]=f;H[b+1|0]=f>>>8;H[b+2|0]=f>>>16;H[b+3|0]=f>>>24;H[b+4|0]=e;H[b+5|0]=e>>>8;H[b+6|0]=e>>>16;H[b+7|0]=e>>>24;H[b+17|0]=0;Wg(a+4|0,d+12|0,d,c);if(H[d+11|0]<0){na(J[d>>2])}ba=d+16|0}function Ua(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{if((a|0)==(b|0)){break b}J[c>>2]=J[a>>2];e=a+4|0;if((e|0)==(b|0)){break b}a=J[d>>2];g=J[a>>2];i=J[a+4>>2]-g>>3;a=c;while(1){d=J[e>>2];if(d>>>0>=i>>>0){break a}f=J[a>>2];if(f>>>0>=i>>>0){break a}j=a+4|0;c:{if(M[(d<<3)+g>>2]<M[(f<<3)+g>>2]){J[a+4>>2]=f;h=c;d:{if((a|0)==(c|0)){break d}while(1){k=J[e>>2];if(k>>>0>=i>>>0){break a}f=a-4|0;d=J[f>>2];if(d>>>0>=i>>>0){break a}h=a;if(M[(k<<3)+g>>2]>=M[(d<<3)+g>>2]){break d}J[a>>2]=d;a=f;if((c|0)!=(a|0)){continue}break}h=c}J[h>>2]=J[e>>2];break c}J[j>>2]=d}a=j;e=e+4|0;if((e|0)!=(b|0)){continue}break}}return}ra();B()}function mk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=ba-32|0;ba=f;d=d-e|0;if((d|0)>0){i=a+8|0;k=0-e<<2;while(1){j=d<<2;g=j+b|0;h=g+k|0;l=J[h>>2];h=J[h+4>>2];m=J[g+4>>2];J[f+16>>2]=J[g>>2];J[f+20>>2]=m;J[f+8>>2]=l;J[f+12>>2]=h;Ya(f+24|0,i,f+16|0,f+8|0);g=c+j|0;J[g>>2]=J[f+24>>2];J[g+4>>2]=J[f+28>>2];d=d-e|0;if((d|0)>0){continue}break}}d=e>>>0>1073741823?-1:e<<2;d=pa(oa(d),0,d);e=J[d>>2];g=J[d+4>>2];i=J[b+4>>2];J[f+16>>2]=J[b>>2];J[f+20>>2]=i;J[f+8>>2]=e;J[f+12>>2]=g;Ya(f+24|0,a+8|0,f+16|0,f+8|0);J[c>>2]=J[f+24>>2];J[c+4>>2]=J[f+28>>2];na(d);ba=f+32|0;return 1}function qk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=ba-32|0;ba=g;J[a+48>>2]=f;i=1;a:{d=J[a+40>>2];d=J[d+4>>2]-J[d>>2]|0;b:{if((d|0)<4){break b}l=a+44|0;m=a+8|0;f=d>>>2|0;while(1){d=J[a+40>>2];i=J[d>>2];h=J[d+4>>2]-i>>2;d=f-1|0;if(h>>>0<=d>>>0){break a}i=lh(l,J[i+(d<<2)>>2],b,d);if(!i){break b}h=J[a+52>>2];n=J[a+56>>2];j=P(d,e)<<2;k=j+b|0;o=J[k+4>>2];J[g+16>>2]=J[k>>2];J[g+20>>2]=o;J[g+8>>2]=h;J[g+12>>2]=n;Ya(g+24|0,m,g+16|0,g+8|0);h=c+j|0;J[h>>2]=J[g+24>>2];J[h+4>>2]=J[g+28>>2];h=f>>>0>1;f=d;if(h){continue}break}}ba=g+32|0;return i|0}ra();B()}function Ck(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=ba-32|0;ba=g;J[a+48>>2]=f;i=1;a:{d=J[a+40>>2];d=J[d+4>>2]-J[d>>2]|0;b:{if((d|0)<4){break b}l=a+44|0;m=a+8|0;f=d>>>2|0;while(1){d=J[a+40>>2];i=J[d>>2];h=J[d+4>>2]-i>>2;d=f-1|0;if(h>>>0<=d>>>0){break a}i=qh(l,J[i+(d<<2)>>2],b,d);if(!i){break b}h=J[a+52>>2];n=J[a+56>>2];j=P(d,e)<<2;k=j+b|0;o=J[k+4>>2];J[g+16>>2]=J[k>>2];J[g+20>>2]=o;J[g+8>>2]=h;J[g+12>>2]=n;Ya(g+24|0,m,g+16|0,g+8|0);h=c+j|0;J[h>>2]=J[g+24>>2];J[h+4>>2]=J[g+28>>2];h=f>>>0>1;f=d;if(h){continue}break}}ba=g+32|0;return i|0}ra();B()}function hi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;cf(a,b,c);e=J[a+96>>2];a=J[a+100>>2];a:{if((e|0)==(a|0)){break a}d=(a-e|0)/12|0;f=d>>>0<=1?1:d;g=f&1;a=J[b>>2];c=0;if(d>>>0>=2){f=f&-2;d=0;while(1){b=P(c,12)+e|0;J[b>>2]=J[a+(J[b>>2]<<2)>>2];J[b+4>>2]=J[a+(J[b+4>>2]<<2)>>2];J[b+8>>2]=J[a+(J[b+8>>2]<<2)>>2];b=P(c|1,12)+e|0;J[b>>2]=J[a+(J[b>>2]<<2)>>2];J[b+4>>2]=J[a+(J[b+4>>2]<<2)>>2];J[b+8>>2]=J[a+(J[b+8>>2]<<2)>>2];c=c+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!g){break a}b=P(c,12)+e|0;J[b>>2]=J[a+(J[b>>2]<<2)>>2];J[b+4>>2]=J[a+(J[b+4>>2]<<2)>>2];J[b+8>>2]=J[a+(J[b+8>>2]<<2)>>2]}}function Tg(a,b){var c=0,d=0,e=0,f=0;f=ba-16|0;ba=f;c=oa(16);J[f>>2]=c;J[f+4>>2]=15;J[f+8>>2]=-2147483632;d=K[1587]|K[1588]<<8|(K[1589]<<16|K[1590]<<24);e=K[1583]|K[1584]<<8|(K[1585]<<16|K[1586]<<24);H[c+7|0]=e;H[c+8|0]=e>>>8;H[c+9|0]=e>>>16;H[c+10|0]=e>>>24;H[c+11|0]=d;H[c+12|0]=d>>>8;H[c+13|0]=d>>>16;H[c+14|0]=d>>>24;d=K[1580]|K[1581]<<8|(K[1582]<<16|K[1583]<<24);e=K[1576]|K[1577]<<8|(K[1578]<<16|K[1579]<<24);H[c|0]=e;H[c+1|0]=e>>>8;H[c+2|0]=e>>>16;H[c+3|0]=e>>>24;H[c+4|0]=d;H[c+5|0]=d>>>8;H[c+6|0]=d>>>16;H[c+7|0]=d>>>24;H[c+15|0]=0;vb(a+4|0,f,b);if(H[f+11|0]<0){na(J[f>>2])}ba=f+16|0}function Gi(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,k=0,l=0;a=ba-16|0;ba=a;a:{if(!b){break a}J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;h=b+96|0;g=J[b+96>>2];e=(J[b+100>>2]-g|0)/12|0;b:{if(e>>>0<c>>>0){of(h,c-e|0,a);break b}if(c>>>0<e>>>0){J[b+100>>2]=g+P(c,12)}if(!c){break a}}g=J[h>>2];e=0;while(1){i=P(e,12);f=i+d|0;j=J[f>>2];k=J[f+8>>2];l=J[f+4>>2];f=(J[b+100>>2]-g|0)/12|0;c:{if(f>>>0>e>>>0){e=e+1|0;break c}J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;e=e+1|0;of(h,e-f|0,a);g=J[h>>2]}f=g+i|0;J[f+8>>2]=k;J[f+4>>2]=l;J[f>>2]=j;if((c|0)!=(e|0)){continue}break}}ba=a+16|0;return(b|0)!=0|0}function Hb(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=1;j=d&2147483647;l=j;k=(j|0)==2147418112;a:{if(k&!c?a|b:k&(c|0)!=0|j>>>0>2147418112){break a}j=h&2147483647;k=(j|0)==2147418112;if(k&!g?e|f:k&(g|0)!=0|j>>>0>2147418112){break a}if(!(a|e|(c|g)|(b|f|(j|l)))){return 0}i=d&h;if((i|0)>0|(i|0)>=0){i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0<e>>>0|b>>>0<f>>>0:c>>>0<g>>>0&(d|0)<=(h|0)|(d|0)<(h|0)){break a}return(a^e|c^g|(b^f|d^h))!=0}i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>e>>>0|b>>>0>f>>>0:c>>>0>g>>>0&(d|0)>=(h|0)|(d|0)>(h|0)){break a}i=(a^e|c^g|(b^f|d^h))!=0}return i}function Jb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}b=P(b,12);d=oa(b);J[a+4>>2]=d;J[a>>2]=d;e=b+d|0;J[a+8>>2]=e;f=J[c+4>>2];g=J[c>>2];c:{if((f|0)==(g|0)){b=b-12|0;pa(d,0,(b-((b>>>0)%12|0)|0)+12|0);break c}h=f-g|0;if((h|0)<0){break a}i=h&-4;while(1){J[d+8>>2]=0;J[d>>2]=0;J[d+4>>2]=0;b=oa(h);J[d>>2]=b;J[d+8>>2]=b+i;c=g;while(1){J[b>>2]=J[c>>2];b=b+4|0;c=c+4|0;if((f|0)!=(c|0)){continue}break}J[d+4>>2]=b;d=d+12|0;if((e|0)!=(d|0)){continue}break}}J[a+4>>2]=e}return}qa();B()}J[d+8>>2]=0;J[d>>2]=0;J[d+4>>2]=0;qa();B()}function tc(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;e=J[a+8>>2];d=J[a>>2];if(g>>>0<=e-d>>2>>>0){e=J[a+4>>2]-d|0;f=e>>2;e=f>>>0<g>>>0?b+e|0:c;h=e-b|0;if((b|0)!=(e|0)){ta(d,b,h)}if(f>>>0<g>>>0){b=c-e|0;d=J[a+4>>2];if((c|0)!=(e|0)){ta(d,e,b)}J[a+4>>2]=b+d;return}J[a+4>>2]=d+h;return}if(d){J[a+4>>2]=d;na(d);J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;e=0}a:{if((f|0)<0){break a}d=e>>>1|0;d=e>>>0>=2147483644?1073741823:d>>>0>g>>>0?d:g;if(d>>>0>=1073741824){break a}e=d<<2;d=oa(e);J[a+4>>2]=d;J[a>>2]=d;J[a+8>>2]=d+e;if((b|0)!=(c|0)){ua(d,b,f)}J[a+4>>2]=d+(g<<2);return}qa();B()}function jg(a,b){var c=0;c=J[b+4>>2];J[a>>2]=J[b>>2];J[a+4>>2]=c;c=J[b+60>>2];J[a+56>>2]=J[b+56>>2];J[a+60>>2]=c;c=J[b+52>>2];J[a+48>>2]=J[b+48>>2];J[a+52>>2]=c;c=J[b+44>>2];J[a+40>>2]=J[b+40>>2];J[a+44>>2]=c;c=J[b+36>>2];J[a+32>>2]=J[b+32>>2];J[a+36>>2]=c;c=J[b+28>>2];J[a+24>>2]=J[b+24>>2];J[a+28>>2]=c;c=J[b+20>>2];J[a+16>>2]=J[b+16>>2];J[a+20>>2]=c;c=J[b+12>>2];J[a+8>>2]=J[b+8>>2];J[a+12>>2]=c;J[a+88>>2]=0;J[a+64>>2]=0;J[a+68>>2]=0;J[a+72>>2]=0;J[a+76>>2]=0;H[a+77|0]=0;H[a+78|0]=0;H[a+79|0]=0;H[a+80|0]=0;H[a+81|0]=0;H[a+82|0]=0;H[a+83|0]=0;H[a+84|0]=0;return a}function ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=a+4|0;a=J[a+4>>2];a:{b:{if(!a){break b}d=K[b+11|0];c=d<<24>>24<0;g=c?J[b>>2]:b;d=c?J[b+4>>2]:d;b=f;while(1){e=K[a+27|0];c=e<<24>>24<0;e=c?J[a+20>>2]:e;h=e>>>0>d>>>0;i=h?d:e;c:{if(i){c=Ba(c?J[a+16>>2]:a+16|0,g,i);if(c){break c}}c=d>>>0>e>>>0?-1:h}c=(c|0)<0;b=c?b:a;a=J[(c?a+4|0:a)>>2];if(a){continue}break}if((b|0)==(f|0)){break b}c=K[b+27|0];a=c<<24>>24<0;d:{c=a?J[b+20>>2]:c;e=c>>>0<d>>>0?c:d;if(e){a=Ba(g,a?J[b+16>>2]:b+16|0,e);if(a){break d}}if(c>>>0>d>>>0){break b}break a}if((a|0)>=0){break a}}b=f}return b}function xe(a){var b=0,c=0,d=0,e=0;c=J[a+152>>2];if(c){d=c;b=J[a+156>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=J[d>>2];if(e){J[b-8>>2]=e;na(e)}b=d;if((c|0)!=(b|0)){continue}break}d=J[a+152>>2]}J[a+156>>2]=c;na(d)}c=J[a+140>>2];if(c){d=c;b=J[a+144>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=J[d>>2];if(e){J[b-8>>2]=e;na(e)}b=d;if((c|0)!=(b|0)){continue}break}d=J[a+140>>2]}J[a+144>>2]=c;na(d)}b=J[a+128>>2];if(b){J[a+132>>2]=b;na(b)}b=J[a+116>>2];if(b){J[a+120>>2]=b;na(b)}b=J[a+104>>2];if(b){J[a+108>>2]=b;na(b)}tb(a+84|0);tb(a- -64|0);tb(a+44|0);wa(a+12|0)}function Uh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(pb(a,J[b+8>>2],e)){if(!(J[b+28>>2]==1|J[b+4>>2]!=(c|0))){J[b+28>>2]=d}return}a:{if(pb(a,J[b>>2],e)){if(!(J[b+16>>2]!=(c|0)&J[b+20>>2]!=(c|0))){if((d|0)!=1){break a}J[b+32>>2]=1;return}J[b+32>>2]=d;b:{if(J[b+44>>2]==4){break b}I[b+52>>1]=0;a=J[a+8>>2];da[J[J[a>>2]+20>>2]](a,b,c,c,1,e);if(K[b+53|0]){J[b+44>>2]=3;if(!K[b+52|0]){break b}break a}J[b+44>>2]=4}J[b+20>>2]=c;J[b+40>>2]=J[b+40>>2]+1;if(J[b+36>>2]!=1|J[b+24>>2]!=2){break a}H[b+54|0]=1;return}a=J[a+8>>2];da[J[J[a>>2]+24>>2]](a,b,c,d,e)}}function xc(a,b){var c=0,d=0,e=0,f=0;c=J[a+16>>2];if(b){J[a+12>>2]=J[a+12>>2]|-2147483648>>>c}b=c+1|0;J[a+16>>2]=b;a:{b:{if((b|0)==32){b=J[a+4>>2];c:{if((b|0)!=J[a+8>>2]){J[b>>2]=J[a+12>>2];J[a+4>>2]=b+4;break c}d=b;b=J[a>>2];c=d-b|0;f=c>>2;e=f+1|0;if(e>>>0>=1073741824){break b}d=c>>>1|0;e=c>>>0>=2147483644?1073741823:e>>>0<d>>>0?d:e;if(e){if(e>>>0>=1073741824){break a}d=oa(e<<2)}else{d=0}f=d+(f<<2)|0;J[f>>2]=J[a+12>>2];c=ta(d,b,c);J[a+8>>2]=c+(e<<2);J[a+4>>2]=f+4;J[a>>2]=c;if(!b){break c}na(b)}J[a+12>>2]=0;J[a+16>>2]=0}return}qa();B()}xa();B()}function ue(a){var b=0,c=0,d=0,e=0;c=J[a+140>>2];if(c){d=c;b=J[a+144>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=J[d>>2];if(e){J[b-8>>2]=e;na(e)}b=d;if((c|0)!=(b|0)){continue}break}d=J[a+140>>2]}J[a+144>>2]=c;na(d)}c=J[a+128>>2];if(c){d=c;b=J[a+132>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=J[d>>2];if(e){J[b-8>>2]=e;na(e)}b=d;if((c|0)!=(b|0)){continue}break}d=J[a+128>>2]}J[a+132>>2]=c;na(d)}b=J[a+116>>2];if(b){J[a+120>>2]=b;na(b)}b=J[a+104>>2];if(b){J[a+108>>2]=b;na(b)}b=J[a+92>>2];if(b){J[a+96>>2]=b;na(b)}tb(a+72|0);tb(a+52|0);tb(a+32|0);tb(a+12|0)}function Qg(a,b,c,d,e){var f=0,g=0,h=0;f=ba-16|0;ba=f;g=Pg(b,c,f+12|0,f+8|0,d);d=J[g>>2];if(d){b=0}else{d=oa(40);c=d+16|0;a:{if(H[e+11|0]>=0){h=J[e+4>>2];J[c>>2]=J[e>>2];J[c+4>>2]=h;J[c+8>>2]=J[e+8>>2];break a}Ga(c,J[e>>2],J[e+4>>2])}c=d+28|0;b:{if(H[e+23|0]>=0){e=e+12|0;h=J[e+4>>2];J[c>>2]=J[e>>2];J[c+4>>2]=h;J[c+8>>2]=J[e+8>>2];break b}Ga(c,J[e+12>>2],J[e+16>>2])}J[d+8>>2]=J[f+12>>2];J[d>>2]=0;J[d+4>>2]=0;J[g>>2]=d;e=d;c=J[J[b>>2]>>2];if(c){J[b>>2]=c;e=J[g>>2]}sb(J[b+4>>2],e);J[b+8>>2]=J[b+8>>2]+1;b=1}H[a+4|0]=b;J[a>>2]=d;ba=f+16|0}function ig(a){var b=0,c=0,d=0,e=0;za(a);c=J[a+84>>2];a:{if((c|0)<=0){break a}b=c<<5;d=oa(c>>>0>134217727?-1:b|4);J[d>>2]=c;d=d+4|0;c=d+b|0;b=d;while(1){J[b>>2]=0;J[b+4>>2]=0;J[b+24>>2]=0;J[b+28>>2]=0;J[b+16>>2]=0;J[b+20>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;b=b+32|0;if((c|0)!=(b|0)){continue}break}e=J[a+80>>2];J[a+80>>2]=d;if(e){c=e-4|0;d=J[c>>2];if(d){b=(d<<5)+e|0;while(1){b=wa(b-32|0);if((e|0)!=(b|0)){continue}break}}na(c)}if(J[a+84>>2]<=0){break a}b=0;while(1){za(J[a+80>>2]+(b<<5)|0);b=b+1|0;if((b|0)<J[a+84>>2]){continue}break}}}function qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=ba-16|0;ba=f;A(+b);g=v(1)|0;d=v(0)|0;c=g&2147483647;e=c+-1048576|0;a:{if((e|0)==2145386495|e>>>0<2145386495){h=d<<28;e=c>>>4|0;c=(c&15)<<28|d>>>4;d=e+1006632960|0;break a}if((c|0)==2146435072|c>>>0>2146435072){h=d<<28;c=(g&15)<<28|d>>>4;d=g>>>4|2147418112;break a}if(!(c|d)){c=0;d=0;break a}e=c;c=c?S(c):S(d)+32|0;Pa(f,d,e,0,0,c+49|0);i=J[f>>2];h=J[f+4>>2];e=15372-c<<16;c=J[f+8>>2];d=e|J[f+12>>2]^65536}J[a>>2]=i;J[a+4>>2]=h;J[a+8>>2]=c;J[a+12>>2]=g&-2147483648|d;ba=f+16|0}function yi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=ba-48|0;ba=f;a:{if(!b){a=0;break a}e=f+16|0;J[e>>2]=0;J[e+4>>2]=0;H[e+24|0]=0;J[e+16>>2]=0;J[e+20>>2]=0;J[e+8>>2]=0;J[e+12>>2]=0;g=0;b:{if((Nb(b,0)|0)==-1){break b}if(c){g=0;if(!(da[J[J[b>>2]+16>>2]](b)|0)){break b}da[J[J[b>>2]+20>>2]](b)}ah(f,a,b,e);a=J[f>>2];if(H[f+15|0]<0){na(J[f+4>>2])}g=0;if(a){break b}vd(d,J[e>>2],J[e+4>>2]);g=J[e+4>>2]-J[e>>2]|0}a=g;b=J[e+12>>2];J[e+12>>2]=0;if(b){na(b)}b=J[e>>2];if(!b){break a}J[e+4>>2]=b;na(b)}ba=f+48|0;return a|0}function re(a){a=a|0;var b=0,c=0,d=0;J[a>>2]=2284;d=J[a+60>>2];if(d){b=d;c=J[a- -64>>2];if((b|0)!=(c|0)){while(1){c=c-4|0;b=J[c>>2];J[c>>2]=0;if(b){Ka(b)}if((c|0)!=(d|0)){continue}break}b=J[a+60>>2]}J[a+64>>2]=d;na(b)}b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}d=J[a+36>>2];if(d){b=d;c=J[a+40>>2];if((b|0)!=(c|0)){while(1){c=c-24|0;da[J[J[c>>2]>>2]](c)|0;if((c|0)!=(d|0)){continue}break}b=J[a+36>>2]}J[a+40>>2]=d;na(b)}J[a>>2]=2188;b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}b=J[a+4>>2];if(b){J[a+8>>2]=b;na(b)}return a|0}function Ld(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=J[a+8>>2];d=J[a+4>>2];if(c-d>>2>>>0>=b>>>0){if(b){b=b<<2;d=pa(d,0,b)+b|0}J[a+4>>2]=d;return}a:{f=J[a>>2];g=d-f>>2;e=g+b|0;if(e>>>0<1073741824){c=c-f|0;h=c>>>1|0;e=c>>>0>=2147483644?1073741823:e>>>0<h>>>0?h:e;if(e){if(e>>>0>=1073741824){break a}i=oa(e<<2)}c=(g<<2)+i|0;b=b<<2;b=pa(c,0,b)+b|0;if((d|0)!=(f|0)){while(1){c=c-4|0;d=d-4|0;J[c>>2]=J[d>>2];if((d|0)!=(f|0)){continue}break}}J[a+8>>2]=(e<<2)+i;J[a+4>>2]=b;J[a>>2]=c;if(f){na(f)}return}qa();B()}xa();B()}function zi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=ba-48|0;ba=e;a:{if(!b){a=0;break a}d=e+16|0;J[d>>2]=0;J[d+4>>2]=0;H[d+24|0]=0;J[d+16>>2]=0;J[d+20>>2]=0;J[d+8>>2]=0;J[d+12>>2]=0;f=0;b:{if((Nb(b,0)|0)==-1){break b}f=0;if(!(da[J[J[b>>2]+16>>2]](b)|0)){break b}da[J[J[b>>2]+20>>2]](b);Zg(e,a,b,d);a=J[e>>2];if(H[e+15|0]<0){na(J[e+4>>2])}f=0;if(a){break b}vd(c,J[d>>2],J[d+4>>2]);f=J[d+4>>2]-J[d>>2]|0}a=f;b=J[d+12>>2];J[d+12>>2]=0;if(b){na(b)}b=J[d>>2];if(!b){break a}J[d+4>>2]=b;na(b)}ba=e+48|0;return a|0}function Gb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;a:{if(f&64){c=f+-64|0;b=c&31;if((c&63)>>>0>=32){c=0;b=e>>>b|0}else{c=e>>>b|0;b=((1<<b)-1&e)<<32-b|d>>>b}d=0;e=0;break a}if(!f){break a}i=d;h=64-f|0;g=h&31;if((h&63)>>>0>=32){h=i<<g;j=0}else{h=(1<<g)-1&i>>>32-g|e<<g;j=i<<g}i=b;b=f&31;if((f&63)>>>0>=32){g=0;b=c>>>b|0}else{g=c>>>b|0;b=((1<<b)-1&c)<<32-b|i>>>b}b=j|b;c=g|h;g=d;d=f&31;if((f&63)>>>0>=32){h=0;d=e>>>d|0}else{h=e>>>d|0;d=((1<<d)-1&e)<<32-d|g>>>d}e=h}J[a>>2]=b;J[a+4>>2]=c;J[a+8>>2]=d;J[a+12>>2]=e}function hf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=ba-16|0;ba=c;e=K[b+11|0];e=e<<24>>24<0?J[b+4>>2]:e;a:{if(e>>>0>255){break a}if(!e){H[c+15|0]=0;b=J[a+20>>2];if(!!J[a+16>>2]&(b|0)>=0|(b|0)>0){break a}sa(a,J[a+4>>2],c+15|0,c+16|0);break a}H[c+14|0]=e;d=J[a+20>>2];if(!!J[a+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(a,J[a+4>>2],c+14|0,c+15|0);d=J[a+20>>2];if(!!J[a+16>>2]&(d|0)>=0|(d|0)>0){break a}g=a;h=J[a+4>>2];a=K[b+11|0];d=a<<24>>24<0;f=d?J[b>>2]:b;sa(g,h,f,(d?J[b+4>>2]:a)+f|0)}ba=c+16|0;return e>>>0<256}function Gc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{c=J[a+4>>2];e=J[a>>2];d=c-e|0;b:{if(d>>>0<b>>>0){g=b-d|0;f=J[a+8>>2];if(g>>>0<=f-c>>>0){h=a,i=pa(c,0,g)+g|0,J[h+4>>2]=i;break b}if((b|0)<0){break a}c=f-e|0;f=c<<1;c=c>>>0>=1073741823?2147483647:b>>>0<f>>>0?f:b;f=oa(c);pa(f+d|0,0,g);d=ta(f,e,d);J[a+8>>2]=d+c;J[a+4>>2]=b+d;J[a>>2]=d;if(!e){break b}na(e);break b}if(b>>>0>=d>>>0){break b}J[a+4>>2]=b+e}b=J[a+28>>2];c=b;d=b+1|0;b=J[a+24>>2]+1|0;e=b?c:d;J[a+24>>2]=b;J[a+28>>2]=e;return}qa();B()}function pi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ba-48|0;ba=d;e=J[a+4>>2];a:{if(!e){break a}if(b){if(!(da[J[J[e>>2]+16>>2]](e)|0)){break a}b=J[a+4>>2];da[J[J[b>>2]+20>>2]](b)}b=d+16|0;J[b>>2]=0;J[b+4>>2]=0;H[b+24|0]=0;J[b+16>>2]=0;J[b+20>>2]=0;J[b+8>>2]=0;J[b+12>>2]=0;fe(d,J[a>>2],b);a=J[d>>2];if(H[d+15|0]<0){na(J[d+4>>2])}if(!a){vd(c,J[b>>2],J[b+4>>2]);f=J[b+4>>2]-J[b>>2]|0}a=J[b+12>>2];J[b+12>>2]=0;if(a){na(a)}a=J[b>>2];if(!a){break a}J[b+4>>2]=a;na(a)}ba=d+48|0;return f|0}function Dl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=1;a:{if((da[J[J[b>>2]+20>>2]](b)|0)<=0){break a}while(1){e=0;d=Nb(J[J[a+4>>2]+4>>2],da[J[J[b>>2]+24>>2]](b,f)|0);if((d|0)==-1){break a}c=J[a+4>>2];g=0;b:{if((d|0)<0){break b}h=J[c+4>>2];if(J[h+12>>2]-J[h+8>>2]>>2<=(d|0)){break b}c=J[J[c+8>>2]+(J[J[c+20>>2]+(d<<2)>>2]<<2)>>2];g=da[J[J[c>>2]+36>>2]](c,d)|0}if(!(da[J[J[b>>2]+28>>2]](b,g)|0)){break a}e=1;f=f+1|0;if((da[J[J[b>>2]+20>>2]](b)|0)>(f|0)){continue}break}}return e|0}function Pa(a,b,c,d,e,f){var g=0,h=0,i=0;a:{if(f&64){d=b;e=f+-64|0;b=e&31;if((e&63)>>>0>=32){e=d<<b;d=0}else{e=(1<<b)-1&d>>>32-b|c<<b;d=d<<b}b=0;c=0;break a}if(!f){break a}g=d;d=f&31;if((f&63)>>>0>=32){h=g<<d;i=0}else{h=(1<<d)-1&g>>>32-d|e<<d;i=g<<d}g=b;e=64-f|0;d=e&31;if((e&63)>>>0>=32){e=0;b=c>>>d|0}else{e=c>>>d|0;b=((1<<d)-1&c)<<32-d|g>>>d}d=i|b;e=e|h;b=f&31;if((f&63)>>>0>=32){h=g<<b;b=0}else{h=(1<<b)-1&g>>>32-b|c<<b;b=g<<b}c=h}J[a>>2]=b;J[a+4>>2]=c;J[a+8>>2]=d;J[a+12>>2]=e}function se(a,b){ya(a,b);ya(a+32|0,b);ya(a- -64|0,b);ya(a+96|0,b);ya(a+128|0,b);ya(a+160|0,b);ya(a+192|0,b);ya(a+224|0,b);ya(a+256|0,b);ya(a+288|0,b);ya(a+320|0,b);ya(a+352|0,b);ya(a+384|0,b);ya(a+416|0,b);ya(a+448|0,b);ya(a+480|0,b);ya(a+512|0,b);ya(a+544|0,b);ya(a+576|0,b);ya(a+608|0,b);ya(a+640|0,b);ya(a+672|0,b);ya(a+704|0,b);ya(a+736|0,b);ya(a+768|0,b);ya(a+800|0,b);ya(a+832|0,b);ya(a+864|0,b);ya(a+896|0,b);ya(a+928|0,b);ya(a+960|0,b);ya(a+992|0,b);ya(a+1024|0,b)}function Ch(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=J[J[a+8>>2]+40>>2];h=oa((d|0)<0?-1:d);g=J[b>>2];i=J[b+4>>2];if((g|0)!=(i|0)){k=d+h|0;while(1){e=J[(j<<2)+g>>2];f=J[a+8>>2];if(!K[f+84|0]){e=J[J[f+68>>2]+(e<<2)>>2]}l=J[J[f>>2]>>2];d=J[f+40>>2];e=J[f+48>>2]+Hl(d,J[f+44>>2],e,0)|0;e=ua(h,e+l|0,d);d=J[c+20>>2];if(!J[c+16>>2]&(d|0)<=0|(d|0)<0){sa(c,J[c+4>>2],e,k);g=J[b>>2];i=J[b+4>>2]}j=j+1|0;if(j>>>0<i-g>>2>>>0){continue}break}}na(h);return 1}function Pe(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!J[J[4843]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){H[a+1|0]=b&63|128;H[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){H[a+2|0]=b&63|128;H[a|0]=b>>>12|224;H[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){H[a+3|0]=b&63|128;H[a|0]=b>>>18|240;H[a+2|0]=b>>>6&63|128;H[a+1|0]=b>>>12&63|128;a=4;break a}}J[4804]=25;a=-1}else{a=1}break a}H[a|0]=b;a=1}return a}function Je(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=ba-16|0;ba=f;d=ba-32|0;ba=d;e=ba-16|0;ba=e;J[e+12>>2]=a;J[e+8>>2]=a+b;J[d+24>>2]=J[e+12>>2];J[d+28>>2]=J[e+8>>2];ba=e+16|0;b=ba-16|0;ba=b;h=J[d+28>>2];e=J[d+24>>2];g=h-e|0;if((e|0)!=(h|0)){ta(c,e,g)}J[b+12>>2]=e+g;J[b+8>>2]=c+g;J[d+16>>2]=J[b+12>>2];J[d+20>>2]=J[b+8>>2];ba=b+16|0;J[d+12>>2]=(J[d+16>>2]-a|0)+a;J[d+8>>2]=(J[d+20>>2]-c|0)+c;J[f+8>>2]=J[d+12>>2];J[f+12>>2]=J[d+8>>2];ba=d+32|0;ba=f+16|0;return J[f+12>>2]}function aj(a,b){a=a|0;b=b|0;var c=0,d=0;c=ba-16|0;ba=c;d=J[a+8>>2];a:{if((d|0)==J[a+12>>2]){b=bf(oa(76),b);J[b+36>>2]=0;J[b+40>>2]=0;J[b>>2]=2284;J[b+44>>2]=0;J[b+48>>2]=0;J[b+52>>2]=0;J[b+56>>2]=0;J[b+60>>2]=0;J[b+64>>2]=0;J[b+68>>2]=0;J[b+72>>2]=0;J[c+8>>2]=b;d=J[a+12>>2];b:{if(d>>>0<M[a+16>>2]){J[c+8>>2]=0;J[d>>2]=b;J[a+12>>2]=d+4;break b}Ic(a+8|0,c+8|0)}a=J[c+8>>2];J[c+8>>2]=0;if(!a){break a}da[J[J[a>>2]+4>>2]](a);break a}kc(J[d>>2],b)}ba=c+16|0;return 1}function Wg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=ba-48|0;ba=e;h=J[b>>2];f=a+16|0;b=J[f>>2];a:{b:{if(!b){break b}g=f;while(1){i=J[b+16>>2]<(h|0);g=i?g:b;b=J[(i?b+4|0:b)>>2];if(b){continue}break}if((g|0)==(f|0)){break b}if(J[g+16>>2]<=(h|0)){break a}}J[e+28>>2]=0;J[e+32>>2]=0;f=e+24|0;J[e+24>>2]=f|4;b=e+16|0;J[b>>2]=0;J[b+4>>2]=0;J[e+8>>2]=h;J[e+12>>2]=b;b=a+12|0;a=e+8|0;Oc(e+40|0,b,a,a);g=J[e+40>>2];Da(a|4,J[e+16>>2]);Da(f,J[e+28>>2])}vb(g+20|0,c,d);ba=e+48|0}function Ec(a){a=a|0;var b=0,c=0,d=0;J[a>>2]=14964;b=J[a+68>>2];if(b){J[a+72>>2]=b;na(b)}b=J[a+56>>2];if(b){J[a+60>>2]=b;na(b)}b=J[a+44>>2];if(b){J[a+48>>2]=b;na(b)}b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}b=J[a+20>>2];if(b){J[a+24>>2]=b;na(b)}b=J[a+8>>2];if(b){d=b;c=J[a+12>>2];if((b|0)!=(c|0)){while(1){c=c-4|0;d=J[c>>2];J[c>>2]=0;if(d){Ka(d)}if((b|0)!=(c|0)){continue}break}d=J[a+8>>2]}J[a+12>>2]=b;na(d)}b=J[a+4>>2];J[a+4>>2]=0;if(b){pf(b)}return a|0}function Ah(a){a=a|0;var b=0,c=0,d=0;J[a>>2]=2496;b=J[a+72>>2];J[a+72>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}b=J[a+60>>2];if(b){J[a- -64>>2]=b;na(b)}b=J[a+48>>2];if(b){na(b)}d=J[a+36>>2];if(d){c=J[a+40>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=J[c>>2];J[c>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=J[a+36>>2]}J[a+40>>2]=d;na(b)}J[a>>2]=2188;b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}b=J[a+4>>2];if(b){J[a+8>>2]=b;na(b)}return a|0}function Ra(a){J[a>>2]=-1;J[a+4>>2]=0;J[a+8>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;H[a+28|0]=1;J[a+20>>2]=0;J[a+24>>2]=0;J[a+12>>2]=0;J[a+16>>2]=0;J[a+40>>2]=0;J[a+44>>2]=0;J[a+48>>2]=0;J[a+52>>2]=0;J[a+56>>2]=0;J[a+60>>2]=0;J[a+64>>2]=0;J[a+68>>2]=0;J[a+76>>2]=0;J[a+80>>2]=0;J[a+84>>2]=0;J[a+88>>2]=0;J[a+92>>2]=0;J[a+96>>2]=0;J[a+72>>2]=a+4;J[a+104>>2]=0;J[a+108>>2]=0;H[a+100|0]=1;J[a+112>>2]=0;J[a+116>>2]=0;J[a+120>>2]=0;J[a+124>>2]=0;J[a+128>>2]=0}function Fa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=J[a+8>>2];c=J[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=pa(c,0,b)+b|0}J[a+4>>2]=c;return}a:{f=c;c=J[a>>2];g=f-c|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){e=e-c|0;f=e>>>1|0;d=e>>>0>=2147483644?1073741823:d>>>0<f>>>0?f:d;if(d){if(d>>>0>=1073741824){break a}i=oa(d<<2)}b=b<<2;e=pa((h<<2)+i|0,0,b);f=d<<2;d=ta(i,c,g);J[a+8>>2]=f+d;J[a+4>>2]=b+e;J[a>>2]=d;if(c){na(c)}return}qa();B()}xa();B()}function Wa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=J[a+8>>2];c=J[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=pa(c,0,b)+b|0}J[a+4>>2]=c;return}a:{f=c;c=J[a>>2];g=f-c|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){e=e-c|0;f=e>>>2|0;d=e>>>0>=2147483640?536870911:d>>>0<f>>>0?f:d;if(d){if(d>>>0>=536870912){break a}i=oa(d<<3)}b=b<<3;e=pa((h<<3)+i|0,0,b);f=d<<3;d=ta(i,c,g);J[a+8>>2]=f+d;J[a+4>>2]=b+e;J[a>>2]=d;if(c){na(c)}return}qa();B()}xa();B()}function Oe(a,b,c,d,e){var f=0,g=0,h=0;h=-1;g=d&2147483647;f=(g|0)==2147418112;a:{if(f&!c?a|b:f&(c|0)!=0|g>>>0>2147418112){break a}f=e&2147483647;if(((f|0)==2147418112&0|f>>>0>2147418112)&(f|0)!=2147418112){break a}if(!(a|c|(f|g|b))){return 0}f=d&e;if((f|0)>0|(f|0)>=0){if(((c|0)!=0|(d|0)!=(e|0))&(d|0)<(e|0)){break a}return(a|c|(d^e|b))!=0}if(!c&(d|0)==(e|0)?a|b:(c|0)!=0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}h=(a|c|(d^e|b))!=0}return h}function Xa(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0;i=Hl(b,c,h,i);h=ca;e=Hl(d,e,f,g);i=e+i|0;d=ca+h|0;h=e>>>0>i>>>0?d+1|0:d;j=g;e=0;k=c;d=0;c=Hl(g,e,c,d);g=c+i|0;i=ca+h|0;l=g;c=c>>>0>g>>>0?i+1|0:i;g=Hl(f,0,b,0);h=ca;i=0;d=Hl(f,i,k,d);h=h+d|0;f=ca+i|0;f=d>>>0>h>>>0?f+1|0:f;i=f+l|0;d=c;f=f>>>0>i>>>0?d+1|0:d;c=Hl(b,m,j,e)+h|0;e=ca;e=c>>>0<h>>>0?e+1|0:e;h=e+i|0;i=f;J[a+8>>2]=h;J[a+12>>2]=e>>>0>h>>>0?i+1|0:i;J[a>>2]=g;J[a+4>>2]=c}function Ia(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{c=J[a+4>>2];f=J[a>>2];d=c-f|0;b:{if(d>>>0<b>>>0){g=b-d|0;e=J[a+8>>2];if(g>>>0<=e-c>>>0){h=a,i=pa(c,0,g)+g|0,J[h+4>>2]=i;return}if((b|0)<0){break a}c=e-f|0;e=c<<1;c=c>>>0>=1073741823?2147483647:b>>>0<e>>>0?e:b;e=oa(c);pa(e+d|0,0,g);d=ta(e,f,d);J[a+8>>2]=d+c;J[a+4>>2]=b+d;J[a>>2]=d;if(!f){break b}na(f);return}if(b>>>0>=d>>>0){break b}J[a+4>>2]=b+f}return}qa();B()}function Ug(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=ba-16|0;ba=d;e=J[a+4>>2];a:{if((e|0)==-1){break a}c=J[b+20>>2];if(!!J[b+16>>2]&(c|0)>=0|(c|0)>0){break a}sa(b,J[b+4>>2],J[a+8>>2],J[a+12>>2]);c=J[b+20>>2];if(!!J[b+16>>2]&(c|0)>=0|(c|0)>0){break a}sa(b,J[b+4>>2],a+20|0,a+24|0);c=J[b+20>>2];f=J[b+16>>2];H[d+15|0]=J[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}sa(b,J[b+4>>2],d+15|0,d+16|0)}ba=d+16|0;return(e|0)!=-1|0}function fj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=J[a+8>>2];b:{if((b|0)<0){break b}c=J[a+4>>2];e=J[c>>2];d=J[c+4>>2]-e>>2;c:{if(d>>>0<b>>>0){Ld(c,b-d|0);f=J[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}J[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=J[a+4>>2];c=J[a>>2];e=J[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}J[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}ra();B()}function te(a){za(a);za(a+32|0);za(a- -64|0);za(a+96|0);za(a+128|0);za(a+160|0);za(a+192|0);za(a+224|0);za(a+256|0);za(a+288|0);za(a+320|0);za(a+352|0);za(a+384|0);za(a+416|0);za(a+448|0);za(a+480|0);za(a+512|0);za(a+544|0);za(a+576|0);za(a+608|0);za(a+640|0);za(a+672|0);za(a+704|0);za(a+736|0);za(a+768|0);za(a+800|0);za(a+832|0);za(a+864|0);za(a+896|0);za(a+928|0);za(a+960|0);za(a+992|0);za(a+1024|0)}function Ga(a,b,c){var d=0,e=0,f=0,g=0;e=ba-16|0;ba=e;a:{b:{if(c>>>0<11){d=a;H[a+11|0]=K[a+11|0]&128|c;H[a+11|0]=K[a+11|0]&127;break b}if(c>>>0>2147483631){break a}g=e+8|0;if(c>>>0>=11){f=c+16&-16;d=f-1|0;d=(d|0)==11?f:d}else{d=10}Ac(g,d+1|0);d=J[e+8>>2];J[a>>2]=d;J[a+8>>2]=J[a+8>>2]&-2147483648|J[e+12>>2]&2147483647;J[a+8>>2]=J[a+8>>2]|-2147483648;J[a+4>>2]=c}Ab(d,b,c+1|0);ba=e+16|0;return}gb();B()}function Zg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ba-96|0;ba=e;f=Ng(e+40|0,c);$g(e,b,c);Mg(f,e);Da(e+24|0,J[e+28>>2]);nb(e+12|0,J[e+16>>2]);Da(e,J[e+4>>2]);fe(a,f,d);if(!J[a>>2]){if(H[a+15|0]<0){na(J[a+4>>2])}J[b+40>>2]=J[f+40>>2];J[b+44>>2]=J[f+44>>2];J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+4>>2]=0}J[f>>2]=10256;Da(f+28|0,J[f+32>>2]);nb(f+16|0,J[f+20>>2]);Da(f+4|0,J[f+8>>2]);ba=e+96|0}function mc(a,b){var c=0,d=0,e=0;c=J[a+4>>2];d=c+b|0;J[a+4>>2]=d;if(!((d-1^c-1)>>>0<32?c:0)){J[J[a>>2]+((d>>>0>=33?d-1>>>5|0:0)<<2)>>2]=0}a:{if(!b){break a}a=J[a>>2]+(c>>>3&536870908)|0;c=c&31;if(c){d=32-c|0;e=b>>>0>d>>>0?d:b;J[a>>2]=J[a>>2]&(-1<<c&-1>>>d-e^-1);b=b-e|0;a=a+4|0}c=b>>>5|0;if(b>>>0>=32){pa(a,0,c<<2)}if((b&-32)==(b|0)){break a}a=(c<<2)+a|0;J[a>>2]=J[a>>2]&(-1>>>32-(b&31)^-1)}}function Oa(a,b,c){var d=0,e=0,f=0;if(!(K[a|0]&32)){a:{d=b;b=a;a=J[b+16>>2];b:{if(!a){if(We(b)){break b}a=J[b+16>>2]}f=J[b+20>>2];if(a-f>>>0<c>>>0){da[J[b+36>>2]](b,d,c)|0;break a}c:{if(J[b+80>>2]<0){break c}a=c;while(1){e=a;if(!a){break c}a=e-1|0;if(K[d+a|0]!=10){continue}break}if(da[J[b+36>>2]](b,d,e)>>>0<e>>>0){break b}d=d+e|0;c=c-e|0;f=J[b+20>>2]}ua(f,d,c);J[b+20>>2]=J[b+20>>2]+c}}}}function Wj(a){a=a|0;var b=0,c=0,d=0;J[a>>2]=10404;b=J[a+64>>2];J[a+64>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}J[a>>2]=12468;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}b=J[a+20>>2];if(b){J[a+24>>2]=b;na(b)}d=J[a+8>>2];if(d){c=J[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=J[c>>2];J[c>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=J[a+8>>2]}J[a+12>>2]=d;na(b)}return a|0}function zl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=ba-16|0;ba=d;f=Me(a,b);a:{if(!f){break a}c=J[a+36>>2];if((c|0)==J[a+40>>2]){break a}g=d+16|0;while(1){c=J[(e<<2)+c>>2];h=d,i=da[J[J[c>>2]+32>>2]](c)|0,H[h+15|0]=i;c=J[b+20>>2];if(!J[b+16>>2]&(c|0)<=0|(c|0)<0){sa(b,J[b+4>>2],d+15|0,g)}e=e+1|0;c=J[a+36>>2];if(e>>>0<J[a+40>>2]-c>>2>>>0){continue}break}}ba=d+16|0;return f|0}function Vj(a){a=a|0;var b=0,c=0,d=0;J[a>>2]=10404;b=J[a+64>>2];J[a+64>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}J[a>>2]=12468;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}b=J[a+20>>2];if(b){J[a+24>>2]=b;na(b)}d=J[a+8>>2];if(d){c=J[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=J[c>>2];J[c>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=J[a+8>>2]}J[a+12>>2]=d;na(b)}na(a)}function og(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=J[a+176>>2];d=J[a+172>>2];e=(c-d|0)/136|0;a:{if((c|0)==(d|0)){break a}c=0;b:{c:{d:{if(J[d>>2]==(b|0)){b=1}else{f=e>>>0<=1?1:e;while(1){c=c+1|0;if((f|0)==(c|0)){break d}if(J[P(c,136)+d>>2]!=(b|0)){continue}break}b=c>>>0<e>>>0}if(b){break c}break a}if(c>>>0<e>>>0){break b}break a}d=(P(c,136)+d|0)+104|0}return d|0}return a+40|0}function Sf(a,b){a=a|0;b=b|0;var c=0,d=0;c=ba-16|0;ba=c;a:{if(!b){d=oa(76);b=oa(12);J[b+8>>2]=J[J[a+4>>2]+80>>2];J[b>>2]=12404;J[b+4>>2]=0;d=pe(d,b,0);J[c+8>>2]=d;b=J[a+12>>2];b:{if(b>>>0<M[a+16>>2]){J[c+8>>2]=0;J[b>>2]=d;J[a+12>>2]=b+4;break b}Ic(a+8|0,c+8|0)}a=J[c+8>>2];J[c+8>>2]=0;if(!a){break a}da[J[J[a>>2]+4>>2]](a);break a}kc(J[J[a+8>>2]>>2],b)}ba=c+16|0;return 1}function Jh(a,b){a=a|0;b=b|0;var c=0,d=0;c=J[a+36>>2];if((c|0)!=J[a+40>>2]){while(1){c=P(d,24)+c|0;da[J[J[c>>2]+28>>2]](c,b)|0;d=d+1|0;c=J[a+36>>2];if(d>>>0<(J[a+40>>2]-c|0)/24>>>0){continue}break}}c=J[a+48>>2];if((c|0)!=J[a+52>>2]){d=0;while(1){c=J[(d<<2)+c>>2];Aa((c|0)<0?(c^-1)<<1|1:c<<1,b);d=d+1|0;c=J[a+48>>2];if(d>>>0<J[a+52>>2]-c>>2>>>0){continue}break}}return 1}function ud(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Jc(oa(96));Md(g,b,d<<24>>24,f,c);b=qd(a,g);if(c){g=J[J[a+8>>2]+(b<<2)>>2];while(1){f=J[g+40>>2];ua(J[J[g>>2]>>2]+P(f,K[g+84|0]?h:J[J[g+68>>2]+(h<<2)>>2])|0,(P(d,h)<<2)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=J[a+80>>2];b:{if(!d){J[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function rf(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Jc(oa(96));Md(g,b,d<<24>>24,f,c);b=qd(a,g);if(c){g=J[J[a+8>>2]+(b<<2)>>2];while(1){f=J[g+40>>2];ua(J[J[g>>2]>>2]+P(f,K[g+84|0]?h:J[J[g+68>>2]+(h<<2)>>2])|0,(P(d,h)<<1)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=J[a+80>>2];b:{if(!d){J[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function sf(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Jc(oa(96));Md(g,b,d<<24>>24,f,c);b=qd(a,g);if(c){g=J[J[a+8>>2]+(b<<2)>>2];while(1){f=J[g+40>>2];ua(J[J[g>>2]>>2]+P(f,K[g+84|0]?h:J[J[g+68>>2]+(h<<2)>>2])|0,P(d,h)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=J[a+80>>2];b:{if(!d){J[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function Th(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(pb(a,J[b+8>>2],e)){if(!(J[b+28>>2]==1|J[b+4>>2]!=(c|0))){J[b+28>>2]=d}return}a:{if(!pb(a,J[b>>2],e)){break a}if(!(J[b+16>>2]!=(c|0)&J[b+20>>2]!=(c|0))){if((d|0)!=1){break a}J[b+32>>2]=1;return}J[b+20>>2]=c;J[b+32>>2]=d;J[b+40>>2]=J[b+40>>2]+1;if(!(J[b+36>>2]!=1|J[b+24>>2]!=2)){H[b+54|0]=1}J[b+44>>2]=4}}function Mc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=ba+-64|0;ba=e;d=da[J[J[a>>2]+44>>2]](a,b)|0;a=da[J[J[a>>2]+40>>2]](a,b)|0;f=Lc(e);g=J[b+56>>2];h=d&255;i=a;a=a-1|0;if(a>>>0<=10){a=J[(a<<2)+14832>>2]}else{a=-1}d=P(a,d);Nd(f,g,0,h,i,d,d>>31);a=jg(oa(96),f);Kd(a,c);H[a+84|0]=1;J[a+72>>2]=J[a+68>>2];J[a+60>>2]=J[b+60>>2];ba=e- -64|0;return a|0}function Md(a,b,c,d,e){var f=0,g=0,h=0;f=oa(32);J[f+16>>2]=0;J[f+20>>2]=0;J[f+8>>2]=0;J[f>>2]=0;J[f+4>>2]=0;J[f+24>>2]=0;J[f+28>>2]=0;g=J[a+64>>2];J[a+64>>2]=f;if(g){f=J[g>>2];if(f){J[g+4>>2]=f;na(f)}na(g);f=J[a+64>>2]}h=c&255;g=d-1|0;if(g>>>0<=10){g=J[(g<<2)+14832>>2]}else{g=-1}c=P(g,c);Nd(a,b,f,h,d,c,c>>31);Kd(a,e);H[a+84|0]=1;J[a+72>>2]=J[a+68>>2]}function _h(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=J[a+84>>2];f=J[e>>2];d=J[e+4>>2];h=J[a+28>>2];g=J[a+20>>2]-h|0;g=d>>>0<g>>>0?d:g;if(g){ua(f,h,g);f=g+J[e>>2]|0;J[e>>2]=f;d=J[e+4>>2]-g|0;J[e+4>>2]=d}d=c>>>0>d>>>0?d:c;if(d){ua(f,b,d);f=d+J[e>>2]|0;J[e>>2]=f;J[e+4>>2]=J[e+4>>2]-d}H[f|0]=0;b=J[a+44>>2];J[a+28>>2]=b;J[a+20>>2]=b;return c|0}function xb(a,b,c){var d=0,e=0,f=0,g=0;d=ba-16|0;ba=d;H[d+15|0]=a&127;a:{if(!b&a>>>0>=128|b){H[d+15|0]=a|128;e=J[c+20>>2];if(!!J[c+16>>2]&(e|0)>=0|(e|0)>0){break a}sa(c,J[c+4>>2],d+15|0,d+16|0);f=xb((b&127)<<25|a>>>7,b>>>7|0,c);break a}a=J[c+20>>2];if(!!J[c+16>>2]&(a|0)>=0|(a|0)>0){break a}g=1;sa(c,J[c+4>>2],d+15|0,d+16|0)}ba=d+16|0;return g|f}function Fe(a,b,c,d){H[a+53|0]=1;a:{if(J[a+4>>2]!=(c|0)){break a}H[a+52|0]=1;c=J[a+16>>2];b:{if(!c){J[a+36>>2]=1;J[a+24>>2]=d;J[a+16>>2]=b;if((d|0)!=1){break a}if(J[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=J[a+24>>2];if((c|0)==2){J[a+24>>2]=d;c=d}if(J[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}J[a+36>>2]=J[a+36>>2]+1}H[a+54|0]=1}}function Fc(a,b){var c=0,d=0,e=0,f=0;d=1;a:{if((b|0)==-1){break a}b=P(b,3);if((b|0)==-1){break a}d=-1;e=J[a>>2];a=e+(b<<2)|0;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){d=J[(c<<2)+e>>2]}a=J[a>>2];f=(a|0)==(d|0);b:{c:{if((b>>>0)%3|0){b=b-1|0;break c}b=b+2|0;c=-1;if((b|0)==-1){break b}}c=J[(b<<2)+e>>2]}d=f|(c|0)==(a|0)|(d|0)==(c|0)}return d}function jd(a,b,c){var d=0,e=0,f=0;f=ba-16|0;ba=f;d=K[a+11|0]>>>7|0?(J[a+8>>2]&2147483647)-1|0:10;if(K[a+11|0]>>>7|0){e=J[a+4>>2]}else{e=K[a+11|0]&127}a:{if(d-e>>>0>=c>>>0){if(!c){break a}if(K[a+11|0]>>>7|0){d=J[a>>2]}else{d=a}Ab(d+e|0,b,c);b=a;a=c+e|0;ld(b,a);H[f+15|0]=0;H[a+d|0]=K[f+15|0];break a}kd(a,d,(c+e|0)-d|0,e,e,0,c,b)}ba=f+16|0}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=ba+-64|0;ba=e;d=1;a:{if(pb(a,b,0)){break a}d=0;if(!b){break a}b=bd(b,18476,18524);d=0;if(!b){break a}d=e+8|0;pa(d|4,0,52);J[e+56>>2]=1;J[e+20>>2]=-1;J[e+16>>2]=a;J[e+8>>2]=b;da[J[J[b>>2]+28>>2]](b,d,J[c>>2],1);a=J[e+32>>2];if((a|0)==1){J[c>>2]=J[e+24>>2]}d=(a|0)==1}ba=e- -64|0;return d|0}function Al(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;J[a+32>>2]=c;J[a+28>>2]=b;a:{if(!(da[J[J[a>>2]+52>>2]](a)|0)){break a}e=J[a+4>>2];if((e|0)==J[a+8>>2]){return 1}c=0;while(1){d=c<<2;f=J[d+J[a+36>>2]>>2];d=da[J[J[f>>2]+8>>2]](f,b,J[d+e>>2])|0;if(!d){break a}c=c+1|0;e=J[a+4>>2];if(c>>>0<J[a+8>>2]-e>>2>>>0){continue}break}}return d|0}function Pj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ba-16|0;ba=d;J[a+4>>2]=b;b=J[b+64>>2];e=J[b>>2];b=J[b+4>>2];H[d+15|0]=0;Na(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=J[a+4>>2];e=J[b+56>>2];b=J[b+52>>2];H[d+14|0]=0;Na(a+36|0,e-b>>2,d+14|0);b=J[c+12>>2];J[a+16>>2]=J[c+8>>2];J[a+20>>2]=b;b=J[c+4>>2];J[a+8>>2]=J[c>>2];J[a+12>>2]=b;ba=d+16|0}function Aa(a,b){var c=0,d=0,e=0;c=ba-16|0;ba=c;H[c+15|0]=a&127;a:{if(a>>>0>=128){H[c+15|0]=a|128;d=J[b+20>>2];if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){a=0;break a}sa(b,J[b+4>>2],c+15|0,c+16|0);a=Aa(a>>>7|0,b);break a}a=0;d=J[b+20>>2];if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}e=1;sa(b,J[b+4>>2],c+15|0,c+16|0)}ba=c+16|0;return a|e}function Wc(a,b){var c=0,d=0;a:{c=J[a+4>>2];d=J[a+8>>2];if((c|0)==d<<5){if((c+1|0)<0){break a}if(c>>>0<=1073741822){d=d<<6;c=(c&-32)+32|0;c=c>>>0<d>>>0?d:c}else{c=2147483647}wc(a,c);c=J[a+4>>2]}J[a+4>>2]=c+1;d=1<<c;a=J[a>>2]+(c>>>3&536870908)|0;if(K[b|0]){J[a>>2]=d|J[a>>2];return}J[a>>2]=J[a>>2]&(d^-1);return}qa();B()}function Ej(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ba-16|0;ba=d;J[a+4>>2]=b;e=J[b>>2];b=J[b+4>>2];H[d+15|0]=0;Na(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=J[a+4>>2];e=J[b+28>>2];b=J[b+24>>2];H[d+14|0]=0;Na(a+36|0,e-b>>2,d+14|0);b=J[c+12>>2];J[a+16>>2]=J[c+8>>2];J[a+20>>2]=b;b=J[c+4>>2];J[a+8>>2]=J[c>>2];J[a+12>>2]=b;ba=d+16|0}function Bc(a){var b=0,c=0,d=0,e=0;while(1){b=a;a=b+1|0;c=H[b|0];if((c|0)==32|c-9>>>0<5){continue}break}a:{b:{c:{c=H[b|0];switch(c-43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=H[a|0];b=a}if(c-48>>>0<10){while(1){d=(P(d,10)-H[b|0]|0)+48|0;a=H[b+1|0];b=b+1|0;if(a-48>>>0<10){continue}break}}return e?d:0-d|0}function kj(a){a=a|0;var b=0,c=0,d=0;J[a>>2]=12468;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}b=J[a+20>>2];if(b){J[a+24>>2]=b;na(b)}d=J[a+8>>2];if(d){c=J[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=J[c>>2];J[c>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=J[a+8>>2]}J[a+12>>2]=d;na(b)}return a|0}function Gd(a){a=a|0;var b=0,c=0,d=0;J[a>>2]=12468;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}b=J[a+20>>2];if(b){J[a+24>>2]=b;na(b)}d=J[a+8>>2];if(d){c=J[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=J[c>>2];J[c>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=J[a+8>>2]}J[a+12>>2]=d;na(b)}na(a)}function nh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=ba-16|0;ba=c;J[c+12>>2]=J[a+12>>2];d=J[b+20>>2];a:{if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+12|0,c+16|0);d=J[b+20>>2];e=J[b+16>>2];J[c+8>>2]=J[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+8|0,c+12|0)}ya(a+112|0,b);ba=c+16|0;return 1}function pd(a){var b=0;b=1;a:{if((a|0)>=1024){b=898846567431158e293;if(a>>>0<2047){a=a-1023|0;break a}b=Infinity;a=((a|0)>=3069?3069:a)-2046|0;break a}if((a|0)>-1023){break a}b=2004168360008973e-307;if(a>>>0>4294965304){a=a+969|0;break a}b=0;a=((a|0)<=-2960?-2960:a)+1938|0}x(0,0);x(1,a+1023<<20);return b*+z()}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=ba-16|0;ba=c;J[c+12>>2]=J[a+12>>2];d=J[b+20>>2];a:{if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+12|0,c+16|0);d=J[b+20>>2];e=J[b+16>>2];J[c+8>>2]=J[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+8|0,c+12|0)}ya(a+96|0,b);ba=c+16|0;return 1}function hl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=ba-16|0;ba=c;J[c+12>>2]=J[a+12>>2];d=J[b+20>>2];a:{if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+12|0,c+16|0);d=J[b+20>>2];e=J[b+16>>2];J[c+8>>2]=J[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+8|0,c+12|0)}ba=c+16|0;return 1}function Jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=ba-16|0;ba=c;J[c+12>>2]=J[a+12>>2];d=J[b+20>>2];a:{if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+12|0,c+16|0);d=J[b+20>>2];e=J[b+16>>2];J[c+8>>2]=J[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+8|0,c+12|0)}ba=c+16|0;return 1}function Ba(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(J[a>>2]!=J[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=K[a|0];e=K[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function $a(a,b){var c=0,d=0,e=0,f=0;d=ba-16|0;ba=d;a:{if(!b){b=0;break a}c=b>>31;e=(c^b)-c|0;c=S(e);Pa(d,e,0,0,0,c+81|0);e=0+J[d+8>>2]|0;c=(J[d+12>>2]^65536)+(16414-c<<16)|0;c=e>>>0<f>>>0?c+1|0:c;f=b&-2147483648|c;c=J[d+4>>2];b=J[d>>2]}J[a>>2]=b;J[a+4>>2]=c;J[a+8>>2]=e;J[a+12>>2]=f;ba=d+16|0}function Cj(a){a=a|0;var b=0;J[a+8>>2]=11436;J[a>>2]=11224;b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+80>>2];if(b){J[a+84>>2]=b;na(b)}b=J[a+68>>2];if(b){J[a+72>>2]=b;na(b)}b=J[a+56>>2];if(b){J[a+60>>2]=b;na(b)}J[a+8>>2]=11672;b=J[a+44>>2];if(b){na(b)}b=J[a+32>>2];if(b){na(b)}return a|0}function pf(a){var b=0,c=0,d=0;if(a){d=J[a+24>>2];if(d){b=d;c=J[a+28>>2];if((b|0)!=(c|0)){while(1){c=c-4|0;b=J[c>>2];J[c>>2]=0;if(b){lb(b+12|0,J[b+16>>2]);kb(b,J[b+4>>2]);na(b)}if((c|0)!=(d|0)){continue}break}b=J[a+24>>2]}J[a+28>>2]=d;na(b)}lb(a+12|0,J[a+16>>2]);kb(a,J[a+4>>2]);na(a)}}function vh(a){a=a|0;var b=0;J[a>>2]=3512;b=J[a+152>>2];if(b){J[a+156>>2]=b;na(b)}b=J[a+112>>2];if(b){J[a+116>>2]=b;na(b)}b=J[a+96>>2];if(b){na(b)}b=J[a+84>>2];if(b){na(b)}b=J[a+72>>2];if(b){na(b)}b=J[a+60>>2];if(b){na(b)}J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}return a|0}function mh(a){a=a|0;var b=0;J[a>>2]=5076;b=J[a+152>>2];if(b){J[a+156>>2]=b;na(b)}b=J[a+112>>2];if(b){J[a+116>>2]=b;na(b)}b=J[a+96>>2];if(b){na(b)}b=J[a+84>>2];if(b){na(b)}b=J[a+72>>2];if(b){na(b)}b=J[a+60>>2];if(b){na(b)}J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}return a|0}function Bj(a){a=a|0;var b=0;J[a+8>>2]=11436;J[a>>2]=11224;b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+80>>2];if(b){J[a+84>>2]=b;na(b)}b=J[a+68>>2];if(b){J[a+72>>2]=b;na(b)}b=J[a+56>>2];if(b){J[a+60>>2]=b;na(b)}J[a+8>>2]=11672;b=J[a+44>>2];if(b){na(b)}b=J[a+32>>2];if(b){na(b)}na(a)}function Hh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=J[c+8>>2];e=J[c+16>>2];g=J[c+12>>2];f=g;d=J[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=K[J[c>>2]+e|0];i=e+1|0;f=i?d:d+1|0;J[c+16>>2]=i;J[c+20>>2]=f;J[a+4>>2]=b}return e>>>0<h>>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function pb(a,b,c){var d=0;if(!c){return J[a+4>>2]==J[b+4>>2]}if((a|0)==(b|0)){return 1}d=J[a+4>>2];a=K[d|0];c=J[b+4>>2];b=K[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=K[c+1|0];a=K[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Cb(a){var b=0,c=0;c=J[a+8>>2];if((c|0)>=2){b=+(c|0);b=W(b*va(b)-O[a>>3]);if(R(b)<0x8000000000000000){ca=R(b)>=1?~~(b>0?T(V(b*2.3283064365386963e-10),4294967295):W((b-+(~~b>>>0>>>0))*2.3283064365386963e-10))>>>0:0;return~~b>>>0}a=-2147483648}else{a=0}ca=a;return 0}function Dj(a){a=a|0;var b=0;J[a>>2]=11436;b=J[a+88>>2];if(b){J[a+92>>2]=b;na(b)}b=J[a+72>>2];if(b){J[a+76>>2]=b;na(b)}b=J[a+60>>2];if(b){J[a- -64>>2]=b;na(b)}b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=11672;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}return a|0}function Ob(a,b){var c=0,d=0,e=0;J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;a:{c=J[b+4>>2];d=J[b>>2];b:{if((c|0)==(d|0)){a=c;break b}c=c-d|0;if((c|0)<0){break a}d=c;e=oa(c);c=pa(e,0,c);d=d+c|0;J[a+8>>2]=d;J[a+4>>2]=d;J[a>>2]=c;c=J[b>>2];a=J[b+4>>2]}ua(e,c,a-c|0);return}qa();B()}function yj(a){a=a|0;var b=0;J[a>>2]=11436;b=J[a+88>>2];if(b){J[a+92>>2]=b;na(b)}b=J[a+72>>2];if(b){J[a+76>>2]=b;na(b)}b=J[a+60>>2];if(b){J[a- -64>>2]=b;na(b)}b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=11672;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}na(a)}function vi(a){a=a|0;var b=0,c=0;b=oa(8);J[b+4>>2]=a;J[b>>2]=0;a:{b:{c:{if(!a){break c}c=bd(a,15016,14936);if(!c){break c}c=Ng(oa(56),c);a=J[b>>2];J[b>>2]=c;if(a){break b}break a}c=Og(oa(56),a);a=J[b>>2];J[b>>2]=c;if(!a){break a}}da[J[J[a>>2]+4>>2]](a)}return b|0}function ik(a){a=a|0;var b=0;J[a+40>>2]=2032;J[a>>2]=9988;b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=2624;b=J[a+36>>2];J[a+36>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}J[a>>2]=2392;b=J[a+32>>2];J[a+32>>2]=0;if(b){Ka(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}return a|0}function ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ba-96|0;ba=e;f=Og(e+40|0,c);$g(e,b,c);Mg(f,e);Da(e+24|0,J[e+28>>2]);nb(e+12|0,J[e+16>>2]);Da(e,J[e+4>>2]);fe(a,f,d);J[f>>2]=10256;Da(f+28|0,J[f+32>>2]);nb(f+16|0,J[f+20>>2]);Da(f+4|0,J[f+8>>2]);ba=e+96|0}function qc(a){var b=0;if(a){b=J[a+76>>2];if(b){J[a+80>>2]=b;na(b)}b=J[a- -64>>2];if(b){J[a+68>>2]=b;na(b)}b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}b=J[a+24>>2];if(b){J[a+28>>2]=b;na(b)}b=J[a+12>>2];if(b){J[a+16>>2]=b;na(b)}b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}na(a)}}function Ke(a,b,c){var d=0,e=0,f=0,g=0;f=ba-16|0;ba=f;d=ba-16|0;ba=d;b=b-a>>2;while(1){if(b){J[d+12>>2]=a;e=b>>>1|0;J[d+12>>2]=J[d+12>>2]+(e<<2);g=(e^-1)+b|0;b=e;e=M[J[d+12>>2]>>2]<M[c>>2];b=e?g:b;a=e?J[d+12>>2]+4|0:a;continue}break}ba=d+16|0;ba=f+16|0;return a}function pc(a){var b=0;b=J[a+84>>2];if(b){J[a+88>>2]=b;na(b)}b=J[a+72>>2];if(b){J[a+76>>2]=b;na(b)}b=J[a+52>>2];if(b){J[a+56>>2]=b;na(b)}b=J[a+40>>2];if(b){J[a+44>>2]=b;na(b)}b=J[a+28>>2];if(b){J[a+32>>2]=b;na(b)}b=J[a+12>>2];if(b){na(b)}a=J[a>>2];if(a){na(a)}}function Lb(a,b){var c=0,d=0,e=0,f=0;c=ba-16|0;ba=c;a:{if(!b){b=0;break a}d=b;b=S(b);Pa(c,d,0,0,0,b+81|0);d=0+J[c+8>>2]|0;b=(J[c+12>>2]^65536)+(16414-b<<16)|0;f=e>>>0>d>>>0?b+1|0:b;e=J[c+4>>2];b=J[c>>2]}J[a>>2]=b;J[a+4>>2]=e;J[a+8>>2]=d;J[a+12>>2]=f;ba=c+16|0}function hk(a){a=a|0;var b=0;J[a+40>>2]=2032;J[a>>2]=9988;b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=2624;b=J[a+36>>2];J[a+36>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}J[a>>2]=2392;b=J[a+32>>2];J[a+32>>2]=0;if(b){Ka(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}na(a)}function Mb(a,b,c){var d=0,e=0,f=0,g=0;if(b){while(1){c=c-1|0;e=a;a=Jl(a,b,10,0);d=ca;f=c,g=e-Hl(a,d,10,0)|48,H[f|0]=g;e=b>>>0>9;b=d;if(e){continue}break}}if(a){while(1){c=c-1|0;b=(a>>>0)/10|0;H[c|0]=a-P(b,10)|48;d=a>>>0>9;a=b;if(d){continue}break}}return c}function yl(a,b){a=a|0;b=b|0;var c=0,d=0;c=J[a+72>>2];a:{if(!c){break a}J[c+4>>2]=a+60;if(!(da[J[J[c>>2]+12>>2]](c)|0)){break a}if(!(da[J[J[a>>2]+40>>2]](a)|0)){break a}if(!(da[J[J[a>>2]+44>>2]](a,b)|0)){break a}d=da[J[J[a>>2]+48>>2]](a,b)|0}return d|0}function pg(a,b){a=a|0;b=b|0;var c=0,d=0;c=J[a+172>>2];a=J[a+176>>2];if((c|0)!=(a|0)){a=(a-c|0)/136|0;d=a>>>0<=1?1:a;a=0;while(1){if(J[P(a,136)+c>>2]==(b|0)){a=P(a,136)+c|0;return(K[a+100|0]?a+4|0:0)|0}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return 0}function jk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=ba-16|0;ba=e;d=a+40|0;c=Mc(d,J[a+8>>2],J[b+4>>2]-J[b>>2]>>2);d=je(d,J[a+8>>2],b,c);a:{if(d){b=J[a+32>>2];J[a+32>>2]=c;if(!b){break a}Ka(b);break a}J[e+8>>2]=0;if(!c){break a}Ka(c)}ba=e+16|0;return d|0}function Mk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=ba-16|0;ba=e;d=a+40|0;c=Mc(d,J[a+8>>2],J[b+4>>2]-J[b>>2]>>2);d=xg(d,J[a+8>>2],b,c);a:{if(d){b=J[a+32>>2];J[a+32>>2]=c;if(!b){break a}Ka(b);break a}J[e+8>>2]=0;if(!c){break a}Ka(c)}ba=e+16|0;return d|0}function rb(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!K[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=J[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}while(1){b=c;c=b+1|0;if(K[b|0]){continue}break}}return b-a|0}function Nd(a,b,c,d,e,f,g){var h=0;J[a>>2]=c;if(c){h=J[c+20>>2];J[a+8>>2]=J[c+16>>2];J[a+12>>2]=h;h=J[c+28>>2];J[a+16>>2]=J[c+24>>2];J[a+20>>2]=h}J[a+56>>2]=b;J[a+48>>2]=0;J[a+52>>2]=0;J[a+40>>2]=f;J[a+44>>2]=g;H[a+32|0]=0;J[a+28>>2]=e;H[a+24|0]=d}function Ve(a,b){var c=0,d=0,e=0;A(+a);d=v(1)|0;e=v(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=Ve(a*0x10000000000000000,b);c=J[b>>2]+-64|0}J[b>>2]=c;return a}J[b>>2]=c-1022;x(0,e|0);x(1,d&-2146435073|1071644672);a=+z()}return a}function wl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=J[a+36>>2];if((c|0)==J[a+40>>2]){return 1}f=a+60|0;while(1){c=J[(d<<2)+c>>2];e=da[J[J[c>>2]+20>>2]](c,f,b)|0;if(e){d=d+1|0;c=J[a+36>>2];if(d>>>0<J[a+40>>2]-c>>2>>>0){continue}}break}return e|0}function Pc(a,b){var c=0,d=0,e=0;c=rb(b);if(c>>>0<2147483632){a:{b:{if(c>>>0>=11){d=(c|15)+1|0;e=oa(d);J[a+8>>2]=d|-2147483648;J[a>>2]=e;J[a+4>>2]=c;d=c+e|0;break b}H[a+11|0]=c;d=a+c|0;e=a;if(!c){break a}}ta(e,b,c)}H[d|0]=0;return a}gb();B()}function ne(a){J[a+32>>2]=0;J[a+12>>2]=-1;J[a+4>>2]=0;J[a+8>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a>>2]=2392;H[a+21|0]=0;H[a+22|0]=0;H[a+23|0]=0;H[a+24|0]=0;H[a+25|0]=0;H[a+26|0]=0;H[a+27|0]=0;H[a+28|0]=0;J[a+36>>2]=0;J[a>>2]=2624;return a}function xl(a){a=a|0;var b=0,c=0,d=0,e=0;b=J[a+36>>2];if((b|0)==J[a+40>>2]){return 1}e=a+60|0;while(1){b=J[(c<<2)+b>>2];d=da[J[J[b>>2]+16>>2]](b,e)|0;if(d){c=c+1|0;b=J[a+36>>2];if(c>>>0<J[a+40>>2]-b>>2>>>0){continue}}break}return d|0}function vk(a){a=a|0;var b=0;J[a>>2]=8640;b=J[a+136>>2];if(b){J[a+140>>2]=b;na(b)}b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+80>>2];if(b){na(b)}b=J[a+68>>2];if(b){na(b)}b=J[a+56>>2];if(b){na(b)}b=J[a+44>>2];if(b){na(b)}return a|0}function Pf(a,b){a=a|0;b=b|0;var c=0,d=0;c=ba-16|0;ba=c;J[c+12>>2]=J[J[b+4>>2]+80>>2];b=J[b+44>>2];d=J[b+20>>2];if(!J[b+16>>2]&(d|0)<=0|(d|0)<0){sa(b,J[b+4>>2],c+12|0,c+16|0)}J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0;ba=c+16|0}function Hk(a){a=a|0;var b=0;J[a>>2]=6992;b=J[a+136>>2];if(b){J[a+140>>2]=b;na(b)}b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+80>>2];if(b){na(b)}b=J[a+68>>2];if(b){na(b)}b=J[a+56>>2];if(b){na(b)}b=J[a+44>>2];if(b){na(b)}return a|0}function Ka(a){a=a|0;var b=0,c=0;if(a){b=J[a+88>>2];J[a+88>>2]=0;if(b){c=J[b+8>>2];if(c){J[b+12>>2]=c;na(c)}na(b)}b=J[a+68>>2];if(b){J[a+72>>2]=b;na(b)}b=J[a+64>>2];J[a+64>>2]=0;if(b){c=J[b>>2];if(c){J[b+4>>2]=c;na(c)}na(b)}na(a)}}function Te(a){var b=0,c=0,d=0;if(H[J[a>>2]]-48>>>0>=10){return 0}while(1){d=J[a>>2];c=-1;if(b>>>0<=214748364){c=H[d|0]-48|0;b=P(b,10);c=(c|0)>(b^2147483647)?-1:c+b|0}J[a>>2]=d+1;b=c;if(H[d+1|0]-48>>>0<10){continue}break}return b}function vl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=J[a+36>>2];if((c|0)==J[a+40>>2]){return 1}while(1){c=J[(d<<2)+c>>2];e=da[J[J[c>>2]+24>>2]](c,b)|0;if(e){d=d+1|0;c=J[a+36>>2];if(d>>>0<J[a+40>>2]-c>>2>>>0){continue}}break}return e|0}function uk(a){a=a|0;var b=0;J[a>>2]=8640;b=J[a+136>>2];if(b){J[a+140>>2]=b;na(b)}b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+80>>2];if(b){na(b)}b=J[a+68>>2];if(b){na(b)}b=J[a+56>>2];if(b){na(b)}b=J[a+44>>2];if(b){na(b)}na(a)}function Gk(a){a=a|0;var b=0;J[a>>2]=6992;b=J[a+136>>2];if(b){J[a+140>>2]=b;na(b)}b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+80>>2];if(b){na(b)}b=J[a+68>>2];if(b){na(b)}b=J[a+56>>2];if(b){na(b)}b=J[a+44>>2];if(b){na(b)}na(a)}function cj(a){a=a|0;var b=0,c=0,d=0;b=J[a+32>>2];d=J[a+36>>2];if((b|0)==(d|0)){return 1}while(1){c=J[J[a+8>>2]+(J[b>>2]<<2)>>2];c=da[J[J[c>>2]+20>>2]](c,J[a+44>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function Il(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0<e>>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=Jl(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;ca=(g^ca)-((a>>>0<f>>>0)+g|0)|0;return b}function id(a,b,c){var d=0,e=0,f=0;e=ba-16|0;ba=e;d=J[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=J[a>>2];J[a+4>>2]=c;Ab(d,b,c);H[e+15|0]=0;H[c+d|0]=K[e+15|0];break a}f=a;a=J[a+4>>2];kd(f,d-1|0,(c-d|0)+1|0,a,0,a,c,b)}ba=e+16|0}function Ge(a,b){a=a|0;b=b|0;var c=0,d=0;c=ba-16|0;ba=c;a=J[a+4>>2];a:{if((a|0)==-1){break a}H[c+15|0]=a;d=J[b+20>>2];if(!!J[b+16>>2]&(d|0)>=0|(d|0)>0){break a}sa(b,J[b+4>>2],c+15|0,c+16|0)}ba=c+16|0;return(a|0)!=-1|0}
function hd(a,b,c){var d=0,e=0;d=ba-16|0;ba=d;a:{if(c>>>0<=10){H[a+11|0]=K[a+11|0]&128|c;H[a+11|0]=K[a+11|0]&127;Ab(a,b,c);H[d+15|0]=0;H[a+c|0]=K[d+15|0];break a}e=a;a=K[a+11|0]&127;kd(e,10,c-10|0,a,0,a,c,b)}ba=d+16|0}function Hl(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=P(e,f);g=c&65535;h=a&65535;i=P(g,h);f=(i>>>16|0)+P(f,g)|0;e=(f&65535)+P(e,h)|0;ca=(P(b,c)+j|0)+P(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function He(a,b,c){var d=0;d=J[a+16>>2];if(!d){J[a+36>>2]=1;J[a+24>>2]=c;J[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(J[a+24>>2]!=2){break a}J[a+24>>2]=c;return}H[a+54|0]=1;J[a+24>>2]=2;J[a+36>>2]=J[a+36>>2]+1}}function zk(a,b){a=a|0;b=b|0;var c=0,d=0;J[b>>2]=2;c=J[b+8>>2];d=J[b+12>>2]-c|0;if(d>>>0<=4294967291){Gc(b+8|0,d+4|0);c=J[b+8>>2]}b=c+d|0;a=J[a+4>>2];H[b|0]=a;H[b+1|0]=a>>>8;H[b+2|0]=a>>>16;H[b+3|0]=a>>>24}function Qa(a,b,c,d,e){var f=0;f=ba-256|0;ba=f;if(!(e&73728|(c|0)<=(d|0))){d=c-d|0;c=d>>>0<256;pa(f,b&255,c?d:256);if(!c){while(1){Oa(a,f,256);d=d-256|0;if(d>>>0>255){continue}break}}Oa(a,f,d)}ba=f+256|0}function Dd(a,b){var c=0,d=Q(0),e=0;b=ob(a,b);if((b|0)!=(a+4|0)){a=ba-16|0;ba=a;c=b+28|0;Xe(a,H[b+39|0]<0?J[c>>2]:c,0,1);e=Le(J[a>>2],J[a+4>>2],J[a+8>>2],J[a+12>>2]);ba=a+16|0;d=Q(e)}else{d=Q(1)}return d}function ol(a,b){a=a|0;b=b|0;var c=0,d=0;d=J[a+16>>2];c=0;a:{if(J[a+20>>2]-d>>2<=(b|0)){break a}b=J[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=J[J[a+36>>2]+(b<<2)>>2];b=J[a+32>>2];c=b?b:J[a+8>>2]}return c|0}function rl(a,b){a=a|0;b=b|0;var c=0,d=0;d=J[a+16>>2];c=0;a:{if(J[a+20>>2]-d>>2<=(b|0)){break a}b=J[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=J[J[a+36>>2]+(b<<2)>>2];c=J[a+20>>2]-J[a+16>>2]>>2}return c|0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=-1;e=J[a+16>>2];a:{if(J[a+20>>2]-e>>2<=(b|0)){break a}b=J[(b<<2)+e>>2];if((b|0)<0){break a}d=J[J[J[J[a+36>>2]+(b<<2)>>2]+16>>2]+(c<<2)>>2]}return d|0}function yh(a){a=a|0;var b=0;J[a>>2]=2624;b=J[a+36>>2];J[a+36>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}J[a>>2]=2392;b=J[a+32>>2];J[a+32>>2]=0;if(b){Ka(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}return a|0}function wa(a){var b=0,c=0;c=ba-16|0;ba=c;J[c+8>>2]=0;J[c+12>>2]=0;ie(a,c+8|0);J[a+24>>2]=0;J[a+28>>2]=0;b=J[a+12>>2];J[a+16>>2]=b;if(b){na(b)}b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}ba=c+16|0;return a}function Jc(a){a=Lc(a);J[a+64>>2]=0;J[a+68>>2]=0;J[a+88>>2]=0;J[a+72>>2]=0;J[a+76>>2]=0;H[a+77|0]=0;H[a+78|0]=0;H[a+79|0]=0;H[a+80|0]=0;H[a+81|0]=0;H[a+82|0]=0;H[a+83|0]=0;H[a+84|0]=0;return a}function xh(a){a=a|0;var b=0;J[a>>2]=2624;b=J[a+36>>2];J[a+36>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}J[a>>2]=2392;b=J[a+32>>2];J[a+32>>2]=0;if(b){Ka(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}na(a)}function nc(a){J[a+52>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a>>2]=12468;J[a+12>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;J[a+32>>2]=0;J[a+36>>2]=0;J[a+40>>2]=0;J[a+44>>2]=0;return a}function We(a){var b=0;b=J[a+72>>2];J[a+72>>2]=b-1|b;b=J[a>>2];if(b&8){J[a>>2]=b|32;return-1}J[a+4>>2]=0;J[a+8>>2]=0;b=J[a+44>>2];J[a+28>>2]=b;J[a+20>>2]=b;J[a+16>>2]=b+J[a+48>>2];return 0}function Lc(a){J[a+8>>2]=0;J[a+12>>2]=0;J[a>>2]=0;J[a+40>>2]=0;J[a+44>>2]=0;J[a+28>>2]=9;H[a+24|0]=1;J[a+56>>2]=-1;J[a+60>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+48>>2]=0;J[a+52>>2]=0;return a}function od(a,b,c,d,e,f,g,h,i){var j=0;j=ba-16|0;ba=j;_a(j,b,c,d,e,f,g,h,i^-2147483648);d=J[j>>2];c=J[j+4>>2];b=J[j+12>>2];J[a+8>>2]=J[j+8>>2];J[a+12>>2]=b;J[a>>2]=d;J[a+4>>2]=c;ba=j+16|0}function yd(a,b,c){a=a|0;b=b|0;c=c|0;a=0;a:{if(J[b+4>>2]|!b){break a}a=sd(oa(36),c);J[a+24>>2]=0;J[a+28>>2]=0;J[a+32>>2]=0;c=J[b+4>>2];J[b+4>>2]=a;a=1;if(!c){break a}pf(c)}return a|0}function pe(a,b,c){a=bf(a,c);J[a+36>>2]=0;J[a+40>>2]=0;J[a>>2]=2496;J[a+72>>2]=b;J[a+44>>2]=0;J[a+48>>2]=0;J[a+52>>2]=0;J[a+56>>2]=0;J[a+60>>2]=0;J[a+64>>2]=0;J[a+68>>2]=0;return a}function di(a,b){a=a|0;b=b|0;var c=0,d=0;ef(a,b);a:{if((b|0)<0){break a}d=J[a+88>>2];c=J[a+84>>2];if(d-c>>2<=(b|0)){break a}c=(b<<2)+c|0;b=c+4|0;ta(c,b,d-b|0);J[a+88>>2]=d-4}}function xf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=0;a:{if(!b|(c|0)<0){break a}e=J[b+12>>2];b=J[b+8>>2];if(e-b>>2<=(c|0)){break a}H[J[b+(c<<2)>>2]+32|0]=d;a=1}return a|0}function uj(a){a=a|0;var b=0;J[a+8>>2]=11856;J[a>>2]=11692;b=J[a+56>>2];if(b){J[a+60>>2]=b;na(b)}J[a+8>>2]=11672;b=J[a+44>>2];if(b){na(b)}b=J[a+32>>2];if(b){na(b)}return a|0}function pj(a){a=a|0;var b=0;J[a+8>>2]=10876;J[a>>2]=11984;b=J[a+56>>2];if(b){J[a+60>>2]=b;na(b)}J[a+8>>2]=11128;b=J[a+44>>2];if(b){na(b)}b=J[a+32>>2];if(b){na(b)}return a|0}function Kb(a){var b=0,c=0;b=J[4773];c=a+7&-8;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ea()<<16>>>0){if(!($(a|0)|0)){break a}}J[4773]=a;return b}J[4804]=48;return-1}function tj(a){a=a|0;var b=0;J[a+8>>2]=11856;J[a>>2]=11692;b=J[a+56>>2];if(b){J[a+60>>2]=b;na(b)}J[a+8>>2]=11672;b=J[a+44>>2];if(b){na(b)}b=J[a+32>>2];if(b){na(b)}na(a)}function oj(a){a=a|0;var b=0;J[a+8>>2]=10876;J[a>>2]=11984;b=J[a+56>>2];if(b){J[a+60>>2]=b;na(b)}J[a+8>>2]=11128;b=J[a+44>>2];if(b){na(b)}b=J[a+32>>2];if(b){na(b)}na(a)}function lb(a,b){if(b){lb(a,J[b>>2]);lb(a,J[b+4>>2]);a=J[b+28>>2];J[b+28>>2]=0;if(a){lb(a+12|0,J[a+16>>2]);kb(a,J[a+4>>2]);na(a)}if(H[b+27|0]<0){na(J[b+16>>2])}na(b)}}function Ie(a,b){var c=0,d=0,e=0,f=0;J[a>>2]=18812;J[a>>2]=18924;c=rb(b);d=oa(c+13|0);J[d+8>>2]=0;J[d+4>>2]=c;J[d>>2]=c;e=a,f=ua(d+12|0,b,c+1|0),J[e+4>>2]=f;return a}function Nh(a,b){a=a|0;b=b|0;var c=0;a:{if(!(da[J[J[a>>2]+40>>2]](a)|0)){break a}if(!(da[J[J[a>>2]+44>>2]](a,b)|0)){break a}c=da[J[J[a>>2]+48>>2]](a,b)|0}return c|0}function Xj(a){a=a|0;var b=0;a:{b=J[a+64>>2];if(!b){break a}b=da[J[J[b>>2]+32>>2]](b)|0;if(!b){break a}J[a+60>>2]=((J[b+4>>2]-J[b>>2]>>2>>>0)/3|0)-J[b+40>>2]}}function Fl(a,b){a=a|0;b=b|0;var c=0;b=J[b+88>>2];if(!(!b|J[b>>2]!=2)){c=a;a=J[b+8>>2];J[c+4>>2]=K[a|0]|K[a+1|0]<<8|(K[a+2|0]<<16|K[a+3|0]<<24);c=1}return c|0}function vj(a){a=a|0;var b=0;J[a>>2]=11856;b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=11672;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}return a|0}function Oj(a){a=a|0;var b=0;J[a>>2]=10876;b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=11128;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}return a|0}function Lf(a,b){var c=0;a:{c=a+4|0;a=ob(a,b);if((c|0)==(a|0)){break a}b=a+28|0;a=Bc(H[a+39|0]<0?J[b>>2]:b);if((a|0)==-1){break a}return(a|0)!=0}return 0}function Pb(a,b,c){var d=0;d=a+4|0;a=ob(a,b);a:{if((d|0)==(a|0)){break a}b=a+28|0;a=Bc(H[a+39|0]<0?J[b>>2]:b);if((a|0)==-1){break a}c=(a|0)!=0}return c}function qj(a){a=a|0;var b=0;J[a>>2]=11856;b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=11672;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}na(a)}function Hj(a){a=a|0;var b=0;J[a>>2]=10876;b=J[a+48>>2];if(b){J[a+52>>2]=b;na(b)}J[a>>2]=11128;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}na(a)}function bf(a,b){J[a+4>>2]=0;J[a+8>>2]=0;J[a>>2]=2188;J[a+12>>2]=0;J[a+16>>2]=0;J[a+20>>2]=0;J[a+24>>2]=0;J[a+28>>2]=0;J[a+32>>2]=0;kc(a,b);return a}function Sh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(pb(a,J[b+8>>2],f)){Fe(b,c,d,e);return}a=J[a+8>>2];da[J[J[a>>2]+20>>2]](a,b,c,d,e,f)}function ph(a){a=a|0;var b=0;a:{if(!J[a- -64>>2]|!J[a+68>>2]|(!J[a+44>>2]|!J[a+48>>2])){break a}if(!J[a+52>>2]){break a}b=J[a+56>>2]!=0}return b|0}function fh(a){a=a|0;var b=0;a:{if(!J[a+48>>2]|!J[a+52>>2]|(!J[a+28>>2]|!J[a+32>>2])){break a}if(!J[a+36>>2]){break a}b=J[a+40>>2]!=0}return b|0}function rd(a){var b=0,c=0;b=J[a+20>>2];a:{if((J[a+24>>2]-b|0)<=0){break a}b=J[b>>2];if((b|0)==-1){break a}c=J[J[a+8>>2]+(b<<2)>>2]}return c}function Ti(){var a=0;a=gf(oa(108));J[a+84>>2]=0;J[a+88>>2]=0;J[a>>2]=14892;J[a+92>>2]=0;J[a+96>>2]=0;J[a+100>>2]=0;J[a+104>>2]=0;return a|0}function Nb(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=P(b,12)+a|0;a=J[b+20>>2];if((J[b+24>>2]-a|0)<=0){break a}c=J[a>>2]}return c}function Qe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b;b=J[b>>2]+7&-8;J[c>>2]=b+16;d=a,e=Le(J[b>>2],J[b+4>>2],J[b+8>>2],J[b+12>>2]),O[d>>3]=e}function gi(a){a=a|0;var b=0;J[a>>2]=14892;b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+84>>2];if(b){J[a+88>>2]=b;na(b)}return Ec(a)|0}function za(a){var b=0;b=ba-16|0;ba=b;J[b+8>>2]=0;J[b+12>>2]=0;ie(a,b+8|0);J[a+24>>2]=0;J[a+28>>2]=0;J[a+16>>2]=J[a+12>>2];ba=b+16|0}function fi(a){a=a|0;var b=0;J[a>>2]=14892;b=J[a+96>>2];if(b){J[a+100>>2]=b;na(b)}b=J[a+84>>2];if(b){J[a+88>>2]=b;na(b)}na(Ec(a))}function kb(a,b){if(b){kb(a,J[b>>2]);kb(a,J[b+4>>2]);a=J[b+28>>2];if(a){J[b+32>>2]=a;na(a)}if(H[b+27|0]<0){na(J[b+16>>2])}na(b)}}function dl(a){a=a|0;var b=0;J[a>>2]=3760;b=J[a+76>>2];if(b){na(b)}J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}return a|0}function Vk(a){a=a|0;var b=0;J[a>>2]=5312;b=J[a+76>>2];if(b){na(b)}J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}return a|0}function Cl(a){a=a|0;var b=0;J[a>>2]=2392;b=J[a+32>>2];J[a+32>>2]=0;if(b){Ka(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}return a|0}function Zh(a){a=a|0;var b=0;J[a>>2]=2188;b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}b=J[a+4>>2];if(b){J[a+8>>2]=b;na(b)}return a|0}function Vh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(pb(a,J[b+8>>2],0)){He(b,c,d);return}a=J[a+8>>2];da[J[J[a>>2]+28>>2]](a,b,c,d)}function Qi(){var a=0,b=0;a=oa(24);J[a+4>>2]=0;J[a+8>>2]=0;b=a+16|0;J[b>>2]=0;J[b+4>>2]=0;J[a>>2]=a+4;J[a+12>>2]=b;return a|0}function cl(a){a=a|0;var b=0;J[a>>2]=3760;b=J[a+76>>2];if(b){na(b)}J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}na(a)}function Uk(a){a=a|0;var b=0;J[a>>2]=5312;b=J[a+76>>2];if(b){na(b)}J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}na(a)}function Bl(a){a=a|0;var b=0;J[a>>2]=2392;b=J[a+32>>2];J[a+32>>2]=0;if(b){Ka(b)}b=J[a+16>>2];if(b){J[a+20>>2]=b;na(b)}na(a)}function oa(a){var b=0;a=a?a:1;a:{while(1){b=nd(a);if(b){break a}b=J[4973];if(b){da[b|0]();continue}break}Z();B()}return b}function Da(a,b){if(b){Da(a,J[b>>2]);Da(a,J[b+4>>2]);if(H[b+39|0]<0){na(J[b+28>>2])}if(H[b+27|0]<0){na(J[b+16>>2])}na(b)}}function Ee(a){a=a|0;var b=0,c=0;J[a>>2]=18924;b=J[a+4>>2]-12|0;c=J[b+8>>2]-1|0;J[b+8>>2]=c;if((c|0)<0){na(b)}return a|0}function ch(a,b,c,d,e){var f=0;f=b-1|0;if(f>>>0<=29){J[a+4>>2]=b;tc(a+8|0,c,(d<<2)+c|0);N[a+20>>2]=e}return f>>>0<30}function al(a){a=a|0;var b=0;J[a>>2]=3996;wa(a+112|0);J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}return a|0}function Sk(a){a=a|0;var b=0;J[a>>2]=5536;wa(a+112|0);J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}return a|0}function Og(a,b){J[a>>2]=10256;he(a+4|0);J[a+52>>2]=0;J[a+48>>2]=b;J[a>>2]=10352;J[a+40>>2]=0;J[a+44>>2]=0;return a}function Ng(a,b){J[a>>2]=10256;he(a+4|0);J[a+52>>2]=b;J[a+48>>2]=b;J[a>>2]=10352;J[a+40>>2]=0;J[a+44>>2]=0;return a}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;J[a+4>>2]=b;b=J[J[J[b+4>>2]+8>>2]+(c<<2)>>2];J[a+12>>2]=c;J[a+8>>2]=b;return 1}function $e(a,b,c,d,e,f,g,h,i){J[a>>2]=b;J[a+4>>2]=c;J[a+8>>2]=d;J[a+12>>2]=e&65535|(i>>>16&32768|e>>>16&32767)<<16}function th(a){a=a|0;var b=0;if(!(!J[a+60>>2]|!J[a+44>>2]|(!J[a+48>>2]|!J[a+52>>2]))){b=J[a+56>>2]!=0}return b|0}function ih(a){a=a|0;var b=0;if(!(!J[a+44>>2]|!J[a+28>>2]|(!J[a+32>>2]|!J[a+36>>2]))){b=J[a+40>>2]!=0}return b|0}function wi(a){a=a|0;if(a){J[a>>2]=10332;Da(a+28|0,J[a+32>>2]);sc(a+16|0,J[a+20>>2]);Da(a+4|0,J[a+8>>2]);na(a)}}function Rk(a){a=a|0;var b=0;J[a>>2]=5536;wa(a+112|0);J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}na(a)}function Mf(a,b){var c=0;c=a+4|0;a=ob(a,b);if((c|0)==(a|0)){return-1}b=a+28|0;return Bc(H[a+39|0]<0?J[b>>2]:b)}function Eb(a,b){var c=0,d=0;if(!(!a|!b|(a|0)==(b|0))){c=+(b>>>0)/+(a>>>0);d=1-c;c=-(c*va(c)+d*va(d))}return c}function $k(a){a=a|0;var b=0;J[a>>2]=3996;wa(a+112|0);J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}na(a)}function gk(a){a=a|0;J[a>>2]=10256;Da(a+28|0,J[a+32>>2]);nb(a+16|0,J[a+20>>2]);Da(a+4|0,J[a+8>>2]);return a|0}function fk(a){a=a|0;J[a>>2]=10332;Da(a+28|0,J[a+32>>2]);sc(a+16|0,J[a+20>>2]);Da(a+4|0,J[a+8>>2]);return a|0}function Bb(a,b,c){var d=0;d=a+4|0;a=ob(a,b);if((d|0)!=(a|0)){b=a+28|0;c=Bc(H[a+39|0]<0?J[b>>2]:b)}return c}function ld(a,b){if(K[a+11|0]>>>7|0){J[a+4>>2]=b;return}H[a+11|0]=K[a+11|0]&128|b;H[a+11|0]=K[a+11|0]&127}function Fi(){var a=0;a=oa(48);J[a>>2]=10332;he(a+4|0);J[a>>2]=10116;J[a+40>>2]=0;J[a+44>>2]=0;return a|0}function Sg(a){a=a|0;J[a>>2]=10332;Da(a+28|0,J[a+32>>2]);sc(a+16|0,J[a+20>>2]);Da(a+4|0,J[a+8>>2]);na(a)}function Rg(a){a=a|0;J[a>>2]=10256;Da(a+28|0,J[a+32>>2]);nb(a+16|0,J[a+20>>2]);Da(a+4|0,J[a+8>>2]);na(a)}function xj(a){a=a|0;var b=0;J[a>>2]=11672;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}return a|0}function Gj(a){a=a|0;var b=0;J[a>>2]=11128;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}return a|0}function qd(a,b){da[J[J[a>>2]+8>>2]](a,J[a+12>>2]-J[a+8>>2]>>2,b);return(J[a+12>>2]-J[a+8>>2]>>2)-1|0}function Yc(a){a=a|0;var b=0;if(!(!J[a+52>>2]|(!J[a+44>>2]|!J[a+48>>2]))){b=J[a+56>>2]!=0}return b|0}function Qc(a){a=a|0;var b=0;if(!(!J[a+36>>2]|(!J[a+28>>2]|!J[a+32>>2]))){b=J[a+40>>2]!=0}return b|0}function wj(a){a=a|0;var b=0;J[a>>2]=11672;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}na(a)}function Fj(a){a=a|0;var b=0;J[a>>2]=11128;b=J[a+36>>2];if(b){na(b)}b=J[a+24>>2];if(b){na(b)}na(a)}function oh(a,b){a=a|0;b=b|0;var c=0;if(!(J[b+56>>2]|K[b+24|0]!=3)){J[a- -64>>2]=b;c=1}return c|0}function sh(a,b){a=a|0;b=b|0;var c=0;if(!(J[b+56>>2]|K[b+24|0]!=3)){J[a+60>>2]=b;c=1}return c|0}function hh(a,b){a=a|0;b=b|0;var c=0;if(!(J[b+56>>2]|K[b+24|0]!=3)){J[a+44>>2]=b;c=1}return c|0}function eh(a,b){a=a|0;b=b|0;var c=0;if(!(J[b+56>>2]|K[b+24|0]!=3)){J[a+48>>2]=b;c=1}return c|0}function Rh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(pb(a,J[b+8>>2],f)){Fe(b,c,d,e)}}function xa(){var a=0;a=cd(4);J[a>>2]=18812;J[a>>2]=18772;J[a>>2]=18792;_(a|0,18904,14);B()}function mi(a){a=a|0;var b=0;if(a){b=J[a>>2];J[a>>2]=0;if(b){da[J[J[b>>2]+4>>2]](b)}na(a)}}function il(a){a=a|0;var b=0;J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}return a|0}function dk(a){a=a|0;var b=0;J[a>>2]=2032;b=J[a+8>>2];if(b){J[a+12>>2]=b;na(b)}return a|0}function tb(a){var b=0;J[a+12>>2]=0;J[a+16>>2]=0;b=a;a=J[a>>2];J[b+4>>2]=a;if(a){na(a)}}function hj(a){a=a|0;var b=0;b=a;a=J[a+56>>2];J[b+60>>2]=(J[a+100>>2]-J[a+96>>2]|0)/12}function zf(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 ud(b,c,d,e,f,6)|0}function zd(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 ud(b,c,d,e,f,5)|0}function le(a){a=a|0;var b=0;J[a>>2]=3456;b=J[a+32>>2];if(b){J[a+36>>2]=b;na(b)}na(a)}function Df(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 sf(b,c,d,e,f,1)|0}function Cf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return sf(b,c,d,e,f,2)|0}function Bf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return rf(b,c,d,e,f,3)|0}function Af(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 rf(b,c,d,e,f,4)|0}function Ad(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 ud(b,c,d,e,f,9)|0}function ck(a){a=a|0;var b=0;J[a>>2]=2032;b=J[a+8>>2];if(b){J[a+12>>2]=b;na(b)}na(a)}function si(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=Q(f);Vg(J[a>>2],b,c,d,e,f)}function sc(a,b){if(b){sc(a,J[b>>2]);sc(a,J[b+4>>2]);Da(b+20|0,J[b+24>>2]);na(b)}}function nb(a,b){if(b){nb(a,J[b>>2]);nb(a,J[b+4>>2]);Da(b+20|0,J[b+24>>2]);na(b)}}function Zj(a,b){a=a|0;b=b|0;var c=0;c=a;a=J[b+64>>2];da[J[J[a>>2]+28>>2]](c,a)}function Ek(a){a=a|0;var b=0;J[a>>2]=7264;b=J[a+60>>2];if(b){na(b)}return a|0}
function sk(a){a=a|0;var b=0;J[a>>2]=8900;b=J[a+60>>2];if(b){na(b)}return a|0}function Wh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(pb(a,J[b+8>>2],0)){He(b,c,d)}}function Kl(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function Ci(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=Q(f);Vg(a,b,c,d,e,f)}function fd(a,b){var c=0;c=a;a=(b>>>0)/100|0;return Fb(Fb(c,a),b-P(a,100)|0)}function ed(a,b){var c=0;c=a;a=(b>>>0)/1e4|0;return fd(Fb(c,a),b-P(a,1e4)|0)}function dd(a,b){var c=0;c=a;a=(b>>>0)/1e6|0;return ed(Fb(c,a),b-P(a,1e6)|0)}function _j(a,b){a=a|0;b=b|0;a=J[a+64>>2];return da[J[J[a>>2]+24>>2]](a,b)|0}function Tj(a,b){a=a|0;b=b|0;a=J[a+64>>2];return da[J[J[a>>2]+12>>2]](a,b)|0}function Sj(a,b){a=a|0;b=b|0;a=J[a+64>>2];return da[J[J[a>>2]+16>>2]](a,b)|0}function $j(a,b){a=a|0;b=b|0;a=J[a+64>>2];return da[J[J[a>>2]+20>>2]](a,b)|0}function $f(a,b){a=a|0;b=b|0;return J[J[a+28>>2]+(b>>>3&536870908)>>2]>>>b&1}function bj(a,b){a=a|0;b=b|0;J[a>>2]=0;J[a+4>>2]=0;J[a+8>>2]=0;J[a+12>>2]=0}function Oi(){var a=0;a=oa(12);J[a+8>>2]=0;J[a>>2]=0;J[a+4>>2]=0;return a|0}function Ll(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<<b|(-1<<a&-2)>>>a}
function Li(a){a=a|0;var b=0;if(a){b=J[a>>2];if(b){J[a+4>>2]=b;na(b)}na(a)}}function Dh(a,b,c){a=a|0;b=b|0;c=c|0;return da[J[J[a>>2]+44>>2]](a,b,c)|0}function rk(a){a=a|0;var b=0;J[a>>2]=8900;b=J[a+60>>2];if(b){na(b)}na(a)}function Dk(a){a=a|0;var b=0;J[a>>2]=7264;b=J[a+60>>2];if(b){na(b)}na(a)}function ra(){var a=0;a=Ie(cd(8),1313);J[a>>2]=19024;_(a|0,19056,1);B()}function gj(a,b){a=a|0;b=b|0;H[b+84|0]=1;J[b+72>>2]=J[b+68>>2];return 1}function Tf(a){a=nc(a);J[a+56>>2]=0;J[a+60>>2]=0;J[a>>2]=12164;return a}function Sc(a,b){a=a|0;b=b|0;if(b>>>0<=1){J[a+28>>2]=b}return b>>>0<2|0}function Pi(a){a=a|0;if(a){lb(a+12|0,J[a+16>>2]);kb(a,J[a+4>>2]);na(a)}}function $h(a,b,c){a=a|0;b=b|0;c=c|0;J[a+32>>2]=c;J[a+28>>2]=b;return 1}function Qh(a){a=a|0;if(!a){return 0}return(bd(a,18476,18620)|0)!=0|0}function Uj(a){a=a|0;a=J[a+64>>2];return da[J[J[a>>2]+32>>2]](a)|0}function Eh(a,b){a=a|0;b=b|0;J[a+12>>2]=-1;J[a+8>>2]=b;return 1}function ke(a){a=Ie(cd(8),a);J[a>>2]=18972;_(a|0,19004,1);B()}function Si(a){a=a|0;return(J[a+100>>2]-J[a+96>>2]|0)/12|0}function pk(a){a=a|0;J[a>>2]=9148;wa(a+96|0);return a|0}function Bk(a){a=a|0;J[a>>2]=7524;wa(a+96|0);return a|0}function Ac(a,b){var c=0;c=oa(b);J[a+4>>2]=b;J[a>>2]=c}function ti(a,b,c){a=a|0;b=b|0;c=c|0;Xg(J[a>>2],b,c)}function ri(a,b,c){a=a|0;b=b|0;c=c|0;Yg(J[a>>2],b,c)}function gf(a){J[a>>2]=14964;pa(a+4|0,0,80);return a}function ij(a){a=a|0;J[a+52>>2]=J[J[a+56>>2]+80>>2]}function Hf(a){a=a|0;return J[a+12>>2]-J[a+8>>2]>>2}function Gl(a){if(a){return 31-S(a-1^a)|0}return 32}function ok(a){a=a|0;J[a>>2]=9148;wa(a+96|0);na(a)}function kk(a,b){a=a|0;b=b|0;return Ug(a+40|0,b)|0}function Of(a){a=a|0;J[a+52>>2]=J[J[a+4>>2]+80>>2]}function Nk(a,b){a=a|0;b=b|0;return Ge(a+40|0,b)|0}function Ni(a,b){a=a|0;b=b|0;return H[J[a>>2]+b|0]}function Gf(a){a=a|0;if(a){da[J[J[a>>2]+4>>2]](a)}}function Ak(a){a=a|0;J[a>>2]=7524;wa(a+96|0);na(a)}function Mi(a){a=a|0;return J[a+4>>2]-J[a>>2]|0}function Fb(a,b){return Je((b<<1)+18240|0,2,a)}function Di(a,b,c){a=a|0;b=b|0;c=c|0;Xg(a,b,c)}function Bi(a,b,c){a=a|0;b=b|0;c=c|0;Yg(a,b,c)}function bk(a,b){a=a|0;b=b|0;return K[b+24|0]}function Lh(a,b,c){a=a|0;b=b|0;c=c|0;return-1}function oi(a){a=a|0;return J[J[a>>2]+40>>2]}function ni(a){a=a|0;return J[J[a>>2]+44>>2]}function ui(a,b){a=a|0;b=b|0;Tg(J[a>>2],b)}function qi(a,b){a=a|0;b=b|0;nf(J[a>>2],b)}function Ri(a,b){a=a|0;b=b|0;J[a+80>>2]=b}function xi(a){a=a|0;return J[a+44>>2]}function uc(a){a=a|0;return J[a+28>>2]}function ag(a){a=a|0;return J[a+12>>2]}function Zi(a){a=a|0;return J[a+56>>2]}function Wi(a){a=a|0;return J[a+48>>2]}function Vi(a){a=a|0;return J[a+60>>2]}function Jf(a){a=a|0;return J[a+40>>2]}function Cd(a){a=a|0;return J[a+80>>2]}function Bh(){J[4843]=19252;J[4825]=42}function zh(a,b){a=a|0;b=b|0;return 6}function zc(a,b){a=a|0;b=b|0;return 1}function wh(a,b){a=a|0;b=b|0;return-1}function vc(a){a=a|0;return J[a+4>>2]}function jl(a,b){a=a|0;b=b|0;return 2}function cd(a){return nd(a+80|0)+80|0}function Za(a,b){a=a|0;b=b|0;return 0}function Yi(a){a=a|0;return H[a+24|0]}function Xi(a){a=a|0;return K[a+32|0]}function Ei(a,b){a=a|0;b=b|0;Tg(a,b)}function Ai(a,b){a=a|0;b=b|0;nf(a,b)}function Nc(a,b,c,d){Kg(a,b,c,d,1)}function Db(a,b,c,d){Kg(a,b,c,d,0)}function lc(a){a=a|0;if(a){na(a)}}function _i(){return Jc(oa(96))|0}function Ui(){return gf(oa(84))|0}function $i(){return Lc(oa(64))|0}function ad(a){a=a|0;Ee(a);na(a)}function Ph(a){a=a|0;return 1364}function Oh(a){a=a|0;return 1622}function Mh(a){a=a|0;return 1472}function ub(a){a=a|0;return a|0}function sl(a){a=a|0;na(Ah(a))}function fl(a){a=a|0;na(vh(a))}function ai(a){a=a|0;na(Ec(a))}function Xk(a){a=a|0;na(mh(a))}function Jj(a){a=a|0;na(Zf(a))}function Ij(a){a=a|0;na(Yf(a))}function Gh(a){a=a|0;na(re(a))}function oe(a){a=a|0;return 2}function kh(a){a=a|0;return 3}function ib(a){a=a|0;return 0}function Xc(a){a=a|0;return 4}function Vc(a){a=a|0;return 5}function Uc(a){a=a|0;return 6}function Ja(a){a=a|0;return 1}function Bd(){return oa(1)|0}function Ab(a,b,c){Je(b,c,a)}function qa(){ke(1313);B()}function gb(){ke(1493);B()}function ab(a){a=a|0;na(a)}function zb(a){a=a|0;B()}function xd(){return 0}function wd(){return 1}function tf(){return-1}function li(){return 2}function ki(){return 3}function ji(){return 4}function Yh(){Z();B()}function af(a){a=a|0}
// EMSCRIPTEN_END_FUNCS
e=K;p(q);var da=c([null,Ee,ub,ab,oe,Fl,zk,xg,ii,Ge,Hh,Mc,zh,jl,ub,dk,ck,Ja,Zk,Lk,je,yk,Ug,ek,zh,bk,Zh,zb,$h,Me,Yh,Nh,Za,Lh,Za,Za,Ja,zc,re,Gh,oe,Kh,Ih,Jh,Cl,Bl,Fh,Eh,zc,Dh,zc,ib,ib,El,Dl,Ch,Ah,sl,Al,zl,ib,yl,rl,ql,pl,ol,xl,wl,vl,ul,tl,yh,xh,me,nl,Ja,ll,ml,kl,il,le,Ja,vc,Yc,ib,wh,Za,ib,Ja,hl,gl,zb,zb,vh,fl,Xc,Yc,uh,el,dl,cl,Vc,th,Ja,Za,sh,rh,bl,al,$k,Uc,ph,Ja,Za,oh,nh,_k,ub,ab,Sc,uc,Tc,zb,le,Ja,Yc,Yk,zb,mh,Xk,Xc,Yc,uh,Wk,Vk,Uk,Vc,th,Ja,Za,sh,rh,Tk,Sk,Rk,Uc,ph,Ja,Za,oh,nh,Qk,ub,ab,Sc,uc,Rc,zb,le,ib,Ja,Pk,yh,xh,Ok,Nk,Ja,kh,Kk,Mk,ub,ab,Ja,vc,Qc,ib,wh,Za,Ja,kh,Jk,Ik,Hk,Gk,Xc,Qc,jh,Fk,Ek,Dk,Vc,ih,Ja,Za,hh,gh,Ck,Bk,Ak,Uc,fh,Ja,Za,eh,dh,xk,ub,ab,Sc,uc,Tc,ab,Ja,Qc,wk,vk,uk,Xc,Qc,jh,tk,sk,rk,Vc,ih,Ja,Za,hh,gh,qk,pk,ok,Uc,fh,Ja,Za,eh,dh,nk,ub,ab,Sc,uc,Rc,ab,ib,Ja,mk,ik,hk,lk,kk,Ja,oe,jk,fk,Sg,ah,Zg,gk,Rg,Sg,Rg,Wj,Vj,Ja,Ja,ak,Ja,lj,ej,dj,$j,_j,cj,Yj,Uj,Tj,Sj,Zj,Xj,Zf,Jj,Rj,pg,og,Qj,lg,Nj,ag,$f,vc,Yf,Ij,Mj,pg,og,Lj,lg,Kj,ag,$f,vc,Oj,Hj,Pj,Gj,Fj,Cj,Bj,Aj,zj,Dj,yj,Ej,xj,wj,uj,tj,sj,rj,vj,qj,pj,oj,nj,mj,kj,zb,Ja,zc,ib,Za,Za,Gd,ib,Sf,ij,jj,hj,ub,ab,gj,fj,zb,ib,bj,Gd,Ja,Pf,aj,Of,Gd,ib,Pf,Sf,Of,gi,fi,ei,di,bi,ci,hi,Ec,ai,ff,ef,cf,Re,Qe,_h,ub,ab,af,af,Xh,Rh,Th,Wh,ab,Sh,Uh,Vh,ab,Oh,ab,Mh,ab,Ph,ad,vc,ad,ad]);function ea(){return G.byteLength/65536|0}function ja(ka){ka=ka|0;var fa=ea()|0;var ga=fa+ka|0;if(fa<ga&&ga<65536){var ha=new ArrayBuffer(P(ga,65536));var ia=new Int8Array(ha);ia.set(H);H=new Int8Array(ha);I=new Int16Array(ha);J=new Int32Array(ha);K=new Uint8Array(ha);L=new Uint16Array(ha);M=new Uint32Array(ha);N=new Float32Array(ha);O=new Float64Array(ha);G=ha;F.buffer=G;e=K}return fa}return{"f":Bh,"g":da,"h":lc,"i":$i,"j":lc,"k":_i,"l":Cd,"m":Zi,"n":uc,"o":Yi,"p":Xi,"q":Jf,"r":Wi,"s":Vi,"t":Ka,"u":Ui,"v":Hf,"w":Cd,"x":Gf,"y":Ti,"z":Si,"A":Hf,"B":Cd,"C":Ri,"D":Gf,"E":Qi,"F":Pi,"G":Oi,"H":Ni,"I":Mi,"J":Li,"K":Bd,"L":Ki,"M":Ji,"N":Ii,"O":Hi,"P":lc,"Q":Bd,"R":Ad,"S":Df,"T":Cf,"U":Bf,"V":Af,"W":zd,"X":zf,"Y":yd,"Z":yf,"_":xf,"$":lc,"aa":Bd,"ba":Gi,"ca":Ad,"da":zd,"ea":yd,"fa":Ad,"ga":Df,"ha":Cf,"ia":Bf,"ja":Af,"ka":zd,"la":zf,"ma":yd,"na":yf,"oa":xf,"pa":lc,"qa":Fi,"ra":Ei,"sa":Di,"ta":Ci,"ua":Bi,"va":Ai,"wa":zi,"xa":yi,"ya":Jf,"za":xi,"Aa":wi,"Ba":vi,"Ca":ui,"Da":ti,"Ea":si,"Fa":ri,"Ga":qi,"Ha":pi,"Ia":oi,"Ja":ni,"Ka":mi,"La":tf,"Ma":xd,"Na":wd,"Oa":li,"Pa":ki,"Qa":ji,"Ra":tf,"Sa":xd,"Ta":wd,"Ua":xd,"Va":wd,"Wa":nd,"Xa":na,"Ya":Qh}}return la(ma)}
// EMSCRIPTEN_END_ASM
)(info)},instantiate:function(binary,info){return{then:function(ok){var module=new WebAssembly.Module(binary);ok({"instance":new WebAssembly.Instance(module,info)})}}},RuntimeError:Error};wasmBinary=[];if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}function stringToUTF8Array(str,heap,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;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;assert(INITIAL_MEMORY>=65536,"INITIAL_MEMORY should be larger than STACK_SIZE, was "+INITIAL_MEMORY+"! (STACK_SIZE="+65536+")");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}updateMemoryViews();INITIAL_MEMORY=wasmMemory.buffer.byteLength;var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function keepRuntimeAlive(){return noExitRuntime}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 initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}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 addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="draco_encoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["g"];addOnInit(Module["asm"]["f"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);readyPromiseReject(e)}}instantiateAsync().catch(readyPromiseReject);return{}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){callbacks.shift()(Module)}}function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){HEAPU32[this.ptr+4>>2]=type};this.get_type=function(){return HEAPU32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAPU32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAPU32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1};this.set_adjusted_ptr=function(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return HEAPU32[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function getHeapMax(){return 2147483648}function emscripten_realloc_buffer(size){var b=wasmMemory.buffer;try{wasmMemory.grow(size-b.byteLength+65535>>>16);updateMemoryViews();return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}let alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return 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}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=Buffer.from(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 wasmImports={"c":___cxa_throw,"b":_abort,"e":_emscripten_memcpy_big,"d":_emscripten_resize_heap,"a":wasmMemory};var asm=createWasm();var ___wasm_call_ctors=function(){return(___wasm_call_ctors=Module["asm"]["f"]).apply(null,arguments)};var _emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=function(){return(_emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=Module["asm"]["h"]).apply(null,arguments)};var _emscripten_bind_GeometryAttribute_GeometryAttribute_0=Module["_emscripten_bind_GeometryAttribute_GeometryAttribute_0"]=function(){return(_emscripten_bind_GeometryAttribute_GeometryAttribute_0=Module["_emscripten_bind_GeometryAttribute_GeometryAttribute_0"]=Module["asm"]["i"]).apply(null,arguments)};var _emscripten_bind_GeometryAttribute___destroy___0=Module["_emscripten_bind_GeometryAttribute___destroy___0"]=function(){return(_emscripten_bind_GeometryAttribute___destroy___0=Module["_emscripten_bind_GeometryAttribute___destroy___0"]=Module["asm"]["j"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_PointAttribute_0=Module["_emscripten_bind_PointAttribute_PointAttribute_0"]=function(){return(_emscripten_bind_PointAttribute_PointAttribute_0=Module["_emscripten_bind_PointAttribute_PointAttribute_0"]=Module["asm"]["k"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_size_0=Module["_emscripten_bind_PointAttribute_size_0"]=function(){return(_emscripten_bind_PointAttribute_size_0=Module["_emscripten_bind_PointAttribute_size_0"]=Module["asm"]["l"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_attribute_type_0=Module["_emscripten_bind_PointAttribute_attribute_type_0"]=function(){return(_emscripten_bind_PointAttribute_attribute_type_0=Module["_emscripten_bind_PointAttribute_attribute_type_0"]=Module["asm"]["m"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_data_type_0=Module["_emscripten_bind_PointAttribute_data_type_0"]=function(){return(_emscripten_bind_PointAttribute_data_type_0=Module["_emscripten_bind_PointAttribute_data_type_0"]=Module["asm"]["n"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_num_components_0=Module["_emscripten_bind_PointAttribute_num_components_0"]=function(){return(_emscripten_bind_PointAttribute_num_components_0=Module["_emscripten_bind_PointAttribute_num_components_0"]=Module["asm"]["o"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_normalized_0=Module["_emscripten_bind_PointAttribute_normalized_0"]=function(){return(_emscripten_bind_PointAttribute_normalized_0=Module["_emscripten_bind_PointAttribute_normalized_0"]=Module["asm"]["p"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_byte_stride_0=Module["_emscripten_bind_PointAttribute_byte_stride_0"]=function(){return(_emscripten_bind_PointAttribute_byte_stride_0=Module["_emscripten_bind_PointAttribute_byte_stride_0"]=Module["asm"]["q"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_byte_offset_0=Module["_emscripten_bind_PointAttribute_byte_offset_0"]=function(){return(_emscripten_bind_PointAttribute_byte_offset_0=Module["_emscripten_bind_PointAttribute_byte_offset_0"]=Module["asm"]["r"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_unique_id_0=Module["_emscripten_bind_PointAttribute_unique_id_0"]=function(){return(_emscripten_bind_PointAttribute_unique_id_0=Module["_emscripten_bind_PointAttribute_unique_id_0"]=Module["asm"]["s"]).apply(null,arguments)};var _emscripten_bind_PointAttribute___destroy___0=Module["_emscripten_bind_PointAttribute___destroy___0"]=function(){return(_emscripten_bind_PointAttribute___destroy___0=Module["_emscripten_bind_PointAttribute___destroy___0"]=Module["asm"]["t"]).apply(null,arguments)};var _emscripten_bind_PointCloud_PointCloud_0=Module["_emscripten_bind_PointCloud_PointCloud_0"]=function(){return(_emscripten_bind_PointCloud_PointCloud_0=Module["_emscripten_bind_PointCloud_PointCloud_0"]=Module["asm"]["u"]).apply(null,arguments)};var _emscripten_bind_PointCloud_num_attributes_0=Module["_emscripten_bind_PointCloud_num_attributes_0"]=function(){return(_emscripten_bind_PointCloud_num_attributes_0=Module["_emscripten_bind_PointCloud_num_attributes_0"]=Module["asm"]["v"]).apply(null,arguments)};var _emscripten_bind_PointCloud_num_points_0=Module["_emscripten_bind_PointCloud_num_points_0"]=function(){return(_emscripten_bind_PointCloud_num_points_0=Module["_emscripten_bind_PointCloud_num_points_0"]=Module["asm"]["w"]).apply(null,arguments)};var _emscripten_bind_PointCloud___destroy___0=Module["_emscripten_bind_PointCloud___destroy___0"]=function(){return(_emscripten_bind_PointCloud___destroy___0=Module["_emscripten_bind_PointCloud___destroy___0"]=Module["asm"]["x"]).apply(null,arguments)};var _emscripten_bind_Mesh_Mesh_0=Module["_emscripten_bind_Mesh_Mesh_0"]=function(){return(_emscripten_bind_Mesh_Mesh_0=Module["_emscripten_bind_Mesh_Mesh_0"]=Module["asm"]["y"]).apply(null,arguments)};var _emscripten_bind_Mesh_num_faces_0=Module["_emscripten_bind_Mesh_num_faces_0"]=function(){return(_emscripten_bind_Mesh_num_faces_0=Module["_emscripten_bind_Mesh_num_faces_0"]=Module["asm"]["z"]).apply(null,arguments)};var _emscripten_bind_Mesh_num_attributes_0=Module["_emscripten_bind_Mesh_num_attributes_0"]=function(){return(_emscripten_bind_Mesh_num_attributes_0=Module["_emscripten_bind_Mesh_num_attributes_0"]=Module["asm"]["A"]).apply(null,arguments)};var _emscripten_bind_Mesh_num_points_0=Module["_emscripten_bind_Mesh_num_points_0"]=function(){return(_emscripten_bind_Mesh_num_points_0=Module["_emscripten_bind_Mesh_num_points_0"]=Module["asm"]["B"]).apply(null,arguments)};var _emscripten_bind_Mesh_set_num_points_1=Module["_emscripten_bind_Mesh_set_num_points_1"]=function(){return(_emscripten_bind_Mesh_set_num_points_1=Module["_emscripten_bind_Mesh_set_num_points_1"]=Module["asm"]["C"]).apply(null,arguments)};var _emscripten_bind_Mesh___destroy___0=Module["_emscripten_bind_Mesh___destroy___0"]=function(){return(_emscripten_bind_Mesh___destroy___0=Module["_emscripten_bind_Mesh___destroy___0"]=Module["asm"]["D"]).apply(null,arguments)};var _emscripten_bind_Metadata_Metadata_0=Module["_emscripten_bind_Metadata_Metadata_0"]=function(){return(_emscripten_bind_Metadata_Metadata_0=Module["_emscripten_bind_Metadata_Metadata_0"]=Module["asm"]["E"]).apply(null,arguments)};var _emscripten_bind_Metadata___destroy___0=Module["_emscripten_bind_Metadata___destroy___0"]=function(){return(_emscripten_bind_Metadata___destroy___0=Module["_emscripten_bind_Metadata___destroy___0"]=Module["asm"]["F"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array_DracoInt8Array_0=Module["_emscripten_bind_DracoInt8Array_DracoInt8Array_0"]=function(){return(_emscripten_bind_DracoInt8Array_DracoInt8Array_0=Module["_emscripten_bind_DracoInt8Array_DracoInt8Array_0"]=Module["asm"]["G"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array_GetValue_1=Module["_emscripten_bind_DracoInt8Array_GetValue_1"]=function(){return(_emscripten_bind_DracoInt8Array_GetValue_1=Module["_emscripten_bind_DracoInt8Array_GetValue_1"]=Module["asm"]["H"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array_size_0=Module["_emscripten_bind_DracoInt8Array_size_0"]=function(){return(_emscripten_bind_DracoInt8Array_size_0=Module["_emscripten_bind_DracoInt8Array_size_0"]=Module["asm"]["I"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array___destroy___0=Module["_emscripten_bind_DracoInt8Array___destroy___0"]=function(){return(_emscripten_bind_DracoInt8Array___destroy___0=Module["_emscripten_bind_DracoInt8Array___destroy___0"]=Module["asm"]["J"]).apply(null,arguments)};var _emscripten_bind_MetadataBuilder_MetadataBuilder_0=Module["_emscripten_bind_MetadataBuilder_MetadataBuilder_0"]=function(){return(_emscripten_bind_MetadataBuilder_MetadataBuilder_0=Module["_emscripten_bind_MetadataBuilder_MetadataBuilder_0"]=Module["asm"]["K"]).apply(null,arguments)};var _emscripten_bind_MetadataBuilder_AddStringEntry_3=Module["_emscripten_bind_MetadataBuilder_AddStringEntry_3"]=function(){return(_emscripten_bind_MetadataBuilder_AddStringEntry_3=Module["_emscripten_bind_MetadataBuilder_AddStringEntry_3"]=Module["asm"]["L"]).apply(null,arguments)};var _emscripten_bind_MetadataBuilder_AddIntEntry_3=Module["_emscripten_bind_MetadataBuilder_AddIntEntry_3"]=function(){return(_emscripten_bind_MetadataBuilder_AddIntEntry_3=Module["_emscripten_bind_MetadataBuilder_AddIntEntry_3"]=Module["asm"]["M"]).apply(null,arguments)};var _emscripten_bind_MetadataBuilder_AddIntEntryArray_4=Module["_emscripten_bind_MetadataBuilder_AddIntEntryArray_4"]=function(){return(_emscripten_bind_MetadataBuilder_AddIntEntryArray_4=Module["_emscripten_bind_MetadataBuilder_AddIntEntryArray_4"]=Module["asm"]["N"]).apply(null,arguments)};var _emscripten_bind_MetadataBuilder_AddDoubleEntry_3=Module["_emscripten_bind_MetadataBuilder_AddDoubleEntry_3"]=function(){return(_emscripten_bind_MetadataBuilder_AddDoubleEntry_3=Module["_emscripten_bind_MetadataBuilder_AddDoubleEntry_3"]=Module["asm"]["O"]).apply(null,arguments)};var _emscripten_bind_MetadataBuilder___destroy___0=Module["_emscripten_bind_MetadataBuilder___destroy___0"]=function(){return(_emscripten_bind_MetadataBuilder___destroy___0=Module["_emscripten_bind_MetadataBuilder___destroy___0"]=Module["asm"]["P"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=Module["_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0"]=function(){return(_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=Module["_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0"]=Module["asm"]["Q"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=Module["_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5"]=function(){return(_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=Module["_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5"]=Module["asm"]["R"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5"]=function(){return(_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5"]=Module["asm"]["S"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5"]=function(){return(_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5"]=Module["asm"]["T"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5"]=function(){return(_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5"]=Module["asm"]["U"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5"]=function(){return(_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5"]=Module["asm"]["V"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5"]=function(){return(_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5"]=Module["asm"]["W"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5"]=function(){return(_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5"]=Module["asm"]["X"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddMetadata_2=Module["_emscripten_bind_PointCloudBuilder_AddMetadata_2"]=function(){return(_emscripten_bind_PointCloudBuilder_AddMetadata_2=Module["_emscripten_bind_PointCloudBuilder_AddMetadata_2"]=Module["asm"]["Y"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=Module["_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3"]=function(){return(_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=Module["_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3"]=Module["asm"]["Z"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_SetNormalizedFlagForAttribute_3=Module["_emscripten_bind_PointCloudBuilder_SetNormalizedFlagForAttribute_3"]=function(){return(_emscripten_bind_PointCloudBuilder_SetNormalizedFlagForAttribute_3=Module["_emscripten_bind_PointCloudBuilder_SetNormalizedFlagForAttribute_3"]=Module["asm"]["_"]).apply(null,arguments)};var _emscripten_bind_PointCloudBuilder___destroy___0=Module["_emscripten_bind_PointCloudBuilder___destroy___0"]=function(){return(_emscripten_bind_PointCloudBuilder___destroy___0=Module["_emscripten_bind_PointCloudBuilder___destroy___0"]=Module["asm"]["$"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_MeshBuilder_0=Module["_emscripten_bind_MeshBuilder_MeshBuilder_0"]=function(){return(_emscripten_bind_MeshBuilder_MeshBuilder_0=Module["_emscripten_bind_MeshBuilder_MeshBuilder_0"]=Module["asm"]["aa"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddFacesToMesh_3=Module["_emscripten_bind_MeshBuilder_AddFacesToMesh_3"]=function(){return(_emscripten_bind_MeshBuilder_AddFacesToMesh_3=Module["_emscripten_bind_MeshBuilder_AddFacesToMesh_3"]=Module["asm"]["ba"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=Module["_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5"]=function(){return(_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=Module["_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5"]=Module["asm"]["ca"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=Module["_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5"]=function(){return(_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=Module["_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5"]=Module["asm"]["da"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddMetadataToMesh_2=Module["_emscripten_bind_MeshBuilder_AddMetadataToMesh_2"]=function(){return(_emscripten_bind_MeshBuilder_AddMetadataToMesh_2=Module["_emscripten_bind_MeshBuilder_AddMetadataToMesh_2"]=Module["asm"]["ea"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddFloatAttribute_5=Module["_emscripten_bind_MeshBuilder_AddFloatAttribute_5"]=function(){return(_emscripten_bind_MeshBuilder_AddFloatAttribute_5=Module["_emscripten_bind_MeshBuilder_AddFloatAttribute_5"]=Module["asm"]["fa"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt8Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt8Attribute_5"]=function(){return(_emscripten_bind_MeshBuilder_AddInt8Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt8Attribute_5"]=Module["asm"]["ga"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddUInt8Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt8Attribute_5"]=function(){return(_emscripten_bind_MeshBuilder_AddUInt8Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt8Attribute_5"]=Module["asm"]["ha"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt16Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt16Attribute_5"]=function(){return(_emscripten_bind_MeshBuilder_AddInt16Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt16Attribute_5"]=Module["asm"]["ia"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddUInt16Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt16Attribute_5"]=function(){return(_emscripten_bind_MeshBuilder_AddUInt16Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt16Attribute_5"]=Module["asm"]["ja"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt32Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt32Attribute_5"]=function(){return(_emscripten_bind_MeshBuilder_AddInt32Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt32Attribute_5"]=Module["asm"]["ka"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddUInt32Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt32Attribute_5"]=function(){return(_emscripten_bind_MeshBuilder_AddUInt32Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt32Attribute_5"]=Module["asm"]["la"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddMetadata_2=Module["_emscripten_bind_MeshBuilder_AddMetadata_2"]=function(){return(_emscripten_bind_MeshBuilder_AddMetadata_2=Module["_emscripten_bind_MeshBuilder_AddMetadata_2"]=Module["asm"]["ma"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=Module["_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3"]=function(){return(_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=Module["_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3"]=Module["asm"]["na"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder_SetNormalizedFlagForAttribute_3=Module["_emscripten_bind_MeshBuilder_SetNormalizedFlagForAttribute_3"]=function(){return(_emscripten_bind_MeshBuilder_SetNormalizedFlagForAttribute_3=Module["_emscripten_bind_MeshBuilder_SetNormalizedFlagForAttribute_3"]=Module["asm"]["oa"]).apply(null,arguments)};var _emscripten_bind_MeshBuilder___destroy___0=Module["_emscripten_bind_MeshBuilder___destroy___0"]=function(){return(_emscripten_bind_MeshBuilder___destroy___0=Module["_emscripten_bind_MeshBuilder___destroy___0"]=Module["asm"]["pa"]).apply(null,arguments)};var _emscripten_bind_Encoder_Encoder_0=Module["_emscripten_bind_Encoder_Encoder_0"]=function(){return(_emscripten_bind_Encoder_Encoder_0=Module["_emscripten_bind_Encoder_Encoder_0"]=Module["asm"]["qa"]).apply(null,arguments)};var _emscripten_bind_Encoder_SetEncodingMethod_1=Module["_emscripten_bind_Encoder_SetEncodingMethod_1"]=function(){return(_emscripten_bind_Encoder_SetEncodingMethod_1=Module["_emscripten_bind_Encoder_SetEncodingMethod_1"]=Module["asm"]["ra"]).apply(null,arguments)};var _emscripten_bind_Encoder_SetAttributeQuantization_2=Module["_emscripten_bind_Encoder_SetAttributeQuantization_2"]=function(){return(_emscripten_bind_Encoder_SetAttributeQuantization_2=Module["_emscripten_bind_Encoder_SetAttributeQuantization_2"]=Module["asm"]["sa"]).apply(null,arguments)};var _emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=Module["_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5"]=function(){return(_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=Module["_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5"]=Module["asm"]["ta"]).apply(null,arguments)};var _emscripten_bind_Encoder_SetSpeedOptions_2=Module["_emscripten_bind_Encoder_SetSpeedOptions_2"]=function(){return(_emscripten_bind_Encoder_SetSpeedOptions_2=Module["_emscripten_bind_Encoder_SetSpeedOptions_2"]=Module["asm"]["ua"]).apply(null,arguments)};var _emscripten_bind_Encoder_SetTrackEncodedProperties_1=Module["_emscripten_bind_Encoder_SetTrackEncodedProperties_1"]=function(){return(_emscripten_bind_Encoder_SetTrackEncodedProperties_1=Module["_emscripten_bind_Encoder_SetTrackEncodedProperties_1"]=Module["asm"]["va"]).apply(null,arguments)};var _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=Module["_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2"]=function(){return(_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=Module["_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2"]=Module["asm"]["wa"]).apply(null,arguments)};var _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=Module["_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3"]=function(){return(_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=Module["_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3"]=Module["asm"]["xa"]).apply(null,arguments)};var _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=Module["_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0"]=function(){return(_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=Module["_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0"]=Module["asm"]["ya"]).apply(null,arguments)};var _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=Module["_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0"]=function(){return(_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=Module["_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0"]=Module["asm"]["za"]).apply(null,arguments)};var _emscripten_bind_Encoder___destroy___0=Module["_emscripten_bind_Encoder___destroy___0"]=function(){return(_emscripten_bind_Encoder___destroy___0=Module["_emscripten_bind_Encoder___destroy___0"]=Module["asm"]["Aa"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_ExpertEncoder_1=Module["_emscripten_bind_ExpertEncoder_ExpertEncoder_1"]=function(){return(_emscripten_bind_ExpertEncoder_ExpertEncoder_1=Module["_emscripten_bind_ExpertEncoder_ExpertEncoder_1"]=Module["asm"]["Ba"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetEncodingMethod_1=Module["_emscripten_bind_ExpertEncoder_SetEncodingMethod_1"]=function(){return(_emscripten_bind_ExpertEncoder_SetEncodingMethod_1=Module["_emscripten_bind_ExpertEncoder_SetEncodingMethod_1"]=Module["asm"]["Ca"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=Module["_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2"]=function(){return(_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=Module["_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2"]=Module["asm"]["Da"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=Module["_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5"]=function(){return(_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=Module["_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5"]=Module["asm"]["Ea"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetSpeedOptions_2=Module["_emscripten_bind_ExpertEncoder_SetSpeedOptions_2"]=function(){return(_emscripten_bind_ExpertEncoder_SetSpeedOptions_2=Module["_emscripten_bind_ExpertEncoder_SetSpeedOptions_2"]=Module["asm"]["Fa"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=Module["_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1"]=function(){return(_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=Module["_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1"]=Module["asm"]["Ga"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=Module["_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2"]=function(){return(_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=Module["_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2"]=Module["asm"]["Ha"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=Module["_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0"]=function(){return(_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=Module["_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0"]=Module["asm"]["Ia"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=Module["_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0"]=function(){return(_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=Module["_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0"]=Module["asm"]["Ja"]).apply(null,arguments)};var _emscripten_bind_ExpertEncoder___destroy___0=Module["_emscripten_bind_ExpertEncoder___destroy___0"]=function(){return(_emscripten_bind_ExpertEncoder___destroy___0=Module["_emscripten_bind_ExpertEncoder___destroy___0"]=Module["asm"]["Ka"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_INVALID=Module["_emscripten_enum_draco_GeometryAttribute_Type_INVALID"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_INVALID=Module["_emscripten_enum_draco_GeometryAttribute_Type_INVALID"]=Module["asm"]["La"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_POSITION=Module["_emscripten_enum_draco_GeometryAttribute_Type_POSITION"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_POSITION=Module["_emscripten_enum_draco_GeometryAttribute_Type_POSITION"]=Module["asm"]["Ma"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_NORMAL=Module["_emscripten_enum_draco_GeometryAttribute_Type_NORMAL"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_NORMAL=Module["_emscripten_enum_draco_GeometryAttribute_Type_NORMAL"]=Module["asm"]["Na"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_COLOR=Module["_emscripten_enum_draco_GeometryAttribute_Type_COLOR"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_COLOR=Module["_emscripten_enum_draco_GeometryAttribute_Type_COLOR"]=Module["asm"]["Oa"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=Module["_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=Module["_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"]=Module["asm"]["Pa"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_GENERIC=Module["_emscripten_enum_draco_GeometryAttribute_Type_GENERIC"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_GENERIC=Module["_emscripten_enum_draco_GeometryAttribute_Type_GENERIC"]=Module["asm"]["Qa"]).apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=Module["_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"]=function(){return(_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=Module["_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"]=Module["asm"]["Ra"]).apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=Module["_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"]=function(){return(_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=Module["_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"]=Module["asm"]["Sa"]).apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=Module["_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"]=function(){return(_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=Module["_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"]=Module["asm"]["Ta"]).apply(null,arguments)};var _emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=Module["_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING"]=function(){return(_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=Module["_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING"]=Module["asm"]["Ua"]).apply(null,arguments)};var _emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=Module["_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING"]=function(){return(_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=Module["_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING"]=Module["asm"]["Va"]).apply(null,arguments)};var ___errno_location=function(){return(___errno_location=Module["asm"]["__errno_location"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["Wa"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["Xa"]).apply(null,arguments)};var ___cxa_is_pointer_type=function(){return(___cxa_is_pointer_type=Module["asm"]["Ya"]).apply(null,arguments)};var ___start_em_js=Module["___start_em_js"]=19116;var ___stop_em_js=Module["___stop_em_js"]=19214;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i<ensureCache.temps.length;i++){Module["_free"](ensureCache.temps[i])}ensureCache.temps.length=0;Module["_free"](ensureCache.buffer);ensureCache.buffer=0;ensureCache.size+=ensureCache.needed;ensureCache.needed=0}if(!ensureCache.buffer){ensureCache.size+=128;ensureCache.buffer=Module["_malloc"](ensureCache.size);assert(ensureCache.buffer)}ensureCache.pos=0},alloc:function(array,view){assert(ensureCache.buffer);var bytes=view.BYTES_PER_ELEMENT;var len=array.length*bytes;len=len+7&-8;var ret;if(ensureCache.pos+len>=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i<array.length;i++){view[offset+i]=array[i]}}};function ensureString(value){if(typeof value==="string"){var intArray=intArrayFromString(value);var offset=ensureCache.alloc(intArray,HEAP8);ensureCache.copy(intArray,HEAP8,offset);return offset}return value}function ensureInt8(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAP8);ensureCache.copy(value,HEAP8,offset);return offset}return value}function ensureInt16(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAP16);ensureCache.copy(value,HEAP16,offset);return offset}return value}function ensureInt32(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAP32);ensureCache.copy(value,HEAP32,offset);return offset}return value}function ensureFloat32(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAPF32);ensureCache.copy(value,HEAPF32,offset);return offset}return value}function VoidPtr(){throw"cannot construct a VoidPtr, no constructor in IDL"}VoidPtr.prototype=Object.create(WrapperObject.prototype);VoidPtr.prototype.constructor=VoidPtr;VoidPtr.prototype.__class__=VoidPtr;VoidPtr.__cache__={};Module["VoidPtr"]=VoidPtr;VoidPtr.prototype["__destroy__"]=VoidPtr.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_VoidPtr___destroy___0(self)};function GeometryAttribute(){this.ptr=_emscripten_bind_GeometryAttribute_GeometryAttribute_0();getCache(GeometryAttribute)[this.ptr]=this}GeometryAttribute.prototype=Object.create(WrapperObject.prototype);GeometryAttribute.prototype.constructor=GeometryAttribute;GeometryAttribute.prototype.__class__=GeometryAttribute;GeometryAttribute.__cache__={};Module["GeometryAttribute"]=GeometryAttribute;GeometryAttribute.prototype["__destroy__"]=GeometryAttribute.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_GeometryAttribute___destroy___0(self)};function PointAttribute(){this.ptr=_emscripten_bind_PointAttribute_PointAttribute_0();getCache(PointAttribute)[this.ptr]=this}PointAttribute.prototype=Object.create(WrapperObject.prototype);PointAttribute.prototype.constructor=PointAttribute;PointAttribute.prototype.__class__=PointAttribute;PointAttribute.__cache__={};Module["PointAttribute"]=PointAttribute;PointAttribute.prototype["size"]=PointAttribute.prototype.size=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_size_0(self)};PointAttribute.prototype["attribute_type"]=PointAttribute.prototype.attribute_type=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_attribute_type_0(self)};PointAttribute.prototype["data_type"]=PointAttribute.prototype.data_type=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_data_type_0(self)};PointAttribute.prototype["num_components"]=PointAttribute.prototype.num_components=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_num_components_0(self)};PointAttribute.prototype["normalized"]=PointAttribute.prototype.normalized=function(){var self=this.ptr;return!!_emscripten_bind_PointAttribute_normalized_0(self)};PointAttribute.prototype["byte_stride"]=PointAttribute.prototype.byte_stride=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_byte_stride_0(self)};PointAttribute.prototype["byte_offset"]=PointAttribute.prototype.byte_offset=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_byte_offset_0(self)};PointAttribute.prototype["unique_id"]=PointAttribute.prototype.unique_id=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_unique_id_0(self)};PointAttribute.prototype["__destroy__"]=PointAttribute.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointAttribute___destroy___0(self)};function PointCloud(){this.ptr=_emscripten_bind_PointCloud_PointCloud_0();getCache(PointCloud)[this.ptr]=this}PointCloud.prototype=Object.create(WrapperObject.prototype);PointCloud.prototype.constructor=PointCloud;PointCloud.prototype.__class__=PointCloud;PointCloud.__cache__={};Module["PointCloud"]=PointCloud;PointCloud.prototype["num_attributes"]=PointCloud.prototype.num_attributes=function(){var self=this.ptr;return _emscripten_bind_PointCloud_num_attributes_0(self)};PointCloud.prototype["num_points"]=PointCloud.prototype.num_points=function(){var self=this.ptr;return _emscripten_bind_PointCloud_num_points_0(self)};PointCloud.prototype["__destroy__"]=PointCloud.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointCloud___destroy___0(self)};function Mesh(){this.ptr=_emscripten_bind_Mesh_Mesh_0();getCache(Mesh)[this.ptr]=this}Mesh.prototype=Object.create(WrapperObject.prototype);Mesh.prototype.constructor=Mesh;Mesh.prototype.__class__=Mesh;Mesh.__cache__={};Module["Mesh"]=Mesh;Mesh.prototype["num_faces"]=Mesh.prototype.num_faces=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_faces_0(self)};Mesh.prototype["num_attributes"]=Mesh.prototype.num_attributes=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_attributes_0(self)};Mesh.prototype["num_points"]=Mesh.prototype.num_points=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_points_0(self)};Mesh.prototype["set_num_points"]=Mesh.prototype.set_num_points=function(num_points){var self=this.ptr;if(num_points&&typeof num_points==="object")num_points=num_points.ptr;_emscripten_bind_Mesh_set_num_points_1(self,num_points)};Mesh.prototype["__destroy__"]=Mesh.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Mesh___destroy___0(self)};function Metadata(){this.ptr=_emscripten_bind_Metadata_Metadata_0();getCache(Metadata)[this.ptr]=this}Metadata.prototype=Object.create(WrapperObject.prototype);Metadata.prototype.constructor=Metadata;Metadata.prototype.__class__=Metadata;Metadata.__cache__={};Module["Metadata"]=Metadata;Metadata.prototype["__destroy__"]=Metadata.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Metadata___destroy___0(self)};function DracoInt8Array(){this.ptr=_emscripten_bind_DracoInt8Array_DracoInt8Array_0();getCache(DracoInt8Array)[this.ptr]=this}DracoInt8Array.prototype=Object.create(WrapperObject.prototype);DracoInt8Array.prototype.constructor=DracoInt8Array;DracoInt8Array.prototype.__class__=DracoInt8Array;DracoInt8Array.__cache__={};Module["DracoInt8Array"]=DracoInt8Array;DracoInt8Array.prototype["GetValue"]=DracoInt8Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoInt8Array_GetValue_1(self,index)};DracoInt8Array.prototype["size"]=DracoInt8Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoInt8Array_size_0(self)};DracoInt8Array.prototype["__destroy__"]=DracoInt8Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoInt8Array___destroy___0(self)};function MetadataBuilder(){this.ptr=_emscripten_bind_MetadataBuilder_MetadataBuilder_0();getCache(MetadataBuilder)[this.ptr]=this}MetadataBuilder.prototype=Object.create(WrapperObject.prototype);MetadataBuilder.prototype.constructor=MetadataBuilder;MetadataBuilder.prototype.__class__=MetadataBuilder;MetadataBuilder.__cache__={};Module["MetadataBuilder"]=MetadataBuilder;MetadataBuilder.prototype["AddStringEntry"]=MetadataBuilder.prototype.AddStringEntry=function(metadata,entry_name,entry_value){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(entry_value&&typeof entry_value==="object")entry_value=entry_value.ptr;else entry_value=ensureString(entry_value);return!!_emscripten_bind_MetadataBuilder_AddStringEntry_3(self,metadata,entry_name,entry_value)};MetadataBuilder.prototype["AddIntEntry"]=MetadataBuilder.prototype.AddIntEntry=function(metadata,entry_name,entry_value){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(entry_value&&typeof entry_value==="object")entry_value=entry_value.ptr;return!!_emscripten_bind_MetadataBuilder_AddIntEntry_3(self,metadata,entry_name,entry_value)};MetadataBuilder.prototype["AddIntEntryArray"]=MetadataBuilder.prototype.AddIntEntryArray=function(metadata,entry_name,att_values,num_values){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(typeof att_values=="object"){att_values=ensureInt32(att_values)}if(num_values&&typeof num_values==="object")num_values=num_values.ptr;return!!_emscripten_bind_MetadataBuilder_AddIntEntryArray_4(self,metadata,entry_name,att_values,num_values)};MetadataBuilder.prototype["AddDoubleEntry"]=MetadataBuilder.prototype.AddDoubleEntry=function(metadata,entry_name,entry_value){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(entry_value&&typeof entry_value==="object")entry_value=entry_value.ptr;return!!_emscripten_bind_MetadataBuilder_AddDoubleEntry_3(self,metadata,entry_name,entry_value)};MetadataBuilder.prototype["__destroy__"]=MetadataBuilder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_MetadataBuilder___destroy___0(self)};function PointCloudBuilder(){this.ptr=_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0();getCache(PointCloudBuilder)[this.ptr]=this}PointCloudBuilder.prototype=Object.create(WrapperObject.prototype);PointCloudBuilder.prototype.constructor=PointCloudBuilder;PointCloudBuilder.prototype.__class__=PointCloudBuilder;PointCloudBuilder.__cache__={};Module["PointCloudBuilder"]=PointCloudBuilder;PointCloudBuilder.prototype["AddFloatAttribute"]=PointCloudBuilder.prototype.AddFloatAttribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureFloat32(att_values)}return _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddInt8Attribute"]=PointCloudBuilder.prototype.AddInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddUInt8Attribute"]=PointCloudBuilder.prototype.AddUInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddInt16Attribute"]=PointCloudBuilder.prototype.AddInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddUInt16Attribute"]=PointCloudBuilder.prototype.AddUInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddInt32Attribute"]=PointCloudBuilder.prototype.AddInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddUInt32Attribute"]=PointCloudBuilder.prototype.AddUInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddMetadata"]=PointCloudBuilder.prototype.AddMetadata=function(pc,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_PointCloudBuilder_AddMetadata_2(self,pc,metadata)};PointCloudBuilder.prototype["SetMetadataForAttribute"]=PointCloudBuilder.prototype.SetMetadataForAttribute=function(pc,attribute_id,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(attribute_id&&typeof attribute_id==="object")attribute_id=attribute_id.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3(self,pc,attribute_id,metadata)};PointCloudBuilder.prototype["SetNormalizedFlagForAttribute"]=PointCloudBuilder.prototype.SetNormalizedFlagForAttribute=function(pc,attribute_id,normalized){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(attribute_id&&typeof attribute_id==="object")attribute_id=attribute_id.ptr;if(normalized&&typeof normalized==="object")normalized=normalized.ptr;return!!_emscripten_bind_PointCloudBuilder_SetNormalizedFlagForAttribute_3(self,pc,attribute_id,normalized)};PointCloudBuilder.prototype["__destroy__"]=PointCloudBuilder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointCloudBuilder___destroy___0(self)};function MeshBuilder(){this.ptr=_emscripten_bind_MeshBuilder_MeshBuilder_0();getCache(MeshBuilder)[this.ptr]=this}MeshBuilder.prototype=Object.create(WrapperObject.prototype);MeshBuilder.prototype.constructor=MeshBuilder;MeshBuilder.prototype.__class__=MeshBuilder;MeshBuilder.__cache__={};Module["MeshBuilder"]=MeshBuilder;MeshBuilder.prototype["AddFacesToMesh"]=MeshBuilder.prototype.AddFacesToMesh=function(mesh,num_faces,faces){var self=this.ptr;ensureCache.prepare();if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(num_faces&&typeof num_faces==="object")num_faces=num_faces.ptr;if(typeof faces=="object"){faces=ensureInt32(faces)}return!!_emscripten_bind_MeshBuilder_AddFacesToMesh_3(self,mesh,num_faces,faces)};MeshBuilder.prototype["AddFloatAttributeToMesh"]=MeshBuilder.prototype.AddFloatAttributeToMesh=function(mesh,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureFloat32(att_values)}return _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5(self,mesh,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt32AttributeToMesh"]=MeshBuilder.prototype.AddInt32AttributeToMesh=function(mesh,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5(self,mesh,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddMetadataToMesh"]=MeshBuilder.prototype.AddMetadataToMesh=function(mesh,metadata){var self=this.ptr;if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_MeshBuilder_AddMetadataToMesh_2(self,mesh,metadata)};MeshBuilder.prototype["AddFloatAttribute"]=MeshBuilder.prototype.AddFloatAttribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureFloat32(att_values)}return _emscripten_bind_MeshBuilder_AddFloatAttribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt8Attribute"]=MeshBuilder.prototype.AddInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_MeshBuilder_AddInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddUInt8Attribute"]=MeshBuilder.prototype.AddUInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_MeshBuilder_AddUInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt16Attribute"]=MeshBuilder.prototype.AddInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_MeshBuilder_AddInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddUInt16Attribute"]=MeshBuilder.prototype.AddUInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_MeshBuilder_AddUInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt32Attribute"]=MeshBuilder.prototype.AddInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_MeshBuilder_AddInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddUInt32Attribute"]=MeshBuilder.prototype.AddUInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_MeshBuilder_AddUInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddMetadata"]=MeshBuilder.prototype.AddMetadata=function(pc,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_MeshBuilder_AddMetadata_2(self,pc,metadata)};MeshBuilder.prototype["SetMetadataForAttribute"]=MeshBuilder.prototype.SetMetadataForAttribute=function(pc,attribute_id,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(attribute_id&&typeof attribute_id==="object")attribute_id=attribute_id.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3(self,pc,attribute_id,metadata)};MeshBuilder.prototype["SetNormalizedFlagForAttribute"]=MeshBuilder.prototype.SetNormalizedFlagForAttribute=function(pc,attribute_id,normalized){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(attribute_id&&typeof attribute_id==="object")attribute_id=attribute_id.ptr;if(normalized&&typeof normalized==="object")normalized=normalized.ptr;return!!_emscripten_bind_MeshBuilder_SetNormalizedFlagForAttribute_3(self,pc,attribute_id,normalized)};MeshBuilder.prototype["__destroy__"]=MeshBuilder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_MeshBuilder___destroy___0(self)};function Encoder(){this.ptr=_emscripten_bind_Encoder_Encoder_0();getCache(Encoder)[this.ptr]=this}Encoder.prototype=Object.create(WrapperObject.prototype);Encoder.prototype.constructor=Encoder;Encoder.prototype.__class__=Encoder;Encoder.__cache__={};Module["Encoder"]=Encoder;Encoder.prototype["SetEncodingMethod"]=Encoder.prototype.SetEncodingMethod=function(method){var self=this.ptr;if(method&&typeof method==="object")method=method.ptr;_emscripten_bind_Encoder_SetEncodingMethod_1(self,method)};Encoder.prototype["SetAttributeQuantization"]=Encoder.prototype.SetAttributeQuantization=function(type,quantization_bits){var self=this.ptr;if(type&&typeof type==="object")type=type.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;_emscripten_bind_Encoder_SetAttributeQuantization_2(self,type,quantization_bits)};Encoder.prototype["SetAttributeExplicitQuantization"]=Encoder.prototype.SetAttributeExplicitQuantization=function(type,quantization_bits,num_components,origin,range){var self=this.ptr;ensureCache.prepare();if(type&&typeof type==="object")type=type.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof origin=="object"){origin=ensureFloat32(origin)}if(range&&typeof range==="object")range=range.ptr;_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5(self,type,quantization_bits,num_components,origin,range)};Encoder.prototype["SetSpeedOptions"]=Encoder.prototype.SetSpeedOptions=function(encoding_speed,decoding_speed){var self=this.ptr;if(encoding_speed&&typeof encoding_speed==="object")encoding_speed=encoding_speed.ptr;if(decoding_speed&&typeof decoding_speed==="object")decoding_speed=decoding_speed.ptr;_emscripten_bind_Encoder_SetSpeedOptions_2(self,encoding_speed,decoding_speed)};Encoder.prototype["SetTrackEncodedProperties"]=Encoder.prototype.SetTrackEncodedProperties=function(flag){var self=this.ptr;if(flag&&typeof flag==="object")flag=flag.ptr;_emscripten_bind_Encoder_SetTrackEncodedProperties_1(self,flag)};Encoder.prototype["EncodeMeshToDracoBuffer"]=Encoder.prototype.EncodeMeshToDracoBuffer=function(mesh,encoded_data){var self=this.ptr;if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(encoded_data&&typeof encoded_data==="object")encoded_data=encoded_data.ptr;return _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2(self,mesh,encoded_data)};Encoder.prototype["EncodePointCloudToDracoBuffer"]=Encoder.prototype.EncodePointCloudToDracoBuffer=function(pc,deduplicate_values,encoded_data){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(deduplicate_values&&typeof deduplicate_values==="object")deduplicate_values=deduplicate_values.ptr;if(encoded_data&&typeof encoded_data==="object")encoded_data=encoded_data.ptr;return _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3(self,pc,deduplicate_values,encoded_data)};Encoder.prototype["GetNumberOfEncodedPoints"]=Encoder.prototype.GetNumberOfEncodedPoints=function(){var self=this.ptr;return _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0(self)};Encoder.prototype["GetNumberOfEncodedFaces"]=Encoder.prototype.GetNumberOfEncodedFaces=function(){var self=this.ptr;return _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0(self)};Encoder.prototype["__destroy__"]=Encoder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Encoder___destroy___0(self)};function ExpertEncoder(pc){if(pc&&typeof pc==="object")pc=pc.ptr;this.ptr=_emscripten_bind_ExpertEncoder_ExpertEncoder_1(pc);getCache(ExpertEncoder)[this.ptr]=this}ExpertEncoder.prototype=Object.create(WrapperObject.prototype);ExpertEncoder.prototype.constructor=ExpertEncoder;ExpertEncoder.prototype.__class__=ExpertEncoder;ExpertEncoder.__cache__={};Module["ExpertEncoder"]=ExpertEncoder;ExpertEncoder.prototype["SetEncodingMethod"]=ExpertEncoder.prototype.SetEncodingMethod=function(method){var self=this.ptr;if(method&&typeof method==="object")method=method.ptr;_emscripten_bind_ExpertEncoder_SetEncodingMethod_1(self,method)};ExpertEncoder.prototype["SetAttributeQuantization"]=ExpertEncoder.prototype.SetAttributeQuantization=function(att_id,quantization_bits){var self=this.ptr;if(att_id&&typeof att_id==="object")att_id=att_id.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2(self,att_id,quantization_bits)};ExpertEncoder.prototype["SetAttributeExplicitQuantization"]=ExpertEncoder.prototype.SetAttributeExplicitQuantization=function(att_id,quantization_bits,num_components,origin,range){var self=this.ptr;ensureCache.prepare();if(att_id&&typeof att_id==="object")att_id=att_id.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof origin=="object"){origin=ensureFloat32(origin)}if(range&&typeof range==="object")range=range.ptr;_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5(self,att_id,quantization_bits,num_components,origin,range)};ExpertEncoder.prototype["SetSpeedOptions"]=ExpertEncoder.prototype.SetSpeedOptions=function(encoding_speed,decoding_speed){var self=this.ptr;if(encoding_speed&&typeof encoding_speed==="object")encoding_speed=encoding_speed.ptr;if(decoding_speed&&typeof decoding_speed==="object")decoding_speed=decoding_speed.ptr;_emscripten_bind_ExpertEncoder_SetSpeedOptions_2(self,encoding_speed,decoding_speed)};ExpertEncoder.prototype["SetTrackEncodedProperties"]=ExpertEncoder.prototype.SetTrackEncodedProperties=function(flag){var self=this.ptr;if(flag&&typeof flag==="object")flag=flag.ptr;_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1(self,flag)};ExpertEncoder.prototype["EncodeToDracoBuffer"]=ExpertEncoder.prototype.EncodeToDracoBuffer=function(deduplicate_values,encoded_data){var self=this.ptr;if(deduplicate_values&&typeof deduplicate_values==="object")deduplicate_values=deduplicate_values.ptr;if(encoded_data&&typeof encoded_data==="object")encoded_data=encoded_data.ptr;return _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2(self,deduplicate_values,encoded_data)};ExpertEncoder.prototype["GetNumberOfEncodedPoints"]=ExpertEncoder.prototype.GetNumberOfEncodedPoints=function(){var self=this.ptr;return _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0(self)};ExpertEncoder.prototype["GetNumberOfEncodedFaces"]=ExpertEncoder.prototype.GetNumberOfEncodedFaces=function(){var self=this.ptr;return _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0(self)};ExpertEncoder.prototype["__destroy__"]=ExpertEncoder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_ExpertEncoder___destroy___0(self)};(function(){function setupEnums(){Module["INVALID"]=_emscripten_enum_draco_GeometryAttribute_Type_INVALID();Module["POSITION"]=_emscripten_enum_draco_GeometryAttribute_Type_POSITION();Module["NORMAL"]=_emscripten_enum_draco_GeometryAttribute_Type_NORMAL();Module["COLOR"]=_emscripten_enum_draco_GeometryAttribute_Type_COLOR();Module["TEX_COORD"]=_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD();Module["GENERIC"]=_emscripten_enum_draco_GeometryAttribute_Type_GENERIC();Module["INVALID_GEOMETRY_TYPE"]=_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE();Module["POINT_CLOUD"]=_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD();Module["TRIANGULAR_MESH"]=_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH();Module["MESH_SEQUENTIAL_ENCODING"]=_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING();Module["MESH_EDGEBREAKER_ENCODING"]=_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING()}if(runtimeInitialized)setupEnums();else addOnInit(setupEnums)})();if(typeof Module["onModuleParsed"]==="function"){Module["onModuleParsed"]()}
return DracoEncoderModule.ready
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = DracoEncoderModule;
else if (typeof define === 'function' && define['amd'])
define([], function() { return DracoEncoderModule; });
else if (typeof exports === 'object')
exports["DracoEncoderModule"] = DracoEncoderModule;