-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdraco_decoder.js
37 lines (29 loc) · 694 KB
/
draco_decoder.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
36
37
var DracoDecoderModule = (() => {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(DracoDecoderModule) {
DracoDecoderModule = DracoDecoderModule || {};
var Module=typeof DracoDecoderModule!="undefined"?DracoDecoderModule:{};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)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}};read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();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)}requireNodeFS();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(qa){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,"YAQAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAE41ZHJhY28yOEF0dHJpYnV0ZU9jdGFoZWRyb25UcmFuc2Zvcm1FAAAYOwAAOAQAALAHAAAtKyAgIDBYMHgAX19uZXh0X3ByaW1lIG92ZXJmbG93AHZlY3RvcgBzdGQ6OmV4Y2VwdGlvbgBza2lwX2F0dHJpYnV0ZV90cmFuc2Zvcm0AYmFkX2FycmF5X25ld19sZW5ndGgAYmFzaWNfc3RyaW5nAHN0ZDo6YmFkX2FsbG9jAERSQUNPAFVzaW5nIGluY29tcGF0aWJsZSBkZWNvZGVyIGZvciB0aGUgaW5wdXQgZ2VvbWV0cnkuAEZhaWxlZCB0byBkZWNvZGUgcG9pbnQgYXR0cmlidXRlcy4ARmFpbGVkIHRvIGluaXRpYWxpemUgdGhlIGRlY29kZXIuAFVua25vd24gbWlub3IgdmVyc2lvbi4AVW5rbm93biBtYWpvciB2ZXJzaW9uLgBJbnB1dCBpcyBub3QgYSBtZXNoLgBVbnN1cHBvcnRlZCBnZW9tZXRyeSB0eXBlLgBOb3QgYSBEcmFjbyBmaWxlLgBJbnB1dCBpcyBub3QgYSBwb2ludCBjbG91ZC4AVW5zdXBwb3J0ZWQgZW5jb2RpbmcgbWV0aG9kLgBGYWlsZWQgdG8gZGVjb2RlIG1ldGFkYXRhLgBGYWlsZWQgdG8gZGVjb2RlIGdlb21ldHJ5IGRhdGEuAChudWxsKQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlcjogY29tcHJlc3Npb24gbGV2ZWwgJWkgbm90IHN1cHBvcnRlZC4KAEZsb2F0UG9pbnRzVHJlZURlY29kZXI6IGNvbXByZXNzaW9uIGxldmVsICVpIG5vdCBzdXBwb3J0ZWQuCgBWZXJzaW9uIG5vdCBzdXBwb3J0ZWQuIAoATWV0aG9kIG5vdCBzdXBwb3J0ZWQuIAoAAAAAAACEBwAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAACwAAABgAAAAZAAAATjVkcmFjbzMwQXR0cmlidXRlUXVhbnRpemF0aW9uVHJhbnNmb3JtRQAAAAAYOwAAWAcAALAHAABONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAAAAAPA6AACQBwAAAAAAADwIAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAABONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUATjVkcmFjbzI2QXR0cmlidXRlc0RlY29kZXJJbnRlcmZhY2VFAAAAAPA6AAAMCAAAGDsAAPAHAAA0CAAAAAAAAKQIAAAmAAAAJwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAoAAAAKQAAACoAAABONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlckUAAAAYOwAAgAgAADwIAAAAAAAABAkAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyRQAAAADwOgAA3AgAAP////8AAAAAfAkAADQAAAA1AAAAHAAAADYAAAA3AAAAHwAAACAAAAAhAAAAOAAAADkAAAA6AAAAOwAAADwAAABONWRyYWNvMzdTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlcnNDb250cm9sbGVyRQAYOwAATAkAADwIAAAAAAAA8AkAAD0AAAA+AAAAPwAAAC4AAAAvAAAAMAAAAEAAAAAyAAAAQQAAAEIAAABDAAAARAAAAEUAAABONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZURlY29kZXJFABg7AADECQAABAkAAAAAAAB8DAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAE41ZHJhY28zN1ByZWRpY3Rpb25TY2hlbWVUeXBlZERlY29kZXJJbnRlcmZhY2VJaWlFRQBONWRyYWNvMzJQcmVkaWN0aW9uU2NoZW1lRGVjb2RlckludGVyZmFjZUUATjVkcmFjbzI1UHJlZGljdGlvblNjaGVtZUludGVyZmFjZUUA8DoAACAMAAAYOwAA9QsAAEQMAAAYOwAAwQsAAEwMAAAYOwAAbQsAAFgMAAAYOwAA1woAAGQMAAAYOwAANAoAAHAMAAAAAAAAcAwAAEYAAABSAAAAIwAAAEkAAAAjAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAIwAAAAAAAABkDAAARgAAAFMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAAAjAAAAAAAAANgNAABGAAAAVAAAAFUAAABJAAAAVgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAFcAAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAYOwAAMA0AAHAMAAAAAAAA0A4AAFgAAABZAAAAWgAAAEkAAABbAAAASwAAAEwAAABNAAAATgAAAE8AAABcAAAAXQAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAABg7AAAcDgAAcAwAAAAAAAC0DwAAXgAAAF8AAABgAAAASQAAAGEAAABiAAAAYwAAAGQAAABOAAAATwAAAGUAAABmAAAATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAABg7AAAUDwAAcAwAAAAAAACgEAAAZwAAAGgAAABpAAAASQAAAGoAAABrAAAAbAAAAG0AAABOAAAATwAAAG4AAABvAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAGDsAAPgPAABwDAAAAAAAAIwRAABwAAAAcQAAAHIAAABJAAAAcwAAAHQAAAB1AAAAdgAAAE4AAABPAAAAdwAAAHgAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAAAYOwAA5BAAAHAMAAAAAAAAFBMAAHkAAAB6AAAAewAAAHwAAAB9AAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAADwOgAAXxIAABg7AAC0EQAADBMAAAAAAAAMEwAAeQAAAH4AAAAjAAAAfAAAACMAAAAAAAAAoBQAAEYAAAB/AAAAgAAAAEkAAACBAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAggAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAABg7AAAKFAAAZAwAABg7AAB0EwAAlBQAAAAAAACUFAAARgAAAIMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAAAjAAAAAAAAALgVAABGAAAAhAAAAIUAAABJAAAAhgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAIcAAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAYOwAAHBUAAJQUAAAAAAAApBYAAIgAAACJAAAAigAAAEkAAACLAAAASwAAAEwAAABNAAAATgAAAE8AAACMAAAAjQAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAABg7AAD8FQAAlBQAAAAAAAB8FwAAjgAAAI8AAACQAAAASQAAAJEAAACSAAAAkwAAAJQAAABOAAAATwAAAJUAAACWAAAATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAABg7AADoFgAAlBQAAAAAAABcGAAAlwAAAJgAAACZAAAASQAAAJoAAACbAAAAnAAAAJ0AAABOAAAATwAAAJ4AAACfAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAGDsAAMAXAACUFAAAAAAAADgZAACgAAAAoQAAAKIAAABJAAAAowAAAKQAAAClAAAApgAAAE4AAABPAAAApwAAAKgAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFABg7AACgGAAAlBQAAAAAAACkGgAAqQAAAKoAAACrAAAArAAAAK0AAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUA8DoAAP4ZAAAYOwAAYBkAAJwaAAAAAAAAnBoAAKkAAACuAAAAIwAAAKwAAAAjAAAAAAAAAGAbAABGAAAArwAAALAAAABJAAAAsQAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAALIAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAAAAABg7AAAEGwAAZAwAAAAAAADUGwAAswAAALQAAAC1AAAALgAAAC8AAAC2AAAAQAAAADIAAABBAAAAtwAAALgAAAC5AAAAugAAAE41ZHJhY28zMlNlcXVlbnRpYWxOb3JtYWxBdHRyaWJ1dGVEZWNvZGVyRQAAGDsAAKgbAADwCQAAAAAAAOAdAAC7AAAAvAAAAL0AAAC+AAAAvwAAAMAAAADBAAAAwgAAAMMAAADEAAAAxQAAAMYAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAYOwAAaR0AAFgMAAAYOwAAyBwAAMgdAAAYOwAAGBwAANQdAAAAAAAAfB8AAMcAAADIAAAAyQAAAMoAAADLAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAPA6AAC+HgAAGDsAAAgeAAB0HwAAAAAAAAQhAADMAAAAzQAAAM4AAAC+AAAAzwAAANAAAADRAAAA0gAAAMMAAADEAAAA0wAAANQAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAYOwAAYyAAAMgdAAAYOwAAwB8AAPggAAAAAAAAiCIAANUAAADWAAAA1wAAANgAAADZAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAPA6AADVIQAAGDsAACwhAACAIgAAAAAAADAjAADaAAAA2wAAANwAAAC+AAAA3QAAAN4AAADfAAAA4AAAAMMAAADEAAAA4QAAAOIAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFRUUAGDsAAMwiAADIHQAAAAAAAGQlAADjAAAA5AAAAOUAAADmAAAA5wAAAOgAAADpAAAA6gAAAOsAAADsAAAA7QAAAO4AAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAGDsAAN8kAABYDAAAGDsAADEkAABMJQAAGDsAAHQjAABYJQAAAAAAABwnAADvAAAA8AAAAPEAAADyAAAA8wAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAA8DoAAE8mAAAYOwAAjCUAABQnAAAAAAAAwCgAAPQAAAD1AAAA9gAAAOYAAAD3AAAA+AAAAPkAAAD6AAAA6wAAAOwAAAD7AAAA/AAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAYOwAAECgAAEwlAAAYOwAAYCcAALQoAAAAAAAAXCoAAP0AAAD+AAAA/wAAAAABAAABAQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAPA6AACeKQAAGDsAAOgoAABUKgAAAAAAABQrAADaAAAAAgEAAAMBAADmAAAABAEAAAUBAAAGAQAABwEAAOsAAADsAAAACAEAAAkBAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAABg7AACgKgAATCUAAAAAAACYKwAACgEAAAsBAAAMAQAALgAAAC8AAAANAQAAQAAAADIAAABBAAAADgEAAEMAAABEAAAADwEAABABAAARAQAATjVkcmFjbzM4U2VxdWVudGlhbFF1YW50aXphdGlvbkF0dHJpYnV0ZURlY29kZXJFAAAAABg7AABkKwAA8AkAAAAAAAD4KwAAEgEAABMBAAAUAQAAFQEAACMAAAAWAQAAFwEAABgBAAAZAQAAGgEAABsBAAAcAQAAIwAAAE41ZHJhY28xMU1lc2hEZWNvZGVyRQAAABg7AADgKwAATDQAAAAAAABkLAAAHQEAAB4BAAAUAQAAHwEAACABAAAWAQAAFwEAABgBAAAhAQAAIgEAACMBAAAkAQAAJQEAAE41ZHJhY28yMk1lc2hFZGdlYnJlYWtlckRlY29kZXJFAAAAABg7AABALAAA+CsAAAAAAACILQAAJgEAACcBAAAoAQAAKQEAACoBAAArAQAALAEAAC0BAAAuAQAALwEAAP////8AAAAA7C0AADABAAAxAQAAMgEAADMBAAA0AQAANQEAADYBAAA3AQAAOAEAADkBAAAAAAAATC4AADoBAAA7AQAAPAEAAD0BAAA+AQAAPwEAAEABAABBAQAAQgEAAEMBAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU18zMU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbERlY29kZXJFRUUATjVkcmFjbzM1TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJbnRlcmZhY2VFAAAA8DoAAFAtAAAYOwAABC0AAIAtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU180MU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbFByZWRpY3RpdmVEZWNvZGVyRUVFAAAAGDsAAJQtAACALQAATjVkcmFjbzI2TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJTlNfMzhNZXNoRWRnZWJyZWFrZXJUcmF2ZXJzYWxWYWxlbmNlRGVjb2RlckVFRQAAGDsAAPgtAACALQAAAAAAAEgvAABEAQAARQEAAEYBAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUATjVkcmFjbzEzVHJhdmVyc2VyQmFzZUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAPA6AADZLgAAGDsAAGwuAABALwAAAAAAAEAvAABHAQAASAEAAEYB");l(e,12148,"AQAAAAMAAAAFAAAABwAAAAAAAABIMAAASQEAAEoBAABLAQAATAEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAE41ZHJhY28xNVBvaW50c1NlcXVlbmNlckUAAAAA8DoAACMwAAAYOwAAnC8AAEAwAAD/////AAAAADgxAABNAQAATgEAAE8BAABONWRyYWNvMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQBONWRyYWNvMTNUcmF2ZXJzZXJCYXNlSU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAA8DoAANUwAAAYOwAAbDAAADAxAAAAAAAAMDEAAFABAABRAQAATwEAAAAAAADwMQAAUgEAAFMBAABUAQAAVQEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAAAAGDsAAHAxAABAMAAAAAAAAHAyAABWAQAAVwEAAE8BAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAYOwAAEDIAADAxAAAAAAAAIDMAAFgBAABZAQAAWgEAAFsBAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMl9FRUVFRUUAABg7AACUMgAAQDA=");l(e,13108,"jDMAABIBAABcAQAAFAEAABUBAABdAQAAFgEAABcBAAAYAQAAGQEAABoBAAAbAQAAHAEAAF4BAABONWRyYWNvMjFNZXNoU2VxdWVudGlhbERlY29kZXJFABg7AABsMwAA+CsAAAAAAADMMwAAXwEAAGABAABhAQAAYgEAAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUAAAAYOwAAsDMAAEAwAAAAAAAATDQAABIBAABjAQAAZAEAABUBAAAjAAAAZQEAABcBAAAYAQAAGQE=");l(e,13328,"RmFpbGVkIHRvIHBhcnNlIERyYWNvIGhlYWRlci4ATjVkcmFjbzE3UG9pbnRDbG91ZERlY29kZXJFAAAA8DoAAC40AAAAAAAApDQAABIBAABmAQAAZAEAABUBAABnAQAAaAEAABcBAAAYAQAAGQEAAE41ZHJhY28yM1BvaW50Q2xvdWRLZFRyZWVEZWNvZGVyRQAAABg7AACANAAATDQAAAAAAAAENQAAEgEAAGkBAABkAQAAFQEAAGoBAABrAQAAFwEAABgBAAAZAQAATjVkcmFjbzI3UG9pbnRDbG91ZFNlcXVlbnRpYWxEZWNvZGVyRQAAABg7AADcNAAATDQAAAEAAAABAAAAAgAAAAIAAAAEAAAABAAAAAgAAAAIAAAABAAAAAgAAAAB");l(e,13635,"wAAAAMAAAADAAAAAwP//////////AAAAAIA1AABsAQAAbQEAAG4BAABvAQAATjVkcmFjbzRNZXNoRQAAABg7AABwNQAAxDUAAP////8AAAAAAAAAAMQ1AABwAQAAcQEAAHIBAABzAQAATjVkcmFjbzEwUG9pbnRDbG91ZEUAAAAA8DoAAKw1AAC4PAAAGQAKABkZGQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAAZABEKGRkZAwoHAAEACQsYAAAJBgsAAAsABhkAAAAZGRk=");l(e,13857,"DgAAAAAAAAAAGQAKDRkZGQANAAACAAkOAAAACQAOAAAO");l(e,13915,"DA==");l(e,13927,"EwAAAAATAAAAAAkMAAAAAAAMAAAM");l(e,13973,"EA==");l(e,13985,"DwAAAAQPAAAAAAkQAAAAAAAQAAAQ");l(e,14031,"Eg==");l(e,14043,"EQAAAAARAAAAAAkSAAAAAAASAAASAAAaAAAAGhoa");l(e,14098,"GgAAABoaGgAAAAAAAAk=");l(e,14147,"FA==");l(e,14159,"FwAAAAAXAAAAAAkUAAAAAAAUAAAU");l(e,14205,"Fg==");l(e,14217,"FQAAAAAVAAAAAAkWAAAAAAAWAAAWAAAwMTIzNDU2Nzg5QUJDREVGAAAAAAIAAAADAAAABQAAAAcAAAALAAAADQAAABEAAAATAAAAFwAAAB0AAAAfAAAAJQAAACkAAAArAAAALwAAADUAAAA7AAAAPQAAAEMAAABHAAAASQAAAE8AAABTAAAAWQAAAGEAAABlAAAAZwAAAGsAAABtAAAAcQAAAH8AAACDAAAAiQAAAIsAAACVAAAAlwAAAJ0AAACjAAAApwAAAK0AAACzAAAAtQAAAL8AAADBAAAAxQAAAMcAAADTAAAAAQAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAeQAAAH8AAACDAAAAiQAAAIsAAACPAAAAlQAAAJcAAACdAAAAowAAAKcAAACpAAAArQAAALMAAAC1AAAAuwAAAL8AAADBAAAAxQAAAMcAAADRAAAAMDAwMTAyMDMwNDA1MDYwNzA4MDkxMDExMTIxMzE0MTUxNjE3MTgxOTIwMjEyMjIzMjQyNTI2MjcyODI5MzAzMTMyMzMzNDM1MzYzNzM4Mzk0MDQxNDI0MzQ0NDU0NjQ3NDg0OTUwNTE1MjUzNTQ1NTU2NTc1ODU5NjA2MTYyNjM2NDY1NjY2NzY4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5Nzk4OTk=");l(e,14852,"CgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QUAypo7TjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAAAAAGDsAACg6AACsPAAATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAAAAGDsAAFg6AABMOgAATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAAAAGDsAAIg6AABMOgAATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UAGDsAALg6AACsOgAAAAAAAHw6AAB5AQAAegEAAHsBAAB8AQAAfQEAAH4BAAB/AQAAgAEAAAAAAABgOwAAeQEAAIEBAAB7AQAAfAEAAH0BAACCAQAAgwEAAIQBAABOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UAAAAAGDsAADg7AAB8OgAAAAAAANA7AAAOAAAAhQEAAIYBAAAAAAAA+DsAAA4AAACHAQAAiAEAAAAAAAC4OwAADgAAAIkBAACKAQAAU3Q5ZXhjZXB0aW9uAAAAAPA6AACoOwAAU3Q5YmFkX2FsbG9jAAAAABg7AADAOwAAuDsAAFN0MjBiYWRfYXJyYXlfbmV3X2xlbmd0aAAAAAAYOwAA3DsAANA7AAAAAAAAKDwAAAEAAACLAQAAjAEAAFN0MTFsb2dpY19lcnJvcgAYOwAAGDwAALg7AAAAAAAAXDwAAAEAAACNAQAAjAEAAFN0MTJsZW5ndGhfZXJyb3IAAAAAGDsAAEg8AAAoPAAAAAAAAJA8AAABAAAAjgEAAIwBAABTdDEyb3V0X29mX3JhbmdlAAAAABg7AAB8PAAAKDwAAFN0OXR5cGVfaW5mbwAAAADwOgAAnDw=");l(e,15544,"BQ==");l(e,15556,"dAE=");l(e,15580,"dQEAAHYBAABMPg==");l(e,15604,"Ag==");l(e,15620,"//////////8=");l(e,15688,"BQ==");l(e,15700,"dwE=");l(e,15724,"dQEAAHgBAABYPgAAAAQ=");l(e,15748,"AQ==");l(e,15764,"/////wo=");l(e,15833,"RVA=")}var r=new ArrayBuffer(16);var s=new Int32Array(r);var t=new Float32Array(r);var u=new Float64Array(r);function v(w){t[2]=w}function x(y){return s[y]}function z(y,w){s[y]=w}function A(){return t[2]}function oa(pa){var B=pa.a;var C=B.buffer;B.grow=ma;var D=new Int8Array(C);var E=new Int16Array(C);var F=new Int32Array(C);var G=new Uint8Array(C);var H=new Uint16Array(C);var I=new Uint32Array(C);var J=new Float32Array(C);var K=new Float64Array(C);var L=Math.imul;var M=Math.fround;var N=Math.abs;var O=Math.clz32;var P=Math.min;var Q=Math.max;var R=Math.floor;var S=Math.ceil;var T=Math.trunc;var U=Math.sqrt;var V=pa.abort;var W=NaN;var X=Infinity;var Y=pa.b;var Z=pa.c;var _=pa.d;var $=pa.e;var aa=pa.f;var ba=pa.g;var ca=pa.h;var da=pa.i;var ea=5260544;var fa=0;
// EMSCRIPTEN_START_FUNCS
function Td(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;w=ea-672|0;ea=w;g=F[b+12>>2];d=F[b+20>>2];f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;a:{b:{c:{if(e>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break c}d=f+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];g=d;e=F[b+16>>2];f=e+4|0;d=f>>>0<4?d+1|0:d;l=f;F[b+16>>2]=f;F[b+20>>2]=d;if(I[a>>2]>31){break c}f=F[b+12>>2];d=g;g=e+8|0;d=g>>>0<8?d+1|0:d;if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break c}d=l+F[b>>2]|0;F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];g=d;e=F[b+16>>2];f=e+4|0;d=f>>>0<4?d+1|0:d;l=f;F[b+16>>2]=f;F[b+20>>2]=d;f=F[b+12>>2];d=g;g=e+8|0;d=g>>>0<8?d+1|0:d;if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break c}d=l+F[b>>2]|0;F[a+12>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];g=d;e=F[b+16>>2];f=e+4|0;d=f>>>0<4?d+1|0:d;n=f;F[b+16>>2]=f;F[b+20>>2]=d;d=F[a+20>>2];l=F[a+12>>2];if((l|0)!=(d|0)?d:0){break c}f=F[b+12>>2];d=g;g=e+8|0;d=g>>>0<8?d+1|0:d;if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break c}d=n+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+16>>2]=g;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(g>>>0>=7){F[w>>2]=g;Pd(1713,w);break c}F[w+664>>2]=c;d:{if(!l){break d}e:{e=F[c>>2];if(l>>>0<=(F[c+8>>2]-e|0)/12>>>0){break e}if(l>>>0<357913942){f=F[c+4>>2];g=L(l,12);d=sa(g);l=d+g|0;g=d+L((f-e|0)/12|0,12)|0;d=g;if((e|0)!=(f|0)){d=g;while(1){d=d-12|0;f=f-12|0;F[d>>2]=F[f>>2];F[d+4>>2]=F[f+4>>2];F[d+8>>2]=F[f+8>>2];if((e|0)!=(f|0)){continue}break}}F[c+8>>2]=l;F[c+4>>2]=g;F[c>>2]=d;if(!e){break e}ra(e);break e}break b}f:{switch(F[a+16>>2]){case 0:j=zb(w+8|0,3);v=w+664|0;h=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;g:{if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){break g}d=g+F[b>>2]|0;F[j>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];h=d;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;F[b+16>>2]=e;F[b+20>>2]=d;if(I[j>>2]>32){break g}g=F[b+12>>2];d=h;h=f+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break g}d=e+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[j+4>>2]=h;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!h){break g}F[j+8>>2]=0;if(!xa(j+16|0,b)){break g}if(!xa(j+36|0,b)){break g}if(!xa(j+56|0,b)){break g}if(!xa(j+76|0,b)){break g}q=F[j+4>>2];g=0;e=ea-32|0;ea=e;f=F[j+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break b}b=f<<2;i=sa(b);F[e+8>>2]=i;g=b+i|0;F[e+16>>2]=g;ua(i,0,b);F[e+12>>2]=g}b=F[j+120>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[j+12>>2];i=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];i=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=0;h:{if(f){if(f>>>0>=1073741824){break b}b=f<<2;g=sa(b);F[e+8>>2]=g;i=b+g|0;F[e+16>>2]=i;ua(g,0,b);F[e+12>>2]=i}b=F[j+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[e+12>>2];g=F[e+8>>2]}F[b+4>>2]=i;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=q;f=F[e+28>>2]+1|0;F[e+28>>2]=f;i:{if(!f){break i}y=j+96|0;while(1){b=F[e+12>>2];h=F[e+24>>2];i=f-1|0;d=h+i|0;g=(d>>>0)/341|0;d=F[b+(g<<2)>>2]+L(d-L(g,341)|0,12)|0;n=F[d+8>>2];g=F[d+4>>2];k=F[d>>2];F[e+28>>2]=i;d=F[e+16>>2];if((((b|0)==(d|0)?0:L(d-b>>2,341)-1|0)-(f+h|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[e+16>>2]=F[e+16>>2]-4}h=0;if(k>>>0>q>>>0){break i}b=F[j+12>>2];f=(g|0)==(b-1|0)?0:g+1|0;if(f>>>0>=b>>>0){break i}i=L(n,12);o=i+F[j+132>>2]|0;l=i+F[j+120>>2]|0;d=F[j>>2];m=f<<2;g=F[m+F[o>>2]>>2];j:{k:{if((d|0)==(g|0)){if(!k){break k}while(1){b=F[l>>2];o=F[b+8>>2];m=F[b+4>>2];p=F[b>>2];d=F[v>>2];f=F[d+4>>2];g=F[d+8>>2];l:{if(f>>>0<g>>>0){F[f+8>>2]=o;F[f+4>>2]=m;F[f>>2]=p;F[d+4>>2]=f+12;break l}i=F[d>>2];t=(f-i|0)/12|0;b=t+1|0;if(b>>>0>=357913942){break b}g=(g-i|0)/12|0;n=g<<1;n=g>>>0<178956970?b>>>0<n>>>0?n:b:357913941;if(n){if(n>>>0>=357913942){break a}b=sa(L(n,12))}else{b=0}g=b+L(t,12)|0;F[g+8>>2]=o;F[g+4>>2]=m;F[g>>2]=p;o=g+12|0;if((f|0)!=(i|0)){while(1){g=g-12|0;f=f-12|0;F[g>>2]=F[f>>2];F[g+4>>2]=F[f+4>>2];F[g+8>>2]=F[f+8>>2];if((f|0)!=(i|0)){continue}break}}F[d+8>>2]=b+L(n,12);F[d+4>>2]=o;F[d>>2]=g;if(!i){break l}ra(i)}F[j+8>>2]=F[j+8>>2]+1;h=h+1|0;if((k|0)!=(h|0)){continue}break}break k}m:{n:{o:{p:{if(k>>>0<=2){b=F[j+108>>2];F[b>>2]=f;g=1;i=F[j+12>>2];if(i>>>0>1){break p}break m}if(I[j+8>>2]>I[j+4>>2]){break i}b=F[j+120>>2];p=n+1|0;o=L(p,12);h=b+o|0;if((h|0)!=(l|0)){Ca(h,F[l>>2],F[l+4>>2]);b=F[j+120>>2]}b=m+F[b+o>>2]|0;F[b>>2]=F[b>>2]+(1<<d+(g^-1));b=O(k)^31;d=F[j+32>>2];g=32-d|0;q:{if((b|0)<=(g|0)){h=F[j+28>>2];if((h|0)==F[j+20>>2]){break o}g=F[h>>2];l=b+d|0;F[j+32>>2]=l;g=g<<d>>>32-b|0;if((l|0)!=32){break q}F[j+32>>2]=0;F[j+28>>2]=h+4;break q}h=F[j+28>>2];l=h+4|0;if((l|0)==F[j+20>>2]){break o}t=F[h>>2];F[j+28>>2]=l;g=b-g|0;F[j+32>>2]=g;g=F[h+4>>2]>>>32-g|t<<d>>>32-b}d=k>>>1|0;if(g>>>0>d>>>0){break i}break n}while(1){f=(i-1|0)==(f|0)?0:f+1|0;F[b+(g<<2)>>2]=f;g=g+1|0;i=F[j+12>>2];if(g>>>0<i>>>0){continue}break}break m}d=k>>>1|0;g=0}r:{s:{b=d-g|0;h=k-b|0;t:{if((h|0)==(b|0)){d=b;break t}d=F[j+88>>2];if((d|0)==F[j+80>>2]){break s}g=F[d>>2];k=F[j+92>>2];l=k+1|0;F[j+92>>2]=l;g=g&-2147483648>>>k;u:{if((l|0)==32){F[j+92>>2]=0;F[j+88>>2]=d+4;if(g){break u}break s}if(!g){break s}}d=h}h=b;break r}d=b}b=F[j+132>>2];g=b+i|0;i=F[g>>2];k=i+m|0;F[k>>2]=F[k>>2]+1;Ca(b+o|0,i,F[g+4>>2]);if(h){i=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];g=F[e+12>>2];if((i|0)==(((b|0)==(g|0)?0:L(b-g>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+24>>2]+F[e+28>>2]|0;g=F[e+12>>2]}b=(i>>>0)/341|0;b=F[g+(b<<2)>>2]+L(i-L(b,341)|0,12)|0;F[b+8>>2]=n;F[b+4>>2]=f;F[b>>2]=h;F[e+28>>2]=F[e+28>>2]+1}if(!d){break k}i=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];g=F[e+12>>2];if((i|0)==(((b|0)==(g|0)?0:L(b-g>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+24>>2]+F[e+28>>2]|0;g=F[e+12>>2]}b=(i>>>0)/341|0;b=F[g+(b<<2)>>2]+L(i-L(b,341)|0,12)|0;F[b+8>>2]=p;F[b+4>>2]=f;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break j}i=0;if(!k){break k}while(1){if(F[j+12>>2]){t=F[l>>2];g=F[j+40>>2];s=F[o>>2];h=F[j+96>>2];z=F[j+108>>2];f=0;while(1){n=z+(f<<2)|0;F[h+(F[n>>2]<<2)>>2]=0;d=F[j>>2];b=F[n>>2]<<2;m=F[b+s>>2];v:{if((d|0)==(m|0)){break v}b=b+h|0;d=d-m|0;m=F[j+52>>2];u=32-m|0;if((d|0)<=(u|0)){p=F[j+48>>2];if((p|0)==(g|0)){F[b>>2]=0;break v}F[b>>2]=F[p>>2]<<m>>>32-d;b=d+F[j+52>>2]|0;F[j+52>>2]=b;if((b|0)!=32){break v}F[j+52>>2]=0;F[j+48>>2]=p+4;break v}p=F[j+48>>2];r=p+4|0;if((r|0)==(g|0)){F[b>>2]=0;break v}x=F[p>>2];F[j+48>>2]=r;u=d-u|0;F[j+52>>2]=u;F[b>>2]=F[p+4>>2]>>>32-u|x<<m>>>32-d}b=F[n>>2]<<2;d=b+h|0;F[d>>2]=F[d>>2]|F[b+t>>2];f=f+1|0;if(f>>>0<I[j+12>>2]){continue}break}}ob(v,y);F[j+8>>2]=F[j+8>>2]+1;i=i+1|0;if((k|0)!=(i|0)){continue}break}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;b=F[e+16>>2];f=F[e+12>>2];g=b-f|0;if(g>>>0>=9){while(1){ra(F[f>>2]);f=F[e+12>>2]+4|0;F[e+12>>2]=f;b=F[e+16>>2];g=b-f|0;if(g>>>0>8){continue}break}}i=170;w:{switch((g>>>2|0)-1|0){case 1:i=341;case 0:F[e+24>>2]=i;break;default:break w}}x:{if((b|0)==(f|0)){break x}while(1){ra(F[f>>2]);f=f+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break x}F[e+16>>2]=b+((d-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break h}}Ab(j);break d;case 1:j=zb(w+8|0,3);v=w+664|0;h=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;y:{if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){break y}d=g+F[b>>2]|0;F[j>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];h=d;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;F[b+16>>2]=e;F[b+20>>2]=d;if(I[j>>2]>32){break y}g=F[b+12>>2];d=h;h=f+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break y}d=e+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[j+4>>2]=h;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!h){break y}F[j+8>>2]=0;if(!xa(j+16|0,b)){break y}if(!xa(j+36|0,b)){break y}if(!xa(j+56|0,b)){break y}if(!xa(j+76|0,b)){break y}q=F[j+4>>2];h=0;g=0;e=ea-32|0;ea=e;f=F[j+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break b}b=f<<2;h=sa(b);F[e+8>>2]=h;g=b+h|0;F[e+16>>2]=g;ua(h,0,b);F[e+12>>2]=g}b=F[j+120>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[j+12>>2];g=F[e+12>>2];h=F[e+8>>2]}F[b+4>>2]=g;F[b>>2]=h;F[b+8>>2]=F[e+16>>2];h=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;z:{if(f){if(f>>>0>=1073741824){break b}b=f<<2;i=sa(b);F[e+8>>2]=i;h=b+i|0;F[e+16>>2]=h;ua(i,0,b);F[e+12>>2]=h}b=F[j+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[e+8>>2];h=F[e+12>>2]}F[b+4>>2]=h;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=q;f=F[e+28>>2]+1|0;F[e+28>>2]=f;A:{if(!f){break A}y=j+96|0;while(1){b=F[e+12>>2];i=F[e+24>>2];l=f-1|0;d=i+l|0;h=(d>>>0)/341|0;d=F[b+(h<<2)>>2]+L(d-L(h,341)|0,12)|0;k=F[d+8>>2];h=F[d+4>>2];g=F[d>>2];F[e+28>>2]=l;d=F[e+16>>2];if((((b|0)==(d|0)?0:L(d-b>>2,341)-1|0)-(f+i|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(g>>>0>q>>>0){break A}b=F[j+12>>2];f=(h|0)==(b-1|0)?0:h+1|0;if(f>>>0>=b>>>0){break A}b=F[j+120>>2];n=L(k,12);l=b+n|0;d=F[j>>2];o=f<<2;p=n+F[j+132>>2]|0;h=F[o+F[p>>2]>>2];B:{C:{if((d|0)==(h|0)){n=0;if(!g){break C}while(1){b=F[l>>2];o=F[b+8>>2];m=F[b+4>>2];p=F[b>>2];d=F[v>>2];f=F[d+4>>2];i=F[d+8>>2];D:{if(f>>>0<i>>>0){F[f+8>>2]=o;F[f+4>>2]=m;F[f>>2]=p;F[d+4>>2]=f+12;break D}h=F[d>>2];t=(f-h|0)/12|0;b=t+1|0;if(b>>>0>=357913942){break b}i=(i-h|0)/12|0;k=i<<1;k=i>>>0<178956970?b>>>0<k>>>0?k:b:357913941;if(k){if(k>>>0>=357913942){break a}b=sa(L(k,12))}else{b=0}i=b+L(t,12)|0;F[i+8>>2]=o;F[i+4>>2]=m;F[i>>2]=p;o=i+12|0;if((f|0)!=(h|0)){while(1){i=i-12|0;f=f-12|0;F[i>>2]=F[f>>2];F[i+4>>2]=F[f+4>>2];F[i+8>>2]=F[f+8>>2];if((f|0)!=(h|0)){continue}break}}F[d+8>>2]=b+L(k,12);F[d+4>>2]=o;F[d>>2]=i;if(!h){break D}ra(h)}F[j+8>>2]=F[j+8>>2]+1;n=n+1|0;if((g|0)!=(n|0)){continue}break}break C}E:{F:{G:{H:{if(g>>>0<=2){b=F[j+108>>2];F[b>>2]=f;i=1;h=F[j+12>>2];if(h>>>0>1){break H}break E}if(I[j+8>>2]>I[j+4>>2]){break A}i=b;b=n+12|0;Ca(i+b|0,F[l>>2],F[l+4>>2]);b=o+F[b+F[j+120>>2]>>2]|0;F[b>>2]=F[b>>2]+(1<<d+(h^-1));b=O(g)^31;d=F[j+32>>2];i=32-d|0;I:{if((b|0)<=(i|0)){h=F[j+28>>2];if((h|0)==F[j+20>>2]){break G}i=F[h>>2];l=b+d|0;F[j+32>>2]=l;i=i<<d>>>32-b|0;if((l|0)!=32){break I}F[j+32>>2]=0;F[j+28>>2]=h+4;break I}h=F[j+28>>2];l=h+4|0;if((l|0)==F[j+20>>2]){break G}m=F[h>>2];F[j+28>>2]=l;i=b-i|0;F[j+32>>2]=i;i=F[h+4>>2]>>>32-i|m<<d>>>32-b}d=g>>>1|0;if(i>>>0>d>>>0){break A}break F}while(1){f=(h-1|0)==(f|0)?0:f+1|0;F[b+(i<<2)>>2]=f;h=F[j+12>>2];i=i+1|0;if(h>>>0>i>>>0){continue}break}break E}d=g>>>1|0;i=0}l=k+1|0;J:{K:{b=d-i|0;h=g-b|0;L:{if((h|0)==(b|0)){d=b;break L}d=F[j+88>>2];if((d|0)==F[j+80>>2]){break K}g=F[d>>2];i=F[j+92>>2];m=i+1|0;F[j+92>>2]=m;g=g&-2147483648>>>i;M:{if((m|0)==32){F[j+92>>2]=0;F[j+88>>2]=d+4;if(g){break M}break K}if(!g){break K}}d=h}h=b;break J}d=b}b=F[j+132>>2];g=b+n|0;i=F[g>>2];n=i+o|0;F[n>>2]=F[n>>2]+1;Ca(b+L(l,12)|0,i,F[g+4>>2]);if(h){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];i=F[e+12>>2];if((g|0)==(((b|0)==(i|0)?0:L(b-i>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+i>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=f;F[b>>2]=h;F[e+28>>2]=F[e+28>>2]+1}if(!d){break C}h=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];i=F[e+12>>2];if((h|0)==(((b|0)==(i|0)?0:L(b-i>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+12>>2];h=F[e+24>>2]+F[e+28>>2]|0}b=(h>>>0)/341|0;b=F[(b<<2)+i>>2]+L(h-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=f;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break B}k=0;if(!g){break C}while(1){if(F[j+12>>2]){t=F[l>>2];i=F[j+40>>2];s=F[p>>2];h=F[j+96>>2];z=F[j+108>>2];f=0;while(1){n=z+(f<<2)|0;F[h+(F[n>>2]<<2)>>2]=0;d=F[j>>2];b=F[n>>2]<<2;o=F[b+s>>2];N:{if((d|0)==(o|0)){break N}b=b+h|0;d=d-o|0;o=F[j+52>>2];u=32-o|0;if((d|0)<=(u|0)){m=F[j+48>>2];if((m|0)==(i|0)){F[b>>2]=0;break N}F[b>>2]=F[m>>2]<<o>>>32-d;b=d+F[j+52>>2]|0;F[j+52>>2]=b;if((b|0)!=32){break N}F[j+52>>2]=0;F[j+48>>2]=m+4;break N}m=F[j+48>>2];r=m+4|0;if((r|0)==(i|0)){F[b>>2]=0;break N}x=F[m>>2];F[j+48>>2]=r;u=d-u|0;F[j+52>>2]=u;F[b>>2]=F[m+4>>2]>>>32-u|x<<o>>>32-d}b=F[n>>2]<<2;d=b+h|0;F[d>>2]=F[d>>2]|F[b+t>>2];f=f+1|0;if(f>>>0<I[j+12>>2]){continue}break}}ob(v,y);F[j+8>>2]=F[j+8>>2]+1;k=k+1|0;if((g|0)!=(k|0)){continue}break}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;b=F[e+16>>2];f=F[e+12>>2];i=b-f|0;if(i>>>0>=9){while(1){ra(F[f>>2]);f=F[e+12>>2]+4|0;F[e+12>>2]=f;b=F[e+16>>2];i=b-f|0;if(i>>>0>8){continue}break}}g=170;O:{switch((i>>>2|0)-1|0){case 1:g=341;case 0:F[e+24>>2]=g;break;default:break O}}P:{if((b|0)==(f|0)){break P}while(1){ra(F[f>>2]);f=f+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break P}F[e+16>>2]=b+((d-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break z}}Ab(j);break d;case 2:j=xb(w+8|0,3);v=w+664|0;g=F[b+12>>2];d=F[b+20>>2];f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;Q:{if(e>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break Q}d=f+F[b>>2]|0;F[j>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];g=d;e=F[b+16>>2];f=e+4|0;d=f>>>0<4?d+1|0:d;k=f;F[b+16>>2]=f;F[b+20>>2]=d;if(I[j>>2]>32){break Q}f=F[b+12>>2];d=g;g=e+8|0;d=g>>>0<8?d+1|0:d;if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break Q}d=k+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[j+4>>2]=g;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!g){break Q}F[j+8>>2]=0;if(!wa(j+16|0,b)){break Q}if(!xa(j+32|0,b)){break Q}if(!xa(j+52|0,b)){break Q}if(!xa(j+72|0,b)){break Q}q=F[j+4>>2];g=0;e=ea-32|0;ea=e;f=F[j+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break b}b=f<<2;g=sa(b);F[e+8>>2]=g;h=b+g|0;F[e+16>>2]=h;ua(g,0,b);F[e+12>>2]=h}b=F[j+116>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[j+12>>2];g=F[e+8>>2];h=F[e+12>>2]}F[b+4>>2]=h;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;R:{if(f){if(f>>>0>=1073741824){break b}b=f<<2;i=sa(b);F[e+8>>2]=i;g=b+i|0;F[e+16>>2]=g;ua(i,0,b);F[e+12>>2]=g}b=F[j+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=q;f=F[e+28>>2]+1|0;F[e+28>>2]=f;S:{if(!f){break S}y=j+92|0;t=j+16|0;while(1){b=F[e+12>>2];i=F[e+24>>2];l=f-1|0;d=i+l|0;h=(d>>>0)/341|0;d=F[b+(h<<2)>>2]+L(d-L(h,341)|0,12)|0;k=F[d+8>>2];g=F[d+4>>2];h=F[d>>2];F[e+28>>2]=l;d=F[e+16>>2];if((((b|0)==(d|0)?0:L(d-b>>2,341)-1|0)-(f+i|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[e+16>>2]=F[e+16>>2]-4}d=0;if(h>>>0>q>>>0){break S}b=F[j+12>>2];f=(g|0)==(b-1|0)?0:g+1|0;if(f>>>0>=b>>>0){break S}g=L(k,12);n=g+F[j+128>>2]|0;l=g+F[j+116>>2]|0;o=F[j>>2];i=f<<2;m=F[i+F[n>>2]>>2];T:{if((o|0)==(m|0)){if(!h){break T}while(1){b=F[l>>2];o=F[b+8>>2];m=F[b+4>>2];p=F[b>>2];g=F[v>>2];f=F[g+4>>2];i=F[g+8>>2];U:{if(f>>>0<i>>>0){F[f+8>>2]=o;F[f+4>>2]=m;F[f>>2]=p;F[g+4>>2]=f+12;break U}k=F[g>>2];s=(f-k|0)/12|0;b=s+1|0;if(b>>>0>=357913942){break b}i=(i-k|0)/12|0;n=i<<1;n=i>>>0<178956970?b>>>0<n>>>0?n:b:357913941;if(n){if(n>>>0>=357913942){break a}b=sa(L(n,12))}else{b=0}i=b+L(s,12)|0;F[i+8>>2]=o;F[i+4>>2]=m;F[i>>2]=p;o=i+12|0;if((f|0)!=(k|0)){while(1){i=i-12|0;f=f-12|0;F[i>>2]=F[f>>2];F[i+4>>2]=F[f+4>>2];F[i+8>>2]=F[f+8>>2];if((f|0)!=(k|0)){continue}break}}F[g+8>>2]=b+L(n,12);F[g+4>>2]=o;F[g>>2]=i;if(!k){break U}ra(k)}F[j+8>>2]=F[j+8>>2]+1;d=d+1|0;if((h|0)!=(d|0)){continue}break}break T}V:{W:{X:{Y:{if(h>>>0<=2){b=F[j+104>>2];F[b>>2]=f;i=1;g=F[j+12>>2];if(g>>>0>1){break Y}break V}if(I[j+8>>2]>I[j+4>>2]){break S}b=F[j+116>>2];p=k+1|0;n=L(p,12);d=b+n|0;if((d|0)!=(l|0)){Ca(d,F[l>>2],F[l+4>>2]);b=F[j+116>>2]}b=i+F[b+n>>2]|0;F[b>>2]=F[b>>2]+(1<<o+(m^-1));F[e+4>>2]=0;pc(t,O(h)^31,e+4|0);b=h>>>1|0;d=F[e+4>>2];if(b>>>0<d>>>0){break S}b=b-d|0;d=h-b|0;Z:{if((d|0)==(b|0)){d=b;break Z}h=F[j+84>>2];if((h|0)==F[j+76>>2]){break X}l=F[h>>2];o=F[j+88>>2];m=o+1|0;F[j+88>>2]=m;l=l&-2147483648>>>o;_:{if((m|0)==32){F[j+88>>2]=0;F[j+84>>2]=h+4;if(l){break _}break X}if(!l){break X}}}h=d;d=b;break W}while(1){f=(g-1|0)==(f|0)?0:f+1|0;F[b+(i<<2)>>2]=f;g=F[j+12>>2];i=i+1|0;if(g>>>0>i>>>0){continue}break}break V}h=b}l=i;b=F[j+128>>2];g=b+g|0;i=F[g>>2];l=l+i|0;F[l>>2]=F[l>>2]+1;Ca(b+n|0,i,F[g+4>>2]);if(d){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];i=F[e+12>>2];if((g|0)==(((b|0)==(i|0)?0:L(b-i>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+i>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=f;F[b>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!h){break T}g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];i=F[e+12>>2];if((g|0)==(((b|0)==(i|0)?0:L(b-i>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+i>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=p;F[b+4>>2]=f;F[b>>2]=h;F[e+28>>2]=F[e+28>>2]+1;break T}k=0;if(!h){break T}while(1){if(F[j+12>>2]){s=F[l>>2];i=F[j+36>>2];z=F[n>>2];g=F[j+92>>2];u=F[j+104>>2];f=0;while(1){o=u+(f<<2)|0;F[g+(F[o>>2]<<2)>>2]=0;d=F[j>>2];b=F[o>>2]<<2;m=F[b+z>>2];$:{if((d|0)==(m|0)){break $}b=b+g|0;d=d-m|0;m=F[j+48>>2];r=32-m|0;if((d|0)<=(r|0)){p=F[j+44>>2];if((p|0)==(i|0)){F[b>>2]=0;break $}F[b>>2]=F[p>>2]<<m>>>32-d;b=d+F[j+48>>2]|0;F[j+48>>2]=b;if((b|0)!=32){break $}F[j+48>>2]=0;F[j+44>>2]=p+4;break $}p=F[j+44>>2];x=p+4|0;if((x|0)==(i|0)){F[b>>2]=0;break $}A=F[p>>2];F[j+44>>2]=x;r=d-r|0;F[j+48>>2]=r;F[b>>2]=F[p+4>>2]>>>32-r|A<<m>>>32-d}b=F[o>>2]<<2;d=b+g|0;F[d>>2]=F[d>>2]|F[b+s>>2];f=f+1|0;if(f>>>0<I[j+12>>2]){continue}break}}ob(v,y);F[j+8>>2]=F[j+8>>2]+1;k=k+1|0;if((h|0)!=(k|0)){continue}break}}f=F[e+28>>2];if(f){continue}break}}F[e+28>>2]=0;b=F[e+16>>2];f=F[e+12>>2];i=b-f|0;if(i>>>0>=9){while(1){ra(F[f>>2]);f=F[e+12>>2]+4|0;F[e+12>>2]=f;b=F[e+16>>2];i=b-f|0;if(i>>>0>8){continue}break}}g=170;aa:{switch((i>>>2|0)-1|0){case 1:g=341;case 0:F[e+24>>2]=g;break;default:break aa}}ba:{if((b|0)==(f|0)){break ba}while(1){ra(F[f>>2]);f=f+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break ba}F[e+16>>2]=b+((d-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break R}}yb(j);break d;case 3:i=xb(w+8|0,3);n=w+664|0;h=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;ca:{if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){break ca}d=g+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];h=d;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;F[b+16>>2]=e;F[b+20>>2]=d;if(I[i>>2]>32){break ca}g=F[b+12>>2];d=h;h=f+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break ca}d=e+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=h;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!h){break ca}F[i+8>>2]=0;if(!wa(i+16|0,b)){break ca}if(!xa(i+32|0,b)){break ca}if(!xa(i+52|0,b)){break ca}if(!xa(i+72|0,b)){break ca}v=F[i+4>>2];h=0;g=0;e=ea-32|0;ea=e;f=F[i+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break b}b=f<<2;h=sa(b);F[e+8>>2]=h;g=b+h|0;F[e+16>>2]=g;ua(h,0,b);F[e+12>>2]=g}b=F[i+116>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[i+12>>2];g=F[e+12>>2];h=F[e+8>>2]}F[b+4>>2]=g;F[b>>2]=h;F[b+8>>2]=F[e+16>>2];h=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;da:{if(f){if(f>>>0>=1073741824){break b}b=f<<2;k=sa(b);F[e+8>>2]=k;h=b+k|0;F[e+16>>2]=h;ua(k,0,b);F[e+12>>2]=h}b=F[i+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;k=F[e+8>>2];h=F[e+12>>2]}F[b+4>>2]=h;F[b>>2]=k;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=v;f=F[e+28>>2]+1|0;F[e+28>>2]=f;ea:{if(!f){break ea}y=i+92|0;t=i+16|0;while(1){b=F[e+12>>2];k=F[e+24>>2];g=f-1|0;d=k+g|0;h=(d>>>0)/341|0;d=F[b+(h<<2)>>2]+L(d-L(h,341)|0,12)|0;j=F[d+8>>2];h=F[d+4>>2];d=F[d>>2];F[e+28>>2]=g;g=F[e+16>>2];if((((b|0)==(g|0)?0:L(g-b>>2,341)-1|0)-(f+k|0)|0)+1>>>0>=682){ra(F[g-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(d>>>0>v>>>0){break ea}b=F[i+12>>2];f=(h|0)==(b-1|0)?0:h+1|0;if(f>>>0>=b>>>0){break ea}b=F[i+116>>2];g=L(j,12);l=b+g|0;h=F[i>>2];k=f<<2;p=g+F[i+128>>2]|0;q=F[k+F[p>>2]>>2];fa:{if((h|0)==(q|0)){q=0;if(!d){break fa}while(1){b=F[l>>2];o=F[b+8>>2];m=F[b+4>>2];p=F[b>>2];h=F[n>>2];f=F[h+4>>2];j=F[h+8>>2];ga:{if(f>>>0<j>>>0){F[f+8>>2]=o;F[f+4>>2]=m;F[f>>2]=p;F[h+4>>2]=f+12;break ga}g=F[h>>2];k=(f-g|0)/12|0;b=k+1|0;if(b>>>0>=357913942){break b}j=(j-g|0)/12|0;s=j<<1;j=j>>>0<178956970?b>>>0<s>>>0?s:b:357913941;if(j){if(j>>>0>=357913942){break a}b=sa(L(j,12))}else{b=0}k=b+L(k,12)|0;F[k+8>>2]=o;F[k+4>>2]=m;F[k>>2]=p;o=k+12|0;if((g|0)!=(f|0)){while(1){k=k-12|0;f=f-12|0;F[k>>2]=F[f>>2];F[k+4>>2]=F[f+4>>2];F[k+8>>2]=F[f+8>>2];if((g|0)!=(f|0)){continue}break}}F[h+8>>2]=b+L(j,12);F[h+4>>2]=o;F[h>>2]=k;if(!g){break ga}ra(g)}F[i+8>>2]=F[i+8>>2]+1;q=q+1|0;if((d|0)!=(q|0)){continue}break}break fa}ha:{ia:{ja:{ka:{if(d>>>0<=2){b=F[i+104>>2];F[b>>2]=f;k=1;h=F[i+12>>2];if(h>>>0>1){break ka}break ha}if(I[i+8>>2]>I[i+4>>2]){break ea}m=b;b=g+12|0;Ca(m+b|0,F[l>>2],F[l+4>>2]);b=k+F[b+F[i+116>>2]>>2]|0;F[b>>2]=F[b>>2]+(1<<h+(q^-1));F[e+4>>2]=0;pc(t,O(d)^31,e+4|0);b=d>>>1|0;h=F[e+4>>2];if(b>>>0<h>>>0){break ea}l=j+1|0;b=b-h|0;h=d-b|0;la:{if((h|0)==(b|0)){d=b;break la}d=F[i+84>>2];if((d|0)==F[i+76>>2]){break ja}q=F[d>>2];o=F[i+88>>2];m=o+1|0;F[i+88>>2]=m;q=q&-2147483648>>>o;ma:{if((m|0)==32){F[i+88>>2]=0;F[i+84>>2]=d+4;if(q){break ma}break ja}if(!q){break ja}}d=h}h=b;break ia}while(1){f=(h-1|0)==(f|0)?0:f+1|0;F[b+(k<<2)>>2]=f;h=F[i+12>>2];k=k+1|0;if(h>>>0>k>>>0){continue}break}break ha}d=b}m=k;b=F[i+128>>2];g=b+g|0;k=F[g>>2];q=m+k|0;F[q>>2]=F[q>>2]+1;Ca(b+L(l,12)|0,k,F[g+4>>2]);if(h){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];k=F[e+12>>2];if((g|0)==(((b|0)==(k|0)?0:L(b-k>>2,341)-1|0)|0)){ya(e+8|0);k=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+k>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=j;F[b+4>>2]=f;F[b>>2]=h;F[e+28>>2]=F[e+28>>2]+1}if(!d){break fa}h=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];k=F[e+12>>2];if((h|0)==(((b|0)==(k|0)?0:L(b-k>>2,341)-1|0)|0)){ya(e+8|0);k=F[e+12>>2];h=F[e+24>>2]+F[e+28>>2]|0}b=(h>>>0)/341|0;b=F[(b<<2)+k>>2]+L(h-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=f;F[b>>2]=d;F[e+28>>2]=F[e+28>>2]+1;break fa}j=0;if(!d){break fa}while(1){if(F[i+12>>2]){s=F[l>>2];k=F[i+36>>2];z=F[p>>2];g=F[i+92>>2];u=F[i+104>>2];f=0;while(1){q=u+(f<<2)|0;F[g+(F[q>>2]<<2)>>2]=0;h=F[i>>2];b=F[q>>2]<<2;o=F[b+z>>2];na:{if((h|0)==(o|0)){break na}b=b+g|0;h=h-o|0;o=F[i+48>>2];r=32-o|0;if((h|0)<=(r|0)){m=F[i+44>>2];if((m|0)==(k|0)){F[b>>2]=0;break na}F[b>>2]=F[m>>2]<<o>>>32-h;b=h+F[i+48>>2]|0;F[i+48>>2]=b;if((b|0)!=32){break na}F[i+48>>2]=0;F[i+44>>2]=m+4;break na}m=F[i+44>>2];x=m+4|0;if((x|0)==(k|0)){F[b>>2]=0;break na}A=F[m>>2];F[i+44>>2]=x;r=h-r|0;F[i+48>>2]=r;F[b>>2]=F[m+4>>2]>>>32-r|A<<o>>>32-h}b=F[q>>2]<<2;h=b+g|0;F[h>>2]=F[h>>2]|F[b+s>>2];f=f+1|0;if(f>>>0<I[i+12>>2]){continue}break}}ob(n,y);F[i+8>>2]=F[i+8>>2]+1;j=j+1|0;if((d|0)!=(j|0)){continue}break}}f=F[e+28>>2];if(f){continue}break}}F[e+28>>2]=0;b=F[e+16>>2];f=F[e+12>>2];k=b-f|0;if(k>>>0>=9){while(1){ra(F[f>>2]);f=F[e+12>>2]+4|0;F[e+12>>2]=f;b=F[e+16>>2];k=b-f|0;if(k>>>0>8){continue}break}}g=170;oa:{switch((k>>>2|0)-1|0){case 1:g=341;case 0:F[e+24>>2]=g;break;default:break oa}}pa:{if((b|0)==(f|0)){break pa}while(1){ra(F[f>>2]);f=f+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break pa}F[e+16>>2]=b+((d-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break da}}yb(i);break d;case 4:i=cb(w+8|0,3);v=w+664|0;h=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;qa:{if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){break qa}d=g+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];h=d;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;F[b+16>>2]=e;F[b+20>>2]=d;if(I[i>>2]>32){break qa}g=F[b+12>>2];d=h;h=f+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break qa}d=e+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=h;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!h){break qa}F[i+8>>2]=0;if(!vb(i+16|0,b)){break qa}if(!xa(i+544|0,b)){break qa}if(!xa(i+564|0,b)){break qa}if(!xa(i+584|0,b)){break qa}q=F[i+4>>2];f=0;d=0;e=ea-32|0;ea=e;h=F[i+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(h){if(h>>>0>=1073741824){break b}b=h<<2;f=sa(b);F[e+8>>2]=f;d=b+f|0;F[e+16>>2]=d;ua(f,0,b);F[e+12>>2]=d}b=F[i+628>>2];g=F[b>>2];if(g){F[b+4>>2]=g;ra(g);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[i+12>>2];f=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=f;F[b+8>>2]=F[e+16>>2];f=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ra:{if(h){if(h>>>0>=1073741824){break b}b=h<<2;j=sa(b);F[e+8>>2]=j;f=b+j|0;F[e+16>>2]=f;ua(j,0,b);F[e+12>>2]=f}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[e+8>>2];f=F[e+12>>2]}F[b+4>>2]=f;F[b>>2]=j;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=q;h=F[e+28>>2]+1|0;F[e+28>>2]=h;sa:{if(!h){break sa}y=i+604|0;t=i+16|0;while(1){b=F[e+12>>2];j=F[e+24>>2];f=h-1|0;d=j+f|0;g=(d>>>0)/341|0;d=F[b+(g<<2)>>2]+L(d-L(g,341)|0,12)|0;l=F[d+8>>2];g=F[d+4>>2];d=F[d>>2];F[e+28>>2]=f;f=F[e+16>>2];if((((b|0)==(f|0)?0:L(f-b>>2,341)-1|0)-(h+j|0)|0)+1>>>0>=682){ra(F[f-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(d>>>0>q>>>0){break sa}b=F[i+12>>2];j=(g|0)==(b-1|0)?0:g+1|0;if(j>>>0>=b>>>0){break sa}g=L(l,12);n=g+F[i+640>>2]|0;k=g+F[i+628>>2]|0;h=F[i>>2];o=j<<2;f=F[o+F[n>>2]>>2];ta:{ua:{if((h|0)==(f|0)){f=0;if(!d){break ua}while(1){b=F[k>>2];o=F[b+8>>2];m=F[b+4>>2];p=F[b>>2];g=F[v>>2];h=F[g+4>>2];j=F[g+8>>2];va:{if(h>>>0<j>>>0){F[h+8>>2]=o;F[h+4>>2]=m;F[h>>2]=p;F[g+4>>2]=h+12;break va}l=F[g>>2];s=(h-l|0)/12|0;b=s+1|0;if(b>>>0>=357913942){break b}j=(j-l|0)/12|0;n=j<<1;n=j>>>0<178956970?b>>>0<n>>>0?n:b:357913941;if(n){if(n>>>0>=357913942){break a}b=sa(L(n,12))}else{b=0}j=b+L(s,12)|0;F[j+8>>2]=o;F[j+4>>2]=m;F[j>>2]=p;o=j+12|0;if((h|0)!=(l|0)){while(1){j=j-12|0;h=h-12|0;F[j>>2]=F[h>>2];F[j+4>>2]=F[h+4>>2];F[j+8>>2]=F[h+8>>2];if((h|0)!=(l|0)){continue}break}}F[g+8>>2]=b+L(n,12);F[g+4>>2]=o;F[g>>2]=j;if(!l){break va}ra(l)}F[i+8>>2]=F[i+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break ua}wa:{xa:{ya:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=j;h=1;f=F[i+12>>2];if(f>>>0>1){break ya}break wa}if(I[i+8>>2]>I[i+4>>2]){break sa}b=F[i+628>>2];m=l+1|0;n=L(m,12);p=b+n|0;if((p|0)!=(k|0)){Ca(p,F[k>>2],F[k+4>>2]);b=F[i+628>>2]}b=o+F[b+n>>2]|0;F[b>>2]=F[b>>2]+(1<<h+(f^-1));f=0;h=0;b=O(d)^31;if(!b){h=d>>>1|0;break xa}while(1){f=Da(t+(h<<4)|0)|f<<1;h=h+1|0;if((b|0)!=(h|0)){continue}break}h=d>>>1|0;if(f>>>0<=h>>>0){break xa}break sa}while(1){j=(f-1|0)==(j|0)?0:j+1|0;F[b+(h<<2)>>2]=j;h=h+1|0;f=F[i+12>>2];if(h>>>0<f>>>0){continue}break}break wa}za:{Aa:{b=h-f|0;h=d-b|0;Ba:{if((h|0)==(b|0)){d=b;break Ba}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break Aa}f=F[d>>2];k=F[i+600>>2];p=k+1|0;F[i+600>>2]=p;f=f&-2147483648>>>k;Ca:{if((p|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(f){break Ca}break Aa}if(!f){break Aa}}d=h}h=b;break za}d=b}b=F[i+640>>2];g=b+g|0;f=F[g>>2];k=f+o|0;F[k>>2]=F[k>>2]+1;Ca(b+n|0,f,F[g+4>>2]);if(h){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];f=F[e+12>>2];if((g|0)==(((b|0)==(f|0)?0:L(b-f>>2,341)-1|0)|0)){ya(e+8|0);f=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+f>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=j;F[b>>2]=h;F[e+28>>2]=F[e+28>>2]+1}if(!d){break ua}f=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];h=F[e+12>>2];if((f|0)==(((b|0)==(h|0)?0:L(b-h>>2,341)-1|0)|0)){ya(e+8|0);f=F[e+24>>2]+F[e+28>>2]|0;h=F[e+12>>2]}b=(f>>>0)/341|0;b=F[h+(b<<2)>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=m;F[b+4>>2]=j;F[b>>2]=d;h=F[e+28>>2]+1|0;F[e+28>>2]=h;break ta}j=0;if(!d){break ua}while(1){if(F[i+12>>2]){s=F[k>>2];l=F[i+548>>2];z=F[n>>2];f=F[i+604>>2];u=F[i+616>>2];h=0;while(1){o=u+(h<<2)|0;F[f+(F[o>>2]<<2)>>2]=0;g=F[i>>2];b=F[o>>2]<<2;m=F[b+z>>2];Da:{if((g|0)==(m|0)){break Da}b=b+f|0;g=g-m|0;m=F[i+560>>2];r=32-m|0;if((g|0)<=(r|0)){p=F[i+556>>2];if((p|0)==(l|0)){F[b>>2]=0;break Da}F[b>>2]=F[p>>2]<<m>>>32-g;b=g+F[i+560>>2]|0;F[i+560>>2]=b;if((b|0)!=32){break Da}F[i+560>>2]=0;F[i+556>>2]=p+4;break Da}p=F[i+556>>2];x=p+4|0;if((x|0)==(l|0)){F[b>>2]=0;break Da}A=F[p>>2];F[i+556>>2]=x;r=g-r|0;F[i+560>>2]=r;F[b>>2]=F[p+4>>2]>>>32-r|A<<m>>>32-g}b=F[o>>2]<<2;g=b+f|0;F[g>>2]=F[g>>2]|F[b+s>>2];h=h+1|0;if(h>>>0<I[i+12>>2]){continue}break}}ob(v,y);F[i+8>>2]=F[i+8>>2]+1;j=j+1|0;if((d|0)!=(j|0)){continue}break}}h=F[e+28>>2]}if(h){continue}break}}F[e+28>>2]=0;b=F[e+16>>2];h=F[e+12>>2];j=b-h|0;if(j>>>0>=9){while(1){ra(F[h>>2]);h=F[e+12>>2]+4|0;F[e+12>>2]=h;b=F[e+16>>2];j=b-h|0;if(j>>>0>8){continue}break}}d=170;Ea:{switch((j>>>2|0)-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break Ea}}Fa:{if((b|0)==(h|0)){break Fa}while(1){ra(F[h>>2]);h=h+4|0;if((h|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break Fa}F[e+16>>2]=b+((d-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break ra}}db(i);break d;case 5:e=cb(w+8|0,3);v=w+664|0;h=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;Ga:{if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){break Ga}d=g+F[b>>2]|0;F[e>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];h=d;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;j=g;F[b+16>>2]=g;F[b+20>>2]=d;if(I[e>>2]>32){break Ga}g=F[b+12>>2];d=h;h=f+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break Ga}d=j+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[e+4>>2]=h;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!h){break Ga}F[e+8>>2]=0;if(!vb(e+16|0,b)){break Ga}if(!xa(e+544|0,b)){break Ga}if(!xa(e+564|0,b)){break Ga}if(!xa(e+584|0,b)){break Ga}q=F[e+4>>2];f=0;d=0;g=ea-32|0;ea=g;h=F[e+12>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(h){if(h>>>0>=1073741824){break b}b=h<<2;f=sa(b);F[g+8>>2]=f;d=b+f|0;F[g+16>>2]=d;ua(f,0,b);F[g+12>>2]=d}b=F[e+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;ra(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[e+12>>2];f=F[g+8>>2];d=F[g+12>>2]}F[b+4>>2]=d;F[b>>2]=f;F[b+8>>2]=F[g+16>>2];f=0;F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;Ha:{if(h){if(h>>>0>=1073741824){break b}b=h<<2;i=sa(b);F[g+8>>2]=i;f=b+i|0;F[g+16>>2]=f;ua(i,0,b);F[g+12>>2]=f}b=F[e+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[g+8>>2];f=F[g+12>>2]}F[b+4>>2]=f;F[b>>2]=i;F[b+8>>2]=F[g+16>>2];F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;ya(g+8|0);b=F[g+24>>2]+F[g+28>>2]|0;d=(b>>>0)/341|0;b=F[F[g+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=q;h=F[g+28>>2]+1|0;F[g+28>>2]=h;Ia:{if(!h){break Ia}y=e+604|0;t=e+16|0;while(1){b=F[g+12>>2];i=F[g+24>>2];j=h-1|0;d=i+j|0;f=(d>>>0)/341|0;d=F[b+(f<<2)>>2]+L(d-L(f,341)|0,12)|0;k=F[d+8>>2];f=F[d+4>>2];d=F[d>>2];F[g+28>>2]=j;j=F[g+16>>2];if((((b|0)==(j|0)?0:L(j-b>>2,341)-1|0)-(h+i|0)|0)+1>>>0>=682){ra(F[j-4>>2]);F[g+16>>2]=F[g+16>>2]-4}if(d>>>0>q>>>0){break Ia}b=F[e+12>>2];i=(f|0)==(b-1|0)?0:f+1|0;if(i>>>0>=b>>>0){break Ia}b=F[e+628>>2];j=L(k,12);l=b+j|0;h=F[e>>2];n=i<<2;p=j+F[e+640>>2]|0;f=F[n+F[p>>2]>>2];Ja:{Ka:{if((h|0)==(f|0)){j=0;if(!d){break Ka}while(1){b=F[l>>2];o=F[b+8>>2];m=F[b+4>>2];p=F[b>>2];f=F[v>>2];h=F[f+4>>2];i=F[f+8>>2];La:{if(h>>>0<i>>>0){F[h+8>>2]=o;F[h+4>>2]=m;F[h>>2]=p;F[f+4>>2]=h+12;break La}k=F[f>>2];s=(h-k|0)/12|0;b=s+1|0;if(b>>>0>=357913942){break b}i=(i-k|0)/12|0;n=i<<1;n=i>>>0<178956970?b>>>0<n>>>0?n:b:357913941;if(n){if(n>>>0>=357913942){break a}b=sa(L(n,12))}else{b=0}i=b+L(s,12)|0;F[i+8>>2]=o;F[i+4>>2]=m;F[i>>2]=p;o=i+12|0;if((h|0)!=(k|0)){while(1){i=i-12|0;h=h-12|0;F[i>>2]=F[h>>2];F[i+4>>2]=F[h+4>>2];F[i+8>>2]=F[h+8>>2];if((h|0)!=(k|0)){continue}break}}F[f+8>>2]=b+L(n,12);F[f+4>>2]=o;F[f>>2]=i;if(!k){break La}ra(k)}F[e+8>>2]=F[e+8>>2]+1;j=j+1|0;if((d|0)!=(j|0)){continue}break}break Ka}Ma:{Na:{Oa:{if(d>>>0<=2){b=F[e+616>>2];F[b>>2]=i;h=1;f=F[e+12>>2];if(f>>>0>1){break Oa}break Ma}if(I[e+8>>2]>I[e+4>>2]){break Ia}m=b;b=j+12|0;Ca(m+b|0,F[l>>2],F[l+4>>2]);b=n+F[b+F[e+628>>2]>>2]|0;F[b>>2]=F[b>>2]+(1<<h+(f^-1));f=0;h=0;b=O(d)^31;if(!b){h=d>>>1|0;break Na}while(1){f=Da(t+(h<<4)|0)|f<<1;h=h+1|0;if((b|0)!=(h|0)){continue}break}h=d>>>1|0;if(f>>>0<=h>>>0){break Na}break Ia}while(1){i=(f-1|0)==(i|0)?0:i+1|0;F[b+(h<<2)>>2]=i;h=h+1|0;f=F[e+12>>2];if(h>>>0<f>>>0){continue}break}break Ma}l=k+1|0;Pa:{Qa:{b=h-f|0;h=d-b|0;Ra:{if((h|0)==(b|0)){d=b;break Ra}d=F[e+596>>2];if((d|0)==F[e+588>>2]){break Qa}f=F[d>>2];o=F[e+600>>2];m=o+1|0;F[e+600>>2]=m;f=f&-2147483648>>>o;Sa:{if((m|0)==32){F[e+600>>2]=0;F[e+596>>2]=d+4;if(f){break Sa}break Qa}if(!f){break Qa}}d=h}h=b;break Pa}d=b}b=F[e+640>>2];f=b+j|0;j=F[f>>2];n=j+n|0;F[n>>2]=F[n>>2]+1;Ca(b+L(l,12)|0,j,F[f+4>>2]);if(h){j=F[g+28>>2]+F[g+24>>2]|0;b=F[g+16>>2];f=F[g+12>>2];if((j|0)==(((b|0)==(f|0)?0:L(b-f>>2,341)-1|0)|0)){ya(g+8|0);j=F[g+24>>2]+F[g+28>>2]|0;f=F[g+12>>2]}b=(j>>>0)/341|0;b=F[f+(b<<2)>>2]+L(j-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=h;F[g+28>>2]=F[g+28>>2]+1}if(!d){break Ka}f=F[g+28>>2]+F[g+24>>2]|0;b=F[g+16>>2];h=F[g+12>>2];if((f|0)==(((b|0)==(h|0)?0:L(b-h>>2,341)-1|0)|0)){ya(g+8|0);f=F[g+24>>2]+F[g+28>>2]|0;h=F[g+12>>2]}b=(f>>>0)/341|0;b=F[h+(b<<2)>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=i;F[b>>2]=d;h=F[g+28>>2]+1|0;F[g+28>>2]=h;break Ja}i=0;if(!d){break Ka}while(1){if(F[e+12>>2]){s=F[l>>2];k=F[e+548>>2];z=F[p>>2];j=F[e+604>>2];u=F[e+616>>2];h=0;while(1){n=u+(h<<2)|0;F[j+(F[n>>2]<<2)>>2]=0;f=F[e>>2];b=F[n>>2]<<2;o=F[b+z>>2];Ta:{if((f|0)==(o|0)){break Ta}b=b+j|0;f=f-o|0;o=F[e+560>>2];r=32-o|0;if((f|0)<=(r|0)){m=F[e+556>>2];if((m|0)==(k|0)){F[b>>2]=0;break Ta}F[b>>2]=F[m>>2]<<o>>>32-f;b=f+F[e+560>>2]|0;F[e+560>>2]=b;if((b|0)!=32){break Ta}F[e+560>>2]=0;F[e+556>>2]=m+4;break Ta}m=F[e+556>>2];x=m+4|0;if((x|0)==(k|0)){F[b>>2]=0;break Ta}A=F[m>>2];F[e+556>>2]=x;r=f-r|0;F[e+560>>2]=r;F[b>>2]=F[m+4>>2]>>>32-r|A<<o>>>32-f}b=F[n>>2]<<2;f=b+j|0;F[f>>2]=F[f>>2]|F[b+s>>2];h=h+1|0;if(h>>>0<I[e+12>>2]){continue}break}}ob(v,y);F[e+8>>2]=F[e+8>>2]+1;i=i+1|0;if((d|0)!=(i|0)){continue}break}}h=F[g+28>>2]}if(h){continue}break}}F[g+28>>2]=0;b=F[g+16>>2];h=F[g+12>>2];i=b-h|0;if(i>>>0>=9){while(1){ra(F[h>>2]);h=F[g+12>>2]+4|0;F[g+12>>2]=h;b=F[g+16>>2];i=b-h|0;if(i>>>0>8){continue}break}}d=170;Ua:{switch((i>>>2|0)-1|0){case 1:d=341;case 0:F[g+24>>2]=d;break;default:break Ua}}Va:{if((b|0)==(h|0)){break Va}while(1){ra(F[h>>2]);h=h+4|0;if((h|0)!=(b|0)){continue}break}b=F[g+16>>2];d=F[g+12>>2];if((b|0)==(d|0)){break Va}F[g+16>>2]=b+((d-b|0)+3&-4)}b=F[g+8>>2];if(b){ra(b)}ea=g+32|0;break Ha}}db(e);break d;case 6:break f;default:break c}}i=cb(w+8|0,3);v=w+664|0;h=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;Wa:{if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){break Wa}d=g+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];h=d;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;F[b+16>>2]=e;F[b+20>>2]=d;if(I[i>>2]>32){break Wa}g=F[b+12>>2];d=h;h=f+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break Wa}d=e+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=h;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!h){break Wa}F[i+8>>2]=0;if(!vb(i+16|0,b)){break Wa}if(!xa(i+544|0,b)){break Wa}if(!xa(i+564|0,b)){break Wa}if(!xa(i+584|0,b)){break Wa}q=F[i+4>>2];f=0;d=0;e=ea-32|0;ea=e;h=F[i+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(h){if(h>>>0>=1073741824){break b}b=h<<2;f=sa(b);F[e+8>>2]=f;d=b+f|0;F[e+16>>2]=d;ua(f,0,b);F[e+12>>2]=d}b=F[i+628>>2];g=F[b>>2];if(g){F[b+4>>2]=g;ra(g);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[i+12>>2];f=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=f;F[b+8>>2]=F[e+16>>2];f=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Xa:{if(h){if(h>>>0>=1073741824){break b}b=h<<2;j=sa(b);F[e+8>>2]=j;f=b+j|0;F[e+16>>2]=f;ua(j,0,b);F[e+12>>2]=f}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[e+8>>2];f=F[e+12>>2]}F[b+4>>2]=f;F[b>>2]=j;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=q;h=F[e+28>>2]+1|0;F[e+28>>2]=h;Ya:{if(!h){break Ya}y=i+604|0;t=i+16|0;while(1){b=F[e+12>>2];f=F[e+24>>2];g=h-1|0;d=f+g|0;j=(d>>>0)/341|0;d=F[b+(j<<2)>>2]+L(d-L(j,341)|0,12)|0;l=F[d+8>>2];d=F[d>>2];F[e+28>>2]=g;g=F[e+16>>2];if((((b|0)==(g|0)?0:L(g-b>>2,341)-1|0)-(f+h|0)|0)+1>>>0>=682){ra(F[g-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(d>>>0>q>>>0){break Ya}b=F[i+628>>2];g=L(l,12);n=g+F[i+640>>2]|0;j=Ud(i,d,n);if(j>>>0>=I[i+12>>2]){break Ya}k=b+g|0;h=F[i>>2];o=j<<2;f=F[o+F[n>>2]>>2];Za:{_a:{if((h|0)==(f|0)){f=0;if(!d){break _a}while(1){b=F[k>>2];o=F[b+8>>2];m=F[b+4>>2];p=F[b>>2];g=F[v>>2];h=F[g+4>>2];j=F[g+8>>2];$a:{if(h>>>0<j>>>0){F[h+8>>2]=o;F[h+4>>2]=m;F[h>>2]=p;F[g+4>>2]=h+12;break $a}l=F[g>>2];s=(h-l|0)/12|0;b=s+1|0;if(b>>>0>=357913942){break b}j=(j-l|0)/12|0;n=j<<1;n=j>>>0<178956970?b>>>0<n>>>0?n:b:357913941;if(n){if(n>>>0>=357913942){break a}b=sa(L(n,12))}else{b=0}j=b+L(s,12)|0;F[j+8>>2]=o;F[j+4>>2]=m;F[j>>2]=p;o=j+12|0;if((h|0)!=(l|0)){while(1){j=j-12|0;h=h-12|0;F[j>>2]=F[h>>2];F[j+4>>2]=F[h+4>>2];F[j+8>>2]=F[h+8>>2];if((h|0)!=(l|0)){continue}break}}F[g+8>>2]=b+L(n,12);F[g+4>>2]=o;F[g>>2]=j;if(!l){break $a}ra(l)}F[i+8>>2]=F[i+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break _a}ab:{bb:{cb:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=j;h=1;f=F[i+12>>2];if(f>>>0>1){break cb}break ab}if(I[i+8>>2]>I[i+4>>2]){break Ya}b=F[i+628>>2];m=l+1|0;n=L(m,12);p=b+n|0;if((p|0)!=(k|0)){Ca(p,F[k>>2],F[k+4>>2]);b=F[i+628>>2]}b=o+F[b+n>>2]|0;F[b>>2]=F[b>>2]+(1<<h+(f^-1));f=0;h=0;b=O(d)^31;if(!b){h=d>>>1|0;break bb}while(1){f=Da(t+(h<<4)|0)|f<<1;h=h+1|0;if((b|0)!=(h|0)){continue}break}h=d>>>1|0;if(f>>>0<=h>>>0){break bb}break Ya}while(1){j=(f-1|0)==(j|0)?0:j+1|0;F[b+(h<<2)>>2]=j;h=h+1|0;f=F[i+12>>2];if(h>>>0<f>>>0){continue}break}break ab}db:{eb:{b=h-f|0;h=d-b|0;fb:{if((h|0)==(b|0)){d=b;break fb}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break eb}f=F[d>>2];k=F[i+600>>2];p=k+1|0;F[i+600>>2]=p;f=f&-2147483648>>>k;gb:{if((p|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(f){break gb}break eb}if(!f){break eb}}d=h}h=b;break db}d=b}b=F[i+640>>2];g=b+g|0;f=F[g>>2];k=f+o|0;F[k>>2]=F[k>>2]+1;Ca(b+n|0,f,F[g+4>>2]);if(h){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];f=F[e+12>>2];if((g|0)==(((b|0)==(f|0)?0:L(b-f>>2,341)-1|0)|0)){ya(e+8|0);f=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+f>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=j;F[b>>2]=h;F[e+28>>2]=F[e+28>>2]+1}if(!d){break _a}f=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];h=F[e+12>>2];if((f|0)==(((b|0)==(h|0)?0:L(b-h>>2,341)-1|0)|0)){ya(e+8|0);f=F[e+24>>2]+F[e+28>>2]|0;h=F[e+12>>2]}b=(f>>>0)/341|0;b=F[h+(b<<2)>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=m;F[b+4>>2]=j;F[b>>2]=d;h=F[e+28>>2]+1|0;F[e+28>>2]=h;break Za}j=0;if(!d){break _a}while(1){if(F[i+12>>2]){s=F[k>>2];l=F[i+548>>2];z=F[n>>2];f=F[i+604>>2];u=F[i+616>>2];h=0;while(1){o=u+(h<<2)|0;F[f+(F[o>>2]<<2)>>2]=0;g=F[i>>2];b=F[o>>2]<<2;m=F[b+z>>2];hb:{if((g|0)==(m|0)){break hb}b=b+f|0;g=g-m|0;m=F[i+560>>2];r=32-m|0;if((g|0)<=(r|0)){p=F[i+556>>2];if((p|0)==(l|0)){F[b>>2]=0;break hb}F[b>>2]=F[p>>2]<<m>>>32-g;b=g+F[i+560>>2]|0;F[i+560>>2]=b;if((b|0)!=32){break hb}F[i+560>>2]=0;F[i+556>>2]=p+4;break hb}p=F[i+556>>2];x=p+4|0;if((x|0)==(l|0)){F[b>>2]=0;break hb}A=F[p>>2];F[i+556>>2]=x;r=g-r|0;F[i+560>>2]=r;F[b>>2]=F[p+4>>2]>>>32-r|A<<m>>>32-g}b=F[o>>2]<<2;g=b+f|0;F[g>>2]=F[g>>2]|F[b+s>>2];h=h+1|0;if(h>>>0<I[i+12>>2]){continue}break}}ob(v,y);F[i+8>>2]=F[i+8>>2]+1;j=j+1|0;if((d|0)!=(j|0)){continue}break}}h=F[e+28>>2]}if(h){continue}break}}F[e+28>>2]=0;b=F[e+16>>2];h=F[e+12>>2];j=b-h|0;if(j>>>0>=9){while(1){ra(F[h>>2]);h=F[e+12>>2]+4|0;F[e+12>>2]=h;b=F[e+16>>2];j=b-h|0;if(j>>>0>8){continue}break}}d=170;ib:{switch((j>>>2|0)-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break ib}}jb:{if((b|0)==(h|0)){break jb}while(1){ra(F[h>>2]);h=h+4|0;if((h|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break jb}F[e+16>>2]=b+((d-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break Xa}}db(i)}h=F[a+12>>2]==((F[c+4>>2]-F[c>>2]|0)/12|0)}ea=w+672|0;return h}va();V()}za();V()}function id(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;if(!a){return 1}e=F[c+20>>2];g=F[c+12>>2];j=F[c+16>>2];a:{if((e|0)>=(g|0)&j>>>0>=I[c+8>>2]|(e|0)>(g|0)){break a}g=G[j+F[c>>2]|0];j=j+1|0;e=j?e:e+1|0;F[c+16>>2]=j;F[c+20>>2]=e;b:{switch(g|0){case 0:f=a;e=b;k=d;a=0;d=0;m=ea+-64|0;ea=m;F[m+56>>2]=0;F[m+48>>2]=0;F[m+52>>2]=0;F[m+40>>2]=0;F[m+44>>2]=0;F[m+32>>2]=0;F[m+36>>2]=0;F[m+24>>2]=0;F[m+28>>2]=0;F[m+16>>2]=0;F[m+20>>2]=0;F[m+8>>2]=0;F[m+12>>2]=0;c:{if(!Ke(m+8|0,c)){break c}if(!Je(m+8|0,c)|(F[m+20>>2]?0:f)){break c}Fb(c,0,0);if(f){n=e<<2;q=F[m+36>>2];r=F[m+48>>2];s=F[m+24>>2];while(1){l=F[m+56>>2];d:{if(l>>>0>16383){break d}a=F[m+52>>2];while(1){if((a|0)<=0){break d}a=a-1|0;F[m+52>>2]=a;l=G[a+r|0]|l<<8;F[m+56>>2]=l;if(l>>>0<16384){continue}break}}a=l&4095;t=F[(a<<2)+s>>2];b=(t<<3)+q|0;F[m+56>>2]=(L(F[b>>2],l>>>12|0)+a|0)-F[b+4>>2];e:{if((e|0)<=0){break e}a=0;if(!G[c+36|0]|t>>>0>32){break c}if(!t){ua(k+(d<<2)|0,0,n);d=d+e|0;break e}w=t&-2;x=t&1;g=d+e|0;b=F[c+32>>2];i=F[c+28>>2];h=F[c+24>>2];while(1){l=0;a=b;j=0;p=0;if((t|0)!=1){while(1){o=h+(a>>>3|0)|0;f:{if(o>>>0>=i>>>0){o=0;break f}o=G[o|0];b=a+1|0;F[c+32>>2]=b;o=o>>>(a&7)&1;a=b}o=o<<l|j;j=0;u=h+(a>>>3|0)|0;if(u>>>0<i>>>0){j=G[u|0];b=a+1|0;F[c+32>>2]=b;j=j>>>(a&7)&1;a=b}u=l|1;l=l+2|0;j=o|j<<u;p=p+2|0;if((w|0)!=(p|0)){continue}break}}p=k+(d<<2)|0;if(x){o=h+(a>>>3|0)|0;if(o>>>0<i>>>0){o=G[o|0];b=a+1|0;F[c+32>>2]=b;a=o>>>(a&7)&1}else{a=0}j=a<<l|j}F[p>>2]=j;d=d+1|0;if((g|0)!=(d|0)){continue}break}d=g}v=e+v|0;if(f>>>0>v>>>0){continue}break}}D[c+36|0]=0;b=F[c+20>>2];e=0;a=F[c+32>>2]+7|0;e=a>>>0<7?1:e;d=(e&7)<<29|a>>>3;a=d+F[c+16>>2]|0;e=(e>>>3|0)+b|0;F[c+16>>2]=a;F[c+20>>2]=a>>>0<d>>>0?e+1|0:e;a=1}b=F[m+36>>2];if(b){F[m+40>>2]=b;ra(b)}b=F[m+24>>2];if(b){F[m+28>>2]=b;ra(b)}b=F[m+8>>2];if(b){F[m+12>>2]=b;ra(b)}ea=m- -64|0;return a;case 1:break b;default:break a}}b=0;e=F[c+20>>2];g=F[c+12>>2];j=F[c+16>>2];g:{if((e|0)>=(g|0)&j>>>0>=I[c+8>>2]|(e|0)>(g|0)){break g}g=G[j+F[c>>2]|0];j=j+1|0;e=j?e:e+1|0;F[c+16>>2]=j;F[c+20>>2]=e;h:{switch(g-1|0){case 8:m=a;t=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;h=g+8|0;a=H[c+38>>1];i:{j:{if(!a){break j}k:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break j}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[h+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;f=a;F[c+16>>2]=a;F[c+20>>2]=e;break k}if(!lb(1,h+12|0,c)){break j}f=F[c+16>>2];e=F[c+20>>2];i=F[h+12>>2]}a=F[c+8>>2];b=a-f|0;a=F[c+12>>2]-((a>>>0<f>>>0)+e|0)|0;if(b>>>0<i>>>6>>>0&(a|0)<=0|(a|0)<0){break j}b=F[h>>2];a=F[h+4>>2]-b>>2;l:{if(a>>>0<i>>>0){Aa(h,i-a|0);i=F[h+12>>2];break l}if(a>>>0<=i>>>0){break l}F[h+4>>2]=b+(i<<2)}d=1;if(!i){break i}f=F[c+16>>2];e=F[c+20>>2];q=F[h>>2];r=F[c+8>>2];o=F[c+12>>2];b=0;while(1){d=0;if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break i}d=F[c>>2];n=G[d+f|0];a=f+1|0;e=a?e:e+1|0;f=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;j=0;m:{n:{o:{p:{s=n&3;switch(s|0){case 0:break n;case 3:break p;default:break o}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break i}ua(q+(b<<2)|0,0,(n&252)+4|0);b=a;break m}while(1){if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break j}i=G[d+f|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;a=i<<(j<<3|6)|a;j=j+1|0;if((s|0)!=(j|0)){continue}break}}F[q+(b<<2)>>2]=a}b=b+1|0;i=F[h+12>>2];if(b>>>0<i>>>0){continue}break}a=h+16|0;o=F[h>>2];d=F[h+16>>2];b=F[h+20>>2]-d|0;q:{if(b>>>0<=32767){Aa(a,8192-(b>>>2|0)|0);break q}if((b|0)==32768){break q}F[h+20>>2]=d+32768}d=h+28|0;b=F[d>>2];e=F[h+32>>2]-b>>3;r:{if(e>>>0<i>>>0){tb(d,i-e|0);b=F[d>>2];break r}if(e>>>0>i>>>0){F[h+32>>2]=(i<<3)+b}if(!i){break j}}h=F[a>>2];e=0;d=0;while(1){f=o+(e<<2)|0;j=F[f>>2];n=(e<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=j;f=F[f>>2];d=f+a|0;if(d>>>0>8192){break j}s:{if(a>>>0>=d>>>0){break s}j=0;n=f&7;if(n){while(1){F[h+(a<<2)>>2]=e;a=a+1|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}if(f-1>>>0<=6){break s}while(1){f=h+(a<<2)|0;F[f>>2]=e;F[f+28>>2]=e;F[f+24>>2]=e;F[f+20>>2]=e;F[f+16>>2]=e;F[f+12>>2]=e;F[f+8>>2]=e;F[f+4>>2]=e;a=a+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((i|0)!=(e|0)){continue}break}k=(d|0)==8192}d=k}t:{if(!d|(F[g+20>>2]?0:m)){break t}d=0;j=ea-16|0;ea=j;u:{v:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];f=k+8|0;e=f>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0<f>>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break u}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=f;F[c+20>>2]=e;break v}if(!kb(1,j+8|0,c)){break u}f=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[j+8>>2];k=F[j+12>>2]}h=b-f|0;b=i-((b>>>0<f>>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>h>>>0|b>>>0<k>>>0){break u}e=e+k|0;b=a+f|0;e=b>>>0<a>>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break u}b=f+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;f=G[e|0];w:{if(f>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break w}x:{switch((f>>>6|0)-1|0){case 0:if(a>>>0<2){break u}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break w;case 1:if(a>>>0<3){break u}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+1|0]<<8|G[a+2|0]<<16&4128768|G[a|0];break w;default:break x}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}F[g+56>>2]=a+32768;d=a>>>0<8355840}ea=j+16|0;if(!d){break t}if(!m){l=1;break t}a=F[g+56>>2];b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];while(1){y:{if(a>>>0>32767){break y}l=F[g+52>>2];while(1){if((l|0)<=0){break y}l=l-1|0;F[g+52>>2]=l;a=G[c+l|0]|a<<8;F[g+56>>2]=a;if(a>>>0<32768){continue}break}}e=a&8191;f=F[d+(e<<2)>>2];l=b+(f<<3)|0;a=(L(F[l>>2],a>>>13|0)+e|0)-F[l+4>>2]|0;F[g+56>>2]=a;F[t+(p<<2)>>2]=f;l=1;p=p+1|0;if((m|0)!=(p|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=l;break g;case 9:m=a;t=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;h=g+8|0;a=H[c+38>>1];z:{A:{if(!a){break A}B:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break A}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[h+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;f=a;F[c+16>>2]=a;F[c+20>>2]=e;break B}if(!lb(1,h+12|0,c)){break A}f=F[c+16>>2];e=F[c+20>>2];i=F[h+12>>2]}a=F[c+8>>2];b=a-f|0;a=F[c+12>>2]-((a>>>0<f>>>0)+e|0)|0;if(b>>>0<i>>>6>>>0&(a|0)<=0|(a|0)<0){break A}b=F[h>>2];a=F[h+4>>2]-b>>2;C:{if(a>>>0<i>>>0){Aa(h,i-a|0);i=F[h+12>>2];break C}if(a>>>0<=i>>>0){break C}F[h+4>>2]=b+(i<<2)}d=1;if(!i){break z}f=F[c+16>>2];e=F[c+20>>2];q=F[h>>2];r=F[c+8>>2];o=F[c+12>>2];b=0;while(1){d=0;if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break z}d=F[c>>2];n=G[d+f|0];a=f+1|0;e=a?e:e+1|0;f=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;j=0;D:{E:{F:{G:{s=n&3;switch(s|0){case 0:break E;case 3:break G;default:break F}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break z}ua(q+(b<<2)|0,0,(n&252)+4|0);b=a;break D}while(1){if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break A}i=G[d+f|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;a=i<<(j<<3|6)|a;j=j+1|0;if((s|0)!=(j|0)){continue}break}}F[q+(b<<2)>>2]=a}b=b+1|0;i=F[h+12>>2];if(b>>>0<i>>>0){continue}break}a=h+16|0;o=F[h>>2];d=F[h+16>>2];b=F[h+20>>2]-d|0;H:{if(b>>>0<=131071){Aa(a,32768-(b>>>2|0)|0);break H}if((b|0)==131072){break H}F[h+20>>2]=d+131072}d=h+28|0;b=F[d>>2];e=F[h+32>>2]-b>>3;I:{if(e>>>0<i>>>0){tb(d,i-e|0);b=F[d>>2];break I}if(e>>>0>i>>>0){F[h+32>>2]=(i<<3)+b}if(!i){break A}}h=F[a>>2];e=0;d=0;while(1){f=o+(e<<2)|0;j=F[f>>2];n=(e<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=j;f=F[f>>2];d=f+a|0;if(d>>>0>32768){break A}J:{if(a>>>0>=d>>>0){break J}j=0;n=f&7;if(n){while(1){F[h+(a<<2)>>2]=e;a=a+1|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}if(f-1>>>0<=6){break J}while(1){f=h+(a<<2)|0;F[f>>2]=e;F[f+28>>2]=e;F[f+24>>2]=e;F[f+20>>2]=e;F[f+16>>2]=e;F[f+12>>2]=e;F[f+8>>2]=e;F[f+4>>2]=e;a=a+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((i|0)!=(e|0)){continue}break}k=(d|0)==32768}d=k}K:{if(!d|(F[g+20>>2]?0:m)){break K}d=0;h=ea-16|0;ea=h;L:{M:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];f=k+8|0;e=f>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0<f>>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break L}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=f;F[c+20>>2]=e;break M}if(!kb(1,h+8|0,c)){break L}f=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[h+8>>2];k=F[h+12>>2]}j=b-f|0;b=i-((b>>>0<f>>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0<k>>>0){break L}j=e+k|0;b=a+f|0;j=b>>>0<a>>>0?j+1|0:j;F[c+16>>2]=b;F[c+20>>2]=j;if((a|0)<=0){break L}b=f+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;f=G[e|0];N:{if(f>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break N}O:{switch((f>>>6|0)-1|0){case 0:if(a>>>0<2){break L}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break N;case 1:if(a>>>0<3){break L}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+1|0]<<8|G[a+2|0]<<16&4128768|G[a|0];break N;default:break O}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}F[g+56>>2]=a+131072;d=a>>>0<33423360}ea=h+16|0;if(!d){break K}if(!m){l=1;break K}a=F[g+56>>2];b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];while(1){P:{if(a>>>0>131071){break P}l=F[g+52>>2];while(1){if((l|0)<=0){break P}l=l-1|0;F[g+52>>2]=l;a=G[c+l|0]|a<<8;F[g+56>>2]=a;if(a>>>0<131072){continue}break}}e=a&32767;f=F[d+(e<<2)>>2];l=b+(f<<3)|0;a=(L(F[l>>2],a>>>15|0)+e|0)-F[l+4>>2]|0;F[g+56>>2]=a;F[t+(p<<2)>>2]=f;l=1;p=p+1|0;if((m|0)!=(p|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=l;break g;case 10:m=a;t=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;h=g+8|0;a=H[c+38>>1];Q:{R:{if(!a){break R}S:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break R}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[h+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;f=a;F[c+16>>2]=a;F[c+20>>2]=e;break S}if(!lb(1,h+12|0,c)){break R}f=F[c+16>>2];e=F[c+20>>2];i=F[h+12>>2]}a=F[c+8>>2];b=a-f|0;a=F[c+12>>2]-((a>>>0<f>>>0)+e|0)|0;if(b>>>0<i>>>6>>>0&(a|0)<=0|(a|0)<0){break R}b=F[h>>2];a=F[h+4>>2]-b>>2;T:{if(a>>>0<i>>>0){Aa(h,i-a|0);i=F[h+12>>2];break T}if(a>>>0<=i>>>0){break T}F[h+4>>2]=b+(i<<2)}d=1;if(!i){break Q}f=F[c+16>>2];e=F[c+20>>2];q=F[h>>2];r=F[c+8>>2];o=F[c+12>>2];b=0;while(1){d=0;if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break Q}d=F[c>>2];n=G[d+f|0];a=f+1|0;j=a?e:e+1|0;f=a;F[c+16>>2]=a;e=j;F[c+20>>2]=e;a=n>>>2|0;j=0;U:{V:{W:{X:{s=n&3;switch(s|0){case 0:break V;case 3:break X;default:break W}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break Q}ua(q+(b<<2)|0,0,(n&252)+4|0);b=a;break U}while(1){if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break R}i=G[d+f|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;a=i<<(j<<3|6)|a;j=j+1|0;if((s|0)!=(j|0)){continue}break}}F[q+(b<<2)>>2]=a}b=b+1|0;i=F[h+12>>2];if(b>>>0<i>>>0){continue}break}a=h+16|0;o=F[h>>2];d=F[h+16>>2];b=F[h+20>>2]-d|0;Y:{if(b>>>0<=262143){Aa(a,65536-(b>>>2|0)|0);break Y}if((b|0)==262144){break Y}F[h+20>>2]=d+262144}d=h+28|0;b=F[d>>2];e=F[h+32>>2]-b>>3;Z:{if(e>>>0<i>>>0){tb(d,i-e|0);b=F[d>>2];break Z}if(e>>>0>i>>>0){F[h+32>>2]=(i<<3)+b}if(!i){break R}}h=F[a>>2];e=0;d=0;while(1){f=o+(e<<2)|0;j=F[f>>2];n=(e<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=j;f=F[f>>2];d=f+a|0;if(d>>>0>65536){break R}_:{if(a>>>0>=d>>>0){break _}j=0;n=f&7;if(n){while(1){F[h+(a<<2)>>2]=e;a=a+1|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}if(f-1>>>0<=6){break _}while(1){f=h+(a<<2)|0;F[f>>2]=e;F[f+28>>2]=e;F[f+24>>2]=e;F[f+20>>2]=e;F[f+16>>2]=e;F[f+12>>2]=e;F[f+8>>2]=e;F[f+4>>2]=e;a=a+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((i|0)!=(e|0)){continue}break}k=(d|0)==65536}d=k}$:{if(!d|(F[g+20>>2]?0:m)){break $}d=0;j=ea-16|0;ea=j;aa:{ba:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];f=k+8|0;e=f>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0<f>>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break aa}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=f;F[c+20>>2]=e;break ba}if(!kb(1,j+8|0,c)){break aa}f=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[j+8>>2];k=F[j+12>>2]}h=b-f|0;b=i-((b>>>0<f>>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>h>>>0|b>>>0<k>>>0){break aa}e=e+k|0;b=a+f|0;e=b>>>0<a>>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break aa}b=f+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;f=G[e|0];ca:{if(f>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break ca}da:{switch((f>>>6|0)-1|0){case 0:if(a>>>0<2){break aa}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break ca;case 1:if(a>>>0<3){break aa}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+1|0]<<8|G[a+2|0]<<16&4128768|G[a|0];break ca;default:break da}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}F[g+56>>2]=a+262144;d=a>>>0<66846720}ea=j+16|0;if(!d){break $}if(!m){l=1;break $}a=F[g+56>>2];b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];while(1){ea:{if(a>>>0>262143){break ea}l=F[g+52>>2];while(1){if((l|0)<=0){break ea}l=l-1|0;F[g+52>>2]=l;a=G[c+l|0]|a<<8;F[g+56>>2]=a;if(a>>>0<262144){continue}break}}e=a&65535;f=F[d+(e<<2)>>2];l=b+(f<<3)|0;a=(L(F[l>>2],a>>>16|0)+e|0)-F[l+4>>2]|0;F[g+56>>2]=a;F[t+(p<<2)>>2]=f;l=1;p=p+1|0;if((m|0)!=(p|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=l;break g;case 11:m=a;t=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;h=g+8|0;a=H[c+38>>1];fa:{ga:{if(!a){break ga}ha:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break ga}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[h+12>>2]=i;j=F[c+20>>2];a=F[c+16>>2]+4|0;j=a>>>0<4?j+1|0:j;f=a;F[c+16>>2]=a;e=j;F[c+20>>2]=e;break ha}if(!lb(1,h+12|0,c)){break ga}f=F[c+16>>2];e=F[c+20>>2];i=F[h+12>>2]}a=F[c+8>>2];b=a-f|0;a=F[c+12>>2]-((a>>>0<f>>>0)+e|0)|0;if(b>>>0<i>>>6>>>0&(a|0)<=0|(a|0)<0){break ga}b=F[h>>2];a=F[h+4>>2]-b>>2;ia:{if(a>>>0<i>>>0){Aa(h,i-a|0);i=F[h+12>>2];break ia}if(a>>>0<=i>>>0){break ia}F[h+4>>2]=b+(i<<2)}d=1;if(!i){break fa}f=F[c+16>>2];e=F[c+20>>2];q=F[h>>2];r=F[c+8>>2];o=F[c+12>>2];b=0;while(1){d=0;if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break fa}d=F[c>>2];n=G[d+f|0];a=f+1|0;e=a?e:e+1|0;f=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;j=0;ja:{ka:{la:{ma:{s=n&3;switch(s|0){case 0:break ka;case 3:break ma;default:break la}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break fa}ua(q+(b<<2)|0,0,(n&252)+4|0);b=a;break ja}while(1){if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break ga}i=G[d+f|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;a=i<<(j<<3|6)|a;j=j+1|0;if((s|0)!=(j|0)){continue}break}}F[q+(b<<2)>>2]=a}b=b+1|0;i=F[h+12>>2];if(b>>>0<i>>>0){continue}break}a=h+16|0;o=F[h>>2];d=F[h+16>>2];b=F[h+20>>2]-d|0;na:{if(b>>>0<=1048575){Aa(a,262144-(b>>>2|0)|0);break na}if((b|0)==1048576){break na}F[h+20>>2]=d- -1048576}d=h+28|0;b=F[d>>2];e=F[h+32>>2]-b>>3;oa:{if(e>>>0<i>>>0){tb(d,i-e|0);b=F[d>>2];break oa}if(e>>>0>i>>>0){F[h+32>>2]=(i<<3)+b}if(!i){break ga}}h=F[a>>2];e=0;d=0;while(1){f=o+(e<<2)|0;j=F[f>>2];n=(e<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=j;f=F[f>>2];d=f+a|0;if(d>>>0>262144){break ga}pa:{if(a>>>0>=d>>>0){break pa}j=0;n=f&7;if(n){while(1){F[h+(a<<2)>>2]=e;a=a+1|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}if(f-1>>>0<=6){break pa}while(1){f=h+(a<<2)|0;F[f>>2]=e;F[f+28>>2]=e;F[f+24>>2]=e;F[f+20>>2]=e;F[f+16>>2]=e;F[f+12>>2]=e;F[f+8>>2]=e;F[f+4>>2]=e;a=a+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((i|0)!=(e|0)){continue}break}k=(d|0)==262144}d=k}qa:{if(!d|(F[g+20>>2]?0:m)){break qa}d=0;h=ea-16|0;ea=h;ra:{sa:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;j=F[c+20>>2];k=F[c+16>>2];e=k+8|0;j=e>>>0<8?j+1|0:j;b=F[c+8>>2];f=e;e=j;if(b>>>0<f>>>0&(e|0)>=(a|0)|(a|0)<(e|0)){break ra}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=f;F[c+20>>2]=e;break sa}if(!kb(1,h+8|0,c)){break ra}f=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[h+8>>2];k=F[h+12>>2]}j=b-f|0;b=i-((b>>>0<f>>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0<k>>>0){break ra}e=e+k|0;b=a+f|0;e=b>>>0<a>>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break ra}b=f+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;f=G[e|0];ta:{if(f>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break ta}ua:{switch((f>>>6|0)-1|0){case 0:if(a>>>0<2){break ra}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break ta;case 1:if(a>>>0<3){break ra}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+1|0]<<8|G[a+2|0]<<16&4128768|G[a|0];break ta;default:break ua}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}F[g+56>>2]=a- -1048576;d=a>>>0<267386880}ea=h+16|0;if(!d){break qa}if(!m){l=1;break qa}a=F[g+56>>2];b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];while(1){va:{if(a>>>0>1048575){break va}l=F[g+52>>2];while(1){if((l|0)<=0){break va}l=l-1|0;F[g+52>>2]=l;a=G[c+l|0]|a<<8;F[g+56>>2]=a;if(a>>>0<1048576){continue}break}}e=a&262143;f=F[d+(e<<2)>>2];l=b+(f<<3)|0;a=(L(F[l>>2],a>>>18|0)+e|0)-F[l+4>>2]|0;F[g+56>>2]=a;F[t+(p<<2)>>2]=f;l=1;p=p+1|0;if((m|0)!=(p|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=l;break g;case 12:m=a;t=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;h=g+8|0;a=H[c+38>>1];wa:{xa:{if(!a){break xa}ya:{if(a>>>0<=511){a=F[c+12>>2];j=F[c+20>>2];b=F[c+16>>2];d=b+4|0;j=d>>>0<4?j+1|0:j;if((a|0)<=(j|0)&d>>>0>I[c+8>>2]|(a|0)<(j|0)){break xa}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[h+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;f=a;F[c+16>>2]=a;F[c+20>>2]=e;break ya}if(!lb(1,h+12|0,c)){break xa}f=F[c+16>>2];e=F[c+20>>2];i=F[h+12>>2]}a=F[c+8>>2];b=a-f|0;a=F[c+12>>2]-((a>>>0<f>>>0)+e|0)|0;if(b>>>0<i>>>6>>>0&(a|0)<=0|(a|0)<0){break xa}b=F[h>>2];a=F[h+4>>2]-b>>2;za:{if(a>>>0<i>>>0){Aa(h,i-a|0);i=F[h+12>>2];break za}if(a>>>0<=i>>>0){break za}F[h+4>>2]=b+(i<<2)}d=1;if(!i){break wa}f=F[c+16>>2];e=F[c+20>>2];q=F[h>>2];r=F[c+8>>2];o=F[c+12>>2];b=0;while(1){d=0;if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break wa}d=F[c>>2];n=G[d+f|0];a=f+1|0;e=a?e:e+1|0;f=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;j=0;Aa:{Ba:{Ca:{Da:{s=n&3;switch(s|0){case 0:break Ba;case 3:break Da;default:break Ca}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break wa}ua(q+(b<<2)|0,0,(n&252)+4|0);b=a;break Aa}while(1){if((e|0)>=(o|0)&f>>>0>=r>>>0|(e|0)>(o|0)){break xa}i=G[d+f|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;a=i<<(j<<3|6)|a;j=j+1|0;if((s|0)!=(j|0)){continue}break}}F[q+(b<<2)>>2]=a}b=b+1|0;i=F[h+12>>2];if(b>>>0<i>>>0){continue}break}a=h+16|0;o=F[h>>2];d=F[h+16>>2];b=F[h+20>>2]-d|0;Ea:{if(b>>>0<=2097151){Aa(a,524288-(b>>>2|0)|0);break Ea}if((b|0)==2097152){break Ea}F[h+20>>2]=d+2097152}d=h+28|0;b=F[d>>2];e=F[h+32>>2]-b>>3;Fa:{if(e>>>0<i>>>0){tb(d,i-e|0);b=F[d>>2];break Fa}if(e>>>0>i>>>0){F[h+32>>2]=(i<<3)+b}if(!i){break xa}}h=F[a>>2];e=0;d=0;while(1){f=o+(e<<2)|0;j=F[f>>2];n=(e<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=j;f=F[f>>2];d=f+a|0;if(d>>>0>524288){break xa}Ga:{if(a>>>0>=d>>>0){break Ga}j=0;n=f&7;if(n){while(1){F[h+(a<<2)>>2]=e;a=a+1|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}if(f-1>>>0<=6){break Ga}while(1){f=h+(a<<2)|0;F[f>>2]=e;F[f+28>>2]=e;F[f+24>>2]=e;F[f+20>>2]=e;F[f+16>>2]=e;F[f+12>>2]=e;F[f+8>>2]=e;F[f+4>>2]=e;a=a+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((i|0)!=(e|0)){continue}break}k=(d|0)==524288}d=k}Ha:{if(!d|(F[g+20>>2]?0:m)){break Ha}d=0;j=ea-16|0;ea=j;Ia:{Ja:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];f=k+8|0;e=f>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0<f>>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break Ia}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=f;F[c+20>>2]=e;break Ja}if(!kb(1,j+8|0,c)){break Ia}f=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[j+8>>2];k=F[j+12>>2]}h=b-f|0;b=i-((b>>>0<f>>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>h>>>0|b>>>0<k>>>0){break Ia}e=e+k|0;b=a+f|0;e=b>>>0<a>>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break Ia}b=f+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;f=G[e|0];Ka:{if(f>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break Ka}La:{switch((f>>>6|0)-1|0){case 0:if(a>>>0<2){break Ia}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break Ka;case 1:if(a>>>0<3){break Ia}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+1|0]<<8|G[a+2|0]<<16&4128768|G[a|0];break Ka;default:break La}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}F[g+56>>2]=a+2097152;d=a>>>0<534773760}ea=j+16|0;if(!d){break Ha}if(!m){l=1;break Ha}a=F[g+56>>2];b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];while(1){Ma:{if(a>>>0>2097151){break Ma}l=F[g+52>>2];while(1){if((l|0)<=0){break Ma}l=l-1|0;F[g+52>>2]=l;a=G[c+l|0]|a<<8;F[g+56>>2]=a;if(a>>>0<2097152){continue}break}}e=a&524287;f=F[d+(e<<2)>>2];l=b+(f<<3)|0;a=(L(F[l>>2],a>>>19|0)+e|0)-F[l+4>>2]|0;F[g+56>>2]=a;F[t+(p<<2)>>2]=f;l=1;p=p+1|0;if((m|0)!=(p|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=l;break g;case 17:b=Ie(a,c,d);break g;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:e=ea+-64|0;ea=e;F[e+56>>2]=0;F[e+48>>2]=0;F[e+52>>2]=0;F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Na:{if(!Ke(e+8|0,c)|(F[e+20>>2]?0:a)){break Na}if(!Je(e+8|0,c)){break Na}if(!a){b=1;break Na}c=F[e+56>>2];l=F[e+36>>2];k=F[e+48>>2];j=F[e+24>>2];while(1){Oa:{if(c>>>0>16383){break Oa}b=F[e+52>>2];while(1){if((b|0)<=0){break Oa}b=b-1|0;F[e+52>>2]=b;c=G[b+k|0]|c<<8;F[e+56>>2]=c;if(c>>>0<16384){continue}break}}b=c&4095;g=F[j+(b<<2)>>2];m=l+(g<<3)|0;c=(L(F[m>>2],c>>>12|0)+b|0)-F[m+4>>2]|0;F[e+56>>2]=c;F[(f<<2)+d>>2]=g;b=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}}a=F[e+36>>2];if(a){F[e+40>>2]=a;ra(a)}a=F[e+24>>2];if(a){F[e+28>>2]=a;ra(a)}a=F[e+8>>2];if(a){F[e+12>>2]=a;ra(a)}ea=e- -64|0;break g;case 13:case 14:case 15:case 16:break h;default:break g}}b=Ie(a,c,d)}f=b}return f}function fi(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=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0;s=ea+-64|0;ea=s;F[a+132>>2]=0;if(F[a+148>>2]){b=F[a+144>>2];if(b){while(1){d=F[b>>2];ra(b);b=d;if(b){continue}break}}b=0;F[a+144>>2]=0;d=F[a+140>>2];a:{if(!d){break a}if(d-1>>>0>=3){c=d&-4;while(1){g=b<<2;F[g+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(g|4)>>2]=0;F[F[a+136>>2]+(g|8)>>2]=0;F[F[a+136>>2]+(g|12)>>2]=0;b=b+4|0;j=j+4|0;if((c|0)!=(j|0)){continue}break}}d=d&3;if(!d){break a}while(1){F[F[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;w=w+1|0;if((d|0)!=(w|0)){continue}break}}F[a+148>>2]=0}b:{c:{d:{e:{b=F[a+4>>2];w=G[b+36|0];g=w<<8|G[b+37|0];if(g>>>0<=513){d=F[b+32>>2];f:{if(g>>>0<=511){g=F[d+20>>2];c=F[d+16>>2];j=c+4|0;g=j>>>0<4?g+1|0:g;e=j;j=F[d+12>>2];if(e>>>0>I[d+8>>2]&(j|0)<=(g|0)|(g|0)>(j|0)){break e}c=c+F[d>>2]|0;j=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[d+16>>2]=e;F[d+20>>2]=g;break f}if(!Ga(1,s,d)){break e}b=F[a+4>>2];w=G[b+36|0];j=F[s>>2]}F[a+132>>2]=j}g=F[b+32>>2];g:{h:{i:{if((w&255)>>>0<=1){w=0;d=F[g+20>>2];c=F[g+16>>2];j=c+4|0;d=j>>>0<4?d+1|0:d;e=F[g+12>>2];if((e|0)<=(d|0)&j>>>0>I[g+8>>2]|(d|0)>(e|0)){break c}c=c+F[g>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[s+60>>2]=c;F[g+16>>2]=j;F[g+20>>2]=d;F[a+156>>2]=c;c=a+156|0;break i}w=0;if(!Ga(1,s+60|0,g)){break c}b=F[a+4>>2];d=G[b+36|0];F[a+156>>2]=F[s+60>>2];c=a+156|0;if(d>>>0>1){break h}}d=F[b+32>>2];b=F[d+8>>2];g=F[d+12>>2];h=b;b=F[d+20>>2];j=F[d+16>>2];e=j+4|0;b=e>>>0<4?b+1|0:b;if(h>>>0<e>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break c}g=j+F[d>>2]|0;j=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[s+56>>2]=j;F[d+16>>2]=e;F[d+20>>2]=b;break g}if(!Ga(1,s+56|0,F[b+32>>2])){break c}j=F[s+56>>2]}if(j>>>0>1431655765|I[c>>2]>L(j,3)>>>0){break c}f=F[a+4>>2];g=F[f+32>>2];k=F[g+8>>2];b=k;c=F[g+12>>2];d=F[g+20>>2];e=F[g+16>>2];if((c|0)<=(d|0)&e>>>0>=b>>>0|(d|0)>(c|0)){break c}m=F[g>>2];l=G[m+e|0];b=d;A=e+1|0;b=A?b:b+1|0;F[g+16>>2]=A;F[g+20>>2]=b;j:{if(G[f+36|0]<=1){b=c;c=e+5|0;d=c>>>0<5?d+1|0:d;e=c;if((b|0)<=(d|0)&c>>>0>k>>>0|(b|0)<(d|0)){break c}b=m+A|0;c=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[s+52>>2]=c;F[g+16>>2]=e;F[g+20>>2]=d;break j}if(!Ga(1,s+52|0,g)){break c}c=F[s+52>>2]}if(((c>>>0)/3|0)+c>>>0<j>>>0|c>>>0>j>>>0){break c}b=F[a+4>>2];g=F[b+32>>2];k:{if(G[b+36|0]<=1){b=F[g+20>>2];d=F[g+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;f=F[g+12>>2];if((f|0)<=(b|0)&e>>>0>I[g+8>>2]|(b|0)>(f|0)){break c}d=d+F[g>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[s+48>>2]=d;F[g+16>>2]=e;F[g+20>>2]=b;break k}if(!Ga(1,s+48|0,g)){break c}d=F[s+48>>2]}if(d>>>0>c>>>0){break c}F[a+28>>2]=F[a+24>>2];g=$b(sa(88));b=F[a+8>>2];F[a+8>>2]=g;if(b){eb(b);if(!F[a+8>>2]){break c}}F[a+164>>2]=F[a+160>>2];Kb(a+160|0,j);F[a+176>>2]=F[a+172>>2];Kb(a+172|0,j);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];C=a+216|0;cd(C);bd(C,l);if(!Jc(F[a+8>>2],j,F[a+156>>2]+d|0)){break c}b=F[a+156>>2];D[s|0]=1;Qa(a+120|0,b+d|0,s);b=F[a+4>>2];g=H[b+36>>1];g=(g<<8|g>>>8)&65535;l:{if(g>>>0<=513){b=F[b+32>>2];m:{if(g>>>0<=511){g=F[b+20>>2];j=F[b+16>>2];e=j+4|0;g=e>>>0<4?g+1|0:g;f=F[b+12>>2];if((f|0)<=(g|0)&e>>>0>I[b+8>>2]|(f|0)<(g|0)){break c}j=j+F[b>>2]|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=g;break m}if(!Ga(1,s+44|0,b)){break c}j=F[s+44>>2]}if(!j){break c}b=F[F[a+4>>2]+32>>2];g=F[b+8>>2];e=F[b+16>>2];f=g-e|0;b=F[b+12>>2]-(F[b+20>>2]+(e>>>0>g>>>0)|0)|0;if(f>>>0<j>>>0&(b|0)<=0|(b|0)<0){break c}b=Ka(s);e=F[F[a+4>>2]+32>>2];g=F[e+16>>2];f=(g+F[e>>2]|0)+j|0;k=F[e+8>>2];g=(k-g|0)-j|0;E[b+38>>1]=H[e+38>>1];F[b>>2]=f;F[b+16>>2]=0;F[b+20>>2]=0;F[b+8>>2]=g;F[b+12>>2]=0;A=Jb(a,b);if((A|0)==-1){break c}N=A>>31;break l}A=-1;N=-1;if((Jb(a,F[b+32>>2])|0)==-1){break c}}f=a+232|0;Be(f,a);F[a+372>>2]=l;F[a+384>>2]=F[a+156>>2]+d;M=Ka(s);g=M;j=0;l=ea-16|0;ea=l;n:{o:{b=F[f+144>>2];b=H[(ga[F[F[b>>2]+32>>2]](b)|0)+36>>1];if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[f+4>>2];F[f+40>>2]=F[f>>2];F[f+44>>2]=b;b=F[f+36>>2];F[f+72>>2]=F[f+32>>2];F[f+76>>2]=b;d=F[f+28>>2];b=f- -64|0;F[b>>2]=F[f+24>>2];F[b+4>>2]=d;b=F[f+20>>2];F[f+56>>2]=F[f+16>>2];F[f+60>>2]=b;b=F[f+12>>2];F[f+48>>2]=F[f+8>>2];F[f+52>>2]=b;if(!Fb(f+40|0,1,l+8|0)){break o}b=F[f+44>>2];F[f>>2]=F[f+40>>2];F[f+4>>2]=b;b=F[f+76>>2];F[f+32>>2]=F[f+72>>2];F[f+36>>2]=b;b=F[f+68>>2];F[f+24>>2]=F[f+64>>2];F[f+28>>2]=b;d=F[f+60>>2];e=d;b=F[f+56>>2];F[f+16>>2]=b;F[f+20>>2]=d;k=F[f+52>>2];d=F[f+48>>2];F[f+8>>2]=d;F[f+12>>2]=k;m=d-b|0;i=F[l+12>>2];d=k-((b>>>0>d>>>0)+e|0)|0;k=F[l+8>>2];if((i|0)==(d|0)&m>>>0<k>>>0|d>>>0<i>>>0){break o}d=b;k=b+k|0;b=e+i|0;F[f+16>>2]=k;F[f+20>>2]=d>>>0>k>>>0?b+1|0:b}p:{if(H[f+38>>1]<=513){b=F[f+4>>2];F[f+96>>2]=F[f>>2];F[f+100>>2]=b;b=F[f+36>>2];F[f+128>>2]=F[f+32>>2];F[f+132>>2]=b;b=F[f+28>>2];F[f+120>>2]=F[f+24>>2];F[f+124>>2]=b;b=F[f+20>>2];F[f+112>>2]=F[f+16>>2];F[f+116>>2]=b;b=F[f+12>>2];F[f+104>>2]=F[f+8>>2];F[f+108>>2]=b;if(!Fb(f+96|0,1,l+8|0)){break o}b=F[f+100>>2];F[f>>2]=F[f+96>>2];F[f+4>>2]=b;b=F[f+132>>2];F[f+32>>2]=F[f+128>>2];F[f+36>>2]=b;b=F[f+124>>2];F[f+24>>2]=F[f+120>>2];F[f+28>>2]=b;d=F[f+116>>2];e=d;b=F[f+112>>2];F[f+16>>2]=b;F[f+20>>2]=d;k=F[f+108>>2];d=F[f+104>>2];F[f+8>>2]=d;F[f+12>>2]=k;m=d-b|0;i=F[l+12>>2];d=k-((b>>>0>d>>>0)+e|0)|0;k=F[l+8>>2];if((i|0)==(d|0)&m>>>0<k>>>0|d>>>0<i>>>0){break o}d=e+i|0;k=b+k|0;d=k>>>0<b>>>0?d+1|0:d;F[f+16>>2]=k;F[f+20>>2]=d;break p}if(!wa(f+80|0,f)){break n}}if(!Ce(f)){break n}b=F[f+4>>2];F[g>>2]=F[f>>2];F[g+4>>2]=b;b=F[f+36>>2];F[g+32>>2]=F[f+32>>2];F[g+36>>2]=b;b=F[f+28>>2];F[g+24>>2]=F[f+24>>2];F[g+28>>2]=b;b=F[f+20>>2];F[g+16>>2]=F[f+16>>2];F[g+20>>2]=b;b=F[f+12>>2];F[g+8>>2]=F[f+8>>2];F[g+12>>2]=b;b=F[f+144>>2];b=H[(ga[F[F[b>>2]+32>>2]](b)|0)+36>>1];q:{if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[f+144>>2];r:{if(G[(ga[F[F[b>>2]+32>>2]](b)|0)+36|0]<=1){b=F[g+20>>2];d=F[g+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;k=F[g+12>>2];if((k|0)<=(b|0)&e>>>0>I[g+8>>2]|(b|0)>(k|0)){break n}d=d+F[g>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[g+16>>2]=e;F[g+20>>2]=b;break r}if(!Ga(1,l+8|0,g)){break n}d=F[l+8>>2]}b=F[f+152>>2];if(d>>>0>=b>>>0){break n}d=F[g+20>>2];k=F[g+12>>2];e=F[g+16>>2];if((d|0)>=(k|0)&e>>>0>=I[g+8>>2]|(d|0)>(k|0)){break n}k=G[e+F[g>>2]|0];e=e+1|0;d=e?d:d+1|0;F[g+16>>2]=e;F[g+20>>2]=d;if(k){break n}F[f+176>>2]=2;F[f+180>>2]=7;break q}F[f+176>>2]=2;F[f+180>>2]=7;b=F[f+152>>2]}if((b|0)<0){break n}F[l+8>>2]=0;j=2;k=F[f+156>>2];e=F[f+160>>2]-k>>2;s:{if(e>>>0<b>>>0){Ia(f+156|0,b-e|0,l+8|0);j=F[f+176>>2];d=F[f+180>>2];break s}d=7;if(b>>>0>=e>>>0){break s}F[f+160>>2]=k+(b<<2)}e=f+184|0;d=(d-j|0)+1|0;b=F[f+188>>2];j=F[f+184>>2];k=(b-j|0)/12|0;t:{if(d>>>0>k>>>0){j=0;d=d-k|0;i=F[e+8>>2];b=F[e+4>>2];u:{if(d>>>0<=(i-b|0)/12>>>0){if(d){j=b;b=L(d,12)-12|0;b=(b-((b>>>0)%12|0)|0)+12|0;b=ua(j,0,b)+b|0}F[e+4>>2]=b;break u}v:{w:{x:{k=F[e>>2];h=(b-k|0)/12|0;m=h+d|0;if(m>>>0<357913942){i=(i-k|0)/12|0;x=i<<1;m=i>>>0<178956970?m>>>0<x>>>0?x:m:357913941;if(m){if(m>>>0>=357913942){break x}j=sa(L(m,12))}h=L(h,12)+j|0;d=L(d,12)-12|0;i=(d-((d>>>0)%12|0)|0)+12|0;d=ua(h,0,i);i=d+i|0;j=L(m,12)+j|0;if((b|0)==(k|0)){break w}while(1){h=h-12|0;b=b-12|0;F[h>>2]=F[b>>2];F[h+4>>2]=F[b+4>>2];F[h+8>>2]=F[b+8>>2];F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;if((b|0)!=(k|0)){continue}break}F[e+8>>2]=j;d=F[e+4>>2];F[e+4>>2]=i;b=F[e>>2];F[e>>2]=h;if((b|0)==(d|0)){break v}while(1){j=d-12|0;k=F[j>>2];if(k){F[d-8>>2]=k;ra(k)}d=j;if((d|0)!=(b|0)){continue}break}break v}break b}za();V()}F[e+8>>2]=j;F[e+4>>2]=i;F[e>>2]=d}if(b){ra(b)}}d=F[f+188>>2];break t}if(d>>>0>=k>>>0){d=b;break t}d=j+L(d,12)|0;if((d|0)!=(b|0)){while(1){j=b-12|0;k=F[j>>2];if(k){F[b-8>>2]=k;ra(k)}b=j;if((d|0)!=(b|0)){continue}break}}F[f+188>>2]=d}m=f+196|0;j=F[f+184>>2];b=(d-j|0)/12|0;i=F[f+196>>2];k=F[f+200>>2]-i>>2;y:{if(b>>>0>k>>>0){Aa(m,b-k|0);j=F[f+184>>2];d=F[f+188>>2];break y}if(b>>>0>=k>>>0){break y}F[f+200>>2]=i+(b<<2)}if((d|0)==(j|0)){j=1;break n}b=0;while(1){if(!Ga(1,l+8|0,g)){break o}j=F[l+8>>2];d=F[f+148>>2];if(j>>>0>(F[d+4>>2]-F[d>>2]>>2>>>0)/3>>>0){break o}if(j){h=L(b,12);k=h+F[e>>2]|0;d=F[k>>2];i=F[k+4>>2]-d>>2;z:{if(i>>>0<j>>>0){Aa(k,j-i|0);d=F[h+F[e>>2]>>2];break z}if(i>>>0<=j>>>0){break z}F[k+4>>2]=(j<<2)+d}id(j,1,g,d);F[F[m>>2]+(b<<2)>>2]=j}j=1;b=b+1|0;if(b>>>0<(F[f+188>>2]-F[f+184>>2]|0)/12>>>0){continue}break}break n}j=0}ea=l+16|0;if(!j){break c}b=0;e=0;d=0;g=0;k=0;j=0;x=0;q=ea-96|0;ea=q;F[q+72>>2]=0;F[q+64>>2]=0;F[q+68>>2]=0;F[q+48>>2]=0;F[q+52>>2]=0;F[q+40>>2]=0;F[q+44>>2]=0;F[q+56>>2]=1065353216;F[q+32>>2]=0;F[q+24>>2]=0;F[q+28>>2]=0;i=a;J=F[a+124>>2];A:{B:{C:{D:{m=c;E:{if((c|0)<=0){break E}r=i+232|0;O=F[i+216>>2]!=F[i+220>>2];t=1;while(1){a=k;k=a+1|0;c=F[r+172>>2];F:{G:{if((c|0)!=-1){l=F[r+196>>2]+(c<<2)|0;n=F[l>>2];c=n-1|0;F[l>>2]=c;h=9;if((n|0)<=0){break F}c=F[F[F[r+184>>2]+L(F[r+172>>2],12)>>2]+(c<<2)>>2];if(c>>>0>4){break F}h=F[(c<<2)+12144>>2];break G}h=7;c=F[r+144>>2];c=H[(ga[F[F[c>>2]+32>>2]](c)|0)+36>>1];if(((c<<8|c>>>8)&65535)>>>0>513){break G}if(!G[r+76|0]){h=1;break G}h=0;n=F[r- -64>>2];l=F[r+72>>2];c=n+(l>>>3|0)|0;p=F[r+68>>2];if(c>>>0>=p>>>0){break G}o=G[c|0];c=l+1|0;F[r+72>>2]=c;if(!(o>>>(l&7)&1)){break G}o=c>>>3|0;h=n+o|0;H:{if(h>>>0>=p>>>0){h=c;c=0;break H}u=G[h|0];h=l+2|0;F[r+72>>2]=h;o=h>>>3|0;c=u>>>(c&7)&1}l=n+o|0;if(l>>>0<p>>>0){l=G[l|0];F[r+72>>2]=h+1;h=l>>>(h&7)<<1&2}else{h=0}h=(c|h)<<1|1}F[r+168>>2]=h}I:{J:{if(!h){if((d|0)==(g|0)){break D}b=-1;n=F[i+8>>2];o=F[n+24>>2];u=d-4|0;e=F[u>>2];c=-1;K:{if((e|0)==-1){break K}h=e+1|0;h=(h>>>0)%3|0?h:e-2|0;c=-1;if((h|0)==-1){break K}c=F[F[n>>2]+(h<<2)>>2]}l=F[o+(c<<2)>>2];if((l|0)!=-1){b=l+1|0;b=(b>>>0)%3|0?b:l-2|0}l=F[n+12>>2];h=L(a,3);a=h+1|0;F[l+(e<<2)>>2]=a;v=a<<2;F[v+l>>2]=e;p=h+2|0;F[l+(b<<2)>>2]=p;z=p<<2;F[z+l>>2]=b;t=-1;a=-1;L:{if((e|0)==-1){break L}M:{if((e>>>0)%3|0){l=e-1|0;break M}l=e+2|0;a=-1;if((l|0)==-1){break L}}a=F[F[n>>2]+(l<<2)>>2]}N:{if((b|0)==-1){break N}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;if((b|0)==-1){break N}t=F[F[n>>2]+(b<<2)>>2]}l=-1;if((a|0)==(c|0)|(c|0)==(t|0)){break C}b=F[n>>2];F[b+(h<<2)>>2]=c;F[b+v>>2]=t;F[b+z>>2]=a;if((a|0)!=-1){F[o+(a<<2)>>2]=p}a=F[i+120>>2]+(c>>>3&536870908)|0;b=F[a>>2];Q=a,R=Qj(c)&b,F[Q>>2]=R;break J}l=-1;O:{P:{Q:{R:{S:{T:{U:{V:{switch(h-1|0){case 2:case 4:if((b|0)==(g|0)){break C}c=F[i+8>>2];o=F[c+12>>2];n=L(a,3);u=(h|0)==5;p=n+(u?2:1)|0;v=p<<2;z=b-4|0;e=F[z>>2];F[o+v>>2]=e;F[o+(e<<2)>>2]=p;Ua(c+24|0);h=F[i+8>>2];o=F[h+24>>2];if((J|0)<F[h+28>>2]-o>>2){break D}h=F[h>>2];P=h+v|0;v=F[c+28>>2];c=F[c+24>>2];K=(v-c>>2)-1|0;F[P>>2]=K;if((c|0)!=(v|0)){F[o+(K<<2)>>2]=p}p=u?n:n+2|0;v=h+(n+u<<2)|0;W:{if((e|0)==-1){F[h+(p<<2)>>2]=-1;c=-1;break W}X:{Y:{Z:{if((e>>>0)%3|0){c=e-1|0;break Z}c=e+2|0;if((c|0)==-1){break Y}}c=F[h+(c<<2)>>2];F[h+(p<<2)>>2]=c;if((c|0)==-1){break X}F[o+(c<<2)>>2]=p;break X}F[h+(p<<2)>>2]=-1}p=e+1|0;e=(p>>>0)%3|0?p:e-2|0;c=-1;if((e|0)==-1){break W}c=F[h+(e<<2)>>2]}F[v>>2]=c;F[z>>2]=n;break U;case 0:if((b|0)==(e|0)){break C}d=b-4|0;p=F[d>>2];F[q+68>>2]=d;o=F[q+44>>2];_:{if(!o){break _}c=F[q+40>>2];u=Pj(o)>>>0>1;n=a&o+2147483647;$:{if(!u){break $}n=a;if(a>>>0<o>>>0){break $}n=(a>>>0)%(o>>>0)|0}c=F[c+(n<<2)>>2];if(!c){break _}c=F[c>>2];if(!c){break _}aa:{if(!u){h=o-1|0;while(1){o=F[c+4>>2];ba:{if((o|0)!=(a|0)){if((n|0)==(h&o)){break ba}break _}if((a|0)==F[c+8>>2]){break aa}}c=F[c>>2];if(c){continue}break}break _}while(1){h=F[c+4>>2];ca:{if((h|0)!=(a|0)){if(h>>>0>=o>>>0){h=(h>>>0)%(o>>>0)|0}if((h|0)==(n|0)){break ca}break _}if((a|0)==F[c+8>>2]){break aa}}c=F[c>>2];if(c){continue}break}break _}if((d|0)!=(y|0)){F[d>>2]=F[c+12>>2];F[q+68>>2]=b;d=b;break _}b=y-e|0;h=b>>2;d=h+1|0;if(d>>>0>=1073741824){break b}g=b>>1;d=b>>>0<2147483644?d>>>0<g>>>0?g:d:1073741823;if(d){if(d>>>0>=1073741824){break B}g=sa(d<<2)}else{g=0}h=g+(h<<2)|0;F[h>>2]=F[c+12>>2];y=(d<<2)+g|0;d=h+4|0;if((b|0)>0){ta(g,e,b)}F[q+72>>2]=y;F[q+68>>2]=d;F[q+64>>2]=g;if(!e){break _}ra(e)}if((d|0)==(g|0)){break S}u=d-4|0;b=F[u>>2];c=(b|0)==-1;n=F[i+8>>2];if(!c&F[F[n+12>>2]+(b<<2)>>2]!=-1){break S}o=F[n+12>>2];if((p|0)!=-1&F[o+(p<<2)>>2]!=-1){break S}h=L(a,3);t=h+2|0;F[o+(b<<2)>>2]=t;a=t<<2;F[a+o>>2]=b;e=h+1|0;F[o+(p<<2)>>2]=e;v=e<<2;F[v+o>>2]=p;if(c){break R}if((b>>>0)%3|0){l=b-1|0;break Q}l=b+2|0;if((l|0)!=-1){break Q}e=F[n>>2];c=-1;break P;case 6:break V;default:break C}}h=F[i+8>>2];Ua(h+24|0);c=F[i+8>>2];d=L(a,3);p=F[h+28>>2];o=F[h+24>>2];u=p-o|0;n=u>>2;v=n-1|0;F[F[c>>2]+(d<<2)>>2]=v;Ua(c+24|0);z=d+1|0;F[F[c>>2]+(z<<2)>>2]=(F[c+28>>2]-F[c+24>>2]>>2)-1;c=F[i+8>>2];Ua(c+24|0);K=d+2|0;F[F[c>>2]+(K<<2)>>2]=(F[c+28>>2]-F[c+24>>2]>>2)-1;c=F[i+8>>2];h=F[c+24>>2];if((J|0)<F[c+28>>2]-h>>2){break D}da:{ea:{if((p|0)!=(o|0)){F[h+(v<<2)>>2]=d;c=0;if((u|0)==-4){break ea}}F[h+(n<<2)>>2]=z;c=n+1|0;if((c|0)==-1){break da}}F[h+(c<<2)>>2]=K}if((b|0)!=(y|0)){F[b>>2]=d;d=b+4|0;F[q+68>>2]=d;b=d;break T}b=b-e|0;h=b>>2;g=h+1|0;if(g>>>0>=1073741824){break b}c=b>>1;c=b>>>0<2147483644?c>>>0>g>>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break B}g=sa(c<<2)}else{g=0}h=g+(h<<2)|0;F[h>>2]=d;y=(c<<2)+g|0;d=h+4|0;if((b|0)>0){ta(g,e,b)}F[q+72>>2]=y;F[q+68>>2]=d;F[q+64>>2]=g;if(e){ra(e)}b=d}e=g}Ae(r,F[b-4>>2]);c=F[i+40>>2];if((c|0)==F[i+36>>2]){break I}h=m+(a^-1)|0;n=d-4|0;while(1){a=c-12|0;p=F[a+4>>2];if(p>>>0>h>>>0){break S}if((h|0)!=(p|0)){break I}c=G[c-4|0];b=F[a>>2];F[i+40>>2]=a;if((b|0)<0){break S}a=F[n>>2];F[q+20>>2]=m+(b^-1);b=q+20|0;F[q+88>>2]=b;Yc(q,q+40|0,b,q+88|0);o=F[q>>2];fa:{if(c&1){b=-1;if((a|0)==-1){break fa}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break fa}b=-1;if((a|0)==-1){break fa}b=a-1|0;if((a>>>0)%3|0){break fa}b=a+2|0}F[o+12>>2]=b;b=d;c=F[i+40>>2];if((c|0)!=F[i+36>>2]){continue}break}break I}if(t&1){break C}break E}c=-1;e=F[n>>2];F[e+(h<<2)>>2]=-1;l=-1;break O}e=F[n>>2];c=F[e+(l<<2)>>2]}F[(h<<2)+e>>2]=c;z=b+1|0;b=(z>>>0)%3|0?z:b-2|0;l=-1;if((b|0)==-1){break O}l=F[(b<<2)+e>>2]}F[e+v>>2]=l;ga:{if((p|0)==-1){F[a+e>>2]=-1;t=-1;l=-1;break ga}ha:{ia:{ja:{if((p>>>0)%3|0){l=p-1|0;break ja}l=p+2|0;if((l|0)==-1){break ia}}b=a+e|0;a=F[(l<<2)+e>>2];F[b>>2]=a;if((a|0)==-1){break ha}F[F[n+24>>2]+(a<<2)>>2]=t;break ha}F[a+e>>2]=-1}t=-1;a=p+1|0;a=(a>>>0)%3|0?a:p-2|0;l=-1;if((a|0)==-1){break ga}t=F[(a<<2)+e>>2];l=a}a=F[i+388>>2];b=c<<2;p=a+b|0;v=a;a=t<<2;F[p>>2]=F[p>>2]+F[v+a>>2];n=F[n+24>>2];a=n+a|0;if((c|0)!=-1){F[b+n>>2]=F[a>>2]}ka:{if((l|0)==-1){break ka}while(1){F[(l<<2)+e>>2]=c;b=l+1|0;b=(b>>>0)%3|0?b:l-2|0;if((b|0)==-1){break ka}b=F[o+(b<<2)>>2];if((b|0)==-1){break ka}l=b+1|0;l=(l>>>0)%3|0?l:b-2|0;if((l|0)!=-1){continue}break}}F[a>>2]=-1;la:{if(O){break la}if((x|0)!=(B|0)){F[x>>2]=t;x=x+4|0;F[q+28>>2]=x;break la}b=B-j|0;e=b>>2;a=e+1|0;if(a>>>0<1073741824){c=b>>1;c=b>>>0<2147483644?a>>>0<c>>>0?c:a:1073741823;if(c){if(c>>>0>=1073741824){break B}a=sa(c<<2)}else{a=0}e=a+(e<<2)|0;F[e>>2]=t;B=a+(c<<2)|0;x=e+4|0;if((b|0)>0){ta(a,j,b)}F[q+32>>2]=B;F[q+28>>2]=x;F[q+24>>2]=a;if(j){ra(j)}j=a;break la}break b}}F[u>>2]=h;Ae(r,h);b=d;e=g}t=(k|0)<(m|0);if((k|0)!=(m|0)){continue}break}k=m}l=-1;b=F[i+8>>2];if((J|0)<F[b+28>>2]-F[b+24>>2]>>2){break C}if((d|0)!=(g|0)){a=i+60|0;J=i+312|0;while(1){d=d-4|0;r=F[d>>2];F[q+68>>2]=d;ma:{na:{oa:{pa:{if(H[i+270>>1]<=513){if(!G[i+364|0]){break oa}b=F[i+360>>2];c=F[i+352>>2]+(b>>>3|0)|0;if(c>>>0>=I[i+356>>2]){break na}c=G[c|0];F[i+360>>2]=b+1;b=c>>>(b&7)&1;break pa}b=Da(J)}if(!b){break na}}o=F[i+8>>2];p=F[o>>2];if(((F[o+4>>2]-p>>2>>>0)/3|0)<=(k|0)){break D}c=-1;b=-1;h=F[o+24>>2];e=-1;qa:{if((r|0)==-1){break qa}n=r+1|0;n=(n>>>0)%3|0?n:r-2|0;e=-1;if((n|0)==-1){break qa}e=F[p+(n<<2)>>2]}n=e;e=F[h+(n<<2)>>2];ra:{if((e|0)==-1){break ra}m=e+1|0;e=(m>>>0)%3|0?m:e-2|0;if((e|0)==-1){break ra}c=e+1|0;c=(c>>>0)%3|0?c:e-2|0;if((c|0)!=-1){b=F[p+(c<<2)>>2]}c=e}e=-1;t=-1;h=F[h+(b<<2)>>2];m=-1;sa:{if((h|0)==-1){break sa}y=h+1|0;h=(y>>>0)%3|0?y:h-2|0;m=-1;if((h|0)==-1){break sa}m=h+1|0;m=(m>>>0)%3|0?m:h-2|0;if((m|0)!=-1){t=F[p+(m<<2)>>2]}m=h}h=F[o+12>>2];o=L(k,3);B=o<<2;F[h+B>>2]=r;F[h+(r<<2)>>2]=o;r=o+1|0;u=r<<2;F[u+h>>2]=c;F[h+(c<<2)>>2]=r;y=o+2|0;c=y<<2;F[c+h>>2]=m;F[h+(m<<2)>>2]=y;F[p+B>>2]=b;m=p+u|0;F[m>>2]=t;h=c+p|0;F[h>>2]=n;c=r?b:-1;b=F[i+120>>2];n=(c>>>3&536870908)+b|0;t=F[n>>2];Q=n,R=Qj(c)&t,F[Q>>2]=R;e=(r|0)!=-1?F[m>>2]:e;c=b+(e>>>3&536870908)|0;m=F[c>>2];Q=c,R=Qj(e)&m,F[Q>>2]=R;c=-1;c=(y|0)!=-1?F[h>>2]:c;b=b+(c>>>3&536870908)|0;e=F[b>>2];Q=b,R=Qj(c)&e,F[Q>>2]=R;c=F[i+64>>2];b=F[i+68>>2];if((c|0)==b<<5){if((c+1|0)<0){break b}if(c>>>0<=1073741822){b=b<<6;c=c+32&-32;b=b>>>0>c>>>0?b:c}else{b=2147483647}fb(a,b);c=F[i+64>>2]}k=k+1|0;F[i+64>>2]=c+1;b=F[i+60>>2]+(c>>>3&536870908)|0;F[b>>2]=F[b>>2]|1<<c;b=F[i+76>>2];if((b|0)!=F[i+80>>2]){F[b>>2]=o;F[i+76>>2]=b+4;break ma}e=F[i+72>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break b}m=c>>1;m=c>>>0<2147483644?b>>>0<m>>>0?m:b:1073741823;if(m){if(m>>>0>=1073741824){break B}b=sa(m<<2)}else{b=0}h=b+(h<<2)|0;F[h>>2]=o;if((c|0)>0){ta(b,e,c)}F[i+80>>2]=b+(m<<2);F[i+76>>2]=h+4;F[i+72>>2]=b;if(!e){break ma}ra(e);break ma}h=F[i+64>>2];b=F[i+68>>2];if((h|0)==b<<5){if((h+1|0)<0){break b}if(h>>>0<=1073741822){b=b<<6;c=h+32&-32;b=b>>>0>c>>>0?b:c}else{b=2147483647}fb(a,b);h=F[i+64>>2]}F[i+64>>2]=h+1;b=F[i+60>>2]+(h>>>3&536870908)|0;c=F[b>>2];Q=b,R=Qj(h)&c,F[Q>>2]=R;b=F[i+76>>2];if((b|0)!=F[i+80>>2]){F[b>>2]=r;F[i+76>>2]=b+4;break ma}e=F[i+72>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break b}m=c>>1;m=c>>>0<2147483644?b>>>0<m>>>0?m:b:1073741823;if(m){if(m>>>0>=1073741824){break B}b=sa(m<<2)}else{b=0}h=b+(h<<2)|0;F[h>>2]=r;if((c|0)>0){ta(b,e,c)}F[i+80>>2]=b+(m<<2);F[i+76>>2]=h+4;F[i+72>>2]=b;if(!e){break ma}ra(e)}if((d|0)!=(g|0)){continue}break}b=F[i+8>>2]}if(((F[b+4>>2]-F[b>>2]>>2>>>0)/3|0)!=(k|0)){break C}l=F[b+28>>2]-F[b+24>>2]>>2;if((j|0)==(x|0)){j=x;break C}e=j;while(1){a=F[e>>2];c=F[b+24>>2];d=l-1|0;k=c+(d<<2)|0;if(F[k>>2]==-1){while(1){d=l-2|0;l=l-1|0;k=c+(d<<2)|0;if(F[k>>2]==-1){continue}break}}if(a>>>0<=d>>>0){F[q>>2]=b;k=F[k>>2];D[q+12|0]=1;F[q+8>>2]=k;F[q+4>>2]=k;if((k|0)!=-1){while(1){b=F[F[i+8>>2]>>2]+(k<<2)|0;if(F[b>>2]!=(d|0)){break D}F[b>>2]=a;uc(q);k=F[q+8>>2];if((k|0)!=-1){continue}break}b=F[i+8>>2]}k=F[b+24>>2];c=k+(d<<2)|0;if((a|0)!=-1){F[k+(a<<2)>>2]=F[c>>2]}F[c>>2]=-1;c=1<<a;k=F[i+120>>2];a=k+(a>>>3&536870908)|0;k=k+(d>>>3&536870908)|0;d=1<<d;if(F[k>>2]&d){c=c|F[a>>2]}else{c=F[a>>2]&(c^-1)}F[a>>2]=c;F[k>>2]=F[k>>2]&(d^-1);l=l-1|0}e=e+4|0;if((x|0)!=(e|0)){continue}break}break C}l=-1}if(j){ra(j)}a=F[q+48>>2];if(a){while(1){b=F[a>>2];ra(a);a=b;if(b){continue}break}}a=F[q+40>>2];F[q+40>>2]=0;if(a){ra(a)}if(g){F[q+68>>2]=g;ra(g)}ea=q+96|0;break A}za();V()}if((l|0)==-1){break c}a=F[M+16>>2];b=a+F[M>>2]|0;d=F[M+8>>2];d=d-a|0;a=F[F[i+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=b;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=d;F[a+12>>2]=0;a=F[i+4>>2];b=H[a+36>>1];g=b<<8|b>>>8;if((g&65535)>>>0<=513){a=F[a+32>>2];d=N+F[a+20>>2]|0;b=A+F[a+16>>2]|0;d=b>>>0<A>>>0?d+1|0:d;F[a+16>>2]=b;F[a+20>>2]=d}ta:{if(F[i+216>>2]==F[i+220>>2]){break ta}b=F[i+8>>2];a=F[b>>2];b=F[b+4>>2];ua:{if((g&65535)>>>0>=513){if((a|0)==(b|0)){break ta}b=0;break ua}if((a|0)==(b|0)){break ta}b=0;while(1){if(ad(i,b)){b=b+3|0;a=F[i+8>>2];if(b>>>0<F[a+4>>2]-F[a>>2]>>2>>>0){continue}break ta}break}break c}while(1){if($c(i,b)){b=b+3|0;a=F[i+8>>2];if(b>>>0<F[a+4>>2]-F[a>>2]>>2>>>0){continue}break ta}break}break c}_c(f);b=F[i+216>>2];if((b|0)==F[i+220>>2]){break d}c=0;while(1){d=L(c,144);Hc((d+b|0)+4|0,F[i+8>>2]);a=F[C>>2];g=a+d|0;b=F[g+132>>2];g=F[g+136>>2];if((b|0)!=(g|0)){while(1){Fc((d+F[C>>2]|0)+4|0,F[b>>2]);b=b+4|0;if((g|0)!=(b|0)){continue}break}a=F[C>>2]}Gc((a+d|0)+4|0);c=c+1|0;b=F[i+216>>2];if(c>>>0<(F[i+220>>2]-b|0)/144>>>0){continue}break}break d}w=0;break c}a=F[i+8>>2];Ib(i+184|0,F[a+28>>2]-F[a+24>>2]>>2);w=F[i+216>>2];if((w|0)!=F[i+220>>2]){b=0;while(1){a=L(b,144)+w|0;d=F[a+60>>2]-F[a+56>>2]>>2;e=a+104|0;a=F[i+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ib(e,(a|0)<(d|0)?d:a);b=b+1|0;w=F[i+216>>2];if(b>>>0<(F[i+220>>2]-w|0)/144>>>0){continue}break}}w=Zc(i,l)}ea=s- -64|0;return w|0}va();V()}function gi(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=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0;r=ea+-64|0;ea=r;F[a+132>>2]=0;if(F[a+148>>2]){b=F[a+144>>2];if(b){while(1){c=F[b>>2];ra(b);b=c;if(b){continue}break}}b=0;F[a+144>>2]=0;c=F[a+140>>2];a:{if(!c){break a}if(c-1>>>0>=3){f=c&-4;while(1){e=b<<2;F[e+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(e|4)>>2]=0;F[F[a+136>>2]+(e|8)>>2]=0;F[F[a+136>>2]+(e|12)>>2]=0;b=b+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}c=c&3;if(!c){break a}while(1){F[F[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;u=u+1|0;if((c|0)!=(u|0)){continue}break}}F[a+148>>2]=0}b:{c:{d:{b=F[a+4>>2];u=G[b+36|0];e=u<<8|G[b+37|0];if(e>>>0<=513){c=F[b+32>>2];e:{if(e>>>0<=511){e=F[c+20>>2];f=F[c+16>>2];j=f+4|0;e=j>>>0<4?e+1|0:e;d=j;j=F[c+12>>2];if(d>>>0>I[c+8>>2]&(j|0)<=(e|0)|(e|0)>(j|0)){break d}f=f+F[c>>2]|0;j=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[c+16>>2]=d;F[c+20>>2]=e;break e}if(!Ga(1,r,c)){break d}b=F[a+4>>2];u=G[b+36|0];j=F[r>>2]}F[a+132>>2]=j}c=F[b+32>>2];f:{g:{h:{if((u&255)>>>0<=1){u=0;e=F[c+20>>2];f=F[c+16>>2];j=f+4|0;e=j>>>0<4?e+1|0:e;d=F[c+12>>2];if((d|0)<=(e|0)&j>>>0>I[c+8>>2]|(d|0)<(e|0)){break b}f=f+F[c>>2]|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[r+60>>2]=f;F[c+16>>2]=j;F[c+20>>2]=e;F[a+156>>2]=f;c=a+156|0;break h}u=0;if(!Ga(1,r+60|0,c)){break b}b=F[a+4>>2];e=G[b+36|0];F[a+156>>2]=F[r+60>>2];c=a+156|0;if(e>>>0>1){break g}}e=F[b+32>>2];b=F[e+8>>2];f=F[e+12>>2];i=b;b=F[e+20>>2];j=F[e+16>>2];d=j+4|0;b=d>>>0<4?b+1|0:b;if(i>>>0<d>>>0&(b|0)>=(f|0)|(b|0)>(f|0)){break b}f=j+F[e>>2]|0;j=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[r+56>>2]=j;F[e+16>>2]=d;F[e+20>>2]=b;break f}if(!Ga(1,r+56|0,F[b+32>>2])){break b}j=F[r+56>>2]}if(j>>>0>1431655765|I[c>>2]>L(j,3)>>>0){break b}o=F[a+4>>2];e=F[o+32>>2];i=F[e+8>>2];c=i;f=F[e+12>>2];b=F[e+20>>2];d=F[e+16>>2];if((f|0)<=(b|0)&d>>>0>=c>>>0|(b|0)>(f|0)){break b}m=F[e>>2];h=G[m+d|0];y=d+1|0;c=y?b:b+1|0;F[e+16>>2]=y;F[e+20>>2]=c;i:{if(G[o+36|0]<=1){c=f;f=d+5|0;b=f>>>0<5?b+1|0:b;if(f>>>0>i>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break b}c=m+y|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[r+52>>2]=c;F[e+16>>2]=f;F[e+20>>2]=b;break i}if(!Ga(1,r+52|0,e)){break b}c=F[r+52>>2]}if(((c>>>0)/3|0)+c>>>0<j>>>0|c>>>0>j>>>0){break b}b=F[a+4>>2];e=F[b+32>>2];j:{if(G[b+36|0]<=1){b=F[e+20>>2];f=F[e+16>>2];d=f+4|0;b=d>>>0<4?b+1|0:b;o=F[e+12>>2];if((o|0)<=(b|0)&d>>>0>I[e+8>>2]|(b|0)>(o|0)){break b}f=f+F[e>>2]|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[r+48>>2]=f;F[e+16>>2]=d;F[e+20>>2]=b;break j}if(!Ga(1,r+48|0,e)){break b}f=F[r+48>>2]}if(c>>>0<f>>>0){break b}F[a+28>>2]=F[a+24>>2];e=$b(sa(88));b=F[a+8>>2];F[a+8>>2]=e;if(b){eb(b);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Kb(a+160|0,j);F[a+176>>2]=F[a+172>>2];Kb(a+172|0,j);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];J=a+216|0;cd(J);bd(J,h);if(!Jc(F[a+8>>2],j,F[a+156>>2]+f|0)){break b}b=F[a+156>>2];D[r|0]=1;Qa(a+120|0,b+f|0,r);b=F[a+4>>2];e=H[b+36>>1];e=(e<<8|e>>>8)&65535;k:{if(e>>>0<=513){b=F[b+32>>2];l:{if(e>>>0<=511){e=F[b+20>>2];j=F[b+16>>2];d=j+4|0;e=d>>>0<4?e+1|0:e;o=F[b+12>>2];if((o|0)<=(e|0)&d>>>0>I[b+8>>2]|(e|0)>(o|0)){break b}j=j+F[b>>2]|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=e;break l}if(!Ga(1,r+44|0,b)){break b}j=F[r+44>>2]}if(!j){break b}b=F[F[a+4>>2]+32>>2];e=F[b+8>>2];d=F[b+16>>2];o=e-d|0;b=F[b+12>>2]-(F[b+20>>2]+(d>>>0>e>>>0)|0)|0;if((b|0)<=0&j>>>0>o>>>0|(b|0)<0){break b}e=Ka(r);d=F[F[a+4>>2]+32>>2];b=F[d+16>>2];o=(b+F[d>>2]|0)+j|0;i=F[d+8>>2];b=(i-b|0)-j|0;E[e+38>>1]=H[d+38>>1];F[e>>2]=o;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=b;F[e+12>>2]=0;y=Jb(a,e);if((y|0)==-1){break b}O=y>>31;break k}y=-1;O=-1;if((Jb(a,F[b+32>>2])|0)==-1){break b}}z=a+232|0;Be(z,a);F[a+372>>2]=h;F[a+384>>2]=F[a+156>>2]+f;M=Ka(r);b=M;h=0;f=ea-16|0;ea=f;m:{if(!De(z,b)){break m}e=F[b+20>>2];j=F[b+16>>2];d=j+4|0;e=d>>>0<4?e+1|0:e;o=F[b+12>>2];if((o|0)<=(e|0)&d>>>0>I[b+8>>2]|(e|0)>(o|0)){break m}j=j+F[b>>2]|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=e;if((j|0)<0){break m}e=F[z+152>>2];if((e|0)<=(j|0)){break m}F[f+12>>2]=0;d=F[z+156>>2];j=F[z+160>>2]-d>>2;n:{if(j>>>0<e>>>0){Ia(z+156|0,e-j|0,f+12|0);break n}if(e>>>0>=j>>>0){break n}F[z+160>>2]=d+(e<<2)}h=wa(z+168|0,b)}ea=f+16|0;if(!h){break b}b=0;f=0;h=0;o=0;e=0;j=0;n=ea-96|0;ea=n;F[n+72>>2]=0;F[n+64>>2]=0;F[n+68>>2]=0;F[n+48>>2]=0;F[n+52>>2]=0;F[n+40>>2]=0;F[n+44>>2]=0;F[n+56>>2]=1065353216;F[n+32>>2]=0;F[n+24>>2]=0;F[n+28>>2]=0;d=a;x=F[a+124>>2];o:{p:{q:{r:{s:{t:{m=c;u:{if((c|0)<=0){break u}N=d+400|0;K=d+232|0;P=F[d+216>>2]!=F[d+220>>2];q=1;while(1){i=o;o=i+1|0;v:{w:{x:{y:{z:{if(F[d+420>>2]!=-1){if(Da(N)){break z}}if(G[d+308|0]){g=F[d+296>>2];c=F[d+304>>2];a=g+(c>>>3|0)|0;k=F[d+300>>2];if(a>>>0>=k>>>0){break y}l=G[a|0];a=c+1|0;F[d+304>>2]=a;if(!(l>>>(c&7)&1)){break y}l=a>>>3|0;p=g+l|0;A:{if(p>>>0>=k>>>0){c=a;a=0;break A}p=G[p|0];c=c+2|0;F[d+304>>2]=c;l=c>>>3|0;a=p>>>(a&7)&1}g=g+l|0;if(g>>>0<k>>>0){g=G[g|0];F[d+304>>2]=c+1;c=g>>>(c&7)<<1&2}else{c=0}a=(a|c)<<1|1}else{a=1}F[d+416>>2]=a;break w}a=F[d+420>>2];F[d+416>>2]=a;if(a){break w}break x}F[d+416>>2]=0}if((b|0)==(h|0)){break t}a=-1;k=F[d+8>>2];s=F[k+24>>2];v=b-4|0;c=F[v>>2];g=-1;B:{if((c|0)==-1){break B}q=c+1|0;q=(q>>>0)%3|0?q:c-2|0;g=-1;if((q|0)==-1){break B}g=F[F[k>>2]+(q<<2)>>2]}l=F[s+(g<<2)>>2];if((l|0)!=-1){a=l+1|0;a=(a>>>0)%3|0?a:l-2|0}q=F[k+12>>2];l=L(i,3);i=l+1|0;F[q+(c<<2)>>2]=i;w=i<<2;F[w+q>>2]=c;p=l+2|0;F[q+(a<<2)>>2]=p;B=p<<2;F[B+q>>2]=a;q=-1;i=-1;C:{if((c|0)==-1){break C}D:{if((c>>>0)%3|0){c=c-1|0;break D}c=c+2|0;i=-1;if((c|0)==-1){break C}}i=F[F[k>>2]+(c<<2)>>2]}E:{if((a|0)==-1){break E}c=a+1|0;a=(c>>>0)%3|0?c:a-2|0;if((a|0)==-1){break E}q=F[F[k>>2]+(a<<2)>>2]}c=-1;if((g|0)==(i|0)|(g|0)==(q|0)){break s}a=F[k>>2];F[a+(l<<2)>>2]=g;F[a+w>>2]=q;F[a+B>>2]=i;if((i|0)!=-1){F[s+(i<<2)>>2]=p}a=F[d+120>>2]+(g>>>3&536870908)|0;c=F[a>>2];Q=a,R=Qj(g)&c,F[Q>>2]=R;F[v>>2]=l;Wc(K,l);break v}c=-1;F:{G:{H:{I:{J:{K:{L:{M:{N:{O:{switch(a-1|0){case 2:case 4:if((b|0)==(e|0)){break s}k=F[d+8>>2];h=F[k+12>>2];g=L(i,3);a=(a|0)==5;p=g+(a?2:1)|0;s=p<<2;v=b-4|0;b=F[v>>2];F[h+s>>2]=b;F[h+(b<<2)>>2]=p;Ua(k+24|0);h=F[d+8>>2];l=F[h+24>>2];if((x|0)<F[h+28>>2]-l>>2){break t}h=F[h>>2];B=h+s|0;s=F[k+28>>2];k=F[k+24>>2];w=(s-k>>2)-1|0;F[B>>2]=w;if((k|0)!=(s|0)){F[l+(w<<2)>>2]=p}k=a?g:g+2|0;s=h+(a+g<<2)|0;P:{if((b|0)==-1){F[h+(k<<2)>>2]=-1;a=-1;break P}Q:{R:{S:{if((b>>>0)%3|0){a=b-1|0;break S}a=b+2|0;if((a|0)==-1){break R}}a=F[h+(a<<2)>>2];F[h+(k<<2)>>2]=a;if((a|0)==-1){break Q}F[l+(a<<2)>>2]=k;break Q}F[h+(k<<2)>>2]=-1}k=b+1|0;b=(k>>>0)%3|0?k:b-2|0;a=-1;if((b|0)==-1){break P}a=F[h+(b<<2)>>2]}F[s>>2]=a;F[v>>2]=g;break N;case 0:if((b|0)==(h|0)){break s}f=b-4|0;l=F[f>>2];F[n+68>>2]=f;p=F[n+44>>2];T:{if(!p){break T}g=F[n+40>>2];s=Pj(p)>>>0>1;a=i&p+2147483647;U:{if(!s){break U}a=i;if(a>>>0<p>>>0){break U}a=(i>>>0)%(p>>>0)|0}k=a;a=F[g+(k<<2)>>2];if(!a){break T}a=F[a>>2];if(!a){break T}V:{if(!s){g=p-1|0;while(1){p=F[a+4>>2];W:{if((p|0)!=(i|0)){if((k|0)==(g&p)){break W}break T}if((i|0)==F[a+8>>2]){break V}}a=F[a>>2];if(a){continue}break}break T}while(1){g=F[a+4>>2];X:{if((g|0)!=(i|0)){if(g>>>0>=p>>>0){g=(g>>>0)%(p>>>0)|0}if((g|0)==(k|0)){break X}break T}if((i|0)==F[a+8>>2]){break V}}a=F[a>>2];if(a){continue}break}break T}if((f|0)!=(t|0)){F[f>>2]=F[a+12>>2];F[n+68>>2]=b;f=b;break T}b=t-h|0;g=b>>2;e=g+1|0;if(e>>>0>=1073741824){break K}f=b>>1;f=b>>>0<2147483644?e>>>0<f>>>0?f:e:1073741823;if(f){if(f>>>0>=1073741824){break r}e=sa(f<<2)}else{e=0}g=e+(g<<2)|0;F[g>>2]=F[a+12>>2];t=(f<<2)+e|0;f=g+4|0;if((b|0)>0){ta(e,h,b)}F[n+72>>2]=t;F[n+68>>2]=f;F[n+64>>2]=e;if(!h){break T}ra(h)}if((e|0)==(f|0)){break L}s=f-4|0;h=F[s>>2];a=(h|0)==-1;g=F[d+8>>2];if(!a&F[F[g+12>>2]+(h<<2)>>2]!=-1){break L}k=F[g+12>>2];if((l|0)!=-1&F[k+(l<<2)>>2]!=-1){break L}q=L(i,3);p=q+2|0;F[k+(h<<2)>>2]=p;i=p<<2;F[i+k>>2]=h;b=q+1|0;F[k+(l<<2)>>2]=b;v=b<<2;F[v+k>>2]=l;if(a){break J}if((h>>>0)%3|0){c=h-1|0;break H}c=h+2|0;if((c|0)!=-1){break H}b=F[g>>2];a=-1;break G;case 6:break O;default:break s}}g=F[d+8>>2];Ua(g+24|0);a=F[d+8>>2];f=L(i,3);l=F[g+28>>2];p=F[g+24>>2];s=l-p|0;k=s>>2;v=k-1|0;F[F[a>>2]+(f<<2)>>2]=v;Ua(a+24|0);w=f+1|0;F[F[a>>2]+(w<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[d+8>>2];Ua(a+24|0);B=f+2|0;F[F[a>>2]+(B<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[d+8>>2];g=F[a+24>>2];if((x|0)<F[a+28>>2]-g>>2){break t}Y:{Z:{if((l|0)!=(p|0)){F[g+(v<<2)>>2]=f;a=0;if((s|0)==-4){break Z}}F[g+(k<<2)>>2]=w;a=k+1|0;if((a|0)==-1){break Y}}F[g+(a<<2)>>2]=B}if((b|0)!=(t|0)){F[b>>2]=f;f=b+4|0;F[n+68>>2]=f;break M}a=t-h|0;g=a>>2;b=g+1|0;if(b>>>0>=1073741824){break I}e=a>>1;b=a>>>0<2147483644?b>>>0<e>>>0?e:b:1073741823;if(b){if(b>>>0>=1073741824){break r}e=sa(b<<2)}else{e=0}g=e+(g<<2)|0;F[g>>2]=f;t=(b<<2)+e|0;f=g+4|0;if((a|0)>0){ta(e,h,a)}F[n+72>>2]=t;F[n+68>>2]=f;F[n+64>>2]=e;if(!h){break N}ra(h)}h=e}Wc(K,F[f-4>>2]);a=F[d+40>>2];_:{if((a|0)==F[d+36>>2]){break _}i=m+(i^-1)|0;k=f-4|0;while(1){b=a-12|0;g=F[b+4>>2];if(g>>>0>i>>>0){break L}if((g|0)!=(i|0)){break _}l=G[a-4|0];g=F[b>>2];F[d+40>>2]=b;if((g|0)<0){break L}a=F[k>>2];F[n+20>>2]=m+(g^-1);b=n+20|0;F[n+88>>2]=b;Yc(n,n+40|0,b,n+88|0);g=F[n>>2];$:{if(l&1){b=-1;if((a|0)==-1){break $}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break $}b=-1;if((a|0)==-1){break $}b=a-1|0;if((a>>>0)%3|0){break $}b=a+2|0}F[g+12>>2]=b;a=F[d+40>>2];if((a|0)!=F[d+36>>2]){continue}break}}b=f;break v}if(q&1){break s}break u}va();V()}a=-1;b=F[g>>2];F[b+(q<<2)>>2]=-1;c=-1;break F}va();V()}b=F[g>>2];a=F[b+(c<<2)>>2]}F[(q<<2)+b>>2]=a;w=h+1|0;h=(w>>>0)%3|0?w:h-2|0;c=-1;if((h|0)==-1){break F}c=F[(h<<2)+b>>2]}F[b+v>>2]=c;aa:{if((l|0)==-1){F[b+i>>2]=-1;h=-1;c=-1;break aa}ba:{ca:{da:{if((l>>>0)%3|0){c=l-1|0;break da}c=l+2|0;if((c|0)==-1){break ca}}c=F[(c<<2)+b>>2];F[b+i>>2]=c;if((c|0)==-1){break ba}F[F[g+24>>2]+(c<<2)>>2]=p;break ba}F[b+i>>2]=-1}h=-1;i=l+1|0;i=(i>>>0)%3|0?i:l-2|0;c=-1;if((i|0)==-1){break aa}h=F[(i<<2)+b>>2];c=i}i=F[d+388>>2];l=a<<2;p=i+l|0;v=i;i=h<<2;F[p>>2]=F[p>>2]+F[v+i>>2];g=F[g+24>>2];i=g+i|0;if((a|0)!=-1){F[g+l>>2]=F[i>>2]}ea:{if((c|0)==-1){break ea}while(1){F[(c<<2)+b>>2]=a;g=c+1|0;c=(g>>>0)%3|0?g:c-2|0;if((c|0)==-1){break ea}c=F[k+(c<<2)>>2];if((c|0)==-1){break ea}g=c+1|0;c=(g>>>0)%3|0?g:c-2|0;if((c|0)!=-1){continue}break}}F[i>>2]=-1;fa:{if(P){break fa}if((A|0)!=(C|0)){F[A>>2]=h;A=A+4|0;F[n+28>>2]=A;break fa}b=C-j|0;i=b>>2;a=i+1|0;if(a>>>0<1073741824){c=b>>1;c=b>>>0<2147483644?a>>>0<c>>>0?c:a:1073741823;if(c){if(c>>>0>=1073741824){break r}a=sa(c<<2)}else{a=0}i=a+(i<<2)|0;F[i>>2]=h;C=a+(c<<2)|0;A=i+4|0;if((b|0)>0){ta(a,j,b)}F[n+32>>2]=C;F[n+28>>2]=A;F[n+24>>2]=a;if(j){ra(j)}j=a;break fa}va();V()}F[s>>2]=q;b=f;h=e;Wc(K,q)}q=(o|0)<(m|0);if((o|0)!=(m|0)){continue}break}o=m}c=-1;b=F[d+8>>2];if((x|0)<F[b+28>>2]-F[b+24>>2]>>2){break s}if((e|0)!=(f|0)){i=d+60|0;K=d+312|0;while(1){f=f-4|0;l=F[f>>2];F[n+68>>2]=f;ga:{ha:{ia:{ja:{if(H[d+270>>1]<=513){if(!G[d+364|0]){break ia}a=F[d+360>>2];b=F[d+352>>2]+(a>>>3|0)|0;if(b>>>0>=I[d+356>>2]){break ha}b=G[b|0];F[d+360>>2]=a+1;a=b>>>(a&7)&1;break ja}a=Da(K)}if(!a){break ha}}t=F[d+8>>2];p=F[t>>2];if(((F[t+4>>2]-p>>2>>>0)/3|0)<=(o|0)){break t}a=-1;b=-1;g=F[t+24>>2];h=-1;ka:{if((l|0)==-1){break ka}k=l+1|0;k=(k>>>0)%3|0?k:l-2|0;h=-1;if((k|0)==-1){break ka}h=F[p+(k<<2)>>2]}k=h;h=F[g+(k<<2)>>2];la:{if((h|0)==-1){break la}m=h+1|0;h=(m>>>0)%3|0?m:h-2|0;if((h|0)==-1){break la}a=h+1|0;a=(a>>>0)%3|0?a:h-2|0;if((a|0)!=-1){b=F[p+(a<<2)>>2]}a=h}h=-1;q=-1;g=F[g+(b<<2)>>2];m=-1;ma:{if((g|0)==-1){break ma}x=g+1|0;g=(x>>>0)%3|0?x:g-2|0;m=-1;if((g|0)==-1){break ma}m=g+1|0;m=(m>>>0)%3|0?m:g-2|0;if((m|0)!=-1){q=F[p+(m<<2)>>2]}m=g}g=F[t+12>>2];t=L(o,3);C=t<<2;F[g+C>>2]=l;F[g+(l<<2)>>2]=t;l=t+1|0;N=l<<2;F[N+g>>2]=a;F[g+(a<<2)>>2]=l;x=t+2|0;a=x<<2;F[a+g>>2]=m;F[g+(m<<2)>>2]=x;F[p+C>>2]=b;m=p+N|0;F[m>>2]=q;g=a+p|0;F[g>>2]=k;a=l?b:-1;b=F[d+120>>2];k=(a>>>3&536870908)+b|0;q=F[k>>2];Q=k,R=Qj(a)&q,F[Q>>2]=R;h=(l|0)!=-1?F[m>>2]:h;a=b+(h>>>3&536870908)|0;m=F[a>>2];Q=a,R=Qj(h)&m,F[Q>>2]=R;a=-1;a=(x|0)!=-1?F[g>>2]:a;b=b+(a>>>3&536870908)|0;h=F[b>>2];Q=b,R=Qj(a)&h,F[Q>>2]=R;a=F[d+64>>2];b=F[d+68>>2];if((a|0)==b<<5){if((a+1|0)<0){break q}if(a>>>0<=1073741822){b=b<<6;a=a+32&-32;a=a>>>0<b>>>0?b:a}else{a=2147483647}fb(i,a);a=F[d+64>>2]}o=o+1|0;F[d+64>>2]=a+1;b=F[d+60>>2]+(a>>>3&536870908)|0;F[b>>2]=F[b>>2]|1<<a;a=F[d+76>>2];if((a|0)!=F[d+80>>2]){F[a>>2]=t;F[d+76>>2]=a+4;break ga}h=F[d+72>>2];b=a-h|0;g=b>>2;a=g+1|0;if(a>>>0>=1073741824){break p}m=b>>1;m=b>>>0<2147483644?a>>>0<m>>>0?m:a:1073741823;if(m){if(m>>>0>=1073741824){break r}a=sa(m<<2)}else{a=0}g=a+(g<<2)|0;F[g>>2]=t;if((b|0)>0){ta(a,h,b)}F[d+80>>2]=a+(m<<2);F[d+76>>2]=g+4;F[d+72>>2]=a;if(!h){break ga}ra(h);break ga}b=F[d+64>>2];a=F[d+68>>2];if((b|0)==a<<5){if((b+1|0)<0){break q}if(b>>>0<=1073741822){a=a<<6;b=b+32&-32;a=a>>>0>b>>>0?a:b}else{a=2147483647}fb(i,a);b=F[d+64>>2]}F[d+64>>2]=b+1;a=F[d+60>>2]+(b>>>3&536870908)|0;h=F[a>>2];Q=a,R=Qj(b)&h,F[Q>>2]=R;a=F[d+76>>2];if((a|0)!=F[d+80>>2]){F[a>>2]=l;F[d+76>>2]=a+4;break ga}h=F[d+72>>2];b=a-h|0;g=b>>2;a=g+1|0;if(a>>>0>=1073741824){break p}m=b>>1;m=b>>>0<2147483644?a>>>0<m>>>0?m:a:1073741823;if(m){if(m>>>0>=1073741824){break r}a=sa(m<<2)}else{a=0}g=a+(g<<2)|0;F[g>>2]=l;if((b|0)>0){ta(a,h,b)}F[d+80>>2]=a+(m<<2);F[d+76>>2]=g+4;F[d+72>>2]=a;if(!h){break ga}ra(h)}if((e|0)!=(f|0)){continue}break}b=F[d+8>>2]}if(((F[b+4>>2]-F[b>>2]>>2>>>0)/3|0)!=(o|0)){break s}c=F[b+28>>2]-F[b+24>>2]>>2;if((j|0)==(A|0)){j=A;break s}a=j;while(1){h=F[a>>2];i=F[b+24>>2];f=c-1|0;o=i+(f<<2)|0;if(F[o>>2]==-1){while(1){f=c-2|0;c=c-1|0;o=i+(f<<2)|0;if(F[o>>2]==-1){continue}break}}if(f>>>0>=h>>>0){F[n>>2]=b;o=F[o>>2];D[n+12|0]=1;F[n+8>>2]=o;F[n+4>>2]=o;if((o|0)!=-1){while(1){b=F[F[d+8>>2]>>2]+(o<<2)|0;if(F[b>>2]!=(f|0)){break t}F[b>>2]=h;uc(n);o=F[n+8>>2];if((o|0)!=-1){continue}break}b=F[d+8>>2]}i=F[b+24>>2];o=i+(f<<2)|0;if((h|0)!=-1){F[i+(h<<2)>>2]=F[o>>2]}F[o>>2]=-1;o=1<<h;i=F[d+120>>2];h=i+(h>>>3&536870908)|0;m=1<<f;i=i+(f>>>3&536870908)|0;if(m&F[i>>2]){f=o|F[h>>2]}else{f=F[h>>2]&(o^-1)}F[h>>2]=f;F[i>>2]=F[i>>2]&(m^-1);c=c-1|0}a=a+4|0;if((A|0)!=(a|0)){continue}break}break s}c=-1}if(j){ra(j)}a=F[n+48>>2];if(a){while(1){b=F[a>>2];ra(a);a=b;if(a){continue}break}}a=F[n+40>>2];F[n+40>>2]=0;if(a){ra(a)}if(e){F[n+68>>2]=e;ra(e)}ea=n+96|0;break o}za();V()}va();V()}va();V()}e=c;if((c|0)==-1){break b}a=F[M+16>>2];b=a+F[M>>2]|0;c=F[M+8>>2];c=c-a|0;a=F[F[d+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=b;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=c;F[a+12>>2]=0;a=F[d+4>>2];b=H[a+36>>1];f=b<<8|b>>>8;if((f&65535)>>>0<=513){a=F[a+32>>2];b=O+F[a+20>>2]|0;c=y+F[a+16>>2]|0;b=c>>>0<y>>>0?b+1|0:b;F[a+16>>2]=c;F[a+20>>2]=b}na:{if(F[d+216>>2]==F[d+220>>2]){break na}b=F[d+8>>2];a=F[b>>2];b=F[b+4>>2];oa:{if((f&65535)>>>0>=513){if((a|0)==(b|0)){break na}b=0;break oa}if((a|0)==(b|0)){break na}b=0;while(1){if(ad(d,b)){b=b+3|0;a=F[d+8>>2];if(b>>>0<F[a+4>>2]-F[a>>2]>>2>>>0){continue}break na}break}break b}while(1){if($c(d,b)){b=b+3|0;a=F[d+8>>2];if(b>>>0<F[a+4>>2]-F[a>>2]>>2>>>0){continue}break na}break}break b}_c(z);b=F[d+216>>2];if((b|0)==F[d+220>>2]){break c}c=0;while(1){f=L(c,144);Hc((f+b|0)+4|0,F[d+8>>2]);a=F[J>>2];j=a+f|0;b=F[j+132>>2];j=F[j+136>>2];if((b|0)!=(j|0)){while(1){Fc((f+F[J>>2]|0)+4|0,F[b>>2]);b=b+4|0;if((j|0)!=(b|0)){continue}break}a=F[J>>2]}Gc((a+f|0)+4|0);c=c+1|0;b=F[d+216>>2];if(c>>>0<(F[d+220>>2]-b|0)/144>>>0){continue}break}break c}u=0;break b}a=F[d+8>>2];Ib(d+184|0,F[a+28>>2]-F[a+24>>2]>>2);u=F[d+216>>2];if((u|0)!=F[d+220>>2]){b=0;while(1){a=L(b,144)+u|0;c=F[a+60>>2]-F[a+56>>2]>>2;i=a+104|0;a=F[d+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ib(i,(a|0)<(c|0)?c:a);b=b+1|0;u=F[d+216>>2];if(b>>>0<(F[d+220>>2]-u|0)/144>>>0){continue}break}}u=Zc(d,e)}ea=r- -64|0;return u|0}function ji(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=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0;q=ea+-64|0;ea=q;F[a+132>>2]=0;if(F[a+148>>2]){c=F[a+144>>2];if(c){while(1){e=F[c>>2];ra(c);c=e;if(c){continue}break}}c=0;F[a+144>>2]=0;e=F[a+140>>2];a:{if(!e){break a}if(e-1>>>0>=3){g=e&-4;while(1){d=c<<2;F[d+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(d|4)>>2]=0;F[F[a+136>>2]+(d|8)>>2]=0;F[F[a+136>>2]+(d|12)>>2]=0;c=c+4|0;k=k+4|0;if((g|0)!=(k|0)){continue}break}}e=e&3;if(!e){break a}while(1){F[F[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;s=s+1|0;if((e|0)!=(s|0)){continue}break}}F[a+148>>2]=0}b:{c:{d:{c=F[a+4>>2];s=G[c+36|0];e=s<<8|G[c+37|0];if(e>>>0<=513){d=F[c+32>>2];e:{if(e>>>0<=511){e=F[d+20>>2];g=F[d+16>>2];k=g+4|0;e=k>>>0<4?e+1|0:e;b=k;k=F[d+12>>2];if(b>>>0>I[d+8>>2]&(k|0)<=(e|0)|(e|0)>(k|0)){break d}g=g+F[d>>2]|0;k=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[d+16>>2]=b;F[d+20>>2]=e;break e}if(!Ga(1,q,d)){break d}c=F[a+4>>2];s=G[c+36|0];k=F[q>>2]}F[a+132>>2]=k}d=F[c+32>>2];f:{g:{h:{if((s&255)>>>0<=1){s=0;e=F[d+20>>2];g=F[d+16>>2];k=g+4|0;e=k>>>0<4?e+1|0:e;b=F[d+12>>2];if((b|0)<=(e|0)&k>>>0>I[d+8>>2]|(e|0)>(b|0)){break b}g=g+F[d>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[q+60>>2]=g;F[d+16>>2]=k;F[d+20>>2]=e;F[a+156>>2]=g;m=a+156|0;break h}s=0;if(!Ga(1,q+60|0,d)){break b}c=F[a+4>>2];e=G[c+36|0];F[a+156>>2]=F[q+60>>2];m=a+156|0;if(e>>>0>1){break g}}e=F[c+32>>2];c=F[e+8>>2];d=F[e+12>>2];j=c;c=F[e+20>>2];g=F[e+16>>2];k=g+4|0;c=k>>>0<4?c+1|0:c;b=k;if(j>>>0<b>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}d=g+F[e>>2]|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[q+56>>2]=k;F[e+16>>2]=b;F[e+20>>2]=c;break f}if(!Ga(1,q+56|0,F[c+32>>2])){break b}k=F[q+56>>2]}if(k>>>0>1431655765|I[m>>2]>L(k,3)>>>0){break b}z=F[a+4>>2];e=F[z+32>>2];f=F[e+8>>2];d=f;g=F[e+12>>2];c=F[e+20>>2];b=F[e+16>>2];if((g|0)<=(c|0)&b>>>0>=d>>>0|(c|0)>(g|0)){break b}h=F[e>>2];j=G[h+b|0];d=c;m=b+1|0;d=m?d:d+1|0;F[e+16>>2]=m;F[e+20>>2]=d;i:{if(G[z+36|0]<=1){d=g;g=b+5|0;c=g>>>0<5?c+1|0:c;if(g>>>0>f>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}d=h+m|0;m=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[q+52>>2]=m;F[e+16>>2]=g;F[e+20>>2]=c;break i}if(!Ga(1,q+52|0,e)){break b}m=F[q+52>>2]}if(k>>>0<m>>>0|((m>>>0)/3|0)+m>>>0<k>>>0){break b}c=F[a+4>>2];e=F[c+32>>2];j:{if(G[c+36|0]<=1){c=F[e+20>>2];d=F[e+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;b=F[e+12>>2];if((b|0)<=(c|0)&g>>>0>I[e+8>>2]|(c|0)>(b|0)){break b}d=d+F[e>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[q+48>>2]=d;F[e+16>>2]=g;F[e+20>>2]=c;break j}if(!Ga(1,q+48|0,e)){break b}d=F[q+48>>2]}if(d>>>0>m>>>0){break b}F[a+28>>2]=F[a+24>>2];e=$b(sa(88));c=F[a+8>>2];F[a+8>>2]=e;if(c){eb(c);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Kb(a+160|0,k);F[a+176>>2]=F[a+172>>2];Kb(a+172|0,k);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];A=a+216|0;cd(A);bd(A,j);if(!Jc(F[a+8>>2],k,F[a+156>>2]+d|0)){break b}c=F[a+156>>2];D[q|0]=1;Qa(a+120|0,c+d|0,q);c=F[a+4>>2];e=H[c+36>>1];e=(e<<8|e>>>8)&65535;k:{if(e>>>0<=513){c=F[c+32>>2];l:{if(e>>>0<=511){e=F[c+20>>2];d=F[c+16>>2];g=d+4|0;e=g>>>0<4?e+1|0:e;k=F[c+12>>2];if((k|0)<=(e|0)&g>>>0>I[c+8>>2]|(e|0)>(k|0)){break b}d=d+F[c>>2]|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[c+16>>2]=g;F[c+20>>2]=e;break l}if(!Ga(1,q+44|0,c)){break b}k=F[q+44>>2]}if(!k){break b}c=F[F[a+4>>2]+32>>2];e=F[c+8>>2];d=F[c+16>>2];g=e-d|0;c=F[c+12>>2]-(F[c+20>>2]+(e>>>0<d>>>0)|0)|0;if(g>>>0<k>>>0&(c|0)<=0|(c|0)<0){break b}e=Ka(q);d=F[F[a+4>>2]+32>>2];c=F[d+16>>2];g=(c+F[d>>2]|0)+k|0;b=F[d+8>>2];c=(b-c|0)-k|0;E[e+38>>1]=H[d+38>>1];F[e>>2]=g;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=c;F[e+12>>2]=0;z=Jb(a,e);if((z|0)==-1){break b}M=z>>31;break k}z=-1;M=-1;if((Jb(a,F[c+32>>2])|0)==-1){break b}}N=a+232|0;e=N;F[e+144>>2]=a;c=F[(ga[F[F[a>>2]+32>>2]](a)|0)+32>>2];d=F[c>>2]+F[c+16>>2]|0;g=F[(ga[F[F[a>>2]+32>>2]](a)|0)+32>>2];c=F[g+8>>2];g=F[g+16>>2];c=c-g|0;P=e,Q=H[F[(ga[F[F[a>>2]+32>>2]](a)|0)+32>>2]+38>>1],E[P+38>>1]=Q;F[e>>2]=d;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=c;F[e+12>>2]=0;F[a+372>>2]=j;C=Ka(q);if(!De(e,C)){break b}e=0;c=0;d=0;g=0;k=0;l=ea-96|0;ea=l;F[l+72>>2]=0;F[l+64>>2]=0;F[l+68>>2]=0;F[l+48>>2]=0;F[l+52>>2]=0;F[l+40>>2]=0;F[l+44>>2]=0;F[l+56>>2]=1065353216;F[l+32>>2]=0;F[l+24>>2]=0;F[l+28>>2]=0;f=a;B=F[a+124>>2];m:{n:{o:{p:{q:{r:{s:{if((m|0)<=0){break s}J=F[f+216>>2]!=F[f+220>>2];p=1;while(1){j=w;w=j+1|0;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{if(!G[f+308|0]){break E}F:{G:{h=F[f+296>>2];b=F[f+304>>2];a=h+(b>>>3|0)|0;i=F[f+300>>2];if(a>>>0>=i>>>0){break G}n=G[a|0];a=b+1|0;F[f+304>>2]=a;if(!(n>>>(b&7)&1)){break G}o=a>>>3|0;n=h+o|0;H:{if(n>>>0>=i>>>0){b=a;a=0;break H}n=G[n|0];b=b+2|0;F[f+304>>2]=b;o=b>>>3|0;a=n>>>(a&7)&1}h=h+o|0;if(h>>>0<i>>>0){h=G[h|0];F[f+304>>2]=b+1;b=h>>>(b&7)<<1&2}else{b=0}a=(a|b)<<1;switch(a-1|0){case 0:case 2:case 4:break A;case 5:break D;case 1:case 3:break F;default:break E}}if((c|0)==(d|0)){break r}i=-1;p=F[f+8>>2];o=F[p+24>>2];t=c-4|0;h=F[t>>2];a=-1;I:{if((h|0)==-1){break I}b=h+1|0;b=(b>>>0)%3|0?b:h-2|0;a=-1;if((b|0)==-1){break I}a=F[F[p>>2]+(b<<2)>>2]}e=F[o+(a<<2)>>2];if((e|0)!=-1){b=e+1|0;i=(b>>>0)%3|0?b:e-2|0}e=F[p+12>>2];j=L(j,3);b=j+1|0;F[e+(h<<2)>>2]=b;u=b<<2;F[u+e>>2]=h;n=j+2|0;F[e+(i<<2)>>2]=n;v=n<<2;F[v+e>>2]=i;e=-1;b=-1;J:{if((h|0)==-1){break J}K:{if((h>>>0)%3|0){h=h-1|0;break K}h=h+2|0;b=-1;if((h|0)==-1){break J}}b=F[F[p>>2]+(h<<2)>>2]}L:{if((i|0)==-1){break L}h=i+1|0;h=(h>>>0)%3|0?h:i-2|0;if((h|0)==-1){break L}e=F[F[p>>2]+(h<<2)>>2]}h=-1;if((a|0)==(b|0)|(a|0)==(e|0)){break q}h=F[p>>2];F[h+(j<<2)>>2]=a;F[h+u>>2]=e;F[h+v>>2]=b;if((b|0)!=-1){F[o+(b<<2)>>2]=n}e=F[f+120>>2]+(a>>>3&536870908)|0;b=F[e>>2];P=e,Q=Qj(a)&b,F[P>>2]=Q;F[t>>2]=j;e=d;break t}if((c|0)==(d|0)){break r}e=F[f+8>>2];b=F[e+12>>2];i=L(j,3);o=(a|1)==5;t=i+(o?2:1)|0;u=t<<2;v=c-4|0;a=F[v>>2];F[b+u>>2]=a;F[b+(a<<2)>>2]=t;Ua(e+24|0);h=-1;b=F[f+8>>2];n=F[b+24>>2];if((B|0)<F[b+28>>2]-n>>2){break q}b=F[b>>2];K=b+u|0;h=F[e+28>>2];e=F[e+24>>2];u=(h-e>>2)-1|0;F[K>>2]=u;if((e|0)!=(h|0)){F[n+(u<<2)>>2]=t}h=o?i:i+2|0;o=b+(i+o<<2)|0;M:{if((a|0)==-1){F[b+(h<<2)>>2]=-1;e=-1;break M}N:{O:{P:{if((a>>>0)%3|0){e=a-1|0;break P}e=a+2|0;if((e|0)==-1){break O}}e=F[b+(e<<2)>>2];F[b+(h<<2)>>2]=e;if((e|0)==-1){break N}F[n+(e<<2)>>2]=h;break N}F[b+(h<<2)>>2]=-1}h=a+1|0;a=(h>>>0)%3|0?h:a-2|0;e=-1;if((a|0)==-1){break M}e=F[b+(a<<2)>>2]}F[o>>2]=e;F[v>>2]=i;e=d;break C}if((c|0)==(d|0)){break r}a=c-4|0;n=F[a>>2];F[l+68>>2]=a;i=F[l+44>>2];Q:{if(!i){c=a;break Q}h=Pj(i)>>>0>1;R:{if(!h){e=j&i+2147483647;break R}e=j;if(i>>>0>e>>>0){break R}e=(j>>>0)%(i>>>0)|0}b=F[F[l+40>>2]+(e<<2)>>2];if(!b){c=a;break Q}b=F[b>>2];if(!b){c=a;break Q}S:{if(!h){h=i-1|0;while(1){i=F[b+4>>2];T:{if((i|0)!=(j|0)){if((h&i)==(e|0)){break T}c=a;break Q}if((j|0)==F[b+8>>2]){break S}}b=F[b>>2];if(b){continue}break}c=a;break Q}while(1){h=F[b+4>>2];U:{if((h|0)!=(j|0)){if(h>>>0>=i>>>0){h=(h>>>0)%(i>>>0)|0}if((e|0)==(h|0)){break U}c=a;break Q}if((j|0)==F[b+8>>2]){break S}}b=F[b>>2];if(b){continue}break}c=a;break Q}if((a|0)!=(r|0)){F[a>>2]=F[b+12>>2];F[l+68>>2]=c;break Q}a=r-d|0;e=a>>2;c=e+1|0;if(c>>>0>=1073741824){break z}g=a>>1;c=a>>>0<2147483644?c>>>0<g>>>0?g:c:1073741823;if(c){if(c>>>0>=1073741824){break p}g=sa(c<<2)}else{g=0}e=g+(e<<2)|0;F[e>>2]=F[b+12>>2];r=(c<<2)+g|0;c=e+4|0;if((a|0)>0){ta(g,d,a)}F[l+72>>2]=r;F[l+68>>2]=c;F[l+64>>2]=g;if(!d){break Q}ra(d)}if((c|0)==(g|0)){break B}u=c-4|0;d=F[u>>2];a=(d|0)==-1;h=F[f+8>>2];if(!a&F[F[h+12>>2]+(d<<2)>>2]!=-1){break B}o=F[h+12>>2];if((n|0)!=-1&F[o+(n<<2)>>2]!=-1){break B}j=L(j,3);t=j+2|0;F[o+(d<<2)>>2]=t;p=t<<2;F[p+o>>2]=d;e=j+1|0;F[o+(n<<2)>>2]=e;b=e<<2;F[b+o>>2]=n;if(a){break y}if((d>>>0)%3|0){a=d-1|0;break w}a=d+2|0;if((a|0)!=-1){break w}i=F[h>>2];e=-1;break v}i=F[f+8>>2];Ua(i+24|0);h=-1;b=F[f+8>>2];a=L(j,3);n=F[i+28>>2];o=F[i+24>>2];t=n-o|0;i=t>>2;u=i-1|0;F[F[b>>2]+(a<<2)>>2]=u;Ua(b+24|0);v=a+1|0;F[F[b>>2]+(v<<2)>>2]=(F[b+28>>2]-F[b+24>>2]>>2)-1;b=F[f+8>>2];Ua(b+24|0);K=a+2|0;F[F[b>>2]+(K<<2)>>2]=(F[b+28>>2]-F[b+24>>2]>>2)-1;O=F[f+8>>2];b=F[O+24>>2];if((B|0)<F[O+28>>2]-b>>2){break q}V:{W:{if((n|0)!=(o|0)){F[b+(u<<2)>>2]=a;h=0;if((t|0)==-4){break W}}F[b+(i<<2)>>2]=v;h=i+1|0;if((h|0)==-1){break V}}F[b+(h<<2)>>2]=K}if((c|0)!=(r|0)){F[c>>2]=a;c=c+4|0;F[l+68>>2]=c;break C}d=c-e|0;b=d>>2;c=b+1|0;if(c>>>0>=1073741824){break x}g=d>>1;c=d>>>0<2147483644?c>>>0<g>>>0?g:c:1073741823;if(c){if(c>>>0>=1073741824){break p}g=sa(c<<2)}else{g=0}b=g+(b<<2)|0;F[b>>2]=a;r=(c<<2)+g|0;c=b+4|0;if((d|0)>0){ta(g,e,d)}F[l+72>>2]=r;F[l+68>>2]=c;F[l+64>>2]=g;if(e){ra(e)}d=g;e=d}b=F[f+40>>2];if((b|0)==F[f+36>>2]){break t}j=(j^-1)+m|0;h=c-4|0;while(1){a=b-12|0;i=F[a+4>>2];if(i>>>0>j>>>0){break B}if((i|0)!=(j|0)){break t}i=G[b-4|0];b=F[a>>2];F[f+40>>2]=a;if((b|0)<0){break B}a=F[h>>2];F[l+20>>2]=(b^-1)+m;b=l+20|0;F[l+88>>2]=b;Yc(l,l+40|0,b,l+88|0);o=F[l>>2];X:{if(i&1){b=-1;if((a|0)==-1){break X}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break X}b=-1;if((a|0)==-1){break X}b=a-1|0;if((a>>>0)%3|0){break X}b=a+2|0}F[o+12>>2]=b;b=F[f+40>>2];if((b|0)!=F[f+36>>2]){continue}break}break t}h=-1;if(p&1){break q}break s}V()}va();V()}e=-1;i=F[h>>2];F[i+(j<<2)>>2]=-1;a=-1;break u}va();V()}i=F[h>>2];e=F[i+(a<<2)>>2]}F[(j<<2)+i>>2]=e;v=d+1|0;d=(v>>>0)%3|0?v:d-2|0;a=-1;if((d|0)==-1){break u}a=F[(d<<2)+i>>2]}F[b+i>>2]=a;Y:{if((n|0)==-1){F[i+p>>2]=-1;p=-1;b=-1;break Y}Z:{_:{$:{if((n>>>0)%3|0){b=n-1|0;break $}b=n+2|0;if((b|0)==-1){break _}}a=F[(b<<2)+i>>2];F[i+p>>2]=a;if((a|0)==-1){break Z}F[F[h+24>>2]+(a<<2)>>2]=t;break Z}F[i+p>>2]=-1}p=-1;a=n+1|0;a=(a>>>0)%3|0?a:n-2|0;b=-1;if((a|0)==-1){break Y}p=F[(a<<2)+i>>2];b=a}d=F[h+24>>2];a=d+(p<<2)|0;if((e|0)!=-1){F[d+(e<<2)>>2]=F[a>>2]}aa:{if((b|0)==-1){break aa}while(1){F[(b<<2)+i>>2]=e;d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)==-1){break aa}d=F[o+(d<<2)>>2];if((d|0)==-1){break aa}b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if((b|0)!=-1){continue}break}}F[a>>2]=-1;ba:{if(J){break ba}if((x|0)!=(y|0)){F[x>>2]=p;x=x+4|0;F[l+28>>2]=x;break ba}e=y-k|0;b=e>>2;a=b+1|0;if(a>>>0<1073741824){d=e>>1;d=e>>>0<2147483644?a>>>0<d>>>0?d:a:1073741823;if(d){if(d>>>0>=1073741824){break p}a=sa(d<<2)}else{a=0}b=a+(b<<2)|0;F[b>>2]=p;y=a+(d<<2)|0;x=b+4|0;if((e|0)>0){ta(a,k,e)}F[l+32>>2]=y;F[l+28>>2]=x;F[l+24>>2]=a;if(k){ra(k)}k=a;break ba}va();V()}F[u>>2]=j;d=g;e=d}p=(m|0)>(w|0);if((m|0)!=(w|0)){continue}break}w=m}h=-1;i=F[f+8>>2];if((B|0)<F[i+28>>2]-F[i+24>>2]>>2){break q}if((c|0)!=(g|0)){e=f+60|0;B=f+312|0;while(1){c=c-4|0;m=F[c>>2];F[l+68>>2]=c;ca:{da:{ea:{fa:{if(H[f+270>>1]<=513){if(!G[f+364|0]){break ea}a=F[f+360>>2];d=F[f+352>>2]+(a>>>3|0)|0;if(d>>>0>=I[f+356>>2]){break da}d=G[d|0];F[f+360>>2]=a+1;a=d>>>(a&7)&1;break fa}a=Da(B)}if(!a){break da}}r=F[f+8>>2];n=F[r>>2];if(((F[r+4>>2]-n>>2>>>0)/3|0)<=(w|0)){break r}a=-1;i=-1;b=F[r+24>>2];d=-1;ga:{if((m|0)==-1){break ga}j=m+1|0;j=(j>>>0)%3|0?j:m-2|0;d=-1;if((j|0)==-1){break ga}d=F[n+(j<<2)>>2]}j=d;d=F[b+(j<<2)>>2];ha:{if((d|0)==-1){break ha}p=d+1|0;d=(p>>>0)%3|0?p:d-2|0;if((d|0)==-1){break ha}a=d+1|0;a=(a>>>0)%3|0?a:d-2|0;if((a|0)!=-1){i=F[n+(a<<2)>>2]}a=d}p=-1;o=-1;b=F[b+(i<<2)>>2];d=-1;ia:{if((b|0)==-1){break ia}y=b+1|0;b=(y>>>0)%3|0?y:b-2|0;d=-1;if((b|0)==-1){break ia}d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){o=F[n+(d<<2)>>2]}d=b}b=F[r+12>>2];r=L(w,3);y=r<<2;F[b+y>>2]=m;F[b+(m<<2)>>2]=r;m=r+1|0;t=m<<2;F[t+b>>2]=a;F[b+(a<<2)>>2]=m;a=r+2|0;J=a<<2;F[J+b>>2]=d;F[b+(d<<2)>>2]=a;F[n+y>>2]=i;b=n+t|0;F[b>>2]=o;n=n+J|0;F[n>>2]=j;d=F[f+120>>2];j=m?i:-1;i=d+(j>>>3&536870908)|0;o=F[i>>2];P=i,Q=Qj(j)&o,F[P>>2]=Q;p=(m|0)!=-1?F[b>>2]:p;b=d+(p>>>3&536870908)|0;j=F[b>>2];P=b,Q=Qj(p)&j,F[P>>2]=Q;b=-1;b=(a|0)!=-1?F[n>>2]:b;a=d+(b>>>3&536870908)|0;d=F[a>>2];P=a,Q=Qj(b)&d,F[P>>2]=Q;b=F[f+64>>2];a=F[f+68>>2];if((b|0)==a<<5){if((b+1|0)<0){break o}if(b>>>0<=1073741822){a=a<<6;d=b+32&-32;a=a>>>0>d>>>0?a:d}else{a=2147483647}fb(e,a);b=F[f+64>>2]}w=w+1|0;F[f+64>>2]=b+1;a=F[f+60>>2]+(b>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<<b;a=F[f+76>>2];if((a|0)!=F[f+80>>2]){F[a>>2]=r;F[f+76>>2]=a+4;break ca}b=F[f+72>>2];d=a-b|0;m=d>>2;a=m+1|0;if(a>>>0>=1073741824){break n}j=d>>1;j=d>>>0<2147483644?a>>>0<j>>>0?j:a:1073741823;if(j){if(j>>>0>=1073741824){break p}a=sa(j<<2)}else{a=0}m=a+(m<<2)|0;F[m>>2]=r;if((d|0)>0){ta(a,b,d)}F[f+80>>2]=a+(j<<2);F[f+76>>2]=m+4;F[f+72>>2]=a;if(!b){break ca}ra(b);break ca}a=F[f+64>>2];d=F[f+68>>2];if((a|0)==d<<5){if((a+1|0)<0){break o}if(a>>>0<=1073741822){d=d<<6;a=a+32&-32;a=a>>>0<d>>>0?d:a}else{a=2147483647}fb(e,a);a=F[f+64>>2]}F[f+64>>2]=a+1;d=F[f+60>>2]+(a>>>3&536870908)|0;b=F[d>>2];P=d,Q=Qj(a)&b,F[P>>2]=Q;a=F[f+76>>2];if((a|0)!=F[f+80>>2]){F[a>>2]=m;F[f+76>>2]=a+4;break ca}b=F[f+72>>2];d=a-b|0;i=d>>2;a=i+1|0;if(a>>>0>=1073741824){break n}j=d>>1;j=d>>>0<2147483644?a>>>0<j>>>0?j:a:1073741823;if(j){if(j>>>0>=1073741824){break p}a=sa(j<<2)}else{a=0}i=a+(i<<2)|0;F[i>>2]=m;if((d|0)>0){ta(a,b,d)}F[f+80>>2]=a+(j<<2);F[f+76>>2]=i+4;F[f+72>>2]=a;if(!b){break ca}ra(b)}if((c|0)!=(g|0)){continue}break}i=F[f+8>>2]}if(((F[i+4>>2]-F[i>>2]>>2>>>0)/3|0)!=(w|0)){break q}h=F[i+28>>2]-F[i+24>>2]>>2;if((k|0)==(x|0)){k=x;break q}e=k;while(1){a=F[e>>2];d=F[i+24>>2];b=h-1|0;c=d+(b<<2)|0;if(F[c>>2]==-1){while(1){b=h-2|0;h=h-1|0;c=d+(b<<2)|0;if(F[c>>2]==-1){continue}break}}if(a>>>0<=b>>>0){F[l>>2]=i;c=F[c>>2];D[l+12|0]=1;F[l+8>>2]=c;F[l+4>>2]=c;if((c|0)!=-1){while(1){c=F[F[f+8>>2]>>2]+(c<<2)|0;if(F[c>>2]!=(b|0)){break r}F[c>>2]=a;uc(l);c=F[l+8>>2];if((c|0)!=-1){continue}break}i=F[f+8>>2]}d=F[i+24>>2];c=d+(b<<2)|0;if((a|0)!=-1){F[d+(a<<2)>>2]=F[c>>2]}F[c>>2]=-1;c=1<<a;d=F[f+120>>2];a=d+(a>>>3&536870908)|0;d=d+(b>>>3&536870908)|0;b=1<<b;if(F[d>>2]&b){c=c|F[a>>2]}else{c=F[a>>2]&(c^-1)}F[a>>2]=c;F[d>>2]=F[d>>2]&(b^-1);h=h-1|0}e=e+4|0;if((x|0)!=(e|0)){continue}break}break q}h=-1}if(k){ra(k)}a=F[l+48>>2];if(a){while(1){c=F[a>>2];ra(a);a=c;if(a){continue}break}}a=F[l+40>>2];F[l+40>>2]=0;if(a){ra(a)}if(g){F[l+68>>2]=g;ra(g)}ea=l+96|0;a=h;break m}za();V()}va();V()}va();V()}d=a;if((a|0)==-1){break b}a=F[C+16>>2];c=a+F[C>>2]|0;e=F[C+8>>2];e=e-a|0;a=F[F[f+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=c;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=e;F[a+12>>2]=0;a=F[f+4>>2];c=H[a+36>>1];g=c<<8|c>>>8;if((g&65535)>>>0<=513){a=F[a+32>>2];e=M+F[a+20>>2]|0;c=z+F[a+16>>2]|0;e=c>>>0<z>>>0?e+1|0:e;F[a+16>>2]=c;F[a+20>>2]=e}ja:{if(F[f+216>>2]==F[f+220>>2]){break ja}c=F[f+8>>2];a=F[c>>2];c=F[c+4>>2];ka:{if((g&65535)>>>0>=513){if((a|0)==(c|0)){break ja}c=0;break ka}if((a|0)==(c|0)){break ja}c=0;while(1){if(ad(f,c)){c=c+3|0;a=F[f+8>>2];if(c>>>0<F[a+4>>2]-F[a>>2]>>2>>>0){continue}break ja}break}break b}while(1){if($c(f,c)){c=c+3|0;a=F[f+8>>2];if(c>>>0<F[a+4>>2]-F[a>>2]>>2>>>0){continue}break ja}break}break b}_c(N);c=F[f+216>>2];if((c|0)==F[f+220>>2]){break c}m=0;while(1){e=L(m,144);Hc((e+c|0)+4|0,F[f+8>>2]);a=F[A>>2];g=a+e|0;c=F[g+132>>2];g=F[g+136>>2];if((c|0)!=(g|0)){while(1){Fc((e+F[A>>2]|0)+4|0,F[c>>2]);c=c+4|0;if((g|0)!=(c|0)){continue}break}a=F[A>>2]}Gc((a+e|0)+4|0);m=m+1|0;c=F[f+216>>2];if(m>>>0<(F[f+220>>2]-c|0)/144>>>0){continue}break}break c}s=0;break b}a=F[f+8>>2];Ib(f+184|0,F[a+28>>2]-F[a+24>>2]>>2);s=F[f+216>>2];if((s|0)!=F[f+220>>2]){c=0;while(1){a=L(c,144)+s|0;e=F[a+60>>2]-F[a+56>>2]>>2;b=a+104|0;a=F[f+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ib(b,(a|0)<(e|0)?e:a);c=c+1|0;s=F[f+216>>2];if(c>>>0<(F[f+220>>2]-s|0)/144>>>0){continue}break}}s=Zc(f,d)}ea=q- -64|0;return s|0}function pg(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;a:{b:{c:{d:{switch(d-1|0){case 0:a=0;m=ea-16|0;ea=m;j=F[b+80>>2];d=D[c+24|0];e:{if((L(j,d)|0)!=(e|0)){break e}a=F[c+28>>2]!=1;k=G[c+84|0];if(!(a|!k)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break e}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break c}h=sa(d);F[m>>2]=h;ua(h,0,d)}f:{g:{if(!j){break g}if(!a){if(d){n=d&-4;l=d&3;b=0;o=d-1>>>0<3;d=0;while(1){e=F[F[c>>2]>>2];t=F[c+40>>2];a=F[c+48>>2]+Mj(t,F[c+44>>2],G[c+84|0]?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;e=ta(h,e+a|0,t);k=0;a=0;g=0;if(!o){while(1){i=b+f|0;D[i|0]=G[a+e|0];D[i+1|0]=G[e+(a|1)|0];D[i+2|0]=G[e+(a|2)|0];D[i+3|0]=G[e+(a|3)|0];a=a+4|0;b=b+4|0;g=g+4|0;if((n|0)!=(g|0)){continue}break}}if(l){while(1){D[b+f|0]=G[a+e|0];a=a+1|0;b=b+1|0;k=k+1|0;if((l|0)!=(k|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break f}l=F[c>>2];b=F[c+48>>2];o=F[c+68>>2];d=F[c+44>>2];c=F[c+40>>2];t=c;a=0;if((j|0)!=1){q=j&-2;while(1){e=a|1;p=F[l>>2];f=Mj(c,d,k?a:F[o+(a<<2)>>2],0)+b|0;f=ta(h,p+f|0,t);p=F[l>>2];if(!k){e=F[o+(e<<2)>>2]}e=Mj(c,d,e,0)+b|0;ta(f,e+p|0,t);a=a+2|0;g=g+2|0;if((q|0)!=(g|0)){continue}break}}if(!(j&1)){break g}e=F[l>>2];if(!k){a=F[o+(a<<2)>>2]}a=Mj(c,d,a,0)+b|0;ta(h,a+e|0,t);break g}if(!d){a=0;i=1;while(1){if(!jc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break g}a=a+1|0;i=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break g}l=d&-4;g=d&3;b=0;n=d-1>>>0<3;i=1;d=0;while(1){if(!jc(c,G[c+84|0]?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break g}i=0;a=0;k=0;if(!n){while(1){e=b+f|0;D[e|0]=G[a+h|0];D[e+1|0]=G[(a|1)+h|0];D[e+2|0]=G[(a|2)+h|0];D[e+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;k=k+4|0;if((l|0)!=(k|0)){continue}break}}if(g){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;i=i+1|0;if((g|0)!=(i|0)){continue}break}}d=d+1|0;i=j>>>0>d>>>0;if((d|0)!=(j|0)){continue}break}a=d>>>0>=j>>>0;break f}a=i^1;if(!h){break e}}ra(h)}break b;case 2:a=0;m=ea-16|0;ea=m;g=D[c+24|0];d=g<<1;l=F[b+80>>2];h:{if((L(d,l)|0)!=(e|0)){break h}b=F[c+28>>2]!=3;n=G[c+84|0];if(!(b|!n)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break h}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break c}h=sa(d);F[m>>2]=h;ua(h,0,d)}i:{j:{if(!l){break j}if(!b){o=F[c>>2];e=F[c+48>>2];q=F[c+68>>2];j=F[c+44>>2];k=F[c+40>>2];p=k;if(g){v=g&-4;u=g&3;d=0;w=g-1>>>0<3;b=0;while(1){c=F[o>>2];a=Mj(k,j,n?b:F[q+(b<<2)>>2],0)+e|0;g=ta(h,c+a|0,p);i=0;a=0;c=0;if(!w){while(1){r=(d<<1)+f|0;s=a<<1;E[r>>1]=H[s+g>>1];E[r+2>>1]=H[g+(s|2)>>1];E[r+4>>1]=H[g+(s|4)>>1];E[r+6>>1]=H[g+(s|6)>>1];a=a+4|0;d=d+4|0;c=c+4|0;if((v|0)!=(c|0)){continue}break}}if(u){while(1){E[(d<<1)+f>>1]=H[g+(a<<1)>>1];a=a+1|0;d=d+1|0;i=i+1|0;if((u|0)!=(i|0)){continue}break}}a=1;b=b+1|0;if((l|0)!=(b|0)){continue}break}break i}if((l|0)!=1){d=l&-2;g=0;while(1){b=a|1;f=F[o>>2];c=Mj(k,j,n?a:F[q+(a<<2)>>2],0)+e|0;c=ta(h,f+c|0,p);f=F[o>>2];if(!n){b=F[q+(b<<2)>>2]}b=Mj(k,j,b,0)+e|0;ta(c,b+f|0,p);a=a+2|0;g=g+2|0;if((d|0)!=(g|0)){continue}break}}if(!(l&1)){break j}b=F[o>>2];if(!n){a=F[q+(a<<2)>>2]}a=Mj(k,j,a,0)+e|0;ta(h,a+b|0,p);break j}if(!g){i=1;while(1){if(!hc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break j}a=a+1|0;i=l>>>0>a>>>0;if((a|0)!=(l|0)){continue}break}break j}n=g&-4;k=g&3;d=0;o=g-1>>>0<3;i=1;b=0;while(1){if(!hc(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break j}g=0;a=0;i=0;if(!o){while(1){e=(d<<1)+f|0;j=a<<1;E[e>>1]=H[j+h>>1];E[e+2>>1]=H[(j|2)+h>>1];E[e+4>>1]=H[(j|4)+h>>1];E[e+6>>1]=H[(j|6)+h>>1];a=a+4|0;d=d+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(k){while(1){E[(d<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;d=d+1|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}b=b+1|0;i=l>>>0>b>>>0;if((b|0)!=(l|0)){continue}break}a=b>>>0>=l>>>0;break i}a=!i;if(!h){break h}}ra(h)}break b;case 4:a=0;m=ea-16|0;ea=m;g=D[c+24|0];d=g<<2;l=F[b+80>>2];k:{if((L(d,l)|0)!=(e|0)){break k}b=F[c+28>>2]!=5;n=G[c+84|0];if(!(b|!n)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break k}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break c}h=sa(d);F[m>>2]=h;ua(h,0,d)}l:{m:{if(!l){break m}if(!b){o=F[c>>2];e=F[c+48>>2];q=F[c+68>>2];j=F[c+44>>2];k=F[c+40>>2];p=k;if(g){v=g&-4;u=g&3;d=0;w=g-1>>>0<3;b=0;while(1){c=F[o>>2];a=Mj(k,j,n?b:F[q+(b<<2)>>2],0)+e|0;g=ta(h,c+a|0,p);i=0;a=0;c=0;if(!w){while(1){r=(d<<2)+f|0;s=a<<2;F[r>>2]=F[s+g>>2];F[r+4>>2]=F[g+(s|4)>>2];F[r+8>>2]=F[g+(s|8)>>2];F[r+12>>2]=F[g+(s|12)>>2];a=a+4|0;d=d+4|0;c=c+4|0;if((v|0)!=(c|0)){continue}break}}if(u){while(1){F[(d<<2)+f>>2]=F[g+(a<<2)>>2];a=a+1|0;d=d+1|0;i=i+1|0;if((u|0)!=(i|0)){continue}break}}a=1;b=b+1|0;if((l|0)!=(b|0)){continue}break}break l}if((l|0)!=1){d=l&-2;g=0;while(1){b=a|1;f=F[o>>2];c=Mj(k,j,n?a:F[q+(a<<2)>>2],0)+e|0;c=ta(h,f+c|0,p);f=F[o>>2];if(!n){b=F[q+(b<<2)>>2]}b=Mj(k,j,b,0)+e|0;ta(c,b+f|0,p);a=a+2|0;g=g+2|0;if((d|0)!=(g|0)){continue}break}}if(!(l&1)){break m}b=F[o>>2];if(!n){a=F[q+(a<<2)>>2]}a=Mj(k,j,a,0)+e|0;ta(h,a+b|0,p);break m}if(!g){i=1;while(1){if(!fc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break m}a=a+1|0;i=l>>>0>a>>>0;if((a|0)!=(l|0)){continue}break}break m}n=g&-4;k=g&3;d=0;o=g-1>>>0<3;i=1;b=0;while(1){if(!fc(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break m}g=0;a=0;i=0;if(!o){while(1){e=(d<<2)+f|0;j=a<<2;F[e>>2]=F[j+h>>2];F[e+4>>2]=F[(j|4)+h>>2];F[e+8>>2]=F[(j|8)+h>>2];F[e+12>>2]=F[(j|12)+h>>2];a=a+4|0;d=d+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(k){while(1){F[(d<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;d=d+1|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}b=b+1|0;i=l>>>0>b>>>0;if((b|0)!=(l|0)){continue}break}a=b>>>0>=l>>>0;break l}a=!i;if(!h){break k}}ra(h)}break b;case 1:a=0;m=ea-16|0;ea=m;j=F[b+80>>2];d=D[c+24|0];n:{if((L(j,d)|0)!=(e|0)){break n}a=F[c+28>>2]!=2;k=G[c+84|0];if(!(a|!k)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break n}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break c}h=sa(d);F[m>>2]=h;ua(h,0,d)}o:{p:{if(!j){break p}if(!a){if(d){n=d&-4;l=d&3;b=0;o=d-1>>>0<3;d=0;while(1){e=F[F[c>>2]>>2];t=F[c+40>>2];a=F[c+48>>2]+Mj(t,F[c+44>>2],G[c+84|0]?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;e=ta(h,e+a|0,t);k=0;a=0;g=0;if(!o){while(1){i=b+f|0;D[i|0]=G[a+e|0];D[i+1|0]=G[e+(a|1)|0];D[i+2|0]=G[e+(a|2)|0];D[i+3|0]=G[e+(a|3)|0];a=a+4|0;b=b+4|0;g=g+4|0;if((n|0)!=(g|0)){continue}break}}if(l){while(1){D[b+f|0]=G[a+e|0];a=a+1|0;b=b+1|0;k=k+1|0;if((l|0)!=(k|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break o}l=F[c>>2];b=F[c+48>>2];o=F[c+68>>2];d=F[c+44>>2];c=F[c+40>>2];t=c;a=0;if((j|0)!=1){q=j&-2;while(1){e=a|1;p=F[l>>2];f=Mj(c,d,k?a:F[o+(a<<2)>>2],0)+b|0;f=ta(h,p+f|0,t);p=F[l>>2];if(!k){e=F[o+(e<<2)>>2]}e=Mj(c,d,e,0)+b|0;ta(f,e+p|0,t);a=a+2|0;g=g+2|0;if((q|0)!=(g|0)){continue}break}}if(!(j&1)){break p}e=F[l>>2];if(!k){a=F[o+(a<<2)>>2]}a=Mj(c,d,a,0)+b|0;ta(h,a+e|0,t);break p}if(!d){a=0;i=1;while(1){if(!ic(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break p}a=a+1|0;i=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break p}l=d&-4;g=d&3;b=0;n=d-1>>>0<3;i=1;d=0;while(1){if(!ic(c,G[c+84|0]?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break p}i=0;a=0;k=0;if(!n){while(1){e=b+f|0;D[e|0]=G[a+h|0];D[e+1|0]=G[(a|1)+h|0];D[e+2|0]=G[(a|2)+h|0];D[e+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;k=k+4|0;if((l|0)!=(k|0)){continue}break}}if(g){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;i=i+1|0;if((g|0)!=(i|0)){continue}break}}d=d+1|0;i=j>>>0>d>>>0;if((d|0)!=(j|0)){continue}break}a=d>>>0>=j>>>0;break o}a=i^1;if(!h){break n}}ra(h)}break b;case 3:a=0;m=ea-16|0;ea=m;g=D[c+24|0];d=g<<1;l=F[b+80>>2];q:{if((L(d,l)|0)!=(e|0)){break q}b=F[c+28>>2]!=4;n=G[c+84|0];if(!(b|!n)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break q}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break c}h=sa(d);F[m>>2]=h;ua(h,0,d)}r:{s:{if(!l){break s}if(!b){o=F[c>>2];e=F[c+48>>2];q=F[c+68>>2];j=F[c+44>>2];k=F[c+40>>2];p=k;if(g){v=g&-4;u=g&3;d=0;w=g-1>>>0<3;b=0;while(1){c=F[o>>2];a=Mj(k,j,n?b:F[q+(b<<2)>>2],0)+e|0;g=ta(h,c+a|0,p);i=0;a=0;c=0;if(!w){while(1){r=(d<<1)+f|0;s=a<<1;E[r>>1]=H[s+g>>1];E[r+2>>1]=H[g+(s|2)>>1];E[r+4>>1]=H[g+(s|4)>>1];E[r+6>>1]=H[g+(s|6)>>1];a=a+4|0;d=d+4|0;c=c+4|0;if((v|0)!=(c|0)){continue}break}}if(u){while(1){E[(d<<1)+f>>1]=H[g+(a<<1)>>1];a=a+1|0;d=d+1|0;i=i+1|0;if((u|0)!=(i|0)){continue}break}}a=1;b=b+1|0;if((l|0)!=(b|0)){continue}break}break r}if((l|0)!=1){d=l&-2;g=0;while(1){b=a|1;f=F[o>>2];c=Mj(k,j,n?a:F[q+(a<<2)>>2],0)+e|0;c=ta(h,f+c|0,p);f=F[o>>2];if(!n){b=F[q+(b<<2)>>2]}b=Mj(k,j,b,0)+e|0;ta(c,b+f|0,p);a=a+2|0;g=g+2|0;if((d|0)!=(g|0)){continue}break}}if(!(l&1)){break s}b=F[o>>2];if(!n){a=F[q+(a<<2)>>2]}a=Mj(k,j,a,0)+e|0;ta(h,a+b|0,p);break s}if(!g){i=1;while(1){if(!gc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break s}a=a+1|0;i=l>>>0>a>>>0;if((a|0)!=(l|0)){continue}break}break s}n=g&-4;k=g&3;d=0;o=g-1>>>0<3;i=1;b=0;while(1){if(!gc(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break s}g=0;a=0;i=0;if(!o){while(1){e=(d<<1)+f|0;j=a<<1;E[e>>1]=H[j+h>>1];E[e+2>>1]=H[(j|2)+h>>1];E[e+4>>1]=H[(j|4)+h>>1];E[e+6>>1]=H[(j|6)+h>>1];a=a+4|0;d=d+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(k){while(1){E[(d<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;d=d+1|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}b=b+1|0;i=l>>>0>b>>>0;if((b|0)!=(l|0)){continue}break}a=b>>>0>=l>>>0;break r}a=!i;if(!h){break q}}ra(h)}break b;case 5:a=0;m=ea-16|0;ea=m;g=D[c+24|0];d=g<<2;l=F[b+80>>2];t:{if((L(d,l)|0)!=(e|0)){break t}b=F[c+28>>2]!=6;n=G[c+84|0];if(!(b|!n)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break t}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break c}h=sa(d);F[m>>2]=h;ua(h,0,d)}u:{v:{if(!l){break v}if(!b){o=F[c>>2];e=F[c+48>>2];q=F[c+68>>2];j=F[c+44>>2];k=F[c+40>>2];p=k;if(g){v=g&-4;u=g&3;d=0;w=g-1>>>0<3;b=0;while(1){c=F[o>>2];a=Mj(k,j,n?b:F[q+(b<<2)>>2],0)+e|0;g=ta(h,c+a|0,p);i=0;a=0;c=0;if(!w){while(1){r=(d<<2)+f|0;s=a<<2;F[r>>2]=F[s+g>>2];F[r+4>>2]=F[g+(s|4)>>2];F[r+8>>2]=F[g+(s|8)>>2];F[r+12>>2]=F[g+(s|12)>>2];a=a+4|0;d=d+4|0;c=c+4|0;if((v|0)!=(c|0)){continue}break}}if(u){while(1){F[(d<<2)+f>>2]=F[g+(a<<2)>>2];a=a+1|0;d=d+1|0;i=i+1|0;if((u|0)!=(i|0)){continue}break}}a=1;b=b+1|0;if((l|0)!=(b|0)){continue}break}break u}if((l|0)!=1){d=l&-2;g=0;while(1){b=a|1;f=F[o>>2];c=Mj(k,j,n?a:F[q+(a<<2)>>2],0)+e|0;c=ta(h,f+c|0,p);f=F[o>>2];if(!n){b=F[q+(b<<2)>>2]}b=Mj(k,j,b,0)+e|0;ta(c,b+f|0,p);a=a+2|0;g=g+2|0;if((d|0)!=(g|0)){continue}break}}if(!(l&1)){break v}b=F[o>>2];if(!n){a=F[q+(a<<2)>>2]}a=Mj(k,j,a,0)+e|0;ta(h,a+b|0,p);break v}if(!g){i=1;while(1){if(!ec(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break v}a=a+1|0;i=l>>>0>a>>>0;if((a|0)!=(l|0)){continue}break}break v}n=g&-4;k=g&3;d=0;o=g-1>>>0<3;i=1;b=0;while(1){if(!ec(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break v}g=0;a=0;i=0;if(!o){while(1){e=(d<<2)+f|0;j=a<<2;F[e>>2]=F[j+h>>2];F[e+4>>2]=F[(j|4)+h>>2];F[e+8>>2]=F[(j|8)+h>>2];F[e+12>>2]=F[(j|12)+h>>2];a=a+4|0;d=d+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(k){while(1){F[(d<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;d=d+1|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}b=b+1|0;i=l>>>0>b>>>0;if((b|0)!=(l|0)){continue}break}a=b>>>0>=l>>>0;break u}a=!i;if(!h){break t}}ra(h)}break b;case 8:break d;default:break a}}a=0;l=ea-16|0;ea=l;i=D[c+24|0];d=i<<2;g=F[b+80>>2];w:{if((L(d,g)|0)!=(e|0)){break w}e=F[c+28>>2];F[l+8>>2]=0;F[l>>2]=0;F[l+4>>2]=0;b=0;x:{y:{z:{A:{if(!i){break A}if((i|0)<0){break z}b=sa(d);F[l>>2]=b;j=(i<<2)+b|0;F[l+8>>2]=j;a=b;d=d-4|0;m=(d>>>2|0)+1&7;if(m){while(1){F[a>>2]=-1073741824;a=a+4|0;h=h+1|0;if((m|0)!=(h|0)){continue}break}}if(d>>>0<28){break A}while(1){F[a+24>>2]=-1073741824;F[a+28>>2]=-1073741824;F[a+16>>2]=-1073741824;F[a+20>>2]=-1073741824;F[a+8>>2]=-1073741824;F[a+12>>2]=-1073741824;F[a>>2]=-1073741824;F[a+4>>2]=-1073741824;a=a+32|0;if((j|0)!=(a|0)){continue}break}}if(!g){break y}if((e|0)==9){a=0;n=F[c>>2];d=F[c+48>>2];t=F[c+68>>2];q=G[c+84|0];e=F[c+44>>2];j=F[c+40>>2];p=j;if((i|0)<=0){if((g|0)!=1){i=g&-2;c=0;while(1){f=a|1;m=F[n>>2];h=Mj(j,e,q?a:F[t+(a<<2)>>2],0)+d|0;h=ta(b,m+h|0,p);m=F[n>>2];if(!q){f=F[t+(f<<2)>>2]}f=Mj(j,e,f,0)+d|0;ta(h,f+m|0,p);a=a+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!(g&1)){break y}c=F[n>>2];if(!q){a=F[t+(a<<2)>>2]}a=Mj(j,e,a,0)+d|0;ta(b,a+c|0,p);break y}v=i&-4;s=i&3;h=0;w=i-1>>>0<3;i=0;while(1){c=F[n>>2];a=Mj(j,e,q?i:F[t+(i<<2)>>2],0)+d|0;c=ta(b,c+a|0,p);m=0;a=0;u=0;if(!w){while(1){k=(h<<2)+f|0;r=a<<2;J[k>>2]=J[r+c>>2];J[k+4>>2]=J[c+(r|4)>>2];J[k+8>>2]=J[c+(r|8)>>2];J[k+12>>2]=J[c+(r|12)>>2];a=a+4|0;h=h+4|0;u=u+4|0;if((v|0)!=(u|0)){continue}break}}if(s){while(1){J[(h<<2)+f>>2]=J[c+(a<<2)>>2];a=a+1|0;h=h+1|0;m=m+1|0;if((s|0)!=(m|0)){continue}break}}a=1;i=i+1|0;if((g|0)!=(i|0)){continue}break}break x}k=1;if((i|0)<=0){a=0;while(1){if(!Ya(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],b)){break y}a=a+1|0;k=g>>>0>a>>>0;if((a|0)!=(g|0)){continue}break}break y}n=i&-4;j=i&3;h=0;o=i-1>>>0<3;i=0;while(1){if(!Ya(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],b)){break y}k=0;a=0;m=0;if(!o){while(1){d=(h<<2)+f|0;e=a<<2;J[d>>2]=J[e+b>>2];J[d+4>>2]=J[(e|4)+b>>2];J[d+8>>2]=J[(e|8)+b>>2];J[d+12>>2]=J[(e|12)+b>>2];a=a+4|0;h=h+4|0;m=m+4|0;if((n|0)!=(m|0)){continue}break}}if(j){while(1){J[(h<<2)+f>>2]=J[(a<<2)+b>>2];a=a+1|0;h=h+1|0;k=k+1|0;if((j|0)!=(k|0)){continue}break}}i=i+1|0;k=g>>>0>i>>>0;if((g|0)!=(i|0)){continue}break}a=g>>>0<=i>>>0;break x}va();V()}a=k^1;if(!b){break w}}ra(b)}ea=l+16|0;h=a&1;break a}va();V()}ea=m+16|0;h=a&1}return h|0}function zg(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,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,M=0;z=c;c=0;n=ea-96|0;ea=n;k=n+16|0;ua(k,0,76);F[n+92>>2]=-1;F[n+8>>2]=0;F[n>>2]=0;F[n+4>>2]=0;q=ea-16|0;ea=q;F[k+68>>2]=0;F[k+72>>2]=0;F[k>>2]=b;s=ea-16|0;ea=s;v=b;a=F[b+20>>2];a:{if((F[b+24>>2]-a|0)<=0){break a}a=F[a>>2];if((a|0)==-1){break a}c=F[F[v+8>>2]+(a<<2)>>2]}b:{c:{d:{if(!c){a=0;break d}a=F[v+100>>2];d=F[v+96>>2];F[s+8>>2]=0;F[s>>2]=0;F[s+4>>2]=0;e=a-d|0;b=(e|0)/12|0;e:{if((a|0)==(d|0)){break e}if(b>>>0>=357913942){break c}f=sa(e);F[s>>2]=f;F[s+8>>2]=f+L(b,12);a=0;g=f;e=e-12|0;f=(e-((e>>>0)%12|0)|0)+12|0;e=ua(g,0,f);F[s+4>>2]=e+f;if(G[c+84|0]){c=b>>>0>1?b:1;g=c&1;if(b>>>0>=2){i=c&-2;c=0;while(1){f=L(a,12);b=f+d|0;h=F[b+4>>2];o=F[b>>2];f=e+f|0;F[f+8>>2]=F[b+8>>2];F[f>>2]=o;F[f+4>>2]=h;f=L(a|1,12);b=f+d|0;h=F[b+4>>2];o=F[b>>2];f=e+f|0;F[f+8>>2]=F[b+8>>2];F[f>>2]=o;F[f+4>>2]=h;a=a+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!g){break e}b=L(a,12);a=b+d|0;c=F[a+4>>2];d=F[a>>2];b=b+e|0;F[b+8>>2]=F[a+8>>2];F[b>>2]=d;F[b+4>>2]=c;break e}g=b>>>0>1?b:1;a=F[c+68>>2];c=0;while(1){f=L(c,12);b=f+d|0;i=F[a+(F[b>>2]<<2)>>2];h=F[a+(F[b+4>>2]<<2)>>2];f=e+f|0;F[f+8>>2]=F[a+(F[b+8>>2]<<2)>>2];F[f+4>>2]=h;F[f>>2]=i;c=c+1|0;if((g|0)!=(c|0)){continue}break}}c=0;C=ea-16|0;ea=C;h=sa(88);$b(h);A=ea-16|0;ea=A;F[h+80>>2]=0;F[h+84>>2]=0;a=F[h+76>>2];F[h+76>>2]=0;if(a){ra(a)}F[h+68>>2]=0;F[h+72>>2]=0;b=h- -64|0;a=F[b>>2];F[b>>2]=0;if(a){ra(a)}d=F[s+4>>2];g=F[s>>2];b=(d-g|0)/12|0;a=L(b,3);f=F[h>>2];e=F[h+4>>2]-f>>2;f:{if(a>>>0>e>>>0){Aa(h,a-e|0);d=F[s+4>>2];g=F[s>>2];b=(d-g|0)/12|0;break f}if(a>>>0>=e>>>0){break f}F[h+4>>2]=f+(a<<2)}g:{if((d|0)==(g|0)){break g}d=b>>>0>1?b:1;f=d&1;a=F[h>>2];if(b>>>0>=2){i=d&-2;b=0;while(1){d=L(c,12);o=d+a|0;e=d+g|0;F[o>>2]=F[e>>2];F[a+(d|4)>>2]=F[e+4>>2];F[o+8>>2]=F[e+8>>2];e=L(c|1,12);d=e+a|0;e=e+g|0;F[d>>2]=F[e>>2];F[d+4>>2]=F[e+4>>2];F[d+8>>2]=F[e+8>>2];c=c+2|0;b=b+2|0;if((i|0)!=(b|0)){continue}break}}if(!f){break g}b=L(c,12);a=b+a|0;b=b+g|0;F[a>>2]=F[b>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=F[b+8>>2]}F[A+12>>2]=-1;a=0;e=0;d=0;i=ea-32|0;ea=i;h:{i:{w=A+12|0;j:{if(!w){break j}b=F[h+4>>2];o=F[h>>2];c=b-o|0;j=c>>2;g=F[h+12>>2];f=F[h+16>>2]-g>>2;k:{if(j>>>0>f>>>0){Ia(h+12|0,j-f|0,13652);b=F[h+4>>2];o=F[h>>2];c=b-o|0;j=c>>2;break k}if(f>>>0<=j>>>0){break k}F[h+16>>2]=g+(j<<2)}F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;f=(b|0)==(o|0);if(!f){if((c|0)<0){break i}e=sa(c);F[i+20>>2]=e;F[i+16>>2]=e;F[i+24>>2]=(j<<2)+e}l:{m:{n:{o:{p:{if(c){while(1){g=F[(a<<2)+o>>2];c=F[i+20>>2]-e>>2;q:{if(g>>>0<c>>>0){break q}F[i>>2]=0;f=g+1|0;if(f>>>0>c>>>0){Ia(i+16|0,f-c|0,i);o=F[h>>2];b=F[h+4>>2];e=F[i+16>>2];break q}if(c>>>0<=f>>>0){break q}F[i+20>>2]=(f<<2)+e}c=(g<<2)+e|0;F[c>>2]=F[c>>2]+1;a=a+1|0;c=b-o|0;j=c>>2;if(a>>>0<j>>>0){continue}break}break p}c=0;if(!f){break o}break n}if((b|0)==(o|0)){c=0;break n}if(c>>>0>=2147483645){break m}}c=sa(c<<1);ua(c,255,j<<3)}F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;b=F[i+20>>2];a=b-e|0;t=a>>2;r:{s:{if((b|0)==(e|0)){break s}if((a|0)<0){break r}m=sa(a);F[i>>2]=m;F[i+8>>2]=(t<<2)+m;b=ua(m,0,a);F[i+4>>2]=b+a;f=t>>>0>1?t:1;g=f&3;a=0;if(f-1>>>0>=3){r=f&-4;while(1){f=d<<2;F[f+b>>2]=a;x=f|4;a=F[e+f>>2]+a|0;F[x+b>>2]=a;u=f|8;a=a+F[e+x>>2]|0;F[u+b>>2]=a;f=f|12;a=a+F[e+u>>2]|0;F[f+b>>2]=a;a=a+F[e+f>>2]|0;d=d+4|0;p=p+4|0;if((r|0)!=(p|0)){continue}break}}if(!g){break s}while(1){f=d<<2;F[f+b>>2]=a;d=d+1|0;a=F[e+f>>2]+a|0;l=l+1|0;if((g|0)!=(l|0)){continue}break}}if(!j){break l}x=F[h+12>>2];f=0;while(1){E=f<<2;a=E+o|0;l=-1;g=f+1|0;b=(g>>>0)%3|0?g:f-2|0;if((b|0)!=-1){l=F[(b<<2)+o>>2]}b=F[a>>2];t:{u:{if(!((f>>>0)%3|0)){p=-1;a=f+2|0;if((a|0)!=-1){p=F[(a<<2)+o>>2]}if(!((b|0)==(l|0)|(b|0)==(p|0))&(l|0)!=(p|0)){break u}F[h+40>>2]=F[h+40>>2]+1;f=f+3|0;break t}p=F[a-4>>2]}a=p<<2;u=F[a+e>>2];v:{w:{if((u|0)<=0){break w}a=F[a+m>>2];d=0;while(1){r=(a<<3)+c|0;y=F[r>>2];if((y|0)==-1){break w}x:{if((l|0)!=(y|0)){break x}r=F[r+4>>2];if((r|0)!=-1){y=F[(r<<2)+o>>2]}else{y=-1}if((y|0)==(b|0)){break x}while(1){y:{b=a;d=d+1|0;if((u|0)<=(d|0)){break y}a=b+1|0;H=(a<<3)+c|0;y=F[H>>2];I=(b<<3)+c|0;F[I+4>>2]=F[H+4>>2];F[I>>2]=y;if((y|0)!=-1){continue}}break}F[(b<<3)+c>>2]=-1;if((r|0)==-1){break w}F[x+E>>2]=r;F[x+(r<<2)>>2]=f;break v}a=a+1|0;d=d+1|0;if((u|0)!=(d|0)){continue}break}}a=l<<2;l=F[a+e>>2];if((l|0)<=0){break v}a=F[a+m>>2];d=0;while(1){b=(a<<3)+c|0;if(F[b>>2]==-1){F[b>>2]=p;F[b+4>>2]=f;break v}a=a+1|0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}f=g}if(j>>>0>f>>>0){continue}break}break l}break i}va();V()}F[w>>2]=t;if(m){ra(m)}if(c){ra(c)}a=F[i+16>>2];if(!a){break j}F[i+20>>2]=a;ra(a)}ea=i+32|0;x=(w|0)!=0;if(x){l=ea-32|0;ea=l;m=F[h>>2];a=F[h+4>>2];F[l+24>>2]=0;F[l+16>>2]=0;F[l+20>>2]=0;z:{if((a|0)==(m|0)){break z}d=a-m|0;if((d|0)<0){break i}b=d>>2;e=b-1>>>5|0;f=e+1|0;c=sa(f<<2);F[l+24>>2]=f;F[l+16>>2]=c;F[l+20>>2]=b;F[c+((d>>>0<132?0:e)<<2)>>2]=0;d=c;c=b>>>5<<2;d=ua(d,0,c);if((b|0)==(b&-32)){break z}c=c+d|0;F[c>>2]=F[c>>2]&(-1>>>32-(b&31)^-1)}F[l+8>>2]=0;F[l>>2]=0;while(1){A:{r=0;o=0;if((a|0)==(m|0)){break A}while(1){b=F[l+16>>2];B:{if(F[b+(o>>>3&536870908)>>2]>>>o&1){break B}e=F[l>>2];F[l+4>>2]=e;c=F[h+12>>2];a=o;while(1){C:{d=a+1|0;i=a;a=(d>>>0)%3|0?d:a-2|0;if((a|0)==-1){break C}a=F[c+(a<<2)>>2];if((a|0)==-1){break C}d=a+1|0;a=(d>>>0)%3|0?d:a-2|0;if((o|0)==(a|0)|(a|0)==-1){break C}if(!(F[b+(a>>>3&536870908)>>2]>>>a&1)){continue}}break}d=i;D:{E:{F:{while(1){a=F[l+16>>2]+(d>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<<d;a=d+1|0;g=(a>>>0)%3|0?a:d-2|0;m=F[h>>2];u=(d>>>0)%3|0;b=(u?-1:2)+d|0;j=F[l>>2];G:{if((j|0)==(e|0)){break G}w=F[(g<<2)+m>>2];p=F[h+12>>2];a=j;if((b|0)!=-1){c=p+(b<<2)|0;while(1){H:{if((w|0)!=F[a>>2]){break H}f=F[a+4>>2];t=F[c>>2];if((f|0)==(t|0)){break H}e=-1;c=b;a=-1;if((f|0)==-1){break D}break E}a=a+8|0;if((e|0)!=(a|0)){continue}break}break G}while(1){if((w|0)==F[a>>2]){t=-1;c=-1;f=F[a+4>>2];if((f|0)!=-1){break E}}a=a+8|0;if((e|0)!=(a|0)){continue}break}}f=F[(b<<2)+m>>2];I:{if(F[l+8>>2]!=(e|0)){F[e>>2]=f;F[e+4>>2]=g;e=e+8|0;F[l+4>>2]=e;break I}b=e-j|0;e=b>>3;a=e+1|0;if(a>>>0>=536870912){break i}c=b>>2;c=b>>>0<2147483640?a>>>0<c>>>0?c:a:536870911;if(c){if(c>>>0>=536870912){break F}a=sa(c<<3)}else{a=0}e=a+(e<<3)|0;F[e>>2]=f;F[e+4>>2]=g;e=e+8|0;if((b|0)>0){ta(a,j,b)}F[l+8>>2]=a+(c<<3);F[l+4>>2]=e;F[l>>2]=a;if(!j){break I}ra(j)}J:{K:{if(u){a=d-1|0;break K}a=d+2|0;if((a|0)==-1){break J}}a=F[F[h+12>>2]+(a<<2)>>2];if((a|0)==-1){break J}d=a+((a>>>0)%3|0?-1:2)|0;if((i|0)==(d|0)){break J}if((d|0)!=-1){continue}}break}m=F[h>>2];break B}za();V()}b=c;e=f;a=F[p+(e<<2)>>2]}if((t|0)!=-1){F[p+(t<<2)>>2]=-1}if((a|0)!=-1){F[F[h+12>>2]+(a<<2)>>2]=-1}a=F[h+12>>2];F[a+(b<<2)>>2]=-1;F[a+(e<<2)>>2]=-1;r=1}o=o+1|0;a=F[h+4>>2];if(o>>>0<a-m>>2>>>0){continue}break}if(r){continue}}break}a=F[l>>2];if(a){ra(a)}a=F[l+16>>2];if(a){ra(a)}ea=l+32|0;c=0;f=0;l=0;i=ea-32|0;ea=i;a=F[A+12>>2];F[h+36>>2]=a;o=h+24|0;d=F[h+24>>2];b=F[h+28>>2]-d>>2;L:{M:{if(b>>>0<a>>>0){Ia(o,a-b|0,13652);F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;break M}if(a>>>0<b>>>0){F[h+28>>2]=d+(a<<2)}F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;if(!a){break L}}if((a|0)<0){break i}b=a-1>>>5|0;d=b+1|0;c=sa(d<<2);F[i+24>>2]=d;F[i+16>>2]=c;F[i+20>>2]=a;F[((a>>>0<33?0:b)<<2)+c>>2]=0;b=a>>>5<<2;d=ua(c,0,b);if((a&-32)==(a|0)){break L}b=b+d|0;F[b>>2]=F[b>>2]&(-1>>>32-(a&31)^-1)}j=F[h>>2];e=F[h+4>>2];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;d=e-j|0;N:{if((e|0)==(j|0)){break N}if((d|0)<0){break i}b=d>>2;g=b-1>>>5|0;m=g+1|0;f=sa(m<<2);F[i+8>>2]=m;F[i>>2]=f;F[i+4>>2]=b;F[((d>>>0<132?0:g)<<2)+f>>2]=0;g=b>>>5<<2;m=ua(f,0,g);if((b|0)==(b&-32)){break N}g=g+m|0;F[g>>2]=F[g>>2]&(-1>>>32-(b&31)^-1)}if(d>>>0>=12){O:{P:{while(1){p=L(l,3);d=(p<<2)+j|0;b=F[d>>2];g=-1;m=p+1|0;if((m|0)!=-1){g=F[(m<<2)+j>>2]}Q:{if((b|0)==(g|0)){break Q}m=b;b=F[d+8>>2];if((m|0)==(b|0)){break Q}m=0;if((b|0)==(g|0)){break Q}while(1){b=m+p|0;if(!(F[(b>>>3&536870908)+f>>2]>>>b&1)){d=F[(b<<2)+j>>2];g=1<<d;j=d>>>5|0;t=g&F[(j<<2)+c>>2];if(t){c=F[h+28>>2];R:{if((c|0)!=F[h+32>>2]){F[c>>2]=-1;F[h+28>>2]=c+4;break R}f=F[o>>2];e=c-f|0;j=e>>2;c=j+1|0;if(c>>>0>=1073741824){break i}g=e>>1;g=e>>>0<2147483644?c>>>0<g>>>0?g:c:1073741823;if(g){if(g>>>0>=1073741824){break P}c=sa(g<<2)}else{c=0}j=c+(j<<2)|0;F[j>>2]=-1;if((e|0)>0){ta(c,f,e)}F[h+32>>2]=c+(g<<2);F[h+28>>2]=j+4;F[h+24>>2]=c;if(!f){break R}ra(f)}c=F[h+52>>2];S:{if((c|0)!=F[h+56>>2]){F[c>>2]=d;F[h+52>>2]=c+4;break S}f=F[h+48>>2];e=c-f|0;j=e>>2;c=j+1|0;if(c>>>0>=1073741824){break i}g=e>>1;g=e>>>0<2147483644?c>>>0<g>>>0?g:c:1073741823;if(g){if(g>>>0>=1073741824){break P}c=sa(g<<2)}else{c=0}j=c+(j<<2)|0;F[j>>2]=d;if((e|0)>0){ta(c,f,e)}F[h+56>>2]=c+(g<<2);F[h+52>>2]=j+4;F[h+48>>2]=c;if(!f){break S}ra(f)}g=F[i+20>>2];c=F[i+24>>2];if((g|0)==c<<5){if((g+1|0)<0){break i}d=i+16|0;if(g>>>0<=1073741822){c=c<<6;e=g+32&-32;c=c>>>0>e>>>0?c:e}else{c=2147483647}fb(d,c);g=F[i+20>>2]}F[i+20>>2]=g+1;c=F[i+16>>2]+(g>>>3&536870908)|0;d=F[c>>2];K=c,M=Qj(g)&d,F[K>>2]=M;g=1<<a;j=a>>>5|0;d=a;a=a+1|0}e=a;c=F[i+16>>2];a=c+(j<<2)|0;F[a>>2]=F[a>>2]|g;w=F[h+24>>2]+(d<<2)|0;r=F[h+12>>2];j=F[h>>2];f=F[i>>2];a=b;T:{U:{V:{while(1){if((a|0)==-1){break V}g=(a>>>3&536870908)+f|0;F[g>>2]=F[g>>2]|1<<a;F[w>>2]=a;if(t){F[(a<<2)+j>>2]=d}u=a+1|0;a=(u>>>0)%3|0?u:a-2|0;g=-1;W:{if((a|0)==-1){break W}a=F[r+(a<<2)>>2];g=-1;if((a|0)==-1){break W}g=a+1|0;g=(g>>>0)%3|0?g:a-2|0}a=g;if((b|0)!=(a|0)){continue}break}if((b|0)!=-1){break T}a=1;break U}if((b>>>0)%3|0){a=b-1|0;break U}a=b+2|0;if((a|0)==-1){break T}}a=F[r+(a<<2)>>2];if((a|0)==-1){break T}X:{if((a>>>0)%3|0){a=a-1|0;break X}a=a+2|0;if((a|0)==-1){break T}}b=F[h+12>>2];j=F[h>>2];f=F[i>>2];while(1){g=(a>>>3&536870908)+f|0;F[g>>2]=F[g>>2]|1<<a;if(t){F[(a<<2)+j>>2]=d}Y:{if((a>>>0)%3|0){a=a-1|0;break Y}a=a+2|0;if((a|0)==-1){break T}}a=F[b+(a<<2)>>2];if((a|0)==-1){break T}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=e}m=m+1|0;if((m|0)!=3){continue}break}j=F[h>>2];e=F[h+4>>2]}l=l+1|0;if(l>>>0<(e-j>>2>>>0)/3>>>0){continue}break}break O}za();V()}c=F[i+16>>2]}a=0;F[h+44>>2]=0;b=F[i+20>>2];if(b){d=b&31;b=(b>>>3&536870908)+c|0;g=c;f=0;while(1){if(!(F[g>>2]>>>a&1)){f=f+1|0;F[h+44>>2]=f}e=(a|0)==31;a=e?0:a+1|0;g=(e<<2)+g|0;if((b|0)!=(g|0)|(a|0)!=(d|0)){continue}break}}a=F[i>>2];if(a){ra(a);c=F[i+16>>2]}if(c){ra(c)}ea=i+32|0}ea=A+16|0;if(!x){F[C+8>>2]=0;eb(h);h=0}ea=C+16|0;a=h;break h}va();V()}b=F[s>>2];if(!b){break d}F[s+4>>2]=b;ra(b)}ea=s+16|0;break b}va();V()}c=F[k+4>>2];b=a;F[k+4>>2]=a;if(c){eb(c);b=F[k+4>>2]}Z:{if(!b){break Z}a=F[v+100>>2];c=F[v+96>>2];D[q+12|0]=0;Qa(k+56|0,(a-c|0)/12|0,q+12|0);a=F[v+100>>2];c=F[v+96>>2];if((a|0)==(c|0)){break Z}while(1){if(!(F[F[k+56>>2]+(B>>>3&536870908)>>2]>>>B&1)){a=L(B,3);Ec(k,0,a);c=F[k+8>>2];d=F[k+12>>2];Ec(k,1,a+1|0);e=F[k+20>>2];f=F[k+24>>2];Ec(k,2,a+2|0);g=(c|0)==(d|0)?-1:0;a=f-e>>2;c=d-c>>2;d=a>>>0>c>>>0;c=F[k+36>>2]-F[k+32>>2]>>2>>>0>(d?a:c)>>>0?2:d?1:g;_:{if(F[k+68>>2]<=0){break _}F[q+12>>2]=F[k+76>>2];F[q+8>>2]=n;jb(q+8|0,q+12|0);a=F[((c<<2)+k|0)+44>>2];if((a|0)<0){a=-1}else{d=(a>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(d,12)|0)+(a-L(d,3)<<2)>>2]}F[q+12>>2]=a;F[q+8>>2]=n;jb(q+8|0,q+12|0);d=F[k+72>>2];F[k+72>>2]=d+2;if(!(d&1)){break _}F[q+12>>2]=a;F[q+8>>2]=n;jb(q+8|0,q+12|0);F[k+72>>2]=F[k+72>>2]+1}f=0;d=ea-16|0;ea=d;F[k+68>>2]=F[k+68>>2]+1;a=L(c,12)+k|0;a=F[a+12>>2]-F[a+8>>2]|0;if((a|0)>0){a=a>>>2|0;g=a>>>0>1?a:1;c=F[((c<<2)+k|0)+44>>2];while(1){a=c;e=(a>>>0)/3|0;i=(a|0)==-1;c=i?-1:e;h=F[k+56>>2]+(c>>>3&536870908)|0;F[h>>2]=F[h>>2]|1<<c;F[k+72>>2]=F[k+72>>2]+1;$:{aa:{ba:{ca:{da:{if(!f){F[d+12>>2]=(a|0)<0?-1:F[(F[F[k>>2]+96>>2]+L(e,12)|0)+((a>>>0)%3<<2)>>2];F[d+8>>2]=n;jb(d+8|0,d+12|0);if(i){break da}c=-1;e=a+1|0;e=(e>>>0)%3|0?e:a-2|0;if((e|0)>=0){i=(e>>>0)/3|0;e=F[(F[F[k>>2]+96>>2]+L(i,12)|0)+(e-L(i,3)<<2)>>2]}else{e=-1}F[d+12>>2]=e;F[d+8>>2]=n;jb(d+8|0,d+12|0);e=((a>>>0)%3|0?-1:2)+a|0;if((e|0)<0){break ca}c=(e>>>0)/3|0;c=F[(F[F[k>>2]+96>>2]+L(c,12)|0)+(e-L(c,3)<<2)>>2];break ca}c=(a|0)<0?-1:F[(F[F[k>>2]+96>>2]+L(e,12)|0)+((a>>>0)%3<<2)>>2];F[k+76>>2]=c;F[d+12>>2]=c;F[d+8>>2]=n;jb(d+8|0,d+12|0);if(f&1){c=-1;if((a|0)==-1){break $}if((L(e,3)|0)!=(a|0)){a=a-1|0;break aa}a=a+2|0;break ba}c=-1;if((a|0)==-1){break $}c=a+1|0;a=(c>>>0)%3|0?c:a-2|0;break ba}c=-1;F[d+12>>2]=-1;F[d+8>>2]=n;jb(d+8|0,d+12|0)}F[k+76>>2]=c;F[d+12>>2]=c;F[d+8>>2]=n;jb(d+8|0,d+12|0)}c=-1;if((a|0)==-1){break $}}c=F[F[F[k+4>>2]+12>>2]+(a<<2)>>2]}f=f+1|0;if((g|0)!=(f|0)){continue}break}}ea=d+16|0;c=F[v+96>>2];a=F[v+100>>2]}B=B+1|0;if(B>>>0<(a-c|0)/12>>>0){continue}break}}ea=q+16|0;ea:{if(b){a=F[z>>2];if(a){F[z+4>>2]=a;ra(a)}F[z>>2]=F[n>>2];F[z+4>>2]=F[n+4>>2];F[z+8>>2]=F[n+8>>2];J=F[n+84>>2];break ea}a=F[n>>2];if(!a){break ea}F[n+4>>2]=a;ra(a)}a=F[n+72>>2];if(a){ra(a)}a=F[n+48>>2];if(a){F[n+52>>2]=a;ra(a)}a=F[n+36>>2];if(a){F[n+40>>2]=a;ra(a)}a=F[n+24>>2];if(a){F[n+28>>2]=a;ra(a)}a=F[n+20>>2];F[n+20>>2]=0;if(a){eb(a)}ea=n+96|0;return J|0}function Id(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=ea-16|0;ea=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=F[4288];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){c=c+((b^-1)&1)|0;a=c<<3;b=a+17192|0;d=F[a+17200>>2];a=F[d+8>>2];l:{if((b|0)==(a|0)){m=17152,n=Qj(c)&e,F[m>>2]=n;break l}F[a+12>>2]=b;F[b+8>>2]=a}a=d+8|0;b=c<<3;F[d+4>>2]=b|3;b=b+d|0;F[b+4>>2]=F[b+4>>2]|1;break a}k=F[4290];if(k>>>0>=h>>>0){break k}if(b){a=2<<c;a=(0-a|a)&b<<c;b=(0-a&a)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;d=(c|a)+(b>>>a|0)|0;a=d<<3;b=a+17192|0;g=F[a+17200>>2];a=F[g+8>>2];m:{if((b|0)==(a|0)){e=Qj(d)&e;F[4288]=e;break m}F[a+12>>2]=b;F[b+8>>2]=a}F[g+4>>2]=h|3;c=g+h|0;a=d<<3;d=a-h|0;F[c+4>>2]=d|1;F[a+g>>2]=d;if(k){b=(k&-8)+17192|0;f=F[4293];a=1<<(k>>>3);n:{if(!(a&e)){F[4288]=a|e;a=b;break n}a=F[b+8>>2]}F[b+8>>2]=f;F[a+12>>2]=f;F[f+12>>2]=b;F[f+8>>2]=a}a=g+8|0;F[4293]=c;F[4290]=d;break a}j=F[4289];if(!j){break k}b=(0-j&j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=F[((c|a)+(b>>>a|0)<<2)+17456>>2];f=(F[c+4>>2]&-8)-h|0;b=c;while(1){o:{a=F[b+16>>2];if(!a){a=F[b+20>>2];if(!a){break o}}b=(F[a+4>>2]&-8)-h|0;d=b>>>0<f>>>0;f=d?b:f;c=d?a:c;b=a;continue}break}i=F[c+24>>2];d=F[c+12>>2];if((d|0)!=(c|0)){a=F[c+8>>2];F[a+12>>2]=d;F[d+8>>2]=a;break b}b=c+20|0;a=F[b>>2];if(!a){a=F[c+16>>2];if(!a){break j}b=c+16|0}while(1){g=b;d=a;b=a+20|0;a=F[b>>2];if(a){continue}b=d+16|0;a=F[d+16>>2];if(a){continue}break}F[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=F[4289];if(!j){break k}f=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<<g;c=a+520192>>>16&4;a=a<<c;b=a+245760>>>16&2;a=(a<<b>>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}b=F[(e<<2)+17456>>2];q:{r:{s:{if(!b){a=0;break s}a=0;c=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(F[b+4>>2]&-8)-h|0;if(g>>>0>=f>>>0){break t}d=b;f=g;if(f){break t}f=0;a=b;break r}g=F[b+20>>2];b=F[((c>>>29&4)+b|0)+16>>2];a=g?(g|0)==(b|0)?a:g:a;c=c<<1;if(b){continue}break}}if(!(a|d)){d=0;a=2<<e;a=(0-a|a)&j;if(!a){break k}b=(a&0-a)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=F[((c|a)+(b>>>a|0)<<2)+17456>>2]}if(!a){break q}}while(1){b=(F[a+4>>2]&-8)-h|0;c=b>>>0<f>>>0;f=c?b:f;d=c?a:d;b=F[a+16>>2];if(b){a=b}else{a=F[a+20>>2]}if(a){continue}break}}if(!d|F[4290]-h>>>0<=f>>>0){break k}e=F[d+24>>2];c=F[d+12>>2];if((d|0)!=(c|0)){a=F[d+8>>2];F[a+12>>2]=c;F[c+8>>2]=a;break c}b=d+20|0;a=F[b>>2];if(!a){a=F[d+16>>2];if(!a){break i}b=d+16|0}while(1){g=b;c=a;b=a+20|0;a=F[b>>2];if(a){continue}b=c+16|0;a=F[c+16>>2];if(a){continue}break}F[g>>2]=0;break c}c=F[4290];if(c>>>0>=h>>>0){d=F[4293];b=c-h|0;u:{if(b>>>0>=16){F[4290]=b;a=d+h|0;F[4293]=a;F[a+4>>2]=b|1;F[c+d>>2]=b;F[d+4>>2]=h|3;break u}F[4293]=0;F[4290]=0;F[d+4>>2]=c|3;a=c+d|0;F[a+4>>2]=F[a+4>>2]|1}a=d+8|0;break a}i=F[4291];if(i>>>0>h>>>0){b=i-h|0;F[4291]=b;c=F[4294];a=c+h|0;F[4294]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(F[4406]){c=F[4408]}else{F[4409]=-1;F[4410]=-1;F[4407]=4096;F[4408]=4096;F[4406]=l+12&-16^1431655768;F[4411]=0;F[4399]=0;c=4096}g=j+c|0;f=0-c|0;b=g&f;if(b>>>0<=h>>>0){break a}d=F[4398];if(d){c=F[4396];e=c+b|0;if(d>>>0<e>>>0|c>>>0>=e>>>0){break a}}if(G[17596]&4){break f}v:{w:{d=F[4294];if(d){a=17600;while(1){c=F[a>>2];if(c>>>0<=d>>>0&d>>>0<c+F[a+4>>2]>>>0){break w}a=F[a+8>>2];if(a){continue}break}}c=mb(0);if((c|0)==-1){break g}e=b;d=F[4407];a=d-1|0;if(a&c){e=(b-c|0)+(a+c&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=F[4398];if(d){a=F[4396];f=a+e|0;if(d>>>0<f>>>0|a>>>0>=f>>>0){break g}}a=mb(e);if((c|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}c=mb(e);if((c|0)==(F[a>>2]+F[a+4>>2]|0)){break h}a=c}if(!((a|0)==-1|h+48>>>0<=e>>>0)){c=F[4408];c=c+(j-e|0)&0-c;if(c>>>0>2147483646){c=a;break e}if((mb(c)|0)!=-1){e=c+e|0;c=a;break e}mb(0-e|0);break g}c=a;if((a|0)!=-1){break e}break g}d=0;break b}c=0;break c}if((c|0)!=-1){break e}}F[4399]=F[4399]|4}if(b>>>0>2147483646){break d}c=mb(b);a=mb(0);if((c|0)==-1|(a|0)==-1|a>>>0<=c>>>0){break d}e=a-c|0;if(e>>>0<=h+40>>>0){break d}}a=F[4396]+e|0;F[4396]=a;if(a>>>0>I[4397]){F[4397]=a}x:{y:{z:{g=F[4294];if(g){a=17600;while(1){d=F[a>>2];b=F[a+4>>2];if((d+b|0)==(c|0)){break z}a=F[a+8>>2];if(a){continue}break}break y}a=F[4292];if(!(a>>>0<=c>>>0?a:0)){F[4292]=c}a=0;F[4401]=e;F[4400]=c;F[4296]=-1;F[4297]=F[4406];F[4403]=0;while(1){d=a<<3;b=d+17192|0;F[d+17200>>2]=b;F[d+17204>>2]=b;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;F[4291]=b;a=a+c|0;F[4294]=a;F[a+4>>2]=b|1;F[(c+d|0)+4>>2]=40;F[4295]=F[4410];break x}if(G[a+12|0]&8|d>>>0>g>>>0|c>>>0<=g>>>0){break y}F[a+4>>2]=b+e;a=g+8&7?-8-g&7:0;c=a+g|0;F[4294]=c;b=F[4291]+e|0;a=b-a|0;F[4291]=a;F[c+4>>2]=a|1;F[(b+g|0)+4>>2]=40;F[4295]=F[4410];break x}if(I[4292]>c>>>0){F[4292]=c}b=c+e|0;a=17600;A:{B:{C:{D:{E:{F:{while(1){if((b|0)!=F[a>>2]){a=F[a+8>>2];if(a){continue}break F}break}if(!(G[a+12|0]&8)){break E}}a=17600;while(1){b=F[a>>2];if(b>>>0<=g>>>0){f=b+F[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=F[a+8>>2];continue}}F[a>>2]=c;F[a+4>>2]=F[a+4>>2]+e;j=(c+8&7?-8-c&7:0)+c|0;F[j+4>>2]=h|3;e=b+(b+8&7?-8-b&7:0)|0;i=h+j|0;a=e-i|0;if((e|0)==(g|0)){F[4294]=i;a=F[4291]+a|0;F[4291]=a;F[i+4>>2]=a|1;break B}if(F[4293]==(e|0)){F[4293]=i;a=F[4290]+a|0;F[4290]=a;F[i+4>>2]=a|1;F[a+i>>2]=a;break B}f=F[e+4>>2];if((f&3)==1){g=f&-8;G:{if(f>>>0<=255){d=F[e+8>>2];b=f>>>3|0;c=F[e+12>>2];if((c|0)==(d|0)){m=17152,n=F[4288]&Qj(b),F[m>>2]=n;break G}F[d+12>>2]=c;F[c+8>>2]=d;break G}h=F[e+24>>2];c=F[e+12>>2];H:{if((e|0)!=(c|0)){b=F[e+8>>2];F[b+12>>2]=c;F[c+8>>2]=b;break H}I:{f=e+20|0;b=F[f>>2];if(b){break I}f=e+16|0;b=F[f>>2];if(b){break I}c=0;break H}while(1){d=f;c=b;f=b+20|0;b=F[f>>2];if(b){continue}f=c+16|0;b=F[c+16>>2];if(b){continue}break}F[d>>2]=0}if(!h){break G}d=F[e+28>>2];b=(d<<2)+17456|0;J:{if(F[b>>2]==(e|0)){F[b>>2]=c;if(c){break J}m=17156,n=F[4289]&Qj(d),F[m>>2]=n;break G}F[h+(F[h+16>>2]==(e|0)?16:20)>>2]=c;if(!c){break G}}F[c+24>>2]=h;b=F[e+16>>2];if(b){F[c+16>>2]=b;F[b+24>>2]=c}b=F[e+20>>2];if(!b){break G}F[c+20>>2]=b;F[b+24>>2]=c}e=e+g|0;f=F[e+4>>2];a=a+g|0}F[e+4>>2]=f&-2;F[i+4>>2]=a|1;F[a+i>>2]=a;if(a>>>0<=255){b=(a&-8)+17192|0;c=F[4288];a=1<<(a>>>3);K:{if(!(c&a)){F[4288]=a|c;a=b;break K}a=F[b+8>>2]}F[b+8>>2]=i;F[a+12>>2]=i;F[i+12>>2]=b;F[i+8>>2]=a;break B}f=31;if(a>>>0<=16777215){b=a>>>8|0;f=b+1048320>>>16&8;b=b<<f;d=b+520192>>>16&4;b=b<<d;c=b+245760>>>16&2;b=(b<<c>>>15|0)-(c|(d|f))|0;f=(b<<1|a>>>b+21&1)+28|0}F[i+28>>2]=f;F[i+16>>2]=0;F[i+20>>2]=0;b=(f<<2)+17456|0;d=F[4289];c=1<<f;L:{if(!(d&c)){F[4289]=c|d;F[b>>2]=i;break L}f=a<<((f|0)==31?0:25-(f>>>1|0)|0);c=F[b>>2];while(1){b=c;if((F[b+4>>2]&-8)==(a|0)){break C}c=f>>>29|0;f=f<<1;d=(c&4)+b|0;c=F[d+16>>2];if(c){continue}break}F[d+16>>2]=i}F[i+24>>2]=b;F[i+12>>2]=i;F[i+8>>2]=i;break B}d=e-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;F[4291]=b;a=a+c|0;F[4294]=a;F[a+4>>2]=b|1;F[(c+d|0)+4>>2]=40;F[4295]=F[4410];a=(f+(f-39&7?39-f&7:0)|0)-47|0;d=a>>>0<g+16>>>0?g:a;F[d+4>>2]=27;a=F[4403];F[d+16>>2]=F[4402];F[d+20>>2]=a;a=F[4401];F[d+8>>2]=F[4400];F[d+12>>2]=a;F[4402]=d+8;F[4401]=e;F[4400]=c;F[4403]=0;a=d+24|0;while(1){F[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0<f>>>0){continue}break}if((d|0)==(g|0)){break x}F[d+4>>2]=F[d+4>>2]&-2;f=d-g|0;F[g+4>>2]=f|1;F[d>>2]=f;if(f>>>0<=255){b=(f&-8)+17192|0;c=F[4288];a=1<<(f>>>3);M:{if(!(c&a)){F[4288]=a|c;a=b;break M}a=F[b+8>>2]}F[b+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=b;F[g+8>>2]=a;break x}a=31;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<<d;c=a+520192>>>16&4;a=a<<c;b=a+245760>>>16&2;a=(a<<b>>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}F[g+28>>2]=a;F[g+16>>2]=0;F[g+20>>2]=0;b=(a<<2)+17456|0;d=F[4289];c=1<<a;N:{if(!(d&c)){F[4289]=c|d;F[b>>2]=g;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);d=F[b>>2];while(1){b=d;if((f|0)==(F[b+4>>2]&-8)){break A}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;d=F[c+16>>2];if(d){continue}break}F[c+16>>2]=g}F[g+24>>2]=b;F[g+12>>2]=g;F[g+8>>2]=g;break x}a=F[b+8>>2];F[a+12>>2]=i;F[b+8>>2]=i;F[i+24>>2]=0;F[i+12>>2]=b;F[i+8>>2]=a}a=j+8|0;break a}a=F[b+8>>2];F[a+12>>2]=g;F[b+8>>2]=g;F[g+24>>2]=0;F[g+12>>2]=b;F[g+8>>2]=a}a=F[4291];if(a>>>0<=h>>>0){break d}b=a-h|0;F[4291]=b;c=F[4294];a=c+h|0;F[4294]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}F[3984]=48;a=0;break a}O:{if(!e){break O}b=F[d+28>>2];a=(b<<2)+17456|0;P:{if(F[a>>2]==(d|0)){F[a>>2]=c;if(c){break P}j=Qj(b)&j;F[4289]=j;break O}F[e+(F[e+16>>2]==(d|0)?16:20)>>2]=c;if(!c){break O}}F[c+24>>2]=e;a=F[d+16>>2];if(a){F[c+16>>2]=a;F[a+24>>2]=c}a=F[d+20>>2];if(!a){break O}F[c+20>>2]=a;F[a+24>>2]=c}Q:{if(f>>>0<=15){a=f+h|0;F[d+4>>2]=a|3;a=a+d|0;F[a+4>>2]=F[a+4>>2]|1;break Q}F[d+4>>2]=h|3;e=d+h|0;F[e+4>>2]=f|1;F[e+f>>2]=f;if(f>>>0<=255){b=(f&-8)+17192|0;c=F[4288];a=1<<(f>>>3);R:{if(!(c&a)){F[4288]=a|c;a=b;break R}a=F[b+8>>2]}F[b+8>>2]=e;F[a+12>>2]=e;F[e+12>>2]=b;F[e+8>>2]=a;break Q}a=31;if(f>>>0<=16777215){a=f>>>8|0;g=a+1048320>>>16&8;a=a<<g;c=a+520192>>>16&4;a=a<<c;b=a+245760>>>16&2;a=(a<<b>>>15|0)-(b|(c|g))|0;a=(a<<1|f>>>a+21&1)+28|0}F[e+28>>2]=a;F[e+16>>2]=0;F[e+20>>2]=0;b=(a<<2)+17456|0;S:{c=1<<a;T:{if(!(c&j)){F[4289]=c|j;F[b>>2]=e;break T}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);h=F[b>>2];while(1){b=h;if((F[b+4>>2]&-8)==(f|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=F[c+16>>2];if(h){continue}break}F[c+16>>2]=e}F[e+24>>2]=b;F[e+12>>2]=e;F[e+8>>2]=e;break Q}a=F[b+8>>2];F[a+12>>2]=e;F[b+8>>2]=e;F[e+24>>2]=0;F[e+12>>2]=b;F[e+8>>2]=a}a=d+8|0;break a}U:{if(!i){break U}b=F[c+28>>2];a=(b<<2)+17456|0;V:{if(F[a>>2]==(c|0)){F[a>>2]=d;if(d){break V}m=17156,n=Qj(b)&j,F[m>>2]=n;break U}F[i+(F[i+16>>2]==(c|0)?16:20)>>2]=d;if(!d){break U}}F[d+24>>2]=i;a=F[c+16>>2];if(a){F[d+16>>2]=a;F[a+24>>2]=d}a=F[c+20>>2];if(!a){break U}F[d+20>>2]=a;F[a+24>>2]=d}W:{if(f>>>0<=15){a=f+h|0;F[c+4>>2]=a|3;a=a+c|0;F[a+4>>2]=F[a+4>>2]|1;break W}F[c+4>>2]=h|3;d=c+h|0;F[d+4>>2]=f|1;F[d+f>>2]=f;if(k){b=(k&-8)+17192|0;g=F[4293];a=1<<(k>>>3);X:{if(!(a&e)){F[4288]=a|e;a=b;break X}a=F[b+8>>2]}F[b+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=b;F[g+8>>2]=a}F[4293]=d;F[4290]=f}a=c+8|0}ea=l+16|0;return a|0}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;h=ea-48|0;ea=h;a:{b:{if((c|0)!=1){break b}g=F[a+4>>2];f=F[a+12>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;d=h+8|0;c:{if((b|0)==-2){break c}m=F[F[F[g+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[g>>2]+8>>2]](g)|0)==1){a=H[g+36>>1];l=(a<<8|a>>>8)&65535;a=0;i=ea-32|0;ea=i;j=F[F[F[g+4>>2]+8>>2]+(f<<2)>>2];d:{if((ga[F[F[g>>2]+8>>2]](g)|0)!=1|b-1>>>0>5){break d}e=ga[F[F[g>>2]+36>>2]](g)|0;k=ga[F[F[g>>2]+44>>2]](g,f)|0;if(!e|!k){break d}c=ga[F[F[g>>2]+40>>2]](g,f)|0;if(c){a=F[g+44>>2];F[i+12>>2]=c;F[i+8>>2]=a;F[i+20>>2]=k;F[i+16>>2]=k+12;f=i+8|0;a=0;e:{f:{switch(b-1|0){case 0:a=sa(60);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=2564;break e;case 1:a=sa(60);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=3328;break e;case 3:a=sa(112);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3564;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break e;case 2:a=sa(92);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3812;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break e;case 4:a=sa(104);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=4040;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break e;case 5:break f;default:break e}}a=sa(128);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;g:{c=F[d+28>>2];b=F[d+24>>2];if((c|0)!=(b|0)){c=c-b|0;if((c|0)<0){break a}b=sa(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[d+24>>2];e=F[d+28>>2]-c|0;if((e|0)>0){b=ta(b,c,e)+e|0}F[a+36>>2]=b}F[a>>2]=3216;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=4904;F[a>>2]=4276;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=4512;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break g}}break d}a=F[g+44>>2];F[i+12>>2]=e;F[i+8>>2]=a;F[i+20>>2]=k;F[i+16>>2]=k+12;f=i+8|0;a=0;h:{i:{switch(b-1|0){case 0:a=sa(60);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=4932;break h;case 1:a=sa(60);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=5356;break h;case 3:a=sa(112);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5580;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break h;case 2:a=sa(92);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5816;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break h;case 4:a=sa(104);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;b=F[d+28>>2];c=F[d+24>>2];if((b|0)!=(c|0)){e=b-c|0;if((e|0)<0){break a}b=sa(e);F[a+32>>2]=b;F[a+40>>2]=b+(e>>2<<2);n=a,o=ta(b,c,e)+e|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=6032;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break h;case 5:break i;default:break h}}a=sa(128);F[a+4>>2]=j;F[a>>2]=3272;b=F[d+4>>2];F[a+8>>2]=F[d>>2];F[a+12>>2]=b;b=F[d+12>>2];F[a+16>>2]=F[d+8>>2];F[a+20>>2]=b;b=F[d+20>>2];F[a+24>>2]=F[d+16>>2];F[a+28>>2]=b;F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;j:{c=F[d+28>>2];b=F[d+24>>2];if((c|0)!=(b|0)){c=c-b|0;if((c|0)<0){break a}b=sa(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[d+24>>2];e=F[d+28>>2]-c|0;if((e|0)>0){b=ta(b,c,e)+e|0}F[a+36>>2]=b}F[a>>2]=5300;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=6840;F[a>>2]=6256;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=6476;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break j}}}ea=i+32|0;e=a;if(a){break c}}e=sa(44);F[e+4>>2]=m;F[e>>2]=3272;a=F[d+4>>2];F[e+8>>2]=F[d>>2];F[e+12>>2]=a;a=F[d+12>>2];F[e+16>>2]=F[d+8>>2];F[e+20>>2]=a;a=F[d+20>>2];F[e+24>>2]=F[d+16>>2];F[e+28>>2]=a;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;a=F[d+28>>2];b=F[d+24>>2];if((a|0)!=(b|0)){c=a-b|0;if((c|0)<0){break a}a=sa(c);F[e+32>>2]=a;F[e+40>>2]=a+(c>>2<<2);n=e,o=ta(a,b,c)+c|0,F[n+36>>2]=o}F[e>>2]=6868;break c}a=F[h+32>>2];if(!a){break b}F[h+36>>2]=a;ra(a)}ea=h+48|0;return e|0}va();V()}function be(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0;m=ea-32|0;ea=m;o=sa(12);F[o+8>>2]=0;F[o+4>>2]=b;F[o>>2]=0;t=o+12|0;b=t;a:{b:{c:{d:{while(1){b=b-12|0;w=F[b+8>>2];j=F[b+4>>2];u=F[b>>2];if(u){q=0;if((w|0)>1e3){break a}F[m+24>>2]=0;F[m+16>>2]=0;F[m+20>>2]=0;f=1;c=F[a>>2];d=F[c+8>>2];h=F[c+12>>2];e=F[c+20>>2];g=d;d=F[c+16>>2];e:{if((h|0)<=(e|0)&g>>>0<=d>>>0|(e|0)>(h|0)){break e}h=G[d+F[c>>2]|0];d=d+1|0;e=d?e:e+1|0;F[c+16>>2]=d;F[c+20>>2]=e;Bc(m+16|0,h);if(h){d=F[a>>2];l=Cc(m+16|0);e=F[d+20>>2];i=F[d+16>>2];c=h;n=i+c|0;g=F[d+12>>2];e=c>>>0>n>>>0?e+1|0:e;if(n>>>0>I[d+8>>2]&(g|0)<=(e|0)|(e|0)>(g|0)){break e}ta(l,i+F[d>>2]|0,h);e=F[d+20>>2];f=c+F[d+16>>2]|0;e=f>>>0<c>>>0?e+1|0:e;F[d+16>>2]=f;F[d+20>>2]=e}j=sa(24);c=j;F[c+4>>2]=0;F[c+8>>2]=0;c=c+16|0;F[c>>2]=0;F[c+4>>2]=0;F[j>>2]=j+4;F[j+12>>2]=c;e=ea-32|0;ea=e;h=u+12|0;c=m+16|0;p=sb(h,c);k=u+16|0;f:{if((p|0)==(k|0)){F[e+16>>2]=c;g:{h:{d=F[h+4>>2];i:{if(!d){f=h+4|0;c=f;break i}f=G[c+11|0];g=f<<24>>24<0;n=g?F[c>>2]:c;g=g?F[c+4>>2]:f;while(1){c=d;d=G[c+27|0];f=d<<24>>24<0;d=f?F[c+20>>2]:d;l=d>>>0<g>>>0;j:{k:{l:{m:{i=l?d:g;n:{if(i){r=c+16|0;f=f?F[r>>2]:r;r=Ha(n,f,i);if(!r){if(d>>>0>g>>>0){break n}break m}if((r|0)>=0){break m}break n}if(d>>>0<=g>>>0){break l}}f=c;d=F[c>>2];if(d){continue}break i}d=Ha(f,n,i);if(d){break k}}if(l){break j}break h}if((d|0)>=0){break h}}d=F[c+4>>2];if(d){continue}break}f=c+4|0}d=sa(32);n=d+16|0;g=F[e+16>>2];o:{if(D[g+11|0]>=0){l=F[g+4>>2];F[n>>2]=F[g>>2];F[n+4>>2]=l;F[n+8>>2]=F[g+8>>2];break o}Ba(n,F[g>>2],F[g+4>>2])}F[d+8>>2]=c;F[d>>2]=0;F[d+4>>2]=0;F[d+28>>2]=0;F[f>>2]=d;c=d;g=F[F[h>>2]>>2];if(g){F[h>>2]=g;c=F[f>>2]}Tb(F[h+4>>2],c);F[h+8>>2]=F[h+8>>2]+1;c=1;break g}d=c;c=0}D[e+28|0]=c;F[e+24>>2]=d;d=F[e+24>>2];c=F[d+28>>2];F[d+28>>2]=j;if(!c){break f}Ta(c+12|0,F[c+16>>2]);Sa(c,F[c+4>>2]);ra(c);break f}if(!j){break f}Ta(j+12|0,F[j+16>>2]);Sa(j,F[j+4>>2]);ra(j)}ea=e+32|0;f=(k|0)!=(p|0)}if(D[m+27|0]<0){ra(F[m+16>>2])}if(f){break a}}q=0;if(!j){break a}F[m+16>>2]=0;if(!Db(1,m+16|0,F[a>>2])){break a}p=0;x=F[m+16>>2];if(x){while(1){c=0;i=ea-32|0;ea=i;F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;d=F[a>>2];f=F[d+8>>2];p:{q:{h=F[d+12>>2];e=F[d+20>>2];g=F[d+16>>2];r:{if((h|0)<=(e|0)&g>>>0>=f>>>0|(e|0)>(h|0)){break r}h=G[g+F[d>>2]|0];f=d;d=e;e=g+1|0;d=e?d:d+1|0;F[f+16>>2]=e;F[f+20>>2]=d;Bc(i+16|0,h);if(h){f=F[a>>2];l=Cc(i+16|0);e=F[f+20>>2];k=F[f+16>>2];d=h;n=k+d|0;g=F[f+12>>2];e=d>>>0>n>>>0?e+1|0:e;if(n>>>0>I[f+8>>2]&(g|0)<=(e|0)|(e|0)>(g|0)){break r}ta(l,k+F[f>>2]|0,h);e=F[f+20>>2];h=d+F[f+16>>2]|0;e=h>>>0<d>>>0?e+1|0:e;F[f+16>>2]=h;F[f+20>>2]=e}F[i+12>>2]=0;if(!Db(1,i+12|0,F[a>>2])){break r}d=F[i+12>>2];if(!d){break r}F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;if((d|0)<0){break q}c=sa(d);F[i>>2]=c;e=c+d|0;F[i+8>>2]=e;l=ua(c,0,d);F[i+4>>2]=e;e=F[a>>2];r=F[e+8>>2];h=F[e+12>>2];y=h;f=F[e+20>>2];k=F[e+16>>2];g=d+k|0;f=g>>>0<d>>>0?f+1|0:f;s:{z=g;n=f;if(g>>>0>r>>>0&(f|0)>=(h|0)|(f|0)>(h|0)){break s}ta(l,k+F[e>>2]|0,d);c=d;f=c+F[e+16>>2]|0;d=F[e+20>>2];F[e+16>>2]=f;F[e+20>>2]=c>>>0>f>>>0?d+1|0:d;h=ea-48|0;ea=h;e=sb(j,i+16|0);if((e|0)!=(j+4|0)){c=F[e+4>>2];t:{if(!c){c=e;while(1){d=F[c+8>>2];f=F[d>>2]!=(c|0);c=d;if(f){continue}break}break t}while(1){d=c;c=F[c>>2];if(c){continue}break}}if((e|0)==F[j>>2]){F[j>>2]=d}F[j+8>>2]=F[j+8>>2]-1;f=F[j+4>>2];u:{v:{g=e;d=e;e=F[d>>2];if(e){c=F[g+4>>2];if(!c){break v}while(1){d=c;c=F[c>>2];if(c){continue}break}}e=F[d+4>>2];if(e){break v}e=0;l=1;break u}F[e+8>>2]=F[d+8>>2];l=0}k=F[d+8>>2];c=F[k>>2];w:{if((d|0)==(c|0)){F[k>>2]=e;if((d|0)==(f|0)){c=0;f=e;break w}c=F[k+4>>2];break w}F[k+4>>2]=e}s=!G[d+12|0];if((d|0)!=(g|0)){k=F[g+8>>2];F[d+8>>2]=k;F[k+(((g|0)!=F[F[g+8>>2]>>2])<<2)>>2]=d;k=F[g>>2];F[d>>2]=k;F[k+8>>2]=d;k=F[g+4>>2];F[d+4>>2]=k;if(k){F[k+8>>2]=d}D[d+12|0]=G[g+12|0];f=(f|0)==(g|0)?d:f}x:{if(s|!f){break x}if(l){while(1){e=G[c+12|0];y:{d=F[c+8>>2];if(F[d>>2]!=(c|0)){if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[d+4>>2];l=F[e>>2];F[d+4>>2]=l;if(l){F[l+8>>2]=d}F[e+8>>2]=F[d+8>>2];l=F[d+8>>2];F[(((d|0)!=F[l>>2])<<2)+l>>2]=e;F[e>>2]=d;F[d+8>>2]=e;d=c;c=F[c>>2];f=(c|0)==(f|0)?d:f;c=F[c+4>>2]}z:{A:{d=F[c>>2];B:{if(!(G[d+12|0]?0:d)){e=F[c+4>>2];if(G[e+12|0]?0:e){break B}D[c+12|0]=0;c=F[c+8>>2];C:{if((f|0)==(c|0)){c=f;break C}if(G[c+12|0]){break y}}D[c+12|0]=1;break x}e=F[c+4>>2];if(!e){break A}}if(G[e+12|0]){break A}d=c;break z}D[d+12|0]=1;D[c+12|0]=0;e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c+4>>2];e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;break x}if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[c+4>>2];F[d>>2]=e;if(e){F[e+8>>2]=d}F[c+8>>2]=F[d+8>>2];e=F[d+8>>2];F[(((d|0)!=F[e>>2])<<2)+e>>2]=c;F[c+4>>2]=d;F[d+8>>2]=c;f=(d|0)==(f|0)?c:f;c=F[d>>2]}e=F[c>>2];D:{if(!(!e|G[e+12|0])){d=c;break D}d=F[c+4>>2];if(!(G[d+12|0]?0:d)){D[c+12|0]=0;c=F[c+8>>2];if((c|0)!=(f|0)?G[c+12|0]:0){break y}D[c+12|0]=1;break x}if(e){if(!G[e+12|0]){d=c;break D}d=F[c+4>>2]}D[d+12|0]=1;D[c+12|0]=0;e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c>>2];e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;break x}d=c;c=F[c+8>>2];c=F[(((d|0)==F[c>>2])<<2)+c>>2];continue}}D[e+12|0]=1}c=F[g+28>>2];if(c){F[g+32>>2]=c;ra(c)}if(D[g+27|0]<0){ra(F[g+16>>2])}ra(g)}F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;c=F[i+4>>2];d=F[i>>2];f=c-d|0;e=0;E:{F:{if((c|0)!=(d|0)){if((f|0)<0){break F}e=sa(f);c=ua(e,0,f);g=c+f|0;F[h+8>>2]=g;F[h+4>>2]=g;F[h>>2]=c;c=d}ta(e,c,f);G:{if(D[i+27|0]>=0){F[h+24>>2]=F[i+24>>2];c=F[i+20>>2];F[h+16>>2]=F[i+16>>2];F[h+20>>2]=c;break G}Ba(h+16|0,F[i+16>>2],F[i+20>>2])}$d(h+28|0,h);f=h+16|0;c=f;H:{I:{d=F[j+4>>2];J:{if(!d){e=j+4|0;c=e;break J}e=G[c+11|0];g=e<<24>>24<0;l=g?F[c>>2]:c;g=g?F[c+4>>2]:e;while(1){c=d;d=G[c+27|0];e=d<<24>>24<0;d=e?F[c+20>>2]:d;k=d>>>0<g>>>0;K:{L:{M:{N:{v=k?d:g;O:{if(v){s=c+16|0;e=e?F[s>>2]:s;s=Ha(l,e,v);if(!s){if(d>>>0>g>>>0){break O}break N}if((s|0)>=0){break N}break O}if(d>>>0<=g>>>0){break M}}e=c;d=F[c>>2];if(d){continue}break J}d=Ha(e,l,v);if(d){break L}}if(k){break K}break I}if((d|0)>=0){break I}}d=F[c+4>>2];if(d){continue}break}e=c+4|0}d=sa(40);F[d+24>>2]=F[f+8>>2];g=F[f+4>>2];F[d+16>>2]=F[f>>2];F[d+20>>2]=g;F[f>>2]=0;F[f+4>>2]=0;F[f+8>>2]=0;$d(d+28|0,f+12|0);F[d+8>>2]=c;F[d>>2]=0;F[d+4>>2]=0;F[e>>2]=d;c=d;f=F[F[j>>2]>>2];if(f){F[j>>2]=f;c=F[e>>2]}Tb(F[j+4>>2],c);F[j+8>>2]=F[j+8>>2]+1;c=1;break H}d=c;c=0}D[h+44|0]=c;F[h+40>>2]=d;c=F[h+28>>2];if(c){F[h+32>>2]=c;ra(c)}if(D[h+27|0]<0){ra(F[h+16>>2])}c=F[h>>2];if(c){F[h+4>>2]=c;ra(c)}ea=h+48|0;break E}va();V()}c=F[i>>2];if(c){break s}c=1;break r}F[i+4>>2]=c;ra(c);c=(n|0)<=(y|0)&r>>>0>=z>>>0|(n|0)<(y|0)}if(D[i+27|0]<0){ra(F[i+16>>2])}ea=i+32|0;break p}va();V()}if(!c){break a}p=p+1|0;if((x|0)!=(p|0)){continue}break}}F[m+12>>2]=0;if(!Db(1,m+12|0,F[a>>2])){break b}c=F[a>>2];d=F[c+8>>2];e=F[c+16>>2];f=d-e|0;q=F[m+12>>2];c=F[c+12>>2]-(F[c+20>>2]+(d>>>0<e>>>0)|0)|0;if(f>>>0<q>>>0&(c|0)<=0|(c|0)<0){break b}if(q){p=0;h=((u|0)!=0)+w|0;while(1){P:{if(b>>>0<t>>>0){F[b+8>>2]=h;F[b+4>>2]=0;F[b>>2]=j;b=b+12|0;q=F[m+12>>2];break P}e=b-o|0;c=(e|0)/12|0;b=c+1|0;if(b>>>0>=357913942){break d}d=(t-o|0)/12|0;f=d<<1;f=d>>>0<178956970?b>>>0<f>>>0?f:b:357913941;if(f){if(f>>>0>=357913942){break c}b=sa(L(f,12))}else{b=0}d=b+L(c,12)|0;F[d+8>>2]=h;F[d+4>>2]=0;F[d>>2]=j;c=d+L((e|0)/-12|0,12)|0;if((e|0)>0){ta(c,o,e)}t=b+L(f,12)|0;b=d+12|0;if(o){ra(o)}o=c}p=p+1|0;if(p>>>0<q>>>0){continue}break}}if((b|0)!=(o|0)){continue}break}q=1;break a}va();V()}za();V()}q=0}if(o){ra(o)}ea=m+32|0;return q}function se(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;i=ea-32|0;ea=i;F[b+32>>2]=d;F[b+40>>2]=c;F[b+4>>2]=e;nc(a,d,i+16|0);a:{if(F[a>>2]){break a}h=a+4|0;if(D[a+15|0]<0){ra(F[h>>2])}d=G[i+23|0];if((ga[F[F[b>>2]+8>>2]](b)|0)!=(d|0)){b=sa(64);c=G[1314]|G[1315]<<8;D[b+48|0]=c;D[b+49|0]=c>>>8;c=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[b+40|0]=d;D[b+41|0]=d>>>8;D[b+42|0]=d>>>16;D[b+43|0]=d>>>24;D[b+44|0]=c;D[b+45|0]=c>>>8;D[b+46|0]=c>>>16;D[b+47|0]=c>>>24;c=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[b+32|0]=d;D[b+33|0]=d>>>8;D[b+34|0]=d>>>16;D[b+35|0]=d>>>24;D[b+36|0]=c;D[b+37|0]=c>>>8;D[b+38|0]=c>>>16;D[b+39|0]=c>>>24;c=G[1294]|G[1295]<<8|(G[1296]<<16|G[1297]<<24);d=G[1290]|G[1291]<<8|(G[1292]<<16|G[1293]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1286]|G[1287]<<8|(G[1288]<<16|G[1289]<<24);d=G[1282]|G[1283]<<8|(G[1284]<<16|G[1285]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1278]|G[1279]<<8|(G[1280]<<16|G[1281]<<24);d=G[1274]|G[1275]<<8|(G[1276]<<16|G[1277]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1270]|G[1271]<<8|(G[1272]<<16|G[1273]<<24);d=G[1266]|G[1267]<<8|(G[1268]<<16|G[1269]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+50|0]=0;F[a>>2]=-1;Ba(h,b,50);ra(b);break a}c=G[i+21|0];D[b+36|0]=c;e=G[i+22|0];D[b+37|0]=e;if((c-3&255)>>>0<=253){b=sa(32);c=G[1427]|G[1428]<<8|(G[1429]<<16|G[1430]<<24);d=G[1423]|G[1424]<<8|(G[1425]<<16|G[1426]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1421]|G[1422]<<8|(G[1423]<<16|G[1424]<<24);d=G[1417]|G[1418]<<8|(G[1419]<<16|G[1420]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1413]|G[1414]<<8|(G[1415]<<16|G[1416]<<24);d=G[1409]|G[1410]<<8|(G[1411]<<16|G[1412]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;Ba(h,b,22);ra(b);break a}if(!((c|0)!=2|e>>>0<=(d?2:3)>>>0)){b=sa(32);c=G[1404]|G[1405]<<8|(G[1406]<<16|G[1407]<<24);d=G[1400]|G[1401]<<8|(G[1402]<<16|G[1403]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1398]|G[1399]<<8|(G[1400]<<16|G[1401]<<24);d=G[1394]|G[1395]<<8|(G[1396]<<16|G[1397]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1390]|G[1391]<<8|(G[1392]<<16|G[1393]<<24);d=G[1386]|G[1387]<<8|(G[1388]<<16|G[1389]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;Ba(h,b,22);ra(b);break a}c=e|c<<8;E[F[b+32>>2]+38>>1]=c;b:{if((c&65535)>>>0<259|E[i+26>>1]>=0){break b}j=ea-16|0;ea=j;e=sa(36);c=e;F[c+4>>2]=0;F[c+8>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;c=c+16|0;F[c>>2]=0;F[c+4>>2]=0;F[e>>2]=e+4;F[e+32>>2]=0;F[e+12>>2]=c;F[j>>2]=0;d=F[b+32>>2];k=ea-16|0;ea=k;c=0;c:{if(!e){break c}F[j>>2]=d;F[k+12>>2]=0;c=0;if(!Db(1,k+12|0,d)){break c}n=F[k+12>>2];if(n){while(1){d:{if(Db(1,k+8|0,F[j>>2])){c=sa(28);F[c+4>>2]=0;F[c+8>>2]=0;d=c+16|0;F[d>>2]=0;F[d+4>>2]=0;F[c>>2]=c+4;F[c+12>>2]=d;F[c+24>>2]=F[k+8>>2];if(be(j,c)){break d}Ta(c+12|0,F[c+16>>2]);Sa(c,F[c+4>>2]);ra(c)}c=0;break c}f=ea-16|0;ea=f;F[f+8>>2]=c;e:{if(!c){F[f+8>>2]=0;break e}d=F[e+28>>2];f:{if(d>>>0<I[e+32>>2]){F[f+8>>2]=0;F[d>>2]=c;F[e+28>>2]=d+4;break f}d=0;g:{h:{i:{g=F[e+24>>2];m=F[e+28>>2]-g>>2;c=m+1|0;if(c>>>0<1073741824){g=F[e+32>>2]-g|0;l=g>>1;c=g>>>0<2147483644?c>>>0<l>>>0?l:c:1073741823;if(c){if(c>>>0>=1073741824){break i}d=sa(c<<2)}l=F[f+8>>2];F[f+8>>2]=0;g=(m<<2)+d|0;F[g>>2]=l;m=(c<<2)+d|0;l=g+4|0;d=F[e+28>>2];c=F[e+24>>2];if((d|0)==(c|0)){break h}while(1){d=d-4|0;p=F[d>>2];F[d>>2]=0;g=g-4|0;F[g>>2]=p;if((c|0)!=(d|0)){continue}break}F[e+32>>2]=m;d=F[e+28>>2];F[e+28>>2]=l;c=F[e+24>>2];F[e+24>>2]=g;if((c|0)==(d|0)){break g}while(1){d=d-4|0;g=F[d>>2];F[d>>2]=0;if(g){Ta(g+12|0,F[g+16>>2]);Sa(g,F[g+4>>2]);ra(g)}if((c|0)!=(d|0)){continue}break}break g}va();V()}za();V()}F[e+32>>2]=m;F[e+28>>2]=l;F[e+24>>2]=g}if(c){ra(c)}}c=F[f+8>>2];F[f+8>>2]=0;if(!c){break e}Ta(c+12|0,F[c+16>>2]);Sa(c,F[c+4>>2]);ra(c)}ea=f+16|0;o=o+1|0;if((n|0)!=(o|0)){continue}break}}c=be(j,e)}ea=k+16|0;j:{if(c){d=F[b+4>>2];c=F[d+4>>2];F[d+4>>2]=e;if(c){Rc(c)}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;break j}c=sa(32);d=G[1579]|G[1580]<<8;D[c+24|0]=d;D[c+25|0]=d>>>8;d=G[1575]|G[1576]<<8|(G[1577]<<16|G[1578]<<24);f=G[1571]|G[1572]<<8|(G[1573]<<16|G[1574]<<24);D[c+16|0]=f;D[c+17|0]=f>>>8;D[c+18|0]=f>>>16;D[c+19|0]=f>>>24;D[c+20|0]=d;D[c+21|0]=d>>>8;D[c+22|0]=d>>>16;D[c+23|0]=d>>>24;d=G[1567]|G[1568]<<8|(G[1569]<<16|G[1570]<<24);f=G[1563]|G[1564]<<8|(G[1565]<<16|G[1566]<<24);D[c+8|0]=f;D[c+9|0]=f>>>8;D[c+10|0]=f>>>16;D[c+11|0]=f>>>24;D[c+12|0]=d;D[c+13|0]=d>>>8;D[c+14|0]=d>>>16;D[c+15|0]=d>>>24;d=G[1559]|G[1560]<<8|(G[1561]<<16|G[1562]<<24);f=G[1555]|G[1556]<<8|(G[1557]<<16|G[1558]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;D[c+26|0]=0;F[a>>2]=-1;Ba(a+4|0,c,26);ra(c);F[j+8>>2]=0;Rc(e)}ea=j+16|0;if(F[a>>2]){break a}if(D[h+11|0]>=0){break b}ra(F[h>>2])}if(!(ga[F[F[b>>2]+12>>2]](b)|0)){b=sa(48);D[b+32|0]=G[1384];c=G[1380]|G[1381]<<8|(G[1382]<<16|G[1383]<<24);d=G[1376]|G[1377]<<8|(G[1378]<<16|G[1379]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1372]|G[1373]<<8|(G[1374]<<16|G[1375]<<24);d=G[1368]|G[1369]<<8|(G[1370]<<16|G[1371]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1364]|G[1365]<<8|(G[1366]<<16|G[1367]<<24);d=G[1360]|G[1361]<<8|(G[1362]<<16|G[1363]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1356]|G[1357]<<8|(G[1358]<<16|G[1359]<<24);d=G[1352]|G[1353]<<8|(G[1354]<<16|G[1355]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+33|0]=0;F[a>>2]=-1;Ba(h,b,33);ra(b);break a}if(!(ga[F[F[b>>2]+20>>2]](b)|0)){b=mc(i,1582);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[b+4>>2];F[h>>2]=F[b>>2];F[h+4>>2]=a;F[h+8>>2]=F[b+8>>2];break a}Ba(h,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}ra(F[b>>2]);break a}if(!(ga[F[F[b>>2]+24>>2]](b)|0)){b=mc(i,1317);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[b+4>>2];F[h>>2]=F[b>>2];F[h+4>>2]=a;F[h+8>>2]=F[b+8>>2];break a}Ba(h,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}ra(F[b>>2]);break a}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ea=i+32|0}function yf(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=M(0),p=0,q=0,r=0;f=ea-720|0;ea=f;a:{b:{c:{d:{e:{f:{g:{h:{i:{if(H[b+38>>1]>=515){F[f+680>>2]=0;F[f+672>>2]=0;F[f+676>>2]=0;if((ga[F[F[a>>2]+24>>2]](a)|0)<=0){break d}while(1){c=ga[F[F[a>>2]+20>>2]](a,l)|0;d=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];if(F[d+28>>2]==9){e=F[f+672>>2];c=F[f+676>>2]-e>>2;g=D[d+24|0];j:{if(c>>>0<g>>>0){Aa(f+672|0,g-c|0);break j}if(c>>>0<=g>>>0){break j}F[f+676>>2]=e+(g<<2)}h=0;c=F[b+20>>2];j=F[b+16>>2];d=g<<2;i=j+d|0;e=F[b+12>>2];c=d>>>0>i>>>0?c+1|0:c;if(i>>>0>I[b+8>>2]&(e|0)<=(c|0)|(c|0)>(e|0)){break b}ta(F[f+672>>2],j+F[b>>2]|0,d);c=F[b+20>>2];e=d+F[b+16>>2]|0;c=e>>>0<d>>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;m=F[b+12>>2];j=m;i=e+4|0;d=i>>>0<4?c+1|0:c;n=F[b+8>>2];if(n>>>0<i>>>0&(d|0)>=(j|0)|(d|0)>(j|0)){break b}p=F[b>>2];j=p+e|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=d;if((d|0)>=(m|0)&i>>>0>=n>>>0|(d|0)>(m|0)){break b}d=G[i+p|0];e=e+5|0;c=e>>>0<5?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;if(d>>>0>31){break b}o=(z(2,j),A());F[f+20>>2]=-1;F[f+16>>2]=1832;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;c=f+16|0;e=F[f+672>>2];i=d-1|0;if(i>>>0<=29){F[c+4>>2]=d;Ca(c+8|0,e,e+(g<<2)|0);J[c+20>>2]=o}k:{if(i>>>0>=30){break k}if(!Uc(f+16|0,F[F[a+60>>2]+((F[a+40>>2]-F[a+36>>2]|0)/24<<2)>>2])){break k}c=F[a+40>>2];l:{if((c|0)!=F[a+44>>2]){F[c>>2]=1832;d=F[f+20>>2];F[c+16>>2]=0;F[c+8>>2]=0;F[c+12>>2]=0;F[c+4>>2]=d;d=F[f+28>>2];g=F[f+24>>2];if((d|0)!=(g|0)){g=d-g|0;if((g|0)<0){break i}d=sa(g);F[c+8>>2]=d;F[c+12>>2]=d;F[c+16>>2]=d+(g>>2<<2);e=F[f+24>>2];g=F[f+28>>2]-e|0;if((g|0)>0){d=ta(d,e,g)+g|0}F[c+12>>2]=d}J[c+20>>2]=J[f+36>>2];F[a+40>>2]=c+24;break l}c=0;m:{n:{o:{p:{g=F[a+40>>2];h=F[a+36>>2];e=(g-h|0)/24|0;d=e+1|0;if(d>>>0<178956971){i=(F[a+44>>2]-h|0)/24|0;j=i<<1;i=i>>>0<89478485?d>>>0<j>>>0?j:d:178956970;if(i){if(i>>>0>=178956971){break p}c=sa(L(i,24))}e=L(e,24)+c|0;F[e>>2]=1832;d=F[f+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+4>>2]=d;d=F[f+28>>2];j=F[f+24>>2];if((d|0)!=(j|0)){d=d-j|0;if((d|0)<0){break o}m=sa(d);F[e+8>>2]=m;F[e+16>>2]=(d>>2<<2)+m;q=e,r=ta(m,j,d)+d|0,F[q+12>>2]=r}c=L(i,24)+c|0;J[e+20>>2]=J[f+36>>2];d=e+24|0;if((g|0)==(h|0)){break n}while(1){e=e-24|0;F[e>>2]=1832;g=g-24|0;F[e+4>>2]=F[g+4>>2];F[e+8>>2]=F[g+8>>2];F[e+12>>2]=F[g+12>>2];F[e+16>>2]=F[g+16>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;J[e+20>>2]=J[g+20>>2];if((g|0)!=(h|0)){continue}break}F[a+44>>2]=c;h=F[a+40>>2];F[a+40>>2]=d;g=F[a+36>>2];F[a+36>>2]=e;if((g|0)==(h|0)){break m}while(1){h=h-24|0;ga[F[F[h>>2]>>2]](h)|0;if((g|0)!=(h|0)){continue}break}break m}va();V()}za();V()}va();V()}F[a+44>>2]=c;F[a+40>>2]=d;F[a+36>>2]=e}if(g){ra(g)}}h=1}F[f+16>>2]=1832;c=F[f+24>>2];if(c){F[f+28>>2]=c;ra(c)}if(!h){break c}}l=l+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(l|0)){continue}break}break d}i=ga[F[F[a>>2]+24>>2]](a)|0;F[f+712>>2]=0;F[f+704>>2]=0;F[f+708>>2]=0;if(i){if(i>>>0>=214748365){break h}c=L(i,20);d=sa(c);F[f+704>>2]=d;F[f+712>>2]=c+d;c=c-20|0;c=(c-((c>>>0)%20|0)|0)+20|0;q=f,r=ua(d,0,c)+c|0,F[q+708>>2]=r;while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;d=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];g=F[d+28>>2];c=g-1|0;if(c>>>0<=10){c=F[(c<<2)+13584>>2]}else{c=-1}j=(c|0)>0?c:0;if(j>>>0>4){break f}c=F[f+704>>2]+L(k,20)|0;l=D[d+24|0];F[c+16>>2]=l;F[c+12>>2]=j;F[c+8>>2]=g;F[c+4>>2]=e;F[c>>2]=d;e=e+l|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}c=ga[F[F[a>>2]+20>>2]](a,0)|0;m=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];D[m+84|0]=1;F[m+72>>2]=F[m+68>>2];g=F[b+12>>2];c=g;d=F[b+20>>2];j=F[b+8>>2];k=F[b+16>>2];if((c|0)<=(d|0)&j>>>0<=k>>>0|(c|0)<(d|0)){break f}n=F[b>>2];p=G[n+k|0];c=d;l=k+1|0;c=l?c:c+1|0;F[b+16>>2]=l;F[b+20>>2]=c;q:{switch(p|0){case 0:a=F[f+704>>2];if((F[f+708>>2]-a|0)!=20){break e}if(F[a+16>>2]!=3){break f}r:{if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break r}c=d;a=k+2|0;c=a>>>0<2?c+1|0:c;F[b+16>>2]=a;F[b+20>>2]=c;c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break r}a=a+n|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;rb(m,a);h=f+672|0;F[h+20>>2]=0;F[h+12>>2]=0;F[h+16>>2]=0;F[h>>2]=0;F[h+4>>2]=0;F[h+20>>2]=a;k=zc(f+16|0,f+704|0);g=0;e=ea-32|0;ea=e;F[e+24>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;a=F[b+12>>2];j=a;c=F[b+20>>2];d=c;l=F[b+16>>2];i=l+4|0;c=i>>>0<4?c+1|0:c;m=F[b+8>>2];s:{if(m>>>0<i>>>0&(a|0)<=(c|0)|(a|0)<(c|0)){break s}n=F[b>>2];a=n+l|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;t:{u:{switch(a-2|0){case 1:if((c|0)>=(j|0)&i>>>0>=m>>>0|(c|0)>(j|0)){break s}a=D[i+n|0];c=d;d=l+5|0;c=d>>>0<5?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;F[h+8>>2]=a;if((a|0)==1){if(Td(h,b,e+16|0)){break t}break s}Qd(1799,23,F[3443]);break s;default:Qd(1774,24,F[3443]);break s;case 0:break u}}if(!Td(h,b,e+16|0)){break s}}F[e+8>>2]=F[e+16>>2];F[e>>2]=F[e+20>>2];a=ea-32|0;ea=a;b=F[h>>2];o=J[h+4>>2];g=a+24|0;F[g>>2]=1065353216;b=-1<<b^-1;if((b|0)>0){J[g>>2]=o/M(b|0)}h=F[e+8>>2];if((h|0)!=F[e>>2]){c=F[k+28>>2];while(1){d=F[h>>2];i=F[h+4>>2];o=J[g>>2];J[a+16>>2]=o*M(F[h+8>>2]-b|0);J[a+12>>2]=o*M(i-b|0);J[a+8>>2]=o*M(d-b|0);i=F[k+16>>2];d=F[i>>2];if(!G[d+84|0]){c=F[F[d+68>>2]+(c<<2)>>2]}j=c;c=F[d+40>>2];ta(F[F[d>>2]>>2]+L(j,c)|0,(a+8|0)+(F[i+4>>2]<<2)|0,c);c=F[k+28>>2]+1|0;F[k+28>>2]=c;h=h+12|0;if((h|0)!=F[e>>2]){continue}break}}ea=a+32|0;g=1}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}ea=e+32|0;yc(k);h=1;if(g){break f}}h=0;break f;case 1:break q;default:break f}}if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break f}l=G[l+n|0];c=d;m=k+2|0;c=m>>>0<2?c+1|0:c;F[b+16>>2]=m;F[b+20>>2]=c;if(l>>>0>=7){F[f>>2]=l;Pd(1651,f);break f}c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;k=d;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break f}d=m+n|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=k;F[b+20>>2]=c;if(i){k=0;while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;c=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];rb(c,d);D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];k=k+1|0;if((i|0)!=(k|0)){continue}break}}a=zc(f+672|0,f+704|0);v:{w:{switch(l|0){case 1:c=zb(f+16|0,e);b=yd(c,b,a);Ab(c);if(!b){break g}break v;case 2:c=xb(f+16|0,e);b=xd(c,b,a);yb(c);if(!b){break g}break v;case 3:c=xb(f+16|0,e);b=wd(c,b,a);yb(c);if(!b){break g}break v;case 4:c=cb(f+16|0,e);b=vd(c,b,a);db(c);if(!b){break g}break v;case 5:c=cb(f+16|0,e);b=ud(c,b,a);db(c);if(!b){break g}break v;case 6:c=cb(f+16|0,e);b=td(c,b,a);db(c);if(b){break v}break g;case 0:break w;default:break g}}c=zb(f+16|0,e);b=zd(c,b,a);Ab(c);if(!b){break g}}yc(a);h=1;break f}va();V()}va();V()}yc(a)}a=F[f+704>>2]}if(!a){break a}F[f+708>>2]=a;ra(a);break a}h=1;if(F[a+52>>2]==F[a+48>>2]){break b}while(1){if(!sd(1,f+16|0,b)){break c}c=F[a+48>>2];d=F[f+16>>2];F[c+(k<<2)>>2]=d>>>1^0-(d&1);k=k+1|0;if(k>>>0<F[a+52>>2]-c>>2>>>0){continue}break}break b}h=0}a=F[f+672>>2];if(!a){break a}F[f+676>>2]=a;ra(a)}ea=f+720|0;return h|0}function zd(a,b,c){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;e=F[b+12>>2];f=F[b+20>>2];d=F[b+16>>2];k=d+4|0;f=k>>>0<4?f+1|0:f;a:{if((e|0)<=(f|0)&k>>>0>I[b+8>>2]|(e|0)<(f|0)){break a}f=d+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];e=f;k=F[b+16>>2];d=k+4|0;f=d>>>0<4?e+1|0:e;m=d;F[b+16>>2]=d;F[b+20>>2]=f;if(I[a>>2]>32){break a}d=F[b+12>>2];f=e;e=k+8|0;f=e>>>0<8?f+1|0:f;if(e>>>0>I[b+8>>2]&(f|0)>=(d|0)|(f|0)>(d|0)){break a}h=m+F[b>>2]|0;f=G[h|0]|G[h+1|0]<<8|(G[h+2|0]<<16|G[h+3|0]<<24);F[a+4>>2]=f;h=F[b+20>>2];e=F[b+16>>2]+4|0;h=e>>>0<4?h+1|0:h;F[b+16>>2]=e;F[b+20>>2]=h;if(!f){return 1}h=0;F[a+8>>2]=0;if(!xa(a+16|0,b)){break a}if(!xa(a+36|0,b)){break a}if(!xa(a+56|0,b)){break a}if(!xa(a+76|0,b)){break a}s=F[a+4>>2];e=ea-32|0;ea=e;f=a;d=F[f+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;g=sa(a);F[e+8>>2]=g;j=a+g|0;F[e+16>>2]=j;ua(g,0,a);F[e+12>>2]=j}a=F[f+120>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;j=F[e+12>>2];g=F[e+8>>2];d=F[f+12>>2]}F[a+4>>2]=j;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;i=sa(a);F[e+8>>2]=i;g=a+i|0;F[e+16>>2]=g;ua(i,0,a);F[e+12>>2]=g}a=F[f+132>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;i=F[e+8>>2];g=F[e+12>>2]}F[a+4>>2]=g;F[a>>2]=i;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=s;a=1;d=F[e+28>>2]+1|0;F[e+28>>2]=d;e:{if(!d){break e}while(1){a=F[e+12>>2];g=F[e+24>>2];i=d-1|0;b=g+i|0;h=(b>>>0)/341|0;b=F[a+(h<<2)>>2]+L(b-L(h,341)|0,12)|0;j=F[b+8>>2];h=F[b+4>>2];k=F[b>>2];F[e+28>>2]=i;b=F[e+16>>2];if((((a|0)==(b|0)?0:L(b-a>>2,341)-1|0)-(d+g|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}a=0;if(k>>>0>s>>>0){break e}b=F[f+12>>2];d=(b-1|0)==(h|0)?0:h+1|0;if(d>>>0>=b>>>0){break e}i=L(j,12);n=i+F[f+132>>2]|0;m=i+F[f+120>>2]|0;h=F[f>>2];l=d<<2;g=F[l+F[n>>2]>>2];f:{g:{if((h|0)==(g|0)){if(!k){break g}h=0;if(F[c+20>>2]==F[c+16>>2]){a=F[f+8>>2];F[c+28>>2]=k+F[c+28>>2];F[f+8>>2]=a+k;break g}while(1){i=0;d=F[c+16>>2];h:{if((d|0)==F[c+20>>2]){break h}while(1){l=L(i,20)+d|0;b=F[m>>2]+(F[l+4>>2]<<2)|0;n=F[l>>2];j=F[l+12>>2];a=b;i:{if(j>>>0>3){break i}d=0;g=F[c+12>>2];a=g;if(!F[l+16>>2]){break i}while(1){a=ta(g,b+(d<<2)|0,j);j=F[l+12>>2];g=a+j|0;d=d+1|0;if(d>>>0<I[l+16>>2]){continue}break}a=F[c+12>>2]}d=F[c+28>>2];d=G[n+84|0]?d:F[F[n+68>>2]+(d<<2)>>2];if(d>>>0>=I[n+80>>2]){break h}b=F[n+40>>2];ta(F[F[n>>2]>>2]+L(b,d)|0,a,b);i=i+1|0;d=F[c+16>>2];if(i>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;h=h+1|0;if((k|0)!=(h|0)){continue}break}break g}j:{k:{l:{m:{if(k>>>0<=2){a=F[f+108>>2];F[a>>2]=d;i=1;g=F[f+12>>2];if(g>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}b=F[f+120>>2];p=j+1|0;n=L(p,12);o=b+n|0;if((o|0)!=(m|0)){Ca(o,F[m>>2],F[m+4>>2]);b=F[f+120>>2]}b=l+F[b+n>>2]|0;F[b>>2]=F[b>>2]+(1<<h+(g^-1));b=O(k)^31;h=F[f+32>>2];m=32-h|0;n:{if((b|0)<=(m|0)){m=F[f+28>>2];if((m|0)==F[f+20>>2]){break l}g=F[m>>2];o=b+h|0;F[f+32>>2]=o;g=g<<h>>>32-b|0;if((o|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=m+4;break n}g=F[f+28>>2];o=g+4|0;if((o|0)==F[f+20>>2]){break l}r=F[g>>2];F[f+28>>2]=o;m=b-m|0;F[f+32>>2]=m;g=F[g+4>>2]>>>32-m|r<<h>>>32-b}h=k>>>1|0;if(h>>>0<g>>>0){break e}break k}while(1){d=(g-1|0)==(d|0)?0:d+1|0;F[a+(i<<2)>>2]=d;g=F[f+12>>2];i=i+1|0;if(g>>>0>i>>>0){continue}break}break j}h=k>>>1|0;g=0}o:{p:{b=h-g|0;a=k-b|0;q:{if((a|0)==(b|0)){a=b;break q}h=F[f+88>>2];if((h|0)==F[f+80>>2]){break p}g=F[h>>2];k=F[f+92>>2];m=k+1|0;F[f+92>>2]=m;g=g&-2147483648>>>k;r:{if((m|0)==32){F[f+92>>2]=0;F[f+88>>2]=h+4;if(g){break r}break p}if(!g){break p}}}h=a;a=b;break o}h=b}b=F[f+132>>2];g=b+i|0;i=F[g>>2];k=i+l|0;F[k>>2]=F[k>>2]+1;Ca(b+n|0,i,F[g+4>>2]);if(a){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+16>>2];i=F[e+12>>2];if((g|0)==(((b|0)==(i|0)?0:L(b-i>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+i>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=j;F[b+4>>2]=d;F[b>>2]=a;F[e+28>>2]=F[e+28>>2]+1}if(!h){break g}g=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];i=F[e+12>>2];if((g|0)==(((a|0)==(i|0)?0:L(a-i>>2,341)-1|0)|0)){ya(e+8|0);i=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}a=(g>>>0)/341|0;a=F[(a<<2)+i>>2]+L(g-L(a,341)|0,12)|0;F[a+8>>2]=p;F[a+4>>2]=d;F[a>>2]=h;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}p=0;if(!k){break g}while(1){if(F[f+12>>2]){o=F[m>>2];g=F[f+40>>2];r=F[n>>2];h=F[f+96>>2];u=F[f+108>>2];d=0;while(1){i=(d<<2)+u|0;F[h+(F[i>>2]<<2)>>2]=0;b=F[f>>2];a=F[i>>2]<<2;j=F[a+r>>2];s:{if((b|0)==(j|0)){break s}a=a+h|0;b=b-j|0;j=F[f+52>>2];q=32-j|0;if((b|0)<=(q|0)){l=F[f+48>>2];if((l|0)==(g|0)){F[a>>2]=0;break s}F[a>>2]=F[l>>2]<<j>>>32-b;a=b+F[f+52>>2]|0;F[f+52>>2]=a;if((a|0)!=32){break s}F[f+52>>2]=0;F[f+48>>2]=l+4;break s}l=F[f+48>>2];t=l+4|0;if((g|0)==(t|0)){F[a>>2]=0;break s}v=F[l>>2];F[f+48>>2]=t;q=b-q|0;F[f+52>>2]=q;F[a>>2]=F[l+4>>2]>>>32-q|v<<j>>>32-b}a=F[i>>2]<<2;b=a+h|0;F[b>>2]=F[b>>2]|F[a+o>>2];d=d+1|0;if(d>>>0<I[f+12>>2]){continue}break}}i=0;d=F[c+16>>2];t:{if((d|0)==F[c+20>>2]){break t}while(1){h=L(i,20)+d|0;b=F[f+96>>2]+(F[h+4>>2]<<2)|0;l=F[h>>2];j=F[h+12>>2];a=b;u:{if(j>>>0>3){break u}d=0;g=F[c+12>>2];a=g;if(!F[h+16>>2]){break u}while(1){a=ta(g,b+(d<<2)|0,j);j=F[h+12>>2];g=a+j|0;d=d+1|0;if(d>>>0<I[h+16>>2]){continue}break}a=F[c+12>>2]}d=F[c+28>>2];d=G[l+84|0]?d:F[F[l+68>>2]+(d<<2)>>2];if(d>>>0>=I[l+80>>2]){break t}b=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,d)|0,a,b);i=i+1|0;d=F[c+16>>2];if(i>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;p=p+1|0;if((k|0)!=(p|0)){continue}break}}d=F[e+28>>2]}if(d){continue}break}a=1}F[e+28>>2]=0;i=F[e+16>>2];d=F[e+12>>2];g=i-d|0;if(g>>>0>=9){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;i=F[e+16>>2];g=i-d|0;if(g>>>0>8){continue}break}}j=170;v:{switch((g>>>2|0)-1|0){case 1:j=341;case 0:F[e+24>>2]=j;break;default:break v}}w:{if((d|0)==(i|0)){break w}while(1){ra(F[d>>2]);d=d+4|0;if((i|0)!=(d|0)){continue}break}b=F[e+16>>2];c=F[e+12>>2];if((b|0)==(c|0)){break w}F[e+16>>2]=b+((c-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break b}va();V()}va();V()}h=a}return h}function yd(a,b,c){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;k=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];f=e+4|0;d=f>>>0<4?d+1|0:d;a:{if(f>>>0>I[b+8>>2]&(d|0)>=(k|0)|(d|0)>(k|0)){break a}d=e+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];k=d;f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;l=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[a>>2]>32){break a}e=F[b+12>>2];d=k;k=f+8|0;d=k>>>0<8?d+1|0:d;if(k>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break a}d=l+F[b>>2]|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=k;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!k){return 1}F[a+8>>2]=0;if(!xa(a+16|0,b)){break a}if(!xa(a+36|0,b)){break a}if(!xa(a+56|0,b)){break a}if(!xa(a+76|0,b)){break a}q=F[a+4>>2];e=ea-32|0;ea=e;d=a;f=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(f){if(f>>>0>=1073741824){break c}a=f<<2;g=sa(a);F[e+8>>2]=g;h=a+g|0;F[e+16>>2]=h;ua(g,0,a);F[e+12>>2]=h}a=F[d+120>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;f=F[d+12>>2];g=F[e+8>>2];h=F[e+12>>2]}F[a+4>>2]=h;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(f){if(f>>>0>=1073741824){break d}a=f<<2;i=sa(a);F[e+8>>2]=i;g=a+i|0;F[e+16>>2]=g;ua(i,0,a);F[e+12>>2]=g}a=F[d+132>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+12>>2];i=F[e+8>>2]}F[a+4>>2]=g;F[a>>2]=i;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;a=1;f=F[e+28>>2]+1|0;F[e+28>>2]=f;e:{if(!f){break e}while(1){a=F[e+12>>2];i=F[e+24>>2];g=f-1|0;b=i+g|0;h=(b>>>0)/341|0;b=F[a+(h<<2)>>2]+L(b-L(h,341)|0,12)|0;k=F[b+8>>2];h=F[b+4>>2];l=F[b>>2];F[e+28>>2]=g;b=F[e+16>>2];if((((a|0)==(b|0)?0:L(b-a>>2,341)-1|0)-(f+i|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(l>>>0>q>>>0){a=0;break e}a=0;b=F[d+12>>2];f=(h|0)==(b-1|0)?0:h+1|0;if(f>>>0>=b>>>0){break e}b=F[d+120>>2];i=L(k,12);n=b+i|0;h=F[d>>2];g=f<<2;p=i+F[d+132>>2]|0;j=F[g+F[p>>2]>>2];f:{g:{if((h|0)==(j|0)){if(!l){break g}b=0;if(F[c+20>>2]==F[c+16>>2]){a=F[d+8>>2];F[c+28>>2]=l+F[c+28>>2];F[d+8>>2]=a+l;break g}while(1){a=0;f=F[c+16>>2];h:{if((f|0)==F[c+20>>2]){break h}while(1){j=L(a,20)+f|0;i=F[n>>2]+(F[j+4>>2]<<2)|0;m=F[j>>2];h=F[j+12>>2];k=i;i:{if(h>>>0>3){break i}f=0;g=F[c+12>>2];k=g;if(!F[j+16>>2]){break i}while(1){k=ta(g,i+(f<<2)|0,h);h=F[j+12>>2];g=k+h|0;f=f+1|0;if(f>>>0<I[j+16>>2]){continue}break}k=F[c+12>>2]}f=F[c+28>>2];f=G[m+84|0]?f:F[F[m+68>>2]+(f<<2)>>2];if(f>>>0>=I[m+80>>2]){break h}h=F[m+40>>2];ta(F[F[m>>2]>>2]+L(h,f)|0,k,h);a=a+1|0;f=F[c+16>>2];if(a>>>0<(F[c+20>>2]-f|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[d+8>>2]=F[d+8>>2]+1;b=b+1|0;if((l|0)!=(b|0)){continue}break}break g}j:{k:{l:{m:{if(l>>>0<=2){a=F[d+108>>2];F[a>>2]=f;i=1;g=F[d+12>>2];if(g>>>0>1){break m}break j}if(I[d+8>>2]>I[d+4>>2]){break e}m=b;b=i+12|0;Ca(m+b|0,F[n>>2],F[n+4>>2]);b=g+F[b+F[d+120>>2]>>2]|0;F[b>>2]=F[b>>2]+(1<<h+(j^-1));b=O(l)^31;h=F[d+32>>2];m=32-h|0;n:{if((b|0)<=(m|0)){j=F[d+28>>2];if((j|0)==F[d+20>>2]){break l}m=F[j>>2];n=b+h|0;F[d+32>>2]=n;h=m<<h>>>32-b|0;if((n|0)!=32){break n}F[d+32>>2]=0;F[d+28>>2]=j+4;break n}j=F[d+28>>2];n=j+4|0;if((n|0)==F[d+20>>2]){break l}p=F[j>>2];F[d+28>>2]=n;m=b-m|0;F[d+32>>2]=m;h=F[j+4>>2]>>>32-m|p<<h>>>32-b}b=l>>>1|0;if(h>>>0>b>>>0){break e}break k}while(1){f=(g-1|0)==(f|0)?0:f+1|0;F[a+(i<<2)>>2]=f;g=F[d+12>>2];i=i+1|0;if(g>>>0>i>>>0){continue}break}break j}b=l>>>1|0;h=0}j=k+1|0;o:{p:{a=b-h|0;h=l-a|0;q:{if((h|0)==(a|0)){b=a;break q}b=F[d+88>>2];if((b|0)==F[d+80>>2]){break p}l=F[b>>2];m=F[d+92>>2];n=m+1|0;F[d+92>>2]=n;l=l&-2147483648>>>m;r:{if((n|0)==32){F[d+92>>2]=0;F[d+88>>2]=b+4;if(l){break r}break p}if(!l){break p}}b=h}h=a;break o}b=a}l=g;a=F[d+132>>2];i=a+i|0;g=F[i>>2];l=l+g|0;F[l>>2]=F[l>>2]+1;Ca(a+L(j,12)|0,g,F[i+4>>2]);if(h){g=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];i=F[e+12>>2];if((g|0)==(((a|0)==(i|0)?0:L(a-i>>2,341)-1|0)|0)){ya(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}a=(g>>>0)/341|0;a=F[i+(a<<2)>>2]+L(g-L(a,341)|0,12)|0;F[a+8>>2]=k;F[a+4>>2]=f;F[a>>2]=h;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}g=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];i=F[e+12>>2];if((g|0)==(((a|0)==(i|0)?0:L(a-i>>2,341)-1|0)|0)){ya(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}a=(g>>>0)/341|0;a=F[i+(a<<2)>>2]+L(g-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=f;F[a>>2]=b;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break f}m=0;if(!l){break g}while(1){if(F[d+12>>2]){s=F[n>>2];k=F[d+40>>2];t=F[p>>2];h=F[d+96>>2];u=F[d+108>>2];f=0;while(1){i=(f<<2)+u|0;F[h+(F[i>>2]<<2)>>2]=0;b=F[d>>2];a=F[i>>2]<<2;g=F[a+t>>2];s:{if((b|0)==(g|0)){break s}a=a+h|0;b=b-g|0;g=F[d+52>>2];o=32-g|0;if((b|0)<=(o|0)){j=F[d+48>>2];if((j|0)==(k|0)){F[a>>2]=0;break s}F[a>>2]=F[j>>2]<<g>>>32-b;a=b+F[d+52>>2]|0;F[d+52>>2]=a;if((a|0)!=32){break s}F[d+52>>2]=0;F[d+48>>2]=j+4;break s}j=F[d+48>>2];r=j+4|0;if((k|0)==(r|0)){F[a>>2]=0;break s}v=F[j>>2];F[d+48>>2]=r;o=b-o|0;F[d+52>>2]=o;F[a>>2]=F[j+4>>2]>>>32-o|v<<g>>>32-b}a=F[i>>2]<<2;b=a+h|0;F[b>>2]=F[b>>2]|F[a+s>>2];f=f+1|0;if(f>>>0<I[d+12>>2]){continue}break}}a=0;f=F[c+16>>2];t:{if((f|0)==F[c+20>>2]){break t}while(1){i=L(a,20)+f|0;k=F[d+96>>2]+(F[i+4>>2]<<2)|0;j=F[i>>2];h=F[i+12>>2];b=k;u:{if(h>>>0>3){break u}f=0;g=F[c+12>>2];b=g;if(!F[i+16>>2]){break u}while(1){b=ta(g,k+(f<<2)|0,h);h=F[i+12>>2];g=b+h|0;f=f+1|0;if(f>>>0<I[i+16>>2]){continue}break}b=F[c+12>>2]}f=F[c+28>>2];f=G[j+84|0]?f:F[F[j+68>>2]+(f<<2)>>2];if(f>>>0>=I[j+80>>2]){break t}h=F[j+40>>2];ta(F[F[j>>2]>>2]+L(h,f)|0,b,h);a=a+1|0;f=F[c+16>>2];if(a>>>0<(F[c+20>>2]-f|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[d+8>>2]=F[d+8>>2]+1;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=F[e+28>>2]}if(f){continue}break}a=1}F[e+28>>2]=0;i=F[e+16>>2];f=F[e+12>>2];g=i-f|0;if(g>>>0>=9){while(1){ra(F[f>>2]);f=F[e+12>>2]+4|0;F[e+12>>2]=f;i=F[e+16>>2];g=i-f|0;if(g>>>0>8){continue}break}}h=170;v:{switch((g>>>2|0)-1|0){case 1:h=341;case 0:F[e+24>>2]=h;break;default:break v}}w:{if((f|0)==(i|0)){break w}while(1){ra(F[f>>2]);f=f+4|0;if((i|0)!=(f|0)){continue}break}b=F[e+16>>2];c=F[e+12>>2];if((b|0)==(c|0)){break w}F[e+16>>2]=b+((c-b|0)+3&-4)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break b}va();V()}va();V()}h=a}return h}function og(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;o=ea-16|0;ea=o;F[o+12>>2]=b;b=sa(32);F[o>>2]=b;F[o+4>>2]=24;F[o+8>>2]=-2147483616;D[b+24|0]=0;d=G[1206]|G[1207]<<8|(G[1208]<<16|G[1209]<<24);c=G[1202]|G[1203]<<8|(G[1204]<<16|G[1205]<<24);D[b+16|0]=c;D[b+17|0]=c>>>8;D[b+18|0]=c>>>16;D[b+19|0]=c>>>24;D[b+20|0]=d;D[b+21|0]=d>>>8;D[b+22|0]=d>>>16;D[b+23|0]=d>>>24;d=G[1198]|G[1199]<<8|(G[1200]<<16|G[1201]<<24);c=G[1194]|G[1195]<<8|(G[1196]<<16|G[1197]<<24);D[b+8|0]=c;D[b+9|0]=c>>>8;D[b+10|0]=c>>>16;D[b+11|0]=c>>>24;D[b+12|0]=d;D[b+13|0]=d>>>8;D[b+14|0]=d>>>16;D[b+15|0]=d>>>24;d=G[1190]|G[1191]<<8|(G[1192]<<16|G[1193]<<24);c=G[1186]|G[1187]<<8|(G[1188]<<16|G[1189]<<24);D[b|0]=c;D[b+1|0]=c>>>8;D[b+2|0]=c>>>16;D[b+3|0]=c>>>24;D[b+4|0]=d;D[b+5|0]=d>>>8;D[b+6|0]=d>>>16;D[b+7|0]=d>>>24;k=ea-48|0;ea=k;m=a;f=a+16|0;d=F[f>>2];a:{b:{if(!d){break b}b=F[o+12>>2];a=f;while(1){c=(b|0)>F[d+16>>2];a=c?a:d;d=F[(c?d+4|0:d)>>2];if(d){continue}break}if((a|0)==(f|0)){break b}if((b|0)>=F[a+16>>2]){break a}}u=k+24|0;a=u;F[a+4>>2]=0;F[a+8>>2]=0;v=a+4|0;F[a>>2]=v;b=F[o+12>>2];p=k+16|0;a=p;F[a>>2]=0;F[a+4>>2]=0;F[k+8>>2]=b;F[k+12>>2]=a;s=k+8|4;d=F[u>>2];if((v|0)!=(d|0)){while(1){g=d+16|0;q=ea-16|0;ea=q;b=q+8|0;c:{d:{e:{f:{g:{h:{i:{c=p;e=s+4|0;j:{if((c|0)==(e|0)){break j}a=G[c+27|0];h=a<<24>>24<0;j=G[g+11|0];n=j<<24>>24;i=(n|0)<0;a=h?F[c+20>>2]:a;j=i?F[g+4>>2]:j;l=a>>>0<j>>>0;r=l?a:j;if(r){i=i?F[g>>2]:g;t=c+16|0;h=h?F[t>>2]:t;t=Ha(i,h,r);if(!t){if(a>>>0>j>>>0){break j}break i}if((t|0)>=0){break i}break j}if(a>>>0<=j>>>0){break h}}h=F[c>>2];k:{b=c;l:{if((b|0)==F[s>>2]){break l}m:{if(!h){a=c;while(1){b=F[a+8>>2];j=F[b>>2]==(a|0);a=b;if(j){continue}break}break m}a=h;while(1){b=a;a=F[a+4>>2];if(a){continue}break}}j=G[g+11|0];l=j<<24>>24;a=(l|0)<0;i=G[b+27|0];n=i<<24>>24<0;n:{j=a?F[g+4>>2]:j;i=n?F[b+20>>2]:i;r=j>>>0<i>>>0?j:i;if(r){t=b+16|0;a=Ha(n?F[t>>2]:t,a?F[g>>2]:g,r);if(a){break n}}if(j>>>0>i>>>0){break l}break k}if((a|0)>=0){break k}}if(!h){F[q+12>>2]=c;b=c;break c}F[q+12>>2]=b;b=b+4|0;break c}a=F[e>>2];if(!a){F[q+12>>2]=e;b=e;break c}h=(l|0)<0?F[g>>2]:g;c=e;while(1){b=a;n=G[a+27|0];e=n<<24>>24<0;a=e?F[a+20>>2]:n;n=a>>>0<j>>>0;o:{p:{q:{r:{i=n?a:j;s:{if(i){l=b+16|0;e=e?F[l>>2]:l;l=Ha(h,e,i);if(!l){if(a>>>0>j>>>0){break s}break r}if((l|0)>=0){break r}break s}if(a>>>0<=j>>>0){break q}}c=b;a=F[b>>2];if(a){continue}break e}a=Ha(e,h,i);if(a){break p}}if(n){break o}break e}if((a|0)>=0){break e}}c=b+4|0;a=F[b+4>>2];if(a){continue}break}break e}a=Ha(h,i,r);if(a){break g}}if(l){break f}break d}if((a|0)>=0){break d}}h=F[c+4>>2];t:{if(!h){a=c;while(1){b=F[a+8>>2];i=F[b>>2]!=(a|0);a=b;if(i){continue}break}break t}a=h;while(1){b=a;a=F[a>>2];if(a){continue}break}}u:{v:{if((b|0)==(e|0)){break v}i=G[b+27|0];a=i<<24>>24<0;w:{i=a?F[b+20>>2]:i;l=j>>>0>i>>>0?i:j;if(l){r=b+16|0;a=Ha((n|0)<0?F[g>>2]:g,a?F[r>>2]:r,l);if(a){break w}}if(j>>>0<i>>>0){break v}break u}if((a|0)>=0){break u}}if(!h){F[q+12>>2]=c;b=c+4|0;break c}F[q+12>>2]=b;break c}a=F[e>>2];if(!a){F[q+12>>2]=e;b=e;break c}h=(n|0)<0?F[g>>2]:g;c=e;while(1){b=a;n=G[a+27|0];e=n<<24>>24<0;a=e?F[a+20>>2]:n;n=a>>>0<j>>>0;x:{y:{z:{A:{i=n?a:j;B:{if(i){l=b+16|0;e=e?F[l>>2]:l;l=Ha(h,e,i);if(!l){if(a>>>0>j>>>0){break B}break A}if((l|0)>=0){break A}break B}if(a>>>0<=j>>>0){break z}}c=b;a=F[b>>2];if(a){continue}break e}a=Ha(e,h,i);if(a){break y}}if(n){break x}break e}if((a|0)>=0){break e}}c=b+4|0;a=F[b+4>>2];if(a){continue}break}}F[q+12>>2]=b;b=c;break c}F[q+12>>2]=c;F[b>>2]=c}c=F[b>>2];if(c){a=0}else{c=sa(40);a=c+16|0;C:{if(D[g+11|0]>=0){e=F[g+4>>2];F[a>>2]=F[g>>2];F[a+4>>2]=e;F[a+8>>2]=F[g+8>>2];break C}Ba(a,F[g>>2],F[g+4>>2])}a=c+28|0;D:{if(D[g+23|0]>=0){e=F[g+16>>2];F[a>>2]=F[g+12>>2];F[a+4>>2]=e;F[a+8>>2]=F[g+20>>2];break D}Ba(a,F[g+12>>2],F[g+16>>2])}F[c+8>>2]=F[q+12>>2];F[c>>2]=0;F[c+4>>2]=0;F[b>>2]=c;a=c;e=F[F[s>>2]>>2];if(e){F[s>>2]=e;a=F[b>>2]}Tb(F[s+4>>2],a);F[s+8>>2]=F[s+8>>2]+1;a=1}D[k+44|0]=a;F[k+40>>2]=c;ea=q+16|0;a=F[d+4>>2];E:{if(a){while(1){d=a;a=F[a>>2];if(a){continue}break E}}while(1){a=d;d=F[d+8>>2];if((a|0)!=F[d>>2]){continue}break}}if((d|0)!=(v|0)){continue}break}b=F[k+8>>2]}d=f;a=F[d>>2];F:{G:{if(!a){break G}while(1){d=a;a=F[a+16>>2];if((a|0)>(b|0)){f=d;a=F[d>>2];if(a){continue}break G}if((a|0)>=(b|0)){a=d;break F}a=F[d+4>>2];if(a){continue}break}f=d+4|0}a=sa(32);F[a+16>>2]=b;F[a+20>>2]=F[k+12>>2];b=a+24|0;c=F[k+16>>2];F[b>>2]=c;e=F[k+20>>2];F[a+28>>2]=e;H:{if(!e){F[a+20>>2]=b;break H}F[c+8>>2]=b;F[k+16>>2]=0;F[k+20>>2]=0;F[k+12>>2]=p}F[a+8>>2]=d;F[a>>2]=0;F[a+4>>2]=0;F[f>>2]=a;d=a;b=F[F[m+12>>2]>>2];if(b){F[m+12>>2]=b;d=F[f>>2]}Tb(F[m+16>>2],d);F[m+20>>2]=F[m+20>>2]+1}Lb(s,F[k+16>>2]);Lb(u,F[u+4>>2])}ea=k+48|0;e=ea-48|0;ea=e;f=ea-32|0;ea=f;d=f+21|0;h=f+32|0;c=h;I:{if((d|0)==(c|0)){break I}}b=c-d|0;J:{if((b|0)<=9){p=61;if((b|0)<(I[3712]<=1|0)){break J}}D[d|0]=49;c=d+1|0;p=0}F[f+12>>2]=p;F[f+8>>2]=c;p=ea-16|0;ea=p;b=e+8|0;m=ea-16|0;ea=m;K:{g=F[f+8>>2];f=g-d|0;if(f>>>0<=4294967279){L:{if(f>>>0<11){D[b+11|0]=f;c=b;break L}if(f>>>0>=11){k=f+16&-16;c=k-1|0;c=(c|0)==11?k:c}else{c=10}k=c+1|0;c=sa(k);F[b>>2]=c;F[b+8>>2]=k|-2147483648;F[b+4>>2]=f}while(1){if((d|0)!=(g|0)){D[c|0]=G[d|0];c=c+1|0;d=d+1|0;continue}break}D[m+15|0]=0;D[c|0]=G[m+15|0];ea=m+16|0;break K}Pa();V()}ea=p+16|0;ea=h;F[e+32>>2]=o;M:{N:{c=a+20|0;a=F[c+4>>2];O:{if(!a){b=c+4|0;d=b;break O}b=G[o+11|0];d=b<<24>>24<0;m=d?F[o>>2]:o;f=d?F[o+4>>2]:b;while(1){d=a;h=G[a+27|0];b=h<<24>>24<0;a=b?F[a+20>>2]:h;h=a>>>0<f>>>0;P:{Q:{R:{S:{p=h?a:f;T:{if(p){g=d+16|0;b=b?F[g>>2]:g;g=Ha(m,b,p);if(!g){if(a>>>0>f>>>0){break T}break S}if((g|0)>=0){break S}break T}if(a>>>0<=f>>>0){break R}}b=d;a=F[b>>2];if(a){continue}break O}a=Ha(b,m,p);if(a){break Q}}if(h){break P}break N}if((a|0)>=0){break N}}a=F[d+4>>2];if(a){continue}break}b=d+4|0}a=sa(40);m=a+16|0;f=F[e+32>>2];U:{if(D[f+11|0]>=0){h=F[f+4>>2];F[m>>2]=F[f>>2];F[m+4>>2]=h;F[m+8>>2]=F[f+8>>2];break U}Ba(m,F[f>>2],F[f+4>>2])}F[a+8>>2]=d;F[a>>2]=0;F[a+4>>2]=0;F[a+36>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;F[b>>2]=a;d=a;f=F[F[c>>2]>>2];if(f){F[c>>2]=f;d=F[b>>2]}Tb(F[c+4>>2],d);F[c+8>>2]=F[c+8>>2]+1;b=1;break M}a=d;b=0}D[e+44|0]=b;F[e+40>>2]=a;a=F[e+40>>2];if(D[a+39|0]<0){ra(F[a+28>>2])}b=F[e+12>>2];F[a+28>>2]=F[e+8>>2];F[a+32>>2]=b;F[a+36>>2]=F[e+16>>2];ea=e+48|0;if(D[o+11|0]<0){ra(F[o>>2])}ea=o+16|0}function vd(a,b,c){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;h=F[b+12>>2];f=F[b+20>>2];j=F[b+16>>2];e=j+4|0;f=e>>>0<4?f+1|0:f;a:{if(e>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=j+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;e=F[b+16>>2];j=e+4|0;f=j>>>0<4?f+1|0:f;m=j;F[b+16>>2]=j;F[b+20>>2]=f;if(I[a>>2]>32){break a}j=F[b+12>>2];f=h;h=e+8|0;f=h>>>0<8?f+1|0:f;if(h>>>0>I[b+8>>2]&(f|0)>=(j|0)|(f|0)>(j|0)){break a}d=m+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!vb(a+16|0,b)){break a}if(!xa(a+544|0,b)){break a}if(!xa(a+564|0,b)){break a}if(!xa(a+584|0,b)){break a}q=F[a+4>>2];b=0;e=ea-32|0;ea=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;g=sa(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;ua(g,0,a);F[e+12>>2]=b}a=F[f+628>>2];h=F[a>>2];if(h){F[a+4>>2]=h;ra(h);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;i=sa(a);F[e+8>>2]=i;g=a+i|0;F[e+16>>2]=g;ua(i,0,a);F[e+12>>2]=g}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;i=F[e+8>>2];g=F[e+12>>2]}F[a+4>>2]=g;F[a>>2]=i;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;d=F[e+28>>2]+1|0;F[e+28>>2]=d;e:{if(!d){break e}s=f+16|0;while(1){a=F[e+12>>2];g=F[e+24>>2];i=d-1|0;b=g+i|0;h=(b>>>0)/341|0;b=F[a+(h<<2)>>2]+L(b-L(h,341)|0,12)|0;h=F[b+8>>2];j=F[b+4>>2];m=F[b>>2];F[e+28>>2]=i;b=F[e+16>>2];if((((a|0)==(b|0)?0:L(b-a>>2,341)-1|0)-(d+g|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(m>>>0>q>>>0){break e}a=F[f+12>>2];i=(j|0)==(a-1|0)?0:j+1|0;if(i>>>0>=a>>>0){break e}j=L(h,12);o=j+F[f+640>>2]|0;n=j+F[f+628>>2]|0;d=F[f>>2];k=i<<2;g=F[k+F[o>>2]>>2];f:{g:{if((d|0)==(g|0)){k=0;if(!m){break g}while(1){a=0;d=F[c+16>>2];h:{if((d|0)==F[c+20>>2]){break h}while(1){i=L(a,20)+d|0;j=F[n>>2]+(F[i+4>>2]<<2)|0;l=F[i>>2];b=F[i+12>>2];h=j;i:{if(b>>>0>3){break i}d=0;g=F[c+12>>2];h=g;if(!F[i+16>>2]){break i}while(1){h=ta(g,j+(d<<2)|0,b);b=F[i+12>>2];g=h+b|0;d=d+1|0;if(d>>>0<I[i+16>>2]){continue}break}h=F[c+12>>2]}d=F[c+28>>2];d=G[l+84|0]?d:F[F[l+68>>2]+(d<<2)>>2];if(d>>>0>=I[l+80>>2]){break h}b=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,d)|0,h,b);a=a+1|0;d=F[c+16>>2];if(a>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;k=k+1|0;if((m|0)!=(k|0)){continue}break}break g}j:{k:{l:{if(m>>>0<=2){a=F[f+616>>2];F[a>>2]=i;d=1;g=F[f+12>>2];if(g>>>0>1){break l}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];o=h+1|0;l=L(o,12);b=a+l|0;if((b|0)!=(n|0)){Ca(b,F[n>>2],F[n+4>>2]);a=F[f+628>>2]}a=k+F[a+l>>2]|0;F[a>>2]=F[a>>2]+(1<<d+(g^-1));g=0;d=0;a=O(m)^31;if(!a){d=m>>>1|0;break k}while(1){g=Da((d<<4)+s|0)|g<<1;d=d+1|0;if((a|0)!=(d|0)){continue}break}d=m>>>1|0;if(g>>>0<=d>>>0){break k}b=0;break e}while(1){i=(g-1|0)==(i|0)?0:i+1|0;F[a+(d<<2)>>2]=i;d=d+1|0;g=F[f+12>>2];if(d>>>0<g>>>0){continue}break}break j}m:{n:{a=d-g|0;d=m-a|0;o:{if((d|0)==(a|0)){b=a;break o}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break n}g=F[b>>2];m=F[f+600>>2];n=m+1|0;F[f+600>>2]=n;g=g&-2147483648>>>m;p:{if((n|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(g){break p}break n}if(!g){break n}}b=d}d=a;break m}b=a}a=F[f+640>>2];j=a+j|0;g=F[j>>2];m=g+k|0;F[m>>2]=F[m>>2]+1;Ca(a+l|0,g,F[j+4>>2]);if(d){k=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];g=F[e+12>>2];if((k|0)==(((a|0)==(g|0)?0:L(a-g>>2,341)-1|0)|0)){ya(e+8|0);k=F[e+24>>2]+F[e+28>>2]|0;g=F[e+12>>2]}a=(k>>>0)/341|0;a=F[g+(a<<2)>>2]+L(k-L(a,341)|0,12)|0;F[a+8>>2]=h;F[a+4>>2]=i;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}g=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];d=F[e+12>>2];if((g|0)==(((a|0)==(d|0)?0:L(a-d>>2,341)-1|0)|0)){ya(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;d=F[e+12>>2]}a=(g>>>0)/341|0;a=F[d+(a<<2)>>2]+L(g-L(a,341)|0,12)|0;F[a+8>>2]=o;F[a+4>>2]=i;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}i=0;if(!m){break g}while(1){if(F[f+12>>2]){t=F[n>>2];j=F[f+548>>2];u=F[o>>2];h=F[f+604>>2];v=F[f+616>>2];d=0;while(1){g=(d<<2)+v|0;F[h+(F[g>>2]<<2)>>2]=0;b=F[f>>2];a=F[g>>2]<<2;k=F[a+u>>2];q:{if((b|0)==(k|0)){break q}a=a+h|0;b=b-k|0;k=F[f+560>>2];p=32-k|0;if((b|0)<=(p|0)){l=F[f+556>>2];if((l|0)==(j|0)){F[a>>2]=0;break q}F[a>>2]=F[l>>2]<<k>>>32-b;a=b+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break q}F[f+560>>2]=0;F[f+556>>2]=l+4;break q}l=F[f+556>>2];r=l+4|0;if((j|0)==(r|0)){F[a>>2]=0;break q}w=F[l>>2];F[f+556>>2]=r;p=b-p|0;F[f+560>>2]=p;F[a>>2]=F[l+4>>2]>>>32-p|w<<k>>>32-b}a=F[g>>2]<<2;b=a+h|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0<I[f+12>>2]){continue}break}}a=0;d=F[c+16>>2];r:{if((d|0)==F[c+20>>2]){break r}while(1){k=L(a,20)+d|0;j=F[f+604>>2]+(F[k+4>>2]<<2)|0;l=F[k>>2];b=F[k+12>>2];h=j;s:{if(b>>>0>3){break s}d=0;g=F[c+12>>2];h=g;if(!F[k+16>>2]){break s}while(1){h=ta(g,j+(d<<2)|0,b);b=F[k+12>>2];g=h+b|0;d=d+1|0;if(d>>>0<I[k+16>>2]){continue}break}h=F[c+12>>2]}d=F[c+28>>2];d=G[l+84|0]?d:F[F[l+68>>2]+(d<<2)>>2];if(d>>>0>=I[l+80>>2]){break r}b=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,d)|0,h,b);a=a+1|0;d=F[c+16>>2];if(a>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;i=i+1|0;if((m|0)!=(i|0)){continue}break}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;i=F[e+16>>2];d=F[e+12>>2];g=i-d|0;if(g>>>0>=9){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;i=F[e+16>>2];g=i-d|0;if(g>>>0>8){continue}break}}a=170;t:{switch((g>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break t}}u:{if((d|0)==(i|0)){break u}while(1){ra(F[d>>2]);d=d+4|0;if((i|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break u}F[e+16>>2]=a+((c-a|0)+3&-4)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=b}return d}function ud(a,b,c){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;h=F[b+12>>2];g=F[b+20>>2];e=F[b+16>>2];l=e+4|0;g=l>>>0<4?g+1|0:g;a:{if(l>>>0>I[b+8>>2]&(g|0)>=(h|0)|(g|0)>(h|0)){break a}g=e+F[b>>2]|0;F[a>>2]=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);g=F[b+20>>2];h=g;l=F[b+16>>2];e=l+4|0;g=e>>>0<4?g+1|0:g;k=e;F[b+16>>2]=e;F[b+20>>2]=g;if(I[a>>2]>32){break a}e=F[b+12>>2];g=h;h=l+8|0;g=h>>>0<8?g+1|0:g;if((e|0)<=(g|0)&h>>>0>I[b+8>>2]|(e|0)<(g|0)){break a}d=k+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=g;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!g){return 1}d=0;F[a+8>>2]=0;if(!vb(a+16|0,b)){break a}if(!xa(a+544|0,b)){break a}if(!xa(a+564|0,b)){break a}if(!xa(a+584|0,b)){break a}q=F[a+4>>2];e=ea-32|0;ea=e;g=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;f=sa(a);F[e+8>>2]=f;i=a+f|0;F[e+16>>2]=i;ua(f,0,a);F[e+12>>2]=i}a=F[g+628>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;i=F[e+12>>2];f=F[e+8>>2];d=F[g+12>>2]}F[a+4>>2]=i;F[a>>2]=f;F[a+8>>2]=F[e+16>>2];f=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;j=sa(a);F[e+8>>2]=j;f=a+j|0;F[e+16>>2]=f;ua(j,0,a);F[e+12>>2]=f}a=F[g+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;f=F[e+12>>2];j=F[e+8>>2]}F[a+4>>2]=f;F[a>>2]=j;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;d=F[e+28>>2]+1|0;F[e+28>>2]=d;e:{if(!d){break e}t=g+16|0;while(1){a=F[e+12>>2];f=F[e+24>>2];i=d-1|0;b=f+i|0;h=(b>>>0)/341|0;b=F[a+(h<<2)>>2]+L(b-L(h,341)|0,12)|0;h=F[b+8>>2];j=F[b+4>>2];l=F[b>>2];F[e+28>>2]=i;b=F[e+16>>2];if((((a|0)==(b|0)?0:L(b-a>>2,341)-1|0)-(d+f|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(l>>>0>q>>>0){b=0;break e}b=0;a=F[g+12>>2];j=(j|0)==(a-1|0)?0:j+1|0;if(j>>>0>=a>>>0){break e}a=F[g+628>>2];i=L(h,12);n=a+i|0;d=F[g>>2];k=j<<2;r=i+F[g+640>>2]|0;f=F[k+F[r>>2]>>2];f:{g:{if((d|0)==(f|0)){a=0;if(!l){break g}while(1){b=0;d=F[c+16>>2];h:{if((d|0)==F[c+20>>2]){break h}while(1){k=L(b,20)+d|0;j=F[n>>2]+(F[k+4>>2]<<2)|0;m=F[k>>2];i=F[k+12>>2];h=j;i:{if(i>>>0>3){break i}d=0;f=F[c+12>>2];h=f;if(!F[k+16>>2]){break i}while(1){h=ta(f,j+(d<<2)|0,i);i=F[k+12>>2];f=h+i|0;d=d+1|0;if(d>>>0<I[k+16>>2]){continue}break}h=F[c+12>>2]}d=F[c+28>>2];d=G[m+84|0]?d:F[F[m+68>>2]+(d<<2)>>2];if(d>>>0>=I[m+80>>2]){break h}f=d;d=F[m+40>>2];ta(F[F[m>>2]>>2]+L(f,d)|0,h,d);b=b+1|0;d=F[c+16>>2];if(b>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((l|0)!=(a|0)){continue}break}break g}j:{k:{l:{if(l>>>0<=2){a=F[g+616>>2];F[a>>2]=j;d=1;f=F[g+12>>2];if(f>>>0>1){break l}break j}if(I[g+8>>2]>I[g+4>>2]){break e}o=a;a=i+12|0;Ca(o+a|0,F[n>>2],F[n+4>>2]);a=k+F[a+F[g+628>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<<d+(f^-1));f=0;d=0;a=O(l)^31;if(!a){d=l>>>1|0;break k}while(1){f=Da((d<<4)+t|0)|f<<1;d=d+1|0;if((a|0)!=(d|0)){continue}break}d=l>>>1|0;if(f>>>0<=d>>>0){break k}break e}while(1){j=(f-1|0)==(j|0)?0:j+1|0;F[a+(d<<2)>>2]=j;d=d+1|0;f=F[g+12>>2];if(d>>>0<f>>>0){continue}break}break j}m=h+1|0;m:{n:{a=d-f|0;d=l-a|0;o:{if((d|0)==(a|0)){b=a;break o}b=F[g+596>>2];if((b|0)==F[g+588>>2]){break n}f=F[b>>2];l=F[g+600>>2];n=l+1|0;F[g+600>>2]=n;f=f&-2147483648>>>l;p:{if((n|0)==32){F[g+600>>2]=0;F[g+596>>2]=b+4;if(f){break p}break n}if(!f){break n}}b=d}d=a;break m}b=a}a=F[g+640>>2];f=a+i|0;i=F[f>>2];l=i+k|0;F[l>>2]=F[l>>2]+1;Ca(a+L(m,12)|0,i,F[f+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;i=F[e+16>>2];f=F[e+12>>2];if((a|0)==(((f|0)==(i|0)?0:L(i-f>>2,341)-1|0)|0)){ya(e+8|0);f=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}o=f;f=(a>>>0)/341|0;a=F[o+(f<<2)>>2]+L(a-L(f,341)|0,12)|0;F[a+8>>2]=h;F[a+4>>2]=j;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}f=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];d=F[e+12>>2];if((f|0)==(((a|0)==(d|0)?0:L(a-d>>2,341)-1|0)|0)){ya(e+8|0);f=F[e+24>>2]+F[e+28>>2]|0;d=F[e+12>>2]}a=(f>>>0)/341|0;a=F[d+(a<<2)>>2]+L(f-L(a,341)|0,12)|0;F[a+8>>2]=m;F[a+4>>2]=j;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}a=0;if(!l){break g}while(1){if(F[g+12>>2]){u=F[n>>2];f=F[g+548>>2];v=F[r>>2];j=F[g+604>>2];w=F[g+616>>2];d=0;while(1){i=(d<<2)+w|0;F[j+(F[i>>2]<<2)>>2]=0;h=F[g>>2];b=F[i>>2]<<2;k=F[b+v>>2];q:{if((h|0)==(k|0)){break q}b=b+j|0;h=h-k|0;k=F[g+560>>2];p=32-k|0;if((h|0)<=(p|0)){m=F[g+556>>2];if((m|0)==(f|0)){F[b>>2]=0;break q}F[b>>2]=F[m>>2]<<k>>>32-h;b=h+F[g+560>>2]|0;F[g+560>>2]=b;if((b|0)!=32){break q}F[g+560>>2]=0;F[g+556>>2]=m+4;break q}m=F[g+556>>2];s=m+4|0;if((f|0)==(s|0)){F[b>>2]=0;break q}o=F[m>>2];F[g+556>>2]=s;p=h-p|0;F[g+560>>2]=p;F[b>>2]=F[m+4>>2]>>>32-p|o<<k>>>32-h}b=F[i>>2]<<2;h=b+j|0;F[h>>2]=F[h>>2]|F[b+u>>2];d=d+1|0;if(d>>>0<I[g+12>>2]){continue}break}}b=0;d=F[c+16>>2];r:{if((d|0)==F[c+20>>2]){break r}while(1){k=L(b,20)+d|0;j=F[g+604>>2]+(F[k+4>>2]<<2)|0;m=F[k>>2];i=F[k+12>>2];h=j;s:{if(i>>>0>3){break s}d=0;f=F[c+12>>2];h=f;if(!F[k+16>>2]){break s}while(1){h=ta(f,j+(d<<2)|0,i);i=F[k+12>>2];f=h+i|0;d=d+1|0;if(d>>>0<I[k+16>>2]){continue}break}h=F[c+12>>2]}d=F[c+28>>2];d=G[m+84|0]?d:F[F[m+68>>2]+(d<<2)>>2];if(d>>>0>=I[m+80>>2]){break r}f=d;d=F[m+40>>2];ta(F[F[m>>2]>>2]+L(f,d)|0,h,d);b=b+1|0;d=F[c+16>>2];if(b>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((l|0)!=(a|0)){continue}break}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;j=F[e+16>>2];d=F[e+12>>2];f=j-d|0;if(f>>>0>=9){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;j=F[e+16>>2];f=j-d|0;if(f>>>0>8){continue}break}}i=170;t:{switch((f>>>2|0)-1|0){case 1:i=341;case 0:F[e+24>>2]=i;break;default:break t}}u:{if((d|0)==(j|0)){break u}while(1){ra(F[d>>2]);d=d+4|0;if((j|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break u}F[e+16>>2]=a+((c-a|0)+3&-4)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=b}return d}
function td(a,b,c){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;h=F[b+12>>2];f=F[b+20>>2];j=F[b+16>>2];e=j+4|0;f=e>>>0<4?f+1|0:f;a:{if(e>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=j+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;e=F[b+16>>2];j=e+4|0;f=j>>>0<4?f+1|0:f;m=j;F[b+16>>2]=j;F[b+20>>2]=f;if(I[a>>2]>32){break a}j=F[b+12>>2];f=h;h=e+8|0;f=h>>>0<8?f+1|0:f;if(h>>>0>I[b+8>>2]&(f|0)>=(j|0)|(f|0)>(j|0)){break a}d=m+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!vb(a+16|0,b)){break a}if(!xa(a+544|0,b)){break a}if(!xa(a+564|0,b)){break a}if(!xa(a+584|0,b)){break a}q=F[a+4>>2];b=0;e=ea-32|0;ea=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;g=sa(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;ua(g,0,a);F[e+12>>2]=b}a=F[f+628>>2];h=F[a>>2];if(h){F[a+4>>2]=h;ra(h);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;i=sa(a);F[e+8>>2]=i;g=a+i|0;F[e+16>>2]=g;ua(i,0,a);F[e+12>>2]=g}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;i=F[e+8>>2];g=F[e+12>>2]}F[a+4>>2]=g;F[a>>2]=i;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;ya(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;d=F[e+28>>2]+1|0;F[e+28>>2]=d;e:{if(!d){break e}s=f+16|0;while(1){a=F[e+12>>2];j=F[e+24>>2];b=d-1|0;h=j+b|0;g=(h>>>0)/341|0;g=F[a+(g<<2)>>2]+L(h-L(g,341)|0,12)|0;h=F[g+8>>2];m=F[g>>2];F[e+28>>2]=b;b=F[e+16>>2];if((((a|0)==(b|0)?0:L(b-a>>2,341)-1|0)-(d+j|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(m>>>0>q>>>0){break e}a=F[f+628>>2];j=L(h,12);o=j+F[f+640>>2]|0;i=Ud(f,m,o);if(i>>>0>=I[f+12>>2]){break e}n=a+j|0;d=F[f>>2];k=i<<2;g=F[k+F[o>>2]>>2];f:{g:{if((d|0)==(g|0)){k=0;if(!m){break g}while(1){a=0;d=F[c+16>>2];h:{if((d|0)==F[c+20>>2]){break h}while(1){i=L(a,20)+d|0;j=F[n>>2]+(F[i+4>>2]<<2)|0;l=F[i>>2];b=F[i+12>>2];h=j;i:{if(b>>>0>3){break i}d=0;g=F[c+12>>2];h=g;if(!F[i+16>>2]){break i}while(1){h=ta(g,j+(d<<2)|0,b);b=F[i+12>>2];g=h+b|0;d=d+1|0;if(d>>>0<I[i+16>>2]){continue}break}h=F[c+12>>2]}d=F[c+28>>2];d=G[l+84|0]?d:F[F[l+68>>2]+(d<<2)>>2];if(d>>>0>=I[l+80>>2]){break h}b=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,d)|0,h,b);a=a+1|0;d=F[c+16>>2];if(a>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;k=k+1|0;if((m|0)!=(k|0)){continue}break}break g}j:{k:{l:{if(m>>>0<=2){a=F[f+616>>2];F[a>>2]=i;d=1;g=F[f+12>>2];if(g>>>0>1){break l}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];o=h+1|0;l=L(o,12);b=a+l|0;if((b|0)!=(n|0)){Ca(b,F[n>>2],F[n+4>>2]);a=F[f+628>>2]}a=k+F[a+l>>2]|0;F[a>>2]=F[a>>2]+(1<<d+(g^-1));g=0;d=0;a=O(m)^31;if(!a){d=m>>>1|0;break k}while(1){g=Da((d<<4)+s|0)|g<<1;d=d+1|0;if((a|0)!=(d|0)){continue}break}d=m>>>1|0;if(g>>>0<=d>>>0){break k}b=0;break e}while(1){i=(g-1|0)==(i|0)?0:i+1|0;F[a+(d<<2)>>2]=i;d=d+1|0;g=F[f+12>>2];if(d>>>0<g>>>0){continue}break}break j}m:{n:{a=d-g|0;d=m-a|0;o:{if((d|0)==(a|0)){b=a;break o}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break n}g=F[b>>2];m=F[f+600>>2];n=m+1|0;F[f+600>>2]=n;g=g&-2147483648>>>m;p:{if((n|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(g){break p}break n}if(!g){break n}}b=d}d=a;break m}b=a}a=F[f+640>>2];j=a+j|0;g=F[j>>2];m=g+k|0;F[m>>2]=F[m>>2]+1;Ca(a+l|0,g,F[j+4>>2]);if(d){k=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];g=F[e+12>>2];if((k|0)==(((a|0)==(g|0)?0:L(a-g>>2,341)-1|0)|0)){ya(e+8|0);k=F[e+24>>2]+F[e+28>>2]|0;g=F[e+12>>2]}a=(k>>>0)/341|0;a=F[g+(a<<2)>>2]+L(k-L(a,341)|0,12)|0;F[a+8>>2]=h;F[a+4>>2]=i;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}g=F[e+28>>2]+F[e+24>>2]|0;a=F[e+16>>2];d=F[e+12>>2];if((g|0)==(((a|0)==(d|0)?0:L(a-d>>2,341)-1|0)|0)){ya(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;d=F[e+12>>2]}a=(g>>>0)/341|0;a=F[d+(a<<2)>>2]+L(g-L(a,341)|0,12)|0;F[a+8>>2]=o;F[a+4>>2]=i;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}i=0;if(!m){break g}while(1){if(F[f+12>>2]){t=F[n>>2];j=F[f+548>>2];u=F[o>>2];h=F[f+604>>2];v=F[f+616>>2];d=0;while(1){g=(d<<2)+v|0;F[h+(F[g>>2]<<2)>>2]=0;b=F[f>>2];a=F[g>>2]<<2;k=F[a+u>>2];q:{if((b|0)==(k|0)){break q}a=a+h|0;b=b-k|0;k=F[f+560>>2];p=32-k|0;if((b|0)<=(p|0)){l=F[f+556>>2];if((l|0)==(j|0)){F[a>>2]=0;break q}F[a>>2]=F[l>>2]<<k>>>32-b;a=b+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break q}F[f+560>>2]=0;F[f+556>>2]=l+4;break q}l=F[f+556>>2];r=l+4|0;if((j|0)==(r|0)){F[a>>2]=0;break q}w=F[l>>2];F[f+556>>2]=r;p=b-p|0;F[f+560>>2]=p;F[a>>2]=F[l+4>>2]>>>32-p|w<<k>>>32-b}a=F[g>>2]<<2;b=a+h|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0<I[f+12>>2]){continue}break}}a=0;d=F[c+16>>2];r:{if((d|0)==F[c+20>>2]){break r}while(1){k=L(a,20)+d|0;j=F[f+604>>2]+(F[k+4>>2]<<2)|0;l=F[k>>2];b=F[k+12>>2];h=j;s:{if(b>>>0>3){break s}d=0;g=F[c+12>>2];h=g;if(!F[k+16>>2]){break s}while(1){h=ta(g,j+(d<<2)|0,b);b=F[k+12>>2];g=h+b|0;d=d+1|0;if(d>>>0<I[k+16>>2]){continue}break}h=F[c+12>>2]}d=F[c+28>>2];d=G[l+84|0]?d:F[F[l+68>>2]+(d<<2)>>2];if(d>>>0>=I[l+80>>2]){break r}b=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,d)|0,h,b);a=a+1|0;d=F[c+16>>2];if(a>>>0<(F[c+20>>2]-d|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;i=i+1|0;if((m|0)!=(i|0)){continue}break}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;i=F[e+16>>2];d=F[e+12>>2];g=i-d|0;if(g>>>0>=9){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;i=F[e+16>>2];g=i-d|0;if(g>>>0>8){continue}break}}a=170;t:{switch((g>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break t}}u:{if((d|0)==(i|0)){break u}while(1){ra(F[d>>2]);d=d+4|0;if((i|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break u}F[e+16>>2]=a+((c-a|0)+3&-4)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=b}return d}function xd(a,b,c){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;d=F[b+12>>2];f=F[b+20>>2];e=F[b+16>>2];k=e+4|0;f=k>>>0<4?f+1|0:f;a:{if((d|0)<=(f|0)&k>>>0>I[b+8>>2]|(d|0)<(f|0)){break a}f=e+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];d=f;k=F[b+16>>2];e=k+4|0;f=e>>>0<4?d+1|0:d;m=e;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}e=F[b+12>>2];f=d;d=k+8|0;f=d>>>0<8?f+1|0:f;if(d>>>0>I[b+8>>2]&(f|0)>=(e|0)|(f|0)>(e|0)){break a}i=m+F[b>>2]|0;f=G[i|0]|G[i+1|0]<<8|(G[i+2|0]<<16|G[i+3|0]<<24);F[a+4>>2]=f;i=F[b+20>>2];d=F[b+16>>2]+4|0;i=d>>>0<4?i+1|0:i;F[b+16>>2]=d;F[b+20>>2]=i;if(!f){return 1}i=0;F[a+8>>2]=0;if(!wa(a+16|0,b)){break a}if(!xa(a+32|0,b)){break a}if(!xa(a+52|0,b)){break a}if(!xa(a+72|0,b)){break a}r=F[a+4>>2];d=ea-32|0;ea=d;f=a;e=F[a+12>>2];F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;b:{c:{if(e){if(e>>>0>=1073741824){break c}a=e<<2;g=sa(a);F[d+8>>2]=g;j=a+g|0;F[d+16>>2]=j;ua(g,0,a);F[d+12>>2]=j}a=F[f+116>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;j=F[d+12>>2];g=F[d+8>>2];e=F[f+12>>2]}F[a+4>>2]=j;F[a>>2]=g;F[a+8>>2]=F[d+16>>2];g=0;F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;d:{if(e){if(e>>>0>=1073741824){break d}a=e<<2;h=sa(a);F[d+8>>2]=h;g=a+h|0;F[d+16>>2]=g;ua(h,0,a);F[d+12>>2]=g}a=F[f+128>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;h=F[d+8>>2];g=F[d+12>>2]}F[a+4>>2]=g;F[a>>2]=h;F[a+8>>2]=F[d+16>>2];F[d+24>>2]=0;F[d+28>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;ya(d+8|0);a=F[d+24>>2]+F[d+28>>2]|0;b=(a>>>0)/341|0;a=F[F[d+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=r;i=1;e=F[d+28>>2]+1|0;F[d+28>>2]=e;e:{if(!e){break e}t=f+16|0;while(1){a=F[d+12>>2];i=F[d+24>>2];h=e-1|0;b=i+h|0;g=(b>>>0)/341|0;b=F[a+(g<<2)>>2]+L(b-L(g,341)|0,12)|0;j=F[b+8>>2];g=F[b+4>>2];k=F[b>>2];F[d+28>>2]=h;b=F[d+16>>2];if((((a|0)==(b|0)?0:L(b-a>>2,341)-1|0)-(e+i|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[d+16>>2]=F[d+16>>2]-4}i=0;if(k>>>0>r>>>0){break e}a=F[f+12>>2];e=(a-1|0)==(g|0)?0:g+1|0;if(e>>>0>=a>>>0){break e}g=L(j,12);n=g+F[f+128>>2]|0;m=g+F[f+116>>2]|0;b=F[f>>2];h=e<<2;o=F[h+F[n>>2]>>2];f:{if((b|0)==(o|0)){if(!k){break f}b=0;if(F[c+20>>2]==F[c+16>>2]){a=F[f+8>>2];F[c+28>>2]=k+F[c+28>>2];F[f+8>>2]=a+k;break f}while(1){h=0;e=F[c+16>>2];g:{if((e|0)==F[c+20>>2]){break g}while(1){l=L(h,20)+e|0;i=F[m>>2]+(F[l+4>>2]<<2)|0;n=F[l>>2];j=F[l+12>>2];a=i;h:{if(j>>>0>3){break h}e=0;g=F[c+12>>2];a=g;if(!F[l+16>>2]){break h}while(1){a=ta(g,i+(e<<2)|0,j);j=F[l+12>>2];g=a+j|0;e=e+1|0;if(e>>>0<I[l+16>>2]){continue}break}a=F[c+12>>2]}e=F[c+28>>2];e=G[n+84|0]?e:F[F[n+68>>2]+(e<<2)>>2];if(e>>>0>=I[n+80>>2]){break g}i=F[n+40>>2];ta(F[F[n>>2]>>2]+L(i,e)|0,a,i);h=h+1|0;e=F[c+16>>2];if(h>>>0<(F[c+20>>2]-e|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;b=b+1|0;if((k|0)!=(b|0)){continue}break}break f}i:{j:{k:{l:{if(k>>>0<=2){a=F[f+104>>2];F[a>>2]=e;h=1;g=F[f+12>>2];if(g>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+116>>2];n=j+1|0;l=L(n,12);q=a+l|0;if((q|0)!=(m|0)){Ca(q,F[m>>2],F[m+4>>2]);a=F[f+116>>2]}a=h+F[a+l>>2]|0;F[a>>2]=F[a>>2]+(1<<b+(o^-1));F[d+4>>2]=0;pc(t,O(k)^31,d+4|0);a=k>>>1|0;b=F[d+4>>2];if(a>>>0<b>>>0){break e}a=a-b|0;i=k-a|0;m:{if((i|0)==(a|0)){i=a;break m}b=F[f+84>>2];if((b|0)==F[f+76>>2]){break k}k=F[b>>2];m=F[f+88>>2];o=m+1|0;F[f+88>>2]=o;k=k&-2147483648>>>m;n:{if((o|0)==32){F[f+88>>2]=0;F[f+84>>2]=b+4;if(k){break n}break k}if(!k){break k}}}b=i;i=a;break j}while(1){e=(g-1|0)==(e|0)?0:e+1|0;F[a+(h<<2)>>2]=e;g=F[f+12>>2];h=h+1|0;if(g>>>0>h>>>0){continue}break}break i}b=a}m=h;a=F[f+128>>2];g=a+g|0;h=F[g>>2];k=m+h|0;F[k>>2]=F[k>>2]+1;Ca(a+l|0,h,F[g+4>>2]);if(i){g=F[d+28>>2]+F[d+24>>2]|0;a=F[d+16>>2];h=F[d+12>>2];if((g|0)==(((a|0)==(h|0)?0:L(a-h>>2,341)-1|0)|0)){ya(d+8|0);h=F[d+12>>2];g=F[d+24>>2]+F[d+28>>2]|0}a=(g>>>0)/341|0;a=F[(a<<2)+h>>2]+L(g-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=e;F[a>>2]=i;F[d+28>>2]=F[d+28>>2]+1}if(!b){break f}g=F[d+28>>2]+F[d+24>>2]|0;a=F[d+16>>2];h=F[d+12>>2];if((g|0)==(((a|0)==(h|0)?0:L(a-h>>2,341)-1|0)|0)){ya(d+8|0);h=F[d+12>>2];g=F[d+24>>2]+F[d+28>>2]|0}a=(g>>>0)/341|0;a=F[(a<<2)+h>>2]+L(g-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=e;F[a>>2]=b;F[d+28>>2]=F[d+28>>2]+1;break f}o=0;if(!k){break f}while(1){if(F[f+12>>2]){q=F[m>>2];g=F[f+36>>2];u=F[n>>2];i=F[f+92>>2];v=F[f+104>>2];e=0;while(1){h=(e<<2)+v|0;F[i+(F[h>>2]<<2)>>2]=0;b=F[f>>2];a=F[h>>2]<<2;j=F[a+u>>2];o:{if((b|0)==(j|0)){break o}a=a+i|0;b=b-j|0;j=F[f+48>>2];p=32-j|0;if((b|0)<=(p|0)){l=F[f+44>>2];if((l|0)==(g|0)){F[a>>2]=0;break o}F[a>>2]=F[l>>2]<<j>>>32-b;a=b+F[f+48>>2]|0;F[f+48>>2]=a;if((a|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=l+4;break o}l=F[f+44>>2];s=l+4|0;if((g|0)==(s|0)){F[a>>2]=0;break o}w=F[l>>2];F[f+44>>2]=s;p=b-p|0;F[f+48>>2]=p;F[a>>2]=F[l+4>>2]>>>32-p|w<<j>>>32-b}a=F[h>>2]<<2;b=a+i|0;F[b>>2]=F[b>>2]|F[a+q>>2];e=e+1|0;if(e>>>0<I[f+12>>2]){continue}break}}h=0;e=F[c+16>>2];p:{if((e|0)==F[c+20>>2]){break p}while(1){i=L(h,20)+e|0;b=F[f+92>>2]+(F[i+4>>2]<<2)|0;l=F[i>>2];j=F[i+12>>2];a=b;q:{if(j>>>0>3){break q}e=0;g=F[c+12>>2];a=g;if(!F[i+16>>2]){break q}while(1){a=ta(g,b+(e<<2)|0,j);j=F[i+12>>2];g=a+j|0;e=e+1|0;if(e>>>0<I[i+16>>2]){continue}break}a=F[c+12>>2]}e=F[c+28>>2];e=G[l+84|0]?e:F[F[l+68>>2]+(e<<2)>>2];if(e>>>0>=I[l+80>>2]){break p}b=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,e)|0,a,b);h=h+1|0;e=F[c+16>>2];if(h>>>0<(F[c+20>>2]-e|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((k|0)!=(o|0)){continue}break}}e=F[d+28>>2];if(e){continue}break}i=1}F[d+28>>2]=0;h=F[d+16>>2];e=F[d+12>>2];g=h-e|0;if(g>>>0>=9){while(1){ra(F[e>>2]);e=F[d+12>>2]+4|0;F[d+12>>2]=e;h=F[d+16>>2];g=h-e|0;if(g>>>0>8){continue}break}}j=170;r:{switch((g>>>2|0)-1|0){case 1:j=341;case 0:F[d+24>>2]=j;break;default:break r}}s:{if((e|0)==(h|0)){break s}while(1){ra(F[e>>2]);e=e+4|0;if((h|0)!=(e|0)){continue}break}a=F[d+16>>2];b=F[d+12>>2];if((a|0)==(b|0)){break s}F[d+16>>2]=a+((b-a|0)+3&-4)}a=F[d+8>>2];if(a){ra(a)}ea=d+32|0;break b}va();V()}va();V()}}return i}function wd(a,b,c){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;j=F[b+12>>2];f=F[b+20>>2];i=F[b+16>>2];d=i+4|0;f=d>>>0<4?f+1|0:f;a:{if(d>>>0>I[b+8>>2]&(f|0)>=(j|0)|(f|0)>(j|0)){break a}f=i+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];j=f;d=F[b+16>>2];i=d+4|0;f=i>>>0<4?f+1|0:f;e=i;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}i=F[b+12>>2];f=j;j=d+8|0;f=j>>>0<8?f+1|0:f;if(j>>>0>I[b+8>>2]&(f|0)>=(i|0)|(f|0)>(i|0)){break a}g=e+F[b>>2]|0;f=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[a+4>>2]=f;g=F[b+20>>2];j=F[b+16>>2]+4|0;g=j>>>0<4?g+1|0:g;F[b+16>>2]=j;F[b+20>>2]=g;if(!f){return 1}g=0;F[a+8>>2]=0;if(!wa(a+16|0,b)){break a}if(!xa(a+32|0,b)){break a}if(!xa(a+52|0,b)){break a}if(!xa(a+72|0,b)){break a}p=F[a+4>>2];d=ea-32|0;ea=d;f=a;e=F[a+12>>2];F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;b:{c:{if(e){if(e>>>0>=1073741824){break c}a=e<<2;h=sa(a);F[d+8>>2]=h;g=a+h|0;F[d+16>>2]=g;ua(h,0,a);F[d+12>>2]=g}a=F[f+116>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;e=F[f+12>>2];h=F[d+8>>2];g=F[d+12>>2]}F[a+4>>2]=g;F[a>>2]=h;F[a+8>>2]=F[d+16>>2];h=0;F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;a=0;d:{if(e){if(e>>>0>=1073741824){break d}b=e<<2;a=sa(b);F[d+8>>2]=a;h=a+b|0;F[d+16>>2]=h;ua(a,0,b);F[d+12>>2]=h}b=F[f+128>>2];g=F[b>>2];if(g){F[b+4>>2]=g;ra(g);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[d+12>>2];a=F[d+8>>2]}F[b+4>>2]=h;F[b>>2]=a;F[b+8>>2]=F[d+16>>2];F[d+24>>2]=0;F[d+28>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;ya(d+8|0);a=F[d+24>>2]+F[d+28>>2]|0;b=(a>>>0)/341|0;a=F[F[d+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;b=1;e=F[d+28>>2]+1|0;F[d+28>>2]=e;e:{if(!e){break e}s=f+16|0;while(1){a=F[d+12>>2];i=F[d+24>>2];h=e-1|0;b=i+h|0;g=(b>>>0)/341|0;b=F[a+(g<<2)>>2]+L(b-L(g,341)|0,12)|0;j=F[b+8>>2];g=F[b+4>>2];l=F[b>>2];F[d+28>>2]=h;b=F[d+16>>2];if((((a|0)==(b|0)?0:L(b-a>>2,341)-1|0)-(e+i|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[d+16>>2]=F[d+16>>2]-4}if(l>>>0>p>>>0){b=0;break e}b=0;a=F[f+12>>2];e=(g|0)==(a-1|0)?0:g+1|0;if(e>>>0>=a>>>0){break e}a=F[f+116>>2];i=L(j,12);n=a+i|0;g=F[f>>2];h=e<<2;q=i+F[f+128>>2]|0;k=F[h+F[q>>2]>>2];f:{if((g|0)==(k|0)){if(!l){break f}if(F[c+20>>2]==F[c+16>>2]){a=F[f+8>>2];F[c+28>>2]=l+F[c+28>>2];F[f+8>>2]=a+l;break f}while(1){a=0;e=F[c+16>>2];g:{if((e|0)==F[c+20>>2]){break g}while(1){k=L(a,20)+e|0;i=F[n>>2]+(F[k+4>>2]<<2)|0;m=F[k>>2];g=F[k+12>>2];j=i;h:{if(g>>>0>3){break h}e=0;h=F[c+12>>2];j=h;if(!F[k+16>>2]){break h}while(1){j=ta(h,i+(e<<2)|0,g);g=F[k+12>>2];h=j+g|0;e=e+1|0;if(e>>>0<I[k+16>>2]){continue}break}j=F[c+12>>2]}e=F[c+28>>2];e=G[m+84|0]?e:F[F[m+68>>2]+(e<<2)>>2];if(e>>>0>=I[m+80>>2]){break g}g=F[m+40>>2];ta(F[F[m>>2]>>2]+L(g,e)|0,j,g);a=a+1|0;e=F[c+16>>2];if(a>>>0<(F[c+20>>2]-e|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;b=b+1|0;if((l|0)!=(b|0)){continue}break}break f}i:{j:{k:{l:{if(l>>>0<=2){b=F[f+104>>2];F[b>>2]=e;a=1;h=F[f+12>>2];if(h>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}m=a;a=i+12|0;Ca(m+a|0,F[n>>2],F[n+4>>2]);a=h+F[a+F[f+116>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<<g+(k^-1));F[d+4>>2]=0;pc(s,O(l)^31,d+4|0);a=l>>>1|0;g=F[d+4>>2];if(a>>>0<g>>>0){break e}k=j+1|0;a=a-g|0;g=l-a|0;m:{if((g|0)==(a|0)){b=a;break m}b=F[f+84>>2];if((b|0)==F[f+76>>2]){break k}l=F[b>>2];m=F[f+88>>2];n=m+1|0;F[f+88>>2]=n;l=l&-2147483648>>>m;n:{if((n|0)==32){F[f+88>>2]=0;F[f+84>>2]=b+4;if(l){break n}break k}if(!l){break k}}b=g}g=a;break j}while(1){e=(h-1|0)==(e|0)?0:e+1|0;F[b+(a<<2)>>2]=e;a=a+1|0;h=F[f+12>>2];if(a>>>0<h>>>0){continue}break}break i}b=a}m=h;a=F[f+128>>2];i=a+i|0;h=F[i>>2];l=m+h|0;F[l>>2]=F[l>>2]+1;Ca(a+L(k,12)|0,h,F[i+4>>2]);if(g){h=F[d+28>>2]+F[d+24>>2]|0;i=F[d+16>>2];a=F[d+12>>2];if((h|0)==(((a|0)==(i|0)?0:L(i-a>>2,341)-1|0)|0)){ya(d+8|0);h=F[d+24>>2]+F[d+28>>2]|0;i=F[d+12>>2]}else{i=a}a=(h>>>0)/341|0;a=F[i+(a<<2)>>2]+L(h-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=e;F[a>>2]=g;F[d+28>>2]=F[d+28>>2]+1}if(!b){break f}h=F[d+28>>2]+F[d+24>>2]|0;g=F[d+16>>2];a=F[d+12>>2];if((h|0)==(((a|0)==(g|0)?0:L(g-a>>2,341)-1|0)|0)){ya(d+8|0);h=F[d+24>>2]+F[d+28>>2]|0;j=F[d+12>>2]}else{j=a}a=(h>>>0)/341|0;a=F[j+(a<<2)>>2]+L(h-L(a,341)|0,12)|0;F[a+8>>2]=k;F[a+4>>2]=e;F[a>>2]=b;F[d+28>>2]=F[d+28>>2]+1;break f}m=0;if(!l){break f}while(1){if(F[f+12>>2]){t=F[n>>2];j=F[f+36>>2];u=F[q>>2];g=F[f+92>>2];v=F[f+104>>2];e=0;while(1){i=(e<<2)+v|0;F[g+(F[i>>2]<<2)>>2]=0;b=F[f>>2];a=F[i>>2]<<2;h=F[a+u>>2];o:{if((b|0)==(h|0)){break o}a=a+g|0;b=b-h|0;h=F[f+48>>2];o=32-h|0;if((b|0)<=(o|0)){k=F[f+44>>2];if((k|0)==(j|0)){F[a>>2]=0;break o}F[a>>2]=F[k>>2]<<h>>>32-b;a=b+F[f+48>>2]|0;F[f+48>>2]=a;if((a|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=k+4;break o}k=F[f+44>>2];r=k+4|0;if((j|0)==(r|0)){F[a>>2]=0;break o}w=F[k>>2];F[f+44>>2]=r;o=b-o|0;F[f+48>>2]=o;F[a>>2]=F[k+4>>2]>>>32-o|w<<h>>>32-b}a=F[i>>2]<<2;b=a+g|0;F[b>>2]=F[b>>2]|F[a+t>>2];e=e+1|0;if(e>>>0<I[f+12>>2]){continue}break}}a=0;e=F[c+16>>2];p:{if((e|0)==F[c+20>>2]){break p}while(1){i=L(a,20)+e|0;j=F[f+92>>2]+(F[i+4>>2]<<2)|0;k=F[i>>2];g=F[i+12>>2];b=j;q:{if(g>>>0>3){break q}e=0;h=F[c+12>>2];b=h;if(!F[i+16>>2]){break q}while(1){b=ta(h,j+(e<<2)|0,g);g=F[i+12>>2];h=b+g|0;e=e+1|0;if(e>>>0<I[i+16>>2]){continue}break}b=F[c+12>>2]}e=F[c+28>>2];e=G[k+84|0]?e:F[F[k+68>>2]+(e<<2)>>2];if(e>>>0>=I[k+80>>2]){break p}g=F[k+40>>2];ta(F[F[k>>2]>>2]+L(g,e)|0,b,g);a=a+1|0;e=F[c+16>>2];if(a>>>0<(F[c+20>>2]-e|0)/20>>>0){continue}break}}F[c+28>>2]=F[c+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((l|0)!=(m|0)){continue}break}}e=F[d+28>>2];if(e){continue}break}b=1}F[d+28>>2]=0;a=F[d+16>>2];e=F[d+12>>2];h=a-e|0;if(h>>>0>=9){while(1){ra(F[e>>2]);e=F[d+12>>2]+4|0;F[d+12>>2]=e;a=F[d+16>>2];h=a-e|0;if(h>>>0>8){continue}break}}g=170;r:{switch((h>>>2|0)-1|0){case 1:g=341;case 0:F[d+24>>2]=g;break;default:break r}}s:{if((a|0)==(e|0)){break s}while(1){ra(F[e>>2]);e=e+4|0;if((e|0)!=(a|0)){continue}break}a=F[d+16>>2];c=F[d+12>>2];if((a|0)==(c|0)){break s}F[d+16>>2]=a+((c-a|0)+3&-4)}a=F[d+8>>2];if(a){ra(a)}ea=d+32|0;break b}va();V()}va();V()}g=b}return g}function Ya(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:i=1;e:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break e}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=D[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(D[b|0])/M(127);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 1:i=1;f:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break f}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=G[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(G[b|0])/M(255);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 2:i=1;g:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break g}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=E[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(E[b>>1])/M(32767);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 3:i=1;h:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break h}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=H[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(H[b>>1])/M(65535);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 4:i=1;i:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break i}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=F[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(F[b>>2])*M(4.656612873077393e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 5:i=1;j:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break j}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=I[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(I[b>>2])*M(2.3283064365386963e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 6:i=1;k:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break k}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +F[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +F[b+4>>2]*4294967296)*M(10842021724855044e-35);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 7:i=1;l:{e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)<=0){break l}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+f|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +I[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +I[b+4>>2]*4294967296)*M(5.421010862427522e-20);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)>(e|0)?e:c)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 8:i=1;f=D[a+24|0];if((((c|0)>(f|0)?f:c)|0)>0){g=F[a>>2];f=F[g>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;g=F[g+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(e<<2)+d>>2]=J[b>>2];b=b+4|0;e=e+1|0;f=D[a+24|0];if((e|0)<(((c|0)>(f|0)?f:c)|0)){continue}break}}if((c|0)<=(f|0)){break b}c=c-f|0;a=(f<<2)+d|0;break c;case 9:i=1;f=D[a+24|0];if((((c|0)>(f|0)?f:c)|0)>0){g=F[a>>2];f=F[g>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;g=F[g+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(e<<2)+d>>2]=K[b>>3];b=b+8|0;e=e+1|0;f=D[a+24|0];if((e|0)<(((c|0)>(f|0)?f:c)|0)){continue}break}}if((c|0)<=(f|0)){break b}c=c-f|0;a=(f<<2)+d|0;break c;case 10:break d;default:break b}}i=1;f=D[a+24|0];if((((c|0)>(f|0)?f:c)|0)>0){g=F[a>>2];f=F[g>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;while(1){if(I[g+4>>2]<=b>>>0){break a}J[(e<<2)+d>>2]=G[b|0]?M(1):M(0);b=b+1|0;e=e+1|0;f=D[a+24|0];if((e|0)<(((c|0)>(f|0)?f:c)|0)){continue}break}}if((c|0)<=(f|0)){break b}c=c-f|0;a=(f<<2)+d|0}ua(a,0,c<<2)}return i}return 0}function Bj(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,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0;g=ea+-64|0;ea=g;F[a+8>>2]=e;x=a+32|0;f=F[x>>2];d=F[a+36>>2]-f>>2;a:{b:{if(d>>>0<e>>>0){Aa(x,e-d|0);F[g+56>>2]=0;F[g+60>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=f+(e<<2)}F[g+56>>2]=0;F[g+60>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g>>2]=0;d=0;if(!e){break a}}Ia(g+16|0,e,g);h=F[g+28>>2];d=F[g+32>>2]}F[g>>2]=0;d=d-h>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[g+32>>2]=(e<<2)+h;break c}Ia(g+16|12,e-d|0,g)}F[g>>2]=0;f=F[g+40>>2];d=F[g+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[g+44>>2]=f+(e<<2);break d}Ia(g+40|0,e-d|0,g)}F[g>>2]=0;f=F[g+52>>2];d=F[g+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[g+56>>2]=f+(e<<2);break e}Ia(g+52|0,e-d|0,g)}f:{if(F[a+8>>2]<=0){break f}i=F[g+16>>2];j=F[a+32>>2];h=0;while(1){d=h<<2;f=F[d+i>>2];n=F[a+16>>2];g:{if((f|0)>(n|0)){F[d+j>>2]=n;break g}d=d+j|0;n=F[a+12>>2];if((n|0)>(f|0)){F[d>>2]=n;break g}F[d>>2]=f}h=h+1|0;d=F[a+8>>2];if((h|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){i=d<<2;f=i+c|0;i=F[b+i>>2]+F[j+i>>2]|0;F[f>>2]=i;h:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break h}i=i+F[a+20>>2]|0}F[f>>2]=i}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}}G=F[a+52>>2];q=F[a+48>>2];y=sa(16);d=y;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;s=sa(d);F[g>>2]=s;F[g+8>>2]=d+s;ua(s,0,d)}d=F[a+56>>2];A=F[d>>2];d=F[d+4>>2]-A|0;j:{if((d|0)<5){break j}u=d>>2;H=(u|0)>2?u:2;I=u>>>0>1?u:1;B=e&-2;C=e&1;J=e&-4;D=e&3;z=e-1|0;K=e<<2;E=1;n=1;while(1){k:{l:{m:{n:{if((n|0)!=(I|0)){o:{p:{f=F[(n<<2)+A>>2];if((f|0)==-1){break p}k=1;d=f+2|0;j=(f>>>0)%3|0;v=j?f-1|0:d;o=1<<v;t=v>>>5|0;i=0;M=(j|0)!=0|(d|0)!=-1;N=F[q>>2];d=f;q:{while(1){r:{if(F[(d>>>3&536870908)+N>>2]>>>d&1){break r}j=F[F[F[q+64>>2]+12>>2]+(d<<2)>>2];if((j|0)==-1){break r}m=F[G>>2];h=F[q+28>>2];r=F[m+(F[h+(j<<2)>>2]<<2)>>2];if((r|0)>=(n|0)){break r}l=j+1|0;l=F[m+(F[h+(((l>>>0)%3|0?l:j-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(n|0)){break r}h=F[m+(F[h+(j+((j>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((h|0)>=(n|0)){break r}s:{if(!e){break s}j=F[(g+16|0)+L(i,12)>>2];m=L(e,h);l=L(e,l);r=L(e,r);h=0;w=0;if(z){while(1){F[j+(h<<2)>>2]=(F[(h+m<<2)+c>>2]+F[(h+l<<2)+c>>2]|0)-F[(h+r<<2)+c>>2];p=h|1;F[j+(p<<2)>>2]=(F[(m+p<<2)+c>>2]+F[(l+p<<2)+c>>2]|0)-F[(r+p<<2)+c>>2];h=h+2|0;w=w+2|0;if((B|0)!=(w|0)){continue}break}}if(!C){break s}F[j+(h<<2)>>2]=(F[(h+m<<2)+c>>2]+F[(h+l<<2)+c>>2]|0)-F[(h+r<<2)+c>>2]}j=4;i=i+1|0;if((i|0)==4){break q}}t:{if(k&1){h=d-2|0;j=d+1|0;d=-1;j=(j>>>0)%3|0?j:h;if((j|0)==-1|F[F[q>>2]+(j>>>3&536870908)>>2]>>>j&1){break t}j=F[F[F[q+64>>2]+12>>2]+(j<<2)>>2];if((j|0)==-1){break t}d=j+1|0;d=(d>>>0)%3|0?d:j-2|0;break t}u:{if((d>>>0)%3|0){h=d-1|0;break u}h=d+2|0;d=-1;if((h|0)==-1){break t}}d=-1;if(F[F[q>>2]+(h>>>3&536870908)>>2]>>>h&1){break t}j=F[F[F[q+64>>2]+12>>2]+(h<<2)>>2];if((j|0)==-1){break t}if((j>>>0)%3|0){d=j-1|0;break t}d=j+2|0}v:{if((d|0)==(f|0)){break v}if(!((k^1)&1|(d|0)!=-1)){if(!M|o&F[F[q>>2]+(t<<2)>>2]){break v}d=F[F[F[q+64>>2]+12>>2]+(v<<2)>>2];if((d|0)==-1){break v}k=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}j=i;if((j|0)<=0){break p}}if(e){ua(s,0,K)}d=j-1|0;r=(d<<2)+y|0;d=L(d,12)+a|0;v=d;w=F[d- -64>>2];k=0;d=F[g>>2];f=0;while(1){i=F[r>>2];F[r>>2]=i+1;if(i>>>0>=w>>>0){break j}w:{if(F[F[v+60>>2]+(i>>>3&536870908)>>2]>>>i&1){break w}f=f+1|0;if(!e){break w}m=F[(g+16|0)+L(k,12)>>2];i=0;h=0;p=0;if(z>>>0>=3){while(1){l=h<<2;o=l+d|0;F[o>>2]=F[o>>2]+F[m+l>>2];o=l|4;t=o+d|0;F[t>>2]=F[t>>2]+F[m+o>>2];o=l|8;t=o+d|0;F[t>>2]=F[t>>2]+F[m+o>>2];l=l|12;o=l+d|0;F[o>>2]=F[o>>2]+F[m+l>>2];h=h+4|0;p=p+4|0;if((J|0)!=(p|0)){continue}break}}if(!D){break w}while(1){l=h<<2;p=l+d|0;F[p>>2]=F[p>>2]+F[m+l>>2];h=h+1|0;i=i+1|0;if((D|0)!=(i|0)){continue}break}}k=k+1|0;if((k|0)!=(j|0)){continue}break}i=L(e,n);if(!f){break o}if(!e){break l}h=0;d=0;if(z){break n}break m}i=L(e,n)}if(F[a+8>>2]<=0){break k}k=(L(n-1|0,e)<<2)+c|0;j=F[x>>2];h=0;while(1){d=h<<2;f=F[d+k>>2];m=F[a+16>>2];x:{if((f|0)>(m|0)){F[d+j>>2]=m;break x}d=d+j|0;m=F[a+12>>2];if((m|0)>(f|0)){F[d>>2]=m;break x}F[d>>2]=f}h=h+1|0;f=F[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=i<<2;h=f+c|0;k=b+f|0;while(1){i=d<<2;f=i+h|0;i=F[i+k>>2]+F[j+i>>2]|0;F[f>>2]=i;y:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break y}i=i+F[a+20>>2]|0}F[f>>2]=i}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}break k}Ea();V()}while(1){j=h<<2;k=j+s|0;F[k>>2]=F[k>>2]/(f|0);j=(j|4)+s|0;F[j>>2]=F[j>>2]/(f|0);h=h+2|0;d=d+2|0;if((B|0)!=(d|0)){continue}break}}if(!C){break l}d=(h<<2)+s|0;F[d>>2]=F[d>>2]/(f|0)}if(F[a+8>>2]<=0){break k}j=F[x>>2];h=0;while(1){d=h<<2;f=F[d+s>>2];k=F[a+16>>2];z:{if((f|0)>(k|0)){F[d+j>>2]=k;break z}d=d+j|0;k=F[a+12>>2];if((k|0)>(f|0)){F[d>>2]=k;break z}F[d>>2]=f}h=h+1|0;f=F[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=i<<2;h=f+c|0;k=b+f|0;while(1){i=d<<2;f=i+h|0;i=F[i+k>>2]+F[j+i>>2]|0;F[f>>2]=i;A:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break A}i=i+F[a+20>>2]|0}F[f>>2]=i}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}}n=n+1|0;E=(u|0)>(n|0);if((n|0)!=(H|0)){continue}break}}a=F[g>>2];if(a){ra(a)}ra(y);a=F[g+52>>2];if(a){F[g+56>>2]=a;ra(a)}a=F[g+40>>2];if(a){F[g+44>>2]=a;ra(a)}a=F[g+28>>2];if(a){F[g+32>>2]=a;ra(a)}a=F[g+16>>2];if(a){F[g+20>>2]=a;ra(a)}ea=g- -64|0;return(E^-1)&1}va();V()}function Od(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;i=ea-80|0;ea=i;F[i+76>>2]=b;x=i+55|0;r=i+56|0;a:{b:{c:{d:{e:while(1){h=b;if((2147483647-o|0)<(f|0)){break d}o=f+o|0;f:{g:{h:{f=h;g=G[f|0];if(g){while(1){i:{b=g&255;j:{if(!b){b=f;break j}if((b|0)!=37){break i}g=f;while(1){if(G[g+1|0]!=37){b=g;break j}f=f+1|0;j=G[g+2|0];b=g+2|0;g=b;if((j|0)==37){continue}break}}f=f-h|0;w=2147483647-o|0;if((f|0)>(w|0)){break d}if(a){Cb(a,h,f)}if(f){continue e}F[i+76>>2]=b;f=b+1|0;p=-1;if(!(G[b+2|0]!=36|D[b+1|0]-48>>>0>=10)){p=D[b+1|0]-48|0;s=1;f=b+3|0}F[i+76>>2]=f;n=0;g=D[f|0];b=g-32|0;k:{if(b>>>0>31){k=f;break k}k=f;b=1<<b;if(!(b&75913)){break k}while(1){k=f+1|0;F[i+76>>2]=k;n=b|n;g=D[f+1|0];b=g-32|0;if(b>>>0>=32){break k}f=k;b=1<<b;if(b&75913){continue}break}}l:{if((g|0)==42){m:{if(!(G[k+2|0]!=36|D[k+1|0]-48>>>0>=10)){F[((D[k+1|0]<<2)+e|0)-192>>2]=10;g=k+3|0;s=1;b=F[((D[k+1|0]<<3)+d|0)-384>>2];break m}if(s){break h}g=k+1|0;if(!a){F[i+76>>2]=g;s=0;q=0;break l}b=F[c>>2];F[c>>2]=b+4;s=0;b=F[b>>2]}F[i+76>>2]=g;q=b;if((b|0)>=0){break l}q=0-q|0;n=n|8192;break l}q=Nd(i+76|0);if((q|0)<0){break d}g=F[i+76>>2]}f=0;m=-1;n:{if(G[g|0]!=46){b=g;u=0;break n}if(G[g+1|0]==42){o:{if(!(G[g+3|0]!=36|D[g+2|0]-48>>>0>=10)){F[((D[g+2|0]<<2)+e|0)-192>>2]=10;b=g+4|0;m=F[((D[g+2|0]<<3)+d|0)-384>>2];break o}if(s){break h}b=g+2|0;m=0;if(!a){break o}j=F[c>>2];F[c>>2]=j+4;m=F[j>>2]}F[i+76>>2]=b;u=(m^-1)>>>31|0;break n}F[i+76>>2]=g+1;m=Nd(i+76|0);b=F[i+76>>2];u=1}p:{while(1){l=f;g=b;f=D[g|0];if(f-123>>>0<4294967238){break p}b=g+1|0;f=G[(f+L(l,58)|0)+13711|0];if(f-1>>>0<8){continue}break}F[i+76>>2]=b;k=28;q:{r:{if((f|0)!=27){if(!f){break c}if((p|0)>=0){F[(p<<2)+e>>2]=f;j=(p<<3)+d|0;f=F[j+4>>2];F[i+64>>2]=F[j>>2];F[i+68>>2]=f;break r}if(!a){break f}Md(i- -64|0,f,c);break q}if((p|0)>=0){break c}}f=0;if(!a){continue e}}j=n&-65537;n=n&8192?j:n;p=0;t=1132;k=r;s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{f=D[g|0];f=l?(f&15)==3?f&-33:f:f;switch(f-88|0){case 11:break s;case 9:case 13:case 14:case 15:break t;case 27:break y;case 12:case 17:break B;case 23:break C;case 0:case 32:break D;case 24:break E;case 22:break F;case 29:break G;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 H}}I:{switch(f-65|0){case 0:case 4:case 5:case 6:break t;case 2:break w;case 1:case 3:break g;default:break I}}if((f|0)==83){break x}break g}l=F[i+64>>2];j=F[i+68>>2];t=1132;break A}f=0;J:{switch(l&255){case 0:F[F[i+64>>2]>>2]=o;continue e;case 1:F[F[i+64>>2]>>2]=o;continue e;case 2:h=F[i+64>>2];F[h>>2]=o;F[h+4>>2]=o>>31;continue e;case 3:E[F[i+64>>2]>>1]=o;continue e;case 4:D[F[i+64>>2]]=o;continue e;case 6:F[F[i+64>>2]>>2]=o;continue e;case 7:break J;default:continue e}}h=F[i+64>>2];F[h>>2]=o;F[h+4>>2]=o>>31;continue e}m=m>>>0>8?m:8;n=n|8;f=120}h=r;y=f&32;l=F[i+64>>2];j=F[i+68>>2];if(l|j){while(1){h=h-1|0;D[h|0]=y|G[(l&15)+14240|0];v=!j&l>>>0>15|(j|0)!=0;g=j;j=g>>>4|0;l=(g&15)<<28|l>>>4;if(v){continue}break}}if(!(F[i+64>>2]|F[i+68>>2])|!(n&8)){break z}t=(f>>>4|0)+1132|0;p=2;break z}f=r;h=F[i+68>>2];j=h;l=F[i+64>>2];if(h|l){while(1){f=f-1|0;D[f|0]=l&7|48;v=!j&l>>>0>7|(j|0)!=0;h=j;j=h>>>3|0;l=(h&7)<<29|l>>>3;if(v){continue}break}}h=f;if(!(n&8)){break z}f=r-h|0;m=(f|0)<(m|0)?m:f+1|0;break z}h=F[i+68>>2];j=h;l=F[i+64>>2];if((h|0)<0){j=0-(((l|0)!=0)+j|0)|0;l=0-l|0;F[i+64>>2]=l;F[i+68>>2]=j;p=1;t=1132;break A}if(n&2048){p=1;t=1133;break A}p=n&1;t=p?1134:1132}g=r;K:{if(!j){h=l;break K}while(1){g=g-1|0;h=Oj(l,j,10,0);f=fa;z=g,A=l-Mj(h,f,10,0)|48,D[z|0]=A;v=j>>>0>9;l=h;j=f;if(v){continue}break}}if(h){while(1){g=g-1|0;f=(h>>>0)/10|0;D[g|0]=h-L(f,10)|48;j=h>>>0>9;h=f;if(j){continue}break}}h=g}if((m|0)<0?u:0){break d}n=u?n&-65537:n;f=F[i+64>>2];j=F[i+68>>2];if(!(m|(f|j)!=0)){h=r;k=h;m=0;break g}f=!(f|j)+(r-h|0)|0;m=(f|0)<(m|0)?m:f;break g}l=m>>>0<2147483647?m:2147483647;k=l;n=(l|0)!=0;h=F[i+64>>2];h=h?h:1614;f=h;L:{M:{N:{O:{if(!(f&3)|!l){break O}while(1){if(!G[f|0]){break N}k=k-1|0;n=(k|0)!=0;f=f+1|0;if(!(f&3)){break O}if(k){continue}break}}if(!n){break M}}P:{if(!(!G[f|0]|k>>>0<4)){while(1){g=F[f>>2];if((g^-1)&g-16843009&-2139062144){break P}f=f+4|0;k=k-4|0;if(k>>>0>3){continue}break}}if(!k){break M}}while(1){if(!G[f|0]){break L}f=f+1|0;k=k-1|0;if(k){continue}break}}f=0}f=f?f-h|0:l;k=f+h|0;if((m|0)>=0){n=j;m=f;break g}n=j;m=f;if(G[k|0]){break d}break g}if(m){g=F[i+64>>2];break v}f=0;nb(a,32,q,0,n);break u}F[i+12>>2]=0;F[i+8>>2]=F[i+64>>2];g=i+8|0;F[i+64>>2]=g;m=-1}f=0;Q:{while(1){h=F[g>>2];if(!h){break Q}j=Ld(i+4|0,h);h=(j|0)<0;if(!(h|j>>>0>m-f>>>0)){g=g+4|0;f=f+j|0;if(m>>>0>f>>>0){continue}break Q}break}if(h){break b}}k=61;if((f|0)<0){break c}nb(a,32,q,f,n);if(!f){f=0;break u}k=0;g=F[i+64>>2];while(1){h=F[g>>2];if(!h){break u}h=Ld(i+4|0,h);k=h+k|0;if(k>>>0>f>>>0){break u}Cb(a,i+4|0,h);g=g+4|0;if(f>>>0>k>>>0){continue}break}}nb(a,32,q,f,n^8192);f=(f|0)<(q|0)?q:f;continue e}if((m|0)<0?u:0){break d}k=61;f=ga[0](a,K[i+64>>3],q,m,n,f)|0;if((f|0)>=0){continue e}break c}D[i+55|0]=F[i+64>>2];m=1;h=x;n=j;break g}F[i+76>>2]=g;break h}g=G[f+1|0];f=f+1|0;continue}}if(a){break a}if(!s){break f}f=1;while(1){a=F[(f<<2)+e>>2];if(a){Md((f<<3)+d|0,a,c);o=1;f=f+1|0;if((f|0)!=10){continue}break a}break}o=1;if(f>>>0>=10){break a}while(1){if(F[(f<<2)+e>>2]){break h}f=f+1|0;if((f|0)!=10){continue}break}break a}k=28;break c}g=k-h|0;j=(g|0)<(m|0)?m:g;if((j|0)>(2147483647-p|0)){break d}k=61;l=j+p|0;f=(l|0)<(q|0)?q:l;if((w|0)<(f|0)){break c}nb(a,32,f,l,n);Cb(a,t,p);nb(a,48,f,l,n^65536);nb(a,48,j,g,0);Cb(a,h,g);nb(a,32,f,l,n^8192);continue}break}o=0;break a}k=61}F[3984]=k}o=-1}ea=i+80|0;return o}function Zc(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,t=0,u=0,v=0;f=ea-32|0;ea=f;k=F[F[a+4>>2]+44>>2];d=F[a+8>>2];h=F[d>>2];d=F[d+4>>2];F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;e=(d-h>>2>>>0)/3|0;d=F[k+96>>2];g=(F[k+100>>2]-d|0)/12|0;a:{if(e>>>0>g>>>0){j=e-g|0;c=F[k+104>>2];h=F[k+100>>2];if(j>>>0<=(c-h|0)/12>>>0){b:{if(!j){break b}d=L(j,12);j=d;e=d-12|0;g=((e>>>0)/12|0)+1&3;c:{if(!g){d=h;break c}d=h;while(1){c=F[f+20>>2];F[d>>2]=F[f+16>>2];F[d+4>>2]=c;F[d+8>>2]=F[f+24>>2];d=d+12|0;i=i+1|0;if((g|0)!=(i|0)){continue}break}}h=h+j|0;if(e>>>0<36){break b}while(1){c=F[f+20>>2];F[d>>2]=F[f+16>>2];F[d+4>>2]=c;F[d+8>>2]=F[f+24>>2];F[d+20>>2]=F[f+24>>2];c=F[f+20>>2];F[d+12>>2]=F[f+16>>2];F[d+16>>2]=c;F[d+32>>2]=F[f+24>>2];c=F[f+20>>2];F[d+24>>2]=F[f+16>>2];F[d+28>>2]=c;c=F[f+20>>2];F[d+36>>2]=F[f+16>>2];F[d+40>>2]=c;F[d+44>>2]=F[f+24>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}F[k+100>>2]=h;break a}d:{d=F[k+96>>2];g=(h-d|0)/12|0;e=g+j|0;if(e>>>0<357913942){c=(c-d|0)/12|0;d=c<<1;l=c>>>0<178956970?d>>>0>e>>>0?d:e:357913941;if(l){if(l>>>0>=357913942){break d}o=sa(L(l,12))}c=L(g,12)+o|0;d=c;m=L(j,12);j=m-12|0;e=((j>>>0)/12|0)+1&3;if(e){d=c;while(1){g=F[f+20>>2];F[d>>2]=F[f+16>>2];F[d+4>>2]=g;F[d+8>>2]=F[f+24>>2];d=d+12|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}e=c+m|0;if(j>>>0>=36){while(1){g=F[f+20>>2];F[d>>2]=F[f+16>>2];F[d+4>>2]=g;F[d+8>>2]=F[f+24>>2];F[d+20>>2]=F[f+24>>2];g=F[f+20>>2];F[d+12>>2]=F[f+16>>2];F[d+16>>2]=g;F[d+32>>2]=F[f+24>>2];g=F[f+20>>2];F[d+24>>2]=F[f+16>>2];F[d+28>>2]=g;g=F[f+20>>2];F[d+36>>2]=F[f+16>>2];F[d+40>>2]=g;F[d+44>>2]=F[f+24>>2];d=d+48|0;if((e|0)!=(d|0)){continue}break}}g=F[k+96>>2];h=h-g|0;d=c+L((h|0)/-12|0,12)|0;if((h|0)>0){ta(d,g,h)}F[k+104>>2]=L(l,12)+o;F[k+100>>2]=e;F[k+96>>2]=d;if(g){ra(g)}break a}va();V()}za();V()}if(e>>>0>=g>>>0){break a}F[k+100>>2]=d+L(e,12)}e:{if(F[a+216>>2]==F[a+220>>2]){e=F[a+4>>2];h=F[e+44>>2];d=F[h+100>>2];m=F[h+96>>2];if((d|0)!=(m|0)){d=(d-m|0)/12|0;g=d>>>0>1?d:1;c=0;while(1){k=F[a+8>>2];h=m+L(c,12)|0;l=L(c,3);f:{g:{if((l|0)==-1){i=F[(F[k>>2]+(l<<2)|0)+4>>2];n=-1;d=1;break g}i=-1;n=F[F[k>>2]+(l<<2)>>2];d=l+1|0;if((d|0)==-1){d=0;break g}i=F[F[k>>2]+(d<<2)>>2];d=l+2|0;j=-1;if((d|0)==-1){break f}}j=F[F[k>>2]+(d<<2)>>2]}F[h+8>>2]=j;F[h+4>>2]=i;F[h>>2]=n;c=c+1|0;if((g|0)!=(c|0)){continue}break}}F[F[e+4>>2]+80>>2]=b;c=1;break e}h=0;F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;o=F[a+8>>2];c=F[o>>2];d=F[o+4>>2];F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;b=0;h:{i:{j:{k:{l:{m:{if((d|0)!=(c|0)){d=d-c|0;if((d|0)<0){break m}b=sa(d);F[f>>2]=b;F[f+8>>2]=(d>>2<<2)+b;u=f,v=ua(b,0,d)+d|0,F[u+4>>2]=v}c=F[o+24>>2];if((F[o+28>>2]-c|0)<=0){break i}d=0;while(1){g=F[(q<<2)+c>>2];n:{if((g|0)==-1){break n}o:{if(F[F[a+120>>2]+(q>>>3&536870908)>>2]>>>q&1){break o}s=F[a+216>>2];c=F[a+220>>2];if((s|0)==(c|0)){break o}i=g+2|0;e=(g>>>0)%3|0;t=e?g-1|0:i;c=(c-s|0)/144|0;k=c>>>0>1?c:1;r=0;l=(e|0)!=0|(i|0)!=-1;while(1){e=g<<2;i=L(r,144)+s|0;c=F[e+F[F[i+68>>2]>>2]>>2];p:{if(!(F[F[i+16>>2]+(c>>>3&536870908)>>2]>>>c&1)){break p}c=-1;q:{if(!l){break q}j=F[F[o+12>>2]+(t<<2)>>2];c=-1;if((j|0)==-1){break q}c=j-1|0;if((j>>>0)%3|0){break q}c=j+2|0}if((g|0)==(c|0)){break p}m=F[i+32>>2];j=F[m+e>>2];while(1){i=0;if((c|0)==-1){break h}if((j|0)!=F[m+(c<<2)>>2]){g=c;break o}r:{s:{if((c>>>0)%3|0){i=c-1|0;break s}i=c+2|0;e=-1;if((i|0)==-1){break r}}c=F[F[o+12>>2]+(i<<2)>>2];e=-1;if((c|0)==-1){break r}e=c-1|0;if((c>>>0)%3|0){break r}e=c+2|0}c=e;if((g|0)!=(c|0)){continue}break}}r=r+1|0;if((k|0)!=(r|0)){continue}break}}j=n-d|0;i=j>>2;F[(g<<2)+b>>2]=i;t:{if(n>>>0<p>>>0){F[n>>2]=g;n=n+4|0;F[f+20>>2]=n;break t}e=i+1|0;if(e>>>0>=1073741824){break l}c=p-d|0;h=c>>1;e=c>>>0<2147483644?e>>>0<h>>>0?h:e:1073741823;if(e){if(e>>>0>=1073741824){break k}h=sa(e<<2)}else{h=0}c=h+(i<<2)|0;F[c>>2]=g;p=(e<<2)+h|0;n=c+4|0;if((j|0)>0){ta(h,d,j)}F[f+24>>2]=p;F[f+20>>2]=n;F[f+16>>2]=h;if(d){ra(d);o=F[a+8>>2]}d=h}if((g|0)==-1){break n}u:{if((g>>>0)%3|0){c=g-1|0;break u}c=g+2|0;if((c|0)==-1){break n}}c=F[F[o+12>>2]+(c<<2)>>2];if((c|0)==-1){break n}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break n}i=g;if((g|0)==(c|0)){break n}while(1){e=c;v:{w:{c=F[a+220>>2];k=F[a+216>>2];if((c|0)==(k|0)){break w}c=(c-k|0)/144|0;l=c>>>0>1?c:1;c=0;while(1){m=F[(k+L(c,144)|0)+32>>2];j=e<<2;if(F[m+j>>2]==F[m+(i<<2)>>2]){c=c+1|0;if((l|0)!=(c|0)){continue}break w}break}d=b+j|0;m=n-h|0;j=m>>2;F[d>>2]=j;if(n>>>0<p>>>0){F[n>>2]=e;n=n+4|0;F[f+20>>2]=n;d=h;break v}i=j+1|0;if(i>>>0>=1073741824){break j}c=p-h|0;d=c>>1;i=c>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(i){if(i>>>0>=1073741824){break k}d=sa(i<<2)}else{d=0}c=d+(j<<2)|0;F[c>>2]=e;p=(i<<2)+d|0;n=c+4|0;if((m|0)>0){ta(d,h,m)}F[f+24>>2]=p;F[f+20>>2]=n;F[f+16>>2]=d;if(!h){h=d;break v}ra(h);o=F[a+8>>2];h=d;break v}F[(e<<2)+b>>2]=F[(i<<2)+b>>2]}if((e|0)==-1){break n}x:{if((e>>>0)%3|0){c=e-1|0;break x}c=e+2|0;if((c|0)==-1){break n}}c=F[F[o+12>>2]+(c<<2)>>2];if((c|0)==-1){break n}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break n}i=e;if((c|0)!=(g|0)){continue}break}}q=q+1|0;c=F[o+24>>2];if((q|0)<F[o+28>>2]-c>>2){continue}break}break i}va();V()}va();V()}za();V()}va();V()}m=F[a+4>>2];d=F[m+44>>2];a=F[d+100>>2];k=F[d+96>>2];y:{if((a|0)==(k|0)){break y}d=(a-k|0)/12|0;a=d>>>0>1?d:1;j=a&1;c=0;if(d>>>0>=2){i=a&-2;d=0;while(1){e=L(c,12);l=e+b|0;g=F[l+4>>2];a=F[l>>2];e=e+k|0;F[e+8>>2]=F[l+8>>2];F[e>>2]=a;F[e+4>>2]=g;e=L(c|1,12);l=e+b|0;g=F[l+4>>2];a=F[l>>2];e=e+k|0;F[e+8>>2]=F[l+8>>2];F[e>>2]=a;F[e+4>>2]=g;c=c+2|0;d=d+2|0;if((i|0)!=(d|0)){continue}break}}if(!j){break y}c=L(c,12);g=c+b|0;d=F[g+4>>2];a=F[g>>2];c=c+k|0;F[c+8>>2]=F[g+8>>2];F[c>>2]=a;F[c+4>>2]=d}F[F[m+4>>2]+80>>2]=n-h>>2;i=1}c=i;if(b){ra(b)}if(!h){break e}F[f+20>>2]=h;ra(h)}ea=f+32|0;return c}function lj(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,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0,K=0;h=ea+-64|0;ea=h;F[a+8>>2]=e;w=a+32|0;f=F[w>>2];d=F[a+36>>2]-f>>2;a:{b:{if(d>>>0<e>>>0){Aa(w,e-d|0);F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=f+(e<<2)}F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;d=0;if(!e){break a}}Ia(h+16|0,e,h);i=F[h+28>>2];d=F[h+32>>2]}F[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[h+32>>2]=(e<<2)+i;break c}Ia(h+16|12,e-d|0,h)}F[h>>2]=0;f=F[h+40>>2];d=F[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[h+44>>2]=f+(e<<2);break d}Ia(h+40|0,e-d|0,h)}F[h>>2]=0;f=F[h+52>>2];d=F[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[h+56>>2]=f+(e<<2);break e}Ia(h+52|0,e-d|0,h)}f:{if(F[a+8>>2]<=0){break f}g=F[h+16>>2];j=F[a+32>>2];i=0;while(1){d=i<<2;f=F[d+g>>2];m=F[a+16>>2];g:{if((f|0)>(m|0)){F[d+j>>2]=m;break g}d=d+j|0;m=F[a+12>>2];if((m|0)>(f|0)){F[d>>2]=m;break g}F[d>>2]=f}i=i+1|0;d=F[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=F[b+g>>2]+F[g+j>>2]|0;F[f>>2]=g;h:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break h}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}}G=F[a+52>>2];z=F[a+48>>2];x=sa(16);d=x;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;t=sa(d);F[h>>2]=t;F[h+8>>2]=d+t;ua(t,0,d)}d=F[a+56>>2];A=F[d>>2];d=F[d+4>>2]-A|0;j:{if((d|0)<5){break j}v=d>>2;H=(v|0)>2?v:2;I=v>>>0>1?v:1;B=e&-2;C=e&1;J=e&-4;D=e&3;y=e-1|0;K=e<<2;E=1;m=1;while(1){k:{l:{m:{n:{if((m|0)!=(I|0)){o:{p:{f=F[(m<<2)+A>>2];if((f|0)==-1){break p}n=F[z+12>>2];d=f+2|0;g=(f>>>0)%3|0;q=n+((g?f-1|0:d)<<2)|0;j=0;u=(g|0)!=0|(d|0)!=-1;k=1;d=f;q:{while(1){g=F[n+(d<<2)>>2];r:{if((g|0)==-1){break r}l=-1;p=F[G>>2];r=F[z>>2];i=p+(F[r+(g<<2)>>2]<<2)|0;o=g+1|0;o=(o>>>0)%3|0?o:g-2|0;if((o|0)!=-1){l=F[r+(o<<2)>>2]}o=F[i>>2];s:{t:{if((g>>>0)%3|0){i=g-1|0;break t}i=g+2|0;s=-1;if((i|0)==-1){break s}}s=F[r+(i<<2)>>2]}if((m|0)<=(o|0)){break r}i=F[p+(l<<2)>>2];if((i|0)>=(m|0)){break r}l=F[p+(s<<2)>>2];if((l|0)>=(m|0)){break r}g=F[(h+16|0)+L(j,12)>>2];u:{if(!e){break u}l=L(e,l);r=L(e,i);p=L(e,o);i=0;s=0;if(y){while(1){F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+r<<2)+c>>2]|0)-F[(i+p<<2)+c>>2];o=i|1;F[g+(o<<2)>>2]=(F[(l+o<<2)+c>>2]+F[(o+r<<2)+c>>2]|0)-F[(o+p<<2)+c>>2];i=i+2|0;s=s+2|0;if((B|0)!=(s|0)){continue}break}}if(!C){break u}F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+r<<2)+c>>2]|0)-F[(i+p<<2)+c>>2]}g=4;j=j+1|0;if((j|0)==4){break q}}v:{if(k&1){i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;g=-1;if((d|0)==-1){break v}d=F[n+(d<<2)>>2];g=-1;if((d|0)==-1){break v}g=d+1|0;g=(g>>>0)%3|0?g:d-2|0;break v}w:{if((d>>>0)%3|0){i=d-1|0;break w}i=d+2|0;g=-1;if((i|0)==-1){break v}}d=F[n+(i<<2)>>2];g=-1;if((d|0)==-1){break v}g=d-1|0;if((d>>>0)%3|0){break v}g=d+2|0}d=g;x:{if((f|0)==(d|0)){break x}if(!((k^1)&1|(d|0)!=-1)){if(!u){break x}d=F[q>>2];if((d|0)==-1){break x}k=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=j;if((g|0)<=0){break p}}if(e){ua(t,0,K)}d=g-1|0;r=(d<<2)+x|0;d=L(d,12)+a|0;o=d;s=F[d- -64>>2];k=0;d=F[h>>2];f=0;while(1){j=F[r>>2];F[r>>2]=j+1;if(j>>>0>=s>>>0){break j}y:{if(F[F[o+60>>2]+(j>>>3&536870908)>>2]>>>j&1){break y}f=f+1|0;if(!e){break y}j=F[(h+16|0)+L(k,12)>>2];l=0;i=0;p=0;if(y>>>0>=3){while(1){n=i<<2;q=n+d|0;F[q>>2]=F[q>>2]+F[j+n>>2];q=n|4;u=q+d|0;F[u>>2]=F[u>>2]+F[j+q>>2];q=n|8;u=q+d|0;F[u>>2]=F[u>>2]+F[j+q>>2];n=n|12;q=n+d|0;F[q>>2]=F[q>>2]+F[j+n>>2];i=i+4|0;p=p+4|0;if((J|0)!=(p|0)){continue}break}}if(!D){break y}while(1){n=i<<2;p=n+d|0;F[p>>2]=F[p>>2]+F[j+n>>2];i=i+1|0;l=l+1|0;if((D|0)!=(l|0)){continue}break}}k=k+1|0;if((k|0)!=(g|0)){continue}break}g=L(e,m);if(!f){break o}if(!e){break l}i=0;d=0;if(y){break n}break m}g=L(e,m)}if(F[a+8>>2]<=0){break k}k=(L(m-1|0,e)<<2)+c|0;j=F[w>>2];i=0;while(1){d=i<<2;f=F[d+k>>2];l=F[a+16>>2];z:{if((f|0)>(l|0)){F[d+j>>2]=l;break z}d=d+j|0;l=F[a+12>>2];if((l|0)>(f|0)){F[d>>2]=l;break z}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=g<<2;i=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+k>>2]+F[g+j>>2]|0;F[f>>2]=g;A:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break A}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}break k}Ea();V()}while(1){j=i<<2;k=j+t|0;F[k>>2]=F[k>>2]/(f|0);j=(j|4)+t|0;F[j>>2]=F[j>>2]/(f|0);i=i+2|0;d=d+2|0;if((B|0)!=(d|0)){continue}break}}if(!C){break l}d=(i<<2)+t|0;F[d>>2]=F[d>>2]/(f|0)}if(F[a+8>>2]<=0){break k}j=F[w>>2];i=0;while(1){d=i<<2;f=F[d+t>>2];k=F[a+16>>2];B:{if((f|0)>(k|0)){F[d+j>>2]=k;break B}d=d+j|0;k=F[a+12>>2];if((k|0)>(f|0)){F[d>>2]=k;break B}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=g<<2;i=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+k>>2]+F[g+j>>2]|0;F[f>>2]=g;C:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break C}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}}m=m+1|0;E=(v|0)>(m|0);if((m|0)!=(H|0)){continue}break}}a=F[h>>2];if(a){ra(a)}ra(x);a=F[h+52>>2];if(a){F[h+56>>2]=a;ra(a)}a=F[h+40>>2];if(a){F[h+44>>2]=a;ra(a)}a=F[h+28>>2];if(a){F[h+32>>2]=a;ra(a)}a=F[h+16>>2];if(a){F[h+20>>2]=a;ra(a)}ea=h- -64|0;return(E^-1)&1}va();V()}function cb(a,b){var c=0,d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=a+16|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;c=d+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+32|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+48|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d- -64|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+80|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+96|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+112|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+128|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+144|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+160|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+176|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+192|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+208|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+224|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+240|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+256|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+272|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+288|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+304|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+320|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+336|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+352|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+368|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+384|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+400|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+416|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+432|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+448|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+464|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+480|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;d=d+496|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;F[a+528>>2]=0;F[a+532>>2]=0;D[a+533|0]=0;D[a+534|0]=0;D[a+535|0]=0;D[a+536|0]=0;D[a+537|0]=0;D[a+538|0]=0;D[a+539|0]=0;D[a+540|0]=0;F[a+544>>2]=0;F[a+548>>2]=0;F[a+560>>2]=0;F[a+552>>2]=0;F[a+556>>2]=0;F[a+564>>2]=0;F[a+568>>2]=0;F[a+580>>2]=0;F[a+572>>2]=0;F[a+576>>2]=0;F[a+584>>2]=0;F[a+588>>2]=0;F[a+600>>2]=0;F[a+592>>2]=0;F[a+596>>2]=0;F[a+612>>2]=0;F[a+604>>2]=0;F[a+608>>2]=0;g=a+628|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+616>>2]=0;F[a+620>>2]=0;F[a+624>>2]=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;d=1;break a}d=b<<2;c=sa(d);F[a+604>>2]=c;f=c+d|0;F[a+612>>2]=f;ua(c,0,d);F[a+624>>2]=0;F[a+616>>2]=0;F[a+620>>2]=0;F[a+608>>2]=f;c=sa(d);F[a+616>>2]=c;f=c+d|0;F[a+624>>2]=f;ua(c,0,d);F[a+620>>2]=f;c=sa(d);F[e>>2]=c;f=c+d|0;F[e+8>>2]=f;ua(c,0,d);F[e+4>>2]=f;d=b<<5|1}wb(g,d,e);c=F[e>>2];if(c){F[e+4>>2]=c;ra(c)}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){b=b<<2;c=sa(b);F[e>>2]=c;f=b+c|0;F[e+8>>2]=f;ua(c,0,b);F[e+4>>2]=f}wb(a+640|0,d,e);b=F[e>>2];if(b){F[e+4>>2]=b;ra(b)}ea=e+16|0;return a}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;j=a;a:{b:{c:{d:{e:{f:{g:{h:{a=F[a+8>>2];switch(F[a+28>>2]-1|0){case 4:break c;case 5:break d;case 2:break e;case 3:break f;case 0:break g;case 1:break h;default:break a}}e=D[a+24|0];c=sa((e|0)>=0?e:-1);a=F[j+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}a=0;if((e|0)<=0){if((b|0)!=1){h=b&-2;while(1){ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,e);a=a+e|0;ta(a+F[F[F[j+8>>2]+64>>2]>>2]|0,c,e);a=a+e|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break b}ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,e);break b}o=e&-4;l=e&3;g=e-1>>>0<3;while(1){a=0;f=0;if(!g){while(1){k=h+(d<<2)|0;D[a+c|0]=F[k>>2];D[(a|1)+c|0]=F[k+4>>2];D[(a|2)+c|0]=F[k+8>>2];D[(a|3)+c|0]=F[k+12>>2];a=a+4|0;d=d+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=0;if(l){while(1){D[a+c|0]=F[h+(d<<2)>>2];a=a+1|0;d=d+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}ta(F[F[F[j+8>>2]+64>>2]>>2]+m|0,c,e);m=e+m|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}e=D[a+24|0];c=sa((e|0)>=0?e:-1);a=F[j+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}a=0;if((e|0)<=0){if((b|0)!=1){h=b&-2;while(1){ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,e);a=a+e|0;ta(a+F[F[F[j+8>>2]+64>>2]>>2]|0,c,e);a=a+e|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break b}ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,e);break b}o=e&-4;l=e&3;g=e-1>>>0<3;while(1){a=0;f=0;if(!g){while(1){k=h+(d<<2)|0;D[a+c|0]=F[k>>2];D[(a|1)+c|0]=F[k+4>>2];D[(a|2)+c|0]=F[k+8>>2];D[(a|3)+c|0]=F[k+12>>2];a=a+4|0;d=d+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=0;if(l){while(1){D[a+c|0]=F[h+(d<<2)>>2];a=a+1|0;d=d+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}ta(F[F[F[j+8>>2]+64>>2]>>2]+m|0,c,e);m=e+m|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}g=D[a+24|0];a=g+g|0;c=sa(a>>>0<g>>>0?-1:a);a=F[j+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}i=g<<1;a=0;if((g|0)<=0){if((b|0)!=1){h=b&-2;while(1){ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);a=a+i|0;ta(a+F[F[F[j+8>>2]+64>>2]>>2]|0,c,i);a=a+i|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break b}ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);break b}o=g&-4;l=g&3;g=g-1>>>0<3;while(1){a=0;f=0;if(!g){while(1){e=a<<1;k=h+(d<<2)|0;E[e+c>>1]=F[k>>2];E[(e|2)+c>>1]=F[k+4>>2];E[(e|4)+c>>1]=F[k+8>>2];E[(e|6)+c>>1]=F[k+12>>2];a=a+4|0;d=d+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=0;if(l){while(1){E[(a<<1)+c>>1]=F[h+(d<<2)>>2];a=a+1|0;d=d+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}ta(F[F[F[j+8>>2]+64>>2]>>2]+n|0,c,i);n=i+n|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}break b}g=D[a+24|0];a=g+g|0;c=sa(a>>>0<g>>>0?-1:a);a=F[j+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}i=g<<1;a=0;if((g|0)<=0){if((b|0)!=1){h=b&-2;while(1){ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);a=a+i|0;ta(a+F[F[F[j+8>>2]+64>>2]>>2]|0,c,i);a=a+i|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break b}ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);break b}o=g&-4;l=g&3;g=g-1>>>0<3;while(1){a=0;f=0;if(!g){while(1){e=a<<1;k=h+(d<<2)|0;E[e+c>>1]=F[k>>2];E[(e|2)+c>>1]=F[k+4>>2];E[(e|4)+c>>1]=F[k+8>>2];E[(e|6)+c>>1]=F[k+12>>2];a=a+4|0;d=d+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=0;if(l){while(1){E[(a<<1)+c>>1]=F[h+(d<<2)>>2];a=a+1|0;d=d+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}ta(F[F[F[j+8>>2]+64>>2]>>2]+n|0,c,i);n=i+n|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}break b}g=D[a+24|0];i=g<<2;c=sa((g|0)!=(g&1073741823)?-1:i);a=F[j+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}a=0;if((g|0)<=0){if((b|0)!=1){h=b&-2;while(1){ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);a=a+i|0;ta(a+F[F[F[j+8>>2]+64>>2]>>2]|0,c,i);a=a+i|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break b}ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);break b}o=g&-4;l=g&3;g=g-1>>>0<3;while(1){a=0;f=0;if(!g){while(1){e=a<<2;k=h+(d<<2)|0;F[e+c>>2]=F[k>>2];F[(e|4)+c>>2]=F[k+4>>2];F[(e|8)+c>>2]=F[k+8>>2];F[(e|12)+c>>2]=F[k+12>>2];a=a+4|0;d=d+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=0;if(l){while(1){F[(a<<2)+c>>2]=F[h+(d<<2)>>2];a=a+1|0;d=d+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}ta(F[F[F[j+8>>2]+64>>2]>>2]+n|0,c,i);n=i+n|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}break b}g=D[a+24|0];i=g<<2;c=sa((g|0)!=(g&1073741823)?-1:i);a=F[j+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}a=0;if((g|0)<=0){if((b|0)!=1){h=b&-2;while(1){ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);a=a+i|0;ta(a+F[F[F[j+8>>2]+64>>2]>>2]|0,c,i);a=a+i|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break b}ta(F[F[F[j+8>>2]+64>>2]>>2]+a|0,c,i);break b}o=g&-4;l=g&3;g=g-1>>>0<3;while(1){a=0;f=0;if(!g){while(1){e=a<<2;k=h+(d<<2)|0;F[e+c>>2]=F[k>>2];F[(e|4)+c>>2]=F[k+4>>2];F[(e|8)+c>>2]=F[k+8>>2];F[(e|12)+c>>2]=F[k+12>>2];a=a+4|0;d=d+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=0;if(l){while(1){F[(a<<2)+c>>2]=F[h+(d<<2)>>2];a=a+1|0;d=d+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}ta(F[F[F[j+8>>2]+64>>2]>>2]+n|0,c,i);n=i+n|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}}ra(c);c=1}return c|0}function fj(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,B=0,C=0,E=0,H=0,I=0,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;a:{if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;H=a+32|0;e=F[H>>2];d=F[a+36>>2]-e|0;b:{if(d>>>0<=7){Aa(H,2-(d>>>2|0)|0);break b}if((d|0)==8){break b}F[a+36>>2]=e+8}d=F[a+56>>2];d=F[d+4>>2]-F[d>>2]|0;c:{if((d|0)<=0){f=0;break c}n=a+60|0;I=d>>2;S=(I|0)>1?I:1;T=a+68|0;f=1;while(1){e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=r>>>0){break a}k=ea-80|0;ea=k;e=-1;d:{e:{i=F[d+(r<<2)>>2];if((i|0)==-1){break e}h=F[n+32>>2];d=i+1|0;d=(d>>>0)%3|0?d:i-2|0;if((d|0)!=-1){e=F[F[h>>2]+(d<<2)>>2]}d=-1;i=i+((i>>>0)%3|0?-1:2)|0;if((i|0)!=-1){d=F[F[h>>2]+(i<<2)>>2]}h=F[n+36>>2];i=F[h>>2];h=F[h+4>>2]-i>>2;if(h>>>0<=e>>>0|d>>>0>=h>>>0){break e}h=F[i+(e<<2)>>2];f:{g:{h:{i:{j:{k:{i=F[i+(d<<2)>>2];if((i|0)>=(r|0)|(h|0)>=(r|0)){break k}d=(i<<3)+c|0;v=F[d+4>>2];e=(h<<3)+c|0;w=F[e+4>>2];x=F[d>>2];B=F[e>>2];if(!((x|0)!=(B|0)|(v|0)!=(w|0))){F[n+8>>2]=B;F[n+12>>2]=w;break j}d=F[F[n+4>>2]+(r<<2)>>2];F[k+72>>2]=0;F[k+76>>2]=0;e=k- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[k+56>>2]=0;F[k+60>>2]=0;e=F[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Va(e,d,D[e+24|0],k+56|0);d=F[F[n+4>>2]+(h<<2)>>2];F[k+48>>2]=0;F[k+52>>2]=0;F[k+40>>2]=0;F[k+44>>2]=0;F[k+32>>2]=0;F[k+36>>2]=0;e=F[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Va(e,d,D[e+24|0],k+32|0);e=F[F[n+4>>2]+(i<<2)>>2];F[k+24>>2]=0;F[k+28>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;d=F[n>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}Va(d,e,D[d+24|0],k+8|0);J=F[k+44>>2];d=F[k+16>>2];s=F[k+40>>2];e=s;i=F[k+20>>2]-(J+(d>>>0<e>>>0)|0)|0;l=d-e|0;d=Mj(l,i,l,i);g=fa;m=d;K=F[k+36>>2];d=F[k+8>>2];C=F[k+32>>2];e=C;j=F[k+12>>2]-(K+(d>>>0<e>>>0)|0)|0;e=d-e|0;o=Mj(e,j,e,j);m=m+o|0;d=fa+g|0;d=m>>>0<o>>>0?d+1|0:d;q=m;L=F[k+52>>2];g=F[k+24>>2];E=F[k+48>>2];o=E;m=F[k+28>>2]-(L+(g>>>0<o>>>0)|0)|0;u=g-o|0;p=Mj(u,m,u,m);o=q+p|0;g=fa+d|0;t=o;o=o>>>0<p>>>0?g+1|0:g;if(!(t|o)){break k}M=F[k+64>>2];d=M;N=F[k+68>>2];d=Mj(d-s|0,N-((d>>>0<s>>>0)+J|0)|0,l,i);h=fa;g=d;O=F[k+56>>2];d=O;P=F[k+60>>2];p=Mj(d-C|0,P-((d>>>0<C>>>0)+K|0)|0,e,j);d=g+p|0;g=fa+h|0;g=d>>>0<p>>>0?g+1|0:g;h=d;Q=F[k+72>>2];d=Q;R=F[k+76>>2];p=Mj(d-E|0,R-((d>>>0<E>>>0)+L|0)|0,u,m);h=h+p|0;d=fa+g|0;y=h;p=h>>>0<p>>>0?d+1|0:d;d=j>>31;h=d;g=e^d;d=(j^d)-((d>>>0>g>>>0)+d|0)|0;g=g-h|0;q=g;h=i>>31;z=h^l;A=z-h|0;h=(i^h)-((h>>>0>z>>>0)+h|0)|0;g=(d|0)==(h|0)&g>>>0>A>>>0|d>>>0>h>>>0;z=g?q:A;d=g?d:h;h=d;d=m>>31;g=d;A=d^u;d=A-d|0;g=(m^g)-((g>>>0>A>>>0)+g|0)|0;q=(h|0)==(g|0)&d>>>0<z>>>0|h>>>0>g>>>0;g=Oj(-1,2147483647,q?z:d,q?h:g)>>>0<y>>>0;h=fa;d=0;if(g&(h|0)<=(p|0)|(h|0)<(p|0)){break f}h=1;d=0;g=M;q=s;s=Nj(Mj(l,i,y,p),fa,t,o);i=q+s|0;l=fa+J|0;l=i>>>0<s>>>0?l+1|0:l;l=N-((i>>>0>g>>>0)+l|0)|0;i=g-i|0;i=Mj(i,l,i,l);l=fa;g=O;q=i;j=Nj(Mj(e,j,y,p),fa,t,o);e=j+C|0;i=fa+K|0;i=e>>>0<j>>>0?i+1|0:i;i=P-((e>>>0>g>>>0)+i|0)|0;e=g-e|0;j=Mj(e,i,e,i);i=q+j|0;e=fa+l|0;e=i>>>0<j>>>0?e+1|0:e;j=i;i=e;e=Q;g=j;m=Nj(Mj(u,m,y,p),fa,t,o);j=m+E|0;l=fa+L|0;l=j>>>0<m>>>0?l+1|0:l;m=R-((e>>>0<j>>>0)+l|0)|0;e=e-j|0;j=Mj(e,m,e,m);e=g+j|0;i=fa+i|0;j=Mj(e,e>>>0<j>>>0?i+1|0:i,t,o);e=fa;m=e;if(!e&j>>>0<=1){break i}g=j;e=m;while(1){i=d<<1|h>>>31;h=h<<1;d=i;l=!e&g>>>0>7|(e|0)!=0;g=(e&3)<<30|g>>>2;e=e>>>2|0;if(l){continue}break}break h}if((h|0)<(r|0)){d=h<<1}else{if((r|0)<=0){F[n+8>>2]=0;F[n+12>>2]=0;break j}d=(r<<1)-2|0}d=(d<<2)+c|0;F[n+8>>2]=F[d>>2];F[n+12>>2]=F[d+4>>2]}d=1;break f}d=m;h=j;if(h-1|0){break g}}while(1){e=Oj(j,m,h,d)+h|0;g=d+fa|0;g=e>>>0<h>>>0?g+1|0:g;h=(g&1)<<31|e>>>1;d=g>>>1|0;e=Mj(h,d,h,d);i=fa;if((m|0)==(i|0)&e>>>0>j>>>0|i>>>0>m>>>0){continue}break}}i=F[n+20>>2];if(i){e=i-1|0;m=F[F[n+16>>2]+(e>>>3&536870908)>>2];F[n+20>>2]=e;j=w;u=v-j|0;g=j>>31;v=(v>>31)-(g+(j>>>0>v>>>0)|0)|0;j=Mj(y,p,u,v);l=fa;g=Mj(w,g,t,o);j=g+j|0;l=fa+l|0;l=j>>>0<g>>>0?l+1|0:l;q=j;j=B;w=x-j|0;s=j>>31;x=(x>>31)-(s+(j>>>0>x>>>0)|0)|0;j=Mj(h,d,w,x);g=j;e=m>>>e&1;m=e?0-j|0:j;j=q+m|0;q=l;l=fa;g=q+(e?0-(l+((g|0)!=0)|0)|0:l)|0;U=n,W=Nj(j,j>>>0<m>>>0?g+1|0:g,t,o),F[U+12>>2]=W;j=Mj(w,x,y,p);m=fa;g=Mj(t,o,B,s);j=g+j|0;l=fa+m|0;l=j>>>0<g>>>0?l+1|0:l;g=j;d=Mj(h,d,u,v);j=e?d:0-d|0;h=g+j|0;m=fa;e=(e?m:0-(((d|0)!=0)+m|0)|0)+l|0;U=n,W=Nj(h,h>>>0<j>>>0?e+1|0:e,t,o),F[U+8>>2]=W}d=(i|0)!=0}ea=k+80|0;break d}Ea();V()}if(!d){break c}l:{if(F[a+8>>2]<=0){break l}i=F[H>>2];d=0;while(1){e=d<<2;f=F[e+T>>2];h=F[a+16>>2];m:{if((f|0)>(h|0)){F[e+i>>2]=h;break m}e=e+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[e>>2]=h;break m}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break l}d=r<<3;h=d+c|0;j=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+j>>2]+F[f+i>>2]|0;F[d>>2]=f;n:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break n}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)<F[a+8>>2]){continue}break}}r=r+1|0;f=(I|0)>(r|0);if((r|0)!=(S|0)){continue}break}}a=f^1}else{a=0}return a&1}Ea();V()}function uj(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,B=0,C=0,E=0,H=0,I=0,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;a:{if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;I=a+32|0;e=F[I>>2];d=F[a+36>>2]-e|0;b:{if(d>>>0<=7){Aa(I,2-(d>>>2|0)|0);break b}if((d|0)==8){break b}F[a+36>>2]=e+8}d=F[a+56>>2];d=F[d+4>>2]-F[d>>2]|0;c:{if((d|0)<=0){f=0;break c}n=a+60|0;J=d>>2;S=(J|0)>1?J:1;T=a+68|0;f=1;while(1){d=F[a+56>>2];i=F[d>>2];if(F[d+4>>2]-i>>2>>>0<=q>>>0){break a}k=ea-80|0;ea=k;e=-1;i=F[i+(q<<2)>>2];d=-1;d:{if((i|0)==-1){break d}d=i+1|0;e=(d>>>0)%3|0?d:i-2|0;d=i-1|0;if((i>>>0)%3|0){break d}d=i+2|0}g=F[n+36>>2];i=F[g>>2];e:{f:{g:{h:{i:{g=F[g+4>>2]-i>>2;j=e<<2;e=F[F[n+32>>2]+28>>2];j=F[j+e>>2];if(g>>>0<=j>>>0){break i}d=F[e+(d<<2)>>2];if(d>>>0>=g>>>0){break i}g=F[i+(j<<2)>>2];j:{k:{i=F[i+(d<<2)>>2];if((i|0)>=(q|0)|(g|0)>=(q|0)){break k}d=(i<<3)+c|0;w=F[d+4>>2];e=(g<<3)+c|0;x=F[e+4>>2];y=F[d>>2];C=F[e>>2];if(!((y|0)!=(C|0)|(w|0)!=(x|0))){F[n+8>>2]=C;F[n+12>>2]=x;break j}d=F[F[n+4>>2]+(q<<2)>>2];F[k+72>>2]=0;F[k+76>>2]=0;e=k- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[k+56>>2]=0;F[k+60>>2]=0;e=F[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Va(e,d,D[e+24|0],k+56|0);d=F[F[n+4>>2]+(g<<2)>>2];F[k+48>>2]=0;F[k+52>>2]=0;F[k+40>>2]=0;F[k+44>>2]=0;F[k+32>>2]=0;F[k+36>>2]=0;e=F[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Va(e,d,D[e+24|0],k+32|0);d=F[F[n+4>>2]+(i<<2)>>2];F[k+24>>2]=0;F[k+28>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;e=F[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Va(e,d,D[e+24|0],k+8|0);K=F[k+44>>2];d=F[k+16>>2];r=F[k+40>>2];e=r;i=F[k+20>>2]-(K+(d>>>0<e>>>0)|0)|0;l=d-e|0;d=Mj(l,i,l,i);h=fa;m=d;L=F[k+36>>2];d=F[k+8>>2];E=F[k+32>>2];e=E;j=F[k+12>>2]-(L+(d>>>0<e>>>0)|0)|0;e=d-e|0;o=Mj(e,j,e,j);m=m+o|0;d=fa+h|0;d=m>>>0<o>>>0?d+1|0:d;s=m;M=F[k+52>>2];h=F[k+24>>2];H=F[k+48>>2];o=H;m=F[k+28>>2]-(M+(h>>>0<o>>>0)|0)|0;v=h-o|0;p=Mj(v,m,v,m);o=s+p|0;h=fa+d|0;u=o;o=o>>>0<p>>>0?h+1|0:h;if(!(u|o)){break k}s=F[k+64>>2];d=s;N=F[k+68>>2];d=Mj(d-r|0,N-((d>>>0<r>>>0)+K|0)|0,l,i);g=fa;h=d;O=F[k+56>>2];d=O;P=F[k+60>>2];p=Mj(d-E|0,P-((d>>>0<E>>>0)+L|0)|0,e,j);d=h+p|0;h=fa+g|0;h=d>>>0<p>>>0?h+1|0:h;g=d;Q=F[k+72>>2];d=Q;R=F[k+76>>2];p=Mj(d-H|0,R-((d>>>0<H>>>0)+M|0)|0,v,m);g=g+p|0;d=fa+h|0;z=g;p=g>>>0<p>>>0?d+1|0:d;d=j>>31;g=d;h=e^d;d=(d^j)-(d+(d>>>0>h>>>0)|0)|0;t=h-g|0;h=i>>31;g=h;A=g^l;B=A-g|0;g=(i^g)-((g>>>0>A>>>0)+g|0)|0;h=(d|0)==(g|0)&t>>>0>B>>>0|d>>>0>g>>>0;A=h?t:B;d=h?d:g;h=m>>31;g=h;B=g^v;t=B-g|0;g=(g^m)-((g>>>0>B>>>0)+g|0)|0;h=(d|0)==(g|0)&t>>>0<A>>>0|d>>>0>g>>>0;h=Oj(-1,2147483647,h?A:t,h?d:g)>>>0<z>>>0;d=fa;t=0;if(h&(d|0)<=(p|0)|(d|0)<(p|0)){break e}g=1;d=0;h=s;s=r;r=Nj(Mj(l,i,z,p),fa,u,o);i=s+r|0;l=fa+K|0;l=i>>>0<r>>>0?l+1|0:l;l=N-((i>>>0>h>>>0)+l|0)|0;i=h-i|0;i=Mj(i,l,i,l);l=fa;h=O;r=i;j=Nj(Mj(e,j,z,p),fa,u,o);e=j+E|0;i=fa+L|0;i=e>>>0<j>>>0?i+1|0:i;i=P-((e>>>0>h>>>0)+i|0)|0;e=h-e|0;j=Mj(e,i,e,i);i=r+j|0;e=fa+l|0;e=i>>>0<j>>>0?e+1|0:e;j=i;i=e;e=Q;h=j;m=Nj(Mj(v,m,z,p),fa,u,o);j=m+H|0;l=fa+M|0;l=j>>>0<m>>>0?l+1|0:l;m=R-((e>>>0<j>>>0)+l|0)|0;e=e-j|0;j=Mj(e,m,e,m);e=h+j|0;i=fa+i|0;j=Mj(e,e>>>0<j>>>0?i+1|0:i,u,o);e=fa;m=e;if(!e&j>>>0<=1){break h}h=j;e=m;while(1){i=d<<1|g>>>31;g=g<<1;d=i;l=!e&h>>>0>7|(e|0)!=0;h=(e&3)<<30|h>>>2;e=e>>>2|0;if(l){continue}break}break g}if((g|0)<(q|0)){d=g<<1}else{if((q|0)<=0){F[n+8>>2]=0;F[n+12>>2]=0;break j}d=(q<<1)-2|0}d=(d<<2)+c|0;F[n+8>>2]=F[d>>2];F[n+12>>2]=F[d+4>>2]}t=1;break e}Ea();V()}d=m;g=j;if(g-1|0){break f}}while(1){e=Oj(j,m,g,d)+g|0;h=d+fa|0;h=e>>>0<g>>>0?h+1|0:h;g=(h&1)<<31|e>>>1;d=h>>>1|0;e=Mj(g,d,g,d);i=fa;if((m|0)==(i|0)&e>>>0>j>>>0|i>>>0>m>>>0){continue}break}}i=F[n+20>>2];if(i){e=i-1|0;m=F[F[n+16>>2]+(e>>>3&536870908)>>2];F[n+20>>2]=e;j=x;v=w-j|0;h=j>>31;w=(w>>31)-(h+(j>>>0>w>>>0)|0)|0;j=Mj(z,p,v,w);l=fa;h=Mj(x,h,u,o);j=h+j|0;l=fa+l|0;l=h>>>0>j>>>0?l+1|0:l;s=j;j=C;x=y-j|0;r=j>>31;y=(y>>31)-(r+(j>>>0>y>>>0)|0)|0;j=Mj(g,d,x,y);h=j;e=m>>>e&1;m=e?0-j|0:j;j=s+m|0;s=l;l=fa;h=s+(e?0-(l+((h|0)!=0)|0)|0:l)|0;U=n,W=Nj(j,j>>>0<m>>>0?h+1|0:h,u,o),F[U+12>>2]=W;j=Mj(x,y,z,p);m=fa;h=Mj(u,o,C,r);j=h+j|0;l=fa+m|0;l=h>>>0>j>>>0?l+1|0:l;h=j;d=Mj(g,d,v,w);j=e?d:0-d|0;g=h+j|0;m=fa;e=(e?m:0-(((d|0)!=0)+m|0)|0)+l|0;U=n,W=Nj(g,j>>>0>g>>>0?e+1|0:e,u,o),F[U+8>>2]=W}t=(i|0)!=0}ea=k+80|0;if(!t){break c}l:{if(F[a+8>>2]<=0){break l}i=F[I>>2];d=0;while(1){e=d<<2;f=F[e+T>>2];g=F[a+16>>2];m:{if((f|0)>(g|0)){F[e+i>>2]=g;break m}e=e+i|0;g=F[a+12>>2];if((g|0)>(f|0)){F[e>>2]=g;break m}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break l}d=q<<3;g=d+c|0;j=b+d|0;while(1){f=e<<2;d=f+g|0;f=F[f+j>>2]+F[f+i>>2]|0;F[d>>2]=f;n:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break n}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)<F[a+8>>2]){continue}break}}q=q+1|0;f=(J|0)>(q|0);if((q|0)!=(S|0)){continue}break}}a=f^1}else{a=0}return a&1}Ea();V()}function xf(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=0,u=0,v=0,w=M(0),x=0;j=ea-32|0;ea=j;a:{if(!(F[a+60>>2]!=F[a- -64>>2]|F[a+48>>2]!=F[a+52>>2])){i=1;break a}i=1;if((ga[F[F[a>>2]+24>>2]](a)|0)<=0){break a}b:{c:{while(1){d:{c=ga[F[F[a>>2]+20>>2]](a,x)|0;e:{f:{g:{e=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];switch(F[e+28>>2]-1|0){case 8:break f;case 0:case 2:case 4:break g;default:break e}}c=D[e+24|0];F[j+24>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;h:{if(!c){i=0;F[j>>2]=0;o=0;break h}if((c|0)<0){break d}c=c<<2;i=sa(c);F[j+16>>2]=i;b=c+i|0;F[j+24>>2]=b;o=0;ua(i,0,c);F[j+20>>2]=b;c=D[e+24|0];F[j+8>>2]=0;F[j>>2]=0;F[j+4>>2]=0;if(!c){break h}if((c|0)<0){break c}c=c<<2;o=sa(c);F[j>>2]=o;ua(o,0,c)}i:{j:{k:{switch(F[e+28>>2]-1|0){case 4:k=0;f=0;h=0;m=0;c=0;b=0;l=ea-16|0;ea=l;d=D[e+24|0];F[l+8>>2]=0;F[l>>2]=0;F[l+4>>2]=0;l:{m:{if(d){if((d|0)<0){break m}d=d<<2;f=sa(d);F[l>>2]=f;F[l+8>>2]=d+f;ua(f,0,d);h=sa(d);ua(h,0,d)}n:{if(F[e+80>>2]){while(1){q=F[e>>2];g=F[q>>2];d=F[e+40>>2];n=F[e+48>>2]+Mj(d,F[e+44>>2],m,c)|0;n=ta(f,g+n|0,d);p=D[e+24|0];if((p|0)>0){v=F[a+48>>2];g=0;while(1){s=g<<2;t=F[s+n>>2];if((t|0)<0){break n}F[h+s>>2]=t+F[v+(g+u<<2)>>2];g=g+1|0;if((p|0)!=(g|0)){continue}break}}ta(F[q>>2]+L(d,m)|0,h,d);d=m+1|0;c=d?c:c+1|0;m=d;if(!c&I[e+80>>2]>d>>>0){continue}break}}b=1}if(h){ra(h)}if(f){ra(f)}ea=l+16|0;break l}va();V()}if(b){break j}break i;case 2:f=0;g=0;m=0;c=0;k=ea-16|0;ea=k;b=D[e+24|0];F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;o:{p:{if(b){if((b|0)<0){break p}b=b<<1;g=sa(b);F[k>>2]=g;F[k+8>>2]=b+g;ua(g,0,b);f=sa(b);ua(f,0,b)}if(F[e+80>>2]){while(1){p=F[e>>2];b=F[p>>2];d=F[e+40>>2];h=F[e+48>>2]+Mj(d,F[e+44>>2],m,c)|0;l=ta(g,b+h|0,d);n=D[e+24|0];q:{if((n|0)<=0){break q}q=F[a+48>>2];h=0;if((n|0)!=1){v=n&-2;b=0;while(1){s=h<<1;E[s+f>>1]=H[l+s>>1]+H[q+(h+u<<2)>>1];s=h|1;t=s<<1;E[t+f>>1]=H[l+t>>1]+H[q+(u+s<<2)>>1];h=h+2|0;b=b+2|0;if((v|0)!=(b|0)){continue}break}}if(!(n&1)){break q}b=h<<1;E[b+f>>1]=H[b+l>>1]+H[q+(h+u<<2)>>1]}ta(F[p>>2]+L(d,m)|0,f,d);b=m+1|0;c=b?c:c+1|0;m=b;if(!c&I[e+80>>2]>b>>>0){continue}break}}if(f){ra(f)}if(g){ra(g)}ea=k+16|0;break o}va();V()}break j;case 0:break k;default:break j}}h=0;g=0;m=0;c=0;d=ea-16|0;ea=d;b=D[e+24|0];F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;r:{s:{if(b){if((b|0)<0){break s}g=sa(b);F[d>>2]=g;F[d+8>>2]=b+g;ua(g,0,b);h=sa(b);ua(h,0,b)}if(F[e+80>>2]){while(1){f=F[F[e>>2]>>2];k=F[e+40>>2];b=F[e+48>>2]+Mj(k,F[e+44>>2],m,c)|0;b=ta(g,f+b|0,k);k=D[e+24|0];t:{if((k|0)<=0){break t}n=F[a+48>>2];f=0;if((k|0)!=1){p=k&-2;l=0;while(1){D[f+h|0]=G[b+f|0]+G[n+(f+u<<2)|0];q=f|1;D[q+h|0]=G[b+q|0]+G[n+(q+u<<2)|0];f=f+2|0;l=l+2|0;if((p|0)!=(l|0)){continue}break}}if(!(k&1)){break t}D[f+h|0]=G[b+f|0]+G[n+(f+u<<2)|0]}b=F[e+40>>2];ta(F[F[e>>2]>>2]+L(b,m)|0,h,b);b=m+1|0;c=b?c:c+1|0;m=b;if(!c&I[e+80>>2]>b>>>0){continue}break}}if(h){ra(h)}if(g){ra(g)}ea=d+16|0;break r}va();V()}}u=D[e+24|0]+u|0;k=1}if(o){ra(o)}if(i){ra(i)}if(k){break e}i=0;break a}g=F[F[a+60>>2]+(r<<2)>>2];f=F[a+36>>2];i=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];F[j>>2]=F[e+56>>2];c=sa(32);F[j+16>>2]=c;F[j+20>>2]=24;F[j+24>>2]=-2147483616;D[c+24|0]=0;b=G[1206]|G[1207]<<8|(G[1208]<<16|G[1209]<<24);d=G[1202]|G[1203]<<8|(G[1204]<<16|G[1205]<<24);D[c+16|0]=d;D[c+17|0]=d>>>8;D[c+18|0]=d>>>16;D[c+19|0]=d>>>24;D[c+20|0]=b;D[c+21|0]=b>>>8;D[c+22|0]=b>>>16;D[c+23|0]=b>>>24;b=G[1198]|G[1199]<<8|(G[1200]<<16|G[1201]<<24);d=G[1194]|G[1195]<<8|(G[1196]<<16|G[1197]<<24);D[c+8|0]=d;D[c+9|0]=d>>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;D[c+12|0]=b;D[c+13|0]=b>>>8;D[c+14|0]=b>>>16;D[c+15|0]=b>>>24;b=G[1190]|G[1191]<<8|(G[1192]<<16|G[1193]<<24);d=G[1186]|G[1187]<<8|(G[1188]<<16|G[1189]<<24);D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;D[c+4|0]=b;D[c+5|0]=b>>>8;D[c+6|0]=b>>>16;D[c+7|0]=b>>>24;b=rd(i,j,j+16|0);if(D[j+27|0]<0){ra(F[j+16>>2])}c=r+1|0;u:{if(b){me(e,g);break u}m=f+L(r,24)|0;b=F[m+4>>2];r=D[e+24|0];f=r<<2;d=sa((r|0)!=(r&1073741823)?-1:f);n=j+16|0;F[n>>2]=1065353216;w=J[m+20>>2];b=-1<<b^-1;if((b|0)>0){J[n>>2]=w/M(b|0)}if((b|0)<=0){break b}v:{if(!F[g+80>>2]){break v}if((r|0)<=0){o=0;i=0;while(1){ta(F[F[e+64>>2]>>2]+i|0,d,f);i=f+i|0;o=o+1|0;if(o>>>0<I[g+80>>2]){continue}break}break v}q=F[F[g>>2]>>2]+F[g+48>>2]|0;v=r&-2;s=r&1;l=0;k=0;i=0;while(1){h=F[m+8>>2];w=J[n>>2];o=0;b=0;if((r|0)!=1){while(1){p=o<<2;t=q+(i<<2)|0;J[p+d>>2]=M(w*M(F[t>>2]))+J[h+p>>2];p=p|4;J[p+d>>2]=M(w*M(F[t+4>>2]))+J[h+p>>2];o=o+2|0;i=i+2|0;b=b+2|0;if((v|0)!=(b|0)){continue}break}}if(s){b=o<<2;J[b+d>>2]=M(w*M(F[q+(i<<2)>>2]))+J[b+h>>2];i=i+1|0}ta(F[F[e+64>>2]>>2]+k|0,d,f);k=f+k|0;l=l+1|0;if(l>>>0<I[g+80>>2]){continue}break}}ra(d)}r=c}i=1;x=x+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(x|0)){continue}break a}break}va();V()}va();V()}ra(d);i=0}ea=j+32|0;return i|0}function ed(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;g=ea-96|0;ea=g;n=F[a+4>>2];e=F[n+32>>2];k=F[e+8>>2];f=k;l=F[e+12>>2];d=l;c=F[e+20>>2];o=F[e+16>>2];a:{if((d|0)<=(c|0)&o>>>0>=f>>>0|(c|0)>(d|0)){break a}m=F[e>>2];p=G[m+o|0];f=o+1|0;d=f?c:c+1|0;F[e+16>>2]=f;F[e+20>>2]=d;if((d|0)>=(l|0)&f>>>0>=k>>>0|(d|0)>(l|0)){break a}j=G[f+m|0];f=o+2|0;d=f>>>0<2?c+1|0:c;i=f;F[e+16>>2]=f;F[e+20>>2]=d;q=p<<24>>24;b:{if((q|0)>=0){f=F[a+216>>2];if(p>>>0>=(F[a+220>>2]-f|0)/144>>>0){break a}f=f+L(p,144)|0;if(F[f>>2]<0){break b}break a}if(F[a+212>>2]>=0){break a}f=a+212|0}F[f>>2]=b;c:{d:{e:{f:{g:{h:{f=H[n+36>>1];i:{if(((f<<8|f>>>8)&65535)>>>0>=258){if((d|0)>=(l|0)&i>>>0>=k>>>0|(d|0)>(l|0)){break a}f=G[i+m|0];d=o+3|0;c=d>>>0<3?c+1|0:c;F[e+16>>2]=d;F[e+20>>2]=c;c=f>>>0>1;if(c){break a}c=c?0:f;if(!j){break i}if(!c){break h}break a}if(j){break g}c=0}if((q|0)<0){e=a+184|0}else{e=F[a+216>>2]+L(p,144)|0;D[e+100|0]=0;e=e+104|0}if((c|0)!=1){break e}c=ea-112|0;ea=c;m=F[F[a+4>>2]+44>>2];d=sa(120);F[d>>2]=12172;F[d+4>>2]=0;F[d+116>>2]=0;F[d+112>>2]=e;F[d+108>>2]=m;F[d+12>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+24>>2]=0;F[d+28>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;F[d+40>>2]=0;F[d+44>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d+56>>2]=0;F[d+60>>2]=0;F[d+8>>2]=12384;f=d- -64|0;F[f>>2]=0;F[f+4>>2]=0;F[d+72>>2]=0;F[d+76>>2]=0;F[d+80>>2]=0;F[d+84>>2]=0;F[d+88>>2]=0;F[d+104>>2]=0;F[d+96>>2]=0;F[d+100>>2]=0;k=F[a+8>>2];F[c+48>>2]=0;F[c+52>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;j=c+32|0;f=j;F[f>>2]=0;F[f+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;f=c- -64|0;F[f>>2]=0;F[f+4>>2]=0;F[c+72>>2]=0;F[c+76>>2]=0;F[c+80>>2]=0;F[c+84>>2]=0;F[c+88>>2]=0;F[c+104>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+8>>2]=12384;F[c+96>>2]=0;F[c+100>>2]=0;F[c+12>>2]=k;i=F[k>>2];f=F[k+4>>2];D[c+111|0]=0;l=j;j=c+111|0;Qa(l,(f-i>>2>>>0)/3|0,j);f=F[c+12>>2];i=F[f+28>>2];f=F[f+24>>2];D[c+111|0]=0;Qa(c+44|0,i-f>>2,j);F[c+28>>2]=d;F[c+24>>2]=m;F[c+20>>2]=e;F[c+16>>2]=k;e=d+8|0;f=c+8|0;dd(e,f);j:{if((f|0)==(e|0)){F[d+92>>2]=F[f+84>>2];break j}Eb(d+56|0,F[f+48>>2],F[f+52>>2]);Eb(d+68|0,F[f+60>>2],F[f- -64>>2]);Eb(d+80|0,F[f+72>>2],F[f+76>>2]);F[d+92>>2]=F[f+84>>2];Ca(d+96|0,F[f+88>>2],F[f+92>>2])}F[c+8>>2]=12384;e=F[c+96>>2];if(e){F[c+100>>2]=e;ra(e)}e=F[c+80>>2];if(e){F[c+84>>2]=e;ra(e)}e=F[c+68>>2];if(e){F[c+72>>2]=e;ra(e)}e=F[c+56>>2];if(e){F[c+60>>2]=e;ra(e)}F[c+8>>2]=12620;e=F[c+44>>2];if(e){ra(e)}e=F[c+32>>2];if(e){ra(e)}ea=c+112|0;c=d;break d}if((q|0)>=0){break f}break a}if((q|0)<0){break a}}e=F[a+216>>2];f=F[n+44>>2];c=sa(80);F[c>>2]=12932;F[c+4>>2]=0;F[c+76>>2]=0;F[c+68>>2]=f;F[c+8>>2]=11872;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;h=e+L(p,144)|0;d=h+104|0;F[c+72>>2]=d;F[c- -64>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[g+24>>2]=f;F[g+68>>2]=0;F[g+72>>2]=0;F[g+60>>2]=0;F[g+64>>2]=0;F[g+52>>2]=0;F[g+56>>2]=0;F[g+44>>2]=0;F[g+48>>2]=0;F[g+84>>2]=0;F[g+88>>2]=0;F[g+76>>2]=0;F[g+80>>2]=0;F[g+28>>2]=c;e=F[g+28>>2];F[g+8>>2]=F[g+24>>2];F[g+12>>2]=e;F[g+20>>2]=d;d=h+4|0;F[g+16>>2]=d;F[g+36>>2]=0;F[g+40>>2]=0;F[g+32>>2]=11872;e=F[g+20>>2];F[g>>2]=F[g+16>>2];F[g+4>>2]=e;h=g+32|0;Fe(h,d,g);e=c+8|0;dd(e,h);if((e|0)!=(h|0)){Eb(c+56|0,F[h+48>>2],F[h+52>>2])}Ee(h);break c}d=ea+-64|0;ea=d;k=F[F[a+4>>2]+44>>2];c=sa(80);F[c>>2]=12640;F[c+4>>2]=0;F[c+76>>2]=0;F[c+72>>2]=e;F[c+68>>2]=k;F[c+8>>2]=12804;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c- -64>>2]=0;m=c+56|0;f=m;F[f>>2]=0;F[f+4>>2]=0;n=F[a+8>>2];F[d+40>>2]=0;F[d+44>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;j=d+24|0;f=j;F[f>>2]=0;F[f+4>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+56>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=12804;F[d+4>>2]=n;i=F[n>>2];f=F[n+4>>2];D[d+63|0]=0;l=j;j=d+63|0;Qa(l,(f-i>>2>>>0)/3|0,j);f=F[d+4>>2];i=F[f+28>>2];f=F[f+24>>2];D[d+63|0]=0;Qa(d+36|0,i-f>>2,j);F[d+20>>2]=c;F[d+16>>2]=k;F[d+12>>2]=e;F[d+8>>2]=n;dd(c+8|0,d);Eb(m,F[d+48>>2],F[d+52>>2]);F[d>>2]=12804;e=F[d+48>>2];if(e){F[d+52>>2]=e;ra(e)}F[d>>2]=12620;e=F[d+36>>2];if(e){ra(e)}e=F[d+24>>2];if(e){ra(e)}ea=d- -64|0}if(!c){break a}}c=md(sa(64),c);i=F[a+4>>2];a=c;c=b;k:{l:{if((c|0)>=0){d=i+8|0;b=F[i+12>>2];e=F[i+8>>2];f=b-e>>2;m:{if((f|0)>(c|0)){break m}h=c+1|0;if(c>>>0>=f>>>0){Wb(d,h-f|0);break m}if(f>>>0<=h>>>0){break m}e=e+(h<<2)|0;if((e|0)!=(b|0)){while(1){b=b-4|0;h=F[b>>2];F[b>>2]=0;if(h){ga[F[F[h>>2]+4>>2]](h)}if((b|0)!=(e|0)){continue}break}}F[i+12>>2]=e}e=F[d>>2]+(c<<2)|0;b=F[e>>2];F[e>>2]=a;if(b){break l}break k}b=a;if(!a){break k}}ga[F[F[b>>2]+4>>2]](b)}h=(c^-1)>>>31|0}ea=g+96|0;return h|0}function Kd(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[e+12>>2]=a;a:{if(a>>>0<=211){d=F[Jd(14256,14448,e+12|0)>>2];break a}if(a>>>0>=4294967292){Y();V()}f=(a>>>0)/210|0;d=L(f,210);F[e+8>>2]=a-d;g=Jd(14448,14640,e+8|0)-14448>>2;while(1){d=F[(g<<2)+14448>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0<a>>>0){break b}if((L(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((L(b,c)|0)!=(d|0)){continue}break}break c}b=F[(a<<2)+14256>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((L(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=L(f,210);continue}break}F[e+12>>2]=d}ea=e+16|0;return d}function Va(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=0,l=M(0),m=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=D[b|0];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 1:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 2:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=E[b>>1];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 3:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=H[b>>1];F[e+4>>2]=0;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 4:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=F[b>>2];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 5:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=0;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 6:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=F[b+4>>2];e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 7:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=F[b>>2];g=F[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;F[k>>2]=e;F[k+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 8:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}i=J[b>>2];if(i>M(0x8000000000000000)|i<M(-0x8000000000000000)|i!=i){break a}l=M(N(i));if(l==M(X)){break a}e=(f<<3)+d|0;d:{if(l<M(0x8000000000000000)){g=M(N(i))>=M(1)?~~(i>M(0)?M(P(M(R(M(i*M(2.3283064365386963e-10)))),M(4294967296))):M(S(M(M(i-M(~~i>>>0>>>0))*M(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 9:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}j=K[b>>3];if(j>0x8000000000000000|j<-0x8000000000000000|j!=j){break a}m=N(j);if(m==X){break a}e=(f<<3)+d|0;e:{if(m<0x8000000000000000){g=N(j)>=1?~~(j>0?P(R(j*2.3283064365386963e-10),4294967295):S((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0;break b;case 10:break c;default:break a}}e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break a}c=c-e|0;a=(e<<3)+d|0}ua(a,0,c<<3)}}function Jb(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;j=ea-16|0;ea=j;a:{b:{c:{d:{if(G[F[a+4>>2]+36|0]<=1){k=-1;c=F[b+20>>2];h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;f=d;d=F[b+12>>2];if(f>>>0>I[b+8>>2]&(d|0)<=(c|0)|(c|0)>(d|0)){break c}d=h+F[b>>2]|0;l=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[j+12>>2]=l;F[b+16>>2]=f;F[b+20>>2]=c;break d}k=-1;if(!Ga(1,j+12|0,b)){break c}l=F[j+12>>2]}e:{f:{g:{h:{i:{if(!l){break i}c=F[a+8>>2];if((F[c+4>>2]-F[c>>2]>>2>>>0)/3>>>0<l>>>0){break c}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0>=258){j:{while(1){if(!Ga(1,j+8|0,b)){break c}c=F[j+8>>2];if(!Ga(1,j+8|0,b)){break c}e=c+e|0;c=F[j+8>>2];if(e>>>0<c>>>0){break c}f=e-c|0;c=F[a+40>>2];k:{if((c|0)!=F[a+44>>2]){F[c+4>>2]=e;F[c>>2]=f;F[a+40>>2]=c+12;l=F[j+12>>2];break k}m=F[a+36>>2];i=c-m|0;h=(i|0)/12|0;d=h+1|0;if(d>>>0>=357913942){break j}c=h<<1;g=h>>>0<178956970?c>>>0>d>>>0?c:d:357913941;if(g){if(g>>>0>=357913942){break b}c=sa(L(g,12))}else{c=0}h=c+L(h,12)|0;F[h+4>>2]=e;F[h>>2]=f;d=h+L((i|0)/-12|0,12)|0;if((i|0)>0){ta(d,m,i)}F[a+44>>2]=c+L(g,12);F[a+40>>2]=h+12;F[a+36>>2]=d;if(!m){break k}ra(m)}o=o+1|0;if(o>>>0<l>>>0){continue}break}k=0;Fb(b,0,0);if(l){while(1){e=G[b+36|0];c=H[F[a+4>>2]+36>>1];l:{m:{if(((c<<8|c>>>8)&65535)>>>0<=513){if(!e){break l}o=0;c=F[b+32>>2];n=c>>>3|0;h=F[b+24>>2];e=n+h|0;f=F[b+28>>2];n:{if(e>>>0>=f>>>0){e=c;break n}d=G[e|0];e=c+1|0;F[b+32>>2]=e;n=e>>>3|0;o=d>>>(c&7)&1}if(f>>>0>h+n>>>0){break m}break l}if(!e){break l}o=0;e=F[b+32>>2];c=F[b+24>>2]+(e>>>3|0)|0;if(c>>>0>=I[b+28>>2]){break l}o=G[c|0]>>>(e&7)&1}F[b+32>>2]=e+1}c=F[a+36>>2]+L(k,12)|0;D[c+8|0]=G[c+8|0]&254|o&1;k=k+1|0;if((l|0)!=(k|0)){continue}break}}D[b+36|0]=0;f=F[b+20>>2];e=0;c=F[b+32>>2]+7|0;e=c>>>0<7?1:e;d=c;c=e>>>3|0;e=(e&7)<<29|d>>>3;d=e+F[b+16>>2]|0;c=c+f|0;F[b+16>>2]=d;F[b+20>>2]=d>>>0<e>>>0?c+1|0:c;break i}va();V()}while(1){d=F[b+12>>2];c=F[b+20>>2];e=c;p=F[b+16>>2];f=p+4|0;c=f>>>0<4?c+1|0:c;m=F[b+8>>2];i=f;if(m>>>0<f>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}g=F[b>>2];f=g+p|0;h=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;f=p+8|0;c=f>>>0<8?c+1|0:c;q=f;if(f>>>0>m>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}f=g+i|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[b+16>>2]=q;F[b+20>>2]=c;if(m>>>0<=q>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}d=G[g+q|0];c=p+9|0;e=c>>>0<9?e+1|0:e;F[b+16>>2]=c;F[b+20>>2]=e;n=d&1|n&-2;c=F[a+40>>2];o:{if((c|0)!=F[a+44>>2]){D[c+8|0]=n;F[c+4>>2]=f;F[c>>2]=h;F[a+40>>2]=c+12;l=F[j+12>>2];break o}m=F[a+36>>2];i=c-m|0;g=(i|0)/12|0;e=g+1|0;if(e>>>0>=357913942){break h}c=g<<1;d=g>>>0<178956970?c>>>0>e>>>0?c:e:357913941;if(d){if(d>>>0>=357913942){break b}c=sa(L(d,12))}else{c=0}g=c+L(g,12)|0;D[g+8|0]=n;F[g+4>>2]=f;F[g>>2]=h;e=g+L((i|0)/-12|0,12)|0;if((i|0)>0){ta(e,m,i)}F[a+44>>2]=c+L(d,12);F[a+40>>2]=g+12;F[a+36>>2]=e;if(!m){break o}ra(m)}o=o+1|0;if(o>>>0<l>>>0){continue}break}}F[j+8>>2]=0;c=H[F[a+4>>2]+36>>1];c=(c<<8|c>>>8)&65535;p:{if(c>>>0<=511){k=-1;c=F[b+20>>2];f=F[b+16>>2];e=f+4|0;c=e>>>0<4?c+1|0:c;d=e;e=F[b+12>>2];if(d>>>0>I[b+8>>2]&(e|0)<=(c|0)|(c|0)>(e|0)){break c}e=f+F[b>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;break p}if((c|0)!=512){break e}k=-1;if(!Ga(1,j+8|0,b)){break c}e=F[j+8>>2]}if(!e){break e}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0<258){break f}n=0;l=0;while(1){if(!Ga(1,j+4|0,b)){break c}l=F[j+4>>2]+l|0;c=F[a+52>>2];q:{if((c|0)!=F[a+56>>2]){F[c>>2]=l;F[a+52>>2]=c+4;break q}h=F[a+48>>2];g=c-h|0;d=g>>2;f=d+1|0;if(f>>>0>=1073741824){break g}c=g>>1;f=g>>>0<2147483644?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break b}c=sa(f<<2)}else{c=0}d=c+(d<<2)|0;F[d>>2]=l;if((g|0)>0){ta(c,h,g)}F[a+56>>2]=c+(f<<2);F[a+52>>2]=d+4;F[a+48>>2]=c;if(!h){break q}ra(h)}n=n+1|0;if((n|0)!=(e|0)){continue}break}break e}va();V()}va();V()}k=0;while(1){c=F[b+20>>2];h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;f=d;d=F[b+12>>2];if(f>>>0>I[b+8>>2]&(d|0)<=(c|0)|(c|0)>(d|0)){k=-1;break c}d=h+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;c=F[a+52>>2];r:{if((c|0)!=F[a+56>>2]){F[c>>2]=h;F[a+52>>2]=c+4;break r}g=F[a+48>>2];i=c-g|0;d=i>>2;f=d+1|0;if(f>>>0>=1073741824){break a}c=i>>1;f=i>>>0<2147483644?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break b}c=sa(f<<2)}else{c=0}d=c+(d<<2)|0;F[d>>2]=h;if((i|0)>0){ta(c,g,i)}F[a+56>>2]=c+(f<<2);F[a+52>>2]=d+4;F[a+48>>2]=c;if(!g){break r}ra(g)}k=k+1|0;if((k|0)!=(e|0)){continue}break}}k=F[b+16>>2]}ea=j+16|0;return k}za();V()}va();V()}function we(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{if(F[a+92>>2]==F[a+88>>2]){break e}c=F[a+52>>2];f:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break f}d=F[a+48>>2];h=c-d|0;f=h>>2;e=f+1|0;if(e>>>0>=1073741824){break a}c=h>>1;e=h>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>=1073741824){break d}c=sa(e<<2)}else{c=0}f=c+(f<<2)|0;F[f>>2]=b;if((h|0)>0){ta(c,d,h)}F[a+56>>2]=c+(e<<2);F[a+52>>2]=f+4;F[a+48>>2]=c;if(!d){break f}ra(d)}F[a+84>>2]=0;f=-1;c=-1;g:{if((b|0)==-1){break g}e=F[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=F[F[e>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=F[F[e>>2]+(d<<2)>>2]}i=c>>>3&536870908;e=F[a+36>>2];g=e+(f>>>3&536870908)|0;h=F[g>>2];d=1<<f;if(!(h&d)){F[g>>2]=d|h;g=a+8|0;if((b|0)!=-1){e=b+1|0;d=(e>>>0)%3|0?e:b-2|0}else{d=-1}Xa(g,f,d);e=F[a+36>>2]}d=e+i|0;e=F[d>>2];f=1<<c;if(!(e&f)){F[d>>2]=e|f;d=a+8|0;f=-1;i:{if((b|0)==-1){break i}f=b-1|0;if((b>>>0)%3|0){break i}f=b+2|0}Xa(d,c,f)}f=-1;f=(b|0)!=-1?F[F[F[a+4>>2]>>2]+(b<<2)>>2]:f;d=F[a+36>>2]+(f>>>3&536870908)|0;e=F[d>>2];c=1<<f;if(!(e&c)){F[d>>2]=c|e;Xa(a+8|0,f,b)}d=F[a+84>>2];if((d|0)>2){break e}while(1){f=L(d,12)+a|0;b=F[f+52>>2];if((b|0)==F[f+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=F[c>>2];F[f+52>>2]=c;F[a+84>>2]=d;if((b|0)==-1){break e}f=F[a+24>>2];c=(b>>>0)/3|0;j:{if(F[f+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){i=(b>>>0)/3|0;c=(i>>>3&268435452)+f|0;F[c>>2]=F[c>>2]|1<<i;f=-1;l:{m:{n:{o:{p:{q:{r:{s:{f=(b|0)!=-1?F[F[F[a+4>>2]>>2]+(b<<2)>>2]:f;d=F[a+36>>2]+(f>>>3&536870908)|0;e=F[d>>2];c=1<<f;if(!(e&c)){F[d>>2]=c|e;h=F[(F[F[a+16>>2]+96>>2]+L(i,12)|0)+((b>>>0)%3<<2)>>2];k=F[F[a+20>>2]+4>>2];c=F[k+4>>2];t:{if((c|0)!=F[k+8>>2]){F[c>>2]=h;F[k+4>>2]=c+4;break t}g=F[k>>2];j=c-g|0;e=j>>2;d=e+1|0;if(d>>>0>=1073741824){break s}c=j>>1;d=j>>>0<2147483644?c>>>0>d>>>0?c:d:1073741823;if(d){if(d>>>0>=1073741824){break d}c=sa(d<<2)}else{c=0}e=c+(e<<2)|0;F[e>>2]=h;if((j|0)>0){ta(c,g,j)}F[k+8>>2]=c+(d<<2);F[k+4>>2]=e+4;F[k>>2]=c;if(!g){break t}ra(g)}j=F[a+12>>2];c=F[j+4>>2];u:{if((c|0)!=F[j+8>>2]){F[c>>2]=b;F[j+4>>2]=c+4;break u}h=F[j>>2];g=c-h|0;e=g>>2;d=e+1|0;if(d>>>0>=1073741824){break r}c=g>>1;d=g>>>0<2147483644?c>>>0>d>>>0?c:d:1073741823;if(d){if(d>>>0>=1073741824){break d}c=sa(d<<2)}else{c=0}e=c+(e<<2)|0;F[e>>2]=b;if((g|0)>0){ta(c,h,g)}F[j+8>>2]=c+(d<<2);F[j+4>>2]=e+4;F[j>>2]=c;if(!h){break u}ra(h)}c=F[a+12>>2];F[F[c+12>>2]+(f<<2)>>2]=F[c+24>>2];F[c+24>>2]=F[c+24>>2]+1}if((b|0)==-1){break k}g=F[a+4>>2];f=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=F[F[g+12>>2]+(c<<2)>>2]}v:{w:{if((L(i,3)|0)!=(b|0)){e=b-1|0;break w}e=b+2|0;b=-1;if((e|0)==-1){break v}}b=F[F[g+12>>2]+(e<<2)>>2]}h=(b|0)==-1;e=(b>>>0)/3|0;if((f|0)!=-1){c=(f>>>0)/3|0;c=F[F[a+24>>2]+(c>>>3&268435452)>>2]&1<<c;if(h){break q}d=(c|0)!=0;break p}d=1;if(!h){break p}break k}va();V()}va();V()}if(!c){break o}break k}c=h?-1:e;x:{if(F[F[a+24>>2]+(c>>>3&536870908)>>2]>>>c&1){break x}e=0;c=F[F[g>>2]+(b<<2)>>2];if(!(F[F[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=F[a+88>>2]+(c<<2)|0;e=F[c>>2];F[c>>2]=e+1;e=(e|0)<=0?2:1}if(F[a+84>>2]>=(e|0)?d:0){break m}k=L(e,12)+a|0;c=F[k+52>>2];y:{if((c|0)!=F[k+56>>2]){F[c>>2]=b;F[k+52>>2]=c+4;break y}i=F[k+48>>2];j=c-i|0;h=j>>2;g=h+1|0;if(g>>>0>=1073741824){break c}c=j>>1;g=j>>>0<2147483644?c>>>0>g>>>0?c:g:1073741823;if(g){if(g>>>0>=1073741824){break d}c=sa(g<<2)}else{c=0}h=c+(h<<2)|0;F[h>>2]=b;if((j|0)>0){ta(c,i,j)}F[k+48>>2]=c;F[k+52>>2]=h+4;F[k+56>>2]=c+(g<<2);if(!i){break y}ra(i)}if(F[a+84>>2]<=(e|0)){break x}F[a+84>>2]=e}if(d){break k}b=-1;if((f|0)==-1){break n}}b=F[F[F[a+4>>2]>>2]+(f<<2)>>2]}e=0;if(!(F[F[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=F[a+88>>2]+(b<<2)|0;c=F[b>>2];F[b>>2]=c+1;e=(c|0)<=0?2:1}if(F[a+84>>2]<(e|0)){break l}b=f}f=F[a+24>>2];continue}break}i=L(e,12)+a|0;b=F[i+52>>2];z:{if((b|0)!=F[i+56>>2]){F[b>>2]=f;F[i+52>>2]=b+4;break z}h=F[i+48>>2];g=b-h|0;c=g>>2;d=c+1|0;if(d>>>0>=1073741824){break b}b=g>>1;d=g>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break d}b=sa(d<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=f;if((g|0)>0){ta(b,h,g)}F[i+48>>2]=b;F[i+52>>2]=c+4;F[i+56>>2]=b+(d<<2);if(!h){break z}ra(h)}d=F[a+84>>2];if((d|0)<=(e|0)){break j}F[a+84>>2]=e;d=e;break j}d=F[a+84>>2]}if((d|0)<3){continue}break}}return 1}za();V()}va();V()}va();V()}va();V()}function hc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0,l=M(0),m=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 1:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 2:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 3:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}h=1;if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 4:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e-32768>>>0<4294901760){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 5:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>32767){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 6:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=F[b>>2];e=F[b+4>>2]-(i>>>0<32768)|0;if((e|0)==-1&i-32768>>>0<4294901760|(e|0)!=-1){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 7:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>32767|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 8:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}j=J[b>>2];if(j>M(32767)|j<M(-32768)|j!=j){break a}l=M(N(j));if(l==M(X)){break a}i=(g<<1)+d|0;if(l<M(2147483648)){e=~~j}else{e=-2147483648}E[i>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 9:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}k=K[b>>3];if(k>32767|k<-32768|k!=k){break a}m=N(k);if(m==X){break a}i=(g<<1)+d|0;if(m<2147483648){e=~~k}else{e=-2147483648}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0}ua(a,0,c<<1)}return h}return 0}function gc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b|0];if((e|0)<0){break b}E[(g<<1)+d>>1]=e&255;b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}h=1;if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 1:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 2:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}h=1;if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 3:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 4:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 5:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 6:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 7:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 8:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}j=J[b>>2];if(j>M(65535)|j<M(0)|(M(N(j))==M(X)|j!=j)){break a}i=(g<<1)+d|0;if(j<M(4294967296)&j>=M(0)){e=~~j>>>0}else{e=0}E[i>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 9:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}k=K[b>>3];if(k>65535|k<0|(N(k)==X|k!=k)){break a}i=(g<<1)+d|0;if(k<4294967296&k>=0){e=~~k>>>0}else{e=0}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0;break c;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<1)+d|0}ua(a,0,c<<1)}return h}return 0}function fc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0,l=M(0),m=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 1:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 2:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 3:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 4:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 5:e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((e|0)<0){break b}F[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}h=1;if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 6:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((F[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 7:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>2147483647|e){break a}F[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 8:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}j=J[b>>2];if(j>M(2147483648)|j<M(-2147483648)|j!=j){break a}l=M(N(j));if(l==M(X)){break a}i=(g<<2)+d|0;if(l<M(2147483648)){e=~~j}else{e=-2147483648}F[i>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 9:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}k=K[b>>3];if(k>2147483647|k<-2147483648|k!=k){break a}m=N(k);if(m==X){break a}i=(g<<2)+d|0;if(m<2147483648){e=~~k}else{e=-2147483648}F[i>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0}ua(a,0,c<<2)}return h}return 0}function Gh(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;g=ea-32|0;ea=g;d=F[a+32>>2];b=H[a+36>>1];a:{b:{if(((b<<8|b>>>8)&65535)>>>0<=513){c=F[d+12>>2];b=F[d+20>>2];f=b;n=F[d+16>>2];j=n+4|0;b=j>>>0<4?b+1|0:b;h=F[d+8>>2];k=j;if(h>>>0<j>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break a}e=F[d>>2];j=e+n|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[d+16>>2]=k;F[d+20>>2]=b;b=f;f=n+8|0;b=f>>>0<8?b+1|0:b;if(f>>>0>h>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break a}c=e+k|0;n=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[g+24>>2]=n;F[d+16>>2]=f;F[d+20>>2]=b;break b}if(!Hb(1,g+28|0,d)){break a}if(!Hb(1,g+24|0,F[a+32>>2])){break a}j=F[g+28>>2];n=F[g+24>>2]}if(j>>>0>1431655765){break a}c=F[a+32>>2];b=c;k=F[b+8>>2];f=F[b+16>>2];d=F[b+12>>2];b=F[b+20>>2];h=Nj(k-f|0,d-(b+(f>>>0>k>>>0)|0)|0,3,0);if(!fa&j>>>0>h>>>0){break a}h=Mj(j,0,3,0);if(!fa&h>>>0<n>>>0|((b|0)>=(d|0)&f>>>0>=k>>>0|(b|0)>(d|0))){break a}d=G[f+F[c>>2]|0];f=f+1|0;b=f?b:b+1|0;F[c+16>>2]=f;F[c+20>>2]=b;c:{d:{if(!d){f=0;c=ea-32|0;ea=c;F[c+24>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;e:{f:{b=L(j,3);if(b){if(b>>>0>=1073741824){break f}d=L(j,12);f=sa(d);F[c+16>>2]=f;ua(f,0,d)}b=id(b,1,F[a+32>>2],f);g:{h:{if(!(!b|!j)){k=0;d=0;while(1){o=i;h=(d<<2)+f|0;e=F[h>>2];i=e>>>1|0;e=o+(e&1?0-i|0:i)|0;F[c>>2]=e;i=F[h+4>>2];l=i>>>1|0;e=e+(i&1?0-l|0:l)|0;F[c+4>>2]=e;h=F[h+8>>2];i=h>>>1|0;i=e+(h&1?0-i|0:i)|0;F[c+8>>2]=i;Sb(F[a+44>>2]+96|0,c);d=d+3|0;k=k+1|0;if((k|0)!=(j|0)){continue}break}break h}if(!f){break g}}ra(f)}ea=c+32|0;break e}va();V()}if(b){break d}break a}if(n>>>0<=255){if(!j){break d}while(1){i:{F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;c=F[a+32>>2];b=c;h=F[b+8>>2];d=F[b+12>>2];f=F[b+20>>2];k=F[b+16>>2];if((d|0)<=(f|0)&h>>>0<=k>>>0|(d|0)<(f|0)){break i}e=F[c>>2];l=G[e+k|0];b=f;i=k+1|0;b=i?b:b+1|0;F[c+16>>2]=i;F[c+20>>2]=b;F[g+8>>2]=l;if((b|0)>=(d|0)&i>>>0>=h>>>0|(b|0)>(d|0)){break i}l=G[e+i|0];b=f;i=k+2|0;b=i>>>0<2?b+1|0:b;F[c+16>>2]=i;F[c+20>>2]=b;F[g+12>>2]=l;if((b|0)>=(d|0)&i>>>0>=h>>>0|(b|0)>(d|0)){break i}d=G[e+i|0];b=f;f=k+3|0;b=f>>>0<3?b+1|0:b;F[c+16>>2]=f;F[c+20>>2]=b;F[g+16>>2]=d;Sb(F[a+44>>2]+96|0,g+8|0);m=m+1|0;if((m|0)!=(j|0)){continue}break d}break}m=0;break a}if(n>>>0<=65535){if(!j){break d}while(1){j:{F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;d=F[a+32>>2];c=F[d+12>>2];k=F[d+8>>2];b=F[d+20>>2];f=b;h=F[d+16>>2];e=h+2|0;b=e>>>0<2?b+1|0:b;if(e>>>0>k>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break j}i=F[d>>2];l=i+h|0;l=G[l|0]|G[l+1|0]<<8;F[d+16>>2]=e;F[d+20>>2]=b;F[g+8>>2]=l;b=f;l=h+4|0;b=l>>>0<4?b+1|0:b;if(l>>>0>k>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break j}e=e+i|0;e=G[e|0]|G[e+1|0]<<8;F[d+16>>2]=l;F[d+20>>2]=b;F[g+12>>2]=e;b=f;f=h+6|0;b=f>>>0<6?b+1|0:b;if(f>>>0>k>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break j}c=i+l|0;c=G[c|0]|G[c+1|0]<<8;F[d+16>>2]=f;F[d+20>>2]=b;F[g+16>>2]=c;Sb(F[a+44>>2]+96|0,g+8|0);m=m+1|0;if((m|0)!=(j|0)){continue}break d}break}m=0;break a}k:{if(n>>>0>2097151){break k}b=H[a+36>>1];if(((b<<8|b>>>8)&65535)>>>0<514){break k}if(!j){break d}while(1){l:{F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(!Hb(1,g+4|0,F[a+32>>2])){break l}F[g+8>>2]=F[g+4>>2];if(!Hb(1,g+4|0,F[a+32>>2])){break l}F[g+12>>2]=F[g+4>>2];if(!Hb(1,g+4|0,F[a+32>>2])){break l}F[g+16>>2]=F[g+4>>2];Sb(F[a+44>>2]+96|0,g+8|0);m=m+1|0;if((m|0)!=(j|0)){continue}break d}break}m=0;break a}if(!j){break d}while(1){F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;d=F[a+32>>2];c=F[d+12>>2];k=F[d+8>>2];b=F[d+20>>2];f=b;h=F[d+16>>2];e=h+4|0;b=e>>>0<4?b+1|0:b;i=e;if(e>>>0>k>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break c}l=F[d>>2];e=l+h|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[d+16>>2]=i;F[d+20>>2]=b;F[g+8>>2]=e;b=f;e=h+8|0;b=e>>>0<8?b+1|0:b;o=e;if(e>>>0>k>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break c}e=i+l|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[d+16>>2]=o;F[d+20>>2]=b;F[g+12>>2]=e;b=f;f=h+12|0;b=f>>>0<12?b+1|0:b;if(f>>>0>k>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break c}c=l+o|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[d+16>>2]=f;F[d+20>>2]=b;F[g+16>>2]=c;Sb(F[a+44>>2]+96|0,g+8|0);m=m+1|0;if((m|0)!=(j|0)){continue}break}}F[F[a+4>>2]+80>>2]=n;m=1;break a}m=0}ea=g+32|0;return m|0}function ec(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 1:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 2:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 3:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 4:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 5:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 6:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 7:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 8:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=J[b>>2];if(i>M(4294967296)|i<M(0)|(M(N(i))==M(X)|i!=i)){break a}k=(g<<2)+d|0;if(i<M(4294967296)&i>=M(0)){e=~~i>>>0}else{e=0}F[k>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 9:h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}j=K[b>>3];if(j>4294967295|j<0|(N(j)==X|j!=j)){break a}k=(g<<2)+d|0;if(j<4294967296&j>=0){e=~~j>>>0}else{e=0}F[k>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0;break c;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break b}c=c-e|0;a=(e<<2)+d|0}ua(a,0,c<<2)}return h}return 0}function Ie(a,b,c){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;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;i=g+8|0;d=H[b+38>>1];a:{b:{if(!d){break b}c:{if(d>>>0<=511){e=F[b+12>>2];d=F[b+20>>2];f=F[b+16>>2];h=f+4|0;d=h>>>0<4?d+1|0:d;if(h>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=f+F[b>>2]|0;j=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+12>>2]=j;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;break c}if(!lb(1,i+12|0,b)){break b}e=F[b+16>>2];d=F[b+20>>2];j=F[i+12>>2]}f=F[b+8>>2];h=f-e|0;d=F[b+12>>2]-((e>>>0>f>>>0)+d|0)|0;if(h>>>0<j>>>6>>>0&(d|0)<=0|(d|0)<0){break b}e=F[i>>2];d=F[i+4>>2]-e>>2;d:{if(d>>>0<j>>>0){Aa(i,j-d|0);j=F[i+12>>2];break d}if(d>>>0<=j>>>0){break d}F[i+4>>2]=e+(j<<2)}k=1;if(!j){break a}e=F[b+16>>2];d=F[b+20>>2];r=F[i>>2];s=F[b+8>>2];p=F[b+12>>2];h=0;while(1){k=0;if((d|0)>=(p|0)&e>>>0>=s>>>0|(d|0)>(p|0)){break a}k=F[b>>2];n=G[k+e|0];e=e+1|0;d=e?d:d+1|0;F[b+16>>2]=e;F[b+20>>2]=d;f=n>>>2|0;m=0;e:{f:{g:{h:{t=n&3;switch(t|0){case 0:break f;case 3:break h;default:break g}}f=f+h|0;k=0;if(f>>>0>=j>>>0){break a}ua(r+(h<<2)|0,0,(n&252)+4|0);h=f;break e}while(1){if((d|0)>=(p|0)&e>>>0>=s>>>0|(d|0)>(p|0)){break b}j=G[e+k|0];e=e+1|0;d=e?d:d+1|0;F[b+16>>2]=e;F[b+20>>2]=d;f=j<<(m<<3|6)|f;m=m+1|0;if((t|0)!=(m|0)){continue}break}}F[r+(h<<2)>>2]=f}j=F[i+12>>2];h=h+1|0;if(j>>>0>h>>>0){continue}break}d=i+16|0;p=F[i>>2];f=F[i+16>>2];e=F[i+20>>2]-f|0;i:{if(e>>>0<=4194303){Aa(d,1048576-(e>>>2|0)|0);break i}if((e|0)==4194304){break i}F[i+20>>2]=f+4194304}e=i+28|0;h=F[e>>2];f=F[i+32>>2]-h>>3;j:{if(f>>>0<j>>>0){tb(e,j-f|0);h=F[e>>2];break j}if(f>>>0>j>>>0){F[i+32>>2]=(j<<3)+h}if(!j){break b}}i=F[d>>2];d=0;k=0;while(1){e=p+(d<<2)|0;m=F[e>>2];n=(d<<3)+h|0;f=k;F[n+4>>2]=f;F[n>>2]=m;e=F[e>>2];k=e+f|0;if(k>>>0>1048576){break b}k:{if(f>>>0>=k>>>0){break k}m=0;n=e&7;if(n){while(1){F[i+(f<<2)>>2]=d;f=f+1|0;m=m+1|0;if((n|0)!=(m|0)){continue}break}}if(e-1>>>0<=6){break k}while(1){e=i+(f<<2)|0;F[e>>2]=d;F[e+28>>2]=d;F[e+24>>2]=d;F[e+20>>2]=d;F[e+16>>2]=d;F[e+12>>2]=d;F[e+8>>2]=d;F[e+4>>2]=d;f=f+8|0;if((k|0)!=(f|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){continue}break}l=(k|0)==1048576}k=l}l:{if(!k|(F[g+20>>2]?0:a)){break l}k=0;i=ea-16|0;ea=i;m:{n:{if(H[b+38>>1]<=511){f=F[b+12>>2];j=f;d=F[b+20>>2];l=F[b+16>>2];e=l+8|0;d=e>>>0<8?d+1|0:d;h=F[b+8>>2];if(h>>>0<e>>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break m}l=l+F[b>>2]|0;f=G[l|0]|G[l+1|0]<<8|(G[l+2|0]<<16|G[l+3|0]<<24);l=G[l+4|0]|G[l+5|0]<<8|(G[l+6|0]<<16|G[l+7|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;break n}if(!kb(1,i+8|0,b)){break m}e=F[b+16>>2];d=F[b+20>>2];h=F[b+8>>2];j=F[b+12>>2];f=F[i+8>>2];l=F[i+12>>2]}m=h-e|0;h=j-((e>>>0>h>>>0)+d|0)|0;if((h|0)==(l|0)&f>>>0>m>>>0|h>>>0<l>>>0){break m}d=d+l|0;h=e+f|0;d=h>>>0<f>>>0?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if((f|0)<=0){break m}b=e+F[b>>2]|0;F[g+48>>2]=b;d=f-1|0;e=d+b|0;h=G[e|0];o:{if(h>>>0<=63){F[g+52>>2]=d;b=G[e|0]&63;break o}p:{switch((h>>>6|0)-1|0){case 0:if(f>>>0<2){break m}F[g+52>>2]=f-2;b=(b+f|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break o;case 1:if(f>>>0<3){break m}F[g+52>>2]=f-3;b=(b+f|0)-3|0;b=G[b+1|0]<<8|G[b+2|0]<<16&4128768|G[b|0];break o;default:break p}}F[g+52>>2]=f-4;b=(b+f|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}F[g+56>>2]=b+4194304;k=b>>>0<1069547520}ea=i+16|0;if(!k){break l}if(!a){o=1;break l}b=F[g+56>>2];d=F[g+36>>2];e=F[g+48>>2];f=F[g+24>>2];while(1){q:{if(b>>>0>4194303){break q}o=F[g+52>>2];while(1){if((o|0)<=0){break q}o=o-1|0;F[g+52>>2]=o;b=G[e+o|0]|b<<8;F[g+56>>2]=b;if(b>>>0<4194304){continue}break}}h=b&1048575;k=F[f+(h<<2)>>2];l=d+(k<<3)|0;b=(L(F[l>>2],b>>>20|0)+h|0)-F[l+4>>2]|0;F[g+56>>2]=b;F[(q<<2)+c>>2]=k;o=1;q=q+1|0;if((q|0)!=(a|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;return o}function Ob(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=ea-96|0;ea=f;e=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=e;k=F[a+20>>2];d=F[k>>2];a:{b:{e=F[F[e+28>>2]+(b<<2)>>2];if(e>>>0<F[k+4>>2]-d>>2>>>0){d=F[F[a+8>>2]+(F[d+(e<<2)>>2]<<2)>>2];e=F[a+4>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}F[f+72>>2]=0;F[f+76>>2]=0;k=f- -64|0;F[k>>2]=0;F[k+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Va(e,d,D[e+24|0],f+56|0);if((b|0)!=-1){e=b+1|0;k=(e>>>0)%3|0?e:b-2|0;i=((b>>>0)%3|0?-1:2)+b|0;while(1){d=k;e=i;c:{if(!F[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}h=F[a+20>>2];b=F[h>>2];d=F[F[F[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=F[h+4>>2]-b>>2>>>0){break b}d=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;Va(b,d,D[b+24|0],f+32|0);d=F[a+20>>2];b=F[d>>2];e=F[F[F[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=F[d+4>>2]-b>>2>>>0){break a}d=F[F[a+8>>2]+(F[b+(e<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;Va(b,d,D[b+24|0],f+8|0);e=F[f+8>>2];b=F[f+56>>2];d=e-b|0;h=F[f+60>>2];j=F[f+12>>2]-(h+(b>>>0>e>>>0)|0)|0;p=F[f+40>>2];e=F[f+64>>2];s=p-e|0;t=F[f+68>>2];p=F[f+44>>2]-(t+(e>>>0>p>>>0)|0)|0;u=Mj(d,j,s,p);v=n-u|0;n=g-(fa+(n>>>0<u>>>0)|0)|0;o=v;g=F[f+16>>2];u=g-e|0;t=F[f+20>>2]-((e>>>0>g>>>0)+t|0)|0;g=F[f+32>>2];v=g-b|0;h=F[f+36>>2]-((b>>>0>g>>>0)+h|0)|0;e=Mj(u,t,v,h);b=o+e|0;g=fa+n|0;g=b>>>0<e>>>0?g+1|0:g;n=b;e=l;o=d;x=j;b=F[f+48>>2];l=F[f+72>>2];d=b-l|0;j=F[f+76>>2];w=F[f+52>>2]-(j+(b>>>0<l>>>0)|0)|0;o=Mj(o,x,d,w);e=e+o|0;b=fa+m|0;b=e>>>0<o>>>0?b+1|0:b;m=F[f+24>>2];o=m-l|0;j=F[f+28>>2]-((l>>>0>m>>>0)+j|0)|0;m=Mj(o,j,v,h);l=e-m|0;m=b-(fa+(e>>>0<m>>>0)|0)|0;b=Mj(u,t,d,w);e=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Mj(o,j,s,p);q=r+e|0;b=fa+b|0;b=q>>>0<r>>>0?b+1|0:b;r=b;b=F[f+88>>2];e=F[f+80>>2];d:{if(G[f+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|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}F[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;F[f+88>>2]=b;if((b|0)!=-1){break e}}b=F[f+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(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=F[F[F[e+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}D[f+92|0]=0;F[f+88>>2]=d;break d}if((b|0)!=F[f+84>>2]){break d}F[f+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(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=F[F[F[e+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}F[f+88>>2]=d}b=F[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;e=b^q;j=e-b|0;h=(b^r)-((b>>>0>e>>>0)+b|0)|0;p=-1;e=2147483647;b=m>>31;k=b^l;d=(b^m)-((b>>>0>k>>>0)+b|0)|0;b=k-b|0;s=b^-1;i=d^2147483647;k=g;m:{n:{if(!F[a+28>>2]){if((i|0)==(h|0)&j>>>0>s>>>0|i>>>0<h>>>0){break m}i=g;a=b;e=b+j|0;b=d+h|0;b=a>>>0>e>>>0?b+1|0:b;a=g>>31;d=a;h=d^n;j=h-d|0;g=e+j|0;d=(d^i)-((d>>>0>h>>>0)+d|0)|0;a=g;g=d^2147483647;g=(g|0)==(b|0)&(j^-1)>>>0<e>>>0|b>>>0>g>>>0;a=g?-1:a;if(!(g&0)&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((i|0)==(h|0)&j>>>0>s>>>0|i>>>0<h>>>0){break o}a=b;i=b+j|0;b=d+h|0;b=a>>>0>i>>>0?b+1|0:b;a=i;h=g;d=g>>31;g=d;i=d^n;d=(d^h)-(d+(d>>>0>i>>>0)|0)|0;g=i-g|0;i=d^2147483647;if((i|0)==(b|0)&(g^-1)>>>0<a>>>0|b>>>0>i>>>0){break o}b=b+d|0;a=a+g|0;b=a>>>0<g>>>0?b+1|0:b;p=a;e=b;if(!b&a>>>0<536870913){break m}}b=e>>>29|0;a=(e&536870911)<<3|p>>>29}n=Nj(n,k,a,b);l=Nj(l,m,a,b);q=Nj(q,r,a,b)}F[c+8>>2]=n;F[c+4>>2]=l;F[c>>2]=q;ea=f+96|0;return}Ea();V()}Ea();V()}Ea();V()}function jc(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=M(0),l=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}D[d+f|0]=G[b|0];b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 1:g=D[a+24|0];if((((c|0)>(g|0)?g:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}g=0;e=D[b|0];if((e|0)<0){break c}D[d+f|0]=e;b=b+1|0;f=f+1|0;g=D[a+24|0];if((f|0)<(((c|0)>(g|0)?g:c)|0)){continue}break}}if((c|0)<=(g|0)){return 1}ua(d+g|0,0,c-g|0);return 1;case 2:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=H[b>>1];if((e-128&65535)>>>0<65280){break b}D[d+f|0]=e;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 3:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=H[b>>1];if(e>>>0>127){break b}D[d+f|0]=e;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 4:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=F[b>>2];if(e-128>>>0<4294967040){break b}D[d+f|0]=e;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 5:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=F[b>>2];if(e>>>0>127){break b}D[d+f|0]=e;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 6:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}h=F[b>>2];e=F[b+4>>2]-(h>>>0<128)|0;if((e|0)==-1&h-128>>>0<4294967040|(e|0)!=-1){break b}D[d+f|0]=h;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 7:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=F[b+4>>2];h=F[b>>2];if(!e&h>>>0>127|e){break b}D[d+f|0]=h;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 8:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}i=J[b>>2];if(i>M(127)|i<M(-128)|i!=i){break b}k=M(N(i));if(k==M(X)){break b}h=d+f|0;if(k<M(2147483648)){e=~~i}else{e=-2147483648}D[h|0]=e;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 9:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}j=K[b>>3];if(j>127|j<-128|j!=j){break b}l=N(j);if(l==X){break b}h=d+f|0;if(l<2147483648){e=~~j}else{e=-2147483648}D[h|0]=e;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 10:break d;default:break c}}g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}D[d+f|0]=G[b|0];b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}ua(d+e|0,0,c-e|0)}return g}return 0}ua(d+e|0,0,c-e|0);return 1}function Fj(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,B=0,C=0,D=0,E=0;F[a+8>>2]=e;s=a+32|0;g=F[s>>2];f=F[a+36>>2]-g>>2;a:{if(f>>>0<e>>>0){Aa(s,e-f|0);d=F[a+8>>2];break a}d=e;if(d>>>0>=f>>>0){break a}F[a+36>>2]=g+(e<<2);d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(f),0,f);p=ua(sa(f),0,f);b:{if((d|0)<=0){break b}i=F[a+32>>2];while(1){d=h<<2;f=F[d+m>>2];g=F[a+16>>2];c:{if((f|0)>(g|0)){F[d+i>>2]=g;break c}d=d+i|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break c}F[d>>2]=f}d=F[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=F[b+g>>2]+F[g+i>>2]|0;F[d>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];w=F[f>>2];f=F[f+4>>2]-w|0;if((f|0)>=5){A=F[a+52>>2];r=F[a+48>>2];u=f>>>2|0;B=u>>>0>2?u:2;x=e&-2;y=e&1;C=e&-4;z=e&3;v=e-1|0;D=e<<2;n=1;while(1){e:{f:{g:{h:{if((n|0)!=(u|0)){g=F[(n<<2)+w>>2];t=(e|0)<=0;if(!t){ua(m,0,D)}if((g|0)==-1){i=L(e,n);break f}E=F[r>>2];l=0;f=g;while(1){i:{if(F[(f>>>3&536870908)+E>>2]>>>f&1){break i}i=F[F[F[r+64>>2]+12>>2]+(f<<2)>>2];if((i|0)==-1){break i}j=F[A>>2];h=F[r+28>>2];o=F[j+(F[h+(i<<2)>>2]<<2)>>2];if((o|0)>=(n|0)){break i}k=i+1|0;k=F[j+(F[h+(((k>>>0)%3|0?k:i-2|0)<<2)>>2]<<2)>>2];if((k|0)>=(n|0)){break i}i=F[j+(F[h+(i+((i>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((i|0)>=(n|0)){break i}j:{if(t){break j}i=L(e,i);j=L(e,k);o=L(e,o);h=0;q=0;if(v){while(1){F[(h<<2)+p>>2]=(F[(h+i<<2)+c>>2]+F[(h+j<<2)+c>>2]|0)-F[(h+o<<2)+c>>2];k=h|1;F[(k<<2)+p>>2]=(F[(i+k<<2)+c>>2]+F[(j+k<<2)+c>>2]|0)-F[(k+o<<2)+c>>2];h=h+2|0;q=q+2|0;if((x|0)!=(q|0)){continue}break}}if(y){F[(h<<2)+p>>2]=(F[(h+i<<2)+c>>2]+F[(h+j<<2)+c>>2]|0)-F[(h+o<<2)+c>>2]}if(t){break j}o=0;h=0;i=0;if(v>>>0>2){while(1){j=h<<2;k=j+m|0;F[k>>2]=F[k>>2]+F[j+p>>2];k=j|4;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];k=j|8;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];j=j|12;k=j+m|0;F[k>>2]=F[k>>2]+F[j+p>>2];h=h+4|0;i=i+4|0;if((C|0)!=(i|0)){continue}break}}if(!z){break j}while(1){i=h<<2;j=i+m|0;F[j>>2]=F[j>>2]+F[i+p>>2];h=h+1|0;o=o+1|0;if((z|0)!=(o|0)){continue}break}}l=l+1|0}k:{l:{if((f>>>0)%3|0){h=f-1|0;break l}h=f+2|0;i=-1;if((h|0)==-1){break k}}i=-1;if(F[F[r>>2]+(h>>>3&536870908)>>2]>>>h&1){break k}f=F[F[F[r+64>>2]+12>>2]+(h<<2)>>2];i=-1;if((f|0)==-1){break k}i=f-1|0;if((f>>>0)%3|0){break k}i=f+2|0}f=i;if((g|0)!=(f|0)&(f|0)!=-1){continue}break}i=L(e,n);if(!l){break f}if(t){break g}h=0;f=0;if(!v){break h}while(1){g=h<<2;j=g+m|0;F[j>>2]=F[j>>2]/(l|0);g=(g|4)+m|0;F[g>>2]=F[g>>2]/(l|0);h=h+2|0;f=f+2|0;if((x|0)!=(f|0)){continue}break}break h}Ea();V()}if(!y){break g}f=(h<<2)+m|0;F[f>>2]=F[f>>2]/(l|0)}if((d|0)<=0){break e}l=F[s>>2];h=0;while(1){d=h<<2;f=F[d+m>>2];g=F[a+16>>2];m:{if((f|0)>(g|0)){F[d+l>>2]=g;break m}d=d+l|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break m}F[d>>2]=f}d=F[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}f=0;if((d|0)<=0){break e}d=i<<2;i=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+i|0;g=F[h+g>>2]+F[g+l>>2]|0;F[d>>2]=g;n:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break n}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}g=(L(n-1|0,e)<<2)+c|0;l=F[s>>2];h=0;while(1){d=h<<2;f=F[d+g>>2];j=F[a+16>>2];o:{if((f|0)>(j|0)){F[d+l>>2]=j;break o}d=d+l|0;j=F[a+12>>2];if((j|0)>(f|0)){F[d>>2]=j;break o}F[d>>2]=f}d=F[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}f=0;if((d|0)<=0){break e}d=i<<2;i=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+i|0;g=F[h+g>>2]+F[g+l>>2]|0;F[d>>2]=g;p:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break p}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}n=n+1|0;if((B|0)!=(n|0)){continue}break}}ra(p);ra(m);return 1}function ic(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:g=D[a+24|0];if((((c|0)>(g|0)?g:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}g=0;e=D[b|0];if((e|0)<0){break c}D[d+f|0]=e;b=b+1|0;f=f+1|0;g=D[a+24|0];if((f|0)<(((c|0)>(g|0)?g:c)|0)){continue}break}}if((c|0)<=(g|0)){return 1}ua(d+g|0,0,c-g|0);return 1;case 1:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}D[d+f|0]=G[b|0];b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 2:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=H[b>>1];if(e>>>0>255){break b}D[d+f|0]=e;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 3:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=H[b>>1];if(e>>>0>255){break b}D[d+f|0]=e;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 4:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=F[b>>2];if(e>>>0>255){break b}D[d+f|0]=e;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 5:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=F[b>>2];if(e>>>0>255){break b}D[d+f|0]=e;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 6:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=F[b+4>>2];h=F[b>>2];if(!e&h>>>0>255|e){break b}D[d+f|0]=h;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 7:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}e=F[b+4>>2];h=F[b>>2];if(!e&h>>>0>255|e){break b}D[d+f|0]=h;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 8:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}i=J[b>>2];if(i>M(255)|i<M(0)|(M(N(i))==M(X)|i!=i)){break b}h=d+f|0;if(i<M(4294967296)&i>=M(0)){e=~~i>>>0}else{e=0}D[h|0]=e;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 9:g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}j=K[b>>3];if(j>255|j<0|(N(j)==X|j!=j)){break b}h=d+f|0;if(j<4294967296&j>=0){e=~~j>>>0}else{e=0}D[h|0]=e;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}break a;case 10:break d;default:break c}}g=1;e=D[a+24|0];if((((c|0)>(e|0)?e:c)|0)>0){e=F[F[a>>2]>>2];b=F[a+48>>2]+Mj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[F[a>>2]+4>>2]<=b>>>0){break b}D[d+f|0]=G[b|0];b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)>(e|0)?e:c)|0)){continue}break}}if((c|0)<=(e|0)){break c}ua(d+e|0,0,c-e|0)}return g}return 0}ua(d+e|0,0,c-e|0);return 1}function nc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=ea-48|0;ea=e;d=H[6677]|H[6678]<<16;f=H[6675]|H[6676]<<16;E[e+38>>1]=f;E[e+40>>1]=f>>>16;E[e+42>>1]=d;E[e+44>>1]=d>>>16;d=F[3337];F[e+32>>2]=F[3336];F[e+36>>2]=d;d=F[3335];F[e+24>>2]=F[3334];F[e+28>>2]=d;d=F[3333];F[e+16>>2]=F[3332];F[e+20>>2]=d;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+5|0;d=h>>>0<5?d+1|0:d;a:{b:{if(h>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){b=Oa(e+16|0);if(b>>>0>=4294967280){break a}c:{d:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break d}D[e+11|0]=b;c=e;if(!b){break c}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}d=g+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=G[d+4|0];d=F[b+20>>2];f=F[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(Ha(c,1260,5)){b=sa(32);D[b+16|0]=G[1496];c=G[1492]|G[1493]<<8|(G[1494]<<16|G[1495]<<24);d=G[1488]|G[1489]<<8|(G[1490]<<16|G[1491]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1484]|G[1485]<<8|(G[1486]<<16|G[1487]<<24);d=G[1480]|G[1481]<<8|(G[1482]<<16|G[1483]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+17|0]=0;F[a>>2]=-1;Ba(a+4|0,b,17);ra(b);break b}g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=Oa(e+16|0);if(b>>>0>=4294967280){break a}e:{f:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break f}D[e+11|0]=b;c=e;if(!b){break e}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+5|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=Oa(e+16|0);if(b>>>0>=4294967280){break a}g:{h:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break h}D[e+11|0]=b;c=e;if(!b){break g}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+6|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=Oa(e+16|0);if(b>>>0>=4294967280){break a}i:{j:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break j}D[e+11|0]=b;c=e;if(!b){break i}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+7|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=mc(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break b}Ba(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}ra(F[b>>2]);break b}D[c+8|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=d;i=F[b+16>>2];g=i+1|0;d=g?d:d+1|0;F[b+16>>2]=g;F[b+20>>2]=d;h=F[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){b=mc(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break b}Ba(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}ra(F[b>>2]);break b}f=c;c=g+F[b>>2]|0;E[f+10>>1]=G[c|0]|G[c+1|0]<<8;d=F[b+20>>2];c=F[b+16>>2]+2|0;d=c>>>0<2?d+1|0:d;F[b+16>>2]=c;F[b+20>>2]=d;F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+4>>2]=0}ea=e+48|0;return}Pa();V()}function pj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;F[a+8>>2]=e;r=a+32|0;f=F[r>>2];j=F[a+36>>2]-f>>2;a:{if(j>>>0<e>>>0){Aa(r,e-j|0);d=F[a+8>>2];break a}d=e;if(e>>>0>=j>>>0){break a}F[a+36>>2]=f+(e<<2);d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(f),0,f);p=ua(sa(f),0,f);b:{if((d|0)<=0){break b}i=F[a+32>>2];while(1){f=h<<2;j=F[f+m>>2];d=F[a+16>>2];c:{if((j|0)>(d|0)){F[f+i>>2]=d;break c}f=f+i|0;d=F[a+12>>2];if((d|0)>(j|0)){F[f>>2]=d;break c}F[f>>2]=j}d=F[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){j=f<<2;d=j+c|0;j=F[b+j>>2]+F[j+i>>2]|0;F[d>>2]=j;d:{if((j|0)>F[a+16>>2]){j=j-F[a+20>>2]|0}else{if((j|0)>=F[a+12>>2]){break d}j=j+F[a+20>>2]|0}F[d>>2]=j}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];v=F[f>>2];f=F[f+4>>2]-v|0;if((f|0)>=5){B=F[a+52>>2];w=F[a+48>>2];t=f>>>2|0;C=t>>>0>2?t:2;x=e&-2;y=e&1;D=e&-4;z=e&3;u=e-1|0;E=e<<2;n=1;while(1){e:{f:{g:{h:{if((n|0)!=(t|0)){j=F[(n<<2)+v>>2];s=(e|0)<=0;if(!s){ua(m,0,E)}if((j|0)==-1){g=L(e,n);break f}A=F[w+12>>2];q=0;f=j;while(1){h=F[(f<<2)+A>>2];i:{if((h|0)==-1){break i}o=F[B>>2];l=F[w>>2];k=F[o+(F[l+(h<<2)>>2]<<2)>>2];i=h+1|0;i=(i>>>0)%3|0?i:h-2|0;if((i|0)!=-1){g=F[l+(i<<2)>>2]}else{g=-1}j:{k:{if((h>>>0)%3|0){h=h-1|0;break k}h=h+2|0;i=-1;if((h|0)==-1){break j}}i=F[l+(h<<2)>>2]}if((k|0)>=(n|0)){break i}g=F[(g<<2)+o>>2];if((g|0)>=(n|0)){break i}i=F[o+(i<<2)>>2];if((i|0)>=(n|0)){break i}l:{if(s){break l}l=L(e,i);o=L(e,g);k=L(e,k);h=0;i=0;if(u){while(1){F[(h<<2)+p>>2]=(F[(h+l<<2)+c>>2]+F[(h+o<<2)+c>>2]|0)-F[(h+k<<2)+c>>2];g=h|1;F[(g<<2)+p>>2]=(F[(g+l<<2)+c>>2]+F[(g+o<<2)+c>>2]|0)-F[(g+k<<2)+c>>2];h=h+2|0;i=i+2|0;if((x|0)!=(i|0)){continue}break}}if(y){F[(h<<2)+p>>2]=(F[(h+l<<2)+c>>2]+F[(h+o<<2)+c>>2]|0)-F[(h+k<<2)+c>>2]}if(s){break l}o=0;h=0;k=0;if(u>>>0>2){while(1){l=h<<2;i=l+m|0;F[i>>2]=F[i>>2]+F[l+p>>2];g=l|4;i=g+m|0;F[i>>2]=F[i>>2]+F[g+p>>2];g=l|8;i=g+m|0;F[i>>2]=F[i>>2]+F[g+p>>2];g=l|12;i=g+m|0;F[i>>2]=F[i>>2]+F[g+p>>2];h=h+4|0;k=k+4|0;if((D|0)!=(k|0)){continue}break}}if(!z){break l}while(1){g=h<<2;i=g+m|0;F[i>>2]=F[i>>2]+F[g+p>>2];h=h+1|0;o=o+1|0;if((z|0)!=(o|0)){continue}break}}q=q+1|0}m:{n:{if((f>>>0)%3|0){h=f-1|0;break n}h=f+2|0;g=-1;if((h|0)==-1){break m}}f=F[(h<<2)+A>>2];g=-1;if((f|0)==-1){break m}g=f-1|0;if((f>>>0)%3|0){break m}g=f+2|0}f=g;if((j|0)!=(f|0)&(f|0)!=-1){continue}break}g=L(e,n);if(!q){break f}if(s){break g}h=0;f=0;if(!u){break h}while(1){i=h<<2;j=i+m|0;F[j>>2]=F[j>>2]/(q|0);j=(i|4)+m|0;F[j>>2]=F[j>>2]/(q|0);h=h+2|0;f=f+2|0;if((x|0)!=(f|0)){continue}break}break h}Ea();V()}if(!y){break g}f=(h<<2)+m|0;F[f>>2]=F[f>>2]/(q|0)}if((d|0)<=0){break e}k=F[r>>2];h=0;while(1){f=h<<2;j=F[f+m>>2];d=F[a+16>>2];o:{if((j|0)>(d|0)){F[f+k>>2]=d;break o}f=f+k|0;d=F[a+12>>2];if((d|0)>(j|0)){F[f>>2]=d;break o}F[f>>2]=j}d=F[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}f=0;if((d|0)<=0){break e}d=g<<2;i=d+c|0;j=b+d|0;while(1){g=f<<2;d=g+i|0;g=F[g+j>>2]+F[g+k>>2]|0;F[d>>2]=g;p:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break p}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}f=(L(n-1|0,e)<<2)+c|0;k=F[r>>2];h=0;while(1){j=h<<2;i=F[j+f>>2];d=F[a+16>>2];q:{if((i|0)>(d|0)){F[j+k>>2]=d;break q}j=j+k|0;d=F[a+12>>2];if((d|0)>(i|0)){F[j>>2]=d;break q}F[j>>2]=i}d=F[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}f=0;if((d|0)<=0){break e}d=g<<2;i=d+c|0;j=b+d|0;while(1){g=f<<2;d=g+i|0;g=F[g+j>>2]+F[g+k>>2]|0;F[d>>2]=g;r:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break r}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}n=n+1|0;if((C|0)!=(n|0)){continue}break}}ra(p);ra(m);return 1}function xj(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=M(0),k=0,l=0,m=M(0),n=M(0),o=M(0),p=M(0),q=M(0),r=M(0),s=M(0),t=0,u=M(0),v=M(0),w=0,x=0,y=M(0),z=M(0),A=M(0),B=0;a:{if((e|0)==2){F[a+64>>2]=f;F[a+72>>2]=2;e=sa(8);d=F[a+68>>2];F[a+68>>2]=e;if(d){ra(d)}F[a+8>>2]=2;w=a+32|0;e=F[w>>2];d=F[a+36>>2]-e|0;b:{if(d>>>0<=7){Aa(w,2-(d>>>2|0)|0);break b}if((d|0)==8){break b}F[a+36>>2]=e+8}d=F[a+56>>2];d=F[d+4>>2]-F[d>>2]|0;c:{if((d|0)<=0){f=0;break c}x=d>>2;B=(x|0)>1?x:1;f=1;while(1){d=F[a+56>>2];g=F[d>>2];if(F[d+4>>2]-g>>2>>>0<=l>>>0){break a}q=M(0);h=ea-48|0;ea=h;d=-1;g=F[g+(l<<2)>>2];e=-1;d:{if((g|0)==-1){break d}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;e=g-1|0;if((g>>>0)%3|0){break d}e=g+2|0}i=F[a+52>>2];g=F[i>>2];e:{f:{i=F[i+4>>2]-g>>2;t=d<<2;d=F[F[a+48>>2]+28>>2];t=F[t+d>>2];if(i>>>0<=t>>>0){break f}d=F[d+(e<<2)>>2];if(d>>>0>=i>>>0){break f}i=F[g+(d<<2)>>2];e=F[g+(t<<2)>>2];g:{if(!((i|0)>=(l|0)|(e|0)>=(l|0))){d=F[a+72>>2];g=(L(d,i)<<2)+c|0;m=M(F[g+4>>2]);d=(L(d,e)<<2)+c|0;p=M(F[d+4>>2]);y=M(F[d>>2]);n=M(F[g>>2]);if(!(y!=n|m!=p)){g=+m>2147483647;d=F[a+68>>2];if(M(N(m))<M(2147483648)){e=~~m}else{e=-2147483648}F[d+4>>2]=m<M(-2147483648)?-2147483648:g?-2147483648:e;g=+n>2147483647;if(M(N(n))<M(2147483648)){e=~~n}else{e=-2147483648}F[d>>2]=n<M(-2147483648)?-2147483648:g?-2147483648:e;e=1;break g}d=F[F[a+64>>2]+(l<<2)>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;g=F[a+60>>2];if(!G[g+84|0]){d=F[F[g+68>>2]+(d<<2)>>2]}Ya(g,d,D[g+24|0],h+32|0);e=F[F[a+64>>2]+(e<<2)>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}Ya(d,e,D[d+24|0],h+16|0);e=F[F[a+64>>2]+(i<<2)>>2];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}Ya(d,e,D[d+24|0],h);o=J[h+24>>2];r=M(J[h+8>>2]-o);s=J[h+20>>2];u=M(J[h+4>>2]-s);A=J[h+16>>2];v=M(J[h>>2]-A);z=M(M(r*r)+M(M(u*u)+M(M(v*v)+M(0))));h:{if(F[a+88>>2]>=258){j=M(0);if(!(z>M(0))){break h}}j=M(J[h+40>>2]-o);o=M(J[h+36>>2]-s);s=M(J[h+32>>2]-A);q=M(M(M(r*j)+M(M(u*o)+M(M(v*s)+M(0))))/z);j=M(j-M(r*q));r=M(j*j);j=M(o-M(u*q));o=M(j*j);j=M(s-M(v*q));j=M(U(M(M(r+M(o+M(M(j*j)+M(0))))/z)))}e=F[a+80>>2];if(e){d=e-1|0;g=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;m=M(m-p);o=M(M(m*q)+p);n=M(n-y);p=M(n*j);d=g>>>d&1;p=M(o+(d?p:M(-p)));j=M(j*m);k=R(+M(M(M(n*q)+y)+(d?M(-j):j))+.5);i:{if(k>2147483647?1:k<-2147483648|k!=k){d=F[a+68>>2];F[d>>2]=-2147483648;break i}d=F[a+68>>2];if(N(k)<2147483648){g=~~k}else{g=-2147483648}F[d>>2]=g}k=R(+p+.5);i=k>2147483647;if(N(k)<2147483648){g=~~k}else{g=-2147483648}F[d+4>>2]=k<-2147483648?-2147483648:k!=k?-2147483648:i?-2147483648:g}e=(e|0)!=0;break g}j:{if((e|0)<(l|0)){d=F[a+72>>2];g=L(e,d);break j}if((l|0)<=0){e=1;if(F[a+72>>2]<=0){break g}g=F[a+68>>2];d=0;while(1){F[g+(d<<2)>>2]=0;d=d+1|0;if((d|0)<F[a+72>>2]){continue}break}break g}d=F[a+72>>2];g=L(d,l-1|0)}e=1;if((d|0)<=0){break g}i=F[a+68>>2];d=0;while(1){F[i+(d<<2)>>2]=F[(d+g<<2)+c>>2];d=d+1|0;if((d|0)<F[a+72>>2]){continue}break}}ea=h+48|0;break e}Ea();V()}if(!e){break c}k:{if(F[a+8>>2]<=0){break k}h=F[a+68>>2];g=F[w>>2];d=0;while(1){e=d<<2;f=F[e+h>>2];i=F[a+16>>2];l:{if((f|0)>(i|0)){F[e+g>>2]=i;break l}e=e+g|0;i=F[a+12>>2];if((i|0)>(f|0)){F[e>>2]=i;break l}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=l<<3;h=d+c|0;i=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+i>>2]+F[f+g>>2]|0;F[d>>2]=f;m:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break m}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)<F[a+8>>2]){continue}break}}l=l+1|0;f=(x|0)>(l|0);if((l|0)!=(B|0)){continue}break}}a=f^1}else{a=0}return a&1}Ea();V()}function ij(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=M(0),k=0,l=0,m=M(0),n=M(0),o=M(0),p=M(0),q=M(0),r=M(0),s=M(0),t=M(0),u=M(0),v=0,w=0,x=M(0),y=M(0),z=M(0),A=0;a:{if((e|0)==2){F[a+64>>2]=f;F[a+72>>2]=2;e=sa(8);d=F[a+68>>2];F[a+68>>2]=e;if(d){ra(d)}F[a+8>>2]=2;v=a+32|0;e=F[v>>2];d=F[a+36>>2]-e|0;b:{if(d>>>0<=7){Aa(v,2-(d>>>2|0)|0);break b}if((d|0)==8){break b}F[a+36>>2]=e+8}d=F[a+56>>2];d=F[d+4>>2]-F[d>>2]|0;c:{if((d|0)<=0){f=0;break c}w=d>>2;A=(w|0)>1?w:1;f=1;while(1){e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=l>>>0){break a}q=M(0);h=ea-48|0;ea=h;g=-1;d:{e:{d=F[d+(l<<2)>>2];if((d|0)==-1){break e}i=F[a+48>>2];e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)!=-1){g=F[F[i>>2]+(e<<2)>>2]}e=-1;d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){e=F[F[i>>2]+(d<<2)>>2]}d=F[a+52>>2];i=F[d>>2];d=F[d+4>>2]-i>>2;if(d>>>0<=g>>>0|d>>>0<=e>>>0){break e}d=F[i+(g<<2)>>2];i=F[i+(e<<2)>>2];f:{if(!((i|0)>=(l|0)|(d|0)>=(l|0))){e=F[a+72>>2];g=(L(e,i)<<2)+c|0;m=M(F[g+4>>2]);e=(L(d,e)<<2)+c|0;p=M(F[e+4>>2]);x=M(F[e>>2]);n=M(F[g>>2]);if(!(x!=n|m!=p)){g=+m>2147483647;d=F[a+68>>2];if(M(N(m))<M(2147483648)){e=~~m}else{e=-2147483648}F[d+4>>2]=m<M(-2147483648)?-2147483648:g?-2147483648:e;g=+n>2147483647;if(M(N(n))<M(2147483648)){e=~~n}else{e=-2147483648}F[d>>2]=n<M(-2147483648)?-2147483648:g?-2147483648:e;d=1;break f}e=F[F[a+64>>2]+(l<<2)>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;g=F[a+60>>2];if(!G[g+84|0]){e=F[F[g+68>>2]+(e<<2)>>2]}Ya(g,e,D[g+24|0],h+32|0);e=F[F[a+64>>2]+(d<<2)>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}Ya(d,e,D[d+24|0],h+16|0);d=F[F[a+64>>2]+(i<<2)>>2];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;e=F[a+60>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ya(e,d,D[e+24|0],h);o=J[h+24>>2];r=M(J[h+8>>2]-o);s=J[h+20>>2];t=M(J[h+4>>2]-s);z=J[h+16>>2];u=M(J[h>>2]-z);y=M(M(r*r)+M(M(t*t)+M(M(u*u)+M(0))));g:{if(F[a+88>>2]>=258){j=M(0);if(!(y>M(0))){break g}}j=M(J[h+40>>2]-o);o=M(J[h+36>>2]-s);s=M(J[h+32>>2]-z);q=M(M(M(r*j)+M(M(t*o)+M(M(u*s)+M(0))))/y);j=M(j-M(r*q));r=M(j*j);j=M(o-M(t*q));o=M(j*j);j=M(s-M(u*q));j=M(U(M(M(r+M(o+M(M(j*j)+M(0))))/y)))}e=F[a+80>>2];if(e){d=e-1|0;g=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;m=M(m-p);o=M(M(m*q)+p);n=M(n-x);p=M(n*j);d=g>>>d&1;p=M(o+(d?p:M(-p)));j=M(j*m);k=R(+M(M(M(n*q)+x)+(d?M(-j):j))+.5);h:{if(k>2147483647?1:k<-2147483648|k!=k){d=F[a+68>>2];F[d>>2]=-2147483648;break h}d=F[a+68>>2];if(N(k)<2147483648){g=~~k}else{g=-2147483648}F[d>>2]=g}k=R(+p+.5);i=k>2147483647;if(N(k)<2147483648){g=~~k}else{g=-2147483648}F[d+4>>2]=k<-2147483648?-2147483648:k!=k?-2147483648:i?-2147483648:g}d=(e|0)!=0;break f}i:{if((d|0)<(l|0)){e=F[a+72>>2];g=L(d,e);break i}if((l|0)<=0){d=1;if(F[a+72>>2]<=0){break f}g=F[a+68>>2];e=0;while(1){F[g+(e<<2)>>2]=0;e=e+1|0;if((e|0)<F[a+72>>2]){continue}break}break f}e=F[a+72>>2];g=L(e,l-1|0)}d=1;if((e|0)<=0){break f}i=F[a+68>>2];e=0;while(1){F[i+(e<<2)>>2]=F[(e+g<<2)+c>>2];e=e+1|0;if((e|0)<F[a+72>>2]){continue}break}}ea=h+48|0;break d}Ea();V()}if(!d){break c}j:{if(F[a+8>>2]<=0){break j}h=F[a+68>>2];g=F[v>>2];d=0;while(1){e=d<<2;f=F[e+h>>2];i=F[a+16>>2];k:{if((f|0)>(i|0)){F[e+g>>2]=i;break k}e=e+g|0;i=F[a+12>>2];if((i|0)>(f|0)){F[e>>2]=i;break k}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break j}d=l<<3;h=d+c|0;i=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+i>>2]+F[f+g>>2]|0;F[d>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)<F[a+8>>2]){continue}break}}l=l+1|0;f=(w|0)>(l|0);if((l|0)!=(A|0)){continue}break}}a=f^1}else{a=0}return a&1}Ea();V()}function Hi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=M(0),f=0,g=0,h=0,i=0,j=0,k=0,l=M(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;if(F[c>>2]==F[c+4>>2]){h=F[d+80>>2];u=ea-16|0;ea=u;q=F[a+4>>2];j=F[d+48>>2];d=F[F[d>>2]>>2];i=D[b+24|0];c=u+8|0;F[c>>2]=1065353216;J[c>>2]=M(-1<<q^-1)/J[a+20>>2];s=sa((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!h|(i|0)<=0){break a}t=d+j|0;l=J[c>>2];k=F[a+8>>2];w=F[b>>2];c=F[b+48>>2];m=F[b+44>>2];v=F[b+40>>2];if(!G[b+84|0]){r=F[b+68>>2];q=i&-2;j=i&1;a=0;while(1){d=F[w>>2];b=Mj(v,m,F[r+(o<<2)>>2],0)+c|0;p=ta(s,d+b|0,v);b=0;n=0;if((i|0)!=1){while(1){d=t+(a<<2)|0;g=b<<2;e=M(R(M(M(l*M(J[g+p>>2]-J[k+g>>2]))+M(.5))));b:{if(M(N(e))<M(2147483648)){f=~~e;break b}f=-2147483648}F[d>>2]=f;f=g|4;e=M(R(M(M(l*M(J[f+p>>2]-J[f+k>>2]))+M(.5))));c:{if(M(N(e))<M(2147483648)){f=~~e;break c}f=-2147483648}F[d+4>>2]=f;b=b+2|0;a=a+2|0;n=n+2|0;if((q|0)!=(n|0)){continue}break}}if(j){d=t+(a<<2)|0;b=b<<2;e=M(R(M(M(l*M(J[b+p>>2]-J[b+k>>2]))+M(.5))));d:{if(M(N(e))<M(2147483648)){b=~~e;break d}b=-2147483648}F[d>>2]=b;a=a+1|0}o=o+1|0;if((h|0)!=(o|0)){continue}break}break a}r=i&-2;q=i&1;a=0;while(1){d=F[w>>2];b=Mj(v,m,p,f)+c|0;o=ta(s,d+b|0,v);b=0;n=0;if((i|0)!=1){while(1){d=t+(a<<2)|0;g=b<<2;e=M(R(M(M(l*M(J[g+o>>2]-J[k+g>>2]))+M(.5))));e:{if(M(N(e))<M(2147483648)){j=~~e;break e}j=-2147483648}F[d>>2]=j;j=g|4;e=M(R(M(M(l*M(J[j+o>>2]-J[k+j>>2]))+M(.5))));f:{if(M(N(e))<M(2147483648)){g=~~e;break f}g=-2147483648}F[d+4>>2]=g;b=b+2|0;a=a+2|0;n=n+2|0;if((r|0)!=(n|0)){continue}break}}if(q){d=t+(a<<2)|0;b=b<<2;e=M(R(M(M(l*M(J[b+o>>2]-J[b+k>>2]))+M(.5))));g:{if(M(N(e))<M(2147483648)){b=~~e;break g}b=-2147483648}F[d>>2]=b;a=a+1|0}b=p+1|0;f=b?f:f+1|0;p=b;if((h|0)!=(b|0)|f){continue}break}}ra(s);ea=u+16|0;return 1}u=ea-16|0;ea=u;f=F[a+4>>2];j=F[d+48>>2];h=F[F[d>>2]>>2];m=D[b+24|0];d=u+8|0;F[d>>2]=1065353216;J[d>>2]=M(-1<<f^-1)/J[a+20>>2];t=sa((m|0)!=(m&1073741823)?-1:m<<2);f=F[c+4>>2];s=F[c>>2];h:{if((f|0)==(s|0)|(m|0)<=0){break h}n=j+h|0;c=f-s>>2;w=c>>>0>1?c:1;l=J[d>>2];i=F[a+8>>2];x=F[b>>2];d=F[b+48>>2];v=F[b+44>>2];p=F[b+40>>2];if(G[b+84|0]){q=m&-2;j=m&1;a=0;c=0;while(1){f=F[x>>2];b=Mj(p,v,F[s+(c<<2)>>2],0)+d|0;g=ta(t,f+b|0,p);b=0;k=0;if((m|0)!=1){while(1){f=n+(a<<2)|0;r=b<<2;e=M(R(M(M(l*M(J[r+g>>2]-J[i+r>>2]))+M(.5))));i:{if(M(N(e))<M(2147483648)){h=~~e;break i}h=-2147483648}F[f>>2]=h;h=r|4;e=M(R(M(M(l*M(J[h+g>>2]-J[i+h>>2]))+M(.5))));j:{if(M(N(e))<M(2147483648)){h=~~e;break j}h=-2147483648}F[f+4>>2]=h;b=b+2|0;a=a+2|0;k=k+2|0;if((q|0)!=(k|0)){continue}break}}if(j){f=n+(a<<2)|0;b=b<<2;e=M(R(M(M(l*M(J[b+g>>2]-J[b+i>>2]))+M(.5))));k:{if(M(N(e))<M(2147483648)){b=~~e;break k}b=-2147483648}F[f>>2]=b;a=a+1|0}c=c+1|0;if((w|0)!=(c|0)){continue}break}break h}r=F[b+68>>2];q=m&-2;j=m&1;a=0;c=0;while(1){f=F[x>>2];b=Mj(p,v,F[r+(F[s+(c<<2)>>2]<<2)>>2],0)+d|0;o=ta(t,f+b|0,p);b=0;k=0;if((m|0)!=1){while(1){f=n+(a<<2)|0;g=b<<2;e=M(R(M(M(l*M(J[g+o>>2]-J[i+g>>2]))+M(.5))));l:{if(M(N(e))<M(2147483648)){h=~~e;break l}h=-2147483648}F[f>>2]=h;h=g|4;e=M(R(M(M(l*M(J[h+o>>2]-J[i+h>>2]))+M(.5))));m:{if(M(N(e))<M(2147483648)){g=~~e;break m}g=-2147483648}F[f+4>>2]=g;b=b+2|0;a=a+2|0;k=k+2|0;if((q|0)!=(k|0)){continue}break}}if(j){f=n+(a<<2)|0;b=b<<2;e=M(R(M(M(l*M(J[b+o>>2]-J[b+i>>2]))+M(.5))));n:{if(M(N(e))<M(2147483648)){b=~~e;break n}b=-2147483648}F[f>>2]=b;a=a+1|0}c=c+1|0;if((w|0)!=(c|0)){continue}break}}ra(t);ea=u+16|0;return 1}function Xi(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=ea-32|0;ea=e;a:{b:{switch(c-2|0){case 0:c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[c>>2]+8>>2]](c)|0)==1){h=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];c:{if((ga[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break c}g=ga[F[F[c>>2]+36>>2]](c)|0;a=ga[F[F[c>>2]+44>>2]](c,f)|0;if(!g|!a){break c}f=ga[F[F[c>>2]+40>>2]](c,f)|0;d:{if(f){if((b|0)!=6){break c}b=F[c+44>>2];d=sa(112);F[d+4>>2]=h;c=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=c;c=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=c;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;c=a+12|0;F[d+36>>2]=c;F[d+32>>2]=f;F[d+28>>2]=b;F[d+68>>2]=a;F[d- -64>>2]=c;F[d+60>>2]=f;F[d+56>>2]=b;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=7144;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=7668;a=d+96|0;break d}if((b|0)!=6){break c}b=F[c+44>>2];d=sa(112);F[d+4>>2]=h;c=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=c;c=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=c;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;c=a+12|0;F[d+36>>2]=c;F[d+32>>2]=g;F[d+28>>2]=b;F[d+68>>2]=a;F[d- -64>>2]=c;F[d+60>>2]=g;F[d+56>>2]=b;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=8080;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=8472;a=d+96|0}F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=sa(28);F[d+4>>2]=i;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=8860;break a;case 1:break b;default:break a}}c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[c>>2]+8>>2]](c)|0)==1){h=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];e:{if((ga[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break e}g=ga[F[F[c>>2]+36>>2]](c)|0;a=ga[F[F[c>>2]+44>>2]](c,f)|0;if(!g|!a){break e}f=ga[F[F[c>>2]+40>>2]](c,f)|0;f:{if(f){if((b|0)!=6){break e}b=F[c+44>>2];d=sa(112);F[d+4>>2]=h;c=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=c;c=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=c;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;c=a+12|0;F[d+36>>2]=c;F[d+32>>2]=f;F[d+28>>2]=b;F[d+68>>2]=a;F[d- -64>>2]=c;F[d+60>>2]=f;F[d+56>>2]=b;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=9028;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=9592;a=d+96|0;break f}if((b|0)!=6){break e}b=F[c+44>>2];d=sa(112);F[d+4>>2]=h;c=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=c;c=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=c;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;c=a+12|0;F[d+36>>2]=c;F[d+32>>2]=g;F[d+28>>2]=b;F[d+68>>2]=a;F[d- -64>>2]=c;F[d+60>>2]=g;F[d+56>>2]=b;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=10032;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=10452;a=d+96|0}F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=sa(28);F[d+4>>2]=i;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=10864}ea=e+32|0;return d|0}function bd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+4>>2];c=F[a>>2];e=(d-c|0)/144|0;if(e>>>0<b>>>0){c=a;e=b-e|0;f=F[a+8>>2];d=F[a+4>>2];a:{if(e>>>0<=(f-d|0)/144>>>0){b:{if(!e){break b}a=d;f=e&7;if(f){b=0;while(1){La(a);a=a+144|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}d=L(e,144)+d|0;if((e-1&268435455)>>>0<7){break b}while(1){La(a);La(a+144|0);La(a+288|0);La(a+432|0);La(a+576|0);La(a+720|0);La(a+864|0);La(a+1008|0);a=a+1152|0;if((d|0)!=(a|0)){continue}break}}F[c+4>>2]=d;break a}c:{d:{e:{b=F[c>>2];g=(d-b|0)/144|0;a=g+e|0;if(a>>>0<29826162){d=0;b=(f-b|0)/144|0;f=b<<1;f=b>>>0<14913080?a>>>0<f>>>0?f:a:29826161;if(f){if(f>>>0>=29826162){break e}h=sa(L(f,144))}b=L(g,144)+h|0;a=b;g=e&7;if(g){a=b;while(1){La(a);a=a+144|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}g=L(e,144)+b|0;if((e-1&268435455)>>>0>=7){while(1){La(a);La(a+144|0);La(a+288|0);La(a+432|0);La(a+576|0);La(a+720|0);La(a+864|0);La(a+1008|0);a=a+1152|0;if((g|0)!=(a|0)){continue}break}}e=L(f,144)+h|0;a=F[c+4>>2];d=F[c>>2];if((a|0)==(d|0)){break d}while(1){b=b-144|0;a=a-144|0;F[b>>2]=F[a>>2];F[b+4>>2]=F[a+4>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=F[a+12>>2];F[a+12>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[b+16>>2]=F[a+16>>2];F[b+20>>2]=F[a+20>>2];F[b+24>>2]=F[a+24>>2];F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;f=G[a+28|0];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;D[b+28|0]=f;F[b+32>>2]=F[a+32>>2];F[b+36>>2]=F[a+36>>2];F[b+40>>2]=F[a+40>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[b+52>>2]=0;F[b+44>>2]=0;F[b+48>>2]=0;F[b+44>>2]=F[a+44>>2];F[b+48>>2]=F[a+48>>2];F[b+52>>2]=F[a+52>>2];F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;f=b- -64|0;F[f>>2]=0;F[b+56>>2]=0;F[b+60>>2]=0;F[b+56>>2]=F[a+56>>2];F[b+60>>2]=F[a+60>>2];h=f;f=a- -64|0;F[h>>2]=F[f>>2];F[f>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[b+68>>2]=F[a+68>>2];f=F[a+72>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+72>>2]=f;F[b+76>>2]=F[a+76>>2];F[b+80>>2]=F[a+80>>2];F[b+84>>2]=F[a+84>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[b+96>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+88>>2]=F[a+88>>2];F[b+92>>2]=F[a+92>>2];F[b+96>>2]=F[a+96>>2];F[a+96>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;f=G[a+100|0];F[b+112>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;D[b+100|0]=f;F[b+104>>2]=F[a+104>>2];F[b+108>>2]=F[a+108>>2];F[b+112>>2]=F[a+112>>2];F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[b+124>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+116>>2]=F[a+116>>2];F[b+120>>2]=F[a+120>>2];F[b+124>>2]=F[a+124>>2];F[a+124>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;f=F[a+128>>2];F[b+140>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+128>>2]=f;F[b+132>>2]=F[a+132>>2];F[b+136>>2]=F[a+136>>2];F[b+140>>2]=F[a+140>>2];F[a+140>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;if((a|0)!=(d|0)){continue}break}F[c+8>>2]=e;a=F[c+4>>2];F[c+4>>2]=g;d=F[c>>2];F[c>>2]=b;if((a|0)==(d|0)){break c}while(1){b=a-144|0;c=F[b+132>>2];if(c){F[a-8>>2]=c;ra(c)}c=F[a-28>>2];if(c){F[a-24>>2]=c;ra(c)}c=F[a-40>>2];if(c){F[a-36>>2]=c;ra(c)}oc(a-140|0);a=b;if((d|0)!=(a|0)){continue}break}break c}va();V()}za();V()}F[c+8>>2]=e;F[c+4>>2]=g;F[c>>2]=b}if(d){ra(d)}}return}if(b>>>0<e>>>0){c=c+L(b,144)|0;if((c|0)!=(d|0)){while(1){b=d-144|0;e=F[b+132>>2];if(e){F[d-8>>2]=e;ra(e)}e=F[d-28>>2];if(e){F[d-24>>2]=e;ra(e)}e=F[d-40>>2];if(e){F[d-36>>2]=e;ra(e)}oc(d-140|0);d=b;if((b|0)!=(c|0)){continue}break}}F[a+4>>2]=c}}function Me(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ea-80|0;ea=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;nc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){ra(F[j>>2])}if(G[f+31|0]){b=sa(32);c=G[1521]|G[1522]<<8|(G[1523]<<16|G[1524]<<24);D[b+23|0]=c;D[b+24|0]=c>>>8;D[b+25|0]=c>>>16;D[b+26|0]=c>>>24;c=G[1518]|G[1519]<<8|(G[1520]<<16|G[1521]<<24);d=G[1514]|G[1515]<<8|(G[1516]<<16|G[1517]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1510]|G[1511]<<8|(G[1512]<<16|G[1513]<<24);d=G[1506]|G[1507]<<8|(G[1508]<<16|G[1509]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1502]|G[1503]<<8|(G[1504]<<16|G[1505]<<24);d=G[1498]|G[1499]<<8|(G[1500]<<16|G[1501]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+27|0]=0;F[a>>2]=-1;Ba(j,b,27);ra(b);break a}i=ea-16|0;ea=i;b:{c:{switch(D[f+32|0]){case 0:e=sa(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;e=Sc(e);F[e>>2]=13496;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;case 1:e=sa(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;e=Sc(e);F[e>>2]=13404;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;default:break c}}g=sa(32);e=G[1550]|G[1551]<<8|(G[1552]<<16|G[1553]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1546]|G[1547]<<8|(G[1548]<<16|G[1549]<<24);h=G[1542]|G[1543]<<8|(G[1544]<<16|G[1545]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1538]|G[1539]<<8|(G[1540]<<16|G[1541]<<24);h=G[1534]|G[1535]<<8|(G[1536]<<16|G[1537]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1530]|G[1531]<<8|(G[1532]<<16|G[1533]<<24);h=G[1526]|G[1527]<<8|(G[1528]<<16|G[1529]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;Ba(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];F[f+16>>2]=0;break d}Ba(h,F[i+4>>2],F[i+8>>2]);e=D[i+15|0];F[f+16>>2]=0;if((e|0)>=0){break d}ra(F[i+4>>2])}ra(g)}ea=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}Ba(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;se(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){ra(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ga[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}ra(F[f+4>>2])}ea=f+80|0}function ri(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=F[a+32>>2];e=F[b+16>>2];d=F[b+12>>2];c=F[b+20>>2];if(I[b+8>>2]>e>>>0&(d|0)>=(c|0)|(c|0)<(d|0)){f=G[e+F[b>>2]|0];d=e+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}a:{b:{c:{d:{switch(f|0){case 0:b=sa(384);F[b>>2]=11384;ua(b+4|0,0,80);F[b+96>>2]=0;F[b+100>>2]=0;F[b+92>>2]=-1;F[b+84>>2]=-1;F[b+88>>2]=-1;F[b+104>>2]=0;F[b+108>>2]=0;F[b+112>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+124>>2]=0;F[b+128>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+140>>2]=0;F[b+144>>2]=0;F[b+148>>2]=0;F[b+156>>2]=0;F[b+160>>2]=0;F[b+152>>2]=1065353216;F[b+164>>2]=0;F[b+168>>2]=0;F[b+172>>2]=0;F[b+176>>2]=0;F[b+180>>2]=0;F[b+184>>2]=0;F[b+188>>2]=0;F[b+192>>2]=0;F[b+196>>2]=0;F[b+200>>2]=0;F[b+204>>2]=0;F[b+208>>2]=0;F[b+212>>2]=-1;F[b+216>>2]=0;F[b+220>>2]=0;F[b+224>>2]=0;Ka(b+232|0);Ka(b+272|0);c=b+312|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;Ka(b+328|0);F[b+376>>2]=0;F[b+368>>2]=0;F[b+372>>2]=0;break c;case 1:b=sa(424);F[b>>2]=11436;ua(b+4|0,0,80);F[b+96>>2]=0;F[b+100>>2]=0;F[b+92>>2]=-1;F[b+84>>2]=-1;F[b+88>>2]=-1;F[b+104>>2]=0;F[b+108>>2]=0;F[b+112>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+124>>2]=0;F[b+128>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+140>>2]=0;F[b+144>>2]=0;F[b+148>>2]=0;F[b+156>>2]=0;F[b+160>>2]=0;F[b+152>>2]=1065353216;F[b+164>>2]=0;F[b+168>>2]=0;F[b+172>>2]=0;F[b+176>>2]=0;F[b+180>>2]=0;F[b+184>>2]=0;F[b+188>>2]=0;F[b+192>>2]=0;F[b+196>>2]=0;F[b+200>>2]=0;F[b+204>>2]=0;F[b+208>>2]=0;F[b+212>>2]=-1;F[b+216>>2]=0;F[b+220>>2]=0;F[b+224>>2]=0;Ka(b+232|0);Ka(b+272|0);c=b+312|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;Ka(b+328|0);F[b+392>>2]=0;F[b+396>>2]=0;F[b+384>>2]=0;F[b+388>>2]=0;F[b+376>>2]=0;F[b+380>>2]=0;F[b+368>>2]=0;F[b+372>>2]=0;c=b+400|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;F[b+416>>2]=-1;F[b+420>>2]=-1;break c;case 2:break d;default:break b}}b=sa(440);F[b>>2]=11484;ua(b+4|0,0,80);F[b+96>>2]=0;F[b+100>>2]=0;F[b+92>>2]=-1;F[b+84>>2]=-1;F[b+88>>2]=-1;F[b+104>>2]=0;F[b+108>>2]=0;F[b+112>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+124>>2]=0;F[b+128>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+140>>2]=0;F[b+144>>2]=0;F[b+148>>2]=0;F[b+156>>2]=0;F[b+160>>2]=0;F[b+152>>2]=1065353216;F[b+164>>2]=0;F[b+168>>2]=0;F[b+172>>2]=0;F[b+176>>2]=0;F[b+180>>2]=0;F[b+184>>2]=0;F[b+188>>2]=0;F[b+192>>2]=0;F[b+196>>2]=0;F[b+200>>2]=0;F[b+204>>2]=0;F[b+208>>2]=0;F[b+212>>2]=-1;F[b+216>>2]=0;F[b+220>>2]=0;F[b+224>>2]=0;Ka(b+232|0);Ka(b+272|0);c=b+312|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;Ka(b+328|0);F[b+392>>2]=0;F[b+396>>2]=0;F[b+384>>2]=0;F[b+388>>2]=0;F[b+376>>2]=0;F[b+380>>2]=0;F[b+368>>2]=0;F[b+372>>2]=0;F[b+416>>2]=0;F[b+420>>2]=0;F[b+408>>2]=2;F[b+412>>2]=7;F[b+400>>2]=-1;F[b+404>>2]=-1;F[b+424>>2]=0;F[b+428>>2]=0;F[b+432>>2]=0;F[b+436>>2]=0}c=F[a+48>>2];F[a+48>>2]=b;if(!c){break a}ga[F[F[c>>2]+4>>2]](c)}b=F[a+48>>2];if(b){break a}return 0}a=ga[F[F[b>>2]+8>>2]](b,a)|0}else{a=0}return a|0}function Mf(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;f=ea-704|0;ea=f;m=1;a:{b:{c:{d:{if(H[b+38>>1]<515){break d}m=0;c=F[b+20>>2];e=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(e|0)&d>>>0>=I[b+8>>2]|(c|0)>(e|0)){break d}o=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;n=F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+80>>2];c=ga[F[F[a>>2]+24>>2]](a)|0;F[f+696>>2]=0;F[f+688>>2]=0;F[f+692>>2]=0;if(c){if(c>>>0>=214748365){break c}c=L(c,20);d=sa(c);F[f+688>>2]=d;F[f+696>>2]=c+d;c=c-20|0;c=(c-((c>>>0)%20|0)|0)+20|0;q=f,r=ua(d,0,c)+c|0,F[q+692>>2]=r}e:{if((ga[F[F[a>>2]+24>>2]](a)|0)>0){while(1){c=ga[F[F[a>>2]+20>>2]](a,l)|0;e=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];rb(e,n);D[e+84|0]=1;F[e+72>>2]=F[e+68>>2];c=F[e+28>>2];if(c>>>0>9){break e}f:{g:{h:{d=1<<c;if(!(d&42)){if(d&84){break f}if((c|0)!=9){break e}c=D[e+24|0];d=Gb(f);g=c;c=L(c,F[3401]);kc(d,F[e+56>>2],g,6,0,c,c>>31);c=dc(sa(96),d);F[f+656>>2]=c;D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];rb(c,n);c=F[a+64>>2];if(c>>>0>=I[a+68>>2]){break h}d=F[f+656>>2];F[f+656>>2]=0;F[c>>2]=d;d=c+4|0;F[a+64>>2]=d;break g}d=0;if(D[e+24|0]<=0){break f}while(1){c=F[a+52>>2];g=F[a+56>>2];i:{if(c>>>0<g>>>0){F[c>>2]=0;F[a+52>>2]=c+4;break i}h=F[a+48>>2];k=c-h|0;j=k>>2;c=j+1|0;if(c>>>0>=1073741824){break b}p=j<<2;g=g-h|0;j=g>>1;g=g>>>0<2147483644?c>>>0<j>>>0?j:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=sa(g<<2)}else{c=0}j=p+c|0;F[j>>2]=0;if((k|0)>0){ta(c,h,k)}F[a+56>>2]=c+(g<<2);F[a+52>>2]=j+4;F[a+48>>2]=c;if(!h){break i}ra(h)}d=d+1|0;if((d|0)<D[e+24|0]){continue}break}break f}d=0;j:{k:{l:{e=F[a+60>>2];h=F[a+64>>2]-e>>2;c=h+1|0;if(c>>>0<1073741824){e=F[a+68>>2]-e|0;g=e>>1;e=e>>>0<2147483644?c>>>0<g>>>0?g:c:1073741823;if(e){if(e>>>0>=1073741824){break l}d=sa(e<<2)}g=F[f+656>>2];F[f+656>>2]=0;c=(h<<2)+d|0;F[c>>2]=g;h=(e<<2)+d|0;g=c+4|0;d=F[a+64>>2];e=F[a+60>>2];if((d|0)==(e|0)){break k}while(1){d=d-4|0;k=F[d>>2];F[d>>2]=0;c=c-4|0;F[c>>2]=k;if((d|0)!=(e|0)){continue}break}F[a+68>>2]=h;d=F[a+64>>2];F[a+64>>2]=g;e=F[a+60>>2];F[a+60>>2]=c;if((d|0)==(e|0)){break j}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}break j}va();V()}za();V()}F[a+68>>2]=h;F[a+64>>2]=g;F[a+60>>2]=c}if(e){ra(e)}d=F[a+64>>2]}e=F[d-4>>2];c=F[f+656>>2];F[f+656>>2]=0;if(!c){break f}Ja(c)}h=F[e+28>>2];c=h-1|0;if(c>>>0<=10){d=F[(c<<2)+13584>>2]}else{d=-1}c=F[f+688>>2]+L(l,20)|0;g=D[e+24|0];F[c+16>>2]=g;F[c+12>>2]=(d|0)>0?d:0;F[c+8>>2]=h;F[c+4>>2]=i;F[c>>2]=e;i=g+i|0;l=l+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(l|0)){continue}break}}a=zc(f+656|0,f+688|0);m:{n:{o:{switch(o|0){case 0:c=zb(f,i);b=zd(c,b,a);Ab(c);if(b){break n}break m;case 1:c=zb(f,i);b=yd(c,b,a);Ab(c);if(b){break n}break m;case 2:c=xb(f,i);b=xd(c,b,a);yb(c);if(b){break n}break m;case 3:c=xb(f,i);b=wd(c,b,a);yb(c);if(b){break n}break m;case 4:c=cb(f,i);b=vd(c,b,a);db(c);if(b){break n}break m;case 5:c=cb(f,i);b=ud(c,b,a);db(c);if(b){break n}break m;case 6:break o;default:break m}}c=cb(f,i);b=td(c,b,a);db(c);if(!b){break m}}m=1}b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a>>2];if(!b){break e}F[a+4>>2]=b;ra(b)}a=F[f+688>>2];if(!a){break d}F[f+692>>2]=a;ra(a)}ea=f+704|0;return m|0}va();V()}va();V()}za();V()}function Mb(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=ea-96|0;ea=f;d=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=d;a:{if((b|0)==-1){break a}l=F[a+20>>2];e=F[l>>2];d=F[F[d>>2]+(b<<2)>>2];if(d>>>0>=F[l+4>>2]-e>>2>>>0){break a}d=F[F[a+8>>2]+(F[e+(d<<2)>>2]<<2)>>2];e=F[a+4>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}F[f+72>>2]=0;F[f+76>>2]=0;l=f- -64|0;F[l>>2]=0;F[l+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Va(e,d,D[e+24|0],f+56|0);d=b+1|0;l=(d>>>0)%3|0?d:b-2|0;i=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){e=l;d=i;d:{if(!F[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}h=F[a+20>>2];b=F[h>>2];e=F[F[F[a+16>>2]>>2]+(e<<2)>>2];if(e>>>0>=F[h+4>>2]-b>>2>>>0){break b}e=F[F[a+8>>2]+(F[(e<<2)+b>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<2)>>2]}F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;Va(b,e,D[b+24|0],f+32|0);if((d|0)==-1){break c}e=F[a+20>>2];b=F[e>>2];d=F[F[F[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=F[e+4>>2]-b>>2>>>0){break c}e=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<2)>>2]}F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;Va(b,e,D[b+24|0],f+8|0);d=F[f+8>>2];b=F[f+56>>2];e=d-b|0;h=F[f+60>>2];j=F[f+12>>2]-(h+(b>>>0>d>>>0)|0)|0;p=F[f+40>>2];d=F[f+64>>2];s=p-d|0;t=F[f+68>>2];p=F[f+44>>2]-(t+(d>>>0>p>>>0)|0)|0;u=Mj(e,j,s,p);v=o-u|0;o=g-(fa+(o>>>0<u>>>0)|0)|0;k=v;g=F[f+16>>2];u=g-d|0;t=F[f+20>>2]-((d>>>0>g>>>0)+t|0)|0;g=F[f+32>>2];v=g-b|0;h=F[f+36>>2]-((b>>>0>g>>>0)+h|0)|0;d=Mj(u,t,v,h);b=k+d|0;g=fa+o|0;g=b>>>0<d>>>0?g+1|0:g;o=b;x=m;k=e;d=j;b=F[f+48>>2];m=F[f+72>>2];e=b-m|0;j=F[f+76>>2];w=F[f+52>>2]-(j+(b>>>0<m>>>0)|0)|0;k=Mj(k,d,e,w);d=x+k|0;b=fa+n|0;b=d>>>0<k>>>0?b+1|0:b;n=F[f+24>>2];k=n-m|0;j=F[f+28>>2]-((m>>>0>n>>>0)+j|0)|0;n=Mj(k,j,v,h);m=d-n|0;n=b-(fa+(d>>>0<n>>>0)|0)|0;b=Mj(u,t,e,w);d=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Mj(k,j,s,p);q=r+d|0;b=fa+b|0;b=q>>>0<r>>>0?b+1|0:b;r=b;uc(f+80|0);b=F[f+88>>2];if((b|0)!=-1){continue}break}b=r>>31;d=b^q;j=d-b|0;h=(b^r)-((b>>>0>d>>>0)+b|0)|0;p=-1;d=2147483647;b=n>>31;l=b^m;e=(b^n)-((b>>>0>l>>>0)+b|0)|0;b=l-b|0;s=b^-1;i=e^2147483647;k=g;e:{f:{if(!F[a+28>>2]){if((i|0)==(h|0)&j>>>0>s>>>0|i>>>0<h>>>0){break e}i=g;a=b;d=b+j|0;b=e+h|0;b=a>>>0>d>>>0?b+1|0:b;a=g>>31;h=a^o;j=h-a|0;g=d+j|0;e=(a^i)-((a>>>0>h>>>0)+a|0)|0;a=g;g=e^2147483647;g=(g|0)==(b|0)&(j^-1)>>>0<d>>>0|b>>>0>g>>>0;a=g?-1:a;if(!(g&0)&(a|0)<=536870912|(a|0)<536870912){break e}b=0;a=a>>>29|0;break f}g:{if((i|0)==(h|0)&j>>>0>s>>>0|i>>>0<h>>>0){break g}a=b;i=b+j|0;b=e+h|0;b=a>>>0>i>>>0?b+1|0:b;a=i;h=g;e=g>>31;g=e;i=e^o;e=(e^h)-(e+(e>>>0>i>>>0)|0)|0;g=i-g|0;i=e^2147483647;if((i|0)==(b|0)&(g^-1)>>>0<a>>>0|b>>>0>i>>>0){break g}b=b+e|0;a=a+g|0;b=a>>>0<g>>>0?b+1|0:b;p=a;d=b;if(!b&a>>>0<536870913){break e}}b=d>>>29|0;a=(d&536870911)<<3|p>>>29}o=Nj(o,k,a,b);m=Nj(m,n,a,b);q=Nj(q,r,a,b)}F[c+8>>2]=o;F[c+4>>2]=m;F[c>>2]=q;ea=f+96|0;return}Ea();V()}Ea();V()}Ea();V()}function Vd(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=F[a+12>>2];d=F[a+8>>2];if(c-d>>2>>>0<=b>>>0){break a}e=d+(b<<2)|0;d=F[e>>2];i=F[d+60>>2];g=F[d+56>>2];d=e+4|0;b:{if((d|0)!=(c|0)){while(1){h=F[d>>2];F[d>>2]=0;f=F[e>>2];F[e>>2]=h;if(f){Ja(f)}e=e+4|0;d=d+4|0;if((d|0)!=(c|0)){continue}break}c=F[a+12>>2];if((e|0)==(c|0)){break b}}while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){Ja(d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e;f=F[a+4>>2];c:{if(!f|(i|0)<0){break c}c=F[f+24>>2];d=F[f+28>>2];if((c|0)==(d|0)){break c}while(1){if((i|0)==F[F[c>>2]+24>>2]){e=c+4|0;i=F[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=F[e>>2];F[e>>2]=0;d=F[c>>2];F[c>>2]=h;if(d){Ta(d+12|0,F[d+16>>2]);Sa(d,F[d+4>>2]);ra(d)}c=c+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=F[f+28>>2];if((e|0)==(c|0)){break d}}while(1){e=e-4|0;d=F[e>>2];F[e>>2]=0;if(d){Ta(d+12|0,F[d+16>>2]);Sa(d,F[d+4>>2]);ra(d)}if((c|0)!=(e|0)){continue}break}}F[f+28>>2]=c;break c}c=c+4|0;if((d|0)!=(c|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=L(g,12)+a|0;c=F[e+20>>2];d=F[e+24>>2];if((c|0)==(d|0)){break f}while(1){if(F[c>>2]==(b|0)){break f}c=c+4|0;if((d|0)!=(c|0)){continue}break}break e}if((c|0)==(d|0)){break e}f=c+4|0;i=d-f|0;if((d|0)!=(f|0)){Ra(c,f,i)}F[e+24>>2]=c+i}c=F[a+24>>2];e=F[a+20>>2];g:{if((c|0)==(e|0)){break g}d=c-e|0;c=d>>2;f=c>>>0>1?c:1;i=f&1;c=0;if(d>>>0>=8){f=f&-2;d=0;while(1){g=c<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}c=c+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!i){break g}c=e+(c<<2)|0;d=F[c>>2];if((d|0)<=(b|0)){break g}F[c>>2]=d-1}c=F[a+36>>2];e=F[a+32>>2];h:{if((c|0)==(e|0)){break h}d=c-e|0;c=d>>2;f=c>>>0>1?c:1;i=f&1;c=0;if(d>>>0>=8){f=f&-2;d=0;while(1){g=c<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}c=c+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!i){break h}c=e+(c<<2)|0;d=F[c>>2];if((d|0)<=(b|0)){break h}F[c>>2]=d-1}c=F[a+48>>2];e=F[a+44>>2];i:{if((c|0)==(e|0)){break i}d=c-e|0;c=d>>2;f=c>>>0>1?c:1;i=f&1;c=0;if(d>>>0>=8){f=f&-2;d=0;while(1){g=c<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}c=c+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!i){break i}c=e+(c<<2)|0;d=F[c>>2];if((d|0)<=(b|0)){break i}F[c>>2]=d-1}c=F[a+60>>2];e=F[a+56>>2];j:{if((c|0)==(e|0)){break j}d=c-e|0;c=d>>2;f=c>>>0>1?c:1;i=f&1;c=0;if(d>>>0>=8){f=f&-2;d=0;while(1){g=c<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}c=c+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!i){break j}c=e+(c<<2)|0;d=F[c>>2];if((d|0)<=(b|0)){break j}F[c>>2]=d-1}c=F[a+72>>2];a=F[a+68>>2];if((c|0)==(a|0)){break a}d=c-a|0;c=d>>2;e=c>>>0>1?c:1;f=e&1;c=0;if(d>>>0>=8){e=e&-2;d=0;while(1){i=c<<2;g=i+a|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}i=a+(i|4)|0;g=F[i>>2];if((g|0)>(b|0)){F[i>>2]=g-1}c=c+2|0;d=d+2|0;if((e|0)!=(d|0)){continue}break}}if(!f){break a}d=b;a=a+(c<<2)|0;b=F[a>>2];if((d|0)>=(b|0)){break a}F[a>>2]=b-1}}function ra(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=F[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=F[d>>2];d=d-b|0;if(d>>>0<I[4292]){break a}a=a+b|0;if(F[4293]!=(d|0)){if(b>>>0<=255){e=F[d+8>>2];b=b>>>3|0;c=F[d+12>>2];if((c|0)==(e|0)){i=17152,j=F[4288]&Qj(b),F[i>>2]=j;break b}F[e+12>>2]=c;F[c+8>>2]=e;break b}h=F[d+24>>2];b=F[d+12>>2];c:{if((d|0)!=(b|0)){c=F[d+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break c}d:{e=d+20|0;c=F[e>>2];if(c){break d}e=d+16|0;c=F[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break b}e=F[d+28>>2];c=(e<<2)+17456|0;e:{if(F[c>>2]==(d|0)){F[c>>2]=b;if(b){break e}i=17156,j=F[4289]&Qj(e),F[i>>2]=j;break b}F[h+(F[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}F[b+24>>2]=h;c=F[d+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[d+20>>2];if(!c){break b}F[b+20>>2]=c;F[c+24>>2]=b;break b}b=F[f+4>>2];if((b&3)!=3){break b}F[4290]=a;F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=F[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(F[4294]==(f|0)){F[4294]=d;a=F[4291]+a|0;F[4291]=a;F[d+4>>2]=a|1;if(F[4293]!=(d|0)){break a}F[4290]=0;F[4293]=0;return}if(F[4293]==(f|0)){F[4293]=d;a=F[4290]+a|0;F[4290]=a;F[d+4>>2]=a|1;F[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=F[f+8>>2];b=b>>>3|0;c=F[f+12>>2];if((c|0)==(e|0)){i=17152,j=F[4288]&Qj(b),F[i>>2]=j;break g}F[e+12>>2]=c;F[c+8>>2]=e;break g}h=F[f+24>>2];b=F[f+12>>2];h:{if((f|0)!=(b|0)){c=F[f+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break h}i:{e=f+20|0;c=F[e>>2];if(c){break i}e=f+16|0;c=F[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break g}e=F[f+28>>2];c=(e<<2)+17456|0;j:{if(F[c>>2]==(f|0)){F[c>>2]=b;if(b){break j}i=17156,j=F[4289]&Qj(e),F[i>>2]=j;break g}F[h+(F[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}F[b+24>>2]=h;c=F[f+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[f+20>>2];if(!c){break g}F[b+20>>2]=c;F[c+24>>2]=b}F[d+4>>2]=a|1;F[a+d>>2]=a;if(F[4293]!=(d|0)){break f}F[4290]=a;return}F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a}if(a>>>0<=255){b=(a&-8)+17192|0;c=F[4288];a=1<<(a>>>3);k:{if(!(c&a)){F[4288]=a|c;a=b;break k}a=F[b+8>>2]}F[b+8>>2]=d;F[a+12>>2]=d;F[d+12>>2]=b;F[d+8>>2]=a;return}e=31;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<<g;e=b+520192>>>16&4;b=b<<e;c=b+245760>>>16&2;b=(b<<c>>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}F[d+28>>2]=e;F[d+16>>2]=0;F[d+20>>2]=0;g=(e<<2)+17456|0;l:{m:{c=F[4289];b=1<<e;n:{if(!(c&b)){F[4289]=b|c;F[g>>2]=d;F[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=F[g>>2];while(1){c=b;if((F[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=F[g+16>>2];if(b){continue}break}F[g+16>>2]=d;F[d+24>>2]=c}F[d+12>>2]=d;F[d+8>>2]=d;break l}a=F[c+8>>2];F[a+12>>2]=d;F[c+8>>2]=d;F[d+24>>2]=0;F[d+12>>2]=c;F[d+8>>2]=a}a=F[4296]-1|0;F[4296]=a?a:-1}}function qj(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;F[a+8>>2]=e;n=a+32|0;h=F[n>>2];f=F[a+36>>2]-h>>2;a:{if(f>>>0<e>>>0){Aa(n,e-f|0);d=F[a+8>>2];break a}d=e;if(d>>>0>=f>>>0){break a}F[a+36>>2]=h+(e<<2);d=e}s=F[a+52>>2];p=F[a+48>>2];f=0;h=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(h),0,h);b:{if((d|0)<=0){break b}g=F[a+32>>2];while(1){d=f<<2;h=F[d+m>>2];j=F[a+16>>2];c:{if((h|0)>(j|0)){F[d+g>>2]=j;break c}d=d+g|0;j=F[a+12>>2];if((j|0)>(h|0)){F[d>>2]=j;break c}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[g+h>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){i=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}i=h+F[a+20>>2]|0}F[d>>2]=i}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];q=F[f>>2];f=F[f+4>>2]-q|0;if((f|0)>=5){o=f>>>2|0;t=o>>>0>2?o:2;u=e&-2;v=e&1;h=1;while(1){e:{f:{if((h|0)!=(o|0)){r=L(e,h);f=F[(h<<2)+q>>2];if((f|0)==-1){break f}f=F[F[p+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}j=F[s>>2];g=F[p>>2];k=F[j+(F[g+(f<<2)>>2]<<2)>>2];i=f+1|0;i=(i>>>0)%3|0?i:f-2|0;if((i|0)!=-1){i=F[g+(i<<2)>>2]}else{i=-1}g:{h:{if((f>>>0)%3|0){f=f-1|0;break h}f=f+2|0;l=-1;if((f|0)==-1){break g}}l=F[g+(f<<2)>>2]}if((h|0)<=(k|0)){break f}f=F[(i<<2)+j>>2];if((f|0)>=(h|0)){break f}g=F[j+(l<<2)>>2];if((g|0)>=(h|0)){break f}i:{if((e|0)<=0){break i}g=L(e,g);j=L(e,f);k=L(e,k);f=0;l=0;if((e|0)!=1){while(1){F[(f<<2)+m>>2]=(F[(f+g<<2)+c>>2]+F[(f+j<<2)+c>>2]|0)-F[(f+k<<2)+c>>2];i=f|1;F[(i<<2)+m>>2]=(F[(g+i<<2)+c>>2]+F[(j+i<<2)+c>>2]|0)-F[(i+k<<2)+c>>2];f=f+2|0;l=l+2|0;if((u|0)!=(l|0)){continue}break}}if(!v){break i}F[(f<<2)+m>>2]=(F[(f+g<<2)+c>>2]+F[(f+j<<2)+c>>2]|0)-F[(f+k<<2)+c>>2]}if((d|0)<=0){break e}j=F[n>>2];f=0;while(1){d=f<<2;g=F[d+m>>2];k=F[a+16>>2];j:{if((g|0)>(k|0)){F[d+j>>2]=k;break j}d=d+j|0;k=F[a+12>>2];if((k|0)>(g|0)){F[d>>2]=k;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=r<<2;k=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+k|0;g=F[g+i>>2]+F[g+j>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}Ea();V()}if((d|0)<=0){break e}k=(L(h-1|0,e)<<2)+c|0;j=F[n>>2];f=0;while(1){d=f<<2;g=F[d+k>>2];i=F[a+16>>2];l:{if((g|0)>(i|0)){F[d+j>>2]=i;break l}d=d+j|0;i=F[a+12>>2];if((i|0)>(g|0)){F[d>>2]=i;break l}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=r<<2;k=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+k|0;g=F[g+i>>2]+F[g+j>>2]|0;F[d>>2]=g;m:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break m}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}h=h+1|0;if((t|0)!=(h|0)){continue}break}}ra(m);return 1}function Yc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=M(0),l=0,m=0,n=M(0);j=F[c>>2];a:{b:{f=F[b+4>>2];if(!f){break b}c=f-1|0;if(c&f){e=j;if(e>>>0>=f>>>0){e=(j>>>0)%(f>>>0)|0}c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}while(1){c=F[c>>2];if(!c){break b}g=F[c+4>>2];if((g|0)!=(j|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=c&j;c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}g=f-1|0;while(1){c=F[c>>2];if(!c){break b}h=F[c+4>>2];if((h|0)!=(j|0)&(g&h)!=(e|0)){break b}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=sa(16);d=F[F[d>>2]>>2];F[c+12>>2]=0;F[c+8>>2]=d;F[c+4>>2]=j;F[c>>2]=0;n=M(F[b+12>>2]+1>>>0);k=J[b+16>>2];c:{if(n>M(k*M(f>>>0))?0:f){break c}d=2;g=(f-1&f)!=0|f>>>0<3|f<<1;k=M(S(M(n/k)));d:{if(k<M(4294967296)&k>=M(0)){e=~~k>>>0;break d}e=0}e=e>>>0<g>>>0?g:e;e:{if((e|0)==1){break e}if(!(e&e-1)){d=e;break e}d=Kd(e);f=F[b+4>>2]}f:{if(d>>>0<=f>>>0){if(d>>>0>=f>>>0){break f}g=f>>>0<3;k=M(S(M(M(I[b+12>>2])/J[b+16>>2])));g:{if(k<M(4294967296)&k>=M(0)){e=~~k>>>0;break g}e=0}h:{i:{if(g){break i}if(Pj(f)>>>0>1){break i}e=e>>>0<2?e:1<<32-O(e-1|0);break h}e=Kd(e)}d=d>>>0>e>>>0?d:e;if(f>>>0<=d>>>0){break f}}e=0;h=d;j:{k:{l:{if(d){if(h>>>0>=1073741824){break l}f=sa(h<<2);d=F[b>>2];F[b>>2]=f;if(d){ra(d)}F[b+4>>2]=h;if(h-1>>>0>=3){g=h&-4;d=0;while(1){f=e<<2;F[f+F[b>>2]>>2]=0;F[F[b>>2]+(f|4)>>2]=0;F[F[b>>2]+(f|8)>>2]=0;F[F[b>>2]+(f|12)>>2]=0;e=e+4|0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}d=h&3;if(d){while(1){F[F[b>>2]+(e<<2)>>2]=0;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}d=F[b+8>>2];if(!d){break j}e=b+8|0;g=F[d+4>>2];f=h-1|0;if(!(f&h)){break k}g=g>>>0>=h>>>0?(g>>>0)%(h>>>0)|0:g;F[F[b>>2]+(g<<2)>>2]=e;while(1){f=F[d>>2];if(!f){break j}i=F[f+4>>2];if(h>>>0<=i>>>0){i=(i>>>0)%(h>>>0)|0}if((g|0)==(i|0)){d=f;continue}e=f;l=i<<2;m=l+F[b>>2]|0;if(F[m>>2]){while(1){i=e;e=F[e>>2];if(F[f+8>>2]==F[e+8>>2]?e:0){continue}break}F[d>>2]=e;F[i>>2]=F[F[l+F[b>>2]>>2]>>2];F[F[l+F[b>>2]>>2]>>2]=f}else{F[m>>2]=d;d=f;g=i}continue}}d=F[b>>2];F[b>>2]=0;if(d){ra(d)}F[b+4>>2]=0;break j}za();V()}g=f&g;F[F[b>>2]+(g<<2)>>2]=e;f=F[d>>2];if(!f){break j}l=h-1|0;while(1){h=l&F[f+4>>2];m:{if((h|0)==(g|0)){d=f;break m}e=f;i=h<<2;m=i+F[b>>2]|0;if(F[m>>2]){while(1){h=e;e=F[e>>2];if(F[f+8>>2]==F[e+8>>2]?e:0){continue}break}F[d>>2]=e;F[h>>2]=F[F[i+F[b>>2]>>2]>>2];F[F[i+F[b>>2]>>2]>>2]=f;break m}F[m>>2]=d;d=f;g=h}f=F[d>>2];if(f){continue}break}}}f=F[b+4>>2];d=f-1|0;if(!(d&f)){e=d&j;break c}if(f>>>0>j>>>0){e=j;break c}e=(j>>>0)%(f>>>0)|0}e=F[b>>2]+(e<<2)|0;d=F[e>>2];n:{o:{if(!d){d=b+8|0;F[c>>2]=F[d>>2];F[b+8>>2]=c;F[e>>2]=d;d=F[c>>2];if(!d){break n}d=F[d+4>>2];e=f-1|0;p:{if(!(e&f)){d=d&e;break p}if(d>>>0<f>>>0){break p}d=(d>>>0)%(f>>>0)|0}d=F[b>>2]+(d<<2)|0;break o}F[c>>2]=F[d>>2]}F[d>>2]=c}F[b+12>>2]=F[b+12>>2]+1;b=1}D[a+4|0]=b;F[a>>2]=c}function Gc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;F[a+56>>2]=F[a+52>>2];F[a+44>>2]=F[a+40>>2];a:{b:{c:{e=F[a+64>>2];c=F[e+24>>2];if((c|0)!=F[e+28>>2]){while(1){d=b;i=F[(j<<2)+c>>2];d:{if((i|0)==-1){break d}b=F[a+56>>2];e:{if((b|0)!=F[a+60>>2]){F[b>>2]=d;F[a+56>>2]=b+4;break e}e=F[a+52>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break c}f=c>>1;f=c>>>0<2147483644?b>>>0<f>>>0?f:b:1073741823;if(f){if(f>>>0>=1073741824){break b}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=d;if((c|0)>0){ta(b,e,c)}F[a+60>>2]=b+(f<<2);F[a+56>>2]=g+4;F[a+52>>2]=b;if(!e){break e}ra(e)}f:{if(!(F[F[a+12>>2]+(j>>>3&536870908)>>2]>>>j&1)){break f}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1|F[F[a>>2]+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break f}e=F[a+64>>2];f=F[a>>2];while(1){i=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|F[f+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[e+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}F[F[a+28>>2]+(i<<2)>>2]=d;b=F[a+44>>2];g:{if((b|0)!=F[a+48>>2]){F[b>>2]=i;F[a+44>>2]=b+4;break g}e=F[a+40>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break a}f=c>>1;f=c>>>0<2147483644?b>>>0<f>>>0?f:b:1073741823;if(f){if(f>>>0>=1073741824){break b}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=i;if((c|0)>0){ta(b,e,c)}F[a+48>>2]=b+(f<<2);F[a+44>>2]=g+4;F[a+40>>2]=b;if(!e){break g}ra(e)}b=d+1|0;e=F[a+64>>2];h:{if((i>>>0)%3|0){c=i-1|0;break h}c=i+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(i|0)){break d}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(F[F[a>>2]+(e>>>3&536870908)>>2]>>>e&1){d=F[a+56>>2];i:{if((d|0)!=F[a+60>>2]){F[d>>2]=b;F[a+56>>2]=d+4;break i}f=F[a+52>>2];e=d-f|0;h=e>>2;d=h+1|0;if(d>>>0>=1073741824){break c}g=e>>1;g=e>>>0<2147483644?d>>>0<g>>>0?g:d:1073741823;if(g){if(g>>>0>=1073741824){break b}d=sa(g<<2)}else{d=0}h=d+(h<<2)|0;F[h>>2]=b;if((e|0)>0){ta(d,f,e)}F[a+60>>2]=d+(g<<2);F[a+56>>2]=h+4;F[a+52>>2]=d;if(!f){break i}ra(f)}e=b+1|0;d=F[a+44>>2];j:{if((d|0)!=F[a+48>>2]){F[d>>2]=c;F[a+44>>2]=d+4;break j}g=F[a+40>>2];f=d-g|0;k=f>>2;d=k+1|0;if(d>>>0>=1073741824){break a}h=f>>1;h=f>>>0<2147483644?d>>>0<h>>>0?h:d:1073741823;if(h){if(h>>>0>=1073741824){break b}d=sa(h<<2)}else{d=0}k=d+(k<<2)|0;F[k>>2]=c;if((f|0)>0){ta(d,g,f)}F[a+48>>2]=d+(h<<2);F[a+44>>2]=k+4;F[a+40>>2]=d;if(!g){break j}ra(g)}d=b;b=e}F[F[a+28>>2]+(c<<2)>>2]=d;e=F[a+64>>2];k:{if((c>>>0)%3|0){c=c-1|0;break k}c=c+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break d}if((c|0)!=(i|0)){continue}break}}j=j+1|0;c=F[e+24>>2];if(j>>>0<F[e+28>>2]-c>>2>>>0){continue}break}}return}va();V()}za();V()}va();V()}function Hj(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;F[a+8>>2]=e;m=a+32|0;h=F[m>>2];f=F[a+36>>2]-h>>2;a:{if(f>>>0<e>>>0){Aa(m,e-f|0);d=F[a+8>>2];break a}d=e;if(d>>>0>=f>>>0){break a}F[a+36>>2]=h+(e<<2);d=e}s=F[a+52>>2];n=F[a+48>>2];f=0;h=(e&1073741823)!=(e|0)?-1:e<<2;l=ua(sa(h),0,h);b:{if((d|0)<=0){break b}g=F[a+32>>2];while(1){d=f<<2;h=F[d+l>>2];i=F[a+16>>2];c:{if((h|0)>(i|0)){F[d+g>>2]=i;break c}d=d+g|0;i=F[a+12>>2];if((i|0)>(h|0)){F[d>>2]=i;break c}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[g+h>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];q=F[f>>2];f=F[f+4>>2]-q|0;if((f|0)>=5){o=f>>>2|0;t=o>>>0>2?o:2;u=e&-2;v=e&1;h=1;while(1){e:{f:{if((h|0)!=(o|0)){r=L(e,h);f=F[(h<<2)+q>>2];if((f|0)==-1|F[F[n>>2]+(f>>>3&536870908)>>2]>>>f&1){break f}f=F[F[F[n+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}i=F[s>>2];g=F[n+28>>2];k=F[i+(F[g+(f<<2)>>2]<<2)>>2];if((k|0)>=(h|0)){break f}j=f+1|0;j=F[i+(F[g+(((j>>>0)%3|0?j:f-2|0)<<2)>>2]<<2)>>2];if((j|0)>=(h|0)){break f}f=F[i+(F[g+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(h|0)){break f}g:{if((e|0)<=0){break g}g=L(e,f);i=L(e,j);k=L(e,k);f=0;p=0;if((e|0)!=1){while(1){F[(f<<2)+l>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+k<<2)+c>>2];j=f|1;F[(j<<2)+l>>2]=(F[(g+j<<2)+c>>2]+F[(i+j<<2)+c>>2]|0)-F[(k+j<<2)+c>>2];f=f+2|0;p=p+2|0;if((u|0)!=(p|0)){continue}break}}if(!v){break g}F[(f<<2)+l>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+k<<2)+c>>2]}if((d|0)<=0){break e}i=F[m>>2];f=0;while(1){d=f<<2;g=F[d+l>>2];k=F[a+16>>2];h:{if((g|0)>(k|0)){F[d+i>>2]=k;break h}d=d+i|0;k=F[a+12>>2];if((k|0)>(g|0)){F[d>>2]=k;break h}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=r<<2;k=d+c|0;j=b+d|0;while(1){g=f<<2;d=g+k|0;g=F[g+j>>2]+F[g+i>>2]|0;F[d>>2]=g;i:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break i}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}Ea();V()}if((d|0)<=0){break e}k=(L(h-1|0,e)<<2)+c|0;i=F[m>>2];f=0;while(1){d=f<<2;g=F[d+k>>2];j=F[a+16>>2];j:{if((g|0)>(j|0)){F[d+i>>2]=j;break j}d=d+i|0;j=F[a+12>>2];if((j|0)>(g|0)){F[d>>2]=j;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=r<<2;k=d+c|0;j=b+d|0;while(1){g=f<<2;d=g+k|0;g=F[g+j>>2]+F[g+i>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}h=h+1|0;if((t|0)!=(h|0)){continue}break}}ra(l);return 1}function Le(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ea-80|0;ea=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;nc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){ra(F[j>>2])}if(G[f+31|0]!=1){b=sa(32);c=G[1448]|G[1449]<<8|(G[1450]<<16|G[1451]<<24);D[b+16|0]=c;D[b+17|0]=c>>>8;D[b+18|0]=c>>>16;D[b+19|0]=c>>>24;c=G[1444]|G[1445]<<8|(G[1446]<<16|G[1447]<<24);d=G[1440]|G[1441]<<8|(G[1442]<<16|G[1443]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1436]|G[1437]<<8|(G[1438]<<16|G[1439]<<24);d=G[1432]|G[1433]<<8|(G[1434]<<16|G[1435]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+20|0]=0;F[a>>2]=-1;Ba(j,b,20);ra(b);break a}i=ea-16|0;ea=i;b:{c:{switch(G[f+32|0]){case 0:e=He(sa(48));F[e>>2]=13112;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;case 1:e=He(sa(52));F[e+48>>2]=0;F[e>>2]=11276;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;default:break c}}g=sa(32);e=G[1550]|G[1551]<<8|(G[1552]<<16|G[1553]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1546]|G[1547]<<8|(G[1548]<<16|G[1549]<<24);h=G[1542]|G[1543]<<8|(G[1544]<<16|G[1545]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1538]|G[1539]<<8|(G[1540]<<16|G[1541]<<24);h=G[1534]|G[1535]<<8|(G[1536]<<16|G[1537]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1530]|G[1531]<<8|(G[1532]<<16|G[1533]<<24);h=G[1526]|G[1527]<<8|(G[1528]<<16|G[1529]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;Ba(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];F[f+16>>2]=0;break d}Ba(h,F[i+4>>2],F[i+8>>2]);e=D[i+15|0];F[f+16>>2]=0;if((e|0)>=0){break d}ra(F[i+4>>2])}ra(g)}ea=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}Ba(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;F[e+44>>2]=d;se(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){ra(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ga[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}ra(F[f+4>>2])}ea=f+80|0}function ue(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}c=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=F[a+48>>2];F[a+52>>2]=d;a:{if((d|0)!=F[a+56>>2]){F[d>>2]=b;F[a+52>>2]=d+4;break a}e=sa(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!d){break a}ra(d)}f=F[F[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=F[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-L(c,3)|0?-1:2)+b|0;c=F[f+(g<<2)>>2];if((c|0)==-1){return 0}b=F[a+36>>2];f=b+(d>>>3&536870908)|0;h=F[f>>2];i=1<<d;if(!(h&i)){F[f>>2]=h|i;Xa(a+8|0,d,e);b=F[a+36>>2]}b=(c>>>3&536870908)+b|0;d=F[b>>2];e=1<<c;if(!(d&e)){F[b>>2]=d|e;Xa(a+8|0,c,g)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}k=a+8|0;while(1){b:{c:{c=c-4|0;b=F[c>>2];if((b|0)==-1){break c}d=(b>>>0)/3|0;e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<<d;if(f&d){break c}F[e>>2]=d|f;e=F[a+4>>2];d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=F[a+36>>2]+(d>>>3&536870908)|0;g=F[f>>2];h=1<<d;if(g&h){break e}f:{b=F[F[e+40>>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}F[f>>2]=g|h;Xa(k,d,c);break e}F[f>>2]=g|h;Xa(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=F[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|F[F[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=F[F[F[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<<d;c=F[a+24>>2];i=d>>>5|0;f=F[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=F[a+4>>2];if(!((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(F[F[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=F[F[F[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;if((d|0)!=-1){c=F[a+24>>2];h=(d>>>0)/3|0;i=h>>>5|0;f=F[c+(i<<2)>>2];h=1<<h;if(!(f&h)){break i}}if(j){break j}h=1<<g;c=F[a+24>>2];i=g>>>5|0;f=F[c+(i<<2)>>2];if(!(h&f)){break d}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break b}if(j){b=d;break d}if(F[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=F[a+52>>2];F[c-4>>2]=b;if((c|0)!=F[a+56>>2]){F[c>>2]=d;c=c+4|0;break c}m:{f=F[a+48>>2];e=c-f|0;c=e>>2;b=c+1|0;if(b>>>0<1073741824){g=e>>1;g=e>>>0<2147483644?b>>>0<g>>>0?g:b:1073741823;if(g){if(g>>>0>=1073741824){break m}b=sa(g<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=d;c=c+4|0;if((e|0)>0){ta(b,f,e)}F[a+56>>2]=b+(g<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!f){break b}ra(f);c=F[a+52>>2];break b}va();V()}za();V()}F[(i<<2)+c>>2]=f|h;d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function ya(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=ea-32|0;ea=f;a:{b:{c:{d:{b=F[a+16>>2];if(b>>>0>=341){F[a+16>>2]=b-341;b=F[a+4>>2];k=F[b>>2];c=b+4|0;F[a+4>>2]=c;b=F[a+8>>2];e:{if((b|0)!=F[a+12>>2]){d=b;break e}h=F[a>>2];if(h>>>0<c>>>0){g=b-c|0;e=((c-h>>2)+1|0)/-2<<2;d=e+c|0;if((b|0)!=(c|0)){Ra(d,c,g);c=F[a+4>>2]}d=d+g|0;F[a+8>>2]=d;F[a+4>>2]=c+e;break e}d=(b|0)==(h|0)?1:b-h>>1;if(d>>>0>=1073741824){break d}e=d<<2;i=sa(e);l=e+i|0;e=i+(d&-4)|0;d=e;f:{if((b|0)==(c|0)){break f}b=b-c|0;m=b&-4;j=b-4|0;g=(j>>>2|0)+1&7;g:{if(!g){b=e;break g}d=0;b=e;while(1){F[b>>2]=F[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(j>>>0<28){break f}while(1){F[b>>2]=F[c>>2];F[b+4>>2]=F[c+4>>2];F[b+8>>2]=F[c+8>>2];F[b+12>>2]=F[c+12>>2];F[b+16>>2]=F[c+16>>2];F[b+20>>2]=F[c+20>>2];F[b+24>>2]=F[c+24>>2];F[b+28>>2]=F[c+28>>2];c=c+32|0;b=b+32|0;if((d|0)!=(b|0)){continue}break}}F[a+12>>2]=l;F[a+8>>2]=d;F[a+4>>2]=e;F[a>>2]=i;if(!h){break e}ra(h);d=F[a+8>>2]}F[d>>2]=k;F[a+8>>2]=F[a+8>>2]+4;break a}b=F[a+8>>2];d=b-F[a+4>>2]>>2;g=F[a+12>>2];c=F[a>>2];e=g-c|0;if(d>>>0<e>>2>>>0){if((b|0)!=(g|0)){n=f,o=sa(4092),F[n+8>>2]=o;pd(a,f+8|0);break a}n=f,o=sa(4092),F[n+8>>2]=o;od(a,f+8|0);b=F[a+4>>2];k=F[b>>2];c=b+4|0;F[a+4>>2]=c;b=F[a+8>>2];h:{if((b|0)!=F[a+12>>2]){d=b;break h}h=F[a>>2];if(h>>>0<c>>>0){g=b-c|0;e=((c-h>>2)+1|0)/-2<<2;d=e+c|0;if((b|0)!=(c|0)){Ra(d,c,g);c=F[a+4>>2]}d=d+g|0;F[a+8>>2]=d;F[a+4>>2]=c+e;break h}d=(b|0)==(h|0)?1:b-h>>1;if(d>>>0>=1073741824){break d}e=d<<2;i=sa(e);l=e+i|0;e=i+(d&-4)|0;d=e;i:{if((b|0)==(c|0)){break i}b=b-c|0;m=b&-4;j=b-4|0;g=(j>>>2|0)+1&7;j:{if(!g){b=e;break j}d=0;b=e;while(1){F[b>>2]=F[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(j>>>0<28){break i}while(1){F[b>>2]=F[c>>2];F[b+4>>2]=F[c+4>>2];F[b+8>>2]=F[c+8>>2];F[b+12>>2]=F[c+12>>2];F[b+16>>2]=F[c+16>>2];F[b+20>>2]=F[c+20>>2];F[b+24>>2]=F[c+24>>2];F[b+28>>2]=F[c+28>>2];c=c+32|0;b=b+32|0;if((d|0)!=(b|0)){continue}break}}F[a+12>>2]=l;F[a+8>>2]=d;F[a+4>>2]=e;F[a>>2]=i;if(!h){break h}ra(h);d=F[a+8>>2]}F[d>>2]=k;F[a+8>>2]=F[a+8>>2]+4;break a}F[f+24>>2]=a+12;b=(c|0)==(g|0)?1:e>>1;if(b>>>0>=1073741824){break d}e=b<<2;c=sa(e);F[f+8>>2]=c;b=c+(d<<2)|0;F[f+16>>2]=b;F[f+20>>2]=c+e;F[f+12>>2]=b;n=f,o=sa(4092),F[n+4>>2]=o;pd(f+8|0,f+4|0);c=F[a+8>>2];if((c|0)==F[a+4>>2]){b=c;break b}while(1){c=c-4|0;od(f+8|0,c);if(F[a+4>>2]!=(c|0)){continue}break}break c}za();V()}b=F[a+8>>2]}d=F[a>>2];F[a>>2]=F[f+8>>2];F[f+8>>2]=d;F[a+4>>2]=F[f+12>>2];F[f+12>>2]=c;F[a+8>>2]=F[f+16>>2];F[f+16>>2]=b;e=F[a+12>>2];F[a+12>>2]=F[f+20>>2];F[f+20>>2]=e;if((b|0)!=(c|0)){F[f+16>>2]=b+((c-b|0)+3&-4)}if(!d){break a}ra(d)}ea=f+32|0}function Cj(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=ea-32|0;ea=i;a:{if(H[b+38>>1]<=513){c=F[b+20>>2];h=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(h|0)&d>>>0>=I[b+8>>2]|(c|0)>(h|0)){break a}h=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;if(h){break a}}b:{if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[F[a+48>>2]+64>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}c:{if(d){$a(a+60|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+60>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[F[a+48>>2]+64>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}if(d){e=0;$a(a+72|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+72>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[F[a+48>>2]+64>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}if(d){e=0;$a(a+84|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+84>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[F[a+48>>2]+64>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}if(d){e=0;$a(a+96|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+96>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;d=F[b+12>>2];h=d;c=F[b+20>>2];g=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0<j>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=g;g=f+8|0;c=g>>>0<8?c+1|0:c;f=g;g=c;if(f>>>0>k>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=g;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0<d>>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}e=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1;break a}}e=0}ea=i+32|0;return e|0}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,l=0;i=ea-32|0;ea=i;a:{if(H[b+38>>1]<=513){c=F[b+20>>2];h=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(h|0)&d>>>0>=I[b+8>>2]|(c|0)>(h|0)){break a}h=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;if(h){break a}}b:{if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[a+48>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}c:{if(d){$a(a+60|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+60>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[a+48>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}if(d){e=0;$a(a+72|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+72>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[a+48>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}if(d){e=0;$a(a+84|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+84>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!ab(1,i+28|0,b)){break b}d=F[i+28>>2];c=F[a+48>>2];if(d>>>0>F[c+4>>2]-F[c>>2]>>2>>>0){break b}if(d){e=0;$a(a+96|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!wa(c,b)){break c}while(1){h=1<<e;f=Da(c);g=F[a+96>>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;d=F[b+12>>2];h=d;c=F[b+20>>2];g=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0<j>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=g;g=f+8|0;c=g>>>0<8?c+1|0:c;f=g;g=c;if(f>>>0>k>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=g;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0<d>>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}e=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1;break a}}e=0}ea=i+32|0;return e|0}function Ec(a,b,c){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;i=L(b,12)+a|0;F[i+12>>2]=F[i+8>>2];j=(c|0)==-1?-1:(c>>>0)/3|0;l=1;k=c;a:{b:{c:{while(1){d:{n=e&1;if(n){if((k|0)==-1){break d}if((ce(a,((k>>>0)%3|0?-1:2)+k|0)|0)==-1){break a}c=k+1|0;c=(c>>>0)%3|0?c:k-2|0;if((c|0)==-1){break a}e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;if((c|0)==-1){break a}c=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break a}e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;if((c|0)==-1){break a}j=(c>>>0)/3|0}d=F[a+56>>2]+(j>>>3&536870908)|0;g=F[d>>2];f=1<<j;e:{if(g&f){break e}e=0;while(1){F[d>>2]=g|f;d=F[i+12>>2];f:{if((d|0)!=F[i+16>>2]){F[d>>2]=j;F[i+12>>2]=d+4;break f}g=F[i+8>>2];h=d-g|0;m=h>>2;d=m+1|0;if(d>>>0>=1073741824){break c}f=h>>1;f=h>>>0<2147483644?d>>>0<f>>>0?f:d:1073741823;if(f){if(f>>>0>=1073741824){break b}d=sa(f<<2)}else{d=0}m=d+(m<<2)|0;F[m>>2]=j;if((h|0)>0){ta(d,g,h)}F[i+8>>2]=d;F[i+12>>2]=m+4;F[i+16>>2]=d+(f<<2);if(!g){break f}ra(g)}h=e+1|0;g:{h:{i:{if(!e){break i}if(h&1){if((c|0)==-1){c=-1;break g}e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;break i}k=n?c:k;if((c|0)==-1){c=-1;break g}if((c>>>0)%3|0){e=c-1|0;break h}c=c+2|0}d=c;c=-1;e=d;if((d|0)==-1){break g}}c=F[F[F[a+4>>2]+12>>2]+(e<<2)>>2];d=-1;g=-1;f=e+1|0;f=(f>>>0)%3|0?f:e-2|0;if((f|0)>=0){g=(f>>>0)/3|0;g=F[(F[F[a>>2]+96>>2]+L(g,12)|0)+(f-L(g,3)<<2)>>2]}j:{if((c|0)==-1){break j}f=((c>>>0)%3|0?-1:2)+c|0;if((f|0)<0){break j}d=(f>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(f-L(d,3)<<2)>>2]}if((d|0)!=(g|0)){c=-1;break g}k:{l:{e=((e>>>0)%3|0?-1:2)+e|0;if((e|0)>=0){d=(e>>>0)/3|0;if((c|0)!=-1){break l}c=-1;break g}e=-1;if((c|0)!=-1){break k}c=-1;break g}e=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)>=0){g=(d>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(g,12)|0)+(d-L(g,3)<<2)>>2]}else{d=-1}if((d|0)!=(e|0)){c=-1;break g}e=h;j=(c>>>0)/3|0;d=F[a+56>>2]+(j>>>3&268435452)|0;g=F[d>>2];f=1<<j;if(!(g&f)){continue}}break}if(!n|!(h&1)){break e}e=F[i+12>>2]-4|0;d=F[e>>2];h=F[a+56>>2]+(d>>>3&536870908)|0;g=F[h>>2];o=h,p=Qj(d)&g,F[o>>2]=p;F[i+12>>2]=e}e=1;d=l;l=0;if(d){continue}break a}break}k=-1;ce(a,-1);break a}va();V()}za();V()}F[((b<<2)+a|0)+44>>2]=k;c=F[i+12>>2];b=F[i+8>>2];m:{if((c|0)==(b|0)){break m}e=c-b|0;c=e>>2;d=c>>>0>1?c:1;k=d&1;a=F[a+56>>2];c=0;if(e>>>0>=8){e=d&-2;j=0;while(1){d=c<<2;h=F[d+b>>2];l=a+(h>>>3&536870908)|0;i=F[l>>2];o=l,p=Qj(h)&i,F[o>>2]=p;d=F[b+(d|4)>>2];h=a+(d>>>3&536870908)|0;l=F[h>>2];o=h,p=Qj(d)&l,F[o>>2]=p;c=c+2|0;j=j+2|0;if((e|0)!=(j|0)){continue}break}}if(!k){break m}b=F[b+(c<<2)>>2];a=a+(b>>>3&536870908)|0;c=F[a>>2];o=a,p=Qj(b)&c,F[o>>2]=p}}function ve(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}d=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=F[a+48>>2];F[a+52>>2]=c;a:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break a}e=sa(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!c){break a}ra(c)}e=-1;f=F[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=F[F[f>>2]+(g<<2)>>2]}b:{h=b-L(d,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}d=F[F[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=F[a+36>>2];f=c+(e>>>3&536870908)|0;i=F[f>>2];j=1<<e;if(!(i&j)){F[f>>2]=i|j;Xa(a+8|0,e,g);c=F[a+36>>2]}c=(d>>>3&536870908)+c|0;e=F[c>>2];f=1<<d;if(!(e&f)){F[c>>2]=e|f;Xa(a+8|0,d,(h?-1:2)+b|0)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}j=a+8|0;while(1){c:{d:{c=c-4|0;b=F[c>>2];if((b|0)==-1){break d}d=(b>>>0)/3|0;e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<<d;if(f&d){break d}F[e>>2]=d|f;while(1){d=F[a+4>>2];c=F[F[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=F[a+36>>2]+(c>>>3&536870908)|0;f=F[e>>2];g=1<<c;if(f&g){break f}g:{h=F[F[d+24>>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=F[F[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}F[e>>2]=f|g;Xa(j,c,b);break f}F[e>>2]=f|g;Xa(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<<c;e=F[a+24>>2];h=c>>>5|0;d=F[e+(h<<2)>>2];break e}c=-1;f=F[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=F[F[f+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=F[F[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;k:{if((c|0)!=-1){e=F[a+24>>2];g=(c>>>0)/3|0;h=g>>>5|0;d=F[e+(h<<2)>>2];g=1<<g;if(!(d&g)){break k}}if(!i){g=1<<f;e=F[a+24>>2];h=f>>>5|0;d=F[e+(h<<2)>>2];if(!(g&d)){break e}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break c}if(i){b=c;break e}if(F[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=F[a+52>>2];F[d-4>>2]=b;if((d|0)!=F[a+56>>2]){F[d>>2]=c;c=d+4|0;break d}l:{e=F[a+48>>2];d=d-e|0;g=d>>2;b=g+1|0;if(b>>>0<1073741824){f=d>>1;f=d>>>0<2147483644?b>>>0<f>>>0?f:b:1073741823;if(f){if(f>>>0>=1073741824){break l}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=c;c=g+4|0;if((d|0)>0){ta(b,e,d)}F[a+56>>2]=b+(f<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!e){break c}ra(e);c=F[a+52>>2];break c}va();V()}za();V()}F[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function rj(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=ea-32|0;ea=g;F[a+68>>2]=f;d=F[a+56>>2];e=F[d>>2];d=F[d+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{d=d-e|0;if((d|0)>0){m=a+60|0;d=d>>>2|0;n=d>>>0>1?d:1;o=a+112|0;while(1){e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=k>>>0){break a}Ob(m,F[d+(k<<2)>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=(i^j)-i|0;h=i+((d^e)-d+((f^h)-h)|0)|0;d=0;d=h>>>0<i>>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Nj(Mj(i,l,f,f>>31),fa,h,d);F[g+16>>2]=f;d=Nj(Mj(i,l,e,e>>31),fa,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=(e^d)-d|0;d=f>>31;d=e+((d^f)-d|0)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=Da(o);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){f=F[a+108>>2];d=f+F[g+24>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+24>>2];f=d>>31;f=(d^f)-f|0;break e}d=F[g+24>>2];f=d>>31;f=F[a+100>>2]+(f-(d^f)|0)|0}if((d|0)<0){d=e>>31;d=(d^e)-d|0;break d}d=e>>31;d=F[a+100>>2]+(d-(d^e)|0)|0}e=F[a+100>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+108>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+108>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+108>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+108>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}F[g+12>>2]=d;F[g+8>>2]=f;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){d=f<<2;e=F[d+(g+8|0)>>2];j=F[a+16>>2];k:{if((e|0)>(j|0)){F[d+h>>2]=j;break k}d=d+h|0;j=F[a+12>>2];if((j|0)>(e|0)){F[d>>2]=j;break k}F[d>>2]=e}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}}k=k+1|0;if((n|0)!=(k|0)){continue}break}}ea=g+32|0;return 1}Ea();V()}function bj(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=ea-32|0;ea=g;F[a+68>>2]=f;d=F[a+56>>2];e=F[d>>2];d=F[d+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{d=d-e|0;if((d|0)>0){m=a+60|0;d=d>>>2|0;n=d>>>0>1?d:1;o=a+112|0;while(1){e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=k>>>0){break a}Mb(m,F[d+(k<<2)>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=(i^j)-i|0;h=i+((d^e)-d+((f^h)-h)|0)|0;d=0;d=h>>>0<i>>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Nj(Mj(i,l,f,f>>31),fa,h,d);F[g+16>>2]=f;d=Nj(Mj(i,l,e,e>>31),fa,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=(e^d)-d|0;d=f>>31;d=e+((d^f)-d|0)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=Da(o);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){f=F[a+108>>2];d=f+F[g+24>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+24>>2];f=d>>31;f=(d^f)-f|0;break e}d=F[g+24>>2];f=d>>31;f=F[a+100>>2]+(f-(d^f)|0)|0}if((d|0)<0){d=e>>31;d=(d^e)-d|0;break d}d=e>>31;d=F[a+100>>2]+(d-(d^e)|0)|0}e=F[a+100>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+108>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+108>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+108>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+108>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}F[g+12>>2]=d;F[g+8>>2]=f;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){d=f<<2;e=F[d+(g+8|0)>>2];j=F[a+16>>2];k:{if((e|0)>(j|0)){F[d+h>>2]=j;break k}d=d+h|0;j=F[a+12>>2];if((j|0)>(e|0)){F[d>>2]=j;break k}F[d>>2]=e}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)<F[a+8>>2]){continue}break}}k=k+1|0;if((n|0)!=(k|0)){continue}break}}ea=g+32|0;return 1}Ea();V()}function ld(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;l=ga[F[F[a>>2]+44>>2]](a)|0;a:{if((l|0)<=0){break a}h=F[b+4>>2]-F[b>>2]>>2;e=ea+-64|0;ea=e;d=Gb(e);f=L(F[3400],l);kc(d,F[F[a+8>>2]+56>>2],l<<24>>24,5,0,f,f>>31);d=dc(sa(96),d);D[d+84|0]=1;F[d+72>>2]=F[d+68>>2];rb(d,h);F[d+60>>2]=F[F[a+8>>2]+60>>2];f=F[a+16>>2];F[a+16>>2]=d;if(f){Ja(f)}ea=e- -64|0;d=F[a+16>>2];if(!F[d+80>>2]){break a}j=F[F[d>>2]>>2];if(!j){break a}i=F[c+12>>2];g=i;e=F[c+20>>2];k=F[c+8>>2];f=F[c+16>>2];if((g|0)<=(e|0)&k>>>0<=f>>>0|(e|0)>(g|0)){break a}h=L(h,l);j=j+F[d+48>>2]|0;m=F[c>>2];n=G[m+f|0];d=e;g=f+1|0;d=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=d;b:{c:{if(n){if(id(h,l,c,j)){break c}break a}if((d|0)>=(i|0)&g>>>0>=k>>>0|(d|0)>(i|0)){break a}d=G[g+m|0];f=f+2|0;e=f>>>0<2?e+1|0:e;F[c+16>>2]=f;F[c+20>>2]=e;e=F[F[a+16>>2]+64>>2];e=F[e+4>>2]-F[e>>2]|0;if((d|0)==F[3400]){d=h<<2;if(d>>>0>e>>>0){break a}f=F[c+12>>2];e=F[c+20>>2];i=F[c+16>>2];g=d+i|0;e=g>>>0<d>>>0?e+1|0:e;if(g>>>0>I[c+8>>2]&(e|0)>=(f|0)|(e|0)>(f|0)){break a}ta(j,i+F[c>>2]|0,d);e=d;f=d+F[c+16>>2]|0;d=F[c+20>>2];F[c+16>>2]=f;F[c+20>>2]=e>>>0>f>>>0?d+1|0:d;break c}if(e>>>0<L(d,h)>>>0){break a}e=F[c+8>>2];i=F[c+16>>2];f=i;g=e-f|0;f=e>>>0<f>>>0;e=F[c+20>>2];f=F[c+12>>2]-(f+e|0)|0;k=Mj(d,0,h,0)>>>0>g>>>0;g=fa;if(k&(g|0)>=(f|0)|(f|0)<(g|0)){break a}f=1;if(!h){break b}g=0;while(1){m=d+i|0;k=F[c+12>>2];e=d>>>0>m>>>0?e+1|0:e;if(m>>>0>I[c+8>>2]&(k|0)<=(e|0)|(e|0)>(k|0)){return 0}ta(j+(g<<2)|0,i+F[c>>2]|0,d);e=F[c+20>>2];i=d+F[c+16>>2]|0;e=i>>>0<d>>>0?e+1|0:e;F[c+16>>2]=i;F[c+20>>2]=e;g=g+1|0;if((h|0)!=(g|0)){continue}break}}f=1;if(!h){break b}d=F[a+20>>2];if(d){f=0;if(ga[F[F[d>>2]+32>>2]](d)|0){break b}}d=0;g=0;d:{if((h|0)<=0){break d}if((h|0)!=1){i=h&-2;while(1){e=d<<2;f=F[e+j>>2];F[e+j>>2]=0-(f&1)^f>>>1;f=e|4;e=F[f+j>>2];F[f+j>>2]=0-(e&1)^e>>>1;d=d+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break}}if(!(h&1)){break d}e=d<<2;d=F[e+j>>2];F[e+j>>2]=0-(d&1)^d>>>1}f=0}d=F[a+20>>2];e:{if(!d){break e}if(!(ga[F[F[d>>2]+40>>2]](d,c)|0)){break a}if(f){break e}a=F[a+20>>2];if(!(ga[F[F[a>>2]+44>>2]](a,j,j,h,l,F[b>>2])|0)){break a}}o=1}return o|0}function he(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;h=ea-80|0;ea=h;a:{b:{if(G[F[a+28>>2]+36|0]<=1){d=F[b+20>>2];c=F[b+16>>2];e=c+4|0;d=e>>>0<4?d+1|0:d;k=F[b+12>>2];if((k|0)<=(d|0)&e>>>0>I[b+8>>2]|(d|0)>(k|0)){break a}c=c+F[b>>2]|0;i=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;break b}if(!Mc(1,h+76|0,b)){break a}i=F[h+76>>2]}if(!i){break a}d=F[b+8>>2];c=F[b+16>>2];d=Mj(d-c|0,F[b+12>>2]-(F[b+20>>2]+(c>>>0>d>>>0)|0)|0,5,0);c=fa;if(d>>>0<i>>>0&(c|0)<=0|(c|0)<0){break a}c=F[a+4>>2];d=F[a+8>>2]-c>>2;c:{if(d>>>0<i>>>0){Aa(a+4|0,i-d|0);break c}if(d>>>0<=i>>>0){break c}F[a+8>>2]=c+(i<<2)}r=a+16|0;m=F[a+32>>2];f=1;while(1){d:{g=F[b+12>>2];c=g;d=F[b+20>>2];o=F[b+8>>2];j=F[b+16>>2];if((c|0)<=(d|0)&o>>>0<=j>>>0|(c|0)<(d|0)){break d}p=F[b>>2];k=G[p+j|0];c=d;e=j+1|0;c=e?c:c+1|0;F[b+16>>2]=e;F[b+20>>2]=c;if((c|0)>=(g|0)&e>>>0>=o>>>0|(c|0)>(g|0)){break d}e=G[e+p|0];c=d;l=j+2|0;c=l>>>0<2?c+1|0:c;F[b+16>>2]=l;F[b+20>>2]=c;if((c|0)>=(g|0)&l>>>0>=o>>>0|(c|0)>(g|0)){break d}l=G[l+p|0];c=d;q=j+3|0;c=q>>>0<3?c+1|0:c;F[b+16>>2]=q;F[b+20>>2]=c;if((c|0)>=(g|0)&q>>>0>=o>>>0|(c|0)>(g|0)){break d}g=G[q+p|0];c=d;d=j+4|0;c=d>>>0<4?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;if(!l|((e-12&255)>>>0<245|k>>>0>4)){break d}j=Gb(h+8|0);o=l<<24>>24;g=(g|0)!=0;d=e-1|0;if(d>>>0<=10){c=F[(d<<2)+13584>>2]}else{c=-1}d=L(c,l);kc(j,k,o,e,g,d,d>>31);d=H[F[a+28>>2]+36>>1];e:{if(((d<<8|d>>>8)&65535)>>>0<=258){c=F[b+20>>2];d=F[b+16>>2];e=d+2|0;c=e>>>0<2?c+1|0:c;k=F[b+12>>2];if((k|0)<=(c|0)&e>>>0>I[b+8>>2]|(c|0)>(k|0)){break d}d=d+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8;F[b+16>>2]=e;F[b+20>>2]=c;break e}if(!Mc(1,h+4|0,b)){break d}f=F[h+4>>2]}F[h+68>>2]=f;d=dc(sa(96),j);ga[F[F[m>>2]+8>>2]](m,F[m+12>>2]-F[m+8>>2]>>2,d);d=(F[m+12>>2]-F[m+8>>2]>>2)-1|0;e=d<<2;F[F[e+F[m+8>>2]>>2]+60>>2]=f;F[F[a+4>>2]+(n<<2)>>2]=d;f=F[a+16>>2];c=F[a+20>>2]-f>>2;f:{if((c|0)>(d|0)){break f}F[h>>2]=-1;d=d+1|0;if(d>>>0>c>>>0){Ia(r,d-c|0,h);f=F[r>>2];break f}if(c>>>0<=d>>>0){break f}F[a+20>>2]=(d<<2)+f}F[e+f>>2]=n;n=n+1|0;f=n>>>0<i>>>0;if((i|0)!=(n|0)){continue}}break}n=!f}ea=h+80|0;return n&1}function fb(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;g=ea-32|0;ea=g;a:{b:{if(F[a+8>>2]<<5>>>0>=b>>>0){break b}if((b|0)<0){break a}b=(b-1>>>5|0)+1|0;c=sa(b<<2);F[g+24>>2]=b;F[g+20>>2]=0;F[g+16>>2]=c;b=F[a>>2];F[g+12>>2]=0;F[g+8>>2]=b;c=F[a+4>>2];F[g+4>>2]=c&31;F[g>>2]=b+(c>>>3&536870908);f=ea-32|0;ea=f;i=F[g+4>>2];e=F[g+12>>2];j=F[g>>2];h=F[g+8>>2];b=(i-e|0)+(j-h<<3)|0;d=F[g+20>>2];c=b+d|0;F[g+20>>2]=c;if(!((c-1^d-1)>>>0<32?d:0)){F[F[g+16>>2]+((c>>>0<33?0:c-1>>>5|0)<<2)>>2]=0}c=F[g+16>>2]+(d>>>3&536870908)|0;d=d&31;c:{if((d|0)==(e|0)){if((b|0)<=0){break c}if(e){i=32-e|0;d=(b|0)<(i|0)?b:i;i=-1<<e&-1>>>i-d;F[c>>2]=F[c>>2]&(i^-1)|i&F[h>>2];b=b-d|0;h=h+4|0;c=c+(d+e>>>3&536870908)|0}j=c;e=(b|0)/32|0;c=e<<2;d=Ra(j,h,c);b=b-(e<<5)|0;if((b|0)<=0){break c}e=c+d|0;b=-1>>>32-b|0;F[e>>2]=F[e>>2]&(b^-1)|b&F[c+h>>2];break c}F[f+28>>2]=e;F[f+24>>2]=h;F[f+20>>2]=i;F[f+16>>2]=j;F[f+12>>2]=d;F[f+8>>2]=c;b=F[f+28>>2];c=F[f+24>>2];h=(F[f+20>>2]-b|0)+(F[f+16>>2]-c<<3)|0;d:{if((h|0)<=0){b=F[f+12>>2];break d}e:{if(!b){b=F[f+12>>2];break e}e=F[f+12>>2];j=32-e|0;k=32-b|0;d=(h|0)<(k|0)?h:k;i=d>>>0>j>>>0?j:d;l=F[f+8>>2];m=F[l>>2]&(-1<<e&-1>>>j-i^-1);j=F[c>>2]&(-1<<b&-1>>>k-d);F[l>>2]=m|(b>>>0<e>>>0?j<<e-b:j>>>b-e|0);c=e+i|0;b=c&31;F[f+12>>2]=b;e=l+(c>>>3&536870908)|0;F[f+8>>2]=e;c=d-i|0;if((c|0)>0){F[e>>2]=F[e>>2]&(-1>>>32-c^-1)|j>>>i+F[f+28>>2];F[f+12>>2]=c;b=c}h=h-d|0;c=F[f+24>>2]+4|0;F[f+24>>2]=c}i=-1<<b;e=32-b|0;if((h|0)>=32){j=i^-1;while(1){d=F[f+8>>2];c=F[c>>2];F[d>>2]=j&F[d>>2]|c<<b;F[f+8>>2]=d+4;F[d+4>>2]=i&F[d+4>>2]|c>>>e;c=F[f+24>>2]+4|0;F[f+24>>2]=c;d=h>>>0>63;h=h-32|0;if(d){continue}break}}if((h|0)<=0){break d}d=F[f+8>>2];j=e;e=(e|0)<(h|0)?e:h;j=F[d>>2]&(i&-1>>>j-e^-1);i=F[c>>2]&-1>>>32-h;F[d>>2]=j|i<<b;c=b+e|0;b=c&31;F[f+12>>2]=b;d=d+(c>>>3&536870908)|0;F[f+8>>2]=d;c=h-e|0;if((c|0)<=0){break d}F[d>>2]=F[d>>2]&(-1>>>32-c^-1)|i>>>e;F[f+12>>2]=c;b=c}c=F[f+8>>2];F[f+4>>2]=b;F[f>>2]=c}ea=f+32|0;b=F[a>>2];F[a>>2]=F[g+16>>2];F[g+16>>2]=b;c=F[a+4>>2];F[a+4>>2]=F[g+20>>2];F[g+20>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[g+24>>2];F[g+24>>2]=c;if(!b){break b}ra(b)}ea=g+32|0;return}va();V()}function Ke(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;c=H[b+38>>1];a:{if(!c){break a}b:{if(c>>>0<=511){d=F[b+12>>2];c=F[b+20>>2];e=F[b+16>>2];g=e+4|0;c=g>>>0<4?c+1|0:c;if(g>>>0>I[b+8>>2]&(c|0)>=(d|0)|(c|0)>(d|0)){break a}c=e+F[b>>2]|0;f=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[a+12>>2]=f;c=F[b+20>>2];d=F[b+16>>2]+4|0;c=d>>>0<4?c+1|0:c;e=d;F[b+16>>2]=d;F[b+20>>2]=c;break b}if(!lb(1,a+12|0,b)){break a}e=F[b+16>>2];c=F[b+20>>2];f=F[a+12>>2]}d=F[b+8>>2];g=d-e|0;c=F[b+12>>2]-(c+(d>>>0<e>>>0)|0)|0;if(g>>>0<f>>>6>>>0&(c|0)<=0|(c|0)<0){break a}d=F[a>>2];c=F[a+4>>2]-d>>2;c:{if(c>>>0<f>>>0){Aa(a,f-c|0);f=F[a+12>>2];break c}if(c>>>0<=f>>>0){break c}F[a+4>>2]=d+(f<<2)}if(!f){return 1}e=F[b+16>>2];c=F[b+20>>2];k=F[a>>2];l=F[b+8>>2];j=F[b+12>>2];g=0;while(1){if((c|0)>=(j|0)&e>>>0>=l>>>0|(c|0)>(j|0)){return 0}m=F[b>>2];i=G[m+e|0];d=e+1|0;c=d?c:c+1|0;e=d;F[b+16>>2]=d;F[b+20>>2]=c;d=i>>>2|0;h=0;d:{e:{f:{g:{n=i&3;switch(n|0){case 0:break e;case 3:break g;default:break f}}d=d+g|0;if(d>>>0>=f>>>0){return 0}ua(k+(g<<2)|0,0,(i&252)+4|0);g=d;break d}while(1){if((c|0)>=(j|0)&e>>>0>=l>>>0|(c|0)>(j|0)){break a}f=G[e+m|0];e=e+1|0;c=e?c:c+1|0;F[b+16>>2]=e;F[b+20>>2]=c;d=f<<(h<<3|6)|d;h=h+1|0;if((n|0)!=(h|0)){continue}break}}F[k+(g<<2)>>2]=d}f=F[a+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}b=a+16|0;j=F[a>>2];d=F[a+16>>2];c=F[a+20>>2]-d|0;h:{if(c>>>0<=16383){Aa(b,4096-(c>>>2|0)|0);break h}if((c|0)==16384){break h}F[a+20>>2]=d+16384}c=a+28|0;g=F[c>>2];d=F[a+32>>2]-g>>3;i:{if(d>>>0<f>>>0){tb(c,f-d|0);g=F[c>>2];break i}if(d>>>0>f>>>0){F[a+32>>2]=(f<<3)+g}if(!f){break a}}e=F[b>>2];b=0;a=0;while(1){c=j+(b<<2)|0;h=F[c>>2];d=a;i=(b<<3)+g|0;F[i+4>>2]=d;F[i>>2]=h;c=F[c>>2];a=c+d|0;if(a>>>0>4096){break a}j:{if(a>>>0<=d>>>0){break j}h=0;i=c&7;if(i){while(1){F[e+(d<<2)>>2]=b;d=d+1|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}if(c-1>>>0<=6){break j}while(1){c=e+(d<<2)|0;F[c>>2]=b;F[c+28>>2]=b;F[c+24>>2]=b;F[c+20>>2]=b;F[c+16>>2]=b;F[c+12>>2]=b;F[c+8>>2]=b;F[c+4>>2]=b;d=d+8|0;if((d|0)!=(a|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){continue}break}o=(a|0)==4096}return o}function Li(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;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<<d;d=-2-e|0;F[a+84>>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;d=F[a+40>>2];e=F[d>>2];d=F[d+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{d=d-e|0;if((d|0)>0){m=a+8|0;n=a+44|0;d=d>>>2|0;o=d>>>0>1?d:1;p=a+96|0;while(1){e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=j>>>0){break a}Ob(n,F[d+(j<<2)>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=(i^k)-i|0;h=i+((d^e)-d+((f^h)-h)|0)|0;d=0;d=h>>>0<i>>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Nj(Mj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Nj(Mj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=(d^e)-e|0;d=f>>31;d=e+((d^f)-d|0)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Da(p);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=(d^f)-f|0;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]+(f-(d^f)|0)|0}if((d|0)<0){d=e>>31;d=(d^e)-d|0;break d}d=e>>31;d=F[a+84>>2]+(d-(d^e)|0)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];h=F[h>>2];F[g+36>>2]=d;F[g+32>>2]=f;F[g+24>>2]=h;F[g+28>>2]=k;qc(g+40|0,m,g+32|0,g+24|0);d=c+e|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];j=j+1|0;if((o|0)!=(j|0)){continue}break}}ea=g+48|0;return 1}Ea();V()}function Gi(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;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<<d;d=-2-e|0;F[a+84>>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;d=F[a+40>>2];e=F[d>>2];d=F[d+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{d=d-e|0;if((d|0)>0){m=a+8|0;n=a+44|0;d=d>>>2|0;o=d>>>0>1?d:1;p=a+96|0;while(1){e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=j>>>0){break a}Mb(n,F[d+(j<<2)>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=(i^k)-i|0;h=i+((d^e)-d+((f^h)-h)|0)|0;d=0;d=h>>>0<i>>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Nj(Mj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Nj(Mj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=(d^e)-e|0;d=f>>31;d=e+((d^f)-d|0)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Da(p);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=(d^f)-f|0;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]+(f-(d^f)|0)|0}if((d|0)<0){d=e>>31;d=(d^e)-d|0;break d}d=e>>31;d=F[a+84>>2]+(d-(d^e)|0)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];h=F[h>>2];F[g+36>>2]=d;F[g+32>>2]=f;F[g+24>>2]=h;F[g+28>>2]=k;qc(g+40|0,m,g+32|0,g+24|0);d=c+e|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];j=j+1|0;if((o|0)!=(j|0)){continue}break}}ea=g+48|0;return 1}Ea();V()}function Ui(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;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<<d;d=-2-e|0;F[a+84>>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;d=F[a+40>>2];e=F[d>>2];d=F[d+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{d=d-e|0;if((d|0)>0){m=a+8|0;n=a+44|0;d=d>>>2|0;o=d>>>0>1?d:1;p=a+96|0;while(1){e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=j>>>0){break a}Ob(n,F[d+(j<<2)>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=(i^k)-i|0;h=i+((d^e)-d+((f^h)-h)|0)|0;d=0;d=h>>>0<i>>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Nj(Mj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Nj(Mj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=(d^e)-e|0;d=f>>31;d=e+((d^f)-d|0)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Da(p);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=(d^f)-f|0;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]+(f-(d^f)|0)|0}if((d|0)<0){d=e>>31;d=(d^e)-d|0;break d}d=e>>31;d=F[a+84>>2]+(d-(d^e)|0)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=k;F[g+28>>2]=d;F[g+24>>2]=f;rc(g+32|0,m,g+24|0,g+40|0);d=c+e|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];j=j+1|0;if((o|0)!=(j|0)){continue}break}}ea=g+48|0;return 1}Ea();V()}function Pi(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;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<<d;d=-2-e|0;F[a+84>>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;d=F[a+40>>2];e=F[d>>2];d=F[d+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{d=d-e|0;if((d|0)>0){m=a+8|0;n=a+44|0;d=d>>>2|0;o=d>>>0>1?d:1;p=a+96|0;while(1){e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=j>>>0){break a}Mb(n,F[d+(j<<2)>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=(i^k)-i|0;h=i+((d^e)-d+((f^h)-h)|0)|0;d=0;d=h>>>0<i>>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Nj(Mj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Nj(Mj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=(d^e)-e|0;d=f>>31;d=e+((d^f)-d|0)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Da(p);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=(d^f)-f|0;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]+(f-(d^f)|0)|0}if((d|0)<0){d=e>>31;d=(d^e)-d|0;break d}d=e>>31;d=F[a+84>>2]+(d-(d^e)|0)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=k;F[g+28>>2]=d;F[g+24>>2]=f;rc(g+32|0,m,g+24|0,g+40|0);d=c+e|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];j=j+1|0;if((o|0)!=(j|0)){continue}break}}ea=g+48|0;return 1}Ea();V()}function De(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=ea-16|0;ea=f;c=F[a+4>>2];F[a+40>>2]=F[a>>2];F[a+44>>2]=c;c=F[a+36>>2];F[a+72>>2]=F[a+32>>2];F[a+76>>2]=c;d=F[a+28>>2];c=a- -64|0;F[c>>2]=F[a+24>>2];F[c+4>>2]=d;c=F[a+20>>2];F[a+56>>2]=F[a+16>>2];F[a+60>>2]=c;c=F[a+12>>2];F[a+48>>2]=F[a+8>>2];F[a+52>>2]=c;a:{b:{if(Fb(a+40|0,1,f+8|0)){c=F[a+44>>2];F[a>>2]=F[a+40>>2];F[a+4>>2]=c;c=F[a+76>>2];F[a+32>>2]=F[a+72>>2];F[a+36>>2]=c;c=F[a+68>>2];F[a+24>>2]=F[a+64>>2];F[a+28>>2]=c;d=F[a+60>>2];h=d;c=F[a+56>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+52>>2];d=F[a+48>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break b}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;c:{if(H[a+38>>1]<=513){c=F[a+4>>2];F[a+96>>2]=F[a>>2];F[a+100>>2]=c;c=F[a+36>>2];F[a+128>>2]=F[a+32>>2];F[a+132>>2]=c;c=F[a+28>>2];F[a+120>>2]=F[a+24>>2];F[a+124>>2]=c;c=F[a+20>>2];F[a+112>>2]=F[a+16>>2];F[a+116>>2]=c;c=F[a+12>>2];F[a+104>>2]=F[a+8>>2];F[a+108>>2]=c;d:{if(Fb(a+96|0,1,f+8|0)){c=F[a+100>>2];F[a>>2]=F[a+96>>2];F[a+4>>2]=c;c=F[a+132>>2];F[a+32>>2]=F[a+128>>2];F[a+36>>2]=c;c=F[a+124>>2];F[a+24>>2]=F[a+120>>2];F[a+28>>2]=c;d=F[a+116>>2];h=d;c=F[a+112>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+108>>2];d=F[a+104>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break d}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;break c}c=0;if(!wa(a+80|0,a)){break a}}c=0;if(!Ce(a)){break a}c=F[a+4>>2];F[b>>2]=F[a>>2];F[b+4>>2]=c;c=F[a+36>>2];F[b+32>>2]=F[a+32>>2];F[b+36>>2]=c;c=F[a+28>>2];F[b+24>>2]=F[a+24>>2];F[b+28>>2]=c;c=F[a+20>>2];F[b+16>>2]=F[a+16>>2];F[b+20>>2]=c;c=F[a+12>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=c;c=1}ea=f+16|0;return c}function ng(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=ea-32|0;ea=f;e=f+8|0;c=ea-80|0;ea=c;a=F[b+36>>2];F[c+72>>2]=F[b+32>>2];F[c+76>>2]=a;d=F[b+28>>2];a=c- -64|0;F[a>>2]=F[b+24>>2];F[a+4>>2]=d;a=F[b+20>>2];F[c+56>>2]=F[b+16>>2];F[c+60>>2]=a;a=F[b+12>>2];F[c+48>>2]=F[b+8>>2];F[c+52>>2]=a;a=F[b+4>>2];F[c+40>>2]=F[b>>2];F[c+44>>2]=a;nc(c+8|0,c+40|0,c+24|0);a=F[c+8>>2];a:{if(a){F[e>>2]=a;a=e+4|0;if(D[c+23|0]>=0){b=c+8|4;e=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=e;F[a+8>>2]=F[b+8>>2];break a}Ba(a,F[c+12>>2],F[c+16>>2]);if(D[c+23|0]>=0){break a}ra(F[c+12>>2]);break a}if(D[c+23|0]<0){ra(F[c+12>>2])}a=G[c+31|0];if(a>>>0>=2){b=sa(32);a=G[1477]|G[1478]<<8;D[b+24|0]=a;D[b+25|0]=a>>>8;a=G[1473]|G[1474]<<8|(G[1475]<<16|G[1476]<<24);d=G[1469]|G[1470]<<8|(G[1471]<<16|G[1472]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=a;D[b+21|0]=a>>>8;D[b+22|0]=a>>>16;D[b+23|0]=a>>>24;a=G[1465]|G[1466]<<8|(G[1467]<<16|G[1468]<<24);d=G[1461]|G[1462]<<8|(G[1463]<<16|G[1464]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=a;D[b+13|0]=a>>>8;D[b+14|0]=a>>>16;D[b+15|0]=a>>>24;a=G[1457]|G[1458]<<8|(G[1459]<<16|G[1460]<<24);d=G[1453]|G[1454]<<8|(G[1455]<<16|G[1456]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=a;D[b+5|0]=a>>>8;D[b+6|0]=a>>>16;D[b+7|0]=a>>>24;D[b+26|0]=0;F[c+8>>2]=-1;a=c+8|4;Ba(a,b,26);d=D[c+23|0];F[e>>2]=F[c+8>>2];e=e+4|0;if((d|0)>=0){d=F[a+4>>2];F[e>>2]=F[a>>2];F[e+4>>2]=d;F[e+8>>2]=F[a+8>>2];ra(b);break a}Ba(e,F[c+12>>2],F[c+16>>2]);if(D[c+23|0]<0){ra(F[c+12>>2])}ra(b);break a}F[e>>2]=0;F[e+4>>2]=0;F[e+16>>2]=a;F[e+8>>2]=0;F[e+12>>2]=0}ea=c+80|0;a=F[f+24>>2];if(D[f+23|0]<0){ra(F[f+12>>2])}ea=f+32|0;return a|0}function Wd(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;k=ea-16|0;ea=k;F[k+8>>2]=c;e=F[a+12>>2];d=F[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=F[a+16>>2];d=F[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=ua(e,0,d)+d|0}F[a+12>>2]=d;break a}b:{c:{d:{h=F[a+8>>2];i=d-h>>2;e=i+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>>0<2147483644?e>>>0<l>>>0?l:e:1073741823;if(g){if(g>>>0>=1073741824){break d}j=sa(g<<2)}e=(i<<2)+j|0;i=f<<2;f=ua(e,0,i);i=f+i|0;g=(g<<2)+j|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=F[d>>2];F[d>>2]=0;e=e-4|0;F[e>>2]=f;if((d|0)!=(h|0)){continue}break}F[a+16>>2]=g;f=F[a+12>>2];F[a+12>>2]=i;d=F[a+8>>2];F[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=F[f>>2];F[f>>2]=0;if(e){Ja(e)}if((d|0)!=(f|0)){continue}break}break b}va();V()}za();V()}F[a+16>>2]=g;F[a+12>>2]=i;F[a+8>>2]=f}if(d){ra(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}c=F[k+8>>2]}F[a+12>>2]=d}e:{f:{d=F[c+56>>2];g:{if((d|0)>4){break g}e=L(d,12)+a|0;d=F[e+24>>2];if((d|0)!=F[e+28>>2]){F[d>>2]=b;F[e+24>>2]=d+4;break g}h=F[e+20>>2];f=d-h|0;j=f>>2;d=j+1|0;if(d>>>0>=1073741824){break f}g=f>>1;g=f>>>0<2147483644?d>>>0<g>>>0?g:d:1073741823;if(g){if(g>>>0>=1073741824){break e}d=sa(g<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=b;if((f|0)>0){ta(d,h,f)}F[e+20>>2]=d;F[e+24>>2]=j+4;F[e+28>>2]=d+(g<<2);if(!h){break g}ra(h)}F[c+60>>2]=b;a=F[a+8>>2];F[k+8>>2]=0;b=a+(b<<2)|0;a=F[b>>2];F[b>>2]=c;if(a){Ja(a)}a=F[k+8>>2];F[k+8>>2]=0;if(a){Ja(a)}ea=k+16|0;return}va();V()}za();V()}function $c(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;i=ea-16|0;ea=i;F[i>>2]=b;g=-1;a:{if((b|0)==-1){F[i+4>>2]=-1;break a}c=b+1|0;F[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}F[i+8>>2]=g;n=(b>>>0)/3|0;b:{c:{d:{while(1){e:{f:{k=F[(l<<2)+i>>2];if((k|0)!=-1){c=F[F[F[a+8>>2]+12>>2]+(k<<2)>>2];if((c|0)!=-1){break f}}g=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break e}while(1){f=L(g,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];g:{if(c>>>0<d>>>0){F[c>>2]=k;F[f+136>>2]=c+4;break g}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break d}m=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0<e>>>0?e:c:1073741823;if(d){if(d>>>0>=1073741824){break c}c=sa(d<<2)}else{c=0}e=m+c|0;F[e>>2]=k;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break g}ra(h)}g=g+1|0;c=F[a+216>>2];if(g>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}break e}if((b|0)==-1|(c>>>0)/3>>>0<n>>>0){break e}g=0;if(F[a+220>>2]==F[a+216>>2]){break e}while(1){h:{if(!Da(F[a+368>>2]+(g<<4)|0)){break h}f=F[a+216>>2]+L(g,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0<d>>>0){F[c>>2]=k;F[f+136>>2]=c+4;break h}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break b}m=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0<e>>>0?e:c:1073741823;if(d){if(d>>>0>=1073741824){break c}c=sa(d<<2)}else{c=0}e=m+c|0;F[e>>2]=k;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break h}ra(h)}g=g+1|0;if(g>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){continue}break}ea=i+16|0;return 1}va();V()}za();V()}va();V()}function Mg(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;e=a;a:{if(F[a+12>>2]==(b|0)){break a}d=F[e+4>>2];a=F[e>>2];if((d|0)!=(a|0)){while(1){d=d-12|0;if(D[d+11|0]<0){ra(F[d>>2])}if((a|0)!=(d|0)){continue}break}}F[e+12>>2]=b;F[e+4>>2]=a;d=F[b>>2];j=b+4|0;if((d|0)==(j|0)){break a}while(1){a=F[e+4>>2];b:{if((a|0)!=F[e+8>>2]){c:{if(D[d+27|0]>=0){b=F[d+20>>2];F[a>>2]=F[d+16>>2];F[a+4>>2]=b;F[a+8>>2]=F[d+24>>2];break c}Ba(a,F[d+16>>2],F[d+20>>2])}F[e+4>>2]=a+12;break b}h=0;d:{e:{f:{b=F[e+4>>2];a=F[e>>2];g=(b-a|0)/12|0;f=g+1|0;if(f>>>0<357913942){i=(F[e+8>>2]-a|0)/12|0;k=i<<1;f=i>>>0<178956970?f>>>0<k>>>0?k:f:357913941;if(f){if(f>>>0>=357913942){break f}h=sa(L(f,12))}i=L(f,12);f=L(g,12)+h|0;g:{if(D[d+27|0]>=0){g=F[d+20>>2];F[f>>2]=F[d+16>>2];F[f+4>>2]=g;F[f+8>>2]=F[d+24>>2];break g}Ba(f,F[d+16>>2],F[d+20>>2]);b=F[e+4>>2];a=F[e>>2]}h=h+i|0;g=f+12|0;if((a|0)==(b|0)){break e}while(1){b=b-12|0;i=F[b+4>>2];f=f-12|0;F[f>>2]=F[b>>2];F[f+4>>2]=i;F[f+8>>2]=F[b+8>>2];F[b>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;if((a|0)!=(b|0)){continue}break}F[e+8>>2]=h;a=F[e+4>>2];F[e+4>>2]=g;b=F[e>>2];F[e>>2]=f;if((a|0)==(b|0)){break d}while(1){a=a-12|0;if(D[a+11|0]<0){ra(F[a>>2])}if((a|0)!=(b|0)){continue}break}break d}va();V()}za();V()}F[e+8>>2]=h;F[e+4>>2]=g;F[e>>2]=f}if(b){ra(b)}}a=F[d+4>>2];h:{if(a){while(1){d=a;a=F[a>>2];if(a){continue}break h}}while(1){a=d;d=F[d+8>>2];if((a|0)!=F[d>>2]){continue}break}}if((d|0)!=(j|0)){continue}break}}d=0;i:{if((c|0)<0){break i}a=F[e>>2];if((F[e+4>>2]-a|0)/12>>>0<=c>>>0){break i}a=a+L(c,12)|0;d=D[a+11|0]<0?F[a>>2]:a}return d|0}function ad(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=ea-16|0;ea=h;F[h>>2]=b;c=-1;a:{if((b|0)==-1){F[h+4>>2]=-1;break a}c=b+1|0;F[h+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){c=b-1|0;break a}c=b+2|0}F[h+8>>2]=c;b:{c:{while(1){j=F[(k<<2)+h>>2];d:{if(!((j|0)==-1|F[F[F[a+8>>2]+12>>2]+(j<<2)>>2]==-1)){b=0;if(F[a+220>>2]==F[a+216>>2]){break d}while(1){e:{f:{if(!Da(F[a+368>>2]+(b<<4)|0)){break f}f=F[a+216>>2]+L(b,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0<d>>>0){F[c>>2]=j;F[f+136>>2]=c+4;break f}g=F[f+132>>2];i=c-g|0;e=i>>2;c=e+1|0;if(c>>>0>=1073741824){break e}l=e<<2;d=d-g|0;e=d>>1;d=d>>>0<2147483644?c>>>0<e>>>0?e:c:1073741823;if(d){if(d>>>0>=1073741824){break b}c=sa(d<<2)}else{c=0}e=l+c|0;F[e>>2]=j;if((i|0)>0){ta(c,g,i)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!g){break f}ra(g)}b=b+1|0;if(b>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break d}break}va();V()}b=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break d}while(1){f=L(b,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];g:{if(c>>>0<d>>>0){F[c>>2]=j;F[f+136>>2]=c+4;break g}g=F[f+132>>2];i=c-g|0;e=i>>2;c=e+1|0;if(c>>>0>=1073741824){break c}l=e<<2;d=d-g|0;e=d>>1;d=d>>>0<2147483644?c>>>0<e>>>0?e:c:1073741823;if(d){if(d>>>0>=1073741824){break b}c=sa(d<<2)}else{c=0}e=l+c|0;F[e>>2]=j;if((i|0)>0){ta(c,g,i)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!g){break g}ra(g)}b=b+1|0;c=F[a+216>>2];if(b>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}k=k+1|0;if((k|0)!=3){continue}break}ea=h+16|0;return 1}va();V()}za();V()}function ug(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,n=0;a=0;g=ea-16|0;ea=g;i=D[c+24|0];k=F[b+80>>2];b=L(i,k);a:{b:{c:{e=F[c+28>>2];d:{if(!(!G[c+84|0]|(e|0)!=1&(e|0)!=2)){a=F[c+48>>2];c=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;e=0;if(b){if((b|0)<0){break b}e=sa(b);f=ta(e,a+c|0,b)+b|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=f;F[d+4>>2]=f;F[d>>2]=e;a=1;break d}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(i){if((i|0)<0){break b}a=sa(i);F[g>>2]=a;f=a+i|0;F[g+8>>2]=f;ua(a,0,i);F[g+4>>2]=f}h=F[d+4>>2];f=F[d>>2];e=h-f|0;e:{if(e>>>0<b>>>0){l=b-e|0;j=F[d+8>>2];if(l>>>0<=j-h>>>0){m=d,n=ua(h,0,l)+l|0,F[m+4>>2]=n;break e}if((b|0)<0){break c}h=j-f|0;j=h<<1;j=h>>>0<1073741823?b>>>0<j>>>0?j:b:2147483647;h=sa(j);ua(h+e|0,0,l);if((e|0)>0){ta(h,f,e)}F[d+8>>2]=h+j;F[d+4>>2]=b+h;F[d>>2]=h;if(!f){break e}ra(f);break e}if(b>>>0>=e>>>0){break e}F[d+4>>2]=b+f}f:{if(!k){e=0;break f}if(!i){b=0;e=1;while(1){if(!jc(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],a)){break f}b=b+1|0;e=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break f}h=i&-2;l=i&1;b=0;e=1;a=0;while(1){if(jc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],F[g>>2])){f=0;e=0;if((i|0)!=1){while(1){D[F[d>>2]+b|0]=G[F[g>>2]+f|0];D[(F[d>>2]+b|0)+1|0]=G[F[g>>2]+(f|1)|0];f=f+2|0;b=b+2|0;e=e+2|0;if((h|0)!=(e|0)){continue}break}}if(l){D[F[d>>2]+b|0]=G[F[g>>2]+f|0];b=b+1|0}a=a+1|0;e=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}}break}a=F[g>>2]}if(a){ra(a)}a=e^1}ea=g+16|0;a=a&1;break a}va();V()}va();V()}return a|0}function tg(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,n=0;a=0;g=ea-16|0;ea=g;i=D[c+24|0];k=F[b+80>>2];b=L(i,k);a:{b:{c:{e=F[c+28>>2];d:{if(!(!G[c+84|0]|(e|0)!=1&(e|0)!=2)){a=F[c+48>>2];c=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;e=0;if(b){if((b|0)<0){break b}e=sa(b);f=ta(e,a+c|0,b)+b|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=f;F[d+4>>2]=f;F[d>>2]=e;a=1;break d}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(i){if((i|0)<0){break b}a=sa(i);F[g>>2]=a;f=a+i|0;F[g+8>>2]=f;ua(a,0,i);F[g+4>>2]=f}h=F[d+4>>2];f=F[d>>2];e=h-f|0;e:{if(e>>>0<b>>>0){l=b-e|0;j=F[d+8>>2];if(l>>>0<=j-h>>>0){m=d,n=ua(h,0,l)+l|0,F[m+4>>2]=n;break e}if((b|0)<0){break c}h=j-f|0;j=h<<1;j=h>>>0<1073741823?b>>>0<j>>>0?j:b:2147483647;h=sa(j);ua(h+e|0,0,l);if((e|0)>0){ta(h,f,e)}F[d+8>>2]=h+j;F[d+4>>2]=b+h;F[d>>2]=h;if(!f){break e}ra(f);break e}if(b>>>0>=e>>>0){break e}F[d+4>>2]=b+f}f:{if(!k){e=0;break f}if(!i){b=0;e=1;while(1){if(!ic(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],a)){break f}b=b+1|0;e=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break f}h=i&-2;l=i&1;b=0;e=1;a=0;while(1){if(ic(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],F[g>>2])){f=0;e=0;if((i|0)!=1){while(1){D[F[d>>2]+b|0]=G[F[g>>2]+f|0];D[(F[d>>2]+b|0)+1|0]=G[F[g>>2]+(f|1)|0];f=f+2|0;b=b+2|0;e=e+2|0;if((h|0)!=(e|0)){continue}break}}if(l){D[F[d>>2]+b|0]=G[F[g>>2]+f|0];b=b+1|0}a=a+1|0;e=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}}break}a=F[g>>2]}if(a){ra(a)}a=e^1}ea=g+16|0;a=a&1;break a}va();V()}va();V()}return a|0}function vg(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,n=0,o=0,p=0;a=0;h=ea-16|0;ea=h;j=F[b+80>>2];b=G[c+24|0];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;e=b<<24>>24;a:{b:{c:{d:{if(b){if((e|0)<0){break d}b=e<<2;a=sa(b);F[h>>2]=a;g=a+b|0;F[h+8>>2]=g;b=a;k=e&7;if(k){while(1){F[b>>2]=-1073741824;b=b+4|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}if((e-1&1073741823)>>>0>=7){while(1){F[b+24>>2]=-1073741824;F[b+28>>2]=-1073741824;F[b+16>>2]=-1073741824;F[b+20>>2]=-1073741824;F[b+8>>2]=-1073741824;F[b+12>>2]=-1073741824;F[b>>2]=-1073741824;F[b+4>>2]=-1073741824;b=b+32|0;if((g|0)!=(b|0)){continue}break}}F[h+4>>2]=g}b=L(e,j);g=F[d>>2];f=F[d+4>>2]-g>>2;e:{if(b>>>0>f>>>0){Aa(d,b-f|0);break e}if(b>>>0>=f>>>0){break e}F[d+4>>2]=g+(b<<2)}if(!j){break c}i=1;if((e|0)<=0){b=0;while(1){if(!Ya(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],a)){break c}b=b+1|0;i=j>>>0>b>>>0;if((b|0)!=(j|0)){continue}break}break c}o=e&-4;k=e&3;f=0;p=e-1>>>0<3;while(1){if(!Ya(c,G[c+84|0]?l:F[F[c+68>>2]+(l<<2)>>2],D[c+24|0],a)){break c}n=F[d>>2];m=0;b=0;i=0;if(!p){while(1){e=(f<<2)+n|0;g=b<<2;J[e>>2]=J[g+a>>2];J[e+4>>2]=J[(g|4)+a>>2];J[e+8>>2]=J[(g|8)+a>>2];J[e+12>>2]=J[(g|12)+a>>2];b=b+4|0;f=f+4|0;i=i+4|0;if((o|0)!=(i|0)){continue}break}}if(k){while(1){J[(f<<2)+n>>2]=J[(b<<2)+a>>2];b=b+1|0;f=f+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}l=l+1|0;i=l>>>0<j>>>0;if((j|0)!=(l|0)){continue}break}break b}va();V()}if(!a){break a}}ra(a)}ea=h+16|0;return(i^-1)&1}function qc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=F[b+16>>2];g=F[c+4>>2]-k|0;e=g;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;j=F[b+16>>2];e=e>>31;h=(e^g)-e|0;e=f>>31;l=(j|0)>=(h+((e^f)-e|0)|0);a:{if(l){e=g;break a}b:{c:{if((f|0)>=0){i=1;h=1;if((g|0)>=0){break b}e=1;i=-1;h=-1;if(f){break c}break b}e=-1;i=-1;h=-1;if((g|0)<=0){break b}}i=(g|0)<=0?-1:1;h=e}e=f<<1;f=L(h,j);e=e-f|0;h=(L(i,h)|0)>=0;i=L(i,j);e=((h?0-e|0:e)+i|0)/2|0;F[c+4>>2]=e;j=f;f=(g<<1)-i|0;f=(j+(h?0-f|0:f)|0)/2|0;F[c>>2]=f}d:{e:{f:{g:{h:{i:{j:{if(f){if((f|0)<0){break j}if((e|0)>=0){break i}break f}if(e){break h}i=1;g=0;e=0;h=0;break d}i=1;if((e|0)>0){break g}h=(e|0)>0?253:0;g=e;e=f;break d}g=0-e|0;e=0-f|0;h=254;break e}if((e|0)<=0){break f}}e=0-e|0;g=f;h=253;break e}g=0-f|0;h=255}F[c>>2]=e;F[c+4>>2]=g;i=0}c=F[d+4>>2]+g|0;f=F[d>>2]+e|0;g=F[b+16>>2];k:{if((f|0)>(g|0)){f=f-F[b+4>>2]|0;break k}if((0-g|0)<=(f|0)){break k}f=F[b+4>>2]+f|0}l:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break l}if((0-g|0)<=(c|0)){break l}c=F[b+4>>2]+c|0}m:{if(i){b=c;break m}b=c;n:{switch((h&3)-1|0){case 0:b=0-f|0;f=c;break m;case 1:b=0-c|0;f=0-f|0;break m;case 2:break n;default:break m}}b=f;f=0-c|0}o:{if(l){c=b;break o}p:{q:{if((f|0)>=0){c=1;e=1;if((b|0)>=0){break p}d=1;c=-1;e=-1;if(f){break q}break p}d=-1;c=-1;e=-1;if((b|0)<=0){break p}}c=(b|0)<=0?-1:1;e=d}d=f<<1;f=L(e,g);d=d-f|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(c,e)|0)>=0;e=L(c,g);c=((d?j:h)+e|0)/2|0;b=(b<<1)-e|0;f=(f+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=c+k}function Xb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d-c|0;if((i|0)<=0){return}a:{g=F[a+8>>2];h=F[a+4>>2];if((g-h|0)>=(i|0)){j=h-b|0;if((j|0)>=(i|0)){f=h;g=d;break a}f=h;g=c+j|0;if((g|0)!=(d|0)){e=g;while(1){D[f|0]=G[e|0];f=f+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=f;if((j|0)>0){break a}return}f=F[a>>2];e=(h-f|0)+i|0;if((e|0)>=0){j=b-f|0;g=g-f|0;k=g<<1;k=g>>>0<1073741823?e>>>0<k>>>0?k:e:2147483647;if(k){g=sa(k)}else{g=0}e=j+g|0;if((c|0)!=(d|0)){e=ta(e,c,i)+i|0}if((j|0)>0){ta(g,f,j)}if((b|0)!=(h|0)){d=(b^-1)+h|0;f=h-b&7;if(f){c=0;while(1){D[e|0]=G[b|0];e=e+1|0;b=b+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(d>>>0>=7){while(1){D[e|0]=G[b|0];D[e+1|0]=G[b+1|0];D[e+2|0]=G[b+2|0];D[e+3|0]=G[b+3|0];D[e+4|0]=G[b+4|0];D[e+5|0]=G[b+5|0];D[e+6|0]=G[b+6|0];D[e+7|0]=G[b+7|0];e=e+8|0;b=b+8|0;if((h|0)!=(b|0)){continue}break}}f=F[a>>2]}F[a+8>>2]=g+k;F[a+4>>2]=e;F[a>>2]=g;if(f){ra(f)}return}va();V()}e=f;d=e-i|0;if(h>>>0>d>>>0){while(1){D[e|0]=G[d|0];e=e+1|0;d=d+1|0;if(h>>>0>d>>>0){continue}break}}F[a+4>>2]=e;a=b+i|0;if((a|0)!=(f|0)){a=f-a|0;Ra(f-a|0,b,a)}if((c|0)==(g|0)){return}a=(c^-1)+g|0;f=g-c&7;b:{if(!f){e=b;break b}d=0;e=b;while(1){D[e|0]=G[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){D[e|0]=G[c|0];D[e+1|0]=G[c+1|0];D[e+2|0]=G[c+2|0];D[e+3|0]=G[c+3|0];D[e+4|0]=G[c+4|0];D[e+5|0]=G[c+5|0];D[e+6|0]=G[c+6|0];D[e+7|0]=G[c+7|0];e=e+8|0;c=c+8|0;if((g|0)!=(c|0)){continue}break}}function me(a,b){var c=0,d=0,e=0,f=0;if(!F[a+64>>2]){c=sa(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(d){c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}ra(d);c=F[a+64>>2]}F[a>>2]=c;d=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=d;d=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+16>>2]=d;F[a+20>>2]=c}a:{D[a+24|0]=G[b+24|0];F[a+28>>2]=F[b+28>>2];D[a+32|0]=G[b+32|0];c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;F[a+56>>2]=F[b+56>>2];c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;F[a+60>>2]=F[b+60>>2];d=F[b>>2];b:{if(!d){F[a>>2]=0;c=1;break b}e=F[a>>2];c=0;if(!e){break b}c=F[d>>2];re(e,c,F[d+4>>2]-c|0,0);c=1}c:{if(!c){break c}D[a+84|0]=G[b+84|0];F[a+80>>2]=F[b+80>>2];if((a|0)!=(b|0)){Eb(a+68|0,F[b+68>>2],F[b+72>>2])}d=F[b+88>>2];d:{if(d){b=sa(40);c=F[d>>2];F[b+16>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b>>2]=c;c=F[d+12>>2];e=F[d+8>>2];if((c|0)!=(e|0)){e=c-e|0;if((e|0)<0){break a}c=sa(e);F[b+8>>2]=c;F[b+12>>2]=c;F[b+16>>2]=c+e;f=F[d+8>>2];e=F[d+12>>2]-f|0;if((e|0)>0){c=ta(c,f,e)+e|0}F[b+12>>2]=c}c=F[d+36>>2];F[b+32>>2]=F[d+32>>2];F[b+36>>2]=c;c=F[d+28>>2];F[b+24>>2]=F[d+24>>2];F[b+28>>2]=c;c=F[a+88>>2];F[a+88>>2]=b;if(c){break d}break c}c=F[a+88>>2];F[a+88>>2]=0;if(!c){break c}}a=F[c+8>>2];if(a){F[c+12>>2]=a;ra(a)}ra(c)}return}va();V()}function aj(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;F[a+8>>2]=e;m=a+32|0;h=F[m>>2];g=F[a+36>>2]-h>>2;a:{if(g>>>0<e>>>0){Aa(m,e-g|0);f=F[a+8>>2];break a}f=e;if(f>>>0>=g>>>0){break a}F[a+36>>2]=h+(e<<2);f=e}g=(e&1073741823)!=(e|0)?-1:e<<2;n=ua(sa(g),0,g);b:{if((f|0)<=0){break b}h=F[a+32>>2];while(1){f=i<<2;g=F[f+n>>2];j=F[a+16>>2];c:{if((g|0)>(j|0)){F[f+h>>2]=j;break c}f=f+h|0;j=F[a+12>>2];if((j|0)>(g|0)){F[f>>2]=j;break c}F[f>>2]=g}f=F[a+8>>2];i=i+1|0;if((f|0)>(i|0)){continue}break}if((f|0)<=0){break b}i=0;while(1){g=i<<2;f=g+c|0;g=F[b+g>>2]+F[g+h>>2]|0;F[f>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[f>>2]=g}f=F[a+8>>2];i=i+1|0;if((f|0)>(i|0)){continue}break}}if(!((d|0)<=(e|0)|(f|0)<=0)){p=0-e<<2;g=e;while(1){e:{if((f|0)<=0){break e}l=g<<2;o=l+c|0;q=o+p|0;j=F[m>>2];i=0;while(1){f=i<<2;h=F[f+q>>2];k=F[a+16>>2];f:{if((h|0)>(k|0)){F[f+j>>2]=k;break f}f=f+j|0;k=F[a+12>>2];if((k|0)>(h|0)){F[f>>2]=k;break f}F[f>>2]=h}f=F[a+8>>2];i=i+1|0;if((f|0)>(i|0)){continue}break}i=0;if((f|0)<=0){break e}l=b+l|0;while(1){h=i<<2;f=h+o|0;h=F[h+l>>2]+F[h+j>>2]|0;F[f>>2]=h;g:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break g}h=h+F[a+20>>2]|0}F[f>>2]=h}f=F[a+8>>2];i=i+1|0;if((f|0)>(i|0)){continue}break}}g=e+g|0;if((g|0)<(d|0)){continue}break}}ra(n);return 1}function qg(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,n=0,o=0,p=0;g=ea-16|0;ea=g;j=F[b+80>>2];a=D[c+24|0];b=L(j,a);a:{b:{c:{d:{e=F[c+28>>2];if(!(!G[c+84|0]|(e|0)!=5&(e|0)!=6)){e=F[c+48>>2];c=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break d}a=b<<2;f=sa(a);i=ta(f,c+e|0,a)+a|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=i;F[d+4>>2]=i;F[d>>2]=f;a=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(a){if((a|0)<0){break d}e=a<<2;f=sa(e);F[g>>2]=f;h=e+f|0;F[g+8>>2]=h;ua(f,0,e);F[g+4>>2]=h}h=F[d>>2];e=F[d+4>>2]-h>>2;e:{if(e>>>0<b>>>0){Aa(d,b-e|0);break e}if(b>>>0>=e>>>0){break e}F[d+4>>2]=h+(b<<2)}if(!j){b=0;break c}if(!a){a=0;b=1;while(1){if(!ec(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],f)){break c}a=a+1|0;b=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break c}o=a&-4;m=a&3;p=a-1>>>0<3;b=1;e=0;while(1){if(!ec(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break c}n=F[d>>2];l=0;a=0;b=0;if(!p){while(1){h=(i<<2)+n|0;k=a<<2;F[h>>2]=F[k+f>>2];F[h+4>>2]=F[(k|4)+f>>2];F[h+8>>2]=F[(k|8)+f>>2];F[h+12>>2]=F[(k|12)+f>>2];a=a+4|0;i=i+4|0;b=b+4|0;if((o|0)!=(b|0)){continue}break}}if(m){while(1){F[(i<<2)+n>>2]=F[(a<<2)+f>>2];a=a+1|0;i=i+1|0;l=l+1|0;if((l|0)!=(m|0)){continue}break}}e=e+1|0;b=j>>>0>e>>>0;if((e|0)!=(j|0)){continue}break}a=e>>>0>=j>>>0;break b}va();V()}a=!b;if(!f){break a}}ra(f)}ea=g+16|0;return a&1}function ge(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=ea-16|0;ea=g;j=F[b+80>>2];a=D[c+24|0];b=L(j,a);a:{b:{c:{d:{e=F[c+28>>2];if(!(!G[c+84|0]|(e|0)!=5&(e|0)!=6)){e=F[c+48>>2];c=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break d}a=b<<2;f=sa(a);i=ta(f,c+e|0,a)+a|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=i;F[d+4>>2]=i;F[d>>2]=f;a=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(a){if((a|0)<0){break d}e=a<<2;f=sa(e);F[g>>2]=f;h=e+f|0;F[g+8>>2]=h;ua(f,0,e);F[g+4>>2]=h}h=F[d>>2];e=F[d+4>>2]-h>>2;e:{if(e>>>0<b>>>0){Aa(d,b-e|0);break e}if(b>>>0>=e>>>0){break e}F[d+4>>2]=h+(b<<2)}if(!j){b=0;break c}if(!a){a=0;b=1;while(1){if(!fc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],f)){break c}a=a+1|0;b=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break c}o=a&-4;m=a&3;p=a-1>>>0<3;b=1;e=0;while(1){if(!fc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break c}n=F[d>>2];l=0;a=0;b=0;if(!p){while(1){h=(i<<2)+n|0;k=a<<2;F[h>>2]=F[k+f>>2];F[h+4>>2]=F[(k|4)+f>>2];F[h+8>>2]=F[(k|8)+f>>2];F[h+12>>2]=F[(k|12)+f>>2];a=a+4|0;i=i+4|0;b=b+4|0;if((o|0)!=(b|0)){continue}break}}if(m){while(1){F[(i<<2)+n>>2]=F[(a<<2)+f>>2];a=a+1|0;i=i+1|0;l=l+1|0;if((l|0)!=(m|0)){continue}break}}e=e+1|0;b=j>>>0>e>>>0;if((e|0)!=(j|0)){continue}break}a=e>>>0>=j>>>0;break b}va();V()}a=!b;if(!f){break a}}ra(f)}ea=g+16|0;return a&1}function sg(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,n=0,o=0,p=0;g=ea-16|0;ea=g;j=F[b+80>>2];a=D[c+24|0];b=L(j,a);a:{b:{c:{d:{e=F[c+28>>2];if(!(!G[c+84|0]|(e|0)!=3&(e|0)!=4)){e=F[c+48>>2];c=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break d}a=b<<1;f=sa(a);i=ta(f,c+e|0,a)+a|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=i;F[d+4>>2]=i;F[d>>2]=f;a=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(a){if((a|0)<0){break d}e=a<<1;f=sa(e);F[g>>2]=f;h=e+f|0;F[g+8>>2]=h;ua(f,0,e);F[g+4>>2]=h}h=F[d>>2];e=F[d+4>>2]-h>>1;e:{if(e>>>0<b>>>0){pe(d,b-e|0);break e}if(b>>>0>=e>>>0){break e}F[d+4>>2]=h+(b<<1)}if(!j){b=0;break c}if(!a){a=0;b=1;while(1){if(!hc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],f)){break c}a=a+1|0;b=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break c}o=a&-4;m=a&3;p=a-1>>>0<3;b=1;e=0;while(1){if(!hc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break c}n=F[d>>2];l=0;a=0;b=0;if(!p){while(1){h=(i<<1)+n|0;k=a<<1;E[h>>1]=H[k+f>>1];E[h+2>>1]=H[(k|2)+f>>1];E[h+4>>1]=H[(k|4)+f>>1];E[h+6>>1]=H[(k|6)+f>>1];a=a+4|0;i=i+4|0;b=b+4|0;if((o|0)!=(b|0)){continue}break}}if(m){while(1){E[(i<<1)+n>>1]=H[(a<<1)+f>>1];a=a+1|0;i=i+1|0;l=l+1|0;if((l|0)!=(m|0)){continue}break}}e=e+1|0;b=j>>>0>e>>>0;if((e|0)!=(j|0)){continue}break}a=e>>>0>=j>>>0;break b}va();V()}a=!b;if(!f){break a}}ra(f)}ea=g+16|0;return a&1}function rg(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,n=0,o=0,p=0;g=ea-16|0;ea=g;j=F[b+80>>2];a=D[c+24|0];b=L(j,a);a:{b:{c:{d:{e=F[c+28>>2];if(!(!G[c+84|0]|(e|0)!=3&(e|0)!=4)){e=F[c+48>>2];c=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break d}a=b<<1;f=sa(a);i=ta(f,c+e|0,a)+a|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=i;F[d+4>>2]=i;F[d>>2]=f;a=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(a){if((a|0)<0){break d}e=a<<1;f=sa(e);F[g>>2]=f;h=e+f|0;F[g+8>>2]=h;ua(f,0,e);F[g+4>>2]=h}h=F[d>>2];e=F[d+4>>2]-h>>1;e:{if(e>>>0<b>>>0){pe(d,b-e|0);break e}if(b>>>0>=e>>>0){break e}F[d+4>>2]=h+(b<<1)}if(!j){b=0;break c}if(!a){a=0;b=1;while(1){if(!gc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],f)){break c}a=a+1|0;b=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break c}o=a&-4;m=a&3;p=a-1>>>0<3;b=1;e=0;while(1){if(!gc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break c}n=F[d>>2];l=0;a=0;b=0;if(!p){while(1){h=(i<<1)+n|0;k=a<<1;E[h>>1]=H[k+f>>1];E[h+2>>1]=H[(k|2)+f>>1];E[h+4>>1]=H[(k|4)+f>>1];E[h+6>>1]=H[(k|6)+f>>1];a=a+4|0;i=i+4|0;b=b+4|0;if((o|0)!=(b|0)){continue}break}}if(m){while(1){E[(i<<1)+n>>1]=H[(a<<1)+f>>1];a=a+1|0;i=i+1|0;l=l+1|0;if((l|0)!=(m|0)){continue}break}}e=e+1|0;b=j>>>0>e>>>0;if((e|0)!=(j|0)){continue}break}a=e>>>0>=j>>>0;break b}va();V()}a=!b;if(!f){break a}}ra(f)}ea=g+16|0;return a&1}function Wc(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;a:{if((b|0)==-1){break a}c=b+1|0;d=(c>>>0)%3|0?c:b-2|0;f=b-1|0;if((b>>>0)%3|0){break a}f=b+2|0}b:{c:{d:{e:{f:{g:{e=F[a+184>>2];switch(e|0){case 7:break d;case 3:break e;case 5:break f;case 0:case 1:break g;default:break b}}g=F[a+148>>2];c=-1;e=1;d=((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:c)<<2;c=F[a+156>>2];d=d+c|0;F[d>>2]=F[d>>2]+1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+1;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+2;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0}F[c>>2]=F[c>>2]+e;e=F[a+184>>2]}h:{switch(e|0){case 0:case 5:f=F[a+156>>2];c=-1;i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;c=-1;if((b|0)==-1){break i}c=F[F[F[a+148>>2]>>2]+(b<<2)>>2]}if(F[f+(c<<2)>>2]<=5){F[a+188>>2]=5;return}F[a+188>>2]=0;return;default:break h}}F[a+188>>2]=-1}function Xe(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=ea-32|0;ea=i;F[i+28>>2]=0;a:{b:{if(H[b+38>>1]<=513){c=F[b+20>>2];d=F[b+16>>2];f=d+4|0;c=f>>>0<4?c+1|0:c;e=F[b+12>>2];if((e|0)<=(c|0)&f>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;break b}if(!ab(1,i+28|0,b)){break a}d=F[i+28>>2]}if(!d){break a}$a(a+76|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c:{if(!wa(c,b)){break c}e=1;while(1){g=1<<h;j=Da(c);f=F[a+76>>2]+(h>>>3&536870908)|0;e=e^j;if(e&1){g=F[f>>2]&(g^-1)}else{g=g|F[f>>2]}e=e^1;F[f>>2]=g;h=h+1|0;if((h|0)!=(d|0)){continue}break}d=F[b+12>>2];h=d;c=F[b+20>>2];f=c;e=F[b+16>>2];g=e+4|0;c=g>>>0<4?c+1|0:c;j=F[b+8>>2];if(j>>>0<g>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}k=F[b>>2];d=k+e|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=f;f=e+8|0;c=f>>>0<8?c+1|0:c;e=f;f=c;if(e>>>0>j>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break c}c=g+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=f;if((c|0)<(d|0)){break c}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0<d>>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break c}l=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break c}F[a+24>>2]=c-1}}ea=i+32|0;return l|0}function kf(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;e=ea-16|0;ea=e;h=ga[F[F[a>>2]+24>>2]](a)|0;a:{if((h|0)<=0){break a}l=a+48|0;i=1;while(1){b:{c:{if(!F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2]){break c}j=f<<2;g=F[j+F[a+36>>2]>>2];b=F[g+8>>2];k=ub(g);if(!k){break c}g=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];F[e+12>>2]=F[b+56>>2];b=sa(32);F[e>>2]=b;F[e+4>>2]=24;F[e+8>>2]=-2147483616;D[b+24|0]=0;c=G[1206]|G[1207]<<8|(G[1208]<<16|G[1209]<<24);d=G[1202]|G[1203]<<8|(G[1204]<<16|G[1205]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1198]|G[1199]<<8|(G[1200]<<16|G[1201]<<24);d=G[1194]|G[1195]<<8|(G[1196]<<16|G[1197]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1190]|G[1191]<<8|(G[1192]<<16|G[1193]<<24);d=G[1186]|G[1187]<<8|(G[1188]<<16|G[1189]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;b=rd(g,e+12|0,e);if(D[e+11|0]<0){ra(F[e>>2])}if(!b){break c}me(F[F[F[a+36>>2]+j>>2]+8>>2],k);break b}b=F[F[a+36>>2]+(f<<2)>>2];if(!(ga[F[F[b>>2]+24>>2]](b,l)|0)){break a}}f=f+1|0;i=(h|0)>(f|0);if((f|0)!=(h|0)){continue}break}}ea=e+16|0;return(i^-1)&1}function Ve(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;j=ea-16|0;ea=j;c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=F[b+12>>2];a:{if((e|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;if((d|0)<0){break a}$a(a+76|0,d);c=j;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;b:{if(!wa(c,b)){break b}if(d){e=1;while(1){f=1<<h;i=Da(c);g=F[a+76>>2]+(h>>>3&536870908)|0;e=e^i;if(e&1){f=F[g>>2]&(f^-1)}else{f=f|F[g>>2]}e=e^1;F[g>>2]=f;h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;f=F[b+16>>2];i=f+4|0;c=i>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0<i>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break b}c=i+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break b}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0<d>>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break b}h=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break b}F[a+24>>2]=c-1}}ea=j+16|0;return h|0}function Ae(a,b){var c=0,d=0,e=0,f=0,g=0;f=-1;d=-1;a:{if((b|0)==-1){break a}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}b:{c:{d:{switch(F[a+168>>2]){case 0:case 1:e=F[a+148>>2];c=1;b=F[a+156>>2];g=b+(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)|0;F[g>>2]=F[g>>2]+1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+1;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 3:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 7:break d;default:break b}}e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+2;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0}F[b>>2]=F[b>>2]+c}c=a;b=F[F[a+156>>2]+(((f|0)!=-1?F[F[F[a+148>>2]>>2]+(f<<2)>>2]:-1)<<2)>>2];d=F[a+180>>2];a=F[a+176>>2];F[c+172>>2]=(a|0)>(b|0)?0:((b|0)<(d|0)?b:d)-a|0}function Bh(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;a:{c=F[a+32>>2];e=F[c+8>>2];f=F[c+12>>2];d=F[c+20>>2];g=e;e=F[c+16>>2];b=0;b:{if((f|0)<=(d|0)&g>>>0<=e>>>0|(d|0)>(f|0)){break b}g=G[e+F[c>>2]|0];f=e+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;c:{if(!g){break c}while(1){if(ga[F[F[a>>2]+16>>2]](a,b)|0){b=b+1|0;if((g|0)!=(b|0)){continue}break c}break}return 0}b=F[a+8>>2];d=F[a+12>>2];if((b|0)!=(d|0)){while(1){c=F[b>>2];if(!(ga[F[F[c>>2]+8>>2]](c,a,F[a+4>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}d:{if(!g){break d}b=0;while(1){c=F[F[a+8>>2]+(b<<2)>>2];if(!(ga[F[F[c>>2]+12>>2]](c,F[a+32>>2])|0)){break a}b=b+1|0;if((g|0)!=(b|0)){continue}break}if(!g){break d}e=a+20|0;while(1){b=0;f=h<<2;c=F[f+F[a+8>>2]>>2];d=ga[F[F[c>>2]+24>>2]](c)|0;if((d|0)>0){while(1){c=F[F[a+8>>2]+f>>2];k=ga[F[F[c>>2]+20>>2]](c,b)|0;i=F[a+20>>2];j=F[a+24>>2]-i>>2;e:{if(k>>>0<j>>>0){break e}c=k+1|0;if(c>>>0>j>>>0){Aa(e,c-j|0);i=F[e>>2];break e}if(c>>>0>=j>>>0){break e}F[a+24>>2]=(c<<2)+i}F[(k<<2)+i>>2]=h;b=b+1|0;if((d|0)!=(b|0)){continue}break}}h=h+1|0;if((g|0)!=(h|0)){continue}break}}b=0;if(!(ga[F[F[a>>2]+28>>2]](a)|0)){break b}b=ga[F[F[a>>2]+32>>2]](a)|0}return b|0}return 0}function wa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=ea-16|0;ea=i;e=F[b+20>>2];c=F[b+12>>2];f=F[b+16>>2];a:{if((e|0)>=(c|0)&f>>>0>=I[b+8>>2]|(c|0)<(e|0)){break a}D[a+12|0]=G[f+F[b>>2]|0];e=F[b+20>>2];c=e;f=F[b+16>>2];d=f+1|0;e=d?c:c+1|0;g=d;F[b+16>>2]=d;F[b+20>>2]=e;b:{if(H[b+38>>1]<=513){h=F[b+12>>2];e=c;c=f+5|0;e=c>>>0<5?e+1|0:e;d=F[b+8>>2];f=c;if(d>>>0<c>>>0&(e|0)>=(h|0)|(e|0)>(h|0)){break a}c=g+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;break b}if(!Ne(1,i+12|0,b)){break a}f=F[b+16>>2];e=F[b+20>>2];d=F[b+8>>2];h=F[b+12>>2];c=F[i+12>>2]}g=d-f|0;d=h-(e+(d>>>0<f>>>0)|0)|0;if((d|0)<=0&c>>>0>g>>>0|(d|0)<0|(c|0)<=0){break a}d=f+F[b>>2]|0;F[a>>2]=d;c:{d:{h=c-1|0;g=h+d|0;j=G[g|0];e:{if(j>>>0<=63){F[a+4>>2]=h;d=G[g|0]&63;break e}f:{switch((j>>>6|0)-1|0){case 1:break d;case 0:break f;default:break a}}if(c>>>0<2){break a}F[a+4>>2]=c-2;d=(c+d|0)-2|0;d=G[d+1|0]<<8&16128|G[d|0]}F[a+8>>2]=d+4096;break c}if(c>>>0<3){break a}F[a+4>>2]=c-3;g=a;a=(c+d|0)-3|0;a=G[a+1|0]<<8|G[a+2|0]<<16&4128768|G[a|0];F[g+8>>2]=a+4096;if(a>>>0>1044479){break a}}a=c+f|0;e=a>>>0<c>>>0?e+1|0:e;F[b+16>>2]=a;F[b+20>>2]=e;k=1}ea=i+16|0;return k}function Ic(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=F[a+8>>2];e=F[a>>2];if(d-e>>2>>>0>=b>>>0){g=F[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){F[d>>2]=F[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){b=(b-h<<2)+g|0;while(1){F[g>>2]=F[c>>2];g=g+4|0;if((b|0)!=(g|0)){continue}break}F[a+4>>2]=b;return}F[a+4>>2]=e+(b<<2);return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>>0<2147483644?b>>>0<e>>>0?e:b:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=sa(d);F[a>>2]=e;F[a+8>>2]=d+e;c=F[c>>2];d=e;f=b&7;if(f){while(1){F[d>>2]=c;d=d+4|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){F[d+28>>2]=c;F[d+24>>2]=c;F[d+20>>2]=c;F[d+16>>2]=c;F[d+12>>2]=c;F[d+8>>2]=c;F[d+4>>2]=c;F[d>>2]=c;d=d+32|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=e;return}va();V()}function Vf(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;Wd(a,b,c);c=F[a+84>>2];d=F[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=F[a+92>>2];c=F[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=d&7;if(f){while(1){F[b>>2]=1;b=b+4|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}c=(d<<2)+c|0;if((d-1&1073741823)>>>0<7){break c}while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}F[a+88>>2]=c;break b}d:{f=F[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;h=e>>1;e=e>>>0<2147483644?b>>>0<h>>>0?h:b:1073741823;if(e){if(e>>>0>=1073741824){break d}i=sa(e<<2)}c=(c<<2)+i|0;b=c;h=d&7;if(h){b=c;while(1){F[b>>2]=1;b=b+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=c+(d<<2)|0;if((d-1&1073741823)>>>0>=7){while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){ta(i,f,j)}F[a+92>>2]=(e<<2)+i;F[a+88>>2]=c;F[a+84>>2]=i;if(f){ra(f)}break b}va();V()}za();V()}return}if(b>>>0>=d>>>0){break a}F[a+88>>2]=c+(b<<2)}}function Je(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=ea-16|0;ea=h;a:{b:{if(H[b+38>>1]<=511){g=F[b+12>>2];i=g;c=F[b+20>>2];d=F[b+16>>2];f=d+8|0;c=f>>>0<8?c+1|0:c;e=F[b+8>>2];if(e>>>0<f>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break a}d=d+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=G[d+4|0]|G[d+5|0]<<8|(G[d+6|0]<<16|G[d+7|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;break b}if(!kb(1,h+8|0,b)){break a}f=F[b+16>>2];c=F[b+20>>2];e=F[b+8>>2];i=F[b+12>>2];g=F[h+8>>2];d=F[h+12>>2]}j=e-f|0;e=i-(c+(f>>>0>e>>>0)|0)|0;if((e|0)==(d|0)&g>>>0>j>>>0|d>>>0>e>>>0){break a}c=c+d|0;e=f+g|0;c=e>>>0<f>>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;c=g;if((c|0)<=0){break a}b=f+F[b>>2]|0;F[a+40>>2]=b;f=c-1|0;g=b+f|0;e=G[g|0];c:{if(e>>>0<=63){F[a+44>>2]=f;b=G[g|0]&63;break c}d:{switch((e>>>6|0)-1|0){case 0:if(c>>>0<2){break a}F[a+44>>2]=c-2;b=(b+c|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break c;case 1:if(c>>>0<3){break a}F[a+44>>2]=c-3;b=(b+c|0)-3|0;b=G[b+1|0]<<8|G[b+2|0]<<16&4128768|G[b|0];break c;default:break d}}F[a+44>>2]=c-4;b=(b+c|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}F[a+48>>2]=b+16384;k=b>>>0<4177920}ea=h+16|0;return k}function ta(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){da(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){D[c|0]=G[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){F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];F[c+12>>2]=F[b+12>>2];F[c+16>>2]=F[b+16>>2];F[c+20>>2]=F[b+20>>2];F[c+24>>2]=F[b+24>>2];F[c+28>>2]=F[b+28>>2];F[c+32>>2]=F[b+32>>2];F[c+36>>2]=F[b+36>>2];F[c+40>>2]=F[b+40>>2];F[c+44>>2]=F[b+44>>2];F[c+48>>2]=F[b+48>>2];F[c+52>>2]=F[b+52>>2];F[c+56>>2]=F[b+56>>2];F[c+60>>2]=F[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){F[c>>2]=F[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){D[c|0]=G[b|0];D[c+1|0]=G[b+1|0];D[c+2|0]=G[b+2|0];D[c+3|0]=G[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){D[c|0]=G[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function Ia(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=F[a+8>>2];e=F[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=b&7;if(g){while(1){F[d>>2]=F[c>>2];d=d+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=e;return}b:{g=F[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;i=f>>1;f=f>>>0<2147483644?d>>>0<i>>>0?i:d:1073741823;if(f){if(f>>>0>=1073741824){break b}j=sa(f<<2)}e=(e<<2)+j|0;d=e;i=b&7;if(i){d=e;while(1){F[d>>2]=F[c>>2];d=d+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}if((k|0)>0){ta(j,g,k)}F[a+8>>2]=(f<<2)+j;F[a+4>>2]=e;F[a>>2]=j;if(g){ra(g)}return}va();V()}za();V()}function xb(a,b){var c=0,d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;c=a+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+48>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+68>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+88>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+100>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;g=a+116|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+104>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=1;break a}c=b<<2;e=sa(c);F[a+92>>2]=e;f=c+e|0;F[a+100>>2]=f;ua(e,0,c);F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[a+96>>2]=f;e=sa(c);F[a+104>>2]=e;f=c+e|0;F[a+112>>2]=f;ua(e,0,c);F[a+108>>2]=f;e=sa(c);F[d>>2]=e;f=c+e|0;F[d+8>>2]=f;ua(e,0,c);F[d+4>>2]=f;c=b<<5|1}wb(g,c,d);e=F[d>>2];if(e){F[d+4>>2]=e;ra(e)}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(b){b=b<<2;e=sa(b);F[d>>2]=e;f=b+e|0;F[d+8>>2]=f;ua(e,0,b);F[d+4>>2]=f}wb(a+128|0,c,d);b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}ea=d+16|0;return a}function xe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;F[a>>2]=11484;d=a+232|0;b=F[d+196>>2];if(b){F[d+200>>2]=b;ra(b)}c=F[d+184>>2];if(c){b=c;e=F[d+188>>2];if((b|0)!=(e|0)){while(1){b=e-12|0;f=F[b>>2];if(f){F[e-8>>2]=f;ra(f)}e=b;if((b|0)!=(c|0)){continue}break}b=F[d+184>>2]}F[d+188>>2]=c;ra(b)}b=F[d+156>>2];if(b){F[d+160>>2]=b;ra(b)}c=F[d+136>>2];F[d+136>>2]=0;if(c){e=c-4|0;b=F[e>>2];if(b){b=c+(b<<4)|0;while(1){b=b-16|0;if((c|0)!=(b|0)){continue}break}}ra(e)}Vc(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}b=F[a+144>>2];if(b){while(1){c=F[b>>2];ra(b);b=c;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){eb(b)}return a|0}function zc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;c=F[b+4>>2];g=F[b>>2];e=c-g|0;f=(e|0)/20|0;a:{if((c|0)==(g|0)){break a}b:{if(f>>>0<214748365){c=sa(e);F[a+16>>2]=c;F[a+20>>2]=c;F[a+24>>2]=c+L(f,20);f=F[b>>2];b=F[b+4>>2]-f|0;if((b|0)<=0){break a}f=ta(c,f,b);g=0;F[a+28>>2]=0;F[a+20>>2]=f+L((b>>>0)/20|0,20);b=(b|0)/20|0;e=b>>>0>1?b:1;h=e&3;b=0;c=0;if(e-1>>>0>=3){i=e&-4;e=0;while(1){d=f+L(b,20)|0;d=L(F[d+16>>2],F[d+12>>2]);c=c>>>0>d>>>0?c:d;d=f+L(b|1,20)|0;d=L(F[d+16>>2],F[d+12>>2]);c=c>>>0>d>>>0?c:d;d=f+L(b|2,20)|0;d=L(F[d+16>>2],F[d+12>>2]);c=c>>>0>d>>>0?c:d;d=f+L(b|3,20)|0;d=L(F[d+16>>2],F[d+12>>2]);c=c>>>0>d>>>0?c:d;b=b+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}if(h){while(1){e=f+L(b,20)|0;e=L(F[e+16>>2],F[e+12>>2]);c=c>>>0>e>>>0?c:e;b=b+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}if(!c){F[a+12>>2]=0;return a}if((c|0)<0){break b}b=ua(sa(c),0,c);c=b+c|0;F[a+8>>2]=c;F[a+4>>2]=c;F[a>>2]=b;F[a+12>>2]=b;return a}va();V()}va();V()}F[a+28>>2]=0;F[a+12>>2]=0;return a}function Oj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=O(d)-O(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;fa=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>Rj(d)|0;fa=0;break a}if(!(g-1&g)){break f}h=(O(g)+33|0)-O(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;fa=0;break a}c=O(d)-O(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=Rj(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<<d)-1&b)<<32-d|a>>>d}fa=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;i=b>>>f|0}else{c=b>>>f|0;i=((1<<f)-1&b)<<32-f|a>>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<<e;a=0}else{c=(1<<e)-1&a>>>32-e|b<<e;a=a<<e}b=c;if(h){c=d-1|0;e=g-1|0;m=(e|0)!=-1?c+1|0:c;while(1){c=i<<1|b>>>31;f=f<<1|i>>>31;j=m-(f+(c>>>0>e>>>0)|0)>>31;k=g&j;i=c-k|0;f=f-((d&j)+(c>>>0<k>>>0)|0)|0;b=b<<1|a>>>31;a=l|a<<1;l=j&1;h=h-1|0;if(h){continue}break}}fa=b<<1|a>>>31;a=l|a<<1;break a}a=0;b=0}fa=b}return a}function zb(a,b){var c=0,d=0,e=0,f=0,g=0;c=ea-16|0;ea=c;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+72>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+92>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+104>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;g=a+120|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+108>>2]=0;F[a+112>>2]=0;F[a+116>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;e=1;break a}e=b<<2;d=sa(e);F[a+96>>2]=d;f=d+e|0;F[a+104>>2]=f;ua(d,0,e);F[a+116>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[a+100>>2]=f;d=sa(e);F[a+108>>2]=d;f=d+e|0;F[a+116>>2]=f;ua(d,0,e);F[a+112>>2]=f;d=sa(e);F[c>>2]=d;f=d+e|0;F[c+8>>2]=f;ua(d,0,e);F[c+4>>2]=f;e=b<<5|1}wb(g,e,c);d=F[c>>2];if(d){F[c+4>>2]=d;ra(d)}F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;if(b){b=b<<2;d=sa(b);F[c>>2]=d;f=b+d|0;F[c+8>>2]=f;ua(d,0,b);F[c+4>>2]=f}wb(a+132|0,e,c);b=F[c>>2];if(b){F[c+4>>2]=b;ra(b)}ea=c+16|0;return a}function rc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=F[b+16>>2];i=F[c+4>>2]-k|0;e=i;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;g=F[b+16>>2];e=e>>31;h=(e^i)-e|0;e=f>>31;l=(g|0)>=(h+((e^f)-e|0)|0);a:{if(l){e=i;break a}b:{c:{if((f|0)>=0){e=1;h=1;if((i|0)>=0){break b}j=1;e=-1;h=-1;if(f){break c}break b}j=-1;e=-1;h=-1;if((i|0)<=0){break b}}e=(i|0)<=0?-1:1;h=j}j=L(g,h);f=(f<<1)-j|0;h=(L(e,h)|0)>=0;g=L(e,g);e=((h?0-f|0:f)+g|0)/2|0;F[c+4>>2]=e;m=c;c=(i<<1)-g|0;f=(j+(h?0-c|0:c)|0)/2|0;F[m>>2]=f;g=F[b+16>>2]}c=F[d+4>>2]+e|0;f=F[d>>2]+f|0;d:{if((g|0)<(f|0)){f=f-F[b+4>>2]|0;break d}if((0-g|0)<=(f|0)){break d}f=F[b+4>>2]+f|0}e:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break e}if((0-g|0)<=(c|0)){break e}c=F[b+4>>2]+c|0}f:{if(l){g=c;break f}g:{h:{if((f|0)>=0){b=1;e=1;if((c|0)>=0){break g}d=1;b=-1;e=-1;if(f){break h}break g}d=-1;b=-1;e=-1;if((c|0)<=0){break g}}b=(c|0)<=0?-1:1;e=d}i=L(e,g);d=(f<<1)-i|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(b,e)|0)>=0;b=L(b,g);g=((d?j:h)+b|0)/2|0;b=(c<<1)-b|0;f=(i+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=g+k}function Tb(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);D[b+12|0]=c;a:{if(c){break a}while(1){d=F[b+8>>2];if(G[d+12|0]){break a}b:{c=F[d+8>>2];e=F[c>>2];if((e|0)==(d|0)){e=F[c+4>>2];if(!(!e|G[e+12|0])){break b}c:{if(F[d>>2]==(b|0)){b=d;break c}b=F[d+4>>2];a=F[b>>2];F[d+4>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[((F[a>>2]!=(d|0))<<2)+a>>2]=b;F[b>>2]=d;F[d+8>>2]=b;c=F[b+8>>2];d=F[c>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[d+4>>2];F[c>>2]=a;if(a){F[a+8>>2]=c}F[d+8>>2]=F[c+8>>2];a=F[c+8>>2];F[((F[a>>2]!=(c|0))<<2)+a>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;return}if(!(G[e+12|0]|!e)){break b}d:{if(F[d>>2]!=(b|0)){b=d;break d}a=F[b+4>>2];F[d>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[((F[a>>2]!=(d|0))<<2)+a>>2]=b;F[b+4>>2]=d;F[d+8>>2]=b;c=F[b+8>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[c+4>>2];b=F[a>>2];F[c+4>>2]=b;if(b){F[b+8>>2]=c}F[a+8>>2]=F[c+8>>2];b=F[c+8>>2];F[((F[b>>2]!=(c|0))<<2)+b>>2]=a;F[a>>2]=c;F[c+8>>2]=a;break a}D[d+12|0]=1;D[c+12|0]=(a|0)==(c|0);D[e+12|0]=1;b=c;if((c|0)!=(a|0)){continue}break}}}function re(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{c:{if(!b){if((d|0)<0){break a}e=F[a+4>>2];b=F[a>>2];d=e-b|0;if(c>>>0>d>>>0){g=c-d|0;f=F[a+8>>2];if(g>>>0<=f-e>>>0){i=a,j=ua(e,0,g)+g|0,F[i+4>>2]=j;break c}if((c|0)<0){break b}e=f-b|0;f=e<<1;f=e>>>0<1073741823?c>>>0<f>>>0?f:c:2147483647;e=sa(f);ua(e+d|0,0,g);if((d|0)>0){ta(e,b,d)}F[a+8>>2]=e+f;F[a+4>>2]=c+e;F[a>>2]=e;if(!b){break c}ra(b);break c}if(c>>>0>=d>>>0){break c}F[a+4>>2]=b+c;break c}if((d|0)<0){break a}h=F[a+4>>2];g=F[a>>2];e=h-g|0;d:{if((d|0)<=0&c>>>0<=e>>>0|(d|0)<0){break d}if(c>>>0>e>>>0){f=c-e|0;d=F[a+8>>2];if(f>>>0<=d-h>>>0){i=a,j=ua(h,0,f)+f|0,F[i+4>>2]=j;break d}if((c|0)<0){break b}d=d-g|0;h=d<<1;h=d>>>0<1073741823?c>>>0<h>>>0?h:c:2147483647;d=sa(h);ua(d+e|0,0,f);if((e|0)>0){ta(d,g,e)}F[a+8>>2]=d+h;F[a+4>>2]=c+d;F[a>>2]=d;if(!g){break d}ra(g);break d}if(c>>>0>=e>>>0){break d}F[a+4>>2]=c+g}if(!c){break c}Ra(F[a>>2],b,c)}b=F[a+28>>2];c=F[a+24>>2]+1|0;b=c?b:b+1|0;F[a+24>>2]=c;F[a+28>>2]=b;e=1;break a}va();V()}return e}function Oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=M(0),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=ea-16|0;ea=k;if(F[c+28>>2]==9){d=F[a+4>>2];g=D[c+24|0];e=g<<2;f=sa((g&1073741823)!=(g|0)?-1:e);l=k+8|0;F[l>>2]=1065353216;i=J[a+20>>2];d=-1<<d^-1;if((d|0)>0){J[l>>2]=i/M(d|0)}o=(d|0)>0;a:{if(!o){break a}j=F[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){ta(F[F[c+64>>2]>>2]+d|0,f,e);d=d+e|0;ta(d+F[F[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}ta(F[F[c+64>>2]>>2]+d|0,f,e);break a}p=F[F[b>>2]>>2]+F[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=F[a+8>>2];i=J[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;J[h+f>>2]=M(i*M(F[q>>2]))+J[h+m>>2];h=h|4;J[h+f>>2]=M(i*M(F[q+4>>2]))+J[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;J[b+f>>2]=M(i*M(F[(d<<2)+p>>2]))+J[b+m>>2];d=d+1|0}ta(F[F[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}ra(f)}ea=k+16|0;return o|0}function dj(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;c=F[b+88>>2];if(!(!c|F[c>>2]!=1)){d=F[c+8>>2];F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);e=a+8|0;d=D[b+24|0];f=F[a+8>>2];g=F[a+12>>2]-f>>2;a:{if(d>>>0>g>>>0){Aa(e,d-g|0);d=D[b+24|0];break a}if(d>>>0>=g>>>0){break a}F[a+12>>2]=f+(d<<2)}k=1;g=F[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;e=F[e>>2];c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){f=d<<2;c=b+g|0;F[f+e>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[e+(f|4)>>2]=G[c+4|0]|G[c+5|0]<<8|(G[c+6|0]<<16|G[c+7|0]<<24);F[e+(f|8)>>2]=G[c+8|0]|G[c+9|0]<<8|(G[c+10|0]<<16|G[c+11|0]<<24);F[e+(f|12)>>2]=G[c+12|0]|G[c+13|0]<<8|(G[c+14|0]<<16|G[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+g|0;F[e+(d<<2)>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+g|0;F[c+20>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}return k|0}function of(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;if(he(a,b)){i=a+36|0;g=ga[F[F[a>>2]+24>>2]](a)|0;d=F[a+40>>2];e=F[a+36>>2];c=d-e>>2;a:{if(g>>>0>c>>>0){Wb(i,g-c|0);break a}if(c>>>0<=g>>>0){break a}e=e+(g<<2)|0;if((e|0)!=(d|0)){while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}F[a+40>>2]=e}b:{if((g|0)<=0){e=0;break b}e=1;c=F[b+20>>2];d=F[b+12>>2];f=F[b+16>>2];if((c|0)>=(d|0)&f>>>0>=I[b+8>>2]|(c|0)>(d|0)){break b}d=0;while(1){h=G[f+F[b>>2]|0];f=f+1|0;c=f?c:c+1|0;F[b+16>>2]=f;F[b+20>>2]=c;f=ga[F[F[a>>2]+48>>2]](a,h)|0;h=d<<2;j=h+F[a+36>>2]|0;c=F[j>>2];F[j>>2]=f;if(c){ga[F[F[c>>2]+4>>2]](c)}c=F[F[i>>2]+h>>2];if(!c){break b}if(!(l=c,m=ga[F[F[a>>2]+28>>2]](a)|0,n=ga[F[F[a>>2]+20>>2]](a,d)|0,k=F[F[c>>2]+8>>2],ga[k](l|0,m|0,n|0)|0)){break b}d=d+1|0;e=(g|0)>(d|0);if((d|0)==(g|0)){break b}f=F[b+16>>2];c=F[b+20>>2];h=F[b+12>>2];if(f>>>0<I[b+8>>2]&(c|0)<=(h|0)|(c|0)<(h|0)){continue}break}}a=!e}else{a=0}return a|0}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;k=F[a+12>>2];c=F[a+68>>2];d=F[c+80>>2];D[b+84|0]=0;m=b+68|0;i=F[b+68>>2];e=F[b+72>>2]-i>>2;a:{if(e>>>0<d>>>0){Ia(m,d-e|0,12372);c=F[a+68>>2];d=F[c+80>>2];break a}if(d>>>0>=e>>>0){break a}F[b+72>>2]=i+(d<<2)}b=F[c+100>>2];e=F[c+96>>2];i=(b-e|0)/12|0;b:{if((b|0)==(e|0)){break b}n=1;k=F[k+28>>2];f=F[k>>2];if((f|0)==-1){break b}o=i>>>0>1?i:1;c=e;b=0;while(1){g=F[c>>2];if(g>>>0>=d>>>0){break b}j=F[F[a+72>>2]+12>>2];h=F[j+(f<<2)>>2];if(h>>>0>=d>>>0){break b}f=F[m>>2];F[f+(g<<2)>>2]=h;g=k+(l<<2)|0;h=F[g+4>>2];if((h|0)==-1){break b}l=F[c+4>>2];if(l>>>0>=d>>>0){break b}h=F[(h<<2)+j>>2];if(h>>>0>=d>>>0){break b}F[f+(l<<2)>>2]=h;g=F[g+8>>2];if((g|0)==-1){break b}c=F[c+8>>2];if(c>>>0>=d>>>0){break b}j=F[(g<<2)+j>>2];if(j>>>0>=d>>>0){break b}F[f+(c<<2)>>2]=j;b=b+1|0;n=i>>>0>b>>>0;if((b|0)==(o|0)){break b}c=e+L(b,12)|0;l=L(b,3);f=F[k+(l<<2)>>2];if((f|0)!=-1){continue}break}}return(n^-1)&1}function Fh(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=F[d+80>>2];e=ea-48|0;ea=e;a=F[a+4>>2];k=a-31|0;a:{if(k>>>0<4294967267){break a}i=F[F[d>>2]>>2]+F[d+48>>2]|0;F[e+16>>2]=a;a=-1<<a;F[e+20>>2]=a^-1;a=-2-a|0;F[e+24>>2]=a;F[e+32>>2]=(a|0)/2;J[e+28>>2]=M(2)/M(a|0);f=F[c>>2];if((f|0)!=F[c+4>>2]){a=0;d=0;while(1){g=F[(d<<2)+f>>2];h=e+36|0;j=F[F[b>>2]>>2];m=F[b+48>>2];f=F[b+44>>2];l=F[b+40>>2];if(!G[b+84|0]){g=F[F[b+68>>2]+(g<<2)>>2]}g=Mj(l,f,g,0)+m|0;ta(h,g+j|0,l);fe(e+16|0,h,e+12|0,e+8|0);f=a<<2;F[f+i>>2]=F[e+12>>2];F[(f|4)+i>>2]=F[e+8>>2];a=a+2|0;d=d+1|0;f=F[c>>2];if(d>>>0<F[c+4>>2]-f>>2>>>0){continue}break}break a}if(!h){break a}d=0;a=0;while(1){j=e+36|0;c=F[F[b>>2]>>2];g=F[b+40>>2];f=F[b+48>>2]+Mj(g,F[b+44>>2],G[b+84|0]?a:F[F[b+68>>2]+(a<<2)>>2],0)|0;ta(j,c+f|0,g);fe(e+16|0,j,e+12|0,e+8|0);c=d<<2;F[c+i>>2]=F[e+12>>2];F[(c|4)+i>>2]=F[e+8>>2];d=d+2|0;a=a+1|0;if((h|0)!=(a|0)){continue}break}}ea=e+48|0;return k>>>0>4294967266|0}function Vh(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;j=F[a+12>>2];c=F[a+108>>2];d=F[c+80>>2];D[b+84|0]=0;m=b+68|0;h=F[b+68>>2];f=F[b+72>>2]-h>>2;a:{if(f>>>0<d>>>0){Ia(m,d-f|0,12372);c=F[a+108>>2];d=F[c+80>>2];break a}if(d>>>0>=f>>>0){break a}F[b+72>>2]=h+(d<<2)}b=F[c+100>>2];f=F[c+96>>2];h=(b-f|0)/12|0;b:{if((b|0)==(f|0)){j=0;break b}n=h>>>0>1?h:1;o=F[j>>2];c=f;b=0;j=1;while(1){e=(e<<2)+o|0;i=F[e>>2];if((i|0)==-1){break b}g=F[c>>2];if(g>>>0>=d>>>0){break b}l=F[F[a+112>>2]+12>>2];k=F[l+(i<<2)>>2];if(k>>>0>=d>>>0){break b}i=F[m>>2];F[i+(g<<2)>>2]=k;g=F[e+4>>2];if((g|0)==-1){break b}k=F[c+4>>2];if(k>>>0>=d>>>0){break b}g=F[(g<<2)+l>>2];if(g>>>0>=d>>>0){break b}F[i+(k<<2)>>2]=g;e=F[e+8>>2];if((e|0)==-1){break b}c=F[c+8>>2];if(c>>>0>=d>>>0){break b}e=F[(e<<2)+l>>2];if(e>>>0>=d>>>0){break b}F[i+(c<<2)>>2]=e;b=b+1|0;j=h>>>0>b>>>0;if((b|0)==(n|0)){break b}e=L(b,3);c=f+L(b,12)|0;if((b|0)!=1431655765){continue}break}}return(j^-1)&1}function Nh(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;j=F[a+12>>2];c=F[a+68>>2];d=F[c+80>>2];D[b+84|0]=0;m=b+68|0;h=F[b+68>>2];f=F[b+72>>2]-h>>2;a:{if(f>>>0<d>>>0){Ia(m,d-f|0,12372);c=F[a+68>>2];d=F[c+80>>2];break a}if(d>>>0>=f>>>0){break a}F[b+72>>2]=h+(d<<2)}b=F[c+100>>2];f=F[c+96>>2];h=(b-f|0)/12|0;b:{if((b|0)==(f|0)){j=0;break b}n=h>>>0>1?h:1;o=F[j>>2];c=f;b=0;j=1;while(1){e=(e<<2)+o|0;i=F[e>>2];if((i|0)==-1){break b}g=F[c>>2];if(g>>>0>=d>>>0){break b}l=F[F[a+72>>2]+12>>2];k=F[l+(i<<2)>>2];if(k>>>0>=d>>>0){break b}i=F[m>>2];F[i+(g<<2)>>2]=k;g=F[e+4>>2];if((g|0)==-1){break b}k=F[c+4>>2];if(k>>>0>=d>>>0){break b}g=F[(g<<2)+l>>2];if(g>>>0>=d>>>0){break b}F[i+(k<<2)>>2]=g;e=F[e+8>>2];if((e|0)==-1){break b}c=F[c+8>>2];if(c>>>0>=d>>>0){break b}e=F[(e<<2)+l>>2];if(e>>>0>=d>>>0){break b}F[i+(c<<2)>>2]=e;b=b+1|0;j=h>>>0>b>>>0;if((b|0)==(n|0)){break b}e=L(b,3);c=f+L(b,12)|0;if((b|0)!=1431655765){continue}break}}return(j^-1)&1}function Xa(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;i=F[(F[F[a+8>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2];e=F[F[a+12>>2]+4>>2];d=F[e+4>>2];a:{if((d|0)!=F[e+8>>2]){F[d>>2]=i;F[e+4>>2]=d+4;break a}b:{h=F[e>>2];g=d-h|0;j=g>>2;d=j+1|0;if(d>>>0<1073741824){f=g>>1;f=g>>>0<2147483644?d>>>0<f>>>0?f:d:1073741823;if(f){if(f>>>0>=1073741824){break b}d=sa(f<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=i;if((g|0)>0){ta(d,h,g)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=j+4;F[e>>2]=d;if(h){ra(h)}break a}va();V()}za();V()}e=F[a+4>>2];d=F[e+4>>2];c:{d:{e:{if((d|0)!=F[e+8>>2]){F[d>>2]=c;F[e+4>>2]=d+4;break e}h=F[e>>2];g=d-h|0;i=g>>2;d=i+1|0;if(d>>>0>=1073741824){break d}f=g>>1;f=g>>>0<2147483644?d>>>0<f>>>0?f:d:1073741823;if(f){if(f>>>0>=1073741824){break c}d=sa(f<<2)}else{d=0}i=d+(i<<2)|0;F[i>>2]=c;if((g|0)>0){ta(d,h,g)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=i+4;F[e>>2]=d;if(!h){break e}ra(h)}a=F[a+4>>2];F[F[a+12>>2]+(b<<2)>>2]=F[a+24>>2];F[a+24>>2]=F[a+24>>2]+1;return}va();V()}za();V()}function Fc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=F[a>>2];c=h+(b>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<<b;f=F[a+64>>2];e=(b|0)==-1;c=-1;a:{if(e){break a}d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;c=-1;if((d|0)==-1){break a}c=F[F[f>>2]+(d<<2)>>2]}d=F[a+12>>2];g=(c>>>3&536870908)+d|0;F[g>>2]=F[g>>2]|1<<c;b:{c:{if(!e){d:{e:{f:{if((b>>>0)%3|0){c=b-1|0;break f}c=b+2|0;if((c|0)==-1){break e}}e=F[F[f>>2]+(c<<2)>>2];c=1<<e;e=d+(e>>>3&536870908)|0;g=F[e>>2];break d}e=d+536870908|0;c=F[d+536870908>>2];g=-2147483648}F[e>>2]=c|g;c=-1;b=F[F[f+12>>2]+(b<<2)>>2];if((b|0)==-1){break b}D[a+24|0]=0;a=(b>>>3&536870908)+h|0;F[a>>2]=F[a>>2]|1<<b;a=b+1|0;a=(a>>>0)%3|0?a:b-2|0;if((a|0)!=-1){c=F[F[f>>2]+(a<<2)>>2]}a=d+(c>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<<c;g:{h:{if((b>>>0)%3|0){b=b-1|0;break h}b=b+2|0;a=-1;if((b|0)==-1){break g}}a=F[F[f>>2]+(b<<2)>>2]}b=1<<a;a=d+(a>>>3&536870908)|0;c=F[a>>2];break c}a=d+536870908|0;b=F[d+536870908>>2];c=-2147483648}F[a>>2]=b|c}}function pd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{c=F[a+8>>2];b:{if((c|0)!=F[a+12>>2]){e=c;break b}d=F[a+4>>2];g=F[a>>2];if(d>>>0>g>>>0){f=c-d|0;g=((d-g>>2)+1|0)/-2<<2;e=g+d|0;if((c|0)!=(d|0)){Ra(e,d,f);c=F[a+4>>2]}e=e+f|0;F[a+8>>2]=e;F[a+4>>2]=c+g;break b}f=(c|0)==(g|0)?1:c-g>>1;if(f>>>0>=1073741824){break a}e=f<<2;h=sa(e);k=h+e|0;f=(f&-4)+h|0;e=f;c:{if((c|0)==(d|0)){break c}c=c-d|0;l=c&-4;i=c-4|0;j=(i>>>2|0)+1&7;d:{if(!j){c=f;break d}e=0;c=f;while(1){F[c>>2]=F[d>>2];d=d+4|0;c=c+4|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}e=f+l|0;if(i>>>0<28){break c}while(1){F[c>>2]=F[d>>2];F[c+4>>2]=F[d+4>>2];F[c+8>>2]=F[d+8>>2];F[c+12>>2]=F[d+12>>2];F[c+16>>2]=F[d+16>>2];F[c+20>>2]=F[d+20>>2];F[c+24>>2]=F[d+24>>2];F[c+28>>2]=F[d+28>>2];d=d+32|0;c=c+32|0;if((e|0)!=(c|0)){continue}break}}F[a+12>>2]=k;F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=h;if(!g){break b}ra(g);e=F[a+8>>2]}F[e>>2]=F[b>>2];F[a+8>>2]=F[a+8>>2]+4;return}za();V()}function od(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=F[a+4>>2];b:{if((f|0)!=F[a>>2]){c=f;break b}g=F[a+8>>2];c=F[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;Ra(c,f,d);f=F[a+8>>2]}F[a+4>>2]=c;F[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=sa(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){F[e>>2]=F[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){F[e>>2]=F[d>>2];F[e+4>>2]=F[d+4>>2];F[e+8>>2]=F[d+8>>2];F[e+12>>2]=F[d+12>>2];F[e+16>>2]=F[d+16>>2];F[e+20>>2]=F[d+20>>2];F[e+24>>2]=F[d+24>>2];F[e+28>>2]=F[d+28>>2];d=d+32|0;e=e+32|0;if((h|0)!=(e|0)){continue}break}}F[a+12>>2]=k;F[a+8>>2]=h;F[a+4>>2]=c;F[a>>2]=i;if(!f){break b}ra(f);c=F[a+4>>2]}F[c-4>>2]=F[b>>2];F[a+4>>2]=F[a+4>>2]-4;return}za();V()}function Uh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=ea-16|0;ea=g;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=h;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}b=F[a+12>>2];d=F[b+28>>2];b=F[b+24>>2];F[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=F[c>>2];d=F[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Ia(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}F[a+100>>2]=e+(b<<2)}e=a+8|0;b=F[a+116>>2];d:{if(b){c=F[b>>2];if((c|0)==F[b+4>>2]){d=1;break d}b=0;while(1){d=we(e,F[(b<<2)+c>>2]);if(!d){break d}f=F[a+116>>2];c=F[f>>2];b=b+1|0;if(b>>>0<F[f+4>>2]-c>>2>>>0){continue}break}break d}d=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break d}a=(a>>2>>>0)/3|0;b=0;while(1){d=we(e,L(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}ea=g+16|0;return d|0}va();V()}function $a(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=ea-16|0;ea=d;a:{e=F[a+4>>2];b:{if(e>>>0<b>>>0){f=b-e|0;c=F[a+8>>2];g=c<<5;c:{if(!(f>>>0>g>>>0|e>>>0>g-f>>>0)){F[a+4>>2]=b;h=e&31;b=F[a>>2]+(e>>>3&536870908)|0;break c}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if((b|0)<0){break a}if(g>>>0<=1073741822){c=c<<6;b=b+31&-32;b=b>>>0<c>>>0?c:b}else{b=2147483647}fb(d,b);c=F[a+4>>2];F[d+4>>2]=c+f;e=F[a>>2];b=F[d>>2];d:{if((c|0)<=0){break d}g=c>>>5<<2;b=Ra(b,e,g)+g|0;h=c&31;e:{if(!h){h=0;break e}c=-1>>>32-h|0;F[b>>2]=F[b>>2]&(c^-1)|F[e+g>>2]&c}e=F[a>>2]}F[a>>2]=F[d>>2];F[d>>2]=e;c=F[a+4>>2];F[a+4>>2]=F[d+4>>2];F[d+4>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[d+8>>2];F[d+8>>2]=c;if(!e){break c}ra(e)}if(!f){break b}if(h){c=32-h|0;a=c>>>0<f>>>0?c:f;F[b>>2]=F[b>>2]&(-1<<h&-1>>>c-a^-1);f=f-a|0;b=b+4|0}a=b;b=f>>>5<<2;a=ua(a,0,b);if((f&-32)==(f|0)){break b}a=a+b|0;F[a>>2]=F[a>>2]&(-1>>>32-(f&31)^-1);break b}F[a+4>>2]=b}ea=d+16|0;return}va();V()}function Bc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=G[a+11|0]>>>7|0?F[a+4>>2]:G[a+11|0];if(d>>>0<b>>>0){h=ea-16|0;ea=h;f=b-d|0;if(f){b=G[a+11|0]>>>7|0;g=b?F[a+4>>2]:G[a+11|0];i=g+f|0;b=b?(F[a+8>>2]&2147483647)-1|0:10;if(b-g>>>0<f>>>0){a:{d=ea-16|0;ea=d;c=i-b|0;if(c>>>0<=-17-b>>>0){j=G[a+11|0]>>>7|0?F[a>>2]:a;b:{if(b>>>0<2147483623){F[d+8>>2]=b<<1;F[d+12>>2]=b+c;c=ea-16|0;ea=c;ea=c+16|0;c=d+8|0;e=d+12|0;c=F[(I[e>>2]<I[c>>2]?c:e)>>2];if(c>>>0>=11){e=c+16&-16;c=e-1|0;c=(c|0)==11?e:c}else{c=10}break b}c=-18}e=c+1|0;c=sa(e);if(g){Bb(c,j,g)}if((b|0)!=10){ra(j)}F[a>>2]=c;F[a+8>>2]=e|-2147483648;ea=d+16|0;break a}Pa();V()}}b=G[a+11|0]>>>7|0?F[a>>2]:a;d=g+b|0;if(f){ua(d,0,f)}c:{if(G[a+11|0]>>>7|0){F[a+4>>2]=i;break c}D[a+11|0]=i}D[h+15|0]=0;D[b+i|0]=G[h+15|0]}ea=h+16|0;return}c=G[a+11|0]>>>7|0;f=c?F[a>>2]:a;d=ea-16|0;ea=d;d:{if(c){F[a+4>>2]=b;break d}D[a+11|0]=b}D[d+15|0]=0;D[b+f|0]=G[d+15|0];ea=d+16|0}function Ge(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;f=F[a+12>>2];h=F[a+8>>2];d=f-h>>2;b=D[b+24|0];a:{if(d>>>0<b>>>0){Aa(a+8|0,b-d|0);h=F[a+8>>2];f=F[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;F[a+12>>2]=f}b=0;i=F[c+20>>2];e=F[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=F[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>I[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}ta(h,e+F[c>>2]|0,d);d=F[c+20>>2];e=f+F[c+16>>2]|0;d=e>>>0<f>>>0?d+1|0:d;g=e;F[c+16>>2]=e;F[c+20>>2]=d;e=F[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>I[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+F[c>>2]|0;F[a+20>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[c+20>>2];g=F[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;F[c+16>>2]=e;F[c+20>>2]=f;e=F[c+12>>2];if((f|0)>=(e|0)&j>>>0>=I[c+8>>2]|(f|0)>(e|0)){break b}e=G[j+F[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;if(e-1>>>0>29){break b}F[a+4>>2]=e;b=1}return b|0}function vb(a,b){var c=0;a:{if(!wa(a,b)){break a}if(!wa(a+16|0,b)){break a}if(!wa(a+32|0,b)){break a}if(!wa(a+48|0,b)){break a}if(!wa(a- -64|0,b)){break a}if(!wa(a+80|0,b)){break a}if(!wa(a+96|0,b)){break a}if(!wa(a+112|0,b)){break a}if(!wa(a+128|0,b)){break a}if(!wa(a+144|0,b)){break a}if(!wa(a+160|0,b)){break a}if(!wa(a+176|0,b)){break a}if(!wa(a+192|0,b)){break a}if(!wa(a+208|0,b)){break a}if(!wa(a+224|0,b)){break a}if(!wa(a+240|0,b)){break a}if(!wa(a+256|0,b)){break a}if(!wa(a+272|0,b)){break a}if(!wa(a+288|0,b)){break a}if(!wa(a+304|0,b)){break a}if(!wa(a+320|0,b)){break a}if(!wa(a+336|0,b)){break a}if(!wa(a+352|0,b)){break a}if(!wa(a+368|0,b)){break a}if(!wa(a+384|0,b)){break a}if(!wa(a+400|0,b)){break a}if(!wa(a+416|0,b)){break a}if(!wa(a+432|0,b)){break a}if(!wa(a+448|0,b)){break a}if(!wa(a+464|0,b)){break a}if(!wa(a+480|0,b)){break a}if(!wa(a+496|0,b)){break a}c=wa(a+512|0,b)}return c}function Hc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=ea-16|0;ea=g;a:{b:{if(b){F[a+88>>2]=0;F[a+92>>2]=0;c=F[a+84>>2];F[a+84>>2]=0;if(c){ra(c)}F[a+76>>2]=0;F[a+80>>2]=0;c=F[a+72>>2];F[a+72>>2]=0;if(c){ra(c)}c=F[b>>2];d=F[b+4>>2];D[g+15|0]=0;Qa(a,d-c>>2,g+15|0);c=F[b+28>>2];d=F[b+24>>2];D[g+14|0]=0;Qa(a+12|0,c-d>>2,g+14|0);Ic(a+28|0,F[b+4>>2]-F[b>>2]>>2,13708);d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+52>>2];c:{if(e>>>0<=F[a+60>>2]-c>>2>>>0){break c}if((d|0)<0){break b}f=F[a+56>>2];d=sa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){ta(d,c,e)}F[a+60>>2]=h;F[a+56>>2]=f;F[a+52>>2]=d;if(!c){break c}ra(c)}d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+40>>2];d:{if(e>>>0<=F[a+48>>2]-c>>2>>>0){break d}if((d|0)<0){break a}f=F[a+44>>2];d=sa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){ta(d,c,e)}F[a+48>>2]=h;F[a+44>>2]=f;F[a+40>>2]=d;if(!c){break d}ra(c)}D[a+24|0]=1;F[a+64>>2]=b}ea=g+16|0;return}va();V()}va();V()}function fe(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+J[b>>2];k=+J[b+4>>2];l=+J[b+8>>2];g=N(j)+N(k)+N(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=F[a+16>>2];l=+(h|0);g=R(j*l+.5);b:{if(N(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=(f^m)-f|0;g=R(k*l+.5);c:{if(N(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=F[a+8>>2];e=h+f|0;break d}b=f>>31;b=(b^f)-b|0;a=F[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}F[c>>2]=a;F[d>>2]=b}function Se(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;f=F[b+12>>2];c=f;d=F[b+20>>2];g=d;i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;j=F[b+8>>2];a:{if(j>>>0<e>>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}k=F[b>>2];c=i+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;d=g;h=i+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>j>>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break a}e=e+k|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=h;F[b+20>>2]=d;if((c|0)>(e|0)){break a}F[a+16>>2]=e;F[a+12>>2]=c;l=(e>>31)-((c>>31)+(c>>>0>e>>>0)|0)|0;c=e-c|0;if(!l&c>>>0>2147483646|l){break a}c=c+1|0;F[a+20>>2]=c;e=c>>>1|0;F[a+24>>2]=e;F[a+28>>2]=0-e;if(!(c&1)){F[a+24>>2]=e-1}if(H[b+38>>1]<=513){if((d|0)>=(f|0)&h>>>0>=j>>>0|(d|0)>(f|0)){break a}c=G[h+k|0];d=g;g=i+9|0;d=g>>>0<9?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(c>>>0>1){break a}F[a+88>>2]=c}m=wa(a+112|0,b)}return m|0}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=M(0),f=M(0),g=M(0),h=M(0),i=M(0),j=0,k=M(0),l=M(0),m=M(0),n=M(0),o=0;a:{if(F[c+28>>2]!=9|G[c+24|0]!=3){break a}a=F[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=F[c+80>>2];if(!j){break a}k=M(M(2)/M((1<<a)-2|0));c=F[F[c>>2]>>2]+F[c+48>>2]|0;a=F[F[b>>2]>>2]+F[b+48>>2]|0;b=0;while(1){g=M(0);l=M(0);m=M(0);e=M(M(M(F[a>>2])*k)+M(-1));f=M(M(M(F[a+4>>2])*k)+M(-1));i=M(M(M(1)-M(N(e)))-M(N(f)));h=M(Q(M(-i),M(0)));n=M(-h);f=M(f+(f<M(0)?h:n));e=M(e+(e<M(0)?h:n));h=M(M(f*f)+M(M(i*i)+M(e*e)));if(!(+h<1e-6)){g=M(M(1)/M(U(h)));m=M(f*g);l=M(e*g);g=M(i*g)}a=a+8|0;d=(v(m),x(2));D[c+8|0]=d;D[c+9|0]=d>>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;d=(v(l),x(2));D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;d=(v(g),x(2));D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function Ud(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(b>>>0<=63){b=0;a=F[a+12>>2];if(a>>>0<2){break a}b=a-1|0;e=b&3;d=F[c>>2];c=0;b:{if(a-2>>>0<3){a=1;b=0;break b}f=b&-4;b=0;a=1;while(1){g=a+3|0;h=a+2|0;i=a+1|0;b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;b=I[d+(b<<2)>>2]>I[d+(i<<2)>>2]?i:b;b=I[d+(b<<2)>>2]>I[d+(h<<2)>>2]?h:b;b=I[d+(b<<2)>>2]>I[d+(g<<2)>>2]?g:b;a=a+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}if(!e){break a}while(1){b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}break a}b=F[a+580>>2];d=32-b|0;if((d|0)>=4){c=F[a+576>>2];if((c|0)==F[a+568>>2]){return 0}d=F[c>>2];e=b+4|0;F[a+580>>2]=e;b=d<<b>>>28|0;if((e|0)!=32){break a}F[a+580>>2]=0;F[a+576>>2]=c+4;return b}c=F[a+576>>2];e=c+4|0;if((e|0)==F[a+568>>2]){return 0}f=F[c>>2];F[a+576>>2]=e;F[a+580>>2]=b-28;a=60-b|0;b=F[c+4>>2]>>>a|f<<b>>>a-d}return b}function ye(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11436;b=F[a+388>>2];if(b){F[a+392>>2]=b;ra(b)}d=F[a+368>>2];F[a+368>>2]=0;if(d){e=d-4|0;b=F[e>>2];if(b){c=(b<<4)+d|0;while(1){c=c-16|0;if((d|0)!=(c|0)){continue}break}}ra(e)}Vc(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){eb(b)}return a|0}function ze(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11384;d=F[a+368>>2];F[a+368>>2]=0;if(d){e=d-4|0;b=F[e>>2];if(b){c=(b<<4)+d|0;while(1){c=c-16|0;if((d|0)!=(c|0)){continue}break}}ra(e)}Vc(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){eb(b)}return a|0}function dd(a,b){var c=0,d=0;c=F[b+8>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=c;F[a+20>>2]=F[b+20>>2];c=F[b+16>>2];F[a+12>>2]=F[b+12>>2];F[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=F[b+28>>2];if(c){d=F[a+24>>2];if(F[a+32>>2]<<5>>>0<c>>>0){if(d){ra(d);F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;c=F[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=sa(c<<2);F[a+32>>2]=c;F[a+28>>2]=0;F[a+24>>2]=d;c=F[b+28>>2]}Ra(d,F[b+24>>2],(c-1>>>3&536870908)+4|0);c=F[b+28>>2]}else{c=0}F[a+28>>2]=c;c=F[b+40>>2];if(c){d=F[a+36>>2];if(F[a+44>>2]<<5>>>0<c>>>0){if(d){ra(d);F[a+44>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;c=F[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=sa(c<<2);F[a+44>>2]=c;F[a+40>>2]=0;F[a+36>>2]=d;c=F[b+40>>2]}Ra(d,F[b+36>>2],(c-1>>>3&536870908)+4|0);b=F[b+40>>2]}else{b=0}F[a+40>>2]=b}return}va();V()}va();V()}function Qg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{a=ea-32|0;ea=a;e=Oa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=sa(g);F[a+24>>2]=g|-2147483648;F[a+16>>2]=f;F[a+20>>2]=e;break c}D[a+27|0]=e;f=a+16|0;if(!e){break b}}ta(f,c,e)}D[e+f|0]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d:{c=sb(b,a+16|0);if((c|0)==(b+4|0)){break d}b=F[c+28>>2];f=F[c+32>>2];if((b|0)==(f|0)){break d}b=f-b|0;if(b&3){break d}e=b>>>2|0;f=F[a+4>>2];b=F[a>>2];g=f-b>>2;e:{if(e>>>0>g>>>0){Aa(a,e-g|0);b=F[a>>2];f=F[a+4>>2];break e}if(e>>>0>=g>>>0){break e}f=(e<<2)+b|0;F[a+4>>2]=f}if((b|0)!=(f|0)){e=b;b=F[c+28>>2];ta(e,b,F[c+32>>2]-b|0);break d}Ea();V()}b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d>>2]=F[a>>2];F[d+4>>2]=F[a+4>>2];F[d+8>>2]=F[a+8>>2];if(D[a+27|0]<0){ra(F[a+16>>2])}ea=a+32|0;break a}Pa();V()}}function Sg(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;d=ea-16|0;ea=d;a:{e=Oa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=sa(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}ta(a,c,e)}D[a+e|0]=0;c=G[d+11|0];e=c<<24>>24;b=F[b+4>>2];a=0;d:{if(!b){break d}a=c;c=(e|0)<0;a=c?F[d+4>>2]:a;f=c?F[d>>2]:d;while(1){c=G[b+27|0];g=c<<24>>24<0;c=g?F[b+20>>2]:c;j=c>>>0<a>>>0;e:{f:{g:{h:{i:{j:{i=j?c:a;if(i){h=b+16|0;g=g?F[h>>2]:h;h=Ha(f,g,i);if(h){break j}if(a>>>0>=c>>>0){break i}break e}if(a>>>0>=c>>>0){break h}break e}if((h|0)<0){break e}}c=Ha(g,f,i);if(c){break g}}if(j){break f}a=1;break d}if((c|0)<0){break f}a=1;break d}b=b+4|0}b=F[b>>2];if(b){continue}break}a=0}if((e|0)<0){ra(F[d>>2])}ea=d+16|0;break a}Pa();V()}return a|0}function uc(a){var b=0,c=0,d=0;b=F[a+8>>2];d=F[a>>2];a:{if(G[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break e}b=F[F[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}F[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;F[a+8>>2]=b;if((b|0)!=-1){break b}}c=F[a+4>>2];b=-1;f:{if((c|0)==-1){break f}g:{if((c>>>0)%3|0){c=c-1|0;break g}c=c+2|0;b=-1;if((c|0)==-1){break f}}c=F[F[d+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break f}b=c-1|0;if((c>>>0)%3|0){break f}b=c+2|0}D[a+12|0]=0;F[a+8>>2]=b;return}if((b|0)!=F[a+4>>2]){break a}F[a+8>>2]=-1;return}c=-1;h:{if((b|0)==-1){break h}i:{if((b>>>0)%3|0){b=b-1|0;break i}b=b+2|0;c=-1;if((b|0)==-1){break h}}b=F[F[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break h}c=b-1|0;if((b>>>0)%3|0){break h}c=b+2|0}F[a+8>>2]=c}}function Qe(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;f=F[b+12>>2];c=F[b+20>>2];d=c;i=F[b+16>>2];e=i+4|0;c=e>>>0<4?c+1|0:c;j=F[b+8>>2];g=e;a:{if(j>>>0<e>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}k=F[b>>2];e=i+k|0;h=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;e=H[b+38>>1];if(e>>>0<=513){c=d;d=i+8|0;c=d>>>0<8?c+1|0:c;g=d;if(d>>>0>j>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=g;F[b+20>>2]=c}if(!(h&1)){break a}d=O(h)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<<d;h=-2-d|0;F[a+16>>2]=h;F[a+12>>2]=d^-1;F[a+24>>2]=(h|0)/2;J[a+20>>2]=M(2)/M(h|0);if(e>>>0<=513){if((c|0)>=(f|0)&g>>>0>=j>>>0|(c|0)>(f|0)){break a}f=G[g+k|0];d=g+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;if(f>>>0>1){break a}F[a+72>>2]=f}l=wa(a+96|0,b)}return l|0}function Pf(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;f=ea-32|0;ea=f;d=F[a+28>>2];F[f+16>>2]=d;g=F[a+20>>2];F[f+28>>2]=c;F[f+24>>2]=b;b=g-d|0;F[f+20>>2]=b;g=b+c|0;i=2;a:{b:{b=f+16|0;d=$(F[a+60>>2],b|0,2,f+12|0)|0;if(d){F[3984]=d;d=-1}else{d=0}c:{d:{if(d){d=b;break d}while(1){e=F[f+12>>2];if((e|0)==(g|0)){break c}if((e|0)<0){d=b;break b}h=F[b+4>>2];j=h>>>0<e>>>0;d=(j<<3)+b|0;h=e-(j?h:0)|0;F[d>>2]=h+F[d>>2];b=(j?12:4)+b|0;F[b>>2]=F[b>>2]-h;g=g-e|0;b=d;i=i-j|0;e=$(F[a+60>>2],b|0,i|0,f+12|0)|0;if(e){F[3984]=e;e=-1}else{e=0}if(!e){continue}break}}if((g|0)!=-1){break b}}b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];a=c;break a}F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=F[a>>2]|32;a=0;if((i|0)==2){break a}a=c-F[d+4>>2]|0}ea=f+32|0;return a|0}function Pe(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;f=F[b+12>>2];c=F[b+20>>2];g=c;h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0<d>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}k=F[b>>2];e=h+k|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;c=g;d=h+8|0;c=d>>>0<8?c+1|0:c;j=d;if(d>>>0>i>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=j;F[b+20>>2]=c;if(!(e&1)){break a}d=O(e)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<<d;e=-2-d|0;F[a+16>>2]=e;F[a+12>>2]=d^-1;F[a+24>>2]=(e|0)/2;J[a+20>>2]=M(2)/M(e|0);if(H[b+38>>1]<=513){if((c|0)>=(f|0)&j>>>0>=i>>>0|(c|0)>(f|0)){break a}f=G[j+k|0];c=h+9|0;g=c>>>0<9?g+1|0:g;F[b+16>>2]=c;F[b+20>>2]=g;if(f>>>0>1){break a}F[a+72>>2]=f}l=wa(a+96|0,b)}return l|0}function Ra(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 ta(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}D[d|0]=G[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;D[d|0]=G[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;F[c+a>>2]=F[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;D[c+a|0]=G[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){F[d>>2]=F[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){D[d|0]=G[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function df(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;h=F[c+12>>2];d=h;e=F[c+20>>2];i=F[c+8>>2];f=F[c+16>>2];a:{if((d|0)<=(e|0)&i>>>0<=f>>>0|(d|0)<(e|0)){break a}j=F[c>>2];k=D[j+f|0];d=e;g=f+1|0;d=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=d;b:{if((k|0)==-2){break b}if((d|0)>=(h|0)&g>>>0>=i>>>0|(d|0)>(h|0)){break a}d=D[g+j|0];f=f+2|0;e=f>>>0<2?e+1|0:e;F[c+16>>2]=f;F[c+20>>2]=e;if((d-4&255)>>>0<251){break a}e=ga[F[F[a>>2]+40>>2]](a,k,d)|0;d=F[a+20>>2];F[a+20>>2]=e;if(!d){break b}ga[F[F[d>>2]+4>>2]](d)}d=F[a+20>>2];if(d){if(!(ga[F[F[a>>2]+28>>2]](a,d)|0)){break a}}if(!(ga[F[F[a>>2]+36>>2]](a,b,c)|0)){break a}c=F[a+4>>2];if(!(!c|G[c+36|0]>1)){if(!(ga[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0)){break a}}l=1}return l|0}function Md(a,b,c){a:{switch(b-9|0){case 0:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];return;case 6:b=F[c>>2];F[c>>2]=b+4;b=E[b>>1];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 7:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=H[b>>1];F[a+4>>2]=0;return;case 8:b=F[c>>2];F[c>>2]=b+4;b=D[b|0];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 9:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=G[b|0];F[a+4>>2]=0;return;case 16:b=F[c>>2]+7&-8;F[c>>2]=b+8;K[a>>3]=K[b>>3];return;case 17:ga[0](a,c);default:return;case 1:case 4:case 14:b=F[c>>2];F[c>>2]=b+4;b=F[b>>2];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];F[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=F[c>>2]+7&-8;F[c>>2]=b+8;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c}function Wb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=F[a+8>>2];c=F[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{b:{c:{g=F[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>>0<2147483644?e>>>0<h>>>0?h:e:1073741823;if(e){if(e>>>0>=1073741824){break c}i=sa(e<<2)}d=(f<<2)+i|0;f=b<<2;b=ua(d,0,f);f=b+f|0;e=(e<<2)+i|0;if((c|0)==(g|0)){break b}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;d=d-4|0;F[d>>2]=b;if((c|0)!=(g|0)){continue}break}F[a+8>>2]=e;b=F[a+4>>2];F[a+4>>2]=f;c=F[a>>2];F[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b-4|0;a=F[b>>2];F[b>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}va();V()}za();V()}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b}if(c){ra(c)}}function Ed(a,b){var c=0,d=0,e=0;c=ea+-64|0;ea=c;d=F[a>>2];e=F[d-4>>2];d=F[d-8>>2];F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;D[c+55|0]=0;D[c+56|0]=0;D[c+57|0]=0;D[c+58|0]=0;D[c+59|0]=0;D[c+60|0]=0;D[c+61|0]=0;D[c+62|0]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+20>>2]=0;F[c+16>>2]=14924;F[c+12>>2]=a;F[c+8>>2]=b;a=a+d|0;d=0;a:{if(Za(e,b,0)){F[c+56>>2]=1;ga[F[F[e>>2]+20>>2]](e,c+8|0,a,a,1,0);d=F[c+32>>2]==1?a:0;break a}ga[F[F[e>>2]+24>>2]](e,c+8|0,a,1,0);b:{switch(F[c+44>>2]){case 0:d=F[c+48>>2]==1?F[c+36>>2]==1?F[c+40>>2]==1?F[c+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(F[c+32>>2]!=1){if(F[c+48>>2]|F[c+36>>2]!=1|F[c+40>>2]!=1){break a}}d=F[c+24>>2]}ea=c- -64|0;return d}function xa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;c=F[a>>2];F[a+4>>2]=c;F[a+12>>2]=c;g=F[b+12>>2];c=g;d=F[b+20>>2];f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;h=F[b+8>>2];a:{if(h>>>0<e>>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}c=f+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;if(!c|c&3){break a}f=g-(d+(e>>>0>h>>>0)|0)|0;if(h-e>>>0<c>>>0&(f|0)<=0|(f|0)<0){break a}if(c>>>0>=4){Aa(a,c>>>2|0);h=F[b+8>>2];g=F[b+12>>2];e=F[b+16>>2];d=F[b+20>>2]}f=c+e|0;d=c>>>0>f>>>0?d+1|0:d;if(f>>>0>h>>>0&(d|0)>=(g|0)|(d|0)>(g|0)){break a}ta(F[a>>2],e+F[b>>2]|0,c);d=F[b+20>>2];e=c+F[b+16>>2]|0;d=e>>>0<c>>>0?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;F[a+16>>2]=0;F[a+12>>2]=F[a>>2];i=1}return i}function ce(a,b){var c=0,d=0,e=0,f=0;d=-1;e=-1;f=-1;a:{b:{if((b|0)==-1){break b}e=F[F[F[a+4>>2]+12>>2]+(b<<2)>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)>=0){f=(c>>>0)/3|0;f=F[(F[F[a>>2]+96>>2]+L(f,12)|0)+(c-L(f,3)<<2)>>2]}c:{if((e|0)==-1){break c}c=((e>>>0)%3|0?-1:2)+e|0;if((c|0)<0){break c}d=(c>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2]}c=-1;if((d|0)!=(f|0)){break a}f=-1;d:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){d=(b>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(b-L(d,3)<<2)>>2];if((e|0)==-1){break b}break d}d=-1;if((e|0)!=-1){break d}break b}b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;if((b|0)<0){break b}c=F[F[a>>2]+96>>2];a=(b>>>0)/3|0;f=F[(c+L(a,12)|0)+(b-L(a,3)<<2)>>2]}c=(d|0)==(f|0)?e:-1}return c}function yh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=sa(72);F[c+4>>2]=0;F[c+8>>2]=0;F[c>>2]=1984;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c>>2]=2128;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+64>>2]=0;F[c+68>>2]=0;h=c;a:{if((b|0)>=0){g=a+8|0;c=F[a+12>>2];e=F[a+8>>2];f=c-e>>2;b:{if((f|0)>(b|0)){break b}d=b+1|0;if(b>>>0>=f>>>0){Wb(g,d-f|0);break b}if(d>>>0>=f>>>0){break b}e=(d<<2)+e|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ga[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[g>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=h;if(!c){break a}}ga[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function ua(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}D[a|0]=b;e=a+c|0;D[e-1|0]=b;if(c>>>0<3){break a}D[a+2|0]=b;D[a+1|0]=b;D[e-3|0]=b;D[e-2|0]=b;if(c>>>0<7){break a}D[a+3|0]=b;D[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=L(b&255,16843009);F[f>>2]=d;b=c-e&-4;c=b+f|0;F[c-4>>2]=d;if(b>>>0<9){break a}F[f+8>>2]=d;F[f+4>>2]=d;F[c-8>>2]=d;F[c-12>>2]=d;if(b>>>0<25){break a}F[f+24>>2]=d;F[f+20>>2]=d;F[f+16>>2]=d;F[f+12>>2]=d;F[c-16>>2]=d;F[c-20>>2]=d;F[c-24>>2]=d;F[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Mj(d,0,1,1);e=fa;b=b+f|0;while(1){F[b+24>>2]=d;F[b+28>>2]=e;F[b+16>>2]=d;F[b+20>>2]=e;F[b+8>>2]=d;F[b+12>>2]=e;F[b>>2]=d;F[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function Ij(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;d=F[b+12>>2];h=d;c=F[b+20>>2];e=c;f=F[b+16>>2];g=f+4|0;c=g>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0<g>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=F[b>>2];d=j+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=g+j|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0<d>>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}k=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1}return k|0}function Hh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+56>>2]-F[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=ue(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0<F[f+4>>2]-d>>2>>>0){continue}break}break c}c=1;a=F[F[a+12>>2]+64>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=ue(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}va();V()}function rd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=a+16|0;e=F[d>>2];a:{if(!e){break a}f=F[b>>2];b=d;while(1){g=(f|0)>F[e+16>>2];b=g?b:e;e=F[(g?e+4|0:e)>>2];if(e){continue}break}if((b|0)==(d|0)|(f|0)<F[b+16>>2]){break a}e=F[b+24>>2];if(!e){break a}f=b+20|0;b=G[c+11|0];d=b<<24>>24<0;g=d?F[c>>2]:c;b=d?F[c+4>>2]:b;while(1){d=G[e+27|0];h=d<<24>>24<0;d=h?F[e+20>>2]:d;k=d>>>0<b>>>0;b:{c:{d:{e:{f:{g:{j=k?d:b;if(j){i=e+16|0;h=h?F[i>>2]:i;i=Ha(g,h,j);if(i){break g}if(b>>>0>=d>>>0){break f}break b}if(b>>>0>=d>>>0){break e}break b}if((i|0)<0){break b}}d=Ha(h,g,j);if(d){break d}}if(k){break c}return Qc(f,c)}if((d|0)<0){break c}return Qc(f,c)}e=e+4|0}e=F[e>>2];if(e){continue}break}}return Qc(a,c)}function Mh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=ve(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0<F[f+4>>2]-d>>2>>>0){continue}break}break c}c=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=ve(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}va();V()}function ae(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=ea-16|0;ea=d;f=F[a+24>>2];k=F[a+28>>2];a:{if((f|0)!=(k|0)){while(1){F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;a=_d(F[f>>2],b,d);g=G[d+11|0];h=g<<24>>24;i=3;b:{c:{d:{if(!a){break d}i=0;a=G[c+11|0];e=a<<24>>24;j=(h|0)<0?F[d+4>>2]:g;if((j|0)!=(((e|0)<0?F[c+4>>2]:a)|0)){break d}a=(e|0)<0?F[c>>2]:c;e=(h|0)<0;e:{if(!e){e=d;if(!h){break e}while(1){if(G[e|0]!=G[a|0]){break d}a=a+1|0;e=e+1|0;g=g-1|0;if(g){continue}break}break e}if(!j){break e}if(Ha(e?F[d>>2]:d,a,j)){break c}}l=F[f>>2];i=1}if((h|0)>=0){break b}}ra(F[d>>2])}f:{switch(i|0){case 0:case 3:break f;default:break a}}f=f+4|0;if((k|0)!=(f|0)){continue}break}}l=0}ea=d+16|0;return l}function Qa(a,b,c){var d=0,e=0,f=0;f=ea-16|0;ea=f;F[a+4>>2]=0;a:{b:{if(!b){break b}d=F[a+8>>2];e=d<<5;c:{if(e>>>0>=b>>>0){F[a+4>>2]=b;break c}F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if((b|0)<0){break a}if(e>>>0<=1073741822){d=d<<6;e=b+31&-32;d=d>>>0>e>>>0?d:e}else{d=2147483647}fb(f,d);d=F[a>>2];F[a>>2]=F[f>>2];F[f>>2]=d;e=F[a+4>>2];F[a+4>>2]=b;F[f+4>>2]=e;e=F[a+8>>2];F[a+8>>2]=F[f+8>>2];F[f+8>>2]=e;if(!d){break c}ra(d)}d=b>>>5|0;e=d<<2;a=F[a>>2];if(G[c|0]){a=ua(a,255,e);if((b&-32)==(b|0)){break b}a=a+(d<<2)|0;F[a>>2]=F[a>>2]|-1>>>32-(b&31);break b}a=ua(a,0,e);if((b&-32)==(b|0)){break b}a=a+(d<<2)|0;F[a>>2]=F[a>>2]&(-1>>>32-(b&31)^-1)}ea=f+16|0;return}va();V()}function rf(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;d=F[b>>2];b=F[b+4>>2];f=F[F[a+8>>2]+40>>2];m=sa((f|0)>=0?f:-1);g=1;h=b-d|0;a:{if((h|0)<=0){break a}b=0;g=0;d=0+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0<f>>>0?d+1|0:d;j=e;e=F[c+12>>2];if(j>>>0>I[c+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break a}k=h>>2;g=(k|0)>1?k:1;while(1){b:{e=ta(m,i+F[c>>2]|0,f);F[c+16>>2]=j;F[c+20>>2]=d;ta(F[F[F[a+8>>2]+64>>2]>>2]+b|0,e,f);l=l+1|0;if((g|0)==(l|0)){break b}b=b+f|0;d=n+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0<f>>>0?d+1|0:d;j=e;h=e;e=F[c+12>>2];if((e|0)>=(d|0)&I[c+8>>2]>=h>>>0|(d|0)<(e|0)){continue}}break}g=(l|0)>=(k|0)}ra(m);return g|0}function ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=F[b>>2];h=F[b+8>>2];i=F[b+4>>2];j=F[b>>2];d=F[a>>2];b=F[d+4>>2];a=F[d+8>>2];if(b>>>0<a>>>0){F[b+8>>2]=h;F[b+4>>2]=i;F[b>>2]=j;F[d+4>>2]=b+12;return}a:{e=F[d>>2];g=(b-e|0)/12|0;c=g+1|0;if(c>>>0<357913942){f=(a-e|0)/12|0;a=f<<1;c=f>>>0<178956970?a>>>0>c>>>0?a:c:357913941;if(c){if(c>>>0>=357913942){break a}f=sa(L(c,12))}else{f=0}a=f+L(g,12)|0;F[a+8>>2]=h;F[a+4>>2]=i;F[a>>2]=j;g=a+12|0;if((b|0)!=(e|0)){while(1){a=a-12|0;b=b-12|0;F[a>>2]=F[b>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=F[b+8>>2];if((b|0)!=(e|0)){continue}break}}F[d+8>>2]=f+L(c,12);F[d+4>>2]=g;F[d>>2]=a;if(e){ra(e)}return}va();V()}za();V()}function jf(a,b){a=a|0;b=b|0;a=0;a:{switch(b|0){case 0:a=sa(20);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2232;return a|0;case 1:a=sa(24);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2232;F[a+20>>2]=0;F[a>>2]=2448;return a|0;case 2:a=sa(48);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2232;F[a+20>>2]=0;F[a>>2]=2448;F[a+24>>2]=1832;F[a>>2]=11048;F[a+32>>2]=0;F[a+36>>2]=0;F[a+28>>2]=-1;F[a+40>>2]=0;F[a+44>>2]=0;return a|0;case 3:a=sa(32);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2232;F[a+20>>2]=0;F[a>>2]=2448;F[a+24>>2]=1032;F[a>>2]=7028;F[a+28>>2]=-1;break;default:break a}}return a|0}function Fg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=ea-32|0;ea=e;a:{b:{f=Oa(c);if(f>>>0<4294967280){c:{d:{if(f>>>0>=11){g=f+16&-16;a=sa(g);F[e+24>>2]=g|-2147483648;F[e+16>>2]=a;F[e+20>>2]=f;break d}D[e+27|0]=f;a=e+16|0;if(!f){break c}}ta(a,c,f)}D[a+f|0]=0;c=Oa(d);if(c>>>0>=4294967280){break b}e:{f:{if(c>>>0>=11){f=c+16&-16;a=sa(f);F[e+8>>2]=f|-2147483648;F[e>>2]=a;F[e+4>>2]=c;break f}D[e+11|0]=c;a=e;if(!c){break e}}ta(a,d,c)}D[a+c|0]=0;c=F[b+4>>2];a=-1;g:{if(!c){break g}c=ae(c,e+16|0,e);a=-1;if(!c){break g}a=Xd(b,F[c+24>>2])}if(D[e+11|0]<0){ra(F[e>>2])}if(D[e+27|0]<0){ra(F[e+16>>2])}ea=e+32|0;break a}Pa();V()}Pa();V()}return a|0}function Qi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;F[b>>2]=1;f=b+8|0;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){lc(f,d+4|0);c=F[f>>2]}c=c+d|0;d=F[a+4>>2];D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=F[a+8>>2];if((c|0)!=F[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=F[b+8>>2];e=F[b+12>>2]-c|0;if(e>>>0<=4294967291){lc(f,e+4|0);c=F[f>>2]}c=c+e|0;e=F[g>>2];D[c|0]=e;D[c+1|0]=e>>>8;D[c+2|0]=e>>>16;D[c+3|0]=e>>>24;d=d+1|0;c=F[a+8>>2];if(d>>>0<F[a+12>>2]-c>>2>>>0){continue}break}}c=F[b+12>>2];b=F[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){lc(f,c+4|0);b=F[f>>2]}b=b+c|0;a=F[a+20>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function Oi(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;f=ea-32|0;ea=f;g=(e&1073741823)!=(e|0)?-1:e<<2;l=ua(sa(g),0,g);g=l;i=F[g>>2];g=F[g+4>>2];k=F[b+4>>2];F[f+24>>2]=F[b>>2];F[f+28>>2]=k;F[f+8>>2]=i;F[f+12>>2]=g;i=a+8|0;rc(f+16|0,i,f+8|0,f+24|0);F[c>>2]=F[f+16>>2];F[c+4>>2]=F[f+20>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){h=a<<2;g=h+c|0;j=g+k|0;m=F[j>>2];j=F[j+4>>2];h=b+h|0;n=F[h+4>>2];F[f+24>>2]=F[h>>2];F[f+28>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;rc(f+16|0,i,f+8|0,f+24|0);F[g>>2]=F[f+16>>2];F[g+4>>2]=F[f+20>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ra(l);ea=f+32|0;return 1}function Fi(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;f=ea-32|0;ea=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=ua(sa(h),0,h);g=F[b>>2];i=F[b+4>>2];k=F[h+4>>2];F[f+16>>2]=F[h>>2];F[f+20>>2]=k;F[f+8>>2]=g;F[f+12>>2]=i;i=a+8|0;qc(f+24|0,i,f+16|0,f+8|0);F[c>>2]=F[f+24>>2];F[c+4>>2]=F[f+28>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){g=a<<2;j=g+b|0;m=F[j>>2];j=F[j+4>>2];g=c+g|0;l=g+k|0;n=F[l+4>>2];F[f+16>>2]=F[l>>2];F[f+20>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;qc(f+24|0,i,f+16|0,f+8|0);F[g>>2]=F[f+24>>2];F[g+4>>2]=F[f+28>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ra(h);ea=f+32|0;return 1}function Eb(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=F[a+8>>2];e=F[a>>2];if(g>>>0<=d-e>>2>>>0){d=F[a+4>>2];f=d-e|0;h=f>>2;f=g>>>0>h>>>0?b+f|0:c;if((f|0)!=(b|0)){while(1){F[e>>2]=F[b>>2];e=e+4|0;b=b+4|0;if((f|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-f|0;if((b|0)>0){d=ta(d,f,b)+b|0}F[a+4>>2]=d;return}F[a+4>>2]=e;return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}e=d>>1;d=d>>>0<2147483644?e>>>0>g>>>0?e:g:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=sa(e);F[a>>2]=d;F[a+4>>2]=d;F[a+8>>2]=d+e;if((b|0)!=(c|0)){d=ta(d,b,f)+f|0}F[a+4>>2]=d;return}va();V()}function yg(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;a:{if(I[b+80>>2]>65535){break a}a=F[b+100>>2];b=F[b+96>>2];e=(a-b|0)/12|0;f=L(e,6);g=(f|0)==(c|0);if((a|0)==(b|0)|(c|0)!=(f|0)){break a}g=1;c=e>>>0>1?e:1;i=c&1;a=0;if(e>>>0>=2){j=c&-2;c=0;while(1){f=L(a,6);h=f+d|0;e=b+L(a,12)|0;E[h>>1]=F[e>>2];E[(f|2)+d>>1]=F[e+4>>2];E[h+4>>1]=F[e+8>>2];f=a|1;e=L(f,6)+d|0;f=b+L(f,12)|0;E[e>>1]=F[f>>2];E[e+2>>1]=F[f+4>>2];E[e+4>>1]=F[f+8>>2];a=a+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!i){break a}c=L(a,6)+d|0;a=b+L(a,12)|0;E[c>>1]=F[a>>2];E[c+2>>1]=F[a+4>>2];E[c+4>>1]=F[a+8>>2]}return g|0}function Ti(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;e=F[b+12>>2];c=F[b+20>>2];f=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0<d>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;if(H[b+38>>1]<=513){c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;if(f>>>0>h>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}F[b+16>>2]=f;F[b+20>>2]=c}if(!(d&1)){break a}b=O(d)^31;c=b-30|0;if(c>>>0>=4294967267){F[a+8>>2]=b+1;e=-2<<b;b=-2-e|0;F[a+16>>2]=b;F[a+12>>2]=e^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}j=c>>>0>4294967266}return j|0}function sf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=1;a:{if((ga[F[F[b>>2]+20>>2]](b)|0)<=0){break a}while(1){f=0;c=Yd(F[F[a+4>>2]+4>>2],ga[F[F[b>>2]+24>>2]](b,g)|0);if((c|0)==-1){break a}e=F[a+4>>2];b:{if(G[e+36|0]<=1){if(ga[F[F[b>>2]+28>>2]](b,F[F[F[e+4>>2]+8>>2]+(c<<2)>>2])|0){break b}break a}d=0;c:{if((c|0)<0){break c}h=F[e+4>>2];if(F[h+12>>2]-F[h+8>>2]>>2<=(c|0)){break c}d=F[F[e+8>>2]+(F[F[e+20>>2]+(c<<2)>>2]<<2)>>2];d=ga[F[F[d>>2]+32>>2]](d,c)|0}if(!d){break a}if(!(ga[F[F[b>>2]+28>>2]](b,d)|0)){break a}}f=1;g=g+1|0;if((ga[F[F[b>>2]+20>>2]](b)|0)>(g|0)){continue}break}}return f|0}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=ea-32|0;ea=a;F[a+24>>2]=0;F[a+28>>2]=0;a:{d=Oa(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=sa(f);F[a+16>>2]=f|-2147483648;F[a+8>>2]=e;F[a+12>>2]=d;break c}D[a+19|0]=d;e=a+8|0;if(!d){break b}}ta(e,c,d)}D[d+e|0]=0;c=b+4|0;b=sb(b,a+8|0);d:{if((c|0)==(b|0)){break d}c=F[b+32>>2];b=F[b+28>>2];if((c-b|0)!=8){break d}c=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[a+24>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[a+28>>2]=c}g=K[a+24>>3];if(D[a+19|0]<0){ra(F[a+8>>2])}ea=a+32|0;break a}Pa();V()}return+g}function Ce(a){var b=0,c=0,d=0,e=0,f=0;f=1;c=F[a+140>>2];a:{if((c|0)<=0){break a}b=c<<4;d=sa((c|0)!=(c&268435455)?-1:b|4);F[d>>2]=c;d=d+4|0;c=d+b|0;b=d;while(1){F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=b+16|0;if((c|0)!=(b|0)){continue}break}e=F[a+136>>2];F[a+136>>2]=d;if(e){c=e-4|0;d=F[c>>2];if(d){b=(d<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}ra(c)}b=0;if(F[a+140>>2]<=0){break a}while(1){f=wa(F[a+136>>2]+(b<<4)|0,a);if(!f){break a}b=b+1|0;if((b|0)<F[a+140>>2]){continue}break}}return f}function rb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(F[a+64>>2]){break a}c=sa(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(!d){break a}c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}ra(d)}e=F[a+64>>2];c=F[a+28>>2]-1|0;if(c>>>0<=10){d=F[(c<<2)+13584>>2]}else{d=-1}c=L(d,D[a+24|0]);d=c;g=c>>31;e=re(e,0,Mj(c,g,b,0),fa);if(e){c=F[a+64>>2];F[a>>2]=c;f=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=f;f=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=d;F[a+44>>2]=g;F[a+16>>2]=f;F[a+20>>2]=c;F[a+80>>2]=b}return e}function Ki(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;f=F[b+12>>2];c=F[b+20>>2];e=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0<d>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=g+8|0;c=e>>>0<8?c+1|0:c;if(e>>>0>h>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=e;F[b+20>>2]=c;if(!(d&1)){break a}b=O(d)^31;if(b-30>>>0<4294967267){break a}j=1;F[a+8>>2]=b+1;c=-2<<b;b=-2-c|0;F[a+16>>2]=b;F[a+12>>2]=c^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}return j|0}function sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=a+4|0;a=F[a+4>>2];a:{b:{if(!a){break b}d=G[b+11|0];c=d<<24>>24<0;f=c?F[b>>2]:b;d=c?F[b+4>>2]:d;b=h;while(1){e=G[a+27|0];c=e<<24>>24<0;e=c?F[a+20>>2]:e;g=e>>>0>d>>>0;i=g?d:e;c:{if(i){j=a+16|0;c=Ha(c?F[j>>2]:j,f,i);if(c){break c}}c=d>>>0>e>>>0?-1:g}c=(c|0)<0;b=c?b:a;a=F[(c?a+4|0:a)>>2];if(a){continue}break}if((b|0)==(h|0)){break b}c=G[b+27|0];a=c<<24>>24<0;d:{c=a?F[b+20>>2]:c;e=c>>>0<d>>>0?c:d;if(e){g=f;f=b+16|0;a=Ha(g,a?F[f>>2]:f,e);if(a){break d}}if(c>>>0>d>>>0){break b}break a}if((a|0)>=0){break a}}b=h}return b}function dc(a,b){var c=0;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;c=F[b+60>>2];F[a+56>>2]=F[b+56>>2];F[a+60>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+36>>2];F[a+32>>2]=F[b+32>>2];F[a+36>>2]=c;c=F[b+28>>2];F[a+24>>2]=F[b+24>>2];F[a+28>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;F[a+88>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a}function Ca(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=c-b|0;f=g>>2;e=F[a+8>>2];d=F[a>>2];if(f>>>0<=e-d>>2>>>0){e=F[a+4>>2]-d|0;g=e>>2;e=g>>>0<f>>>0?b+e|0:c;h=e-b|0;if((b|0)!=(e|0)){Ra(d,b,h)}if(g>>>0<f>>>0){b=F[a+4>>2];c=c-e|0;if((c|0)>0){b=ta(b,e,c)+c|0}F[a+4>>2]=b;return}F[a+4>>2]=d+h;return}if(d){F[a+4>>2]=d;ra(d);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;e=0}a:{if((g|0)<0){break a}d=e>>1;d=e>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(d>>>0>=1073741824){break a}f=d<<2;d=sa(f);F[a>>2]=d;F[a+4>>2]=d;F[a+8>>2]=d+f;if((b|0)!=(c|0)){d=ta(d,b,g)+g|0}F[a+4>>2]=d;return}va();V()}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;a=F[b+100>>2];b=F[b+96>>2];h=a-b|0;a:{if((h|0)!=(c|0)|(a|0)==(b|0)){break a}g=(c|0)/12|0;e=g>>>0>1?g:1;j=e&1;a=0;if(g>>>0>=2){k=e&-2;g=0;while(1){e=L(a,12);i=e+d|0;f=b+e|0;F[i>>2]=F[f>>2];F[(e|4)+d>>2]=F[f+4>>2];F[i+8>>2]=F[f+8>>2];f=L(a|1,12);e=f+d|0;f=b+f|0;F[e>>2]=F[f>>2];F[e+4>>2]=F[f+4>>2];F[e+8>>2]=F[f+8>>2];a=a+2|0;g=g+2|0;if((k|0)!=(g|0)){continue}break}}if(!j){break a}e=d;d=L(a,12);a=e+d|0;b=b+d|0;F[a>>2]=F[b>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=F[b+8>>2]}return(c|0)==(h|0)|0}function wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}d=L(b,12);b=sa(d);F[a>>2]=b;F[a+4>>2]=b;e=b+d|0;F[a+8>>2]=e;f=F[c>>2];c=F[c+4>>2];c:{if((f|0)==(c|0)){c=b;b=d-12|0;ua(c,0,(b-((b>>>0)%12|0)|0)+12|0);break c}c=c-f|0;if((c|0)<0){break a}g=c>>2<<2;h=c>>>2<<2;while(1){F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;d=sa(c);F[b>>2]=d;F[b+4>>2]=d;F[b+8>>2]=d+g;i=b,j=ta(d,f,c)+h|0,F[i+4>>2]=j;b=b+12|0;if((e|0)!=(b|0)){continue}break}}F[a+4>>2]=e}return}va();V()}F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;va();V()}function Hf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Za(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(Za(a,F[b>>2],e)){if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+32>>2]=d;b:{if(F[b+44>>2]==4){break b}E[b+52>>1]=0;a=F[a+8>>2];ga[F[F[a>>2]+20>>2]](a,b,c,c,1,e);if(G[b+53|0]){F[b+44>>2]=3;if(!G[b+52|0]){break b}break a}F[b+44>>2]=4}F[b+20>>2]=c;F[b+40>>2]=F[b+40>>2]+1;if(F[b+36>>2]!=1|F[b+24>>2]!=2){break a}D[b+54|0]=1;return}a=F[a+8>>2];ga[F[F[a>>2]+24>>2]](a,b,c,d,e)}}function Fb(a,b,c){var d=0,e=0,f=0,g=0;a:{b:{if(!b){break b}if(H[a+38>>1]<=513){e=F[a+12>>2];b=F[a+20>>2];f=F[a+16>>2];g=f+8|0;b=g>>>0<8?b+1|0:b;if(g>>>0>I[a+8>>2]&(b|0)>=(e|0)|(b|0)>(e|0)){break a}b=f+F[a>>2]|0;d=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[c>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[c+4>>2]=d;b=F[a+20>>2];c=F[a+16>>2]+8|0;b=c>>>0<8?b+1|0:b;F[a+16>>2]=c;F[a+20>>2]=b;break b}if(!qe(1,c,a)){break a}}D[a+36|0]=1;F[a+32>>2]=0;b=F[a+16>>2];c=b+F[a>>2]|0;F[a+24>>2]=c;d=a;a=F[a+8>>2];F[d+28>>2]=c+(a-b|0);d=1}return d}function te(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=sa(64);c=sa(12);F[c+8>>2]=F[F[a+4>>2]+80>>2];F[c>>2]=13216;F[c+4>>2]=0;f=md(f,c);a:{b:{if((b|0)<0){c=f;break b}h=a+8|0;c=F[a+12>>2];e=F[a+8>>2];g=c-e>>2;c:{if((g|0)>(b|0)){break c}d=b+1|0;if(b>>>0>=g>>>0){Wb(h,d-g|0);break c}if(d>>>0>=g>>>0){break c}e=e+(d<<2)|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ga[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[h>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=f;if(!c){break a}}ga[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function Pd(a,b){var c=0,d=0,e=0,f=0;d=ea-16|0;ea=d;F[d+12>>2]=b;c=ea-208|0;ea=c;F[c+204>>2]=b;b=c+160|0;ua(b,0,40);F[c+200>>2]=F[c+204>>2];a:{if((Od(0,a,c+200|0,c+80|0,b)|0)<0){break a}f=F[3941]>=0;b=F[3922];if(F[3940]<=0){F[3922]=b&-33}b:{c:{d:{if(!F[3934]){F[3934]=80;F[3929]=0;F[3926]=0;F[3927]=0;e=F[3933];F[3933]=c;break d}if(F[3926]){break c}}if(Rd(15688)){break b}}Od(15688,a,c+200|0,c+80|0,c+160|0)}if(e){ga[F[3931]](15688,0,0)|0;F[3934]=0;F[3933]=e;F[3929]=0;F[3926]=0;F[3927]=0}F[3922]=F[3922]|b&32;if(!f){break a}}ea=c+208|0;ea=d+16|0}function Jc(a,b,c){var d=0,e=0,f=0,g=0;a:{if((b|c)>=0){b:{if(b>>>0>1431655765){break b}d=L(b,3);Ic(a,d,13648);Ic(a+12|0,d,13652);d=F[a+24>>2];c:{if(F[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=F[a+28>>2];f=c<<2;c=sa(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>0){ta(c,d,e)}F[a+32>>2]=f;F[a+28>>2]=g;F[a+24>>2]=c;if(!d){break c}ra(d)}F[a+80>>2]=0;F[a+84>>2]=0;c=F[a+76>>2];F[a+76>>2]=0;if(c){ra(c)}F[a+68>>2]=0;F[a+72>>2]=0;c=a- -64|0;a=F[c>>2];F[c>>2]=0;if(!a){break b}ra(a)}a=b>>>0<1431655766}else{a=0}return a}va();V()}function nf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=F[a+60>>2];a:{if(!c){break a}F[c+4>>2]=a+48;if(!(ga[F[F[c>>2]+12>>2]](c)|0)){break a}b:{c=ga[F[F[a>>2]+24>>2]](a)|0;if((c|0)<=0){break b}while(1){c:{f=F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2];g=ga[F[F[a>>2]+20>>2]](a,d)|0;e=F[a+60>>2];if(!(ga[F[F[e>>2]+8>>2]](e,F[F[f+8>>2]+(g<<2)>>2])|0)){break c}d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}return 0}d=0;if(!(ga[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ga[F[F[a>>2]+40>>2]](a,b)|0)){break a}d=ga[F[F[a>>2]+44>>2]](a)|0}return d|0}function Sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=F[a+4>>2];if((c|0)!=F[a+8>>2]){d=F[b+4>>2];F[c>>2]=F[b>>2];F[c+4>>2]=d;F[c+8>>2]=F[b+8>>2];F[a+4>>2]=c+12;return}a:{f=F[a>>2];g=c-f|0;d=(g|0)/12|0;c=d+1|0;if(c>>>0<357913942){e=d<<1;e=d>>>0<178956970?c>>>0<e>>>0?e:c:357913941;if(e){if(e>>>0>=357913942){break a}c=sa(L(e,12))}else{c=0}d=c+L(d,12)|0;h=F[b+4>>2];F[d>>2]=F[b>>2];F[d+4>>2]=h;F[d+8>>2]=F[b+8>>2];b=d+L((g|0)/-12|0,12)|0;if((g|0)>0){ta(b,f,g)}F[a+8>>2]=c+L(e,12);F[a+4>>2]=d+12;F[a>>2]=b;if(f){ra(f)}return}va();V()}za();V()}function Fd(a,b,c,d,e,f,g){var h=0,i=0,j=0;h=ea-16|0;ea=h;if((b^-1)-17>>>0>=c>>>0){if(G[a+11|0]>>>7|0){j=F[a>>2]}else{j=a}a:{if(b>>>0<2147483623){F[h+8>>2]=b<<1;F[h+12>>2]=b+c;c=ea-16|0;ea=c;ea=c+16|0;c=h+8|0;i=h+12|0;c=F[(I[i>>2]<I[c>>2]?c:i)>>2];if(c>>>0>=11){i=c+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}break a}c=-18}i=c+1|0;c=sa(i);if(f){Bb(c,g,f)}g=d-e|0;if((d|0)!=(e|0)){Bb(c+f|0,e+j|0,g)}if((b|0)!=10){ra(j)}F[a>>2]=c;F[a+8>>2]=i|-2147483648;b=a;a=f+g|0;F[b+4>>2]=a;D[h+7|0]=0;D[a+c|0]=G[h+7|0];ea=h+16|0;return}Pa();V()}function gd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F[a+216>>2];if((c|0)!=F[a+220>>2]){while(1){a:{c=F[L(e,144)+c>>2];if((c|0)<0){break a}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break a}d=0;c=F[(c<<2)+f>>2];if((ga[F[F[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((ga[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ga[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}a=F[a+216>>2]+L(e,144)|0;return(G[a+100|0]?a+4|0:0)|0}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}return 0}function qd(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2128;d=F[a+60>>2];if(d){b=d;c=F[a- -64>>2];if((b|0)!=(c|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Ja(b)}if((c|0)!=(d|0)){continue}break}b=F[a+60>>2]}F[a+64>>2]=d;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}d=F[a+36>>2];if(d){b=d;c=F[a+40>>2];if((b|0)!=(c|0)){while(1){c=c-24|0;ga[F[F[c>>2]>>2]](c)|0;if((c|0)!=(d|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;ra(b)}F[a>>2]=1984;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function Ab(a){var b=0,c=0,d=0,e=0;c=F[a+132>>2];if(c){d=c;b=F[a+136>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=F[d>>2];if(e){F[b-8>>2]=e;ra(e)}b=d;if((c|0)!=(b|0)){continue}break}d=F[a+132>>2]}F[a+136>>2]=c;ra(d)}c=F[a+120>>2];if(c){d=c;b=F[a+124>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=F[d>>2];if(e){F[b-8>>2]=e;ra(e)}b=d;if((c|0)!=(b|0)){continue}break}d=F[a+120>>2]}F[a+124>>2]=c;ra(d)}b=F[a+108>>2];if(b){F[a+112>>2]=b;ra(b)}b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}_a(a+76|0);_a(a+56|0);_a(a+36|0);_a(a+16|0)}function ub(a){var b=0,c=0,d=0,e=0,f=0;d=F[a+8>>2];a:{if(G[d+84|0]){break a}b=F[a+16>>2];if(!b|!G[b+84|0]){break a}c=F[d+72>>2];e=F[d+68>>2];D[b+84|0]=0;c=c-e>>2;f=F[b+68>>2];e=F[b+72>>2]-f>>2;b:{if(c>>>0>e>>>0){Ia(b+68|0,c-e|0,2316);d=F[a+8>>2];break b}if(c>>>0>=e>>>0){break b}F[b+72>>2]=f+(c<<2)}if(G[d+84|0]){break a}c=F[d+68>>2];if((c|0)==F[d+72>>2]){break a}e=F[F[a+16>>2]+68>>2];b=0;while(1){f=b<<2;F[f+e>>2]=F[c+f>>2];b=b+1|0;c=F[d+68>>2];if(b>>>0<F[d+72>>2]-c>>2>>>0){continue}break}}return F[a+16>>2]}function Jg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=ea+-64|0;ea=e;f=Ka(e+8|0);F[f+16>>2]=0;F[f+20>>2]=0;F[f>>2]=b;F[f+8>>2]=c;F[f+12>>2]=0;b=e+48|0;Me(b,a,f,d);F[a+24>>2]=F[e+48>>2];d=a+24|0;a:{if((d|0)==(b|0)){break a}b=e+48|4;f=G[e+63|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Yb(a,F[e+52>>2],F[e+56>>2]);break a}g=a;a=(c|0)<0;Zb(g,a?F[e+52>>2]:b,a?F[e+56>>2]:f)}if(D[e+63|0]<0){ra(F[e+52>>2])}ea=e- -64|0;return d|0}function Ig(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=ea+-64|0;ea=e;f=Ka(e+8|0);F[f+16>>2]=0;F[f+20>>2]=0;F[f>>2]=b;F[f+8>>2]=c;F[f+12>>2]=0;b=e+48|0;Le(b,a,f,d);F[a+24>>2]=F[e+48>>2];d=a+24|0;a:{if((d|0)==(b|0)){break a}b=e+48|4;f=G[e+63|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Yb(a,F[e+52>>2],F[e+56>>2]);break a}g=a;a=(c|0)<0;Zb(g,a?F[e+52>>2]:b,a?F[e+56>>2]:f)}if(D[e+63|0]<0){ra(F[e+52>>2])}ea=e- -64|0;return d|0}function fd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F[a+216>>2];if((c|0)!=F[a+220>>2]){while(1){a:{c=F[L(e,144)+c>>2];if((c|0)<0){break a}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break a}d=0;c=F[(c<<2)+f>>2];if((ga[F[F[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((ga[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ga[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}return(F[a+216>>2]+L(e,144)|0)+104|0}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function db(a){var b=0,c=0,d=0,e=0;c=F[a+640>>2];if(c){d=c;b=F[a+644>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=F[d>>2];if(e){F[b-8>>2]=e;ra(e)}b=d;if((c|0)!=(b|0)){continue}break}d=F[a+640>>2]}F[a+644>>2]=c;ra(d)}c=F[a+628>>2];if(c){d=c;b=F[a+632>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=F[d>>2];if(e){F[b-8>>2]=e;ra(e)}b=d;if((c|0)!=(b|0)){continue}break}d=F[a+628>>2]}F[a+632>>2]=c;ra(d)}b=F[a+616>>2];if(b){F[a+620>>2]=b;ra(b)}b=F[a+604>>2];if(b){F[a+608>>2]=b;ra(b)}_a(a+584|0);_a(a+564|0);_a(a+544|0)}function lc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{c=F[a+4>>2];d=F[a>>2];f=c-d|0;b:{if(f>>>0<b>>>0){g=b-f|0;e=F[a+8>>2];if(g>>>0<=e-c>>>0){h=a,i=ua(c,0,g)+g|0,F[h+4>>2]=i;break b}if((b|0)<0){break a}c=e-d|0;e=c<<1;e=c>>>0<1073741823?b>>>0<e>>>0?e:b:2147483647;c=sa(e);ua(c+f|0,0,g);if((f|0)>0){ta(c,d,f)}F[a+8>>2]=c+e;F[a+4>>2]=b+c;F[a>>2]=c;if(!d){break b}ra(d);break b}if(b>>>0>=f>>>0){break b}F[a+4>>2]=b+d}b=F[a+28>>2];c=b;d=b+1|0;b=F[a+24>>2]+1|0;d=b?c:d;F[a+24>>2]=b;F[a+28>>2]=d;return}va();V()}function yb(a){var b=0,c=0,d=0,e=0;c=F[a+128>>2];if(c){d=c;b=F[a+132>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=F[d>>2];if(e){F[b-8>>2]=e;ra(e)}b=d;if((c|0)!=(b|0)){continue}break}d=F[a+128>>2]}F[a+132>>2]=c;ra(d)}c=F[a+116>>2];if(c){d=c;b=F[a+120>>2];if((c|0)!=(b|0)){while(1){d=b-12|0;e=F[d>>2];if(e){F[b-8>>2]=e;ra(e)}b=d;if((c|0)!=(b|0)){continue}break}d=F[a+116>>2]}F[a+120>>2]=c;ra(d)}b=F[a+104>>2];if(b){F[a+108>>2]=b;ra(b)}b=F[a+92>>2];if(b){F[a+96>>2]=b;ra(b)}_a(a+72|0);_a(a+52|0);_a(a+32|0)}function La(a){F[a>>2]=-1;F[a+4>>2]=0;F[a+8>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;D[a+28|0]=1;F[a+20>>2]=0;F[a+24>>2]=0;F[a+12>>2]=0;F[a+16>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+72>>2]=a+4;F[a+104>>2]=0;F[a+108>>2]=0;D[a+100|0]=1;F[a+112>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;F[a+124>>2]=0;F[a+128>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;F[a+140>>2]=0}function Gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=ea-32|0;ea=a;a:{d=Oa(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=sa(f);F[a+24>>2]=f|-2147483648;F[a+16>>2]=e;F[a+20>>2]=d;break c}D[a+27|0]=d;e=a+16|0;if(!d){break b}}ta(e,c,d)}D[d+e|0]=0;D[a+4|0]=0;F[a>>2]=1701667182;D[a+11|0]=4;d=F[b+4>>2];c=-1;d:{if(!d){break d}d=ae(d,a,a+16|0);c=-1;if(!d){break d}c=Xd(b,F[d+24>>2])}b=c;if(D[a+11|0]<0){ra(F[a>>2])}if(D[a+27|0]<0){ra(F[a+16>>2])}ea=a+32|0;break a}Pa();V()}return b|0}function Rg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ea-16|0;ea=d;F[d+12>>2]=0;a:{e=Oa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=sa(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}ta(a,c,e)}D[a+e|0]=0;a=sb(b,d);d:{if((a|0)==(b+4|0)){break d}b=F[a+32>>2];a=F[a+28>>2];if((b-a|0)!=4){break d}F[d+12>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}a=F[d+12>>2];if(D[d+11|0]<0){ra(F[d>>2])}ea=d+16|0;break a}Pa();V()}return a|0}function Ld(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!F[F[4282]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){D[a+1|0]=b&63|128;D[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){D[a+2|0]=b&63|128;D[a|0]=b>>>12|224;D[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){D[a+3|0]=b&63|128;D[a|0]=b>>>18|240;D[a+2|0]=b>>>6&63|128;D[a+1|0]=b>>>12&63|128;a=4;break a}}F[3984]=25;a=-1}else{a=1}break a}D[a|0]=b;a=1}return a}function _b(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13724;b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}b=F[a+44>>2];if(b){F[a+48>>2]=b;ra(b)}b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}b=F[a+8>>2];if(b){d=b;c=F[a+12>>2];if((b|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){Ja(d)}if((b|0)!=(c|0)){continue}break}d=F[a+8>>2]}F[a+12>>2]=b;ra(d)}b=F[a+4>>2];F[a+4>>2]=0;if(b){Rc(b)}return a|0}function Aa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>>0<2147483644?d>>>0<i>>>0?i:d:1073741823;if(d){if(d>>>0>=1073741824){break a}c=sa(d<<2)}b=b<<2;b=ua((h<<2)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<2)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}za();V()}function tb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>>0<2147483640?d>>>0<i>>>0?i:d:536870911;if(d){if(d>>>0>=536870912){break a}c=sa(d<<3)}b=b<<3;b=ua((h<<3)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<3)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}za();V()}function jb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a>>2];a=F[e+4>>2];c=F[e+8>>2];if(a>>>0<c>>>0){F[a>>2]=F[b>>2];F[e+4>>2]=a+4;return}a:{f=F[e>>2];g=a-f|0;d=g>>2;a=d+1|0;if(a>>>0<1073741824){h=d<<2;c=c-f|0;d=c>>1;c=c>>>0<2147483644?a>>>0<d>>>0?d:a:1073741823;if(c){if(c>>>0>=1073741824){break a}a=sa(c<<2)}else{a=0}d=h+a|0;F[d>>2]=F[b>>2];if((g|0)>0){ta(a,f,g)}F[e+8>>2]=a+(c<<2);F[e+4>>2]=d+4;F[e>>2]=a;if(f){ra(f)}return}va();V()}za();V()}function Qc(a,b){var c=0,d=0,e=0,f=0;c=a+4|0;a=sb(a,b);a:{if((c|0)==(a|0)){break a}b=a+28|0;b=D[a+39|0]<0?F[b>>2]:b;while(1){a=b;b=a+1|0;c=D[a|0];if((c|0)==32|c-9>>>0<5){continue}break}b:{c:{d:{c=D[a|0];switch(c-43|0){case 0:break c;case 2:break d;default:break b}}e=1}c=D[b|0];a=b}if(c-48>>>0<10){while(1){d=(L(d,10)-D[a|0]|0)+48|0;b=D[a+1|0];a=a+1|0;if(b-48>>>0<10){continue}break}}a=e?d:0-d|0;if((a|0)==-1){break a}f=(a|0)!=0}return f}function hf(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2328;b=F[a+60>>2];F[a+60>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;ra(b)}F[a>>2]=1984;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function gf(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2328;b=F[a+60>>2];F[a+60>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;ra(b)}F[a>>2]=1984;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}ra(a)}function ui(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=ea-16|0;ea=d;e=F[a+4>>2];a:{if((e|0)==-1){break a}c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}Xb(b,F[b+4>>2],F[a+8>>2],F[a+12>>2]);c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}Xb(b,F[b+4>>2],a+20|0,a+24|0);c=F[b+20>>2];f=F[b+16>>2];D[d+15|0]=F[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}Xb(b,F[b+4>>2],d+15|0,d+16|0)}ea=d+16|0;return(e|0)!=-1|0}function pe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>=0){c=0;e=e-f|0;d=e>>>0<2147483646?d>>>0<e>>>0?e:d:2147483647;if(d){if((d|0)<0){break a}c=sa(d<<1)}b=b<<1;b=ua((h<<1)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<1)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}za();V()}function Ch(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=F[a+8>>2];b:{if((b|0)<0){break b}c=F[a+4>>2];e=F[c>>2];d=F[c+4>>2]-e>>2;c:{if(d>>>0<b>>>0){Aa(c,b-d|0);f=F[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}F[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=F[a+4>>2];c=F[a>>2];e=F[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}F[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}Ea();V()}function mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;Me(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Yb(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;Zb(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){ra(F[d+4>>2])}ea=d+16|0;return e|0}function lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;Le(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Yb(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;Zb(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){ra(F[d+4>>2])}ea=d+16|0;return e|0}function wg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a=ea-32|0;ea=a;e=D[b+24|0];f=F[3411];F[a+24>>2]=F[3410];F[a+28>>2]=f;f=F[3409];F[a+16>>2]=F[3408];F[a+20>>2]=f;a:{b:{c=Ya(b,c,e,a+16|0);if(c){F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;b=0;if(e){if((e|0)<0){break b}e=e<<2;b=sa(e);g=ta(b,a+16|0,e)+e|0}e=F[d>>2];if(e){F[d+4>>2]=e;ra(e)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=b}ea=a+32|0;break a}va();V()}return c|0}function Ua(a){var b=0,c=0,d=0,e=0,f=0;b=F[a+4>>2];if((b|0)!=F[a+8>>2]){F[b>>2]=F[2856];F[a+4>>2]=b+4;return}a:{f=F[a>>2];d=b-f|0;e=d>>2;b=e+1|0;if(b>>>0<1073741824){c=d>>1;c=d>>>0<2147483644?b>>>0<c>>>0?c:b:1073741823;if(c){if(c>>>0>=1073741824){break a}b=sa(c<<2)}else{b=0}e=b+(e<<2)|0;F[e>>2]=F[2856];if((d|0)>0){ta(b,f,d)}F[a+8>>2]=b+(c<<2);F[a+4>>2]=e+4;F[a>>2]=b;if(f){ra(f)}return}va();V()}za();V()}function Dc(a,b,c){var d=0,e=0,f=0;d=F[c+16>>2];a:{if(!d){if(Rd(c)){break a}d=F[c+16>>2]}f=F[c+20>>2];if(d-f>>>0<b>>>0){return ga[F[c+36>>2]](c,a,b)|0}b:{if(F[c+80>>2]<0){d=0;break b}e=b;while(1){d=e;if(!d){d=0;break b}e=d-1|0;if(G[e+a|0]!=10){continue}break}e=ga[F[c+36>>2]](c,a,d)|0;if(e>>>0<d>>>0){break a}a=a+d|0;b=b-d|0;f=F[c+20>>2]}ta(f,a,b);F[c+20>>2]=F[c+20>>2]+b;e=b+d|0}return e}function Ib(a,b){var c=0,d=0,e=0,f=0;d=F[a+12>>2];c=F[a+16>>2]-d>>2;a:{if(c>>>0<b>>>0){Aa(a+12|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}F[a+16>>2]=d+(b<<2)}b:{c=F[a>>2];c:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=F[a+4>>2];e=b<<2;b=sa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){ta(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break c}ra(c)}return}va();V()}function Og(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;a:{e=Oa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=sa(g);F[d+8>>2]=g|-2147483648;F[d>>2]=f;F[d+4>>2]=e;break c}D[d+11|0]=e;f=d;if(!e){break b}}ta(f,c,e)}D[e+f|0]=0;f=a+16|0;c=_d(b,d,f);b=D[a+27|0];a=F[a+16>>2];if(D[d+11|0]<0){ra(F[d>>2])}ea=d+16|0;a=c?(b|0)<0?a:f:0;break a}Pa();V()}return a|0}function _c(a){var b=0,c=0,d=0,e=0;if(G[a+76|0]){D[a+76|0]=0;d=F[a+60>>2];c=F[a+72>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+56>>2]|0;d=d+e|0;F[a+56>>2]=b;F[a+60>>2]=b>>>0<c>>>0?d+1|0:d}if(H[a+38>>1]<=513){D[a+132|0]=0;d=F[a+116>>2];b=0;c=F[a+128>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+112>>2]|0;d=d+e|0;F[a+112>>2]=b;F[a+116>>2]=b>>>0<c>>>0?d+1|0:d}}function Eh(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;d=ea+-64|0;ea=d;e=ga[F[F[a>>2]+44>>2]](a,b)|0;a=ga[F[F[a>>2]+40>>2]](a,b)|0;f=Gb(d);g=F[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=F[(a<<2)+13584>>2]}else{a=-1}a=L(a,e);kc(f,g,h,i,0,a,a>>31);a=dc(sa(96),f);rb(a,c);D[a+84|0]=1;F[a+72>>2]=F[a+68>>2];F[a+60>>2]=F[b+60>>2];ea=d- -64|0;return a|0}function qe(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!qe(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function kb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!kb(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function Be(a,b){var c=0,d=0,e=0,f=0,g=0;F[a+144>>2]=b;c=F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2];e=F[c>>2]+F[c+16>>2]|0;d=F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2];c=F[d+8>>2];d=F[d+16>>2];c=c-d|0;f=a,g=H[F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2]+38>>1],E[f+38>>1]=g;F[a>>2]=e;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=c;F[a+12>>2]=0;f=a,g=ga[F[F[b>>2]+36>>2]](b)|0,F[f+148>>2]=g}function Gf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Za(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(!Za(a,F[b>>2],e)){break a}if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+20>>2]=c;F[b+32>>2]=d;F[b+40>>2]=F[b+40>>2]+1;if(!(F[b+36>>2]!=1|F[b+24>>2]!=2)){D[b+54|0]=1}F[b+44>>2]=4}}function oi(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11276;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13280;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}return a|0}function zh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=F[a+32>>2];f=F[b+8>>2];e=F[b+12>>2];d=F[b+20>>2];h=f;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;a:{if(h>>>0<g>>>0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}c=f+F[b>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=d;c=0;if((e|0)<0){break a}F[F[a+4>>2]+80>>2]=e;c=1}return c|0}function pc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!b){F[c>>2]=0;return}g=0-G[a+12|0]&255;e=F[a+8>>2];h=F[a>>2];while(1){i=d<<1;a:{if(e>>>0>4095){break a}d=F[a+4>>2];if((d|0)<=0){break a}d=d-1|0;F[a+4>>2]=d;e=G[d+h|0]|e<<8}f=e&255;d=f>>>0<g>>>0;j=f;f=L(e>>>8|0,g);e=d?j+f|0:e-(g+f|0)|0;F[a+8>>2]=e;d=d|i;b=b-1|0;if(b){continue}break}F[c>>2]=d}function Cd(a,b,c,d){D[a+53|0]=1;a:{if(F[a+4>>2]!=(c|0)){break a}D[a+52|0]=1;c=F[a+16>>2];b:{if(!c){F[a+36>>2]=1;F[a+24>>2]=d;F[a+16>>2]=b;if((d|0)!=1){break a}if(F[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=F[a+24>>2];if((c|0)==2){F[a+24>>2]=d;c=d}if(F[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}F[a+36>>2]=F[a+36>>2]+1}D[a+54|0]=1}}function ni(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11276;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13280;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}ra(a)}function xh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+32>>2];e=F[d+12>>2];g=F[d+8>>2];b=g;c=F[d+20>>2];h=F[d+16>>2];f=h+4|0;c=f>>>0<4?c+1|0:c;if((c|0)<=(e|0)&b>>>0>=f>>>0|(c|0)<(e|0)){b=h+F[d>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[d+16>>2]=f;F[d+20>>2]=c;F[F[a+4>>2]+80>>2]=b}return(c|0)<=(e|0)&f>>>0<=g>>>0|(c|0)<(e|0)}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=ea+-64|0;ea=e;d=1;a:{if(Za(a,b,0)){break a}d=0;if(!b){break a}b=Ed(b,14972);d=0;if(!b){break a}d=e+8|0;ua(d|4,0,52);F[e+56>>2]=1;F[e+20>>2]=-1;F[e+16>>2]=a;F[e+8>>2]=b;ga[F[F[b>>2]+28>>2]](b,d,F[c>>2],1);a=F[e+32>>2];if((a|0)==1){F[c>>2]=F[e+24>>2]}d=(a|0)==1}ea=e- -64|0;return d|0}function Fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ea-16|0;ea=d;F[a+4>>2]=b;b=F[b+64>>2];e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Qa(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+56>>2];b=F[b+52>>2];D[d+14|0]=0;Qa(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;ea=d+16|0}function mf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=ga[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((f|0)<=0){break a}d=F[F[a+36>>2]>>2];g=a+48|0;c=0;if(!(ga[F[F[d>>2]+16>>2]](d,g,b)|0)){break a}while(1){e=e+1|0;if((f|0)!=(e|0)){d=F[F[a+36>>2]+(e<<2)>>2];if(ga[F[F[d>>2]+16>>2]](d,g,b)|0){continue}}break}c=(e|0)>=(f|0)}return c|0}function lf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=ga[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((f|0)<=0){break a}d=F[F[a+36>>2]>>2];g=a+48|0;c=0;if(!(ga[F[F[d>>2]+20>>2]](d,g,b)|0)){break a}while(1){e=e+1|0;if((f|0)!=(e|0)){d=F[F[a+36>>2]+(e<<2)>>2];if(ga[F[F[d>>2]+20>>2]](d,g,b)|0){continue}}break}c=(e|0)>=(f|0)}return c|0}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ea-16|0;ea=d;F[a+4>>2]=b;e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Qa(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+28>>2];b=F[b+24>>2];D[d+14|0]=0;Qa(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;ea=d+16|0}function $b(a){var b=0;F[a>>2]=0;F[a+4>>2]=0;F[a+56>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+60>>2]=a;return a}function sd(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!sd(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function lb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!lb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function ab(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!ab(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ne(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Ne(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Mc(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Mc(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Hb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Hb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ga(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Ga(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Db(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Db(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ha(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(F[a>>2]!=F[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=G[a|0];e=G[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 Vc(a){var b=0,c=0,d=0,e=0;d=F[a>>2];if(d){e=d;c=F[a+4>>2];if((d|0)!=(c|0)){while(1){e=c-144|0;b=F[e+132>>2];if(b){F[c-8>>2]=b;ra(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;ra(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;ra(b)}oc(c-140|0);c=e;if((d|0)!=(c|0)){continue}break}e=F[a>>2]}F[a+4>>2]=d;ra(e)}}function Bg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[b+4>>2];a:{if(!d){break a}b=F[F[F[b+8>>2]+(c<<2)>>2]+60>>2];if((b|0)<0){break a}a=F[d+24>>2];c=F[d+28>>2];if((a|0)==(c|0)){break a}b:{while(1){e=F[a>>2];if((b|0)==F[e+24>>2]){break b}a=a+4|0;if((c|0)!=(a|0)){continue}break}e=0}}return e|0}function Xh(a){a=a|0;var b=0;F[a+8>>2]=12384;F[a>>2]=12172;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12620;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function Rc(a){var b=0,c=0,d=0;if(a){d=F[a+24>>2];if(d){b=d;c=F[a+28>>2];if((b|0)!=(c|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Ta(b+12|0,F[b+16>>2]);Sa(b,F[b+4>>2]);ra(b)}if((c|0)!=(d|0)){continue}break}b=F[a+24>>2]}F[a+28>>2]=d;ra(b)}Ta(a+12|0,F[a+16>>2]);Sa(a,F[a+4>>2]);ra(a)}}function Wh(a){a=a|0;var b=0;F[a+8>>2]=12384;F[a>>2]=12172;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12620;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function ti(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13280;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}return a|0}function xc(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=F[c+8>>2];e=F[c+16>>2];g=F[c+12>>2];f=g;d=F[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=G[e+F[c>>2]|0];i=e+1|0;f=i?d:d+1|0;F[c+16>>2]=i;F[c+20>>2]=f;F[a+4>>2]=b}return e>>>0<h>>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function Tc(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13280;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];b=d;if((c|0)!=(b|0)){while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}ra(a)}function Za(a,b,c){var d=0;if(!c){return F[a+4>>2]==F[b+4>>2]}if((a|0)==(b|0)){return 1}d=F[a+4>>2];a=G[d|0];c=F[b+4>>2];b=G[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=G[c+1|0];a=G[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 Yh(a){a=a|0;var b=0;F[a>>2]=12384;b=F[a+88>>2];if(b){F[a+92>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12620;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[b+12>>2];b=F[b+8>>2];a=0;a:{if((d|0)==(b|0)){break a}a=d-b>>2;d=a>>>0>1?a:1;a=0;b:{while(1){e=F[b+(a<<2)>>2];if(F[e+60>>2]==(c|0)){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}a=0;break a}a=(a|0)==-1?0:e}return a|0}function $d(a,b){var c=0,d=0,e=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;a:{c=F[b+4>>2];d=F[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=sa(c);c=ua(e,0,c);d=d+c|0;F[a+8>>2]=d;F[a+4>>2]=d;F[a>>2]=c;c=F[b>>2];a=F[b+4>>2]}ta(e,c,a-c|0);return}va();V()}function cd(a){var b=0,c=0,d=0,e=0;c=F[a+4>>2];d=F[a>>2];if((c|0)!=(d|0)){while(1){e=c-144|0;b=F[e+132>>2];if(b){F[c-8>>2]=b;ra(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;ra(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;ra(b)}oc(c-140|0);c=e;if((d|0)!=(c|0)){continue}break}}F[a+4>>2]=d}function Th(a){a=a|0;var b=0;F[a>>2]=12384;b=F[a+88>>2];if(b){F[a+92>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12620;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Kb(a,b){var c=0,d=0,e=0,f=0;a:{c=F[a>>2];b:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break b}if(b>>>0>=1073741824){break a}d=F[a+4>>2];e=b<<2;b=sa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){ta(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break b}ra(c)}return}va();V()}function eb(a){var b=0;if(a){b=F[a+76>>2];if(b){F[a+80>>2]=b;ra(b)}b=F[a- -64>>2];if(b){F[a+68>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}ra(a)}}function oc(a){var b=0;b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+52>>2];if(b){F[a+56>>2]=b;ra(b)}b=F[a+40>>2];if(b){F[a+44>>2]=b;ra(b)}b=F[a+28>>2];if(b){F[a+32>>2]=b;ra(b)}b=F[a+12>>2];if(b){ra(b)}a=F[a>>2];if(a){ra(a)}}function Jd(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=ea-16|0;ea=f;d=ea-16|0;ea=d;b=b-a>>2;while(1){if(b){F[d+12>>2]=a;e=b>>>1|0;F[d+12>>2]=F[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=F[d+12>>2];g=I[e>>2]<I[c>>2];b=g?h:b;a=g?e+4|0:a;continue}break}ea=d+16|0;ea=f+16|0;return a}function Ba(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<11){d=a;D[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=sa(e);F[a>>2]=d;F[a+8>>2]=e|-2147483648;F[a+4>>2]=c}Bb(d,b,c+1|0);return}Pa();V()}function Uc(a,b){var c=0,d=0;d=sa(40);F[d>>2]=-1;c=d+8|0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;ga[F[F[a>>2]+16>>2]](a,d);a=F[b+88>>2];F[b+88>>2]=d;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}return 1}function Oa(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!G[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=F[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}while(1){b=c;c=b+1|0;if(G[b|0]){continue}break}}return b-a|0}function Da(a){var b=0,c=0,d=0,e=0,f=0;d=G[a+12|0];c=F[a+8>>2];a:{if(c>>>0>4095){break a}b=F[a+4>>2];if((b|0)<=0){break a}b=b-1|0;F[a+4>>2]=b;c=G[b+F[a>>2]|0]|c<<8}d=0-d&255;b=L(d,c>>>8|0);e=c&255;f=e>>>0<d>>>0;F[a+8>>2]=f?b+e|0:c-(b+d|0)|0;return f}function md(a,b){F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=1984;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a>>2]=2328;F[a+60>>2]=b;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;return a}function Lg(a){a=a|0;var b=0,c=0,d=0;if(a){if(D[a+27|0]<0){ra(F[a+16>>2])}c=F[a>>2];if(c){d=c;b=F[a+4>>2];if((b|0)!=(c|0)){while(1){b=b-12|0;if(D[b+11|0]<0){ra(F[b>>2])}if((c|0)!=(b|0)){continue}break}d=F[a>>2]}F[a+4>>2]=c;ra(d)}ra(a)}}function Nd(a){var b=0,c=0,d=0;if(D[F[a>>2]]-48>>>0>=10){return 0}while(1){d=F[a>>2];c=-1;if(b>>>0<=214748364){c=D[d|0]-48|0;b=L(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}F[a>>2]=d+1;b=c;if(D[d+1|0]-48>>>0<10){continue}break}return b}function Ja(a){a=a|0;var b=0,c=0;if(a){b=F[a+88>>2];F[a+88>>2]=0;if(b){c=F[b+8>>2];if(c){F[b+12>>2]=c;ra(c)}ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+64>>2];F[a+64>>2]=0;if(b){c=F[b>>2];if(c){F[b+4>>2]=c;ra(c)}ra(b)}ra(a)}}function yi(a){a=a|0;var b=0;F[a+24>>2]=1832;F[a>>2]=11048;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2448;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2232;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function Ag(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=F[b+96>>2];a=sa(12);b=b+L(c,12)|0;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d>>2]=a;a=a+12|0;F[d+8>>2]=a;F[d+4>>2]=a;return 1}function mc(a,b){var c=0,d=0,e=0;c=Oa(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=sa(e);F[a+8>>2]=e|-2147483648;F[a>>2]=d;F[a+4>>2]=c;break b}D[a+11|0]=c;d=a;if(!c){break a}}ta(d,b,c)}D[c+d|0]=0;return a}Pa();V()}function Nj(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=Oj(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;fa=(g^fa)-((a>>>0<f>>>0)+g|0)|0;return b}function xi(a){a=a|0;var b=0;F[a+24>>2]=1832;F[a>>2]=11048;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2448;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2232;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function Zb(a,b,c){var d=0,e=0,f=0;e=ea-16|0;ea=e;d=F[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=F[a>>2];F[a+4>>2]=c;Bb(d,b,c);D[e+15|0]=0;D[c+d|0]=G[e+15|0];break a}f=a;a=F[a+4>>2];Fd(f,d-1|0,(c-d|0)+1|0,a,a,c,b)}ea=e+16|0}function zf(a,b){a=a|0;b=b|0;var c=0,d=0;c=ea-16|0;ea=c;a=F[a+4>>2];a:{if((a|0)==-1){break a}D[c+15|0]=a;d=F[b+20>>2];if(!!F[b+16>>2]&(d|0)>=0|(d|0)>0){break a}Xb(b,F[b+4>>2],c+15|0,c+16|0)}ea=c+16|0;return(a|0)!=-1|0}function Mj(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=L(e,f);g=c&65535;h=a&65535;i=L(g,h);f=(i>>>16|0)+L(f,g)|0;e=(f&65535)+L(e,h)|0;fa=(L(b,c)+j|0)+L(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function Dd(a,b,c){var d=0;d=F[a+16>>2];if(!d){F[a+36>>2]=1;F[a+24>>2]=c;F[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(F[a+24>>2]!=2){break a}F[a+24>>2]=c;return}D[a+54|0]=1;F[a+24>>2]=2;F[a+36>>2]=F[a+36>>2]+1}}function rh(){var a=0;a=Gb(sa(96));F[a+64>>2]=0;F[a+68>>2]=0;F[a+88>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a|0}function wi(a,b){a=a|0;b=b|0;var c=0,d=0;F[b>>2]=2;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){lc(b+8|0,d+4|0);c=F[b+8>>2]}b=c+d|0;a=F[a+4>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function oj(a){a=a|0;var b=0;F[a>>2]=5580;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function nb(a,b,c,d,e){var f=0;f=ea-256|0;ea=f;if(!(e&73728|(c|0)<=(d|0))){d=c-d|0;c=d>>>0<256;ua(f,b&255,c?d:256);if(!c){while(1){Cb(a,f,256);d=d-256|0;if(d>>>0>255){continue}break}}Cb(a,f,d)}ea=f+256|0}function Ej(a){a=a|0;var b=0;F[a>>2]=3564;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Ah(a){a=a|0;var b=0,c=0,d=0;b=F[a+8>>2];d=F[a+12>>2];if((b|0)==(d|0)){return 1}while(1){c=F[b>>2];c=ga[F[F[c>>2]+16>>2]](c,F[a+32>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function Xd(a,b){var c=0,d=0;c=F[a+8>>2];a=F[a+12>>2];if((c|0)!=(a|0)){a=a-c>>2;d=a>>>0>1?a:1;a=0;while(1){if(F[F[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return-1}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;Vd(a,b);a:{if((b|0)<0){break a}d=F[a+88>>2];c=F[a+84>>2];if(d-c>>2<=(b|0)){break a}b=c+(b<<2)|0;c=b+4|0;e=d-c|0;if((c|0)!=(d|0)){Ra(b,c,e)}F[a+88>>2]=b+e}}function nj(a){a=a|0;var b=0;F[a>>2]=5580;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Dj(a){a=a|0;var b=0;F[a>>2]=3564;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function _d(a,b,c){var d=0,e=0;d=a+4|0;a=sb(a,b);if((d|0)==(a|0)){return 0}b=F[a+32>>2];d=F[a+28>>2];if((b|0)!=(d|0)){Bc(c,b-d|0);e=Cc(c);c=F[a+28>>2];ta(e,c,F[a+32>>2]-c|0)}return(b|0)!=(d|0)}function Of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=ea-16|0;ea=e;a=aa(F[a+60>>2],b|0,c|0,d&255,e+8|0)|0;if(a){F[3984]=a;a=-1}else{a=0}ea=e+16|0;fa=a?-1:F[e+12>>2];return(a?-1:F[e+8>>2])|0}function Rd(a){var b=0;b=F[a+72>>2];F[a+72>>2]=b-1|b;b=F[a>>2];if(b&8){F[a>>2]=b|32;return-1}F[a+4>>2]=0;F[a+8>>2]=0;b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];return 0}function Gb(a){F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+28>>2]=9;D[a+24|0]=1;F[a+56>>2]=-1;F[a+60>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;return a}function ff(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+16>>2];c=0;a:{if(F[a+20>>2]-d>>2<=(b|0)){break a}b=F[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=ub(F[F[a+36>>2]+(b<<2)>>2])}return c|0}function mb(a){var b=0,c=0;b=F[3958];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ha()<<16>>>0){if(!(ba(a|0)|0)){break a}}F[3958]=a;return b}F[3984]=48;return-1}function Yb(a,b,c){var d=0,e=0;d=ea-16|0;ea=d;a:{if(c>>>0<=10){D[a+11|0]=c;Bb(a,b,c);D[d+15|0]=0;D[a+c|0]=G[d+15|0];break a}e=a;a=G[a+11|0];Fd(e,10,c-10|0,a,a,c,b)}ea=d+16|0}function Ph(a){a=a|0;var b=0;F[a+8>>2]=12804;F[a>>2]=12640;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12620;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function Kh(a){a=a|0;var b=0;F[a+8>>2]=11872;F[a>>2]=12932;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12124;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[a+8>>2];a:{if(D[d+24|0]<=0){break a}if(!rb(d,F[b+4>>2]-F[b>>2]>>2)){break a}e=ga[F[F[a>>2]+32>>2]](a,b,c)|0}return e|0}function Kg(){var a=0;a=sa(40);F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=a+4;F[a+24>>2]=0;F[a+28>>2]=0;F[a+12>>2]=a+16;F[a+16>>2]=0;F[a+20>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;return a|0}function $i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;a=F[a+8>>2];if(G[a+24|0]==3){d=F[a+28>>2]==9}return d|0}function Oh(a){a=a|0;var b=0;F[a+8>>2]=12804;F[a>>2]=12640;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12620;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function Jh(a){a=a|0;var b=0;F[a+8>>2]=11872;F[a>>2]=12932;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12124;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function kj(a){a=a|0;var b=0;F[a>>2]=5816;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Ta(a,b){if(b){Ta(a,F[b>>2]);Ta(a,F[b+4>>2]);a=F[b+28>>2];F[b+28>>2]=0;if(a){Ta(a+12|0,F[a+16>>2]);Sa(a,F[a+4>>2]);ra(a)}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Ei(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;d=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=d;return F[F[F[F[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9|0}function Aj(a){a=a|0;var b=0;F[a>>2]=3812;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Sc(a){F[a+40>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=13280;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;E[a+36>>1]=0;return a}function Gd(a,b){var c=0,d=0,e=0,f=0;F[a>>2]=15260;F[a>>2]=15372;c=Oa(b);d=sa(c+13|0);F[d+8>>2]=0;F[d+4>>2]=c;F[d>>2]=c;e=a,f=ta(d+12|0,b,c+1|0),F[e+4>>2]=f;return a}function Yf(a,b){a=a|0;b=b|0;var c=0;a:{if(!(ga[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ga[F[F[a>>2]+40>>2]](a,b)|0)){break a}c=ga[F[F[a>>2]+44>>2]](a)|0}return c|0}function zj(a){a=a|0;var b=0;F[a>>2]=3812;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function jj(a){a=a|0;var b=0;F[a>>2]=5816;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Ue(a){a=a|0;var b=0;a:{if(!F[a- -64>>2]|!F[a+68>>2]|(!F[a+44>>2]|!F[a+48>>2])){break a}if(!F[a+52>>2]|!F[a+56>>2]){break a}b=F[a+92>>2]!=-1}return b|0}function af(a){a=a|0;var b=0;F[a>>2]=2448;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2232;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function Lj(a,b){a=a|0;b=b|0;var c=0;b=F[b+88>>2];if(!(!b|F[b>>2]!=2)){c=a;a=F[b+8>>2];F[c+4>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);c=1}return c|0}function tc(a){a=a|0;var b=0;a:{if(!F[a+48>>2]|!F[a+52>>2]|(!F[a+28>>2]|!F[a+32>>2])){break a}if(!F[a+36>>2]|!F[a+40>>2]){break a}b=F[a+76>>2]!=-1}return b|0}function Qh(a){a=a|0;var b=0;F[a>>2]=12804;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12620;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Ee(a){a=a|0;var b=0;F[a>>2]=11872;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12124;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function $e(a){a=a|0;var b=0;F[a>>2]=2448;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2232;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function uh(){var a=0,b=0;b=sa(40);F[b>>2]=-1;a=b+8|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;return b|0}function ef(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+4>>2];a:{if(d){c=1;if(G[d+36|0]<2){break a}}c=ga[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0}return c|0}function bi(a){a=a|0;var b=0;F[a>>2]=11872;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12124;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Lh(a){a=a|0;var b=0;F[a>>2]=12804;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12620;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Ka(a){F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;E[a+38>>1]=0;D[a+36|0]=0;return a}function Ff(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(Za(a,F[b+8>>2],f)){Cd(b,c,d,e);return}a=F[a+8>>2];ga[F[F[a>>2]+20>>2]](a,b,c,d,e,f)}function Ci(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!(ga[F[F[a>>2]+52>>2]](a)|0)){break a}}b=Uc(a+24|0,F[a+16>>2])}return b|0}function Di(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!(ga[F[F[a>>2]+52>>2]](a)|0)){break a}}d=ld(a,b,c)}return d|0}function eh(){var a=0;a=Zd(sa(108));F[a+84>>2]=0;F[a+88>>2]=0;F[a>>2]=13664;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;return a|0}function Yd(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=L(b,12)+a|0;a=F[b+20>>2];if((F[b+24>>2]-a|0)<=0){break a}c=F[a>>2]}return c}function kc(a,b,c,d,e,f,g){F[a>>2]=0;F[a+56>>2]=b;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=f;F[a+44>>2]=g;D[a+32|0]=e;F[a+28>>2]=d;D[a+24|0]=c}function _i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!xc(a+24|0,F[a+8>>2],c)){break a}}d=ld(a,b,c)}return d|0}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!xc(a+24|0,ub(a),c)){break a}}b=Uc(a+24|0,F[a+16>>2])}return b|0}function Xf(a){a=a|0;var b=0;F[a>>2]=13664;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}return _b(a)|0}function Cc(a){var b=0;if(G[a+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}if(!b){_e(1232);V()}if(G[a+11|0]>>>7|0){a=F[a>>2]}return a}function Wf(a){a=a|0;var b=0;F[a>>2]=13664;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}ra(_b(a))}function wj(a){a=a|0;var b=0;F[a>>2]=4040;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function hj(a){a=a|0;var b=0;F[a>>2]=6032;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Sa(a,b){if(b){Sa(a,F[b>>2]);Sa(a,F[b+4>>2]);a=F[b+28>>2];if(a){F[b+32>>2]=a;ra(a)}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Tg(){var a=0;a=sa(28);F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;return a|0}function jg(a){a=a|0;var b=0;F[a>>2]=1984;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function ch(){var a=0,b=0;a=sa(24);F[a+4>>2]=0;F[a+8>>2]=0;b=a+16|0;F[b>>2]=0;F[b+4>>2]=0;F[a>>2]=a+4;F[a+12>>2]=b;return a|0}function If(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Za(a,F[b+8>>2],0)){Dd(b,c,d);return}a=F[a+8>>2];ga[F[F[a>>2]+28>>2]](a,b,c,d)}function vj(a){a=a|0;var b=0;F[a>>2]=4040;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function gj(a){a=a|0;var b=0;F[a>>2]=6032;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function sa(a){var b=0;a=a?a:1;a:{while(1){b=Id(a);if(b){break a}b=F[4412];if(b){ga[b|0]();continue}break}Y();V()}return b}function Lb(a,b){if(b){Lb(a,F[b>>2]);Lb(a,F[b+4>>2]);if(D[b+39|0]<0){ra(F[b+28>>2])}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Ad(a){a=a|0;var b=0,c=0;F[a>>2]=15372;b=F[a+4>>2]-12|0;c=F[b+8>>2]-1|0;F[b+8>>2]=c;if((c|0)<0){ra(b)}return a|0}function jh(){var a=0;a=sa(24);F[a+8>>2]=0;F[a+12>>2]=0;F[a+4>>2]=-1;F[a>>2]=1832;F[a+16>>2]=0;F[a+20>>2]=0;return a|0}function nd(a,b,c){a=a|0;b=b|0;c=c|0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;return 1}function wc(a){a=a|0;var b=0;if(!(!F[a+60>>2]|!F[a+44>>2]|(!F[a+48>>2]|!F[a+52>>2]))){b=F[a+56>>2]!=0}return b|0}function tj(a){a=a|0;var b=0;F[a>>2]=4276;F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function ej(a){a=a|0;var b=0;F[a>>2]=6256;F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Sh(a){a=a|0;var b=0;F[a>>2]=12620;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function $h(a){a=a|0;var b=0;F[a>>2]=12124;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function kg(a){a=a|0;if(a){if(D[a+39|0]<0){ra(F[a+28>>2])}Lc(a+12|0,F[a+16>>2]);Lb(a,F[a+4>>2]);ra(a)}}function Qb(a){a=a|0;var b=0;if(!(!F[a+52>>2]|(!F[a+44>>2]|!F[a+48>>2]))){b=F[a+56>>2]!=0}return b|0}function vc(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|!b|G[b+24|0]!=3)){F[a+60>>2]=b;c=1}return c|0}function sj(a){a=a|0;var b=0;F[a>>2]=4276;F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function cj(a){a=a|0;var b=0;F[a>>2]=6256;F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function _h(a){a=a|0;var b=0;F[a>>2]=12124;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Rh(a){a=a|0;var b=0;F[a>>2]=12620;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function vh(a,b,c){a=a|0;b=b|0;c=c|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=b;F[a+8>>2]=c;F[a+12>>2]=0}function Te(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a- -64>>2]=b;c=1}return c|0}function yc(a){var b=0;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}}function sc(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a+48>>2]=b;c=1}return c|0}function Ef(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(Za(a,F[b+8>>2],f)){Cd(b,c,d,e)}}function za(){var a=0;a=_(4)|0;F[a>>2]=15260;F[a>>2]=15220;F[a>>2]=15240;Z(a|0,15352,14);V()}function qf(a){a=a|0;var b=0;F[a>>2]=2232;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function ii(a){a=a|0;var b=0;F[a>>2]=1832;b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}return a|0}
function Gj(a){a=a|0;var b=0;F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Ai(a){a=a|0;var b=0;b=ub(a);return Ge(a+24|0,b?b:F[a+8>>2],F[F[a+4>>2]+32>>2])|0}function pf(a){a=a|0;var b=0;F[a>>2]=2232;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function Vb(a){a=a|0;var b=0;F[a>>2]=3272;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function hi(a){a=a|0;var b=0;F[a>>2]=1832;b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}function _a(a){var b=0;F[a+16>>2]=0;b=F[a>>2];F[a+4>>2]=b;F[a+12>>2]=b;if(b){ra(b)}}function Lc(a,b){if(b){Lc(a,F[b>>2]);Lc(a,F[b+4>>2]);Lb(b+20|0,F[b+24>>2]);ra(b)}}function vi(a){a=a|0;if(!F[a+44>>2]){return 0}return ga[F[F[a>>2]+48>>2]](a)|0}function th(a){a=a|0;var b=0;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}}function Pj(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function Jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Za(a,F[b+8>>2],0)){Dd(b,c,d)}}function si(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+20>>2]](a,b)|0}function li(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+12>>2]](a,b)|0}function ki(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+16>>2]](a,b)|0}function qb(){var a=0;a=sa(12);F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;return a|0}function pb(a){a=a|0;var b=0;if(a){b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}ra(a)}}function Qj(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<<b|(-1<<a&-2)>>>a}function bh(a){a=a|0;if(a){Ta(a+12|0,F[a+16>>2]);Sa(a,F[a+4>>2]);ra(a)}}function Vg(a,b,c){a=a|0;b=b|0;c=c|0;F[a+32>>2]=c;F[a+28>>2]=b;return 1}function Qd(a,b,c){a:{if(F[c+76>>2]<0){a=Dc(a,b,c);break a}a=Dc(a,b,c)}}function Nb(a,b){a=a|0;b=b|0;if(b>>>0<=1){F[a+28>>2]=b}return b>>>0<2|0}function Dh(a,b){a=a|0;b=b|0;D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];return 1}function qi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+24>>2]](a)|0}function pi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+28>>2]](a)|0}function mi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+36>>2]](a)|0}function gh(){var a=0;a=sa(8);F[a+4>>2]=-1;F[a>>2]=1032;return a|0}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;return F[F[b+8>>2]+(c<<2)>>2]}function zi(a,b){a=a|0;b=b|0;return Oe(a+24|0,ub(a),F[a+8>>2])|0}function Yi(a,b){a=a|0;b=b|0;return Bd(a+24|0,ub(a),F[a+8>>2])|0}function vf(a,b){a=a|0;b=b|0;F[a+12>>2]=-1;F[a+8>>2]=b;return 1}function ne(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+12>>2]](a,b)|0}function _g(a){a=a|0;if(a){if(D[a+15|0]<0){ra(F[a+4>>2])}ra(a)}}function Df(a){a=a|0;if(!a){return 0}return(Ed(a,15068)|0)!=0|0}function Bi(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+56>>2]](a,b)|0}function _e(a){a=Gd(_(8)|0,a);F[a>>2]=15472;Z(a|0,15504,1);V()}function Re(a){a=Gd(_(8)|0,a);F[a>>2]=15420;Z(a|0,15452,1);V()}function ih(a,b){a=a|0;b=b|0;return M(J[F[a+8>>2]+(b<<2)>>2])}function Zg(a,b){a=a|0;b=b|0;return M(J[F[a>>2]+(b<<2)>>2])}function dh(a){a=a|0;return(F[a+100>>2]-F[a+96>>2]|0)/12|0}function Tf(a,b){a=a|0;b=b|0;return F[F[a+4>>2]+(b<<2)>>2]}function Nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fa=0;return 0}function He(a){a=Sc(a);F[a+44>>2]=0;F[a>>2]=11180;return a}function $g(a){a=a|0;return(D[a+15|0]<0?F[a+4>>2]:a+4|0)|0}function ie(a,b){a=a|0;b=b|0;return F[F[a>>2]+(b<<2)>>2]}function Wg(a,b){a=a|0;b=b|0;return E[F[a>>2]+(b<<1)>>1]}function Ug(a,b){a=a|0;b=b|0;return H[F[a>>2]+(b<<1)>>1]}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return Yd(b,c)|0}function Zd(a){F[a>>2]=13724;ua(a+4|0,0,80);return a}function Rj(a){if(a){return 31-O(a-1^a)|0}return 32}
function le(a){a=a|0;return F[a+12>>2]-F[a+8>>2]>>2}function cc(a){a=a|0;if(a){ga[F[F[a>>2]+4>>2]](a)}}function Yg(a,b){a=a|0;b=b|0;return D[F[a>>2]+b|0]}function Xg(a,b){a=a|0;b=b|0;return G[F[a>>2]+b|0]}function Sf(a){a=a|0;return F[a+8>>2]-F[a+4>>2]>>2}function hd(a,b){a=a|0;b=b|0;F[a+4>>2]=b;return 1}function je(a){a=a|0;return F[a+4>>2]-F[a>>2]>>1}function Nc(a){a=a|0;return F[a+4>>2]-F[a>>2]>>2}function ke(a){a=a|0;return F[a+4>>2]-F[a>>2]|0}function Cb(a,b,c){if(!(G[a|0]&32)){Dc(b,c,a)}}function tf(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function ai(a,b){a=a|0;b=b|0;return D[b+24|0]}function Ng(a,b){a=a|0;b=b|0;return F[b+8>>2]}function Jj(a){a=a|0;return D[F[a+8>>2]+24|0]}function Ji(a){a=a|0;F[a>>2]=10032;return a|0}function Cg(a,b){a=a|0;b=b|0;return F[b+4>>2]}function Wi(a){a=a|0;F[a>>2]=7144;return a|0}function Si(a){a=a|0;F[a>>2]=8080;return a|0}function Qf(a){a=a|0;return ca(F[a+60>>2])|0}function Ni(a){a=a|0;F[a>>2]=9028;return a|0}function hh(a){a=a|0;return M(J[a+20>>2])}function Ii(a){a=a|0;F[a>>2]=10032;ra(a)}function Vi(a){a=a|0;F[a>>2]=7144;ra(a)}function Ri(a){a=a|0;F[a>>2]=8080;ra(a)}function Mi(a){a=a|0;F[a>>2]=9028;ra(a)}function qh(a){a=a|0;return F[a+88>>2]}function ph(a){a=a|0;return F[a+56>>2]}function mh(a){a=a|0;return F[a+40>>2]}function lh(a){a=a|0;return F[a+48>>2]}function kh(a){a=a|0;return F[a+60>>2]}function hb(a){a=a|0;return F[a+28>>2]}function bf(){F[4282]=17016;F[4264]=42}function Oc(a){a=a|0;return F[a+80>>2]}function yj(a,b){a=a|0;b=b|0;return 2}function oh(a){a=a|0;return D[a+24|0]}function nh(a){a=a|0;return G[a+32|0]}function kd(a,b){a=a|0;b=b|0;return-1}function gb(a){a=a|0;return F[a+4>>2]}function ah(a){a=a|0;return!F[a>>2]|0}function Ye(a,b){a=a|0;b=b|0;return 6}function Xc(a){a=a|0;return F[a+8>>2]}function Ma(a,b){a=a|0;b=b|0;return 0}function Hd(a,b){a=a|0;b=b|0;return 1}function oe(a){a=a|0;return F[a>>2]}function Bb(a,b,c){if(c){ta(a,b,c)}}function wh(){return Ka(sa(40))|0}function sh(){return Gb(sa(64))|0}function fh(){return Zd(sa(84))|0}function Pc(a){a=a|0;if(a){ra(a)}}function Cf(a){a=a|0;return 1171}function Bf(a){a=a|0;return 1245}function Af(a){a=a|0;return 1211}function Ac(a){a=a|0;Ad(a);ra(a)}function Wa(a){a=a|0;return a|0}function wf(a){a=a|0;ra(qd(a))}function ei(a){a=a|0;ra(ze(a))}function di(a){a=a|0;ra(ye(a))}function ci(a){a=a|0;ra(xe(a))}function We(a){a=a|0;return 5}
function Rf(a){a=a|0;ra(_b(a))}function jd(a){a=a|0;return 3}function bb(a){a=a|0;return 0}function Ze(a){a=a|0;return 4}function Ub(a){a=a|0;return 2}function Pb(a){a=a|0;return 6}function Fa(a){a=a|0;return 1}function va(){Re(1164);V()}function Pa(){Re(1232);V()}function Na(a){a=a|0;ra(a)}function Ea(){_e(1164);V()}function ib(a){a=a|0;V()}function dg(){return 10}function cg(){return 11}function bg(){return 12}function ig(){return 5}function hg(){return 6}function gg(){return 7}function fg(){return 8}function eg(){return 9}function ee(){return 3}function de(){return 4}function bc(){return-1}function ag(){return-2}function ac(){return 1}function _f(){return-4}function Zf(){return-5}function Rb(){return 0}function Kc(){return 2}function $f(){return-3}function Lf(){Y();V()}function Sd(a){a=a|0}
// EMSCRIPTEN_END_FUNCS
e=G;p(pa);var ga=c([null,Ad,Wa,Na,Ub,Lj,wi,Fh,Bd,zf,xc,Eh,Ye,yj,Wa,ii,hi,Fa,dj,Qi,Hi,Oe,ui,Ge,Ye,ai,jg,ib,Vg,he,Yf,Tf,Sf,hb,Ma,Lf,Hd,Fa,qd,wf,Mf,yf,xf,qf,pf,nd,vf,uf,tf,Hd,sf,rf,hf,gf,of,nf,ff,mf,lf,kf,jf,af,$e,nd,ef,df,ld,cf,Jj,Kj,Gj,Vb,Fa,gb,Qb,bb,kd,Ma,bb,Fa,Ij,Hj,ib,ib,Vb,Ub,Qb,Fj,Ej,Dj,Ze,Qb,Cj,Bj,Aj,zj,jd,wc,Fa,Ma,vc,Xe,xj,wj,vj,We,wc,Fa,Ma,vc,Ve,uj,tj,sj,Pb,Ue,Fa,Ma,Te,Se,rj,Wa,Na,Nb,hb,Ob,ib,Vb,Fa,Qb,qj,ib,Vb,Ub,Qb,pj,oj,nj,Ze,Qb,mj,lj,kj,jj,jd,wc,Fa,Ma,vc,Xe,ij,hj,gj,We,wc,Fa,Ma,vc,Ve,fj,ej,cj,Pb,Ue,Fa,Ma,Te,Se,bj,Wa,Na,Nb,hb,Mb,ib,Vb,bb,Fa,aj,af,$e,$i,Zi,_i,Xi,Ub,Yi,Wi,Vi,Pb,gb,tc,Fa,Ma,sc,Fa,Ub,Qe,Ui,Wa,Na,Nb,hb,Ob,Si,Ri,Pb,tc,Fa,Ma,sc,Qe,Pi,Wa,Na,Nb,hb,Mb,Wa,Na,bb,Fa,bb,kd,Ma,Ti,Oi,Ni,Mi,Pb,gb,tc,Fa,Ma,sc,Fa,jd,Pe,Li,Wa,Na,Nb,hb,Ob,Ji,Ii,Pb,tc,Fa,Ma,sc,Pe,Gi,Wa,Na,Nb,hb,Mb,Na,bb,Fa,bb,kd,Ma,Ki,Fi,yi,xi,Ei,Ci,Di,Bi,Ai,zi,ti,ib,Fa,Fa,vi,Bh,Ah,Fa,bb,Ma,Ma,oi,ni,ri,si,pi,mi,li,ki,qi,ze,ei,hd,gd,fd,ed,ji,Fa,gb,Xc,ye,di,hd,gd,fd,ed,gi,Fa,gb,Xc,xe,ci,hd,gd,fd,ed,fi,Fa,gb,Xc,Ee,bi,Fe,$h,_h,Xh,Wh,Vh,Uh,Yh,Th,Zh,Sh,Rh,Ph,Oh,Nh,Mh,Qh,Lh,Kh,Jh,Ih,Hh,Tc,te,Gh,Wa,Na,Dh,Ch,ib,bb,Fa,Tc,yh,zh,Tc,te,xh,Xf,Wf,Vf,Uf,_b,Rf,Wd,Vd,Qf,Pf,Of,bb,Nf,Wa,Na,Sd,Sd,Kf,Ef,Gf,Jf,Na,Ff,Hf,If,Na,Bf,Na,Af,Na,Cf,Ac,gb,Ac,Ac]);function ha(){return C.byteLength/65536|0}function ma(na){na=na|0;var ia=ha()|0;var ja=ia+na|0;if(ia<ja&&ja<65536){var ka=new ArrayBuffer(L(ja,65536));var la=new Int8Array(ka);la.set(D);D=new Int8Array(ka);E=new Int16Array(ka);F=new Int32Array(ka);G=new Uint8Array(ka);H=new Uint16Array(ka);I=new Uint32Array(ka);J=new Float32Array(ka);K=new Float64Array(ka);C=ka;B.buffer=C;e=G}return ia}return{"j":bf,"k":ga,"l":Pc,"m":wh,"n":vh,"o":Pc,"p":uh,"q":oe,"r":th,"s":sh,"t":Pc,"u":rh,"v":Oc,"w":qh,"x":ph,"y":hb,"z":oh,"A":nh,"B":mh,"C":lh,"D":kh,"E":Ja,"F":jh,"G":ne,"H":gb,"I":ih,"J":hh,"K":cc,"L":gh,"M":ne,"N":gb,"O":cc,"P":fh,"Q":le,"R":Oc,"S":cc,"T":eh,"U":dh,"V":le,"W":Oc,"X":cc,"Y":ch,"Z":bh,"_":oe,"$":ah,"aa":$g,"ba":_g,"ca":qb,"da":Zg,"ea":Nc,"fa":pb,"ga":qb,"ha":Yg,"ia":ke,"ja":pb,"ka":qb,"la":Xg,"ma":ke,"na":pb,"oa":qb,"pa":Wg,"qa":je,"ra":pb,"sa":qb,"ta":Ug,"ua":je,"va":pb,"wa":qb,"xa":ie,"ya":Nc,"za":pb,"Aa":qb,"Ba":ie,"Ca":Nc,"Da":pb,"Ea":Tg,"Fa":Sg,"Ga":Rg,"Ha":Qg,"Ia":Pg,"Ja":Og,"Ka":Ng,"La":Mg,"Ma":Lg,"Na":Kg,"Oa":Jg,"Pa":Ig,"Qa":Hg,"Ra":Gg,"Sa":Fg,"Ta":Eg,"Ua":Dg,"Va":Cg,"Wa":Bg,"Xa":Ag,"Ya":zg,"Za":yg,"_a":xg,"$a":wg,"ab":vg,"bb":ge,"cb":ug,"db":tg,"eb":sg,"fb":rg,"gb":ge,"hb":qg,"ib":pg,"jb":og,"kb":ng,"lb":mg,"mb":lg,"nb":kg,"ob":bc,"pb":Rb,"qb":ac,"rb":Kc,"sb":bc,"tb":Rb,"ub":ac,"vb":Kc,"wb":ee,"xb":de,"yb":bc,"zb":Rb,"Ab":ac,"Bb":Rb,"Cb":ac,"Db":Kc,"Eb":ee,"Fb":de,"Gb":ig,"Hb":hg,"Ib":gg,"Jb":fg,"Kb":eg,"Lb":dg,"Mb":cg,"Nb":bg,"Ob":Rb,"Pb":bc,"Qb":ag,"Rb":$f,"Sb":_f,"Tb":Zf,"Ub":Id,"Vb":ra,"Wb":Df}}return oa(qa)}
// EMSCRIPTEN_END_ASM
)(asmLibraryArg)},instantiate:function(binary,info){return{then:function(ok){var module=new WebAssembly.Module(binary);ok({"instance":new WebAssembly.Instance(module)})}}},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)}}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,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 u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);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_decoder.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)}else{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":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["k"];addOnInit(Module["asm"]["j"]);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);return false}}instantiateAsync().catch(readyPromiseReject);return{}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func=="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___cxa_allocate_exception(size){return _malloc(size+24)+24}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){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);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}var SYSCALLS={varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret}};function _fd_close(fd){return 52}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){return 70}var printCharBuffers=[null,[],[]];function printChar(stream,curr){var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j])}num+=len}HEAPU32[pnum>>2]=num;return 0}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob=="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i<input.length);return output};function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE=="boolean"&&ENVIRONMENT_IS_NODE){var buf=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 asmLibraryArg={"d":___cxa_allocate_exception,"c":___cxa_throw,"b":_abort,"i":_emscripten_memcpy_big,"g":_emscripten_resize_heap,"h":_fd_close,"f":_fd_seek,"e":_fd_write,"a":wasmMemory};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["j"]).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"]["l"]).apply(null,arguments)};var _emscripten_bind_DecoderBuffer_DecoderBuffer_0=Module["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"]=function(){return(_emscripten_bind_DecoderBuffer_DecoderBuffer_0=Module["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"]=Module["asm"]["m"]).apply(null,arguments)};var _emscripten_bind_DecoderBuffer_Init_2=Module["_emscripten_bind_DecoderBuffer_Init_2"]=function(){return(_emscripten_bind_DecoderBuffer_Init_2=Module["_emscripten_bind_DecoderBuffer_Init_2"]=Module["asm"]["n"]).apply(null,arguments)};var _emscripten_bind_DecoderBuffer___destroy___0=Module["_emscripten_bind_DecoderBuffer___destroy___0"]=function(){return(_emscripten_bind_DecoderBuffer___destroy___0=Module["_emscripten_bind_DecoderBuffer___destroy___0"]=Module["asm"]["o"]).apply(null,arguments)};var _emscripten_bind_AttributeTransformData_AttributeTransformData_0=Module["_emscripten_bind_AttributeTransformData_AttributeTransformData_0"]=function(){return(_emscripten_bind_AttributeTransformData_AttributeTransformData_0=Module["_emscripten_bind_AttributeTransformData_AttributeTransformData_0"]=Module["asm"]["p"]).apply(null,arguments)};var _emscripten_bind_AttributeTransformData_transform_type_0=Module["_emscripten_bind_AttributeTransformData_transform_type_0"]=function(){return(_emscripten_bind_AttributeTransformData_transform_type_0=Module["_emscripten_bind_AttributeTransformData_transform_type_0"]=Module["asm"]["q"]).apply(null,arguments)};var _emscripten_bind_AttributeTransformData___destroy___0=Module["_emscripten_bind_AttributeTransformData___destroy___0"]=function(){return(_emscripten_bind_AttributeTransformData___destroy___0=Module["_emscripten_bind_AttributeTransformData___destroy___0"]=Module["asm"]["r"]).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"]["s"]).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"]["t"]).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"]["u"]).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"]["v"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_GetAttributeTransformData_0=Module["_emscripten_bind_PointAttribute_GetAttributeTransformData_0"]=function(){return(_emscripten_bind_PointAttribute_GetAttributeTransformData_0=Module["_emscripten_bind_PointAttribute_GetAttributeTransformData_0"]=Module["asm"]["w"]).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"]["x"]).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"]["y"]).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"]["z"]).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"]["A"]).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"]["B"]).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"]["C"]).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"]["D"]).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"]["E"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=Module["_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=Module["_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"]=Module["asm"]["F"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"]=Module["asm"]["G"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=Module["_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=Module["_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"]=Module["asm"]["H"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_min_value_1=Module["_emscripten_bind_AttributeQuantizationTransform_min_value_1"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_min_value_1=Module["_emscripten_bind_AttributeQuantizationTransform_min_value_1"]=Module["asm"]["I"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_range_0=Module["_emscripten_bind_AttributeQuantizationTransform_range_0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_range_0=Module["_emscripten_bind_AttributeQuantizationTransform_range_0"]=Module["asm"]["J"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform___destroy___0=Module["_emscripten_bind_AttributeQuantizationTransform___destroy___0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform___destroy___0=Module["_emscripten_bind_AttributeQuantizationTransform___destroy___0"]=Module["asm"]["K"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=Module["_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"]=function(){return(_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=Module["_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"]=Module["asm"]["L"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"]=function(){return(_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"]=Module["asm"]["M"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=Module["_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"]=function(){return(_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=Module["_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"]=Module["asm"]["N"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform___destroy___0=Module["_emscripten_bind_AttributeOctahedronTransform___destroy___0"]=function(){return(_emscripten_bind_AttributeOctahedronTransform___destroy___0=Module["_emscripten_bind_AttributeOctahedronTransform___destroy___0"]=Module["asm"]["O"]).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"]["P"]).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"]["Q"]).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"]["R"]).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"]["S"]).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"]["T"]).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"]["U"]).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"]["V"]).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"]["W"]).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"]["X"]).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"]["Y"]).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"]["Z"]).apply(null,arguments)};var _emscripten_bind_Status_code_0=Module["_emscripten_bind_Status_code_0"]=function(){return(_emscripten_bind_Status_code_0=Module["_emscripten_bind_Status_code_0"]=Module["asm"]["_"]).apply(null,arguments)};var _emscripten_bind_Status_ok_0=Module["_emscripten_bind_Status_ok_0"]=function(){return(_emscripten_bind_Status_ok_0=Module["_emscripten_bind_Status_ok_0"]=Module["asm"]["$"]).apply(null,arguments)};var _emscripten_bind_Status_error_msg_0=Module["_emscripten_bind_Status_error_msg_0"]=function(){return(_emscripten_bind_Status_error_msg_0=Module["_emscripten_bind_Status_error_msg_0"]=Module["asm"]["aa"]).apply(null,arguments)};var _emscripten_bind_Status___destroy___0=Module["_emscripten_bind_Status___destroy___0"]=function(){return(_emscripten_bind_Status___destroy___0=Module["_emscripten_bind_Status___destroy___0"]=Module["asm"]["ba"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=Module["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]=function(){return(_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=Module["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]=Module["asm"]["ca"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array_GetValue_1=Module["_emscripten_bind_DracoFloat32Array_GetValue_1"]=function(){return(_emscripten_bind_DracoFloat32Array_GetValue_1=Module["_emscripten_bind_DracoFloat32Array_GetValue_1"]=Module["asm"]["da"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array_size_0=Module["_emscripten_bind_DracoFloat32Array_size_0"]=function(){return(_emscripten_bind_DracoFloat32Array_size_0=Module["_emscripten_bind_DracoFloat32Array_size_0"]=Module["asm"]["ea"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array___destroy___0=Module["_emscripten_bind_DracoFloat32Array___destroy___0"]=function(){return(_emscripten_bind_DracoFloat32Array___destroy___0=Module["_emscripten_bind_DracoFloat32Array___destroy___0"]=Module["asm"]["fa"]).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"]["ga"]).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"]["ha"]).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"]["ia"]).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"]["ja"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=Module["_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0"]=function(){return(_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=Module["_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0"]=Module["asm"]["ka"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array_GetValue_1=Module["_emscripten_bind_DracoUInt8Array_GetValue_1"]=function(){return(_emscripten_bind_DracoUInt8Array_GetValue_1=Module["_emscripten_bind_DracoUInt8Array_GetValue_1"]=Module["asm"]["la"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array_size_0=Module["_emscripten_bind_DracoUInt8Array_size_0"]=function(){return(_emscripten_bind_DracoUInt8Array_size_0=Module["_emscripten_bind_DracoUInt8Array_size_0"]=Module["asm"]["ma"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array___destroy___0=Module["_emscripten_bind_DracoUInt8Array___destroy___0"]=function(){return(_emscripten_bind_DracoUInt8Array___destroy___0=Module["_emscripten_bind_DracoUInt8Array___destroy___0"]=Module["asm"]["na"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array_DracoInt16Array_0=Module["_emscripten_bind_DracoInt16Array_DracoInt16Array_0"]=function(){return(_emscripten_bind_DracoInt16Array_DracoInt16Array_0=Module["_emscripten_bind_DracoInt16Array_DracoInt16Array_0"]=Module["asm"]["oa"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array_GetValue_1=Module["_emscripten_bind_DracoInt16Array_GetValue_1"]=function(){return(_emscripten_bind_DracoInt16Array_GetValue_1=Module["_emscripten_bind_DracoInt16Array_GetValue_1"]=Module["asm"]["pa"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array_size_0=Module["_emscripten_bind_DracoInt16Array_size_0"]=function(){return(_emscripten_bind_DracoInt16Array_size_0=Module["_emscripten_bind_DracoInt16Array_size_0"]=Module["asm"]["qa"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array___destroy___0=Module["_emscripten_bind_DracoInt16Array___destroy___0"]=function(){return(_emscripten_bind_DracoInt16Array___destroy___0=Module["_emscripten_bind_DracoInt16Array___destroy___0"]=Module["asm"]["ra"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=Module["_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0"]=function(){return(_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=Module["_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0"]=Module["asm"]["sa"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array_GetValue_1=Module["_emscripten_bind_DracoUInt16Array_GetValue_1"]=function(){return(_emscripten_bind_DracoUInt16Array_GetValue_1=Module["_emscripten_bind_DracoUInt16Array_GetValue_1"]=Module["asm"]["ta"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array_size_0=Module["_emscripten_bind_DracoUInt16Array_size_0"]=function(){return(_emscripten_bind_DracoUInt16Array_size_0=Module["_emscripten_bind_DracoUInt16Array_size_0"]=Module["asm"]["ua"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array___destroy___0=Module["_emscripten_bind_DracoUInt16Array___destroy___0"]=function(){return(_emscripten_bind_DracoUInt16Array___destroy___0=Module["_emscripten_bind_DracoUInt16Array___destroy___0"]=Module["asm"]["va"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array_DracoInt32Array_0=Module["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"]=function(){return(_emscripten_bind_DracoInt32Array_DracoInt32Array_0=Module["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"]=Module["asm"]["wa"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array_GetValue_1=Module["_emscripten_bind_DracoInt32Array_GetValue_1"]=function(){return(_emscripten_bind_DracoInt32Array_GetValue_1=Module["_emscripten_bind_DracoInt32Array_GetValue_1"]=Module["asm"]["xa"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array_size_0=Module["_emscripten_bind_DracoInt32Array_size_0"]=function(){return(_emscripten_bind_DracoInt32Array_size_0=Module["_emscripten_bind_DracoInt32Array_size_0"]=Module["asm"]["ya"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array___destroy___0=Module["_emscripten_bind_DracoInt32Array___destroy___0"]=function(){return(_emscripten_bind_DracoInt32Array___destroy___0=Module["_emscripten_bind_DracoInt32Array___destroy___0"]=Module["asm"]["za"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=Module["_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0"]=function(){return(_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=Module["_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0"]=Module["asm"]["Aa"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array_GetValue_1=Module["_emscripten_bind_DracoUInt32Array_GetValue_1"]=function(){return(_emscripten_bind_DracoUInt32Array_GetValue_1=Module["_emscripten_bind_DracoUInt32Array_GetValue_1"]=Module["asm"]["Ba"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array_size_0=Module["_emscripten_bind_DracoUInt32Array_size_0"]=function(){return(_emscripten_bind_DracoUInt32Array_size_0=Module["_emscripten_bind_DracoUInt32Array_size_0"]=Module["asm"]["Ca"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array___destroy___0=Module["_emscripten_bind_DracoUInt32Array___destroy___0"]=function(){return(_emscripten_bind_DracoUInt32Array___destroy___0=Module["_emscripten_bind_DracoUInt32Array___destroy___0"]=Module["asm"]["Da"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_MetadataQuerier_0=Module["_emscripten_bind_MetadataQuerier_MetadataQuerier_0"]=function(){return(_emscripten_bind_MetadataQuerier_MetadataQuerier_0=Module["_emscripten_bind_MetadataQuerier_MetadataQuerier_0"]=Module["asm"]["Ea"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_HasEntry_2=Module["_emscripten_bind_MetadataQuerier_HasEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_HasEntry_2=Module["_emscripten_bind_MetadataQuerier_HasEntry_2"]=Module["asm"]["Fa"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetIntEntry_2=Module["_emscripten_bind_MetadataQuerier_GetIntEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetIntEntry_2=Module["_emscripten_bind_MetadataQuerier_GetIntEntry_2"]=Module["asm"]["Ga"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetIntEntryArray_3=Module["_emscripten_bind_MetadataQuerier_GetIntEntryArray_3"]=function(){return(_emscripten_bind_MetadataQuerier_GetIntEntryArray_3=Module["_emscripten_bind_MetadataQuerier_GetIntEntryArray_3"]=Module["asm"]["Ha"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetDoubleEntry_2=Module["_emscripten_bind_MetadataQuerier_GetDoubleEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetDoubleEntry_2=Module["_emscripten_bind_MetadataQuerier_GetDoubleEntry_2"]=Module["asm"]["Ia"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetStringEntry_2=Module["_emscripten_bind_MetadataQuerier_GetStringEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetStringEntry_2=Module["_emscripten_bind_MetadataQuerier_GetStringEntry_2"]=Module["asm"]["Ja"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_NumEntries_1=Module["_emscripten_bind_MetadataQuerier_NumEntries_1"]=function(){return(_emscripten_bind_MetadataQuerier_NumEntries_1=Module["_emscripten_bind_MetadataQuerier_NumEntries_1"]=Module["asm"]["Ka"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetEntryName_2=Module["_emscripten_bind_MetadataQuerier_GetEntryName_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetEntryName_2=Module["_emscripten_bind_MetadataQuerier_GetEntryName_2"]=Module["asm"]["La"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier___destroy___0=Module["_emscripten_bind_MetadataQuerier___destroy___0"]=function(){return(_emscripten_bind_MetadataQuerier___destroy___0=Module["_emscripten_bind_MetadataQuerier___destroy___0"]=Module["asm"]["Ma"]).apply(null,arguments)};var _emscripten_bind_Decoder_Decoder_0=Module["_emscripten_bind_Decoder_Decoder_0"]=function(){return(_emscripten_bind_Decoder_Decoder_0=Module["_emscripten_bind_Decoder_Decoder_0"]=Module["asm"]["Na"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeArrayToPointCloud_3=Module["_emscripten_bind_Decoder_DecodeArrayToPointCloud_3"]=function(){return(_emscripten_bind_Decoder_DecodeArrayToPointCloud_3=Module["_emscripten_bind_Decoder_DecodeArrayToPointCloud_3"]=Module["asm"]["Oa"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeArrayToMesh_3=Module["_emscripten_bind_Decoder_DecodeArrayToMesh_3"]=function(){return(_emscripten_bind_Decoder_DecodeArrayToMesh_3=Module["_emscripten_bind_Decoder_DecodeArrayToMesh_3"]=Module["asm"]["Pa"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeId_2=Module["_emscripten_bind_Decoder_GetAttributeId_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeId_2=Module["_emscripten_bind_Decoder_GetAttributeId_2"]=Module["asm"]["Qa"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeIdByName_2=Module["_emscripten_bind_Decoder_GetAttributeIdByName_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeIdByName_2=Module["_emscripten_bind_Decoder_GetAttributeIdByName_2"]=Module["asm"]["Ra"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=Module["_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=Module["_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"]=Module["asm"]["Sa"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttribute_2=Module["_emscripten_bind_Decoder_GetAttribute_2"]=function(){return(_emscripten_bind_Decoder_GetAttribute_2=Module["_emscripten_bind_Decoder_GetAttribute_2"]=Module["asm"]["Ta"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeByUniqueId_2=Module["_emscripten_bind_Decoder_GetAttributeByUniqueId_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeByUniqueId_2=Module["_emscripten_bind_Decoder_GetAttributeByUniqueId_2"]=Module["asm"]["Ua"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetMetadata_1=Module["_emscripten_bind_Decoder_GetMetadata_1"]=function(){return(_emscripten_bind_Decoder_GetMetadata_1=Module["_emscripten_bind_Decoder_GetMetadata_1"]=Module["asm"]["Va"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeMetadata_2=Module["_emscripten_bind_Decoder_GetAttributeMetadata_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeMetadata_2=Module["_emscripten_bind_Decoder_GetAttributeMetadata_2"]=Module["asm"]["Wa"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetFaceFromMesh_3=Module["_emscripten_bind_Decoder_GetFaceFromMesh_3"]=function(){return(_emscripten_bind_Decoder_GetFaceFromMesh_3=Module["_emscripten_bind_Decoder_GetFaceFromMesh_3"]=Module["asm"]["Xa"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=Module["_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"]=function(){return(_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=Module["_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"]=Module["asm"]["Ya"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetTrianglesUInt16Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt16Array_3"]=function(){return(_emscripten_bind_Decoder_GetTrianglesUInt16Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt16Array_3"]=Module["asm"]["Za"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetTrianglesUInt32Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt32Array_3"]=function(){return(_emscripten_bind_Decoder_GetTrianglesUInt32Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt32Array_3"]=Module["asm"]["_a"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeFloat_3=Module["_emscripten_bind_Decoder_GetAttributeFloat_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeFloat_3=Module["_emscripten_bind_Decoder_GetAttributeFloat_3"]=Module["asm"]["$a"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"]=Module["asm"]["ab"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"]=Module["asm"]["bb"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3"]=Module["asm"]["cb"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3"]=Module["asm"]["db"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3"]=Module["asm"]["eb"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3"]=Module["asm"]["fb"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3"]=Module["asm"]["gb"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3"]=Module["asm"]["hb"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=Module["_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5"]=function(){return(_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=Module["_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5"]=Module["asm"]["ib"]).apply(null,arguments)};var _emscripten_bind_Decoder_SkipAttributeTransform_1=Module["_emscripten_bind_Decoder_SkipAttributeTransform_1"]=function(){return(_emscripten_bind_Decoder_SkipAttributeTransform_1=Module["_emscripten_bind_Decoder_SkipAttributeTransform_1"]=Module["asm"]["jb"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=Module["_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1"]=function(){return(_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=Module["_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1"]=Module["asm"]["kb"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeBufferToPointCloud_2=Module["_emscripten_bind_Decoder_DecodeBufferToPointCloud_2"]=function(){return(_emscripten_bind_Decoder_DecodeBufferToPointCloud_2=Module["_emscripten_bind_Decoder_DecodeBufferToPointCloud_2"]=Module["asm"]["lb"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeBufferToMesh_2=Module["_emscripten_bind_Decoder_DecodeBufferToMesh_2"]=function(){return(_emscripten_bind_Decoder_DecodeBufferToMesh_2=Module["_emscripten_bind_Decoder_DecodeBufferToMesh_2"]=Module["asm"]["mb"]).apply(null,arguments)};var _emscripten_bind_Decoder___destroy___0=Module["_emscripten_bind_Decoder___destroy___0"]=function(){return(_emscripten_bind_Decoder___destroy___0=Module["_emscripten_bind_Decoder___destroy___0"]=Module["asm"]["nb"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"]=Module["asm"]["ob"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"]=Module["asm"]["pb"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"]=Module["asm"]["qb"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"]=Module["asm"]["rb"]).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"]["sb"]).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"]["tb"]).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"]["ub"]).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"]["vb"]).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"]["wb"]).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"]["xb"]).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"]["yb"]).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"]["zb"]).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"]["Ab"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INVALID=Module["_emscripten_enum_draco_DataType_DT_INVALID"]=function(){return(_emscripten_enum_draco_DataType_DT_INVALID=Module["_emscripten_enum_draco_DataType_DT_INVALID"]=Module["asm"]["Bb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT8=Module["_emscripten_enum_draco_DataType_DT_INT8"]=function(){return(_emscripten_enum_draco_DataType_DT_INT8=Module["_emscripten_enum_draco_DataType_DT_INT8"]=Module["asm"]["Cb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT8=Module["_emscripten_enum_draco_DataType_DT_UINT8"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT8=Module["_emscripten_enum_draco_DataType_DT_UINT8"]=Module["asm"]["Db"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT16=Module["_emscripten_enum_draco_DataType_DT_INT16"]=function(){return(_emscripten_enum_draco_DataType_DT_INT16=Module["_emscripten_enum_draco_DataType_DT_INT16"]=Module["asm"]["Eb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT16=Module["_emscripten_enum_draco_DataType_DT_UINT16"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT16=Module["_emscripten_enum_draco_DataType_DT_UINT16"]=Module["asm"]["Fb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT32=Module["_emscripten_enum_draco_DataType_DT_INT32"]=function(){return(_emscripten_enum_draco_DataType_DT_INT32=Module["_emscripten_enum_draco_DataType_DT_INT32"]=Module["asm"]["Gb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT32=Module["_emscripten_enum_draco_DataType_DT_UINT32"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT32=Module["_emscripten_enum_draco_DataType_DT_UINT32"]=Module["asm"]["Hb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT64=Module["_emscripten_enum_draco_DataType_DT_INT64"]=function(){return(_emscripten_enum_draco_DataType_DT_INT64=Module["_emscripten_enum_draco_DataType_DT_INT64"]=Module["asm"]["Ib"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT64=Module["_emscripten_enum_draco_DataType_DT_UINT64"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT64=Module["_emscripten_enum_draco_DataType_DT_UINT64"]=Module["asm"]["Jb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_FLOAT32=Module["_emscripten_enum_draco_DataType_DT_FLOAT32"]=function(){return(_emscripten_enum_draco_DataType_DT_FLOAT32=Module["_emscripten_enum_draco_DataType_DT_FLOAT32"]=Module["asm"]["Kb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_FLOAT64=Module["_emscripten_enum_draco_DataType_DT_FLOAT64"]=function(){return(_emscripten_enum_draco_DataType_DT_FLOAT64=Module["_emscripten_enum_draco_DataType_DT_FLOAT64"]=Module["asm"]["Lb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_BOOL=Module["_emscripten_enum_draco_DataType_DT_BOOL"]=function(){return(_emscripten_enum_draco_DataType_DT_BOOL=Module["_emscripten_enum_draco_DataType_DT_BOOL"]=Module["asm"]["Mb"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_TYPES_COUNT=Module["_emscripten_enum_draco_DataType_DT_TYPES_COUNT"]=function(){return(_emscripten_enum_draco_DataType_DT_TYPES_COUNT=Module["_emscripten_enum_draco_DataType_DT_TYPES_COUNT"]=Module["asm"]["Nb"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_OK=Module["_emscripten_enum_draco_StatusCode_OK"]=function(){return(_emscripten_enum_draco_StatusCode_OK=Module["_emscripten_enum_draco_StatusCode_OK"]=Module["asm"]["Ob"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_DRACO_ERROR=Module["_emscripten_enum_draco_StatusCode_DRACO_ERROR"]=function(){return(_emscripten_enum_draco_StatusCode_DRACO_ERROR=Module["_emscripten_enum_draco_StatusCode_DRACO_ERROR"]=Module["asm"]["Pb"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_IO_ERROR=Module["_emscripten_enum_draco_StatusCode_IO_ERROR"]=function(){return(_emscripten_enum_draco_StatusCode_IO_ERROR=Module["_emscripten_enum_draco_StatusCode_IO_ERROR"]=Module["asm"]["Qb"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_INVALID_PARAMETER=Module["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]=function(){return(_emscripten_enum_draco_StatusCode_INVALID_PARAMETER=Module["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]=Module["asm"]["Rb"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=Module["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]=function(){return(_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=Module["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]=Module["asm"]["Sb"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=Module["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]=function(){return(_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=Module["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]=Module["asm"]["Tb"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["Ub"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["Vb"]).apply(null,arguments)};var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=function(){return(___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=Module["asm"]["Wb"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;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()}}Module["run"]=run;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 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 DecoderBuffer(){this.ptr=_emscripten_bind_DecoderBuffer_DecoderBuffer_0();getCache(DecoderBuffer)[this.ptr]=this}DecoderBuffer.prototype=Object.create(WrapperObject.prototype);DecoderBuffer.prototype.constructor=DecoderBuffer;DecoderBuffer.prototype.__class__=DecoderBuffer;DecoderBuffer.__cache__={};Module["DecoderBuffer"]=DecoderBuffer;DecoderBuffer.prototype["Init"]=DecoderBuffer.prototype.Init=function(data,data_size){var self=this.ptr;ensureCache.prepare();if(typeof data=="object"){data=ensureInt8(data)}if(data_size&&typeof data_size==="object")data_size=data_size.ptr;_emscripten_bind_DecoderBuffer_Init_2(self,data,data_size)};DecoderBuffer.prototype["__destroy__"]=DecoderBuffer.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DecoderBuffer___destroy___0(self)};function AttributeTransformData(){this.ptr=_emscripten_bind_AttributeTransformData_AttributeTransformData_0();getCache(AttributeTransformData)[this.ptr]=this}AttributeTransformData.prototype=Object.create(WrapperObject.prototype);AttributeTransformData.prototype.constructor=AttributeTransformData;AttributeTransformData.prototype.__class__=AttributeTransformData;AttributeTransformData.__cache__={};Module["AttributeTransformData"]=AttributeTransformData;AttributeTransformData.prototype["transform_type"]=AttributeTransformData.prototype.transform_type=function(){var self=this.ptr;return _emscripten_bind_AttributeTransformData_transform_type_0(self)};AttributeTransformData.prototype["__destroy__"]=AttributeTransformData.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AttributeTransformData___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["GetAttributeTransformData"]=PointAttribute.prototype.GetAttributeTransformData=function(){var self=this.ptr;return wrapPointer(_emscripten_bind_PointAttribute_GetAttributeTransformData_0(self),AttributeTransformData)};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 AttributeQuantizationTransform(){this.ptr=_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0();getCache(AttributeQuantizationTransform)[this.ptr]=this}AttributeQuantizationTransform.prototype=Object.create(WrapperObject.prototype);AttributeQuantizationTransform.prototype.constructor=AttributeQuantizationTransform;AttributeQuantizationTransform.prototype.__class__=AttributeQuantizationTransform;AttributeQuantizationTransform.__cache__={};Module["AttributeQuantizationTransform"]=AttributeQuantizationTransform;AttributeQuantizationTransform.prototype["InitFromAttribute"]=AttributeQuantizationTransform.prototype.InitFromAttribute=function(att){var self=this.ptr;if(att&&typeof att==="object")att=att.ptr;return!!_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1(self,att)};AttributeQuantizationTransform.prototype["quantization_bits"]=AttributeQuantizationTransform.prototype.quantization_bits=function(){var self=this.ptr;return _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0(self)};AttributeQuantizationTransform.prototype["min_value"]=AttributeQuantizationTransform.prototype.min_value=function(axis){var self=this.ptr;if(axis&&typeof axis==="object")axis=axis.ptr;return _emscripten_bind_AttributeQuantizationTransform_min_value_1(self,axis)};AttributeQuantizationTransform.prototype["range"]=AttributeQuantizationTransform.prototype.range=function(){var self=this.ptr;return _emscripten_bind_AttributeQuantizationTransform_range_0(self)};AttributeQuantizationTransform.prototype["__destroy__"]=AttributeQuantizationTransform.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AttributeQuantizationTransform___destroy___0(self)};function AttributeOctahedronTransform(){this.ptr=_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0();getCache(AttributeOctahedronTransform)[this.ptr]=this}AttributeOctahedronTransform.prototype=Object.create(WrapperObject.prototype);AttributeOctahedronTransform.prototype.constructor=AttributeOctahedronTransform;AttributeOctahedronTransform.prototype.__class__=AttributeOctahedronTransform;AttributeOctahedronTransform.__cache__={};Module["AttributeOctahedronTransform"]=AttributeOctahedronTransform;AttributeOctahedronTransform.prototype["InitFromAttribute"]=AttributeOctahedronTransform.prototype.InitFromAttribute=function(att){var self=this.ptr;if(att&&typeof att==="object")att=att.ptr;return!!_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1(self,att)};AttributeOctahedronTransform.prototype["quantization_bits"]=AttributeOctahedronTransform.prototype.quantization_bits=function(){var self=this.ptr;return _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0(self)};AttributeOctahedronTransform.prototype["__destroy__"]=AttributeOctahedronTransform.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AttributeOctahedronTransform___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["__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 Status(){throw"cannot construct a Status, no constructor in IDL"}Status.prototype=Object.create(WrapperObject.prototype);Status.prototype.constructor=Status;Status.prototype.__class__=Status;Status.__cache__={};Module["Status"]=Status;Status.prototype["code"]=Status.prototype.code=function(){var self=this.ptr;return _emscripten_bind_Status_code_0(self)};Status.prototype["ok"]=Status.prototype.ok=function(){var self=this.ptr;return!!_emscripten_bind_Status_ok_0(self)};Status.prototype["error_msg"]=Status.prototype.error_msg=function(){var self=this.ptr;return UTF8ToString(_emscripten_bind_Status_error_msg_0(self))};Status.prototype["__destroy__"]=Status.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Status___destroy___0(self)};function DracoFloat32Array(){this.ptr=_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0();getCache(DracoFloat32Array)[this.ptr]=this}DracoFloat32Array.prototype=Object.create(WrapperObject.prototype);DracoFloat32Array.prototype.constructor=DracoFloat32Array;DracoFloat32Array.prototype.__class__=DracoFloat32Array;DracoFloat32Array.__cache__={};Module["DracoFloat32Array"]=DracoFloat32Array;DracoFloat32Array.prototype["GetValue"]=DracoFloat32Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoFloat32Array_GetValue_1(self,index)};DracoFloat32Array.prototype["size"]=DracoFloat32Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoFloat32Array_size_0(self)};DracoFloat32Array.prototype["__destroy__"]=DracoFloat32Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoFloat32Array___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 DracoUInt8Array(){this.ptr=_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0();getCache(DracoUInt8Array)[this.ptr]=this}DracoUInt8Array.prototype=Object.create(WrapperObject.prototype);DracoUInt8Array.prototype.constructor=DracoUInt8Array;DracoUInt8Array.prototype.__class__=DracoUInt8Array;DracoUInt8Array.__cache__={};Module["DracoUInt8Array"]=DracoUInt8Array;DracoUInt8Array.prototype["GetValue"]=DracoUInt8Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoUInt8Array_GetValue_1(self,index)};DracoUInt8Array.prototype["size"]=DracoUInt8Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoUInt8Array_size_0(self)};DracoUInt8Array.prototype["__destroy__"]=DracoUInt8Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoUInt8Array___destroy___0(self)};function DracoInt16Array(){this.ptr=_emscripten_bind_DracoInt16Array_DracoInt16Array_0();getCache(DracoInt16Array)[this.ptr]=this}DracoInt16Array.prototype=Object.create(WrapperObject.prototype);DracoInt16Array.prototype.constructor=DracoInt16Array;DracoInt16Array.prototype.__class__=DracoInt16Array;DracoInt16Array.__cache__={};Module["DracoInt16Array"]=DracoInt16Array;DracoInt16Array.prototype["GetValue"]=DracoInt16Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoInt16Array_GetValue_1(self,index)};DracoInt16Array.prototype["size"]=DracoInt16Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoInt16Array_size_0(self)};DracoInt16Array.prototype["__destroy__"]=DracoInt16Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoInt16Array___destroy___0(self)};function DracoUInt16Array(){this.ptr=_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0();getCache(DracoUInt16Array)[this.ptr]=this}DracoUInt16Array.prototype=Object.create(WrapperObject.prototype);DracoUInt16Array.prototype.constructor=DracoUInt16Array;DracoUInt16Array.prototype.__class__=DracoUInt16Array;DracoUInt16Array.__cache__={};Module["DracoUInt16Array"]=DracoUInt16Array;DracoUInt16Array.prototype["GetValue"]=DracoUInt16Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoUInt16Array_GetValue_1(self,index)};DracoUInt16Array.prototype["size"]=DracoUInt16Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoUInt16Array_size_0(self)};DracoUInt16Array.prototype["__destroy__"]=DracoUInt16Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoUInt16Array___destroy___0(self)};function DracoInt32Array(){this.ptr=_emscripten_bind_DracoInt32Array_DracoInt32Array_0();getCache(DracoInt32Array)[this.ptr]=this}DracoInt32Array.prototype=Object.create(WrapperObject.prototype);DracoInt32Array.prototype.constructor=DracoInt32Array;DracoInt32Array.prototype.__class__=DracoInt32Array;DracoInt32Array.__cache__={};Module["DracoInt32Array"]=DracoInt32Array;DracoInt32Array.prototype["GetValue"]=DracoInt32Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoInt32Array_GetValue_1(self,index)};DracoInt32Array.prototype["size"]=DracoInt32Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoInt32Array_size_0(self)};DracoInt32Array.prototype["__destroy__"]=DracoInt32Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoInt32Array___destroy___0(self)};function DracoUInt32Array(){this.ptr=_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0();getCache(DracoUInt32Array)[this.ptr]=this}DracoUInt32Array.prototype=Object.create(WrapperObject.prototype);DracoUInt32Array.prototype.constructor=DracoUInt32Array;DracoUInt32Array.prototype.__class__=DracoUInt32Array;DracoUInt32Array.__cache__={};Module["DracoUInt32Array"]=DracoUInt32Array;DracoUInt32Array.prototype["GetValue"]=DracoUInt32Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoUInt32Array_GetValue_1(self,index)};DracoUInt32Array.prototype["size"]=DracoUInt32Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoUInt32Array_size_0(self)};DracoUInt32Array.prototype["__destroy__"]=DracoUInt32Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoUInt32Array___destroy___0(self)};function MetadataQuerier(){this.ptr=_emscripten_bind_MetadataQuerier_MetadataQuerier_0();getCache(MetadataQuerier)[this.ptr]=this}MetadataQuerier.prototype=Object.create(WrapperObject.prototype);MetadataQuerier.prototype.constructor=MetadataQuerier;MetadataQuerier.prototype.__class__=MetadataQuerier;MetadataQuerier.__cache__={};Module["MetadataQuerier"]=MetadataQuerier;MetadataQuerier.prototype["HasEntry"]=MetadataQuerier.prototype.HasEntry=function(metadata,entry_name){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);return!!_emscripten_bind_MetadataQuerier_HasEntry_2(self,metadata,entry_name)};MetadataQuerier.prototype["GetIntEntry"]=MetadataQuerier.prototype.GetIntEntry=function(metadata,entry_name){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);return _emscripten_bind_MetadataQuerier_GetIntEntry_2(self,metadata,entry_name)};MetadataQuerier.prototype["GetIntEntryArray"]=MetadataQuerier.prototype.GetIntEntryArray=function(metadata,entry_name,out_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(out_values&&typeof out_values==="object")out_values=out_values.ptr;_emscripten_bind_MetadataQuerier_GetIntEntryArray_3(self,metadata,entry_name,out_values)};MetadataQuerier.prototype["GetDoubleEntry"]=MetadataQuerier.prototype.GetDoubleEntry=function(metadata,entry_name){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);return _emscripten_bind_MetadataQuerier_GetDoubleEntry_2(self,metadata,entry_name)};MetadataQuerier.prototype["GetStringEntry"]=MetadataQuerier.prototype.GetStringEntry=function(metadata,entry_name){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);return UTF8ToString(_emscripten_bind_MetadataQuerier_GetStringEntry_2(self,metadata,entry_name))};MetadataQuerier.prototype["NumEntries"]=MetadataQuerier.prototype.NumEntries=function(metadata){var self=this.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return _emscripten_bind_MetadataQuerier_NumEntries_1(self,metadata)};MetadataQuerier.prototype["GetEntryName"]=MetadataQuerier.prototype.GetEntryName=function(metadata,entry_id){var self=this.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_id&&typeof entry_id==="object")entry_id=entry_id.ptr;return UTF8ToString(_emscripten_bind_MetadataQuerier_GetEntryName_2(self,metadata,entry_id))};MetadataQuerier.prototype["__destroy__"]=MetadataQuerier.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_MetadataQuerier___destroy___0(self)};function Decoder(){this.ptr=_emscripten_bind_Decoder_Decoder_0();getCache(Decoder)[this.ptr]=this}Decoder.prototype=Object.create(WrapperObject.prototype);Decoder.prototype.constructor=Decoder;Decoder.prototype.__class__=Decoder;Decoder.__cache__={};Module["Decoder"]=Decoder;Decoder.prototype["DecodeArrayToPointCloud"]=Decoder.prototype.DecodeArrayToPointCloud=function(data,data_size,out_point_cloud){var self=this.ptr;ensureCache.prepare();if(typeof data=="object"){data=ensureInt8(data)}if(data_size&&typeof data_size==="object")data_size=data_size.ptr;if(out_point_cloud&&typeof out_point_cloud==="object")out_point_cloud=out_point_cloud.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeArrayToPointCloud_3(self,data,data_size,out_point_cloud),Status)};Decoder.prototype["DecodeArrayToMesh"]=Decoder.prototype.DecodeArrayToMesh=function(data,data_size,out_mesh){var self=this.ptr;ensureCache.prepare();if(typeof data=="object"){data=ensureInt8(data)}if(data_size&&typeof data_size==="object")data_size=data_size.ptr;if(out_mesh&&typeof out_mesh==="object")out_mesh=out_mesh.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeArrayToMesh_3(self,data,data_size,out_mesh),Status)};Decoder.prototype["GetAttributeId"]=Decoder.prototype.GetAttributeId=function(pc,type){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;return _emscripten_bind_Decoder_GetAttributeId_2(self,pc,type)};Decoder.prototype["GetAttributeIdByName"]=Decoder.prototype.GetAttributeIdByName=function(pc,name){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(name&&typeof name==="object")name=name.ptr;else name=ensureString(name);return _emscripten_bind_Decoder_GetAttributeIdByName_2(self,pc,name)};Decoder.prototype["GetAttributeIdByMetadataEntry"]=Decoder.prototype.GetAttributeIdByMetadataEntry=function(pc,name,value){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(name&&typeof name==="object")name=name.ptr;else name=ensureString(name);if(value&&typeof value==="object")value=value.ptr;else value=ensureString(value);return _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3(self,pc,name,value)};Decoder.prototype["GetAttribute"]=Decoder.prototype.GetAttribute=function(pc,att_id){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(att_id&&typeof att_id==="object")att_id=att_id.ptr;return wrapPointer(_emscripten_bind_Decoder_GetAttribute_2(self,pc,att_id),PointAttribute)};Decoder.prototype["GetAttributeByUniqueId"]=Decoder.prototype.GetAttributeByUniqueId=function(pc,unique_id){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(unique_id&&typeof unique_id==="object")unique_id=unique_id.ptr;return wrapPointer(_emscripten_bind_Decoder_GetAttributeByUniqueId_2(self,pc,unique_id),PointAttribute)};Decoder.prototype["GetMetadata"]=Decoder.prototype.GetMetadata=function(pc){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;return wrapPointer(_emscripten_bind_Decoder_GetMetadata_1(self,pc),Metadata)};Decoder.prototype["GetAttributeMetadata"]=Decoder.prototype.GetAttributeMetadata=function(pc,att_id){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(att_id&&typeof att_id==="object")att_id=att_id.ptr;return wrapPointer(_emscripten_bind_Decoder_GetAttributeMetadata_2(self,pc,att_id),Metadata)};Decoder.prototype["GetFaceFromMesh"]=Decoder.prototype.GetFaceFromMesh=function(m,face_id,out_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(face_id&&typeof face_id==="object")face_id=face_id.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetFaceFromMesh_3(self,m,face_id,out_values)};Decoder.prototype["GetTriangleStripsFromMesh"]=Decoder.prototype.GetTriangleStripsFromMesh=function(m,strip_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(strip_values&&typeof strip_values==="object")strip_values=strip_values.ptr;return _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2(self,m,strip_values)};Decoder.prototype["GetTrianglesUInt16Array"]=Decoder.prototype.GetTrianglesUInt16Array=function(m,out_size,out_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(out_size&&typeof out_size==="object")out_size=out_size.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetTrianglesUInt16Array_3(self,m,out_size,out_values)};Decoder.prototype["GetTrianglesUInt32Array"]=Decoder.prototype.GetTrianglesUInt32Array=function(m,out_size,out_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(out_size&&typeof out_size==="object")out_size=out_size.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetTrianglesUInt32Array_3(self,m,out_size,out_values)};Decoder.prototype["GetAttributeFloat"]=Decoder.prototype.GetAttributeFloat=function(pa,att_index,out_values){var self=this.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(att_index&&typeof att_index==="object")att_index=att_index.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeFloat_3(self,pa,att_index,out_values)};Decoder.prototype["GetAttributeFloatForAllPoints"]=Decoder.prototype.GetAttributeFloatForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeIntForAllPoints"]=Decoder.prototype.GetAttributeIntForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeInt8ForAllPoints"]=Decoder.prototype.GetAttributeInt8ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeUInt8ForAllPoints"]=Decoder.prototype.GetAttributeUInt8ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeInt16ForAllPoints"]=Decoder.prototype.GetAttributeInt16ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeUInt16ForAllPoints"]=Decoder.prototype.GetAttributeUInt16ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeInt32ForAllPoints"]=Decoder.prototype.GetAttributeInt32ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeUInt32ForAllPoints"]=Decoder.prototype.GetAttributeUInt32ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeDataArrayForAllPoints"]=Decoder.prototype.GetAttributeDataArrayForAllPoints=function(pc,pa,data_type,out_size,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(data_type&&typeof data_type==="object")data_type=data_type.ptr;if(out_size&&typeof out_size==="object")out_size=out_size.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5(self,pc,pa,data_type,out_size,out_values)};Decoder.prototype["SkipAttributeTransform"]=Decoder.prototype.SkipAttributeTransform=function(att_type){var self=this.ptr;if(att_type&&typeof att_type==="object")att_type=att_type.ptr;_emscripten_bind_Decoder_SkipAttributeTransform_1(self,att_type)};Decoder.prototype["GetEncodedGeometryType_Deprecated"]=Decoder.prototype.GetEncodedGeometryType_Deprecated=function(in_buffer){var self=this.ptr;if(in_buffer&&typeof in_buffer==="object")in_buffer=in_buffer.ptr;return _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1(self,in_buffer)};Decoder.prototype["DecodeBufferToPointCloud"]=Decoder.prototype.DecodeBufferToPointCloud=function(in_buffer,out_point_cloud){var self=this.ptr;if(in_buffer&&typeof in_buffer==="object")in_buffer=in_buffer.ptr;if(out_point_cloud&&typeof out_point_cloud==="object")out_point_cloud=out_point_cloud.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeBufferToPointCloud_2(self,in_buffer,out_point_cloud),Status)};Decoder.prototype["DecodeBufferToMesh"]=Decoder.prototype.DecodeBufferToMesh=function(in_buffer,out_mesh){var self=this.ptr;if(in_buffer&&typeof in_buffer==="object")in_buffer=in_buffer.ptr;if(out_mesh&&typeof out_mesh==="object")out_mesh=out_mesh.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeBufferToMesh_2(self,in_buffer,out_mesh),Status)};Decoder.prototype["__destroy__"]=Decoder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Decoder___destroy___0(self)};(function(){function setupEnums(){Module["ATTRIBUTE_INVALID_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM();Module["ATTRIBUTE_NO_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM();Module["ATTRIBUTE_QUANTIZATION_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM();Module["ATTRIBUTE_OCTAHEDRON_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM();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["DT_INVALID"]=_emscripten_enum_draco_DataType_DT_INVALID();Module["DT_INT8"]=_emscripten_enum_draco_DataType_DT_INT8();Module["DT_UINT8"]=_emscripten_enum_draco_DataType_DT_UINT8();Module["DT_INT16"]=_emscripten_enum_draco_DataType_DT_INT16();Module["DT_UINT16"]=_emscripten_enum_draco_DataType_DT_UINT16();Module["DT_INT32"]=_emscripten_enum_draco_DataType_DT_INT32();Module["DT_UINT32"]=_emscripten_enum_draco_DataType_DT_UINT32();Module["DT_INT64"]=_emscripten_enum_draco_DataType_DT_INT64();Module["DT_UINT64"]=_emscripten_enum_draco_DataType_DT_UINT64();Module["DT_FLOAT32"]=_emscripten_enum_draco_DataType_DT_FLOAT32();Module["DT_FLOAT64"]=_emscripten_enum_draco_DataType_DT_FLOAT64();Module["DT_BOOL"]=_emscripten_enum_draco_DataType_DT_BOOL();Module["DT_TYPES_COUNT"]=_emscripten_enum_draco_DataType_DT_TYPES_COUNT();Module["OK"]=_emscripten_enum_draco_StatusCode_OK();Module["DRACO_ERROR"]=_emscripten_enum_draco_StatusCode_DRACO_ERROR();Module["IO_ERROR"]=_emscripten_enum_draco_StatusCode_IO_ERROR();Module["INVALID_PARAMETER"]=_emscripten_enum_draco_StatusCode_INVALID_PARAMETER();Module["UNSUPPORTED_VERSION"]=_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION();Module["UNKNOWN_VERSION"]=_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION()}if(runtimeInitialized)setupEnums();else addOnInit(setupEnums)})();if(typeof Module["onModuleParsed"]==="function"){Module["onModuleParsed"]()}Module["Decoder"].prototype.GetEncodedGeometryType=function(array){if(array.__class__&&array.__class__===Module.DecoderBuffer){return Module.Decoder.prototype.GetEncodedGeometryType_Deprecated(array)}if(array.byteLength<8)return Module.INVALID_GEOMETRY_TYPE;switch(array[7]){case 0:return Module.POINT_CLOUD;case 1:return Module.TRIANGULAR_MESH;default:return Module.INVALID_GEOMETRY_TYPE}};
return DracoDecoderModule.ready
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = DracoDecoderModule;
else if (typeof define === 'function' && define['amd'])
define([], function() { return DracoDecoderModule; });
else if (typeof exports === 'object')
exports["DracoDecoderModule"] = DracoDecoderModule;