js-angusj-clipper
Version:
Polygon and line clipping and offsetting library for Javascript / Typescript - a port of Angus Johnson's clipper to WebAssembly / Asm.JS
12 lines (10 loc) • 355 kB
JavaScript
var Module = (() => {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(Module = {}) {
var Module=typeof Module!="undefined"?Module:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;err("exiting due to exception: "+toLog)}if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);var nodeMajor=process.version.match(/^v(\d+)\./)[1];if(nodeMajor<15){process["on"]("unhandledRejection",function(reason){throw reason})}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(Da){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,"bAwAAL0AAAC+AAAAAAAAACgMAAC/AAAAwAAAAMEAAADCAAAAwwAAAHkAeABnZXROZXh0AHNpbXBsaWZ5UG9seWdvbnNJbk91dABPcGVuQnV0dABnZXRGaXJzdAB1bnNpZ25lZCBzaG9ydABjaGlsZENvdW50AG5ld0ludFBvaW50AHVuc2lnbmVkIGludABnZXRQYXJlbnQAbWl0ZXJMaW1pdAByaWdodABsZWZ0AENsaXBwZXJPZmZzZXQAZ2V0AFN1YmplY3QASW50UmVjdABmbG9hdAB1aW50NjRfdABJbml0T3B0aW9ucwBjbGVhblBvbHlnb25zAHRvUGF0aHMAcG9seVRyZWVUb1BhdGhzAG1pbmtvd3NraVN1bVBhdGhzAGZyb21QYXRocwBleGVjdXRlUGF0aHMAcmV2ZXJzZVBhdGhzAGFkZFBhdGhzAGV4ZWN1dGVQYXRoc1dpdGhGaWxsVHlwZXMAZXhlY3V0ZVBvbHlUcmVlV2l0aEZpbGxUeXBlcwBQb2x5Tm9kZXMAZ2V0Qm91bmRzAGNoaWxkcwBjb250b3VyAHZlY3RvcgBEb01heGltYSBlcnJvcgBYb3IATWl0ZXIAQ2xpcHBlcgB1bnNpZ25lZCBjaGFyAHByZXNlcnZlQ29sbGluZWFyAFByZXNlcnZlQ29sbGluZWFyAGNsZWFyAHRvcABDbGlwAE5vblplcm8AcmV2ZXJzZVNvbHV0aW9uAFJldmVyc2VTb2x1dGlvbgBzdGQ6OmV4Y2VwdGlvbgBJbnRlcnNlY3Rpb24Ab3JpZW50YXRpb24AVW5pb24Ac2ltcGxpZnlQb2x5Z29uAGNsZWFuUG9seWdvbgBwb2ludEluUG9seWdvbgBDbG9zZWRQb2x5Z29uAGlzT3BlbgBib3R0b20AYm9vbABVcGRhdGVFZGdlSW50b0FFTDogaW52YWxpZCBjYWxsAGVtc2NyaXB0ZW46OnZhbAB0b3RhbABwdXNoX2JhY2sAYmFkX2FycmF5X25ld19sZW5ndGgAdG9QYXRoAG1pbmtvd3NraVN1bVBhdGgAZnJvbVBhdGgAcmV2ZXJzZVBhdGgAYWRkUGF0aAB1bnNpZ25lZCBsb25nAHN0ZDo6d3N0cmluZwBiYXNpY19zdHJpbmcAc3RkOjpzdHJpbmcAc3RkOjp1MTZzdHJpbmcAc3RkOjp1MzJzdHJpbmcAbWlua293c2tpRGlmZgByZXNpemUAUG9zaXRpdmUATmVnYXRpdmUAc2ltcGxpZnlQb2x5Z29uc092ZXJ3cml0ZQBDbGlwcGVyQmFzZQBPcGVuU3F1YXJlAFBvbHlUeXBlAENsaXBUeXBlAEpvaW5UeXBlAFBvbHlGaWxsVHlwZQBFbmRUeXBlAENsb3NlZExpbmUAc3RyaWN0bHlTaW1wbGUAU3RyaWN0bHlTaW1wbGUAaXNIb2xlAGRvdWJsZQBDb29yZGluYXRlIG91dHNpZGUgYWxsb3dlZCByYW5nZQBvcGVuUGF0aHNGcm9tUG9seVRyZWUAY2xvc2VkUGF0aHNGcm9tUG9seVRyZWUAZXhlY3V0ZVBvbHlUcmVlAFBvbHlOb2RlAERpZmZlcmVuY2UAYXJjVG9sZXJhbmNlAE9wZW5Sb3VuZAB2b2lkAEV2ZW5PZGQAc3RkOjpiYWRfYWxsb2MAYXJlYQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGNoYXI+AHN0ZDo6YmFzaWNfc3RyaW5nPHVuc2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AEFkZFBhdGg6IE9wZW4gcGF0aHMgbXVzdCBiZSBzdWJqZWN0LgBFcnJvcjogUG9seVRyZWUgc3RydWN0IGlzIG5lZWRlZCBmb3Igb3BlbiBwYXRoIGNsaXBwaW5nLgBOMTBDbGlwcGVyTGliMTZjbGlwcGVyRXhjZXB0aW9uRQDsKAAAvwsAAKgpAAAAAAAASAwAAMQAAADFAAAAwQAAAMIAAADDAAAAxgAAAE4xMENsaXBwZXJMaWIxMUNsaXBwZXJCYXNlRQDEKAAADAwAAE4xMENsaXBwZXJMaWI3Q2xpcHBlckUAAOwoAAAwDAAAKAwAAE4xMENsaXBwZXJMaWI4UG9seU5vZGVFAMQoAABUDAAAAAAAAOALAAACAAAAxwAAAMgAAAC0JwAA0AwAACAoAABOU3QzX18yNnZlY3RvcklOMTBDbGlwcGVyTGliOEludFBvaW50RU5TXzlhbGxvY2F0b3JJUzJfRUVFRQDEKAAAlAwAAHZpaWkAAAAAtCcAADwNAAAgKAAATlN0M19fMjZ2ZWN0b3JJTlMwX0lOMTBDbGlwcGVyTGliOEludFBvaW50RU5TXzlhbGxvY2F0b3JJUzJfRUVFRU5TM19JUzVfRUVFRQAAAADEKAAA7AwAAGANAADQDAAATjEwZW1zY3JpcHRlbjN2YWxFAADEKAAATA0AAGlpaQBgDQAAPA0AAE4xMENsaXBwZXJMaWI4Q2xpcFR5cGVFAHgoAAB0DQAATjEwQ2xpcHBlckxpYjhQb2x5VHlwZUUAeCgAAJQNAABOMTBDbGlwcGVyTGliMTJQb2x5RmlsbFR5cGVFAAAAAHgoAAC0DQAATjEwQ2xpcHBlckxpYjhJbnRQb2ludEUAxCgAANwNAABQTjEwQ2xpcHBlckxpYjhJbnRQb2ludEUAAAAASCkAAPwNAAAAAAAA9A0AAFBLTjEwQ2xpcHBlckxpYjhJbnRQb2ludEUAAABIKQAAKA4AAAEAAAD0DQAAaWkAdgB2aQBkaWkAdmlpZAAAAAD0DQAAaCgAAGgoAABpaWRkAFBOU3QzX18yNnZlY3RvcklOMTBDbGlwcGVyTGliOEludFBvaW50RU5TXzlhbGxvY2F0b3JJUzJfRUVFRQAAAEgpAAB5DgAAAAAAANAMAABQS05TdDNfXzI2dmVjdG9ySU4xMENsaXBwZXJMaWI4SW50UG9pbnRFTlNfOWFsbG9jYXRvcklTMl9FRUVFAAAASCkAAMgOAAABAAAA0AwAALgOAAC0JwAAuA4AAPQN");l(e,3888,"tCcAALgOAAA4KAAA9A0AAHZpaWlpAAAAOCgAAAgPAABgDQAA0AwAADgoAABpaWlp");l(e,3952,"zCcAANAMAAA4KAAA9A0AAGlpaWlpAFBOU3QzX18yNnZlY3RvcklOUzBfSU4xMENsaXBwZXJMaWI4SW50UG9pbnRFTlNfOWFsbG9jYXRvcklTMl9FRUVFTlMzX0lTNV9FRUVFAEgpAACGDwAAAAAAADwNAABQS05TdDNfXzI2dmVjdG9ySU5TMF9JTjEwQ2xpcHBlckxpYjhJbnRQb2ludEVOU185YWxsb2NhdG9ySVMyX0VFRUVOUzNfSVM1X0VFRUUAAEgpAADkDwAAAQAAADwNAADUDwAAtCcAANQPAADQDA==");l(e,4192,"tCcAANQPAAA4KAAA0AwAADgoAAA0EAAAYA0AADwNAAA4KA==");l(e,4240,"zCcAADwNAAA4KAAA0AwAAE4xMENsaXBwZXJMaWIxMUluaXRPcHRpb25zRQB4KAAAoBAAAE4xMENsaXBwZXJMaWI4Sm9pblR5cGVFAHgoAADEEAAATjEwQ2xpcHBlckxpYjdFbmRUeXBlRQAAeCgAAOQQAABQTjEwQ2xpcHBlckxpYjhQb2x5Tm9kZUUAAAAASCkAAAQRAAAAAAAAbAwAAFBLTjEwQ2xpcHBlckxpYjhQb2x5Tm9kZUUAAABIKQAAMBEAAAEAAABsDAAAIBEAAE5TdDNfXzI2dmVjdG9ySVBOMTBDbGlwcGVyTGliOFBvbHlOb2RlRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQAAAADEKAAAYBEAACARAABMEQAAzCcAAEwRAAAUKAAATBEAAFBOU3QzX18yNnZlY3RvcklQTjEwQ2xpcHBlckxpYjhQb2x5Tm9kZUVOU185YWxsb2NhdG9ySVMzX0VFRUUAAABIKQAAwBEAAAAAAACgEQAAUEtOU3QzX18yNnZlY3RvcklQTjEwQ2xpcHBlckxpYjhQb2x5Tm9kZUVOU185YWxsb2NhdG9ySVMzX0VFRUUAAEgpAAAQEgAAAQAAAKARAAAAEgAAtCcAAAASAAAgEQAAtCcAAAASAAA4KAAAIBEAADgoAABQEgAAYA0AAKARAAA4KA==");l(e,4768,"zCcAAKARAAA4KAAAIBEAAE4xMENsaXBwZXJMaWI4UG9seVRyZWVFAOwoAACwEgAAbAwAAFBOMTBDbGlwcGVyTGliOFBvbHlUcmVlRQAAAABIKQAA1BIAAAAAAADIEgAAUEtOMTBDbGlwcGVyTGliOFBvbHlUcmVlRQAAAEgpAAAAEwAAAQAAAMgSAADwEgAAAAAAAMgSAADJAAAAygAAACARAAAcEwAAtCcAAPASAAB2aWkAFCgAABwTAADMJwAA0AwAAGgoAADQDAAAFCgAAPQNAADQDA==");l(e,4992,"tCcAANAMAAA8DQAA1A0AALQnAAA8DQAAPA0AANQNAAC0JwAAPA0AANQNAAAAAAAAtCcAANAMAADQDAAAaCgAAHZpaWlkAAAAtCcAANAMAABoKA==");l(e,5088,"tCcAADwNAAA8DQAAaCgAALQnAAA8DQAAaCgAAAAAAAC0JwAA0AwAANAMAAA8DQAAzCcAAHZpaWlpaQAAAAAAALQnAADQDAAAPA0AADwNAADMJw==");l(e,5184,"tCcAANAMAADQDAAAPA0AALQnAADIEgAAPA0AALQnAADIEgAAPA0AALQnAADQDAAAtCcAADwNAABOMTBDbGlwcGVyTGliN0ludFJlY3RFAADEKAAAeBQAAFBOMTBDbGlwcGVyTGliN0ludFJlY3RFAEgpAACYFAAAAAAAAJAUAABQS04xMENsaXBwZXJMaWI3SW50UmVjdEUAAAAASCkAAMAUAAABAAAAkBQAAFBOMTBDbGlwcGVyTGliMTFDbGlwcGVyQmFzZUUAAAAASCkAAOwUAAAAAAAAKAwAAFBLTjEwQ2xpcHBlckxpYjExQ2xpcHBlckJhc2VFAAAASCkAABwVAAABAAAAKAwAAAAAAADMJwAADBUAANAMAACsDQAAzCcAAGlpaWlpaQAAAAAAAMwnAAAMFQAAPA0AAKwNAADMJwAAtCcAAAwVAACQFAAADBUAAFBOMTBDbGlwcGVyTGliN0NsaXBwZXJFAEgpAACUFQAAAAAAAEgMAABQS04xMENsaXBwZXJMaWI3Q2xpcHBlckUAAAAASCkAALwVAAABAAAASAwAAKwVAAAUKAAAzCcAAKwVAACMDQAAPA0AANQN");l(e,5648,"zCcAAKwVAACMDQAAPA0AANQNAADUDQAAaWlpaWlpaQDMJwAArBUAAIwNAADIEgAA1A0=");l(e,5712,"zCcAAKwVAACMDQAAyBIAANQNAADUDQAATjEwQ2xpcHBlckxpYjEzQ2xpcHBlck9mZnNldEUAAADEKAAAaBYAAFBOMTBDbGlwcGVyTGliMTNDbGlwcGVyT2Zmc2V0RQAASCkAAJAWAAAAAAAAiBYAAFBLTjEwQ2xpcHBlckxpYjEzQ2xpcHBlck9mZnNldEUASCkAAMAWAAABAAAAiBYAALAWAABoKAAAaCgAAAAAAAC0JwAAsBYAANAMAADcEAAA/BA=");l(e,5920,"tCcAALAWAAA8DQAA3BAAAPwQ");l(e,5952,"tCcAALAWAAA8DQAAaCgAALQnAACwFgAAyBIAAGgoAAC0JwAAsBYAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQAAxCgAAGgXAABOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAAxCgAAJAXAABOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQAAxCgAANgXAABOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQAAxCgAACAYAABOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQAAAMQoAABoGAAATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUAAADEKAAAtBgAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQAAxCgAAAAZAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAAMQoAAAoGQAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAADEKAAAUBkAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQAAxCgAAHgZAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUAAMQoAACgGQAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaUVFAADEKAAAyBkAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQAAxCgAAPAZAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUAAMQoAAAYGgAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbUVFAADEKAAAQBoAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQAAxCgAAGgaAABPu2EFZ6zdPxgtRFT7Iek/m/aB0gtz7z8YLURU+yH5P+JlLyJ/K3o8B1wUMyamgTy9y/B6iAdwPAdcFDMmppE8GC1EVPsh6T8YLURU+yHpv9IhM3982QJA0iEzf3zZAsA=");l(e,6911,"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");l(e,9715,"QPsh+T8AAAAALUR0PgAAAICYRvg8AAAAYFHMeDsAAACAgxvwOQAAAEAgJXo4AAAAgCKC4zYAAAAAHfNpNU4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAAAAAOwoAAAwJgAAaCoAAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQAAAOwoAABgJgAAVCYAAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQAAAOwoAACQJgAAVCYAAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAOwoAADAJgAAtCYAAE4xMF9fY3h4YWJpdjEyMF9fZnVuY3Rpb25fdHlwZV9pbmZvRQAAAADsKAAA8CYAAFQmAABOMTBfX2N4eGFiaXYxMjlfX3BvaW50ZXJfdG9fbWVtYmVyX3R5cGVfaW5mb0UAAADsKAAAJCcAALQmAAAAAAAApCcAAMwAAADNAAAAzgAAAM8AAADQAAAATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAOwoAAB8JwAAVCYAAHYAAABoJwAAsCcAAERuAABoJwAAvCcAAGIAAABoJwAAyCcAAGMAAABoJwAA1CcAAGgAAABoJwAA4CcAAGEAAABoJwAA7CcAAHMAAABoJwAA+CcAAHQAAABoJwAABCgAAGkAAABoJwAAECgAAGoAAABoJwAAHCgAAGwAAABoJwAAKCgAAG0AAABoJwAANCgAAHgAAABoJwAAQCgAAHkAAABoJwAATCgAAGYAAABoJwAAWCgAAGQAAABoJwAAZCgAAAAAAACwKAAAzAAAANEAAADOAAAAzwAAANIAAABOMTBfX2N4eGFiaXYxMTZfX2VudW1fdHlwZV9pbmZvRQAAAADsKAAAjCgAAFQmAAAAAAAAhCYAAMwAAADTAAAAzgAAAM8AAADUAAAA1QAAANYAAADXAAAAAAAAADQpAADMAAAA2AAAAM4AAADPAAAA1AAAANkAAADaAAAA2wAAAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQAAAADsKAAADCkAAIQmAAAAAAAA5CYAAMwAAADcAAAAzgAAAM8AAADdAAAAAAAAAMApAAABAAAA3gAAAN8AAAAAAAAA6CkAAAEAAADgAAAA4QAAAAAAAACoKQAAAQAAAOIAAADjAAAAU3Q5ZXhjZXB0aW9uAAAAAMQoAACYKQAAU3Q5YmFkX2FsbG9jAAAAAOwoAACwKQAAqCkAAFN0MjBiYWRfYXJyYXlfbmV3X2xlbmd0aAAAAADsKAAAzCkAAMApAAAAAAAAGCoAAAQAAADkAAAA5QAAAFN0MTFsb2dpY19lcnJvcgDsKAAACCoAAKgpAAAAAAAATCoAAAQAAADmAAAA5QAAAFN0MTJsZW5ndGhfZXJyb3IAAAAA7CgAADgqAAAYKgAAU3Q5dHlwZV9pbmZvAAAAAMQoAABYKg==");l(e,10864,"AgAAAJAsAQ==")}var r=new ArrayBuffer(16);var s=new Int32Array(r);var t=new Float32Array(r);var u=new Float64Array(r);function v(w){return s[w]}function x(w,y){s[w]=y}function z(){return u[0]}function A(y){u[0]=y}function B(){throw new Error("abort")}function Ca(q){var C=q.a;var D=C.a;var E=D.buffer;D.grow=Aa;var F=new Int8Array(E);var G=new Int16Array(E);var H=new Int32Array(E);var I=new Uint8Array(E);var J=new Uint16Array(E);var K=new Uint32Array(E);var L=new Float32Array(E);var M=new Float64Array(E);var N=Math.imul;var O=Math.fround;var P=Math.abs;var Q=Math.clz32;var R=Math.min;var S=Math.max;var T=Math.floor;var U=Math.ceil;var V=Math.trunc;var W=Math.sqrt;var X=C.b;var Y=C.c;var Z=C.d;var _=C.e;var $=C.f;var aa=C.g;var ba=C.h;var ca=C.i;var da=C.j;var ea=C.k;var fa=C.l;var ga=C.m;var ha=C.n;var ia=C.o;var ja=C.p;var ka=C.q;var la=C.r;var ma=C.s;var na=C.t;var oa=C.u;var pa=C.v;var qa=C.w;var ra=C.x;var sa=76944;var ta=0;
// EMSCRIPTEN_START_FUNCS
function od(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,C=0,D=0,E=0,J=0,L=0,N=0,O=0,S=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0;E=sa-32|0;sa=E;ua[H[H[a>>2]+16>>2]](a);H[E+24>>2]=0;b=E+16|0;H[E+20>>2]=b;H[E+16>>2]=b;a:{if(!H[a+120>>2]){break a}b=H[a+116>>2];e=H[b>>2];c=H[a+112>>2];H[e+4>>2]=H[c+4>>2];H[H[c+4>>2]>>2]=e;H[a+120>>2]=0;c=a+112|0;if((c|0)==(b|0)){break a}while(1){e=H[b+4>>2];Ea(b);b=e;if((c|0)!=(b|0)){continue}break}d=H[E+24>>2];if(!d){break a}e=H[E+20>>2];f=H[e>>2];b=H[E+16>>2];H[f+4>>2]=H[b+4>>2];H[H[b+4>>2]>>2]=f;f=H[a+112>>2];H[f+4>>2]=e;H[e>>2]=f;H[a+112>>2]=b;H[b+4>>2]=c;H[a+120>>2]=d+H[a+120>>2]}H[a+124>>2]=0;b:{if(!_b(a,E+16|0)){break b}J=a+124|0;Yb(a,H[E+16>>2],H[E+20>>2]);c:{d:{e:{while(1){if(!(!_b(a,E+8|0)&H[a+4>>2]==H[a+12>>2])){b=H[J>>2];if(b){while(1){e=H[b+104>>2];c=H[b+100>>2];H[(e?e+100|0:J)>>2]=c;if(c){H[c+104>>2]=e}H[b+100>>2]=0;H[b+104>>2]=0;Xb(a,b);b=H[a+124>>2];if(b){continue}break}}b=0;e=H[a+84>>2];l=H[a+88>>2];f:{if((e|0)==(l|0)){break f}while(1){c=H[(b<<2)+e>>2];if(c){Ea(c);l=H[a+88>>2];e=H[a+84>>2]}b=b+1|0;if(b>>>0<l-e>>2>>>0){continue}break}if((e|0)==(l|0)){break f}H[a+88>>2]=e}p=H[E+8>>2];s=H[E+12>>2];g:{if(!H[a+52>>2]){break g}g=sa-16|0;sa=g;h:{i:{j:{b=H[a+52>>2];if(b){H[a+124>>2]=b;while(1){H[b+104>>2]=H[b+96>>2];c=H[b+92>>2];H[b+100>>2]=c;k:{if(H[b+40>>2]==(p|0)&H[b+44>>2]==(s|0)){e=H[b+32>>2];f=H[b+36>>2];break k}e=H[b+8>>2];i=M[b+48>>3]*(+(p-e>>>0)+ +(s-(H[b+12>>2]+(e>>>0>p>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);l:{if(P(i)<0x8000000000000000){d=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;e=~~i>>>0;break l}d=-2147483648;e=0}j=H[b>>2];e=e+j|0;f=H[b+4>>2]+d|0;f=e>>>0<j>>>0?f+1|0:f}H[b+16>>2]=e;H[b+20>>2]=f;b=c;if(b){continue}break}m:{while(1){b=H[a+124>>2];e=H[b+100>>2];if(e){q=b+100|0;w=0;while(1){H[g+8>>2]=0;H[g+12>>2]=0;H[g>>2]=0;H[g+4>>2]=0;c=H[b+20>>2];d=H[e+20>>2];n:{if((c|0)<=(d|0)&K[b+16>>2]<=K[e+16>>2]|(d|0)>(c|0)){b=e;break n}C=M[b+48>>3];N=M[e+48>>3];o:{p:{if(C==N){d=H[b+28>>2];c=H[b+24>>2];H[g+8>>2]=c;H[g+12>>2]=d;if((c|0)==H[b+40>>2]&(d|0)==H[b+44>>2]){d=H[b+32>>2];c=H[b+36>>2];break p}f=H[b+8>>2];i=C*(+(c-f>>>0)+ +(d-(H[b+12>>2]+(c>>>0<f>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);q:{if(P(i)<0x8000000000000000){f=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;d=~~i>>>0;break q}f=-2147483648;d=0}c=H[b>>2];d=d+c|0;f=H[b+4>>2]+f|0;c=d>>>0<c>>>0?f+1|0:f;break p}r:{s:{t:{if(C==0){f=H[b+4>>2];d=H[b>>2];H[g>>2]=d;H[g+4>>2]=f;c=H[e+8>>2];h=H[e+12>>2];if(N==-1e40){H[g+8>>2]=c;H[g+12>>2]=h;break r}i=(+(d>>>0)+ +(f|0)*4294967296)/N+(+(c>>>0)+ +(h|0)*4294967296-(+K[e>>2]+ +H[e+4>>2]*4294967296)/N);i=i+(i<0?-.5:.5);if(!(P(i)<0x8000000000000000)){break t}c=~~i>>>0;H[g+8>>2]=c;h=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;H[g+12>>2]=h;break r}if(N!=0){break s}f=H[e+4>>2];d=H[e>>2];H[g>>2]=d;H[g+4>>2]=f;c=H[b+8>>2];h=H[b+12>>2];if(C==-1e40){H[g+8>>2]=c;H[g+12>>2]=h;break r}i=(+(d>>>0)+ +(f|0)*4294967296)/C+(+(c>>>0)+ +(h|0)*4294967296-(+K[b>>2]+ +H[b+4>>2]*4294967296)/C);i=i+(i<0?-.5:.5);if(!(P(i)<0x8000000000000000)){break t}c=~~i>>>0;H[g+8>>2]=c;h=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;H[g+12>>2]=h;break r}c=0;h=-2147483648;H[g+8>>2]=0;H[g+12>>2]=-2147483648;break r}d=g;Z=+K[e>>2]+ +H[e+4>>2]*4294967296-(+K[e+8>>2]+ +H[e+12>>2]*4294967296)*N;_=+K[b>>2]+ +H[b+4>>2]*4294967296-(+K[b+8>>2]+ +H[b+12>>2]*4294967296)*C;X=(Z-_)/(C-N);i=X+(X<0?-.5:.5);u:{if(P(i)<0x8000000000000000){h=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;c=~~i>>>0;break u}h=-2147483648;c=0}H[d+8>>2]=c;H[d+12>>2]=h;i=P(C)<P(N)?C*X+_:N*X+Z;i=i+(i<0?-.5:.5);v:{if(P(i)<0x8000000000000000){j=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;f=~~i>>>0;break v}j=-2147483648;f=0}H[g>>2]=f;H[d+4>>2]=j}j=H[b+44>>2];d=H[b+40>>2];k=H[e+44>>2];f=H[e+40>>2];if(!(((h|0)>=(j|0)&c>>>0>=d>>>0|(h|0)>(j|0))&((h|0)>=(k|0)&c>>>0>=f>>>0|(h|0)>(k|0)))){c=d;d=d>>>0>f>>>0&(j|0)>=(k|0)|(j|0)>(k|0);c=d?c:f;d=d?j:k;h=d;H[g+8>>2]=c;H[g+12>>2]=d;k=g;w:{if(P(C)<P(N)){if(H[b+40>>2]==(c|0)&H[b+44>>2]==(h|0)){j=H[b+32>>2];d=H[b+36>>2];break w}d=H[b+8>>2];i=C*(+(c-d>>>0)+ +(h-(H[b+12>>2]+(d>>>0>c>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);x:{if(P(i)<0x8000000000000000){f=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;j=~~i>>>0;break x}f=-2147483648;j=0}d=H[b>>2];j=j+d|0;f=H[b+4>>2]+f|0;d=d>>>0>j>>>0?f+1|0:f;break w}if(H[e+40>>2]==(c|0)&H[e+44>>2]==(h|0)){j=H[e+32>>2];d=H[e+36>>2];break w}d=H[e+8>>2];i=N*(+(c-d>>>0)+ +(h-(H[e+12>>2]+(d>>>0>c>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);y:{if(P(i)<0x8000000000000000){f=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;d=~~i>>>0;break y}f=-2147483648;d=0}m=H[e>>2];j=d+m|0;d=H[e+4>>2]+f|0;d=j>>>0<m>>>0?d+1|0:d}H[k>>2]=j;H[k+4>>2]=d}d=c;c=H[b+24>>2];f=H[b+28>>2];if(d>>>0<=c>>>0&(f|0)>=(h|0)|(f|0)>(h|0)){break o}H[g+8>>2]=c;H[g+12>>2]=f;if(P(C)>P(N)){if(H[e+40>>2]==(c|0)&H[e+44>>2]==(f|0)){d=H[e+32>>2];c=H[e+36>>2];break p}d=H[e+8>>2];i=N*(+(c-d>>>0)+ +(f-(H[e+12>>2]+(d>>>0>c>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);z:{if(P(i)<0x8000000000000000){f=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;d=~~i>>>0;break z}f=-2147483648;d=0}c=H[e>>2];d=d+c|0;h=H[e+4>>2]+f|0;c=d>>>0<c>>>0?h+1|0:h;break p}if(H[b+40>>2]==(c|0)&H[b+44>>2]==(f|0)){d=H[b+32>>2];c=H[b+36>>2];break p}d=H[b+8>>2];i=C*(+(c-d>>>0)+ +(f-(H[b+12>>2]+(d>>>0>c>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);A:{if(P(i)<0x8000000000000000){f=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;c=~~i>>>0;break A}f=-2147483648;c=0}j=H[b>>2];d=c+j|0;c=H[b+4>>2]+f|0;c=d>>>0<j>>>0?c+1|0:c}H[g>>2]=d;H[g+4>>2]=c}c=H[g+12>>2];if(K[g+8>>2]<p>>>0&(c|0)<=(s|0)|(c|0)<(s|0)){B:{if(H[b+40>>2]==(p|0)&H[b+44>>2]==(s|0)){c=H[b+32>>2];f=H[b+36>>2];break B}c=H[b+8>>2];i=M[b+48>>3]*(+(p-c>>>0)+ +(s-(H[b+12>>2]+(c>>>0>p>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);C:{if(P(i)<0x8000000000000000){d=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;c=~~i>>>0;break C}d=-2147483648;c=0}j=H[b>>2];c=c+j|0;f=H[b+4>>2]+d|0;f=c>>>0<j>>>0?f+1|0:f}H[g+8>>2]=p;H[g+12>>2]=s;H[g>>2]=c;H[g+4>>2]=f}c=Fa(24);H[c+4>>2]=e;H[c>>2]=b;d=H[g+12>>2];H[c+16>>2]=H[g+8>>2];H[c+20>>2]=d;d=H[g+4>>2];H[c+8>>2]=H[g>>2];H[c+12>>2]=d;d=H[a+100>>2];D:{if((d|0)!=H[a+104>>2]){H[d>>2]=c;H[a+100>>2]=d+4;break D}f=d;d=H[a+96>>2];f=f-d|0;k=f>>2;j=k+1|0;if(j>>>0>=1073741824){break j}h=f>>>1|0;j=f>>>0>=2147483644?1073741823:h>>>0>j>>>0?h:j;if(j){if(j>>>0>=1073741824){break i}h=Fa(j<<2)}else{h=0}k=h+(k<<2)|0;H[k>>2]=c;c=Ha(h,d,f);H[a+104>>2]=c+(j<<2);H[a+100>>2]=k+4;H[a+96>>2]=c;if(!d){break D}Ea(d)}d=H[q>>2];E:{if(!(d|H[b+104>>2])){break E}F:{G:{H:{I:{j=H[e+100>>2];J:{if(!j){f=H[e+104>>2];if(!f){break E}if((d|0)==(e|0)){break J}w=e+104|0;c=H[b+104>>2];H[q>>2]=0;H[b+104>>2]=f;break H}if((d|0)!=(e|0)){break I}H[j+104>>2]=b}c=H[b+104>>2];if(c){H[c+100>>2]=e}H[e+100>>2]=b;H[e+104>>2]=c;H[b+104>>2]=e;H[q>>2]=j;break F}if((b|0)==(j|0)){if(d){H[d+104>>2]=e}c=H[e+104>>2];if(c){H[c+100>>2]=b}H[b+104>>2]=c;H[q>>2]=e;H[e+100>>2]=d;H[e+104>>2]=b;break F}c=H[b+104>>2];H[q>>2]=j;H[j+104>>2]=b;f=H[e+104>>2];H[b+104>>2]=f;w=e+104|0;if(!f){break G}}H[f+100>>2]=b}H[e+100>>2]=d;if(d){H[d+104>>2]=e}H[w>>2]=c;if(!c){break F}H[c+100>>2]=e}c=b;if(H[b+104>>2]){w=1;c=e;if(H[c+104>>2]){break n}}H[a+124>>2]=c}w=1}q=b+100|0;e=H[b+100>>2];if(e){continue}break}b=H[b+104>>2];if(!b){break m}H[b+100>>2]=0;if(w&1){continue}break m}break}b=H[b+104>>2];if(!b){break m}H[b+100>>2]=0}H[a+124>>2]=0}sa=g+16|0;break h}Ga();B()}Ja();B()}K:{switch(H[a+100>>2]-H[a+96>>2]>>2){default:e=0;m=sa-16|0;sa=m;b=H[a+52>>2];H[a+124>>2]=b;if(b){while(1){H[b+104>>2]=H[b+96>>2];c=b;b=H[b+92>>2];H[c+100>>2]=b;if(b){continue}break}}b=H[a+100>>2];c=H[a+96>>2];H[m+12>>2]=3;Bb(c,b,m+12|0,(b|0)!=(c|0)?62-(Q(b-c>>2)<<1)|0:0);w=1;b=H[a+100>>2];c=H[a+96>>2];L:{if((b|0)==(c|0)){break L}k=b-c>>2;o=k>>>0<=1?1:k;j=1;w=0;while(1){d=H[a+96>>2];h=e<<2;q=d+h|0;g=H[q>>2];f=H[g>>2];c=H[f+100>>2];b=H[g+4>>2];M:{if((c|0)==(b|0)){b=c;break M}if(H[f+104>>2]==(b|0)){break M}c=j>>>0<k>>>0?k:j;b=e;while(1){N:{b=b+1|0;if(k>>>0<=b>>>0){b=c;break N}f=H[d+(b<<2)>>2];l=H[f>>2];f=H[f+4>>2];if(H[l+100>>2]==(f|0)){break N}if((f|0)!=H[l+104>>2]){continue}}break}if((b|0)==(k|0)){break L}b=d+(b<<2)|0;H[q>>2]=H[b>>2];H[b>>2]=g;c=H[h+H[a+96>>2]>>2];b=H[c+4>>2];f=H[c>>2]}c=f;h=H[c+100>>2];O:{if(!(h|H[c+104>>2])){break O}P:{Q:{R:{S:{d=H[b+100>>2];T:{if(!d){g=H[b+104>>2];if(!g){break O}if((b|0)==(h|0)){break T}H[c+100>>2]=0;f=H[c+104>>2];H[c+104>>2]=g;d=b+104|0;break R}if((b|0)!=(h|0)){break S}H[d+104>>2]=c}f=H[c+104>>2];if(f){H[f+100>>2]=b}H[b+100>>2]=c;H[b+104>>2]=f;H[c+100>>2]=d;H[c+104>>2]=b;break P}if((d|0)==(c|0)){if(h){H[h+104>>2]=b}d=H[b+104>>2];if(d){H[d+100>>2]=c}H[c+100>>2]=b;H[c+104>>2]=d;H[b+100>>2]=h;H[b+104>>2]=c;break P}H[c+100>>2]=d;f=H[c+104>>2];H[d+104>>2]=c;g=H[b+104>>2];H[c+104>>2]=g;d=b+104|0;if(!g){break Q}}H[g+100>>2]=c}H[b+100>>2]=h;if(h){H[h+104>>2]=b}H[d>>2]=f;if(!f){break P}H[f+100>>2]=b}if(H[c+104>>2]){c=b;if(H[b+104>>2]){break O}}H[a+124>>2]=c}j=j+1|0;e=e+1|0;w=k>>>0<=e>>>0;if((e|0)!=(o|0)){continue}break}}sa=m+16|0;if(!w){break e}break;case 0:break g;case 1:break K}}f=0;b=H[a+100>>2];e=H[a+96>>2];if((b|0)!=(e|0)){b=e;while(1){j=H[(f<<2)+b>>2];$a(a,H[j>>2],H[j+4>>2],j+8|0);b=H[j>>2];d=H[b+92>>2];c=H[b+96>>2];U:{if((d|0)==(c|0)){break U}e=H[j+4>>2];g=H[e+92>>2];l=H[e+96>>2];if((g|0)==(l|0)){break U}V:{W:{if((d|0)==(e|0)){if(g){H[g+96>>2]=b;c=H[b+96>>2]}if(c){H[c+92>>2]=e}H[e+92>>2]=b;H[e+96>>2]=c;H[b+92>>2]=g;H[b+96>>2]=e;c=H[e+96>>2];break W}X:{if((b|0)==(g|0)){if(d){H[d+96>>2]=e;l=H[e+96>>2]}if(l){H[l+92>>2]=b}H[b+92>>2]=e;H[b+96>>2]=l;H[e+92>>2]=d;H[e+96>>2]=b;c=b;break X}H[b+92>>2]=g;if(g){H[g+96>>2]=b;l=H[e+96>>2]}H[b+96>>2]=l;if(l){H[l+92>>2]=b}H[e+92>>2]=d;if(d){H[d+96>>2]=e}H[e+96>>2]=c;if(!c){c=0;break X}H[c+92>>2]=e}if(!H[b+96>>2]){break V}}b=e;if(c){break U}}H[a+52>>2]=b}Ea(j);f=f+1|0;b=H[a+96>>2];if(f>>>0<H[a+100>>2]-b>>2>>>0){continue}break}}H[a+100>>2]=b;H[a+124>>2]=0}q=sa+-64|0;sa=q;b=H[a+52>>2];H[q+60>>2]=b;h=a+52|0;if(b){m=a+112|0;while(1){Y:{Z:{_:{$:{if(H[b+40>>2]==(p|0)&H[b+44>>2]==(s|0)){if(H[b+88>>2]){break $}c=H[b+32>>2];e=H[b+80>>2];d=H[b+36>>2];aa:{ba:{if(!((c|0)!=H[e+32>>2]|(d|0)!=H[e+36>>2]|((p|0)!=H[e+40>>2]|(s|0)!=H[e+44>>2]))){if(!H[e+88>>2]){break ba}}e=H[b+84>>2];if((c|0)!=H[e+32>>2]|(d|0)!=H[e+36>>2]|(H[e+88>>2]|((p|0)!=H[e+40>>2]|(s|0)!=H[e+44>>2]))){break aa}}if(H[e+76>>2]==-2){break aa}i=M[e+48>>3];if(H[e+92>>2]==H[e+96>>2]){if(i!=-1e40){break aa}break $}if(i==-1e40){break $}}if(I[a+142|0]){e=Fa(16);c=H[b+32>>2];d=H[b+36>>2];H[e+4>>2]=m;H[e+8>>2]=c;H[e+12>>2]=d;c=H[a+112>>2];H[e>>2]=c;H[c+4>>2]=e;H[a+112>>2]=e;H[a+120>>2]=H[a+120>>2]+1}k=H[b+96>>2];j=b+32|0;e=H[b+40>>2];d=H[b+44>>2];ca:{da:{ea:{fa:{c=H[b+32>>2];f=H[b+80>>2];g=H[b+36>>2];ga:{ha:{if(!((c|0)!=H[f+32>>2]|(g|0)!=H[f+36>>2]|((e|0)!=H[f+40>>2]|(d|0)!=H[f+44>>2]))){if(!H[f+88>>2]){break ha}}f=H[b+84>>2];if((c|0)!=H[f+32>>2]|(g|0)!=H[f+36>>2]|(H[f+88>>2]|((e|0)!=H[f+40>>2]|(d|0)!=H[f+44>>2]))){break ga}}if(H[f+76>>2]==-2){break ga}if(H[f+92>>2]!=H[f+96>>2]|M[f+48>>3]==-1e40){break fa}}if(H[b+76>>2]>=0){Ia(a,b,j)}c=H[b+96>>2];d=H[b+92>>2];if(!(c|d)&H[a+52>>2]!=(b|0)){break ca}e=b+92|0;l=b+96|0;H[(c?c+92|0:a+52|0)>>2]=d;if(d){break ea}break da}d=H[b+92>>2];c=(d|0)!=0;ia:{if(!d|(d|0)==(f|0)){break ia}while(1){$a(a,b,d,j);c=H[b+96>>2];e=H[b+92>>2];ja:{if((c|0)==(e|0)){break ja}l=H[d+96>>2];g=H[d+92>>2];if((l|0)==(g|0)){break ja}ka:{la:{if((d|0)==(e|0)){if(g){H[g+96>>2]=b;c=H[b+96>>2]}if(c){H[c+92>>2]=d}H[d+92>>2]=b;H[d+96>>2]=c;H[b+92>>2]=g;H[b+96>>2]=d;c=H[d+96>>2];break la}ma:{if((b|0)==(g|0)){if(e){H[e+96>>2]=d;l=H[d+96>>2]}if(l){H[l+92>>2]=b}H[b+92>>2]=d;H[b+96>>2]=l;H[d+92>>2]=e;H[d+96>>2]=b;c=b;break ma}H[b+92>>2]=g;if(g){H[g+96>>2]=b;l=H[d+96>>2]}H[b+96>>2]=l;if(l){H[l+92>>2]=b}H[d+92>>2]=e;if(e){H[e+96>>2]=d}H[d+96>>2]=c;if(!c){c=0;break ma}H[c+92>>2]=d}e=b;if(!H[b+96>>2]){break ka}}e=d;if(c){break ja}}H[a+52>>2]=e}d=H[b+92>>2];c=(d|0)!=0;if(!d){break ia}if((d|0)!=(f|0)){continue}break}}l=f+96|0;e=f+92|0;na:{oa:{pa:{g=H[b+76>>2];if((g|0)==-1){if(H[f+76>>2]!=-1){break pa}g=a+52|0;j=H[b+96>>2];qa:{if(!((j|0)!=0|c)){v=H[a+52>>2];if((v|0)!=(b|0)){break qa}}H[(j?j+92|0:g)>>2]=d;if(c){H[d+96>>2]=j}H[b+92>>2]=0;H[b+96>>2]=0;v=H[g>>2]}c=H[f+96>>2];d=H[f+92>>2];if(!(c|d)&(f|0)!=(v|0)){break ca}H[(c?c+92|0:g)>>2]=d;if(d){break ea}break da}if((g|0)<0){break pa}if(H[f+76>>2]>=0){Ia(a,b,j);if(!H[f+64>>2]){Ia(a,f,j)}c=H[b+76>>2];d=H[f+76>>2];ra:{if((c|0)==(d|0)){H[b+76>>2]=-1;H[f+76>>2]=-1;break ra}if((d|0)>(c|0)){Va(a,b,f);break ra}Va(a,f,b)}g=a+52|0;d=H[b+96>>2];c=H[b+92>>2];sa:{if(!(d|c)){v=H[a+52>>2];if((v|0)!=(b|0)){break sa}}H[(d?d+92|0:g)>>2]=c;if(c){H[c+96>>2]=d}H[b+92>>2]=0;H[b+96>>2]=0;v=H[g>>2]}c=H[f+96>>2];d=H[f+92>>2];if(!(c|d)&(f|0)!=(v|0)){break ca}H[(c?c+92|0:g)>>2]=d;if(!d){break da}break ea}if(H[b+64>>2]){break oa}Ia(a,b,j);H[b+76>>2]=-1;d=H[b+92>>2];break na}if(!H[b+64>>2]){break na}}da(db(Ua(16),1462)|0,3040,2);B()}g=a+52|0;c=H[b+96>>2];if(!(!(d|c)&H[a+52>>2]!=(b|0))){H[(c?c+92|0:g)>>2]=d;if(d){H[d+96>>2]=c}H[b+92>>2]=0;H[b+96>>2]=0}if(H[f+76>>2]>=0){Ia(a,f,j);H[f+76>>2]=-1}c=H[f+96>>2];d=H[f+92>>2];if(!(c|d)&H[g>>2]!=(f|0)){break ca}H[(c?c+92|0:g)>>2]=d;if(!d){break da}}H[d+96>>2]=c}H[e>>2]=0;H[l>>2]=0}b=k?k+92|0:h;break Y}e=H[b+8>>2];i=M[b+48>>3]*(+(p-e>>>0)+ +(s-(H[b+12>>2]+(e>>>0>p>>>0)|0)|0)*4294967296);i=i+(i<0?-.5:.5);ta:{if(P(i)<0x8000000000000000){c=P(i)>=1?~~(i>0?R(T(i*2.3283064365386963e-10),4294967295):U((i-+(~~i>>>0>>>0))*2.3283064365386963e-10))>>>0:0;e=~~i>>>0;break ta}c=-2147483648;e=0}d=H[b>>2];e=e+d|0;f=H[b+4>>2]+c|0;f=d>>>0>e>>>0?f+1|0:f;break _}e=H[b+88>>2];if(!(!e|M[e+48>>3]!=-1e40)){ab(a,q+60|0);b=H[q+60>>2];if(H[b+76>>2]>=0){Ia(a,b,b)}e=H[a+124>>2];H[b+104>>2]=0;if(e){H[e+104>>2]=b}H[a+124>>2]=b;H[b+100>>2]=e;break Z}e=H[b+32>>2];f=H[b+36>>2]}H[b+16>>2]=e;H[b+20>>2]=f;H[b+24>>2]=p;H[b+28>>2]=s}ua:{if(!H[b+64>>2]|(!I[a+142|0]|H[b+76>>2]<0)){break ua}e=H[b+96>>2];if(!e|H[e+76>>2]<0|(!H[e+64>>2]|(H[e+16>>2]!=H[b+16>>2]|H[e+20>>2]!=H[b+20>>2]))){break ua}c=H[b+28>>2];H[q+48>>2]=H[b+24>>2];H[q+52>>2]=c;c=H[b+20>>2];H[q+40>>2]=H[b+16>>2];H[q+44>>2]=c;c=e;e=q+40|0;c=Ia(a,c,e);b=Ia(a,b,e);e=H[q+52>>2];H[q+32>>2]=H[q+48>>2];H[q+36>>2]=e;e=H[q+44>>2];H[q+24>>2]=H[q+40>>2];H[q+28>>2]=e;Oa(a,c,b,q+24|0);b=H[q+60>>2]}b=b+92|0}b=H[b>>2];H[q+60>>2]=b;if(b){continue}break}}c=a+112|0;Cb(H[a+116>>2],c,H[a+120>>2],q+40|0);b=H[a+124>>2];if(b){f=a+124|0;while(1){e=H[b+104>>2];d=H[b+100>>2];H[(e?e+100|0:f)>>2]=d;if(d){H[d+104>>2]=e}H[b+100>>2]=0;H[b+104>>2]=0;Xb(a,b);b=H[a+124>>2];if(b){continue}break}}va:{if(!H[a+120>>2]){break va}b=H[a+116>>2];e=H[b>>2];d=H[a+112>>2];H[e+4>>2]=H[d+4>>2];H[H[d+4>>2]>>2]=e;H[a+120>>2]=0;if((b|0)==(c|0)){break va}while(1){e=H[b+4>>2];Ea(b);b=e;if((c|0)!=(b|0)){continue}break}}b=H[h>>2];H[q+60>>2]=b;if(b){while(1){wa:{if(!H[b+88>>2]|((p|0)!=H[b+40>>2]|(s|0)!=H[b+44>>2])){break wa}j=0;if(H[b+76>>2]>=0){j=Ia(a,b,b+32|0)}ab(a,q+60|0);b=H[q+60>>2];l=H[b+92>>2];xa:{ya:{e=H[b+96>>2];if(!e){break ya}c=H[e+16>>2];h=H[e+20>>2];if(!j|((c|0)!=H[b>>2]|(h|0)!=H[b+4>>2])){break ya}v=H[e+24>>2];r=H[e+28>>2];if((v|0)!=H[b+8>>2]|(r|0)!=H[b+12>>2]|H[e+76>>2]<0){break ya}w=H[e+44>>2];d=w;u=H[e+40>>2];if((d|0)>=(r|0)&u>>>0>=v>>>0|(d|0)>(r|0)){break ya}d=H[b+24>>2];g=H[b+40>>2];f=d-g|0;g=H[b+28>>2]-(H[b+44>>2]+(d>>>0<g>>>0)|0)|0;k=H[e+32>>2];d=c-k|0;o=h-(H[e+36>>2]+(c>>>0<k>>>0)|0)|0;n=H[b+32>>2];z=H[b+36>>2];x=H[b+16>>2];y=H[b+20>>2];za:{if(I[a+20|0]){h=d;c=o>>31;d=c;k=h^c;c=k-c|0;k=(d^o)-((d>>>0>k>>>0)+d|0)|0;d=0;m=c;c=g>>31;t=f^c;h=t-c|0;f=(c^g)-((c>>>0>t>>>0)+c|0)|0;t=f;d=Ue(m,d,f,0);O=ta;c=0;L=0;f=Ue(k,c,h,L);S=f+d|0;d=ta+O|0;c=Ue(k,c,t,c);D=c+(f>>>0>S>>>0?d+1|0:d)|0;d=ta;d=c>>>0>D>>>0?d+1|0:d;c=Ue(h,t,m,k);t=ta;f=Ue(h,L,m,L);k=ta;h=c;f=(k|0)==(t|0)&f>>>0>c>>>0|k>>>0>t>>>0;c=d;k=f+D|0;m=k>>>0<f>>>0?c+1|0:c;if((g>>>31|0)!=(o>>>31|0)){c=k;d=!(h|t);k=d?0-c|0:c^-1;m=d?0-(((c|0)!=0)+m|0)|0:m^-1;c=h;h=0-c|0;t=0-(((c|0)!=0)+t|0)|0}d=v-u|0;c=r-((u>>>0>v>>>0)+w|0)|0;v=c;g=d;d=c>>31;f=d;o=g^d;d=o-d|0;o=(c^f)-((f>>>0>o>>>0)+f|0)|0;c=0;u=d;f=c;d=x-n|0;c=y-((n>>>0>x>>>0)+z|0)|0;n=c;x=c>>31;r=x^d;g=r-x|0;d=c>>31;c=(d^c)-((r>>>0<x>>>0)+d|0)|0;r=c;d=Ue(u,f,c,0);z=ta;c=0;w=0;f=Ue(o,c,g,w);D=f+d|0;d=ta+z|0;f=f>>>0>D>>>0?d+1|0:d;d=Ue(o,c,r,c);x=f+d|0;c=ta;c=d>>>0>x>>>0?c+1|0:c;d=Ue(g,r,u,o);r=ta;f=Ue(g,w,u,w);o=ta;g=d;f=(o|0)==(r|0)&f>>>0>d>>>0|r>>>0<o>>>0;d=f;f=f+x|0;d=d>>>0>f>>>0?c+1|0:c;if((n>>>31|0)!=(v>>>31|0)){c=f;o=!(g|r);f=o?0-c|0:c^-1;d=o?0-(((c|0)!=0)+d|0)|0:d^-1;c=g;g=0-c|0;r=0-(((c|0)!=0)+r|0)|0}if((f|0)!=(k|0)|(d|0)!=(m|0)){break ya}if((g|0)==(h|0)&(r|0)==(t|0)){break za}break ya}c=Ue(d,o,f,g);d=ta;if((Ue(v-u|0,r-((u>>>0>v>>>0)+w|0)|0,x-n|0,y-((n>>>0>x>>>0)+z|0)|0)|0)!=(c|0)|(ta|0)!=(d|0)){break ya}}if(!H[b+64>>2]|!H[e+64>>2]){break ya}c=b+32|0;break xa}if(!l){break wa}c=H[l+16>>2];g=H[l+20>>2];if(!j|((c|0)!=H[b>>2]|(g|0)!=H[b+4>>2])){break wa}o=H[l+24>>2];x=H[l+28>>2];if((o|0)!=H[b+8>>2]|(x|0)!=H[b+12>>2]|H[l+76>>2]<0){break wa}r=H[l+44>>2];e=r;v=H[l+40>>2];if((e|0)>=(x|0)&v>>>0>=o>>>0|(e|0)>(x|0)){break wa}e=H[b+24>>2];d=H[b+40>>2];f=e-d|0;e=H[b+28>>2]-(H[b+44>>2]+(d>>>0>e>>>0)|0)|0;h=H[l+32>>2];d=c-h|0;g=g-(H[l+36>>2]+(c>>>0<h>>>0)|0)|0;u=H[b+32>>2];w=H[b+36>>2];n=H[b+16>>2];z=H[b+20>>2];Aa:{if(I[a+20|0]){h=d;c=g>>31;d=c;k=h^c;c=k-c|0;k=(d^g)-((d>>>0>k>>>0)+d|0)|0;d=0;D=d;m=c;c=e>>31;t=f^c;h=t-c|0;c=(e^c)-((c>>>0>t>>>0)+c|0)|0;t=c;c=Ue(m,d,c,0);d=ta;y=c;f=0;c=Ue(k,0,h,f);O=y+c|0;d=ta+d|0;L=Ue(k,f,t,f);y=L+(c>>>0>O>>>0?d+1|0:d)|0;d=ta;c=Ue(h,t,m,k);t=ta;f=Ue(h,f,m,D);k=ta;h=c;c=(k|0)==(t|0)&f>>>0>c>>>0|k>>>0>t>>>0;f=y>>>0<L>>>0?d+1|0:d;k=c+y|0;m=k>>>0<c>>>0?f+1|0:f;if((e>>>31|0)!=(g>>>31|0)){e=k;c=!(h|t);k=c?0-e|0:e^-1;m=c?0-(((e|0)!=0)+m|0)|0:m^-1;e=h;h=0-e|0;t=0-(((e|0)!=0)+t|0)|0}c=o-v|0;e=x-((o>>>0<v>>>0)+r|0)|0;o=e;d=c;c=e>>31;g=d^c;d=g-c|0;c=(e^c)-((c>>>0>g>>>0)+c|0)|0;e=0;g=d;y=d;f=e;e=z-((n>>>0<u>>>0)+w|0)|0;v=e;d=e>>31;r=n-u|0;u=e>>31;n=r^u;e=n-u|0;u=(d^v)-((n>>>0<u>>>0)+d|0)|0;n=u;d=Ue(g,f,n,0);w=ta;u=0;x=0;f=Ue(c,u,e,x);D=f+d|0;d=ta+w|0;f=f>>>0>D>>>0?d+1|0:d;d=Ue(c,u,n,u);u=f+d|0;f=ta;g=Ue(e,n,g,c);r=ta;d=d>>>0>u>>>0?f+1|0:f;e=Ue(e,x,y,x);c=ta;e=(c|0)==(r|0)&e>>>0>g>>>0|c>>>0>r>>>0;f=e+u|0;d=e>>>0>f>>>0?d+1|0:d;if((v>>>31|0)!=(o>>>31|0)){e=f;c=!(g|r);f=c?0-e|0:e^-1;d=c?0-(((e|0)!=0)+d|0)|0:d^-1;e=g;g=0-e|0;r=0-(((e|0)!=0)+r|0)|0}if((f|0)!=(k|0)|(d|0)!=(m|0)){break wa}if((g|0)==(h|0)&(r|0)==(t|0)){break Aa}break wa}e=Ue(d,g,f,e);c=ta;if((Ue(o-v|0,x-((o>>>0<v>>>0)+r|0)|0,n-u|0,z-((n>>>0<u>>>0)+w|0)|0)|0)!=(e|0)|(ta|0)!=(c|0)){break wa}}if(!H[b+64>>2]|!H[l+64>>2]){break wa}e=l;c=b+32|0}d=Ia(a,e,b);e=c;c=H[c+12>>2];H[q+16>>2]=H[e+8>>2];H[q+20>>2]=c;c=H[e+4>>2];H[q+8>>2]=H[e>>2];H[q+12>>2]=c;Oa(a,j,d,q+8|0)}b=H[b+92>>2];H[q+60>>2]=b;if(b){continue}break}}sa=q- -64|0;Yb(a,p,s);continue}break}v=H[a+40>>2];d=H[a+44>>2];if((v|0)!=(d|0)){b=d-v>>2;j=b>>>0<=1?1:b;h=I[a+140|0];while(1){b=H[(A<<2)+v>>2];e=H[b+16>>2];Ba:{if(!e|I[b+5|0]){break Ba}k=I[b+4|0];i=0;b=e;while(1){f=H[b+28>>2];c=f;m=H[c+8>>2];g=m+H[b+8>>2]|0;c=H[b+12>>2]+H[c+12>>2]|0;C=+(g>>>0)+ +((g>>>0<m>>>0?c+1|0:c)|0)*4294967296;m=H[f+16>>2];o=H[b+16>>2];i=C*(+(m-o>>>0)+ +(H[f+20>>2]-(H[b+20>>2]+(m>>>0<o>>>0)|0)|0)*4294967296)+i;b=H[b+24>>2];if((e|0)!=(b|0)){continue}break}b=e;if((h^k)!=(i*.5>0|0)){break Ba}while(1){f=H[b+28>>2];c=H[b+24>>2];H[b+28>>2]=c;H[b+24>>2]=f;b=c;if((e|0)!=(b|0)){continue}break}}A=A+1|0;if((j|0)!=(A|0)){continue}break}}if(H[a+72>>2]!=H[a+76>>2]){w=0;b=H[a+72>>2];if((b|0)!=H[a+76>>2]){while(1){e=H[a+40>>2];f=H[(w<<2)+b>>2];b=H[e+(H[H[f>>2]>>2]<<2)>>2];while(1){d=b;b=H[e+(H[b>>2]<<2)>>2];if((d|0)!=(b|0)){continue}break}c=H[e+(H[H[f+4>>2]>>2]<<2)>>2];while(1){b=c;c=H[e+(H[b>>2]<<2)>>2];if((c|0)!=(b|0)){continue}break}Ca:{if(!H[d+16>>2]|!H[b+16>>2]|(I[d+5|0]|I[b+5|0])){break Ca}e=d;if((b|0)!=(d|0)){while(1){e=H[e+8>>2];c=(b|0)==(e|0);if(!(e?c:1)){continue}break}e=b;e=b;Da:{if(c){break Da}while(1){e=H[e+8>>2];c=(d|0)==(e|0);if(!(e?c:1)){continue}break}e=d;if(c){break Da}e=Vb(d,b)}if(!Ub(a,f,d,b)){break Ca}H[b+16>>2]=0;H[b+20>>2]=0;H[b>>2]=H[d>>2];F[d+4|0]=I[e+4|0];if((b|0)==(e|0)){H[d+8>>2]=H[b+8>>2]}H[b+8>>2]=d;if(!I[a+141|0]){break Ca}e=H[a+44>>2];g=H[a+40>>2];if((e|0)==(g|0)){break Ca}e=e-g>>2;h=e>>>0<=1?1:e;c=0;while(1){j=H[g+(c<<2)>>2];e=H[j+8>>2];f=0;Ea:{if(!e){break Ea}while(1){f=e;if(H[e+16>>2]){break Ea}e=H[e+8>>2];if(e){continue}break}f=0}if(!((f|0)!=(b|0)|!H[j+16>>2])){H[j+8>>2]=d}c=c+1|0;if((h|0)!=(c|0)){continue}break}break Ca}if(!Ub(a,f,d,d)){break Ca}b=H[f>>2];H[d+20>>2]=0;H[d+16>>2]=b;v=Zb(a);e=H[f+4>>2];H[v+16>>2]=e;c=H[v>>2];b=e;while(1){H[b>>2]=c;b=H[b+28>>2];if((e|0)!=(b|0)){continue}break}c=H[d+16>>2];b=e;Fa:{Ga:{while(1){f=pc(b+8|0,c);if((f|0)<0){b=H[b+24>>2];if((e|0)!=(b|0)){continue}break Ga}break}b=c;if(!f){break Fa}}b=I[d+4|0];H[v+8>>2]=d;b=b^1;F[v+4|0]=b;if(I[a+141|0]){mb(a,v,d);e=H[v+16>>2];b=I[v+4|0]}if(!e){break Ca}g=I[a+140|0]^b;i=0;b=e;while(1){c=H[b+28>>2];j=H[c+8>>2];f=j+H[b+8>>2]|0;d=H[b+12>>2]+H[c+12>>2]|0;C=+(f>>>0)+ +((f>>>0<j>>>0?d+1|0:d)|0)*4294967296;j=H[c+16>>2];h=H[b+16>>2];i=C*(+(j-h>>>0)+ +(H[c+20>>2]-(H[b+20>>2]+(h>>>0>j>>>0)|0)|0)*4294967296)+i;b=H[b+24>>2];if((e|0)!=(b|0)){continue}break}b=e;if((g&255)!=(i*.5>0|0)){break Ca}while(1){d=H[b+28>>2];c=H[b+24>>2];H[b+28>>2]=c;H[b+24>>2]=d;b=c;if((e|0)!=(b|0)){continue}break}break Ca}Ha:{Ia:{while(1){f=pc(b+8|0,e);if((f|0)<0){b=H[b+24>>2];if((c|0)!=(b|0)){continue}break Ia}break}if(!f){break Ha}}b=I[d+4|0];F[v+4|0]=b;b=b^1;F[d+4|0]=b;H[v+8>>2]=H[d+8>>2];H[d+8>>2]=v;if(I[a+141|0]){mb(a,d,v);c=H[d+16>>2];b=I[d+4|0]}if(!c){break Ca}g=I[a+140|0]^b;i=0;b=c;while(1){e=H[b+28>>2];j=H[e+8>>2];d=j+H[b+8>>2]|0;f=H[b+12>>2]+H[e+12>>2]|0;C=+(d>>>0)+ +((d>>>0<j>>>0?f+1|0:f)|0)*4294967296;j=H[e+16>>2];h=H[b+16>>2];i=C*(+(j-h>>>0)+ +(H[e+20>>2]-(H[b+20>>2]+(h>>>0>j>>>0)|0)|0)*4294967296)+i;b=H[b+24>>2];if((c|0)!=(b|0)){continue}break}b=c;if((g&255)!=(i*.5>0|0)){break Ca}while(1){d=H[b+28>>2];e=H[b+24>>2];H[b+28>>2]=e;H[b+24>>2]=d;b=e;if((c|0)!=(b|0)){continue}break}break Ca}F[v+4|0]=I[d+4|0];H[v+8>>2]=H[d+8>>2];if(!I[a+141|0]){break Ca}l=0;b=H[a+44>>2];r=H[a+40>>2];if((b|0)!=(r|0)){b=b-r>>2;z=b>>>0<=1?1:b;while(1){A=H[r+(l<<2)>>2];b=H[A+8>>2];c=0;Ja:{if(!b){break Ja}while(1){c=b;if(H[b+16>>2]){break Ja}b=H[b+8>>2];if(b){continue}break}c=0}Ka:{if((c|0)!=(d|0)){break Ka}m=H[A+16>>2];if(!m){break Ka}o=H[v+16>>2];g=m;while(1){f=H[g+16>>2];u=H[g+20>>2];c=H[g+8>>2];p=H[g+12>>2];n=0;b=o;La:{Ma:{while(1){j=b;Na:{Oa:{b=H[b+24>>2];h=H[b+16>>2];s=H[b+20>>2];if((h|0)!=(f|0)|(s|0)!=(u|0)){e=H[j+16>>2];x=H[j+20>>2];break Oa}k=H[b+8>>2];q=H[b+12>>2];if((c|0)==(k|0)&(p|0)==(q|0)){break Ma}e=H[j+16>>2];x=H[j+20>>2];if((f|0)!=(e|0)|(u|0)!=(x|0)){break Oa}e=H[j+12>>2];if(!((c>>>0>K[j+8>>2]&(p|0)>=(e|0)|(e|0)<(p|0))^((p|0)>=(q|0)&c>>>0>=k>>>0|(p|0)>(q|0)))){break Na}break Ma}if(((u|0)<=(x|0)&e>>>0>=f>>>0|(u|0)<(x|0))^((s|0)<=(u|0)&f>>>0>h>>>0|(s|0)<(u|0))){break Na}k=H[b+8>>2];t=H[b+12>>2];J=H[j+12>>2];j=H[j+8>>2];if((J|0)>=(p|0)&j>>>0>=c>>>0|(p|0)<(J|0)){if(c>>>0<k>>>0&(p|0)<=(t|0)|(p|0)<(t|0)){n=1-n|0;break Na}i=(+(j-c>>>0)+ +(J-((c>>>0>j>>>0)+p|0)|0)*4294967296)*(+(h-f>>>0)+ +(s-((f>>>0>h>>>0)+u|0)|0)*4294967296)-(+(e-f>>>0)+ +(x-((e>>>0<f>>>0)+u|0)|0)*4294967296)*(+(k-c>>>0)+ +(t-((c>>>0>k>>>0)+p|0)|0)*4294967296);if(i==0){break Ma}n=(e>>>0<h>>>0&(s|0)>=(x|0)|(s|0)>(x|0))^i>0?n:1-n|0;break Na}if((p|0)>=(t|0)&c>>>0>=k>>>0|(p|0)>(t|0)){break Na}i=(+(j-c>>>0)+ +(J-((c>>>0>j>>>0)+p|0)|0)*4294967296)*(+(h-f>>>0)+ +(s-((f>>>0>h>>>0)+u|0)|0)*4294967296)-(+(e-f>>>0)+ +(x-((e>>>0<f>>>0)+u|0)|0)*4294967296)*(+(k-c>>>0)+ +(t-((c>>>0>k>>>0)+p|0)|0)*4294967296);if(i==0){break Ma}n=(e>>>0<h>>>0&(s|0)>=(x|0)|(s|0)>(x|0))^i>0?n:1-n|0}if((b|0)!=(o|0)){continue}break}if(!n){break Ka}break La}g=H[g+24>>2];if((m|0)!=(g|0)){continue}}break}H[A+8>>2]=v}l=l+1|0;if((z|0)!=(l|0)){continue}break}}}w=w+1|0;b=H[a+72>>2];if(w>>>0<H[a+76>>2]-b>>2>>>0){continue}break}}v=H[a+40>>2];d=H[a+44>>2]}if((d|0)==(v|0)){break d}j=0;while(1){O=H[(j<<2)+v>>2];b=H[O+16>>2];Pa:{if(!b){break Pa}if(I[O+5|0]){l=H[b+28>>2];if((l|0)!=(b|0)){while(1){e=H[b+24>>2];b=H[e+28>>2];Qa:{if(H[e+8>>2]!=H[b+8>>2]|H[e+12>>2]!=H[b+12>>2]){b=e;break Qa}if(H[e+16>>2]!=H[b+16>>2]|H[e+20>>2]!=H[b+20>>2]){b=e;break Qa}H[b+24>>2]=H[e+24>>2];H[H[e+24>>2]+28>>2]=b;Ea(e);l=(e|0)==(l|0)?b:l}if((b|0)!=(l|0)){continue}break}if(H[b+28>>2]!=(b|0)){break Pa}}H[b+24>>2]=0;while(1){e=H[b+24>>2];Ea(b);b=e;if(b){continue}break}H[O+16>>2]=0;break Pa}q=0;H[O+20>>2]=0;b=H[O+16>>2];c=H[b+28>>2];Ra:{Sa:{if((b|0)==(c|0)){e=b;break Sa}w=b+28|0;$=(I[a+36|0]|I[a+142|0])!=0;while(1){e=H[b+24>>2];if((c|0)==(e|0)){e=b;b=c;break Sa}Ta:{Ua:{p=H[b+8>>2];n=H[e+8>>2];z=H[b+12>>2];V=H[e+12>>2];u=H[e+16>>2];l=H[b+16>>2];S=H[e+20>>2];y=H[b+20>>2];Va:{if((p|0)==(n|0)&(z|0)==(V|0)&((u|0)==(l|0)&(S|0)==(y|0))){break Va}v=H[c+8>>2];D=H[c+12>>2];x=H[c+16>>2];W=H[c+20>>2];if((v|0)==(p|0)&(D|0)==(z|0)&((l|0)==(x|0)&(y|0)==(W|0))){break Va}f=p-n|0;g=z-((n>>>0>p>>>0)+V|0)|0;d=x-l|0;o=W-((l>>>0>x>>>0)+y|0)|0;Wa:{if(I[a+20|0]){h=d;d=o>>31;m=h^d;k=m-d|0;h=(d^o)-((d>>>0>m>>>0)+d|0)|0;m=h;d=0;h=d;r=f;d=g>>31;f=d;A=r^d;d=A-d|0;t=d;d=Ue(m,h,d,0);h=ta;J=d;s=0;r=(f^g)-((f>>>0>A>>>0)+f|0)|0;f=0;d=Ue(k,s,r,f);L=J+d|0;h=ta+h|0;f=Ue(r,f,m,s);h=f+(d>>>0>L>>>0?h+1|0:h)|0;d=ta;d=f>>>0>h>>>0?d+1|0:d;f=Ue(t,r,k,m);L=ta;m=Ue(k,s,t,s);s=ta;k=f;m=(s|0)==(L|0)&m>>>0>f>>>0|s>>>0>L>>>0;f=m;m=h+m|0;s=f>>>0>m>>>0?d+1|0:d;if((o>>>31|0)!=(g>>>31|0)){d=m;f=!(k|L);m=f?0-d|0:d^-1;s=f?0-(((d|0)!=0)+s|0)|0:s^-1;d=k;k=0-d|0;L=0-(((d|0)!=0)+L|0)|0}d=y-((l>>>0<u>>>0)+S|0)|0;t=d;f=d>>31;o=f^l-u;g=o-f|0;o=(d^f)-((f>>>0>o>>>0)+f|0)|0;d=0;r=g;aa=g;A=d;d=D-((p>>>0>v>>>0)+z|0)|0;J=d;f=d>>31;Y=f^v-p;g=Y-f|0;h=d>>31;d=(h^d)-((f>>>0>Y>>>0)+h|0)|0;Y=d;f=A;A=d;d=Ue(r,f,d,0);ba=ta;h=0;f=Ue(o,0,g,h);ca=f+d|0;d=ta+ba|0;f=f>>>0>ca>>>0?d+1|0:d;d=Ue(o,h,A,h);A=f+d|0;f=ta;f=d>>>0>A>>>0?f+1|0:f;d=Ue(g,Y,r,o);r=ta;h=Ue(g,h,aa,ea);o=ta;g=d;d=(o|0)==(r|0)&h>>>0>d>>>0|r>>>0<o>>>0;h=f;f=d+A|0;d=f>>>0<d>>>0?h+1|0:h;if((J>>>31|0)!=(t>>>31|0)){h=f;o=!(g|r);f=o?0-f|0:f^-1;d=o?0-(((h|0)!=0)+d|0)|0:d^-1;h=g;g=0-g|0;r=0-(((h|0)!=0)+r|0)|0}if((f|0)!=(m|0)|(d|0)!=(s|0)){break Ua}if((g|0)==(k|0)&(r|0)==(L|0)){break Wa}break Ua}d=Ue(f,g,d,o);f=ta;if((Ue(l-u|0,y-((l>>>0<u>>>0)+S|0)|0,v-p|0,D-((p>>>0>v>>>0)+z|0)|0)|0)!=(d|0)|(ta|0)!=(f|0)){break Ua}}if(!$|(n|0)==(v|0)&(D|0)==(V|0)&((u|0)==(x|0)&(S|0)==(W|0))){break Va}if((n|0)!=(v|0)|(D|0)!=(V|0)){if(((z|0)<=(V|0)&n>>>0>p>>>0|(z|0)<(V|0))^((z|0)<=(D|0)&p>>>0<=v>>>0|(z|0)<(D|0))){break Ua}break Va}if((l>>>0<u>>>0&(y|0)<=(S|0)|(y|0)<(S|0))^((y|0)<=(W|0)&l>>>0<=x>>>0|(y|0)<(W|0))){break Ua}}H[c+24>>2]=e;H[H[b+24>>2]+28>>2]=c;e=H[w>>2];Ea(b);q=0;break Ta}if((b|0)==(q|0)){break Ra}q=q?q:b}w=e+28|0;b=e;c=H[b+28>>2];if((b|0)!=(c|0)){continue}break}}q=0;H[b+24>>2]=0;while(1){b=H[e+24>>2];Ea(e);e=b;if(b){continue}break}}H[O+16>>2]=q}j=j+1|0;v=H[a+40>>2];if(j>>>0<H[a+44>>2]-v>>2>>>0){continue}break}break d}v=0;break c}v=1;if(!I[a+142|0]){break c}A=0;Xa:{Ya:{Za:{b=H[a+40>>2];c=H[a+44>>2];if((b|0)!=(c|0)){while(1){u=H[(A<<2)+b>>2];e=H[u+16>>2];if(!(!e|I[u+5|0])){j=e;while(1){b=e;e=H[j+24>>2];if((b|0)!=(e|0)){while(1){b=e;d=b;_a:{if(H[j+8>>2]!=H[b+8>>2]|H[j+12>>2]!=H[b+12>>2]){break _a}d=e;if(H[j+16>>2]!=H[b+16>>2]|H[j+20>>2]!=H[b+20>>2]){break _a}d=e;if(H[b+24>>2]==(j|0)){break _a}c=H[b+28>>2];d=e;if((c|0)==(j|0)){break _a}b=H[j+28>>2];H[j+28>>2]=c;H[c+24>>2]=j;H[e+28>>2]=b;H[b+24>>2]=e;H[u+16>>2]=j;x=Fa(24);b=x;H[b+8>>2]=0;H[b+12>>2]=0;G[b+4>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;b=H[a+44>>2];$a:{if((b|0)!=H[a+48>>2]){H[b>>2]=x;l=b+4|0;H[a+44>>2]=l;break $a}c=b;b=H[a+40>>2];c=c-b|0;g=c>>2;d=g+1|0;if(d>>>0>=1073741824){break Ya}f=c>>>1|0;d=c>>>0>=2147483644?1073741823:d>>>0<f>>>0?f:d;if(d){if(d>>>0>=1073741824){break Za}f=Fa(d<<2)}else{f=0}g=f+(g<<2)|0;H[g>>2]=x;c=Ha(f,b,c);H[a+48>>2]=c+(d<<2);l=g+4|0;H[a+44>>2]=l;H[a+40>>2]=c;if(!b){break $a}Ea(b);l=H[a+44>>2]}J=H[a+40>>2];H[x+16>>2]=e;z=l-J>>2;c=z-1|0;H[x>>2]=c;b=e;while(1){H[b>>2]=c;b=H[b+28>>2];if((e|0)!=(b|0)){continue}break}f=H[u+16>>2];c=e;ab:{while(1){h=H[c+16>>2];s=H[c+20>>2];g=H[c+8>>2];n=H[c+12>>2];w=0;b=f;bb:{cb:{while(1){k=b;db:{eb:{b=H[b+24>>2];m=H[b+16>>2];t=H[b+20>>2];if((m|0)!=(h|0)|(t|0)!=(s|0)){d=H[k+16>>2];p=H[k+20>>2];break eb}o=H[b+8>>2];q=H[b+12>>2];if((g|0)==(o|0)&(n|0)==(q|0)){break cb}d=H[k+16>>2];p=H[k+20>>2];if((h|0)!=(d|0)|(s|0)!=(p|0)){break eb}d=H[k+12>>2];if(!((g>>>0>K[k+8>>2]&(n|0)>=(d|0)|(d|0)<(n|0))^((n|0)>=(q|0)&g>>>0>=o>>>0|(n|0)>(q|0)))){break db}break cb}if((h>>>0>m>>>0&(s|0)>=(t|0)|(s|0)>(t|0))^((p|0)>=(s|0)&d>>>0>=h>>>0|(p|0)>(s|0))){break db}o=H[b+8>>2];r=H[b+12>>2];y=H[k+12>>2];k=H[k+8>>2];if((y|0)>=(n|0)&k>>>0>=g>>>0|(n|0)<(y|0)){if(g>>>0<o>>>0&(n|0)<=(r|0)|(n|0)<(r|0)){w=1-w|0;break db}i=(+(k-g>>>0)+ +(y-((g>>>0>k>>>0)+n|0)|0)*4294967296)*(+(m-h>>>0)+ +(t-((h>>>0>m>>>0)+s|0)|0)*4294967296)-(+(d-h>>>0)+ +(p-((d>>>0<h>>>0)+s|0)|0)*4294967296)*(+(o-g>>>0)+ +(r-((g>>>0>o>>>0)+n|0)|0)*4294967296);if(i==0){break cb}w=(d>>>0<m>>>0&(p|0)<=(t|0)|(p|0)<(t|0))^i>0?w:1-w|0;break db}if((n|0)>=(r|0)&g>>>0>=o>>>0|(n|0)>(r|0)){break db}i=(+(k-g>>>0)+ +(y-((g>>>0>k>>>0)+n|0)|0)*4294967296)*(+(m-h>>>0)+ +(t-((h>>>0>m>>>0)+s|0)|0)*4294967296)-(+(d-h>>>0)+ +(p-((d>>>0<h>>>0)+s|0)|0)*4294967296)*(+(o-g>>>0)+ +(r-((g>>>0>o>>>0)+n|0)|0)*4294967296);if(i==0){break cb}w=(d>>>0<m>>>0&(p|0)<=(t|0)|(p|0)<(t|0))^i>0?w:1-w|0}if((b|0)!=(f|0)){continue}break}c=f;if(w){break bb}fb:{while(1){h=H[c+16>>2];s=H[c+20>>2];g=H[c+8>>2];n=H[c+12>>2];w=0;b=e;gb:{while(1){k=b;hb:{ib:{b=H[b+24>>2];m=H[b+16>>2];t=H[b+20>>2];if((m|0)!=(h|0)|(t|0)!=(s|0)){d=H[k+16>>2];p=H[k+20>>2];break ib}o=H[b+8>>2];q=H[b+12>>2];if((g|0)==(o|0)&(n|0)==(q|0)){break gb}d=H[k+16>>2];p=H[k+20>>2];if((h|0)!=(d|0)|(s|0)!=(p|0)){break ib}d=H[k+12>>2];if(!((g>>>0>K[k+8>>2]&(n|0)>=(d|0)|(d|0)<(n|0))^((n|0)>=(q|0)&g>>>0>=o>>>0|(n|0)>(q|0)))){break hb}break gb}if((h>>>0>m>>>0&(s|0)>=(t|0)|(s|0)>(t|0))^((p|0)>=(s|0)&d>>>0>=h>>>0|(p|0)>(s|0))){break hb}o=H[b+8>>2];r=H[b+12>>2];y=H[k+12>>2];k=H[k+8>>2];if((y|0)>=(n|0)&k>>>0>=g>>>0|(n|0)<(y|0)){if(g>>>0<o>>>0&(n|0)<=(r|0)|(n|0)<(r|0)){w=1-w|0;break hb}i=(+(k-g>>>0)+ +(y-((g>>>0>k>>>0)+n|0)|0)*4294967296)*(+(m-h>>>0)+ +(t-((h>>>0>m>>>0)+s|0)|0)*4294967296)-(+(d-h>>>0)+ +(p-((d>>>0<h>>>0)+s|0)|0)*4294967296)*(+(o-g>>>0)+ +(r-((g>>>0>o>>>0)+n|0)|0)*4294967296);if(i==0){break gb}w=(d>>>0<m>>>0&(p|0)<=(t|0)|(p|0)<(t|0))^i>0?w:1-w|0;break hb}if((n|0)>=(r|0)&g>>>0>=o>>>0|(n|0)>(r|0)){break hb}i=(+(k-g>>>0)+ +(y-((g>>>0>k>>>0)+n|0)|0)*4294967296)*(+(m-h>>>0)+ +(t-((h>>>0>m>>>0)+s|0)|0)*4294967296)-(+(d-h>>>0)+ +(p-((d>>>0<h>>>0)+s|0)|0)*4294967296)*(+(o-g>>>0)+ +(r-((g>>>0>o>>>0)+n|0)|0)*4294967296);if(i==0){break gb}w=(d>>>0<m>>>0&(p|0)<=(t|0)|(p|0)<(t|0))^i>