设备管理
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

24 lines
796 KiB

!(function (exports) {
var module;
var Module; if (typeof Module === "undefined") Module = {}; if (!Module.expectedDataFileDownloads) { Module.expectedDataFileDownloads = 0; Module.finishedDataFileDownloads = 0 } Module.expectedDataFileDownloads++; ((function () { var loadPackage = (function (metadata) { function runWithFS() { var fileData0 = []; fileData0.push.apply(fileData0, [45, 45, 32, 77, 97, 107, 101, 32, 119, 105, 110, 100, 111, 119, 32, 111, 98, 106, 101, 99, 116, 32, 97, 32, 103, 108, 111, 98, 97, 108, 10, 119, 105, 110, 100, 111, 119, 32, 61, 32, 106, 115, 46, 103, 108, 111, 98, 97, 108, 59, 10, 10, 100, 111, 32, 45, 45, 32, 67, 114, 101, 97, 116, 101, 32, 106, 115, 46, 105, 112, 97, 105, 114, 115, 32, 97, 110, 100, 32, 106, 115, 46, 112, 97, 105, 114, 115, 32, 102, 117, 110, 99, 116, 105, 111, 110, 115, 46, 32, 97, 116, 116, 97, 99, 104, 32, 97, 115, 32, 95, 95, 112, 97, 105, 114, 115, 32, 97, 110, 100, 32, 95, 95, 105, 112, 97, 105, 114, 115, 32, 111, 110, 32, 74, 83, 32, 117, 115, 101, 114, 100, 97, 116, 97, 32, 111, 98, 106, 101, 99, 116, 115, 46, 10, 9, 108, 111, 99, 97, 108, 32, 95, 80, 82, 79, 88, 89, 95, 77, 84, 32, 61, 32, 100, 101, 98, 117, 103, 46, 103, 101, 116, 114, 101, 103, 105, 115, 116, 114, 121, 40, 41, 46, 95, 80, 82, 79, 88, 89, 95, 77, 84, 10, 10, 9, 45, 45, 32, 73, 116, 101, 114, 97, 116, 101, 115, 32, 102, 114, 111, 109, 32, 48, 32, 116, 111, 32, 99, 111, 108, 108, 101, 99, 116, 105, 111, 110, 46, 108, 101, 110, 103, 116, 104, 45, 49, 10, 9, 108, 111, 99, 97, 108, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 106, 115, 95, 105, 110, 101, 120, 116, 40, 99, 111, 108, 108, 101, 99, 116, 105, 111, 110, 44, 32, 105, 41, 10, 9, 9, 105, 32, 61, 32, 105, 32, 43, 32, 49, 10, 9, 9, 105, 102, 32, 105, 32, 62, 61, 32, 99, 111, 108, 108, 101, 99, 116, 105, 111, 110, 46, 108, 101, 110, 103, 116, 104, 32, 116, 104, 101, 110, 32, 114, 101, 116, 117, 114, 110, 32, 110, 105, 108, 32, 101, 110, 100, 10, 9, 9, 114, 101, 116, 117, 114, 110, 32, 105, 44, 32, 99, 111, 108, 108, 101, 99, 116, 105, 111, 110, 91, 105, 93, 10, 9, 101, 110, 100, 10, 9, 102, 117, 110, 99, 116, 105, 111, 110, 32, 106, 115, 46, 105, 112, 97, 105, 114, 115, 40, 99, 111, 108, 108, 101, 99, 116, 105, 111, 110, 41, 10, 9, 9, 114, 101, 116, 117, 114, 110, 32, 106, 115, 95, 105, 110, 101, 120, 116, 44, 32, 99, 111, 108, 108, 101, 99, 116, 105, 111, 110, 44, 32, 45, 49, 10, 9, 101, 110, 100, 10, 9, 95, 80, 82, 79, 88, 89, 95, 77, 84, 46, 95, 95, 105, 112, 97, 105, 114, 115, 32, 61, 32, 106, 115, 46, 105, 112, 97, 105, 114, 115, 10, 10, 9, 102, 117, 110, 99, 116, 105, 111, 110, 32, 106, 115, 46, 112, 97, 105, 114, 115, 40, 111, 98, 41, 10, 9, 9, 108, 111, 99, 97, 108, 32, 107, 101, 121, 115, 32, 61, 32, 106, 115, 46, 103, 108, 111, 98, 97, 108, 46, 79, 98, 106, 101, 99, 116, 58, 103, 101, 116, 79, 119, 110, 80, 114, 111, 112, 101, 114, 116, 121, 78, 97, 109, 101, 115, 40, 111, 98, 41, 32, 45, 45, 32, 83, 104, 111, 117, 108, 100, 32, 116, 104, 105, 115, 32, 98, 101, 32, 79, 98, 106, 101, 99, 116, 46, 107, 101, 121, 115, 63, 10, 9, 9, 108, 111, 99, 97, 108, 32, 105, 32, 61, 32, 48, 10, 9, 9, 114, 101, 116, 117, 114, 110, 32, 102, 117, 110, 99, 116, 105, 111, 110, 40, 111, 98, 44, 32, 108, 97, 115, 116, 41, 10, 9, 9, 9, 108, 111, 99, 97, 108, 32, 107, 32, 61, 32, 107, 101, 121, 115, 91, 105, 93, 10, 9, 9, 9, 105, 32, 61, 32, 105, 32, 43, 32, 49, 59, 10, 9, 9, 9, 114, 101, 116, 117, 114, 110, 32, 107, 44, 32, 111, 98, 91, 107, 93, 10, 9, 9, 101, 110, 100, 44, 32, 111, 98, 44, 32, 110, 105, 108, 10, 9, 101, 110, 100, 10, 9, 95, 80, 82, 79, 88, 89, 95, 77, 84, 46, 95, 95, 112, 97, 105, 114, 115, 32, 61, 32, 106, 115, 46, 112, 97, 105, 114, 115, 10, 101, 110, 100, 10, 10, 45, 45, 32, 83, 101, 116, 32, 117, 112, 32, 114, 101, 113, 117, 105, 114, 101, 32, 112, 97, 116, 104, 115, 32, 116, 111, 32, 98, 101, 32, 115, 101, 110, 115, 105, 98, 108, 101, 32, 102, 111, 114, 32, 116, 104, 101, 32, 98, 114, 111, 119, 115, 101, 114, 10, 108, 111, 99, 97, 108, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 108, 111, 97, 100, 95, 108, 117, 97, 95, 111, 118, 101, 114, 95, 104, 116, 116, 112, 40, 117, 114, 108, 41, 10, 9, 108, 111, 99, 97, 108, 32, 120, 104, 114, 32, 61, 32, 106, 115, 46, 110, 101, 119, 40, 119, 105, 110, 100, 111, 119, 46, 88, 77, 76, 72, 116, 116, 112, 82, 101, 113, 117, 101, 115, 116, 41, 10, 9, 120, 104, 114, 58, 111, 112, 101, 110, 40, 34, 71, 69, 84, 34, 44, 32, 117, 114, 108, 44, 32, 102, 97, 108, 115, 101, 41, 32, 45, 45, 32, 83, 121, 110, 99, 104, 114, 111, 110, 111, 117, 115, 10, 9, 45, 45, 32, 78, 101, 101, 100, 32, 116, 111, 32, 112, 99, 97, 108, 108, 32, 120, 104, 114, 58, 115, 101, 110, 100, 40, 41, 44, 32, 97, 115, 32, 105, 116, 32, 99, 97, 110, 32, 116, 104, 114, 111, 119, 32, 97, 32, 78, 101, 116, 119, 111, 114, 107, 69, 114, 114, 111, 114, 32, 105, 102, 32, 67, 79, 82, 83, 32, 102, 97, 105, 108, 115, 10, 9, 108, 111, 99, 97, 108, 32, 111, 107, 44, 32, 101, 114, 114, 32, 61, 32, 112, 99, 97, 108, 108, 40, 120, 104, 114, 46, 115, 101, 110, 100, 44, 32, 120, 104, 114, 41, 10, 9, 105, 102, 32, 110, 111, 116, 32, 111, 107, 32, 116, 104, 101, 110, 10, 9, 9, 114, 101, 116, 117, 114, 110, 32, 110, 105, 108, 44, 32, 116, 111, 115, 116, 114, 105, 110, 103, 40, 101, 114, 114, 41, 10, 9, 101, 108, 115, 101, 105, 102, 32, 120, 104, 114, 46, 115, 116, 97, 116, 117, 115, 32, 126, 61, 32, 50, 48, 48, 32, 116, 104, 101, 110, 10, 9, 9, 114, 101, 116, 117, 114, 110, 32, 110, 105, 108, 44, 32, 34, 72, 84, 84, 80, 32, 71, 69, 84, 32, 34, 32, 46, 46, 32, 120, 104, 114, 46, 115, 116, 97, 116, 117, 115, 84, 101, 120, 116, 32, 46, 46, 32, 34, 58, 32, 34, 32, 46, 46, 32, 117, 114, 108, 10, 9, 101, 110, 100, 10, 9, 114, 101, 116, 117, 114, 110, 32, 108, 111, 97, 100, 40, 120, 104, 114, 46, 114, 101, 115, 112, 111, 110, 115, 101, 84, 101, 120, 116, 44, 32, 117, 114, 108, 41, 10, 101, 110, 100, 10, 112, 97, 99, 107, 97, 103, 101, 46, 112, 97, 116, 104, 32, 61, 32, 34, 34, 10, 112, 97, 99, 107, 97, 103, 101, 46, 99, 112, 97, 116, 104, 32, 61, 32, 34, 34, 10, 116, 97, 98, 108, 101, 46, 105, 110, 115, 101, 114, 116, 40, 112, 97, 99, 107, 97, 103, 101, 46, 115, 101, 97, 114, 99, 104, 101, 114, 115, 44, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 40, 109, 111, 100, 95, 110, 97, 109, 101, 41, 10, 9, 105, 102, 32, 110, 111, 116, 32, 109, 111, 100, 95, 110, 97, 109, 101, 58, 109, 97, 116, 99, 104, 40, 34, 47, 34, 41, 32, 116, 104, 101, 110, 10, 9, 9, 108, 111, 99, 97, 108, 32, 102, 117, 108, 108, 95, 117, 114, 108, 32, 61, 32, 109, 111, 100, 95, 110, 97, 109, 101, 58, 103, 115, 117, 98, 40, 34, 37, 46, 34, 44, 32, 34, 47, 34, 41, 32, 46, 46, 32, 34, 46, 108, 117, 97, 34, 10, 9, 9, 108, 111, 99, 97, 108, 32, 102, 117, 110, 99, 44, 32, 101, 114, 114, 32, 61, 32, 108, 111, 97, 100, 95, 108, 117, 97, 95, 111, 118, 101, 114, 95, 104, 116, 116, 112, 40, 102, 117, 108, 108, 95, 117, 114, 108, 41, 10, 9, 9, 105, 102, 32, 102, 117, 110, 99, 32, 126, 61, 32, 110, 105, 108, 32, 116, 104, 101, 110, 32, 114, 101, 116, 117, 114, 110, 32, 102, 117, 110, 99, 32, 101, 110, 100, 10, 10, 9, 9, 108, 111, 99, 97, 108, 32, 102, 117, 108, 108, 95, 117, 114, 108, 32, 61, 32, 109, 111, 100, 95, 110, 97, 109, 101, 58, 103, 115, 117, 98, 40, 34, 37, 46, 34, 44, 32, 34, 47, 34, 41, 32, 46, 46, 32, 34, 47, 105, 110, 105, 116, 46, 108, 117, 97, 34, 10, 9, 9, 108, 111, 99, 97, 108, 32, 102, 117, 110, 99, 44, 32, 101, 114, 114, 50, 32, 61, 32, 108, 111, 97, 100, 95, 108, 117, 97, 95, 111, 118, 101, 114, 95, 104, 116, 116, 112, 40, 102, 117, 108, 108, 95, 117, 114, 108, 41, 10, 9, 9, 105, 102, 32, 102, 117, 110, 99, 32, 126, 61, 32, 110, 105, 108, 32, 116, 104, 101, 110, 32, 114, 101, 116, 117, 114, 110, 32, 102, 117, 110, 99, 32, 101, 110, 100, 10, 10, 9, 9, 114, 101, 116, 117, 114, 110, 32, 34, 92, 110, 32, 32, 32, 32, 34, 32, 46, 46, 32, 101, 114, 114, 32, 46, 46, 32, 34, 92, 110, 32, 32, 32, 32, 34, 32, 46, 46, 32, 101, 114, 114, 50, 10, 9, 101, 110, 100, 10, 101, 110, 100, 41, 10, 116, 97, 98, 108, 101, 46, 105, 110, 115, 101, 114, 116, 40, 112, 97, 99, 107, 97, 103, 101, 46, 115, 101, 97, 114, 99, 104, 101, 114, 115, 44, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 40, 109, 111, 100, 95, 110, 97, 109, 101, 41, 10, 9, 105, 102, 32, 109, 111, 100, 95, 110, 97, 109, 101, 58, 109, 97, 116, 99, 104, 40, 34, 94, 104, 116, 116, 112, 115, 63, 58, 47, 47, 34, 41, 32, 116, 104, 101, 110, 10, 9, 9, 108, 111, 99, 97, 108, 32, 102, 117, 110, 99, 44, 32, 101, 114, 114, 32, 61, 32, 108, 111, 97, 100, 95, 108, 117, 97, 95, 111, 118, 101, 114, 95, 104, 116, 116, 112, 40, 109, 111, 100, 95, 110, 97, 109, 101, 41, 10, 9, 9, 105, 102, 32, 102, 117, 110, 99, 32, 61, 61, 32, 110, 105, 108, 32, 116, 104, 101, 110, 32, 114, 101, 116, 117, 114, 110, 32, 34, 92, 110, 32, 32, 32, 32, 34, 32, 46, 46, 32, 101, 114, 114, 32, 101, 110, 100, 10, 9, 9, 114, 101, 116, 117, 114, 110, 32, 102, 117, 110, 99, 10, 9, 101, 110, 100, 10, 101, 110, 100, 41, 10]); Module["FS_createDataFile"]("/", "js.lua", fileData0, true, true) } if (Module["calledRun"]) { runWithFS() } else { if (!Module["preRun"]) Module["preRun"] = []; Module["preRun"].push(runWithFS) } }); loadPackage({ "files": [] }) }))(); var Module; if (!Module) Module = (typeof Module !== "undefined" ? Module : null) || {}; var moduleOverrides = {}; for (var key in Module) { if (Module.hasOwnProperty(key)) { moduleOverrides[key] = Module[key] } } var ENVIRONMENT_IS_WEB = false; var ENVIRONMENT_IS_WORKER = false; var ENVIRONMENT_IS_NODE = false; var ENVIRONMENT_IS_SHELL = false; if (Module["ENVIRONMENT"]) { if (Module["ENVIRONMENT"] === "WEB") { ENVIRONMENT_IS_WEB = true } else if (Module["ENVIRONMENT"] === "WORKER") { ENVIRONMENT_IS_WORKER = true } else if (Module["ENVIRONMENT"] === "NODE") { ENVIRONMENT_IS_NODE = true } else if (Module["ENVIRONMENT"] === "SHELL") { ENVIRONMENT_IS_SHELL = true } else { throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.") } } else { ENVIRONMENT_IS_WEB = typeof window === "object"; ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; ENVIRONMENT_IS_NODE = typeof process === "object" && typeof require === "function" && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER } if (ENVIRONMENT_IS_NODE) { if (!Module["print"]) Module["print"] = console.log; if (!Module["printErr"]) Module["printErr"] = console.warn; var nodeFS; var nodePath; Module["read"] = function read(filename, binary) { if (!nodeFS) nodeFS = require("fs"); if (!nodePath) nodePath = require("path"); filename = nodePath["normalize"](filename); var ret = nodeFS["readFileSync"](filename); return binary ? ret : ret.toString() }; Module["readBinary"] = function readBinary(filename) { var ret = Module["read"](filename, true); if (!ret.buffer) { ret = new Uint8Array(ret) } assert(ret.buffer); return ret }; Module["load"] = function load(f) { globalEval(read(f)) }; if (!Module["thisProgram"]) { if (process["argv"].length > 1) { Module["thisProgram"] = process["argv"][1].replace(/\\/g, "/") } else { Module["thisProgram"] = "unknown-program" } } Module["arguments"] = process["argv"].slice(2); if (typeof module !== "undefined") { module["exports"] = Module } process["on"]("uncaughtException", (function (ex) { if (!(ex instanceof ExitStatus)) { throw ex } })); Module["inspect"] = (function () { return "[Emscripten Module object]" }) } else if (ENVIRONMENT_IS_SHELL) { if (!Module["print"]) Module["print"] = print; if (typeof printErr != "undefined") Module["printErr"] = printErr; if (typeof read != "undefined") { Module["read"] = read } else { Module["read"] = function read() { throw "no read() available (jsc?)" } } Module["readBinary"] = function readBinary(f) { if (typeof readbuffer === "function") { return new Uint8Array(readbuffer(f)) } var data = read(f, "binary"); assert(typeof data === "object"); return data }; if (typeof scriptArgs != "undefined") { Module["arguments"] = scriptArgs } else if (typeof arguments != "undefined") { Module["arguments"] = arguments } } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { Module["read"] = function read(url) { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.send(null); return xhr.responseText }; Module["readAsync"] = function readAsync(url, onload, onerror) { var xhr = new XMLHttpRequest; xhr.open("GET", url, true); xhr.responseType = "arraybuffer"; xhr.onload = function xhr_onload() { if (xhr.status == 200 || xhr.status == 0 && xhr.response) { onload(xhr.response) } else { onerror() } }; xhr.onerror = onerror; xhr.send(null) }; if (typeof arguments != "undefined") { Module["arguments"] = arguments } if (typeof console !== "undefined") { if (!Module["print"]) Module["print"] = function print(x) { console.log(x) }; if (!Module["printErr"]) Module["printErr"] = function printErr(x) { console.warn(x) } } else { var TRY_USE_DUMP = false; if (!Module["print"]) Module["print"] = TRY_USE_DUMP && typeof dump !== "undefined" ? (function (x) { dump(x) }) : (function (x) { }) } if (ENVIRONMENT_IS_WORKER) { Module["load"] = importScripts } if (typeof Module["setWindowTitle"] === "undefined") { Module["setWindowTitle"] = (function (title) { document.title = title }) } } else { throw "Unknown runtime environment. Where are we?" } function globalEval(x) { eval.call(null, x) } if (!Module["load"] && Module["read"]) { Module["load"] = function load(f) { globalEval(Module["read"](f)) } } if (!Module["print"]) { Module["print"] = (function () { }) } if (!Module["printErr"]) { Module["printErr"] = Module["print"] } if (!Module["arguments"]) { Module["arguments"] = [] } if (!Module["thisProgram"]) { Module["thisProgram"] = "./this.program" } Module.print = Module["print"]; Module.printErr = Module["printErr"]; Module["preRun"] = []; Module["postRun"] = []; for (var key in moduleOverrides) { if (moduleOverrides.hasOwnProperty(key)) { Module[key] = moduleOverrides[key] } } moduleOverrides = undefined; var Runtime = { setTempRet0: (function (value) { tempRet0 = value }), getTempRet0: (function () { return tempRet0 }), stackSave: (function () { return STACKTOP }), stackRestore: (function (stackTop) { STACKTOP = stackTop }), getNativeTypeSize: (function (type) { switch (type) { case "i1": case "i8": return 1; case "i16": return 2; case "i32": return 4; case "i64": return 8; case "float": return 4; case "double": return 8; default: { if (type[type.length - 1] === "*") { return Runtime.QUANTUM_SIZE } else if (type[0] === "i") { var bits = parseInt(type.substr(1)); assert(bits % 8 === 0); return bits / 8 } else { return 0 } } } }), getNativeFieldSize: (function (type) { return Math.max(Runtime.getNativeTypeSize(type), Runtime.QUANTUM_SIZE) }), STACK_ALIGN: 16, prepVararg: (function (ptr, type) { if (type === "double" || type === "i64") { if (ptr & 7) { assert((ptr & 7) === 4); ptr += 4 } } else { assert((ptr & 3) === 0) } return ptr }), getAlignSize: (function (type, size, vararg) { if (!vararg && (type == "i64" || type == "double")) return 8; if (!type) return Math.min(size, 8); return Math.min(size || (type ? Runtime.getNativeFieldSize(type) : 0), Runtime.QUANTUM_SIZE) }), dynCall: (function (sig, ptr, args) { if (args && args.length) { return Module["dynCall_" + sig].apply(null, [ptr].concat(args)) } else { return Module["dynCall_" + sig].call(null, ptr) } }), functionPointers: [null, null, null, null, null, null, null, null], addFunction: (function (func) { for (var i = 0; i < Runtime.functionPointers.length; i++) { if (!Runtime.functionPointers[i]) { Runtime.functionPointers[i] = func; return 2 * (1 + i) } } throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." }), removeFunction: (function (index) { Runtime.functionPointers[(index - 2) / 2] = null }), warnOnce: (function (text) { if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {}; if (!Runtime.warnOnce.shown[text]) { Runtime.warnOnce.shown[text] = 1; Module.printErr(text) } }), funcWrappers: {}, getFuncWrapper: (function (func, sig) { assert(sig); if (!Runtime.funcWrappers[sig]) { Runtime.funcWrappers[sig] = {} } var sigCache = Runtime.funcWrappers[sig]; if (!sigCache[func]) { if (sig.length === 1) { sigCache[func] = function dynCall_wrapper() { return Runtime.dynCall(sig, func) } } else if (sig.length === 2) { sigCache[func] = function dynCall_wrapper(arg) { return Runtime.dynCall(sig, func, [arg]) } } else { sigCache[func] = function dynCall_wrapper() { return Runtime.dynCall(sig, func, Array.prototype.slice.call(arguments)) } } } return sigCache[func] }), getCompilerSetting: (function (name) { throw "You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work" }), stackAlloc: (function (size) { var ret = STACKTOP; STACKTOP = STACKTOP + size | 0; STACKTOP = STACKTOP + 15 & -16; return ret }), staticAlloc: (function (size) { var ret = STATICTOP; STATICTOP = STATICTOP + size | 0; STATICTOP = STATICTOP + 15 & -16; return ret }), dynamicAlloc: (function (size) { var ret = DYNAMICTOP; DYNAMICTOP = DYNAMICTOP + size | 0; DYNAMICTOP = DYNAMICTOP + 15 & -16; if (DYNAMICTOP >= TOTAL_MEMORY) { var success = enlargeMemory(); if (!success) { DYNAMICTOP = ret; return 0 } } return ret }), alignMemory: (function (size, quantum) { var ret = size = Math.ceil(size / (quantum ? quantum : 16)) * (quantum ? quantum : 16); return ret }), makeBigInt: (function (low, high, unsigned) { var ret = unsigned ? +(low >>> 0) + +(high >>> 0) * +4294967296 : +(low >>> 0) + +(high | 0) * +4294967296; return ret }), GLOBAL_BASE: 8, QUANTUM_SIZE: 4, __dummy__: 0 }; Module["Runtime"] = Runtime; var ABORT = false; var EXITSTATUS = 0; function assert(condition, text) { if (!condition) { abort("Assertion failed: " + text) } } function getCFunc(ident) { var func = Module["_" + ident]; if (!func) { try { func = eval("_" + ident) } catch (e) { } } assert(func, "Cannot call unknown function " + ident + " (perhaps LLVM optimizations or closure removed it?)"); return func } var cwrap, ccall; ((function () { var JSfuncs = { "stackSave": (function () { Runtime.stackSave() }), "stackRestore": (function () { Runtime.stackRestore() }), "arrayToC": (function (arr) { var ret = Runtime.stackAlloc(arr.length); writeArrayToMemory(arr, ret); return ret }), "stringToC": (function (str) { var ret = 0; if (str !== null && str !== undefined && str !== 0) { ret = Runtime.stackAlloc((str.length << 2) + 1); writeStringToMemory(str, ret) } return ret }) }; var toC = { "string": JSfuncs["stringToC"], "array": JSfuncs["arrayToC"] }; ccall = function ccallFunc(ident, returnType, argTypes, args, opts) { var func = getCFunc(ident); var cArgs = []; var stack = 0; if (args) { for (var i = 0; i < args.length; i++) { var converter = toC[argTypes[i]]; if (converter) { if (stack === 0) stack = Runtime.stackSave(); cArgs[i] = converter(args[i]) } else { cArgs[i] = args[i] } } } var ret = func.apply(null, cArgs); if (returnType === "string") ret = Pointer_stringify(ret); if (stack !== 0) { if (opts && opts.async) { EmterpreterAsync.asyncFinalizers.push((function () { Runtime.stackRestore(stack) })); return } Runtime.stackRestore(stack) } return ret }; var sourceRegex = /^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/; function parseJSFunc(jsfunc) { var parsed = jsfunc.toString().match(sourceRegex).slice(1); return { arguments: parsed[0], body: parsed[1], returnValue: parsed[2] } } var JSsource = null; function ensureJSsource() { if (!JSsource) { JSsource = {}; for (var fun in JSfuncs) { if (JSfuncs.hasOwnProperty(fun)) { JSsource[fun] = parseJSFunc(JSfuncs[fun]) } } } } cwrap = function cwrap(ident, returnType, argTypes) { argTypes = argTypes || []; var cfunc = getCFunc(ident); var numericArgs = argTypes.every((function (type) { return type === "number" })); var numericRet = returnType !== "string"; if (numericRet && numericArgs) { return cfunc } var argNames = argTypes.map((function (x, i) { return "$" + i })); var funcstr = "(function(" + argNames.join(",") + ") {"; var nargs = argTypes.length; if (!numericArgs) { ensureJSsource(); funcstr += "var stack = " + JSsource["stackSave"].body + ";"; for (var i = 0; i < nargs; i++) { var arg = argNames[i], type = argTypes[i]; if (type === "number") continue; var convertCode = JSsource[type + "ToC"]; funcstr += "var " + convertCode.arguments + " = " + arg + ";"; funcstr += convertCode.body + ";"; funcstr += arg + "=(" + convertCode.returnValue + ");" } } var cfuncname = parseJSFunc((function () { return cfunc })).returnValue; funcstr += "var ret = " + cfuncname + "(" + argNames.join(",") + ");"; if (!numericRet) { var strgfy = parseJSFunc((function () { return Pointer_stringify })).returnValue; funcstr += "ret = " + strgfy + "(ret);" } if (!numericArgs) { ensureJSsource(); funcstr += JSsource["stackRestore"].body.replace("()", "(stack)") + ";" } funcstr += "return ret})"; return eval(funcstr) } }))(); Module["ccall"] = ccall; Module["cwrap"] = cwrap; function setValue(ptr, value, type, noSafe) { type = type || "i8"; if (type.charAt(type.length - 1) === "*") type = "i32"; switch (type) { case "i1": HEAP8[ptr >> 0] = value; break; case "i8": HEAP8[ptr >> 0] = value; break; case "i16": HEAP16[ptr >> 1] = value; break; case "i32": HEAP32[ptr >> 2] = value; break; case "i64": tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= +1 ? tempDouble > +0 ? (Math_min(+Math_floor(tempDouble / +4294967296), +4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / +4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; break; case "float": HEAPF32[ptr >> 2] = value; break; case "double": HEAPF64[ptr >> 3] = value; break; default: abort("invalid type for setValue: " + type) } } Module["setValue"] = setValue; function getValue(ptr, type, noSafe) { type = type || "i8"; if (type.charAt(type.length - 1) === "*") type = "i32"; switch (type) { case "i1": return HEAP8[ptr >> 0]; case "i8": return HEAP8[ptr >> 0]; case "i16": return HEAP16[ptr >> 1]; case "i32": return HEAP32[ptr >> 2]; case "i64": return HEAP32[ptr >> 2]; case "float": return HEAPF32[ptr >> 2]; case "double": return HEAPF64[ptr >> 3]; default: abort("invalid type for setValue: " + type) }return null } Module["getValue"] = getValue; var ALLOC_NORMAL = 0; var ALLOC_STACK = 1; var ALLOC_STATIC = 2; var ALLOC_DYNAMIC = 3; var ALLOC_NONE = 4; Module["ALLOC_NORMAL"] = ALLOC_NORMAL; Module["ALLOC_STACK"] = ALLOC_STACK; Module["ALLOC_STATIC"] = ALLOC_STATIC; Module["ALLOC_DYNAMIC"] = ALLOC_DYNAMIC; Module["ALLOC_NONE"] = ALLOC_NONE; function allocate(slab, types, allocator, ptr) { var zeroinit, size; if (typeof slab === "number") { zeroinit = true; size = slab } else { zeroinit = false; size = slab.length } var singleType = typeof types === "string" ? types : null; var ret; if (allocator == ALLOC_NONE) { ret = ptr } else { ret = [typeof _malloc === "function" ? _malloc : Runtime.staticAlloc, Runtime.stackAlloc, Runtime.staticAlloc, Runtime.dynamicAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length)) } if (zeroinit) { var ptr = ret, stop; assert((ret & 3) == 0); stop = ret + (size & ~3); for (; ptr < stop; ptr += 4) { HEAP32[ptr >> 2] = 0 } stop = ret + size; while (ptr < stop) { HEAP8[ptr++ >> 0] = 0 } return ret } if (singleType === "i8") { if (slab.subarray || slab.slice) { HEAPU8.set(slab, ret) } else { HEAPU8.set(new Uint8Array(slab), ret) } return ret } var i = 0, type, typeSize, previousType; while (i < size) { var curr = slab[i]; if (typeof curr === "function") { curr = Runtime.getFunctionIndex(curr) } type = singleType || types[i]; if (type === 0) { i++; continue } if (type == "i64") type = "i32"; setValue(ret + i, curr, type); if (previousType !== type) { typeSize = Runtime.getNativeTypeSize(type); previousType = type } i += typeSize } return ret } Module["allocate"] = allocate; function getMemory(size) { if (!staticSealed) return Runtime.staticAlloc(size); if (typeof _sbrk !== "undefined" && !_sbrk.called || !runtimeInitialized) return Runtime.dynamicAlloc(size); return _malloc(size) } Module["getMemory"] = getMemory; function Pointer_stringify(ptr, length) { if (length === 0 || !ptr) return ""; var hasUtf = 0; var t; var i = 0; while (1) { t = HEAPU8[ptr + i >> 0]; hasUtf |= t; if (t == 0 && !length) break; i++; if (length && i == length) break } if (!length) length = i; var ret = ""; if (hasUtf < 128) { var MAX_CHUNK = 1024; var curr; while (length > 0) { curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK))); ret = ret ? ret + curr : curr; ptr += MAX_CHUNK; length -= MAX_CHUNK } return ret } return Module["UTF8ToString"](ptr) } Module["Pointer_stringify"] = Pointer_stringify; function AsciiToString(ptr) { var str = ""; while (1) { var ch = HEAP8[ptr++ >> 0]; if (!ch) return str; str += String.fromCharCode(ch) } } Module["AsciiToString"] = AsciiToString; function stringToAscii(str, outPtr) { return writeAsciiToMemory(str, outPtr, false) } Module["stringToAscii"] = stringToAscii; var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; function UTF8ArrayToString(u8Array, idx) { var endPtr = idx; while (u8Array[endPtr]) ++endPtr; if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) } else { var u0, u1, u2, u3, u4, u5; var str = ""; while (1) { u0 = u8Array[idx++]; if (!u0) return str; if (!(u0 & 128)) { str += String.fromCharCode(u0); continue } u1 = u8Array[idx++] & 63; if ((u0 & 224) == 192) { str += String.fromCharCode((u0 & 31) << 6 | u1); continue } u2 = u8Array[idx++] & 63; if ((u0 & 240) == 224) { u0 = (u0 & 15) << 12 | u1 << 6 | u2 } else { u3 = u8Array[idx++] & 63; if ((u0 & 248) == 240) { u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u3 } else { u4 = u8Array[idx++] & 63; if ((u0 & 252) == 248) { u0 = (u0 & 3) << 24 | u1 << 18 | u2 << 12 | u3 << 6 | u4 } else { u5 = u8Array[idx++] & 63; u0 = (u0 & 1) << 30 | u1 << 24 | u2 << 18 | u3 << 12 | u4 << 6 | u5 } } } if (u0 < 65536) { str += String.fromCharCode(u0) } else { var ch = u0 - 65536; str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) } } } } Module["UTF8ArrayToString"] = UTF8ArrayToString; function UTF8ToString(ptr) { return UTF8ArrayToString(HEAPU8, ptr) } Module["UTF8ToString"] = UTF8ToString; function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { if (!(maxBytesToWrite > 0)) return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; for (var i = 0; i < str.length; ++i) { var u = str.charCodeAt(i); if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; if (u <= 127) { if (outIdx >= endIdx) break; outU8Array[outIdx++] = u } else if (u <= 2047) { if (outIdx + 1 >= endIdx) break; outU8Array[outIdx++] = 192 | u >> 6; outU8Array[outIdx++] = 128 | u & 63 } else if (u <= 65535) { if (outIdx + 2 >= endIdx) break; outU8Array[outIdx++] = 224 | u >> 12; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } else if (u <= 2097151) { if (outIdx + 3 >= endIdx) break; outU8Array[outIdx++] = 240 | u >> 18; outU8Array[outIdx++] = 128 | u >> 12 & 63; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } else if (u <= 67108863) { if (outIdx + 4 >= endIdx) break; outU8Array[outIdx++] = 248 | u >> 24; outU8Array[outIdx++] = 128 | u >> 18 & 63; outU8Array[outIdx++] = 128 | u >> 12 & 63; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } else { if (outIdx + 5 >= endIdx) break; outU8Array[outIdx++] = 252 | u >> 30; outU8Array[outIdx++] = 128 | u >> 24 & 63; outU8Array[outIdx++] = 128 | u >> 18 & 63; outU8Array[outIdx++] = 128 | u >> 12 & 63; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } } outU8Array[outIdx] = 0; return outIdx - startIdx } Module["stringToUTF8Array"] = stringToUTF8Array; function stringToUTF8(str, outPtr, maxBytesToWrite) { return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) } Module["stringToUTF8"] = stringToUTF8; 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 if (u <= 2097151) { len += 4 } else if (u <= 67108863) { len += 5 } else { len += 6 } } return len } Module["lengthBytesUTF8"] = lengthBytesUTF8; var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; function demangle(func) { var hasLibcxxabi = !!Module["___cxa_demangle"]; if (hasLibcxxabi) { try { var buf = _malloc(func.length); writeStringToMemory(func.substr(1), buf); var status = _malloc(4); var ret = Module["___cxa_demangle"](buf, 0, 0, status); if (getValue(status, "i32") === 0 && ret) { return Pointer_stringify(ret) } } catch (e) { } finally { if (buf) _free(buf); if (status) _free(status); if (ret) _free(ret) } return func } Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); return func } function demangleAll(text) { return text.replace(/__Z[\w\d_]+/g, (function (x) { var y = demangle(x); return x === y ? x : x + " [" + y + "]" })) } function jsStackTrace() { var err = new Error; if (!err.stack) { try { throw new Error(0) } catch (e) { err = e } if (!err.stack) { return "(no stack trace available)" } } return err.stack.toString() } function stackTrace() { var js = jsStackTrace(); if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); return demangleAll(js) } Module["stackTrace"] = stackTrace; function alignMemoryPage(x) { if (x % 4096 > 0) { x += 4096 - x % 4096 } return x } var HEAP; var buffer; var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; function updateGlobalBufferViews() { Module["HEAP8"] = HEAP8 = new Int8Array(buffer); Module["HEAP16"] = HEAP16 = new Int16Array(buffer); Module["HEAP32"] = HEAP32 = new Int32Array(buffer); Module["HEAPU8"] = HEAPU8 = new Uint8Array(buffer); Module["HEAPU16"] = HEAPU16 = new Uint16Array(buffer); Module["HEAPU32"] = HEAPU32 = new Uint32Array(buffer); Module["HEAPF32"] = HEAPF32 = new Float32Array(buffer); Module["HEAPF64"] = HEAPF64 = new Float64Array(buffer) } var STATIC_BASE = 0, STATICTOP = 0, staticSealed = false; var STACK_BASE = 0, STACKTOP = 0, STACK_MAX = 0; var DYNAMIC_BASE = 0, DYNAMICTOP = 0; function abortOnCannotGrowMemory() { abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + TOTAL_MEMORY + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") } function enlargeMemory() { abortOnCannotGrowMemory() } var TOTAL_STACK = Module["TOTAL_STACK"] || 5242880; var TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 134217728; var totalMemory = 64 * 1024; while (totalMemory < TOTAL_MEMORY || totalMemory < 2 * TOTAL_STACK) { if (totalMemory < 16 * 1024 * 1024) { totalMemory *= 2 } else { totalMemory += 16 * 1024 * 1024 } } if (totalMemory !== TOTAL_MEMORY) { TOTAL_MEMORY = totalMemory } if (Module["buffer"]) { buffer = Module["buffer"] } else { buffer = new ArrayBuffer(TOTAL_MEMORY) } updateGlobalBufferViews(); HEAP32[0] = 1668509029; HEAP16[1] = 25459; if (HEAPU8[2] !== 115 || HEAPU8[3] !== 99) throw "Runtime error: expected the system to be little-endian!"; Module["HEAP"] = HEAP; Module["buffer"] = buffer; Module["HEAP8"] = HEAP8; Module["HEAP16"] = HEAP16; Module["HEAP32"] = HEAP32; Module["HEAPU8"] = HEAPU8; Module["HEAPU16"] = HEAPU16; Module["HEAPU32"] = HEAPU32; Module["HEAPF32"] = HEAPF32; Module["HEAPF64"] = HEAPF64; function callRuntimeCallbacks(callbacks) { while (callbacks.length > 0) { var callback = callbacks.shift(); if (typeof callback == "function") { callback(); continue } var func = callback.func; if (typeof func === "number") { if (callback.arg === undefined) { Runtime.dynCall("v", func) } else { Runtime.dynCall("vi", func, [callback.arg]) } } else { func(callback.arg === undefined ? null : callback.arg) } } } var __ATPRERUN__ = []; var __ATINIT__ = []; var __ATMAIN__ = []; var __ATEXIT__ = []; var __ATPOSTRUN__ = []; var runtimeInitialized = false; var runtimeExited = false; function preRun() { if (Module["preRun"]) { if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; while (Module["preRun"].length) { addOnPreRun(Module["preRun"].shift()) } } callRuntimeCallbacks(__ATPRERUN__) } function ensureInitRuntime() { if (runtimeInitialized) return; runtimeInitialized = true; callRuntimeCallbacks(__ATINIT__) } function preMain() { callRuntimeCallbacks(__ATMAIN__) } function exitRuntime() { callRuntimeCallbacks(__ATEXIT__); runtimeExited = true } function postRun() { if (Module["postRun"]) { if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; while (Module["postRun"].length) { addOnPostRun(Module["postRun"].shift()) } } callRuntimeCallbacks(__ATPOSTRUN__) } function addOnPreRun(cb) { __ATPRERUN__.unshift(cb) } Module["addOnPreRun"] = addOnPreRun; function addOnInit(cb) { __ATINIT__.unshift(cb) } Module["addOnInit"] = addOnInit; function addOnPreMain(cb) { __ATMAIN__.unshift(cb) } Module["addOnPreMain"] = addOnPreMain; function addOnExit(cb) { __ATEXIT__.unshift(cb) } Module["addOnExit"] = addOnExit; function addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb) } Module["addOnPostRun"] = addOnPostRun; 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 } Module["intArrayFromString"] = intArrayFromString; function intArrayToString(array) { var ret = []; for (var i = 0; i < array.length; i++) { var chr = array[i]; if (chr > 255) { chr &= 255 } ret.push(String.fromCharCode(chr)) } return ret.join("") } Module["intArrayToString"] = intArrayToString; function writeStringToMemory(string, buffer, dontAddNull) { var array = intArrayFromString(string, dontAddNull); var i = 0; while (i < array.length) { var chr = array[i]; HEAP8[buffer + i >> 0] = chr; i = i + 1 } } Module["writeStringToMemory"] = writeStringToMemory; function writeArrayToMemory(array, buffer) { for (var i = 0; i < array.length; i++) { HEAP8[buffer++ >> 0] = array[i] } } Module["writeArrayToMemory"] = writeArrayToMemory; function writeAsciiToMemory(str, buffer, dontAddNull) { for (var i = 0; i < str.length; ++i) { HEAP8[buffer++ >> 0] = str.charCodeAt(i) } if (!dontAddNull) HEAP8[buffer >> 0] = 0 } Module["writeAsciiToMemory"] = writeAsciiToMemory; if (!Math["imul"] || Math["imul"](4294967295, 5) !== -5) Math["imul"] = function imul(a, b) { var ah = a >>> 16; var al = a & 65535; var bh = b >>> 16; var bl = b & 65535; return al * bl + (ah * bl + al * bh << 16) | 0 }; Math.imul = Math["imul"]; if (!Math["clz32"]) Math["clz32"] = (function (x) { x = x >>> 0; for (var i = 0; i < 32; i++) { if (x & 1 << 31 - i) return i } return 32 }); Math.clz32 = Math["clz32"]; if (!Math["trunc"]) Math["trunc"] = (function (x) { return x < 0 ? Math.ceil(x) : Math.floor(x) }); Math.trunc = Math["trunc"]; var Math_abs = Math.abs; var Math_cos = Math.cos; var Math_sin = Math.sin; var Math_tan = Math.tan; var Math_acos = Math.acos; var Math_asin = Math.asin; var Math_atan = Math.atan; var Math_atan2 = Math.atan2; var Math_exp = Math.exp; var Math_log = Math.log; var Math_sqrt = Math.sqrt; var Math_ceil = Math.ceil; var Math_floor = Math.floor; var Math_pow = Math.pow; var Math_imul = Math.imul; var Math_fround = Math.fround; var Math_min = Math.min; var Math_clz32 = Math.clz32; var Math_trunc = Math.trunc; var runDependencies = 0; var runDependencyWatcher = null; var dependenciesFulfilled = null; function getUniqueRunDependency(id) { return id } function addRunDependency(id) { runDependencies++; if (Module["monitorRunDependencies"]) { Module["monitorRunDependencies"](runDependencies) } } Module["addRunDependency"] = addRunDependency; function removeRunDependency(id) { runDependencies--; if (Module["monitorRunDependencies"]) { Module["monitorRunDependencies"](runDependencies) } if (runDependencies == 0) { if (runDependencyWatcher !== null) { clearInterval(runDependencyWatcher); runDependencyWatcher = null } if (dependenciesFulfilled) { var callback = dependenciesFulfilled; dependenciesFulfilled = null; callback() } } } Module["removeRunDependency"] = removeRunDependency; Module["preloadedImages"] = {}; Module["preloadedAudios"] = {}; var ASM_CONSTS = []; STATIC_BASE = 8; STATICTOP = STATIC_BASE + 15648; __ATINIT__.push(); allocate([0, 0, 0, 0, 0, 96, 127, 64, 21, 13, 0, 0, 100, 16, 0, 0, 25, 13, 0, 0, 28, 13, 0, 0, 33, 13, 0, 0, 220, 29, 0, 0, 86, 21, 0, 0, 40, 13, 0, 0, 82, 19, 0, 0, 44, 13, 0, 0, 49, 13, 0, 0, 52, 13, 0, 0, 55, 13, 0, 0, 92, 21, 0, 0, 61, 13, 0, 0, 65, 13, 0, 0, 68, 13, 0, 0, 164, 27, 0, 0, 75, 13, 0, 0, 81, 21, 0, 0, 80, 13, 0, 0, 86, 13, 0, 0, 92, 13, 0, 0, 43, 16, 0, 0, 95, 13, 0, 0, 98, 13, 0, 0, 101, 13, 0, 0, 104, 13, 0, 0, 107, 13, 0, 0, 110, 13, 0, 0, 116, 13, 0, 0, 125, 13, 0, 0, 132, 13, 0, 0, 159, 34, 0, 0, 92, 21, 0, 0, 58, 19, 0, 0, 66, 19, 0, 0, 75, 19, 0, 0, 179, 39, 0, 0, 167, 39, 0, 0, 82, 19, 0, 0, 66, 19, 0, 0, 91, 19, 0, 0, 98, 19, 0, 0, 104, 19, 0, 0, 126, 39, 0, 0, 110, 19, 0, 0, 153, 36, 0, 0, 152, 27, 0, 0, 121, 19, 0, 0, 127, 19, 0, 0, 132, 19, 0, 0, 138, 19, 0, 0, 144, 19, 0, 0, 150, 19, 0, 0, 156, 19, 0, 0, 162, 19, 0, 0, 168, 19, 0, 0, 174, 19, 0, 0, 179, 19, 0, 0, 184, 19, 0, 0, 193, 19, 0, 0, 95, 23, 0, 0, 18, 0, 0, 0, 102, 23, 0, 0, 19, 0, 0, 0, 117, 23, 0, 0, 20, 0, 0, 0, 124, 23, 0, 0, 21, 0, 0, 0, 234, 26, 0, 0, 22, 0, 0, 0, 130, 23, 0, 0, 23, 0, 0, 0, 137, 23, 0, 0, 24, 0, 0, 0, 146, 23, 0, 0, 25, 0, 0, 0, 151, 23, 0, 0, 25, 0, 0, 0, 162, 23, 0, 0, 26, 0, 0, 0, 167, 23, 0, 0, 27, 0, 0, 0, 173, 23, 0, 0, 28, 0, 0, 0, 179, 23, 0, 0, 29, 0, 0, 0, 185, 23, 0, 0, 30, 0, 0, 0, 194, 23, 0, 0, 31, 0, 0, 0, 201, 23, 0, 0, 32, 0, 0, 0, 208, 23, 0, 0, 33, 0, 0, 0, 215, 23, 0, 0, 34, 0, 0, 0, 54, 27, 0, 0, 35, 0, 0, 0, 222, 23, 0, 0, 36, 0, 0, 0, 231, 23, 0, 0, 37, 0, 0, 0, 96, 30, 0, 0, 38, 0, 0, 0, 240, 23, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 25, 0, 0, 14, 25, 0, 0, 1, 25, 0, 0, 171, 27, 0, 0, 22, 25, 0, 0, 27, 25, 0, 0, 36, 25, 0, 0, 47, 25, 0, 0, 59, 25, 0, 0, 69, 25, 0, 0, 82, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 9, 0, 0, 0, 10, 0, 0, 0, 11, 0, 0, 0, 112, 25, 0, 0, 40, 0, 0, 0, 120, 25, 0, 0, 41, 0, 0, 0, 125, 25, 0, 0, 42, 0, 0, 0, 130, 25, 0, 0, 43, 0, 0, 0, 134, 25, 0, 0, 44, 0, 0, 0, 139, 25, 0, 0, 45, 0, 0, 0, 145, 25, 0, 0, 46, 0, 0, 0, 153, 25, 0, 0, 47, 0, 0, 0, 161, 25, 0, 0, 48, 0, 0, 0, 168, 25, 0, 0, 49, 0, 0, 0, 176, 25, 0, 0, 50, 0, 0, 0, 184, 25, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 26, 0, 0, 52, 0, 0, 0, 25, 26, 0, 0, 53, 0, 0, 0, 32, 26, 0, 0, 54, 0, 0, 0, 40, 26, 0, 0, 55, 0, 0, 0, 47, 26, 0, 0, 56, 0, 0, 0, 52, 26, 0, 0, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 197, 39, 0, 0, 58, 0, 0, 0, 184, 26, 0, 0, 59, 0, 0, 0, 197, 26, 0, 0, 60, 0, 0, 0, 205, 26, 0, 0, 61, 0, 0, 0, 213, 26, 0, 0, 62, 0, 0, 0, 222, 26, 0, 0, 63, 0, 0, 0, 234, 26, 0, 0, 64, 0, 0, 0, 247, 26, 0, 0, 65, 0, 0, 0, 2, 27, 0, 0, 66, 0, 0, 0, 14, 27, 0, 0, 67, 0, 0, 0, 24, 27, 0, 0, 68, 0, 0, 0, 37, 27, 0, 0, 69, 0, 0, 0, 45, 27, 0, 0, 70, 0, 0, 0, 54, 27, 0, 0, 71, 0, 0, 0, 67, 27, 0, 0, 72, 0, 0, 0, 78, 27, 0, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, 27, 0, 0, 164, 27, 0, 0, 176, 29, 0, 0, 171, 27, 0, 0, 177, 27, 0, 0, 56, 29, 0, 0, 74, 0, 0, 0, 62, 29, 0, 0, 75, 0, 0, 0, 64, 30, 0, 0, 76, 0, 0, 0, 68, 29, 0, 0, 77, 0, 0, 0, 70, 30, 0, 0, 78, 0, 0, 0, 75, 30, 0, 0, 79, 0, 0, 0, 82, 30, 0, 0, 80, 0, 0, 0, 74, 29, 0, 0, 81, 0, 0, 0, 88, 30, 0, 0, 82, 0, 0, 0, 96, 30, 0, 0, 83, 0, 0, 0, 92, 29, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 29, 0, 0, 74, 0, 0, 0, 62, 29, 0, 0, 85, 0, 0, 0, 68, 29, 0, 0, 86, 0, 0, 0, 74, 29, 0, 0, 87, 0, 0, 0, 79, 29, 0, 0, 88, 0, 0, 0, 84, 29, 0, 0, 89, 0, 0, 0, 92, 29, 0, 0, 90, 0, 0, 0, 153, 36, 0, 0, 91, 0, 0, 0, 98, 29, 0, 0, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168, 29, 0, 0, 171, 29, 0, 0, 176, 29, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 216, 29, 0, 0, 181, 29, 0, 0, 220, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 217, 30, 0, 0, 93, 0, 0, 0, 221, 30, 0, 0, 94, 0, 0, 0, 226, 30, 0, 0, 95, 0, 0, 0, 231, 30, 0, 0, 96, 0, 0, 0, 237, 30, 0, 0, 97, 0, 0, 0, 242, 30, 0, 0, 98, 0, 0, 0, 247, 30, 0, 0, 99, 0, 0, 0, 252, 30, 0, 0, 100, 0, 0, 0, 0, 31, 0, 0, 101, 0, 0, 0, 4, 31, 0, 0, 102, 0, 0, 0, 8, 31, 0, 0, 103, 0, 0, 0, 14, 31, 0, 0, 104, 0, 0, 0, 19, 31, 0, 0, 105, 0, 0, 0, 25, 31, 0, 0, 106, 0, 0, 0, 31, 31, 0, 0, 107, 0, 0, 0, 37, 31, 0, 0, 108, 0, 0, 0, 41, 31, 0, 0, 109, 0, 0, 0, 254, 31, 0, 0, 110, 0, 0, 0, 45, 31, 0, 0, 111, 0, 0, 0, 50, 31, 0, 0, 112, 0, 0, 0, 54, 31, 0, 0, 113, 0, 0, 0, 58, 31, 0, 0, 114, 0, 0, 0, 65, 31, 0, 0, 115, 0, 0, 0, 76, 31, 0, 0, 116, 0, 0, 0, 81, 31, 0, 0, 117, 0, 0, 0, 85, 31, 0, 0, 118, 0, 0, 0, 90, 31, 0, 0, 119, 0, 0, 0, 95, 31, 0, 0, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 143, 31, 0, 0, 121, 0, 0, 0, 149, 31, 0, 0, 122, 0, 0, 0, 154, 31, 0, 0, 123, 0, 0, 0, 163, 31, 0, 0, 124, 0, 0, 0, 171, 31, 0, 0, 125, 0, 0, 0, 176, 31, 0, 0, 126, 0, 0, 0, 212, 35, 0, 0, 127, 0, 0, 0, 183, 31, 0, 0, 128, 0, 0, 0, 190, 31, 0, 0, 129, 0, 0, 0, 200, 31, 0, 0, 130, 0, 0, 0, 205, 31, 0, 0, 131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 32, 0, 0, 65, 32, 0, 0, 73, 32, 0, 0, 79, 32, 0, 0, 88, 32, 0, 0, 200, 31, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 171, 32, 0, 0, 132, 0, 0, 0, 176, 32, 0, 0, 133, 0, 0, 0, 181, 32, 0, 0, 134, 0, 0, 0, 186, 32, 0, 0, 135, 0, 0, 0, 191, 32, 0, 0, 136, 0, 0, 0, 198, 32, 0, 0, 137, 0, 0, 0, 205, 32, 0, 0, 138, 0, 0, 0, 210, 32, 0, 0, 139, 0, 0, 0, 214, 32, 0, 0, 140, 0, 0, 0, 220, 32, 0, 0, 141, 0, 0, 0, 226, 32, 0, 0, 142, 0, 0, 0, 230, 32, 0, 0, 143, 0, 0, 0, 238, 32, 0, 0, 144, 0, 0, 0, 242, 32, 0, 0, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188, 35, 0, 0, 146, 0, 0, 0, 195, 35, 0, 0, 147, 0, 0, 0, 200, 35, 0, 0, 148, 0, 0, 0, 207, 35, 0, 0, 149, 0, 0, 0, 181, 35, 0, 0, 150, 0, 0, 0, 212, 35, 0, 0, 151, 0, 0, 0, 219, 35, 0, 0, 152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 39, 0, 0, 153, 0, 0, 0, 108, 39, 0, 0, 154, 0, 0, 0, 119, 39, 0, 0, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 37, 0, 0, 156, 0, 0, 0, 232, 37, 0, 0, 157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 192, 3, 0, 0, 192, 4, 0, 0, 192, 5, 0, 0, 192, 6, 0, 0, 192, 7, 0, 0, 192, 8, 0, 0, 192, 9, 0, 0, 192, 10, 0, 0, 192, 11, 0, 0, 192, 12, 0, 0, 192, 13, 0, 0, 192, 14, 0, 0, 192, 15, 0, 0, 192, 16, 0, 0, 192, 17, 0, 0, 192, 18, 0, 0, 192, 19, 0, 0, 192, 20, 0, 0, 192, 21, 0, 0, 192, 22, 0, 0, 192, 23, 0, 0, 192, 24, 0, 0, 192, 25, 0, 0, 192, 26, 0, 0, 192, 27, 0, 0, 192, 28, 0, 0, 192, 29, 0, 0, 192, 30, 0, 0, 192, 31, 0, 0, 192, 0, 0, 0, 179, 1, 0, 0, 195, 2, 0, 0, 195, 3, 0, 0, 195, 4, 0, 0, 195, 5, 0, 0, 195, 6, 0, 0, 195, 7, 0, 0, 195, 8, 0, 0, 195, 9, 0, 0, 195, 10, 0, 0, 195, 11, 0, 0, 195, 12, 0, 0, 195, 13, 0, 0, 211, 14, 0, 0, 195, 15, 0, 0, 195, 0, 0, 12, 187, 1, 0, 12, 195, 2, 0, 12, 195, 3, 0, 12, 195, 4, 0, 12, 211, 132, 7, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 240, 52, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 248, 7, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 19, 0, 0, 0, 248, 56, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 248, 7, 0, 0, 112, 8, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 19, 0, 0, 0, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 49, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 0, 61, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 10, 0, 0, 0, 100, 0, 0, 0, 232, 3, 0, 0, 16, 39, 0, 0, 160, 134, 1, 0, 64, 66, 15, 0, 128, 150, 152, 0, 0, 225, 245, 5, 95, 112, 137, 0, 255, 9, 47, 15, 99, 111, 110, 116, 114, 111, 108, 32, 115, 116, 114, 117, 99, 116, 117, 114, 101, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 111, 112, 99, 111, 100, 101, 115, 0, 102, 117, 110, 99, 116, 105, 111, 110, 32, 111, 114, 32, 101, 120, 112, 114, 101, 115, 115, 105, 111, 110, 32, 116, 111, 111, 32, 99, 111, 109, 112, 108, 101, 120, 0, 99, 111, 110, 115, 116, 97, 110, 116, 115, 0, 99, 111, 110, 115, 116, 114, 117, 99, 116, 111, 114, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 8, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 4, 4, 4, 4, 4, 4, 4, 21, 21, 21, 21, 21, 21, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 5, 4, 21, 21, 21, 21, 21, 21, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 42, 116, 101, 109, 112, 111, 114, 97, 114, 121, 41, 0, 40, 42, 118, 97, 114, 97, 114, 103, 41, 0, 61, 91, 67, 93, 0, 61, 63, 0, 109, 97, 105, 110, 0, 76, 117, 97, 0, 67, 0, 102, 111, 114, 32, 105, 116, 101, 114, 97, 116, 111, 114, 0, 109, 101, 116, 97, 109, 101, 116, 104, 111, 100, 0, 103, 108, 111, 98, 97, 108, 0, 102, 105, 101, 108, 100, 0, 99, 111, 110, 115, 116, 97, 110, 116, 0, 117, 112, 118, 97, 108, 117, 101, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 37, 115, 32, 37, 115, 32, 39, 37, 115, 39, 32, 40, 97, 32, 37, 115, 32, 118, 97, 108, 117, 101, 41, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 37, 115, 32, 97, 32, 37, 115, 32, 118, 97, 108, 117, 101, 0, 99, 111, 110, 99, 97, 116, 101, 110, 97, 116, 101, 0, 112, 101, 114, 102, 111, 114, 109, 32, 97, 114, 105, 116, 104, 109, 101, 116, 105, 99, 32, 111, 110, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 99, 111, 109, 112, 97, 114, 101, 32, 116, 119, 111, 32, 37, 115, 32, 118, 97, 108, 117, 101, 115, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 99, 111, 109, 112, 97, 114, 101, 32, 37, 115, 32, 119, 105, 116, 104, 32, 37, 115, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 121, 105, 101, 108, 100, 32, 97, 99, 114, 111, 115, 115, 32, 97, 32, 67, 45, 99, 97, 108, 108, 32, 98, 111, 117, 110, 100, 97, 114, 121, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 121, 105, 101, 108, 100, 32, 102, 114, 111, 109, 32, 111, 117, 116, 115, 105, 100, 101, 32, 97, 32, 99, 111, 114, 111, 117, 116, 105, 110, 101, 0, 101, 114, 114, 111, 114, 32, 105, 110, 32, 101, 114, 114, 111, 114, 32, 104, 97, 110, 100, 108, 105, 110, 103, 0, 67, 32, 115, 116, 97, 99, 107, 32, 111, 118, 101, 114, 102, 108, 111, 119, 0, 99, 97, 110, 110, 111, 116, 32, 114, 101, 115, 117, 109, 101, 32, 110, 111, 110, 45, 115, 117, 115, 112, 101, 110, 100, 101, 100, 32, 99, 111, 114, 111, 117, 116, 105, 110, 101, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 108, 111, 97, 100, 32, 97, 32, 37, 115, 32, 99, 104, 117, 110, 107, 32, 40, 109, 111, 100, 101, 32, 105, 115, 32, 39, 37, 115, 39, 41, 0, 98, 105, 110, 97, 114, 121, 0, 116, 101, 120, 116, 0, 110, 111, 32, 109, 101, 115, 115, 97, 103, 101, 0, 101, 114, 114, 111, 114, 32, 105, 110, 32, 95, 95, 103, 99, 32, 109, 101, 116, 97, 109, 101, 116, 104, 111, 100, 32, 40, 37, 115, 41, 0, 97, 110, 100, 0, 100, 111, 0, 101, 108, 115, 101, 0, 101, 108, 115, 101, 105, 102, 0, 102, 111, 114, 0, 103, 111, 116, 111, 0, 105, 102, 0, 105, 110, 0, 108, 111, 99, 97, 108, 0, 110, 111, 116, 0, 111, 114, 0, 114, 101, 112, 101, 97, 116, 0, 116, 104, 101, 110, 0, 117, 110, 116, 105, 108, 0, 119, 104, 105, 108, 101, 0, 46, 46, 0, 61, 61, 0, 62, 61, 0, 60, 61, 0, 126, 61, 0, 58, 58, 0, 60, 101, 111, 102, 62, 0, 60, 110, 117, 109, 98, 101, 114, 62, 0, 60, 110, 97, 109, 101, 62, 0, 60, 115, 116, 114, 105, 110, 103, 62, 0, 39, 37, 99, 39, 0, 99, 104, 97, 114, 40, 37, 100, 41, 0, 39, 37, 115, 39, 0, 37, 115, 58, 37, 100, 58, 32, 37, 115, 0, 108, 101, 120, 105, 99, 97, 108, 32, 101, 108, 101, 109, 101, 110, 116, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 37, 115, 32, 110, 101, 97, 114, 32, 37, 115, 0, 95, 69, 78, 86, 0, 99, 104, 117, 110, 107, 32, 104, 97, 115, 32, 116, 111, 111, 32, 109, 97, 110, 121, 32, 108, 105, 110, 101, 115, 0, 105, 110, 118, 97, 108, 105, 100, 32, 108, 111, 110, 103, 32, 115, 116, 114, 105, 110, 103, 32, 100, 101, 108, 105, 109, 105, 116, 101, 114, 0, 117, 110, 102, 105, 110, 105, 115, 104, 101, 100, 32, 115, 116, 114, 105, 110, 103, 0, 104, 101, 120, 97, 100, 101, 99, 105, 109, 97, 108, 32, 100, 105, 103, 105, 116, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 105, 110, 118, 97, 108, 105, 100, 32, 101, 115, 99, 97, 112, 101, 32, 115, 101, 113, 117, 101, 110, 99, 101, 0, 100, 101, 99, 105, 109, 97, 108, 32, 101, 115, 99, 97, 112, 101, 32, 116, 111, 111, 32, 108, 97, 114, 103, 101, 0, 88, 120, 0, 69, 101, 0, 80, 112, 0, 43, 45, 0, 109, 97, 108, 102, 111, 114, 109, 101, 100, 32, 110, 117, 109, 98, 101, 114, 0, 117, 110, 102, 105, 110, 105, 115, 104, 101, 100, 32, 108, 111, 110, 103, 32, 115, 116, 114, 105, 110, 103, 0, 117, 110, 102, 105, 110, 105, 115, 104, 101, 100, 32, 108, 111, 110, 103, 32, 99, 111, 109, 109, 101, 110, 116, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 37, 115, 32, 40, 108, 105, 109, 105, 116, 32, 105, 115, 32, 37, 100, 41, 0, 109, 101, 109, 111, 114, 121, 32, 97, 108, 108, 111, 99, 97, 116, 105, 111, 110, 32, 101, 114, 114, 111, 114, 58, 32, 98, 108, 111, 99, 107, 32, 116, 111, 111, 32, 98, 105, 103, 0, 0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 110, 78, 0, 120, 88, 0, 37, 112, 0, 37, 0, 105, 110, 118, 97, 108, 105, 100, 32, 111, 112, 116, 105, 111, 110, 32, 39, 37, 37, 37, 99, 39, 32, 116, 111, 32, 39, 108, 117, 97, 95, 112, 117, 115, 104, 102, 115, 116, 114, 105, 110, 103, 39, 0, 46, 46, 46, 0, 91, 115, 116, 114, 105, 110, 103, 32, 34, 0, 34, 93, 0, 96, 113, 65, 84, 80, 80, 92, 108, 60, 16, 60, 84, 108, 124, 124, 124, 124, 124, 124, 96, 96, 96, 104, 34, 188, 188, 188, 132, 228, 84, 84, 16, 98, 98, 4, 98, 20, 81, 80, 23, 98, 114, 101, 97, 107, 0, 108, 97, 98, 101, 108, 115, 47, 103, 111, 116, 111, 115, 0, 60, 37, 115, 62, 32, 97, 116, 32, 108, 105, 110, 101, 32, 37, 100, 32, 110, 111, 116, 32, 105, 110, 115, 105, 100, 101, 32, 97, 32, 108, 111, 111, 112, 0, 110, 111, 32, 118, 105, 115, 105, 98, 108, 101, 32, 108, 97, 98, 101, 108, 32, 39, 37, 115, 39, 32, 102, 111, 114, 32, 60, 103, 111, 116, 111, 62, 32, 97, 116, 32, 108, 105, 110, 101, 32, 37, 100, 0, 60, 103, 111, 116, 111, 32, 37, 115, 62, 32, 97, 116, 32, 108, 105, 110, 101, 32, 37, 100, 32, 106, 117, 109, 112, 115, 32, 105, 110, 116, 111, 32, 116, 104, 101, 32, 115, 99, 111, 112, 101, 32, 111, 102, 32, 108, 111, 99, 97, 108, 32, 39, 37, 115, 39, 0, 37, 115, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 102, 117, 110, 99, 116, 105, 111, 110, 32, 97, 116, 32, 108, 105, 110, 101, 32, 37, 100, 0, 109, 97, 105, 110, 32, 102, 117, 110, 99, 116, 105, 111, 110, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 37, 115, 32, 40, 108, 105, 109, 105, 116, 32, 105, 115, 32, 37, 100, 41, 32, 105, 110, 32, 37, 115, 0, 67, 32, 108, 101, 118, 101, 108, 115, 0, 37, 115, 32, 101, 120, 112, 101, 99, 116, 101, 100, 32, 40, 116, 111, 32, 99, 108, 111, 115, 101, 32, 37, 115, 32, 97, 116, 32, 108, 105, 110, 101, 32, 37, 100, 41, 0, 40, 102, 111, 114, 32, 105, 110, 100, 101, 120, 41, 0, 40, 102, 111, 114, 32, 108, 105, 109, 105, 116, 41, 0, 40, 102, 111, 114, 32, 115, 116, 101, 112, 41, 0, 40, 102, 111, 114, 32, 103, 101, 110, 101, 114, 97, 116, 111, 114, 41, 0, 40, 102, 111, 114, 32, 115, 116, 97, 116, 101, 41, 0, 40, 102, 111, 114, 32, 99, 111, 110, 116, 114, 111, 108, 41, 0, 39, 61, 39, 32, 111, 114, 32, 39, 105, 110, 39, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 108, 97, 98, 101, 108, 32, 39, 37, 115, 39, 32, 97, 108, 114, 101, 97, 100, 121, 32, 100, 101, 102, 105, 110, 101, 100, 32, 111, 110, 32, 108, 105, 110, 101, 32, 37, 100, 0, 115, 121, 110, 116, 97, 120, 32, 101, 114, 114, 111, 114, 0, 117, 110, 101, 120, 112, 101, 99, 116, 101, 100, 32, 115, 121, 109, 98, 111, 108, 0, 102, 117, 110, 99, 116, 105, 111, 110, 32, 97, 114, 103, 117, 109, 101, 110, 116, 115, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 105, 116, 101, 109, 115, 32, 105, 110, 32, 97, 32, 99, 111, 110, 115, 116, 114, 117, 99, 116, 111, 114, 0, 102, 117, 110, 99, 116, 105, 111, 110, 115, 0, 115, 101, 108, 102, 0, 60, 110, 97, 109, 101, 62, 32, 111, 114, 32, 39, 46, 46, 46, 39, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 108, 111, 99, 97, 108, 32, 118, 97, 114, 105, 97, 98, 108, 101, 115, 0, 99, 97, 110, 110, 111, 116, 32, 117, 115, 101, 32, 39, 46, 46, 46, 39, 32, 111, 117, 116, 115, 105, 100, 101, 32, 97, 32, 118, 97, 114, 97, 114, 103, 32, 102, 117, 110, 99, 116, 105, 111, 110, 0, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 10, 9, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 117, 112, 118, 97, 108, 117, 101, 115, 0, 110, 111, 116, 32, 101, 110, 111, 117, 103, 104, 32, 109, 101, 109, 111, 114, 121, 0, 105, 110, 118, 97, 108, 105, 100, 32, 107, 101, 121, 32, 116, 111, 32, 39, 110, 101, 120, 116, 39, 0, 116, 97, 98, 108, 101, 32, 111, 118, 101, 114, 102, 108, 111, 119, 0, 116, 97, 98, 108, 101, 32, 105, 110, 100, 101, 120, 32, 105, 115, 32, 110, 105, 108, 0, 116, 97, 98, 108, 101, 32, 105, 110, 100, 101, 120, 32, 105, 115, 32, 78, 97, 78, 0, 98, 111, 111, 108, 101, 97, 110, 0, 117, 115, 101, 114, 100, 97, 116, 97, 0, 110, 117, 109, 98, 101, 114, 0, 102, 117, 110, 99, 116, 105, 111, 110, 0, 116, 104, 114, 101, 97, 100, 0, 112, 114, 111, 116, 111, 0, 117, 112, 118, 97, 108, 0, 95, 95, 110, 101, 119, 105, 110, 100, 101, 120, 0, 95, 95, 108, 101, 110, 0, 95, 95, 101, 113, 0, 95, 95, 97, 100, 100, 0, 95, 95, 115, 117, 98, 0, 95, 95, 109, 117, 108, 0, 95, 95, 100, 105, 118, 0, 95, 95, 109, 111, 100, 0, 95, 95, 112, 111, 119, 0, 95, 95, 117, 110, 109, 0, 95, 95, 108, 116, 0, 95, 95, 108, 101, 0, 95, 95, 99, 111, 110, 99, 97, 116, 0, 95, 95, 99, 97, 108, 108, 0, 98, 105, 110, 97, 114, 121, 32, 115, 116, 114, 105, 110, 103, 0, 25, 147, 13, 10, 26, 10, 0, 116, 114, 117, 110, 99, 97, 116, 101, 100, 0, 110, 111, 116, 32, 97, 0, 118, 101, 114, 115, 105, 111, 110, 32, 109, 105, 115, 109, 97, 116, 99, 104, 32, 105, 110, 0, 105, 110, 99, 111, 109, 112, 97, 116, 105, 98, 108, 101, 0, 99, 111, 114, 114, 117, 112, 116, 101, 100, 0, 37, 115, 58, 32, 37, 115, 32, 112, 114, 101, 99, 111, 109, 112, 105, 108, 101, 100, 32, 99, 104, 117, 110, 107, 0, 105, 110, 100, 101, 120, 0, 108, 111, 111, 112, 32, 105, 110, 32, 103, 101, 116, 116, 97, 98, 108, 101, 0, 108, 111, 111, 112, 32, 105, 110, 32, 115, 101, 116, 116, 97, 98, 108, 101, 0, 115, 116, 114, 105, 110, 103, 32, 108, 101, 110, 103, 116, 104, 32, 111, 118, 101, 114, 102, 108, 111, 119, 0, 103, 101, 116, 32, 108, 101, 110, 103, 116, 104, 32, 111, 102, 0, 39, 102, 111, 114, 39, 32, 105, 110, 105, 116, 105, 97, 108, 32, 118, 97, 108, 117, 101, 32, 109, 117, 115, 116, 32, 98, 101, 32, 97, 32, 110, 117, 109, 98, 101, 114, 0, 39, 102, 111, 114, 39, 32, 108, 105, 109, 105, 116, 32, 109, 117, 115, 116, 32, 98, 101, 32, 97, 32, 110, 117, 109, 98, 101, 114, 0, 39, 102, 111, 114, 39, 32, 115, 116, 101, 112, 32, 109, 117, 115, 116, 32, 98, 101, 32, 97, 32, 110, 117, 109, 98, 101, 114, 0, 83, 108, 0, 37, 115, 58, 37, 100, 58, 32, 0, 115, 116, 97, 99, 107, 32, 116, 114, 97, 99, 101, 98, 97, 99, 107, 58, 0, 10, 9, 46, 46, 46, 0, 83, 108, 110, 116, 0, 10, 9, 37, 115, 58, 0, 37, 100, 58, 0, 32, 105, 110, 32, 0, 102, 117, 110, 99, 116, 105, 111, 110, 32, 39, 37, 115, 39, 0, 109, 97, 105, 110, 32, 99, 104, 117, 110, 107, 0, 102, 117, 110, 99, 116, 105, 111, 110, 32, 60, 37, 115, 58, 37, 100, 62, 0, 10, 9, 40, 46, 46, 46, 116, 97, 105, 108, 32, 99, 97, 108, 108, 115, 46, 46, 46, 41, 0, 116, 114, 117, 101, 0, 102, 97, 108, 115, 101, 0, 110, 105, 108, 0, 37, 115, 58, 32, 37, 112, 0, 115, 116, 97, 99, 107, 32, 111, 118, 101, 114, 102, 108, 111, 119, 32, 40, 37, 115, 41, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 117, 112, 118, 97, 108, 117, 101, 115, 0, 110, 97, 109, 101, 32, 99, 111, 110, 102, 108, 105, 99, 116, 32, 102, 111, 114, 32, 109, 111, 100, 117, 108, 101, 32, 39, 37, 115, 39, 0, 98, 117, 102, 102, 101, 114, 32, 116, 111, 111, 32, 108, 97, 114, 103, 101, 0, 37, 115, 32, 101, 120, 112, 101, 99, 116, 101, 100, 44, 32, 103, 111, 116, 32, 37, 115, 0, 80, 65, 78, 73, 67, 58, 32, 117, 110, 112, 114, 111, 116, 101, 99, 116, 101, 100, 32, 101, 114, 114, 111, 114, 32, 105, 110, 32, 99, 97, 108, 108, 32, 116, 111, 32, 76, 117, 97, 32, 65, 80, 73, 32, 40, 37, 115, 41, 10, 0, 61, 115, 116, 100, 105, 110, 0, 64, 37, 115, 0, 99, 97, 110, 110, 111, 116, 32, 37, 115, 32, 37, 115, 58, 32, 37, 115, 0, 114, 98, 0, 114, 101, 111, 112, 101, 110, 0, 111, 98, 106, 101, 99, 116, 32, 108, 101, 110, 103, 116, 104, 32, 105, 115, 32, 110, 111, 116, 32, 97, 32, 110, 117, 109, 98, 101, 114, 0, 37, 115, 58, 32, 37, 115, 0, 109, 117, 108, 116, 105, 112, 108, 101, 32, 76, 117, 97, 32, 86, 77, 115, 32, 100, 101, 116, 101, 99, 116, 101, 100, 0, 118, 101, 114, 115, 105, 111, 110, 32, 109, 105, 115, 109, 97, 116, 99, 104, 58, 32, 97, 112, 112, 46, 32, 110, 101, 101, 100, 115, 32, 37, 102, 44, 32, 76, 117, 97, 32, 99, 111, 114, 101, 32, 112, 114, 111, 118, 105, 100, 101, 115, 32, 37, 102, 0, 98, 97, 100, 32, 99, 111, 110, 118, 101, 114, 115, 105, 111, 110, 32, 110, 117, 109, 98, 101, 114, 45, 62, 105, 110, 116, 59, 32, 109, 117, 115, 116, 32, 114, 101, 99, 111, 109, 112, 105, 108, 101, 32, 76, 117, 97, 32, 119, 105, 116, 104, 32, 112, 114, 111, 112, 101, 114, 32, 115, 101, 116, 116, 105, 110, 103, 115, 0, 105, 110, 118, 97, 108, 105, 100, 32, 111, 112, 116, 105, 111, 110, 32, 39, 37, 115, 39, 0, 98, 97, 100, 32, 97, 114, 103, 117, 109, 101, 110, 116, 32, 35, 37, 100, 32, 40, 37, 115, 41, 0, 109, 101, 116, 104, 111, 100, 0, 99, 97, 108, 108, 105, 110, 103, 32, 39, 37, 115, 39, 32, 111, 110, 32, 98, 97, 100, 32, 115, 101, 108, 102, 32, 40, 37, 115, 41, 0, 98, 97, 100, 32, 97, 114, 103, 117, 109, 101, 110, 116, 32, 35, 37, 100, 32, 116, 111, 32, 39, 37, 115, 39, 32, 40, 37, 115, 41, 0, 76, 117, 97, 32, 53, 46, 50, 0, 95, 86, 69, 82, 83, 73, 79, 78, 0, 97, 115, 115, 101, 114, 116, 0, 99, 111, 108, 108, 101, 99, 116, 103, 97, 114, 98, 97, 103, 101, 0, 100, 111, 102, 105, 108, 101, 0, 101, 114, 114, 111, 114, 0, 105, 112, 97, 105, 114, 115, 0, 108, 111, 97, 100, 102, 105, 108, 101, 0, 108, 111, 97, 100, 0, 108, 111, 97, 100, 115, 116, 114, 105, 110, 103, 0, 110, 101, 120, 116, 0, 112, 97, 105, 114, 115, 0, 112, 99, 97, 108, 108, 0, 112, 114, 105, 110, 116, 0, 114, 97, 119, 101, 113, 117, 97, 108, 0, 114, 97, 119, 108, 101, 110, 0, 114, 97, 119, 103, 101, 116, 0, 114, 97, 119, 115, 101, 116, 0, 115, 101, 108, 101, 99, 116, 0, 116, 111, 110, 117, 109, 98, 101, 114, 0, 116, 111, 115, 116, 114, 105, 110, 103, 0, 120, 112, 99, 97, 108, 108, 0, 118, 97, 108, 117, 101, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 98, 97, 115, 101, 32, 111, 117, 116, 32, 111, 102, 32, 114, 97, 110, 103, 101, 0, 32, 12, 10, 13, 9, 11, 0, 95, 95, 109, 101, 116, 97, 116, 97, 98, 108, 101, 0, 99, 97, 110, 110, 111, 116, 32, 99, 104, 97, 110, 103, 101, 32, 97, 32, 112, 114, 111, 116, 101, 99, 116, 101, 100, 32, 109, 101, 116, 97, 116, 97, 98, 108, 101, 0, 105, 110, 100, 101, 120, 32, 111, 117, 116, 32, 111, 102, 32, 114, 97, 110, 103, 101, 0, 116, 97, 98, 108, 101, 32, 111, 114, 32, 115, 116, 114, 105, 110, 103, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 39, 116, 111, 115, 116, 114, 105, 110, 103, 39, 32, 109, 117, 115, 116, 32, 114, 101, 116, 117, 114, 110, 32, 97, 32, 115, 116, 114, 105, 110, 103, 32, 116, 111, 32, 39, 112, 114, 105, 110, 116, 39, 0, 95, 95, 112, 97, 105, 114, 115, 0, 98, 116, 0, 61, 40, 108, 111, 97, 100, 41, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 110, 101, 115, 116, 101, 100, 32, 102, 117, 110, 99, 116, 105, 111, 110, 115, 0, 114, 101, 97, 100, 101, 114, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 109, 117, 115, 116, 32, 114, 101, 116, 117, 114, 110, 32, 97, 32, 115, 116, 114, 105, 110, 103, 0, 95, 95, 105, 112, 97, 105, 114, 115, 0, 99, 111, 108, 108, 101, 99, 116, 0, 115, 116, 111, 112, 0, 114, 101, 115, 116, 97, 114, 116, 0, 115, 116, 101, 112, 0, 115, 101, 116, 112, 97, 117, 115, 101, 0, 115, 101, 116, 115, 116, 101, 112, 109, 117, 108, 0, 115, 101, 116, 109, 97, 106, 111, 114, 105, 110, 99, 0, 105, 115, 114, 117, 110, 110, 105, 110, 103, 0, 103, 101, 110, 101, 114, 97, 116, 105, 111, 110, 97, 108, 0, 105, 110, 99, 114, 101, 109, 101, 110, 116, 97, 108, 0, 97, 115, 115, 101, 114, 116, 105, 111, 110, 32, 102, 97, 105, 108, 101, 100, 33, 0, 97, 114, 115, 104, 105, 102, 116, 0, 98, 97, 110, 100, 0, 98, 110, 111, 116, 0, 98, 111, 114, 0, 98, 120, 111, 114, 0, 98, 116, 101, 115, 116, 0, 101, 120, 116, 114, 97, 99, 116, 0, 108, 114, 111, 116, 97, 116, 101, 0, 108, 115, 104, 105, 102, 116, 0, 114, 101, 112, 108, 97, 99, 101, 0, 114, 114, 111, 116, 97, 116, 101, 0, 114, 115, 104, 105, 102, 116, 0, 102, 105, 101, 108, 100, 32, 99, 97, 110, 110, 111, 116, 32, 98, 101, 32, 110, 101, 103, 97, 116, 105, 118, 101, 0, 119, 105, 100, 116, 104, 32, 109, 117, 115, 116, 32, 98, 101, 32, 112, 111, 115, 105, 116, 105, 118, 101, 0, 116, 114, 121, 105, 110, 103, 32, 116, 111, 32, 97, 99, 99, 101, 115, 115, 32, 110, 111, 110, 45, 101, 120, 105, 115, 116, 101, 110, 116, 32, 98, 105, 116, 115, 0, 99, 114, 101, 97, 116, 101, 0, 114, 101, 115, 117, 109, 101, 0, 114, 117, 110, 110, 105, 110, 103, 0, 115, 116, 97, 116, 117, 115, 0, 119, 114, 97, 112, 0, 121, 105, 101, 108, 100, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 97, 114, 103, 117, 109, 101, 110, 116, 115, 32, 116, 111, 32, 114, 101, 115, 117, 109, 101, 0, 99, 97, 110, 110, 111, 116, 32, 114, 101, 115, 117, 109, 101, 32, 100, 101, 97, 100, 32, 99, 111, 114, 111, 117, 116, 105, 110, 101, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 114, 101, 115, 117, 108, 116, 115, 32, 116, 111, 32, 114, 101, 115, 117, 109, 101, 0, 99, 111, 114, 111, 117, 116, 105, 110, 101, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 115, 117, 115, 112, 101, 110, 100, 101, 100, 0, 110, 111, 114, 109, 97, 108, 0, 100, 101, 97, 100, 0, 103, 101, 116, 117, 115, 101, 114, 118, 97, 108, 117, 101, 0, 103, 101, 116, 104, 111, 111, 107, 0, 103, 101, 116, 105, 110, 102, 111, 0, 103, 101, 116, 108, 111, 99, 97, 108, 0, 103, 101, 116, 114, 101, 103, 105, 115, 116, 114, 121, 0, 103, 101, 116, 109, 101, 116, 97, 116, 97, 98, 108, 101, 0, 103, 101, 116, 117, 112, 118, 97, 108, 117, 101, 0, 117, 112, 118, 97, 108, 117, 101, 106, 111, 105, 110, 0, 117, 112, 118, 97, 108, 117, 101, 105, 100, 0, 115, 101, 116, 117, 115, 101, 114, 118, 97, 108, 117, 101, 0, 115, 101, 116, 104, 111, 111, 107, 0, 115, 101, 116, 108, 111, 99, 97, 108, 0, 115, 101, 116, 109, 101, 116, 97, 116, 97, 98, 108, 101, 0, 115, 101, 116, 117, 112, 118, 97, 108, 117, 101, 0, 116, 114, 97, 99, 101, 98, 97, 99, 107, 0, 110, 105, 108, 32, 111, 114, 32, 116, 97, 98, 108, 101, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 108, 101, 118, 101, 108, 32, 111, 117, 116, 32, 111, 102, 32, 114, 97, 110, 103, 101, 0, 115, 116, 97, 99, 107, 32, 111, 118, 101, 114, 102, 108, 111, 119, 0, 95, 72, 75, 69, 89, 0, 107, 0, 95, 95, 109, 111, 100, 101, 0, 99, 97, 108, 108, 0, 114, 101, 116, 117, 114, 110, 0, 99, 111, 117, 110, 116, 0, 116, 97, 105, 108, 32, 99, 97, 108, 108, 0, 102, 117, 108, 108, 32, 117, 115, 101, 114, 100, 97, 116, 97, 32, 101, 120, 112, 101, 99, 116, 101, 100, 44, 32, 103, 111, 116, 32, 108, 105, 103, 104, 116, 32, 117, 115, 101, 114, 100, 97, 116, 97, 0, 62, 117, 0, 105, 110, 118, 97, 108, 105, 100, 32, 117, 112, 118, 97, 108, 117, 101, 32, 105, 110, 100, 101, 120, 0, 76, 117, 97, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 102, 108, 110, 83, 116, 117, 0, 62, 37, 115, 0, 102, 117, 110, 99, 116, 105, 111, 110, 32, 111, 114, 32, 108, 101, 118, 101, 108, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 115, 111, 117, 114, 99, 101, 0, 115, 104, 111, 114, 116, 95, 115, 114, 99, 0, 108, 105, 110, 101, 100, 101, 102, 105, 110, 101, 100, 0, 108, 97, 115, 116, 108, 105, 110, 101, 100, 101, 102, 105, 110, 101, 100, 0, 119, 104, 97, 116, 0, 99, 117, 114, 114, 101, 110, 116, 108, 105, 110, 101, 0, 110, 117, 112, 115, 0, 110, 112, 97, 114, 97, 109, 115, 0, 105, 115, 118, 97, 114, 97, 114, 103, 0, 110, 97, 109, 101, 0, 110, 97, 109, 101, 119, 104, 97, 116, 0, 105, 115, 116, 97, 105, 108, 99, 97, 108, 108, 0, 97, 99, 116, 105, 118, 101, 108, 105, 110, 101, 115, 0, 102, 117, 110, 99, 0, 101, 120, 116, 101, 114, 110, 97, 108, 32, 104, 111, 111, 107, 0, 108, 117, 97, 95, 100, 101, 98, 117, 103, 62, 32, 0, 99, 111, 110, 116, 10, 0, 61, 40, 100, 101, 98, 117, 103, 32, 99, 111, 109, 109, 97, 110, 100, 41, 0, 37, 115, 10, 0, 70, 73, 76, 69, 42, 0, 95, 73, 79, 95, 105, 110, 112, 117, 116, 0, 115, 116, 100, 105, 110, 0, 95, 73, 79, 95, 111, 117, 116, 112, 117, 116, 0, 115, 116, 100, 111, 117, 116, 0, 115, 116, 100, 101, 114, 114, 0, 99, 97, 110, 110, 111, 116, 32, 99, 108, 111, 115, 101, 32, 115, 116, 97, 110, 100, 97, 114, 100, 32, 102, 105, 108, 101, 0, 99, 108, 111, 115, 101, 0, 102, 108, 117, 115, 104, 0, 108, 105, 110, 101, 115, 0, 114, 101, 97, 100, 0, 115, 101, 101, 107, 0, 115, 101, 116, 118, 98, 117, 102, 0, 119, 114, 105, 116, 101, 0, 95, 95, 116, 111, 115, 116, 114, 105, 110, 103, 0, 102, 105, 108, 101, 32, 40, 99, 108, 111, 115, 101, 100, 41, 0, 102, 105, 108, 101, 32, 40, 37, 112, 41, 0, 97, 116, 116, 101, 109, 112, 116, 32, 116, 111, 32, 117, 115, 101, 32, 97, 32, 99, 108, 111, 115, 101, 100, 32, 102, 105, 108, 101, 0, 37, 46, 49, 52, 103, 0, 110, 111, 0, 102, 117, 108, 108, 0, 108, 105, 110, 101, 0, 99, 117, 114, 0, 110, 111, 116, 32, 97, 110, 32, 105, 110, 116, 101, 103, 101, 114, 32, 105, 110, 32, 112, 114, 111, 112, 101, 114, 32, 114, 97, 110, 103, 101, 0, 115, 101, 116, 0, 101, 110, 100, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 97, 114, 103, 117, 109, 101, 110, 116, 115, 0, 105, 110, 118, 97, 108, 105, 100, 32, 111, 112, 116, 105, 111, 110, 0, 37, 108, 102, 0, 105, 110, 118, 97, 108, 105, 100, 32, 102, 111, 114, 109, 97, 116, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 111, 112, 116, 105, 111, 110, 115, 0, 102, 105, 108, 101, 32, 105, 115, 32, 97, 108, 114, 101, 97, 100, 121, 32, 99, 108, 111, 115, 101, 100, 0, 37, 115, 0, 105, 110, 112, 117, 116, 0, 111, 112, 101, 110, 0, 111, 117, 116, 112, 117, 116, 0, 112, 111, 112, 101, 110, 0, 116, 109, 112, 102, 105, 108, 101, 0, 116, 121, 112, 101, 0, 115, 116, 97, 110, 100, 97, 114, 100, 32, 37, 115, 32, 102, 105, 108, 101, 32, 105, 115, 32, 99, 108, 111, 115, 101, 100, 0, 99, 108, 111, 115, 101, 100, 32, 102, 105, 108, 101, 0, 102, 105, 108, 101, 0, 39, 112, 111, 112, 101, 110, 39, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 0, 119, 0, 99, 97, 110, 110, 111, 116, 32, 111, 112, 101, 110, 32, 102, 105, 108, 101, 32, 39, 37, 115, 39, 32, 40, 37, 115, 41, 0, 105, 110, 118, 97, 108, 105, 100, 32, 109, 111, 100, 101, 0, 112, 105, 0, 104, 117, 103, 101, 0, 97, 98, 115, 0, 97, 99, 111, 115, 0, 97, 115, 105, 110, 0, 97, 116, 97, 110, 50, 0, 97, 116, 97, 110, 0, 99, 101, 105, 108, 0, 99, 111, 115, 104, 0, 99, 111, 115, 0, 100, 101, 103, 0, 101, 120, 112, 0, 102, 108, 111, 111, 114, 0, 102, 109, 111, 100, 0, 102, 114, 101, 120, 112, 0, 108, 100, 101, 120, 112, 0, 108, 111, 103, 49, 48, 0, 108, 111, 103, 0, 109, 97, 120, 0, 109, 111, 100, 102, 0, 112, 111, 119, 0, 114, 97, 100, 0, 114, 97, 110, 100, 111, 109, 0, 114, 97, 110, 100, 111, 109, 115, 101, 101, 100, 0, 115, 105, 110, 104, 0, 115, 105, 110, 0, 115, 113, 114, 116, 0, 116, 97, 110, 104, 0, 116, 97, 110, 0, 105, 110, 116, 101, 114, 118, 97, 108, 32, 105, 115, 32, 101, 109, 112, 116, 121, 0, 119, 114, 111, 110, 103, 32, 110, 117, 109, 98, 101, 114, 32, 111, 102, 32, 97, 114, 103, 117, 109, 101, 110, 116, 115, 0, 99, 108, 111, 99, 107, 0, 100, 97, 116, 101, 0, 100, 105, 102, 102, 116, 105, 109, 101, 0, 101, 120, 101, 99, 117, 116, 101, 0, 101, 120, 105, 116, 0, 103, 101, 116, 101, 110, 118, 0, 114, 101, 110, 97, 109, 101, 0, 115, 101, 116, 108, 111, 99, 97, 108, 101, 0, 116, 105, 109, 101, 0, 116, 109, 112, 110, 97, 109, 101, 0, 117, 110, 97, 98, 108, 101, 32, 116, 111, 32, 103, 101, 110, 101, 114, 97, 116, 101, 32, 97, 32, 117, 110, 105, 113, 117, 101, 32, 102, 105, 108, 101, 110, 97, 109, 101, 0, 115, 101, 99, 0, 109, 105, 110, 0, 104, 111, 117, 114, 0, 100, 97, 121, 0, 102, 105, 101, 108, 100, 32, 39, 37, 115, 39, 32, 109, 105, 115, 115, 105, 110, 103, 32, 105, 110, 32, 100, 97, 116, 101, 32, 116, 97, 98, 108, 101, 0, 109, 111, 110, 116, 104, 0, 121, 101, 97, 114, 0, 105, 115, 100, 115, 116, 0, 97, 108, 108, 0, 99, 111, 108, 108, 97, 116, 101, 0, 99, 116, 121, 112, 101, 0, 109, 111, 110, 101, 116, 97, 114, 121, 0, 110, 117, 109, 101, 114, 105, 99, 0, 37, 99, 0, 42, 116, 0, 119, 100, 97, 121, 0, 121, 100, 97, 121, 0, 97, 65, 98, 66, 99, 100, 72, 73, 106, 109, 77, 112, 83, 85, 119, 87, 120, 88, 121, 89, 122, 37, 0, 105, 110, 118, 97, 108, 105, 100, 32, 99, 111, 110, 118, 101, 114, 115, 105, 111, 110, 32, 115, 112, 101, 99, 105, 102, 105, 101, 114, 32, 39, 37, 37, 37, 115, 39, 0, 98, 121, 116, 101, 0, 99, 104, 97, 114, 0, 100, 117, 109, 112, 0, 102, 105, 110, 100, 0, 102, 111, 114, 109, 97, 116, 0, 103, 109, 97, 116, 99, 104, 0, 103, 115, 117, 98, 0, 108, 101, 110, 0, 108, 111, 119, 101, 114, 0, 109, 97, 116, 99, 104, 0, 114, 101, 112, 0, 114, 101, 118, 101, 114, 115, 101, 0, 115, 117, 98, 0, 117, 112, 112, 101, 114, 0, 114, 101, 115, 117, 108, 116, 105, 110, 103, 32, 115, 116, 114, 105, 110, 103, 32, 116, 111, 111, 32, 108, 97, 114, 103, 101, 0, 94, 36, 42, 43, 63, 46, 40, 91, 37, 45, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 99, 97, 112, 116, 117, 114, 101, 115, 0, 105, 110, 118, 97, 108, 105, 100, 32, 99, 97, 112, 116, 117, 114, 101, 32, 105, 110, 100, 101, 120, 0, 117, 110, 102, 105, 110, 105, 115, 104, 101, 100, 32, 99, 97, 112, 116, 117, 114, 101, 0, 112, 97, 116, 116, 101, 114, 110, 32, 116, 111, 111, 32, 99, 111, 109, 112, 108, 101, 120, 0, 105, 110, 118, 97, 108, 105, 100, 32, 112, 97, 116, 116, 101, 114, 110, 32, 99, 97, 112, 116, 117, 114, 101, 0, 109, 97, 108, 102, 111, 114, 109, 101, 100, 32, 112, 97, 116, 116, 101, 114, 110, 32, 40, 109, 105, 115, 115, 105, 110, 103, 32, 97, 114, 103, 117, 109, 101, 110, 116, 115, 32, 116, 111, 32, 39, 37, 37, 98, 39, 41, 0, 109, 105, 115, 115, 105, 110, 103, 32, 39, 91, 39, 32, 97, 102, 116, 101, 114, 32, 39, 37, 37, 102, 39, 32, 105, 110, 32, 112, 97, 116, 116, 101, 114, 110, 0, 109, 97, 108, 102, 111, 114, 109, 101, 100, 32, 112, 97, 116, 116, 101, 114, 110, 32, 40, 101, 110, 100, 115, 32, 119, 105, 116, 104, 32, 39, 37, 37, 39, 41, 0, 109, 97, 108, 102, 111, 114, 109, 101, 100, 32, 112, 97, 116, 116, 101, 114, 110, 32, 40, 109, 105, 115, 115, 105, 110, 103, 32, 39, 93, 39, 41, 0, 105, 110, 118, 97, 108, 105, 100, 32, 99, 97, 112, 116, 117, 114, 101, 32, 105, 110, 100, 101, 120, 32, 37, 37, 37, 100, 0, 115, 116, 114, 105, 110, 103, 47, 102, 117, 110, 99, 116, 105, 111, 110, 47, 116, 97, 98, 108, 101, 32, 101, 120, 112, 101, 99, 116, 101, 100, 0, 105, 110, 118, 97, 108, 105, 100, 32, 117, 115, 101, 32, 111, 102, 32, 39, 37, 99, 39, 32, 105, 110, 32, 114, 101, 112, 108, 97, 99, 101, 109, 101, 110, 116, 32, 115, 116, 114, 105, 110, 103, 0, 105, 110, 118, 97, 108, 105, 100, 32, 114, 101, 112, 108, 97, 99, 101, 109, 101, 110, 116, 32, 118, 97, 108, 117, 101, 32, 40, 97, 32, 37, 115, 41, 0, 110, 111, 32, 118, 97, 108, 117, 101, 0, 45, 43, 32, 35, 48, 0, 105, 110, 118, 97, 108, 105, 100, 32, 102, 111, 114, 109, 97, 116, 32, 40, 114, 101, 112, 101, 97, 116, 101, 100, 32, 102, 108, 97, 103, 115, 41, 0, 105, 110, 118, 97, 108, 105, 100, 32, 102, 111, 114, 109, 97, 116, 32, 40, 119, 105, 100, 116, 104, 32, 111, 114, 32, 112, 114, 101, 99, 105, 115, 105, 111, 110, 32, 116, 111, 111, 32, 108, 111, 110, 103, 41, 0, 110, 111, 116, 32, 97, 32, 110, 117, 109, 98, 101, 114, 32, 105, 110, 32, 112, 114, 111, 112, 101, 114, 32, 114, 97, 110, 103, 101, 0, 110, 111, 116, 32, 97, 32, 110, 111, 110, 45, 110, 101, 103, 97, 116, 105, 118, 101, 32, 110, 117, 109, 98, 101, 114, 32, 105, 110, 32, 112, 114, 111, 112, 101, 114, 32, 114, 97, 110, 103, 101, 0, 92, 37, 100, 0, 92, 37, 48, 51, 100, 0, 105, 110, 118, 97, 108, 105, 100, 32, 111, 112, 116, 105, 111, 110, 32, 39, 37, 37, 37, 99, 39, 32, 116, 111, 32, 39, 102, 111, 114, 109, 97, 116, 39, 0, 117, 110, 97, 98, 108, 101, 32, 116, 111, 32, 100, 117, 109, 112, 32, 103, 105, 118, 101, 110, 32, 102, 117, 110, 99, 116, 105, 111, 110, 0, 118, 97, 108, 117, 101, 32, 111, 117, 116, 32, 111, 102, 32, 114, 97, 110, 103, 101, 0, 115, 116, 114, 105, 110, 103, 32, 115, 108, 105, 99, 101, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 117, 110, 112, 97, 99, 107, 0, 99, 111, 110, 99, 97, 116, 0, 109, 97, 120, 110, 0, 105, 110, 115, 101, 114, 116, 0, 112, 97, 99, 107, 0, 114, 101, 109, 111, 118, 101, 0, 115, 111, 114, 116, 0, 105, 110, 118, 97, 108, 105, 100, 32, 111, 114, 100, 101, 114, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 102, 111, 114, 32, 115, 111, 114, 116, 105, 110, 103, 0, 112, 111, 115, 105, 116, 105, 111, 110, 32, 111, 117, 116, 32, 111, 102, 32, 98, 111, 117, 110, 100, 115, 0, 116, 111, 111, 32, 109, 97, 110, 121, 32, 114, 101, 115, 117, 108, 116, 115, 32, 116, 111, 32, 117, 110, 112, 97, 99, 107, 0, 110, 0, 119, 114, 111, 110, 103, 32, 110, 117, 109, 98, 101, 114, 32, 111, 102, 32, 97, 114, 103, 117, 109, 101, 110, 116, 115, 32, 116, 111, 32, 39, 105, 110, 115, 101, 114, 116, 39, 0, 105, 110, 118, 97, 108, 105, 100, 32, 118, 97, 108, 117, 101, 32, 40, 37, 115, 41, 32, 97, 116, 32, 105, 110, 100, 101, 120, 32, 37, 100, 32, 105, 110, 32, 116, 97, 98, 108, 101, 32, 102, 111, 114, 32, 39, 99, 111, 110, 99, 97, 116, 39, 0, 95, 67, 76, 73, 66, 83, 0, 95, 95, 103, 99, 0, 108, 111, 97, 100, 101, 114, 115, 0, 115, 101, 97, 114, 99, 104, 101, 114, 115, 0, 112, 97, 116, 104, 0, 76, 85, 65, 95, 80, 65, 84, 72, 95, 53, 95, 50, 0, 76, 85, 65, 95, 80, 65, 84, 72, 0, 47, 117, 115, 114, 47, 108, 111, 99, 97, 108, 47, 115, 104, 97, 114, 101, 47, 108, 117, 97, 47, 53, 46, 50, 47, 63, 46, 108, 117, 97, 59, 47, 117, 115, 114, 47, 108, 111, 99, 97, 108, 47, 115, 104, 97, 114, 101, 47, 108, 117, 97, 47, 53, 46, 50, 47, 63, 47, 105, 110, 105, 116, 46, 108, 117, 97, 59, 47, 117, 115, 114, 47, 108, 111, 99, 97, 108, 47, 108, 105, 98, 47, 108, 117, 97, 47, 53, 46, 50, 47, 63, 46, 108, 117, 97, 59, 47, 117, 115, 114, 47, 108, 111, 99, 97, 108, 47, 108, 105, 98, 47, 108, 117, 97, 47, 53, 46, 50, 47, 63, 47, 105, 110, 105, 116, 46, 108, 117, 97, 59, 46, 47, 63, 46, 108, 117, 97, 0, 99, 112, 97, 116, 104, 0, 76, 85, 65, 95, 67, 80, 65, 84, 72, 95, 53, 95, 50, 0, 76, 85, 65, 95, 67, 80, 65, 84, 72, 0, 47, 117, 115, 114, 47, 108, 111, 99, 97, 108, 47, 108, 105, 98, 47, 108, 117, 97, 47, 53, 46, 50, 47, 63, 46, 115, 111, 59, 47, 117, 115, 114, 47, 108, 111, 99, 97, 108, 47, 108, 105, 98, 47, 108, 117, 97, 47, 53, 46, 50, 47, 108, 111, 97, 100, 97, 108, 108, 46, 115, 111, 59, 46, 47, 63, 46, 115, 111, 0, 47, 10, 59, 10, 63, 10, 33, 10, 45, 10, 0, 99, 111, 110, 102, 105, 103, 0, 95, 76, 79, 65, 68, 69, 68, 0, 108, 111, 97, 100, 101, 100, 0, 112, 114, 101, 108, 111, 97, 100, 0, 109, 111, 100, 117, 108, 101, 0, 114, 101, 113, 117, 105, 114, 101, 0, 39, 112, 97, 99, 107, 97, 103, 101, 46, 115, 101, 97, 114, 99, 104, 101, 114, 115, 39, 32, 109, 117, 115, 116, 32, 98, 101, 32, 97, 32, 116, 97, 98, 108, 101, 0, 109, 111, 100, 117, 108, 101, 32, 39, 37, 115, 39, 32, 110, 111, 116, 32, 102, 111, 117, 110, 100, 58, 37, 115, 0, 95, 78, 65, 77, 69, 0, 95, 77, 0, 95, 80, 65, 67, 75, 65, 71, 69, 0, 102, 0, 39, 109, 111, 100, 117, 108, 101, 39, 32, 110, 111, 116, 32, 99, 97, 108, 108, 101, 100, 32, 102, 114, 111, 109, 32, 97, 32, 76, 117, 97, 32, 102, 117, 110, 99, 116, 105, 111, 110, 0, 76, 85, 65, 95, 78, 79, 69, 78, 86, 0, 59, 59, 0, 59, 1, 59, 0, 1, 0, 39, 112, 97, 99, 107, 97, 103, 101, 46, 37, 115, 39, 32, 109, 117, 115, 116, 32, 98, 101, 32, 97, 32, 115, 116, 114, 105, 110, 103, 0, 47, 0, 101, 114, 114, 111, 114, 32, 108, 111, 97, 100, 105, 110, 103, 32, 109, 111, 100, 117, 108, 101, 32, 39, 37, 115, 39, 32, 102, 114, 111, 109, 32, 102, 105, 108, 101, 32, 39, 37, 115, 39, 58, 10, 9, 37, 115, 0, 10, 9, 110, 111, 32, 109, 111, 100, 117, 108, 101, 32, 39, 37, 115, 39, 32, 105, 110, 32, 102, 105, 108, 101, 32, 39, 37, 115, 39, 0, 95, 0, 108, 117, 97, 111, 112, 101, 110, 95, 37, 115, 0, 100, 121, 110, 97, 109, 105, 99, 32, 108, 105, 98, 114, 97, 114, 105, 101, 115, 32, 110, 111, 116, 32, 101, 110, 97, 98, 108, 101, 100, 59, 32, 99, 104, 101, 99, 107, 32, 121, 111, 117, 114, 32, 76, 117, 97, 32, 105, 110, 115, 116, 97, 108, 108, 97, 116, 105, 111, 110, 0, 63, 0, 114, 0, 10, 9, 110, 111, 32, 102, 105, 108, 101, 32, 39, 37, 115, 39, 0, 10, 9, 110, 111, 32, 102, 105, 101, 108, 100, 32, 112, 97, 99, 107, 97, 103, 101, 46, 112, 114, 101, 108, 111, 97, 100, 91, 39, 37, 115, 39, 93, 0, 108, 111, 97, 100, 108, 105, 98, 0, 115, 101, 97, 114, 99, 104, 112, 97, 116, 104, 0, 115, 101, 101, 97, 108, 108, 0, 95, 95, 105, 110, 100, 101, 120, 0, 97, 98, 115, 101, 110, 116, 0, 105, 110, 105, 116, 0, 95, 71, 0, 112, 97, 99, 107, 97, 103, 101, 0, 99, 111, 114, 111, 117, 116, 105, 110, 101, 0, 116, 97, 98, 108, 101, 0, 105, 111, 0, 111, 115, 0, 115, 116, 114, 105, 110, 103, 0, 98, 105, 116, 51, 50, 0, 109, 97, 116, 104, 0, 100, 101, 98, 117, 103, 0, 95, 80, 82, 69, 76, 79, 65, 68, 0, 67, 46, 85, 84, 70, 45, 56, 0, 17, 0, 10, 0, 17, 17, 17, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 15, 10, 17, 17, 17, 3, 10, 7, 0, 1], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE); allocate([19, 9, 11, 11, 0, 0, 9, 6, 11, 0, 0, 11, 0, 6, 17, 0, 0, 0, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 10, 10, 17, 17, 17, 0, 10, 0, 0, 2, 0, 9, 11, 0, 0, 0, 9, 0, 11, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 12, 0, 0, 0, 0, 9, 12, 0, 0, 0, 0, 0, 12, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 4, 13, 0, 0, 0, 0, 9, 14, 0, 0, 0, 0, 0, 14, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 15, 0, 0, 0, 0, 9, 16, 0, 0, 0, 0, 0, 16, 0, 0, 16, 0, 0, 18, 0, 0, 0, 18, 18, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 18, 18, 18, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 10, 0, 0, 0, 0, 9, 11, 0, 0, 0, 0, 0, 11, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 12, 0, 0, 0, 0, 9, 12, 0, 0, 0, 0, 0, 12, 0, 0, 12, 0, 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70, 45, 43, 32, 32, 32, 48, 88, 48, 120, 0, 40, 110, 117, 108, 108, 41, 0, 45, 48, 88, 43, 48, 88, 32, 48, 88, 45, 48, 120, 43, 48, 120, 32, 48, 120, 0, 105, 110, 102, 0, 73, 78, 70, 0, 78, 65, 78, 0, 84, 33, 34, 25, 13, 1, 2, 3, 17, 75, 28, 12, 16, 4, 11, 29, 18, 30, 39, 104, 110, 111, 112, 113, 98, 32, 5, 6, 15, 19, 20, 21, 26, 8, 22, 7, 40, 36, 23, 24, 9, 10, 14, 27, 31, 37, 35, 131, 130, 125, 38, 42, 43, 60, 61, 62, 63, 67, 71, 74, 77, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 99, 100, 101, 102, 103, 105, 106, 107, 108, 114, 115, 116, 121, 122, 123, 124, 0, 73, 108, 108, 101, 103, 97, 108, 32, 98, 121, 116, 101, 32, 115, 101, 113, 117, 101, 110, 99, 101, 0, 68, 111, 109, 97, 105, 110, 32, 101, 114, 114, 111, 114, 0, 82, 101, 115, 117, 108, 116, 32, 110, 111, 116, 32, 114, 101, 112, 114, 101, 115, 101, 110, 116, 97, 98, 108, 101, 0, 78, 111, 116, 32, 97, 32, 116, 116, 121, 0, 80, 101, 114, 109, 105, 115, 115, 105, 111, 110, 32, 100, 101, 110, 105, 101, 100, 0, 79, 112, 101, 114, 97, 116, 105, 111, 110, 32, 110, 111, 116, 32, 112, 101, 114, 109, 105, 116, 116, 101, 100, 0, 78, 111, 32, 115, 117, 99, 104, 32, 102, 105, 108, 101, 32, 111, 114, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 0, 78, 111, 32, 115, 117, 99, 104, 32, 112, 114, 111, 99, 101, 115, 115, 0, 70, 105, 108, 101, 32, 101, 120, 105, 115, 116, 115, 0, 86, 97, 108, 117, 101, 32, 116, 111, 111, 32, 108, 97, 114, 103, 101, 32, 102, 111, 114, 32, 100, 97, 116, 97, 32, 116, 121, 112, 101, 0, 78, 111, 32, 115, 112, 97, 99, 101, 32, 108, 101, 102, 116, 32, 111, 110, 32, 100, 101, 118, 105, 99, 101, 0, 79, 117, 116, 32, 111, 102, 32, 109, 101, 109, 111, 114, 121, 0, 82, 101, 115, 111, 117, 114, 99, 101, 32, 98, 117, 115, 121, 0, 73, 110, 116, 101, 114, 114, 117, 112, 116, 101, 100, 32, 115, 121, 115, 116, 101, 109, 32, 99, 97, 108, 108, 0, 82, 101, 115, 111, 117, 114, 99, 101, 32, 116, 101, 109, 112, 111, 114, 97, 114, 105, 108, 121, 32, 117, 110, 97, 118, 97, 105, 108, 97, 98, 108, 101, 0, 73, 110, 118, 97, 108, 105, 100, 32, 115, 101, 101, 107, 0, 67, 114, 111, 115, 115, 45, 100, 101, 118, 105, 99, 101, 32, 108, 105, 110, 107, 0, 82, 101, 97, 100, 45, 111, 110, 108, 121, 32, 102, 105, 108, 101, 32, 115, 121, 115, 116, 101, 109, 0, 68, 105, 114, 101, 99, 116, 111, 114, 121, 32, 110, 111, 116, 32, 101, 109, 112, 116, 121, 0, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 32, 114, 101, 115, 101, 116, 32, 98, 121, 32, 112, 101, 101, 114, 0, 79, 112, 101, 114, 97, 116, 105, 111, 110, 32, 116, 105, 109, 101, 100, 32, 111, 117, 116, 0, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 32, 114, 101, 102, 117, 115, 101, 100, 0, 72, 111, 115, 116, 32, 105, 115, 32, 100, 111, 119, 110, 0, 72, 111, 115, 116, 32, 105, 115, 32, 117, 110, 114, 101, 97, 99, 104, 97, 98, 108, 101, 0, 65, 100, 100, 114, 101, 115, 115, 32, 105, 110, 32, 117, 115, 101, 0, 66, 114, 111, 107, 101, 110, 32, 112, 105, 112, 101, 0, 73, 47, 79, 32, 101, 114, 114, 111, 114, 0, 78, 111, 32, 115, 117, 99, 104, 32, 100, 101, 118, 105, 99, 101, 32, 111, 114, 32, 97, 100, 100, 114, 101, 115, 115, 0, 66, 108, 111, 99, 107, 32, 100, 101, 118, 105, 99, 101, 32, 114, 101, 113, 117, 105, 114, 101, 100, 0, 78, 111, 32, 115, 117, 99, 104, 32, 100, 101, 118, 105, 99, 101, 0, 78, 111, 116, 32, 97, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 0, 73, 115, 32, 97, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 0, 84, 101, 120, 116, 32, 102, 105, 108, 101, 32, 98, 117, 115, 121, 0, 69, 120, 101, 99, 32, 102, 111, 114, 109, 97, 116, 32, 101, 114, 114, 111, 114, 0, 73, 110, 118, 97, 108, 105, 100, 32, 97, 114, 103, 117, 109, 101, 110, 116, 0, 65, 114, 103, 117, 109, 101, 110, 116, 32, 108, 105, 115, 116, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 83, 121, 109, 98, 111, 108, 105, 99, 32, 108, 105, 110, 107, 32, 108, 111, 111, 112, 0, 70, 105, 108, 101, 110, 97, 109, 101, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 84, 111, 111, 32, 109, 97, 110, 121, 32, 111, 112, 101, 110, 32, 102, 105, 108, 101, 115, 32, 105, 110, 32, 115, 121, 115, 116, 101, 109, 0, 78, 111, 32, 102, 105, 108, 101, 32, 100, 101, 115, 99, 114, 105, 112, 116, 111, 114, 115, 32, 97, 118, 97, 105, 108, 97, 98, 108, 101, 0, 66, 97, 100, 32, 102, 105, 108, 101, 32, 100, 101, 115, 99, 114, 105, 112, 116, 111, 114, 0, 78, 111, 32, 99, 104, 105, 108, 100, 32, 112, 114, 111, 99, 101, 115, 115, 0, 66, 97, 100, 32, 97, 100, 100, 114, 101, 115, 115, 0, 70, 105, 108, 101, 32, 116, 111, 111, 32, 108, 97, 114, 103, 101, 0, 84, 111, 111, 32, 109, 97, 110, 121, 32, 108, 105, 110, 107, 115, 0, 78, 111, 32, 108, 111, 99, 107, 115, 32, 97, 118, 97, 105, 108, 97, 98, 108, 101, 0, 82, 101, 115, 111, 117, 114, 99, 101, 32, 100, 101, 97, 100, 108, 111, 99, 107, 32, 119, 111, 117, 108, 100, 32, 111, 99, 99, 117, 114, 0, 83, 116, 97, 116, 101, 32, 110, 111, 116, 32, 114, 101, 99, 111, 118, 101, 114, 97, 98, 108, 101, 0, 80, 114, 101, 118, 105, 111, 117, 115, 32, 111, 119, 110, 101, 114, 32, 100, 105, 101, 100, 0, 79, 112, 101, 114, 97, 116, 105, 111, 110, 32, 99, 97, 110, 99, 101, 108, 101, 100, 0, 70, 117, 110, 99, 116, 105, 111, 110, 32, 110, 111, 116, 32, 105, 109, 112, 108, 101, 109, 101, 110, 116, 101, 100, 0, 78, 111, 32, 109, 101, 115, 115, 97, 103, 101, 32, 111, 102, 32, 100, 101, 115, 105, 114, 101, 100, 32, 116, 121, 112, 101, 0, 73, 100, 101, 110, 116, 105, 102, 105, 101, 114, 32, 114, 101, 109, 111, 118, 101, 100, 0, 68, 101, 118, 105, 99, 101, 32, 110, 111, 116, 32, 97, 32, 115, 116, 114, 101, 97, 109, 0, 78, 111, 32, 100, 97, 116, 97, 32, 97, 118, 97, 105, 108, 97, 98, 108, 101, 0, 68, 101, 118, 105, 99, 101, 32, 116, 105, 109, 101, 111, 117, 116, 0, 79, 117, 116, 32, 111, 102, 32, 115, 116, 114, 101, 97, 109, 115, 32, 114, 101, 115, 111, 117, 114, 99, 101, 115, 0, 76, 105, 110, 107, 32, 104, 97, 115, 32, 98, 101, 101, 110, 32, 115, 101, 118, 101, 114, 101, 100, 0, 80, 114, 111, 116, 111, 99, 111, 108, 32, 101, 114, 114, 111, 114, 0, 66, 97, 100, 32, 109, 101, 115, 115, 97, 103, 101, 0, 70, 105, 108, 101, 32, 100, 101, 115, 99, 114, 105, 112, 116, 111, 114, 32, 105, 110, 32, 98, 97, 100, 32, 115, 116, 97, 116, 101, 0, 78, 111, 116, 32, 97, 32, 115, 111, 99, 107, 101, 116, 0, 68, 101, 115, 116, 105, 110, 97, 116, 105, 111, 110, 32, 97, 100, 100, 114, 101, 115, 115, 32, 114, 101, 113, 117, 105, 114, 101, 100, 0, 77, 101, 115, 115, 97, 103, 101, 32, 116, 111, 111, 32, 108, 97, 114, 103, 101, 0, 80, 114, 111, 116, 111, 99, 111, 108, 32, 119, 114, 111, 110, 103, 32, 116, 121, 112, 101, 32, 102, 111, 114, 32, 115, 111, 99, 107, 101, 116, 0, 80, 114, 111, 116, 111, 99, 111, 108, 32, 110, 111, 116, 32, 97, 118, 97, 105, 108, 97, 98, 108, 101, 0, 80, 114, 111, 116, 111, 99, 111, 108, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 0, 83, 111, 99, 107, 101, 116, 32, 116, 121, 112, 101, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 0, 78, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 0, 80, 114, 111, 116, 111, 99, 111, 108, 32, 102, 97, 109, 105, 108, 121, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 0, 65, 100, 100, 114, 101, 115, 115, 32, 102, 97, 109, 105, 108, 121, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 32, 98, 121, 32, 112, 114, 111, 116, 111, 99, 111, 108, 0, 65, 100, 100, 114, 101, 115, 115, 32, 110, 111, 116, 32, 97, 118, 97, 105, 108, 97, 98, 108, 101, 0, 78, 101, 116, 119, 111, 114, 107, 32, 105, 115, 32, 100, 111, 119, 110, 0, 78, 101, 116, 119, 111, 114, 107, 32, 117, 110, 114, 101, 97, 99, 104, 97, 98, 108, 101, 0, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 32, 114, 101, 115, 101, 116, 32, 98, 121, 32, 110, 101, 116, 119, 111, 114, 107, 0, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 32, 97, 98, 111, 114, 116, 101, 100, 0, 78, 111, 32, 98, 117, 102, 102, 101, 114, 32, 115, 112, 97, 99, 101, 32, 97, 118, 97, 105, 108, 97, 98, 108, 101, 0, 83, 111, 99, 107, 101, 116, 32, 105, 115, 32, 99, 111, 110, 110, 101, 99, 116, 101, 100, 0, 83, 111, 99, 107, 101, 116, 32, 110, 111, 116, 32, 99, 111, 110, 110, 101, 99, 116, 101, 100, 0, 67, 97, 110, 110, 111, 116, 32, 115, 101, 110, 100, 32, 97, 102, 116, 101, 114, 32, 115, 111, 99, 107, 101, 116, 32, 115, 104, 117, 116, 100, 111, 119, 110, 0, 79, 112, 101, 114, 97, 116, 105, 111, 110, 32, 97, 108, 114, 101, 97, 100, 121, 32, 105, 110, 32, 112, 114, 111, 103, 114, 101, 115, 115, 0, 79, 112, 101, 114, 97, 116, 105, 111, 110, 32, 105, 110, 32, 112, 114, 111, 103, 114, 101, 115, 115, 0, 83, 116, 97, 108, 101, 32, 102, 105, 108, 101, 32, 104, 97, 110, 100, 108, 101, 0, 82, 101, 109, 111, 116, 101, 32, 73, 47, 79, 32, 101, 114, 114, 111, 114, 0, 81, 117, 111, 116, 97, 32, 101, 120, 99, 101, 101, 100, 101, 100, 0, 78, 111, 32, 109, 101, 100, 105, 117, 109, 32, 102, 111, 117, 110, 100, 0, 87, 114, 111, 110, 103, 32, 109, 101, 100, 105, 117, 109, 32, 116, 121, 112, 101, 0, 78, 111, 32, 101, 114, 114, 111, 114, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 0, 0, 46, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 255, 255, 255, 255, 255, 255, 255, 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, 255, 255, 255, 255, 255, 255, 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, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 1, 2, 4, 7, 3, 6, 5, 0, 105, 110, 102, 105, 110, 105, 116, 121, 0, 110, 97, 110, 0, 114, 119, 97, 0, 47, 116, 109, 112, 0, 47, 116, 109, 112, 47, 116, 37, 120, 45, 37, 120, 0, 119, 43, 0], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE + 10240); var tempDoublePtr = STATICTOP; STATICTOP += 16; Module["_i64Subtract"] = _i64Subtract; Module["_i64Add"] = _i64Add; var ERRNO_CODES = { EPERM: 1, ENOENT: 2, ESRCH: 3, EINTR: 4, EIO: 5, ENXIO: 6, E2BIG: 7, ENOEXEC: 8, EBADF: 9, ECHILD: 10, EAGAIN: 11, EWOULDBLOCK: 11, ENOMEM: 12, EACCES: 13, EFAULT: 14, ENOTBLK: 15, EBUSY: 16, EEXIST: 17, EXDEV: 18, ENODEV: 19, ENOTDIR: 20, EISDIR: 21, EINVAL: 22, ENFILE: 23, EMFILE: 24, ENOTTY: 25, ETXTBSY: 26, EFBIG: 27, ENOSPC: 28, ESPIPE: 29, EROFS: 30, EMLINK: 31, EPIPE: 32, EDOM: 33, ERANGE: 34, ENOMSG: 42, EIDRM: 43, ECHRNG: 44, EL2NSYNC: 45, EL3HLT: 46, EL3RST: 47, ELNRNG: 48, EUNATCH: 49, ENOCSI: 50, EL2HLT: 51, EDEADLK: 35, ENOLCK: 37, EBADE: 52, EBADR: 53, EXFULL: 54, ENOANO: 55, EBADRQC: 56, EBADSLT: 57, EDEADLOCK: 35, EBFONT: 59, ENOSTR: 60, ENODATA: 61, ETIME: 62, ENOSR: 63, ENONET: 64, ENOPKG: 65, EREMOTE: 66, ENOLINK: 67, EADV: 68, ESRMNT: 69, ECOMM: 70, EPROTO: 71, EMULTIHOP: 72, EDOTDOT: 73, EBADMSG: 74, ENOTUNIQ: 76, EBADFD: 77, EREMCHG: 78, ELIBACC: 79, ELIBBAD: 80, ELIBSCN: 81, ELIBMAX: 82, ELIBEXEC: 83, ENOSYS: 38, ENOTEMPTY: 39, ENAMETOOLONG: 36, ELOOP: 40, EOPNOTSUPP: 95, EPFNOSUPPORT: 96, ECONNRESET: 104, ENOBUFS: 105, EAFNOSUPPORT: 97, EPROTOTYPE: 91, ENOTSOCK: 88, ENOPROTOOPT: 92, ESHUTDOWN: 108, ECONNREFUSED: 111, EADDRINUSE: 98, ECONNABORTED: 103, ENETUNREACH: 101, ENETDOWN: 100, ETIMEDOUT: 110, EHOSTDOWN: 112, EHOSTUNREACH: 113, EINPROGRESS: 115, EALREADY: 114, EDESTADDRREQ: 89, EMSGSIZE: 90, EPROTONOSUPPORT: 93, ESOCKTNOSUPPORT: 94, EADDRNOTAVAIL: 99, ENETRESET: 102, EISCONN: 106, ENOTCONN: 107, ETOOMANYREFS: 109, EUSERS: 87, EDQUOT: 122, ESTALE: 116, ENOTSUP: 95, ENOMEDIUM: 123, EILSEQ: 84, EOVERFLOW: 75, ECANCELED: 125, ENOTRECOVERABLE: 131, EOWNERDEAD: 130, ESTRPIPE: 86 }; var ERRNO_MESSAGES = { 0: "Success", 1: "Not super-user", 2: "No such file or directory", 3: "No such process", 4: "Interrupted system call", 5: "I/O error", 6: "No such device or address", 7: "Arg list too long", 8: "Exec format error", 9: "Bad file number", 10: "No children", 11: "No more processes", 12: "Not enough core", 13: "Permission denied", 14: "Bad address", 15: "Block device required", 16: "Mount device busy", 17: "File exists", 18: "Cross-device link", 19: "No such device", 20: "Not a directory", 21: "Is a directory", 22: "Invalid argument", 23: "Too many open files in system", 24: "Too many open files", 25: "Not a typewriter", 26: "Text file busy", 27: "File too large", 28: "No space left on device", 29: "Illegal seek", 30: "Read only file system", 31: "Too many links", 32: "Broken pipe", 33: "Math arg out of domain of func", 34: "Math result not representable", 35: "File locking deadlock error", 36: "File or path name too long", 37: "No record locks available", 38: "Function not implemented", 39: "Directory not empty", 40: "Too many symbolic links", 42: "No message of desired type", 43: "Identifier removed", 44: "Channel number out of range", 45: "Level 2 not synchronized", 46: "Level 3 halted", 47: "Level 3 reset", 48: "Link number out of range", 49: "Protocol driver not attached", 50: "No CSI structure available", 51: "Level 2 halted", 52: "Invalid exchange", 53: "Invalid request descriptor", 54: "Exchange full", 55: "No anode", 56: "Invalid request code", 57: "Invalid slot", 59: "Bad font file fmt", 60: "Device not a stream", 61: "No data (for no delay io)", 62: "Timer expired", 63: "Out of streams resources", 64: "Machine is not on the network", 65: "Package not installed", 66: "The object is remote", 67: "The link has been severed", 68: "Advertise error", 69: "Srmount error", 70: "Communication error on send", 71: "Protocol error", 72: "Multihop attempted", 73: "Cross mount point (not really error)", 74: "Trying to read unreadable message", 75: "Value too large for defined data type", 76: "Given log. name not unique", 77: "f.d. invalid for this operation", 78: "Remote address changed", 79: "Can access a needed shared lib", 80: "Accessing a corrupted shared lib", 81: ".lib section in a.out corrupted", 82: "Attempting to link in too many libs", 83: "Attempting to exec a shared library", 84: "Illegal byte sequence", 86: "Streams pipe error", 87: "Too many users", 88: "Socket operation on non-socket", 89: "Destination address required", 90: "Message too long", 91: "Protocol wrong type for socket", 92: "Protocol not available", 93: "Unknown protocol", 94: "Socket type not supported", 95: "Not supported", 96: "Protocol family not supported", 97: "Address family not supported by protocol family", 98: "Address already in use", 99: "Address not available", 100: "Network interface is not configured", 101: "Network is unreachable", 102: "Connection reset by network", 103: "Connection aborted", 104: "Connection reset by peer", 105: "No buffer space available", 106: "Socket is already connected", 107: "Socket is not connected", 108: "Can't send after socket shutdown", 109: "Too many references", 110: "Connection timed out", 111: "Connection refused", 112: "Host is down", 113: "Host is unreachable", 114: "Socket already connected", 115: "Connection already in progress", 116: "Stale file handle", 122: "Quota exceeded", 123: "No medium (in tape drive)", 125: "Operation canceled", 130: "Previous owner died", 131: "State not recoverable" }; function ___setErrNo(value) { if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; return value } var PATH = { splitPath: (function (filename) { var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; return splitPathRe.exec(filename).slice(1) }), normalizeArray: (function (parts, allowAboveRoot) { var up = 0; for (var i = parts.length - 1; i >= 0; i--) { var last = parts[i]; if (last === ".") { parts.splice(i, 1) } else if (last === "..") { parts.splice(i, 1); up++ } else if (up) { parts.splice(i, 1); up-- } } if (allowAboveRoot) { for (; up--; up) { parts.unshift("..") } } return parts }), normalize: (function (path) { var isAbsolute = path.charAt(0) === "/", trailingSlash = path.substr(-1) === "/"; path = PATH.normalizeArray(path.split("/").filter((function (p) { return !!p })), !isAbsolute).join("/"); if (!path && !isAbsolute) { path = "." } if (path && trailingSlash) { path += "/" } return (isAbsolute ? "/" : "") + path }), dirname: (function (path) { var result = PATH.splitPath(path), root = result[0], dir = result[1]; if (!root && !dir) { return "." } if (dir) { dir = dir.substr(0, dir.length - 1) } return root + dir }), basename: (function (path) { if (path === "/") return "/"; var lastSlash = path.lastIndexOf("/"); if (lastSlash === -1) return path; return path.substr(lastSlash + 1) }), extname: (function (path) { return PATH.splitPath(path)[3] }), join: (function () { var paths = Array.prototype.slice.call(arguments, 0); return PATH.normalize(paths.join("/")) }), join2: (function (l, r) { return PATH.normalize(l + "/" + r) }), resolve: (function () { var resolvedPath = "", resolvedAbsolute = false; for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { var path = i >= 0 ? arguments[i] : FS.cwd(); if (typeof path !== "string") { throw new TypeError("Arguments to path.resolve must be strings") } else if (!path) { return "" } resolvedPath = path + "/" + resolvedPath; resolvedAbsolute = path.charAt(0) === "/" } resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter((function (p) { return !!p })), !resolvedAbsolute).join("/"); return (resolvedAbsolute ? "/" : "") + resolvedPath || "." }), relative: (function (from, to) { from = PATH.resolve(from).substr(1); to = PATH.resolve(to).substr(1); function trim(arr) { var start = 0; for (; start < arr.length; start++) { if (arr[start] !== "") break } var end = arr.length - 1; for (; end >= 0; end--) { if (arr[end] !== "") break } if (start > end) return []; return arr.slice(start, end - start + 1) } var fromParts = trim(from.split("/")); var toParts = trim(to.split("/")); var length = Math.min(fromParts.length, toParts.length); var samePartsLength = length; for (var i = 0; i < length; i++) { if (fromParts[i] !== toParts[i]) { samePartsLength = i; break } } var outputParts = []; for (var i = samePartsLength; i < fromParts.length; i++) { outputParts.push("..") } outputParts = outputParts.concat(toParts.slice(samePartsLength)); return outputParts.join("/") }) }; var TTY = { ttys: [], init: (function () { }), shutdown: (function () { }), register: (function (dev, ops) { TTY.ttys[dev] = { input: [], output: [], ops: ops }; FS.registerDevice(dev, TTY.stream_ops) }), stream_ops: { open: (function (stream) { var tty = TTY.ttys[stream.node.rdev]; if (!tty) { throw new FS.ErrnoError(ERRNO_CODES.ENODEV) } stream.tty = tty; stream.seekable = false }), close: (function (stream) { stream.tty.ops.flush(stream.tty) }), flush: (function (stream) { stream.tty.ops.flush(stream.tty) }), read: (function (stream, buffer, offset, length, pos) { if (!stream.tty || !stream.tty.ops.get_char) { throw new FS.ErrnoError(ERRNO_CODES.ENXIO) } var bytesRead = 0; for (var i = 0; i < length; i++) { var result; try { result = stream.tty.ops.get_char(stream.tty) } catch (e) { throw new FS.ErrnoError(ERRNO_CODES.EIO) } if (result === undefined && bytesRead === 0) { throw new FS.ErrnoError(ERRNO_CODES.EAGAIN) } if (result === null || result === undefined) break; bytesRead++; buffer[offset + i] = result } if (bytesRead) { stream.node.timestamp = Date.now() } return bytesRead }), write: (function (stream, buffer, offset, length, pos) { if (!stream.tty || !stream.tty.ops.put_char) { throw new FS.ErrnoError(ERRNO_CODES.ENXIO) } for (var i = 0; i < length; i++) { try { stream.tty.ops.put_char(stream.tty, buffer[offset + i]) } catch (e) { throw new FS.ErrnoError(ERRNO_CODES.EIO) } } if (length) { stream.node.timestamp = Date.now() } return i }) }, default_tty_ops: { get_char: (function (tty) { if (!tty.input.length) { var result = null; if (ENVIRONMENT_IS_NODE) { var BUFSIZE = 256; var buf = new Buffer(BUFSIZE); var bytesRead = 0; var isPosixPlatform = process.platform != "win32"; var fd = process.stdin.fd; if (isPosixPlatform) { var usingDevice = false; try { fd = fs.openSync("/dev/stdin", "r"); usingDevice = true } catch (e) { } } try { bytesRead = fs.readSync(fd, buf, 0, BUFSIZE, null) } catch (e) { if (e.toString().indexOf("EOF") != -1) bytesRead = 0; else throw e } if (usingDevice) { fs.closeSync(fd) } if (bytesRead > 0) { result = buf.slice(0, bytesRead).toString("utf-8") } else { result = null } } else if (typeof window != "undefined" && typeof window.prompt == "function") { result = window.prompt("Input: "); if (result !== null) { result += "\n" } } else if (typeof readline == "function") { result = readline(); if (result !== null) { result += "\n" } } if (!result) { return null } tty.input = intArrayFromString(result, true) } return tty.input.shift() }), put_char: (function (tty, val) { if (val === null || val === 10) { Module["print"](UTF8ArrayToString(tty.output, 0)); tty.output = [] } else { if (val != 0) tty.output.push(val) } }), flush: (function (tty) { if (tty.output && tty.output.length > 0) { Module["print"](UTF8ArrayToString(tty.output, 0)); tty.output = [] } }) }, default_tty1_ops: { put_char: (function (tty, val) { if (val === null || val === 10) { Module["printErr"](UTF8ArrayToString(tty.output, 0)); tty.output = [] } else { if (val != 0) tty.output.push(val) } }), flush: (function (tty) { if (tty.output && tty.output.length > 0) { Module["printErr"](UTF8ArrayToString(tty.output, 0)); tty.output = [] } }) } }; var MEMFS = { ops_table: null, mount: (function (mount) { return MEMFS.createNode(null, "/", 16384 | 511, 0) }), createNode: (function (parent, name, mode, dev) { if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } if (!MEMFS.ops_table) { MEMFS.ops_table = { dir: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, lookup: MEMFS.node_ops.lookup, mknod: MEMFS.node_ops.mknod, rename: MEMFS.node_ops.rename, unlink: MEMFS.node_ops.unlink, rmdir: MEMFS.node_ops.rmdir, readdir: MEMFS.node_ops.readdir, symlink: MEMFS.node_ops.symlink }, stream: { llseek: MEMFS.stream_ops.llseek } }, file: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: { llseek: MEMFS.stream_ops.llseek, read: MEMFS.stream_ops.read, write: MEMFS.stream_ops.write, allocate: MEMFS.stream_ops.allocate, mmap: MEMFS.stream_ops.mmap, msync: MEMFS.stream_ops.msync } }, link: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, readlink: MEMFS.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: FS.chrdev_stream_ops } } } var node = FS.createNode(parent, name, mode, dev); if (FS.isDir(node.mode)) { node.node_ops = MEMFS.ops_table.dir.node; node.stream_ops = MEMFS.ops_table.dir.stream; node.contents = {} } else if (FS.isFile(node.mode)) { node.node_ops = MEMFS.ops_table.file.node; node.stream_ops = MEMFS.ops_table.file.stream; node.usedBytes = 0; node.contents = null } else if (FS.isLink(node.mode)) { node.node_ops = MEMFS.ops_table.link.node; node.stream_ops = MEMFS.ops_table.link.stream } else if (FS.isChrdev(node.mode)) { node.node_ops = MEMFS.ops_table.chrdev.node; node.stream_ops = MEMFS.ops_table.chrdev.stream } node.timestamp = Date.now(); if (parent) { parent.contents[name] = node } return node }), getFileDataAsRegularArray: (function (node) { if (node.contents && node.contents.subarray) { var arr = []; for (var i = 0; i < node.usedBytes; ++i)arr.push(node.contents[i]); return arr } return node.contents }), getFileDataAsTypedArray: (function (node) { if (!node.contents) return new Uint8Array; if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); return new Uint8Array(node.contents) }), expandFileStorage: (function (node, newCapacity) { if (node.contents && node.contents.subarray && newCapacity > node.contents.length) { node.contents = MEMFS.getFileDataAsRegularArray(node); node.usedBytes = node.contents.length } if (!node.contents || node.contents.subarray) { var prevCapacity = node.contents ? node.contents.buffer.byteLength : 0; if (prevCapacity >= newCapacity) return; var CAPACITY_DOUBLING_MAX = 1024 * 1024; newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); var oldContents = node.contents; node.contents = new Uint8Array(newCapacity); if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); return } if (!node.contents && newCapacity > 0) node.contents = []; while (node.contents.length < newCapacity) node.contents.push(0) }), resizeFileStorage: (function (node, newSize) { if (node.usedBytes == newSize) return; if (newSize == 0) { node.contents = null; node.usedBytes = 0; return } if (!node.contents || node.contents.subarray) { var oldContents = node.contents; node.contents = new Uint8Array(new ArrayBuffer(newSize)); if (oldContents) { node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) } node.usedBytes = newSize; return } if (!node.contents) node.contents = []; if (node.contents.length > newSize) node.contents.length = newSize; else while (node.contents.length < newSize) node.contents.push(0); node.usedBytes = newSize }), node_ops: { getattr: (function (node) { var attr = {}; attr.dev = FS.isChrdev(node.mode) ? node.id : 1; attr.ino = node.id; attr.mode = node.mode; attr.nlink = 1; attr.uid = 0; attr.gid = 0; attr.rdev = node.rdev; if (FS.isDir(node.mode)) { attr.size = 4096 } else if (FS.isFile(node.mode)) { attr.size = node.usedBytes } else if (FS.isLink(node.mode)) { attr.size = node.link.length } else { attr.size = 0 } attr.atime = new Date(node.timestamp); attr.mtime = new Date(node.timestamp); attr.ctime = new Date(node.timestamp); attr.blksize = 4096; attr.blocks = Math.ceil(attr.size / attr.blksize); return attr }), setattr: (function (node, attr) { if (attr.mode !== undefined) { node.mode = attr.mode } if (attr.timestamp !== undefined) { node.timestamp = attr.timestamp } if (attr.size !== undefined) { MEMFS.resizeFileStorage(node, attr.size) } }), lookup: (function (parent, name) { throw FS.genericErrors[ERRNO_CODES.ENOENT] }), mknod: (function (parent, name, mode, dev) { return MEMFS.createNode(parent, name, mode, dev) }), rename: (function (old_node, new_dir, new_name) { if (FS.isDir(old_node.mode)) { var new_node; try { new_node = FS.lookupNode(new_dir, new_name) } catch (e) { } if (new_node) { for (var i in new_node.contents) { throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY) } } } delete old_node.parent.contents[old_node.name]; old_node.name = new_name; new_dir.contents[new_name] = old_node; old_node.parent = new_dir }), unlink: (function (parent, name) { delete parent.contents[name] }), rmdir: (function (parent, name) { var node = FS.lookupNode(parent, name); for (var i in node.contents) { throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY) } delete parent.contents[name] }), readdir: (function (node) { var entries = [".", ".."]; for (var key in node.contents) { if (!node.contents.hasOwnProperty(key)) { continue } entries.push(key) } return entries }), symlink: (function (parent, newname, oldpath) { var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); node.link = oldpath; return node }), readlink: (function (node) { if (!FS.isLink(node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } return node.link }) }, stream_ops: { read: (function (stream, buffer, offset, length, position) { var contents = stream.node.contents; if (position >= stream.node.usedBytes) return 0; var size = Math.min(stream.node.usedBytes - position, length); assert(size >= 0); if (size > 8 && contents.subarray) { buffer.set(contents.subarray(position, position + size), offset) } else { for (var i = 0; i < size; i++)buffer[offset + i] = contents[position + i] } return size }), write: (function (stream, buffer, offset, length, position, canOwn) { if (!length) return 0; var node = stream.node; node.timestamp = Date.now(); if (buffer.subarray && (!node.contents || node.contents.subarray)) { if (canOwn) { node.contents = buffer.subarray(offset, offset + length); node.usedBytes = length; return length } else if (node.usedBytes === 0 && position === 0) { node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); node.usedBytes = length; return length } else if (position + length <= node.usedBytes) { node.contents.set(buffer.subarray(offset, offset + length), position); return length } } MEMFS.expandFileStorage(node, position + length); if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); else { for (var i = 0; i < length; i++) { node.contents[position + i] = buffer[offset + i] } } node.usedBytes = Math.max(node.usedBytes, position + length); return length }), llseek: (function (stream, offset, whence) { var position = offset; if (whence === 1) { position += stream.position } else if (whence === 2) { if (FS.isFile(stream.node.mode)) { position += stream.node.usedBytes } } if (position < 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } return position }), allocate: (function (stream, offset, length) { MEMFS.expandFileStorage(stream.node, offset + length); stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) }), mmap: (function (stream, buffer, offset, length, position, prot, flags) { if (!FS.isFile(stream.node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.ENODEV) } var ptr; var allocated; var contents = stream.node.contents; if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { allocated = false; ptr = contents.byteOffset } else { if (position > 0 || position + length < stream.node.usedBytes) { if (contents.subarray) { contents = contents.subarray(position, position + length) } else { contents = Array.prototype.slice.call(contents, position, position + length) } } allocated = true; ptr = _malloc(length); if (!ptr) { throw new FS.ErrnoError(ERRNO_CODES.ENOMEM) } buffer.set(contents, ptr) } return { ptr: ptr, allocated: allocated } }), msync: (function (stream, buffer, offset, length, mmapFlags) { if (!FS.isFile(stream.node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.ENODEV) } if (mmapFlags & 2) { return 0 } var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); return 0 }) } }; var IDBFS = { dbs: {}, indexedDB: (function () { if (typeof indexedDB !== "undefined") return indexedDB; var ret = null; if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; assert(ret, "IDBFS used, but indexedDB not supported"); return ret }), DB_VERSION: 21, DB_STORE_NAME: "FILE_DATA", mount: (function (mount) { return MEMFS.mount.apply(null, arguments) }), syncfs: (function (mount, populate, callback) { IDBFS.getLocalSet(mount, (function (err, local) { if (err) return callback(err); IDBFS.getRemoteSet(mount, (function (err, remote) { if (err) return callback(err); var src = populate ? remote : local; var dst = populate ? local : remote; IDBFS.reconcile(src, dst, callback) })) })) }), getDB: (function (name, callback) { var db = IDBFS.dbs[name]; if (db) { return callback(null, db) } var req; try { req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) } catch (e) { return callback(e) } if (!req) { return callback("Unable to connect to IndexedDB") } req.onupgradeneeded = (function (e) { var db = e.target.result; var transaction = e.target.transaction; var fileStore; if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) } else { fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) } if (!fileStore.indexNames.contains("timestamp")) { fileStore.createIndex("timestamp", "timestamp", { unique: false }) } }); req.onsuccess = (function () { db = req.result; IDBFS.dbs[name] = db; callback(null, db) }); req.onerror = (function (e) { callback(this.error); e.preventDefault() }) }), getLocalSet: (function (mount, callback) { var entries = {}; function isRealDir(p) { return p !== "." && p !== ".." } function toAbsolute(root) { return (function (p) { return PATH.join2(root, p) }) } var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); while (check.length) { var path = check.pop(); var stat; try { stat = FS.stat(path) } catch (e) { return callback(e) } if (FS.isDir(stat.mode)) { check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) } entries[path] = { timestamp: stat.mtime } } return callback(null, { type: "local", entries: entries }) }), getRemoteSet: (function (mount, callback) { var entries = {}; IDBFS.getDB(mount.mountpoint, (function (err, db) { if (err) return callback(err); var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); transaction.onerror = (function (e) { callback(this.error); e.preventDefault() }); var store = transaction.objectStore(IDBFS.DB_STORE_NAME); var index = store.index("timestamp"); index.openKeyCursor().onsuccess = (function (event) { var cursor = event.target.result; if (!cursor) { return callback(null, { type: "remote", db: db, entries: entries }) } entries[cursor.primaryKey] = { timestamp: cursor.key }; cursor.continue() }) })) }), loadLocalEntry: (function (path, callback) { var stat, node; try { var lookup = FS.lookupPath(path); node = lookup.node; stat = FS.stat(path) } catch (e) { return callback(e) } if (FS.isDir(stat.mode)) { return callback(null, { timestamp: stat.mtime, mode: stat.mode }) } else if (FS.isFile(stat.mode)) { node.contents = MEMFS.getFileDataAsTypedArray(node); return callback(null, { timestamp: stat.mtime, mode: stat.mode, contents: node.contents }) } else { return callback(new Error("node type not supported")) } }), storeLocalEntry: (function (path, entry, callback) { try { if (FS.isDir(entry.mode)) { FS.mkdir(path, entry.mode) } else if (FS.isFile(entry.mode)) { FS.writeFile(path, entry.contents, { encoding: "binary", canOwn: true }) } else { return callback(new Error("node type not supported")) } FS.chmod(path, entry.mode); FS.utime(path, entry.timestamp, entry.timestamp) } catch (e) { return callback(e) } callback(null) }), removeLocalEntry: (function (path, callback) { try { var lookup = FS.lookupPath(path); var stat = FS.stat(path); if (FS.isDir(stat.mode)) { FS.rmdir(path) } else if (FS.isFile(stat.mode)) { FS.unlink(path) } } catch (e) { return callback(e) } callback(null) }), loadRemoteEntry: (function (store, path, callback) { var req = store.get(path); req.onsuccess = (function (event) { callback(null, event.target.result) }); req.onerror = (function (e) { callback(this.error); e.preventDefault() }) }), storeRemoteEntry: (function (store, path, entry, callback) { var req = store.put(entry, path); req.onsuccess = (function () { callback(null) }); req.onerror = (function (e) { callback(this.error); e.preventDefault() }) }), removeRemoteEntry: (function (store, path, callback) { var req = store.delete(path); req.onsuccess = (function () { callback(null) }); req.onerror = (function (e) { callback(this.error); e.preventDefault() }) }), reconcile: (function (src, dst, callback) { var total = 0; var create = []; Object.keys(src.entries).forEach((function (key) { var e = src.entries[key]; var e2 = dst.entries[key]; if (!e2 || e.timestamp > e2.timestamp) { create.push(key); total++ } })); var remove = []; Object.keys(dst.entries).forEach((function (key) { var e = dst.entries[key]; var e2 = src.entries[key]; if (!e2) { remove.push(key); total++ } })); if (!total) { return callback(null) } var completed = 0; var db = src.type === "remote" ? src.db : dst.db; var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); var store = transaction.objectStore(IDBFS.DB_STORE_NAME); function done(err) { if (err) { if (!done.errored) { done.errored = true; return callback(err) } return } if (++completed >= total) { return callback(null) } } transaction.onerror = (function (e) { done(this.error); e.preventDefault() }); create.sort().forEach((function (path) { if (dst.type === "local") { IDBFS.loadRemoteEntry(store, path, (function (err, entry) { if (err) return done(err); IDBFS.storeLocalEntry(path, entry, done) })) } else { IDBFS.loadLocalEntry(path, (function (err, entry) { if (err) return done(err); IDBFS.storeRemoteEntry(store, path, entry, done) })) } })); remove.sort().reverse().forEach((function (path) { if (dst.type === "local") { IDBFS.removeLocalEntry(path, done) } else { IDBFS.removeRemoteEntry(store, path, done) } })) }) }; var NODEFS = { isWindows: false, staticInit: (function () { NODEFS.isWindows = !!process.platform.match(/^win/) }), mount: (function (mount) { assert(ENVIRONMENT_IS_NODE); return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) }), createNode: (function (parent, name, mode, dev) { if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } var node = FS.createNode(parent, name, mode); node.node_ops = NODEFS.node_ops; node.stream_ops = NODEFS.stream_ops; return node }), getMode: (function (path) { var stat; try { stat = fs.lstatSync(path); if (NODEFS.isWindows) { stat.mode = stat.mode | (stat.mode & 146) >> 1 } } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } return stat.mode }), realPath: (function (node) { var parts = []; while (node.parent !== node) { parts.push(node.name); node = node.parent } parts.push(node.mount.opts.root); parts.reverse(); return PATH.join.apply(null, parts) }), flagsToPermissionStringMap: { 0: "r", 1: "r+", 2: "r+", 64: "r", 65: "r+", 66: "r+", 129: "rx+", 193: "rx+", 514: "w+", 577: "w", 578: "w+", 705: "wx", 706: "wx+", 1024: "a", 1025: "a", 1026: "a+", 1089: "a", 1090: "a+", 1153: "ax", 1154: "ax+", 1217: "ax", 1218: "ax+", 4096: "rs", 4098: "rs+" }, flagsToPermissionString: (function (flags) { flags &= ~2097152; flags &= ~2048; flags &= ~32768; flags &= ~524288; if (flags in NODEFS.flagsToPermissionStringMap) { return NODEFS.flagsToPermissionStringMap[flags] } else { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } }), node_ops: { getattr: (function (node) { var path = NODEFS.realPath(node); var stat; try { stat = fs.lstatSync(path) } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } if (NODEFS.isWindows && !stat.blksize) { stat.blksize = 4096 } if (NODEFS.isWindows && !stat.blocks) { stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 } return { dev: stat.dev, ino: stat.ino, mode: stat.mode, nlink: stat.nlink, uid: stat.uid, gid: stat.gid, rdev: stat.rdev, size: stat.size, atime: stat.atime, mtime: stat.mtime, ctime: stat.ctime, blksize: stat.blksize, blocks: stat.blocks } }), setattr: (function (node, attr) { var path = NODEFS.realPath(node); try { if (attr.mode !== undefined) { fs.chmodSync(path, attr.mode); node.mode = attr.mode } if (attr.timestamp !== undefined) { var date = new Date(attr.timestamp); fs.utimesSync(path, date, date) } if (attr.size !== undefined) { fs.truncateSync(path, attr.size) } } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), lookup: (function (parent, name) { var path = PATH.join2(NODEFS.realPath(parent), name); var mode = NODEFS.getMode(path); return NODEFS.createNode(parent, name, mode) }), mknod: (function (parent, name, mode, dev) { var node = NODEFS.createNode(parent, name, mode, dev); var path = NODEFS.realPath(node); try { if (FS.isDir(node.mode)) { fs.mkdirSync(path, node.mode) } else { fs.writeFileSync(path, "", { mode: node.mode }) } } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } return node }), rename: (function (oldNode, newDir, newName) { var oldPath = NODEFS.realPath(oldNode); var newPath = PATH.join2(NODEFS.realPath(newDir), newName); try { fs.renameSync(oldPath, newPath) } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), unlink: (function (parent, name) { var path = PATH.join2(NODEFS.realPath(parent), name); try { fs.unlinkSync(path) } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), rmdir: (function (parent, name) { var path = PATH.join2(NODEFS.realPath(parent), name); try { fs.rmdirSync(path) } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), readdir: (function (node) { var path = NODEFS.realPath(node); try { return fs.readdirSync(path) } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), symlink: (function (parent, newName, oldPath) { var newPath = PATH.join2(NODEFS.realPath(parent), newName); try { fs.symlinkSync(oldPath, newPath) } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), readlink: (function (node) { var path = NODEFS.realPath(node); try { path = fs.readlinkSync(path); path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); return path } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }) }, stream_ops: { open: (function (stream) { var path = NODEFS.realPath(stream.node); try { if (FS.isFile(stream.node.mode)) { stream.nfd = fs.openSync(path, NODEFS.flagsToPermissionString(stream.flags)) } } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), close: (function (stream) { try { if (FS.isFile(stream.node.mode) && stream.nfd) { fs.closeSync(stream.nfd) } } catch (e) { if (!e.code) throw e; throw new FS.ErrnoError(ERRNO_CODES[e.code]) } }), read: (function (stream, buffer, offset, length, position) { if (length === 0) return 0; var nbuffer = new Buffer(length); var res; try { res = fs.readSync(stream.nfd, nbuffer, 0, length, position) } catch (e) { throw new FS.ErrnoError(ERRNO_CODES[e.code]) } if (res > 0) { for (var i = 0; i < res; i++) { buffer[offset + i] = nbuffer[i] } } return res }), write: (function (stream, buffer, offset, length, position) { var nbuffer = new Buffer(buffer.subarray(offset, offset + length)); var res; try { res = fs.writeSync(stream.nfd, nbuffer, 0, length, position) } catch (e) { throw new FS.ErrnoError(ERRNO_CODES[e.code]) } return res }), llseek: (function (stream, offset, whence) { var position = offset; if (whence === 1) { position += stream.position } else if (whence === 2) { if (FS.isFile(stream.node.mode)) { try { var stat = fs.fstatSync(stream.nfd); position += stat.size } catch (e) { throw new FS.ErrnoError(ERRNO_CODES[e.code]) } } } if (position < 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } return position }) } }; var WORKERFS = { DIR_MODE: 16895, FILE_MODE: 33279, reader: null, mount: (function (mount) { assert(ENVIRONMENT_IS_WORKER); if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); var createdParents = {}; function ensureParent(path) { var parts = path.split("/"); var parent = root; for (var i = 0; i < parts.length - 1; i++) { var curr = parts.slice(0, i + 1).join("/"); if (!createdParents[curr]) { createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) } parent = createdParents[curr] } return parent } function base(path) { var parts = path.split("/"); return parts[parts.length - 1] } Array.prototype.forEach.call(mount.opts["files"] || [], (function (file) { WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) })); (mount.opts["blobs"] || []).forEach((function (obj) { WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) })); (mount.opts["packages"] || []).forEach((function (pack) { pack["metadata"].files.forEach((function (file) { var name = file.filename.substr(1); WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) })) })); return root }), createNode: (function (parent, name, mode, dev, contents, mtime) { var node = FS.createNode(parent, name, mode); node.mode = mode; node.node_ops = WORKERFS.node_ops; node.stream_ops = WORKERFS.stream_ops; node.timestamp = (mtime || new Date).getTime(); assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); if (mode === WORKERFS.FILE_MODE) { node.size = contents.size; node.contents = contents } else { node.size = 4096; node.contents = {} } if (parent) { parent.contents[name] = node } return node }), node_ops: { getattr: (function (node) { return { dev: 1, ino: undefined, mode: node.mode, nlink: 1, uid: 0, gid: 0, rdev: undefined, size: node.size, atime: new Date(node.timestamp), mtime: new Date(node.timestamp), ctime: new Date(node.timestamp), blksize: 4096, blocks: Math.ceil(node.size / 4096) } }), setattr: (function (node, attr) { if (attr.mode !== undefined) { node.mode = attr.mode } if (attr.timestamp !== undefined) { node.timestamp = attr.timestamp } }), lookup: (function (parent, name) { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) }), mknod: (function (parent, name, mode, dev) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) }), rename: (function (oldNode, newDir, newName) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) }), unlink: (function (parent, name) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) }), rmdir: (function (parent, name) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) }), readdir: (function (node) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) }), symlink: (function (parent, newName, oldPath) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) }), readlink: (function (node) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) }) }, stream_ops: { read: (function (stream, buffer, offset, length, position) { if (position >= stream.node.size) return 0; var chunk = stream.node.contents.slice(position, position + length); var ab = WORKERFS.reader.readAsArrayBuffer(chunk); buffer.set(new Uint8Array(ab), offset); return chunk.size }), write: (function (stream, buffer, offset, length, position) { throw new FS.ErrnoError(ERRNO_CODES.EIO) }), llseek: (function (stream, offset, whence) { var position = offset; if (whence === 1) { position += stream.position } else if (whence === 2) { if (FS.isFile(stream.node.mode)) { position += stream.node.size } } if (position < 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } return position }) } }; STATICTOP += 16; STATICTOP += 16; STATICTOP += 16; var FS = { root: null, mounts: [], devices: [null], streams: [], nextInode: 1, nameTable: null, currentPath: "/", initialized: false, ignorePermissions: true, trackingDelegate: {}, tracking: { openFlags: { READ: 1, WRITE: 2 } }, ErrnoError: null, genericErrors: {}, filesystems: null, syncFSRequests: 0, handleFSError: (function (e) { if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); return ___setErrNo(e.errno) }), lookupPath: (function (path, opts) { path = PATH.resolve(FS.cwd(), path); opts = opts || {}; if (!path) return { path: "", node: null }; var defaults = { follow_mount: true, recurse_count: 0 }; for (var key in defaults) { if (opts[key] === undefined) { opts[key] = defaults[key] } } if (opts.recurse_count > 8) { throw new FS.ErrnoError(ERRNO_CODES.ELOOP) } var parts = PATH.normalizeArray(path.split("/").filter((function (p) { return !!p })), false); var current = FS.root; var current_path = "/"; for (var i = 0; i < parts.length; i++) { var islast = i === parts.length - 1; if (islast && opts.parent) { break } current = FS.lookupNode(current, parts[i]); current_path = PATH.join2(current_path, parts[i]); if (FS.isMountpoint(current)) { if (!islast || islast && opts.follow_mount) { current = current.mounted.root } } if (!islast || opts.follow) { var count = 0; while (FS.isLink(current.mode)) { var link = FS.readlink(current_path); current_path = PATH.resolve(PATH.dirname(current_path), link); var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count }); current = lookup.node; if (count++ > 40) { throw new FS.ErrnoError(ERRNO_CODES.ELOOP) } } } } return { path: current_path, node: current } }), getPath: (function (node) { var path; while (true) { if (FS.isRoot(node)) { var mount = node.mount.mountpoint; if (!path) return mount; return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path } path = path ? node.name + "/" + path : node.name; node = node.parent } }), hashName: (function (parentid, name) { var hash = 0; for (var i = 0; i < name.length; i++) { hash = (hash << 5) - hash + name.charCodeAt(i) | 0 } return (parentid + hash >>> 0) % FS.nameTable.length }), hashAddNode: (function (node) { var hash = FS.hashName(node.parent.id, node.name); node.name_next = FS.nameTable[hash]; FS.nameTable[hash] = node }), hashRemoveNode: (function (node) { var hash = FS.hashName(node.parent.id, node.name); if (FS.nameTable[hash] === node) { FS.nameTable[hash] = node.name_next } else { var current = FS.nameTable[hash]; while (current) { if (current.name_next === node) { current.name_next = node.name_next; break } current = current.name_next } } }), lookupNode: (function (parent, name) { var err = FS.mayLookup(parent); if (err) { throw new FS.ErrnoError(err, parent) } var hash = FS.hashName(parent.id, name); for (var node = FS.nameTable[hash]; node; node = node.name_next) { var nodeName = node.name; if (node.parent.id === parent.id && nodeName === name) { return node } } return FS.lookup(parent, name) }), createNode: (function (parent, name, mode, rdev) { if (!FS.FSNode) { FS.FSNode = (function (parent, name, mode, rdev) { if (!parent) { parent = this } this.parent = parent; this.mount = parent.mount; this.mounted = null; this.id = FS.nextInode++; this.name = name; this.mode = mode; this.node_ops = {}; this.stream_ops = {}; this.rdev = rdev }); FS.FSNode.prototype = {}; var readMode = 292 | 73; var writeMode = 146; Object.defineProperties(FS.FSNode.prototype, { read: { get: (function () { return (this.mode & readMode) === readMode }), set: (function (val) { val ? this.mode |= readMode : this.mode &= ~readMode }) }, write: { get: (function () { return (this.mode & writeMode) === writeMode }), set: (function (val) { val ? this.mode |= writeMode : this.mode &= ~writeMode }) }, isFolder: { get: (function () { return FS.isDir(this.mode) }) }, isDevice: { get: (function () { return FS.isChrdev(this.mode) }) } }) } var node = new FS.FSNode(parent, name, mode, rdev); FS.hashAddNode(node); return node }), destroyNode: (function (node) { FS.hashRemoveNode(node) }), isRoot: (function (node) { return node === node.parent }), isMountpoint: (function (node) { return !!node.mounted }), isFile: (function (mode) { return (mode & 61440) === 32768 }), isDir: (function (mode) { return (mode & 61440) === 16384 }), isLink: (function (mode) { return (mode & 61440) === 40960 }), isChrdev: (function (mode) { return (mode & 61440) === 8192 }), isBlkdev: (function (mode) { return (mode & 61440) === 24576 }), isFIFO: (function (mode) { return (mode & 61440) === 4096 }), isSocket: (function (mode) { return (mode & 49152) === 49152 }), flagModes: { "r": 0, "rs": 1052672, "r+": 2, "w": 577, "wx": 705, "xw": 705, "w+": 578, "wx+": 706, "xw+": 706, "a": 1089, "ax": 1217, "xa": 1217, "a+": 1090, "ax+": 1218, "xa+": 1218 }, modeStringToFlags: (function (str) { var flags = FS.flagModes[str]; if (typeof flags === "undefined") { throw new Error("Unknown file open mode: " + str) } return flags }), flagsToPermissionString: (function (flag) { var perms = ["r", "w", "rw"][flag & 3]; if (flag & 512) { perms += "w" } return perms }), nodePermissions: (function (node, perms) { if (FS.ignorePermissions) { return 0 } if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { return ERRNO_CODES.EACCES } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { return ERRNO_CODES.EACCES } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { return ERRNO_CODES.EACCES } return 0 }), mayLookup: (function (dir) { var err = FS.nodePermissions(dir, "x"); if (err) return err; if (!dir.node_ops.lookup) return ERRNO_CODES.EACCES; return 0 }), mayCreate: (function (dir, name) { try { var node = FS.lookupNode(dir, name); return ERRNO_CODES.EEXIST } catch (e) { } return FS.nodePermissions(dir, "wx") }), mayDelete: (function (dir, name, isdir) { var node; try { node = FS.lookupNode(dir, name) } catch (e) { return e.errno } var err = FS.nodePermissions(dir, "wx"); if (err) { return err } if (isdir) { if (!FS.isDir(node.mode)) { return ERRNO_CODES.ENOTDIR } if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { return ERRNO_CODES.EBUSY } } else { if (FS.isDir(node.mode)) { return ERRNO_CODES.EISDIR } } return 0 }), mayOpen: (function (node, flags) { if (!node) { return ERRNO_CODES.ENOENT } if (FS.isLink(node.mode)) { return ERRNO_CODES.ELOOP } else if (FS.isDir(node.mode)) { if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { return ERRNO_CODES.EISDIR } } return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) }), MAX_OPEN_FDS: 4096, nextfd: (function (fd_start, fd_end) { fd_start = fd_start || 0; fd_end = fd_end || FS.MAX_OPEN_FDS; for (var fd = fd_start; fd <= fd_end; fd++) { if (!FS.streams[fd]) { return fd } } throw new FS.ErrnoError(ERRNO_CODES.EMFILE) }), getStream: (function (fd) { return FS.streams[fd] }), createStream: (function (stream, fd_start, fd_end) { if (!FS.FSStream) { FS.FSStream = (function () { }); FS.FSStream.prototype = {}; Object.defineProperties(FS.FSStream.prototype, { object: { get: (function () { return this.node }), set: (function (val) { this.node = val }) }, isRead: { get: (function () { return (this.flags & 2097155) !== 1 }) }, isWrite: { get: (function () { return (this.flags & 2097155) !== 0 }) }, isAppend: { get: (function () { return this.flags & 1024 }) } }) } var newStream = new FS.FSStream; for (var p in stream) { newStream[p] = stream[p] } stream = newStream; var fd = FS.nextfd(fd_start, fd_end); stream.fd = fd; FS.streams[fd] = stream; return stream }), closeStream: (function (fd) { FS.streams[fd] = null }), chrdev_stream_ops: { open: (function (stream) { var device = FS.getDevice(stream.node.rdev); stream.stream_ops = device.stream_ops; if (stream.stream_ops.open) { stream.stream_ops.open(stream) } }), llseek: (function () { throw new FS.ErrnoError(ERRNO_CODES.ESPIPE) }) }, major: (function (dev) { return dev >> 8 }), minor: (function (dev) { return dev & 255 }), makedev: (function (ma, mi) { return ma << 8 | mi }), registerDevice: (function (dev, ops) { FS.devices[dev] = { stream_ops: ops } }), getDevice: (function (dev) { return FS.devices[dev] }), getMounts: (function (mount) { var mounts = []; var check = [mount]; while (check.length) { var m = check.pop(); mounts.push(m); check.push.apply(check, m.mounts) } return mounts }), syncfs: (function (populate, callback) { if (typeof populate === "function") { callback = populate; populate = false } FS.syncFSRequests++; if (FS.syncFSRequests > 1) { console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") } var mounts = FS.getMounts(FS.root.mount); var completed = 0; function doCallback(err) { assert(FS.syncFSRequests > 0); FS.syncFSRequests--; return callback(err) } function done(err) { if (err) { if (!done.errored) { done.errored = true; return doCallback(err) } return } if (++completed >= mounts.length) { doCallback(null) } } mounts.forEach((function (mount) { if (!mount.type.syncfs) { return done(null) } mount.type.syncfs(mount, populate, done) })) }), mount: (function (type, opts, mountpoint) { var root = mountpoint === "/"; var pseudo = !mountpoint; var node; if (root && FS.root) { throw new FS.ErrnoError(ERRNO_CODES.EBUSY) } else if (!root && !pseudo) { var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); mountpoint = lookup.path; node = lookup.node; if (FS.isMountpoint(node)) { throw new FS.ErrnoError(ERRNO_CODES.EBUSY) } if (!FS.isDir(node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR) } } var mount = { type: type, opts: opts, mountpoint: mountpoint, mounts: [] }; var mountRoot = type.mount(mount); mountRoot.mount = mount; mount.root = mountRoot; if (root) { FS.root = mountRoot } else if (node) { node.mounted = mount; if (node.mount) { node.mount.mounts.push(mount) } } return mountRoot }), unmount: (function (mountpoint) { var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); if (!FS.isMountpoint(lookup.node)) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } var node = lookup.node; var mount = node.mounted; var mounts = FS.getMounts(mount); Object.keys(FS.nameTable).forEach((function (hash) { var current = FS.nameTable[hash]; while (current) { var next = current.name_next; if (mounts.indexOf(current.mount) !== -1) { FS.destroyNode(current) } current = next } })); node.mounted = null; var idx = node.mount.mounts.indexOf(mount); assert(idx !== -1); node.mount.mounts.splice(idx, 1) }), lookup: (function (parent, name) { return parent.node_ops.lookup(parent, name) }), mknod: (function (path, mode, dev) { var lookup = FS.lookupPath(path, { parent: true }); var parent = lookup.node; var name = PATH.basename(path); if (!name || name === "." || name === "..") { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } var err = FS.mayCreate(parent, name); if (err) { throw new FS.ErrnoError(err) } if (!parent.node_ops.mknod) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } return parent.node_ops.mknod(parent, name, mode, dev) }), create: (function (path, mode) { mode = mode !== undefined ? mode : 438; mode &= 4095; mode |= 32768; return FS.mknod(path, mode, 0) }), mkdir: (function (path, mode) { mode = mode !== undefined ? mode : 511; mode &= 511 | 512; mode |= 16384; return FS.mknod(path, mode, 0) }), mkdev: (function (path, mode, dev) { if (typeof dev === "undefined") { dev = mode; mode = 438 } mode |= 8192; return FS.mknod(path, mode, dev) }), symlink: (function (oldpath, newpath) { if (!PATH.resolve(oldpath)) { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) } var lookup = FS.lookupPath(newpath, { parent: true }); var parent = lookup.node; if (!parent) { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) } var newname = PATH.basename(newpath); var err = FS.mayCreate(parent, newname); if (err) { throw new FS.ErrnoError(err) } if (!parent.node_ops.symlink) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } return parent.node_ops.symlink(parent, newname, oldpath) }), rename: (function (old_path, new_path) { var old_dirname = PATH.dirname(old_path); var new_dirname = PATH.dirname(new_path); var old_name = PATH.basename(old_path); var new_name = PATH.basename(new_path); var lookup, old_dir, new_dir; try { lookup = FS.lookupPath(old_path, { parent: true }); old_dir = lookup.node; lookup = FS.lookupPath(new_path, { parent: true }); new_dir = lookup.node } catch (e) { throw new FS.ErrnoError(ERRNO_CODES.EBUSY) } if (!old_dir || !new_dir) throw new FS.ErrnoError(ERRNO_CODES.ENOENT); if (old_dir.mount !== new_dir.mount) { throw new FS.ErrnoError(ERRNO_CODES.EXDEV) } var old_node = FS.lookupNode(old_dir, old_name); var relative = PATH.relative(old_path, new_dirname); if (relative.charAt(0) !== ".") { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } relative = PATH.relative(new_path, old_dirname); if (relative.charAt(0) !== ".") { throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY) } var new_node; try { new_node = FS.lookupNode(new_dir, new_name) } catch (e) { } if (old_node === new_node) { return } var isdir = FS.isDir(old_node.mode); var err = FS.mayDelete(old_dir, old_name, isdir); if (err) { throw new FS.ErrnoError(err) } err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); if (err) { throw new FS.ErrnoError(err) } if (!old_dir.node_ops.rename) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { throw new FS.ErrnoError(ERRNO_CODES.EBUSY) } if (new_dir !== old_dir) { err = FS.nodePermissions(old_dir, "w"); if (err) { throw new FS.ErrnoError(err) } } try { if (FS.trackingDelegate["willMovePath"]) { FS.trackingDelegate["willMovePath"](old_path, new_path) } } catch (e) { console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) } FS.hashRemoveNode(old_node); try { old_dir.node_ops.rename(old_node, new_dir, new_name) } catch (e) { throw e } finally { FS.hashAddNode(old_node) } try { if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) } catch (e) { console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) } }), rmdir: (function (path) { var lookup = FS.lookupPath(path, { parent: true }); var parent = lookup.node; var name = PATH.basename(path); var node = FS.lookupNode(parent, name); var err = FS.mayDelete(parent, name, true); if (err) { throw new FS.ErrnoError(err) } if (!parent.node_ops.rmdir) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } if (FS.isMountpoint(node)) { throw new FS.ErrnoError(ERRNO_CODES.EBUSY) } try { if (FS.trackingDelegate["willDeletePath"]) { FS.trackingDelegate["willDeletePath"](path) } } catch (e) { console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) } parent.node_ops.rmdir(parent, name); FS.destroyNode(node); try { if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) } catch (e) { console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) } }), readdir: (function (path) { var lookup = FS.lookupPath(path, { follow: true }); var node = lookup.node; if (!node.node_ops.readdir) { throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR) } return node.node_ops.readdir(node) }), unlink: (function (path) { var lookup = FS.lookupPath(path, { parent: true }); var parent = lookup.node; var name = PATH.basename(path); var node = FS.lookupNode(parent, name); var err = FS.mayDelete(parent, name, false); if (err) { throw new FS.ErrnoError(err) } if (!parent.node_ops.unlink) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } if (FS.isMountpoint(node)) { throw new FS.ErrnoError(ERRNO_CODES.EBUSY) } try { if (FS.trackingDelegate["willDeletePath"]) { FS.trackingDelegate["willDeletePath"](path) } } catch (e) { console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) } parent.node_ops.unlink(parent, name); FS.destroyNode(node); try { if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) } catch (e) { console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) } }), readlink: (function (path) { var lookup = FS.lookupPath(path); var link = lookup.node; if (!link) { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) } if (!link.node_ops.readlink) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } return PATH.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) }), stat: (function (path, dontFollow) { var lookup = FS.lookupPath(path, { follow: !dontFollow }); var node = lookup.node; if (!node) { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) } if (!node.node_ops.getattr) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } return node.node_ops.getattr(node) }), lstat: (function (path) { return FS.stat(path, true) }), chmod: (function (path, mode, dontFollow) { var node; if (typeof path === "string") { var lookup = FS.lookupPath(path, { follow: !dontFollow }); node = lookup.node } else { node = path } if (!node.node_ops.setattr) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } node.node_ops.setattr(node, { mode: mode & 4095 | node.mode & ~4095, timestamp: Date.now() }) }), lchmod: (function (path, mode) { FS.chmod(path, mode, true) }), fchmod: (function (fd, mode) { var stream = FS.getStream(fd); if (!stream) { throw new FS.ErrnoError(ERRNO_CODES.EBADF) } FS.chmod(stream.node, mode) }), chown: (function (path, uid, gid, dontFollow) { var node; if (typeof path === "string") { var lookup = FS.lookupPath(path, { follow: !dontFollow }); node = lookup.node } else { node = path } if (!node.node_ops.setattr) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } node.node_ops.setattr(node, { timestamp: Date.now() }) }), lchown: (function (path, uid, gid) { FS.chown(path, uid, gid, true) }), fchown: (function (fd, uid, gid) { var stream = FS.getStream(fd); if (!stream) { throw new FS.ErrnoError(ERRNO_CODES.EBADF) } FS.chown(stream.node, uid, gid) }), truncate: (function (path, len) { if (len < 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } var node; if (typeof path === "string") { var lookup = FS.lookupPath(path, { follow: true }); node = lookup.node } else { node = path } if (!node.node_ops.setattr) { throw new FS.ErrnoError(ERRNO_CODES.EPERM) } if (FS.isDir(node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.EISDIR) } if (!FS.isFile(node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } var err = FS.nodePermissions(node, "w"); if (err) { throw new FS.ErrnoError(err) } node.node_ops.setattr(node, { size: len, timestamp: Date.now() }) }), ftruncate: (function (fd, len) { var stream = FS.getStream(fd); if (!stream) { throw new FS.ErrnoError(ERRNO_CODES.EBADF) } if ((stream.flags & 2097155) === 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } FS.truncate(stream.node, len) }), utime: (function (path, atime, mtime) { var lookup = FS.lookupPath(path, { follow: true }); var node = lookup.node; node.node_ops.setattr(node, { timestamp: Math.max(atime, mtime) }) }), open: (function (path, flags, mode, fd_start, fd_end) { if (path === "") { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) } flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; mode = typeof mode === "undefined" ? 438 : mode; if (flags & 64) { mode = mode & 4095 | 32768 } else { mode = 0 } var node; if (typeof path === "object") { node = path } else { path = PATH.normalize(path); try { var lookup = FS.lookupPath(path, { follow: !(flags & 131072) }); node = lookup.node } catch (e) { } } var created = false; if (flags & 64) { if (node) { if (flags & 128) { throw new FS.ErrnoError(ERRNO_CODES.EEXIST) } } else { node = FS.mknod(path, mode, 0); created = true } } if (!node) { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) } if (FS.isChrdev(node.mode)) { flags &= ~512 } if (flags & 65536 && !FS.isDir(node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR) } if (!created) { var err = FS.mayOpen(node, flags); if (err) { throw new FS.ErrnoError(err) } } if (flags & 512) { FS.truncate(node, 0) } flags &= ~(128 | 512); var stream = FS.createStream({ node: node, path: FS.getPath(node), flags: flags, seekable: true, position: 0, stream_ops: node.stream_ops, ungotten: [], error: false }, fd_start, fd_end); if (stream.stream_ops.open) { stream.stream_ops.open(stream) } if (Module["logReadFiles"] && !(flags & 1)) { if (!FS.readFiles) FS.readFiles = {}; if (!(path in FS.readFiles)) { FS.readFiles[path] = 1; Module["printErr"]("read file: " + path) } } try { if (FS.trackingDelegate["onOpenFile"]) { var trackingFlags = 0; if ((flags & 2097155) !== 1) { trackingFlags |= FS.tracking.openFlags.READ } if ((flags & 2097155) !== 0) { trackingFlags |= FS.tracking.openFlags.WRITE } FS.trackingDelegate["onOpenFile"](path, trackingFlags) } } catch (e) { console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) } return stream }), close: (function (stream) { if (stream.getdents) stream.getdents = null; try { if (stream.stream_ops.close) { stream.stream_ops.close(stream) } } catch (e) { throw e } finally { FS.closeStream(stream.fd) } }), llseek: (function (stream, offset, whence) { if (!stream.seekable || !stream.stream_ops.llseek) { throw new FS.ErrnoError(ERRNO_CODES.ESPIPE) } stream.position = stream.stream_ops.llseek(stream, offset, whence); stream.ungotten = []; return stream.position }), read: (function (stream, buffer, offset, length, position) { if (length < 0 || position < 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } if ((stream.flags & 2097155) === 1) { throw new FS.ErrnoError(ERRNO_CODES.EBADF) } if (FS.isDir(stream.node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.EISDIR) } if (!stream.stream_ops.read) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } var seeking = true; if (typeof position === "undefined") { position = stream.position; seeking = false } else if (!stream.seekable) { throw new FS.ErrnoError(ERRNO_CODES.ESPIPE) } var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); if (!seeking) stream.position += bytesRead; return bytesRead }), write: (function (stream, buffer, offset, length, position, canOwn) { if (length < 0 || position < 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } if ((stream.flags & 2097155) === 0) { throw new FS.ErrnoError(ERRNO_CODES.EBADF) } if (FS.isDir(stream.node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.EISDIR) } if (!stream.stream_ops.write) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } if (stream.flags & 1024) { FS.llseek(stream, 0, 2) } var seeking = true; if (typeof position === "undefined") { position = stream.position; seeking = false } else if (!stream.seekable) { throw new FS.ErrnoError(ERRNO_CODES.ESPIPE) } var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); if (!seeking) stream.position += bytesWritten; try { if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) } catch (e) { console.log("FS.trackingDelegate['onWriteToFile']('" + path + "') threw an exception: " + e.message) } return bytesWritten }), allocate: (function (stream, offset, length) { if (offset < 0 || length <= 0) { throw new FS.ErrnoError(ERRNO_CODES.EINVAL) } if ((stream.flags & 2097155) === 0) { throw new FS.ErrnoError(ERRNO_CODES.EBADF) } if (!FS.isFile(stream.node.mode) && !FS.isDir(node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.ENODEV) } if (!stream.stream_ops.allocate) { throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP) } stream.stream_ops.allocate(stream, offset, length) }), mmap: (function (stream, buffer, offset, length, position, prot, flags) { if ((stream.flags & 2097155) === 1) { throw new FS.ErrnoError(ERRNO_CODES.EACCES) } if (!stream.stream_ops.mmap) { throw new FS.ErrnoError(ERRNO_CODES.ENODEV) } return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) }), msync: (function (stream, buffer, offset, length, mmapFlags) { if (!stream || !stream.stream_ops.msync) { return 0 } return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) }), munmap: (function (stream) { return 0 }), ioctl: (function (stream, cmd, arg) { if (!stream.stream_ops.ioctl) { throw new FS.ErrnoError(ERRNO_CODES.ENOTTY) } return stream.stream_ops.ioctl(stream, cmd, arg) }), readFile: (function (path, opts) { opts = opts || {}; opts.flags = opts.flags || "r"; opts.encoding = opts.encoding || "binary"; if (opts.encoding !== "utf8" && opts.encoding !== "binary") { throw new Error('Invalid encoding type "' + opts.encoding + '"') } var ret; var stream = FS.open(path, opts.flags); var stat = FS.stat(path); var length = stat.size; var buf = new Uint8Array(length); FS.read(stream, buf, 0, length, 0); if (opts.encoding === "utf8") { ret = UTF8ArrayToString(buf, 0) } else if (opts.encoding === "binary") { ret = buf } FS.close(stream); return ret }), writeFile: (function (path, data, opts) { opts = opts || {}; opts.flags = opts.flags || "w"; opts.encoding = opts.encoding || "utf8"; if (opts.encoding !== "utf8" && opts.encoding !== "binary") { throw new Error('Invalid encoding type "' + opts.encoding + '"') } var stream = FS.open(path, opts.flags, opts.mode); if (opts.encoding === "utf8") { var buf = new Uint8Array(lengthBytesUTF8(data) + 1); var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); FS.write(stream, buf, 0, actualNumBytes, 0, opts.canOwn) } else if (opts.encoding === "binary") { FS.write(stream, data, 0, data.length, 0, opts.canOwn) } FS.close(stream) }), cwd: (function () { return FS.currentPath }), chdir: (function (path) { var lookup = FS.lookupPath(path, { follow: true }); if (!FS.isDir(lookup.node.mode)) { throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR) } var err = FS.nodePermissions(lookup.node, "x"); if (err) { throw new FS.ErrnoError(err) } FS.currentPath = lookup.path }), createDefaultDirectories: (function () { FS.mkdir("/tmp"); FS.mkdir("/home"); FS.mkdir("/home/web_user") }), createDefaultDevices: (function () { FS.mkdir("/dev"); FS.registerDevice(FS.makedev(1, 3), { read: (function () { return 0 }), write: (function (stream, buffer, offset, length, pos) { return length }) }); FS.mkdev("/dev/null", FS.makedev(1, 3)); TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); FS.mkdev("/dev/tty", FS.makedev(5, 0)); FS.mkdev("/dev/tty1", FS.makedev(6, 0)); var random_device; if (typeof crypto !== "undefined") { var randomBuffer = new Uint8Array(1); random_device = (function () { crypto.getRandomValues(randomBuffer); return randomBuffer[0] }) } else if (ENVIRONMENT_IS_NODE) { random_device = (function () { return require("crypto").randomBytes(1)[0] }) } else { random_device = (function () { return Math.random() * 256 | 0 }) } FS.createDevice("/dev", "random", random_device); FS.createDevice("/dev", "urandom", random_device); FS.mkdir("/dev/shm"); FS.mkdir("/dev/shm/tmp") }), createSpecialDirectories: (function () { FS.mkdir("/proc"); FS.mkdir("/proc/self"); FS.mkdir("/proc/self/fd"); FS.mount({ mount: (function () { var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); node.node_ops = { lookup: (function (parent, name) { var fd = +name; var stream = FS.getStream(fd); if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF); var ret = { parent: null, mount: { mountpoint: "fake" }, node_ops: { readlink: (function () { return stream.path }) } }; ret.parent = ret; return ret }) }; return node }) }, {}, "/proc/self/fd") }), createStandardStreams: (function () { if (Module["stdin"]) { FS.createDevice("/dev", "stdin", Module["stdin"]) } else { FS.symlink("/dev/tty", "/dev/stdin") } if (Module["stdout"]) { FS.createDevice("/dev", "stdout", null, Module["stdout"]) } else { FS.symlink("/dev/tty", "/dev/stdout") } if (Module["stderr"]) { FS.createDevice("/dev", "stderr", null, Module["stderr"]) } else { FS.symlink("/dev/tty1", "/dev/stderr") } var stdin = FS.open("/dev/stdin", "r"); assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); var stdout = FS.open("/dev/stdout", "w"); assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); var stderr = FS.open("/dev/stderr", "w"); assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") }), ensureErrnoError: (function () { if (FS.ErrnoError) return; FS.ErrnoError = function ErrnoError(errno, node) { this.node = node; this.setErrno = (function (errno) { this.errno = errno; for (var key in ERRNO_CODES) { if (ERRNO_CODES[key] === errno) { this.code = key; break } } }); this.setErrno(errno); this.message = ERRNO_MESSAGES[errno] }; FS.ErrnoError.prototype = new Error; FS.ErrnoError.prototype.constructor = FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function (code) { FS.genericErrors[code] = new FS.ErrnoError(code); FS.genericErrors[code].stack = "<generic error, no stack>" })) }), staticInit: (function () { FS.ensureErrnoError(); FS.nameTable = new Array(4096); FS.mount(MEMFS, {}, "/"); FS.createDefaultDirectories(); FS.createDefaultDevices(); FS.createSpecialDirectories(); FS.filesystems = { "MEMFS": MEMFS, "IDBFS": IDBFS, "NODEFS": NODEFS, "WORKERFS": WORKERFS } }), init: (function (input, output, error) { assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); FS.init.initialized = true; FS.ensureErrnoError(); Module["stdin"] = input || Module["stdin"]; Module["stdout"] = output || Module["stdout"]; Module["stderr"] = error || Module["stderr"]; FS.createStandardStreams() }), quit: (function () { FS.init.initialized = false; var fflush = Module["_fflush"]; if (fflush) fflush(0); for (var i = 0; i < FS.streams.length; i++) { var stream = FS.streams[i]; if (!stream) { continue } FS.close(stream) } }), getMode: (function (canRead, canWrite) { var mode = 0; if (canRead) mode |= 292 | 73; if (canWrite) mode |= 146; return mode }), joinPath: (function (parts, forceRelative) { var path = PATH.join.apply(null, parts); if (forceRelative && path[0] == "/") path = path.substr(1); return path }), absolutePath: (function (relative, base) { return PATH.resolve(base, relative) }), standardizePath: (function (path) { return PATH.normalize(path) }), findObject: (function (path, dontResolveLastLink) { var ret = FS.analyzePath(path, dontResolveLastLink); if (ret.exists) { return ret.object } else { ___setErrNo(ret.error); return null } }), analyzePath: (function (path, dontResolveLastLink) { try { var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); path = lookup.path } catch (e) { } var ret = { isRoot: false, exists: false, error: 0, name: null, path: null, object: null, parentExists: false, parentPath: null, parentObject: null }; try { var lookup = FS.lookupPath(path, { parent: true }); ret.parentExists = true; ret.parentPath = lookup.path; ret.parentObject = lookup.node; ret.name = PATH.basename(path); lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); ret.exists = true; ret.path = lookup.path; ret.object = lookup.node; ret.name = lookup.node.name; ret.isRoot = lookup.path === "/" } catch (e) { ret.error = e.errno } return ret }), createFolder: (function (parent, name, canRead, canWrite) { var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); var mode = FS.getMode(canRead, canWrite); return FS.mkdir(path, mode) }), createPath: (function (parent, path, canRead, canWrite) { parent = typeof parent === "string" ? parent : FS.getPath(parent); var parts = path.split("/").reverse(); while (parts.length) { var part = parts.pop(); if (!part) continue; var current = PATH.join2(parent, part); try { FS.mkdir(current) } catch (e) { } parent = current } return current }), createFile: (function (parent, name, properties, canRead, canWrite) { var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); var mode = FS.getMode(canRead, canWrite); return FS.create(path, mode) }), createDataFile: (function (parent, name, data, canRead, canWrite, canOwn) { var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; var mode = FS.getMode(canRead, canWrite); var node = FS.create(path, mode); if (data) { if (typeof data === "string") { var arr = new Array(data.length); for (var i = 0, len = data.length; i < len; ++i)arr[i] = data.charCodeAt(i); data = arr } FS.chmod(node, mode | 146); var stream = FS.open(node, "w"); FS.write(stream, data, 0, data.length, 0, canOwn); FS.close(stream); FS.chmod(node, mode) } return node }), createDevice: (function (parent, name, input, output) { var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); var mode = FS.getMode(!!input, !!output); if (!FS.createDevice.major) FS.createDevice.major = 64; var dev = FS.makedev(FS.createDevice.major++, 0); FS.registerDevice(dev, { open: (function (stream) { stream.seekable = false }), close: (function (stream) { if (output && output.buffer && output.buffer.length) { output(10) } }), read: (function (stream, buffer, offset, length, pos) { var bytesRead = 0; for (var i = 0; i < length; i++) { var result; try { result = input() } catch (e) { throw new FS.ErrnoError(ERRNO_CODES.EIO) } if (result === undefined && bytesRead === 0) { throw new FS.ErrnoError(ERRNO_CODES.EAGAIN) } if (result === null || result === undefined) break; bytesRead++; buffer[offset + i] = result } if (bytesRead) { stream.node.timestamp = Date.now() } return bytesRead }), write: (function (stream, buffer, offset, length, pos) { for (var i = 0; i < length; i++) { try { output(buffer[offset + i]) } catch (e) { throw new FS.ErrnoError(ERRNO_CODES.EIO) } } if (length) { stream.node.timestamp = Date.now() } return i }) }); return FS.mkdev(path, mode, dev) }), createLink: (function (parent, name, target, canRead, canWrite) { var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); return FS.symlink(target, path) }), forceLoadFile: (function (obj) { if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; var success = true; if (typeof XMLHttpRequest !== "undefined") { throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") } else if (Module["read"]) { try { obj.contents = intArrayFromString(Module["read"](obj.url), true); obj.usedBytes = obj.contents.length } catch (e) { success = false } } else { throw new Error("Cannot load without read() or XMLHttpRequest.") } if (!success) ___setErrNo(ERRNO_CODES.EIO); return success }), createLazyFile: (function (parent, name, url, canRead, canWrite) { function LazyUint8Array() { this.lengthKnown = false; this.chunks = [] } LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { if (idx > this.length - 1 || idx < 0) { return undefined } var chunkOffset = idx % this.chunkSize; var chunkNum = idx / this.chunkSize | 0; return this.getter(chunkNum)[chunkOffset] }; LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { this.getter = getter }; LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { var xhr = new XMLHttpRequest; xhr.open("HEAD", url, false); xhr.send(null); if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); var datalength = Number(xhr.getResponseHeader("Content-length")); var header; var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; var chunkSize = 1024 * 1024; if (!hasByteServing) chunkSize = datalength; var doXHR = (function (from, to) { if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); var xhr = new XMLHttpRequest; xhr.open("GET", url, false); if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; if (xhr.overrideMimeType) { xhr.overrideMimeType("text/plain; charset=x-user-defined") } xhr.send(null); if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); if (xhr.response !== undefined) { return new Uint8Array(xhr.response || []) } else { return intArrayFromString(xhr.responseText || "", true) } }); var lazyArray = this; lazyArray.setDataGetter((function (chunkNum) { var start = chunkNum * chunkSize; var end = (chunkNum + 1) * chunkSize - 1; end = Math.min(end, datalength - 1); if (typeof lazyArray.chunks[chunkNum] === "undefined") { lazyArray.chunks[chunkNum] = doXHR(start, end) } if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); return lazyArray.chunks[chunkNum] })); if (usesGzip || !datalength) { chunkSize = datalength = 1; datalength = this.getter(0).length; chunkSize = datalength; console.log("LazyFiles on gzip forces download of the whole file when length is accessed") } this._length = datalength; this._chunkSize = chunkSize; this.lengthKnown = true }; if (typeof XMLHttpRequest !== "undefined") { if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; var lazyArray = new LazyUint8Array; Object.defineProperties(lazyArray, { length: { get: (function () { if (!this.lengthKnown) { this.cacheLength() } return this._length }) }, chunkSize: { get: (function () { if (!this.lengthKnown) { this.cacheLength() } return this._chunkSize }) } }); var properties = { isDevice: false, contents: lazyArray } } else { var properties = { isDevice: false, url: url } } var node = FS.createFile(parent, name, properties, canRead, canWrite); if (properties.contents) { node.contents = properties.contents } else if (properties.url) { node.contents = null; node.url = properties.url } Object.defineProperties(node, { usedBytes: { get: (function () { return this.contents.length }) } }); var stream_ops = {}; var keys = Object.keys(node.stream_ops); keys.forEach((function (key) { var fn = node.stream_ops[key]; stream_ops[key] = function forceLoadLazyFile() { if (!FS.forceLoadFile(node)) { throw new FS.ErrnoError(ERRNO_CODES.EIO) } return fn.apply(null, arguments) } })); stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { if (!FS.forceLoadFile(node)) { throw new FS.ErrnoError(ERRNO_CODES.EIO) } var contents = stream.node.contents; if (position >= contents.length) return 0; var size = Math.min(contents.length - position, length); assert(size >= 0); if (contents.slice) { for (var i = 0; i < size; i++) { buffer[offset + i] = contents[position + i] } } else { for (var i = 0; i < size; i++) { buffer[offset + i] = contents.get(position + i) } } return size }; node.stream_ops = stream_ops; return node }), createPreloadedFile: (function (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { Browser.init(); var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent; var dep = getUniqueRunDependency("cp " + fullname); function processData(byteArray) { function finish(byteArray) { if (preFinish) preFinish(); if (!dontCreateFile) { FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) } if (onload) onload(); removeRunDependency(dep) } var handled = false; Module["preloadPlugins"].forEach((function (plugin) { if (handled) return; if (plugin["canHandle"](fullname)) { plugin["handle"](byteArray, fullname, finish, (function () { if (onerror) onerror(); removeRunDependency(dep) })); handled = true } })); if (!handled) finish(byteArray) } addRunDependency(dep); if (typeof url == "string") { Browser.asyncLoad(url, (function (byteArray) { processData(byteArray) }), onerror) } else { processData(url) } }), indexedDB: (function () { return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB }), DB_NAME: (function () { return "EM_FS_" + window.location.pathname }), DB_VERSION: 20, DB_STORE_NAME: "FILE_DATA", saveFilesToDB: (function (paths, onload, onerror) { onload = onload || (function () { }); onerror = onerror || (function () { }); var indexedDB = FS.indexedDB(); try { var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) } catch (e) { return onerror(e) } openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { console.log("creating db"); var db = openRequest.result; db.createObjectStore(FS.DB_STORE_NAME) }; openRequest.onsuccess = function openRequest_onsuccess() { var db = openRequest.result; var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); var files = transaction.objectStore(FS.DB_STORE_NAME); var ok = 0, fail = 0, total = paths.length; function finish() { if (fail == 0) onload(); else onerror() } paths.forEach((function (path) { var putRequest = files.put(FS.analyzePath(path).object.contents, path); putRequest.onsuccess = function putRequest_onsuccess() { ok++; if (ok + fail == total) finish() }; putRequest.onerror = function putRequest_onerror() { fail++; if (ok + fail == total) finish() } })); transaction.onerror = onerror }; openRequest.onerror = onerror }), loadFilesFromDB: (function (paths, onload, onerror) { onload = onload || (function () { }); onerror = onerror || (function () { }); var indexedDB = FS.indexedDB(); try { var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) } catch (e) { return onerror(e) } openRequest.onupgradeneeded = onerror; openRequest.onsuccess = function openRequest_onsuccess() { var db = openRequest.result; try { var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") } catch (e) { onerror(e); return } var files = transaction.objectStore(FS.DB_STORE_NAME); var ok = 0, fail = 0, total = paths.length; function finish() { if (fail == 0) onload(); else onerror() } paths.forEach((function (path) { var getRequest = files.get(path); getRequest.onsuccess = function getRequest_onsuccess() { if (FS.analyzePath(path).exists) { FS.unlink(path) } FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); ok++; if (ok + fail == total) finish() }; getRequest.onerror = function getRequest_onerror() { fail++; if (ok + fail == total) finish() } })); transaction.onerror = onerror }; openRequest.onerror = onerror }) }; var SYSCALLS = { DEFAULT_POLLMASK: 5, mappings: {}, umask: 511, calculateAt: (function (dirfd, path) { if (path[0] !== "/") { var dir; if (dirfd === -100) { dir = FS.cwd() } else { var dirstream = FS.getStream(dirfd); if (!dirstream) throw new FS.ErrnoError(ERRNO_CODES.EBADF); dir = dirstream.path } path = PATH.join2(dir, path) } return path }), doStat: (function (func, path, buf) { try { var stat = func(path) } catch (e) { if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { return -ERRNO_CODES.ENOTDIR } throw e } HEAP32[buf >> 2] = stat.dev; HEAP32[buf + 4 >> 2] = 0; HEAP32[buf + 8 >> 2] = stat.ino; HEAP32[buf + 12 >> 2] = stat.mode; HEAP32[buf + 16 >> 2] = stat.nlink; HEAP32[buf + 20 >> 2] = stat.uid; HEAP32[buf + 24 >> 2] = stat.gid; HEAP32[buf + 28 >> 2] = stat.rdev; HEAP32[buf + 32 >> 2] = 0; HEAP32[buf + 36 >> 2] = stat.size; HEAP32[buf + 40 >> 2] = 4096; HEAP32[buf + 44 >> 2] = stat.blocks; HEAP32[buf + 48 >> 2] = stat.atime.getTime() / 1e3 | 0; HEAP32[buf + 52 >> 2] = 0; HEAP32[buf + 56 >> 2] = stat.mtime.getTime() / 1e3 | 0; HEAP32[buf + 60 >> 2] = 0; HEAP32[buf + 64 >> 2] = stat.ctime.getTime() / 1e3 | 0; HEAP32[buf + 68 >> 2] = 0; HEAP32[buf + 72 >> 2] = stat.ino; return 0 }), doMsync: (function (addr, stream, len, flags) { var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); FS.msync(stream, buffer, 0, len, flags) }), doMkdir: (function (path, mode) { path = PATH.normalize(path); if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); FS.mkdir(path, mode, 0); return 0 }), doMknod: (function (path, mode, dev) { switch (mode & 61440) { case 32768: case 8192: case 24576: case 4096: case 49152: break; default: return -ERRNO_CODES.EINVAL }FS.mknod(path, mode, dev); return 0 }), doReadlink: (function (path, buf, bufsize) { if (bufsize <= 0) return -ERRNO_CODES.EINVAL; var ret = FS.readlink(path); ret = ret.slice(0, Math.max(0, bufsize)); writeStringToMemory(ret, buf, true); return ret.length }), doAccess: (function (path, amode) { if (amode & ~7) { return -ERRNO_CODES.EINVAL } var node; var lookup = FS.lookupPath(path, { follow: true }); node = lookup.node; var perms = ""; if (amode & 4) perms += "r"; if (amode & 2) perms += "w"; if (amode & 1) perms += "x"; if (perms && FS.nodePermissions(node, perms)) { return -ERRNO_CODES.EACCES } return 0 }), doDup: (function (path, flags, suggestFD) { var suggest = FS.getStream(suggestFD); if (suggest) FS.close(suggest); return FS.open(path, flags, 0, suggestFD, suggestFD).fd }), doReadv: (function (stream, iov, iovcnt, offset) { var ret = 0; for (var i = 0; i < iovcnt; i++) { var ptr = HEAP32[iov + i * 8 >> 2]; var len = HEAP32[iov + (i * 8 + 4) >> 2]; var curr = FS.read(stream, HEAP8, ptr, len, offset); if (curr < 0) return -1; ret += curr; if (curr < len) break } return ret }), doWritev: (function (stream, iov, iovcnt, offset) { var ret = 0; for (var i = 0; i < iovcnt; i++) { var ptr = HEAP32[iov + i * 8 >> 2]; var len = HEAP32[iov + (i * 8 + 4) >> 2]; var curr = FS.write(stream, HEAP8, ptr, len, offset); if (curr < 0) return -1; ret += curr } return ret }), varargs: 0, get: (function (varargs) { SYSCALLS.varargs += 4; var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; return ret }), getStr: (function () { var ret = Pointer_stringify(SYSCALLS.get()); return ret }), getStreamFromFD: (function () { var stream = FS.getStream(SYSCALLS.get()); if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF); return stream }), getSocketFromFD: (function () { var socket = SOCKFS.getSocket(SYSCALLS.get()); if (!socket) throw new FS.ErrnoError(ERRNO_CODES.EBADF); return socket }), getSocketAddress: (function (allowNull) { var addrp = SYSCALLS.get(), addrlen = SYSCALLS.get(); if (allowNull && addrp === 0) return null; var info = __read_sockaddr(addrp, addrlen); if (info.errno) throw new FS.ErrnoError(info.errno); info.addr = DNS.lookup_addr(info.addr) || info.addr; return info }), get64: (function () { var low = SYSCALLS.get(), high = SYSCALLS.get(); if (low >= 0) assert(high === 0); else assert(high === -1); return low }), getZero: (function () { assert(SYSCALLS.get() === 0) }) }; function ___syscall63(which, varargs) { SYSCALLS.varargs = varargs; try { var old = SYSCALLS.getStreamFromFD(), suggestFD = SYSCALLS.get(); if (old.fd === suggestFD) return suggestFD; return SYSCALLS.doDup(old.path, old.flags, suggestFD) } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } Module["_memset"] = _memset; Module["_bitshift64Shl"] = _bitshift64Shl; function _abort() { Module["abort"]() } function ___lock() { } function ___unlock() { } function _clock() { if (_clock.start === undefined) _clock.start = Date.now(); return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 } function _system(command) { ___setErrNo(ERRNO_CODES.EAGAIN); return -1 } function __isLeapYear(year) { return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) } function __arraySum(array, index) { var sum = 0; for (var i = 0; i <= index; sum += array[i++]); return sum } var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; function __addDays(date, days) { var newDate = new Date(date.getTime()); while (days > 0) { var leap = __isLeapYear(newDate.getFullYear()); var currentMonth = newDate.getMonth(); var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; if (days > daysInCurrentMonth - newDate.getDate()) { days -= daysInCurrentMonth - newDate.getDate() + 1; newDate.setDate(1); if (currentMonth < 11) { newDate.setMonth(currentMonth + 1) } else { newDate.setMonth(0); newDate.setFullYear(newDate.getFullYear() + 1) } } else { newDate.setDate(newDate.getDate() + days); return newDate } } return newDate } function _strftime(s, maxsize, format, tm) { var tm_zone = HEAP32[tm + 40 >> 2]; var date = { tm_sec: HEAP32[tm >> 2], tm_min: HEAP32[tm + 4 >> 2], tm_hour: HEAP32[tm + 8 >> 2], tm_mday: HEAP32[tm + 12 >> 2], tm_mon: HEAP32[tm + 16 >> 2], tm_year: HEAP32[tm + 20 >> 2], tm_wday: HEAP32[tm + 24 >> 2], tm_yday: HEAP32[tm + 28 >> 2], tm_isdst: HEAP32[tm + 32 >> 2], tm_gmtoff: HEAP32[tm + 36 >> 2], tm_zone: tm_zone ? Pointer_stringify(tm_zone) : "" }; var pattern = Pointer_stringify(format); var EXPANSION_RULES_1 = { "%c": "%a %b %d %H:%M:%S %Y", "%D": "%m/%d/%y", "%F": "%Y-%m-%d", "%h": "%b", "%r": "%I:%M:%S %p", "%R": "%H:%M", "%T": "%H:%M:%S", "%x": "%m/%d/%y", "%X": "%H:%M:%S" }; for (var rule in EXPANSION_RULES_1) { pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) } var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; function leadingSomething(value, digits, character) { var str = typeof value === "number" ? value.toString() : value || ""; while (str.length < digits) { str = character[0] + str } return str } function leadingNulls(value, digits) { return leadingSomething(value, digits, "0") } function compareByDay(date1, date2) { function sgn(value) { return value < 0 ? -1 : value > 0 ? 1 : 0 } var compare; if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { compare = sgn(date1.getDate() - date2.getDate()) } } return compare } function getFirstWeekStartDate(janFourth) { switch (janFourth.getDay()) { case 0: return new Date(janFourth.getFullYear() - 1, 11, 29); case 1: return janFourth; case 2: return new Date(janFourth.getFullYear(), 0, 3); case 3: return new Date(janFourth.getFullYear(), 0, 2); case 4: return new Date(janFourth.getFullYear(), 0, 1); case 5: return new Date(janFourth.getFullYear() - 1, 11, 31); case 6: return new Date(janFourth.getFullYear() - 1, 11, 30) } } function getWeekBasedYear(date) { var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { return thisDate.getFullYear() + 1 } else { return thisDate.getFullYear() } } else { return thisDate.getFullYear() - 1 } } var EXPANSION_RULES_2 = { "%a": (function (date) { return WEEKDAYS[date.tm_wday].substring(0, 3) }), "%A": (function (date) { return WEEKDAYS[date.tm_wday] }), "%b": (function (date) { return MONTHS[date.tm_mon].substring(0, 3) }), "%B": (function (date) { return MONTHS[date.tm_mon] }), "%C": (function (date) { var year = date.tm_year + 1900; return leadingNulls(year / 100 | 0, 2) }), "%d": (function (date) { return leadingNulls(date.tm_mday, 2) }), "%e": (function (date) { return leadingSomething(date.tm_mday, 2, " ") }), "%g": (function (date) { return getWeekBasedYear(date).toString().substring(2) }), "%G": (function (date) { return getWeekBasedYear(date) }), "%H": (function (date) { return leadingNulls(date.tm_hour, 2) }), "%I": (function (date) { var twelveHour = date.tm_hour; if (twelveHour == 0) twelveHour = 12; else if (twelveHour > 12) twelveHour -= 12; return leadingNulls(twelveHour, 2) }), "%j": (function (date) { return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) }), "%m": (function (date) { return leadingNulls(date.tm_mon + 1, 2) }), "%M": (function (date) { return leadingNulls(date.tm_min, 2) }), "%n": (function () { return "\n" }), "%p": (function (date) { if (date.tm_hour >= 0 && date.tm_hour < 12) { return "AM" } else { return "PM" } }), "%S": (function (date) { return leadingNulls(date.tm_sec, 2) }), "%t": (function () { return "\t" }), "%u": (function (date) { var day = new Date(date.tm_year + 1900, date.tm_mon + 1, date.tm_mday, 0, 0, 0, 0); return day.getDay() || 7 }), "%U": (function (date) { var janFirst = new Date(date.tm_year + 1900, 0, 1); var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); if (compareByDay(firstSunday, endDate) < 0) { var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); return leadingNulls(Math.ceil(days / 7), 2) } return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00" }), "%V": (function (date) { var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); if (compareByDay(endDate, firstWeekStartThisYear) < 0) { return "53" } if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { return "01" } var daysDifference; if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() } else { daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() } return leadingNulls(Math.ceil(daysDifference / 7), 2) }), "%w": (function (date) { var day = new Date(date.tm_year + 1900, date.tm_mon + 1, date.tm_mday, 0, 0, 0, 0); return day.getDay() }), "%W": (function (date) { var janFirst = new Date(date.tm_year, 0, 1); var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); if (compareByDay(firstMonday, endDate) < 0) { var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); return leadingNulls(Math.ceil(days / 7), 2) } return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00" }), "%y": (function (date) { return (date.tm_year + 1900).toString().substring(2) }), "%Y": (function (date) { return date.tm_year + 1900 }), "%z": (function (date) { var off = date.tm_gmtoff; var ahead = off >= 0; off = Math.abs(off) / 60; off = off / 60 * 100 + off % 60; return (ahead ? "+" : "-") + String("0000" + off).slice(-4) }), "%Z": (function (date) { return date.tm_zone }), "%%": (function () { return "%" }) }; for (var rule in EXPANSION_RULES_2) { if (pattern.indexOf(rule) >= 0) { pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) } } var bytes = intArrayFromString(pattern, false); if (bytes.length > maxsize) { return 0 } writeArrayToMemory(bytes, s); return bytes.length - 1 } function _realloc() { throw "bad" } Module["_realloc"] = _realloc; Module["_saveSetjmp"] = _saveSetjmp; var _tzname = STATICTOP; STATICTOP += 16; var _daylight = STATICTOP; STATICTOP += 16; var _timezone = STATICTOP; STATICTOP += 16; function _tzset() { if (_tzset.called) return; _tzset.called = true; HEAP32[_timezone >> 2] = -(new Date).getTimezoneOffset() * 60; var winter = new Date(2e3, 0, 1); var summer = new Date(2e3, 6, 1); HEAP32[_daylight >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); function extractZone(date) { var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); return match ? match[1] : "GMT" } var winterName = extractZone(winter); var summerName = extractZone(summer); var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { HEAP32[_tzname >> 2] = winterNamePtr; HEAP32[_tzname + 4 >> 2] = summerNamePtr } else { HEAP32[_tzname >> 2] = summerNamePtr; HEAP32[_tzname + 4 >> 2] = winterNamePtr } } function _mktime(tmPtr) { _tzset(); var date = new Date(HEAP32[tmPtr + 20 >> 2] + 1900, HEAP32[tmPtr + 16 >> 2], HEAP32[tmPtr + 12 >> 2], HEAP32[tmPtr + 8 >> 2], HEAP32[tmPtr + 4 >> 2], HEAP32[tmPtr >> 2], 0); var dst = HEAP32[tmPtr + 32 >> 2]; var guessedOffset = date.getTimezoneOffset(); var start = new Date(date.getFullYear(), 0, 1); var summerOffset = (new Date(2e3, 6, 1)).getTimezoneOffset(); var winterOffset = start.getTimezoneOffset(); var dstOffset = Math.min(winterOffset, summerOffset); if (dst < 0) { HEAP32[tmPtr + 32 >> 2] = Number(dstOffset == guessedOffset) } else if (dst > 0 != (dstOffset == guessedOffset)) { var nonDstOffset = Math.max(winterOffset, summerOffset); var trueOffset = dst > 0 ? dstOffset : nonDstOffset; date.setTime(date.getTime() + (trueOffset - guessedOffset) * 6e4) } HEAP32[tmPtr + 24 >> 2] = date.getDay(); var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; HEAP32[tmPtr + 28 >> 2] = yday; return date.getTime() / 1e3 | 0 } function __exit(status) { Module["exit"](status) } function _exit(status) { __exit(status) } function ___syscall330(which, varargs) { SYSCALLS.varargs = varargs; try { var old = SYSCALLS.getStreamFromFD(), suggestFD = SYSCALLS.get(), flags = SYSCALLS.get(); assert(!flags); if (old.fd === suggestFD) return -ERRNO_CODES.EINVAL; return SYSCALLS.doDup(old.path, old.flags, suggestFD) } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall54(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get(); switch (op) { case 21505: { if (!stream.tty) return -ERRNO_CODES.ENOTTY; return 0 }; case 21506: { if (!stream.tty) return -ERRNO_CODES.ENOTTY; return 0 }; case 21519: { if (!stream.tty) return -ERRNO_CODES.ENOTTY; var argp = SYSCALLS.get(); HEAP32[argp >> 2] = 0; return 0 }; case 21520: { if (!stream.tty) return -ERRNO_CODES.ENOTTY; return -ERRNO_CODES.EINVAL }; case 21531: { var argp = SYSCALLS.get(); return FS.ioctl(stream, op, argp) }; default: abort("bad ioctl syscall " + op) } } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } var ___tm_current = STATICTOP; STATICTOP += 48; var ___tm_timezone = allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC); function _localtime_r(time, tmPtr) { _tzset(); var date = new Date(HEAP32[time >> 2] * 1e3); HEAP32[tmPtr >> 2] = date.getSeconds(); HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); HEAP32[tmPtr + 8 >> 2] = date.getHours(); HEAP32[tmPtr + 12 >> 2] = date.getDate(); HEAP32[tmPtr + 16 >> 2] = date.getMonth(); HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; HEAP32[tmPtr + 24 >> 2] = date.getDay(); var start = new Date(date.getFullYear(), 0, 1); var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; HEAP32[tmPtr + 28 >> 2] = yday; HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); var summerOffset = (new Date(2e3, 6, 1)).getTimezoneOffset(); var winterOffset = start.getTimezoneOffset(); var dst = date.getTimezoneOffset() == Math.min(winterOffset, summerOffset) | 0; HEAP32[tmPtr + 32 >> 2] = dst; var zonePtr = HEAP32[_tzname + (dst ? Runtime.QUANTUM_SIZE : 0) >> 2]; HEAP32[tmPtr + 40 >> 2] = zonePtr; return tmPtr } function _localtime(time) { return _localtime_r(time, ___tm_current) } Module["_bitshift64Lshr"] = _bitshift64Lshr; function ___syscall38(which, varargs) { SYSCALLS.varargs = varargs; try { var old_path = SYSCALLS.getStr(), new_path = SYSCALLS.getStr(); FS.rename(old_path, new_path); return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } Module["_testSetjmp"] = _testSetjmp; function _longjmp(env, value) { asm["setThrew"](env, value || 1); throw "longjmp" } function ___syscall33(which, varargs) { SYSCALLS.varargs = varargs; try { var path = SYSCALLS.getStr(), amode = SYSCALLS.get(); return SYSCALLS.doAccess(path, amode) } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function _pthread_cleanup_push(routine, arg) { __ATEXIT__.push((function () { Runtime.dynCall("vi", routine, [arg]) })); _pthread_cleanup_push.level = __ATEXIT__.length } function _gmtime_r(time, tmPtr) { var date = new Date(HEAP32[time >> 2] * 1e3); HEAP32[tmPtr >> 2] = date.getUTCSeconds(); HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); HEAP32[tmPtr + 36 >> 2] = 0; HEAP32[tmPtr + 32 >> 2] = 0; var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; HEAP32[tmPtr + 28 >> 2] = yday; HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; return tmPtr } function _gmtime(time) { return _gmtime_r(time, ___tm_current) } var _environ = STATICTOP; STATICTOP += 16; function ___buildEnvironment(env) { var MAX_ENV_VALUES = 64; var TOTAL_ENV_SIZE = 1024; var poolPtr; var envPtr; if (!___buildEnvironment.called) { ___buildEnvironment.called = true; ENV["USER"] = ENV["LOGNAME"] = "web_user"; ENV["PATH"] = "/"; ENV["PWD"] = "/"; ENV["HOME"] = "/home/web_user"; ENV["LANG"] = "C"; ENV["_"] = Module["thisProgram"]; poolPtr = allocate(TOTAL_ENV_SIZE, "i8", ALLOC_STATIC); envPtr = allocate(MAX_ENV_VALUES * 4, "i8*", ALLOC_STATIC); HEAP32[envPtr >> 2] = poolPtr; HEAP32[_environ >> 2] = envPtr } else { envPtr = HEAP32[_environ >> 2]; poolPtr = HEAP32[envPtr >> 2] } var strings = []; var totalSize = 0; for (var key in env) { if (typeof env[key] === "string") { var line = key + "=" + env[key]; strings.push(line); totalSize += line.length } } if (totalSize > TOTAL_ENV_SIZE) { throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") } var ptrSize = 4; for (var i = 0; i < strings.length; i++) { var line = strings[i]; writeAsciiToMemory(line, poolPtr); HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; poolPtr += line.length + 1 } HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 } var ENV = {}; function _getenv(name) { if (name === 0) return 0; name = Pointer_stringify(name); if (!ENV.hasOwnProperty(name)) return 0; if (_getenv.ret) _free(_getenv.ret); _getenv.ret = allocate(intArrayFromString(ENV[name]), "i8", ALLOC_NORMAL); return _getenv.ret } function _pthread_cleanup_pop() { assert(_pthread_cleanup_push.level == __ATEXIT__.length, "cannot pop if something else added meanwhile!"); __ATEXIT__.pop(); _pthread_cleanup_push.level = __ATEXIT__.length } function ___syscall5(which, varargs) { SYSCALLS.varargs = varargs; try { var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = SYSCALLS.get(); var stream = FS.open(pathname, flags, mode); return stream.fd } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function _emscripten_memcpy_big(dest, src, num) { HEAPU8.set(HEAPU8.subarray(src, src + num), dest); return dest } Module["_memcpy"] = _memcpy; function ___syscall6(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(); FS.close(stream); return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } var cttz_i8 = allocate([8, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 7, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0], "i8", ALLOC_STATIC); Module["_llvm_cttz_i32"] = _llvm_cttz_i32; Module["___udivmoddi4"] = ___udivmoddi4; Module["___udivdi3"] = ___udivdi3; function ___syscall10(which, varargs) { SYSCALLS.varargs = varargs; try { var path = SYSCALLS.getStr(); FS.unlink(path); return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } Module["___muldsi3"] = ___muldsi3; Module["___muldi3"] = ___muldi3; var _llvm_pow_f64 = Math_pow; function _sbrk(bytes) { var self = _sbrk; if (!self.called) { DYNAMICTOP = alignMemoryPage(DYNAMICTOP); self.called = true; assert(Runtime.dynamicAlloc); self.alloc = Runtime.dynamicAlloc; Runtime.dynamicAlloc = (function () { abort("cannot dynamically allocate, sbrk now has control") }) } var ret = DYNAMICTOP; if (bytes != 0) { var success = self.alloc(bytes); if (!success) return -1 >>> 0 } return ret } function _difftime(time1, time0) { return time1 - time0 } Module["___uremdi3"] = ___uremdi3; function ___syscall40(which, varargs) { SYSCALLS.varargs = varargs; try { var path = SYSCALLS.getStr(); FS.rmdir(path); return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall265(which, varargs) { SYSCALLS.varargs = varargs; try { return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function _time(ptr) { var ret = Date.now() / 1e3 | 0; if (ptr) { HEAP32[ptr >> 2] = ret } return ret } Module["_pthread_self"] = _pthread_self; function ___syscall140(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get(); var offset = offset_low; assert(offset_high === 0); FS.llseek(stream, offset, whence); HEAP32[result >> 2] = stream.position; if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall146(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get(); return SYSCALLS.doWritev(stream, iov, iovcnt) } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall221(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(), cmd = SYSCALLS.get(); switch (cmd) { case 0: { var arg = SYSCALLS.get(); if (arg < 0) { return -ERRNO_CODES.EINVAL } var newStream; newStream = FS.open(stream.path, stream.flags, 0, arg); return newStream.fd }; case 1: case 2: return 0; case 3: return stream.flags; case 4: { var arg = SYSCALLS.get(); stream.flags |= arg; return 0 }; case 12: case 12: { var arg = SYSCALLS.get(); var offset = 0; HEAP16[arg + offset >> 1] = 2; return 0 }; case 13: case 14: case 13: case 14: return 0; case 16: case 8: return -ERRNO_CODES.EINVAL; case 9: ___setErrNo(ERRNO_CODES.EINVAL); return -1; default: { return -ERRNO_CODES.EINVAL } } } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall145(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get(); return SYSCALLS.doReadv(stream, iov, iovcnt) } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } FS.staticInit(); __ATINIT__.unshift((function () { if (!Module["noFSInit"] && !FS.init.initialized) FS.init() })); __ATMAIN__.push((function () { FS.ignorePermissions = false })); __ATEXIT__.push((function () { FS.quit() })); Module["FS_createFolder"] = FS.createFolder; Module["FS_createPath"] = FS.createPath; Module["FS_createDataFile"] = FS.createDataFile; Module["FS_createPreloadedFile"] = FS.createPreloadedFile; Module["FS_createLazyFile"] = FS.createLazyFile; Module["FS_createLink"] = FS.createLink; Module["FS_createDevice"] = FS.createDevice; Module["FS_unlink"] = FS.unlink; __ATINIT__.unshift((function () { TTY.init() })); __ATEXIT__.push((function () { TTY.shutdown() })); if (ENVIRONMENT_IS_NODE) { var fs = require("fs"); var NODEJS_PATH = require("path"); NODEFS.staticInit() } ___buildEnvironment(ENV); STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP); staticSealed = true; STACK_MAX = STACK_BASE + TOTAL_STACK; DYNAMIC_BASE = DYNAMICTOP = Runtime.alignMemory(STACK_MAX); function invoke_iiii(index, a1, a2, a3) { try { return Module["dynCall_iiii"](index, a1, a2, a3) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; asm["setThrew"](1, 0) } } function jsCall_iiii(index, a1, a2, a3) { return Runtime.functionPointers[index](a1, a2, a3) } function invoke_vi(index, a1) { try { Module["dynCall_vi"](index, a1) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; asm["setThrew"](1, 0) } } function jsCall_vi(index, a1) { Runtime.functionPointers[index](a1) } function invoke_vii(index, a1, a2) { try { Module["dynCall_vii"](index, a1, a2) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; asm["setThrew"](1, 0) } } function jsCall_vii(index, a1, a2) { Runtime.functionPointers[index](a1, a2) } function invoke_ii(index, a1) { try { return Module["dynCall_ii"](index, a1) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; asm["setThrew"](1, 0) } } function jsCall_ii(index, a1) { return Runtime.functionPointers[index](a1) } function invoke_iiiii(index, a1, a2, a3, a4) { try { return Module["dynCall_iiiii"](index, a1, a2, a3, a4) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; asm["setThrew"](1, 0) } } function jsCall_iiiii(index, a1, a2, a3, a4) { return Runtime.functionPointers[index](a1, a2, a3, a4) } function invoke_iii(index, a1, a2) { try { return Module["dynCall_iii"](index, a1, a2) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; asm["setThrew"](1, 0) } } function jsCall_iii(index, a1, a2) { return Runtime.functionPointers[index](a1, a2) } Module.asmGlobalArg = { "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array, "NaN": NaN, "Infinity": Infinity }; Module.asmLibraryArg = { "abort": abort, "assert": assert, "invoke_iiii": invoke_iiii, "jsCall_iiii": jsCall_iiii, "invoke_vi": invoke_vi, "jsCall_vi": jsCall_vi, "invoke_vii": invoke_vii, "jsCall_vii": jsCall_vii, "invoke_ii": invoke_ii, "jsCall_ii": jsCall_ii, "invoke_iiiii": invoke_iiiii, "jsCall_iiiii": jsCall_iiiii, "invoke_iii": invoke_iii, "jsCall_iii": jsCall_iii, "_pthread_cleanup_pop": _pthread_cleanup_pop, "___syscall221": ___syscall221, "_llvm_pow_f64": _llvm_pow_f64, "___syscall265": ___syscall265, "___syscall63": ___syscall63, "_abort": _abort, "___syscall40": ___syscall40, "_pthread_cleanup_push": _pthread_cleanup_push, "_difftime": _difftime, "_system": _system, "___buildEnvironment": ___buildEnvironment, "_longjmp": _longjmp, "__addDays": __addDays, "_localtime_r": _localtime_r, "_tzset": _tzset, "___setErrNo": ___setErrNo, "_sbrk": _sbrk, "___syscall330": ___syscall330, "_emscripten_memcpy_big": _emscripten_memcpy_big, "__exit": __exit, "_mktime": _mktime, "_strftime": _strftime, "_clock": _clock, "__arraySum": __arraySum, "_gmtime": _gmtime, "_getenv": _getenv, "___syscall33": ___syscall33, "___syscall54": ___syscall54, "___unlock": ___unlock, "__isLeapYear": __isLeapYear, "___syscall38": ___syscall38, "___syscall10": ___syscall10, "_gmtime_r": _gmtime_r, "___lock": ___lock, "___syscall6": ___syscall6, "___syscall5": ___syscall5, "_time": _time, "___syscall140": ___syscall140, "_localtime": _localtime, "_exit": _exit, "___syscall145": ___syscall145, "___syscall146": ___syscall146, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "cttz_i8": cttz_i8 };// EMSCRIPTEN_START_ASM
var asm = (function (global, env, buffer) {
"use asm"; var a = new global.Int8Array(buffer); var b = new global.Int16Array(buffer); var c = new global.Int32Array(buffer); var d = new global.Uint8Array(buffer); var e = new global.Uint16Array(buffer); var f = new global.Uint32Array(buffer); var g = new global.Float32Array(buffer); var h = new global.Float64Array(buffer); var i = env.STACKTOP | 0; var j = env.STACK_MAX | 0; var k = env.tempDoublePtr | 0; var l = env.ABORT | 0; var m = env.cttz_i8 | 0; var n = 0; var o = 0; var p = 0; var q = 0; var r = global.NaN, s = global.Infinity; var t = 0, u = 0, v = 0, w = 0, x = 0.0, y = 0, z = 0, A = 0, B = 0.0; var C = 0; var D = global.Math.floor; var E = global.Math.abs; var F = global.Math.sqrt; var G = global.Math.pow; var H = global.Math.cos; var I = global.Math.sin; var J = global.Math.tan; var K = global.Math.acos; var L = global.Math.asin; var M = global.Math.atan; var N = global.Math.atan2; var O = global.Math.exp; var P = global.Math.log; var Q = global.Math.ceil; var R = global.Math.imul; var S = global.Math.min; var T = global.Math.max; var U = global.Math.clz32; var V = env.abort; var W = env.assert; var X = env.invoke_iiii; var Y = env.jsCall_iiii; var Z = env.invoke_vi; var _ = env.jsCall_vi; var $ = env.invoke_vii; var aa = env.jsCall_vii; var ba = env.invoke_ii; var ca = env.jsCall_ii; var da = env.invoke_iiiii; var ea = env.jsCall_iiiii; var fa = env.invoke_iii; var ga = env.jsCall_iii; var ha = env._pthread_cleanup_pop; var ia = env.___syscall221; var ja = env._llvm_pow_f64; var ka = env.___syscall265; var la = env.___syscall63; var ma = env._abort; var na = env.___syscall40; var oa = env._pthread_cleanup_push; var pa = env._difftime; var qa = env._system; var ra = env.___buildEnvironment; var sa = env._longjmp; var ta = env.__addDays; var ua = env._localtime_r; var va = env._tzset; var wa = env.___setErrNo; var xa = env._sbrk; var ya = env.___syscall330; var za = env._emscripten_memcpy_big; var Aa = env.__exit; var Ba = env._mktime; var Ca = env._strftime; var Da = env._clock; var Ea = env.__arraySum; var Fa = env._gmtime; var Ga = env._getenv; var Ha = env.___syscall33; var Ia = env.___syscall54; var Ja = env.___unlock; var Ka = env.__isLeapYear; var La = env.___syscall38; var Ma = env.___syscall10; var Na = env._gmtime_r; var Oa = env.___lock; var Pa = env.___syscall6; var Qa = env.___syscall5; var Ra = env._time; var Sa = env.___syscall140; var Ta = env._localtime; var Ua = env._exit; var Va = env.___syscall145; var Wa = env.___syscall146; var Xa = 0.0;
// EMSCRIPTEN_START_FUNCS
function Me(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0; K = i; i = i + 16 | 0; B = K; J = b + 60 | 0; c[(c[J >> 2] | 0) + 4 >> 2] = 0; I = b + 56 | 0; A = b + 4 | 0; a: while (1) { z = c[b >> 2] | 0; b: while (1) { switch (z | 0) { case 91: { E = 35; break a } case 61: { E = 39; break a } case 60: { E = 47; break a } case 62: { E = 55; break a } case 126: { E = 63; break a } case 58: { E = 71; break a } case 39: case 34: { E = 79; break a } case 46: { E = 203; break a } case 57: case 56: case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 48: { m = z; break a } case -1: { f = 286; E = 348; break a } case 13: case 10: { E = 4; break b } case 45: break b; case 11: case 9: case 12: case 32: break; default: { E = 325; break a } }f = c[I >> 2] | 0; z = c[f >> 2] | 0; c[f >> 2] = z + -1; if (!z) f = tg(f) | 0; else { z = f + 4 | 0; f = c[z >> 2] | 0; c[z >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; z = f } if ((E | 0) == 4) { E = 0; f = c[I >> 2] | 0; l = c[f >> 2] | 0; c[f >> 2] = l + -1; if (!l) f = tg(f) | 0; else { l = f + 4 | 0; f = c[l >> 2] | 0; c[l >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; switch (f | 0) { case 13: case 10: { if ((f | 0) != (z | 0)) { f = c[I >> 2] | 0; z = c[f >> 2] | 0; c[f >> 2] = z + -1; if (!z) f = tg(f) | 0; else { z = f + 4 | 0; f = c[z >> 2] | 0; c[z >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } break } default: { } }z = c[A >> 2] | 0; c[A >> 2] = z + 1; if ((z | 0) > 2147483643) { E = 14; break } else continue } f = c[I >> 2] | 0; z = c[f >> 2] | 0; c[f >> 2] = z + -1; if (!z) f = tg(f) | 0; else { z = f + 4 | 0; f = c[z >> 2] | 0; c[z >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if ((f | 0) != 45) { f = 45; E = 348; break } f = c[I >> 2] | 0; z = c[f >> 2] | 0; c[f >> 2] = z + -1; if (!z) f = tg(f) | 0; else { z = f + 4 | 0; f = c[z >> 2] | 0; c[z >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; do if ((f | 0) == 91) { f = Ne(b) | 0; c[(c[J >> 2] | 0) + 4 >> 2] = 0; if ((f | 0) > -1) { Oe(b, 0, f); c[(c[J >> 2] | 0) + 4 >> 2] = 0; continue a } else { f = c[b >> 2] | 0; break } } while (0); while (1) { switch (f | 0) { case -1: case 13: case 10: continue a; default: { } }f = c[I >> 2] | 0; z = c[f >> 2] | 0; c[f >> 2] = z + -1; if (!z) f = tg(f) | 0; else { z = f + 4 | 0; f = c[z >> 2] | 0; c[z >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } } switch (E | 0) { case 14: { Ie(b, 3539, 0); break } case 35: { f = Ne(b) | 0; if ((f | 0) > -1) { Oe(b, e, f); b = 289; i = K; return b | 0 } if ((f | 0) == -1) { b = 91; i = K; return b | 0 } else Ie(b, 3564, 289); break } case 39: { f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if ((f | 0) != 61) { b = 61; i = K; return b | 0 } f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; b = 281; i = K; return b | 0 } case 47: { f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if ((f | 0) != 61) { b = 60; i = K; return b | 0 } f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; b = 283; i = K; return b | 0 } case 55: { f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if ((f | 0) != 61) { b = 62; i = K; return b | 0 } f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; b = 282; i = K; return b | 0 } case 63: { f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if ((f | 0) != 61) { b = 126; i = K; return b | 0 } f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; b = 284; i = K; return b | 0 } case 71: { f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if ((f | 0) != 58) { b = 58; i = K; return b | 0 } f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; b = 285; i = K; return b | 0 } case 79: { h = c[J >> 2] | 0; l = h + 4 | 0; f = c[l >> 2] | 0; j = h + 8 | 0; k = c[j >> 2] | 0; do if ((f + 1 | 0) >>> 0 > k >>> 0) { if (k >>> 0 > 2147483645) Ie(b, 3498, 0); f = k << 1; g = c[b + 52 >> 2] | 0; if ((f | 0) == -2) Te(g); else { q = Ue(g, c[h >> 2] | 0, k, f) | 0; c[h >> 2] = q; c[j >> 2] = f; p = c[l >> 2] | 0; break } } else { p = f; q = c[h >> 2] | 0 } while (0); r = z & 255; c[l >> 2] = p + 1; a[q + p >> 0] = r; f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; c: do if ((f | 0) != (z | 0)) { n = b + 52 | 0; o = B + 4 | 0; p = B + 8 | 0; d: while (1) { e: do switch (f | 0) { case -1: { E = 92; break d } case 13: case 10: { E = 93; break d } case 92: { f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; do switch (f | 0) { case -1: { f = -1; break e } case 97: { f = 7; E = 164; break } case 98: { f = 8; E = 164; break } case 102: { f = 12; E = 164; break } case 110: { f = 10; E = 164; break } case 114: { f = 13; E = 164; break } case 116: { f = 9; E = 164; break } case 118: { f = 11; E = 164; break } case 120: { c[B >> 2] = 120; f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; c[o >> 2] = f; if (!(a[2581 + (f + 1) >> 0] & 16)) { f = 2; E = 108; break d } g = Ze(f) | 0; f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; c[p >> 2] = f; if (!(a[2581 + (f + 1) >> 0] & 16)) { f = 3; E = 108; break d } f = (Ze(f) | 0) + (g << 4) | 0; E = 164; break } case 13: case 10: { g = c[I >> 2] | 0; H = c[g >> 2] | 0; c[g >> 2] = H + -1; if (!H) g = tg(g) | 0; else { H = g + 4 | 0; g = c[H >> 2] | 0; c[H >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g; switch (g | 0) { case 13: case 10: { if ((g | 0) != (f | 0)) { f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } break } default: { } }H = c[A >> 2] | 0; c[A >> 2] = H + 1; if ((H | 0) > 2147483643) { E = 124; break d } else f = 10; break } case 39: case 34: case 92: { E = 164; break } case 122: { f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if (!(a[2581 + (f + 1) >> 0] & 8)) break e; while (1) { switch (f | 0) { case 13: case 10: { g = c[I >> 2] | 0; H = c[g >> 2] | 0; c[g >> 2] = H + -1; if (!H) g = tg(g) | 0; else { H = g + 4 | 0; g = c[H >> 2] | 0; c[H >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g; switch (g | 0) { case 13: case 10: { if ((g | 0) != (f | 0)) { f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } break } default: f = g }H = c[A >> 2] | 0; c[A >> 2] = H + 1; if ((H | 0) > 2147483643) { E = 141; break d } break } default: { f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } }if (!(a[2581 + (f + 1) >> 0] & 8)) break e } } default: { if (!(a[2581 + (f + 1) >> 0] & 2)) { E = 148; break d } c[B >> 2] = f; f = f + -48 | 0; g = c[I >> 2] | 0; H = c[g >> 2] | 0; c[g >> 2] = H + -1; if (!H) g = tg(g) | 0; else { H = g + 4 | 0; g = c[H >> 2] | 0; c[H >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g; if (a[2581 + (g + 1) >> 0] & 2) { c[o >> 2] = g; f = (f * 10 | 0) + -48 + g | 0; g = c[I >> 2] | 0; H = c[g >> 2] | 0; c[g >> 2] = H + -1; if (!H) h = tg(g) | 0; else { H = g + 4 | 0; h = c[H >> 2] | 0; c[H >> 2] = h + 1; h = d[h >> 0] | 0 } c[b >> 2] = h; if (!(a[2581 + (h + 1) >> 0] & 2)) g = 2; else { c[p >> 2] = h; g = c[I >> 2] | 0; H = c[g >> 2] | 0; c[g >> 2] = H + -1; if (!H) g = tg(g) | 0; else { H = g + 4 | 0; g = c[H >> 2] | 0; c[H >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g; f = (f * 10 | 0) + -48 + h | 0; g = 3 } } else g = 1; if ((f | 0) > 255) { E = 154; break d } } } while (0); if ((E | 0) == 164) { E = 0; g = c[I >> 2] | 0; H = c[g >> 2] | 0; c[g >> 2] = H + -1; if (!H) g = tg(g) | 0; else { H = g + 4 | 0; g = c[H >> 2] | 0; c[H >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g } l = c[J >> 2] | 0; m = l + 4 | 0; h = c[m >> 2] | 0; j = l + 8 | 0; k = c[j >> 2] | 0; if ((h + 1 | 0) >>> 0 > k >>> 0) { if (k >>> 0 > 2147483645) { E = 171; break d } g = k << 1; h = c[n >> 2] | 0; if ((g | 0) == -2) { E = 173; break d } H = Ue(h, c[l >> 2] | 0, k, g) | 0; c[l >> 2] = H; c[j >> 2] = g; h = c[m >> 2] | 0; g = H } else g = c[l >> 2] | 0; c[m >> 2] = h + 1; a[g + h >> 0] = f; f = c[b >> 2] | 0; break } default: { l = c[J >> 2] | 0; m = l + 4 | 0; h = c[m >> 2] | 0; j = l + 8 | 0; k = c[j >> 2] | 0; if ((h + 1 | 0) >>> 0 > k >>> 0) { if (k >>> 0 > 2147483645) { E = 179; break d } g = k << 1; h = c[n >> 2] | 0; if ((g | 0) == -2) { E = 181; break d } H = Ue(h, c[l >> 2] | 0, k, g) | 0; c[l >> 2] = H; c[j >> 2] = g; h = c[m >> 2] | 0; g = H } else g = c[l >> 2] | 0; c[m >> 2] = h + 1; a[g + h >> 0] = f; f = c[I >> 2] | 0; H = c[f >> 2] | 0; c[f >> 2] = H + -1; if (!H) f = tg(f) | 0; else { H = f + 4 | 0; f = c[H >> 2] | 0; c[H >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } } while (0); if ((f | 0) == (z | 0)) break c } switch (E | 0) { case 92: { Ie(b, 3594, 286); break } case 93: { Ie(b, 3594, 289); break } case 108: { Pe(b, B, f, 3612); break } case 124: { Ie(b, 3539, 0); break } case 141: { Ie(b, 3539, 0); break } case 148: { Pe(b, b, 1, 3639); break } case 154: { Pe(b, B, g, 3663); break } case 171: { Ie(b, 3498, 0); break } case 173: { Te(h); break } case 179: { Ie(b, 3498, 0); break } case 181: { Te(h); break } } } while (0); h = c[J >> 2] | 0; j = h + 4 | 0; f = c[j >> 2] | 0; k = h + 8 | 0; l = c[k >> 2] | 0; do if ((f + 1 | 0) >>> 0 > l >>> 0) { if (l >>> 0 > 2147483645) Ie(b, 3498, 0); f = l << 1; g = c[b + 52 >> 2] | 0; if ((f | 0) == -2) Te(g); else { D = Ue(g, c[h >> 2] | 0, l, f) | 0; c[h >> 2] = D; c[k >> 2] = f; C = c[j >> 2] | 0; break } } else { C = f; D = c[h >> 2] | 0 } while (0); c[j >> 2] = C + 1; a[D + C >> 0] = r; f = c[I >> 2] | 0; I = c[f >> 2] | 0; c[f >> 2] = I + -1; if (!I) f = tg(f) | 0; else { I = f + 4 | 0; f = c[I >> 2] | 0; c[I >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; f = c[J >> 2] | 0; j = c[b + 52 >> 2] | 0; f = Mf(j, (c[f >> 2] | 0) + 1 | 0, (c[f + 4 >> 2] | 0) + -2 | 0) | 0; k = j + 8 | 0; g = c[k >> 2] | 0; c[k >> 2] = g + 16; c[g >> 2] = f; c[g + 8 >> 2] = d[f + 4 >> 0] | 64; g = Vf(j, c[(c[b + 48 >> 2] | 0) + 4 >> 2] | 0, (c[k >> 2] | 0) + -16 | 0) | 0; h = g + 8 | 0; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; c[h >> 2] = 1; if ((c[(c[j + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(j) } else f = c[g + 16 >> 2] | 0; c[k >> 2] = (c[k >> 2] | 0) + -16; c[e >> 2] = f; b = 289; i = K; return b | 0 } case 203: { h = c[J >> 2] | 0; j = h + 4 | 0; f = c[j >> 2] | 0; k = h + 8 | 0; l = c[k >> 2] | 0; do if ((f + 1 | 0) >>> 0 > l >>> 0) { if (l >>> 0 > 2147483645) Ie(b, 3498, 0); f = l << 1; g = c[b + 52 >> 2] | 0; if ((f | 0) == -2) Te(g); else { o = Ue(g, c[h >> 2] | 0, l, f) | 0; c[h >> 2] = o; c[k >> 2] = f; n = c[j >> 2] | 0; break } } else { n = f; o = c[h >> 2] | 0 } while (0); c[j >> 2] = n + 1; a[o + n >> 0] = 46; f = c[I >> 2] | 0; E = c[f >> 2] | 0; c[f >> 2] = E + -1; if (!E) m = tg(f) | 0; else { E = f + 4 | 0; m = c[E >> 2] | 0; c[E >> 2] = m + 1; m = d[m >> 0] | 0 } c[b >> 2] = m; if (m | 0 ? Kl(12624, m, 2) | 0 : 0) { h = c[J >> 2] | 0; j = h + 4 | 0; f = c[j >> 2] | 0; k = h + 8 | 0; l = c[k >> 2] | 0; do if ((f + 1 | 0) >>> 0 > l >>> 0) { if (l >>> 0 > 2147483645) Ie(b, 3498, 0); f = l << 1; g = c[b + 52 >> 2] | 0; if ((f | 0) == -2) Te(g); else { s = Ue(g, c[h >> 2] | 0, l, f) | 0; c[h >> 2] = s; c[k >> 2] = f; r = c[j >> 2] | 0; break } } else { r = f; s = c[h >> 2] | 0 } while (0); c[j >> 2] = r + 1; a[s + r >> 0] = m; f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) m = tg(f) | 0; else { e = f + 4 | 0; m = c[e >> 2] | 0; c[e >> 2] = m + 1; m = d[m >> 0] | 0 } c[b >> 2] = m; if (!m) { b = 279; i = K; return b | 0 } if (!(Kl(12624, m, 2) | 0)) { b = 279; i = K; return b | 0 } h = c[J >> 2] | 0; j = h + 4 | 0; f = c[j >> 2] | 0; k = h + 8 | 0; l = c[k >> 2] | 0; do if ((f + 1 | 0) >>> 0 > l >>> 0) { if (l >>> 0 > 2147483645) Ie(b, 3498, 0); f = l << 1; g = c[b + 52 >> 2] | 0; if ((f | 0) == -2) Te(g); else { u = Ue(g, c[h >> 2] | 0, l, f) | 0; c[h >> 2] = u; c[k >> 2] = f; t = c[j >> 2] | 0; break } } else { t = f; u = c[h >> 2] | 0 } while (0); c[j >> 2] = t + 1; a[u + t >> 0] = m; f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; b = 280; i = K; return b | 0 } if (!(a[2581 + (m + 1) >> 0] & 2)) { b = 46; i = K; return b | 0 } break } case 325: { if (!(a[2581 + (z + 1) >> 0] & 1)) { f = c[I >> 2] | 0; e = c[f >> 2] | 0; c[f >> 2] = e + -1; if (!e) f = tg(f) | 0; else { e = f + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; b = z; i = K; return b | 0 } o = b + 52 | 0; f = z; while (1) { l = c[J >> 2] | 0; n = l + 4 | 0; h = c[n >> 2] | 0; j = l + 8 | 0; k = c[j >> 2] | 0; if ((h + 1 | 0) >>> 0 > k >>> 0) { if (k >>> 0 > 2147483645) { E = 330; break } g = k << 1; h = c[o >> 2] | 0; if ((g | 0) == -2) { E = 332; break } E = Ue(h, c[l >> 2] | 0, k, g) | 0; c[l >> 2] = E; c[j >> 2] = g; h = c[n >> 2] | 0; g = E } else g = c[l >> 2] | 0; c[n >> 2] = h + 1; a[g + h >> 0] = f; f = c[I >> 2] | 0; E = c[f >> 2] | 0; c[f >> 2] = E + -1; if (!E) f = tg(f) | 0; else { E = f + 4 | 0; f = c[E >> 2] | 0; c[E >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if (!(a[2581 + (f + 1) >> 0] & 3)) { E = 338; break } } if ((E | 0) == 330) Ie(b, 3498, 0); else if ((E | 0) == 332) Te(h); else if ((E | 0) == 338) { f = c[J >> 2] | 0; j = c[o >> 2] | 0; f = Mf(j, c[f >> 2] | 0, c[f + 4 >> 2] | 0) | 0; k = j + 8 | 0; g = c[k >> 2] | 0; c[k >> 2] = g + 16; c[g >> 2] = f; c[g + 8 >> 2] = d[f + 4 >> 0] | 64; g = Vf(j, c[(c[b + 48 >> 2] | 0) + 4 >> 2] | 0, (c[k >> 2] | 0) + -16 | 0) | 0; h = g + 8 | 0; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; c[h >> 2] = 1; if ((c[(c[j + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(j) } else f = c[g + 16 >> 2] | 0; c[k >> 2] = (c[k >> 2] | 0) + -16; c[e >> 2] = f; b = c[f + 4 >> 2] | 0; f = b >>> 16; if ((b & 255) << 24 >> 24 == 4) { i = K; return ((f & 255) << 24 >> 24 == 0 ? 288 : f & 255 | 256) | 0 } else { b = 288; i = K; return b | 0 } } break } case 348: { i = K; return f | 0 } }h = c[J >> 2] | 0; j = h + 4 | 0; f = c[j >> 2] | 0; k = h + 8 | 0; l = c[k >> 2] | 0; do if ((f + 1 | 0) >>> 0 > l >>> 0) { if (l >>> 0 > 2147483645) Ie(b, 3498, 0); f = l << 1; g = c[b + 52 >> 2] | 0; if ((f | 0) == -2) Te(g); else { w = Ue(g, c[h >> 2] | 0, l, f) | 0; c[h >> 2] = w; c[k >> 2] = f; v = c[j >> 2] | 0; break } } else { v = f; w = c[h >> 2] | 0 } while (0); c[j >> 2] = v + 1; a[w + v >> 0] = m; f = c[I >> 2] | 0; E = c[f >> 2] | 0; c[f >> 2] = E + -1; if (!E) f = tg(f) | 0; else { E = f + 4 | 0; f = c[E >> 2] | 0; c[E >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if ((m | 0) == 48) if (f) if (!(Kl(3688, f, 3) | 0)) n = 3691; else { j = c[J >> 2] | 0; k = j + 4 | 0; g = c[k >> 2] | 0; l = j + 8 | 0; m = c[l >> 2] | 0; do if ((g + 1 | 0) >>> 0 > m >>> 0) { if (m >>> 0 > 2147483645) Ie(b, 3498, 0); g = m << 1; h = c[b + 52 >> 2] | 0; if ((g | 0) == -2) Te(h); else { y = Ue(h, c[j >> 2] | 0, m, g) | 0; c[j >> 2] = y; c[l >> 2] = g; x = c[k >> 2] | 0; break } } else { x = g; y = c[j >> 2] | 0 } while (0); c[k >> 2] = x + 1; a[y + x >> 0] = f; f = c[I >> 2] | 0; E = c[f >> 2] | 0; c[f >> 2] = E + -1; if (!E) f = tg(f) | 0; else { E = f + 4 | 0; f = c[E >> 2] | 0; c[E >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; n = 3694 } else { n = 3691; f = 0 } else n = 3691; o = b + 52 | 0; while (1) { if (f) { if (Kl(n, f, 3) | 0) { l = c[J >> 2] | 0; m = l + 4 | 0; h = c[m >> 2] | 0; j = l + 8 | 0; k = c[j >> 2] | 0; if ((h + 1 | 0) >>> 0 > k >>> 0) { if (k >>> 0 > 2147483645) { E = 269; break } g = k << 1; h = c[o >> 2] | 0; if ((g | 0) == -2) { E = 271; break } E = Ue(h, c[l >> 2] | 0, k, g) | 0; c[l >> 2] = E; c[j >> 2] = g; h = c[m >> 2] | 0; g = E } else g = c[l >> 2] | 0; c[m >> 2] = h + 1; a[g + h >> 0] = f; f = c[I >> 2] | 0; E = c[f >> 2] | 0; c[f >> 2] = E + -1; if (!E) f = tg(f) | 0; else { E = f + 4 | 0; f = c[E >> 2] | 0; c[E >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f; if (f) { if (Kl(3697, f, 3) | 0) { l = c[J >> 2] | 0; m = l + 4 | 0; h = c[m >> 2] | 0; j = l + 8 | 0; k = c[j >> 2] | 0; if ((h + 1 | 0) >>> 0 > k >>> 0) { if (k >>> 0 > 2147483645) { E = 281; break } g = k << 1; h = c[o >> 2] | 0; if ((g | 0) == -2) { E = 283; break } E = Ue(h, c[l >> 2] | 0, k, g) | 0; c[l >> 2] = E; c[j >> 2] = g; h = c[m >> 2] | 0; g = E } else g = c[l >> 2] | 0; c[m >> 2] = h + 1; a[g + h >> 0] = f; f = c[I >> 2] | 0; E = c[f >> 2] | 0; c[f >> 2] = E + -1; if (!E) f = tg(f) | 0; else { E = f + 4 | 0; f = c[E >> 2] | 0; c[E >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } } else f = 0 } } else f = 0; l = c[J >> 2] | 0; m = l + 4 | 0; h = c[m >> 2] | 0; j = l + 8 | 0; k = c[j >> 2] | 0; g = (h + 1 | 0) >>> 0 > k >>> 0; if (!((f | 0) == 46 ? 1 : (a[2581 + (f + 1) >> 0] & 16) != 0)) { E = 301; break } if (g) { if (k >>> 0 > 2147483645) { E = 293; break } g = k << 1; h = c[o >> 2] | 0; if ((g | 0) == -2) { E = 295; break } E = Ue(h, c[l >> 2] | 0, k, g) | 0; c[l >> 2] = E; c[j >> 2] = g; h = c[m >> 2] | 0; g = E } else g = c[l >> 2] | 0; c[m >> 2] = h + 1; a[g + h >> 0] = f; f = c[I >> 2] | 0; E = c[f >> 2] | 0; c[f >> 2] = E + -1; if (!E) f = tg(f) | 0; else { E = f + 4 | 0; f = c[E >> 2] | 0; c[E >> 2] = f + 1; f = d[f >> 0] | 0 } c[b >> 2] = f } if ((E | 0) == 269) Ie(b, 3498, 0); else if ((E | 0) == 271) Te(h); else if ((E | 0) == 281) Ie(b, 3498, 0); else if ((E | 0) == 283) Te(h); else if ((E | 0) == 293) Ie(b, 3498, 0); else if ((E | 0) == 295) Te(h); else if ((E | 0) == 301) { do if (g) { if (k >>> 0 > 2147483645) Ie(b, 3498, 0); g = k << 1; f = c[o >> 2] | 0; if ((g | 0) == -2) Te(f); else { G = Ue(f, c[l >> 2] | 0, k, g) | 0; c[l >> 2] = G; c[j >> 2] = g; F = c[m >> 2] | 0; break } } else { F = h; G = c[l >> 2] | 0 } while (0); c[m >> 2] = F + 1; a[G + F >> 0] = 0; l = b + 76 | 0; j = a[l >> 0] | 0; g = c[J >> 2] | 0; f = c[g >> 2] | 0; g = c[g + 4 >> 2] | 0; if (!g) g = -1; else { do { g = g + -1 | 0; h = f + g | 0; if ((a[h >> 0] | 0) == 46) a[h >> 0] = j } while ((g | 0) != 0); g = c[J >> 2] | 0; f = c[g >> 2] | 0; g = (c[g + 4 >> 2] | 0) + -1 | 0 } if (_e(f, g, e) | 0) { b = 287; i = K; return b | 0 } j = a[l >> 0] | 0; k = a[c[(Xl() | 0) >> 2] >> 0] | 0; a[l >> 0] = k; g = c[J >> 2] | 0; f = c[g >> 2] | 0; g = c[g + 4 >> 2] | 0; if (!g) g = -1; else { do { g = g + -1 | 0; h = f + g | 0; if ((a[h >> 0] | 0) == j << 24 >> 24) a[h >> 0] = k } while ((g | 0) != 0); g = c[J >> 2] | 0; f = c[g >> 2] | 0; g = (c[g + 4 >> 2] | 0) + -1 | 0 } if (_e(f, g, e) | 0) { b = 287; i = K; return b | 0 } h = a[l >> 0] | 0; f = c[J >> 2] | 0; g = c[f >> 2] | 0; f = c[f + 4 >> 2] | 0; if (!f) Ie(b, 3700, 287); else H = f; do { H = H + -1 | 0; f = g + H | 0; if ((a[f >> 0] | 0) == h << 24 >> 24) a[f >> 0] = 46 } while ((H | 0) != 0); Ie(b, 3700, 287) } return 0 } function Ne(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; p = c[b >> 2] | 0; o = b + 60 | 0; i = c[o >> 2] | 0; j = i + 4 | 0; e = c[j >> 2] | 0; k = i + 8 | 0; l = c[k >> 2] | 0; do if ((e + 1 | 0) >>> 0 > l >>> 0) { if (l >>> 0 > 2147483645) Ie(b, 3498, 0); e = l << 1; f = c[b + 52 >> 2] | 0; if ((e | 0) == -2) Te(f); else { h = Ue(f, c[i >> 2] | 0, l, e) | 0; c[i >> 2] = h; c[k >> 2] = e; g = c[j >> 2] | 0; break } } else { g = e; h = c[i >> 2] | 0 } while (0); c[j >> 2] = g + 1; a[h + g >> 0] = p; n = b + 56 | 0; e = c[n >> 2] | 0; m = c[e >> 2] | 0; c[e >> 2] = m + -1; if (!m) e = tg(e) | 0; else { m = e + 4 | 0; e = c[m >> 2] | 0; c[m >> 2] = e + 1; e = d[e >> 0] | 0 } c[b >> 2] = e; if ((e | 0) != 61) { b = 0; o = e; p = (o | 0) != (p | 0); p = p << 31 >> 31; p = p ^ b; return p | 0 } m = b + 52 | 0; f = 0; while (1) { k = c[o >> 2] | 0; l = k + 4 | 0; g = c[l >> 2] | 0; h = k + 8 | 0; i = c[h >> 2] | 0; if ((g + 1 | 0) >>> 0 > i >>> 0) { if (i >>> 0 > 2147483645) { g = 16; break } e = i << 1; j = c[m >> 2] | 0; if ((e | 0) == -2) { g = 18; break } j = Ue(j, c[k >> 2] | 0, i, e) | 0; c[k >> 2] = j; c[h >> 2] = e; g = c[l >> 2] | 0; e = j } else e = c[k >> 2] | 0; c[l >> 2] = g + 1; a[e + g >> 0] = 61; e = c[n >> 2] | 0; l = c[e >> 2] | 0; c[e >> 2] = l + -1; if (!l) e = tg(e) | 0; else { l = e + 4 | 0; e = c[l >> 2] | 0; c[l >> 2] = e + 1; e = d[e >> 0] | 0 } c[b >> 2] = e; f = f + 1 | 0; if ((e | 0) != 61) { g = 24; break } } if ((g | 0) == 16) Ie(b, 3498, 0); else if ((g | 0) == 18) Te(j); else if ((g | 0) == 24) { p = (e | 0) != (p | 0); p = p << 31 >> 31; p = p ^ f; return p | 0 } return 0 } function Oe(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; l = c[b >> 2] | 0; v = b + 60 | 0; m = c[v >> 2] | 0; n = m + 4 | 0; g = c[n >> 2] | 0; o = m + 8 | 0; i = c[o >> 2] | 0; do if ((g + 1 | 0) >>> 0 > i >>> 0) { if (i >>> 0 > 2147483645) Ie(b, 3498, 0); g = i << 1; h = c[b + 52 >> 2] | 0; if ((g | 0) == -2) Te(h); else { k = Ue(h, c[m >> 2] | 0, i, g) | 0; c[m >> 2] = k; c[o >> 2] = g; j = c[n >> 2] | 0; break } } else { j = g; k = c[m >> 2] | 0 } while (0); c[n >> 2] = j + 1; a[k + j >> 0] = l; r = b + 56 | 0; g = c[r >> 2] | 0; q = c[g >> 2] | 0; c[g >> 2] = q + -1; if (!q) g = tg(g) | 0; else { q = g + 4 | 0; g = c[q >> 2] | 0; c[q >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g; switch (g | 0) { case 13: case 10: { h = c[r >> 2] | 0; q = c[h >> 2] | 0; c[h >> 2] = q + -1; if (!q) h = tg(h) | 0; else { q = h + 4 | 0; h = c[q >> 2] | 0; c[q >> 2] = h + 1; h = d[h >> 0] | 0 } c[b >> 2] = h; switch (h | 0) { case 13: case 10: { if ((h | 0) != (g | 0)) { g = c[r >> 2] | 0; q = c[g >> 2] | 0; c[g >> 2] = q + -1; if (!q) g = tg(g) | 0; else { q = g + 4 | 0; g = c[q >> 2] | 0; c[q >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g } break } default: g = h }o = b + 4 | 0; q = c[o >> 2] | 0; c[o >> 2] = q + 1; if ((q | 0) > 2147483643) Ie(b, 3539, 0); else p = g; break } default: p = g }o = (e | 0) == 0; q = b + 52 | 0; n = b + 4 | 0; g = p; a: while (1) { b: do if (o) while (1) { switch (g | 0) { case -1: { s = 31; break a } case 93: { s = 32; break b } case 13: case 10: break b; default: { } }g = c[r >> 2] | 0; p = c[g >> 2] | 0; c[g >> 2] = p + -1; if (!p) g = tg(g) | 0; else { p = g + 4 | 0; g = c[p >> 2] | 0; c[p >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g } else while (1) { switch (g | 0) { case -1: { s = 31; break a } case 93: { s = 32; break b } case 13: case 10: break b; default: { } }l = c[v >> 2] | 0; m = l + 4 | 0; i = c[m >> 2] | 0; j = l + 8 | 0; k = c[j >> 2] | 0; if ((i + 1 | 0) >>> 0 > k >>> 0) { if (k >>> 0 > 2147483645) { s = 67; break a } h = k << 1; i = c[q >> 2] | 0; if ((h | 0) == -2) { s = 69; break a } p = Ue(i, c[l >> 2] | 0, k, h) | 0; c[l >> 2] = p; c[j >> 2] = h; i = c[m >> 2] | 0; h = p } else h = c[l >> 2] | 0; c[m >> 2] = i + 1; a[h + i >> 0] = g; g = c[r >> 2] | 0; p = c[g >> 2] | 0; c[g >> 2] = p + -1; if (!p) g = tg(g) | 0; else { p = g + 4 | 0; g = c[p >> 2] | 0; c[p >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g } while (0); if ((s | 0) == 32) { s = 0; p = (Ne(b) | 0) == (f | 0); g = c[b >> 2] | 0; if (p) { s = 33; break } else continue } k = c[v >> 2] | 0; l = k + 4 | 0; h = c[l >> 2] | 0; i = k + 8 | 0; j = c[i >> 2] | 0; if ((h + 1 | 0) >>> 0 > j >>> 0) { if (j >>> 0 > 2147483645) { s = 47; break } g = j << 1; h = c[q >> 2] | 0; if ((g | 0) == -2) { s = 49; break } p = Ue(h, c[k >> 2] | 0, j, g) | 0; c[k >> 2] = p; c[i >> 2] = g; h = c[l >> 2] | 0; g = p } else g = c[k >> 2] | 0; c[l >> 2] = h + 1; a[g + h >> 0] = 10; g = c[b >> 2] | 0; h = c[r >> 2] | 0; p = c[h >> 2] | 0; c[h >> 2] = p + -1; if (!p) h = tg(h) | 0; else { p = h + 4 | 0; h = c[p >> 2] | 0; c[p >> 2] = h + 1; h = d[h >> 0] | 0 } c[b >> 2] = h; switch (h | 0) { case 13: case 10: { if ((h | 0) != (g | 0)) { g = c[r >> 2] | 0; p = c[g >> 2] | 0; c[g >> 2] = p + -1; if (!p) g = tg(g) | 0; else { p = g + 4 | 0; g = c[p >> 2] | 0; c[p >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g } break } default: g = h }p = c[n >> 2] | 0; c[n >> 2] = p + 1; if ((p | 0) > 2147483643) { s = 61; break } if (!o) continue; c[(c[v >> 2] | 0) + 4 >> 2] = 0 } if ((s | 0) == 31) Ie(b, e | 0 ? 3717 : 3740, 286); else if ((s | 0) == 33) { j = c[v >> 2] | 0; k = j + 4 | 0; h = c[k >> 2] | 0; l = j + 8 | 0; m = c[l >> 2] | 0; do if ((h + 1 | 0) >>> 0 > m >>> 0) { if (m >>> 0 > 2147483645) Ie(b, 3498, 0); h = m << 1; i = c[q >> 2] | 0; if ((h | 0) == -2) Te(i); else { t = Ue(i, c[j >> 2] | 0, m, h) | 0; c[j >> 2] = t; c[l >> 2] = h; u = c[k >> 2] | 0; break } } else { t = c[j >> 2] | 0; u = h } while (0); c[k >> 2] = u + 1; a[t + u >> 0] = g; g = c[r >> 2] | 0; u = c[g >> 2] | 0; c[g >> 2] = u + -1; if (!u) g = tg(g) | 0; else { u = g + 4 | 0; g = c[u >> 2] | 0; c[u >> 2] = g + 1; g = d[g >> 0] | 0 } c[b >> 2] = g; if (o) return; k = c[v >> 2] | 0; g = f + 2 | 0; j = c[q >> 2] | 0; g = Mf(j, (c[k >> 2] | 0) + g | 0, (c[k + 4 >> 2] | 0) - (g << 1) | 0) | 0; k = j + 8 | 0; h = c[k >> 2] | 0; c[k >> 2] = h + 16; c[h >> 2] = g; c[h + 8 >> 2] = d[g + 4 >> 0] | 0 | 64; h = Vf(j, c[(c[b + 48 >> 2] | 0) + 4 >> 2] | 0, (c[k >> 2] | 0) + -16 | 0) | 0; i = h + 8 | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = 1; c[i >> 2] = 1; if ((c[(c[j + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(j) } else g = c[h + 16 >> 2] | 0; c[k >> 2] = (c[k >> 2] | 0) + -16; c[e >> 2] = g; return } else if ((s | 0) == 47) Ie(b, 3498, 0); else if ((s | 0) == 49) Te(h); else if ((s | 0) == 61) Ie(b, 3539, 0); else if ((s | 0) == 67) Ie(b, 3498, 0); else if ((s | 0) == 69) Te(i) } function Pe(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; c[(c[a + 60 >> 2] | 0) + 4 >> 2] = 0; Qe(a, 92); a: do if ((d | 0) > 0) { f = 0; do { g = c[b + (f << 2) >> 2] | 0; if ((g | 0) == -1) break a; Qe(a, g); f = f + 1 | 0 } while ((f | 0) < (d | 0)) } while (0); Ie(a, e, 289) } function Qe(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; g = c[b + 60 >> 2] | 0; h = g + 4 | 0; e = c[h >> 2] | 0; i = g + 8 | 0; j = c[i >> 2] | 0; if ((e + 1 | 0) >>> 0 <= j >>> 0) { j = e; g = c[g >> 2] | 0; i = d & 255; d = j + 1 | 0; c[h >> 2] = d; j = g + j | 0; a[j >> 0] = i; return } if (j >>> 0 > 2147483645) Ie(b, 3498, 0); f = j << 1; e = c[b + 52 >> 2] | 0; if ((f | 0) == -2) Te(e); b = Ue(e, c[g >> 2] | 0, j, f) | 0; c[g >> 2] = b; c[i >> 2] = f; j = c[h >> 2] | 0; g = b; i = d & 255; d = j + 1 | 0; c[h >> 2] = d; j = g + j | 0; a[j >> 0] = i; return } function Re(a) { a = a | 0; var b = 0; b = Me(a, a + 40 | 0) | 0; c[a + 32 >> 2] = b; return b | 0 } function Se(b, d, e, f, g, h) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var j = 0, k = 0, l = 0, m = 0, n = 0; n = i; i = i + 16 | 0; k = n; j = c[e >> 2] | 0; if ((j | 0) >= ((g | 0) / 2 | 0 | 0)) if ((j | 0) < (g | 0)) m = g; else { c[k >> 2] = h; c[k + 4 >> 2] = g; Ed(b, 3764, k) } else { m = j << 1; m = (m | 0) < 4 ? 4 : m } if ((m + 1 | 0) >>> 0 > (4294967293 / (f >>> 0) | 0) >>> 0) Te(b); l = R(j, f) | 0; j = R(m, f) | 0; k = c[b + 12 >> 2] | 0; f = (d | 0) != 0; g = k + 4 | 0; h = ab[c[k >> 2] & 31](c[g >> 2] | 0, d, l, j) | 0; if (!((j | 0) != 0 & (h | 0) == 0)) { b = h; d = k + 12 | 0; k = c[d >> 2] | 0; l = 0 - l | 0; l = f ? l : 0; l = l + j | 0; l = l + k | 0; c[d >> 2] = l; c[e >> 2] = m; i = n; return b | 0 } if (!(a[k + 63 >> 0] | 0)) Ld(b, 4); De(b, 1); g = ab[c[k >> 2] & 31](c[g >> 2] | 0, d, l, j) | 0; if (!g) Ld(b, 4); else { b = g; d = k + 12 | 0; k = c[d >> 2] | 0; l = 0 - l | 0; l = f ? l : 0; l = l + j | 0; l = l + k | 0; c[d >> 2] = l; c[e >> 2] = m; i = n; return b | 0 } return 0 } function Te(a) { a = a | 0; var b = 0; b = i; i = i + 16 | 0; Ed(a, 3790, b) } function Ue(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = c[b + 12 >> 2] | 0; k = (d | 0) != 0; h = j + 4 | 0; g = ab[c[j >> 2] & 31](c[h >> 2] | 0, d, e, f) | 0; if ((f | 0) != 0 & (g | 0) == 0) { if (!(a[j + 63 >> 0] | 0)) Ld(b, 4); De(b, 1); d = ab[c[j >> 2] & 31](c[h >> 2] | 0, d, e, f) | 0; if (!d) Ld(b, 4); else i = d } else i = g; j = j + 12 | 0; c[j >> 2] = (k ? 0 - e | 0 : 0) + f + (c[j >> 2] | 0); return i | 0 } function Ve(a) { a = a | 0; var b = 0, c = 0; if (a >>> 0 < 8) { b = a; return b | 0 } if (a >>> 0 > 15) { b = 1; do { c = a + 1 | 0; a = c >>> 1; b = b + 1 | 0 } while (c >>> 0 > 31); b = b << 3 } else b = 8; c = b | a + -8; return c | 0 } function We(a) { a = a | 0; var b = 0; b = a >>> 3 & 31; return ((b | 0) == 0 ? a : (a & 7 | 8) << b + -1) | 0 } function Xe(a) { a = a | 0; var b = 0, c = 0; a = a + -1 | 0; if (a >>> 0 > 255) { b = 0; while (1) { b = b + 8 | 0; c = a >>> 8; if (a >>> 0 > 65535) a = c; else { a = c; break } } } else b = 0; return (d[3829 + a >> 0] | 0) + b | 0 } function Ye(a, b, c) { a = a | 0; b = +b; c = +c; switch (a | 0) { case 0: { b = b + c; break } case 1: { b = b - c; break } case 2: { b = b * c; break } case 3: { b = b / c; break } case 4: { b = b - +D(+(b / c)) * c; break } case 5: { b = +G(+b, +c); break } case 6: { b = -b; break } default: b = 0.0 }return +b } function Ze(b) { b = b | 0; return ((a[2581 + (b + 1) >> 0] & 2) == 0 ? (b | 32) + -87 | 0 : b + -48 | 0) | 0 } function _e(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, j = 0.0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = i; i = i + 16 | 0; r = s; if (Hm(b, 4085) | 0) { e = 0; i = s; return e | 0 } a: do if (!(Hm(b, 4088) | 0)) { j = +jm(b, r); g = c[r >> 2] | 0 } else { g = b; c[r >> 2] = g; k = a[b >> 0] | 0; if (!(a[2581 + ((k & 255) + 1) >> 0] & 8)) m = b; else { l = b; do { l = l + 1 | 0; g = a[l >> 0] | 0 } while ((a[2581 + ((g & 255) + 1) >> 0] & 8) != 0); k = g; m = l; g = l } switch (k << 24 >> 24) { case 45: { p = 1; g = m + 1 | 0; break } case 43: { p = 0; g = m + 1 | 0; break } default: p = 0 }b: do if ((a[g >> 0] | 0) == 48) { switch (a[g + 1 >> 0] | 0) { case 88: case 120: break; default: break b }g = g + 2 | 0; k = a[g >> 0] | 0; m = k & 255; l = a[2581 + (m + 1) >> 0] | 0; if (!(l & 16)) { j = 0.0; n = 0 } else { j = 0.0; k = 0; while (1) { j = j * 16.0 + +(((l & 2) == 0 ? (m | 32) + -87 | 0 : m + -48 | 0) | 0); n = k + 1 | 0; g = g + 1 | 0; k = a[g >> 0] | 0; m = k & 255; l = a[2581 + (m + 1) >> 0] | 0; if (!(l & 16)) break; else k = n } } if (k << 24 >> 24 == 46) { g = g + 1 | 0; l = d[g >> 0] | 0; k = a[2581 + (l + 1) >> 0] | 0; if (!(k & 16)) k = 0; else { m = 0; do { j = j * 16.0 + +(((k & 2) == 0 ? (l | 32) + -87 | 0 : l + -48 | 0) | 0); m = m + 1 | 0; g = g + 1 | 0; l = d[g >> 0] | 0; k = a[2581 + (l + 1) >> 0] | 0 } while ((k & 16) != 0); k = m } } else k = 0; l = g; if (k | n | 0) { k = R(k, -4) | 0; c[r >> 2] = l; switch (a[g >> 0] | 0) { case 80: case 112: { l = g + 1 | 0; switch (a[l >> 0] | 0) { case 45: { o = 1; n = g + 2 | 0; break } case 43: { o = 0; n = g + 2 | 0; break } default: { o = 0; n = l } }l = a[n >> 0] | 0; if (a[2581 + ((l & 255) + 1) >> 0] & 2) { m = 0; g = n; do { g = g + 1 | 0; m = (l << 24 >> 24) + -48 + (m * 10 | 0) | 0; l = a[g >> 0] | 0 } while ((a[2581 + ((l & 255) + 1) >> 0] & 2) != 0); k = ((o | 0) == 0 ? m : 0 - m | 0) + k | 0; q = 24 } break } default: { g = l; q = 24 } }if ((q | 0) == 24) c[r >> 2] = g; j = +ql((p | 0) == 0 ? j : -j, k); break a } } while (0); h[f >> 3] = 0.0; e = 0; i = s; return e | 0 } while (0); h[f >> 3] = j; if ((g | 0) == (b | 0)) { e = 0; i = s; return e | 0 } if (a[2581 + ((d[g >> 0] | 0) + 1) >> 0] & 8) { do g = g + 1 | 0; while ((a[2581 + ((d[g >> 0] | 0) + 1) >> 0] & 8) != 0); c[r >> 2] = g } e = (g | 0) == (b + e | 0) & 1; i = s; return e | 0 } function $e(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0.0; v = i; i = i + 48 | 0; r = v + 8 | 0; q = v; o = v + 16 | 0; m = pm(e, 37) | 0; p = b + 24 | 0; u = b + 8 | 0; j = c[u >> 2] | 0; l = (c[p >> 2] | 0) - j | 0; a: do if (!m) { s = e; t = 0; n = l; g = j } else { k = 0; b: while (1) { if ((l | 0) < 48) { Td(b, 2); j = c[u >> 2] | 0 } c[u >> 2] = j + 16; l = Mf(b, e, m - e | 0) | 0; c[j >> 2] = l; c[j + 8 >> 2] = d[l + 4 >> 0] | 64; j = a[m + 1 >> 0] | 0; switch (j | 0) { case 115: { e = (c[f >> 2] | 0) + (4 - 1) & ~(4 - 1); j = c[e >> 2] | 0; c[f >> 2] = e + 4; j = (j | 0) == 0 ? 10694 : j; e = Vl(j) | 0; l = c[u >> 2] | 0; c[u >> 2] = l + 16; e = Mf(b, j, e) | 0; c[l >> 2] = e; c[l + 8 >> 2] = d[e + 4 >> 0] | 64; break } case 99: { e = (c[f >> 2] | 0) + (4 - 1) & ~(4 - 1); l = c[e >> 2] | 0; c[f >> 2] = e + 4; a[o >> 0] = l; l = c[u >> 2] | 0; c[u >> 2] = l + 16; e = Mf(b, o, 1) | 0; c[l >> 2] = e; c[l + 8 >> 2] = d[e + 4 >> 0] | 64; break } case 100: { l = c[u >> 2] | 0; c[u >> 2] = l + 16; j = (c[f >> 2] | 0) + (4 - 1) & ~(4 - 1); e = c[j >> 2] | 0; c[f >> 2] = j + 4; h[l >> 3] = +(e | 0); c[l + 8 >> 2] = 3; break } case 102: { l = c[u >> 2] | 0; c[u >> 2] = l + 16; e = (c[f >> 2] | 0) + (8 - 1) & ~(8 - 1); w = +h[e >> 3]; c[f >> 2] = e + 8; h[l >> 3] = w; c[l + 8 >> 2] = 3; break } case 112: { l = (c[f >> 2] | 0) + (4 - 1) & ~(4 - 1); e = c[l >> 2] | 0; c[f >> 2] = l + 4; c[q >> 2] = e; e = em(o, 4091, q) | 0; l = c[u >> 2] | 0; c[u >> 2] = l + 16; e = Mf(b, o, e) | 0; c[l >> 2] = e; c[l + 8 >> 2] = d[e + 4 >> 0] | 64; break } case 37: { l = c[u >> 2] | 0; c[u >> 2] = l + 16; e = Mf(b, 4094, 1) | 0; c[l >> 2] = e; c[l + 8 >> 2] = d[e + 4 >> 0] | 64; break } default: break b }k = k + 2 | 0; e = m + 2 | 0; m = pm(e, 37) | 0; j = c[u >> 2] | 0; l = (c[p >> 2] | 0) - j | 0; if (!m) { s = e; t = k; n = l; g = j; break a } } c[r >> 2] = j; Ed(b, 4096, r) } while (0); if ((n | 0) < 32) { Td(b, 1); g = c[u >> 2] | 0 } r = Vl(s) | 0; c[u >> 2] = g + 16; s = Mf(b, s, r) | 0; c[g >> 2] = s; c[g + 8 >> 2] = d[s + 4 >> 0] | 64; if ((t | 0) <= 0) { u = c[u >> 2] | 0; u = u + -16 | 0; u = c[u >> 2] | 0; u = u + 16 | 0; i = v; return u | 0 } og(b, t | 1); u = c[u >> 2] | 0; u = u + -16 | 0; u = c[u >> 2] | 0; u = u + 16 | 0; i = v; return u | 0 } function af(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = i; i = i + 16 | 0; f = e; c[f >> 2] = d; d = $e(a, b, f) | 0; i = e; return d | 0 } function bf(b, c, d) { b = b | 0; c = c | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = Vl(c) | 0; switch (a[c >> 0] | 0) { case 61: { e = c + 1 | 0; if (i >>> 0 > d >>> 0) { i = d + -1 | 0; nn(b | 0, e | 0, i | 0) | 0; a[b + i >> 0] = 0; return } else { nn(b | 0, e | 0, i | 0) | 0; return } } case 64: if (i >>> 0 > d >>> 0) { a[b >> 0] = a[4139] | 0; a[b + 1 >> 0] = a[4140] | 0; a[b + 2 >> 0] = a[4141] | 0; nn(b + 3 | 0, c + 1 + i + (3 - d) | 0, d + -3 | 0) | 0; return } else { nn(b | 0, c + 1 | 0, i | 0) | 0; return } default: { h = pm(c, 10) | 0; e = b; f = 4143; g = e + 9 | 0; do { a[e >> 0] = a[f >> 0] | 0; e = e + 1 | 0; f = f + 1 | 0 } while ((e | 0) < (g | 0)); g = b + 9 | 0; e = d + -15 | 0; f = (h | 0) == 0; if (i >>> 0 < e >>> 0 & f) { nn(g | 0, c | 0, i | 0) | 0; e = g + i | 0 } else { i = f ? i : h - c | 0; e = i >>> 0 > e >>> 0 ? e : i; nn(g | 0, c | 0, e | 0) | 0; e = g + e | 0; a[e >> 0] = a[4139] | 0; a[e + 1 >> 0] = a[4140] | 0; a[e + 2 >> 0] = a[4141] | 0; e = e + 3 | 0 }; a[e >> 0] = a[4153] | 0; a[e + 1 >> 0] = a[4154] | 0; a[e + 2 >> 0] = a[4155] | 0; return } } } function cf(d, e, f, g, h, j) { d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; j = j | 0; var k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; q = i; i = i + 176 | 0; k = q + 156 | 0; l = q + 80 | 0; o = q; m = q + 104 | 0; n = be(d, 1) | 0; s = d + 8 | 0; r = c[s >> 2] | 0; c[r >> 2] = n; c[r + 8 >> 2] = 70; r = (c[s >> 2] | 0) + 16 | 0; c[s >> 2] = r; if (((c[d + 24 >> 2] | 0) - r | 0) < 16) Td(d, 0); r = ge(d) | 0; c[n + 12 >> 2] = r; c[m >> 2] = r; h = Nf(d, h) | 0; s = r + 36 | 0; c[s >> 2] = h; c[o + 60 >> 2] = f; f = o + 64 | 0; c[f >> 2] = g; c[g + 28 >> 2] = 0; c[g + 16 >> 2] = 0; c[g + 4 >> 2] = 0; Ke(d, o, e, h, j); d = c[o + 52 >> 2] | 0; j = o + 48 | 0; c[m + 8 >> 2] = c[j >> 2]; e = m + 12 | 0; c[e >> 2] = o; c[j >> 2] = m; c[m + 20 >> 2] = 0; c[m + 24 >> 2] = 0; c[m + 28 >> 2] = -1; c[m + 32 >> 2] = 0; c[m + 36 >> 2] = 0; j = m + 44 | 0; c[j >> 2] = 0; a[j + 4 >> 0] = 0; c[m + 40 >> 2] = c[(c[f >> 2] | 0) + 4 >> 2]; f = m + 16 | 0; c[f >> 2] = 0; c[s >> 2] = c[o + 68 >> 2]; a[r + 78 >> 0] = 2; j = Xf(d) | 0; c[m + 4 >> 2] = j; r = d + 8 | 0; s = c[r >> 2] | 0; c[s >> 2] = j; c[s + 8 >> 2] = 69; s = (c[r >> 2] | 0) + 16 | 0; c[r >> 2] = s; if (((c[d + 24 >> 2] | 0) - s | 0) < 16) Td(d, 0); a[k + 10 >> 0] = 0; a[k + 8 >> 0] = a[m + 46 >> 0] | 0; e = c[(c[e >> 2] | 0) + 64 >> 2] | 0; b[k + 4 >> 1] = c[e + 28 >> 2]; b[k + 6 >> 1] = c[e + 16 >> 2]; a[k + 9 >> 0] = 0; c[k >> 2] = c[f >> 2]; c[f >> 2] = k; a[(c[m >> 2] | 0) + 77 >> 0] = 1; c[l + 16 >> 2] = -1; c[l + 20 >> 2] = -1; c[l >> 2] = 7; c[l + 8 >> 2] = 0; df(m, c[o + 72 >> 2] | 0, l) | 0; Le(o); e = o + 16 | 0; a: while (1) { d = c[e >> 2] | 0; switch (d | 0) { case 277: case 286: case 262: case 261: case 260: break a; default: { } }ef(o); if ((d | 0) == 274) { p = 8; break } } if ((p | 0) == 8) d = c[e >> 2] | 0; if ((d | 0) == 286) { gf(o); i = q; return n | 0 } else ff(o, 286); return 0 } function df(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; r = i; i = i + 32 | 0; o = r + 8 | 0; n = r; p = c[b >> 2] | 0; l = p + 40 | 0; g = c[l >> 2] | 0; q = b + 47 | 0; m = d[q >> 0] | 0; if ((m + 1 | 0) >>> 0 > 255) { h = b + 12 | 0; j = c[(c[h >> 2] | 0) + 52 >> 2] | 0; k = c[p + 64 >> 2] | 0; if (!k) { t = 4381; c[o >> 2] = 4820; s = o + 4 | 0; c[s >> 2] = 255; s = o + 8 | 0; c[s >> 2] = t; s = af(j, 4395, o) | 0; t = c[h >> 2] | 0; He(t, s) } c[n >> 2] = k; s = af(j, 4361, n) | 0; c[o >> 2] = 4820; t = o + 4 | 0; c[t >> 2] = 255; t = o + 8 | 0; c[t >> 2] = s; t = af(j, 4395, o) | 0; s = c[h >> 2] | 0; He(s, t) } if ((m | 0) < (g | 0)) h = g; else { h = p + 28 | 0; c[h >> 2] = Se(c[(c[b + 12 >> 2] | 0) + 52 >> 2] | 0, c[h >> 2] | 0, l, 8, 255, 4820) | 0; h = c[l >> 2] | 0 } j = c[p + 28 >> 2] | 0; if ((g | 0) < (h | 0)) do { c[j + (g << 3) >> 2] = 0; g = g + 1 | 0 } while ((g | 0) < (h | 0)); g = a[q >> 0] | 0; t = g & 255; a[j + (t << 3) + 4 >> 0] = (c[f >> 2] | 0) == 7 & 1; a[j + (t << 3) + 5 >> 0] = c[f + 8 >> 2]; c[j + (t << 3) >> 2] = e; if (!(a[e + 5 >> 0] & 3)) { t = g; s = t + 1 << 24 >> 24; a[q >> 0] = s; t = t & 255; i = r; return t | 0 } if (!(a[p + 5 >> 0] & 4)) { t = g; s = t + 1 << 24 >> 24; a[q >> 0] = s; t = t & 255; i = r; return t | 0 } je(c[(c[b + 12 >> 2] | 0) + 52 >> 2] | 0, p, e); t = a[q >> 0] | 0; s = t + 1 << 24 >> 24; a[q >> 0] = s; t = t & 255; i = r; return t | 0 } function ef(e) { e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0; F = i; i = i + 192 | 0; t = F + 184 | 0; p = F + 168 | 0; w = F + 152 | 0; m = F + 136 | 0; n = F + 120 | 0; o = F + 104 | 0; l = F + 88 | 0; k = F + 80 | 0; A = F + 48 | 0; u = F + 24 | 0; q = F; y = e + 4 | 0; B = c[y >> 2] | 0; D = e + 48 | 0; x = c[D >> 2] | 0; E = e + 52 | 0; j = (c[E >> 2] | 0) + 38 | 0; C = (b[j >> 1] | 0) + 1 << 16 >> 16; b[j >> 1] = C; if ((C & 65535) > 200) { f = x + 12 | 0; h = c[(c[f >> 2] | 0) + 52 >> 2] | 0; j = c[(c[x >> 2] | 0) + 64 >> 2] | 0; if (!j) { G = 4381; c[l >> 2] = 4427; C = l + 4 | 0; c[C >> 2] = 200; C = l + 8 | 0; c[C >> 2] = G; C = af(h, 4395, l) | 0; G = c[f >> 2] | 0; He(G, C) } c[k >> 2] = j; C = af(h, 4361, k) | 0; c[l >> 2] = 4427; G = l + 4 | 0; c[G >> 2] = 200; G = l + 8 | 0; c[G >> 2] = C; G = af(h, 4395, l) | 0; C = c[f >> 2] | 0; He(C, G) } C = e + 16 | 0; do switch (c[C >> 2] | 0) { case 59: { Le(e); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } case 267: { c[u >> 2] = -1; nf(e, u); a: while (1) { f = c[C >> 2] | 0; switch (f | 0) { case 260: { z = 10; break a } case 261: break; default: break a }nf(e, u) } if ((z | 0) == 10) { Le(e); g = c[D >> 2] | 0; a[A + 10 >> 0] = 0; a[A + 8 >> 0] = a[g + 46 >> 0] | 0; G = c[(c[g + 12 >> 2] | 0) + 64 >> 2] | 0; b[A + 4 >> 1] = c[G + 28 >> 2]; b[A + 6 >> 1] = c[G + 16 >> 2]; a[A + 9 >> 0] = 0; G = g + 16 | 0; c[A >> 2] = c[G >> 2]; c[G >> 2] = A; b: do { f = c[C >> 2] | 0; switch (f | 0) { case 277: case 286: case 262: case 261: case 260: break b; default: { } }ef(e) } while ((f | 0) != 274); hf(g); f = c[C >> 2] | 0 } if ((f | 0) == 262) { Le(e); Sc(x, c[u >> 2] | 0); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } if ((c[y >> 2] | 0) == (B | 0)) ff(e, 262); else { G = c[E >> 2] | 0; E = Ge(e, 262) | 0; F = Ge(e, 267) | 0; c[o >> 2] = E; c[o + 4 >> 2] = F; c[o + 8 >> 2] = B; He(e, af(G, 4436, o) | 0) } break } case 278: { Le(e); h = Qc(x) | 0; of(e, A, 0) | 0; if ((c[A >> 2] | 0) == 1) c[A >> 2] = 3; kd(c[D >> 2] | 0, A); j = c[A + 20 >> 2] | 0; a[u + 10 >> 0] = 1; a[u + 8 >> 0] = a[x + 46 >> 0] | 0; G = c[(c[x + 12 >> 2] | 0) + 64 >> 2] | 0; b[u + 4 >> 1] = c[G + 28 >> 2]; b[u + 6 >> 1] = c[G + 16 >> 2]; a[u + 9 >> 0] = 0; G = x + 16 | 0; c[u >> 2] = c[G >> 2]; c[G >> 2] = u; if ((c[C >> 2] | 0) != 259) ff(e, 259); Le(e); g = c[D >> 2] | 0; a[A + 10 >> 0] = 0; a[A + 8 >> 0] = a[g + 46 >> 0] | 0; G = c[(c[g + 12 >> 2] | 0) + 64 >> 2] | 0; b[A + 4 >> 1] = c[G + 28 >> 2]; b[A + 6 >> 1] = c[G + 16 >> 2]; a[A + 9 >> 0] = 0; G = g + 16 | 0; c[A >> 2] = c[G >> 2]; c[G >> 2] = A; c: do { f = c[C >> 2] | 0; switch (f | 0) { case 277: case 286: case 262: case 261: case 260: break c; default: { } }ef(e) } while ((f | 0) != 274); hf(g); Rc(x, Mc(x) | 0, h); if ((c[C >> 2] | 0) == 262) { Le(e); hf(x); Sc(x, j); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } if ((c[y >> 2] | 0) == (B | 0)) ff(e, 262); else { G = c[E >> 2] | 0; E = Ge(e, 262) | 0; F = Ge(e, 278) | 0; c[n >> 2] = E; c[n + 4 >> 2] = F; c[n + 8 >> 2] = B; He(e, af(G, 4436, n) | 0) } break } case 259: { Le(e); g = c[D >> 2] | 0; a[A + 10 >> 0] = 0; a[A + 8 >> 0] = a[g + 46 >> 0] | 0; G = c[(c[g + 12 >> 2] | 0) + 64 >> 2] | 0; b[A + 4 >> 1] = c[G + 28 >> 2]; b[A + 6 >> 1] = c[G + 16 >> 2]; a[A + 9 >> 0] = 0; G = g + 16 | 0; c[A >> 2] = c[G >> 2]; c[G >> 2] = A; d: do { f = c[C >> 2] | 0; switch (f | 0) { case 277: case 286: case 262: case 261: case 260: break d; default: { } }ef(e) } while ((f | 0) != 274); hf(g); if ((c[C >> 2] | 0) == 262) { Le(e); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } if ((c[y >> 2] | 0) == (B | 0)) ff(e, 262); else { G = c[E >> 2] | 0; E = Ge(e, 262) | 0; F = Ge(e, 259) | 0; c[m >> 2] = E; c[m + 4 >> 2] = F; c[m + 8 >> 2] = B; He(e, af(G, 4436, m) | 0) } break } case 264: { a[u + 10 >> 0] = 1; a[u + 8 >> 0] = a[x + 46 >> 0] | 0; G = c[(c[x + 12 >> 2] | 0) + 64 >> 2] | 0; b[u + 4 >> 1] = c[G + 28 >> 2]; b[u + 6 >> 1] = c[G + 16 >> 2]; a[u + 9 >> 0] = 0; G = x + 16 | 0; c[u >> 2] = c[G >> 2]; c[G >> 2] = u; Le(e); if ((c[C >> 2] | 0) != 288) ff(e, 288); h = e + 24 | 0; j = c[h >> 2] | 0; Le(e); switch (c[C >> 2] | 0) { case 61: { f = c[D >> 2] | 0; g = f + 48 | 0; h = d[g >> 0] | 0; pf(e, Je(e, 4473, 11) | 0); pf(e, Je(e, 4485, 11) | 0); pf(e, Je(e, 4497, 10) | 0); pf(e, j); if ((c[C >> 2] | 0) != 61) ff(e, 61); Le(e); of(e, A, 0) | 0; bd(c[D >> 2] | 0, A); if ((c[C >> 2] | 0) != 44) ff(e, 44); Le(e); of(e, A, 0) | 0; bd(c[D >> 2] | 0, A); if ((c[C >> 2] | 0) == 44) { Le(e); of(e, A, 0) | 0; bd(c[D >> 2] | 0, A) } else { G = d[g >> 0] | 0; Uc(f, G, Zc(f, 1.0) | 0) | 0; Wc(f, 1) } qf(e, h, B, 1, 1); break } case 268: case 44: { k = c[D >> 2] | 0; l = d[k + 48 >> 0] | 0; pf(e, Je(e, 4508, 15) | 0); pf(e, Je(e, 4524, 11) | 0); pf(e, Je(e, 4536, 13) | 0); pf(e, j); f = c[C >> 2] | 0; do if ((f | 0) == 44) { f = 4; while (1) { Le(e); if ((c[C >> 2] | 0) != 288) { z = 52; break } g = c[h >> 2] | 0; Le(e); pf(e, g); g = c[C >> 2] | 0; if ((g | 0) == 44) f = f + 1 | 0; else { z = 54; break } } if ((z | 0) == 52) ff(e, 288); else if ((z | 0) == 54) { v = f + -2 | 0; r = g; break } } else { v = 1; r = f } while (0); if ((r | 0) != 268) ff(e, 268); Le(e); j = c[y >> 2] | 0; of(e, A, 0) | 0; if ((c[C >> 2] | 0) == 44) { f = 1; do { Le(e); bd(c[D >> 2] | 0, A); of(e, A, 0) | 0; f = f + 1 | 0 } while ((c[C >> 2] | 0) == 44) } else f = 1; h = c[D >> 2] | 0; g = 3 - f | 0; switch (c[A >> 2] | 0) { case 13: case 12: { f = g + 1 | 0; f = (f | 0) < 0 ? 0 : f; _c(h, A, f); if ((f | 0) > 1) Wc(h, f + -1 | 0); break } case 0: { z = 63; break } default: { bd(h, A); z = 63 } }if ((z | 0) == 63 ? (g | 0) > 0 : 0) { G = d[h + 48 >> 0] | 0; Wc(h, g); Jc(h, G, g) } Vc(k, 3); qf(e, l, j, v, 0); break } default: He(e, 4550) }if ((c[C >> 2] | 0) == 262) { Le(e); hf(x); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } if ((c[y >> 2] | 0) == (B | 0)) ff(e, 262); else { G = c[E >> 2] | 0; E = Ge(e, 262) | 0; F = Ge(e, 264) | 0; c[w >> 2] = E; c[w + 4 >> 2] = F; c[w + 8 >> 2] = B; He(e, af(G, 4436, w) | 0) } break } case 273: { g = Qc(x) | 0; a[u + 10 >> 0] = 1; v = a[x + 46 >> 0] | 0; a[u + 8 >> 0] = v; j = c[(c[x + 12 >> 2] | 0) + 64 >> 2] | 0; w = c[j + 28 >> 2] & 65535; b[u + 4 >> 1] = w; j = c[j + 16 >> 2] & 65535; b[u + 6 >> 1] = j; a[u + 9 >> 0] = 0; G = x + 16 | 0; c[u >> 2] = c[G >> 2]; a[q + 10 >> 0] = 0; h = q + 8 | 0; a[h >> 0] = v; b[q + 4 >> 1] = w; b[q + 6 >> 1] = j; j = q + 9 | 0; a[j >> 0] = 0; c[q >> 2] = u; c[G >> 2] = q; Le(e); e: while (1) { f = c[C >> 2] | 0; switch (f | 0) { case 277: case 286: case 262: case 261: case 260: break e; default: { } }ef(e); if ((f | 0) == 274) { z = 75; break } } if ((z | 0) == 75) f = c[C >> 2] | 0; if ((f | 0) != 277) if ((c[y >> 2] | 0) == (B | 0)) ff(e, 277); else { G = c[E >> 2] | 0; z = Ge(e, 277) | 0; C = Ge(e, 273) | 0; c[p >> 2] = z; c[p + 4 >> 2] = C; c[p + 8 >> 2] = B; He(e, af(G, 4436, p) | 0) } Le(e); of(e, A, 0) | 0; if ((c[A >> 2] | 0) == 1) c[A >> 2] = 3; kd(c[D >> 2] | 0, A); f = c[A + 20 >> 2] | 0; if (a[j >> 0] | 0) Tc(x, f, d[h >> 0] | 0); hf(x); Rc(x, f, g); hf(x); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } case 265: { Le(e); if ((c[C >> 2] | 0) != 288) ff(e, 288); f = c[e + 24 >> 2] | 0; Le(e); g = c[D >> 2] | 0; if (!(rf(g, f, u, 1) | 0)) { rf(g, c[e + 72 >> 2] | 0, u, 1) | 0; G = Xc(c[D >> 2] | 0, f) | 0; c[A + 16 >> 2] = -1; c[A + 20 >> 2] = -1; c[A >> 2] = 4; c[A + 8 >> 2] = G; md(g, u, A) } f: while (1) { switch (c[C >> 2] | 0) { case 58: { z = 91; break f } case 46: break; default: { f = 0; break f } }sf(e, u) } if ((z | 0) == 91) { sf(e, u); f = 1 } tf(e, q, f, B); id(c[D >> 2] | 0, u, q); sd(c[D >> 2] | 0, B); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } case 269: { Le(e); f = c[C >> 2] | 0; if ((f | 0) == 265) { Le(e); f = c[D >> 2] | 0; if ((c[C >> 2] | 0) != 288) ff(e, 288); C = c[e + 24 >> 2] | 0; Le(e); pf(e, C); C = c[D >> 2] | 0; B = C + 46 | 0; G = (d[B >> 0] | 0) + 1 | 0; a[B >> 0] = G; c[(c[(c[C >> 2] | 0) + 24 >> 2] | 0) + ((b[(c[c[(c[C + 12 >> 2] | 0) + 64 >> 2] >> 2] | 0) + ((c[C + 40 >> 2] | 0) + (G & 255) + -1 << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = c[C + 20 >> 2]; tf(e, A, 0, c[y >> 2] | 0); c[(c[(c[f >> 2] | 0) + 24 >> 2] | 0) + ((b[(c[c[(c[f + 12 >> 2] | 0) + 64 >> 2] >> 2] | 0) + ((c[f + 40 >> 2] | 0) + (c[A + 8 >> 2] | 0) << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = c[f + 20 >> 2]; G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } if ((f | 0) != 288) ff(e, 288); h = e + 24 | 0; f = 0; g: while (1) { G = c[h >> 2] | 0; Le(e); pf(e, G); f = f + 1 | 0; switch (c[C >> 2] | 0) { case 61: { z = 102; break g } case 44: break; default: { z = 104; break g } }Le(e); if ((c[C >> 2] | 0) != 288) { z = 99; break } } if ((z | 0) == 99) ff(e, 288); else if ((z | 0) == 102) { Le(e); of(e, A, 0) | 0; if ((c[C >> 2] | 0) == 44) { g = 1; do { Le(e); bd(c[D >> 2] | 0, A); of(e, A, 0) | 0; g = g + 1 | 0 } while ((c[C >> 2] | 0) == 44) } else g = 1 } else if ((z | 0) == 104) { c[A >> 2] = 0; g = 0 } j = c[D >> 2] | 0; h = f - g | 0; switch (c[A >> 2] | 0) { case 13: case 12: { g = h + 1 | 0; g = (g | 0) < 0 ? 0 : g; _c(j, A, g); if ((g | 0) > 1) Wc(j, g + -1 | 0); break } case 0: { z = 109; break } default: { bd(j, A); z = 109 } }if ((z | 0) == 109 ? (h | 0) > 0 : 0) { G = d[j + 48 >> 0] | 0; Wc(j, h); Jc(j, G, h) } G = c[D >> 2] | 0; j = G + 46 | 0; k = (d[j >> 0] | 0) + f | 0; a[j >> 0] = k; j = c[G + 20 >> 2] | 0; g = c[(c[G >> 2] | 0) + 24 >> 2] | 0; h = c[c[(c[G + 12 >> 2] | 0) + 64 >> 2] >> 2] | 0; k = (c[G + 40 >> 2] | 0) + (k & 255) | 0; do { c[g + ((b[h + (k - f << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = j; f = f + -1 | 0 } while ((f | 0) != 0); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } case 285: { Le(e); if ((c[C >> 2] | 0) != 288) ff(e, 288); l = c[e + 24 >> 2] | 0; Le(e); g = c[D >> 2] | 0; p = e + 64 | 0; j = c[p >> 2] | 0; n = j + 24 | 0; o = g + 16 | 0; f = b[(c[o >> 2] | 0) + 4 >> 1] | 0; m = j + 28 | 0; h: do if ((f | 0) < (c[m >> 2] | 0)) { while (1) { if (Jf(l, c[(c[n >> 2] | 0) + (f << 4) >> 2] | 0) | 0) break; f = f + 1 | 0; if ((f | 0) >= (c[m >> 2] | 0)) break h } A = g + 12 | 0; G = c[(c[A >> 2] | 0) + 52 >> 2] | 0; z = c[(c[n >> 2] | 0) + (f << 4) + 8 >> 2] | 0; c[t >> 2] = l + 16; c[t + 4 >> 2] = z; G = af(G, 4571, t) | 0; lf(c[A >> 2] | 0, G) } while (0); if ((c[C >> 2] | 0) != 285) ff(e, 285); Le(e); h = c[g + 20 >> 2] | 0; k = c[m >> 2] | 0; f = j + 32 | 0; if ((k | 0) < (c[f >> 2] | 0)) { f = c[n >> 2] | 0; g = k } else { f = Se(c[E >> 2] | 0, c[n >> 2] | 0, f, 16, 32767, 4202) | 0; c[n >> 2] = f; g = c[m >> 2] | 0 } c[f + (k << 4) >> 2] = l; c[f + (k << 4) + 8 >> 2] = B; a[f + (k << 4) + 12 >> 0] = a[(c[D >> 2] | 0) + 46 >> 0] | 0; c[f + (k << 4) + 4 >> 2] = h; c[m >> 2] = g + 1; i: while (1) { switch (c[C >> 2] | 0) { case 286: case 262: case 261: case 260: { z = 130; break i } case 285: case 59: break; default: { z = 129; break i } }ef(e) } if ((z | 0) == 129) f = c[n >> 2] | 0; else if ((z | 0) == 130) { f = c[n >> 2] | 0; a[f + (k << 4) + 12 >> 0] = a[(c[o >> 2] | 0) + 8 >> 0] | 0 } j = f + (k << 4) | 0; g = c[p >> 2] | 0; f = b[(c[(c[D >> 2] | 0) + 16 >> 2] | 0) + 6 >> 1] | 0; h = g + 16 | 0; if ((f | 0) >= (c[h >> 2] | 0)) { G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } g = g + 12 | 0; j: while (1) { while (1) { if (!(Jf(c[(c[g >> 2] | 0) + (f << 4) >> 2] | 0, c[j >> 2] | 0) | 0)) break; jf(e, f, j); if ((f | 0) >= (c[h >> 2] | 0)) { z = 165; break j } } f = f + 1 | 0; if ((f | 0) >= (c[h >> 2] | 0)) { z = 165; break } } if ((z | 0) == 165) { G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } break } case 274: { Le(e); h = c[D >> 2] | 0; k: do switch (c[C >> 2] | 0) { case 59: case 277: case 286: case 262: case 261: case 260: { f = 0; g = 0; break } default: { of(e, A, 0) | 0; if ((c[C >> 2] | 0) == 44) { f = 1; do { Le(e); bd(c[D >> 2] | 0, A); of(e, A, 0) | 0; f = f + 1 | 0 } while ((c[C >> 2] | 0) == 44) } else f = 1; if ((c[A >> 2] & -2 | 0) != 12) if ((f | 0) == 1) { f = 1; g = ed(h, A) | 0; break k } else { bd(h, A); g = d[h + 46 >> 0] | 0; break k } else { _c(h, A, -1); if ((f | 0) == 1 & (c[A >> 2] | 0) == 12) { G = (c[(c[h >> 2] | 0) + 12 >> 2] | 0) + (c[A + 8 >> 2] << 2) | 0; c[G >> 2] = c[G >> 2] & -64 | 30 } f = -1; g = d[h + 46 >> 0] | 0; break k } } } while (0); Pc(h, g, f); if ((c[C >> 2] | 0) == 59) Le(e); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } case 266: case 258: { l = Mc(x) | 0; k = c[y >> 2] | 0; G = (c[C >> 2] | 0) == 266; Le(e); do if (G) if ((c[C >> 2] | 0) == 288) { s = c[e + 24 >> 2] | 0; Le(e); break } else ff(e, 288); else s = Nf(c[E >> 2] | 0, 4196) | 0; while (0); g = c[e + 64 >> 2] | 0; f = g + 12 | 0; h = g + 16 | 0; j = c[h >> 2] | 0; g = g + 20 | 0; if ((j | 0) < (c[g >> 2] | 0)) { f = c[f >> 2] | 0; g = j } else { g = Se(c[E >> 2] | 0, c[f >> 2] | 0, g, 16, 32767, 4202) | 0; c[f >> 2] = g; f = g; g = c[h >> 2] | 0 } c[f + (j << 4) >> 2] = s; c[f + (j << 4) + 8 >> 2] = k; a[f + (j << 4) + 12 >> 0] = a[(c[D >> 2] | 0) + 46 >> 0] | 0; c[f + (j << 4) + 4 >> 2] = l; c[h >> 2] = g + 1; kf(e, j) | 0; G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } default: { f = A + 8 | 0; uf(e, f); l: do switch (c[C >> 2] | 0) { case 44: case 61: { c[A >> 2] = 0; vf(e, A, 1); break } default: if ((c[f >> 2] | 0) == 12) { G = (c[(c[x >> 2] | 0) + 12 >> 2] | 0) + (c[A + 16 >> 2] << 2) | 0; c[G >> 2] = c[G >> 2] & -8372225 | 16384; break l } else He(e, 4609) } while (0); G = c[D >> 2] | 0; D = G + 46 | 0; D = a[D >> 0] | 0; G = G + 48 | 0; a[G >> 0] = D; G = c[E >> 2] | 0; G = G + 38 | 0; E = b[G >> 1] | 0; E = E + -1 << 16 >> 16; b[G >> 1] = E; i = F; return } } while (0) } function ff(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = i; i = i + 16 | 0; e = c[a + 52 >> 2] | 0; c[d >> 2] = Ge(a, b) | 0; He(a, af(e, 4349, d) | 0) } function gf(a) { a = a | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0; g = c[a + 52 >> 2] | 0; h = a + 48 | 0; i = c[h >> 2] | 0; j = c[i >> 2] | 0; Pc(i, 0, 0); hf(i); f = i + 20 | 0; e = c[f >> 2] | 0; if ((e + 1 | 0) >>> 0 > 1073741823) Te(g); l = j + 12 | 0; k = j + 48 | 0; c[l >> 2] = Ue(g, c[l >> 2] | 0, c[k >> 2] << 2, e << 2) | 0; e = c[f >> 2] | 0; c[k >> 2] = e; if ((e + 1 | 0) >>> 0 > 1073741823) Te(g); k = j + 20 | 0; l = j + 52 | 0; c[k >> 2] = Ue(g, c[k >> 2] | 0, c[l >> 2] << 2, e << 2) | 0; c[l >> 2] = c[f >> 2]; e = i + 32 | 0; f = c[e >> 2] | 0; if ((f + 1 | 0) >>> 0 > 268435455) Te(g); k = j + 8 | 0; l = j + 44 | 0; c[k >> 2] = Ue(g, c[k >> 2] | 0, c[l >> 2] << 4, f << 4) | 0; c[l >> 2] = c[e >> 2]; e = i + 36 | 0; f = c[e >> 2] | 0; if ((f + 1 | 0) >>> 0 > 1073741823) Te(g); k = j + 16 | 0; l = j + 56 | 0; c[k >> 2] = Ue(g, c[k >> 2] | 0, c[l >> 2] << 2, f << 2) | 0; c[l >> 2] = c[e >> 2]; e = i + 44 | 0; f = b[e >> 1] | 0; if ((f + 1 | 0) >>> 0 > 357913941) Te(g); l = j + 24 | 0; k = j + 60 | 0; c[l >> 2] = Ue(g, c[l >> 2] | 0, (c[k >> 2] | 0) * 12 | 0, f * 12 | 0) | 0; f = c[e >> 2] | 0; c[k >> 2] = f << 16 >> 16; k = j + 28 | 0; l = j + 40 | 0; c[k >> 2] = Ue(g, c[k >> 2] | 0, c[l >> 2] << 3, f >>> 24 << 3) | 0; c[l >> 2] = d[i + 47 >> 0]; c[h >> 2] = c[i + 8 >> 2]; if ((c[a + 16 >> 2] & -2 | 0) == 288) { l = c[a + 24 >> 2] | 0; Je(a, l + 16 | 0, c[l + 12 >> 2] | 0) | 0 } l = g + 8 | 0; c[l >> 2] = (c[l >> 2] | 0) + -16; if ((c[(c[g + 12 >> 2] | 0) + 12 >> 2] | 0) <= 0) return; Ee(g); return } function hf(e) { e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0; w = i; i = i + 16 | 0; u = w; r = e + 16 | 0; s = c[r >> 2] | 0; v = e + 12 | 0; t = c[v >> 2] | 0; if (c[s >> 2] | 0 ? a[s + 9 >> 0] | 0 : 0) { q = Mc(e) | 0; Tc(e, q, d[s + 8 >> 0] | 0); Sc(e, q) } a: do if (a[s + 10 >> 0] | 0) { f = t + 52 | 0; n = Nf(c[f >> 2] | 0, 4196) | 0; m = t + 64 | 0; k = c[m >> 2] | 0; g = k + 24 | 0; j = t + 48 | 0; l = c[j >> 2] | 0; o = c[l + 20 >> 2] | 0; p = k + 28 | 0; q = c[p >> 2] | 0; h = k + 32 | 0; if ((q | 0) < (c[h >> 2] | 0)) { h = c[g >> 2] | 0; g = l; f = q } else { h = Se(c[f >> 2] | 0, c[g >> 2] | 0, h, 16, 32767, 4202) | 0; c[g >> 2] = h; g = c[j >> 2] | 0; f = c[p >> 2] | 0; k = c[m >> 2] | 0 } c[h + (q << 4) >> 2] = n; c[h + (q << 4) + 8 >> 2] = 0; a[h + (q << 4) + 12 >> 0] = a[g + 46 >> 0] | 0; c[h + (q << 4) + 4 >> 2] = o; c[p >> 2] = f + 1; j = (c[k + 24 >> 2] | 0) + (q << 4) | 0; f = b[(c[g + 16 >> 2] | 0) + 6 >> 1] | 0; h = k + 16 | 0; if ((f | 0) < (c[h >> 2] | 0)) { g = k + 12 | 0; do { while (1) { if (!(Jf(c[(c[g >> 2] | 0) + (f << 4) >> 2] | 0, c[j >> 2] | 0) | 0)) break; jf(t, f, j); if ((f | 0) >= (c[h >> 2] | 0)) break a } f = f + 1 | 0 } while ((f | 0) < (c[h >> 2] | 0)) } } while (0); o = c[s >> 2] | 0; c[r >> 2] = o; q = s + 8 | 0; f = a[q >> 0] | 0; n = e + 46 | 0; g = a[n >> 0] | 0; l = g & 255; p = c[(c[v >> 2] | 0) + 64 >> 2] | 0; r = p + 4 | 0; c[r >> 2] = (f & 255) - l + (c[r >> 2] | 0); if ((f & 255) < (g & 255)) { m = c[e + 20 >> 2] | 0; k = c[e + 40 >> 2] | 0; h = c[(c[e >> 2] | 0) + 24 >> 2] | 0; j = c[p >> 2] | 0; g = l; while (1) { r = (g & 255) + -1 << 24 >> 24; c[h + ((b[j + ((r & 255) + k << 1) >> 1] | 0) * 12 | 0) + 8 >> 2] = m; if ((r & 255) > (f & 255)) g = g + -1 | 0; else break } a[n >> 0] = f } else f = g; a[e + 48 >> 0] = f; g = c[s + 4 >> 2] | 0; f = c[t + 64 >> 2] | 0; c[f + 28 >> 2] = g << 16 >> 16; g = g >> 16; if (!o) if ((g | 0) < (c[f + 16 >> 2] | 0)) { o = c[f + 12 >> 2] | 0; n = c[o + (g << 4) >> 2] | 0; s = c[n + 4 >> 2] | 0; r = c[t + 52 >> 2] | 0; o = c[o + (g << 4) + 8 >> 2] | 0; c[u >> 2] = n + 16; c[u + 4 >> 2] = o; lf(t, af(r, (s & 255) << 24 >> 24 == 4 & (s & 16711680 | 0) != 0 ? 4215 : 4249, u) | 0) } else { i = w; return } n = p + 16 | 0; if ((g | 0) >= (c[n >> 2] | 0)) { i = w; return } m = p + 12 | 0; do { h = c[m >> 2] | 0; l = h + (g << 4) + 12 | 0; j = b[q >> 1] | 0; f = j & 255; k = j & 255; if ((d[l >> 0] | 0) > (f & 255)) { if ((j & 65535) >= 256) { Tc(e, c[h + (g << 4) + 4 >> 2] | 0, k); f = a[q >> 0] | 0 } a[l >> 0] = f } g = ((kf(c[v >> 2] | 0, g) | 0) == 0 & 1) + g | 0 } while ((g | 0) < (c[n >> 2] | 0)); i = w; return } function jf(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; n = i; i = i + 16 | 0; l = n; h = c[b + 48 >> 2] | 0; j = c[b + 64 >> 2] | 0; m = j + 12 | 0; k = c[m >> 2] | 0; g = a[k + (e << 4) + 12 >> 0] | 0; if ((g & 255) < (d[f + 12 >> 0] | 0)) { o = c[(mf(c[(c[h >> 2] | 0) + 24 >> 2] | 0, c[c[(c[h + 12 >> 2] | 0) + 64 >> 2] >> 2] | 0, c[h + 40 >> 2] | 0, g & 255) | 0) >> 2] | 0; g = c[b + 52 >> 2] | 0; p = c[k + (e << 4) + 8 >> 2] | 0; c[l >> 2] = (c[k + (e << 4) >> 2] | 0) + 16; c[l + 4 >> 2] = p; c[l + 8 >> 2] = o + 16; lf(b, af(g, 4293, l) | 0) } Rc(h, c[k + (e << 4) + 4 >> 2] | 0, c[f + 4 >> 2] | 0); g = j + 16 | 0; b = (c[g >> 2] | 0) + -1 | 0; if ((b | 0) <= (e | 0)) { p = b; c[g >> 2] = p; i = n; return } do { p = c[m >> 2] | 0; b = p + (e << 4) | 0; e = e + 1 | 0; p = p + (e << 4) | 0; c[b >> 2] = c[p >> 2]; c[b + 4 >> 2] = c[p + 4 >> 2]; c[b + 8 >> 2] = c[p + 8 >> 2]; c[b + 12 >> 2] = c[p + 12 >> 2]; b = (c[g >> 2] | 0) + -1 | 0 } while ((e | 0) < (b | 0)); c[g >> 2] = b; i = n; return } function kf(e, f) { e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; n = e + 48 | 0; o = c[(c[n >> 2] | 0) + 16 >> 2] | 0; g = c[e + 64 >> 2] | 0; p = c[g + 12 >> 2] | 0; l = o + 4 | 0; h = b[l >> 1] | 0; m = g + 28 | 0; if ((h | 0) >= (c[m >> 2] | 0)) { q = 0; return q | 0 } j = g + 24 | 0; k = p + (f << 4) | 0; g = h; while (1) { h = c[j >> 2] | 0; i = h + (g << 4) | 0; if (Jf(c[i >> 2] | 0, c[k >> 2] | 0) | 0) break; g = g + 1 | 0; if ((g | 0) >= (c[m >> 2] | 0)) { g = 0; q = 10; break } } if ((q | 0) == 10) return g | 0; g = a[h + (g << 4) + 12 >> 0] | 0; do if ((d[p + (f << 4) + 12 >> 0] | 0) > (g & 255)) { if ((a[o + 9 >> 0] | 0) == 0 ? (c[m >> 2] | 0) <= (b[l >> 1] | 0) : 0) break; Tc(c[n >> 2] | 0, c[p + (f << 4) + 4 >> 2] | 0, g & 255) } while (0); jf(e, f, i); q = 1; return q | 0 } function lf(a, b) { a = a | 0; b = b | 0; c[a + 16 >> 2] = 0; He(a, b) } function mf(a, c, d, e) { a = a | 0; c = c | 0; d = d | 0; e = e | 0; return a + ((b[c + (e + d << 1) >> 1] | 0) * 12 | 0) | 0 } function nf(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = i; i = i + 48 | 0; f = r + 24 | 0; g = r; n = d + 48 | 0; p = c[n >> 2] | 0; Le(d); of(d, g, 0) | 0; q = d + 16 | 0; if ((c[q >> 2] | 0) != 275) ff(d, 275); Le(d); a: do switch (c[q >> 2] | 0) { case 258: case 266: { ld(c[n >> 2] | 0, g); a[f + 10 >> 0] = 0; a[f + 8 >> 0] = a[p + 46 >> 0] | 0; h = c[(c[p + 12 >> 2] | 0) + 64 >> 2] | 0; b[f + 4 >> 1] = c[h + 28 >> 2]; b[f + 6 >> 1] = c[h + 16 >> 2]; a[f + 9 >> 0] = 0; h = p + 16 | 0; c[f >> 2] = c[h >> 2]; c[h >> 2] = f; h = c[g + 16 >> 2] | 0; j = c[d + 4 >> 2] | 0; l = (c[q >> 2] | 0) == 266; Le(d); do if (l) if ((c[q >> 2] | 0) == 288) { m = c[d + 24 >> 2] | 0; Le(d); break } else ff(d, 288); else m = Nf(c[d + 52 >> 2] | 0, 4196) | 0; while (0); g = c[d + 64 >> 2] | 0; f = g + 12 | 0; k = g + 16 | 0; l = c[k >> 2] | 0; g = g + 20 | 0; if ((l | 0) < (c[g >> 2] | 0)) { f = c[f >> 2] | 0; g = l } else { g = Se(c[d + 52 >> 2] | 0, c[f >> 2] | 0, g, 16, 32767, 4202) | 0; c[f >> 2] = g; f = g; g = c[k >> 2] | 0 } c[f + (l << 4) >> 2] = m; c[f + (l << 4) + 8 >> 2] = j; a[f + (l << 4) + 12 >> 0] = a[(c[n >> 2] | 0) + 46 >> 0] | 0; c[f + (l << 4) + 4 >> 2] = h; c[k >> 2] = g + 1; kf(d, l) | 0; b: while (1) { switch (c[q >> 2] | 0) { case 286: case 262: case 261: case 260: break b; case 285: case 59: break; default: { o = 16; break b } }ef(d) } if ((o | 0) == 16) { f = Mc(p) | 0; break a } hf(p); i = r; return } default: { kd(c[n >> 2] | 0, g); a[f + 10 >> 0] = 0; a[f + 8 >> 0] = a[p + 46 >> 0] | 0; o = c[(c[p + 12 >> 2] | 0) + 64 >> 2] | 0; b[f + 4 >> 1] = c[o + 28 >> 2]; b[f + 6 >> 1] = c[o + 16 >> 2]; a[f + 9 >> 0] = 0; o = p + 16 | 0; c[f >> 2] = c[o >> 2]; c[o >> 2] = f; f = c[g + 20 >> 2] | 0 } } while (0); c: do { g = c[q >> 2] | 0; switch (g | 0) { case 277: case 286: case 262: case 261: case 260: break c; default: { } }ef(d) } while ((g | 0) != 274); hf(p); if ((c[q >> 2] & -2 | 0) == 260) Oc(p, e, Mc(p) | 0); Sc(p, f); i = r; return } function of(e, f, g) { e = e | 0; f = f | 0; g = g | 0; var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; t = i; i = i + 48 | 0; n = t + 32 | 0; m = t + 24 | 0; r = t; q = e + 48 | 0; o = c[q >> 2] | 0; s = e + 52 | 0; k = (c[s >> 2] | 0) + 38 | 0; l = (b[k >> 1] | 0) + 1 << 16 >> 16; b[k >> 1] = l; if ((l & 65535) > 200) { l = o + 12 | 0; j = c[(c[l >> 2] | 0) + 52 >> 2] | 0; k = c[(c[o >> 2] | 0) + 64 >> 2] | 0; if (!k) { v = 4381; c[n >> 2] = 4427; u = n + 4 | 0; c[u >> 2] = 200; u = n + 8 | 0; c[u >> 2] = v; u = af(j, 4395, n) | 0; v = c[l >> 2] | 0; He(v, u) } c[m >> 2] = k; u = af(j, 4361, m) | 0; c[n >> 2] = 4427; v = n + 4 | 0; c[v >> 2] = 200; v = n + 8 | 0; c[v >> 2] = u; v = af(j, 4395, n) | 0; u = c[l >> 2] | 0; He(u, v) } k = e + 16 | 0; a: do switch (c[k >> 2] | 0) { case 271: { j = 1; p = 8; break } case 45: { j = 0; p = 8; break } case 35: { j = 2; p = 8; break } case 287: { c[f + 16 >> 2] = -1; c[f + 20 >> 2] = -1; c[f >> 2] = 5; c[f + 8 >> 2] = 0; h[f + 8 >> 3] = +h[e + 24 >> 3]; p = 20; break } case 289: { p = Xc(o, c[e + 24 >> 2] | 0) | 0; c[f + 16 >> 2] = -1; c[f + 20 >> 2] = -1; c[f >> 2] = 4; c[f + 8 >> 2] = p; p = 20; break } case 270: { c[f + 16 >> 2] = -1; c[f + 20 >> 2] = -1; c[f >> 2] = 1; c[f + 8 >> 2] = 0; p = 20; break } case 276: { c[f + 16 >> 2] = -1; c[f + 20 >> 2] = -1; c[f >> 2] = 2; c[f + 8 >> 2] = 0; p = 20; break } case 263: { c[f + 16 >> 2] = -1; c[f + 20 >> 2] = -1; c[f >> 2] = 3; c[f + 8 >> 2] = 0; p = 20; break } case 280: { if (!(a[(c[o >> 2] | 0) + 77 >> 0] | 0)) He(e, 4747); else { p = Lc(o, 38, 0, 1, 0) | 0; c[f + 16 >> 2] = -1; c[f + 20 >> 2] = -1; c[f >> 2] = 13; c[f + 8 >> 2] = p; p = 20; break a } break } case 123: { xf(e, f); break } case 265: { Le(e); tf(e, f, 0, c[e + 4 >> 2] | 0); break } default: uf(e, f) } while (0); if ((p | 0) == 8) { v = c[e + 4 >> 2] | 0; Le(e); of(e, f, 8) | 0; nd(c[q >> 2] | 0, j, f, v) } else if ((p | 0) == 20) Le(e); do switch (c[k >> 2] | 0) { case 43: { j = 0; break } case 45: { j = 1; break } case 42: { j = 2; break } case 47: { j = 3; break } case 37: { j = 4; break } case 94: { j = 5; break } case 279: { j = 6; break } case 284: { j = 10; break } case 281: { j = 7; break } case 60: { j = 8; break } case 283: { j = 9; break } case 62: { j = 11; break } case 282: { j = 12; break } case 257: { j = 13; break } case 272: { j = 14; break } default: { v = 15; u = c[s >> 2] | 0; u = u + 38 | 0; s = b[u >> 1] | 0; s = s + -1 << 16 >> 16; b[u >> 1] = s; i = t; return v | 0 } } while (0); k = e + 4 | 0; while (1) { if ((d[4790 + (j << 1) >> 0] | 0) <= (g | 0)) { p = 39; break } v = c[k >> 2] | 0; Le(e); pd(c[q >> 2] | 0, j, f); u = j; j = of(e, r, d[4790 + (j << 1) + 1 >> 0] | 0) | 0; qd(c[q >> 2] | 0, u, f, r, v); if ((j | 0) == 15) { j = 15; p = 39; break } } if ((p | 0) == 39) { v = c[s >> 2] | 0; v = v + 38 | 0; u = b[v >> 1] | 0; u = u + -1 << 16 >> 16; b[v >> 1] = u; i = t; return j | 0 } return 0 } function pf(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = i; i = i + 32 | 0; o = q + 8 | 0; n = q; m = c[d + 48 >> 2] | 0; p = c[d + 64 >> 2] | 0; k = c[m >> 2] | 0; f = k + 60 | 0; h = c[f >> 2] | 0; l = m + 44 | 0; if ((b[l >> 1] | 0) < (h | 0)) { g = h; j = c[k + 24 >> 2] | 0 } else { g = k + 24 | 0; j = Se(c[d + 52 >> 2] | 0, c[g >> 2] | 0, f, 12, 32767, 4731) | 0; c[g >> 2] = j; g = c[f >> 2] | 0 } if ((h | 0) < (g | 0)) { f = h; do { c[j + (f * 12 | 0) >> 2] = 0; f = f + 1 | 0 } while ((f | 0) != (g | 0)) } f = b[l >> 1] | 0; c[j + ((f << 16 >> 16) * 12 | 0) >> 2] = e; if ((a[e + 5 >> 0] & 3) != 0 ? (a[k + 5 >> 0] & 4) != 0 : 0) { je(c[d + 52 >> 2] | 0, k, e); k = b[l >> 1] | 0 } else k = f; b[l >> 1] = k + 1 << 16 >> 16; j = p + 4 | 0; e = c[j >> 2] | 0; if ((e + 1 - (c[m + 40 >> 2] | 0) | 0) > 200) { g = m + 12 | 0; h = c[(c[g >> 2] | 0) + 52 >> 2] | 0; f = c[(c[m >> 2] | 0) + 64 >> 2] | 0; if (!f) { l = 4381; c[o >> 2] = 4731; m = o + 4 | 0; c[m >> 2] = 200; m = o + 8 | 0; c[m >> 2] = l; m = af(h, 4395, o) | 0; l = c[g >> 2] | 0; He(l, m) } c[n >> 2] = f; m = af(h, 4361, n) | 0; c[o >> 2] = 4731; n = o + 4 | 0; c[n >> 2] = 200; n = o + 8 | 0; c[n >> 2] = m; o = af(h, 4395, o) | 0; n = c[g >> 2] | 0; He(n, o) } f = p + 8 | 0; if ((e + 2 | 0) > (c[f >> 2] | 0)) { d = Se(c[d + 52 >> 2] | 0, c[p >> 2] | 0, f, 2, 2147483645, 4731) | 0; c[p >> 2] = d; p = c[j >> 2] | 0; o = p + 1 | 0; c[j >> 2] = o; p = d + (p << 1) | 0; b[p >> 1] = k; i = q; return } else { d = e; p = c[p >> 2] | 0; o = d + 1 | 0; c[j >> 2] = o; p = p + (d << 1) | 0; b[p >> 1] = k; i = q; return } } function qf(e, f, g, h, j) { e = e | 0; f = f | 0; g = g | 0; h = h | 0; j = j | 0; var k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = i; i = i + 32 | 0; q = u + 12 | 0; l = u; o = e + 48 | 0; t = c[o >> 2] | 0; m = t + 46 | 0; s = (d[m >> 0] | 0) + 3 | 0; a[m >> 0] = s; n = c[t + 20 >> 2] | 0; k = t + 12 | 0; p = c[(c[t >> 2] | 0) + 24 >> 2] | 0; r = c[c[(c[k >> 2] | 0) + 64 >> 2] >> 2] | 0; s = (c[t + 40 >> 2] | 0) + (s & 255) | 0; c[p + ((b[r + (s + -3 << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = n; c[p + ((b[r + (s + -2 << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = n; c[p + ((b[r + (s + -1 << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = n; s = e + 16 | 0; if ((c[s >> 2] | 0) != 259) ff(e, 259); Le(e); p = (j | 0) != 0; if (p) r = Nc(t, 33, f, 131070) | 0; else r = Mc(t) | 0; a[l + 10 >> 0] = 0; a[l + 8 >> 0] = a[m >> 0] | 0; j = c[(c[k >> 2] | 0) + 64 >> 2] | 0; b[l + 4 >> 1] = c[j + 28 >> 2]; b[l + 6 >> 1] = c[j + 16 >> 2]; a[l + 9 >> 0] = 0; j = t + 16 | 0; c[l >> 2] = c[j >> 2]; c[j >> 2] = l; j = c[o >> 2] | 0; n = j + 46 | 0; k = (d[n >> 0] | 0) + h | 0; a[n >> 0] = k; if (h | 0) { n = c[j + 20 >> 2] | 0; l = c[(c[j >> 2] | 0) + 24 >> 2] | 0; m = c[c[(c[j + 12 >> 2] | 0) + 64 >> 2] >> 2] | 0; k = (c[j + 40 >> 2] | 0) + (k & 255) | 0; j = h; do { c[l + ((b[m + (k - j << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = n; j = j + -1 | 0 } while ((j | 0) != 0) } Wc(t, h); k = c[o >> 2] | 0; a[q + 10 >> 0] = 0; a[q + 8 >> 0] = a[k + 46 >> 0] | 0; o = c[(c[k + 12 >> 2] | 0) + 64 >> 2] | 0; b[q + 4 >> 1] = c[o + 28 >> 2]; b[q + 6 >> 1] = c[o + 16 >> 2]; a[q + 9 >> 0] = 0; o = k + 16 | 0; c[q >> 2] = c[o >> 2]; c[o >> 2] = q; a: do { j = c[s >> 2] | 0; switch (j | 0) { case 277: case 286: case 262: case 261: case 260: break a; default: { } }ef(e) } while ((j | 0) != 274); hf(k); hf(t); Sc(t, r); if (p) { h = Nc(t, 32, f, 131070) | 0; s = r + 1 | 0; Rc(t, h, s); sd(t, g); i = u; return } else { Lc(t, 34, f, 0, h) | 0; sd(t, g); h = Nc(t, 35, f + 2 | 0, 131070) | 0; s = r + 1 | 0; Rc(t, h, s); sd(t, g); i = u; return } } function rf(e, f, g, h) { e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, l = 0, m = 0, n = 0; if (!e) { n = 0; return n | 0 } k = e + 12 | 0; l = e + 40 | 0; m = d[e + 46 >> 0] | 0; while (1) { i = m + -1 | 0; j = c[e >> 2] | 0; if ((m | 0) <= 0) break; if (!(Jf(f, c[(c[j + 24 >> 2] | 0) + ((b[(c[c[(c[k >> 2] | 0) + 64 >> 2] >> 2] | 0) + ((c[l >> 2] | 0) + i << 1) >> 1] | 0) * 12 | 0) >> 2] | 0) | 0)) m = i; else { n = 5; break } } if ((n | 0) == 5) { c[g + 16 >> 2] = -1; c[g + 20 >> 2] = -1; c[g >> 2] = 7; c[g + 8 >> 2] = i; if (h | 0) { n = 7; return n | 0 } i = e + 16 | 0; do i = c[i >> 2] | 0; while ((d[i + 8 >> 0] | 0) >= (m | 0)); a[i + 9 >> 0] = 1; n = 7; return n | 0 } j = c[j + 28 >> 2] | 0; k = e + 47 | 0; a: do if (a[k >> 0] | 0) { i = 0; while (1) { if (Jf(c[j + (i << 3) >> 2] | 0, f) | 0) break; i = i + 1 | 0; if ((i | 0) >= (d[k >> 0] | 0)) { n = 13; break a } } if ((i | 0) < 0) n = 13 } else n = 13; while (0); do if ((n | 0) == 13) if (!(rf(c[e + 8 >> 2] | 0, f, g, 0) | 0)) { n = 0; return n | 0 } else { i = df(e, f, g) | 0; break } while (0); c[g + 16 >> 2] = -1; c[g + 20 >> 2] = -1; c[g >> 2] = 8; c[g + 8 >> 2] = i; n = 8; return n | 0 } function sf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = i; i = i + 32 | 0; d = g; e = a + 48 | 0; f = c[e >> 2] | 0; fd(f, b); Le(a); if ((c[a + 16 >> 2] | 0) == 288) { h = c[a + 24 >> 2] | 0; Le(a); e = Xc(c[e >> 2] | 0, h) | 0; c[d + 16 >> 2] = -1; c[d + 20 >> 2] = -1; c[d >> 2] = 4; c[d + 8 >> 2] = e; md(f, b, d); i = g; return } else ff(a, 288) } function tf(e, f, g, h) { e = e | 0; f = f | 0; g = g | 0; h = h | 0; var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0; z = i; i = i + 80 | 0; y = z; x = z + 24 | 0; s = z + 12 | 0; v = e + 48 | 0; r = c[v >> 2] | 0; w = e + 52 | 0; o = c[w >> 2] | 0; q = c[r >> 2] | 0; r = r + 36 | 0; m = q + 56 | 0; k = c[m >> 2] | 0; p = q + 16 | 0; if (((c[r >> 2] | 0) >= (k | 0) ? (l = Se(o, c[p >> 2] | 0, m, 4, 262143, 4691) | 0, c[p >> 2] = l, n = c[m >> 2] | 0, (k | 0) < (n | 0)) : 0) ? (j = k + 1 | 0, c[l + (k << 2) >> 2] = 0, (j | 0) < (n | 0)) : 0) do { c[(c[p >> 2] | 0) + (j << 2) >> 2] = 0; j = j + 1 | 0 } while ((j | 0) != (n | 0)); m = ge(o) | 0; n = c[r >> 2] | 0; c[r >> 2] = n + 1; c[(c[p >> 2] | 0) + (n << 2) >> 2] = m; if (a[m + 5 >> 0] & 3 ? a[q + 5 >> 0] & 4 : 0) je(o, q, m); c[x >> 2] = m; c[m + 64 >> 2] = h; j = c[w >> 2] | 0; c[x + 8 >> 2] = c[v >> 2]; k = x + 12 | 0; c[k >> 2] = e; c[v >> 2] = x; c[x + 20 >> 2] = 0; c[x + 24 >> 2] = 0; c[x + 28 >> 2] = -1; c[x + 32 >> 2] = 0; c[x + 36 >> 2] = 0; l = x + 44 | 0; c[l >> 2] = 0; a[l + 4 >> 0] = 0; c[x + 40 >> 2] = c[(c[e + 64 >> 2] | 0) + 4 >> 2]; l = x + 16 | 0; c[l >> 2] = 0; c[m + 36 >> 2] = c[e + 68 >> 2]; a[m + 78 >> 0] = 2; p = Xf(j) | 0; c[x + 4 >> 2] = p; q = j + 8 | 0; r = c[q >> 2] | 0; c[r >> 2] = p; c[r + 8 >> 2] = 69; r = (c[q >> 2] | 0) + 16 | 0; c[q >> 2] = r; if (((c[j + 24 >> 2] | 0) - r | 0) < 16) Td(j, 0); a[s + 10 >> 0] = 0; a[s + 8 >> 0] = a[x + 46 >> 0] | 0; q = c[(c[k >> 2] | 0) + 64 >> 2] | 0; b[s + 4 >> 1] = c[q + 28 >> 2]; b[s + 6 >> 1] = c[q + 16 >> 2]; a[s + 9 >> 0] = 0; c[s >> 2] = c[l >> 2]; c[l >> 2] = s; q = e + 16 | 0; if ((c[q >> 2] | 0) != 40) ff(e, 40); Le(e); if (!g) { p = c[v >> 2] | 0; o = c[p >> 2] | 0 } else { pf(e, Je(e, 4701, 4) | 0); p = c[v >> 2] | 0; o = p + 46 | 0; g = (d[o >> 0] | 0) + 1 | 0; a[o >> 0] = g; o = c[p >> 2] | 0; c[(c[o + 24 >> 2] | 0) + ((b[(c[c[(c[p + 12 >> 2] | 0) + 64 >> 2] >> 2] | 0) + ((c[p + 40 >> 2] | 0) + (g & 255) + -1 << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = c[p + 20 >> 2] } l = o + 77 | 0; a[l >> 0] = 0; k = c[q >> 2] | 0; a: do if ((k | 0) != 41) { m = e + 24 | 0; j = 0; b: while (1) { switch (k | 0) { case 280: { u = 19; break b } case 288: break; default: { u = 20; break b } }g = c[m >> 2] | 0; Le(e); pf(e, g); j = j + 1 | 0; if (a[l >> 0] | 0) { t = j; break a } if ((c[q >> 2] | 0) != 44) { t = j; break a } Le(e); k = c[q >> 2] | 0 } if ((u | 0) == 19) { Le(e); a[l >> 0] = 1; t = j; break } else if ((u | 0) == 20) He(e, 4706) } else t = 0; while (0); j = c[v >> 2] | 0; g = j + 46 | 0; k = (d[g >> 0] | 0) + t | 0; a[g >> 0] = k; if (t | 0) { n = c[j + 20 >> 2] | 0; l = c[(c[j >> 2] | 0) + 24 >> 2] | 0; m = c[c[(c[j + 12 >> 2] | 0) + 64 >> 2] >> 2] | 0; k = (c[j + 40 >> 2] | 0) + (k & 255) | 0; j = t; do { c[l + ((b[m + (k - j << 1) >> 1] | 0) * 12 | 0) + 4 >> 2] = n; j = j + -1 | 0 } while ((j | 0) != 0) } t = a[p + 46 >> 0] | 0; a[o + 76 >> 0] = t; Wc(p, t & 255); if ((c[q >> 2] | 0) != 41) ff(e, 41); Le(e); c: while (1) { j = c[q >> 2] | 0; switch (j | 0) { case 277: case 286: case 262: case 261: case 260: { k = j; break c } default: { } }ef(e); if ((j | 0) == 274) { u = 31; break } } if ((u | 0) == 31) k = c[q >> 2] | 0; j = c[e + 4 >> 2] | 0; c[(c[x >> 2] | 0) + 68 >> 2] = j; if ((k | 0) == 262) { Le(e); y = c[(c[v >> 2] | 0) + 8 >> 2] | 0; x = Nc(y, 37, 0, (c[y + 36 >> 2] | 0) + -1 | 0) | 0; c[f + 16 >> 2] = -1; c[f + 20 >> 2] = -1; c[f >> 2] = 11; c[f + 8 >> 2] = x; bd(y, f); gf(e); i = z; return } if ((j | 0) == (h | 0)) ff(e, 262); else { z = c[w >> 2] | 0; f = Ge(e, 262) | 0; x = Ge(e, 265) | 0; c[y >> 2] = f; c[y + 4 >> 2] = x; c[y + 8 >> 2] = h; He(e, af(z, 4436, y) | 0) } } function uf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; n = i; i = i + 48 | 0; f = n + 24 | 0; h = n; j = a + 48 | 0; k = c[j >> 2] | 0; e = a + 4 | 0; l = c[e >> 2] | 0; m = a + 16 | 0; a: do switch (c[m >> 2] | 0) { case 40: { Le(a); of(a, b, 0) | 0; if ((c[m >> 2] | 0) == 41) { Le(a); ad(c[j >> 2] | 0, b); d = a + 24 | 0; break a } if ((c[e >> 2] | 0) == (l | 0)) ff(a, 41); else { g = c[a + 52 >> 2] | 0; o = Ge(a, 41) | 0; e = Ge(a, 40) | 0; c[f >> 2] = o; c[f + 4 >> 2] = e; c[f + 8 >> 2] = l; He(a, af(g, 4436, f) | 0) } break } case 288: { d = a + 24 | 0; e = c[d >> 2] | 0; Le(a); f = c[j >> 2] | 0; if (!(rf(f, e, b, 1) | 0)) { rf(f, c[a + 72 >> 2] | 0, b, 1) | 0; o = Xc(c[j >> 2] | 0, e) | 0; c[h + 16 >> 2] = -1; c[h + 20 >> 2] = -1; c[h >> 2] = 4; c[h + 8 >> 2] = o; md(f, b, h) } break } default: He(a, 4622) } while (0); e = h + 16 | 0; f = h + 20 | 0; g = h + 8 | 0; b: while (1) switch (c[m >> 2] | 0) { case 46: { sf(a, b); continue b } case 91: { fd(k, b); Le(a); of(a, h, 0) | 0; gd(c[j >> 2] | 0, h); if ((c[m >> 2] | 0) != 93) { d = 14; break b } Le(a); md(k, b, h); continue b } case 58: { Le(a); if ((c[m >> 2] | 0) != 288) { d = 17; break b } o = c[d >> 2] | 0; Le(a); o = Xc(c[j >> 2] | 0, o) | 0; c[e >> 2] = -1; c[f >> 2] = -1; c[h >> 2] = 4; c[g >> 2] = o; jd(k, b, h); wf(a, b, l); continue b } case 123: case 289: case 40: { bd(k, b); wf(a, b, l); continue b } default: { d = 20; break b } }if ((d | 0) == 14) ff(a, 93); else if ((d | 0) == 17) ff(a, 288); else if ((d | 0) == 20) { i = n; return } } function vf(f, g, h) { f = f | 0; g = g | 0; h = h | 0; var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0; F = i; i = i + 80 | 0; B = F + 64 | 0; A = F + 56 | 0; D = F + 32 | 0; z = F; E = g + 8 | 0; if (((c[E >> 2] | 0) + -7 | 0) >>> 0 >= 3) He(f, 4609); k = f + 16 | 0; a: do switch (c[k >> 2] | 0) { case 44: { Le(f); c[z >> 2] = g; l = z + 8 | 0; uf(f, l); l = c[l >> 2] | 0; y = f + 48 | 0; if ((l | 0) != 9) { u = c[y >> 2] | 0; s = a[u + 48 >> 0] | 0; v = s & 255; w = z + 16 | 0; n = s & 255; t = c[w >> 2] | 0; x = (l | 0) == 7; if (x) { j = 0; do { if ((c[g + 8 >> 2] | 0) == 9) { l = g + 16 | 0; k = l + 3 | 0; if ((a[k >> 0] | 0) == 7 ? (r = l + 2 | 0, (d[r >> 0] | 0) == (t | 0)) : 0) { a[k >> 0] = 7; a[r >> 0] = s; j = 1 } if ((b[l >> 1] | 0) == (t | 0)) { b[l >> 1] = n; j = 1 } } g = c[g >> 2] | 0 } while ((g | 0) != 0) } else { k = g; j = 0; do { if (((c[k + 8 >> 2] | 0) == 9 ? (o = k + 16 | 0, p = o + 3 | 0, (d[p >> 0] | 0) == (l | 0)) : 0) ? (q = o + 2 | 0, (d[q >> 0] | 0) == (t | 0)) : 0) { a[p >> 0] = 7; a[q >> 0] = s; j = 1 } k = c[k >> 2] | 0 } while ((k | 0) != 0) } if (j | 0) { Lc(u, x ? 0 : 5, v, c[w >> 2] | 0, 0) | 0; Wc(u, 1) } } j = c[y >> 2] | 0; if (((e[(c[f + 52 >> 2] | 0) + 38 >> 1] | 0) + h | 0) <= 200) { vf(f, z, h + 1 | 0); C = D; m = y; break a } k = j + 12 | 0; l = c[(c[k >> 2] | 0) + 52 >> 2] | 0; j = c[(c[j >> 2] | 0) + 64 >> 2] | 0; if (!j) { f = 4381; c[B >> 2] = 4427; h = B + 4 | 0; c[h >> 2] = 200; h = B + 8 | 0; c[h >> 2] = f; h = af(l, 4395, B) | 0; f = c[k >> 2] | 0; He(f, h) } c[A >> 2] = j; A = af(l, 4361, A) | 0; c[B >> 2] = 4427; h = B + 4 | 0; c[h >> 2] = 200; h = B + 8 | 0; c[h >> 2] = A; h = af(l, 4395, B) | 0; B = c[k >> 2] | 0; He(B, h); break } case 61: { Le(f); of(f, D, 0) | 0; m = f + 48 | 0; if ((c[k >> 2] | 0) == 44) { j = 1; do { Le(f); bd(c[m >> 2] | 0, D); of(f, D, 0) | 0; j = j + 1 | 0 } while ((c[k >> 2] | 0) == 44) } else j = 1; l = c[m >> 2] | 0; if ((j | 0) == (h | 0)) { $c(l, D); id(c[m >> 2] | 0, E, D); i = F; return } g = h - j | 0; switch (c[D >> 2] | 0) { case 13: case 12: { k = g + 1 | 0; k = (k | 0) < 0 ? 0 : k; _c(l, D, k); if ((k | 0) > 1) Wc(l, k + -1 | 0); break } case 0: { n = 33; break } default: { bd(l, D); n = 33 } }if ((n | 0) == 33 ? (g | 0) > 0 : 0) { C = d[l + 48 >> 0] | 0; Wc(l, g); Jc(l, C, g) } if ((j | 0) > (h | 0)) { C = (c[m >> 2] | 0) + 48 | 0; a[C >> 0] = (d[C >> 0] | 0) + g; C = D } else C = D; break } default: ff(f, 61) } while (0); h = c[m >> 2] | 0; B = (d[h + 48 >> 0] | 0) + -1 | 0; c[D + 16 >> 2] = -1; c[D + 20 >> 2] = -1; c[C >> 2] = 6; c[D + 8 >> 2] = B; id(h, E, D); i = F; return } function wf(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; m = i; i = i + 48 | 0; j = m + 24 | 0; k = m; g = b + 48 | 0; l = c[g >> 2] | 0; h = b + 16 | 0; switch (c[h >> 2] | 0) { case 40: { Le(b); if ((c[h >> 2] | 0) != 41) { of(b, k, 0) | 0; if ((c[h >> 2] | 0) == 44) do { Le(b); bd(c[g >> 2] | 0, k); of(b, k, 0) | 0 } while ((c[h >> 2] | 0) == 44); _c(l, k, -1); if ((c[h >> 2] | 0) != 41) if ((c[b + 4 >> 2] | 0) == (f | 0)) ff(b, 41); else { h = c[b + 52 >> 2] | 0; n = Ge(b, 41) | 0; g = Ge(b, 40) | 0; c[j >> 2] = n; c[j + 4 >> 2] = g; c[j + 8 >> 2] = f; He(b, af(h, 4436, j) | 0) } } else c[k >> 2] = 0; Le(b); break } case 123: { xf(b, k); break } case 289: { n = Xc(l, c[b + 24 >> 2] | 0) | 0; c[k + 16 >> 2] = -1; c[k + 20 >> 2] = -1; c[k >> 2] = 4; c[k + 8 >> 2] = n; Le(b); break } default: He(b, 4640) }b = e + 8 | 0; g = c[b >> 2] | 0; switch (c[k >> 2] | 0) { case 0: break; case 13: case 12: { k = 0; k = Lc(l, 29, g, k, 2) | 0; n = e + 16 | 0; c[n >> 2] = -1; n = e + 20 | 0; c[n >> 2] = -1; c[e >> 2] = 12; c[b >> 2] = k; sd(l, f); k = g + 1 | 0; k = k & 255; n = l + 48 | 0; a[n >> 0] = k; i = m; return } default: bd(l, k) }k = (d[l + 48 >> 0] | 0) - g | 0; k = Lc(l, 29, g, k, 2) | 0; n = e + 16 | 0; c[n >> 2] = -1; n = e + 20 | 0; c[n >> 2] = -1; c[e >> 2] = 12; c[b >> 2] = k; sd(l, f); k = g + 1 | 0; k = k & 255; n = l + 48 | 0; a[n >> 0] = k; i = m; return } function xf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; v = i; i = i + 112 | 0; j = v + 88 | 0; n = v + 72 | 0; m = v + 64 | 0; l = v + 48 | 0; k = v + 40 | 0; o = v; e = a + 48 | 0; s = c[e >> 2] | 0; g = a + 4 | 0; h = c[g >> 2] | 0; t = Lc(s, 11, 0, 0, 0) | 0; p = o + 36 | 0; c[p >> 2] = 0; u = o + 28 | 0; c[u >> 2] = 0; q = o + 32 | 0; c[q >> 2] = 0; r = o + 24 | 0; c[r >> 2] = b; c[b + 16 >> 2] = -1; c[b + 20 >> 2] = -1; c[b >> 2] = 11; c[b + 8 >> 2] = t; c[o + 16 >> 2] = -1; c[o + 20 >> 2] = -1; c[o >> 2] = 0; c[o + 8 >> 2] = 0; bd(c[e >> 2] | 0, b); d = a + 16 | 0; if ((c[d >> 2] | 0) != 123) ff(a, 123); Le(a); a: do if ((c[d >> 2] | 0) != 125) { b = 0; b: while (1) { if (b | 0 ? (bd(s, o), c[o >> 2] = 0, (c[p >> 2] | 0) == 50) : 0) { td(s, c[(c[r >> 2] | 0) + 8 >> 2] | 0, c[q >> 2] | 0, 50); c[p >> 2] = 0 } c: do switch (c[d >> 2] | 0) { case 288: { if ((Re(a) | 0) == 61) { yf(a, o); break c } of(a, o, 0) | 0; f = c[e >> 2] | 0; b = c[q >> 2] | 0; if ((b | 0) > 2147483645) { b = 10; break b } c[q >> 2] = b + 1; c[p >> 2] = (c[p >> 2] | 0) + 1; break } case 91: { yf(a, o); break } default: { of(a, o, 0) | 0; f = c[e >> 2] | 0; b = c[q >> 2] | 0; if ((b | 0) > 2147483645) { b = 17; break b } c[q >> 2] = b + 1; c[p >> 2] = (c[p >> 2] | 0) + 1 } } while (0); switch (c[d >> 2] | 0) { case 125: break a; case 44: { Le(a); break } case 59: { Le(a); break } default: { b = 26; break b } }if ((c[d >> 2] | 0) == 125) break a; b = c[o >> 2] | 0 } if ((b | 0) == 10) { d = f + 12 | 0; e = c[(c[d >> 2] | 0) + 52 >> 2] | 0; b = c[(c[f >> 2] | 0) + 64 >> 2] | 0; if (!b) { m = 4381; c[l >> 2] = 4668; n = l + 4 | 0; c[n >> 2] = 2147483645; n = l + 8 | 0; c[n >> 2] = m; n = af(e, 4395, l) | 0; m = c[d >> 2] | 0; He(m, n) } c[k >> 2] = b; m = af(e, 4361, k) | 0; c[l >> 2] = 4668; n = l + 4 | 0; c[n >> 2] = 2147483645; n = l + 8 | 0; c[n >> 2] = m; n = af(e, 4395, l) | 0; m = c[d >> 2] | 0; He(m, n) } else if ((b | 0) == 17) { d = f + 12 | 0; e = c[(c[d >> 2] | 0) + 52 >> 2] | 0; b = c[(c[f >> 2] | 0) + 64 >> 2] | 0; if (!b) { k = 4381; c[n >> 2] = 4668; l = n + 4 | 0; c[l >> 2] = 2147483645; l = n + 8 | 0; c[l >> 2] = k; l = af(e, 4395, n) | 0; k = c[d >> 2] | 0; He(k, l) } c[m >> 2] = b; l = af(e, 4361, m) | 0; c[n >> 2] = 4668; m = n + 4 | 0; c[m >> 2] = 2147483645; m = n + 8 | 0; c[m >> 2] = l; n = af(e, 4395, n) | 0; m = c[d >> 2] | 0; He(m, n) } else if ((b | 0) == 26) if ((c[g >> 2] | 0) == (h | 0)) ff(a, 125); else { n = c[a + 52 >> 2] | 0; l = Ge(a, 125) | 0; m = Ge(a, 123) | 0; c[j >> 2] = l; c[j + 4 >> 2] = m; c[j + 8 >> 2] = h; He(a, af(n, 4436, j) | 0) } } while (0); Le(a); b = c[p >> 2] | 0; d: do if (b | 0) { switch (c[o >> 2] | 0) { case 13: case 12: { _c(s, o, -1); td(s, c[(c[r >> 2] | 0) + 8 >> 2] | 0, c[q >> 2] | 0, -1); c[q >> 2] = (c[q >> 2] | 0) + -1; break d } case 0: break; default: { bd(s, o); b = c[p >> 2] | 0 } }td(s, c[(c[r >> 2] | 0) + 8 >> 2] | 0, c[q >> 2] | 0, b) } while (0); r = c[(c[(c[s >> 2] | 0) + 12 >> 2] | 0) + (t << 2) >> 2] & 8388607; r = (Ve(c[q >> 2] | 0) | 0) << 23 | r; c[(c[(c[s >> 2] | 0) + 12 >> 2] | 0) + (t << 2) >> 2] = r; u = (Ve(c[u >> 2] | 0) | 0) << 14 & 8372224 | r & -8372225; c[(c[(c[s >> 2] | 0) + 12 >> 2] | 0) + (t << 2) >> 2] = u; i = v; return } function yf(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; r = i; i = i + 80 | 0; q = r + 56 | 0; p = r + 48 | 0; j = r + 24 | 0; k = r; f = b + 48 | 0; l = c[f >> 2] | 0; m = l + 48 | 0; n = a[m >> 0] | 0; o = b + 16 | 0; do if ((c[o >> 2] | 0) != 288) { Le(b); of(b, j, 0) | 0; gd(c[f >> 2] | 0, j); if ((c[o >> 2] | 0) == 93) { Le(b); h = d + 28 | 0; break } else ff(b, 93) } else { e = d + 28 | 0; if ((c[e >> 2] | 0) <= 2147483645) { h = c[b + 24 >> 2] | 0; Le(b); h = Xc(c[f >> 2] | 0, h) | 0; c[j + 16 >> 2] = -1; c[j + 20 >> 2] = -1; c[j >> 2] = 4; c[j + 8 >> 2] = h; h = e; break } e = l + 12 | 0; f = c[(c[e >> 2] | 0) + 52 >> 2] | 0; g = c[(c[l >> 2] | 0) + 64 >> 2] | 0; if (!g) { t = 4381; c[q >> 2] = 4668; s = q + 4 | 0; c[s >> 2] = 2147483645; s = q + 8 | 0; c[s >> 2] = t; s = af(f, 4395, q) | 0; t = c[e >> 2] | 0; He(t, s) } c[p >> 2] = g; s = af(f, 4361, p) | 0; c[q >> 2] = 4668; t = q + 4 | 0; c[t >> 2] = 2147483645; t = q + 8 | 0; c[t >> 2] = s; t = af(f, 4395, q) | 0; s = c[e >> 2] | 0; He(s, t) } while (0); c[h >> 2] = (c[h >> 2] | 0) + 1; if ((c[o >> 2] | 0) == 61) { Le(b); t = hd(l, j) | 0; of(b, k, 0) | 0; s = c[(c[d + 24 >> 2] | 0) + 8 >> 2] | 0; Lc(l, 10, s, t, hd(l, k) | 0) | 0; a[m >> 0] = n; i = r; return } else ff(b, 61) } function zf(a) { a = a | 0; Df(c[(c[a + 12 >> 2] | 0) + 172 >> 2] | 0); return } function Af(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0; j = i; i = i + 32 | 0; f = j + 8 | 0; g = j; h = ab[d & 31](e, 0, 8, 400) | 0; if (!h) { h = 0; i = j; return h | 0 } k = h + 112 | 0; c[h >> 2] = 0; a[h + 4 >> 0] = 8; a[h + 172 >> 0] = 33; a[h + 5 >> 0] = 1; a[h + 174 >> 0] = 0; c[h + 12 >> 2] = k; c[h + 28 >> 2] = 0; c[h + 16 >> 2] = 0; c[h + 32 >> 2] = 0; c[h + 64 >> 2] = 0; b[h + 38 >> 1] = 0; c[h + 52 >> 2] = 0; a[h + 40 >> 0] = 0; c[h + 44 >> 2] = 0; a[h + 41 >> 0] = 1; c[h + 48 >> 2] = 0; c[h + 56 >> 2] = 0; b[h + 36 >> 1] = 1; a[h + 6 >> 0] = 0; c[h + 68 >> 2] = 0; c[k >> 2] = d; c[h + 116 >> 2] = e; c[h + 284 >> 2] = h; d = Ra(0) | 0; c[g >> 2] = d; c[f >> 2] = h; c[f + 4 >> 2] = g; c[f + 8 >> 2] = 12936; c[f + 12 >> 2] = 18; c[h + 168 >> 2] = Kf(f, 16, d) | 0; d = h + 224 | 0; c[h + 240 >> 2] = d; c[h + 244 >> 2] = d; a[h + 175 >> 0] = 0; d = h + 132 | 0; c[h + 160 >> 2] = 0; c[h + 256 >> 2] = 0; c[h + 264 >> 2] = 0; c[h + 280 >> 2] = 0; c[h + 288 >> 2] = 0; c[d >> 2] = 0; c[d + 4 >> 2] = 0; c[d + 8 >> 2] = 0; c[d + 12 >> 2] = 0; a[h + 173 >> 0] = 5; d = h + 120 | 0; e = h + 180 | 0; f = e + 40 | 0; do { c[e >> 2] = 0; e = e + 4 | 0 } while ((e | 0) < (f | 0)); c[d >> 2] = 400; c[h + 124 >> 2] = 0; c[h + 268 >> 2] = 200; c[h + 272 >> 2] = 200; c[h + 276 >> 2] = 200; e = h + 364 | 0; f = e + 36 | 0; do { c[e >> 2] = 0; e = e + 4 | 0 } while ((e | 0) < (f | 0)); if (!(Nd(h, 24, 0) | 0)) { k = h; i = j; return k | 0 } Df(h); k = 0; i = j; return k | 0 } function Bf(d) { d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; e = d + 12 | 0; if ((c[(c[e >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(d); f = oe(d, 8, 112, 0, 0) | 0; i = d + 8 | 0; h = c[i >> 2] | 0; c[h >> 2] = f; c[h + 8 >> 2] = 72; c[i >> 2] = (c[i >> 2] | 0) + 16; c[f + 12 >> 2] = c[e >> 2]; i = f + 28 | 0; c[i >> 2] = 0; e = f + 16 | 0; c[e >> 2] = 0; h = f + 32 | 0; c[h >> 2] = 0; c[f + 64 >> 2] = 0; b[f + 38 >> 1] = 0; j = f + 52 | 0; c[j >> 2] = 0; g = f + 40 | 0; a[g >> 0] = 0; k = f + 44 | 0; c[k >> 2] = 0; a[f + 41 >> 0] = 1; c[f + 56 >> 2] = 0; b[f + 36 >> 1] = 1; a[f + 6 >> 0] = 0; c[f + 68 >> 2] = 0; a[g >> 0] = a[d + 40 >> 0] | 0; g = c[d + 44 >> 2] | 0; c[k >> 2] = g; c[j >> 2] = c[d + 52 >> 2]; c[f + 48 >> 2] = g; g = Ue(d, 0, 0, 640) | 0; c[i >> 2] = g; c[h >> 2] = 40; h = g + 8 | 0; c[h >> 2] = 0; c[g + 24 >> 2] = 0; c[g + 40 >> 2] = 0; c[g + 56 >> 2] = 0; c[g + 72 >> 2] = 0; c[g + 88 >> 2] = 0; c[g + 104 >> 2] = 0; c[g + 120 >> 2] = 0; c[g + 136 >> 2] = 0; c[g + 152 >> 2] = 0; c[g + 168 >> 2] = 0; c[g + 184 >> 2] = 0; c[g + 200 >> 2] = 0; c[g + 216 >> 2] = 0; c[g + 232 >> 2] = 0; c[g + 248 >> 2] = 0; c[g + 264 >> 2] = 0; c[g + 280 >> 2] = 0; c[g + 296 >> 2] = 0; c[g + 312 >> 2] = 0; c[g + 328 >> 2] = 0; c[g + 344 >> 2] = 0; c[g + 360 >> 2] = 0; c[g + 376 >> 2] = 0; c[g + 392 >> 2] = 0; c[g + 408 >> 2] = 0; c[g + 424 >> 2] = 0; c[g + 440 >> 2] = 0; c[g + 456 >> 2] = 0; c[g + 472 >> 2] = 0; c[g + 488 >> 2] = 0; c[g + 504 >> 2] = 0; c[g + 520 >> 2] = 0; c[g + 536 >> 2] = 0; c[g + 552 >> 2] = 0; c[g + 568 >> 2] = 0; c[g + 584 >> 2] = 0; c[g + 600 >> 2] = 0; c[g + 616 >> 2] = 0; c[g + 632 >> 2] = 0; c[f + 24 >> 2] = g + 560; d = f + 72 | 0; c[f + 80 >> 2] = 0; c[f + 84 >> 2] = 0; a[f + 90 >> 0] = 0; c[d >> 2] = g; c[f + 8 >> 2] = g + 16; c[h >> 2] = 0; c[f + 76 >> 2] = g + 336; c[e >> 2] = d; return f | 0 } function Cf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0; e = i; i = i + 16 | 0; g = e; f = c[b + 12 >> 2] | 0; j = Ue(b, 0, 0, 640) | 0; c[b + 28 >> 2] = j; c[b + 32 >> 2] = 40; k = j + 8 | 0; c[k >> 2] = 0; c[j + 24 >> 2] = 0; c[j + 40 >> 2] = 0; c[j + 56 >> 2] = 0; c[j + 72 >> 2] = 0; c[j + 88 >> 2] = 0; c[j + 104 >> 2] = 0; c[j + 120 >> 2] = 0; c[j + 136 >> 2] = 0; c[j + 152 >> 2] = 0; c[j + 168 >> 2] = 0; c[j + 184 >> 2] = 0; c[j + 200 >> 2] = 0; c[j + 216 >> 2] = 0; c[j + 232 >> 2] = 0; c[j + 248 >> 2] = 0; c[j + 264 >> 2] = 0; c[j + 280 >> 2] = 0; c[j + 296 >> 2] = 0; c[j + 312 >> 2] = 0; c[j + 328 >> 2] = 0; c[j + 344 >> 2] = 0; c[j + 360 >> 2] = 0; c[j + 376 >> 2] = 0; c[j + 392 >> 2] = 0; c[j + 408 >> 2] = 0; c[j + 424 >> 2] = 0; c[j + 440 >> 2] = 0; c[j + 456 >> 2] = 0; c[j + 472 >> 2] = 0; c[j + 488 >> 2] = 0; c[j + 504 >> 2] = 0; c[j + 520 >> 2] = 0; c[j + 536 >> 2] = 0; c[j + 552 >> 2] = 0; c[j + 568 >> 2] = 0; c[j + 584 >> 2] = 0; c[j + 600 >> 2] = 0; c[j + 616 >> 2] = 0; c[j + 632 >> 2] = 0; c[b + 24 >> 2] = j + 560; h = b + 72 | 0; c[b + 80 >> 2] = 0; c[b + 84 >> 2] = 0; a[b + 90 >> 0] = 0; c[h >> 2] = j; c[b + 8 >> 2] = j + 16; c[k >> 2] = 0; c[b + 76 >> 2] = j + 336; c[b + 16 >> 2] = h; h = Xf(b) | 0; c[f + 40 >> 2] = h; c[f + 48 >> 2] = 69; Rf(b, h, 2, 0); c[g >> 2] = b; j = g + 8 | 0; c[j >> 2] = 72; Uf(b, h, 1, g); c[g >> 2] = Xf(b) | 0; c[j >> 2] = 69; Uf(b, h, 2, g); Lf(b, 32); ag(b); Fe(b); b = Mf(b, 4829, 17) | 0; c[f + 180 >> 2] = b; b = b + 5 | 0; a[b >> 0] = d[b >> 0] | 0 | 32; a[f + 63 >> 0] = 1; c[f + 176 >> 2] = nb(0) | 0; i = e; return } function Df(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; d = a + 12 | 0; f = c[d >> 2] | 0; e = a + 28 | 0; fe(a, c[e >> 2] | 0); ze(a); d = c[d >> 2] | 0; Ue(a, c[d + 24 >> 2] | 0, c[d + 32 >> 2] << 2, 0) | 0; d = f + 144 | 0; b = f + 152 | 0; c[d >> 2] = Ue(a, c[d >> 2] | 0, c[b >> 2] | 0, 0) | 0; c[b >> 2] = 0; b = c[e >> 2] | 0; if (!b) { e = c[f >> 2] | 0; f = f + 4 | 0; f = c[f >> 2] | 0; ab[e & 31](f, a, 400, 0) | 0; return } c[a + 16 >> 2] = a + 72; g = a + 84 | 0; d = c[g >> 2] | 0; c[g >> 2] = 0; if (d) { b = d; do { g = b; b = c[b + 12 >> 2] | 0; Ue(a, g, 40, 0) | 0 } while ((b | 0) != 0); b = c[e >> 2] | 0 } Ue(a, b, c[a + 32 >> 2] << 4, 0) | 0; e = c[f >> 2] | 0; g = f + 4 | 0; g = c[g >> 2] | 0; ab[e & 31](g, a, 400, 0) | 0; return } function Ef(a, b) { a = a | 0; b = b | 0; var d = 0; d = a + 12 | 0; a = a + 8 | 0; c[a >> 2] = (c[d >> 2] | 0) - b + (c[a >> 2] | 0); c[d >> 2] = b; return } function Ff(a) { a = a | 0; var b = 0; b = Ue(a, 0, 0, 40) | 0; a = c[a + 16 >> 2] | 0; c[a + 12 >> 2] = b; c[b + 8 >> 2] = a; c[b + 12 >> 2] = 0; return b | 0 } function Gf(a) { a = a | 0; var b = 0, d = 0; d = (c[a + 16 >> 2] | 0) + 12 | 0; b = c[d >> 2] | 0; c[d >> 2] = 0; if (!b) return; do { d = b; b = c[b + 12 >> 2] | 0; Ue(a, d, 40, 0) | 0 } while ((b | 0) != 0); return } function Hf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = b + 28 | 0; fe(b, c[f >> 2] | 0); d = c[f >> 2] | 0; if (!d) { Ue(a, b, 112, 0) | 0; return } c[b + 16 >> 2] = b + 72; g = b + 84 | 0; e = c[g >> 2] | 0; c[g >> 2] = 0; if (e) { d = e; do { g = d; d = c[d + 12 >> 2] | 0; Ue(b, g, 40, 0) | 0 } while ((d | 0) != 0); d = c[f >> 2] | 0 } Ue(b, d, c[b + 32 >> 2] << 4, 0) | 0; Ue(a, b, 112, 0) | 0; return } function If(a, b) { a = a | 0; b = b | 0; var d = 0; d = c[a + 12 >> 2] | 0; if ((a | 0) != (b | 0)) if ((d | 0) == (c[b + 12 >> 2] | 0)) a = (Gm(a + 16 | 0, b + 16 | 0, d) | 0) == 0; else a = 0; else a = 1; return a & 1 | 0 } function Jf(b, d) { b = b | 0; d = d | 0; var e = 0; e = a[b + 4 >> 0] | 0; do if (e << 24 >> 24 == (a[d + 4 >> 0] | 0)) { if (e << 24 >> 24 == 4) { e = (b | 0) == (d | 0); break } e = c[b + 12 >> 2] | 0; if ((b | 0) != (d | 0)) if ((e | 0) == (c[d + 12 >> 2] | 0)) e = (Gm(b + 16 | 0, d + 16 | 0, e) | 0) == 0; else e = 0; else e = 1 } else e = 0; while (0); return e & 1 | 0 } function Kf(a, b, c) { a = a | 0; b = b | 0; c = c | 0; var e = 0; c = c ^ b; e = (b >>> 5) + 1 | 0; if (e >>> 0 > b >>> 0) { a = c; return a | 0 } do { c = (c << 5) + (c >>> 2) + (d[a + (b + -1) >> 0] | 0) ^ c; b = b - e | 0 } while (b >>> 0 >= e >>> 0); return c | 0 } function Lf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0; k = c[b + 12 >> 2] | 0; j = k + 24 | 0; ye(b, -5); k = k + 32 | 0; g = c[k >> 2] | 0; if ((g | 0) < (e | 0)) { if ((e + 1 | 0) >>> 0 > 1073741823) Te(b); h = Ue(b, c[j >> 2] | 0, g << 2, e << 2) | 0; c[j >> 2] = h; g = c[k >> 2] | 0; if ((g | 0) < (e | 0) ? (c[h + (g << 2) >> 2] = 0, f = g + 1 | 0, (f | 0) != (e | 0)) : 0) do { c[(c[j >> 2] | 0) + (f << 2) >> 2] = 0; f = f + 1 | 0 } while ((f | 0) != (e | 0)) } if ((g | 0) > 0) { i = e + -1 | 0; h = 0; do { l = (c[j >> 2] | 0) + (h << 2) | 0; f = c[l >> 2] | 0; c[l >> 2] = 0; if (f | 0) do { l = f; f = c[f >> 2] | 0; m = (c[j >> 2] | 0) + ((c[l + 8 >> 2] & i) << 2) | 0; c[l >> 2] = c[m >> 2]; c[m >> 2] = l; l = l + 5 | 0; a[l >> 0] = (d[l >> 0] | 0) & 191 } while ((f | 0) != 0); h = h + 1 | 0 } while ((h | 0) < (g | 0)) } if ((g | 0) <= (e | 0)) { c[k >> 2] = e; return } if ((e + 1 | 0) >>> 0 > 1073741823) Te(b); c[j >> 2] = Ue(b, c[j >> 2] | 0, g << 2, e << 2) | 0; c[k >> 2] = e; return } function Mf(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0; if (f >>> 0 >= 41) { if ((f + 1 | 0) >>> 0 > 4294967277) Te(b); m = c[(c[b + 12 >> 2] | 0) + 56 >> 2] | 0; b = oe(b, 20, f + 17 | 0, 0, 0) | 0; c[b + 12 >> 2] = f; c[b + 8 >> 2] = m; a[b + 6 >> 0] = 0; m = b + 16 | 0; nn(m | 0, e | 0, f | 0) | 0; a[m + f >> 0] = 0; f = b; return f | 0 } m = c[b + 12 >> 2] | 0; g = c[m + 56 >> 2] ^ f; i = (f >>> 5) + 1 | 0; if (i >>> 0 <= f >>> 0) { h = f; do { g = (g << 5) + (g >>> 2) + (d[e + (h + -1) >> 0] | 0) ^ g; h = h - i | 0 } while (h >>> 0 >= i >>> 0) } k = m + 32 | 0; i = c[k >> 2] | 0; l = m + 24 | 0; h = c[l >> 2] | 0; j = c[h + ((i + -1 & g) << 2) >> 2] | 0; a: do if (j | 0) { while (1) { if (((g | 0) == (c[j + 8 >> 2] | 0) ? (c[j + 12 >> 2] | 0) == (f | 0) : 0) ? (Gm(e, j + 16 | 0, f) | 0) == 0 : 0) break; j = c[j >> 2] | 0; if (!j) break a } g = j + 5 | 0; h = (d[g >> 0] | 0) ^ 3; if (((d[m + 60 >> 0] | 0) ^ 3) & h | 0) { f = j; return f | 0 } a[g >> 0] = h; f = j; return f | 0 } while (0); j = m + 28 | 0; if ((i | 0) < 1073741823 ? (c[j >> 2] | 0) >>> 0 >= i >>> 0 : 0) { Lf(b, i << 1); i = c[k >> 2] | 0; h = c[l >> 2] | 0 } b = oe(b, 4, f + 17 | 0, h + ((i + -1 & g) << 2) | 0, 0) | 0; c[b + 12 >> 2] = f; c[b + 8 >> 2] = g; a[b + 6 >> 0] = 0; m = b + 16 | 0; nn(m | 0, e | 0, f | 0) | 0; a[m + f >> 0] = 0; c[j >> 2] = (c[j >> 2] | 0) + 1; f = b; return f | 0 } function Nf(a, b) { a = a | 0; b = b | 0; return Mf(a, b, Vl(b) | 0) | 0 } function Of(a, b, d) { a = a | 0; b = b | 0; d = d | 0; if (b >>> 0 > 4294967269) Te(a); else { a = oe(a, 7, b + 24 | 0, 0, 0) | 0; c[a + 16 >> 2] = b; c[a + 8 >> 2] = 0; c[a + 12 >> 2] = d; return a | 0 } return 0 } function Pf(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0.0; q = i; i = i + 16 | 0; m = q + 8 | 0; f = q; p = e + 8 | 0; switch (c[p >> 2] | 0) { case 0: { g = -1; n = c[b + 8 >> 2] | 0; break } case 3: { r = +h[e >> 3]; h[f >> 3] = r + 6755399441055744.0; f = c[f >> 2] | 0; if ((f | 0) > 0 & +(f | 0) == r ? (j = c[b + 8 >> 2] | 0, (f | 0) <= (j | 0)) : 0) { g = f + -1 | 0; n = j } else o = 6; break } default: o = 6 }do if ((o | 0) == 6) { f = Qf(b, e) | 0; while (1) { l = f + 16 | 0; k = f + 24 | 0; j = c[k >> 2] | 0; if ((j | 0) == (c[p >> 2] | 0)) { if (ng(0, l, e) | 0) { o = 13; break } j = c[k >> 2] | 0 } if (((j | 0) == 11 ? c[p >> 2] & 64 | 0 : 0) ? (c[l >> 2] | 0) == (c[e >> 2] | 0) : 0) { o = 13; break } f = c[f + 28 >> 2] | 0; if (!f) { o = 16; break } } if ((o | 0) == 13) { n = c[b + 8 >> 2] | 0; g = (f - (c[b + 16 >> 2] | 0) >> 5) + n | 0; break } else if ((o | 0) == 16) Ed(a, 4847, m) } while (0); l = b + 12 | 0; while (1) { f = g + 1 | 0; if ((f | 0) >= (n | 0)) break; j = c[l >> 2] | 0; k = j + (f << 4) + 8 | 0; if (!(c[k >> 2] | 0)) g = f; else { o = 19; break } } if ((o | 0) == 19) { h[e >> 3] = +(g + 2 | 0); c[p >> 2] = 3; b = j + (f << 4) | 0; o = c[b + 4 >> 2] | 0; p = e + 16 | 0; c[p >> 2] = c[b >> 2]; c[p + 4 >> 2] = o; c[e + 24 >> 2] = c[k >> 2]; p = 1; i = q; return p | 0 } f = f - n | 0; k = 1 << (d[b + 7 >> 0] | 0); if ((f | 0) >= (k | 0)) { p = 0; i = q; return p | 0 } g = b + 16 | 0; j = c[g >> 2] | 0; while (1) { if (c[j + (f << 5) + 8 >> 2] | 0) break; f = f + 1 | 0; if ((f | 0) >= (k | 0)) { f = 0; o = 25; break } } if ((o | 0) == 25) { i = q; return f | 0 } o = j + (f << 5) + 16 | 0; b = c[o + 4 >> 2] | 0; n = e; c[n >> 2] = c[o >> 2]; c[n + 4 >> 2] = b; c[p >> 2] = c[j + (f << 5) + 24 >> 2]; p = c[g >> 2] | 0; n = p + (f << 5) | 0; b = c[n + 4 >> 2] | 0; o = e + 16 | 0; c[o >> 2] = c[n >> 2]; c[o + 4 >> 2] = b; c[e + 24 >> 2] = c[p + (f << 5) + 8 >> 2]; p = 1; i = q; return p | 0 } function Qf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0; j = i; i = i + 16 | 0; f = j; switch (c[e + 8 >> 2] & 63) { case 3: { h[f >> 3] = +h[e >> 3] + 1.0; e = (c[f + 4 >> 2] | 0) + (c[f >> 2] | 0) | 0; g = 0 - e | 0; b = (c[b + 16 >> 2] | 0) + (((((e | 0) < 0 ? ((e | 0) == (g | 0) ? 0 : g) : e) | 0) % ((1 << d[b + 7 >> 0]) + -1 | 1 | 0) | 0) << 5) | 0; i = j; return b | 0 } case 20: { f = c[e >> 2] | 0; g = f + 6 | 0; if (!(a[g >> 0] | 0)) { k = f + 8 | 0; c[k >> 2] = Kf(f + 16 | 0, c[f + 12 >> 2] | 0, c[k >> 2] | 0) | 0; a[g >> 0] = 1; f = c[e >> 2] | 0 } k = (c[b + 16 >> 2] | 0) + (((1 << d[b + 7 >> 0]) + -1 & c[f + 8 >> 2]) << 5) | 0; i = j; return k | 0 } case 4: { k = (c[b + 16 >> 2] | 0) + (((1 << d[b + 7 >> 0]) + -1 & c[(c[e >> 2] | 0) + 8 >> 2]) << 5) | 0; i = j; return k | 0 } case 1: { k = (c[b + 16 >> 2] | 0) + (((1 << d[b + 7 >> 0]) + -1 & c[e >> 2]) << 5) | 0; i = j; return k | 0 } case 2: { k = (c[b + 16 >> 2] | 0) + ((((c[e >> 2] | 0) >>> 0) % (((1 << d[b + 7 >> 0]) + -1 | 1) >>> 0) | 0) << 5) | 0; i = j; return k | 0 } case 22: { k = (c[b + 16 >> 2] | 0) + ((((c[e >> 2] | 0) >>> 0) % (((1 << d[b + 7 >> 0]) + -1 | 1) >>> 0) | 0) << 5) | 0; i = j; return k | 0 } default: { k = (c[b + 16 >> 2] | 0) + ((((c[e >> 2] | 0) >>> 0) % (((1 << d[b + 7 >> 0]) + -1 | 1) >>> 0) | 0) << 5) | 0; i = j; return k | 0 } }return 0 } function Rf(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0.0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0; z = i; i = i + 32 | 0; m = z + 16 | 0; r = z; s = e + 8 | 0; t = c[s >> 2] | 0; u = e + 7 | 0; x = a[u >> 0] | 0; v = x & 255; w = e + 16 | 0; y = c[w >> 2] | 0; if ((t | 0) < (f | 0)) { if ((f + 1 | 0) >>> 0 > 268435455) Te(b); j = e + 12 | 0; k = Ue(b, c[j >> 2] | 0, t << 4, f << 4) | 0; c[j >> 2] = k; j = c[s >> 2] | 0; if ((j | 0) < (f | 0)) do { c[k + (j << 4) + 8 >> 2] = 0; j = j + 1 | 0 } while ((j | 0) != (f | 0)); c[s >> 2] = f } if (!g) { c[w >> 2] = 12952; g = 0; k = 0; j = 12952 } else { l = Xe(g) | 0; if ((l | 0) > 30) Ed(b, 4869, m); g = 1 << l; if ((g + 1 | 0) >>> 0 > 134217727) Te(b); j = Ue(b, 0, 0, g << 5) | 0; c[w >> 2] = j; k = 0; do { c[j + (k << 5) + 28 >> 2] = 0; c[j + (k << 5) + 24 >> 2] = 0; c[j + (k << 5) + 8 >> 2] = 0; k = k + 1 | 0 } while ((k | 0) < (g | 0)); k = l & 255 } a[u >> 0] = k; c[e + 20 >> 2] = j + (g << 5); do if ((t | 0) > (f | 0)) { c[s >> 2] = f; p = e + 12 | 0; q = r + 8 | 0; n = r + 4 | 0; j = f; do { k = c[p >> 2] | 0; m = k + (j << 4) + 8 | 0; if (!(c[m >> 2] | 0)) j = j + 1 | 0; else { g = k + (j << 4) | 0; l = j + 1 | 0; a: do if (j >>> 0 < (c[s >> 2] | 0) >>> 0) { j = g; k = 26 } else { o = +(l | 0); h[r >> 3] = o + 1.0; j = (c[n >> 2] | 0) + (c[r >> 2] | 0) | 0; k = 0 - j | 0; j = (c[w >> 2] | 0) + (((((j | 0) < 0 ? ((j | 0) == (k | 0) ? 0 : k) : j) | 0) % ((1 << (d[u >> 0] | 0)) + -1 | 1 | 0) | 0) << 5) | 0; while (1) { if ((c[j + 24 >> 2] | 0) == 3 ? +h[j + 16 >> 3] == o : 0) break; j = c[j + 28 >> 2] | 0; if (!j) { k = 28; break a } } k = 26 } while (0); if ((k | 0) == 26) { k = 0; if ((j | 0) == 12936) { o = +(l | 0); k = 28 } } if ((k | 0) == 28) { h[r >> 3] = o; c[q >> 2] = 3; j = Sf(b, e, r) | 0 } A = g; k = c[A + 4 >> 2] | 0; g = j; c[g >> 2] = c[A >> 2]; c[g + 4 >> 2] = k; c[j + 8 >> 2] = c[m >> 2]; j = l } } while ((j | 0) != (t | 0)); if ((f + 1 | 0) >>> 0 > 268435455) Te(b); else { c[p >> 2] = Ue(b, c[p >> 2] | 0, t << 4, f << 4) | 0; break } } while (0); n = 1 << v; if (x << 24 >> 24 != 31) { g = n; do { l = g; g = g + -1 | 0; m = y + (g << 5) + 8 | 0; if (c[m >> 2] | 0) { k = y + (g << 5) + 16 | 0; j = Tf(e, k) | 0; if ((j | 0) == 12936) j = Sf(b, e, k) | 0; w = y + (g << 5) | 0; x = c[w + 4 >> 2] | 0; A = j; c[A >> 2] = c[w >> 2]; c[A + 4 >> 2] = x; c[j + 8 >> 2] = c[m >> 2] } } while ((l | 0) > 1) } if ((y | 0) == 12952) { i = z; return } Ue(b, y, n << 5, 0) | 0; i = z; return } function Sf(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0.0; y = i; i = i + 144 | 0; g = y + 16 | 0; u = y; x = y + 20 | 0; w = f + 8 | 0; switch (c[w >> 2] | 0) { case 0: { Ed(b, 4884, y + 8 | 0); break } case 3: { m = 3; break } default: { } }if ((m | 0) == 3 ? (z = +h[f >> 3], !(z == z & 0.0 == 0.0)) : 0) Ed(b, 4903, g); n = Qf(e, f) | 0; o = n + 8 | 0; do if ((n | 0) == 12952 | (c[o >> 2] | 0) != 0) { j = e + 20 | 0; s = e + 16 | 0; k = c[s >> 2] | 0; l = c[j >> 2] | 0; while (1) { if (l >>> 0 <= k >>> 0) break; g = l + -32 | 0; c[j >> 2] = g; if (!(c[l + -8 >> 2] | 0)) { m = 34; break } else l = g } if ((m | 0) == 34) { j = Qf(e, n + 16 | 0) | 0; if ((j | 0) == (n | 0)) { x = n + 28 | 0; c[l + -4 >> 2] = c[x >> 2]; c[x >> 2] = g; break } do { k = j + 28 | 0; j = c[k >> 2] | 0 } while ((j | 0) != (n | 0)); c[k >> 2] = g; c[g >> 2] = c[n >> 2]; c[g + 4 >> 2] = c[n + 4 >> 2]; c[g + 8 >> 2] = c[n + 8 >> 2]; c[g + 12 >> 2] = c[n + 12 >> 2]; c[g + 16 >> 2] = c[n + 16 >> 2]; c[g + 20 >> 2] = c[n + 20 >> 2]; c[g + 24 >> 2] = c[n + 24 >> 2]; c[g + 28 >> 2] = c[n + 28 >> 2]; c[n + 28 >> 2] = 0; c[o >> 2] = 0; g = n; break } g = x; j = g + 124 | 0; do { c[g >> 2] = 0; g = g + 4 | 0 } while ((g | 0) < (j | 0)); q = e + 12 | 0; r = c[e + 8 >> 2] | 0; j = 1; g = 0; o = 1; p = 0; while (1) { if ((o | 0) > (r | 0)) if ((j | 0) > (r | 0)) { r = g; break } else l = r; else l = o; if ((j | 0) > (l | 0)) k = 0; else { m = c[q >> 2] | 0; k = 0; while (1) { k = ((c[m + (j + -1 << 4) + 8 >> 2] | 0) != 0 & 1) + k | 0; n = j + 1 | 0; if ((j | 0) < (l | 0)) j = n; else { j = n; break } } } n = x + (p << 2) | 0; c[n >> 2] = (c[n >> 2] | 0) + k; g = k + g | 0; p = p + 1 | 0; if ((p | 0) >= 31) { r = g; break } else o = o << 1 } q = 0; g = 1 << (d[e + 7 >> 0] | 0); k = 0; a: while (1) { do { p = g; g = g + -1 | 0; if (!p) break a; j = c[s >> 2] | 0 } while (!(c[j + (g << 5) + 8 >> 2] | 0)); if ((c[j + (g << 5) + 24 >> 2] | 0) == 3 ? (z = +h[j + (g << 5) + 16 >> 3], h[u >> 3] = z + 6755399441055744.0, t = c[u >> 2] | 0, +(t | 0) == z & (t + -1 | 0) >>> 0 < 1073741824) : 0) { j = x + ((Xe(t) | 0) << 2) | 0; c[j >> 2] = (c[j >> 2] | 0) + 1; j = 1 } else j = 0; q = q + 1 | 0; k = j + k | 0 } j = k + r | 0; if ((c[w >> 2] | 0) == 3 ? (z = +h[f >> 3], h[u >> 3] = z + 6755399441055744.0, v = c[u >> 2] | 0, +(v | 0) == z & (v + -1 | 0) >>> 0 < 1073741824) : 0) { g = x + ((Xe(v) | 0) << 2) | 0; c[g >> 2] = (c[g >> 2] | 0) + 1; g = 1 } else g = 0; p = j + g | 0; b: do if ((p | 0) > 0) { g = 0; k = 0; n = 1; o = 0; j = 0; l = 0; while (1) { w = c[x + (o << 2) >> 2] | 0; m = w + k | 0; if ((w | 0) > 0) { k = (m | 0) > (l | 0); j = k ? n : j; g = k ? m : g; k = m } if ((k | 0) == (p | 0)) break b; if ((n | 0) < (p | 0)) { l = n; n = n << 1; o = o + 1 | 0 } else break } } else { j = 0; g = 0 } while (0); Rf(b, e, j, r + 1 + q - g | 0); g = Tf(e, f) | 0; if ((g | 0) != 12936) { f = g; i = y; return f | 0 } f = Sf(b, e, f) | 0; i = y; return f | 0 } else g = n; while (0); u = f; v = c[u + 4 >> 2] | 0; x = g + 16 | 0; c[x >> 2] = c[u >> 2]; c[x + 4 >> 2] = v; c[g + 24 >> 2] = c[w >> 2]; if ((c[w >> 2] & 64 | 0 ? a[(c[f >> 2] | 0) + 5 >> 0] & 3 : 0) ? a[e + 5 >> 0] & 4 : 0) le(b, e); f = g; i = y; return f | 0 } function Tf(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, j = 0.0, k = 0, l = 0, m = 0, n = 0.0; m = i; i = i + 16 | 0; f = m; g = b + 8 | 0; switch (c[g >> 2] & 63) { case 4: { b = c[b >> 2] | 0; e = (c[a + 16 >> 2] | 0) + (((1 << (d[a + 7 >> 0] | 0)) + -1 & c[b + 8 >> 2]) << 5) | 0; while (1) { if ((c[e + 24 >> 2] | 0) == 68 ? (c[e + 16 >> 2] | 0) == (b | 0) : 0) break; f = c[e + 28 >> 2] | 0; if (!f) { k = 12936; l = 20; break } else e = f } if ((l | 0) == 20) { i = m; return k | 0 } l = e; i = m; return l | 0 } case 3: { n = +h[b >> 3]; h[f >> 3] = n + 6755399441055744.0; e = c[f >> 2] | 0; j = +(e | 0); if (j == n) { e = e + -1 | 0; if (e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0) { l = (c[a + 12 >> 2] | 0) + (e << 4) | 0; i = m; return l | 0 } h[f >> 3] = j + 1.0; e = (c[f + 4 >> 2] | 0) + (c[f >> 2] | 0) | 0; g = 0 - e | 0; e = (c[a + 16 >> 2] | 0) + (((((e | 0) < 0 ? ((e | 0) == (g | 0) ? 0 : g) : e) | 0) % ((1 << (d[a + 7 >> 0] | 0)) + -1 | 1 | 0) | 0) << 5) | 0; while (1) { if ((c[e + 24 >> 2] | 0) == 3 ? +h[e + 16 >> 3] == j : 0) break; f = c[e + 28 >> 2] | 0; if (!f) { k = 12936; l = 20; break } else e = f } if ((l | 0) == 20) { i = m; return k | 0 } l = e; i = m; return l | 0 } break } case 0: { l = 12936; i = m; return l | 0 } default: { } }e = Qf(a, b) | 0; while (1) { if ((c[e + 24 >> 2] | 0) == (c[g >> 2] | 0) ? ng(0, e + 16 | 0, b) | 0 : 0) break; f = c[e + 28 >> 2] | 0; if (!f) { k = 12936; l = 20; break } else e = f } if ((l | 0) == 20) { i = m; return k | 0 } l = e; i = m; return l | 0 } function Uf(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0.0, j = 0, k = 0, l = 0, m = 0, n = 0; m = i; i = i + 16 | 0; k = m; j = e + -1 | 0; a: do if (j >>> 0 < (c[b + 8 >> 2] | 0) >>> 0) { j = (c[b + 12 >> 2] | 0) + (j << 4) | 0; l = 8 } else { g = +(e | 0); h[k >> 3] = g + 1.0; j = (c[k + 4 >> 2] | 0) + (c[k >> 2] | 0) | 0; n = 0 - j | 0; j = (c[b + 16 >> 2] | 0) + (((((j | 0) < 0 ? ((j | 0) == (n | 0) ? 0 : n) : j) | 0) % ((1 << (d[b + 7 >> 0] | 0)) + -1 | 1 | 0) | 0) << 5) | 0; while (1) { if ((c[j + 24 >> 2] | 0) == 3 ? +h[j + 16 >> 3] == g : 0) break; j = c[j + 28 >> 2] | 0; if (!j) break a } l = 8 } while (0); do if ((l | 0) == 8) if ((j | 0) == 12936) { g = +(e | 0); break } else { n = j; b = f; k = b; k = c[k >> 2] | 0; b = b + 4 | 0; b = c[b >> 2] | 0; l = n; a = l; c[a >> 2] = k; l = l + 4 | 0; c[l >> 2] = b; l = f + 8 | 0; l = c[l >> 2] | 0; n = n + 8 | 0; c[n >> 2] = l; i = m; return } while (0); h[k >> 3] = g; c[k + 8 >> 2] = 3; n = Sf(a, b, k) | 0; b = f; k = b; k = c[k >> 2] | 0; b = b + 4 | 0; b = c[b >> 2] | 0; l = n; a = l; c[a >> 2] = k; l = l + 4 | 0; c[l >> 2] = b; l = f + 8 | 0; l = c[l >> 2] | 0; n = n + 8 | 0; c[n >> 2] = l; i = m; return } function Vf(a, b, c) { a = a | 0; b = b | 0; c = c | 0; var d = 0; d = Tf(b, c) | 0; if ((d | 0) != 12936) return d | 0; d = Sf(a, b, c) | 0; return d | 0 } function Wf(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0; if ((c[b + 16 >> 2] | 0) == 12952) f = 0; else f = 1 << (d[b + 7 >> 0] | 0); Rf(a, b, e, f); return } function Xf(b) { b = b | 0; b = oe(b, 5, 32, 0, 0) | 0; c[b + 24 >> 2] = 0; a[b + 6 >> 0] = -1; c[b + 12 >> 2] = 0; c[b + 8 >> 2] = 0; c[b + 16 >> 2] = 12952; a[b + 7 >> 0] = 0; c[b + 20 >> 2] = 12952; return b | 0 } function Yf(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[b + 16 >> 2] | 0; if ((e | 0) != 12952) Ue(a, e, 32 << (d[b + 7 >> 0] | 0), 0) | 0; Ue(a, c[b + 12 >> 2] | 0, c[b + 8 >> 2] << 4, 0) | 0; Ue(a, b, 32, 0) | 0; return } function Zf(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0.0, j = 0, k = 0; k = i; i = i + 16 | 0; f = k; e = b + -1 | 0; if (e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0) { j = (c[a + 12 >> 2] | 0) + (e << 4) | 0; i = k; return j | 0 } g = +(b | 0); h[f >> 3] = g + 1.0; b = (c[f + 4 >> 2] | 0) + (c[f >> 2] | 0) | 0; f = 0 - b | 0; b = (c[a + 16 >> 2] | 0) + (((((b | 0) < 0 ? ((b | 0) == (f | 0) ? 0 : f) : b) | 0) % ((1 << (d[a + 7 >> 0] | 0)) + -1 | 1 | 0) | 0) << 5) | 0; while (1) { if ((c[b + 24 >> 2] | 0) == 3 ? +h[b + 16 >> 3] == g : 0) break; b = c[b + 28 >> 2] | 0; if (!b) { b = 12936; j = 8; break } } if ((j | 0) == 8) { i = k; return b | 0 } j = b; i = k; return j | 0 } function _f(a, b) { a = a | 0; b = b | 0; var e = 0; a = (c[a + 16 >> 2] | 0) + (((1 << (d[a + 7 >> 0] | 0)) + -1 & c[b + 8 >> 2]) << 5) | 0; while (1) { if ((c[a + 24 >> 2] | 0) == 68 ? (c[a + 16 >> 2] | 0) == (b | 0) : 0) break; a = c[a + 28 >> 2] | 0; if (!a) { a = 12936; e = 6; break } } if ((e | 0) == 6) return a | 0; e = a; return e | 0 } function $f(a) { a = a | 0; var b = 0, e = 0, f = 0.0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; p = i; i = i + 16 | 0; o = p; b = c[a + 8 >> 2] | 0; if (b | 0 ? (e = c[a + 12 >> 2] | 0, (c[e + (b + -1 << 4) + 8 >> 2] | 0) == 0) : 0) { if (b >>> 0 > 1) a = 0; else { o = 0; i = p; return o | 0 } do { o = (a + b | 0) >>> 1; n = (c[e + (o + -1 << 4) + 8 >> 2] | 0) == 0; b = n ? o : b; a = n ? a : o } while ((b - a | 0) >>> 0 > 1); i = p; return a | 0 } m = c[a + 16 >> 2] | 0; if ((m | 0) == 12952) { o = b; i = p; return o | 0 } n = a + 12 | 0; l = a + 7 | 0; g = o + 4 | 0; a = b; j = b + 1 | 0; while (1) { e = j + -1 | 0; a: do if (e >>> 0 < b >>> 0) e = (c[n >> 2] | 0) + (e << 4) | 0; else { f = +(j | 0); h[o >> 3] = f + 1.0; e = (c[g >> 2] | 0) + (c[o >> 2] | 0) | 0; q = 0 - e | 0; e = m + (((((e | 0) < 0 ? ((e | 0) == (q | 0) ? 0 : q) : e) | 0) % ((1 << (d[l >> 0] | 0)) + -1 | 1 | 0) | 0) << 5) | 0; while (1) { if ((c[e + 24 >> 2] | 0) == 3 ? +h[e + 16 >> 3] == f : 0) break; e = c[e + 28 >> 2] | 0; if (!e) { e = 12936; break a } } } while (0); if (!(c[e + 8 >> 2] | 0)) break; a = j << 1; if (a >>> 0 > 2147483645) { k = 18; break } else { q = j; j = a; a = q } } if ((k | 0) == 18) { j = o + 4 | 0; g = 1; while (1) { a = g + -1 | 0; b: do if (a >>> 0 < b >>> 0) e = (c[n >> 2] | 0) + (a << 4) | 0; else { f = +(g | 0); h[o >> 3] = f + 1.0; e = (c[j >> 2] | 0) + (c[o >> 2] | 0) | 0; q = 0 - e | 0; e = m + (((((e | 0) < 0 ? ((e | 0) == (q | 0) ? 0 : q) : e) | 0) % ((1 << (d[l >> 0] | 0)) + -1 | 1 | 0) | 0) << 5) | 0; while (1) { if ((c[e + 24 >> 2] | 0) == 3 ? +h[e + 16 >> 3] == f : 0) break; e = c[e + 28 >> 2] | 0; if (!e) { e = 12936; break b } } } while (0); if (!(c[e + 8 >> 2] | 0)) break; else g = g + 1 | 0 } i = p; return a | 0 } if ((j - a | 0) >>> 0 <= 1) { q = a; i = p; return q | 0 } k = o + 4 | 0; do { g = (j + a | 0) >>> 1; e = g + -1 | 0; c: do if (e >>> 0 < b >>> 0) e = (c[n >> 2] | 0) + (e << 4) | 0; else { f = +(g | 0); h[o >> 3] = f + 1.0; e = (c[k >> 2] | 0) + (c[o >> 2] | 0) | 0; q = 0 - e | 0; e = m + (((((e | 0) < 0 ? ((e | 0) == (q | 0) ? 0 : q) : e) | 0) % ((1 << (d[l >> 0] | 0)) + -1 | 1 | 0) | 0) << 5) | 0; while (1) { if ((c[e + 24 >> 2] | 0) == 3 ? +h[e + 16 >> 3] == f : 0) break; e = c[e + 28 >> 2] | 0; if (!e) { e = 12936; break c } } } while (0); q = (c[e + 8 >> 2] | 0) == 0; j = q ? g : j; a = q ? a : g } while ((j - a | 0) >>> 0 > 1); i = p; return a | 0 } function ag(b) { b = b | 0; var e = 0, f = 0, g = 0; f = b + 12 | 0; e = 0; do { g = Nf(b, c[196 + (e << 2) >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 184 + (e << 2) >> 2] = g; g = (c[(c[f >> 2] | 0) + 184 + (e << 2) >> 2] | 0) + 5 | 0; a[g >> 0] = d[g >> 0] | 0 | 32; e = e + 1 | 0 } while ((e | 0) != 17); return } function bg(b, e, f) { b = b | 0; e = e | 0; f = f | 0; f = _f(b, f) | 0; if (c[f + 8 >> 2] | 0) { e = f; return e | 0 } b = b + 6 | 0; a[b >> 0] = d[b >> 0] | 0 | 1 << e; e = 0; return e | 0 } function cg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = c[b + 8 >> 2] | 0; switch (e & 15) { case 5: { b = (c[b >> 2] | 0) + 24 | 0; break } case 7: { b = (c[b >> 2] | 0) + 8 | 0; break } default: b = (c[a + 12 >> 2] | 0) + 252 + ((e & 15) << 2) | 0 }b = c[b >> 2] | 0; if (!b) { d = 12936; return d | 0 } d = _f(b, c[(c[a + 12 >> 2] | 0) + 184 + (d << 2) >> 2] | 0) | 0; return d | 0 } function dg(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0; k = i; i = i + 64 | 0; g = k + 16 | 0; h = k + 34 | 0; j = k; switch (a[f >> 0] | 0) { case 61: case 64: { c[j + 12 >> 2] = f + 1; break } case 27: { c[j + 12 >> 2] = 5064; break } default: c[j + 12 >> 2] = f }c[j >> 2] = b; c[j + 4 >> 2] = d; c[j + 8 >> 2] = e; c[g >> 2] = 1635077147; a[g + 4 >> 0] = 82; a[g + 5 >> 0] = 0; a[g + 6 >> 0] = 1; a[g + 7 >> 0] = 4; a[g + 8 >> 0] = 4; a[g + 9 >> 0] = 4; a[g + 10 >> 0] = 8; f = g + 12 | 0; a[g + 11 >> 0] = 0; a[f >> 0] = a[5078] | 0; a[f + 1 >> 0] = a[5079] | 0; a[f + 2 >> 0] = a[5080] | 0; a[f + 3 >> 0] = a[5081] | 0; a[f + 4 >> 0] = a[5082] | 0; a[f + 5 >> 0] = a[5083] | 0; a[h >> 0] = 27; if (vg(d, h + 1 | 0, 17) | 0) eg(j, 5085); if (!(Gm(g, h, 18) | 0)) { f = be(b, 1) | 0; g = b + 8 | 0; h = c[g >> 2] | 0; c[h >> 2] = f; c[h + 8 >> 2] = 70; h = (c[g >> 2] | 0) + 16 | 0; c[g >> 2] = h; if (((c[b + 24 >> 2] | 0) - h | 0) < 16) Td(b, 0); e = ge(b) | 0; d = f + 12 | 0; c[d >> 2] = e; fg(j, e); d = c[d >> 2] | 0; e = c[d + 40 >> 2] | 0; if ((e | 0) == 1) { b = f; i = k; return b | 0 } b = be(b, e) | 0; c[b + 12 >> 2] = d; j = c[g >> 2] | 0; c[j + -16 >> 2] = b; c[j + -8 >> 2] = 70; i = k; return b | 0 } if (Gm(g, h, 4) | 0) eg(j, 5095); if (Gm(g, h, 6) | 0) eg(j, 5101); if (!(Gm(g, h, 12) | 0)) eg(j, 5134); else eg(j, 5121); return 0 } function eg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = i; i = i + 16 | 0; e = c[a >> 2] | 0; c[d >> 2] = c[a + 12 >> 2]; c[d + 4 >> 2] = b; af(e, 5144, d) | 0; Ld(c[a >> 2] | 0, 3) } function fg(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = i; i = i + 16 | 0; r = t; s = b + 4 | 0; if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); f = c[r >> 2] | 0; if ((f | 0) < 0) eg(b, 5134); c[e + 64 >> 2] = f; if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); f = c[r >> 2] | 0; if ((f | 0) < 0) eg(b, 5134); c[e + 68 >> 2] = f; if (vg(c[s >> 2] | 0, r, 1) | 0) eg(b, 5085); a[e + 76 >> 0] = a[r >> 0] | 0; if (vg(c[s >> 2] | 0, r, 1) | 0) eg(b, 5085); a[e + 77 >> 0] = a[r >> 0] | 0; if (vg(c[s >> 2] | 0, r, 1) | 0) eg(b, 5085); a[e + 78 >> 0] = a[r >> 0] | 0; if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); f = c[r >> 2] | 0; if ((f | 0) < 0) eg(b, 5134); g = c[b >> 2] | 0; if ((f + 1 | 0) >>> 0 > 1073741823) Te(g); m = f << 2; l = Ue(g, 0, 0, m) | 0; c[e + 12 >> 2] = l; c[e + 48 >> 2] = f; if (vg(c[s >> 2] | 0, l, m) | 0) eg(b, 5085); if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); m = c[r >> 2] | 0; if ((m | 0) < 0) eg(b, 5134); f = c[b >> 2] | 0; if ((m + 1 | 0) >>> 0 > 268435455) Te(f); j = Ue(f, 0, 0, m << 4) | 0; l = e + 8 | 0; c[l >> 2] = j; c[e + 44 >> 2] = m; g = (m | 0) > 0; a: do if (g) { f = 0; do { c[j + (f << 4) + 8 >> 2] = 0; f = f + 1 | 0 } while ((f | 0) != (m | 0)); if (g) { k = b + 8 | 0; if (!(vg(c[s >> 2] | 0, r, 1) | 0)) { o = 0; p = j; n = j } else eg(b, 5085); b: while (1) { switch (a[r >> 0] | 0) { case 0: { c[p + (o << 4) + 8 >> 2] = 0; break } case 1: { if (vg(c[s >> 2] | 0, r, 1) | 0) { f = 37; break b } c[n >> 2] = a[r >> 0]; c[p + (o << 4) + 8 >> 2] = 1; break } case 3: { if (vg(c[s >> 2] | 0, r, 8) | 0) { f = 40; break b } h[n >> 3] = +h[r >> 3]; c[p + (o << 4) + 8 >> 2] = 3; break } case 4: { if (vg(c[s >> 2] | 0, r, 4) | 0) { f = 43; break b } f = c[r >> 2] | 0; if (!f) f = 0; else { f = wg(c[b >> 2] | 0, c[k >> 2] | 0, f) | 0; if (vg(c[s >> 2] | 0, f, c[r >> 2] | 0) | 0) { f = 46; break b } f = Mf(c[b >> 2] | 0, f, (c[r >> 2] | 0) + -1 | 0) | 0 } c[n >> 2] = f; c[p + (o << 4) + 8 >> 2] = d[f + 4 >> 0] | 64; break } default: { } }g = o + 1 | 0; if ((g | 0) >= (m | 0)) break a; f = c[l >> 2] | 0; if (!(vg(c[s >> 2] | 0, r, 1) | 0)) { o = g; p = f; n = f + (g << 4) | 0 } else { f = 33; break } } if ((f | 0) == 33) eg(b, 5085); else if ((f | 0) == 37) eg(b, 5085); else if ((f | 0) == 40) eg(b, 5085); else if ((f | 0) == 43) eg(b, 5085); else if ((f | 0) == 46) eg(b, 5085) } } while (0); if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); k = c[r >> 2] | 0; if ((k | 0) < 0) eg(b, 5134); f = c[b >> 2] | 0; if ((k + 1 | 0) >>> 0 > 1073741823) Te(f); f = Ue(f, 0, 0, k << 2) | 0; j = e + 16 | 0; c[j >> 2] = f; c[e + 56 >> 2] = k; g = (k | 0) > 0; do if (g) { c[f >> 2] = 0; if ((k | 0) != 1) { f = 1; do { c[(c[j >> 2] | 0) + (f << 2) >> 2] = 0; f = f + 1 | 0 } while ((f | 0) != (k | 0)) } if (g) f = 0; else break; do { p = ge(c[b >> 2] | 0) | 0; c[(c[j >> 2] | 0) + (f << 2) >> 2] = p; fg(b, c[(c[j >> 2] | 0) + (f << 2) >> 2] | 0); f = f + 1 | 0 } while ((f | 0) != (k | 0)) } while (0); if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); j = c[r >> 2] | 0; if ((j | 0) < 0) eg(b, 5134); f = c[b >> 2] | 0; if ((j + 1 | 0) >>> 0 > 536870911) Te(f); g = Ue(f, 0, 0, j << 3) | 0; m = e + 28 | 0; c[m >> 2] = g; c[e + 40 >> 2] = j; c: do if ((j | 0) > 0) { f = 0; do { c[g + (f << 3) >> 2] = 0; f = f + 1 | 0 } while ((f | 0) != (j | 0)); f = 0; while (1) { if (vg(c[s >> 2] | 0, r, 1) | 0) { f = 71; break } a[(c[m >> 2] | 0) + (f << 3) + 4 >> 0] = a[r >> 0] | 0; if (vg(c[s >> 2] | 0, r, 1) | 0) { f = 73; break } a[(c[m >> 2] | 0) + (f << 3) + 5 >> 0] = a[r >> 0] | 0; f = f + 1 | 0; if ((f | 0) >= (j | 0)) break c } if ((f | 0) == 71) eg(b, 5085); else if ((f | 0) == 73) eg(b, 5085) } while (0); if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); f = c[r >> 2] | 0; do if (f) { f = wg(c[b >> 2] | 0, c[b + 8 >> 2] | 0, f) | 0; if (!(vg(c[s >> 2] | 0, f, c[r >> 2] | 0) | 0)) { q = Mf(c[b >> 2] | 0, f, (c[r >> 2] | 0) + -1 | 0) | 0; break } else eg(b, 5085) } else q = 0; while (0); c[e + 36 >> 2] = q; if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); f = c[r >> 2] | 0; if ((f | 0) < 0) eg(b, 5134); g = c[b >> 2] | 0; if ((f + 1 | 0) >>> 0 > 1073741823) Te(g); q = f << 2; p = Ue(g, 0, 0, q) | 0; c[e + 20 >> 2] = p; c[e + 52 >> 2] = f; if (vg(c[s >> 2] | 0, p, q) | 0) eg(b, 5085); if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); l = c[r >> 2] | 0; if ((l | 0) < 0) eg(b, 5134); f = c[b >> 2] | 0; if ((l + 1 | 0) >>> 0 > 357913941) Te(f); g = Ue(f, 0, 0, l * 12 | 0) | 0; k = e + 24 | 0; c[k >> 2] = g; c[e + 60 >> 2] = l; d: do if ((l | 0) > 0) { f = 0; do { c[g + (f * 12 | 0) >> 2] = 0; f = f + 1 | 0 } while ((f | 0) != (l | 0)); j = b + 8 | 0; g = 0; while (1) { if (vg(c[s >> 2] | 0, r, 4) | 0) { f = 99; break } f = c[r >> 2] | 0; if (!f) f = 0; else { f = wg(c[b >> 2] | 0, c[j >> 2] | 0, f) | 0; if (vg(c[s >> 2] | 0, f, c[r >> 2] | 0) | 0) { f = 102; break } f = Mf(c[b >> 2] | 0, f, (c[r >> 2] | 0) + -1 | 0) | 0 } c[(c[k >> 2] | 0) + (g * 12 | 0) >> 2] = f; if (vg(c[s >> 2] | 0, r, 4) | 0) { f = 105; break } f = c[r >> 2] | 0; if ((f | 0) < 0) { f = 107; break } c[(c[k >> 2] | 0) + (g * 12 | 0) + 4 >> 2] = f; if (vg(c[s >> 2] | 0, r, 4) | 0) { f = 109; break } f = c[r >> 2] | 0; if ((f | 0) < 0) { f = 111; break } c[(c[k >> 2] | 0) + (g * 12 | 0) + 8 >> 2] = f; g = g + 1 | 0; if ((g | 0) >= (l | 0)) break d } if ((f | 0) == 99) eg(b, 5085); else if ((f | 0) == 102) eg(b, 5085); else if ((f | 0) == 105) eg(b, 5085); else if ((f | 0) == 107) eg(b, 5134); else if ((f | 0) == 109) eg(b, 5085); else if ((f | 0) == 111) eg(b, 5134) } while (0); if (vg(c[s >> 2] | 0, r, 4) | 0) eg(b, 5085); j = c[r >> 2] | 0; if ((j | 0) < 0) eg(b, 5134); if (!j) { i = t; return } k = b + 8 | 0; g = 0; while (1) { if (vg(c[s >> 2] | 0, r, 4) | 0) { f = 120; break } f = c[r >> 2] | 0; if (!f) f = 0; else { f = wg(c[b >> 2] | 0, c[k >> 2] | 0, f) | 0; if (vg(c[s >> 2] | 0, f, c[r >> 2] | 0) | 0) { f = 123; break } f = Mf(c[b >> 2] | 0, f, (c[r >> 2] | 0) + -1 | 0) | 0 } c[(c[m >> 2] | 0) + (g << 3) >> 2] = f; g = g + 1 | 0; if ((g | 0) >= (j | 0)) { f = 126; break } } if ((f | 0) == 120) eg(b, 5085); else if ((f | 0) == 123) eg(b, 5085); else if ((f | 0) == 126) { i = t; return } } function gg(b) { b = b | 0; var c = 0; a[b >> 0] = 27; a[b + 1 >> 0] = 76; a[b + 2 >> 0] = 117; a[b + 3 >> 0] = 97; a[b + 4 >> 0] = 82; a[b + 5 >> 0] = 0; a[b + 6 >> 0] = 1; a[b + 7 >> 0] = 4; a[b + 8 >> 0] = 4; a[b + 9 >> 0] = 4; a[b + 10 >> 0] = 8; c = b + 12 | 0; a[b + 11 >> 0] = 0; a[c >> 0] = a[5078] | 0; a[c + 1 >> 0] = a[5079] | 0; a[c + 2 >> 0] = a[5080] | 0; a[c + 3 >> 0] = a[5081] | 0; a[c + 4 >> 0] = a[5082] | 0; a[c + 5 >> 0] = a[5083] | 0; return } function hg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = i; i = i + 16 | 0; d = f; e = c[a + 8 >> 2] | 0; if ((e | 0) != 3) if ((e & 15 | 0) == 4 ? (e = c[a >> 2] | 0, (_e(e + 16 | 0, c[e + 12 >> 2] | 0, d) | 0) != 0) : 0) { h[b >> 3] = +h[d >> 3]; c[b + 8 >> 2] = 3; a = b } else a = 0; i = f; return a | 0 } function ig(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, j = 0; j = i; i = i + 48 | 0; g = j; e = j + 8 | 0; f = b + 8 | 0; if ((c[f >> 2] | 0) != 3) { g = 0; i = j; return g | 0 } h[g >> 3] = +h[b >> 3]; g = Mf(a, e, em(e, 7586, g) | 0) | 0; c[b >> 2] = g; c[f >> 2] = d[g + 4 >> 0] | 0 | 64; g = 1; i = j; return g | 0 } function jg(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; o = i; i = i + 16 | 0; n = o; l = b + 12 | 0; m = e; k = 0; e = c[e + 8 >> 2] | 0; while (1) { if ((e | 0) != 69) { h = cg(b, m, 0) | 0; e = c[h + 8 >> 2] | 0; if (!e) { e = 11; break } } else { e = c[m >> 2] | 0; h = Tf(e, f) | 0; j = h + 8 | 0; if (c[j >> 2] | 0) { e = 9; break } e = c[e + 24 >> 2] | 0; if (!e) { e = 9; break } if (a[e + 6 >> 0] & 1) { e = 9; break } e = bg(e, 0, c[(c[l >> 2] | 0) + 184 >> 2] | 0) | 0; if (!e) { e = 9; break } h = e; e = c[e + 8 >> 2] | 0 } k = k + 1 | 0; if ((e & 15 | 0) == 6) { e = 13; break } if ((k | 0) >= 100) { e = 14; break } else m = h } if ((e | 0) == 9) { b = h; f = c[b + 4 >> 2] | 0; n = g; c[n >> 2] = c[b >> 2]; c[n + 4 >> 2] = f; c[g + 8 >> 2] = c[j >> 2]; i = o; return } else if ((e | 0) == 11) Dd(b, m, 5169); else if ((e | 0) == 13) { k = b + 28 | 0; n = c[k >> 2] | 0; l = b + 8 | 0; e = c[l >> 2] | 0; c[l >> 2] = e + 16; q = h; j = c[q + 4 >> 2] | 0; p = e; c[p >> 2] = c[q >> 2]; c[p + 4 >> 2] = j; c[e + 8 >> 2] = c[h + 8 >> 2]; e = c[l >> 2] | 0; c[l >> 2] = e + 16; p = m; j = c[p + 4 >> 2] | 0; h = e; c[h >> 2] = c[p >> 2]; c[h + 4 >> 2] = j; c[e + 8 >> 2] = c[m + 8 >> 2]; m = c[l >> 2] | 0; c[l >> 2] = m + 16; e = f; h = c[e + 4 >> 2] | 0; j = m; c[j >> 2] = c[e >> 2]; c[j + 4 >> 2] = h; c[m + 8 >> 2] = c[f + 8 >> 2]; Wd(b, (c[l >> 2] | 0) + -48 | 0, 1, (d[(c[b + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); n = (c[k >> 2] | 0) + (g - n) | 0; g = c[l >> 2] | 0; m = g + -16 | 0; c[l >> 2] = m; b = c[m + 4 >> 2] | 0; f = n; c[f >> 2] = c[m >> 2]; c[f + 4 >> 2] = b; c[n + 8 >> 2] = c[g + -8 >> 2]; i = o; return } else if ((e | 0) == 14) Ed(b, 5175, n) } function kg(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = i; i = i + 16 | 0; o = q; m = b + 12 | 0; j = e; k = 0; e = c[e + 8 >> 2] | 0; while (1) { if ((e | 0) != 69) { h = cg(b, j, 1) | 0; e = c[h + 8 >> 2] | 0; if (!e) { p = 16; break } } else { n = c[j >> 2] | 0; h = Tf(n, f) | 0; if (c[h + 8 >> 2] | 0) { l = h; break } e = c[n + 24 >> 2] | 0; if (!e) { p = 9; break } if (a[e + 6 >> 0] & 2) { p = 9; break } e = bg(e, 1, c[(c[m >> 2] | 0) + 188 >> 2] | 0) | 0; if (!e) { p = 9; break } h = e; e = c[e + 8 >> 2] | 0 } k = k + 1 | 0; if ((e & 15 | 0) == 6) { p = 18; break } if ((k | 0) >= 100) { p = 19; break } else j = h } if ((p | 0) == 9) if ((h | 0) == 12936) l = Sf(b, n, f) | 0; else l = h; else if ((p | 0) == 16) Dd(b, j, 5169); else if ((p | 0) == 18) { p = b + 8 | 0; o = c[p >> 2] | 0; c[p >> 2] = o + 16; l = h; n = c[l + 4 >> 2] | 0; m = o; c[m >> 2] = c[l >> 2]; c[m + 4 >> 2] = n; c[o + 8 >> 2] = c[h + 8 >> 2]; o = c[p >> 2] | 0; c[p >> 2] = o + 16; m = j; n = c[m + 4 >> 2] | 0; l = o; c[l >> 2] = c[m >> 2]; c[l + 4 >> 2] = n; c[o + 8 >> 2] = c[j + 8 >> 2]; o = c[p >> 2] | 0; c[p >> 2] = o + 16; l = f; n = c[l + 4 >> 2] | 0; m = o; c[m >> 2] = c[l >> 2]; c[m + 4 >> 2] = n; c[o + 8 >> 2] = c[f + 8 >> 2]; o = c[p >> 2] | 0; c[p >> 2] = o + 16; f = g; m = c[f + 4 >> 2] | 0; n = o; c[n >> 2] = c[f >> 2]; c[n + 4 >> 2] = m; c[o + 8 >> 2] = c[g + 8 >> 2]; Wd(b, (c[p >> 2] | 0) + -64 | 0, 0, (d[(c[b + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); i = q; return } else if ((p | 0) == 19) Ed(b, 5192, o); m = g; o = c[m + 4 >> 2] | 0; p = l; c[p >> 2] = c[m >> 2]; c[p + 4 >> 2] = o; p = g + 8 | 0; c[l + 8 >> 2] = c[p >> 2]; a[n + 6 >> 0] = 0; if (!(c[p >> 2] & 64)) { i = q; return } if (!(a[(c[g >> 2] | 0) + 5 >> 0] & 3)) { i = q; return } if (!(a[n + 5 >> 0] & 4)) { i = q; return } le(b, n); i = q; return } function lg(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; k = b + 8 | 0; f = c[k >> 2] | 0; if ((f | 0) == 3) { if ((c[e + 8 >> 2] | 0) == 3) { l = +h[b >> 3] < +h[e >> 3] & 1; return l | 0 } } else if ((f & 15 | 0) == 4 ? (c[e + 8 >> 2] & 15 | 0) == 4 : 0) { b = c[b >> 2] | 0; j = c[e >> 2] | 0; i = c[j + 12 >> 2] | 0; j = j + 16 | 0; a = c[b + 12 >> 2] | 0; b = b + 16 | 0; while (1) { f = Ul(b, j) | 0; if (f | 0) break; f = Vl(b) | 0; g = (f | 0) == (a | 0); if ((f | 0) == (i | 0)) { l = 9; break } f = f + 1 | 0; if (g) { f = -1; break } else { i = i - f | 0; j = j + f | 0; a = a - f | 0; b = b + f | 0 } } if ((l | 0) == 9) f = g & 1 ^ 1; l = f >>> 31; return l | 0 } g = a + 8 | 0; i = c[g >> 2] | 0; f = cg(a, b, 13) | 0; if (!(c[f + 8 >> 2] | 0)) { f = cg(a, e, 13) | 0; if (!(c[f + 8 >> 2] | 0)) Id(a, b, e); else j = f } else j = f; l = a + 28 | 0; f = c[l >> 2] | 0; m = c[g >> 2] | 0; c[g >> 2] = m + 16; p = j; o = c[p + 4 >> 2] | 0; n = m; c[n >> 2] = c[p >> 2]; c[n + 4 >> 2] = o; c[m + 8 >> 2] = c[j + 8 >> 2]; m = c[g >> 2] | 0; c[g >> 2] = m + 16; n = b; j = c[n + 4 >> 2] | 0; b = m; c[b >> 2] = c[n >> 2]; c[b + 4 >> 2] = j; c[m + 8 >> 2] = c[k >> 2]; b = c[g >> 2] | 0; c[g >> 2] = b + 16; m = e; j = c[m + 4 >> 2] | 0; k = b; c[k >> 2] = c[m >> 2]; c[k + 4 >> 2] = j; c[b + 8 >> 2] = c[e + 8 >> 2]; Wd(a, (c[g >> 2] | 0) + -48 | 0, 1, (d[(c[a + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); f = (c[l >> 2] | 0) + (i - f) | 0; l = c[g >> 2] | 0; b = l + -16 | 0; c[g >> 2] = b; e = c[b + 4 >> 2] | 0; k = f; c[k >> 2] = c[b >> 2]; c[k + 4 >> 2] = e; c[f + 8 >> 2] = c[l + -8 >> 2]; f = c[g >> 2] | 0; g = c[f + 8 >> 2] | 0; if (!g) { p = 0; return p | 0 } if ((g | 0) != 1) { p = 1; return p | 0 } p = (c[f >> 2] | 0) != 0 & 1; return p | 0 } function mg(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; k = b + 8 | 0; f = c[k >> 2] | 0; if ((f | 0) == 3) { if ((c[e + 8 >> 2] | 0) == 3) { l = +h[b >> 3] <= +h[e >> 3] & 1; return l | 0 } } else if ((f & 15 | 0) == 4 ? (c[e + 8 >> 2] & 15 | 0) == 4 : 0) { b = c[b >> 2] | 0; j = c[e >> 2] | 0; i = c[j + 12 >> 2] | 0; j = j + 16 | 0; a = c[b + 12 >> 2] | 0; b = b + 16 | 0; while (1) { f = Ul(b, j) | 0; if (f | 0) break; f = Vl(b) | 0; g = (f | 0) == (a | 0); if ((f | 0) == (i | 0)) { l = 9; break } f = f + 1 | 0; if (g) { f = -1; break } else { i = i - f | 0; j = j + f | 0; a = a - f | 0; b = b + f | 0 } } if ((l | 0) == 9) f = g & 1 ^ 1; l = (f | 0) < 1 & 1; return l | 0 } i = a + 8 | 0; g = c[i >> 2] | 0; f = cg(a, b, 14) | 0; if (!(c[f + 8 >> 2] | 0)) { f = cg(a, e, 14) | 0; if (!(c[f + 8 >> 2] | 0)) { g = c[i >> 2] | 0; f = cg(a, e, 13) | 0; if (!(c[f + 8 >> 2] | 0)) { f = cg(a, b, 13) | 0; if (!(c[f + 8 >> 2] | 0)) Id(a, b, e); else j = f } else j = f; l = a + 28 | 0; f = c[l >> 2] | 0; m = c[i >> 2] | 0; c[i >> 2] = m + 16; p = j; n = c[p + 4 >> 2] | 0; o = m; c[o >> 2] = c[p >> 2]; c[o + 4 >> 2] = n; c[m + 8 >> 2] = c[j + 8 >> 2]; m = c[i >> 2] | 0; c[i >> 2] = m + 16; o = e; n = c[o + 4 >> 2] | 0; j = m; c[j >> 2] = c[o >> 2]; c[j + 4 >> 2] = n; c[m + 8 >> 2] = c[e + 8 >> 2]; e = c[i >> 2] | 0; c[i >> 2] = e + 16; m = b; j = c[m + 4 >> 2] | 0; b = e; c[b >> 2] = c[m >> 2]; c[b + 4 >> 2] = j; c[e + 8 >> 2] = c[k >> 2]; Wd(a, (c[i >> 2] | 0) + -48 | 0, 1, (d[(c[a + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); f = (c[l >> 2] | 0) + (g - f) | 0; g = c[i >> 2] | 0; e = g + -16 | 0; c[i >> 2] = e; k = c[e + 4 >> 2] | 0; l = f; c[l >> 2] = c[e >> 2]; c[l + 4 >> 2] = k; c[f + 8 >> 2] = c[g + -8 >> 2]; f = c[i >> 2] | 0; g = c[f + 8 >> 2] | 0; if (g) if ((g | 0) == 1) f = (c[f >> 2] | 0) == 0; else f = 0; else f = 1; p = f & 1; return p | 0 } } o = a + 28 | 0; n = c[o >> 2] | 0; p = c[i >> 2] | 0; c[i >> 2] = p + 16; j = f; l = c[j + 4 >> 2] | 0; m = p; c[m >> 2] = c[j >> 2]; c[m + 4 >> 2] = l; c[p + 8 >> 2] = c[f + 8 >> 2]; f = c[i >> 2] | 0; c[i >> 2] = f + 16; p = b; m = c[p + 4 >> 2] | 0; l = f; c[l >> 2] = c[p >> 2]; c[l + 4 >> 2] = m; c[f + 8 >> 2] = c[k >> 2]; f = c[i >> 2] | 0; c[i >> 2] = f + 16; l = e; m = c[l + 4 >> 2] | 0; p = f; c[p >> 2] = c[l >> 2]; c[p + 4 >> 2] = m; c[f + 8 >> 2] = c[e + 8 >> 2]; Wd(a, (c[i >> 2] | 0) + -48 | 0, 1, (d[(c[a + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); f = (c[o >> 2] | 0) + (g - n) | 0; g = c[i >> 2] | 0; n = g + -16 | 0; c[i >> 2] = n; o = c[n + 4 >> 2] | 0; p = f; c[p >> 2] = c[n >> 2]; c[p + 4 >> 2] = o; c[f + 8 >> 2] = c[g + -8 >> 2]; f = c[i >> 2] | 0; g = c[f + 8 >> 2] | 0; if (g) if ((g | 0) == 1) f = (c[f >> 2] | 0) != 0; else f = 1; else f = 0; p = f & 1; return p | 0 } function ng(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; l = e + 8 | 0; a: do switch (c[l >> 2] & 63) { case 3: { l = +h[e >> 3] == +h[f >> 3] & 1; return l | 0 } case 1: { l = (c[e >> 2] | 0) == (c[f >> 2] | 0) & 1; return l | 0 } case 2: { l = (c[e >> 2] | 0) == (c[f >> 2] | 0) & 1; return l | 0 } case 22: { l = (c[e >> 2] | 0) == (c[f >> 2] | 0) & 1; return l | 0 } case 4: { l = (c[e >> 2] | 0) == (c[f >> 2] | 0) & 1; return l | 0 } case 20: { l = If(c[e >> 2] | 0, c[f >> 2] | 0) | 0; return l | 0 } case 7: { g = c[e >> 2] | 0; i = c[f >> 2] | 0; if ((g | 0) == (i | 0)) { l = 1; return l | 0 } if (!b) { l = 0; return l | 0 } k = c[g + 8 >> 2] | 0; i = c[i + 8 >> 2] | 0; if (!k) { l = 0; return l | 0 } if (a[k + 6 >> 0] & 32) { l = 0; return l | 0 } j = b + 12 | 0; g = bg(k, 5, c[(c[j >> 2] | 0) + 204 >> 2] | 0) | 0; if (!g) { l = 0; return l | 0 } if ((k | 0) != (i | 0)) { if (!i) { l = 0; return l | 0 } if (a[i + 6 >> 0] & 32) { l = 0; return l | 0 } i = bg(i, 5, c[(c[j >> 2] | 0) + 204 >> 2] | 0) | 0; if (!i) { l = 0; return l | 0 } j = c[g + 8 >> 2] | 0; if ((j | 0) != (c[i + 8 >> 2] | 0)) { l = 0; return l | 0 } switch (j & 63) { case 0: break a; case 3: { i = +h[g >> 3] == +h[i >> 3] & 1; break } case 1: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 2: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 22: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 4: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 20: { i = If(c[g >> 2] | 0, c[i >> 2] | 0) | 0; break } case 7: { if ((c[g >> 2] | 0) == (c[i >> 2] | 0)) break a; else g = 0; return g | 0 } case 5: { if ((c[g >> 2] | 0) == (c[i >> 2] | 0)) break a; else g = 0; return g | 0 } default: i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1 }if (!i) { l = 0; return l | 0 } } break } case 5: { g = c[e >> 2] | 0; i = c[f >> 2] | 0; if ((g | 0) == (i | 0)) { l = 1; return l | 0 } if (!b) { l = 0; return l | 0 } k = c[g + 24 >> 2] | 0; i = c[i + 24 >> 2] | 0; if (!k) { l = 0; return l | 0 } if (a[k + 6 >> 0] & 32) { l = 0; return l | 0 } j = b + 12 | 0; g = bg(k, 5, c[(c[j >> 2] | 0) + 204 >> 2] | 0) | 0; if (!g) { l = 0; return l | 0 } if ((k | 0) != (i | 0)) { if (!i) { l = 0; return l | 0 } if (a[i + 6 >> 0] & 32) { l = 0; return l | 0 } i = bg(i, 5, c[(c[j >> 2] | 0) + 204 >> 2] | 0) | 0; if (!i) { l = 0; return l | 0 } j = c[g + 8 >> 2] | 0; if ((j | 0) != (c[i + 8 >> 2] | 0)) { l = 0; return l | 0 } switch (j & 63) { case 0: break a; case 3: { i = +h[g >> 3] == +h[i >> 3] & 1; break } case 1: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 2: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 22: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 4: { i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1; break } case 20: { i = If(c[g >> 2] | 0, c[i >> 2] | 0) | 0; break } case 7: { if ((c[g >> 2] | 0) == (c[i >> 2] | 0)) break a; else g = 0; return g | 0 } case 5: { if ((c[g >> 2] | 0) == (c[i >> 2] | 0)) break a; else g = 0; return g | 0 } default: i = (c[g >> 2] | 0) == (c[i >> 2] | 0) & 1 }if (!i) { l = 0; return l | 0 } } break } case 0: { l = 1; return l | 0 } default: { l = (c[e >> 2] | 0) == (c[f >> 2] | 0) & 1; return l | 0 } } while (0); i = b + 8 | 0; j = c[i >> 2] | 0; m = b + 28 | 0; k = c[m >> 2] | 0; c[i >> 2] = j + 16; p = g; n = c[p + 4 >> 2] | 0; o = j; c[o >> 2] = c[p >> 2]; c[o + 4 >> 2] = n; c[j + 8 >> 2] = c[g + 8 >> 2]; g = c[i >> 2] | 0; c[i >> 2] = g + 16; o = e; e = c[o + 4 >> 2] | 0; n = g; c[n >> 2] = c[o >> 2]; c[n + 4 >> 2] = e; c[g + 8 >> 2] = c[l >> 2]; g = c[i >> 2] | 0; c[i >> 2] = g + 16; n = f; e = c[n + 4 >> 2] | 0; l = g; c[l >> 2] = c[n >> 2]; c[l + 4 >> 2] = e; c[g + 8 >> 2] = c[f + 8 >> 2]; Wd(b, (c[i >> 2] | 0) + -48 | 0, 1, (d[(c[b + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); g = (c[m >> 2] | 0) + (j - k) | 0; l = c[i >> 2] | 0; b = l + -16 | 0; c[i >> 2] = b; e = c[b + 4 >> 2] | 0; f = g; c[f >> 2] = c[b >> 2]; c[f + 4 >> 2] = e; c[g + 8 >> 2] = c[l + -8 >> 2]; g = c[i >> 2] | 0; i = c[g + 8 >> 2] | 0; if (i) if ((i | 0) == 1) g = (c[g >> 2] | 0) != 0; else g = 1; else g = 0; p = g & 1; return p | 0 } function og(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, j = 0, k = 0, 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; y = i; i = i + 64 | 0; w = y + 24 | 0; v = y + 16 | 0; u = y + 8 | 0; t = y; o = y + 32 | 0; p = a + 8 | 0; q = a + 12 | 0; r = a + 28 | 0; s = a + 16 | 0; n = c[p >> 2] | 0; a: while (1) { l = n + -32 | 0; m = n + -24 | 0; e = c[m >> 2] | 0; k = n + -16 | 0; do if ((e | 0) == 3 | (e & 15 | 0) == 4) { j = n + -8 | 0; f = c[j >> 2] | 0; if ((f & 15 | 0) != 4) { if ((f | 0) != 3) { x = 6; break } h[t >> 3] = +h[k >> 3]; e = Mf(a, o, em(o, 7586, t) | 0) | 0; c[k >> 2] = e; c[j >> 2] = d[e + 4 >> 0] | 0 | 64; e = c[m >> 2] | 0 } f = c[(c[k >> 2] | 0) + 12 >> 2] | 0; g = (e & 15 | 0) == 4; if (!f) { if (!((e | 0) == 3 & (g ^ 1))) { e = 2; break } h[u >> 3] = +h[l >> 3]; e = Mf(a, o, em(o, 7586, u) | 0) | 0; c[l >> 2] = e; c[m >> 2] = d[e + 4 >> 0] | 0 | 64; e = 2; break } if (g ? (c[(c[l >> 2] | 0) + 12 >> 2] | 0) == 0 : 0) { n = c[k + 4 >> 2] | 0; e = l; c[e >> 2] = c[k >> 2]; c[e + 4 >> 2] = n; c[m >> 2] = c[j >> 2]; e = 2; break } b: do if ((b | 0) > 1) { k = f; e = 1; while (1) { f = n + (0 - e << 4) + -16 | 0; g = f + 8 | 0; j = c[g >> 2] | 0; if ((j & 15 | 0) != 4) { if ((j | 0) != 3) { f = k; break b } h[v >> 3] = +h[f >> 3]; m = Mf(a, o, em(o, 7586, v) | 0) | 0; c[f >> 2] = m; c[g >> 2] = d[m + 4 >> 0] | 0 | 64 } f = c[(c[f >> 2] | 0) + 12 >> 2] | 0; if (f >>> 0 >= (-3 - k | 0) >>> 0) { x = 21; break a } f = f + k | 0; e = e + 1 | 0; if ((e | 0) < (b | 0)) k = f; else break } } else e = 1; while (0); j = wg(a, (c[q >> 2] | 0) + 144 | 0, f) | 0; f = 0; g = e; while (1) { l = c[n + (0 - g << 4) >> 2] | 0; m = c[l + 12 >> 2] | 0; nn(j + f | 0, l + 16 | 0, m | 0) | 0; f = m + f | 0; if ((g | 0) <= 1) break; else g = g + -1 | 0 } m = 0 - e | 0; l = Mf(a, j, f) | 0; c[n + (m << 4) >> 2] = l; c[n + (m << 4) + 8 >> 2] = d[l + 4 >> 0] | 0 | 64 } else x = 6; while (0); if ((x | 0) == 6) { x = 0; e = cg(a, l, 15) | 0; if (!(c[e + 8 >> 2] | 0)) { e = cg(a, k, 15) | 0; if (!(c[e + 8 >> 2] | 0)) { x = 9; break } } j = c[r >> 2] | 0; z = c[p >> 2] | 0; c[p >> 2] = z + 16; A = e; g = c[A + 4 >> 2] | 0; f = z; c[f >> 2] = c[A >> 2]; c[f + 4 >> 2] = g; c[z + 8 >> 2] = c[e + 8 >> 2]; e = c[p >> 2] | 0; c[p >> 2] = e + 16; z = l; f = c[z + 4 >> 2] | 0; g = e; c[g >> 2] = c[z >> 2]; c[g + 4 >> 2] = f; c[e + 8 >> 2] = c[m >> 2]; e = c[p >> 2] | 0; c[p >> 2] = e + 16; g = k; m = c[g + 4 >> 2] | 0; k = e; c[k >> 2] = c[g >> 2]; c[k + 4 >> 2] = m; c[e + 8 >> 2] = c[n + -8 >> 2]; Wd(a, (c[p >> 2] | 0) + -48 | 0, 1, (d[(c[s >> 2] | 0) + 18 >> 0] | 0) & 1); e = (c[r >> 2] | 0) + (l - j) | 0; n = c[p >> 2] | 0; k = n + -16 | 0; c[p >> 2] = k; l = c[k + 4 >> 2] | 0; m = e; c[m >> 2] = c[k >> 2]; c[m + 4 >> 2] = l; c[e + 8 >> 2] = c[n + -8 >> 2]; e = 2 } b = b + 1 - e | 0; n = (c[p >> 2] | 0) + (1 - e << 4) | 0; c[p >> 2] = n; if ((b | 0) <= 1) { x = 27; break } } if ((x | 0) == 9) Gd(a, l, k); else if ((x | 0) == 21) Ed(a, 5209, w); else if ((x | 0) == 27) { i = y; return } } function pg(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; k = f + 8 | 0; a: do switch (c[k >> 2] & 15) { case 5: { g = c[f >> 2] | 0; i = c[g + 24 >> 2] | 0; if ((i | 0 ? (a[i + 6 >> 0] & 16) == 0 : 0) ? (j = bg(i, 4, c[(c[b + 12 >> 2] | 0) + 200 >> 2] | 0) | 0, j | 0) : 0) { i = j; break a } h[e >> 3] = +($f(g) | 0); c[e + 8 >> 2] = 3; return } case 4: { h[e >> 3] = +((c[(c[f >> 2] | 0) + 12 >> 2] | 0) >>> 0); c[e + 8 >> 2] = 3; return } default: { g = cg(b, f, 4) | 0; if (!(c[g + 8 >> 2] | 0)) Dd(b, f, 5232); else i = g } } while (0); l = b + 28 | 0; j = c[l >> 2] | 0; g = b + 8 | 0; o = c[g >> 2] | 0; c[g >> 2] = o + 16; p = i; n = c[p + 4 >> 2] | 0; m = o; c[m >> 2] = c[p >> 2]; c[m + 4 >> 2] = n; c[o + 8 >> 2] = c[i + 8 >> 2]; i = c[g >> 2] | 0; c[g >> 2] = i + 16; o = f; m = c[o + 4 >> 2] | 0; n = i; c[n >> 2] = c[o >> 2]; c[n + 4 >> 2] = m; c[i + 8 >> 2] = c[k >> 2]; i = c[g >> 2] | 0; c[g >> 2] = i + 16; n = f; m = c[n + 4 >> 2] | 0; f = i; c[f >> 2] = c[n >> 2]; c[f + 4 >> 2] = m; c[i + 8 >> 2] = c[k >> 2]; Wd(b, (c[g >> 2] | 0) + -48 | 0, 1, (d[(c[b + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); k = (c[l >> 2] | 0) + (e - j) | 0; f = c[g >> 2] | 0; j = f + -16 | 0; c[g >> 2] = j; b = c[j + 4 >> 2] | 0; e = k; c[e >> 2] = c[j >> 2]; c[e + 4 >> 2] = b; c[k + 8 >> 2] = c[f + -8 >> 2]; return } function qg(a, b, e, f, g) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; g = g | 0; var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; p = i; i = i + 32 | 0; m = p + 16 | 0; j = p; o = e + 8 | 0; k = c[o >> 2] | 0; do if ((k | 0) != 3) { if ((k & 15 | 0) == 4 ? (k = c[e >> 2] | 0, _e(k + 16 | 0, c[k + 12 >> 2] | 0, m) | 0) : 0) { h[j >> 3] = +h[m >> 3]; c[j + 8 >> 2] = 3; k = j; l = 6; break } } else { k = e; l = 6 } while (0); a: do if ((l | 0) == 6) { j = c[f + 8 >> 2] | 0; do if ((j | 0) != 3) { if ((j & 15 | 0) == 4 ? (l = c[f >> 2] | 0, _e(l + 16 | 0, c[l + 12 >> 2] | 0, m) | 0) : 0) { f = m; break } break a } while (0); h[b >> 3] = +Ye(g + -6 | 0, +h[k >> 3], +h[f >> 3]); c[b + 8 >> 2] = 3; i = p; return } while (0); j = cg(a, e, g) | 0; if (!(c[j + 8 >> 2] | 0)) { j = cg(a, f, g) | 0; if (!(c[j + 8 >> 2] | 0)) Hd(a, e, f); else n = j } else n = j; l = a + 28 | 0; m = c[l >> 2] | 0; g = a + 8 | 0; k = c[g >> 2] | 0; c[g >> 2] = k + 16; r = n; q = c[r + 4 >> 2] | 0; j = k; c[j >> 2] = c[r >> 2]; c[j + 4 >> 2] = q; c[k + 8 >> 2] = c[n + 8 >> 2]; k = c[g >> 2] | 0; c[g >> 2] = k + 16; j = e; e = c[j + 4 >> 2] | 0; n = k; c[n >> 2] = c[j >> 2]; c[n + 4 >> 2] = e; c[k + 8 >> 2] = c[o >> 2]; o = c[g >> 2] | 0; c[g >> 2] = o + 16; k = f; n = c[k + 4 >> 2] | 0; e = o; c[e >> 2] = c[k >> 2]; c[e + 4 >> 2] = n; c[o + 8 >> 2] = c[f + 8 >> 2]; Wd(a, (c[g >> 2] | 0) + -48 | 0, 1, (d[(c[a + 16 >> 2] | 0) + 18 >> 0] | 0) & 1); b = (c[l >> 2] | 0) + (b - m) | 0; o = c[g >> 2] | 0; a = o + -16 | 0; c[g >> 2] = a; e = c[a + 4 >> 2] | 0; g = b; c[g >> 2] = c[a >> 2]; c[g + 4 >> 2] = e; c[b + 8 >> 2] = c[o + -8 >> 2]; i = p; return } function rg(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0; f = c[a + 16 >> 2] | 0; g = f + 24 | 0; j = c[g >> 2] | 0; i = f + 28 | 0; k = c[(c[i >> 2] | 0) + -4 >> 2] | 0; h = k & 63; switch (k & 63) { case 12: case 7: case 6: case 21: case 19: case 18: case 17: case 16: case 15: case 14: case 13: { h = a + 8 | 0; a = c[h >> 2] | 0; g = a + -16 | 0; c[h >> 2] = g; k = k >>> 6 & 255; h = c[g + 4 >> 2] | 0; i = j + (k << 4) | 0; c[i >> 2] = c[g >> 2]; c[i + 4 >> 2] = h; c[j + (k << 4) + 8 >> 2] = c[a + -8 >> 2]; return } case 24: case 25: case 26: { e = a + 8 | 0; f = c[e >> 2] | 0; b = c[f + -8 >> 2] | 0; if (b) if ((b | 0) == 1) b = (c[f + -16 >> 2] | 0) == 0; else b = 0; else b = 1; d = b & 1; b = d ^ 1; c[e >> 2] = f + -16; if ((h | 0) == 26) { a = (c[(cg(a, j + (k >>> 23 << 4) | 0, 14) | 0) + 8 >> 2] | 0) == 0; b = a ? d : b } if ((b | 0) == (k >>> 6 & 255 | 0)) return; c[i >> 2] = (c[i >> 2] | 0) + 4; return } case 22: { d = a + 8 | 0; i = c[d >> 2] | 0; e = i + -32 | 0; b = e - (j + (k >>> 23 << 4)) | 0; l = i + -16 | 0; h = c[l + 4 >> 2] | 0; j = i + -48 | 0; c[j >> 2] = c[l >> 2]; c[j + 4 >> 2] = h; c[i + -40 >> 2] = c[i + -8 >> 2]; if ((b | 0) > 16) { c[d >> 2] = e; og(a, b >> 4) } j = c[d >> 2] | 0; a = c[g >> 2] | 0; l = k >>> 6 & 255; h = j + -16 | 0; i = c[h + 4 >> 2] | 0; k = a + (l << 4) | 0; c[k >> 2] = c[h >> 2]; c[k + 4 >> 2] = i; c[a + (l << 4) + 8 >> 2] = c[j + -8 >> 2]; c[d >> 2] = c[f + 4 >> 2]; return } case 34: { c[a + 8 >> 2] = c[f + 4 >> 2]; return } case 29: { if (!(k & 8372224)) return; c[a + 8 >> 2] = c[f + 4 >> 2]; return } default: return } } function sg(b) { b = b | 0; var e = 0, f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0.0, p = 0.0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, E = 0, F = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0, N = 0, O = 0, P = 0, Q = 0, R = 0, S = 0, T = 0.0; Q = i; i = i + 32 | 0; P = Q + 24 | 0; O = Q + 16 | 0; N = Q + 8 | 0; B = Q; F = b + 16 | 0; I = b + 40 | 0; J = b + 12 | 0; R = b + 8 | 0; L = b + 24 | 0; S = b + 48 | 0; M = b + 20 | 0; C = b + 6 | 0; E = b + 44 | 0; j = c[F >> 2] | 0; a: while (1) { u = c[c[j >> 2] >> 2] | 0; z = u + 12 | 0; v = c[(c[z >> 2] | 0) + 8 >> 2] | 0; w = j + 24 | 0; x = j + 28 | 0; y = j + 4 | 0; e = c[w >> 2] | 0; b: while (1) { k = c[x >> 2] | 0; c[x >> 2] = k + 4; k = c[k >> 2] | 0; f = a[I >> 0] | 0; if ((f & 12) != 0 ? (H = (c[S >> 2] | 0) + -1 | 0, c[S >> 2] = H, H = (H | 0) == 0, !((f & 4) == 0 & (H ^ 1))) : 0) { t = c[F >> 2] | 0; e = f & 255; if ((e & 8 | 0) == 0 | H ^ 1) r = 0; else { c[S >> 2] = c[E >> 2]; r = 1 } s = t + 18 | 0; f = d[s >> 0] | 0; if (!(f & 128)) { if (r) Qd(b, 3, -1); do if (!(e & 4)) { e = t + 28 | 0; f = e } else { l = c[(c[c[t >> 2] >> 2] | 0) + 12 >> 2] | 0; q = t + 28 | 0; e = c[q >> 2] | 0; f = c[l + 12 >> 2] | 0; g = (e - f >> 2) + -1 | 0; l = c[l + 20 >> 2] | 0; m = (l | 0) == 0; if (m) n = 0; else n = c[l + (g << 2) >> 2] | 0; if (g | 0 ? (K = c[M >> 2] | 0, e >>> 0 > K >>> 0) : 0) { if (m) e = 0; else e = c[l + ((K - f >> 2) + -1 << 2) >> 2] | 0; if ((n | 0) == (e | 0)) { f = q; e = q; break } } Qd(b, 2, n); f = q; e = q } while (0); e = c[e >> 2] | 0; c[M >> 2] = e; if ((a[C >> 0] | 0) == 1) { A = 22; break a } } else a[s >> 0] = f & 127; t = c[w >> 2] | 0 } else t = e; s = k >>> 6 & 255; f = t + (s << 4) | 0; do switch (k & 63) { case 31: { A = 147; break b } case 0: { e = k >>> 23; n = t + (e << 4) | 0; q = c[n + 4 >> 2] | 0; r = f; c[r >> 2] = c[n >> 2]; c[r + 4 >> 2] = q; c[t + (s << 4) + 8 >> 2] = c[t + (e << 4) + 8 >> 2]; e = t; continue b } case 1: { e = k >>> 14; n = v + (e << 4) | 0; q = c[n + 4 >> 2] | 0; r = f; c[r >> 2] = c[n >> 2]; c[r + 4 >> 2] = q; c[t + (s << 4) + 8 >> 2] = c[v + (e << 4) + 8 >> 2]; e = t; continue b } case 2: { e = c[x >> 2] | 0; c[x >> 2] = e + 4; e = (c[e >> 2] | 0) >>> 6; n = v + (e << 4) | 0; q = c[n + 4 >> 2] | 0; r = f; c[r >> 2] = c[n >> 2]; c[r + 4 >> 2] = q; c[t + (s << 4) + 8 >> 2] = c[v + (e << 4) + 8 >> 2]; e = t; continue b } case 3: { c[f >> 2] = k >>> 23; c[t + (s << 4) + 8 >> 2] = 1; if (!(k & 8372224)) { e = t; continue b } c[x >> 2] = (c[x >> 2] | 0) + 4; e = t; continue b } case 4: { e = k >>> 23; while (1) { c[f + 8 >> 2] = 0; if (!e) { e = t; continue b } else { f = f + 16 | 0; e = e + -1 | 0 } } } case 5: { e = c[(c[u + 16 + (k >>> 23 << 2) >> 2] | 0) + 8 >> 2] | 0; n = e; q = c[n + 4 >> 2] | 0; r = f; c[r >> 2] = c[n >> 2]; c[r + 4 >> 2] = q; c[t + (s << 4) + 8 >> 2] = c[e + 8 >> 2]; e = t; continue b } case 6: { e = k >>> 14; jg(b, c[(c[u + 16 + (k >>> 23 << 2) >> 2] | 0) + 8 >> 2] | 0, (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0, f); e = c[w >> 2] | 0; continue b } case 7: { e = k >>> 14; jg(b, t + (k >>> 23 << 4) | 0, (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0, f); e = c[w >> 2] | 0; continue b } case 8: { r = k >>> 23; e = k >>> 14; kg(b, c[(c[u + 16 + (s << 2) >> 2] | 0) + 8 >> 2] | 0, (r & 256 | 0) == 0 ? t + (r << 4) | 0 : v + ((r & 255) << 4) | 0, (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0); e = c[w >> 2] | 0; continue b } case 9: { g = c[u + 16 + (k >>> 23 << 2) >> 2] | 0; r = c[g + 8 >> 2] | 0; m = f; n = c[m + 4 >> 2] | 0; q = r; c[q >> 2] = c[m >> 2]; c[q + 4 >> 2] = n; s = t + (s << 4) + 8 | 0; c[r + 8 >> 2] = c[s >> 2]; if (!(c[s >> 2] & 64)) { e = t; continue b } e = c[f >> 2] | 0; if (!(a[e + 5 >> 0] & 3)) { e = t; continue b } if (!(a[g + 5 >> 0] & 4)) { e = t; continue b } je(b, g, e); e = t; continue b } case 10: { s = k >>> 23; e = k >>> 14; kg(b, f, (s & 256 | 0) == 0 ? t + (s << 4) | 0 : v + ((s & 255) << 4) | 0, (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0); e = c[w >> 2] | 0; continue b } case 11: { l = k >>> 23; e = k >>> 14 & 511; g = Xf(b) | 0; c[f >> 2] = g; c[t + (s << 4) + 8 >> 2] = 69; if (e | l | 0) { t = We(l) | 0; Rf(b, g, t, We(e) | 0) } if ((c[(c[J >> 2] | 0) + 12 >> 2] | 0) > 0) { c[R >> 2] = f + 16; Ee(b); c[R >> 2] = c[y >> 2] } e = c[w >> 2] | 0; continue b } case 12: { r = k >>> 23; s = t + (r << 4) | 0; e = f + 16 | 0; m = s; n = c[m + 4 >> 2] | 0; q = e; c[q >> 2] = c[m >> 2]; c[q + 4 >> 2] = n; c[e + 8 >> 2] = c[t + (r << 4) + 8 >> 2]; e = k >>> 14; jg(b, s, (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0, f); e = c[w >> 2] | 0; continue b } case 13: { g = k >>> 23; g = (g & 256 | 0) == 0 ? t + (g << 4) | 0 : v + ((g & 255) << 4) | 0; e = k >>> 14; e = (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0; if ((c[g + 8 >> 2] | 0) == 3 ? (c[e + 8 >> 2] | 0) == 3 : 0) { h[f >> 3] = +h[g >> 3] + +h[e >> 3]; c[t + (s << 4) + 8 >> 2] = 3; e = t; continue b } qg(b, f, g, e, 6); e = c[w >> 2] | 0; continue b } case 14: { g = k >>> 23; g = (g & 256 | 0) == 0 ? t + (g << 4) | 0 : v + ((g & 255) << 4) | 0; e = k >>> 14; e = (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0; if ((c[g + 8 >> 2] | 0) == 3 ? (c[e + 8 >> 2] | 0) == 3 : 0) { h[f >> 3] = +h[g >> 3] - +h[e >> 3]; c[t + (s << 4) + 8 >> 2] = 3; e = t; continue b } qg(b, f, g, e, 7); e = c[w >> 2] | 0; continue b } case 15: { g = k >>> 23; g = (g & 256 | 0) == 0 ? t + (g << 4) | 0 : v + ((g & 255) << 4) | 0; e = k >>> 14; e = (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0; if ((c[g + 8 >> 2] | 0) == 3 ? (c[e + 8 >> 2] | 0) == 3 : 0) { h[f >> 3] = +h[g >> 3] * +h[e >> 3]; c[t + (s << 4) + 8 >> 2] = 3; e = t; continue b } qg(b, f, g, e, 8); e = c[w >> 2] | 0; continue b } case 16: { g = k >>> 23; g = (g & 256 | 0) == 0 ? t + (g << 4) | 0 : v + ((g & 255) << 4) | 0; e = k >>> 14; e = (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0; if ((c[g + 8 >> 2] | 0) == 3 ? (c[e + 8 >> 2] | 0) == 3 : 0) { h[f >> 3] = +h[g >> 3] / +h[e >> 3]; c[t + (s << 4) + 8 >> 2] = 3; e = t; continue b } qg(b, f, g, e, 9); e = c[w >> 2] | 0; continue b } case 17: { g = k >>> 23; g = (g & 256 | 0) == 0 ? t + (g << 4) | 0 : v + ((g & 255) << 4) | 0; e = k >>> 14; e = (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0; if ((c[g + 8 >> 2] | 0) == 3 ? (c[e + 8 >> 2] | 0) == 3 : 0) { o = +h[g >> 3]; p = +h[e >> 3]; h[f >> 3] = o - p * +D(+(o / p)); c[t + (s << 4) + 8 >> 2] = 3; e = t; continue b } qg(b, f, g, e, 10); e = c[w >> 2] | 0; continue b } case 18: { g = k >>> 23; g = (g & 256 | 0) == 0 ? t + (g << 4) | 0 : v + ((g & 255) << 4) | 0; e = k >>> 14; e = (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0; if ((c[g + 8 >> 2] | 0) == 3 ? (c[e + 8 >> 2] | 0) == 3 : 0) { h[f >> 3] = +G(+(+h[g >> 3]), +(+h[e >> 3])); c[t + (s << 4) + 8 >> 2] = 3; e = t; continue b } qg(b, f, g, e, 11); e = c[w >> 2] | 0; continue b } case 19: { r = k >>> 23; e = t + (r << 4) | 0; if ((c[t + (r << 4) + 8 >> 2] | 0) == 3) { h[f >> 3] = -+h[e >> 3]; c[t + (s << 4) + 8 >> 2] = 3; e = t; continue b } else { qg(b, f, e, e, 12); e = c[w >> 2] | 0; continue b } } case 20: { e = k >>> 23; g = c[t + (e << 4) + 8 >> 2] | 0; if (g) if ((g | 0) == 1) e = (c[t + (e << 4) >> 2] | 0) == 0; else e = 0; else e = 1; c[f >> 2] = e & 1; c[t + (s << 4) + 8 >> 2] = 1; e = t; continue b } case 21: { pg(b, f, t + (k >>> 23 << 4) | 0); e = c[w >> 2] | 0; continue b } case 22: { g = k >>> 23; e = k >>> 14 & 511; c[R >> 2] = t + (e << 4) + 16; og(b, 1 - g + e | 0); t = c[w >> 2] | 0; e = t + (s << 4) | 0; f = t + (g << 4) | 0; n = f; q = c[n + 4 >> 2] | 0; r = e; c[r >> 2] = c[n >> 2]; c[r + 4 >> 2] = q; c[t + (s << 4) + 8 >> 2] = c[t + (g << 4) + 8 >> 2]; if ((c[(c[J >> 2] | 0) + 12 >> 2] | 0) > 0) { c[R >> 2] = s >>> 0 >= g >>> 0 ? e + 16 | 0 : f; Ee(b); e = c[y >> 2] | 0; c[R >> 2] = e } else e = c[y >> 2] | 0; t = c[w >> 2] | 0; c[R >> 2] = e; e = t; continue b } case 23: { if (s | 0) fe(b, (c[w >> 2] | 0) + (s << 4) + -16 | 0); c[x >> 2] = (c[x >> 2] | 0) + ((k >>> 14) + -131071 << 2); e = t; continue b } case 24: { f = k >>> 23; f = (f & 256 | 0) == 0 ? t + (f << 4) | 0 : v + ((f & 255) << 4) | 0; e = k >>> 14; e = (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0; if ((c[f + 8 >> 2] | 0) == (c[e + 8 >> 2] | 0)) f = (ng(b, f, e) | 0) != 0; else f = 0; e = c[x >> 2] | 0; if ((f & 1 | 0) == (s | 0)) { g = c[e >> 2] | 0; f = g >>> 6 & 255; if (f) { fe(b, (c[w >> 2] | 0) + (f << 4) + -16 | 0); e = c[x >> 2] | 0 } e = e + ((g >>> 14) + -131070 << 2) | 0 } else e = e + 4 | 0; c[x >> 2] = e; e = c[w >> 2] | 0; continue b } case 25: { r = k >>> 23; e = k >>> 14; t = (lg(b, (r & 256 | 0) == 0 ? t + (r << 4) | 0 : v + ((r & 255) << 4) | 0, (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0) | 0) == (s | 0); e = c[x >> 2] | 0; if (t) { g = c[e >> 2] | 0; f = g >>> 6 & 255; if (f) { fe(b, (c[w >> 2] | 0) + (f << 4) + -16 | 0); e = c[x >> 2] | 0 } e = e + ((g >>> 14) + -131070 << 2) | 0 } else e = e + 4 | 0; c[x >> 2] = e; e = c[w >> 2] | 0; continue b } case 26: { r = k >>> 23; e = k >>> 14; t = (mg(b, (r & 256 | 0) == 0 ? t + (r << 4) | 0 : v + ((r & 255) << 4) | 0, (e & 256 | 0) == 0 ? t + ((e & 511) << 4) | 0 : v + ((e & 255) << 4) | 0) | 0) == (s | 0); e = c[x >> 2] | 0; if (t) { g = c[e >> 2] | 0; f = g >>> 6 & 255; if (f) { fe(b, (c[w >> 2] | 0) + (f << 4) + -16 | 0); e = c[x >> 2] | 0 } e = e + ((g >>> 14) + -131070 << 2) | 0 } else e = e + 4 | 0; c[x >> 2] = e; e = c[w >> 2] | 0; continue b } case 27: { e = c[t + (s << 4) + 8 >> 2] | 0; g = (e | 0) == 0; if (!(k & 8372224)) { if (!g) if (!((e | 0) == 1 ? !(c[f >> 2] | 0) : 0)) A = 115 } else if (!g) { if ((e | 0) == 1 ? (c[f >> 2] | 0) == 0 : 0) A = 115 } else A = 115; if ((A | 0) == 115) { A = 0; c[x >> 2] = (c[x >> 2] | 0) + 4; e = t; continue b } e = c[x >> 2] | 0; g = c[e >> 2] | 0; f = g >>> 6 & 255; if (f) { fe(b, (c[w >> 2] | 0) + (f << 4) + -16 | 0); e = c[x >> 2] | 0 } c[x >> 2] = e + ((g >>> 14) + -131070 << 2); e = t; continue b } case 28: { l = k >>> 23; g = t + (l << 4) | 0; l = c[t + (l << 4) + 8 >> 2] | 0; e = (l | 0) == 0; if (!(k & 8372224)) if (!e) if ((l | 0) == 1 ? (c[g >> 2] | 0) == 0 : 0) A = 127; else A = 126; else A = 127; else if (!e) if ((l | 0) == 1 ? (c[g >> 2] | 0) == 0 : 0) A = 126; else A = 127; else A = 126; if ((A | 0) == 126) { A = 0; e = (c[x >> 2] | 0) + 4 | 0 } else if ((A | 0) == 127) { A = 0; r = g; g = c[r + 4 >> 2] | 0; e = f; c[e >> 2] = c[r >> 2]; c[e + 4 >> 2] = g; c[t + (s << 4) + 8 >> 2] = l; e = c[x >> 2] | 0; g = c[e >> 2] | 0; f = g >>> 6 & 255; if (f) { fe(b, (c[w >> 2] | 0) + (f << 4) + -16 | 0); e = c[x >> 2] | 0 } e = e + ((g >>> 14) + -131070 << 2) | 0 } c[x >> 2] = e; e = t; continue b } case 29: { g = k >>> 23; e = k >>> 14 & 511; if (g | 0) c[R >> 2] = f + (g << 4); if (!(Sd(b, f, e + -1 | 0) | 0)) { A = 137; break b } if (e | 0) c[R >> 2] = c[y >> 2]; e = c[w >> 2] | 0; continue b } case 30: { e = k >>> 23; if (e | 0) c[R >> 2] = f + (e << 4); if (!(Sd(b, f, -1) | 0)) { A = 142; break b } e = c[w >> 2] | 0; continue b } case 32: { T = +h[f + 32 >> 3]; o = T + +h[f >> 3]; p = +h[f + 16 >> 3]; if (T > 0.0) { if (!(o <= p)) { e = t; continue b } } else if (!(p <= o)) { e = t; continue b } c[x >> 2] = (c[x >> 2] | 0) + ((k >>> 14) + -131071 << 2); h[f >> 3] = o; c[t + (s << 4) + 8 >> 2] = 3; e = f + 48 | 0; h[e >> 3] = o; c[e + 8 >> 2] = 3; e = t; continue b } case 33: { l = f + 16 | 0; n = f + 32 | 0; m = t + (s << 4) + 8 | 0; e = c[m >> 2] | 0; if ((e | 0) != 3) { if ((e & 15 | 0) != 4) { A = 162; break a } s = c[f >> 2] | 0; if (!(_e(s + 16 | 0, c[s + 12 >> 2] | 0, B) | 0)) { A = 162; break a } h[f >> 3] = +h[B >> 3]; c[m >> 2] = 3 } e = l + 8 | 0; g = c[e >> 2] | 0; if ((g | 0) != 3) { if ((g & 15 | 0) != 4) { A = 167; break a } s = c[l >> 2] | 0; if (!(_e(s + 16 | 0, c[s + 12 >> 2] | 0, B) | 0)) { A = 167; break a } h[l >> 3] = +h[B >> 3]; c[e >> 2] = 3 } e = n + 8 | 0; g = c[e >> 2] | 0; if ((g | 0) != 3) { if ((g & 15 | 0) != 4) { A = 172; break a } s = c[n >> 2] | 0; if (!(_e(s + 16 | 0, c[s + 12 >> 2] | 0, B) | 0)) { A = 172; break a } h[n >> 3] = +h[B >> 3]; c[e >> 2] = 3 } h[f >> 3] = +h[f >> 3] - +h[n >> 3]; c[m >> 2] = 3; c[x >> 2] = (c[x >> 2] | 0) + ((k >>> 14) + -131071 << 2); e = t; continue b } case 34: { e = f + 48 | 0; q = f + 32 | 0; r = e + 32 | 0; n = q; m = c[n + 4 >> 2] | 0; l = r; c[l >> 2] = c[n >> 2]; c[l + 4 >> 2] = m; c[r + 8 >> 2] = c[q + 8 >> 2]; r = f + 16 | 0; q = e + 16 | 0; l = r; m = c[l + 4 >> 2] | 0; n = q; c[n >> 2] = c[l >> 2]; c[n + 4 >> 2] = m; c[q + 8 >> 2] = c[r + 8 >> 2]; q = f; r = c[q + 4 >> 2] | 0; f = e; c[f >> 2] = c[q >> 2]; c[f + 4 >> 2] = r; c[e + 8 >> 2] = c[t + (s << 4) + 8 >> 2]; c[R >> 2] = e + 48; Wd(b, e, k >>> 14 & 511, 1); t = c[w >> 2] | 0; c[R >> 2] = c[y >> 2]; f = c[x >> 2] | 0; c[x >> 2] = f + 4; f = c[f >> 2] | 0; k = f; e = t; f = t + ((f >>> 6 & 255) << 4) | 0; break } case 35: { e = t; break } case 36: { g = k >>> 23; e = k >>> 14 & 511; if (!g) g = ((c[R >> 2] | 0) - f >> 4) + -1 | 0; if (!e) { e = c[x >> 2] | 0; c[x >> 2] = e + 4; e = (c[e >> 2] | 0) >>> 6 } l = c[f >> 2] | 0; e = g + -50 + (e * 50 | 0) | 0; if ((e | 0) > (c[l + 8 >> 2] | 0)) Wf(b, l, e); if ((g | 0) > 0) { k = l + 5 | 0; while (1) { s = f + (g << 4) | 0; Uf(b, l, e, s); e = e + -1 | 0; if ((c[s + 8 >> 2] & 64 | 0 ? a[(c[s >> 2] | 0) + 5 >> 0] & 3 : 0) ? a[k >> 0] & 4 : 0) le(b, l); if ((g | 0) <= 1) break; else g = g + -1 | 0 } } c[R >> 2] = c[y >> 2]; e = t; continue b } case 37: { q = c[(c[(c[z >> 2] | 0) + 16 >> 2] | 0) + (k >>> 14 << 2) >> 2] | 0; r = q + 32 | 0; k = c[r >> 2] | 0; m = c[q + 40 >> 2] | 0; n = c[q + 28 >> 2] | 0; c: do if (!k) A = 199; else { if ((m | 0) > 0) { l = k + 16 | 0; g = 0; do { e = d[n + (g << 3) + 5 >> 0] | 0; if (!(a[n + (g << 3) + 4 >> 0] | 0)) e = c[(c[u + 16 + (e << 2) >> 2] | 0) + 8 >> 2] | 0; else e = t + (e << 4) | 0; if ((c[(c[l + (g << 2) >> 2] | 0) + 8 >> 2] | 0) != (e | 0)) { A = 199; break c } g = g + 1 | 0 } while ((g | 0) < (m | 0)) } c[f >> 2] = k; c[t + (s << 4) + 8 >> 2] = 70 } while (0); if ((A | 0) == 199) { A = 0; l = be(b, m) | 0; c[l + 12 >> 2] = q; c[f >> 2] = l; c[t + (s << 4) + 8 >> 2] = 70; if ((m | 0) > 0) { k = l + 16 | 0; e = 0; do { g = d[n + (e << 3) + 5 >> 0] | 0; if (!(a[n + (e << 3) + 4 >> 0] | 0)) c[k + (e << 2) >> 2] = c[u + 16 + (g << 2) >> 2]; else c[k + (e << 2) >> 2] = de(b, t + (g << 4) | 0) | 0; e = e + 1 | 0 } while ((e | 0) != (m | 0)) } if (a[q + 5 >> 0] & 4) me(b, q, l); c[r >> 2] = l } if ((c[(c[J >> 2] | 0) + 12 >> 2] | 0) > 0) { c[R >> 2] = f + 16; Ee(b); c[R >> 2] = c[y >> 2] } e = c[w >> 2] | 0; continue b } case 38: { r = k >>> 23; e = r + -1 | 0; g = (t - (c[j >> 2] | 0) >> 4) - (d[(c[z >> 2] | 0) + 76 >> 0] | 0) | 0; n = g + -1 | 0; if (!r) { if (((c[L >> 2] | 0) - (c[R >> 2] | 0) >> 4 | 0) < (g | 0)) Td(b, n); e = c[w >> 2] | 0; f = e + (s << 4) | 0; c[R >> 2] = f + (n << 4); m = n } else { m = e; e = t } if ((m | 0) <= 0) continue b; l = e + (1 - g << 4) | 0; g = 0; while (1) { if ((g | 0) < (n | 0)) { k = l + (g << 4) | 0; r = k; s = c[r + 4 >> 2] | 0; t = f + (g << 4) | 0; c[t >> 2] = c[r >> 2]; c[t + 4 >> 2] = s; k = c[k + 8 >> 2] | 0 } else k = 0; c[f + (g << 4) + 8 >> 2] = k; g = g + 1 | 0; if ((g | 0) == (m | 0)) continue b } } default: { e = t; continue b } } while (0); g = c[f + 24 >> 2] | 0; if (!g) continue; r = f + 16 | 0; s = c[r + 4 >> 2] | 0; t = f; c[t >> 2] = c[r >> 2]; c[t + 4 >> 2] = s; c[f + 8 >> 2] = g; c[x >> 2] = (c[x >> 2] | 0) + ((k >>> 14) + -131071 << 2) } if ((A | 0) == 137) { A = 0; j = c[F >> 2] | 0; z = j + 18 | 0; a[z >> 0] = d[z >> 0] | 4; continue } else if ((A | 0) == 142) { A = 0; g = c[F >> 2] | 0; j = c[g + 8 >> 2] | 0; k = c[g >> 2] | 0; l = c[j >> 2] | 0; m = g + 24 | 0; n = (c[m >> 2] | 0) + (d[(c[(c[k >> 2] | 0) + 12 >> 2] | 0) + 76 >> 0] << 4) | 0; if ((c[(c[z >> 2] | 0) + 56 >> 2] | 0) > 0) fe(b, c[j + 24 >> 2] | 0); if (k >>> 0 < n >>> 0) { e = 0; f = k; do { x = f; y = c[x + 4 >> 2] | 0; z = l + (e << 4) | 0; c[z >> 2] = c[x >> 2]; c[z + 4 >> 2] = y; c[l + (e << 4) + 8 >> 2] = c[k + (e << 4) + 8 >> 2]; e = e + 1 | 0; f = k + (e << 4) | 0 } while (f >>> 0 < n >>> 0) } z = k; c[j + 24 >> 2] = l + ((c[m >> 2] | 0) - z >> 4 << 4); z = l + ((c[R >> 2] | 0) - z >> 4 << 4) | 0; c[R >> 2] = z; c[j + 4 >> 2] = z; c[j + 28 >> 2] = c[g + 28 >> 2]; z = j + 18 | 0; a[z >> 0] = d[z >> 0] | 64; c[F >> 2] = j; continue } else if ((A | 0) == 147) { A = 0; e = k >>> 23; if (e | 0) c[R >> 2] = f + (e << 4) + -16; if ((c[(c[z >> 2] | 0) + 56 >> 2] | 0) > 0) fe(b, t); f = Vd(b, f) | 0; if (!(a[j + 18 >> 0] & 4)) { A = 221; break } e = c[F >> 2] | 0; if (!f) { j = e; continue } c[R >> 2] = c[e + 4 >> 2]; j = e; continue } } if ((A | 0) == 22) { if (!r) { Q = e + -4 | 0; c[f >> 2] = Q; Q = a[s >> 0] | 0; Q = Q & 255; Q = Q | 128; Q = Q & 255; a[s >> 0] = Q; Q = c[R >> 2] | 0; Q = Q + -16 | 0; c[t >> 2] = Q; Ld(b, 1) } c[S >> 2] = 1; S = e + -4 | 0; c[f >> 2] = S; S = a[s >> 0] | 0; S = S & 255; S = S | 128; S = S & 255; a[s >> 0] = S; S = c[R >> 2] | 0; S = S + -16 | 0; c[t >> 2] = S; Ld(b, 1) } else if ((A | 0) == 162) Ed(b, 5246, N); else if ((A | 0) == 167) Ed(b, 5283, O); else if ((A | 0) == 172) Ed(b, 5312, P); else if ((A | 0) == 221) { i = Q; return } } function tg(a) { a = a | 0; var b = 0, e = 0, f = 0; f = i; i = i + 16 | 0; b = f; e = Ya[c[a + 8 >> 2] & 31](c[a + 16 >> 2] | 0, c[a + 12 >> 2] | 0, b) | 0; b = c[b >> 2] | 0; if ((e | 0) == 0 | (b | 0) == 0) { e = -1; i = f; return e | 0 } c[a >> 2] = b + -1; c[a + 4 >> 2] = e + 1; e = d[e >> 0] | 0; i = f; return e | 0 } function ug(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; c[b + 16 >> 2] = a; c[b + 8 >> 2] = d; c[b + 12 >> 2] = e; c[b >> 2] = 0; c[b + 4 >> 2] = 0; return } function vg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; n = i; i = i + 16 | 0; h = n; if (!d) { m = 0; i = n; return m | 0 } j = a + 16 | 0; k = a + 8 | 0; l = a + 12 | 0; m = a + 4 | 0; e = c[a >> 2] | 0; while (1) { if (!e) { f = Ya[c[k >> 2] & 31](c[j >> 2] | 0, c[l >> 2] | 0, h) | 0; e = c[h >> 2] | 0; if ((f | 0) == 0 | (e | 0) == 0) { b = 8; break } c[a >> 2] = e; c[m >> 2] = f; g = f } else g = c[m >> 2] | 0; f = d >>> 0 > e >>> 0 ? e : d; nn(b | 0, g | 0, f | 0) | 0; e = (c[a >> 2] | 0) - f | 0; c[a >> 2] = e; c[m >> 2] = (c[m >> 2] | 0) + f; d = d - f | 0; if (!d) { d = 0; b = 8; break } else b = b + f | 0 } if ((b | 0) == 8) { i = n; return d | 0 } return 0 } function wg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = b + 8 | 0; f = c[e >> 2] | 0; if (f >>> 0 >= d >>> 0) { f = c[b >> 2] | 0; return f | 0 } d = d >>> 0 < 32 ? 32 : d; if ((d + 1 | 0) >>> 0 > 4294967293) Te(a); f = Ue(a, c[b >> 2] | 0, f, d) | 0; c[b >> 2] = f; c[e >> 2] = d; return f | 0 } function xg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0; l = i; i = i + 16 | 0; h = c[a + 12 >> 2] | 0; j = a + 4 | 0; e = c[j >> 2] | 0; k = a + 8 | 0; g = c[k >> 2] | 0; if ((e - g | 0) >>> 0 >= d >>> 0) { h = c[a >> 2] | 0; j = g; j = h + j | 0; nn(j | 0, b | 0, d | 0) | 0; j = c[k >> 2] | 0; j = j + d | 0; c[k >> 2] = j; i = l; return } f = e << 1; f = (f - g | 0) >>> 0 < d >>> 0 ? g + d | 0 : f; if (f >>> 0 < g >>> 0 | (f - g | 0) >>> 0 < d >>> 0) Og(h, 5547, l) | 0; e = Ec(h, f) | 0; nn(e | 0, c[a >> 2] | 0, c[k >> 2] | 0) | 0; if ((c[a >> 2] | 0) != (a + 16 | 0)) rb(h, -2); c[a >> 2] = e; c[j >> 2] = f; h = e; j = c[k >> 2] | 0; j = h + j | 0; nn(j | 0, b | 0, d | 0) | 0; j = c[k >> 2] | 0; j = j + d | 0; c[k >> 2] = j; i = l; return } function yg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0; l = i; i = i + 16 | 0; g = Vl(b) | 0; h = c[a + 12 >> 2] | 0; j = a + 4 | 0; d = c[j >> 2] | 0; k = a + 8 | 0; f = c[k >> 2] | 0; if ((d - f | 0) >>> 0 >= g >>> 0) { h = c[a >> 2] | 0; j = f; j = h + j | 0; nn(j | 0, b | 0, g | 0) | 0; j = c[k >> 2] | 0; j = j + g | 0; c[k >> 2] = j; i = l; return } e = d << 1; e = (e - f | 0) >>> 0 < g >>> 0 ? f + g | 0 : e; if (e >>> 0 < f >>> 0 | (e - f | 0) >>> 0 < g >>> 0) Og(h, 5547, l) | 0; d = Ec(h, e) | 0; nn(d | 0, c[a >> 2] | 0, c[k >> 2] | 0) | 0; if ((c[a >> 2] | 0) != (a + 16 | 0)) rb(h, -2); c[a >> 2] = d; c[j >> 2] = e; h = d; j = c[k >> 2] | 0; j = h + j | 0; nn(j | 0, b | 0, g | 0) | 0; j = c[k >> 2] | 0; j = j + g | 0; c[k >> 2] = j; i = l; return } function zg(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; o = i; i = i + 16 | 0; h = o; b = o + 4 | 0; d = a + 12 | 0; l = c[d >> 2] | 0; m = Jb(l, -1, b) | 0; n = a + 16 | 0; if ((c[a >> 2] | 0) != (n | 0)) sb(l, -2); k = c[b >> 2] | 0; g = c[d >> 2] | 0; f = a + 4 | 0; d = c[f >> 2] | 0; j = a + 8 | 0; b = c[j >> 2] | 0; if ((d - b | 0) >>> 0 < k >>> 0) { e = d << 1; e = (e - b | 0) >>> 0 < k >>> 0 ? b + k | 0 : e; if (e >>> 0 < b >>> 0 | (e - b | 0) >>> 0 < k >>> 0) Og(g, 5547, h) | 0; d = Ec(g, e) | 0; nn(d | 0, c[a >> 2] | 0, c[j >> 2] | 0) | 0; if ((c[a >> 2] | 0) != (n | 0)) rb(g, -2); c[a >> 2] = d; c[f >> 2] = e; b = c[j >> 2] | 0 } else d = c[a >> 2] | 0; nn(d + b | 0, m | 0, k | 0) | 0; c[j >> 2] = (c[j >> 2] | 0) + k; rb(l, (c[a >> 2] | 0) != (n | 0) ? -2 : -1); i = o; return } function Ag(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 128 | 0; h = j + 16 | 0; f = j + 8 | 0; e = j; g = j + 28 | 0; if (!(zd(a, 0, g) | 0)) { c[e >> 2] = b; c[e + 4 >> 2] = d; h = Og(a, 5877, e) | 0; i = j; return h | 0 } xd(a, 9269, g) | 0; if (!(Tl(c[g + 8 >> 2] | 0, 5899) | 0)) { b = b + -1 | 0; if (!b) { c[f >> 2] = c[g + 4 >> 2]; c[f + 4 >> 2] = d; h = Og(a, 5906, f) | 0; i = j; return h | 0 } else f = b } else f = b; e = g + 4 | 0; b = c[e >> 2] | 0; if (!b) { if (!(qh(a, g) | 0)) b = 10032; else b = Jb(a, -1, 0) | 0; c[e >> 2] = b } c[h >> 2] = f; c[h + 4 >> 2] = b; c[h + 8 >> 2] = d; h = Og(a, 5936, h) | 0; i = j; return h | 0 } function Bg(a, b) { a = a | 0; b = b | 0; c[b + 12 >> 2] = a; c[b >> 2] = b + 16; c[b + 8 >> 2] = 0; c[b + 4 >> 2] = 1024; return } function Cg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; c[b + 12 >> 2] = a; f = b + 16 | 0; c[b >> 2] = f; g = b + 8 | 0; c[g >> 2] = 0; h = b + 4 | 0; c[h >> 2] = 1024; if (d >>> 0 <= 1024) { g = f; h = 0; h = g + h | 0; return h | 0 } d = d >>> 0 > 2048 ? d : 2048; e = Ec(a, d) | 0; nn(e | 0, c[b >> 2] | 0, c[g >> 2] | 0) | 0; if ((c[b >> 2] | 0) != (f | 0)) rb(a, -2); c[b >> 2] = e; c[h >> 2] = d; f = e; h = c[g >> 2] | 0; h = f + h | 0; return h | 0 } function Dg(a, b, c) { a = a | 0; b = b | 0; c = c | 0; b = ob(a, b) | 0; if (!(gc(a, b) | 0)) { c = 0; return c | 0 } Ub(a, c) | 0; cc(a, -2); if (!(wb(a, -1) | 0)) { qb(a, -3); c = 0; return c | 0 } else { rb(a, -2); vb(a, b); rc(a, 1, 1, 0, 0); c = 1; return c | 0 } return 0 } function Eg(a, b) { a = a | 0; b = b | 0; if ((wb(a, b) | 0) != -1) return; Ag(a, b, 6135) | 0; return } function Fg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; f = i; i = i + 16 | 0; e = f; g = f + 8 | 0; d = Gb(a, b, g) | 0; if (c[g >> 2] | 0) { i = f; return d | 0 } h = xb(a, 3) | 0; g = xb(a, wb(a, b) | 0) | 0; c[e >> 2] = h; c[e + 4 >> 2] = g; Ag(a, b, Wb(a, 5564, e) | 0) | 0; i = f; return d | 0 } function Gg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = i; i = i + 16 | 0; e = f; d = Jb(a, b, d) | 0; if (d | 0) { i = f; return d | 0 } h = xb(a, 4) | 0; g = xb(a, wb(a, b) | 0) | 0; c[e >> 2] = h; c[e + 4 >> 2] = g; Ag(a, b, Wb(a, 5564, e) | 0) | 0; i = f; return d | 0 } function Hg(a, b) { a = a | 0; b = b | 0; var d = 0.0, e = 0, f = 0, g = 0, h = 0; f = i; i = i + 16 | 0; e = f; g = f + 8 | 0; d = +Fb(a, b, g); if (c[g >> 2] | 0) { i = f; return +d } h = xb(a, 3) | 0; g = xb(a, wb(a, b) | 0) | 0; c[e >> 2] = h; c[e + 4 >> 2] = g; Ag(a, b, Wb(a, 5564, e) | 0) | 0; i = f; return +d } function Ig(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0; j = i; i = i + 16 | 0; h = j + 8 | 0; f = j; if (!d) { d = Jb(a, b, 0) | 0; if (!d) { d = xb(a, 4) | 0; g = xb(a, wb(a, b) | 0) | 0; c[f >> 2] = d; c[f + 4 >> 2] = g; Ag(a, b, Wb(a, 5564, f) | 0) | 0; g = 0 } else g = d } else g = ah(a, b, d, 0) | 0; f = c[e >> 2] | 0; a: do if (f | 0) { d = 0; while (1) { if (!(Tl(f, g) | 0)) break; d = d + 1 | 0; f = c[e + (d << 2) >> 2] | 0; if (!f) break a } i = j; return d | 0 } while (0); c[h >> 2] = g; h = Ag(a, b, Wb(a, 5857, h) | 0) | 0; i = j; return h | 0 } function Jg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; f = i; i = i + 16 | 0; e = f; if (jb(a, b + 20 | 0) | 0) { i = f; return } if (!d) { Og(a, 7041, f + 8 | 0) | 0; i = f; return } else { c[e >> 2] = d; Og(a, 5479, e) | 0; i = f; return } } function Kg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = i; i = i + 16 | 0; e = f; if ((wb(a, b) | 0) == (d | 0)) { i = f; return } g = xb(a, d) | 0; d = xb(a, wb(a, b) | 0) | 0; c[e >> 2] = g; c[e + 4 >> 2] = d; Ag(a, b, Wb(a, 5564, e) | 0) | 0; i = f; return } function Lg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = i; i = i + 16 | 0; f = g; e = Mb(a, b) | 0; if ((e | 0 ? gc(a, b) | 0 : 0) ? (bc(a, -1001e3, d), h = (Cb(a, -1, -2) | 0) == 0, qb(a, -3), !h) : 0) { h = e; i = g; return h | 0 } h = xb(a, wb(a, b) | 0) | 0; c[f >> 2] = d; c[f + 4 >> 2] = h; Ag(a, b, Wb(a, 5564, f) | 0) | 0; h = 0; i = g; return h | 0 } function Mg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; f = i; i = i + 16 | 0; e = f; g = f + 8 | 0; d = Hb(a, b, g) | 0; if (c[g >> 2] | 0) { i = f; return d | 0 } h = xb(a, 3) | 0; g = xb(a, wb(a, b) | 0) | 0; c[e >> 2] = h; c[e + 4 >> 2] = g; Ag(a, b, Wb(a, 5564, e) | 0) | 0; i = f; return d | 0 } function Ng(a, b) { a = a | 0; b = +b; var c = 0.0, d = 0, e = 0, f = 0, g = 0, j = 0; j = i; i = i + 32 | 0; g = j + 24 | 0; f = j + 8 | 0; e = j; d = nb(a) | 0; if ((d | 0) == (nb(0) | 0)) { c = +h[d >> 3]; if (c != b) { h[f >> 3] = b; h[f + 8 >> 3] = c; Og(a, 5735, f) | 0 } } else Og(a, 5709, e) | 0; Qb(a, -4660.0); if ((Gb(a, -1, 0) | 0) == -4660 ? (Hb(a, -1, 0) | 0) == -4660 : 0) { qb(a, -2); i = j; return } Og(a, 5789, g) | 0; qb(a, -2); i = j; return } function Og(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = i; i = i + 128 | 0; h = f; e = f + 24 | 0; f = f + 8 | 0; c[f >> 2] = d; if (zd(a, 1, e) | 0 ? (xd(a, 5340, e) | 0, g = c[e + 20 >> 2] | 0, (g | 0) > 0) : 0) { c[h >> 2] = e + 36; c[h + 4 >> 2] = g; Wb(a, 5343, h) | 0; Vb(a, b, f) | 0; Ac(a, 2); yc(a) | 0 } Tb(a, 15616, 0) | 0; Vb(a, b, f) | 0; Ac(a, 2); yc(a) | 0; return 0 } function Pg(a, b) { a = a | 0; b = b | 0; switch (b | 0) { case -1: { b = c[(_k() | 0) >> 2] | 0; Pb(a); Ub(a, Jl(b) | 0) | 0; Rb(a, b); return 3 } case 0: { Yb(a, 1); break } default: Pb(a) }Ub(a, 8107) | 0; Rb(a, b); return 3 } function Qg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = i; i = i + 16 | 0; f = g; e = c[(_k() | 0) >> 2] | 0; if (b | 0) { Yb(a, 1); f = 1; i = g; return f | 0 } Pb(a); b = Jl(e) | 0; if (!d) Ub(a, b) | 0; else { c[f >> 2] = d; c[f + 4 >> 2] = b; Wb(a, 5702, f) | 0 } Rb(a, e); f = 3; i = g; return f | 0 } function Rg(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if (!(gc(a, b) | 0)) { c = 0; return c | 0 } Ub(a, c) | 0; cc(a, -2); if (!(wb(a, -1) | 0)) { qb(a, -3); c = 0; return c | 0 } else { rb(a, -2); c = 1; return c | 0 } return 0 } function Sg(a, b, c) { a = a | 0; b = b | 0; c = c | 0; bc(a, b, c); if ((wb(a, -1) | 0) == 5) { c = 1; return c | 0 } qb(a, -2); b = ob(a, b) | 0; fc(a, 0, 0); vb(a, -1); kc(a, b, c); c = 0; return c | 0 } function Tg(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = i; i = i + 1072 | 0; o = u + 16 | 0; n = u + 8 | 0; m = u; s = u + 24 | 0; l = Vl(d) | 0; q = s + 12 | 0; c[q >> 2] = a; t = s + 16 | 0; c[s >> 2] = t; r = s + 8 | 0; c[r >> 2] = 0; p = s + 4 | 0; c[p >> 2] = 1024; f = Fm(b, d) | 0; if (!f) { k = b; b = 0; f = 1024; h = a } else { g = b; k = f; b = 0; f = 1024; h = a; do { j = k - g | 0; if ((f - b | 0) >>> 0 < j >>> 0) { f = f << 1; f = (f - b | 0) >>> 0 < j >>> 0 ? b + j | 0 : f; if (f >>> 0 < b >>> 0 | (f - b | 0) >>> 0 < j >>> 0) Og(h, 5547, m) | 0; b = Ec(h, f) | 0; nn(b | 0, c[s >> 2] | 0, c[r >> 2] | 0) | 0; if ((c[s >> 2] | 0) != (t | 0)) rb(h, -2); c[s >> 2] = b; c[p >> 2] = f; f = b; b = c[r >> 2] | 0 } else f = c[s >> 2] | 0; nn(f + b | 0, g | 0, j | 0) | 0; b = (c[r >> 2] | 0) + j | 0; c[r >> 2] = b; h = Vl(e) | 0; g = c[q >> 2] | 0; f = c[p >> 2] | 0; if ((f - b | 0) >>> 0 < h >>> 0) { f = f << 1; f = (f - b | 0) >>> 0 < h >>> 0 ? h + b | 0 : f; if (f >>> 0 < b >>> 0 | (f - b | 0) >>> 0 < h >>> 0) Og(g, 5547, n) | 0; b = Ec(g, f) | 0; nn(b | 0, c[s >> 2] | 0, c[r >> 2] | 0) | 0; if ((c[s >> 2] | 0) != (t | 0)) rb(g, -2); c[s >> 2] = b; c[p >> 2] = f; f = b; b = c[r >> 2] | 0 } else f = c[s >> 2] | 0; nn(f + b | 0, e | 0, h | 0) | 0; b = (c[r >> 2] | 0) + h | 0; c[r >> 2] = b; g = k + l | 0; k = Fm(g, d) | 0; h = c[q >> 2] | 0; f = c[p >> 2] | 0 } while ((k | 0) != 0); k = g } j = Vl(k) | 0; if ((f - b | 0) >>> 0 < j >>> 0) { g = f << 1; g = (g - b | 0) >>> 0 < j >>> 0 ? b + j | 0 : g; if (g >>> 0 < b >>> 0 | (g - b | 0) >>> 0 < j >>> 0) Og(h, 5547, o) | 0; f = Ec(h, g) | 0; nn(f | 0, c[s >> 2] | 0, c[r >> 2] | 0) | 0; if ((c[s >> 2] | 0) != (t | 0)) rb(h, -2); c[s >> 2] = f; c[p >> 2] = g; b = c[r >> 2] | 0 } else f = c[s >> 2] | 0; nn(f + b | 0, k | 0, j | 0) | 0; p = (c[r >> 2] | 0) + j | 0; c[r >> 2] = p; b = c[q >> 2] | 0; Tb(b, c[s >> 2] | 0, p) | 0; if ((c[s >> 2] | 0) == (t | 0)) { t = Jb(a, -1, 0) | 0; i = u; return t | 0 } rb(b, -2); t = Jb(a, -1, 0) | 0; i = u; return t | 0 } function Ug(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = i; i = i + 16 | 0; e = d + 4 | 0; Bc(a, b); b = Gb(a, -1, e) | 0; if (!(c[e >> 2] | 0)) Og(a, 5672, d) | 0; qb(a, -2); i = d; return b | 0 } function Vg(a, b, d, e, f) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0; g = i; i = i + 16 | 0; h = g; c[h >> 2] = b; c[h + 4 >> 2] = d; f = uc(a, 23, h, e, f) | 0; i = g; return f | 0 } function Wg(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; o = i; i = i + 1088 | 0; n = o + 40 | 0; j = o + 24 | 0; g = o + 8 | 0; f = o; l = o + 56 | 0; h = o + 52 | 0; m = (pb(b) | 0) + 1 | 0; if (d) { c[f >> 2] = d; Wb(b, 5641, f) | 0; k = qm(d, 10034) | 0; c[l + 4 >> 2] = k; if (!k) { n = Jl(c[(_k() | 0) >> 2] | 0) | 0; l = (Jb(b, m, 0) | 0) + 1 | 0; c[g >> 2] = 7750; c[g + 4 >> 2] = l; c[g + 8 >> 2] = n; Wb(b, 5645, g) | 0; rb(b, m); n = 7; i = o; return n | 0 } } else { Tb(b, 5634, 6) | 0; c[l + 4 >> 2] = c[480] } if (wh(l, h) | 0) { k = c[l >> 2] | 0; c[l >> 2] = k + 1; a[l + 8 + k >> 0] = 10 } f = c[h >> 2] | 0; k = (d | 0) != 0; do if (k & (f | 0) == 27) { g = l + 4 | 0; d = Ym(d, 5662, c[g >> 2] | 0) | 0; c[g >> 2] = d; if (d | 0) { wh(l, h) | 0; f = c[h >> 2] | 0; break } n = Jl(c[(_k() | 0) >> 2] | 0) | 0; l = (Jb(b, m, 0) | 0) + 1 | 0; c[j >> 2] = 5665; c[j + 4 >> 2] = l; c[j + 8 >> 2] = n; Wb(b, 5645, j) | 0; rb(b, m); n = 7; i = o; return n | 0 } while (0); if ((f | 0) != -1) { j = c[l >> 2] | 0; c[l >> 2] = j + 1; a[l + 8 + j >> 0] = f } d = uc(b, 24, l, Jb(b, -1, 0) | 0, e) | 0; f = c[l + 4 >> 2] | 0; g = ym(f) | 0; if (k) tm(f) | 0; if (!g) { rb(b, m); n = d; i = o; return n | 0 } else { qb(b, m); l = Jl(c[(_k() | 0) >> 2] | 0) | 0; k = (Jb(b, m, 0) | 0) + 1 | 0; c[n >> 2] = 7498; c[n + 4 >> 2] = k; c[n + 8 >> 2] = l; Wb(b, 5645, n) | 0; rb(b, m); n = 7; i = o; return n | 0 } return 0 } function Xg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = i; i = i + 16 | 0; e = d; f = Vl(b) | 0; c[e >> 2] = b; c[e + 4 >> 2] = f; b = uc(a, 23, e, b, 0) | 0; i = d; return b | 0 } function Yg(a, b) { a = a | 0; b = b | 0; bc(a, -1001e3, b); if (wb(a, -1) | 0) { b = 0; return b | 0 } qb(a, -2); fc(a, 0, 0); vb(a, -1); kc(a, -1001e3, b); b = 1; return b | 0 } function Zg() { var a = 0; a = Af(18, 0) | 0; if (!a) return a | 0; mb(a, 159) | 0; return a | 0 } function _g(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; Ng(a, 502.0); if (b | 0) { if ((d | 0) != 0 ? (c[d >> 2] | 0) != 0 : 0) { g = d; f = 0; do { f = f + 1 | 0; g = g + 8 | 0 } while ((c[g >> 2] | 0) != 0) } else f = 0; eh(a, b, f); sb(a, ~e) } if (!d) { qb(a, ~e); return } else { jh(a, d, e); return } } function $g(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = i; i = i + 16 | 0; f = g; e = g + 8 | 0; if ((wb(a, b) | 0) < 1) { f = d; i = g; return f | 0 } d = Gb(a, b, e) | 0; if (!(c[e >> 2] | 0)) { h = xb(a, 3) | 0; e = xb(a, wb(a, b) | 0) | 0; c[f >> 2] = h; c[f + 4 >> 2] = e; Ag(a, b, Wb(a, 5564, f) | 0) | 0 } h = d; i = g; return h | 0 } function ah(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0; h = i; i = i + 16 | 0; g = h; if ((wb(a, b) | 0) >= 1) { f = Jb(a, b, e) | 0; if (f | 0) { g = f; i = h; return g | 0 } d = xb(a, 4) | 0; e = xb(a, wb(a, b) | 0) | 0; c[g >> 2] = d; c[g + 4 >> 2] = e; Ag(a, b, Wb(a, 5564, g) | 0) | 0; g = 0; i = h; return g | 0 } if (!e) { g = d; i = h; return g | 0 } if (!d) f = 0; else f = Vl(d) | 0; c[e >> 2] = f; g = d; i = h; return g | 0 } function bh(a, b, d) { a = a | 0; b = b | 0; d = +d; var e = 0, f = 0, g = 0, h = 0; g = i; i = i + 16 | 0; f = g; e = g + 8 | 0; if ((wb(a, b) | 0) < 1) { i = g; return +d } d = +Fb(a, b, e); if (!(c[e >> 2] | 0)) { h = xb(a, 3) | 0; e = xb(a, wb(a, b) | 0) | 0; c[f >> 2] = h; c[f + 4 >> 2] = e; Ag(a, b, Wb(a, 5564, f) | 0) | 0 } i = g; return +d } function ch(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = i; i = i + 16 | 0; f = g; e = g + 8 | 0; if ((wb(a, b) | 0) < 1) { f = d; i = g; return f | 0 } d = Hb(a, b, e) | 0; if (!(c[e >> 2] | 0)) { h = xb(a, 3) | 0; e = xb(a, wb(a, b) | 0) | 0; c[f >> 2] = h; c[f + 4 >> 2] = e; Ag(a, b, Wb(a, 5564, f) | 0) | 0 } h = d; i = g; return h | 0 } function dh(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0; k = i; i = i + 16 | 0; g = c[a + 12 >> 2] | 0; h = a + 4 | 0; d = c[h >> 2] | 0; j = a + 8 | 0; f = c[j >> 2] | 0; if ((d - f | 0) >>> 0 >= b >>> 0) { h = c[a >> 2] | 0; j = f; j = h + j | 0; i = k; return j | 0 } e = d << 1; e = (e - f | 0) >>> 0 < b >>> 0 ? f + b | 0 : e; if (e >>> 0 < f >>> 0 | (e - f | 0) >>> 0 < b >>> 0) Og(g, 5547, k) | 0; d = Ec(g, e) | 0; nn(d | 0, c[a >> 2] | 0, c[j >> 2] | 0) | 0; if ((c[a >> 2] | 0) != (a + 16 | 0)) rb(g, -2); c[a >> 2] = d; c[h >> 2] = e; h = d; j = c[j >> 2] | 0; j = h + j | 0; i = k; return j | 0 } function eh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; f = i; i = i + 16 | 0; e = f; sh(a, -1001e3, 9674, 1) | 0; bc(a, -1, b); if ((wb(a, -1) | 0) == 5) { rb(a, -2); i = f; return } qb(a, -2); dc(a, -1001e3, 2); if (sh(a, 0, b, d) | 0) { c[e >> 2] = b; Og(a, 5517, e) | 0 } vb(a, -1); kc(a, -3, b); rb(a, -2); i = f; return } function fh(a) { a = a | 0; var b = 0; b = c[a + 12 >> 2] | 0; Tb(b, c[a >> 2] | 0, c[a + 8 >> 2] | 0) | 0; if ((c[a >> 2] | 0) == (a + 16 | 0)) return; rb(b, -2); return } function gh(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; e = a + 8 | 0; d = (c[e >> 2] | 0) + b | 0; c[e >> 2] = d; b = c[a + 12 >> 2] | 0; Tb(b, c[a >> 2] | 0, d) | 0; if ((c[a >> 2] | 0) == (a + 16 | 0)) return; rb(b, -2); return } function hh(a, b) { a = a | 0; b = b | 0; var c = 0; if (!(wb(a, -1) | 0)) { qb(a, -2); a = -1; return a | 0 } c = ob(a, b) | 0; dc(a, c, 0); b = Gb(a, -1, 0) | 0; qb(a, -2); if (!b) b = (Kb(a, c) | 0) + 1 | 0; else { dc(a, c, b); mc(a, c, 0) } mc(a, c, b); a = b; return a | 0 } function ih(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; Xb(a, c, 0); Ub(a, b) | 0; rc(a, 1, 1, 0, 0); Sg(a, -1001e3, 9674) | 0; vb(a, -2); kc(a, -2, b); qb(a, -2); if (!d) return; vb(a, -1); ic(a, b); return } function jh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = i; i = i + 16 | 0; e = h; Ng(a, 502.0); if (!(jb(a, d + 20 | 0) | 0)) { c[e >> 2] = 5499; Og(a, 5479, e) | 0 } if (!(c[b >> 2] | 0)) { d = ~d; qb(a, d); i = h; return } g = -2 - d | 0; f = 0 - d | 0; if ((d | 0) <= 0) { do { Xb(a, c[b + 4 >> 2] | 0, d); kc(a, g, c[b >> 2] | 0); b = b + 8 | 0 } while ((c[b >> 2] | 0) != 0); d = ~d; qb(a, d); i = h; return } do { e = 0; do { vb(a, f); e = e + 1 | 0 } while ((e | 0) != (d | 0)); Xb(a, c[b + 4 >> 2] | 0, d); kc(a, g, c[b >> 2] | 0); b = b + 8 | 0 } while ((c[b >> 2] | 0) != 0); d = ~d; qb(a, d); i = h; return } function kh(a, b) { a = a | 0; b = b | 0; bc(a, -1001e3, b); oc(a, -2) | 0; return } function lh(a, b, c) { a = a | 0; b = b | 0; c = c | 0; var d = 0; d = Mb(a, b) | 0; if (!d) { d = 0; return d | 0 } if (!(gc(a, b) | 0)) { d = 0; return d | 0 } bc(a, -1001e3, c); c = (Cb(a, -1, -2) | 0) == 0; qb(a, -3); d = c ? 0 : d; return d | 0 } function mh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = i; i = i + 16 | 0; e = f; a: do if (!(Dg(a, b, 7522) | 0)) switch (wb(a, b) | 0) { case 4: case 3: { vb(a, b); break a } case 1: { e = (Ib(a, b) | 0) != 0; Ub(a, e ? 5457 : 5462) | 0; break a } case 0: { Tb(a, 5468, 3) | 0; break a } default: { g = xb(a, wb(a, b) | 0) | 0; b = Ob(a, b) | 0; c[e >> 2] = g; c[e + 4 >> 2] = b; Wb(a, 5472, e) | 0; break a } } while (0); g = Jb(a, -1, d) | 0; i = f; return g | 0 }
function nh(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0; y = i; i = i + 256 | 0; v = y + 40 | 0; u = y + 32 | 0; x = y + 24 | 0; w = y + 16 | 0; t = y + 8 | 0; k = y; j = y + 148 | 0; r = y + 48 | 0; s = pb(b) | 0; h = 1; g = 1; while (1) if (!(zd(d, g, j) | 0)) break; else { h = g; g = g << 1 } if ((h | 0) < (g | 0)) do { q = (g + h | 0) / 2 | 0; p = (zd(d, q, j) | 0) == 0; g = p ? q : g; h = p ? h : q + 1 | 0 } while ((h | 0) < (g | 0)); q = (g + -1 | 0) > 22 ? 12 : 0; if (e | 0) { c[k >> 2] = e; Wb(b, 7402, k) | 0 } Tb(b, 5351, 16) | 0; if (!(zd(d, f, r) | 0)) { x = pb(b) | 0; x = x - s | 0; Ac(b, x); i = y; return } j = g + -11 | 0; e = r + 36 | 0; k = r + 20 | 0; l = r + 8 | 0; m = r + 12 | 0; n = r + 24 | 0; o = r + 35 | 0; p = r + 4 | 0; g = f; do { g = g + 1 | 0; if ((g | 0) == (q | 0)) { Tb(b, 5368, 5) | 0; g = j } else { xd(d, 5374, r) | 0; c[t >> 2] = e; Wb(b, 5379, t) | 0; h = c[k >> 2] | 0; if ((h | 0) > 0) { c[w >> 2] = h; Wb(b, 5385, w) | 0 } Tb(b, 5389, 4) | 0; a: do if (!(a[c[l >> 2] >> 0] | 0)) switch (a[c[m >> 2] >> 0] | 0) { case 109: { Tb(b, 5408, 10) | 0; break a } case 67: if (!(qh(b, r) | 0)) { Tb(b, 10032, 1) | 0; break a } else { c[u >> 2] = Jb(b, -1, 0) | 0; Wb(b, 5394, u) | 0; rb(b, -2); break a } default: { f = c[n >> 2] | 0; c[v >> 2] = e; c[v + 4 >> 2] = f; Wb(b, 5419, v) | 0; break a } } else { c[x >> 2] = c[p >> 2]; Wb(b, 5394, x) | 0 } while (0); if (a[o >> 0] | 0) Tb(b, 5436, 20) | 0; Ac(b, (pb(b) | 0) - s | 0) } } while ((zd(d, g, r) | 0) != 0); x = pb(b) | 0; x = x - s | 0; Ac(b, x); i = y; return } function oh(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if ((c | 0) <= -1) return; b = ob(a, b) | 0; dc(a, b, 0); mc(a, b, c); Rb(a, c); mc(a, b, 0); return } function ph(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = i; i = i + 112 | 0; f = g; d = g + 8 | 0; if (zd(a, b, d) | 0 ? (xd(a, 5340, d) | 0, e = c[d + 20 >> 2] | 0, (e | 0) > 0) : 0) { c[f >> 2] = d + 36; c[f + 4 >> 2] = e; Wb(a, 5343, f) | 0; i = g; return } Tb(a, 15616, 0) | 0; i = g; return } function qh(a, b) { a = a | 0; b = b | 0; var c = 0; c = pb(a) | 0; xd(a, 9791, b) | 0; dc(a, -1001e3, 2); b = c + 1 | 0; if (!(rh(a, b, 2) | 0)) { qb(a, c); c = 0; return c | 0 } else { ub(a, -1, b); qb(a, -3); c = 1; return c | 0 } return 0 } function rh(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if (!c) { a = 0; return a | 0 } if ((wb(a, -1) | 0) != 5) { a = 0; return a | 0 } Pb(a); if (!(zc(a, -2) | 0)) { a = 0; return a | 0 } c = c + -1 | 0; while (1) { if ((wb(a, -2) | 0) == 4) { if (Cb(a, b, -1) | 0) { b = 7; break } if (rh(a, b, c) | 0) { b = 9; break } } qb(a, -2); if (!(zc(a, -2) | 0)) { c = 0; b = 11; break } } if ((b | 0) == 7) { qb(a, -2); a = 1; return a | 0 } else if ((b | 0) == 9) { rb(a, -2); Tb(a, 12624, 1) | 0; sb(a, -2); Ac(a, 3); a = 1; return a | 0 } else if ((b | 0) == 11) return c | 0; return 0 } function sh(b, c, d, e) { b = b | 0; c = c | 0; d = d | 0; e = e | 0; var f = 0, g = 0; if (c) vb(b, c); while (1) { c = pm(d, 46) | 0; if (!c) c = d + (Vl(d) | 0) | 0; f = c - d | 0; Tb(b, d, f) | 0; cc(b, -2); if (wb(b, -1) | 0) { if ((wb(b, -1) | 0) != 5) break } else { qb(b, -2); fc(b, 0, (a[c >> 0] | 0) == 46 ? 1 : e); Tb(b, d, f) | 0; vb(b, -2); jc(b, -4) } rb(b, -2); if ((a[c >> 0] | 0) == 46) d = c + 1 | 0; else { c = 0; g = 10; break } } if ((g | 0) == 10) return c | 0; qb(b, -3); g = d; return g | 0 } function th(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; if (!d) { an(b); a = 0 } else a = bn(b, d) | 0; return a | 0 } function uh(a) { a = a | 0; var b = 0, d = 0, e = 0; b = i; i = i + 16 | 0; e = b; d = c[539] | 0; c[e >> 2] = Jb(a, -1, 0) | 0; Cm(d, 5584, e) | 0; um(d) | 0; i = b; return 0 } function vh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; a = b + 4 | 0; e = c[a >> 2] | 0; if (!e) { d = 0; return d | 0 } c[d >> 2] = e; c[a >> 2] = 0; d = c[b >> 2] | 0; return d | 0 } function wh(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; c[b >> 2] = 0; f = b + 4 | 0; e = Om(c[f >> 2] | 0) | 0; a: do switch (e | 0) { case -1: { g = 5; break } case 239: { e = c[b >> 2] | 0; c[b >> 2] = e + 1; a[b + 8 + e >> 0] = -17; e = Om(c[f >> 2] | 0) | 0; switch (e | 0) { case -1: { g = 5; break a } case 187: break; default: break a }e = c[b >> 2] | 0; c[b >> 2] = e + 1; a[b + 8 + e >> 0] = -69; e = Om(c[f >> 2] | 0) | 0; switch (e | 0) { case -1: { g = 5; break a } case 191: break; default: break a }a[(c[b >> 2] | 0) + (b + 8) >> 0] = -65; c[b >> 2] = 0; e = Om(c[f >> 2] | 0) | 0; break } default: { } } while (0); if ((g | 0) == 5) { c[d >> 2] = -1; g = 0; return g | 0 } c[d >> 2] = e; if ((e | 0) != 35) { g = 0; return g | 0 } b: while (1) switch (Om(c[f >> 2] | 0) | 0) { case 10: case -1: break b; default: { } }c[d >> 2] = Om(c[f >> 2] | 0) | 0; g = 1; return g | 0 } function xh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; a = c[b >> 2] | 0; if ((a | 0) > 0) { c[d >> 2] = a; c[b >> 2] = 0; d = b + 8 | 0; return d | 0 } a = b + 4 | 0; if (xm(c[a >> 2] | 0) | 0) { d = 0; return d | 0 } b = b + 8 | 0; c[d >> 2] = Km(b, 1, 1024, c[a >> 2] | 0) | 0; d = b; return d | 0 } function yh(a) { a = a | 0; dc(a, -1001e3, 2); dc(a, -1001e3, 2); kc(a, -2, 10130); jh(a, 264, 0); Tb(a, 5966, 7) | 0; kc(a, -2, 5974); return 1 } function zh(a) { a = a | 0; var b = 0, d = 0; d = i; i = i + 16 | 0; b = d; if (!(Ib(a, 1) | 0)) { c[b >> 2] = ah(a, 2, 6494, 0) | 0; b = Og(a, 7741, b) | 0; i = d; return b | 0 } else { b = pb(a) | 0; i = d; return b | 0 } return 0 } function Ah(a) { a = a | 0; var b = 0, d = 0; d = c[504 + ((Ig(a, 1, 6401, 456) | 0) << 2) >> 2] | 0; b = xc(a, d, $g(a, 2, 0) | 0) | 0; switch (d | 0) { case 3: { d = xc(a, 4, 0) | 0; Qb(a, +(b | 0) + +(d | 0) * .0009765625); Rb(a, d); d = 2; return d | 0 } case 9: case 5: { Yb(a, b); d = 1; return d | 0 } default: { Rb(a, b); d = 1; return d | 0 } }return 0 } function Bh(a) { a = a | 0; var b = 0; b = ah(a, 1, 0, 0) | 0; qb(a, 1); if (!(Wg(a, b, 0) | 0)) { rc(a, 0, -1, 0, 160); return (pb(a) | 0) + -1 | 0 } else yc(a) | 0; return 0 } function Ch(a) { a = a | 0; var b = 0; b = $g(a, 2, 1) | 0; qb(a, 1); if (!((b | 0) > 0 & (Ab(a, 1) | 0) != 0)) yc(a) | 0; ph(a, b); vb(a, 1); Ac(a, 2); yc(a) | 0; return 0 } function Dh(a) { a = a | 0; Eg(a, 1); if (!(gc(a, 1) | 0)) { Pb(a); return 1 } else { Rg(a, 1, 6175) | 0; return 1 } return 0 } function Eh(a) { a = a | 0; Xh(a, 6392, 1, 161); return 3 } function Fh(a) { a = a | 0; var b = 0, c = 0, d = 0; d = ah(a, 1, 0, 0) | 0; c = ah(a, 2, 0, 0) | 0; b = (wb(a, 3) | 0) != -1; if (Wg(a, d, c) | 0) { Pb(a); sb(a, -2); d = 2; return d | 0 } if (!b) { d = 1; return d | 0 } vb(a, b ? 3 : 0); if (Gc(a, -2, 1) | 0) { d = 1; return d | 0 } qb(a, -2); d = 1; return d | 0 } function Gh(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0; g = i; i = i + 16 | 0; b = g; d = Jb(a, 1, b) | 0; e = ah(a, 3, 6318, 0) | 0; f = (wb(a, 4) | 0) != -1; if (!d) { b = ah(a, 2, 6321, 0) | 0; Kg(a, 1, 6); qb(a, 5); b = uc(a, 25, 0, b, e) | 0 } else { h = ah(a, 2, d, 0) | 0; b = Vg(a, d, c[b >> 2] | 0, h, e) | 0 } if (b | 0) { Pb(a); sb(a, -2); h = 2; i = g; return h | 0 } if (!f) { h = 1; i = g; return h | 0 } vb(a, f ? 4 : 0); if (Gc(a, -2, 1) | 0) { h = 1; i = g; return h | 0 } qb(a, -2); h = 1; i = g; return h | 0 } function Hh(a) { a = a | 0; Kg(a, 1, 5); qb(a, 2); if (zc(a, 1) | 0) { a = 2; return a | 0 } Pb(a); a = 1; return a | 0 } function Ih(a) { a = a | 0; Xh(a, 6310, 0, 26); return 3 } function Jh(a) { a = a | 0; Eg(a, 1); Pb(a); sb(a, 1); return Wh(a, (sc(a, (pb(a) | 0) + -2 | 0, -1, 0, 0, 162) | 0) == 0 & 1) | 0 } function Kh(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 16 | 0; h = j; e = j + 4 | 0; f = pb(a) | 0; $b(a, 6119); a: do if ((f | 0) < 1) b = c[509] | 0; else { b = c[509] | 0; d = 1; while (1) { vb(a, -1); vb(a, d); rc(a, 1, 1, 0, 0); g = Jb(a, -1, e) | 0; if (!g) break; if ((d | 0) > 1) Nm(9, b) | 0; Mm(g, 1, c[e >> 2] | 0, b) | 0; qb(a, -2); if ((d | 0) < (f | 0)) d = d + 1 | 0; else break a } h = Og(a, 6267, h) | 0; i = j; return h | 0 } while (0); Nm(10, b) | 0; um(b) | 0; h = 0; i = j; return h | 0 } function Lh(a) { a = a | 0; Eg(a, 1); Eg(a, 2); Yb(a, Cb(a, 1, 2) | 0); return 1 } function Mh(a) { a = a | 0; if ((wb(a, 1) | 0 | 1 | 0) != 5) Ag(a, 1, 6242) | 0; Rb(a, Kb(a, 1) | 0); return 1 } function Nh(a) { a = a | 0; Kg(a, 1, 5); Eg(a, 2); qb(a, 2); cc(a, 1); return 1 } function Oh(a) { a = a | 0; Kg(a, 1, 5); Eg(a, 2); Eg(a, 3); qb(a, 3); lc(a, 1); return 1 } function Ph(b) { b = b | 0; var c = 0, d = 0; d = pb(b) | 0; if ((wb(b, 1) | 0) == 4 ? (a[(Jb(b, 1, 0) | 0) >> 0] | 0) == 35 : 0) { Rb(b, d + -1 | 0); d = 1; return d | 0 } c = Fg(b, 1) | 0; c = (c | 0) < 0 ? c + d | 0 : (c | 0) > (d | 0) ? d : c; if ((c | 0) <= 0) Ag(b, 1, 6223) | 0; d = d - c | 0; return d | 0 } function Qh(a) { a = a | 0; var b = 0, c = 0, d = 0; c = i; i = i + 16 | 0; b = c; d = wb(a, 2) | 0; Kg(a, 1, 5); switch (d | 0) { case 0: case 5: break; default: Ag(a, 2, 7e3) | 0 }if (!(Rg(a, 1, 6175) | 0)) { qb(a, 2); oc(a, 1) | 0; d = 1; i = c; return d | 0 } else { d = Og(a, 6187, b) | 0; i = c; return d | 0 } return 0 } function Rh(b) { b = b | 0; var d = 0.0, e = 0, f = 0, g = 0, h = 0.0, j = 0, k = 0, l = 0, m = 0; m = i; i = i + 16 | 0; e = m; do if ((wb(b, 2) | 0) >= 1) { f = Gg(b, 1, e) | 0; l = f + (c[e >> 2] | 0) | 0; j = Fg(b, 2) | 0; if ((j + -2 | 0) >>> 0 >= 35) Ag(b, 2, 6150) | 0; e = f + (km(f, 6168) | 0) | 0; switch (a[e >> 0] | 0) { case 45: { k = 1; e = e + 1 | 0; break } case 43: { k = 0; e = e + 1 | 0; break } default: k = 0 }f = a[e >> 0] | 0; if (vl(f & 255) | 0) { h = +(j | 0); d = 0.0; do { g = f & 255; if ((g + -48 | 0) >>> 0 < 10) f = (f << 24 >> 24) + -48 | 0; else f = (Ql(g) | 0) + -55 | 0; if ((f | 0) >= (j | 0)) break; d = h * d + +(f | 0); e = e + 1 | 0; f = a[e >> 0] | 0 } while ((vl(f & 255) | 0) != 0); if ((e + (km(e, 6168) | 0) | 0) == (l | 0)) { Qb(b, k | 0 ? -d : d); i = m; return 1 } } } else { d = +Fb(b, 1, e); if (!(c[e >> 2] | 0)) { Eg(b, 1); break } Qb(b, d); i = m; return 1 } while (0); Pb(b); i = m; return 1 } function Sh(a) { a = a | 0; Eg(a, 1); mh(a, 1, 0) | 0; return 1 } function Th(a) { a = a | 0; Eg(a, 1); Ub(a, xb(a, wb(a, 1) | 0) | 0) | 0; return 1 } function Uh(a) { a = a | 0; var b = 0; b = pb(a) | 0; if ((b | 0) <= 1) Ag(a, 2, 6135) | 0; vb(a, 1); ub(a, 2, 1); tb(a, 2); return Wh(a, (sc(a, b + -2 | 0, -1, 1, 0, 162) | 0) == 0 & 1) | 0 } function Vh(a) { a = a | 0; return Wh(a, (qc(a, 0) | 0) == 1 & 1) | 0 } function Wh(a, b) { a = a | 0; b = b | 0; if (!(jb(a, 1) | 0)) { qb(a, 0); Yb(a, 0); Ub(a, 7041) | 0; b = 2; return b | 0 } else { Yb(a, b); tb(a, 1); b = pb(a) | 0; return b | 0 } return 0 } function Xh(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; if (Rg(a, 1, b) | 0) { vb(a, 1); rc(a, 1, 3, 0, 0); return } Kg(a, 1, 5); Xb(a, d, 0); vb(a, 1); if (!c) { Pb(a); return } else { Rb(a, 0); return } } function Yh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; b = i; i = i + 16 | 0; Jg(a, 2, 6329); vb(a, 1); rc(a, 0, 1, 0, 0); if (!(wb(a, -1) | 0)) { qb(a, -2); c[d >> 2] = 0; d = 0; i = b; return d | 0 } if (!(Ab(a, -1) | 0)) Og(a, 6355, b) | 0; tb(a, 5); d = Jb(a, 5, d) | 0; i = b; return d | 0 } function Zh(a) { a = a | 0; var b = 0; b = Fg(a, 2) | 0; Kg(a, 1, 5); b = b + 1 | 0; Rb(a, b); dc(a, 1, b); a = (wb(a, -1) | 0) == 0; return (a ? 1 : 2) | 0 } function _h(a) { a = a | 0; return (pb(a) | 0) + -1 | 0 } function $h(a) { a = a | 0; fc(a, 0, 12); jh(a, 548, 0); return 1 } function ai(a) { a = a | 0; var b = 0, c = 0; b = Mg(a, 1) | 0; c = Fg(a, 2) | 0; if ((b | 0) < 0 & (c | 0) > -1) { Sb(a, (c | 0) > 31 ? -1 : b >>> c | ~(-1 >>> c)); return 1 } if ((c | 0) > 0) b = (c | 0) > 31 ? 0 : b >>> c; else b = (c | 0) < -31 ? 0 : b << 0 - c; Sb(a, b); return 1 } function bi(a) { a = a | 0; var b = 0, c = 0, d = 0; d = pb(a) | 0; if ((d | 0) < 1) b = -1; else { c = 1; b = -1; while (1) { b = (Mg(a, c) | 0) & b; if ((c | 0) == (d | 0)) break; else c = c + 1 | 0 } } Sb(a, b); return 1 } function ci(a) { a = a | 0; Sb(a, ~(Mg(a, 1) | 0)); return 1 } function di(a) { a = a | 0; var b = 0, c = 0, d = 0; d = pb(a) | 0; if ((d | 0) < 1) b = 0; else { c = 1; b = 0; while (1) { b = Mg(a, c) | 0 | b; if ((c | 0) == (d | 0)) break; else c = c + 1 | 0 } } Sb(a, b); return 1 } function ei(a) { a = a | 0; var b = 0, c = 0, d = 0; d = pb(a) | 0; if ((d | 0) < 1) b = 0; else { c = 1; b = 0; while (1) { b = (Mg(a, c) | 0) ^ b; if ((c | 0) == (d | 0)) break; else c = c + 1 | 0 } } Sb(a, b); return 1 } function fi(a) { a = a | 0; var b = 0, c = 0, d = 0; d = pb(a) | 0; if ((d | 0) < 1) b = 1; else { b = 1; c = -1; while (1) { c = (Mg(a, b) | 0) & c; if ((b | 0) == (d | 0)) break; else b = b + 1 | 0 } b = (c | 0) != 0 } Yb(a, b & 1); return 1 } function gi(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0; e = i; i = i + 16 | 0; b = Mg(a, 1) | 0; c = Fg(a, 2) | 0; d = $g(a, 3, 1) | 0; if ((c | 0) <= -1) Ag(a, 2, 6591) | 0; if ((d | 0) <= 0) Ag(a, 3, 6616) | 0; if ((d + c | 0) > 32) Og(a, 6639, e) | 0; Sb(a, b >>> c & ~(-2 << d + -1)); i = e; return 1 } function hi(a) { a = a | 0; var b = 0, c = 0; b = Fg(a, 2) | 0; c = Mg(a, 1) | 0; b = b & 31; Sb(a, (b | 0) == 0 ? c : c >>> (32 - b | 0) | c << b); return 1 } function ii(a) { a = a | 0; var b = 0, c = 0; b = Mg(a, 1) | 0; c = Fg(a, 2) | 0; if ((c | 0) < 0) { c = (c | 0) < -31 ? 0 : b >>> (0 - c | 0); Sb(a, c); return 1 } else { c = (c | 0) > 31 ? 0 : b << c; Sb(a, c); return 1 } return 0 } function ji(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0, f = 0; f = i; i = i + 16 | 0; b = Mg(a, 1) | 0; c = Mg(a, 2) | 0; d = Fg(a, 3) | 0; e = $g(a, 4, 1) | 0; if ((d | 0) <= -1) Ag(a, 3, 6591) | 0; if ((e | 0) <= 0) Ag(a, 4, 6616) | 0; if ((e + d | 0) > 32) Og(a, 6639, f) | 0; e = ~(-2 << e + -1); Sb(a, b & ~(e << d) | (c & e) << d); i = f; return 1 } function ki(a) { a = a | 0; var b = 0, c = 0; b = 0 - (Fg(a, 2) | 0) | 0; c = Mg(a, 1) | 0; b = b & 31; Sb(a, (b | 0) == 0 ? c : c >>> (32 - b | 0) | c << b); return 1 } function li(a) { a = a | 0; var b = 0, c = 0; b = Mg(a, 1) | 0; c = Fg(a, 2) | 0; if ((c | 0) > 0) { c = (c | 0) > 31 ? 0 : b >>> c; Sb(a, c); return 1 } else { c = (c | 0) < -31 ? 0 : b << 0 - c; Sb(a, c); return 1 } return 0 } function mi(a) { a = a | 0; fc(a, 0, 6); jh(a, 652, 0); return 1 } function ni(a) { a = a | 0; var b = 0; Kg(a, 1, 6); b = Bf(a) | 0; vb(a, 1); lb(a, b, 1); return 1 } function oi(a) { a = a | 0; var b = 0; b = Nb(a, 1) | 0; if (!b) Ag(a, 1, 6799) | 0; b = ui(a, b, (pb(a) | 0) + -1 | 0) | 0; if ((b | 0) < 0) { Yb(a, 0); sb(a, -2); a = 2; return a | 0 } else { Yb(a, 1); sb(a, ~b); a = b + 1 | 0; return a | 0 } return 0 } function pi(a) { a = a | 0; Yb(a, _b(a) | 0); return 2 } function qi(a) { a = a | 0; var b = 0, c = 0; c = i; i = i + 112 | 0; b = Nb(a, 1) | 0; if (!b) Ag(a, 1, 6799) | 0; if ((b | 0) == (a | 0)) { Tb(a, 6688, 7) | 0; i = c; return 1 } switch (wc(b) | 0) { case 1: { Tb(a, 6818, 9) | 0; i = c; return 1 } case 0: { do if ((zd(b, 0, c) | 0) <= 0) if (!(pb(b) | 0)) { Tb(a, 6835, 4) | 0; break } else { Tb(a, 6818, 9) | 0; break } else Tb(a, 6828, 6) | 0; while (0); i = c; return 1 } default: { Tb(a, 6835, 4) | 0; i = c; return 1 } }return 0 } function ri(a) { a = a | 0; var b = 0; Kg(a, 1, 6); b = Bf(a) | 0; vb(a, 1); lb(a, b, 1); Xb(a, 163, 1); return 1 } function si(a) { a = a | 0; return Kd(a, pb(a) | 0, 0, 0) | 0 } function ti(a) { a = a | 0; var b = 0; b = Nb(a, -1001001) | 0; b = ui(a, b, pb(a) | 0) | 0; if ((b | 0) >= 0) return b | 0; if (!(Ab(a, -1) | 0)) yc(a) | 0; ph(a, 1); sb(a, -2); Ac(a, 2); yc(a) | 0; return 0 } function ui(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if (!(jb(b, c) | 0)) { Tb(a, 6714, 28) | 0; b = -1; return b | 0 } if ((wc(b) | 0) == 0 ? (pb(b) | 0) == 0 : 0) { Tb(a, 6743, 28) | 0; b = -1; return b | 0 } lb(a, b, c); if ((Jd(b, a, c) | 0 | 1 | 0) != 1) { lb(b, a, 1); b = -1; return b | 0 } c = pb(b) | 0; if (!(jb(a, c + 1 | 0) | 0)) { qb(b, ~c); Tb(a, 6772, 26) | 0; b = -1; return b | 0 } else { lb(b, a, c); b = c; return b | 0 } return 0 } function vi(a) { a = a | 0; fc(a, 0, 16); jh(a, 708, 0); return 1 } function wi(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = i; i = i + 256 | 0; f = g; b = g + 4 | 0; d = c[539] | 0; Mm(7367, 11, 1, d) | 0; um(d) | 0; e = c[480] | 0; if (!(wm(b, 250, e) | 0)) { i = g; return 0 } while (1) { if (!(Tl(b, 7379) | 0)) { a = 7; break } if (!((Vg(a, b, Vl(b) | 0, 7385, 0) | 0) == 0 ? !(sc(a, 0, 0, 0, 0, 0) | 0) : 0)) { c[f >> 2] = Jb(a, -1, 0) | 0; Cm(d, 7402, f) | 0; um(d) | 0 } qb(a, 0); Mm(7367, 11, 1, d) | 0; um(d) | 0; if (!(wm(b, 250, e) | 0)) { a = 7; break } } if ((a | 0) == 7) { i = g; return 0 } return 0 } function xi(a) { a = a | 0; if ((wb(a, 1) | 0) == 7) { hc(a, 1); return 1 } else { Pb(a); return 1 } return 0 } function yi(b) { b = b | 0; var c = 0, d = 0, e = 0, f = 0, g = 0, h = 0; g = i; i = i + 16 | 0; c = g; e = g + 4 | 0; if ((wb(b, 1) | 0) == 8) d = Nb(b, 1) | 0; else d = b; f = wd(d) | 0; h = ud(d) | 0; if ((h | 0) != 0 & (h | 0) != 25) Tb(b, 7353, 13) | 0; else { Sg(b, -1001e3, 7056) | 0; if ((d | 0) != (b | 0) ? (jb(d, 1) | 0) == 0 : 0) Og(b, 7041, c) | 0; _b(d) | 0; lb(d, b, 1); cc(b, -2); rb(b, -2) } if (!(f & 1)) c = 0; else { a[e >> 0] = 99; c = 1 } if (f & 2) { a[e + c >> 0] = 114; c = c + 1 | 0 } if (!(f & 4)) { h = c; h = e + h | 0; a[h >> 0] = 0; Ub(b, e) | 0; h = vd(d) | 0; Rb(b, h); i = g; return 3 } a[e + c >> 0] = 108; h = c + 1 | 0; h = e + h | 0; a[h >> 0] = 0; Ub(b, e) | 0; h = vd(d) | 0; Rb(b, h); i = g; return 3 } function zi(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; n = i; i = i + 112 | 0; l = n + 8 | 0; g = n; m = n + 12 | 0; if ((wb(b, 1) | 0) == 8) { f = Nb(b, 1) | 0; e = ah(b, 3, 7189, 0) | 0; k = (f | 0) == (b | 0); if (!k) if (!(jb(f, 3) | 0)) { Og(b, 7041, g) | 0; h = 2; j = 3; g = k } else { h = 2; j = 3; g = 0 } else { h = 2; j = 3; g = 1 } } else { f = b; h = 1; e = ah(b, 2, 7189, 0) | 0; j = 2; g = 1 } do if (zb(b, h) | 0) { if (!(zd(f, Gb(b, h, 0) | 0, m) | 0)) { Pb(b); m = 1; i = n; return m | 0 } } else { if ((wb(b, h) | 0) == 6) { c[l >> 2] = e; Wb(b, 7196, l) | 0; e = Jb(b, -1, 0) | 0; vb(b, h); lb(b, f, 1); break } m = Ag(b, h, 7200) | 0; i = n; return m | 0 } while (0); if (!(xd(f, e, m) | 0)) { m = Ag(b, j, 7667) | 0; i = n; return m | 0 } fc(b, 0, 2); if (pm(e, 83) | 0) { Ub(b, c[m + 16 >> 2] | 0) | 0; kc(b, -2, 7227); Ub(b, m + 36 | 0) | 0; kc(b, -2, 7234); Rb(b, c[m + 24 >> 2] | 0); kc(b, -2, 7244); Rb(b, c[m + 28 >> 2] | 0); kc(b, -2, 7256); Ub(b, c[m + 12 >> 2] | 0) | 0; kc(b, -2, 7272) } if (pm(e, 108) | 0) { Rb(b, c[m + 20 >> 2] | 0); kc(b, -2, 7277) } if (pm(e, 117) | 0) { Rb(b, d[m + 32 >> 0] | 0); kc(b, -2, 7289); Rb(b, d[m + 33 >> 0] | 0); kc(b, -2, 7294); Yb(b, a[m + 34 >> 0] | 0); kc(b, -2, 7302) } if (pm(e, 110) | 0) { Ub(b, c[m + 4 >> 2] | 0) | 0; kc(b, -2, 7311); Ub(b, c[m + 8 >> 2] | 0) | 0; kc(b, -2, 7316) } if (pm(e, 116) | 0) { Yb(b, a[m + 35 >> 0] | 0); kc(b, -2, 7325) } if (pm(e, 76) | 0) { if (g) { vb(b, -2); rb(b, -3) } else lb(f, b, 1); kc(b, -2, 7336) } if (!(pm(e, 102) | 0)) { m = 1; i = n; return m | 0 } if (g) { vb(b, -2); rb(b, -3) } else lb(f, b, 1); kc(b, -2, 7348); m = 1; i = n; return m | 0 } function Ai(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0, f = 0, g = 0; g = i; i = i + 112 | 0; e = g; c = g + 4 | 0; if ((wb(a, 1) | 0) == 8) { f = Nb(a, 1) | 0; b = 1 } else { f = a; b = 0 } d = Fg(a, b | 2) | 0; b = b + 1 | 0; if ((wb(a, b) | 0) == 6) { vb(a, b); Ub(a, yd(a, 0, d) | 0) | 0; a = 1; i = g; return a | 0 } if (!(zd(f, Fg(a, b) | 0, c) | 0)) { a = Ag(a, b, 7022) | 0; i = g; return a | 0 } if ((f | 0) != (a | 0) ? (jb(f, 1) | 0) == 0 : 0) Og(a, 7041, e) | 0; b = yd(f, c, d) | 0; if (!b) { Pb(a); a = 1; i = g; return a | 0 } else { lb(f, a, 1); Ub(a, b) | 0; vb(a, -2); a = 2; i = g; return a | 0 } return 0 } function Bi(a) { a = a | 0; vb(a, -1001e3); return 1 } function Ci(a) { a = a | 0; Eg(a, 1); if (gc(a, 1) | 0) return 1; Pb(a); return 1 } function Di(a) { a = a | 0; var b = 0; b = Fg(a, 2) | 0; Kg(a, 1, 6); b = Fc(a, 1, b) | 0; if (!b) { b = 0; return b | 0 } Ub(a, b) | 0; sb(a, -2); b = 2; return b | 0 } function Ei(a) { a = a | 0; var b = 0, c = 0, e = 0, f = 0; f = i; i = i + 112 | 0; b = f; c = Fg(a, 2) | 0; Kg(a, 1, 6); vb(a, 1); xd(a, 7142, b) | 0; if (!((c | 0) > 0 ? (c | 0) <= (d[b + 32 >> 0] | 0 | 0) : 0)) Ag(a, 2, 7145) | 0; e = Fg(a, 4) | 0; Kg(a, 3, 6); vb(a, 3); xd(a, 7142, b) | 0; if (!((e | 0) > 0 ? (e | 0) <= (d[b + 32 >> 0] | 0 | 0) : 0)) Ag(a, 4, 7145) | 0; if (yb(a, 1) | 0) Ag(a, 1, 7167) | 0; if (!(yb(a, 3) | 0)) { Ic(a, 1, c, 3, e); i = f; return 0 } Ag(a, 3, 7167) | 0; Ic(a, 1, c, 3, e); i = f; return 0 } function Fi(a) { a = a | 0; var b = 0, c = 0, e = 0; c = i; i = i + 112 | 0; e = c; b = Fg(a, 2) | 0; Kg(a, 1, 6); vb(a, 1); xd(a, 7142, e) | 0; if (!((b | 0) > 0 ? (b | 0) <= (d[e + 32 >> 0] | 0 | 0) : 0)) Ag(a, 2, 7145) | 0; Zb(a, Hc(a, 1, b) | 0); i = c; return 1 } function Gi(a) { a = a | 0; if ((wb(a, 1) | 0) == 2) Ag(a, 1, 7099) | 0; Kg(a, 1, 7); if ((wb(a, 2) | 0) >= 1) Kg(a, 2, 5); qb(a, 2); pc(a, 1); return 1 } function Hi(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0; h = i; i = i + 16 | 0; g = h; if ((wb(a, 1) | 0) == 8) { e = Nb(a, 1) | 0; b = 1 } else { e = a; b = 0 } f = b + 1 | 0; if ((wb(a, f) | 0) < 1) { qb(a, f); b = 0; c = 0; d = 0 } else { d = Gg(a, b | 2, 0) | 0; Kg(a, f, 6); c = $g(a, b + 3 | 0, 0) | 0; b = (pm(d, 99) | 0) != 0 & 1; j = (pm(d, 114) | 0) == 0; b = j ? b : b | 2; d = (pm(d, 108) | 0) == 0; b = d ? b : b | 4; b = (c | 0) > 0 ? b | 8 : b; d = 25 } if (!(Sg(a, -1001e3, 7056) | 0)) { Ub(a, 7062) | 0; kc(a, -2, 7064); vb(a, -1); oc(a, -2) | 0 } if ((e | 0) != (a | 0) ? (jb(e, 1) | 0) == 0 : 0) Og(a, 7041, g) | 0; _b(e) | 0; lb(e, a, 1); vb(a, f); lc(a, -3); Ad(e, d, b, c) | 0; i = h; return 0 } function Ii(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0, f = 0, g = 0; g = i; i = i + 112 | 0; f = g; d = g + 4 | 0; if ((wb(a, 1) | 0) == 8) { b = Nb(a, 1) | 0; c = 1 } else { b = a; c = 0 } e = c + 1 | 0; if (!(zd(b, Fg(a, e) | 0, d) | 0)) { f = Ag(a, e, 7022) | 0; i = g; return f | 0 } e = c + 3 | 0; Eg(a, e); qb(a, e); if ((b | 0) != (a | 0) ? (jb(b, 1) | 0) == 0 : 0) Og(a, 7041, f) | 0; lb(a, b, 1); Ub(a, Bd(b, d, Fg(a, c | 2) | 0) | 0) | 0; f = 1; i = g; return f | 0 } function Ji(a) { a = a | 0; switch (wb(a, 2) | 0) { case 0: case 5: break; default: Ag(a, 2, 7e3) | 0 }qb(a, 2); oc(a, 1) | 0; return 1 } function Ki(a) { a = a | 0; var b = 0; Eg(a, 3); b = Fg(a, 2) | 0; Kg(a, 1, 6); b = Gc(a, 1, b) | 0; if (!b) { b = 0; return b | 0 } Ub(a, b) | 0; sb(a, -1); b = 1; return b | 0 } function Li(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0; if ((wb(a, 1) | 0) == 8) { b = 1; c = Nb(a, 1) | 0 } else { b = 0; c = a } d = b + 1 | 0; e = Jb(a, d, 0) | 0; if ((e | 0) == 0 ? (wb(a, d) | 0) >= 1 : 0) { vb(a, d); return 1 } nh(a, c, e, $g(a, b | 2, (c | 0) == (a | 0) & 1) | 0); return 1 } function Mi(a, b) { a = a | 0; b = b | 0; Sg(a, -1001e3, 7056) | 0; _b(a) | 0; cc(a, -2); if ((wb(a, -1) | 0) != 6) return; Ub(a, c[844 + (c[b >> 2] << 2) >> 2] | 0) | 0; b = c[b + 20 >> 2] | 0; if ((b | 0) > -1) Rb(a, b); else Pb(a); rc(a, 2, 0, 0, 0); return } function Ni(a) { a = a | 0; var b = 0, d = 0, e = 0; fc(a, 0, 11); jh(a, 864, 0); Yg(a, 7406) | 0; vb(a, -1); kc(a, -2, 10110); jh(a, 960, 0); qb(a, -2); e = c[480] | 0; d = Ec(a, 8) | 0; b = d + 4 | 0; c[b >> 2] = 0; kh(a, 7406); c[d >> 2] = e; c[b >> 2] = 164; vb(a, -1); kc(a, -1001e3, 7412); kc(a, -2, 7422); b = c[509] | 0; d = Ec(a, 8) | 0; e = d + 4 | 0; c[e >> 2] = 0; kh(a, 7406); c[d >> 2] = b; c[e >> 2] = 164; vb(a, -1); kc(a, -1001e3, 7428); kc(a, -2, 7439); e = c[539] | 0; d = Ec(a, 8) | 0; b = d + 4 | 0; c[b >> 2] = 0; kh(a, 7406); c[d >> 2] = e; c[b >> 2] = 164; kc(a, -2, 7446); return 1 } function Oi(a) { a = a | 0; c[(Lg(a, 1, 7406) | 0) + 4 >> 2] = 164; Pb(a); Tb(a, 7453, 26) | 0; return 2 } function Pi(a) { a = a | 0; var b = 0, d = 0, e = 0; b = i; i = i + 16 | 0; if ((wb(a, 1) | 0) == -1) bc(a, -1001e3, 7428); if (!(c[(Lg(a, 1, 7406) | 0) + 4 >> 2] | 0)) Og(a, 7557, b) | 0; e = (Lg(a, 1, 7406) | 0) + 4 | 0; d = c[e >> 2] | 0; c[e >> 2] = 0; a = $a[d & 255](a) | 0; i = b; return a | 0 } function Qi(a) { a = a | 0; var b = 0, d = 0; d = i; i = i + 16 | 0; b = Lg(a, 1, 7406) | 0; if (!(c[b + 4 >> 2] | 0)) Og(a, 7557, d) | 0; b = Qg(a, (um(c[b >> 2] | 0) | 0) == 0 & 1, 0) | 0; i = d; return b | 0 } function Ri(a) { a = a | 0; var b = 0; b = i; i = i + 16 | 0; if (!(c[(Lg(a, 1, 7406) | 0) + 4 >> 2] | 0)) Og(a, 7557, b) | 0; $i(a, 0); i = b; return 1 } function Si(a) { a = a | 0; var b = 0, d = 0; d = i; i = i + 16 | 0; b = Lg(a, 1, 7406) | 0; if (!(c[b + 4 >> 2] | 0)) Og(a, 7557, d) | 0; b = Zi(a, c[b >> 2] | 0, 2) | 0; i = d; return b | 0 } function Ti(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0.0; f = i; i = i + 16 | 0; b = Lg(a, 1, 7406) | 0; if (!(c[b + 4 >> 2] | 0)) Og(a, 7557, f) | 0; b = c[b >> 2] | 0; d = Ig(a, 2, 7605, 1068) | 0; g = +bh(a, 3, 0.0); e = ~~g; if (!(+(e | 0) == g)) Ag(a, 3, 7609) | 0; if (!(Bm(b, e, c[1084 + (d << 2) >> 2] | 0) | 0)) { Qb(a, +(Sm(b) | 0)); a = 1; i = f; return a | 0 } else { a = Qg(a, 0, 0) | 0; i = f; return a | 0 } return 0 } function Ui(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; d = i; i = i + 16 | 0; b = Lg(a, 1, 7406) | 0; if (!(c[b + 4 >> 2] | 0)) Og(a, 7557, d) | 0; f = c[b >> 2] | 0; e = Ig(a, 2, 0, 1040) | 0; b = $g(a, 3, 1024) | 0; b = Qg(a, (Pm(f, 0, c[1056 + (e << 2) >> 2] | 0, b) | 0) == 0 & 1, 0) | 0; i = d; return b | 0 } function Vi(a) { a = a | 0; var b = 0, d = 0; d = i; i = i + 16 | 0; b = Lg(a, 1, 7406) | 0; if (!(c[b + 4 >> 2] | 0)) Og(a, 7557, d) | 0; b = c[b >> 2] | 0; vb(a, 1); b = Yi(a, b, 2) | 0; i = d; return b | 0 } function Wi(a) { a = a | 0; var b = 0, d = 0; b = Lg(a, 1, 7406) | 0; if (!(c[b + 4 >> 2] | 0)) return 0; if (!(c[b >> 2] | 0)) return 0; d = (Lg(a, 1, 7406) | 0) + 4 | 0; b = c[d >> 2] | 0; c[d >> 2] = 0; $a[b & 255](a) | 0; return 0 } function Xi(a) { a = a | 0; var b = 0, d = 0, e = 0; e = i; i = i + 16 | 0; d = e; b = Lg(a, 1, 7406) | 0; if (!(c[b + 4 >> 2] | 0)) { Tb(a, 7533, 13) | 0; i = e; return 1 } else { c[d >> 2] = c[b >> 2]; Wb(a, 7547, d) | 0; i = e; return 1 } return 0 } function Yi(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, j = 0, k = 0, l = 0; l = i; i = i + 16 | 0; k = l; j = l + 8 | 0; f = (pb(a) | 0) - d | 0; if (!f) { k = 1; i = l; return k | 0 } e = 1; g = f; while (1) { g = g + -1 | 0; if ((wb(a, d) | 0) == 3) { if (!e) e = 0; else { h[k >> 3] = +Fb(a, d, 0); e = (Cm(b, 7586, k) | 0) > 0 } e = e & 1 } else { f = Gg(a, d, j) | 0; if (!e) e = 0; else { e = Mm(f, 1, c[j >> 2] | 0, b) | 0; e = (e | 0) == (c[j >> 2] | 0) } e = e & 1 } if (!g) break; else d = d + 1 | 0 } if (e | 0) { k = 1; i = l; return k | 0 } k = Qg(a, 0, 0) | 0; i = l; return k | 0 } function Zi(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; o = i; i = i + 1056 | 0; n = o + 1040 | 0; m = o; f = pb(b) | 0; Wm(d); a: do if ((f | 0) == 1) { g = e + 1 | 0; f = _i(b, d, 1) | 0 } else { Jg(b, f + 19 | 0, 7648); k = m + 8 | 0; l = m + 8 | 0; g = e; j = f + -2 | 0; b: while (1) { c: do if ((wb(b, g) | 0) == 3) { f = Gb(b, g, 0) | 0; if (!f) { f = Om(d) | 0; Tm(f, d) | 0; Tb(b, 0, 0) | 0; f = (f | 0) != -1 & 1; break } else { Bg(b, m); f = Km(dh(m, f) | 0, 1, f, d) | 0; c[k >> 2] = (c[k >> 2] | 0) + f; fh(m); f = (f | 0) != 0 & 1; break } } else { f = Jb(b, g, 0) | 0; if (!((f | 0) != 0 ? (a[f >> 0] | 0) == 42 : 0)) Ag(b, g, 7667) | 0; switch (a[f + 1 >> 0] | 0) { case 110: { c[n >> 2] = m; if ((zm(d, 7682, n) | 0) == 1) { Qb(b, +h[m >> 3]); f = 1 } else { Pb(b); f = 0 } break c } case 108: { f = _i(b, d, 1) | 0; break c } case 76: { f = _i(b, d, 0) | 0; break c } case 97: { Bg(b, m); f = Km(dh(m, 1024) | 0, 1, 1024, d) | 0; c[l >> 2] = (c[l >> 2] | 0) + f; if (f >>> 0 >= 1024) { f = 1024; do { f = f << (f >>> 0 < 1073741824 & 1); p = Km(dh(m, f) | 0, 1, f, d) | 0; c[l >> 2] = (c[l >> 2] | 0) + p } while (p >>> 0 >= f >>> 0) } fh(m); f = 1; break c } default: break b } } while (0); g = g + 1 | 0; if ((f | 0) != 0 & (j | 0) != 0) j = j + -1 | 0; else break a } p = Ag(b, g, 7686) | 0; i = o; return p | 0 } while (0); if (ym(d) | 0) { p = Qg(b, 0, 0) | 0; i = o; return p | 0 } if (!f) { qb(b, -2); Pb(b) } p = g - e | 0; i = o; return p | 0 } function _i(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0; k = i; i = i + 1040 | 0; h = k; Bg(b, h); f = dh(h, 1024) | 0; a: do if (wm(f, 1024, d) | 0) { j = h + 8 | 0; while (1) { g = Vl(f) | 0; if (g | 0 ? (a[f + (g + -1) >> 0] | 0) == 10 : 0) break; c[j >> 2] = (c[j >> 2] | 0) + g; f = dh(h, 1024) | 0; if (!(wm(f, 1024, d) | 0)) break a } c[j >> 2] = g - e + (c[j >> 2] | 0); fh(h); j = 1; i = k; return j | 0 } while (0); fh(h); j = (Kb(b, -1) | 0) != 0 & 1; i = k; return j | 0 } function $i(a, b) { a = a | 0; b = b | 0; var c = 0; c = pb(a) | 0; if ((c | 0) >= 19) Ag(a, 17, 7701) | 0; vb(a, 1); Rb(a, c + -1 | 0); Yb(a, b); if ((c | 0) > 1) b = 1; else { c = c + 2 | 0; Xb(a, 165, c); return } do { b = b + 1 | 0; vb(a, b) } while ((b | 0) != (c | 0)); c = c + 2 | 0; Xb(a, 165, c); return } function aj(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = i; i = i + 16 | 0; f = g + 8 | 0; d = Mb(a, -1001001) | 0; e = Gb(a, -1001002, 0) | 0; if (!(c[d + 4 >> 2] | 0)) { f = Og(a, 7718, g) | 0; i = g; return f | 0 } qb(a, 1); if ((e | 0) >= 1) { b = 1; while (1) { vb(a, -1001003 - b | 0); if ((b | 0) == (e | 0)) break; else b = b + 1 | 0 } } b = Zi(a, c[d >> 2] | 0, 2) | 0; if (wb(a, 0 - b | 0) | 0) { f = b; i = g; return f | 0 } if ((b | 0) > 1) { c[f >> 2] = Jb(a, 1 - b | 0, 0) | 0; f = Og(a, 7741, f) | 0; i = g; return f | 0 } if (!(Ib(a, -1001003) | 0)) { f = 0; i = g; return f | 0 } qb(a, 0); vb(a, -1001001); e = (Lg(a, 1, 7406) | 0) + 4 | 0; f = c[e >> 2] | 0; c[e >> 2] = 0; $a[f & 255](a) | 0; f = 0; i = g; return f | 0 } function bj(a) { a = a | 0; var b = 0, d = 0, e = 0; e = i; i = i + 16 | 0; d = e; bc(a, -1001e3, 7428); b = Mb(a, -1) | 0; if (!(c[b + 4 >> 2] | 0)) { c[d >> 2] = 7432; Og(a, 7781, d) | 0 } d = Qg(a, (um(c[b >> 2] | 0) | 0) == 0 & 1, 0) | 0; i = e; return d | 0 } function cj(a) { a = a | 0; nj(a, 7412, 10034); return 1 } function dj(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; e = i; i = i + 16 | 0; d = e + 8 | 0; b = e; if ((wb(a, 1) | 0) == -1) Pb(a); if (!(wb(a, 1) | 0)) { bc(a, -1001e3, 7412); tb(a, 1); if (c[(Lg(a, 1, 7406) | 0) + 4 >> 2] | 0) { d = 0; $i(a, d); i = e; return 1 } Og(a, 7557, b) | 0; d = 0; $i(a, d); i = e; return 1 } else { b = Gg(a, 1, 0) | 0; g = Ec(a, 8) | 0; f = g + 4 | 0; c[f >> 2] = 0; kh(a, 7406); c[g >> 2] = 0; c[f >> 2] = 166; f = qm(b, 10034) | 0; c[g >> 2] = f; if (!f) { g = Jl(c[(_k() | 0) >> 2] | 0) | 0; c[d >> 2] = b; c[d + 4 >> 2] = g; Og(a, 7849, d) | 0 } tb(a, 1); g = 1; $i(a, g); i = e; return 1 } return 0 } function ej(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; d = Gg(b, 1, 0) | 0; e = ah(b, 2, 10034, 0) | 0; f = Ec(b, 8) | 0; g = f + 4 | 0; c[g >> 2] = 0; kh(b, 7406); c[f >> 2] = 0; c[g >> 2] = 166; g = a[e >> 0] | 0; if (!((g << 24 >> 24 != 0 ? (h = e + 1 | 0, (Kl(12905, g << 24 >> 24, 4) | 0) != 0) : 0) ? (h = (a[h >> 0] | 0) == 43 ? e + 2 | 0 : h, !(a[((a[h >> 0] | 0) == 98 ? h + 1 | 0 : h) >> 0] | 0)) : 0)) Ag(b, 2, 7876) | 0; h = qm(d, e) | 0; c[f >> 2] = h; if (h | 0) { h = 1; return h | 0 } h = Qg(b, 0, d) | 0; return h | 0 } function fj(a) { a = a | 0; nj(a, 7428, 7847); return 1 } function gj(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; b = i; i = i + 16 | 0; d = Gg(a, 1, 0) | 0; ah(a, 2, 10034, 0) | 0; f = Ec(a, 8) | 0; e = f + 4 | 0; c[e >> 2] = 0; kh(a, 7406); Og(a, 7825, b) | 0; c[f >> 2] = 0; c[e >> 2] = 167; a = Qg(a, 0, d) | 0; i = b; return a | 0 } function hj(a) { a = a | 0; var b = 0, d = 0, e = 0; e = i; i = i + 16 | 0; d = e; bc(a, -1001e3, 7412); b = Mb(a, -1) | 0; if (!(c[b + 4 >> 2] | 0)) { c[d >> 2] = 7416; Og(a, 7781, d) | 0 } d = Zi(a, c[b >> 2] | 0, 1) | 0; i = e; return d | 0 } function ij(a) { a = a | 0; var b = 0, d = 0; d = Ec(a, 8) | 0; b = d + 4 | 0; c[b >> 2] = 0; kh(a, 7406); c[d >> 2] = 0; c[b >> 2] = 166; b = _m() | 0; c[d >> 2] = b; if (b | 0) { d = 1; return d | 0 } d = Qg(a, 0, 0) | 0; return d | 0 } function jj(a) { a = a | 0; var b = 0; Eg(a, 1); b = lh(a, 1, 7406) | 0; if (!b) { Pb(a); return 1 } if (!(c[b + 4 >> 2] | 0)) { Tb(a, 7808, 11) | 0; return 1 } else { Tb(a, 7820, 4) | 0; return 1 } return 0 } function kj(a) { a = a | 0; var b = 0, d = 0, e = 0; e = i; i = i + 16 | 0; d = e; bc(a, -1001e3, 7428); b = Mb(a, -1) | 0; if (!(c[b + 4 >> 2] | 0)) { c[d >> 2] = 7432; Og(a, 7781, d) | 0 } d = Yi(a, c[b >> 2] | 0, 1) | 0; i = e; return d | 0 } function lj(a) { a = a | 0; return Qg(a, (tm(c[(Lg(a, 1, 7406) | 0) >> 2] | 0) | 0) == 0 & 1, 0) | 0 } function mj(a) { a = a | 0; Lg(a, 1, 7406) | 0; return Pg(a, -1) | 0 } function nj(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0; h = i; i = i + 16 | 0; g = h + 8 | 0; f = h; if ((wb(a, 1) | 0) < 1) { bc(a, -1001e3, b); i = h; return } e = Jb(a, 1, 0) | 0; if (e) { j = Ec(a, 8) | 0; g = j + 4 | 0; c[g >> 2] = 0; kh(a, 7406); c[j >> 2] = 0; c[g >> 2] = 166; g = qm(e, d) | 0; c[j >> 2] = g; if (!g) { j = Jl(c[(_k() | 0) >> 2] | 0) | 0; c[f >> 2] = e; c[f + 4 >> 2] = j; Og(a, 7849, f) | 0 } } else { if (!(c[(Lg(a, 1, 7406) | 0) + 4 >> 2] | 0)) Og(a, 7557, g) | 0; vb(a, 1) } kc(a, -1001e3, b); bc(a, -1001e3, b); i = h; return } function oj(a) { a = a | 0; fc(a, 0, 28); jh(a, 1096, 0); Qb(a, 3.141592653589793); kc(a, -2, 7889); Qb(a, s); kc(a, -2, 7892); return 1 } function pj(a) { a = a | 0; Qb(a, +E(+(+Hg(a, 1)))); return 1 } function qj(a) { a = a | 0; Qb(a, +K(+(+Hg(a, 1)))); return 1 } function rj(a) { a = a | 0; Qb(a, +L(+(+Hg(a, 1)))); return 1 } function sj(a) { a = a | 0; var b = 0.0; b = +Hg(a, 1); Qb(a, +N(+b, +(+Hg(a, 2)))); return 1 } function tj(a) { a = a | 0; Qb(a, +M(+(+Hg(a, 1)))); return 1 } function uj(a) { a = a | 0; Qb(a, +Q(+(+Hg(a, 1)))); return 1 } function vj(a) { a = a | 0; Qb(a, +pl(+Hg(a, 1))); return 1 } function wj(a) { a = a | 0; Qb(a, +H(+(+Hg(a, 1)))); return 1 } function xj(a) { a = a | 0; Qb(a, +Hg(a, 1) / .017453292519943295); return 1 } function yj(a) { a = a | 0; Qb(a, +O(+(+Hg(a, 1)))); return 1 } function zj(a) { a = a | 0; Qb(a, +D(+(+Hg(a, 1)))); return 1 } function Aj(a) { a = a | 0; var b = 0.0; b = +Hg(a, 1); Qb(a, +tl(b, +Hg(a, 2))); return 1 } function Bj(a) { a = a | 0; var b = 0, d = 0; b = i; i = i + 16 | 0; d = b; Qb(a, +jl(+Hg(a, 1), d)); Rb(a, c[d >> 2] | 0); i = b; return 2 } function Cj(a) { a = a | 0; var b = 0.0; b = +Hg(a, 1); Qb(a, +ql(b, Fg(a, 2) | 0)); return 1 } function Dj(a) { a = a | 0; Qb(a, +fl(+Hg(a, 1))); return 1 } function Ej(a) { a = a | 0; var b = 0.0, c = 0.0; b = +Hg(a, 1); do if ((wb(a, 2) | 0) >= 1) { c = +Hg(a, 2); if (c == 10.0) { b = +fl(b); break } else { b = +P(+b) / +P(+c); break } } else b = +P(+b); while (0); Qb(a, b); return 1 } function Fj(a) { a = a | 0; var b = 0.0, c = 0, d = 0, e = 0.0; d = pb(a) | 0; b = +Hg(a, 1); if ((d | 0) < 2) { Qb(a, b); return 1 } else c = 2; while (1) { e = +Hg(a, c); b = e > b ? e : b; if ((c | 0) == (d | 0)) break; else c = c + 1 | 0 } Qb(a, b); return 1 } function Gj(a) { a = a | 0; var b = 0.0, c = 0, d = 0, e = 0.0; d = pb(a) | 0; b = +Hg(a, 1); if ((d | 0) < 2) { Qb(a, b); return 1 } else c = 2; while (1) { e = +Hg(a, c); b = e < b ? e : b; if ((c | 0) == (d | 0)) break; else c = c + 1 | 0 } Qb(a, b); return 1 } function Hj(a) { a = a | 0; var b = 0, c = 0.0, d = 0; b = i; i = i + 16 | 0; d = b; c = +gl(+Hg(a, 1), d); Qb(a, +h[d >> 3]); Qb(a, c); i = b; return 2 } function Ij(a) { a = a | 0; var b = 0.0; b = +Hg(a, 1); Qb(a, +G(+b, +(+Hg(a, 2)))); return 1 } function Jj(a) { a = a | 0; Qb(a, +Hg(a, 1) * .017453292519943295); return 1 } function Kj(a) { a = a | 0; var b = 0.0, c = 0.0, d = 0.0, e = 0; e = i; i = i + 16 | 0; d = +((Jm() | 0) % 2147483647 | 0 | 0) / 2147483647.0; switch (pb(a) | 0) { case 0: { Qb(a, d); a = 1; i = e; return a | 0 } case 1: { b = +Hg(a, 1); if (!(b >= 1.0)) Ag(a, 1, 8035) | 0; Qb(a, +D(+(d * b)) + 1.0); a = 1; i = e; return a | 0 } case 2: { b = +Hg(a, 1); c = +Hg(a, 2); if (!(b <= c)) Ag(a, 2, 8035) | 0; Qb(a, b + +D(+(d * (c - b + 1.0)))); a = 1; i = e; return a | 0 } default: { a = Og(a, 8053, e) | 0; i = e; return a | 0 } }return 0 } function Lj(a) { a = a | 0; Im(Mg(a, 1) | 0); Jm() | 0; return 0 } function Mj(a) { a = a | 0; Qb(a, +kl(+Hg(a, 1))); return 1 } function Nj(a) { a = a | 0; Qb(a, +I(+(+Hg(a, 1)))); return 1 } function Oj(a) { a = a | 0; Qb(a, +F(+(+Hg(a, 1)))); return 1 } function Pj(a) { a = a | 0; Qb(a, +nl(+Hg(a, 1))); return 1 } function Qj(a) { a = a | 0; Qb(a, +J(+(+Hg(a, 1)))); return 1 } function Rj(a) { a = a | 0; fc(a, 0, 11); jh(a, 1328, 0); return 1 } function Sj(a) { a = a | 0; Qb(a, +(Da() | 0) / 1.0e6); return 1 } function Tj(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = i; i = i + 1264 | 0; p = q; f = q + 1048 | 0; m = q + 1256 | 0; n = q + 8 | 0; o = q + 1056 | 0; e = ah(b, 1, 8288, 0) | 0; if ((wb(b, 2) | 0) < 1) d = Ra(0) | 0; else d = ~~+Hg(b, 2); c[f >> 2] = d; if ((a[e >> 0] | 0) == 33) { e = e + 1 | 0; g = Fa(f | 0) | 0 } else g = Ta(f | 0) | 0; if (!g) { Pb(b); i = q; return 1 } if (!(Tl(e, 8291) | 0)) { fc(b, 0, 9); Rb(b, c[g >> 2] | 0); kc(b, -2, 8186); Rb(b, c[g + 4 >> 2] | 0); kc(b, -2, 8190); Rb(b, c[g + 8 >> 2] | 0); kc(b, -2, 8194); Rb(b, c[g + 12 >> 2] | 0); kc(b, -2, 8199); Rb(b, (c[g + 16 >> 2] | 0) + 1 | 0); kc(b, -2, 8236); Rb(b, (c[g + 20 >> 2] | 0) + 1900 | 0); kc(b, -2, 8242); Rb(b, (c[g + 24 >> 2] | 0) + 1 | 0); kc(b, -2, 8294); Rb(b, (c[g + 28 >> 2] | 0) + 1 | 0); kc(b, -2, 8299); d = c[g + 32 >> 2] | 0; if ((d | 0) < 0) { i = q; return 1 } Yb(b, d); kc(b, -2, 8247); i = q; return 1 } a[m >> 0] = 37; Bg(b, n); h = n + 8 | 0; j = n + 4 | 0; k = m + 1 | 0; l = m + 2 | 0; a: while (1) { f = a[e >> 0] | 0; switch (f << 24 >> 24) { case 0: break a; case 37: break; default: { d = c[h >> 2] | 0; if (d >>> 0 >= (c[j >> 2] | 0) >>> 0) { dh(n, 1) | 0; d = c[h >> 2] | 0; f = a[e >> 0] | 0 } c[h >> 2] = d + 1; a[(c[n >> 2] | 0) + d >> 0] = f; e = e + 1 | 0; continue a } }f = e + 1 | 0; e = e + 2 | 0; d = a[f >> 0] | 0; if (d << 24 >> 24 != 0 ? (Kl(8304, d << 24 >> 24, 23) | 0) != 0 : 0) { a[k >> 0] = d; a[l >> 0] = 0 } else { c[p >> 2] = f; Ag(b, 1, Wb(b, 8327, p) | 0) | 0; e = f } xg(n, o, Ca(o | 0, 200, m | 0, g | 0) | 0) } fh(n); i = q; return 1 } function Uj(a) { a = a | 0; var b = 0; b = ~~+Hg(a, 1); Qb(a, +pa(b | 0, ~~+bh(a, 2, 0.0) | 0)); return 1 } function Vj(a) { a = a | 0; var b = 0, c = 0; c = ah(a, 1, 0, 0) | 0; b = qa(c | 0) | 0; if (!c) { Yb(a, b); c = 1; return c | 0 } else { c = Pg(a, b) | 0; return c | 0 } return 0 } function Wj(a) { a = a | 0; var b = 0; if ((wb(a, 1) | 0) == 1) b = (Ib(a, 1) | 0) == 0 & 1; else b = $g(a, 1, 0) | 0; if (Ib(a, 2) | 0) zf(a); if (!a) return 0; else Ua(b | 0); return 0 } function Xj(a) { a = a | 0; Ub(a, Ga(Gg(a, 1, 0) | 0) | 0) | 0; return 1 } function Yj(a) { a = a | 0; var b = 0; b = Gg(a, 1, 0) | 0; return Qg(a, (Vm(b) | 0) == 0 & 1, b) | 0 } function Zj(a) { a = a | 0; var b = 0; b = Gg(a, 1, 0) | 0; return Qg(a, (Um(b, Gg(a, 2, 0) | 0) | 0) == 0 & 1, 0) | 0 } function _j(a) { a = a | 0; var b = 0; b = ah(a, 1, 0, 0) | 0; Ub(a, zl(c[1452 + ((Ig(a, 2, 8253, 1424) | 0) << 2) >> 2] | 0, b) | 0) | 0; return 1 } function $j(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 80 | 0; g = j + 16 | 0; e = j + 8 | 0; d = j; f = j + 64 | 0; h = j + 20 | 0; if ((wb(a, 1) | 0) < 1) b = Ra(0) | 0; else { Kg(a, 1, 5); qb(a, 1); bc(a, -1, 8186); b = Gb(a, -1, f) | 0; b = (c[f >> 2] | 0) == 0 ? 0 : b; qb(a, -2); c[h >> 2] = b; bc(a, -1, 8190); b = Gb(a, -1, f) | 0; b = (c[f >> 2] | 0) == 0 ? 0 : b; qb(a, -2); c[h + 4 >> 2] = b; bc(a, -1, 8194); b = Gb(a, -1, f) | 0; b = (c[f >> 2] | 0) == 0 ? 12 : b; qb(a, -2); c[h + 8 >> 2] = b; bc(a, -1, 8199); b = Gb(a, -1, f) | 0; if (!(c[f >> 2] | 0)) { c[d >> 2] = 8199; b = Og(a, 8203, d) | 0 } else qb(a, -2); c[h + 12 >> 2] = b; bc(a, -1, 8236); b = Gb(a, -1, f) | 0; if (!(c[f >> 2] | 0)) { c[e >> 2] = 8236; b = Og(a, 8203, e) | 0 } else qb(a, -2); c[h + 16 >> 2] = b + -1; bc(a, -1, 8242); b = Gb(a, -1, f) | 0; if (!(c[f >> 2] | 0)) { c[g >> 2] = 8242; b = Og(a, 8203, g) | 0 } else qb(a, -2); c[h + 20 >> 2] = b + -1900; bc(a, -1, 8247); if (!(wb(a, -1) | 0)) b = -1; else b = Ib(a, -1) | 0; qb(a, -2); c[h + 32 >> 2] = b; b = Ba(h | 0) | 0 } if ((b | 0) == -1) { Pb(a); i = j; return 1 } else { Qb(a, +(b | 0)); i = j; return 1 } return 0 } function ak(a) { a = a | 0; var b = 0, c = 0; c = i; i = i + 32 | 0; b = c + 4 | 0; if (!(Xm(b) | 0)) { b = Og(a, 8149, c) | 0; i = c; return b | 0 } else { Ub(a, b) | 0; b = 1; i = c; return b | 0 } return 0 } function bk(a) { a = a | 0; fc(a, 0, 14); jh(a, 1476, 0); fc(a, 0, 1); Tb(a, 15616, 0) | 0; vb(a, -2); oc(a, -2) | 0; qb(a, -2); vb(a, -2); kc(a, -2, 10110); qb(a, -2); return 1 } function ck(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0; h = i; i = i + 16 | 0; b = h + 4 | 0; g = Gg(a, 1, b) | 0; f = $g(a, 2, 1) | 0; e = c[b >> 2] | 0; e = (f | 0) > -1 ? f : e >>> 0 < (0 - f | 0) >>> 0 ? 0 : f + 1 + e | 0; f = $g(a, 3, e) | 0; b = c[b >> 2] | 0; f = (f | 0) > -1 ? f : b >>> 0 < (0 - f | 0) >>> 0 ? 0 : f + 1 + b | 0; e = (e | 0) == 0 ? 1 : e; f = f >>> 0 > b >>> 0 ? b : f; if (f >>> 0 < e >>> 0) { g = 0; i = h; return g | 0 } b = f - e + 1 | 0; if ((f | 0) == -1) { g = Og(a, 9119, h) | 0; i = h; return g | 0 } Jg(a, b, 9119); if ((b | 0) <= 0) { g = b; i = h; return g | 0 } f = e + -1 | 0; e = 0; do { Rb(a, d[g + (f + e) >> 0] | 0); e = e + 1 | 0 } while ((e | 0) < (b | 0)); i = h; return b | 0 } function dk(b) { b = b | 0; var c = 0, d = 0, e = 0, f = 0, g = 0, h = 0; h = i; i = i + 1040 | 0; d = h; e = pb(b) | 0; f = Cg(b, d, e) | 0; if ((e | 0) < 1) { gh(d, e); i = h; return 1 } else c = 1; while (1) { g = Fg(b, c) | 0; if ((g & 255 | 0) != (g | 0)) Ag(b, c, 9100) | 0; a[f + (c + -1) >> 0] = g; if ((c | 0) == (e | 0)) break; else c = c + 1 | 0 } gh(d, e); i = h; return 1 } function ek(a) { a = a | 0; var b = 0, c = 0; c = i; i = i + 1056 | 0; b = c + 8 | 0; Kg(a, 1, 6); qb(a, 1); Bg(a, b); if (!(vc(a, 19, b) | 0)) { fh(b); b = 1; i = c; return b | 0 } else { b = Og(a, 9070, c) | 0; i = c; return b | 0 } return 0 } function fk(a) { a = a | 0; return qk(a, 1) | 0 } function gk(b) { b = b | 0; var e = 0, f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0.0, J = 0; H = i; i = i + 1168 | 0; C = H + 72 | 0; B = H + 64 | 0; A = H + 56 | 0; z = H + 48 | 0; y = H + 40 | 0; F = H + 32 | 0; E = H + 24 | 0; D = H + 16 | 0; x = H + 8 | 0; w = H; n = H + 1124 | 0; r = H + 1146 | 0; q = H + 1120 | 0; s = H + 80 | 0; t = H + 1128 | 0; u = pb(b) | 0; e = Gg(b, 1, q) | 0; q = c[q >> 2] | 0; v = e + q | 0; Bg(b, s); a: do if ((q | 0) > 0) { o = s + 8 | 0; p = s + 4 | 0; q = t + 1 | 0; m = 1; b: while (1) { while (1) { g = a[e >> 0] | 0; if (g << 24 >> 24 == 37) { k = e + 1 | 0; if ((a[k >> 0] | 0) != 37) break; f = c[o >> 2] | 0; if (f >>> 0 < (c[p >> 2] | 0) >>> 0) g = 37; else { dh(s, 1) | 0; f = c[o >> 2] | 0; g = a[k >> 0] | 0 } c[o >> 2] = f + 1; a[(c[s >> 2] | 0) + f >> 0] = g; e = e + 2 | 0 } else { f = c[o >> 2] | 0; if (f >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(s, 1) | 0; f = c[o >> 2] | 0; g = a[e >> 0] | 0 } c[o >> 2] = f + 1; a[(c[s >> 2] | 0) + f >> 0] = g; e = e + 1 | 0 } if (e >>> 0 >= v >>> 0) break a } l = dh(s, 512) | 0; j = m; m = m + 1 | 0; if ((j | 0) >= (u | 0)) Ag(b, m, 8863) | 0; e = a[k >> 0] | 0; c: do if (!(e << 24 >> 24)) { f = k; e = 0 } else { f = k; while (1) { if (!(Kl(8872, e << 24 >> 24, 6) | 0)) break c; f = f + 1 | 0; e = a[f >> 0] | 0; if (!(e << 24 >> 24)) { e = 0; break } } } while (0); j = k; if ((f - j | 0) >>> 0 > 5) { Og(b, 8878, w) | 0; e = a[f >> 0] | 0 } e = ((e & 255) + -48 | 0) >>> 0 < 10 ? f + 1 | 0 : f; e = ((d[e >> 0] | 0) + -48 | 0) >>> 0 < 10 ? e + 1 | 0 : e; f = a[e >> 0] | 0; if (f << 24 >> 24 == 46) { g = e + 1 | 0; e = ((d[g >> 0] | 0) + -48 | 0) >>> 0 < 10 ? e + 2 | 0 : g; e = ((d[e >> 0] | 0) + -48 | 0) >>> 0 < 10 ? e + 1 | 0 : e; g = e; e = a[e >> 0] | 0 } else { g = e; e = f } if (((e & 255) + -48 | 0) >>> 0 < 10) Og(b, 8910, x) | 0; a[t >> 0] = 37; e = g - j + 1 | 0; nn(q | 0, k | 0, e | 0) | 0; a[q + e >> 0] = 0; e = g + 1 | 0; f = a[g >> 0] | 0; switch (f | 0) { case 99: { c[D >> 2] = Fg(b, m) | 0; f = em(l, t, D) | 0; break } case 105: case 100: { I = +Hg(b, m); f = ~~I; I = I - +(f | 0); if (!(I > -1.0 & I < 1.0)) Ag(b, m, 8955) | 0; k = Vl(t) | 0; g = a[t + (k + -1) >> 0] | 0; j = t + k | 0; J = j + -1 | 0; a[J >> 0] = 108; a[J + 1 >> 0] = 0; a[j >> 0] = g; a[t + (k + 1) >> 0] = 0; c[E >> 2] = f; f = em(l, t, E) | 0; break } case 88: case 120: case 117: case 111: { I = +Hg(b, m); f = ~~I >>> 0; I = I - +(f >>> 0); if (!(I > -1.0 & I < 1.0)) Ag(b, m, 8984) | 0; J = Vl(t) | 0; j = a[t + (J + -1) >> 0] | 0; k = t + J | 0; g = k + -1 | 0; a[g >> 0] = 108; a[g + 1 >> 0] = 0; a[k >> 0] = j; a[t + (J + 1) >> 0] = 0; c[F >> 2] = f; f = em(l, t, F) | 0; break } case 71: case 103: case 102: case 69: case 101: { f = Vl(t) | 0; J = t + (f + -1) | 0; k = a[J >> 0] | 0; f = t + f | 0; a[f + -1 >> 0] = 0; a[J >> 0] = k; a[f >> 0] = 0; h[y >> 3] = +Hg(b, m); f = em(l, t, y) | 0; break } case 113: { g = Gg(b, m, n) | 0; f = c[o >> 2] | 0; if (f >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(s, 1) | 0; f = c[o >> 2] | 0 } c[o >> 2] = f + 1; a[(c[s >> 2] | 0) + f >> 0] = 34; J = c[n >> 2] | 0; c[n >> 2] = J + -1; d: do if (J | 0) while (1) { j = a[g >> 0] | 0; switch (j << 24 >> 24) { case 10: case 92: case 34: { f = c[o >> 2] | 0; if (f >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(s, 1) | 0; f = c[o >> 2] | 0 } c[o >> 2] = f + 1; a[(c[s >> 2] | 0) + f >> 0] = 92; f = c[o >> 2] | 0; if (f >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(s, 1) | 0; f = c[o >> 2] | 0 } J = a[g >> 0] | 0; c[o >> 2] = f + 1; a[(c[s >> 2] | 0) + f >> 0] = J; break } case 0: { f = 0; G = 43; break } default: { f = j & 255; if (!(Sl(f) | 0)) { f = c[o >> 2] | 0; if (f >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(s, 1) | 0; f = c[o >> 2] | 0; j = a[g >> 0] | 0 } c[o >> 2] = f + 1; a[(c[s >> 2] | 0) + f >> 0] = j } else G = 43 } }if ((G | 0) == 43) { G = 0; if (((d[g + 1 >> 0] | 0) + -48 | 0) >>> 0 < 10) { c[A >> 2] = f; em(r, 9030, A) | 0 } else { c[z >> 2] = f; em(r, 9026, z) | 0 } yg(s, r) } J = c[n >> 2] | 0; c[n >> 2] = J + -1; if (!J) break d; else g = g + 1 | 0 } while (0); f = c[o >> 2] | 0; if (f >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(s, 1) | 0; f = c[o >> 2] | 0 } c[o >> 2] = f + 1; a[(c[s >> 2] | 0) + f >> 0] = 34; f = 0; break } case 115: { f = mh(b, m, n) | 0; J = (pm(t, 46) | 0) == 0; if (J & (c[n >> 2] | 0) >>> 0 > 99) { zg(s); f = 0 } else { c[B >> 2] = f; f = em(l, t, B) | 0; qb(b, -2) } break } default: break b }c[o >> 2] = (c[o >> 2] | 0) + f; if (e >>> 0 >= v >>> 0) break a } c[C >> 2] = f; J = Og(b, 9036, C) | 0; i = H; return J | 0 } while (0); fh(s); J = 1; i = H; return J | 0 } function hk(a) { a = a | 0; Gg(a, 1, 0) | 0; Gg(a, 2, 0) | 0; qb(a, 2); Rb(a, 0); Xb(a, 168, 3); return 1 } function ik(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0; G = i; i = i + 1360 | 0; E = G + 16 | 0; D = G + 8 | 0; C = G; w = G + 1352 | 0; g = G + 1348 | 0; f = G + 1344 | 0; A = G + 1064 | 0; F = G + 24 | 0; d = Gg(b, 1, g) | 0; e = Gg(b, 2, f) | 0; B = wb(b, 3) | 0; x = $g(b, 4, (c[g >> 2] | 0) + 1 | 0) | 0; y = (a[e >> 0] | 0) == 94; if ((B + -3 | 0) >>> 0 >= 4) Ag(b, 3, 8757) | 0; Bg(b, F); if (y) { z = (c[f >> 2] | 0) + -1 | 0; c[f >> 2] = z; v = e + 1 | 0; e = z } else { v = e; e = c[f >> 2] | 0 } t = A + 16 | 0; c[t >> 2] = b; c[A >> 2] = 200; u = A + 4 | 0; c[u >> 2] = d; z = A + 8 | 0; c[z >> 2] = d + (c[g >> 2] | 0); c[A + 12 >> 2] = v + e; n = A + 20 | 0; o = F + 8 | 0; p = F + 4 | 0; q = A + 28 | 0; r = A + 24 | 0; e = 0; while (1) { if (e >>> 0 >= x >>> 0) { s = 49; break } c[n >> 2] = 0; m = rk(A, d, v) | 0; if (m) { e = e + 1 | 0; j = c[t >> 2] | 0; switch (B | 0) { case 6: { vb(j, 3); f = c[n >> 2] | 0; f = (d | 0) != 0 & (f | 0) == 0 ? 1 : f; Jg(c[t >> 2] | 0, f, 8478); if ((f | 0) > 0) { g = 0; do { sk(A, g, d, m); g = g + 1 | 0 } while ((g | 0) != (f | 0)) } rc(j, f, 1, 0, 0); s = 38; break } case 5: { do if ((c[n >> 2] | 0) > 0) { g = c[q >> 2] | 0; if ((g | 0) != -1) { f = c[r >> 2] | 0; if ((g | 0) == -2) { Rb(j, f + 1 - (c[u >> 2] | 0) | 0); break } else h = j } else { Og(j, 8518, C) | 0; h = c[t >> 2] | 0; f = c[r >> 2] | 0 } Tb(h, f, g) | 0 } else Tb(j, d, m - d | 0) | 0; while (0); ac(j, 3); s = 38; break } default: { k = Jb(j, 3, w) | 0; if (c[w >> 2] | 0) { l = m - d | 0; f = 0; do { j = k + f | 0; g = a[j >> 0] | 0; do if (g << 24 >> 24 == 37) { f = f + 1 | 0; j = k + f | 0; g = a[j >> 0] | 0; h = g << 24 >> 24; if (((g & 255) + -48 | 0) >>> 0 < 10) if (g << 24 >> 24 == 48) { xg(F, d, l); break } else { sk(A, h + -49 | 0, d, m); zg(F); break } if (g << 24 >> 24 != 37) { h = c[t >> 2] | 0; c[D >> 2] = 37; Og(h, 8788, D) | 0 } g = c[o >> 2] | 0; if (g >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(F, 1) | 0; g = c[o >> 2] | 0 } j = a[j >> 0] | 0; c[o >> 2] = g + 1; a[(c[F >> 2] | 0) + g >> 0] = j } else { h = c[o >> 2] | 0; if (h >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(F, 1) | 0; h = c[o >> 2] | 0; g = a[j >> 0] | 0 } c[o >> 2] = h + 1; a[(c[F >> 2] | 0) + h >> 0] = g } while (0); f = f + 1 | 0 } while (f >>> 0 < (c[w >> 2] | 0) >>> 0) } } }if ((s | 0) == 38) { s = 0; if (Ib(j, -1) | 0) { if (!(Ab(j, -1) | 0)) { c[E >> 2] = xb(j, wb(j, -1) | 0) | 0; Og(j, 8830, E) | 0 } } else { qb(j, -2); Tb(j, d, m - d | 0) | 0 } zg(F) } if (m >>> 0 > d >>> 0) d = m; else s = 44 } else s = 44; if ((s | 0) == 44) { s = 0; if (d >>> 0 >= (c[z >> 2] | 0) >>> 0) { s = 49; break } f = c[o >> 2] | 0; if (f >>> 0 >= (c[p >> 2] | 0) >>> 0) { dh(F, 1) | 0; f = c[o >> 2] | 0 } m = a[d >> 0] | 0; c[o >> 2] = f + 1; a[(c[F >> 2] | 0) + f >> 0] = m; d = d + 1 | 0 } if (y) { s = 49; break } } if ((s | 0) == 49) { xg(F, d, (c[z >> 2] | 0) - d | 0); fh(F); Rb(b, e); i = G; return 2 } return 0 } function jk(a) { a = a | 0; var b = 0, d = 0; b = i; i = i + 16 | 0; d = b; Gg(a, 1, d) | 0; Rb(a, c[d >> 2] | 0); i = b; return 1 } function kk(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0; k = i; i = i + 1056 | 0; g = k + 1040 | 0; j = k; h = Gg(b, 1, g) | 0; f = Cg(b, j, c[g >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { h = 0; gh(j, h); i = k; return 1 } else e = 0; do { a[f + e >> 0] = Rl(d[h + e >> 0] | 0) | 0; e = e + 1 | 0; b = c[g >> 2] | 0 } while (e >>> 0 < b >>> 0); gh(j, b); i = k; return 1 } function lk(a) { a = a | 0; return qk(a, 0) | 0 } function mk(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; n = i; i = i + 1056 | 0; e = n; h = n + 1052 | 0; j = n + 1048 | 0; k = n + 8 | 0; l = Gg(a, 1, h) | 0; f = Fg(a, 2) | 0; m = ah(a, 3, 15616, j) | 0; if ((f | 0) < 1) { Tb(a, 15616, 0) | 0; m = 1; i = n; return m | 0 } b = c[h >> 2] | 0; d = c[j >> 2] | 0; g = d + b | 0; if (g >>> 0 >= b >>> 0 ? g >>> 0 < (2147483647 / (f >>> 0) | 0) >>> 0 : 0) { g = (R(d, f + -1 | 0) | 0) + (R(b, f) | 0) | 0; b = Cg(a, k, g) | 0; nn(b | 0, l | 0, c[h >> 2] | 0) | 0; if ((f | 0) > 1) { a = f; do { a = a + -1 | 0; d = c[h >> 2] | 0; b = b + d | 0; e = c[j >> 2] | 0; if (e) { nn(b | 0, m | 0, e | 0) | 0; b = b + (c[j >> 2] | 0) | 0; d = c[h >> 2] | 0 } nn(b | 0, l | 0, d | 0) | 0 } while ((a | 0) > 1) } gh(k, g); m = 1; i = n; return m | 0 } m = Og(a, 8440, e) | 0; i = n; return m | 0 } function nk(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 1056 | 0; f = j + 1040 | 0; h = j; g = Gg(b, 1, f) | 0; e = Cg(b, h, c[f >> 2] | 0) | 0; b = c[f >> 2] | 0; if (!b) { g = 0; gh(h, g); i = j; return 1 } else d = 0; do { a[e + d >> 0] = a[g + (b + ~d) >> 0] | 0; d = d + 1 | 0; b = c[f >> 2] | 0 } while (b >>> 0 > d >>> 0); gh(h, b); i = j; return 1 } function ok(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = i; i = i + 16 | 0; g = f; e = Gg(a, 1, g) | 0; d = Fg(a, 2) | 0; b = c[g >> 2] | 0; b = (d | 0) > -1 ? d : b >>> 0 < (0 - d | 0) >>> 0 ? 0 : d + 1 + b | 0; d = $g(a, 3, -1) | 0; g = c[g >> 2] | 0; d = (d | 0) > -1 ? d : g >>> 0 < (0 - d | 0) >>> 0 ? 0 : d + 1 + g | 0; b = (b | 0) == 0 ? 1 : b; d = d >>> 0 > g >>> 0 ? g : d; if (d >>> 0 < b >>> 0) { Tb(a, 15616, 0) | 0; i = f; return 1 } else { Tb(a, e + b + -1 | 0, 1 - b + d | 0) | 0; i = f; return 1 } return 0 } function pk(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0; k = i; i = i + 1056 | 0; g = k + 1040 | 0; j = k; h = Gg(b, 1, g) | 0; f = Cg(b, j, c[g >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { h = 0; gh(j, h); i = k; return 1 } else e = 0; do { a[f + e >> 0] = Ql(d[h + e >> 0] | 0) | 0; e = e + 1 | 0; b = c[g >> 2] | 0 } while (e >>> 0 < b >>> 0); gh(j, b); i = k; return 1 } function qk(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = i; i = i + 288 | 0; j = q + 284 | 0; l = q + 280 | 0; n = q; p = Gg(b, 1, j) | 0; h = Gg(b, 2, l) | 0; e = $g(b, 3, 1) | 0; f = c[j >> 2] | 0; if ((e | 0) <= -1) if (f >>> 0 < (0 - e | 0) >>> 0) g = 1; else { e = e + 1 + f | 0; o = 3 } else o = 3; if ((o | 0) == 3) if (e) if (e >>> 0 > (f + 1 | 0) >>> 0) { Pb(b); p = 1; i = q; return p | 0 } else g = e; else g = 1; m = (d | 0) != 0; a: do if (m) { k = (Ib(b, 4) | 0) == 0; d = c[l >> 2] | 0; if (k) { e = 0; do { f = h + e | 0; if (Hm(f, 8467) | 0) { o = 18; break a } e = e + 1 + (Vl(f) | 0) | 0 } while (e >>> 0 <= d >>> 0) } e = p + g + -1 | 0; f = (c[j >> 2] | 0) - g + 1 | 0; b: do if (d) { if (d >>> 0 > f >>> 0) break a; k = d + -1 | 0; f = f - k | 0; if (!f) break a; j = a[h >> 0] | 0; h = h + 1 | 0; while (1) { g = Kl(e, j, f) | 0; if (!g) break a; d = e; e = g + 1 | 0; if (!(Gm(e, h, k) | 0)) { e = g; break b } f = d + f - e | 0; if (!f) break a } } while (0); p = e - p | 0; Rb(b, p + 1 | 0); Rb(b, p + (c[l >> 2] | 0) | 0); p = 2; i = q; return p | 0 } else o = 18; while (0); do if ((o | 0) == 18) { e = p + g + -1 | 0; g = (a[h >> 0] | 0) == 94; if (g) { f = (c[l >> 2] | 0) + -1 | 0; c[l >> 2] = f; k = h + 1 | 0 } else { k = h; f = c[l >> 2] | 0 } l = n + 16 | 0; c[l >> 2] = b; c[n >> 2] = 200; c[n + 4 >> 2] = p; h = n + 8 | 0; c[h >> 2] = p + (c[j >> 2] | 0); c[n + 12 >> 2] = k + f; j = n + 20 | 0; c[j >> 2] = 0; d = rk(n, e, k) | 0; f = (d | 0) == 0; c: do if (g) if (f) o = 32; else g = e; else if (f) while (1) { if (e >>> 0 >= (c[h >> 2] | 0) >>> 0) { o = 32; break c } e = e + 1 | 0; c[j >> 2] = 0; d = rk(n, e, k) | 0; if (d) { g = e; break } } else g = e; while (0); if ((o | 0) == 32) break; if (!m) { e = c[j >> 2] | 0; e = (e | 0) == 0 ? 1 : e; Jg(c[l >> 2] | 0, e, 8478); if ((e | 0) > 0) { f = 0; do { sk(n, f, g, d); f = f + 1 | 0 } while ((f | 0) != (e | 0)) } } else { f = p; Rb(b, 1 - f + g | 0); Rb(b, d - f | 0); f = c[j >> 2] | 0; Jg(c[l >> 2] | 0, f, 8478); if ((f | 0) > 0) { e = 0; do { sk(n, e, 0, 0); e = e + 1 | 0 } while ((e | 0) != (f | 0)) } e = f + 2 | 0 } p = e; i = q; return p | 0 } while (0); Pb(b); p = 1; i = q; return p | 0 } function rk(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0, N = 0, O = 0, P = 0, Q = 0, R = 0, S = 0, T = 0, U = 0; U = i; i = i + 96 | 0; H = U + 80 | 0; G = U + 72 | 0; F = U + 64 | 0; E = U + 56 | 0; D = U + 48 | 0; J = U + 40 | 0; I = U + 32 | 0; N = U + 24 | 0; M = U + 16 | 0; L = U + 8 | 0; S = c[b >> 2] | 0; c[b >> 2] = S + -1; if (!S) Og(c[b + 16 >> 2] | 0, 8537, U) | 0; C = b + 12 | 0; g = c[C >> 2] | 0; a: do if ((g | 0) != (f | 0)) { S = b + 8 | 0; O = b + 16 | 0; x = b + 4 | 0; P = b + 20 | 0; b: while (1) { w = e + -1 | 0; K = f; c: while (1) { f = a[K >> 0] | 0; d: do switch (f << 24 >> 24 | 0) { case 40: { Q = 7; break b } case 41: { Q = 16; break b } case 36: { f = K + 1 | 0; if ((f | 0) == (g | 0)) { Q = 23; break b } else { u = f; v = f; Q = 91 } break } case 37: { f = K + 1 | 0; h = a[f >> 0] | 0; switch (h << 24 >> 24 | 0) { case 98: { Q = 25; break c } case 57: case 56: case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 48: { Q = 71; break c } case 102: break; default: { if ((f | 0) == (g | 0)) Og(c[O >> 2] | 0, 8663, G) | 0; u = K + 2 | 0; v = f; Q = 91; break d } }h = K + 2 | 0; if ((a[h >> 0] | 0) == 91) f = 91; else { Og(c[O >> 2] | 0, 8628, J) | 0; f = a[h >> 0] | 0 } j = K + 3 | 0; switch (f << 24 >> 24 | 0) { case 37: { if ((j | 0) == (c[C >> 2] | 0)) Og(c[O >> 2] | 0, 8663, D) | 0; u = K + 4 | 0; break } case 91: { f = (a[j >> 0] | 0) == 94 ? K + 4 | 0 : j; do { if ((f | 0) == (c[C >> 2] | 0)) Og(c[O >> 2] | 0, 8698, E) | 0; g = f + 1 | 0; if ((a[f >> 0] | 0) == 37) f = g >>> 0 < (c[C >> 2] | 0) >>> 0 ? f + 2 | 0 : g; else f = g } while ((a[f >> 0] | 0) != 93); u = f + 1 | 0; break } default: u = j }if ((e | 0) == (c[x >> 2] | 0)) g = 0; else g = a[w >> 0] | 0; p = g & 255; t = u + -1 | 0; s = (a[j >> 0] | 0) == 94; q = s ? j : h; s = s & 1; f = s ^ 1; l = q + 1 | 0; r = l >>> 0 < t >>> 0; e: do if (r) { n = g & 255; g = q; o = l; while (1) { h = a[o >> 0] | 0; j = g + 2 | 0; k = a[j >> 0] | 0; do if (h << 24 >> 24 == 37) if (!(tk(p, k & 255) | 0)) g = j; else { g = f; break e } else { if (k << 24 >> 24 == 45 ? (y = g + 3 | 0, y >>> 0 < t >>> 0) : 0) { if ((h & 255) >>> 0 > p >>> 0) { g = y; break } if ((d[y >> 0] | 0) >>> 0 < p >>> 0) { g = y; break } else { g = f; break e } } if (h << 24 >> 24 == n << 24 >> 24) { g = f; break e } else g = o } while (0); o = g + 1 | 0; if (o >>> 0 >= t >>> 0) { g = s; break } } } else g = s; while (0); if (g | 0) { e = 0; break a } n = a[e >> 0] | 0; o = n & 255; f: do if (r) { g = q; while (1) { h = a[l >> 0] | 0; j = g + 2 | 0; k = a[j >> 0] | 0; do if (h << 24 >> 24 == 37) if (!(tk(o, k & 255) | 0)) g = j; else break f; else { if (k << 24 >> 24 == 45 ? (z = g + 3 | 0, z >>> 0 < t >>> 0) : 0) { if ((h & 255) > (n & 255)) { g = z; break } if ((d[z >> 0] | 0) < (n & 255)) { g = z; break } else break f } if (h << 24 >> 24 == n << 24 >> 24) break f; else g = l } while (0); l = g + 1 | 0; if (l >>> 0 >= t >>> 0) { f = s; break } } } else f = s; while (0); if (!f) { e = 0; break a } else f = u; break } default: { h = K + 1 | 0; if (f << 24 >> 24 == 91) { f = (a[h >> 0] | 0) == 94 ? K + 2 | 0 : h; while (1) { if ((f | 0) == (g | 0)) Og(c[O >> 2] | 0, 8698, H) | 0; g = f + 1 | 0; if ((a[f >> 0] | 0) == 37) f = g >>> 0 < (c[C >> 2] | 0) >>> 0 ? f + 2 | 0 : g; else f = g; if ((a[f >> 0] | 0) == 93) break; g = c[C >> 2] | 0 } u = f + 1 | 0; v = h; Q = 91 } else { u = h; v = h; Q = 91 } } } while (0); if ((Q | 0) == 91) { Q = 0; t = c[S >> 2] | 0; if (t >>> 0 > e >>> 0) { n = a[e >> 0] | 0; o = n & 255; r = a[K >> 0] | 0; s = r << 24 >> 24; g: do switch (s | 0) { case 46: { Q = 94; break c } case 37: { g = tk(o, d[v >> 0] | 0) | 0; break } case 91: { p = u + -1 | 0; q = (a[v >> 0] | 0) == 94; f = q ? v : K; q = q & 1; g = q ^ 1; h = f + 1 | 0; if (h >>> 0 < p >>> 0) while (1) { j = a[h >> 0] | 0; k = f + 2 | 0; l = a[k >> 0] | 0; do if (j << 24 >> 24 == 37) if (!(tk(o, l & 255) | 0)) f = k; else break g; else { if (l << 24 >> 24 == 45 ? (B = f + 3 | 0, B >>> 0 < p >>> 0) : 0) { if ((j & 255) > (n & 255)) { f = B; break } if ((d[B >> 0] | 0) < (n & 255)) { f = B; break } else break g } if (j << 24 >> 24 == n << 24 >> 24) break g; else f = h } while (0); h = f + 1 | 0; if (h >>> 0 >= p >>> 0) { g = q; break } } else g = q; break } default: g = r << 24 >> 24 == n << 24 >> 24 & 1 } while (0); f = a[u >> 0] | 0; if (g) { Q = 109; break } } else f = a[u >> 0] | 0; switch (f << 24 >> 24) { case 45: case 63: case 42: break; default: { e = 0; break a } }f = u + 1 | 0 } g = c[C >> 2] | 0; if ((f | 0) == (g | 0)) break a; else K = f } if ((Q | 0) == 25) { Q = 0; f = K + 2 | 0; if ((g + -1 | 0) >>> 0 <= f >>> 0) Og(c[O >> 2] | 0, 8581, I) | 0; l = a[e >> 0] | 0; if (l << 24 >> 24 != (a[f >> 0] | 0)) { e = 0; break a } j = a[K + 3 >> 0] | 0; f = e + 1 | 0; k = c[S >> 2] | 0; if (f >>> 0 < k >>> 0) { g = 1; h = f } else { e = 0; break a } while (1) { f = a[h >> 0] | 0; if (f << 24 >> 24 == j << 24 >> 24) { f = g + -1 | 0; if (!f) break; else e = f } else e = (f << 24 >> 24 == l << 24 >> 24 & 1) + g | 0; f = h + 1 | 0; if (f >>> 0 < k >>> 0) { w = h; g = e; h = f; e = w } else { e = 0; break a } } e = e + 2 | 0; f = K + 4 | 0 } else if ((Q | 0) == 71) { Q = 0; g = h & 255; f = g + -49 | 0; if (((h & 255) >= 49 ? (f | 0) < (c[P >> 2] | 0) : 0) ? (A = c[b + 24 + (f << 3) + 4 >> 2] | 0, (A | 0) != -1) : 0) g = A; else { f = c[O >> 2] | 0; c[F >> 2] = g + -48; g = Og(f, 8730, F) | 0; f = g; g = c[b + 24 + (g << 3) + 4 >> 2] | 0 } h = e + g | 0; if (((c[S >> 2] | 0) - e | 0) >>> 0 < g >>> 0) { e = 0; break a } if ((h | 0) == 0 | (Gm(c[b + 24 + (f << 3) >> 2] | 0, e, g) | 0) != 0) { e = 0; break a } e = h; f = K + 2 | 0 } else if ((Q | 0) == 94) { f = a[u >> 0] | 0; Q = 109 } h: do if ((Q | 0) == 109) { Q = 0; switch (f << 24 >> 24 | 0) { case 43: { Q = 112; break b } case 42: break b; case 45: { Q = 110; break b } case 63: { g = u + 1 | 0; f = rk(b, e + 1 | 0, g) | 0; if (!f) { f = g; break h } else { e = f; break a } } default: { e = e + 1 | 0; f = u; break h } } } while (0); g = c[C >> 2] | 0; if ((f | 0) == (g | 0)) break a } if ((Q | 0) == 7) { g = K + 1 | 0; if ((a[g >> 0] | 0) == 41) { f = c[P >> 2] | 0; if ((f | 0) > 31) Og(c[O >> 2] | 0, 8478, L) | 0; c[b + 24 + (f << 3) >> 2] = e; c[b + 24 + (f << 3) + 4 >> 2] = -2; c[P >> 2] = f + 1; e = rk(b, e, K + 2 | 0) | 0; if (e | 0) break; c[P >> 2] = (c[P >> 2] | 0) + -1; e = 0; break } else { f = c[P >> 2] | 0; if ((f | 0) > 31) Og(c[O >> 2] | 0, 8478, M) | 0; c[b + 24 + (f << 3) >> 2] = e; c[b + 24 + (f << 3) + 4 >> 2] = -1; c[P >> 2] = f + 1; e = rk(b, e, g) | 0; if (e | 0) break; c[P >> 2] = (c[P >> 2] | 0) + -1; e = 0; break } } else if ((Q | 0) == 16) { h = K + 1 | 0; g = c[P >> 2] | 0; while (1) { f = g + -1 | 0; if ((g | 0) <= 0) { Q = 19; break } if ((c[b + 24 + (f << 3) + 4 >> 2] | 0) == -1) break; else g = f } if ((Q | 0) == 19) f = Og(c[O >> 2] | 0, 8557, N) | 0; g = b + 24 + (f << 3) + 4 | 0; c[g >> 2] = e - (c[b + 24 + (f << 3) >> 2] | 0); e = rk(b, e, h) | 0; if (e | 0) break; c[g >> 2] = -1; e = 0; break } else if ((Q | 0) == 23) { e = (e | 0) == (c[S >> 2] | 0) ? e : 0; break } else if ((Q | 0) == 110) { q = u + 1 | 0; p = u + -1 | 0; while (1) { f = rk(b, e, q) | 0; if (f) { e = f; break a } i: while (1) { if ((c[S >> 2] | 0) >>> 0 <= e >>> 0) { e = 0; break a } o = a[e >> 0] | 0; f = a[K >> 0] | 0; switch (f << 24 >> 24 | 0) { case 37: { Q = 138; break i } case 91: { Q = 139; break i } case 46: break; default: { Q = 148; break i } }e = e + 1 | 0; f = rk(b, e, q) | 0; if (f) { e = f; break a } } j: do if ((Q | 0) == 138) f = tk(o & 255, d[v >> 0] | 0) | 0; else if ((Q | 0) == 139) { m = o & 255; n = (a[v >> 0] | 0) == 94; g = n ? v : K; n = n & 1; f = n ^ 1; h = g + 1 | 0; if (h >>> 0 < p >>> 0) while (1) { j = a[h >> 0] | 0; k = g + 2 | 0; l = a[k >> 0] | 0; do if (j << 24 >> 24 == 37) if (!(tk(m, l & 255) | 0)) g = k; else break j; else { if (l << 24 >> 24 == 45 ? (T = g + 3 | 0, T >>> 0 < p >>> 0) : 0) { if ((j & 255) > (o & 255)) { g = T; break } if ((d[T >> 0] | 0) < (o & 255)) { g = T; break } else break j } if (j << 24 >> 24 == o << 24 >> 24) break j; else g = h } while (0); h = g + 1 | 0; if (h >>> 0 >= p >>> 0) { f = n; break } } else f = n } else if ((Q | 0) == 148) f = f << 24 >> 24 == o << 24 >> 24 & 1; while (0); if (!f) { e = 0; break a } else e = e + 1 | 0 } } else if ((Q | 0) == 112) e = e + 1 | 0; k: do if (t >>> 0 > e >>> 0) { q = u + -1 | 0; switch (s | 0) { case 46: { f = 0; do f = f + 1 | 0; while (t >>> 0 > (e + f | 0) >>> 0); break } case 37: { g = d[v >> 0] | 0; f = 0; h = e; do { if (!(tk(d[h >> 0] | 0, g) | 0)) break k; f = f + 1 | 0; h = e + f | 0 } while (t >>> 0 > h >>> 0); break } default: { f = 0; g = e; while (1) { o = a[g >> 0] | 0; p = o & 255; l: do switch (s | 0) { case 46: break; case 91: { n = (a[v >> 0] | 0) == 94; g = n ? v : K; n = n & 1; m = n ^ 1; h = g + 1 | 0; if (h >>> 0 < q >>> 0) while (1) { j = a[h >> 0] | 0; k = g + 2 | 0; l = a[k >> 0] | 0; do if (j << 24 >> 24 == 37) if (!(tk(p, l & 255) | 0)) g = k; else { Q = 131; break l } else { if (l << 24 >> 24 == 45 ? (R = g + 3 | 0, R >>> 0 < q >>> 0) : 0) { if ((j & 255) > (o & 255)) { g = R; break } if ((d[R >> 0] | 0) < (o & 255)) { g = R; break } else { Q = 131; break l } } if (j << 24 >> 24 == o << 24 >> 24) { Q = 131; break l } else g = h } while (0); h = g + 1 | 0; if (h >>> 0 >= q >>> 0) { m = n; Q = 131; break } } else { m = n; Q = 131 } break } default: { m = r << 24 >> 24 == o << 24 >> 24 & 1; Q = 131 } } while (0); if ((Q | 0) == 131 ? (Q = 0, (m | 0) == 0) : 0) break k; f = f + 1 | 0; g = e + f | 0; if (t >>> 0 <= g >>> 0) break k } } } } else f = 0; while (0); j = u + 1 | 0; while (1) { if ((f | 0) <= -1) { e = 0; break a } g = rk(b, e + f | 0, j) | 0; h = (g | 0) == 0; if (h) f = (h << 31 >> 31) + f | 0; else { e = g; break } } } while (0); c[b >> 2] = (c[b >> 2] | 0) + 1; i = U; return e | 0 } function sk(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0; h = i; i = i + 16 | 0; f = h + 8 | 0; g = h; if ((c[a + 20 >> 2] | 0) <= (b | 0)) { f = c[a + 16 >> 2] | 0; if (!b) { Tb(f, d, e - d | 0) | 0; i = h; return } else { Og(f, 8496, g) | 0; i = h; return } } e = c[a + 24 + (b << 3) + 4 >> 2] | 0; if ((e | 0) != -1) { d = c[a + 16 >> 2] | 0; f = c[a + 24 + (b << 3) >> 2] | 0; if ((e | 0) == -2) { Rb(d, f + 1 - (c[a + 4 >> 2] | 0) | 0); i = h; return } } else { d = a + 16 | 0; Og(c[d >> 2] | 0, 8518, f) | 0; d = c[d >> 2] | 0; f = c[a + 24 + (b << 3) >> 2] | 0 } Tb(d, f, e) | 0; i = h; return } function tk(a, b) { a = a | 0; b = b | 0; do switch (Rl(b) | 0) { case 97: { a = wl(a) | 0; break } case 99: { a = Sl(a) | 0; break } case 100: { a = (a + -48 | 0) >>> 0 < 10 & 1; break } case 103: { a = Al(a) | 0; break } case 108: { a = yl(a) | 0; break } case 112: { a = Wl(a) | 0; break } case 115: { a = ul(a) | 0; break } case 117: { a = xl(a) | 0; break } case 119: { a = vl(a) | 0; break } case 120: { a = Zl(a) | 0; break } case 122: { a = (a | 0) == 0 & 1; break } default: { b = (b | 0) == (a | 0) & 1; return b | 0 } } while (0); b = (yl(b) | 0) == 0; b = b ? (a | 0) == 0 & 1 : a; return b | 0 } function uk(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; n = i; i = i + 288 | 0; m = n + 8 | 0; g = n + 4 | 0; b = n; h = Jb(a, -1001001, g) | 0; j = Jb(a, -1001002, b) | 0; k = m + 16 | 0; c[k >> 2] = a; c[m >> 2] = 200; c[m + 4 >> 2] = h; g = c[g >> 2] | 0; e = m + 8 | 0; c[e >> 2] = h + g; c[m + 12 >> 2] = j + (c[b >> 2] | 0); b = Gb(a, -1001003, 0) | 0; if ((b | 0) > (g | 0)) { m = 0; i = n; return m | 0 } f = m + 20 | 0; d = h + b | 0; while (1) { c[f >> 2] = 0; g = rk(m, d, j) | 0; if (g | 0) break; b = d + 1 | 0; if (b >>> 0 > (c[e >> 2] | 0) >>> 0) { b = 0; l = 7; break } else d = b } if ((l | 0) == 7) { i = n; return b | 0 } Rb(a, g - h + ((g | 0) == (d | 0) & 1) | 0); tb(a, -1001003); b = c[f >> 2] | 0; b = (d | 0) != 0 & (b | 0) == 0 ? 1 : b; Jg(c[k >> 2] | 0, b, 8478); if ((b | 0) > 0) a = 0; else { m = b; i = n; return m | 0 } do { sk(m, a, d, g); a = a + 1 | 0 } while ((a | 0) != (b | 0)); i = n; return b | 0 } function vk(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; xg(d, b, c); return 0 } function wk(a) { a = a | 0; fc(a, 0, 7); jh(a, 1596, 0); bc(a, -1, 9141); ic(a, 9141); return 1 } function xk(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0; k = i; i = i + 1072 | 0; j = k + 8 | 0; h = k; d = k + 24 | 0; f = k + 16 | 0; g = ah(a, 2, 15616, f) | 0; Kg(a, 1, 5); b = $g(a, 3, 1) | 0; if ((wb(a, 4) | 0) < 1) e = Ug(a, 1) | 0; else e = Fg(a, 4) | 0; Bg(a, d); if ((b | 0) >= (e | 0)) { if ((b | 0) != (e | 0)) { fh(d); i = k; return 1 } } else do { dc(a, 1, b); if (!(Ab(a, -1) | 0)) { c[h >> 2] = xb(a, wb(a, -1) | 0) | 0; c[h + 4 >> 2] = b; Og(a, 9309, h) | 0 } zg(d); xg(d, g, c[f >> 2] | 0); b = b + 1 | 0 } while ((b | 0) != (e | 0)); dc(a, 1, e); if (!(Ab(a, -1) | 0)) { c[j >> 2] = xb(a, wb(a, -1) | 0) | 0; c[j + 4 >> 2] = e; Og(a, 9309, j) | 0 } zg(d); fh(d); i = k; return 1 } function yk(a) { a = a | 0; var b = 0.0, c = 0.0; Kg(a, 1, 5); Pb(a); b = 0.0; a: while (1) { do { if (!(zc(a, 1) | 0)) break a; qb(a, -2) } while ((wb(a, -1) | 0) != 3); c = +Fb(a, -1, 0); b = c > b ? c : b } Qb(a, b); return 1 } function zk(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0; e = i; i = i + 16 | 0; Kg(a, 1, 5); c = Ug(a, 1) | 0; b = c + 1 | 0; switch (pb(a) | 0) { case 2: break; case 3: { d = 2; break } default: { a = Og(a, 9271, e) | 0; i = e; return a | 0 } }if ((d | 0) == 2) { d = Fg(a, 2) | 0; if ((d | 0) < 1 | (d | 0) > (b | 0)) Ag(a, 2, 9219) | 0; if ((c | 0) < (d | 0)) b = d; else { do { c = b; b = b + -1 | 0; dc(a, 1, b); mc(a, 1, c) } while ((b | 0) > (d | 0)); b = d } } mc(a, 1, b); a = 0; i = e; return a | 0 } function Ak(a) { a = a | 0; var b = 0; b = pb(a) | 0; fc(a, b, 1); Rb(a, b); kc(a, -2, 9269); if ((b | 0) <= 0) return 1; vb(a, 1); mc(a, -2, 1); tb(a, 1); if ((b | 0) == 1) return 1; do { mc(a, 1, b); b = b + -1 | 0 } while ((b | 0) > 1); return 1 } function Bk(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0, f = 0, g = 0; g = i; i = i + 16 | 0; e = g; Kg(a, 1, 5); c = $g(a, 2, 1) | 0; if ((wb(a, 3) | 0) < 1) f = Ug(a, 1) | 0; else f = Fg(a, 3) | 0; if ((f | 0) < (c | 0)) { f = 0; i = g; return f | 0 } d = f - c | 0; if (d >>> 0 <= 2147483637 ? (b = d + 1 | 0, jb(a, b) | 0) : 0) { dc(a, 1, c); if ((f | 0) <= (c | 0)) { f = b; i = g; return f | 0 } do { c = c + 1 | 0; dc(a, 1, c) } while ((c | 0) != (f | 0)); i = g; return b | 0 } f = Og(a, 9242, e) | 0; i = g; return f | 0 } function Ck(a) { a = a | 0; var b = 0, c = 0, d = 0; Kg(a, 1, 5); b = Ug(a, 1) | 0; c = $g(a, 2, b) | 0; if ((c | 0) != (b | 0) ? (c | 0) < 1 | (c | 0) > (b + 1 | 0) : 0) Ag(a, 1, 9219) | 0; dc(a, 1, c); if ((c | 0) >= (b | 0)) { Pb(a); mc(a, 1, c); return 1 } do { d = c; c = c + 1 | 0; dc(a, 1, c); mc(a, 1, d) } while ((c | 0) != (b | 0)); Pb(a); mc(a, 1, b); return 1 } function Dk(a) { a = a | 0; var b = 0; Kg(a, 1, 5); b = Ug(a, 1) | 0; Jg(a, 40, 15616); if ((wb(a, 2) | 0) >= 1) Kg(a, 2, 6); qb(a, 2); Ek(a, 1, b); return 0 } function Ek(a, b, c) { a = a | 0; b = b | 0; c = c | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0; m = i; i = i + 16 | 0; l = m + 8 | 0; k = m; if ((c | 0) <= (b | 0)) { i = m; return } while (1) { dc(a, 1, b); dc(a, 1, c); if (!(Fk(a, -1, -2) | 0)) qb(a, -3); else { mc(a, 1, b); mc(a, 1, c) } d = c - b | 0; if ((d | 0) == 1) { c = 24; break } e = (c + b | 0) / 2 | 0; dc(a, 1, e); dc(a, 1, b); do if (!(Fk(a, -2, -1) | 0)) { qb(a, -2); dc(a, 1, c); if (!(Fk(a, -1, -2) | 0)) { qb(a, -3); break } else { mc(a, 1, e); mc(a, 1, c); break } } else { mc(a, 1, e); mc(a, 1, b) } while (0); if ((d | 0) == 2) { c = 24; break } dc(a, 1, e); vb(a, -1); j = c + -1 | 0; dc(a, 1, j); mc(a, 1, e); mc(a, 1, j); e = j; d = b; while (1) { f = d + 1 | 0; dc(a, 1, f); if (Fk(a, -1, -2) | 0) { d = f; while (1) { if ((c | 0) <= (d | 0)) Og(a, 9184, k) | 0; qb(a, -2); f = d + 1 | 0; dc(a, 1, f); if (!(Fk(a, -1, -2) | 0)) break; else d = f } } h = e + -1 | 0; dc(a, 1, h); if (!(Fk(a, -3, -1) | 0)) { g = e; e = h } else { g = h; while (1) { if ((g | 0) <= (b | 0)) Og(a, 9184, l) | 0; qb(a, -2); e = g + -1 | 0; dc(a, 1, e); if (!(Fk(a, -3, -1) | 0)) break; else g = e } } if ((g | 0) <= (f | 0)) break; mc(a, 1, f); mc(a, 1, e); d = f } qb(a, -4); dc(a, 1, j); dc(a, 1, f); mc(a, 1, j); mc(a, 1, f); h = (f - b | 0) < (c - f | 0); g = d + 2 | 0; f = b; b = h ? g : b; j = c; c = h ? c : d; Ek(a, h ? f : g, h ? d : j); if ((c | 0) <= (b | 0)) { c = 24; break } } if ((c | 0) == 24) { i = m; return } } function Fk(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if (!(wb(a, 2) | 0)) { c = Eb(a, b, c, 1) | 0; return c | 0 } else { vb(a, 2); vb(a, b + -1 | 0); vb(a, c + -2 | 0); rc(a, 2, 1, 0, 0); c = Ib(a, -1) | 0; qb(a, -2); return c | 0 } return 0 } function Gk(a) { a = a | 0; Sg(a, -1001e3, 9362) | 0; fc(a, 0, 1); Xb(a, 169, 0); kc(a, -2, 9369); oc(a, -2) | 0; fc(a, 0, 3); jh(a, 1660, 0); fc(a, 4, 0); vb(a, -2); Xb(a, 170, 1); mc(a, -2, 1); vb(a, -2); Xb(a, 171, 1); mc(a, -2, 2); vb(a, -2); Xb(a, 172, 1); mc(a, -2, 3); vb(a, -2); Xb(a, 173, 1); mc(a, -2, 4); vb(a, -1); kc(a, -3, 9374); kc(a, -2, 9382); Mk(a, 9392, 9397, 9410, 9419); Mk(a, 9557, 9563, 9577, 9587); Tb(a, 9656, 10) | 0; kc(a, -2, 9667); Sg(a, -1001e3, 9674) | 0; kc(a, -2, 9682); Sg(a, -1001e3, 10187) | 0; kc(a, -2, 9689); dc(a, -1001e3, 2); vb(a, -2); jh(a, 1692, 1); qb(a, -2); return 1 } function Hk(a) { a = a | 0; var b = 0; b = Ug(a, 1) | 0; if ((b | 0) <= 0) return 0; while (1) { dc(a, 1, b); qb(a, -2); if ((b | 0) > 1) b = b + -1 | 0; else break } return 0 } function Ik(a) { a = a | 0; var b = 0, d = 0, e = 0; e = i; i = i + 16 | 0; d = e; b = Gg(a, 1, 0) | 0; bc(a, -1001e3, 10187); bc(a, -1, b); if (wb(a, -1) | 0) { i = e; return 1 } c[d >> 2] = b; Wb(a, 10051, d) | 0; i = e; return 1 } function Jk(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = i; i = i + 32 | 0; f = g + 8 | 0; e = g; b = Gg(a, 1, 0) | 0; bc(a, -1001001, 9392); d = Jb(a, -1, 0) | 0; if (!d) { c[e >> 2] = 9392; Og(a, 9852, e) | 0 } b = Pk(a, b, d, 12624, 9882) | 0; if (!b) { f = 1; i = g; return f | 0 } if (!(Wg(a, b, 0) | 0)) { Ub(a, b) | 0; f = 2; i = g; return f | 0 } else { d = Jb(a, 1, 0) | 0; e = Jb(a, -1, 0) | 0; c[f >> 2] = d; c[f + 4 >> 2] = b; c[f + 8 >> 2] = e; f = Og(a, 9884, f) | 0; i = g; return f | 0 } return 0 } function Kk(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = i; i = i + 32 | 0; f = g + 8 | 0; d = g; e = Gg(a, 1, 0) | 0; bc(a, -1001001, 9557); b = Jb(a, -1, 0) | 0; if (!b) { c[d >> 2] = 9557; Og(a, 9852, d) | 0 } b = Pk(a, e, b, 12624, 9882) | 0; if (!b) { f = 1; i = g; return f | 0 } if (!(Qk(a, b, e) | 0)) { Ub(a, b) | 0; f = 2; i = g; return f | 0 } else { d = Jb(a, 1, 0) | 0; e = Jb(a, -1, 0) | 0; c[f >> 2] = d; c[f + 4 >> 2] = b; c[f + 8 >> 2] = e; f = Og(a, 9884, f) | 0; i = g; return f | 0 } return 0 } function Lk(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 32 | 0; h = j + 24 | 0; g = j + 8 | 0; e = j; f = Gg(a, 1, 0) | 0; b = pm(f, 46) | 0; if (!b) { h = 0; i = j; return h | 0 } Tb(a, f, b - f | 0) | 0; b = Jb(a, -1, 0) | 0; bc(a, -1001001, 9557); d = Jb(a, -1, 0) | 0; if (!d) { c[e >> 2] = 9557; Og(a, 9852, e) | 0 } b = Pk(a, b, d, 12624, 9882) | 0; if (!b) { h = 1; i = j; return h | 0 } switch (Qk(a, b, f) | 0) { case 0: { Ub(a, b) | 0; h = 2; i = j; return h | 0 } case 2: { c[h >> 2] = f; c[h + 4 >> 2] = b; Wb(a, 9930, h) | 0; h = 1; i = j; return h | 0 } default: { f = Jb(a, 1, 0) | 0; h = Jb(a, -1, 0) | 0; c[g >> 2] = f; c[g + 4 >> 2] = b; c[g + 8 >> 2] = h; h = Og(a, 9884, g) | 0; i = j; return h | 0 } }return 0 } function Mk(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; var f = 0, g = 0; c = Ga(c | 0) | 0; if (!c) { c = Ga(d | 0) | 0; if (c | 0) { f = c; g = 3 } } else { f = c; g = 3 } if ((g | 0) == 3 ? (bc(a, -1001e3, 9833), g = Ib(a, -1) | 0, qb(a, -2), (g | 0) == 0) : 0) { Tg(a, Tg(a, f, 9843, 9846) | 0, 9850, e) | 0; rb(a, -2); kc(a, -2, b); return } Ub(a, e) | 0; kc(a, -2, b); return } function Nk(a) { a = a | 0; var b = 0, c = 0, d = 0, e = 0, f = 0, g = 0; f = i; i = i + 112 | 0; d = f; b = f + 4 | 0; c = Gg(a, 1, 0) | 0; e = pb(a) | 0; eh(a, c, 1); bc(a, -1, 9773); g = (wb(a, -1) | 0) == 0; qb(a, -2); if (g) { vb(a, -1); kc(a, -2, 9779); Ub(a, c) | 0; kc(a, -2, 9773); g = nm(c, 46) | 0; Tb(a, c, ((g | 0) == 0 ? c : g + 1 | 0) - c | 0) | 0; kc(a, -2, 9782) } vb(a, -1); if (!(((zd(a, 1, b) | 0) != 0 ? (xd(a, 9791, b) | 0) != 0 : 0) ? !(yb(a, -1) | 0) : 0)) Og(a, 9793, d) | 0; vb(a, -2); Gc(a, -2, 1) | 0; qb(a, -2); if ((e | 0) < 2) { i = f; return 1 } else b = 2; while (1) { if ((wb(a, b) | 0) == 6) { vb(a, b); vb(a, -2); rc(a, 1, 0, 0, 0) } if ((b | 0) == (e | 0)) break; else b = b + 1 | 0 } i = f; return 1 } function Ok(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0; g = i; i = i + 1056 | 0; f = g + 8 | 0; d = g + 16 | 0; e = Gg(a, 1, 0) | 0; qb(a, 1); bc(a, -1001e3, 9674); bc(a, 2, e); if (Ib(a, -1) | 0) { i = g; return 1 } qb(a, -2); Bg(a, d); bc(a, -1001001, 9382); if ((wb(a, 3) | 0) == 5) b = 1; else { Og(a, 9712, g) | 0; b = 1 } while (1) { dc(a, 3, b); if (!(wb(a, -1) | 0)) { qb(a, -2); fh(d); h = Jb(a, -1, 0) | 0; c[f >> 2] = e; c[f + 4 >> 2] = h; Og(a, 9748, f) | 0 } Ub(a, e) | 0; rc(a, 1, 2, 0, 0); if ((wb(a, -2) | 0) == 6) break; if (!(Ab(a, -2) | 0)) qb(a, -3); else { qb(a, -2); zg(d) } b = b + 1 | 0 } Ub(a, e) | 0; sb(a, -2); rc(a, 2, 1, 0, 0); if (wb(a, -1) | 0) kc(a, 2, e); bc(a, 2, e); if (wb(a, -1) | 0) { i = g; return 1 } Yb(a, 1); vb(a, -1); kc(a, 2, e); i = g; return 1 } function Pk(b, d, e, f, g) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, j = 0, k = 0; k = i; i = i + 1056 | 0; h = k; j = k + 8 | 0; Bg(b, j); if (!(a[f >> 0] | 0)) g = d; else g = Tg(b, d, f, g) | 0; a: while (1) { d = e; b: while (1) { switch (a[d >> 0] | 0) { case 0: { e = 13; break a } case 59: break; default: break b }d = d + 1 | 0 } e = pm(d, 59) | 0; if (!e) e = d + (Vl(d) | 0) | 0; Tb(b, d, e - d | 0) | 0; if (!e) { e = 13; break } d = Tg(b, Jb(b, -1, 0) | 0, 10032, g) | 0; rb(b, -2); f = qm(d, 10034) | 0; if (f | 0) { e = 12; break } c[h >> 2] = d; Wb(b, 10036, h) | 0; rb(b, -2); zg(j) } if ((e | 0) == 12) { tm(f) | 0; j = d; i = k; return j | 0 } else if ((e | 0) == 13) { fh(j); j = 0; i = k; return j | 0 } return 0 } function Qk(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = i; i = i + 16 | 0; g = h + 8 | 0; f = h; d = Tg(a, d, 12624, 9960) | 0; e = pm(d, 45) | 0; if (e) { c[f >> 2] = Tb(a, d, e - d | 0) | 0; d = Rk(a, b, Wb(a, 9962, f) | 0) | 0; if ((d | 0) == 2) d = e + 1 | 0; else { g = d; i = h; return g | 0 } } c[g >> 2] = d; g = Rk(a, b, Wb(a, 9962, g) | 0) | 0; i = h; return g | 0 } function Rk(b, c, d) { b = b | 0; c = c | 0; d = d | 0; bc(b, -1001e3, 9362); bc(b, -1, c); c = Mb(b, -1) | 0; qb(b, -3); if (!c) { Tb(b, 9973, 58) | 0; d = 1; return d | 0 } if ((a[d >> 0] | 0) == 42) { Yb(b, 1); d = 0; return d | 0 } else { Tb(b, 9973, 58) | 0; d = 2; return d | 0 } return 0 } function Sk(a) { a = a | 0; var b = 0; b = Gg(a, 1, 0) | 0; b = Rk(a, b, Gg(a, 2, 0) | 0) | 0; if (!b) { b = 1; return b | 0 } Pb(a); sb(a, -2); Ub(a, (b | 0) == 1 ? 10118 : 10125) | 0; b = 3; return b | 0 } function Tk(a) { a = a | 0; var b = 0, c = 0, d = 0; d = Gg(a, 1, 0) | 0; c = Gg(a, 2, 0) | 0; b = ah(a, 3, 12624, 0) | 0; if (Pk(a, d, c, b, ah(a, 4, 9882, 0) | 0) | 0) { d = 1; return d | 0 } Pb(a); sb(a, -2); d = 2; return d | 0 } function Uk(a) { a = a | 0; Kg(a, 1, 5); if (!(gc(a, 1) | 0)) { fc(a, 0, 1); vb(a, -1); oc(a, 1) | 0 } dc(a, -1001e3, 2); kc(a, -2, 10110); return 0 } function Vk(a) { a = a | 0; ih(a, 10130, 174, 1); qb(a, -2); ih(a, 10133, 175, 1); qb(a, -2); ih(a, 10141, 176, 1); qb(a, -2); ih(a, 10151, 177, 1); qb(a, -2); ih(a, 10157, 178, 1); qb(a, -2); ih(a, 10160, 179, 1); qb(a, -2); ih(a, 10163, 180, 1); qb(a, -2); ih(a, 10170, 181, 1); qb(a, -2); ih(a, 10176, 182, 1); qb(a, -2); ih(a, 10181, 183, 1); qb(a, -2); Sg(a, -1001e3, 10187) | 0; qb(a, -2); return } function Wk(a) { a = a | 0; var b = 0, d = 0; b = i; i = i + 16 | 0; d = b; c[d >> 2] = c[a + 60 >> 2]; a = Zk(Pa(6, d | 0) | 0) | 0; i = b; return a | 0 } function Xk(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; m = i; i = i + 48 | 0; h = m + 16 | 0; g = m; f = m + 32 | 0; c[f >> 2] = d; j = f + 4 | 0; l = b + 48 | 0; n = c[l >> 2] | 0; c[j >> 2] = e - ((n | 0) != 0 & 1); k = b + 44 | 0; c[f + 8 >> 2] = c[k >> 2]; c[f + 12 >> 2] = n; if (!(c[3248] | 0)) { c[h >> 2] = c[b + 60 >> 2]; c[h + 4 >> 2] = f; c[h + 8 >> 2] = 2; f = Zk(Va(145, h | 0) | 0) | 0 } else { oa(18, b | 0); c[g >> 2] = c[b + 60 >> 2]; c[g + 4 >> 2] = f; c[g + 8 >> 2] = 2; f = Zk(Va(145, g | 0) | 0) | 0; ha(0) } if ((f | 0) >= 1) { j = c[j >> 2] | 0; if (f >>> 0 > j >>> 0) { g = c[k >> 2] | 0; h = b + 4 | 0; c[h >> 2] = g; c[b + 8 >> 2] = g + (f - j); if (!(c[l >> 2] | 0)) f = e; else { c[h >> 2] = g + 1; a[d + (e + -1) >> 0] = a[g >> 0] | 0; f = e } } } else { c[b >> 2] = c[b >> 2] | f & 48 ^ 16; c[b + 8 >> 2] = 0; c[b + 4 >> 2] = 0 } i = m; return f | 0 } function Yk(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = i; i = i + 32 | 0; g = f; e = f + 20 | 0; c[g >> 2] = c[a + 60 >> 2]; c[g + 4 >> 2] = 0; c[g + 8 >> 2] = b; c[g + 12 >> 2] = e; c[g + 16 >> 2] = d; if ((Zk(Sa(140, g | 0) | 0) | 0) < 0) { c[e >> 2] = -1; a = -1 } else a = c[e >> 2] | 0; i = f; return a | 0 } function Zk(a) { a = a | 0; if (a >>> 0 > 4294963200) { c[(_k() | 0) >> 2] = 0 - a; a = -1 } return a | 0 } function _k() { var a = 0; if (!(c[3248] | 0)) a = 13036; else a = c[(un() | 0) + 64 >> 2] | 0; return a | 0 } function $k(a) { a = a | 0; if (!(c[a + 68 >> 2] | 0)) al(a); return } function al(a) { a = a | 0; return } function bl(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; g = i; i = i + 80 | 0; f = g; c[b + 36 >> 2] = 21; if ((c[b >> 2] & 64 | 0) == 0 ? (c[f >> 2] = c[b + 60 >> 2], c[f + 4 >> 2] = 21505, c[f + 8 >> 2] = g + 12, Ia(54, f | 0) | 0) : 0) a[b + 75 >> 0] = -1; f = cl(b, d, e) | 0; i = g; return f | 0 } function cl(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = i; i = i + 48 | 0; n = q + 16 | 0; m = q; j = q + 32 | 0; o = a + 28 | 0; h = c[o >> 2] | 0; c[j >> 2] = h; p = a + 20 | 0; h = (c[p >> 2] | 0) - h | 0; c[j + 4 >> 2] = h; c[j + 8 >> 2] = b; c[j + 12 >> 2] = d; k = a + 60 | 0; l = a + 44 | 0; g = 2; b = h + d | 0; while (1) { if (!(c[3248] | 0)) { c[n >> 2] = c[k >> 2]; c[n + 4 >> 2] = j; c[n + 8 >> 2] = g; f = Zk(Wa(146, n | 0) | 0) | 0 } else { oa(19, a | 0); c[m >> 2] = c[k >> 2]; c[m + 4 >> 2] = j; c[m + 8 >> 2] = g; f = Zk(Wa(146, m | 0) | 0) | 0; ha(0) } if ((b | 0) == (f | 0)) { b = 6; break } if ((f | 0) < 0) { b = 8; break } b = b - f | 0; e = c[j + 4 >> 2] | 0; if (f >>> 0 <= e >>> 0) if ((g | 0) == 2) { c[o >> 2] = (c[o >> 2] | 0) + f; g = 2; h = j } else h = j; else { h = c[l >> 2] | 0; c[o >> 2] = h; c[p >> 2] = h; f = f - e | 0; g = g + -1 | 0; h = j + 8 | 0; e = c[j + 12 >> 2] | 0 } c[h >> 2] = (c[h >> 2] | 0) + f; c[h + 4 >> 2] = e - f; j = h } if ((b | 0) == 6) { n = c[l >> 2] | 0; c[a + 16 >> 2] = n + (c[a + 48 >> 2] | 0); a = n; c[o >> 2] = a; c[p >> 2] = a } else if ((b | 0) == 8) { c[a + 16 >> 2] = 0; c[o >> 2] = 0; c[p >> 2] = 0; c[a >> 2] = c[a >> 2] | 32; if ((g | 0) == 2) d = 0; else d = d - (c[j + 4 >> 2] | 0) | 0 } i = q; return d | 0 } function dl(a) { a = a | 0; if (!(c[a + 68 >> 2] | 0)) al(a); return } function el(a, b) { a = +a; b = b | 0; var d = 0; if ((b | 0) > 1023) { a = a * 8988465674311579538646525.0e283; d = b + -1023 | 0; b = b + -2046 | 0; if ((d | 0) > 1023) { a = a * 8988465674311579538646525.0e283; b = (b | 0) > 1023 ? 1023 : b } else b = d } else if ((b | 0) < -1022) { a = a * 2.2250738585072014e-308; d = b + 1022 | 0; b = b + 2044 | 0; if ((d | 0) < -1022) { a = a * 2.2250738585072014e-308; b = (b | 0) < -1022 ? -1022 : b } else b = d } b = jn(b + 1023 | 0, 0, 52) | 0; d = C; c[k >> 2] = b; c[k + 4 >> 2] = d; return +(a * +h[k >> 3]) } function fl(a) { a = +a; var b = 0, d = 0, e = 0, f = 0, g = 0.0, i = 0.0, j = 0.0, l = 0.0, m = 0.0; h[k >> 3] = a; b = c[k >> 2] | 0; d = c[k + 4 >> 2] | 0; e = (d | 0) < 0; do if (e | d >>> 0 < 1048576) { if ((b | 0) == 0 & (d & 2147483647 | 0) == 0) { a = -1.0 / (a * a); break } if (e) { a = (a - a) / 0.0; break } else { h[k >> 3] = a * 18014398509481984.0; d = c[k + 4 >> 2] | 0; e = -1077; b = c[k >> 2] | 0; f = 9; break } } else if (d >>> 0 <= 2146435071) if ((b | 0) == 0 & 0 == 0 & (d | 0) == 1072693248) a = 0.0; else { e = -1023; f = 9 } while (0); if ((f | 0) == 9) { f = d + 614242 | 0; c[k >> 2] = b; c[k + 4 >> 2] = (f & 1048575) + 1072079006; j = +h[k >> 3] + -1.0; i = j * (j * .5); l = j / (j + 2.0); m = l * l; a = m * m; h[k >> 3] = j - i; d = c[k + 4 >> 2] | 0; c[k >> 2] = 0; c[k + 4 >> 2] = d; g = +h[k >> 3]; a = j - g - i + l * (i + (a * (a * (a * .15313837699209373 + .22222198432149784) + .3999999999940942) + m * (a * (a * (a * .14798198605116586 + .1818357216161805) + .2857142874366239) + .6666666666666735))); m = g * .4342944818781689; i = +(e + (f >>> 20) | 0); l = i * .30102999566361177; j = l + m; a = j + (m + (l - j) + (a * .4342944818781689 + (i * 3.694239077158931e-13 + (g + a) * 2.5082946711645275e-11))) } return +a } function gl(a, b) { a = +a; b = b | 0; var d = 0, e = 0, f = 0, g = 0, i = 0.0; h[k >> 3] = a; f = c[k >> 2] | 0; g = c[k + 4 >> 2] | 0; d = ln(f | 0, g | 0, 52) | 0; d = d & 2047; e = d + -1023 | 0; do if ((e | 0) > 51) { h[b >> 3] = a; if ((f | 0) == 0 & (g & 1048575 | 0) == 0 | (e | 0) != 1024) { c[k >> 2] = 0; c[k + 4 >> 2] = g & -2147483648; a = +h[k >> 3] } } else { if (d >>> 0 < 1023) { f = b; c[f >> 2] = 0; c[f + 4 >> 2] = g & -2147483648; break } d = ln(-1, 1048575, e | 0) | 0; e = C; if ((d & f | 0) == 0 & (e & g | 0) == 0) { h[b >> 3] = a; c[k >> 2] = 0; c[k + 4 >> 2] = g & -2147483648; a = +h[k >> 3]; break } else { d = f & ~d; f = g & ~e; c[k >> 2] = d; c[k + 4 >> 2] = f; i = +h[k >> 3]; g = b; c[g >> 2] = d; c[g + 4 >> 2] = f; a = a - i; break } } while (0); return +a } function hl(a, b) { a = +a; b = +b; return +(+il(a, b)) } function il(a, b) { a = +a; b = +b; var d = 0, e = 0; h[k >> 3] = a; e = c[k >> 2] | 0; d = c[k + 4 >> 2] | 0; h[k >> 3] = b; d = c[k + 4 >> 2] & -2147483648 | d & 2147483647; c[k >> 2] = e; c[k + 4 >> 2] = d; return +(+h[k >> 3]) } function jl(a, b) { a = +a; b = b | 0; var d = 0, e = 0, f = 0; h[k >> 3] = a; d = c[k >> 2] | 0; e = c[k + 4 >> 2] | 0; f = ln(d | 0, e | 0, 52) | 0; switch (f & 2047) { case 0: { if (a != 0.0) { a = +jl(a * 18446744073709551616.0, b); d = (c[b >> 2] | 0) + -64 | 0 } else d = 0; c[b >> 2] = d; break } case 2047: break; default: { c[b >> 2] = (f & 2047) + -1022; c[k >> 2] = d; c[k + 4 >> 2] = e & -2146435073 | 1071644672; a = +h[k >> 3] } }return +a } function kl(a) { a = +a; var b = 0.0, d = 0.0, e = 0; h[k >> 3] = a; e = c[k + 4 >> 2] | 0; d = (e | 0) < 0 ? -.5 : .5; e = e & 2147483647; c[k >> 2] = c[k >> 2]; c[k + 4 >> 2] = e; b = +h[k >> 3]; do if (e >>> 0 < 1082535490) { b = +ll(b); if (e >>> 0 >= 1072693248) { a = d * (b + b / (b + 1.0)); break } if (e >>> 0 >= 1045430272) a = d * (b * 2.0 - b * b / (b + 1.0)) } else a = d * 2.0 * +ml(b); while (0); return +a } function ll(a) { a = +a; var b = 0.0, d = 0.0, e = 0, f = 0, g = 0, i = 0, j = 0.0, l = 0, m = 0.0; h[k >> 3] = a; e = c[k >> 2] | 0; f = c[k + 4 >> 2] | 0; g = f & 2147483647; i = ln(e | 0, f | 0, 63) | 0; do if (g >>> 0 > 1078159481) { g = f & 2147483647; if (!(g >>> 0 > 2146435072 | (g | 0) == 2146435072 & e >>> 0 > 0)) if (!i) if (a > 709.782712893384) a = a * 8988465674311579538646525.0e283; else l = 11; else a = -1.0 } else { if (g >>> 0 <= 1071001154) if (g >>> 0 < 1016070144) break; else { j = 0.0; g = 0; l = 14; break } if (g >>> 0 < 1072734898) if (!i) { e = 1; b = a + -.6931471803691238; d = 1.9082149292705877e-10; l = 12; break } else { e = -1; b = a + .6931471803691238; d = -1.9082149292705877e-10; l = 12; break } else l = 11 } while (0); if ((l | 0) == 11) { e = ~~(a * 1.4426950408889634 + (i | 0 ? -.5 : .5)); d = +(e | 0); b = a - d * .6931471803691238; d = d * 1.9082149292705877e-10; l = 12 } if ((l | 0) == 12) { j = b - d; a = j; j = b - j - d; g = e; l = 14 } a: do if ((l | 0) == 14) { d = a * .5; b = a * d; m = b * (b * (b * (b * (4.008217827329362e-06 - b * 2.0109921818362437e-07) + -7.93650757867488e-05) + 1.5873015872548146e-03) + -.03333333333333313) + 1.0; d = 3.0 - d * m; d = b * ((m - d) / (6.0 - a * d)); if (!g) { a = a - (a * d - b); break } b = a * (d - j) - j - b; switch (g | 0) { case -1: { a = (a - b) * .5 + -.5; break a } case 1: if (a < -.25) { a = (b - (a + .5)) * -2.0; break a } else { a = (a - b) * 2.0 + 1.0; break a } default: { i = jn(g + 1023 | 0, 0, 52) | 0; l = C; c[k >> 2] = i; c[k + 4 >> 2] = l; d = +h[k >> 3]; if (g >>> 0 > 56) { a = a - b + 1.0; a = ((g | 0) == 1024 ? a * 2.0 * 8988465674311579538646525.0e283 : d * a) + -1.0; break a } e = jn(1023 - g | 0, 0, 52) | 0; f = C; if ((g | 0) < 20) { c[k >> 2] = e; c[k + 4 >> 2] = f; a = 1.0 - +h[k >> 3] + (a - b) } else { c[k >> 2] = e; c[k + 4 >> 2] = f; a = a - (+h[k >> 3] + b) + 1.0 } a = d * a; break a } } } while (0); return +a } function ml(a) { a = +a; return +(+O(+(a + -1416.0996898839683)) * 2247116418577894884661631.0e283 * 2247116418577894884661631.0e283) } function nl(a) { a = +a; var b = 0, d = 0; h[k >> 3] = a; d = c[k + 4 >> 2] | 0; b = d & 2147483647; c[k >> 2] = c[k >> 2]; c[k + 4 >> 2] = b; a = +h[k >> 3]; do if (b >>> 0 > 1071748074) if (b >>> 0 > 1077149696) { a = 1.0 - 0.0 / a; break } else { a = 1.0 - 2.0 / (+ll(a * 2.0) + 2.0); break } else { if (b >>> 0 > 1070618798) { a = +ll(a * 2.0); a = a / (a + 2.0); break } if (b >>> 0 > 1048575) { a = +ll(a * -2.0); a = -a / (a + 2.0) } } while (0); return +((d | 0) < 0 ? -a : a) } function ol(a, b) { a = +a; b = b | 0; return +(+el(a, b)) } function pl(a) { a = +a; var b = 0; h[k >> 3] = a; b = c[k + 4 >> 2] & 2147483647; c[k >> 2] = c[k >> 2]; c[k + 4 >> 2] = b; a = +h[k >> 3]; do if (b >>> 0 < 1072049730) if (b >>> 0 < 1045430272) a = 1.0; else { a = +ll(a); a = a * a / ((a + 1.0) * 2.0) + 1.0 } else if (b >>> 0 < 1082535490) { a = +O(+a); a = (a + 1.0 / a) * .5; break } else { a = +ml(a); break } while (0); return +a } function ql(a, b) { a = +a; b = b | 0; return +(+el(a, b)) } function rl(a, b) { a = +a; b = b | 0; return +(+jl(a, b)) } function sl(a, b) { a = +a; b = +b; return +(+tl(a, b)) } function tl(a, b) { a = +a; b = +b; var d = 0, e = 0, f = 0, g = 0, i = 0, j = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; h[k >> 3] = a; i = c[k >> 2] | 0; l = c[k + 4 >> 2] | 0; h[k >> 3] = b; n = c[k >> 2] | 0; o = c[k + 4 >> 2] | 0; e = ln(i | 0, l | 0, 52) | 0; e = e & 2047; m = ln(n | 0, o | 0, 52) | 0; m = m & 2047; p = l & -2147483648; g = jn(n | 0, o | 0, 1) | 0; j = C; a: do if (!((g | 0) == 0 & (j | 0) == 0) ? (f = o & 2147483647, !(f >>> 0 > 2146435072 | (f | 0) == 2146435072 & n >>> 0 > 0 | (e | 0) == 2047)) : 0) { d = jn(i | 0, l | 0, 1) | 0; f = C; if (!(f >>> 0 > j >>> 0 | (f | 0) == (j | 0) & d >>> 0 > g >>> 0)) return +((d | 0) == (g | 0) & (f | 0) == (j | 0) ? a * 0.0 : a); if (!e) { d = jn(i | 0, l | 0, 12) | 0; f = C; if ((f | 0) > -1 | (f | 0) == -1 & d >>> 0 > 4294967295) { e = 0; do { e = e + -1 | 0; d = jn(d | 0, f | 0, 1) | 0; f = C } while ((f | 0) > -1 | (f | 0) == -1 & d >>> 0 > 4294967295) } else e = 0; i = jn(i | 0, l | 0, 1 - e | 0) | 0; g = C } else g = l & 1048575 | 1048576; if (!m) { f = jn(n | 0, o | 0, 12) | 0; j = C; if ((j | 0) > -1 | (j | 0) == -1 & f >>> 0 > 4294967295) { d = 0; do { d = d + -1 | 0; f = jn(f | 0, j | 0, 1) | 0; j = C } while ((j | 0) > -1 | (j | 0) == -1 & f >>> 0 > 4294967295) } else d = 0; n = jn(n | 0, o | 0, 1 - d | 0) | 0; m = d; l = C } else l = o & 1048575 | 1048576; f = fn(i | 0, g | 0, n | 0, l | 0) | 0; d = C; j = (d | 0) > -1 | (d | 0) == -1 & f >>> 0 > 4294967295; b: do if ((e | 0) > (m | 0)) { while (1) { if (j) { if ((f | 0) == 0 & (d | 0) == 0) break } else { f = i; d = g } i = jn(f | 0, d | 0, 1) | 0; g = C; e = e + -1 | 0; f = fn(i | 0, g | 0, n | 0, l | 0) | 0; d = C; j = (d | 0) > -1 | (d | 0) == -1 & f >>> 0 > 4294967295; if ((e | 0) <= (m | 0)) break b } b = a * 0.0; break a } while (0); if (j) { if ((f | 0) == 0 & (d | 0) == 0) { b = a * 0.0; break } } else { d = g; f = i } if (d >>> 0 < 1048576 | (d | 0) == 1048576 & f >>> 0 < 0) do { f = jn(f | 0, d | 0, 1) | 0; d = C; e = e + -1 | 0 } while (d >>> 0 < 1048576 | (d | 0) == 1048576 & f >>> 0 < 0); if ((e | 0) > 0) { o = gn(f | 0, d | 0, 0, -1048576) | 0; d = C; e = jn(e | 0, 0, 52) | 0; d = d | C; e = o | e } else { e = ln(f | 0, d | 0, 1 - e | 0) | 0; d = C } c[k >> 2] = e; c[k + 4 >> 2] = d | p; b = +h[k >> 3] } else q = 3; while (0); if ((q | 0) == 3) { b = a * b; b = b / b } return +b } function ul(a) { a = a | 0; return ((a | 0) == 32 | (a + -9 | 0) >>> 0 < 5) & 1 | 0 } function vl(a) { a = a | 0; return ((a + -48 | 0) >>> 0 < 10 | (wl(a) | 0) != 0) & 1 | 0 } function wl(a) { a = a | 0; return ((a | 32) + -97 | 0) >>> 0 < 26 | 0 } function xl(a) { a = a | 0; return (a + -65 | 0) >>> 0 < 26 | 0 } function yl(a) { a = a | 0; return (a + -97 | 0) >>> 0 < 26 | 0 } function zl(a, b) { a = a | 0; b = b | 0; return 10196 } function Al(a) { a = a | 0; return (a + -33 | 0) >>> 0 < 94 | 0 } function Bl(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; f = i; i = i + 16 | 0; g = f; c[g >> 2] = e; e = Cl(a, b, d, g) | 0; i = f; return e | 0 } function Cl(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; n = i; i = i + 128 | 0; g = n + 112 | 0; m = n; h = m; j = 2272; k = h + 112 | 0; do { c[h >> 2] = c[j >> 2]; h = h + 4 | 0; j = j + 4 | 0 } while ((h | 0) < (k | 0)); if ((d + -1 | 0) >>> 0 > 2147483646) if (!d) { b = g; d = 1; l = 4 } else { c[(_k() | 0) >> 2] = 75; d = -1 } else l = 4; if ((l | 0) == 4) { l = -2 - b | 0; l = d >>> 0 > l >>> 0 ? l : d; c[m + 48 >> 2] = l; g = m + 20 | 0; c[g >> 2] = b; c[m + 44 >> 2] = b; d = b + l | 0; b = m + 16 | 0; c[b >> 2] = d; c[m + 28 >> 2] = d; d = Dl(m, e, f) | 0; if (l) { m = c[g >> 2] | 0; a[m + (((m | 0) == (c[b >> 2] | 0)) << 31 >> 31) >> 0] = 0 } } i = n; return d | 0 } function Dl(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = i; i = i + 224 | 0; n = s + 120 | 0; p = s + 80 | 0; q = s; r = s + 136 | 0; f = p; g = f + 40 | 0; do { c[f >> 2] = 0; f = f + 4 | 0 } while ((f | 0) < (g | 0)); c[n >> 2] = c[e >> 2]; if ((El(0, d, n, q, p) | 0) < 0) e = -1; else { if ((c[b + 76 >> 2] | 0) > -1) o = Fl(b) | 0; else o = 0; e = c[b >> 2] | 0; m = e & 32; if ((a[b + 74 >> 0] | 0) < 1) c[b >> 2] = e & -33; f = b + 48 | 0; if (!(c[f >> 2] | 0)) { g = b + 44 | 0; h = c[g >> 2] | 0; c[g >> 2] = r; j = b + 28 | 0; c[j >> 2] = r; k = b + 20 | 0; c[k >> 2] = r; c[f >> 2] = 80; l = b + 16 | 0; c[l >> 2] = r + 80; e = El(b, d, n, q, p) | 0; if (h) { Ya[c[b + 36 >> 2] & 31](b, 0, 0) | 0; e = (c[k >> 2] | 0) == 0 ? -1 : e; c[g >> 2] = h; c[f >> 2] = 0; c[l >> 2] = 0; c[j >> 2] = 0; c[k >> 2] = 0 } } else e = El(b, d, n, q, p) | 0; f = c[b >> 2] | 0; c[b >> 2] = f | m; if (o | 0) al(b); e = (f & 32 | 0) == 0 ? e : -1 } i = s; return e | 0 } function El(e, f, g, j, l) { e = e | 0; f = f | 0; g = g | 0; j = j | 0; l = l | 0; var m = 0, n = 0, o = 0, p = 0, q = 0.0, r = 0, s = 0, t = 0, u = 0, v = 0.0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0, N = 0, O = 0, P = 0, Q = 0, S = 0, T = 0, U = 0, V = 0, W = 0, X = 0, Y = 0, Z = 0, _ = 0, $ = 0, aa = 0, ba = 0, ca = 0, da = 0, ea = 0, fa = 0, ga = 0, ha = 0, ia = 0, ja = 0; ja = i; i = i + 624 | 0; fa = ja + 24 | 0; ga = ja + 16 | 0; ha = ja + 588 | 0; Y = ja + 576 | 0; ia = ja; T = ja + 536 | 0; N = ja + 8 | 0; O = ja + 528 | 0; P = (e | 0) != 0; Q = T + 40 | 0; S = Q; T = T + 39 | 0; U = N + 4 | 0; V = ha; W = 0 - V | 0; X = Y + 12 | 0; Y = Y + 11 | 0; Z = X; _ = Z - V | 0; $ = -2 - V | 0; aa = Z + 2 | 0; ba = fa + 288 | 0; ca = ha + 9 | 0; da = ca; ea = ha + 8 | 0; n = 0; m = 0; s = 0; a: while (1) { do if ((m | 0) > -1) if ((n | 0) > (2147483647 - m | 0)) { c[(_k() | 0) >> 2] = 75; m = -1; break } else { m = n + m | 0; break } while (0); n = a[f >> 0] | 0; if (!(n << 24 >> 24)) { M = 243; break } else o = f; b: while (1) { switch (n << 24 >> 24) { case 37: { n = o; M = 9; break b } case 0: { n = o; break b } default: { } }n = o + 1 | 0; o = n; n = a[n >> 0] | 0 } c: do if ((M | 0) == 9) while (1) { M = 0; if ((a[o + 1 >> 0] | 0) != 37) break c; n = n + 1 | 0; o = o + 2 | 0; if ((a[o >> 0] | 0) == 37) M = 9; else break } while (0); n = n - f | 0; if (P ? (c[e >> 2] & 32 | 0) == 0 : 0) Gl(f, n, e) | 0; if (n | 0) { f = o; continue } r = o + 1 | 0; p = a[r >> 0] | 0; n = (p << 24 >> 24) + -48 | 0; if (n >>> 0 < 10) { u = (a[o + 2 >> 0] | 0) == 36; r = u ? o + 3 | 0 : r; w = u ? n : -1; u = u ? 1 : s; n = a[r >> 0] | 0 } else { w = -1; u = s; n = p } o = (n << 24 >> 24) + -32 | 0; d: do if (o >>> 0 < 32) { p = 0; do { if (!(1 << o & 75913)) break d; p = 1 << (n << 24 >> 24) + -32 | p; r = r + 1 | 0; n = a[r >> 0] | 0; o = (n << 24 >> 24) + -32 | 0 } while (o >>> 0 < 32) } else p = 0; while (0); do if (n << 24 >> 24 != 42) { o = (n << 24 >> 24) + -48 | 0; if (o >>> 0 < 10) { s = 0; do { s = (s * 10 | 0) + o | 0; r = r + 1 | 0; n = a[r >> 0] | 0; o = (n << 24 >> 24) + -48 | 0 } while (o >>> 0 < 10); if ((s | 0) < 0) { m = -1; break a } else L = u } else { s = 0; L = u } } else { t = r + 1 | 0; n = a[t >> 0] | 0; o = (n << 24 >> 24) + -48 | 0; if (o >>> 0 < 10 ? (a[r + 2 >> 0] | 0) == 36 : 0) { c[l + (o << 2) >> 2] = 10; n = c[j + ((a[t >> 0] | 0) + -48 << 3) >> 2] | 0; o = 1; t = r + 3 | 0 } else { if (u | 0) { m = -1; break a } if (!P) { s = 0; L = 0; r = t; break } o = (c[g >> 2] | 0) + (4 - 1) & ~(4 - 1); n = c[o >> 2] | 0; c[g >> 2] = o + 4; o = 0 } L = (n | 0) < 0; s = L ? 0 - n | 0 : n; p = L ? p | 8192 : p; L = o; r = t; n = a[t >> 0] | 0 } while (0); e: do if (n << 24 >> 24 == 46) { n = r + 1 | 0; o = a[n >> 0] | 0; if (o << 24 >> 24 != 42) { r = (o << 24 >> 24) + -48 | 0; if (r >>> 0 < 10) o = 0; else { x = 0; break } while (1) { o = (o * 10 | 0) + r | 0; n = n + 1 | 0; r = (a[n >> 0] | 0) + -48 | 0; if (r >>> 0 >= 10) { x = o; break e } } } n = r + 2 | 0; o = (a[n >> 0] | 0) + -48 | 0; if (o >>> 0 < 10 ? (a[r + 3 >> 0] | 0) == 36 : 0) { c[l + (o << 2) >> 2] = 10; x = c[j + ((a[n >> 0] | 0) + -48 << 3) >> 2] | 0; n = r + 4 | 0; break } if (L | 0) { m = -1; break a } if (P) { K = (c[g >> 2] | 0) + (4 - 1) & ~(4 - 1); x = c[K >> 2] | 0; c[g >> 2] = K + 4 } else x = 0 } else { x = -1; n = r } while (0); u = 0; while (1) { o = (a[n >> 0] | 0) + -65 | 0; if (o >>> 0 > 57) { m = -1; break a } K = n + 1 | 0; o = a[10204 + (u * 58 | 0) + o >> 0] | 0; r = o & 255; if ((r + -1 | 0) >>> 0 < 8) { u = r; n = K } else break } if (!(o << 24 >> 24)) { m = -1; break } t = (w | 0) > -1; do if (o << 24 >> 24 == 19) if (t) { m = -1; break a } else M = 51; else { if (t) { c[l + (w << 2) >> 2] = r; I = j + (w << 3) | 0; J = c[I + 4 >> 2] | 0; M = ia; c[M >> 2] = c[I >> 2]; c[M + 4 >> 2] = J; M = 51; break } if (!P) { m = 0; break a } Hl(ia, r, g) } while (0); if ((M | 0) == 51 ? (M = 0, !P) : 0) { n = 0; s = L; f = K; continue } F = a[n >> 0] | 0; F = (u | 0) != 0 & (F & 15 | 0) == 3 ? F & -33 : F; t = p & -65537; J = (p & 8192 | 0) == 0 ? p : t; f: do switch (F | 0) { case 110: switch ((u & 255) << 24 >> 24) { case 0: { c[c[ia >> 2] >> 2] = m; n = 0; s = L; f = K; continue a } case 1: { c[c[ia >> 2] >> 2] = m; n = 0; s = L; f = K; continue a } case 2: { n = c[ia >> 2] | 0; c[n >> 2] = m; c[n + 4 >> 2] = ((m | 0) < 0) << 31 >> 31; n = 0; s = L; f = K; continue a } case 3: { b[c[ia >> 2] >> 1] = m; n = 0; s = L; f = K; continue a } case 4: { a[c[ia >> 2] >> 0] = m; n = 0; s = L; f = K; continue a } case 6: { c[c[ia >> 2] >> 2] = m; n = 0; s = L; f = K; continue a } case 7: { n = c[ia >> 2] | 0; c[n >> 2] = m; c[n + 4 >> 2] = ((m | 0) < 0) << 31 >> 31; n = 0; s = L; f = K; continue a } default: { n = 0; s = L; f = K; continue a } }case 112: { t = 120; u = x >>> 0 > 8 ? x : 8; n = J | 8; M = 63; break } case 88: case 120: { t = F; u = x; n = J; M = 63; break } case 111: { o = ia; n = c[o >> 2] | 0; o = c[o + 4 >> 2] | 0; if ((n | 0) == 0 & (o | 0) == 0) f = Q; else { f = Q; do { f = f + -1 | 0; a[f >> 0] = n & 7 | 48; n = ln(n | 0, o | 0, 3) | 0; o = C } while (!((n | 0) == 0 & (o | 0) == 0)) } if (!(J & 8)) { o = 0; p = 10684; r = x; n = J; M = 76 } else { r = S - f | 0; o = 0; p = 10684; r = (x | 0) > (r | 0) ? x : r + 1 | 0; n = J; M = 76 } break } case 105: case 100: { f = ia; n = c[f >> 2] | 0; f = c[f + 4 >> 2] | 0; if ((f | 0) < 0) { n = fn(0, 0, n | 0, f | 0) | 0; f = C; o = ia; c[o >> 2] = n; c[o + 4 >> 2] = f; o = 1; p = 10684; M = 75; break f } if (!(J & 2048)) { p = J & 1; o = p; p = (p | 0) == 0 ? 10684 : 10686; M = 75 } else { o = 1; p = 10685; M = 75 } break } case 117: { f = ia; o = 0; p = 10684; n = c[f >> 2] | 0; f = c[f + 4 >> 2] | 0; M = 75; break } case 99: { a[T >> 0] = c[ia >> 2]; f = T; w = 0; u = 10684; o = Q; n = 1; break } case 109: { n = Jl(c[(_k() | 0) >> 2] | 0) | 0; M = 81; break } case 115: { n = c[ia >> 2] | 0; n = n | 0 ? n : 10694; M = 81; break } case 67: { c[N >> 2] = c[ia >> 2]; c[U >> 2] = 0; c[ia >> 2] = N; t = -1; o = N; M = 85; break } case 83: { n = c[ia >> 2] | 0; if (!x) { Ll(e, 32, s, 0, J); n = 0; M = 96 } else { t = x; o = n; M = 85 } break } case 65: case 71: case 70: case 69: case 97: case 103: case 102: case 101: { q = +h[ia >> 3]; c[ga >> 2] = 0; h[k >> 3] = q; if ((c[k + 4 >> 2] | 0) >= 0) { n = J & 1; if (!(J & 2048)) { H = n; I = (n | 0) == 0 ? 10702 : 10707 } else { H = 1; I = 10704 } } else { q = -q; H = 1; I = 10701 } h[k >> 3] = q; G = c[k + 4 >> 2] & 2146435072; do if (G >>> 0 < 2146435072 | (G | 0) == 2146435072 & 0 < 0) { v = +rl(q, ga) * 2.0; f = v != 0.0; if (f) c[ga >> 2] = (c[ga >> 2] | 0) + -1; z = F | 32; if ((z | 0) == 97) { r = F & 32; w = (r | 0) == 0 ? I : I + 9 | 0; u = H | 2; n = 12 - x | 0; do if (!(x >>> 0 > 11 | (n | 0) == 0)) { q = 8.0; do { n = n + -1 | 0; q = q * 16.0 } while ((n | 0) != 0); if ((a[w >> 0] | 0) == 45) { q = -(q + (-v - q)); break } else { q = v + q - q; break } } else q = v; while (0); f = c[ga >> 2] | 0; n = (f | 0) < 0 ? 0 - f | 0 : f; n = Il(n, ((n | 0) < 0) << 31 >> 31, X) | 0; if ((n | 0) == (X | 0)) { a[Y >> 0] = 48; n = Y } a[n + -1 >> 0] = (f >> 31 & 2) + 43; t = n + -2 | 0; a[t >> 0] = F + 15; p = (x | 0) < 1; o = (J & 8 | 0) == 0; n = ha; do { I = ~~q; f = n + 1 | 0; a[n >> 0] = d[10668 + I >> 0] | r; q = (q - +(I | 0)) * 16.0; do if ((f - V | 0) == 1) { if (o & (p & q == 0.0)) { n = f; break } a[f >> 0] = 46; n = n + 2 | 0 } else n = f; while (0) } while (q != 0.0); p = t; o = (x | 0) != 0 & ($ + n | 0) < (x | 0) ? aa + x - p | 0 : _ - p + n | 0; r = o + u | 0; Ll(e, 32, s, r, J); if (!(c[e >> 2] & 32)) Gl(w, u, e) | 0; Ll(e, 48, s, r, J ^ 65536); f = n - V | 0; if (!(c[e >> 2] & 32)) Gl(ha, f, e) | 0; n = Z - p | 0; Ll(e, 48, o - (f + n) | 0, 0, 0); if (!(c[e >> 2] & 32)) Gl(t, n, e) | 0; Ll(e, 32, s, r, J ^ 8192); n = (r | 0) < (s | 0) ? s : r; break } n = (x | 0) < 0 ? 6 : x; if (f) { f = (c[ga >> 2] | 0) + -28 | 0; c[ga >> 2] = f; q = v * 268435456.0 } else { q = v; f = c[ga >> 2] | 0 } G = (f | 0) < 0 ? fa : ba; o = G; do { E = ~~q >>> 0; c[o >> 2] = E; o = o + 4 | 0; q = (q - +(E >>> 0)) * 1.0e9 } while (q != 0.0); if ((f | 0) > 0) { p = G; t = o; while (1) { r = (f | 0) > 29 ? 29 : f; f = t + -4 | 0; do if (f >>> 0 >= p >>> 0) { o = 0; do { D = jn(c[f >> 2] | 0, 0, r | 0) | 0; D = gn(D | 0, C | 0, o | 0, 0) | 0; E = C; B = tn(D | 0, E | 0, 1e9, 0) | 0; c[f >> 2] = B; o = qn(D | 0, E | 0, 1e9, 0) | 0; f = f + -4 | 0 } while (f >>> 0 >= p >>> 0); if (!o) break; p = p + -4 | 0; c[p >> 2] = o } while (0); o = t; while (1) { if (o >>> 0 <= p >>> 0) break; f = o + -4 | 0; if (!(c[f >> 2] | 0)) o = f; else break } f = (c[ga >> 2] | 0) - r | 0; c[ga >> 2] = f; if ((f | 0) > 0) t = o; else break } } else p = G; if ((f | 0) < 0) { x = ((n + 25 | 0) / 9 | 0) + 1 | 0; y = (z | 0) == 102; do { w = 0 - f | 0; w = (w | 0) > 9 ? 9 : w; do if (p >>> 0 < o >>> 0) { r = (1 << w) + -1 | 0; t = 1e9 >>> w; u = 0; f = p; do { E = c[f >> 2] | 0; c[f >> 2] = (E >>> w) + u; u = R(E & r, t) | 0; f = f + 4 | 0 } while (f >>> 0 < o >>> 0); f = (c[p >> 2] | 0) == 0 ? p + 4 | 0 : p; if (!u) { p = f; f = o; break } c[o >> 2] = u; p = f; f = o + 4 | 0 } else { p = (c[p >> 2] | 0) == 0 ? p + 4 | 0 : p; f = o } while (0); o = y ? G : p; o = (f - o >> 2 | 0) > (x | 0) ? o + (x << 2) | 0 : f; f = (c[ga >> 2] | 0) + w | 0; c[ga >> 2] = f } while ((f | 0) < 0) } E = G; do if (p >>> 0 < o >>> 0) { f = (E - p >> 2) * 9 | 0; t = c[p >> 2] | 0; if (t >>> 0 < 10) break; else r = 10; do { r = r * 10 | 0; f = f + 1 | 0 } while (t >>> 0 >= r >>> 0) } else f = 0; while (0); A = (z | 0) == 103; B = (n | 0) != 0; r = n - ((z | 0) != 102 ? f : 0) + ((B & A) << 31 >> 31) | 0; if ((r | 0) < (((o - E >> 2) * 9 | 0) + -9 | 0)) { r = r + 9216 | 0; u = G + 4 + (((r | 0) / 9 | 0) + -1024 << 2) | 0; r = ((r | 0) % 9 | 0) + 1 | 0; if ((r | 0) < 9) { t = 10; do { t = t * 10 | 0; r = r + 1 | 0 } while ((r | 0) != 9) } else t = 10; x = c[u >> 2] | 0; y = (x >>> 0) % (t >>> 0) | 0; r = (u + 4 | 0) == (o | 0); do if (r & (y | 0) == 0) r = u; else { v = (((x >>> 0) / (t >>> 0) | 0) & 1 | 0) == 0 ? 9007199254740992.0 : 9007199254740994.0; w = (t | 0) / 2 | 0; if (y >>> 0 < w >>> 0) q = .5; else q = r & (y | 0) == (w | 0) ? 1.0 : 1.5; do if (H) { if ((a[I >> 0] | 0) != 45) break; q = -q; v = -v } while (0); r = x - y | 0; c[u >> 2] = r; if (!(v + q != v)) { r = u; break } D = r + t | 0; c[u >> 2] = D; if (D >>> 0 > 999999999) { r = u; while (1) { f = r + -4 | 0; c[r >> 2] = 0; if (f >>> 0 < p >>> 0) { p = p + -4 | 0; c[p >> 2] = 0 } D = (c[f >> 2] | 0) + 1 | 0; c[f >> 2] = D; if (D >>> 0 > 999999999) r = f; else { u = f; break } } } f = (E - p >> 2) * 9 | 0; t = c[p >> 2] | 0; if (t >>> 0 < 10) { r = u; break } else r = 10; do { r = r * 10 | 0; f = f + 1 | 0 } while (t >>> 0 >= r >>> 0); r = u } while (0); D = r + 4 | 0; o = o >>> 0 > D >>> 0 ? D : o } y = 0 - f | 0; D = o; while (1) { if (D >>> 0 <= p >>> 0) { z = 0; break } o = D + -4 | 0; if (!(c[o >> 2] | 0)) D = o; else { z = 1; break } } do if (A) { n = (B & 1 ^ 1) + n | 0; if ((n | 0) > (f | 0) & (f | 0) > -5) { u = F + -1 | 0; n = n + -1 - f | 0 } else { u = F + -2 | 0; n = n + -1 | 0 } o = J & 8; if (o | 0) { w = o; break } do if (z) { t = c[D + -4 >> 2] | 0; if (!t) { r = 9; break } if (!((t >>> 0) % 10 | 0)) { r = 0; o = 10 } else { r = 0; break } do { o = o * 10 | 0; r = r + 1 | 0 } while (!((t >>> 0) % (o >>> 0) | 0 | 0)) } else r = 9; while (0); o = ((D - E >> 2) * 9 | 0) + -9 | 0; if ((u | 32 | 0) == 102) { w = o - r | 0; w = (w | 0) < 0 ? 0 : w; n = (n | 0) < (w | 0) ? n : w; w = 0; break } else { w = o + f - r | 0; w = (w | 0) < 0 ? 0 : w; n = (n | 0) < (w | 0) ? n : w; w = 0; break } } else { u = F; w = J & 8 } while (0); x = n | w; r = (x | 0) != 0 & 1; t = (u | 32 | 0) == 102; if (t) { y = 0; f = (f | 0) > 0 ? f : 0 } else { o = (f | 0) < 0 ? y : f; o = Il(o, ((o | 0) < 0) << 31 >> 31, X) | 0; if ((Z - o | 0) < 2) do { o = o + -1 | 0; a[o >> 0] = 48 } while ((Z - o | 0) < 2); a[o + -1 >> 0] = (f >> 31 & 2) + 43; f = o + -2 | 0; a[f >> 0] = u; y = f; f = Z - f | 0 } A = H + 1 + n + r + f | 0; Ll(e, 32, s, A, J); if (!(c[e >> 2] & 32)) Gl(I, H, e) | 0; Ll(e, 48, s, A, J ^ 65536); do if (t) { p = p >>> 0 > G >>> 0 ? G : p; o = p; do { f = Il(c[o >> 2] | 0, 0, ca) | 0; do if ((o | 0) == (p | 0)) { if ((f | 0) != (ca | 0)) break; a[ea >> 0] = 48; f = ea } else { if (f >>> 0 <= ha >>> 0) break; hn(ha | 0, 48, f - V | 0) | 0; do f = f + -1 | 0; while (f >>> 0 > ha >>> 0) } while (0); if (!(c[e >> 2] & 32)) Gl(f, da - f | 0, e) | 0; o = o + 4 | 0 } while (o >>> 0 <= G >>> 0); do if (x | 0) { if (c[e >> 2] & 32 | 0) break; Gl(12624, 1, e) | 0 } while (0); if ((n | 0) > 0 & o >>> 0 < D >>> 0) while (1) { f = Il(c[o >> 2] | 0, 0, ca) | 0; if (f >>> 0 > ha >>> 0) { hn(ha | 0, 48, f - V | 0) | 0; do f = f + -1 | 0; while (f >>> 0 > ha >>> 0) } if (!(c[e >> 2] & 32)) Gl(f, (n | 0) > 9 ? 9 : n, e) | 0; o = o + 4 | 0; f = n + -9 | 0; if (!((n | 0) > 9 & o >>> 0 < D >>> 0)) { n = f; break } else n = f } Ll(e, 48, n + 9 | 0, 9, 0) } else { u = z ? D : p + 4 | 0; if ((n | 0) > -1) { t = (w | 0) == 0; r = p; do { f = Il(c[r >> 2] | 0, 0, ca) | 0; if ((f | 0) == (ca | 0)) { a[ea >> 0] = 48; f = ea } do if ((r | 0) == (p | 0)) { o = f + 1 | 0; if (!(c[e >> 2] & 32)) Gl(f, 1, e) | 0; if (t & (n | 0) < 1) { f = o; break } if (c[e >> 2] & 32 | 0) { f = o; break } Gl(12624, 1, e) | 0; f = o } else { if (f >>> 0 <= ha >>> 0) break; hn(ha | 0, 48, f + W | 0) | 0; do f = f + -1 | 0; while (f >>> 0 > ha >>> 0) } while (0); o = da - f | 0; if (!(c[e >> 2] & 32)) Gl(f, (n | 0) > (o | 0) ? o : n, e) | 0; n = n - o | 0; r = r + 4 | 0 } while (r >>> 0 < u >>> 0 & (n | 0) > -1) } Ll(e, 48, n + 18 | 0, 18, 0); if (c[e >> 2] & 32 | 0) break; Gl(y, Z - y | 0, e) | 0 } while (0); Ll(e, 32, s, A, J ^ 8192); n = (A | 0) < (s | 0) ? s : A } else { r = (F & 32 | 0) != 0; p = q != q | 0.0 != 0.0; f = p ? 0 : H; o = f + 3 | 0; Ll(e, 32, s, o, t); n = c[e >> 2] | 0; if (!(n & 32)) { Gl(I, f, e) | 0; n = c[e >> 2] | 0 } if (!(n & 32)) Gl(p ? (r ? 12901 : 10728) : r ? 10720 : 10724, 3, e) | 0; Ll(e, 32, s, o, J ^ 8192); n = (o | 0) < (s | 0) ? s : o } while (0); s = L; f = K; continue a } default: { w = 0; u = 10684; o = Q; n = x; t = J } } while (0); g: do if ((M | 0) == 63) { p = ia; o = c[p >> 2] | 0; p = c[p + 4 >> 2] | 0; r = t & 32; if ((o | 0) == 0 & (p | 0) == 0) { f = Q; o = 0; p = 0 } else { f = Q; do { f = f + -1 | 0; a[f >> 0] = d[10668 + (o & 15) >> 0] | r; o = ln(o | 0, p | 0, 4) | 0; p = C } while (!((o | 0) == 0 & (p | 0) == 0)); p = ia; o = c[p >> 2] | 0; p = c[p + 4 >> 2] | 0 } p = (n & 8 | 0) == 0 | (o | 0) == 0 & (p | 0) == 0; o = p ? 0 : 2; p = p ? 10684 : 10684 + (t >> 4) | 0; r = u; M = 76 } else if ((M | 0) == 75) { f = Il(n, f, Q) | 0; r = x; n = J; M = 76 } else if ((M | 0) == 81) { M = 0; J = Kl(n, 0, x) | 0; I = (J | 0) == 0; f = n; w = 0; u = 10684; o = I ? n + x | 0 : J; n = I ? x : J - n | 0 } else if ((M | 0) == 85) { M = 0; r = o; n = 0; f = 0; while (1) { p = c[r >> 2] | 0; if (!p) break; f = Ml(O, p) | 0; if ((f | 0) < 0 | f >>> 0 > (t - n | 0) >>> 0) break; n = f + n | 0; if (t >>> 0 > n >>> 0) r = r + 4 | 0; else break } if ((f | 0) < 0) { m = -1; break a } Ll(e, 32, s, n, J); if (!n) { n = 0; M = 96 } else { p = 0; while (1) { f = c[o >> 2] | 0; if (!f) { M = 96; break g } f = Ml(O, f) | 0; p = f + p | 0; if ((p | 0) > (n | 0)) { M = 96; break g } if (!(c[e >> 2] & 32)) Gl(O, f, e) | 0; if (p >>> 0 >= n >>> 0) { M = 96; break } else o = o + 4 | 0 } } } while (0); if ((M | 0) == 96) { M = 0; Ll(e, 32, s, n, J ^ 8192); n = (s | 0) > (n | 0) ? s : n; s = L; f = K; continue } if ((M | 0) == 76) { M = 0; t = (r | 0) > -1 ? n & -65537 : n; n = ia; n = (c[n >> 2] | 0) != 0 | (c[n + 4 >> 2] | 0) != 0; if ((r | 0) != 0 | n) { n = (n & 1 ^ 1) + (S - f) | 0; w = o; u = p; o = Q; n = (r | 0) > (n | 0) ? r : n } else { f = Q; w = o; u = p; o = Q; n = 0 } } r = o - f | 0; o = (n | 0) < (r | 0) ? r : n; p = o + w | 0; n = (s | 0) < (p | 0) ? p : s; Ll(e, 32, n, p, t); if (!(c[e >> 2] & 32)) Gl(u, w, e) | 0; Ll(e, 48, n, p, t ^ 65536); Ll(e, 48, o, r, 0); if (!(c[e >> 2] & 32)) Gl(f, r, e) | 0; Ll(e, 32, n, p, t ^ 8192); s = L; f = K } h: do if ((M | 0) == 243) if (!e) if (!s) m = 0; else { m = 1; while (1) { n = c[l + (m << 2) >> 2] | 0; if (!n) break; Hl(j + (m << 3) | 0, n, g); m = m + 1 | 0; if ((m | 0) >= 10) { m = 1; break h } } while (1) { if (c[l + (m << 2) >> 2] | 0) { m = -1; break h } m = m + 1 | 0; if ((m | 0) >= 10) { m = 1; break } } } while (0); i = ja; return m | 0 } function Fl(a) { a = a | 0; return 0 } function Gl(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = e + 16 | 0; g = c[f >> 2] | 0; if (!g) if (!(Ol(e) | 0)) { f = c[f >> 2] | 0; h = 5 } else f = 0; else { f = g; h = 5 } a: do if ((h | 0) == 5) { i = e + 20 | 0; h = c[i >> 2] | 0; g = h; if ((f - h | 0) >>> 0 < d >>> 0) { f = Ya[c[e + 36 >> 2] & 31](e, b, d) | 0; break } b: do if ((a[e + 75 >> 0] | 0) > -1) { f = d; while (1) { if (!f) { h = d; f = 0; break b } h = f + -1 | 0; if ((a[b + h >> 0] | 0) == 10) break; else f = h } if ((Ya[c[e + 36 >> 2] & 31](e, b, f) | 0) >>> 0 < f >>> 0) break a; h = d - f | 0; b = b + f | 0; g = c[i >> 2] | 0 } else { h = d; f = 0 } while (0); nn(g | 0, b | 0, h | 0) | 0; c[i >> 2] = (c[i >> 2] | 0) + h; f = f + h | 0 } while (0); return f | 0 } function Hl(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0.0; a: do if (b >>> 0 <= 20) do switch (b | 0) { case 9: { e = (c[d >> 2] | 0) + (4 - 1) & ~(4 - 1); b = c[e >> 2] | 0; c[d >> 2] = e + 4; c[a >> 2] = b; break a } case 10: { e = (c[d >> 2] | 0) + (4 - 1) & ~(4 - 1); b = c[e >> 2] | 0; c[d >> 2] = e + 4; e = a; c[e >> 2] = b; c[e + 4 >> 2] = ((b | 0) < 0) << 31 >> 31; break a } case 11: { e = (c[d >> 2] | 0) + (4 - 1) & ~(4 - 1); b = c[e >> 2] | 0; c[d >> 2] = e + 4; e = a; c[e >> 2] = b; c[e + 4 >> 2] = 0; break a } case 12: { e = (c[d >> 2] | 0) + (8 - 1) & ~(8 - 1); b = e; f = c[b >> 2] | 0; b = c[b + 4 >> 2] | 0; c[d >> 2] = e + 8; e = a; c[e >> 2] = f; c[e + 4 >> 2] = b; break a } case 13: { f = (c[d >> 2] | 0) + (4 - 1) & ~(4 - 1); e = c[f >> 2] | 0; c[d >> 2] = f + 4; e = (e & 65535) << 16 >> 16; f = a; c[f >> 2] = e; c[f + 4 >> 2] = ((e | 0) < 0) << 31 >> 31; break a } case 14: { f = (c[d >> 2] | 0) + (4 - 1) & ~(4 - 1); e = c[f >> 2] | 0; c[d >> 2] = f + 4; f = a; c[f >> 2] = e & 65535; c[f + 4 >> 2] = 0; break a } case 15: { f = (c[d >> 2] | 0) + (4 - 1) & ~(4 - 1); e = c[f >> 2] | 0; c[d >> 2] = f + 4; e = (e & 255) << 24 >> 24; f = a; c[f >> 2] = e; c[f + 4 >> 2] = ((e | 0) < 0) << 31 >> 31; break a } case 16: { f = (c[d >> 2] | 0) + (4 - 1) & ~(4 - 1); e = c[f >> 2] | 0; c[d >> 2] = f + 4; f = a; c[f >> 2] = e & 255; c[f + 4 >> 2] = 0; break a } case 17: { f = (c[d >> 2] | 0) + (8 - 1) & ~(8 - 1); g = +h[f >> 3]; c[d >> 2] = f + 8; h[a >> 3] = g; break a } case 18: { f = (c[d >> 2] | 0) + (8 - 1) & ~(8 - 1); g = +h[f >> 3]; c[d >> 2] = f + 8; h[a >> 3] = g; break a } default: break a } while (0); while (0); return } function Il(b, c, d) { b = b | 0; c = c | 0; d = d | 0; var e = 0; if (c >>> 0 > 0 | (c | 0) == 0 & b >>> 0 > 4294967295) { while (1) { e = tn(b | 0, c | 0, 10, 0) | 0; d = d + -1 | 0; a[d >> 0] = e | 48; e = b; b = qn(b | 0, c | 0, 10, 0) | 0; if (!(c >>> 0 > 9 | (c | 0) == 9 & e >>> 0 > 4294967295)) break; else c = C } c = b } else c = b; if (c) while (1) { d = d + -1 | 0; a[d >> 0] = (c >>> 0) % 10 | 0 | 48; if (c >>> 0 < 10) break; else c = (c >>> 0) / 10 | 0 } return d | 0 } function Jl(b) { b = b | 0; var c = 0, e = 0; e = 0; while (1) { if ((d[10732 + e >> 0] | 0) == (b | 0)) { b = 2; break } c = e + 1 | 0; if ((c | 0) == 87) { c = 10820; e = 87; b = 5; break } else e = c } if ((b | 0) == 2) if (!e) c = 10820; else { c = 10820; b = 5 } if ((b | 0) == 5) while (1) { do { b = c; c = c + 1 | 0 } while ((a[b >> 0] | 0) != 0); e = e + -1 | 0; if (!e) break; else b = 5 } return c | 0 } function Kl(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = d & 255; f = (e | 0) != 0; a: do if (f & (b & 3 | 0) != 0) { g = d & 255; while (1) { if ((a[b >> 0] | 0) == g << 24 >> 24) { i = 6; break a } b = b + 1 | 0; e = e + -1 | 0; f = (e | 0) != 0; if (!(f & (b & 3 | 0) != 0)) { i = 5; break } } } else i = 5; while (0); if ((i | 0) == 5) if (f) i = 6; else e = 0; b: do if ((i | 0) == 6) { g = d & 255; if ((a[b >> 0] | 0) != g << 24 >> 24) { f = R(h, 16843009) | 0; c: do if (e >>> 0 > 3) while (1) { h = c[b >> 2] ^ f; if ((h & -2139062144 ^ -2139062144) & h + -16843009 | 0) break; b = b + 4 | 0; e = e + -4 | 0; if (e >>> 0 <= 3) { i = 11; break c } } else i = 11; while (0); if ((i | 0) == 11) if (!e) { e = 0; break } while (1) { if ((a[b >> 0] | 0) == g << 24 >> 24) break b; b = b + 1 | 0; e = e + -1 | 0; if (!e) { e = 0; break } } } } while (0); return (e | 0 ? b : 0) | 0 } function Ll(a, b, d, e, f) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0; j = i; i = i + 256 | 0; h = j; do if ((d | 0) > (e | 0) & (f & 73728 | 0) == 0) { f = d - e | 0; hn(h | 0, b | 0, (f >>> 0 > 256 ? 256 : f) | 0) | 0; b = c[a >> 2] | 0; g = (b & 32 | 0) == 0; if (f >>> 0 > 255) { d = d - e | 0; do { if (g) { Gl(h, 256, a) | 0; b = c[a >> 2] | 0 } f = f + -256 | 0; g = (b & 32 | 0) == 0 } while (f >>> 0 > 255); if (g) f = d & 255; else break } else if (!g) break; Gl(h, f, a) | 0 } while (0); i = j; return } function Ml(a, b) { a = a | 0; b = b | 0; if (!a) a = 0; else a = Nl(a, b, 0) | 0; return a | 0 } function Nl(b, d, e) { b = b | 0; d = d | 0; e = e | 0; do if (b) { if (d >>> 0 < 128) { a[b >> 0] = d; b = 1; break } if (d >>> 0 < 2048) { a[b >> 0] = d >>> 6 | 192; a[b + 1 >> 0] = d & 63 | 128; b = 2; break } if (d >>> 0 < 55296 | (d & -8192 | 0) == 57344) { a[b >> 0] = d >>> 12 | 224; a[b + 1 >> 0] = d >>> 6 & 63 | 128; a[b + 2 >> 0] = d & 63 | 128; b = 3; break } if ((d + -65536 | 0) >>> 0 < 1048576) { a[b >> 0] = d >>> 18 | 240; a[b + 1 >> 0] = d >>> 12 & 63 | 128; a[b + 2 >> 0] = d >>> 6 & 63 | 128; a[b + 3 >> 0] = d & 63 | 128; b = 4; break } else { c[(_k() | 0) >> 2] = 84; b = -1; break } } else b = 1; while (0); return b | 0 } function Ol(b) { b = b | 0; var d = 0, e = 0; d = b + 74 | 0; e = a[d >> 0] | 0; a[d >> 0] = e + 255 | e; d = c[b >> 2] | 0; if (!(d & 8)) { c[b + 8 >> 2] = 0; c[b + 4 >> 2] = 0; e = c[b + 44 >> 2] | 0; c[b + 28 >> 2] = e; c[b + 20 >> 2] = e; c[b + 16 >> 2] = e + (c[b + 48 >> 2] | 0); b = 0 } else { c[b >> 2] = d | 32; b = -1 } return b | 0 } function Pl(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = a + 20 | 0; f = c[e >> 2] | 0; a = (c[a + 16 >> 2] | 0) - f | 0; a = a >>> 0 > d >>> 0 ? d : a; nn(f | 0, b | 0, a | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + a; return d | 0 } function Ql(a) { a = a | 0; var b = 0; b = (yl(a) | 0) == 0; return (b ? a : a & 95) | 0 } function Rl(a) { a = a | 0; var b = 0; b = (xl(a) | 0) == 0; return (b ? a : a | 32) | 0 } function Sl(a) { a = a | 0; return (a >>> 0 < 32 | (a | 0) == 127) & 1 | 0 } function Tl(b, c) { b = b | 0; c = c | 0; var d = 0, e = 0; d = a[b >> 0] | 0; e = a[c >> 0] | 0; if (d << 24 >> 24 == 0 ? 1 : d << 24 >> 24 != e << 24 >> 24) b = e; else { do { b = b + 1 | 0; c = c + 1 | 0; d = a[b >> 0] | 0; e = a[c >> 0] | 0 } while (!(d << 24 >> 24 == 0 ? 1 : d << 24 >> 24 != e << 24 >> 24)); b = e } return (d & 255) - (b & 255) | 0 } function Ul(a, b) { a = a | 0; b = b | 0; return Tl(a, b) | 0 } function Vl(b) { b = b | 0; var d = 0, e = 0, f = 0; f = b; a: do if (!(f & 3)) e = 4; else { d = f; while (1) { if (!(a[b >> 0] | 0)) { b = d; break a } b = b + 1 | 0; d = b; if (!(d & 3)) { e = 4; break } } } while (0); if ((e | 0) == 4) { while (1) { d = c[b >> 2] | 0; if (!((d & -2139062144 ^ -2139062144) & d + -16843009)) b = b + 4 | 0; else break } if ((d & 255) << 24 >> 24) do b = b + 1 | 0; while ((a[b >> 0] | 0) != 0) } return b - f | 0 } function Wl(a) { a = a | 0; if (!(Al(a) | 0)) a = 0; else a = (vl(a) | 0) == 0; return a & 1 | 0 } function Xl() { return 2384 } function Yl(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0; l = i; i = i + 16 | 0; g = l; j = (f | 0) == 0 ? 13040 : f; f = c[j >> 2] | 0; a: do if (!d) if (!f) f = 0; else k = 15; else { h = (b | 0) == 0 ? g : b; if (!e) f = -2; else { if (!f) { f = a[d >> 0] | 0; b = f & 255; if (f << 24 >> 24 > -1) { c[h >> 2] = b; f = f << 24 >> 24 != 0 & 1; break } f = b + -194 | 0; if (f >>> 0 > 50) { k = 15; break } f = c[1716 + (f << 2) >> 2] | 0; g = e + -1 | 0; if (g) { d = d + 1 | 0; k = 9 } } else { g = e; k = 9 } b: do if ((k | 0) == 9) { b = a[d >> 0] | 0; m = (b & 255) >>> 3; if ((m + -16 | m + (f >> 26)) >>> 0 > 7) { k = 15; break a } while (1) { d = d + 1 | 0; f = (b & 255) + -128 | f << 6; g = g + -1 | 0; if ((f | 0) >= 0) break; if (!g) break b; b = a[d >> 0] | 0; if ((b & -64) << 24 >> 24 != -128) { k = 15; break a } } c[j >> 2] = 0; c[h >> 2] = f; f = e - g | 0; break a } while (0); c[j >> 2] = f; f = -2 } } while (0); if ((k | 0) == 15) { c[j >> 2] = 0; c[(_k() | 0) >> 2] = 84; f = -1 } i = l; return f | 0 } function Zl(a) { a = a | 0; return ((a + -48 | 0) >>> 0 < 10 | ((a | 32) + -97 | 0) >>> 0 < 6) & 1 | 0 } function _l(a) { a = a | 0; if (!a) a = 1; else a = (c[a >> 2] | 0) == 0; return a & 1 | 0 } function $l(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; c[a + 104 >> 2] = b; d = c[a + 8 >> 2] | 0; e = c[a + 4 >> 2] | 0; f = d - e | 0; c[a + 108 >> 2] = f; if ((b | 0) != 0 & (f | 0) > (b | 0)) c[a + 100 >> 2] = e + b; else c[a + 100 >> 2] = d; return } function am(b, e, f, g, h) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; a: do if (e >>> 0 > 36) { c[(_k() | 0) >> 2] = 22; h = 0; g = 0 } else { r = b + 4 | 0; q = b + 100 | 0; do { i = c[r >> 2] | 0; if (i >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = i + 1; i = d[i >> 0] | 0 } else i = bm(b) | 0 } while ((ul(i) | 0) != 0); b: do switch (i | 0) { case 43: case 45: { i = ((i | 0) == 45) << 31 >> 31; j = c[r >> 2] | 0; if (j >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = j + 1; p = i; i = d[j >> 0] | 0; break b } else { p = i; i = bm(b) | 0; break b } } default: p = 0 } while (0); j = (e | 0) == 0; do if ((e | 16 | 0) == 16 & (i | 0) == 48) { i = c[r >> 2] | 0; if (i >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = i + 1; i = d[i >> 0] | 0 } else i = bm(b) | 0; if ((i | 32 | 0) != 120) if (j) { e = 8; n = 46; break } else { n = 32; break } i = c[r >> 2] | 0; if (i >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = i + 1; i = d[i >> 0] | 0 } else i = bm(b) | 0; if ((d[12627 + i >> 0] | 0) > 15) { g = (c[q >> 2] | 0) == 0; if (!g) c[r >> 2] = (c[r >> 2] | 0) + -1; if (!f) { $l(b, 0); h = 0; g = 0; break a } if (g) { h = 0; g = 0; break a } c[r >> 2] = (c[r >> 2] | 0) + -1; h = 0; g = 0; break a } else { e = 16; n = 46 } } else { e = j ? 10 : e; if ((d[12627 + i >> 0] | 0) >>> 0 < e >>> 0) n = 32; else { if (c[q >> 2] | 0) c[r >> 2] = (c[r >> 2] | 0) + -1; $l(b, 0); c[(_k() | 0) >> 2] = 22; h = 0; g = 0; break a } } while (0); if ((n | 0) == 32) if ((e | 0) == 10) { e = i + -48 | 0; if (e >>> 0 < 10) { i = 0; j = e; do { i = (i * 10 | 0) + j | 0; e = c[r >> 2] | 0; if (e >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0; j = e + -48 | 0 } while (j >>> 0 < 10 & i >>> 0 < 429496729); f = 0 } else { e = i; i = 0; f = 0 } j = e + -48 | 0; if (j >>> 0 < 10) { m = j; while (1) { j = sn(i | 0, f | 0, 10, 0) | 0; k = C; l = ((m | 0) < 0) << 31 >> 31; o = ~l; if (k >>> 0 > o >>> 0 | (k | 0) == (o | 0) & j >>> 0 > ~m >>> 0) { j = e; e = m; break } i = gn(j | 0, k | 0, m | 0, l | 0) | 0; f = C; e = c[r >> 2] | 0; if (e >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0; k = e + -48 | 0; if (k >>> 0 < 10 & (f >>> 0 < 429496729 | (f | 0) == 429496729 & i >>> 0 < 2576980378)) m = k; else { j = e; e = k; break } } if (e >>> 0 > 9) { j = p; e = f } else { e = 10; n = 72 } } else { j = p; e = f } } else n = 46; c: do if ((n | 0) == 46) { if (!(e + -1 & e)) { n = a[12883 + ((e * 23 | 0) >>> 5 & 7) >> 0] | 0; f = a[12627 + i >> 0] | 0; j = f & 255; if (j >>> 0 < e >>> 0) { i = 0; k = j; do { i = k | i << n; j = c[r >> 2] | 0; if (j >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = j + 1; j = d[j >> 0] | 0 } else j = bm(b) | 0; f = a[12627 + j >> 0] | 0; k = f & 255 } while (i >>> 0 < 134217728 & k >>> 0 < e >>> 0); k = 0 } else { j = i; k = 0; i = 0 } l = ln(-1, -1, n | 0) | 0; m = C; if ((f & 255) >>> 0 >= e >>> 0 | (k >>> 0 > m >>> 0 | (k | 0) == (m | 0) & i >>> 0 > l >>> 0)) { f = k; n = 72; break } else j = k; while (1) { i = jn(i | 0, j | 0, n | 0) | 0; k = C; i = f & 255 | i; j = c[r >> 2] | 0; if (j >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = j + 1; j = d[j >> 0] | 0 } else j = bm(b) | 0; f = a[12627 + j >> 0] | 0; if ((f & 255) >>> 0 >= e >>> 0 | (k >>> 0 > m >>> 0 | (k | 0) == (m | 0) & i >>> 0 > l >>> 0)) { f = k; n = 72; break c } else j = k } } f = a[12627 + i >> 0] | 0; j = f & 255; if (j >>> 0 < e >>> 0) { i = 0; k = j; do { i = k + (R(i, e) | 0) | 0; j = c[r >> 2] | 0; if (j >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = j + 1; j = d[j >> 0] | 0 } else j = bm(b) | 0; f = a[12627 + j >> 0] | 0; k = f & 255 } while (i >>> 0 < 119304647 & k >>> 0 < e >>> 0); k = 0 } else { j = i; i = 0; k = 0 } if ((f & 255) >>> 0 < e >>> 0) { n = qn(-1, -1, e | 0, 0) | 0; o = C; m = k; while (1) { if (m >>> 0 > o >>> 0 | (m | 0) == (o | 0) & i >>> 0 > n >>> 0) { f = m; n = 72; break c } k = sn(i | 0, m | 0, e | 0, 0) | 0; l = C; f = f & 255; if (l >>> 0 > 4294967295 | (l | 0) == -1 & k >>> 0 > ~f >>> 0) { f = m; n = 72; break c } i = gn(f | 0, 0, k | 0, l | 0) | 0; k = C; j = c[r >> 2] | 0; if (j >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = j + 1; j = d[j >> 0] | 0 } else j = bm(b) | 0; f = a[12627 + j >> 0] | 0; if ((f & 255) >>> 0 >= e >>> 0) { f = k; n = 72; break } else m = k } } else { f = k; n = 72 } } while (0); if ((n | 0) == 72) if ((d[12627 + j >> 0] | 0) >>> 0 < e >>> 0) { do { i = c[r >> 2] | 0; if (i >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = i + 1; i = d[i >> 0] | 0 } else i = bm(b) | 0 } while ((d[12627 + i >> 0] | 0) >>> 0 < e >>> 0); c[(_k() | 0) >> 2] = 34; j = (g & 1 | 0) == 0 & 0 == 0 ? p : 0; e = h; i = g } else { j = p; e = f } if (c[q >> 2] | 0) c[r >> 2] = (c[r >> 2] | 0) + -1; if (!(e >>> 0 < h >>> 0 | (e | 0) == (h | 0) & i >>> 0 < g >>> 0)) { if (!((g & 1 | 0) != 0 | 0 != 0 | (j | 0) != 0)) { c[(_k() | 0) >> 2] = 34; g = gn(g | 0, h | 0, -1, -1) | 0; h = C; break } if (e >>> 0 > h >>> 0 | (e | 0) == (h | 0) & i >>> 0 > g >>> 0) { c[(_k() | 0) >> 2] = 34; break } } g = ((j | 0) < 0) << 31 >> 31; g = fn(i ^ j | 0, e ^ g | 0, j | 0, g | 0) | 0; h = C } while (0); C = h; return g | 0 } function bm(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; f = b + 104 | 0; i = c[f >> 2] | 0; if ((i | 0) != 0 ? (c[b + 108 >> 2] | 0) >= (i | 0) : 0) j = 4; else { e = cm(b) | 0; if ((e | 0) >= 0) { f = c[f >> 2] | 0; i = c[b + 8 >> 2] | 0; if (f) { h = c[b + 4 >> 2] | 0; f = f - (c[b + 108 >> 2] | 0) | 0; g = i; if ((i - h | 0) < (f | 0)) j = 9; else c[b + 100 >> 2] = h + (f + -1) } else { g = i; j = 9 } if ((j | 0) == 9) c[b + 100 >> 2] = i; f = b + 4 | 0; if (!g) f = c[f >> 2] | 0; else { f = c[f >> 2] | 0; b = b + 108 | 0; c[b >> 2] = g + 1 - f + (c[b >> 2] | 0) } f = f + -1 | 0; if ((d[f >> 0] | 0 | 0) != (e | 0)) a[f >> 0] = e } else j = 4 } if ((j | 0) == 4) { c[b + 100 >> 2] = 0; e = -1 } return e | 0 } function cm(a) { a = a | 0; var b = 0, e = 0; e = i; i = i + 16 | 0; b = e; if ((c[a + 8 >> 2] | 0) == 0 ? (dm(a) | 0) != 0 : 0) a = -1; else if ((Ya[c[a + 32 >> 2] & 31](a, b, 1) | 0) == 1) a = d[b >> 0] | 0; else a = -1; i = e; return a | 0 } function dm(b) { b = b | 0; var d = 0, e = 0; d = b + 74 | 0; e = a[d >> 0] | 0; a[d >> 0] = e + 255 | e; d = b + 20 | 0; e = b + 44 | 0; if ((c[d >> 2] | 0) >>> 0 > (c[e >> 2] | 0) >>> 0) Ya[c[b + 36 >> 2] & 31](b, 0, 0) | 0; c[b + 16 >> 2] = 0; c[b + 28 >> 2] = 0; c[d >> 2] = 0; d = c[b >> 2] | 0; if (d & 20) if (!(d & 4)) d = -1; else { c[b >> 2] = d | 32; d = -1 } else { d = c[e >> 2] | 0; c[b + 8 >> 2] = d; c[b + 4 >> 2] = d; d = 0 } return d | 0 } function em(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = i; i = i + 16 | 0; f = e; c[f >> 2] = d; d = fm(a, b, f) | 0; i = e; return d | 0 } function fm(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Cl(a, 2147483647, b, c) | 0 } function gm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0.0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 112 | 0; h = j; f = h; g = f + 112 | 0; do { c[f >> 2] = 0; f = f + 4 | 0 } while ((f | 0) < (g | 0)); f = h + 4 | 0; c[f >> 2] = a; g = h + 8 | 0; c[g >> 2] = -1; c[h + 44 >> 2] = a; c[h + 76 >> 2] = -1; $l(h, 0); e = +hm(h, d, 1); d = (c[f >> 2] | 0) - (c[g >> 2] | 0) + (c[h + 108 >> 2] | 0) | 0; if (b | 0) c[b >> 2] = d | 0 ? a + d | 0 : a; i = j; return +e } function hm(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0.0, h = 0, j = 0.0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0.0, q = 0.0, t = 0, u = 0.0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, D = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0, N = 0.0; M = i; i = i + 512 | 0; I = M; switch (e | 0) { case 0: { J = -149; L = 24; A = 4; break } case 1: { J = -1074; L = 53; A = 4; break } case 2: { J = -1074; L = 53; A = 4; break } default: g = 0.0 }a: do if ((A | 0) == 4) { D = b + 4 | 0; B = b + 100 | 0; do { e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0 } while ((ul(e) | 0) != 0); b: do switch (e | 0) { case 43: case 45: { h = 1 - (((e | 0) == 45 & 1) << 1) | 0; e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; k = d[e >> 0] | 0; K = h; break b } else { k = bm(b) | 0; K = h; break b } } default: { k = e; K = 1 } } while (0); e = 0; do { if ((k | 32 | 0) != (a[12892 + e >> 0] | 0)) break; do if (e >>> 0 < 7) { h = c[D >> 2] | 0; if (h >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = h + 1; k = d[h >> 0] | 0; break } else { k = bm(b) | 0; break } } while (0); e = e + 1 | 0 } while (e >>> 0 < 8); c: do switch (e | 0) { case 8: break; case 3: { A = 23; break } default: { l = (f | 0) != 0; if (l & e >>> 0 > 3) if ((e | 0) == 8) break c; else { A = 23; break c } d: do if (!e) { e = 0; do { if ((k | 32 | 0) != (a[12901 + e >> 0] | 0)) break d; do if (e >>> 0 < 2) { h = c[D >> 2] | 0; if (h >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = h + 1; k = d[h >> 0] | 0; break } else { k = bm(b) | 0; break } } while (0); e = e + 1 | 0 } while (e >>> 0 < 3) } while (0); switch (e | 0) { case 3: { e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0; if ((e | 0) == 40) e = 1; else { if (!(c[B >> 2] | 0)) { g = r; break a } c[D >> 2] = (c[D >> 2] | 0) + -1; g = r; break a } while (1) { h = c[D >> 2] | 0; if (h >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = h + 1; h = d[h >> 0] | 0 } else h = bm(b) | 0; if (!((h + -48 | 0) >>> 0 < 10 | (h + -65 | 0) >>> 0 < 26) ? !((h | 0) == 95 | (h + -97 | 0) >>> 0 < 26) : 0) break; e = e + 1 | 0 } if ((h | 0) == 41) { g = r; break a } h = (c[B >> 2] | 0) == 0; if (!h) c[D >> 2] = (c[D >> 2] | 0) + -1; if (!l) { c[(_k() | 0) >> 2] = 22; $l(b, 0); g = 0.0; break a } if (!e) { g = r; break a } while (1) { e = e + -1 | 0; if (!h) c[D >> 2] = (c[D >> 2] | 0) + -1; if (!e) { g = r; break a } } } case 0: { do if ((k | 0) == 48) { e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0; if ((e | 32 | 0) != 120) { if (!(c[B >> 2] | 0)) { e = 48; break } c[D >> 2] = (c[D >> 2] | 0) + -1; e = 48; break } e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; h = d[e >> 0] | 0; k = 0 } else { h = bm(b) | 0; k = 0 } e: while (1) { switch (h | 0) { case 46: { A = 74; break e } case 48: break; default: { v = 0; m = 0; p = 1.0; g = 0.0; e = 0; l = h; w = k; y = 0; x = 0; k = 0; h = 0; break e } }e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; h = d[e >> 0] | 0; k = 1; continue } else { h = bm(b) | 0; k = 1; continue } } if ((A | 0) == 74) { e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; h = d[e >> 0] | 0 } else h = bm(b) | 0; if ((h | 0) == 48) { k = 0; h = 0; do { e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; l = d[e >> 0] | 0 } else l = bm(b) | 0; k = gn(k | 0, h | 0, -1, -1) | 0; h = C } while ((l | 0) == 48); v = 1; m = 0; p = 1.0; g = 0.0; e = 0; w = 1; y = 0; x = 0 } else { v = 1; m = 0; p = 1.0; g = 0.0; e = 0; l = h; w = k; y = 0; x = 0; k = 0; h = 0 } } while (1) { o = l + -48 | 0; n = l | 32; if (o >>> 0 >= 10) { t = (l | 0) == 46; if (!(t | (n + -97 | 0) >>> 0 < 6)) { n = l; break } if (t) if (!v) { v = 1; j = p; t = w; k = x; h = y; o = x; n = y } else { n = 46; break } else A = 86 } else A = 86; if ((A | 0) == 86) { A = 0; l = (l | 0) > 57 ? n + -87 | 0 : o; do if (!((y | 0) < 0 | (y | 0) == 0 & x >>> 0 < 8)) { if ((y | 0) < 0 | (y | 0) == 0 & x >>> 0 < 14) { u = p * .0625; j = u; g = g + u * +(l | 0); break } if ((m | 0) != 0 | (l | 0) == 0) j = p; else { m = 1; j = p; g = g + p * .5 } } else { j = p; e = l + (e << 4) | 0 } while (0); o = gn(x | 0, y | 0, 1, 0) | 0; t = 1; n = C } l = c[D >> 2] | 0; if (l >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = l + 1; p = j; l = d[l >> 0] | 0; w = t; y = n; x = o; continue } else { p = j; l = bm(b) | 0; w = t; y = n; x = o; continue } } if (!w) { e = (c[B >> 2] | 0) == 0; if (!e) c[D >> 2] = (c[D >> 2] | 0) + -1; if (f) { if (!e ? (z = c[D >> 2] | 0, c[D >> 2] = z + -1, v | 0) : 0) c[D >> 2] = z + -2 } else $l(b, 0); g = +(K | 0) * 0.0; break a } m = (v | 0) == 0; o = m ? x : k; m = m ? y : h; if ((y | 0) < 0 | (y | 0) == 0 & x >>> 0 < 8) { k = x; h = y; do { e = e << 4; k = gn(k | 0, h | 0, 1, 0) | 0; h = C } while ((h | 0) < 0 | (h | 0) == 0 & k >>> 0 < 8); l = e } else l = e; if ((n | 32 | 0) == 112) { h = im(b, f) | 0; e = C; if ((h | 0) == 0 & (e | 0) == -2147483648) { if (!f) { $l(b, 0); g = 0.0; break a } if (!(c[B >> 2] | 0)) { h = 0; e = 0 } else { c[D >> 2] = (c[D >> 2] | 0) + -1; h = 0; e = 0 } } } else if (!(c[B >> 2] | 0)) { h = 0; e = 0 } else { c[D >> 2] = (c[D >> 2] | 0) + -1; h = 0; e = 0 } k = jn(o | 0, m | 0, 2) | 0; k = gn(k | 0, C | 0, -32, -1) | 0; k = gn(k | 0, C | 0, h | 0, e | 0) | 0; e = C; if (!l) { g = +(K | 0) * 0.0; break a } if ((e | 0) > 0 | (e | 0) == 0 & k >>> 0 > (0 - J | 0) >>> 0) { c[(_k() | 0) >> 2] = 34; g = +(K | 0) * 1797693134862315708145274.0e284 * 1797693134862315708145274.0e284; break a } I = J + -106 | 0; H = ((I | 0) < 0) << 31 >> 31; if ((e | 0) < (H | 0) | (e | 0) == (H | 0) & k >>> 0 < I >>> 0) { c[(_k() | 0) >> 2] = 34; g = +(K | 0) * 2.2250738585072014e-308 * 2.2250738585072014e-308; break a } if ((l | 0) > -1) { h = l; do { H = !(g >= .5); I = H & 1 | h << 1; h = I ^ 1; g = g + (H ? g : g + -1.0); k = gn(k | 0, e | 0, -1, -1) | 0; e = C } while ((I | 0) > -1); p = g; l = h } else p = g; J = fn(32, 0, J | 0, ((J | 0) < 0) << 31 >> 31 | 0) | 0; e = gn(k | 0, e | 0, J | 0, C | 0) | 0; J = C; if (0 > (J | 0) | 0 == (J | 0) & L >>> 0 > e >>> 0) if ((e | 0) < 0) { h = 0; e = 84; A = 127 } else A = 125; else { e = L; A = 125 } if ((A | 0) == 125) if ((e | 0) < 53) { h = e; e = 84 - e | 0; A = 127 } else { j = 0.0; g = +(K | 0) } if ((A | 0) == 127) { g = +(K | 0); j = +hl(+el(1.0, e), g); e = h } L = (l & 1 | 0) == 0 & (p != 0.0 & (e | 0) < 32); g = g * (L ? 0.0 : p) + (j + g * +(((L & 1) + l | 0) >>> 0)) - j; if (!(g != 0.0)) c[(_k() | 0) >> 2] = 34; g = +ol(g, k); break a } else e = k; while (0); F = J + L | 0; H = 0 - F | 0; h = 0; f: while (1) { switch (e | 0) { case 46: { A = 138; break f } case 48: break; default: { n = 0; l = h; o = 0; m = 0; break f } }e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; e = d[e >> 0] | 0; h = 1; continue } else { e = bm(b) | 0; h = 1; continue } } if ((A | 0) == 138) { e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0; if ((e | 0) == 48) { h = 0; e = 0; while (1) { h = gn(h | 0, e | 0, -1, -1) | 0; m = C; e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0; if ((e | 0) == 48) e = m; else { n = 1; l = 1; o = h; break } } } else { n = 1; l = h; o = 0; m = 0 } } c[I >> 2] = 0; t = e + -48 | 0; k = (e | 0) == 46; g: do if (k | t >>> 0 < 10) { A = I + 496 | 0; w = 0; h = 0; z = 0; x = n; y = l; n = 0; l = 0; h: while (1) { do if (k) if (!x) { x = 1; v = z; o = n; m = l } else break h; else { n = gn(n | 0, l | 0, 1, 0) | 0; l = C; v = (e | 0) != 48; if ((h | 0) >= 125) { if (!v) { v = z; break } c[A >> 2] = c[A >> 2] | 1; v = z; break } k = I + (h << 2) | 0; if (!w) e = t; else e = e + -48 + ((c[k >> 2] | 0) * 10 | 0) | 0; c[k >> 2] = e; w = w + 1 | 0; y = (w | 0) == 9; w = y ? 0 : w; h = (y & 1) + h | 0; v = v ? n : z; y = 1 } while (0); e = c[D >> 2] | 0; if (e >>> 0 < (c[B >> 2] | 0) >>> 0) { c[D >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(b) | 0; t = e + -48 | 0; k = (e | 0) == 46; if (!(k | t >>> 0 < 10)) { t = v; v = x; k = y; A = 161; break g } else z = v } e = w; t = z; k = (y | 0) != 0; A = 169 } else { w = 0; h = 0; t = 0; v = n; k = l; n = 0; l = 0; A = 161 } while (0); do if ((A | 0) == 161) { z = (v | 0) == 0; o = z ? n : o; m = z ? l : m; k = (k | 0) != 0; if (!(k & (e | 32 | 0) == 101)) if ((e | 0) > -1) { e = w; A = 169; break } else { e = w; A = 171; break } k = im(b, f) | 0; e = C; if ((k | 0) == 0 & (e | 0) == -2147483648) { if (!f) { $l(b, 0); g = 0.0; break } if (!(c[B >> 2] | 0)) { k = 0; e = 0 } else { c[D >> 2] = (c[D >> 2] | 0) + -1; k = 0; e = 0 } } y = gn(k | 0, e | 0, o | 0, m | 0) | 0; e = w; m = C; A = 173 } while (0); if ((A | 0) == 169) if (c[B >> 2] | 0) { c[D >> 2] = (c[D >> 2] | 0) + -1; if (k) { y = o; A = 173 } else A = 172 } else A = 171; if ((A | 0) == 171) if (k) { y = o; A = 173 } else A = 172; do if ((A | 0) == 172) { c[(_k() | 0) >> 2] = 22; $l(b, 0); g = 0.0 } else if ((A | 0) == 173) { k = c[I >> 2] | 0; if (!k) { g = +(K | 0) * 0.0; break } if (((l | 0) < 0 | (l | 0) == 0 & n >>> 0 < 10) & ((y | 0) == (n | 0) & (m | 0) == (l | 0)) ? L >>> 0 > 30 | (k >>> L | 0) == 0 : 0) { g = +(K | 0) * +(k >>> 0); break } b = (J | 0) / -2 | 0; D = ((b | 0) < 0) << 31 >> 31; if ((m | 0) > (D | 0) | (m | 0) == (D | 0) & y >>> 0 > b >>> 0) { c[(_k() | 0) >> 2] = 34; g = +(K | 0) * 1797693134862315708145274.0e284 * 1797693134862315708145274.0e284; break } b = J + -106 | 0; D = ((b | 0) < 0) << 31 >> 31; if ((m | 0) < (D | 0) | (m | 0) == (D | 0) & y >>> 0 < b >>> 0) { c[(_k() | 0) >> 2] = 34; g = +(K | 0) * 2.2250738585072014e-308 * 2.2250738585072014e-308; break } if (e) { if ((e | 0) < 9) { l = I + (h << 2) | 0; k = c[l >> 2] | 0; do { k = k * 10 | 0; e = e + 1 | 0 } while ((e | 0) != 9); c[l >> 2] = k } h = h + 1 | 0 } if ((t | 0) < 9 ? (t | 0) <= (y | 0) & (y | 0) < 18 : 0) { if ((y | 0) == 9) { g = +(K | 0) * +((c[I >> 2] | 0) >>> 0); break } if ((y | 0) < 9) { g = +(K | 0) * +((c[I >> 2] | 0) >>> 0) / +(c[2440 + (8 - y << 2) >> 2] | 0); break } b = L + 27 + (R(y, -3) | 0) | 0; e = c[I >> 2] | 0; if ((b | 0) > 30 | (e >>> b | 0) == 0) { g = +(K | 0) * +(e >>> 0) * +(c[2440 + (y + -10 << 2) >> 2] | 0); break } } e = (y | 0) % 9 | 0; if (!e) { e = 0; l = 0 } else { t = (y | 0) > -1 ? e : e + 9 | 0; n = c[2440 + (8 - t << 2) >> 2] | 0; if (h) { o = 1e9 / (n | 0) | 0; l = 0; m = 0; k = y; e = 0; do { B = I + (e << 2) | 0; D = c[B >> 2] | 0; b = ((D >>> 0) / (n >>> 0) | 0) + l | 0; c[B >> 2] = b; l = R((D >>> 0) % (n >>> 0) | 0, o) | 0; b = (e | 0) == (m | 0) & (b | 0) == 0; k = b ? k + -9 | 0 : k; m = b ? m + 1 & 127 : m; e = e + 1 | 0 } while ((e | 0) != (h | 0)); if (!l) l = m; else { c[I + (h << 2) >> 2] = l; l = m; h = h + 1 | 0 } } else { l = 0; h = 0; k = y } e = 0; y = 9 - t + k | 0 } i: while (1) { t = (y | 0) < 18; v = (y | 0) == 18; w = I + (l << 2) | 0; while (1) { if (!t) { if (!v) { k = y; break i } if ((c[w >> 2] | 0) >>> 0 >= 9007199) { k = 18; break i } } k = 0; x = h; h = h + 127 | 0; while (1) { m = h & 127; n = I + (m << 2) | 0; h = jn(c[n >> 2] | 0, 0, 29) | 0; h = gn(h | 0, C | 0, k | 0, 0) | 0; k = C; if (k >>> 0 > 0 | (k | 0) == 0 & h >>> 0 > 1e9) { o = qn(h | 0, k | 0, 1e9, 0) | 0; h = tn(h | 0, k | 0, 1e9, 0) | 0 } else o = 0; c[n >> 2] = h; b = (m | 0) == (l | 0); x = (m | 0) != (x + 127 & 127 | 0) | b ? x : (h | 0) == 0 ? m : x; if (b) break; else { k = o; h = m + -1 | 0 } } e = e + -29 | 0; if (o | 0) break; else h = x } l = l + 127 & 127; h = x + 127 & 127; k = I + ((x + 126 & 127) << 2) | 0; if ((l | 0) == (x | 0)) c[k >> 2] = c[k >> 2] | c[I + (h << 2) >> 2]; else h = x; c[I + (l << 2) >> 2] = o; y = y + 9 | 0 } j: while (1) { w = h + 1 & 127; x = I + ((h + 127 & 127) << 2) | 0; while (1) { o = (k | 0) == 18; v = (k | 0) > 27 ? 9 : 1; y = l; while (1) { l = 0; while (1) { m = l + y & 127; if ((m | 0) == (h | 0)) { G = 2; A = 220; break } m = c[I + (m << 2) >> 2] | 0; n = c[2472 + (l << 2) >> 2] | 0; if (m >>> 0 < n >>> 0) { G = 2; A = 220; break } if (m >>> 0 > n >>> 0) break; l = l + 1 | 0; if ((l | 0) >= 2) { G = l; A = 220; break } } if ((A | 0) == 220 ? (A = 0, o & (G | 0) == 2) : 0) { g = 0.0; m = 0; break j } e = e + v | 0; if ((y | 0) == (h | 0)) y = h; else break } o = (1 << v) + -1 | 0; t = 1e9 >>> v; n = 0; l = y; m = y; do { B = I + (m << 2) | 0; D = c[B >> 2] | 0; b = (D >>> v) + n | 0; c[B >> 2] = b; n = R(D & o, t) | 0; b = (m | 0) == (l | 0) & (b | 0) == 0; k = b ? k + -9 | 0 : k; l = b ? l + 1 & 127 : l; m = m + 1 & 127 } while ((m | 0) != (h | 0)); if (!n) continue; if ((w | 0) != (l | 0)) break; c[x >> 2] = c[x >> 2] | 1 } c[I + (h << 2) >> 2] = n; h = w } while (1) { l = m + y & 127; k = h + 1 & 127; if ((l | 0) == (h | 0)) c[I + (k + -1 << 2) >> 2] = 0; else k = h; g = g * 1.0e9 + +((c[I + (l << 2) >> 2] | 0) >>> 0); m = m + 1 | 0; if ((m | 0) == 2) break; else h = k } u = +(K | 0); j = u * g; n = e + 53 | 0; o = n - J | 0; t = (o | 0) < (L | 0); h = t & 1; m = t ? ((o | 0) < 0 ? 0 : o) : L; if ((m | 0) < 53) { N = +hl(+el(1.0, 105 - m | 0), j); p = +sl(j, +el(1.0, 53 - m | 0)); q = N; g = p; p = N + (j - p) } else { q = 0.0; g = 0.0; p = j } l = y + 2 & 127; do if ((l | 0) != (k | 0)) { l = c[I + (l << 2) >> 2] | 0; do if (l >>> 0 >= 5e8) { if ((l | 0) != 5e8) { g = u * .75 + g; break } if ((y + 3 & 127 | 0) == (k | 0)) { g = u * .5 + g; break } else { g = u * .75 + g; break } } else { if ((l | 0) == 0 ? (y + 3 & 127 | 0) == (k | 0) : 0) break; g = u * .25 + g } while (0); if ((53 - m | 0) > 1) { if (+sl(g, 1.0) != 0.0) { j = g; break } j = g + 1.0 } else j = g } else j = g; while (0); g = p + j - q; do if ((n & 2147483647 | 0) > (-2 - F | 0)) { if (+E(+g) >= 9007199254740992.0) { g = g * .5; h = t & (m | 0) == (o | 0) ? 0 : h; e = e + 1 | 0 } if ((e + 50 | 0) <= (H | 0) ? !(j != 0.0 & (h | 0) != 0) : 0) break; c[(_k() | 0) >> 2] = 34 } while (0); g = +ol(g, e) } while (0); break a } default: { if (c[B >> 2] | 0) c[D >> 2] = (c[D >> 2] | 0) + -1; c[(_k() | 0) >> 2] = 22; $l(b, 0); g = 0.0; break a } } } } while (0); if ((A | 0) == 23) { h = (c[B >> 2] | 0) == 0; if (!h) c[D >> 2] = (c[D >> 2] | 0) + -1; if ((f | 0) != 0 & e >>> 0 > 3) do { if (!h) c[D >> 2] = (c[D >> 2] | 0) + -1; e = e + -1 | 0 } while (e >>> 0 > 3) } g = +(K | 0) * s } while (0); i = M; return +g } function im(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = a + 4 | 0; e = c[h >> 2] | 0; i = a + 100 | 0; if (e >>> 0 < (c[i >> 2] | 0) >>> 0) { c[h >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(a) | 0; switch (e | 0) { case 43: case 45: { f = (e | 0) == 45 & 1; e = c[h >> 2] | 0; if (e >>> 0 < (c[i >> 2] | 0) >>> 0) { c[h >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(a) | 0; if ((b | 0) != 0 & (e + -48 | 0) >>> 0 > 9 ? (c[i >> 2] | 0) != 0 : 0) c[h >> 2] = (c[h >> 2] | 0) + -1; break } default: f = 0 }if ((e + -48 | 0) >>> 0 > 9) if (!(c[i >> 2] | 0)) { f = -2147483648; e = 0 } else { c[h >> 2] = (c[h >> 2] | 0) + -1; f = -2147483648; e = 0 } else { g = 0; do { g = e + -48 + (g * 10 | 0) | 0; e = c[h >> 2] | 0; if (e >>> 0 < (c[i >> 2] | 0) >>> 0) { c[h >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(a) | 0 } while ((e + -48 | 0) >>> 0 < 10 & (g | 0) < 214748364); b = ((g | 0) < 0) << 31 >> 31; if ((e + -48 | 0) >>> 0 < 10) do { b = sn(g | 0, b | 0, 10, 0) | 0; g = C; e = gn(e | 0, ((e | 0) < 0) << 31 >> 31 | 0, -48, -1) | 0; g = gn(e | 0, C | 0, b | 0, g | 0) | 0; b = C; e = c[h >> 2] | 0; if (e >>> 0 < (c[i >> 2] | 0) >>> 0) { c[h >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(a) | 0 } while ((e + -48 | 0) >>> 0 < 10 & ((b | 0) < 21474836 | (b | 0) == 21474836 & g >>> 0 < 2061584302)); if ((e + -48 | 0) >>> 0 < 10) do { e = c[h >> 2] | 0; if (e >>> 0 < (c[i >> 2] | 0) >>> 0) { c[h >> 2] = e + 1; e = d[e >> 0] | 0 } else e = bm(a) | 0 } while ((e + -48 | 0) >>> 0 < 10); if (c[i >> 2] | 0) c[h >> 2] = (c[h >> 2] | 0) + -1; i = (f | 0) != 0; e = fn(0, 0, g | 0, b | 0) | 0; f = i ? C : b; e = i ? e : g } C = f; return e | 0 } function jm(a, b) { a = a | 0; b = b | 0; return +(+gm(a, b, 1)) } function km(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = i; i = i + 32 | 0; f = g; c[f >> 2] = 0; c[f + 4 >> 2] = 0; c[f + 8 >> 2] = 0; c[f + 12 >> 2] = 0; c[f + 16 >> 2] = 0; c[f + 20 >> 2] = 0; c[f + 24 >> 2] = 0; c[f + 28 >> 2] = 0; e = a[d >> 0] | 0; do if (!(e << 24 >> 24)) d = 0; else { if (!(a[d + 1 >> 0] | 0)) { d = b; while (1) if ((a[d >> 0] | 0) == e << 24 >> 24) d = d + 1 | 0; else break; d = d - b | 0; break } do { h = f + (((e & 255) >>> 5 & 255) << 2) | 0; c[h >> 2] = c[h >> 2] | 1 << (e & 31); d = d + 1 | 0; e = a[d >> 0] | 0 } while (e << 24 >> 24 != 0); e = a[b >> 0] | 0; a: do if (!(e << 24 >> 24)) d = b; else { d = b; do { if (!(c[f + (((e & 255) >>> 5 & 255) << 2) >> 2] & 1 << (e & 31))) break a; d = d + 1 | 0; e = a[d >> 0] | 0 } while (e << 24 >> 24 != 0) } while (0); d = d - b | 0 } while (0); i = g; return d | 0 } function lm(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = i; i = i + 32 | 0; f = g; e = a[d >> 0] | 0; if (e << 24 >> 24 != 0 ? (a[d + 1 >> 0] | 0) != 0 : 0) { c[f >> 2] = 0; c[f + 4 >> 2] = 0; c[f + 8 >> 2] = 0; c[f + 12 >> 2] = 0; c[f + 16 >> 2] = 0; c[f + 20 >> 2] = 0; c[f + 24 >> 2] = 0; c[f + 28 >> 2] = 0; do { h = f + (((e & 255) >>> 5 & 255) << 2) | 0; c[h >> 2] = c[h >> 2] | 1 << (e & 31); d = d + 1 | 0; e = a[d >> 0] | 0 } while (e << 24 >> 24 != 0); e = a[b >> 0] | 0; a: do if (!(e << 24 >> 24)) d = b; else { d = b; do { if (c[f + (((e & 255) >>> 5 & 255) << 2) >> 2] & 1 << (e & 31) | 0) break a; d = d + 1 | 0; e = a[d >> 0] | 0 } while (e << 24 >> 24 != 0) } while (0); d = d - b | 0 } else d = (mm(b, e << 24 >> 24) | 0) - b | 0; i = g; return d | 0 } function mm(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = d & 255; a: do if (!f) b = b + (Vl(b) | 0) | 0; else { if (b & 3) { e = d & 255; do { g = a[b >> 0] | 0; if (g << 24 >> 24 == 0 ? 1 : g << 24 >> 24 == e << 24 >> 24) break a; b = b + 1 | 0 } while ((b & 3 | 0) != 0) } f = R(f, 16843009) | 0; e = c[b >> 2] | 0; b: do if (!((e & -2139062144 ^ -2139062144) & e + -16843009)) do { g = e ^ f; if ((g & -2139062144 ^ -2139062144) & g + -16843009 | 0) break b; b = b + 4 | 0; e = c[b >> 2] | 0 } while (!((e & -2139062144 ^ -2139062144) & e + -16843009 | 0)); while (0); e = d & 255; while (1) { g = a[b >> 0] | 0; if (g << 24 >> 24 == 0 ? 1 : g << 24 >> 24 == e << 24 >> 24) break; else b = b + 1 | 0 } } while (0); return b | 0 } function nm(a, b) { a = a | 0; b = b | 0; return om(a, b, (Vl(a) | 0) + 1 | 0) | 0 } function om(b, c, d) { b = b | 0; c = c | 0; d = d | 0; var e = 0; e = c & 255; do { if (!d) { c = 0; break } d = d + -1 | 0; c = b + d | 0 } while ((a[c >> 0] | 0) != e << 24 >> 24); return c | 0 } function pm(b, c) { b = b | 0; c = c | 0; b = mm(b, c) | 0; return ((a[b >> 0] | 0) == (c & 255) << 24 >> 24 ? b : 0) | 0 } function qm(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = i; i = i + 32 | 0; f = g + 16 | 0; e = g; if (Kl(12905, a[d >> 0] | 0, 4) | 0) { h = rm(d) | 0 | 32768; c[e >> 2] = b; c[e + 4 >> 2] = h; c[e + 8 >> 2] = 438; e = Zk(Qa(5, e | 0) | 0) | 0; if ((e | 0) >= 0) { b = sm(e, d) | 0; if (!b) { c[f >> 2] = e; Pa(6, f | 0) | 0; b = 0 } } else b = 0 } else { c[(_k() | 0) >> 2] = 22; b = 0 } i = g; return b | 0 } function rm(b) { b = b | 0; var c = 0, d = 0, e = 0; d = (pm(b, 43) | 0) == 0; c = a[b >> 0] | 0; d = d ? c << 24 >> 24 != 114 & 1 : 2; e = (pm(b, 120) | 0) == 0; d = e ? d : d | 128; b = (pm(b, 101) | 0) == 0; b = b ? d : d | 524288; b = c << 24 >> 24 == 114 ? b : b | 64; b = c << 24 >> 24 == 119 ? b | 512 : b; return (c << 24 >> 24 == 97 ? b | 1024 : b) | 0 } function sm(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; o = i; i = i + 112 | 0; n = o + 40 | 0; l = o + 24 | 0; k = o + 16 | 0; g = o; m = o + 52 | 0; f = a[d >> 0] | 0; if (Kl(12905, f << 24 >> 24, 4) | 0) { e = $m(1144) | 0; if (!e) e = 0; else { h = e; j = h + 112 | 0; do { c[h >> 2] = 0; h = h + 4 | 0 } while ((h | 0) < (j | 0)); if (!(pm(d, 43) | 0)) c[e >> 2] = f << 24 >> 24 == 114 ? 8 : 4; if (pm(d, 101) | 0) { c[g >> 2] = b; c[g + 4 >> 2] = 2; c[g + 8 >> 2] = 1; ia(221, g | 0) | 0; f = a[d >> 0] | 0 } if (f << 24 >> 24 == 97) { c[k >> 2] = b; c[k + 4 >> 2] = 3; f = ia(221, k | 0) | 0; if (!(f & 1024)) { c[l >> 2] = b; c[l + 4 >> 2] = 4; c[l + 8 >> 2] = f | 1024; ia(221, l | 0) | 0 } d = c[e >> 2] | 128; c[e >> 2] = d } else d = c[e >> 2] | 0; c[e + 60 >> 2] = b; c[e + 44 >> 2] = e + 120; c[e + 48 >> 2] = 1024; f = e + 75 | 0; a[f >> 0] = -1; if ((d & 8 | 0) == 0 ? (c[n >> 2] = b, c[n + 4 >> 2] = 21505, c[n + 8 >> 2] = m, (Ia(54, n | 0) | 0) == 0) : 0) a[f >> 0] = 10; c[e + 32 >> 2] = 18; c[e + 36 >> 2] = 21; c[e + 40 >> 2] = 19; c[e + 12 >> 2] = 158; if (!(c[3249] | 0)) c[e + 76 >> 2] = -1; Oa(13020); f = c[3254] | 0; c[e + 56 >> 2] = f; if (f | 0) c[f + 52 >> 2] = e; c[3254] = e; Ja(13020) } } else { c[(_k() | 0) >> 2] = 22; e = 0 } i = o; return e | 0 } function tm(a) { a = a | 0; var b = 0, d = 0, e = 0; e = (c[a >> 2] & 1 | 0) != 0; if (!e) { Oa(13020); d = c[a + 52 >> 2] | 0; b = a + 56 | 0; if (d | 0) c[d + 56 >> 2] = c[b >> 2]; b = c[b >> 2] | 0; if (b | 0) c[b + 52 >> 2] = d; if ((c[3254] | 0) == (a | 0)) c[3254] = b; Ja(13020) } b = um(a) | 0; b = $a[c[a + 12 >> 2] & 255](a) | 0 | b; d = c[a + 92 >> 2] | 0; if (d | 0) an(d); if (!e) an(a); return b | 0 } function um(a) { a = a | 0; var b = 0, d = 0; do if (a) { if ((c[a + 76 >> 2] | 0) <= -1) { b = vm(a) | 0; break } d = (Fl(a) | 0) == 0; b = vm(a) | 0; if (!d) al(a) } else { if (!(c[538] | 0)) b = 0; else b = um(c[538] | 0) | 0; Oa(13020); a = c[3254] | 0; if (a) do { if ((c[a + 76 >> 2] | 0) > -1) d = Fl(a) | 0; else d = 0; if ((c[a + 20 >> 2] | 0) >>> 0 > (c[a + 28 >> 2] | 0) >>> 0) b = vm(a) | 0 | b; if (d | 0) al(a); a = c[a + 56 >> 2] | 0 } while ((a | 0) != 0); Ja(13020) } while (0); return b | 0 } function vm(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0; b = a + 20 | 0; h = a + 28 | 0; if ((c[b >> 2] | 0) >>> 0 > (c[h >> 2] | 0) >>> 0 ? (Ya[c[a + 36 >> 2] & 31](a, 0, 0) | 0, (c[b >> 2] | 0) == 0) : 0) a = -1; else { d = a + 4 | 0; e = c[d >> 2] | 0; f = a + 8 | 0; g = c[f >> 2] | 0; if (e >>> 0 < g >>> 0) Ya[c[a + 40 >> 2] & 31](a, e - g | 0, 1) | 0; c[a + 16 >> 2] = 0; c[h >> 2] = 0; c[b >> 2] = 0; c[f >> 2] = 0; c[d >> 2] = 0; a = 0 } return a | 0 } function wm(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; if ((c[f + 76 >> 2] | 0) > -1) m = Fl(f) | 0; else m = 0; g = e + -1 | 0; if ((e | 0) < 2) { n = f + 74 | 0; l = a[n >> 0] | 0; a[n >> 0] = l + 255 | l; if (m | 0) al(f); if (!g) a[b >> 0] = 0; else b = 0 } else { a: do if (g) { k = f + 4 | 0; l = f + 8 | 0; e = b; while (1) { h = c[k >> 2] | 0; o = h; p = (c[l >> 2] | 0) - o | 0; i = Kl(h, 10, p) | 0; j = (i | 0) == 0; i = j ? p : 1 - o + i | 0; i = i >>> 0 < g >>> 0 ? i : g; nn(e | 0, h | 0, i | 0) | 0; h = (c[k >> 2] | 0) + i | 0; c[k >> 2] = h; e = e + i | 0; i = g - i | 0; if (!(j & (i | 0) != 0)) { n = 17; break a } if (h >>> 0 >= (c[l >> 2] | 0) >>> 0) { g = cm(f) | 0; if ((g | 0) < 0) break; else j = g } else { c[k >> 2] = h + 1; j = d[h >> 0] | 0 } g = i + -1 | 0; h = e + 1 | 0; a[e >> 0] = j; if (!((g | 0) != 0 & (j & 255 | 0) != 10)) { e = h; n = 17; break a } else e = h } if ((e | 0) != (b | 0) ? (c[f >> 2] & 16 | 0) != 0 : 0) n = 17; else b = 0 } else { e = b; n = 17 } while (0); if ((n | 0) == 17) if (!b) b = 0; else a[e >> 0] = 0; if (m) al(f) } return b | 0 } function xm(a) { a = a | 0; var b = 0, d = 0; if ((c[a + 76 >> 2] | 0) > -1) { d = (Fl(a) | 0) == 0; b = (c[a >> 2] | 0) >>> 4 & 1; if (!d) al(a) } else b = (c[a >> 2] | 0) >>> 4 & 1; return b | 0 } function ym(a) { a = a | 0; var b = 0; if ((c[a + 76 >> 2] | 0) > -1) { b = (Fl(a) | 0) == 0; a = (c[a >> 2] | 0) >>> 5 & 1 } else a = (c[a >> 2] | 0) >>> 5 & 1; return a | 0 } function zm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = i; i = i + 16 | 0; f = e; c[f >> 2] = d; d = Am(a, b, f) | 0; i = e; return d | 0 } function Am(e, f, j) { e = e | 0; f = f | 0; j = j | 0; var k = 0, l = 0, m = 0, n = 0, o = 0, p = 0.0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0, N = 0, O = 0, P = 0, Q = 0, R = 0; R = i; i = i + 304 | 0; K = R + 16 | 0; L = R + 8 | 0; M = R + 33 | 0; N = R; O = R + 32 | 0; if ((c[e + 76 >> 2] | 0) > -1) Q = Fl(e) | 0; else Q = 0; m = a[f >> 0] | 0; a: do if (m << 24 >> 24) { z = e + 4 | 0; A = e + 100 | 0; B = e + 108 | 0; D = e + 8 | 0; E = M + 10 | 0; F = M + 33 | 0; y = L + 4 | 0; G = M + 46 | 0; H = M + 94 | 0; I = M + 1 | 0; J = M + 1 | 0; q = f; v = 0; f = 0; l = 0; k = 0; b: while (1) { c: do if (!(ul(m & 255) | 0)) { m = m << 24 >> 24 == 37; d: do if (m) { n = q + 1 | 0; o = a[n >> 0] | 0; e: do switch (o << 24 >> 24) { case 37: break d; case 42: { x = 0; n = q + 2 | 0; break } default: { m = (o & 255) + -48 | 0; if (m >>> 0 < 10 ? (a[q + 2 >> 0] | 0) == 36 : 0) { c[K >> 2] = c[j >> 2]; while (1) { x = (c[K >> 2] | 0) + (4 - 1) & ~(4 - 1); n = c[x >> 2] | 0; c[K >> 2] = x + 4; if (m >>> 0 > 1) m = m + -1 | 0; else break } x = n; n = q + 3 | 0; break e } w = (c[j >> 2] | 0) + (4 - 1) & ~(4 - 1); x = c[w >> 2] | 0; c[j >> 2] = w + 4 } } while (0); q = a[n >> 0] | 0; m = q & 255; if ((m + -48 | 0) >>> 0 < 10) { o = 0; do { o = (o * 10 | 0) + -48 + m | 0; n = n + 1 | 0; q = a[n >> 0] | 0; m = q & 255 } while ((m + -48 | 0) >>> 0 < 10) } else o = 0; if (q << 24 >> 24 == 109) { q = n + 1 | 0; m = (x | 0) != 0 & 1; l = 0; k = 0; n = q; q = a[q >> 0] | 0 } else m = 0; r = n + 1 | 0; switch (q << 24 >> 24) { case 104: { w = (a[r >> 0] | 0) == 104; q = w ? -2 : -1; n = w ? n + 2 | 0 : r; break } case 108: { w = (a[r >> 0] | 0) == 108; q = w ? 3 : 1; n = w ? n + 2 | 0 : r; break } case 106: { q = 3; n = r; break } case 116: case 122: { q = 1; n = r; break } case 76: { q = 2; n = r; break } case 110: case 112: case 67: case 83: case 91: case 99: case 115: case 88: case 71: case 70: case 69: case 65: case 103: case 102: case 101: case 97: case 120: case 117: case 111: case 105: case 100: { q = 0; break } default: { P = 154; break b } }t = d[n >> 0] | 0; u = (t & 47 | 0) == 3; t = u ? t | 32 : t; u = u ? 1 : q; s = t & 255; switch (s << 24 >> 24) { case 99: { o = (o | 0) < 1 ? 1 : o; break } case 91: break; case 110: { if (!x) { o = v; break c } switch (u | 0) { case -2: { a[x >> 0] = v; o = v; break c } case -1: { b[x >> 1] = v; o = v; break c } case 0: { c[x >> 2] = v; o = v; break c } case 1: { c[x >> 2] = v; o = v; break c } case 3: { o = x; c[o >> 2] = v; c[o + 4 >> 2] = ((v | 0) < 0) << 31 >> 31; o = v; break c } default: { o = v; break c } } } default: { $l(e, 0); do { q = c[z >> 2] | 0; if (q >>> 0 < (c[A >> 2] | 0) >>> 0) { c[z >> 2] = q + 1; q = d[q >> 0] | 0 } else q = bm(e) | 0 } while ((ul(q) | 0) != 0); if (!(c[A >> 2] | 0)) q = c[z >> 2] | 0; else { q = (c[z >> 2] | 0) + -1 | 0; c[z >> 2] = q } v = (c[B >> 2] | 0) + v + q - (c[D >> 2] | 0) | 0 } }$l(e, o); q = c[z >> 2] | 0; r = c[A >> 2] | 0; if (q >>> 0 < r >>> 0) c[z >> 2] = q + 1; else { if ((bm(e) | 0) < 0) { P = 154; break b } r = c[A >> 2] | 0 } if (r | 0) c[z >> 2] = (c[z >> 2] | 0) + -1; f: do switch (s << 24 >> 24) { case 91: case 99: case 115: { w = (t | 0) == 99; g: do if ((t | 16 | 0) == 115) { hn(I | 0, -1, 256) | 0; a[M >> 0] = 0; if ((t | 0) == 115) { a[F >> 0] = 0; a[E >> 0] = 0; a[E + 1 >> 0] = 0; a[E + 2 >> 0] = 0; a[E + 3 >> 0] = 0; a[E + 4 >> 0] = 0 } } else { s = n + 1 | 0; t = (a[s >> 0] | 0) == 94; q = t & 1; n = t ? n + 2 | 0 : s; hn(J | 0, t & 1 | 0, 256) | 0; a[M >> 0] = 0; switch (a[n >> 0] | 0) { case 45: { t = (q ^ 1) & 255; a[G >> 0] = t; n = n + 1 | 0; break } case 93: { t = (q ^ 1) & 255; a[H >> 0] = t; n = n + 1 | 0; break } default: t = (q ^ 1) & 255 } while (1) { q = a[n >> 0] | 0; h: do switch (q << 24 >> 24) { case 0: { P = 154; break b } case 93: break g; case 45: { s = n + 1 | 0; q = a[s >> 0] | 0; switch (q << 24 >> 24) { case 93: case 0: { q = 45; break h } default: { } }n = a[n + -1 >> 0] | 0; if ((n & 255) < (q & 255)) { n = n & 255; do { n = n + 1 | 0; a[M + n >> 0] = t; q = a[s >> 0] | 0 } while ((n | 0) < (q & 255 | 0)); n = s } else n = s; break } default: { } } while (0); a[M + ((q & 255) + 1) >> 0] = t; n = n + 1 | 0 } } while (0); q = w ? o + 1 | 0 : 31; t = (u | 0) == 1; u = (m | 0) != 0; i: do if (t) { if (u) { l = $m(q << 2) | 0; if (!l) { k = 0; P = 154; break b } } else l = x; c[L >> 2] = 0; c[y >> 2] = 0; s = q; k = 0; j: while (1) { r = (l | 0) == 0; do { k: while (1) { q = c[z >> 2] | 0; if (q >>> 0 < (c[A >> 2] | 0) >>> 0) { c[z >> 2] = q + 1; q = d[q >> 0] | 0 } else q = bm(e) | 0; if (!(a[M + (q + 1) >> 0] | 0)) break j; a[O >> 0] = q; switch (Yl(N, O, 1, L) | 0) { case -1: { k = 0; P = 154; break b } case -2: break; default: break k } } if (!r) { c[l + (k << 2) >> 2] = c[N >> 2]; k = k + 1 | 0 } } while (!(u & (k | 0) == (s | 0))); k = s << 1 | 1; q = bn(l, k << 2) | 0; if (!q) { k = 0; P = 154; break b } else { r = s; s = k; l = q; k = r } } if (!(_l(L) | 0)) { k = 0; P = 154; break b } else { r = k; k = 0 } } else { if (u) { k = $m(q) | 0; if (!k) { k = 0; l = 0; P = 154; break b } else { r = q; l = 0 } while (1) { do { q = c[z >> 2] | 0; if (q >>> 0 < (c[A >> 2] | 0) >>> 0) { c[z >> 2] = q + 1; q = d[q >> 0] | 0 } else q = bm(e) | 0; if (!(a[M + (q + 1) >> 0] | 0)) { r = l; l = 0; break i } a[k + l >> 0] = q; l = l + 1 | 0 } while ((l | 0) != (r | 0)); l = r << 1 | 1; q = bn(k, l) | 0; if (!q) { l = 0; P = 154; break b } else { s = r; r = l; k = q; l = s } } } if (!x) { l = r; while (1) { k = c[z >> 2] | 0; if (k >>> 0 < l >>> 0) { c[z >> 2] = k + 1; k = d[k >> 0] | 0 } else k = bm(e) | 0; if (!(a[M + (k + 1) >> 0] | 0)) { r = 0; k = 0; l = 0; break i } l = c[A >> 2] | 0 } } else { q = 0; l = r; while (1) { k = c[z >> 2] | 0; if (k >>> 0 < l >>> 0) { c[z >> 2] = k + 1; k = d[k >> 0] | 0 } else k = bm(e) | 0; if (!(a[M + (k + 1) >> 0] | 0)) { r = q; k = x; l = 0; break i } a[x + q >> 0] = k; q = q + 1 | 0; l = c[A >> 2] | 0 } } } while (0); if (!(c[A >> 2] | 0)) q = c[z >> 2] | 0; else { q = (c[z >> 2] | 0) + -1 | 0; c[z >> 2] = q } q = q - (c[D >> 2] | 0) + (c[B >> 2] | 0) | 0; if (!q) break b; if (!((q | 0) == (o | 0) | w ^ 1)) break b; do if (u) if (t) { c[x >> 2] = l; break } else { c[x >> 2] = k; break } while (0); if (!w) { if (l | 0) c[l + (r << 2) >> 2] = 0; if (!k) { k = 0; break f } a[k + r >> 0] = 0 } break } case 120: case 88: case 112: { o = 16; P = 136; break } case 111: { o = 8; P = 136; break } case 117: case 100: { o = 10; P = 136; break } case 105: { o = 0; P = 136; break } case 71: case 103: case 70: case 102: case 69: case 101: case 65: case 97: { p = +hm(e, u, 0); if ((c[B >> 2] | 0) == ((c[D >> 2] | 0) - (c[z >> 2] | 0) | 0)) break b; if (x) switch (u | 0) { case 0: { g[x >> 2] = p; break f } case 1: { h[x >> 3] = p; break f } case 2: { h[x >> 3] = p; break f } default: break f }break } default: { } } while (0); l: do if ((P | 0) == 136) { P = 0; o = am(e, o, 0, -1, -1) | 0; if ((c[B >> 2] | 0) == ((c[D >> 2] | 0) - (c[z >> 2] | 0) | 0)) break b; if ((x | 0) != 0 & (t | 0) == 112) { c[x >> 2] = o; break } if (x) switch (u | 0) { case -2: { a[x >> 0] = o; break l } case -1: { b[x >> 1] = o; break l } case 0: { c[x >> 2] = o; break l } case 1: { c[x >> 2] = o; break l } case 3: { w = x; c[w >> 2] = o; c[w + 4 >> 2] = C; break l } default: break l } } while (0); f = ((x | 0) != 0 & 1) + f | 0; o = (c[B >> 2] | 0) + v + (c[z >> 2] | 0) - (c[D >> 2] | 0) | 0; break c } while (0); n = q + (m & 1) | 0; $l(e, 0); m = c[z >> 2] | 0; if (m >>> 0 < (c[A >> 2] | 0) >>> 0) { c[z >> 2] = m + 1; m = d[m >> 0] | 0 } else m = bm(e) | 0; if ((m | 0) != (d[n >> 0] | 0)) { P = 22; break b } o = v + 1 | 0 } else { n = q; while (1) { m = n + 1 | 0; if (!(ul(d[m >> 0] | 0) | 0)) break; else n = m } $l(e, 0); do { m = c[z >> 2] | 0; if (m >>> 0 < (c[A >> 2] | 0) >>> 0) { c[z >> 2] = m + 1; m = d[m >> 0] | 0 } else m = bm(e) | 0 } while ((ul(m) | 0) != 0); if (!(c[A >> 2] | 0)) m = c[z >> 2] | 0; else { m = (c[z >> 2] | 0) + -1 | 0; c[z >> 2] = m } o = (c[B >> 2] | 0) + v + m - (c[D >> 2] | 0) | 0 } while (0); q = n + 1 | 0; m = a[q >> 0] | 0; if (!(m << 24 >> 24)) break a; else v = o } if ((P | 0) == 22) { if (c[A >> 2] | 0) c[z >> 2] = (c[z >> 2] | 0) + -1; if ((f | 0) != 0 | (m | 0) > -1) break; else { m = 0; f = l; P = 155 } } else if ((P | 0) == 154) if (!f) { f = l; P = 155 } if ((P | 0) == 155) { l = f; f = -1 } if (m) { an(k); an(l) } } else f = 0; while (0); if (Q | 0) al(e); i = R; return f | 0 } function Bm(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Dm(a, b, c) | 0 } function Cm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = i; i = i + 16 | 0; f = e; c[f >> 2] = d; d = Dl(a, b, f) | 0; i = e; return d | 0 } function Dm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; if ((c[a + 76 >> 2] | 0) > -1) { e = (Fl(a) | 0) == 0; b = Em(a, b, d) | 0; if (!e) al(a) } else b = Em(a, b, d) | 0; return b | 0 } function Em(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; if ((d | 0) == 1) b = b - (c[a + 8 >> 2] | 0) + (c[a + 4 >> 2] | 0) | 0; e = a + 20 | 0; f = a + 28 | 0; if ((c[e >> 2] | 0) >>> 0 > (c[f >> 2] | 0) >>> 0 ? (Ya[c[a + 36 >> 2] & 31](a, 0, 0) | 0, (c[e >> 2] | 0) == 0) : 0) b = -1; else { c[a + 16 >> 2] = 0; c[f >> 2] = 0; c[e >> 2] = 0; if ((Ya[c[a + 40 >> 2] & 31](a, b, d) | 0) < 0) b = -1; else { c[a + 8 >> 2] = 0; c[a + 4 >> 2] = 0; c[a >> 2] = c[a >> 2] & -17; b = 0 } } return b | 0 } function Fm(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0; w = i; i = i + 1056 | 0; u = w + 1024 | 0; v = w; l = a[e >> 0] | 0; do if (l << 24 >> 24) { t = pm(b, l << 24 >> 24) | 0; if (t) { h = a[e + 1 >> 0] | 0; if (h << 24 >> 24) { f = t + 1 | 0; m = a[f >> 0] | 0; if (m << 24 >> 24) { j = a[e + 2 >> 0] | 0; if (!(j << 24 >> 24)) { h = h & 255 | (l & 255) << 8; g = d[t >> 0] << 8 | m & 255; b = m; while (1) { g = g & 65535; if ((g | 0) == (h | 0)) break; f = f + 1 | 0; b = a[f >> 0] | 0; if (!(b << 24 >> 24)) { b = 0; break } else g = b & 255 | g << 8 } b = b << 24 >> 24 ? f + -1 | 0 : 0; break } f = t + 2 | 0; b = a[f >> 0] | 0; if (b << 24 >> 24) { g = a[e + 3 >> 0] | 0; if (!(g << 24 >> 24)) { h = (h & 255) << 16 | (l & 255) << 24 | (j & 255) << 8; g = (b & 255) << 8 | (m & 255) << 16 | d[t >> 0] << 24; if ((g | 0) != (h | 0)) do { f = f + 1 | 0; b = a[f >> 0] | 0; g = (b & 255 | g) << 8 } while (!(b << 24 >> 24 == 0 | (g | 0) == (h | 0))); b = b << 24 >> 24 ? f + -2 | 0 : 0; break } f = t + 3 | 0; k = a[f >> 0] | 0; if (k << 24 >> 24) { if (!(a[e + 4 >> 0] | 0)) { h = (h & 255) << 16 | (l & 255) << 24 | (j & 255) << 8 | g & 255; g = (b & 255) << 8 | (m & 255) << 16 | k & 255 | d[t >> 0] << 24; if ((g | 0) == (h | 0)) b = k; else do { f = f + 1 | 0; b = a[f >> 0] | 0; g = b & 255 | g << 8 } while (!(b << 24 >> 24 == 0 | (g | 0) == (h | 0))); b = b << 24 >> 24 ? f + -3 | 0 : 0; break }; c[u >> 2] = 0; c[u + 4 >> 2] = 0; c[u + 8 >> 2] = 0; c[u + 12 >> 2] = 0; c[u + 16 >> 2] = 0; c[u + 20 >> 2] = 0; c[u + 24 >> 2] = 0; c[u + 28 >> 2] = 0; s = 0; b = l; while (1) { if (!(a[t + s >> 0] | 0)) { b = 0; break } r = u + (((b & 255) >>> 5 & 255) << 2) | 0; c[r >> 2] = c[r >> 2] | 1 << (b & 31); r = s + 1 | 0; c[v + ((b & 255) << 2) >> 2] = r; b = a[e + r >> 0] | 0; if (!(b << 24 >> 24)) { n = 23; break } else s = r } a: do if ((n | 0) == 23) { b: do if (r >>> 0 > 1) { f = 0; l = -1; g = 1; c: while (1) { h = 1; b = f; while (1) { f = g; d: while (1) { k = 1; while (1) { g = a[e + (k + l) >> 0] | 0; j = a[e + f >> 0] | 0; if (g << 24 >> 24 != j << 24 >> 24) break d; if ((k | 0) == (h | 0)) break; k = k + 1 | 0; f = k + b | 0; if (f >>> 0 >= r >>> 0) { m = h; b = l; break c } } b = b + h | 0; f = b + 1 | 0; if (f >>> 0 >= r >>> 0) { m = h; b = l; break c } } h = f - l | 0; if ((g & 255) <= (j & 255)) break; g = f + 1 | 0; if (g >>> 0 >= r >>> 0) { m = h; b = l; break c } else b = f } g = b + 2 | 0; if (g >>> 0 >= r >>> 0) { m = 1; break } else { f = b + 1 | 0; l = b } } h = 0; n = -1; j = 1; while (1) { g = 1; f = h; while (1) { h = j; e: while (1) { l = 1; while (1) { j = a[e + (l + n) >> 0] | 0; k = a[e + h >> 0] | 0; if (j << 24 >> 24 != k << 24 >> 24) break e; if ((l | 0) == (g | 0)) break; l = l + 1 | 0; h = l + f | 0; if (h >>> 0 >= r >>> 0) { h = m; f = n; break b } } f = f + g | 0; h = f + 1 | 0; if (h >>> 0 >= r >>> 0) { h = m; f = n; break b } } g = h - n | 0; if ((j & 255) >= (k & 255)) break; j = h + 1 | 0; if (j >>> 0 >= r >>> 0) { h = m; f = n; break b } else f = h } j = f + 2 | 0; if (j >>> 0 >= r >>> 0) { h = m; g = 1; break } else { h = f + 1 | 0; n = f } } } else { h = 1; b = -1; g = 1; f = -1 } while (0); p = (f + 1 | 0) >>> 0 > (b + 1 | 0) >>> 0; g = p ? g : h; p = p ? f : b; q = p + 1 | 0; if (!(Gm(e, e + g | 0, q) | 0)) o = r - g | 0; else { g = r - p + -1 | 0; o = 0; g = (p >>> 0 > g >>> 0 ? p : g) + 1 | 0 } l = r | 63; m = (o | 0) != 0; n = r - g | 0; b = t; k = 0; f = t; f: while (1) { h = b; do if ((f - h | 0) >>> 0 < r >>> 0) { j = Kl(f, 0, l) | 0; if (j) if ((j - h | 0) >>> 0 < r >>> 0) { b = 0; break a } else break; else { j = f + l | 0; break } } else j = f; while (0); f = a[b + s >> 0] | 0; if (!(1 << (f & 31) & c[u + (((f & 255) >>> 5 & 255) << 2) >> 2])) { b = b + r | 0; k = 0; f = j; continue } f = r - (c[v + ((f & 255) << 2) >> 2] | 0) | 0; if (f | 0) { b = b + (m & (k | 0) != 0 & f >>> 0 < g >>> 0 ? n : f) | 0; k = 0; f = j; continue } f = q >>> 0 > k >>> 0 ? q : k; h = a[e + f >> 0] | 0; g: do if (!(h << 24 >> 24)) f = q; else { while (1) { if (h << 24 >> 24 != (a[b + f >> 0] | 0)) break; f = f + 1 | 0; h = a[e + f >> 0] | 0; if (!(h << 24 >> 24)) { f = q; break g } } b = b + (f - p) | 0; k = 0; f = j; continue f } while (0); do { if (f >>> 0 <= k >>> 0) break a; f = f + -1 | 0 } while ((a[e + f >> 0] | 0) == (a[b + f >> 0] | 0)); b = b + g | 0; k = o; f = j } } while (0) } else b = 0 } else b = 0 } else b = 0 } else b = t } else b = 0 } while (0); i = w; return b | 0 } function Gm(b, c, d) { b = b | 0; c = c | 0; d = d | 0; var e = 0, f = 0; a: do if (!d) b = 0; else { while (1) { e = a[b >> 0] | 0; f = a[c >> 0] | 0; if (e << 24 >> 24 != f << 24 >> 24) break; d = d + -1 | 0; if (!d) { b = 0; break a } else { b = b + 1 | 0; c = c + 1 | 0 } } b = (e & 255) - (f & 255) | 0 } while (0); return b | 0 } function Hm(b, c) { b = b | 0; c = c | 0; c = b + (lm(b, c) | 0) | 0; return (a[c >> 0] | 0 ? c : 0) | 0 } function Im(a) { a = a | 0; var b = 0; b = 12984; c[b >> 2] = a + -1; c[b + 4 >> 2] = 0; return } function Jm() { var a = 0, b = 0, d = 0; b = 12984; b = sn(c[b >> 2] | 0, c[b + 4 >> 2] | 0, 1284865837, 1481765933) | 0; b = gn(b | 0, C | 0, 1, 0) | 0; a = C; d = 12984; c[d >> 2] = b; c[d + 4 >> 2] = a; a = ln(b | 0, a | 0, 33) | 0; return a | 0 } function Km(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0; k = R(e, d) | 0; if ((c[f + 76 >> 2] | 0) > -1) j = Fl(f) | 0; else j = 0; g = f + 74 | 0; i = a[g >> 0] | 0; a[g >> 0] = i + 255 | i; g = f + 4 | 0; i = c[g >> 2] | 0; h = (c[f + 8 >> 2] | 0) - i | 0; if ((h | 0) > 0) { h = h >>> 0 < k >>> 0 ? h : k; nn(b | 0, i | 0, h | 0) | 0; c[g >> 2] = i + h; g = k - h | 0; b = b + h | 0 } else g = k; a: do if (!g) l = 13; else { i = f + 32 | 0; while (1) { if (dm(f) | 0) break; h = Ya[c[i >> 2] & 31](f, b, g) | 0; if ((h + 1 | 0) >>> 0 < 2) break; g = g - h | 0; if (!g) { l = 13; break a } else b = b + h | 0 } if (j | 0) al(f); e = ((k - g | 0) >>> 0) / (d >>> 0) | 0 } while (0); if ((l | 0) == 13) if (j) al(f); return e | 0 } function Lm(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0; m = i; i = i + 16 | 0; k = m; l = e & 255; a[k >> 0] = l; g = b + 16 | 0; h = c[g >> 2] | 0; if (!h) if (!(Ol(b) | 0)) { h = c[g >> 2] | 0; j = 4 } else f = -1; else j = 4; do if ((j | 0) == 4) { j = b + 20 | 0; g = c[j >> 2] | 0; if (g >>> 0 < h >>> 0 ? (f = e & 255, (f | 0) != (a[b + 75 >> 0] | 0)) : 0) { c[j >> 2] = g + 1; a[g >> 0] = l; break } if ((Ya[c[b + 36 >> 2] & 31](b, k, 1) | 0) == 1) f = d[k >> 0] | 0; else f = -1 } while (0); i = m; return f | 0 } function Mm(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; f = R(d, b) | 0; if ((c[e + 76 >> 2] | 0) > -1) { g = (Fl(e) | 0) == 0; a = Gl(a, f, e) | 0; if (!g) al(e) } else a = Gl(a, f, e) | 0; if ((a | 0) != (f | 0)) d = (a >>> 0) / (b >>> 0) | 0; return d | 0 } function Nm(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; if ((c[d + 76 >> 2] | 0) >= 0 ? (Fl(d) | 0) != 0 : 0) { if ((a[d + 75 >> 0] | 0) != (b | 0) ? (g = d + 20 | 0, h = c[g >> 2] | 0, h >>> 0 < (c[d + 16 >> 2] | 0) >>> 0) : 0) { c[g >> 2] = h + 1; a[h >> 0] = b; b = b & 255 } else b = Lm(d, b) | 0; al(d) } else i = 3; do if ((i | 0) == 3) { if ((a[d + 75 >> 0] | 0) != (b | 0) ? (e = d + 20 | 0, f = c[e >> 2] | 0, f >>> 0 < (c[d + 16 >> 2] | 0) >>> 0) : 0) { c[e >> 2] = f + 1; a[f >> 0] = b; b = b & 255; break } b = Lm(d, b) | 0 } while (0); return b | 0 } function Om(a) { a = a | 0; var b = 0, e = 0, f = 0; if ((c[a + 76 >> 2] | 0) >= 0 ? (Fl(a) | 0) != 0 : 0) { b = a + 4 | 0; e = c[b >> 2] | 0; if (e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0) { c[b >> 2] = e + 1; b = d[e >> 0] | 0 } else b = cm(a) | 0 } else f = 3; do if ((f | 0) == 3) { b = a + 4 | 0; e = c[b >> 2] | 0; if (e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0) { c[b >> 2] = e + 1; b = d[e >> 0] | 0; break } else { b = cm(a) | 0; break } } while (0); return b | 0 } function Pm(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; d = b + 75 | 0; a[d >> 0] = -1; switch (e | 0) { case 2: { c[b + 48 >> 2] = 0; break } case 1: { a[d >> 0] = 10; break } default: { } }c[b >> 2] = c[b >> 2] | 64; return 0 } function Qm(a) { a = a | 0; var b = 0; if (!(c[a >> 2] & 128)) b = 1; else b = (c[a + 20 >> 2] | 0) >>> 0 > (c[a + 28 >> 2] | 0) >>> 0 ? 2 : 1; b = Ya[c[a + 40 >> 2] & 31](a, 0, b) | 0; if ((b | 0) >= 0) b = b - (c[a + 8 >> 2] | 0) + (c[a + 4 >> 2] | 0) + (c[a + 20 >> 2] | 0) - (c[a + 28 >> 2] | 0) | 0; return b | 0 } function Rm(a) { a = a | 0; var b = 0; if ((c[a + 76 >> 2] | 0) > -1) { b = (Fl(a) | 0) == 0; a = Qm(a) | 0 } else a = Qm(a) | 0; return a | 0 } function Sm(a) { a = a | 0; return Rm(a) | 0 } function Tm(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; do if ((b | 0) != -1) { if ((c[d + 76 >> 2] | 0) > -1) g = Fl(d) | 0; else g = 0; if (!((c[d + 8 >> 2] | 0) == 0 ? (dm(d) | 0) != 0 : 0)) h = 6; if ((h | 0) == 6 ? (e = d + 4 | 0, f = c[e >> 2] | 0, f >>> 0 > ((c[d + 44 >> 2] | 0) + -8 | 0) >>> 0) : 0) { h = f + -1 | 0; c[e >> 2] = h; a[h >> 0] = b; c[d >> 2] = c[d >> 2] & -17; if (!g) break; al(d); break } if (g) { al(d); b = -1 } else b = -1 } else b = -1; while (0); return b | 0 } function Um(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = i; i = i + 16 | 0; e = d; c[e >> 2] = a; c[e + 4 >> 2] = b; b = Zk(La(38, e | 0) | 0) | 0; i = d; return b | 0 } function Vm(a) { a = a | 0; var b = 0, d = 0, e = 0; e = i; i = i + 16 | 0; d = e + 8 | 0; b = e; c[b >> 2] = a; b = Zk(Ma(10, b | 0) | 0) | 0; if (b) { if ((c[(_k() | 0) >> 2] | 0) == 21) { c[d >> 2] = a; b = Zk(na(40, d | 0) | 0) | 0 } } else b = 0; i = e; return b | 0 } function Wm(a) { a = a | 0; var b = 0; if ((c[a + 76 >> 2] | 0) > -1) { b = (Fl(a) | 0) == 0; c[a >> 2] = c[a >> 2] & -49; if (!b) al(a) } else c[a >> 2] = c[a >> 2] & -49; return }
function cb(a) { a = a | 0; var b = 0; b = i; i = i + a | 0; i = i + 15 & -16; return b | 0 } function db() { return i | 0 } function eb(a) { a = a | 0; i = a } function fb(a, b) { a = a | 0; b = b | 0; i = a; j = b } function gb(a, b) { a = a | 0; b = b | 0; if (!n) { n = a; o = b } } function hb(a) { a = a | 0; C = a } function ib() { return C | 0 } function jb(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = i; i = i + 16 | 0; f = h; c[f >> 2] = b; g = c[a + 16 >> 2] | 0; e = a + 8 | 0; d = c[e >> 2] | 0; do if (((c[a + 24 >> 2] | 0) - d >> 4 | 0) <= (b | 0)) { if (((d - (c[a + 28 >> 2] | 0) >> 4) + 5 | 0) > (1e6 - b | 0)) { g = 0; i = h; return g | 0 } if (!(Nd(a, 18, f) | 0)) { d = c[e >> 2] | 0; b = c[f >> 2] | 0; break } else { g = 0; i = h; return g | 0 } } while (0); a = g + 4 | 0; b = d + (b << 4) | 0; if ((c[a >> 2] | 0) >>> 0 >= b >>> 0) { g = 1; i = h; return g | 0 } c[a >> 2] = b; g = 1; i = h; return g | 0 } function kb(a, b) { a = a | 0; b = b | 0; Td(a, c[b >> 2] | 0); return } function lb(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; if ((a | 0) == (b | 0)) return; g = a + 8 | 0; a = c[g >> 2] | 0; e = 0 - d | 0; f = a + (e << 4) | 0; c[g >> 2] = f; if ((d | 0) <= 0) return; b = b + 8 | 0; h = c[b >> 2] | 0; c[b >> 2] = h + 16; j = f; i = c[j + 4 >> 2] | 0; f = h; c[f >> 2] = c[j >> 2]; c[f + 4 >> 2] = i; c[h + 8 >> 2] = c[a + (e << 4) + 8 >> 2]; if ((d | 0) == 1) return; else a = 1; do { i = c[g >> 2] | 0; j = c[b >> 2] | 0; c[b >> 2] = j + 16; e = i + (a << 4) | 0; f = c[e + 4 >> 2] | 0; h = j; c[h >> 2] = c[e >> 2]; c[h + 4 >> 2] = f; c[j + 8 >> 2] = c[i + (a << 4) + 8 >> 2]; a = a + 1 | 0 } while ((a | 0) != (d | 0)); return } function mb(a, b) { a = a | 0; b = b | 0; var d = 0; d = (c[a + 12 >> 2] | 0) + 168 | 0; a = c[d >> 2] | 0; c[d >> 2] = b; return a | 0 } function nb(a) { a = a | 0; if (!a) { a = 8; return a | 0 } a = c[(c[a + 12 >> 2] | 0) + 176 >> 2] | 0; return a | 0 } function ob(a, b) { a = a | 0; b = b | 0; if ((b + 1000999 | 0) >>> 0 > 1000999) return b | 0; b = ((c[a + 8 >> 2] | 0) - (c[c[a + 16 >> 2] >> 2] | 0) >> 4) + b | 0; return b | 0 } function pb(a) { a = a | 0; return (c[a + 8 >> 2] | 0) - ((c[c[a + 16 >> 2] >> 2] | 0) + 16) >> 4 | 0 } function qb(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; if ((b | 0) <= -1) { g = a + 8 | 0; c[g >> 2] = (c[g >> 2] | 0) + (b + 1 << 4); return } d = c[c[a + 16 >> 2] >> 2] | 0; e = a + 8 | 0; f = c[e >> 2] | 0; g = d + 16 + (b << 4) | 0; if (f >>> 0 < g >>> 0) { a = ((d + (b << 4) + 8 + 4 + (3 - f) | 0) >>> 4) + 1 | 0; b = f; do { c[b + 8 >> 2] = 0; b = b + 16 | 0 } while (b >>> 0 < g >>> 0); c[e >> 2] = f + (a << 4) } c[e >> 2] = g; return } function rb(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); f = b + 16 | 0; a = a + 8 | 0; e = c[a >> 2] | 0; if (f >>> 0 >= e >>> 0) { f = e; f = f + -16 | 0; c[a >> 2] = f; return } while (1) { h = f; g = c[h + 4 >> 2] | 0; e = b; c[e >> 2] = c[h >> 2]; c[e + 4 >> 2] = g; c[b + 8 >> 2] = c[b + 24 >> 2]; e = f + 16 | 0; b = c[a >> 2] | 0; if (e >>> 0 < b >>> 0) { b = f; f = e } else break } h = b + -16 | 0; c[a >> 2] = h; return } function sb(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { f = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { f = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) f = 12936; else { f = c[b >> 2] | 0; f = (e | 0) > (d[f + 6 >> 0] | 0 | 0) ? 12936 : f + 16 + (e + -1 << 4) | 0 } } else { f = (c[f >> 2] | 0) + (b << 4) | 0; f = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936 } while (0); e = a + 8 | 0; b = c[e >> 2] | 0; if (b >>> 0 > f >>> 0) { do { a = b; b = b + -16 | 0; i = b; h = c[i + 4 >> 2] | 0; g = a; c[g >> 2] = c[i >> 2]; c[g + 4 >> 2] = h; c[a + 8 >> 2] = c[a + -8 >> 2] } while (b >>> 0 > f >>> 0); b = c[e >> 2] | 0 } g = b; h = c[g + 4 >> 2] | 0; i = f; c[i >> 2] = c[g >> 2]; c[i + 4 >> 2] = h; c[f + 8 >> 2] = c[b + 8 >> 2]; return } function tb(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; h = b + 8 | 0; i = c[h >> 2] | 0; j = i + -16 | 0; l = b + 16 | 0; f = c[l >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { f = i + (e << 4) | 0; break } if ((e | 0) == -1001e3) { f = (c[b + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - e | 0; f = c[f >> 2] | 0; if ((c[f + 8 >> 2] | 0) == 22) f = 12936; else { f = c[f >> 2] | 0; f = (g | 0) > (d[f + 6 >> 0] | 0 | 0) ? 12936 : f + 16 + (g + -1 << 4) | 0 } } else { f = (c[f >> 2] | 0) + (e << 4) | 0; f = f >>> 0 < i >>> 0 ? f : 12936 } while (0); o = j; n = c[o + 4 >> 2] | 0; g = f; c[g >> 2] = c[o >> 2]; c[g + 4 >> 2] = n; i = i + -8 | 0; c[f + 8 >> 2] = c[i >> 2]; if ((((e | 0) < -1001e3 ? c[i >> 2] & 64 | 0 : 0) ? (k = c[j >> 2] | 0, a[k + 5 >> 0] & 3) : 0) ? (m = c[c[c[l >> 2] >> 2] >> 2] | 0, a[m + 5 >> 0] & 4) : 0) je(b, m, k); c[h >> 2] = (c[h >> 2] | 0) + -16; return } function ub(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = b + 16 | 0; i = c[j >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { h = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { h = (c[b + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - e | 0; g = c[i >> 2] | 0; if ((c[g + 8 >> 2] | 0) == 22) h = 12936; else { h = c[g >> 2] | 0; h = (e | 0) > (d[h + 6 >> 0] | 0 | 0) ? 12936 : h + 16 + (e + -1 << 4) | 0 } } else { h = (c[i >> 2] | 0) + (e << 4) | 0; h = h >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? h : 12936 } while (0); do if ((f | 0) <= 0) { if ((f | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (f << 4) | 0; break } if ((f | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - f | 0; e = c[i >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (g | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (g + -1 << 4) | 0 } } else { e = (c[i >> 2] | 0) + (f << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); k = h; i = c[k + 4 >> 2] | 0; g = e; c[g >> 2] = c[k >> 2]; c[g + 4 >> 2] = i; g = h + 8 | 0; c[e + 8 >> 2] = c[g >> 2]; if ((f | 0) >= -1001e3) return; if (!(c[g >> 2] & 64)) return; g = c[h >> 2] | 0; if (!(a[g + 5 >> 0] & 3)) return; e = c[c[c[j >> 2] >> 2] >> 2] | 0; if (!(a[e + 5 >> 0] & 4)) return; je(b, e, g); return } function vb(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); a = a + 8 | 0; f = c[a >> 2] | 0; h = b; g = c[h + 4 >> 2] | 0; e = f; c[e >> 2] = c[h >> 2]; c[e + 4 >> 2] = g; c[f + 8 >> 2] = c[b + 8 >> 2]; c[a >> 2] = (c[a >> 2] | 0) + 16; return } function wb(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) > 0) { b = (c[e >> 2] | 0) + (b << 4) | 0; if (b >>> 0 >= (c[a + 8 >> 2] | 0) >>> 0) { e = -1; return e | 0 } } else { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } a = -1001e3 - b | 0; b = c[e >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) { e = -1; return e | 0 } b = c[b >> 2] | 0; if ((a | 0) > (d[b + 6 >> 0] | 0 | 0)) { e = -1; return e | 0 } else b = b + 16 + (a + -1 << 4) | 0 } while (0); if ((b | 0) == 12936) { e = -1; return e | 0 } e = c[b + 8 >> 2] & 15; return e | 0 } function xb(a, b) { a = a | 0; b = b | 0; return c[148 + (b + 1 << 2) >> 2] | 0 } function yb(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); e = c[a + 8 >> 2] | 0; return ((e | 0) == 22 | (e | 0) == 102) & 1 | 0 } function zb(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0; g = i; i = i + 16 | 0; f = g; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); if ((c[a + 8 >> 2] | 0) == 3) { f = 1; f = f & 1; i = g; return f | 0 } f = (hg(a, f) | 0) != 0; f = f & 1; i = g; return f | 0 } function Ab(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) > 0) { b = (c[e >> 2] | 0) + (b << 4) | 0; if (b >>> 0 >= (c[a + 8 >> 2] | 0) >>> 0) { e = 0; e = e & 1; return e | 0 } } else { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } a = -1001e3 - b | 0; b = c[e >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) { e = 0; e = e & 1; return e | 0 } b = c[b >> 2] | 0; if ((a | 0) > (d[b + 6 >> 0] | 0 | 0)) { e = 0; e = e & 1; return e | 0 } else b = b + 16 + (a + -1 << 4) | 0 } while (0); if ((b | 0) == 12936) { e = 0; e = e & 1; return e | 0 } e = ((c[b + 8 >> 2] & 15) + -3 | 0) >>> 0 < 2; e = e & 1; return e | 0 } function Bb(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); e = c[a + 8 >> 2] | 0; return ((e | 0) == 71 | (e | 0) == 2) & 1 | 0 } function Cb(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { g = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { g = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; f = c[h >> 2] | 0; if ((c[f + 8 >> 2] | 0) == 22) g = 12936; else { g = c[f >> 2] | 0; g = (b | 0) > (d[g + 6 >> 0] | 0 | 0) ? 12936 : g + 16 + (b + -1 << 4) | 0 } } else { g = (c[h >> 2] | 0) + (b << 4) | 0; g = g >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? g : 12936 } while (0); do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - e | 0; b = c[h >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) { h = 0; return h | 0 } else { b = c[b >> 2] | 0; b = (f | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (f + -1 << 4) | 0; break } } else { b = (c[h >> 2] | 0) + (e << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); if (!((g | 0) != 12936 & (b | 0) != 12936)) { h = 0; return h | 0 } if ((c[g + 8 >> 2] | 0) == (c[b + 8 >> 2] | 0)) b = (ng(0, g, b) | 0) != 0; else b = 0; h = b & 1; return h | 0 } function Db(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, i = 0; i = a + 8 | 0; d = c[i >> 2] | 0; if ((b | 0) == 6) { e = d + -16 | 0; f = c[e + 4 >> 2] | 0; g = d; c[g >> 2] = c[e >> 2]; c[g + 4 >> 2] = f; c[d + 8 >> 2] = c[d + -8 >> 2]; d = (c[i >> 2] | 0) + 16 | 0; c[i >> 2] = d } e = d + -32 | 0; f = d + -16 | 0; g = d + -24 | 0; if ((c[g >> 2] | 0) == 3 ? (c[d + -8 >> 2] | 0) == 3 : 0) { h[e >> 3] = +Ye(b, +h[e >> 3], +h[f >> 3]); c[g >> 2] = 3; b = c[i >> 2] | 0; b = b + -16 | 0; c[i >> 2] = b; return } qg(a, e, e, f, b + 6 | 0); b = c[i >> 2] | 0; b = b + -16 | 0; c[i >> 2] = b; return } function Eb(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0; i = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { h = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { h = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; g = c[i >> 2] | 0; if ((c[g + 8 >> 2] | 0) == 22) h = 12936; else { h = c[g >> 2] | 0; h = (b | 0) > (d[h + 6 >> 0] | 0 | 0) ? 12936 : h + 16 + (b + -1 << 4) | 0 } } else { h = (c[i >> 2] | 0) + (b << 4) | 0; h = h >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? h : 12936 } while (0); do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - e | 0; b = c[i >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) { f = 0; return f | 0 } else { b = c[b >> 2] | 0; b = (g | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (g + -1 << 4) | 0; break } } else { b = (c[i >> 2] | 0) + (e << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); if (!((h | 0) != 12936 & (b | 0) != 12936)) { f = 0; return f | 0 } switch (f | 0) { case 0: { if ((c[h + 8 >> 2] | 0) == (c[b + 8 >> 2] | 0)) b = (ng(a, h, b) | 0) != 0; else b = 0; f = b & 1; return f | 0 } case 1: { f = lg(a, h, b) | 0; return f | 0 } case 2: { f = mg(a, h, b) | 0; return f | 0 } default: { f = 0; return f | 0 } }return 0 } function Fb(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0.0; j = i; i = i + 16 | 0; g = j; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[f >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { f = (c[f >> 2] | 0) + (b << 4) | 0; a = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936 } while (0); if ((c[a + 8 >> 2] | 0) != 3) { a = hg(a, g) | 0; if (!a) { if (!e) { k = 0.0; i = j; return +k } c[e >> 2] = 0; k = 0.0; i = j; return +k } } if (e | 0) c[e >> 2] = 1; k = +h[a >> 3]; i = j; return +k } function Gb(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, j = 0; j = i; i = i + 16 | 0; g = j; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[f >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { f = (c[f >> 2] | 0) + (b << 4) | 0; a = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936 } while (0); if ((c[a + 8 >> 2] | 0) != 3) { a = hg(a, g) | 0; if (!a) { if (!e) { e = 0; i = j; return e | 0 } c[e >> 2] = 0; e = 0; i = j; return e | 0 } } a = ~~+h[a >> 3]; if (!e) { e = a; i = j; return e | 0 } c[e >> 2] = 1; e = a; i = j; return e | 0 } function Hb(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0; k = i; i = i + 32 | 0; g = k + 8 | 0; j = k; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[f >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { f = (c[f >> 2] | 0) + (b << 4) | 0; a = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936 } while (0); if ((c[a + 8 >> 2] | 0) != 3) { a = hg(a, g) | 0; if (!a) { if (!e) { e = 0; i = k; return e | 0 } c[e >> 2] = 0; e = 0; i = k; return e | 0 } } h[j >> 3] = +h[a >> 3] + 6755399441055744.0; a = c[j >> 2] | 0; if (!e) { e = a; i = k; return e | 0 } c[e >> 2] = 1; e = a; i = k; return e | 0 } function Ib(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); b = c[a + 8 >> 2] | 0; if (!b) { e = 0; e = e & 1; return e | 0 } if ((b | 0) != 1) { e = 1; e = e & 1; return e | 0 } e = (c[a >> 2] | 0) != 0; e = e & 1; return e | 0 } function Jb(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = a + 16 | 0; f = c[h >> 2] | 0; i = (b | 0) > 0; do if (!i) { if ((b | 0) >= -1000999) { f = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { f = (c[a + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - b | 0; f = c[f >> 2] | 0; if ((c[f + 8 >> 2] | 0) == 22) f = 12936; else { f = c[f >> 2] | 0; f = (g | 0) > (d[f + 6 >> 0] | 0 | 0) ? 12936 : f + 16 + (g + -1 << 4) | 0 } } else { f = (c[f >> 2] | 0) + (b << 4) | 0; f = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936 } while (0); do if ((c[f + 8 >> 2] & 15 | 0) != 4) { if (!(ig(a, f) | 0)) { if (!e) { e = 0; return e | 0 } c[e >> 2] = 0; e = 0; return e | 0 } f = a + 12 | 0; if ((c[(c[f >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); h = c[h >> 2] | 0; if (i) { f = (c[h >> 2] | 0) + (b << 4) | 0; f = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936; break } if ((b | 0) >= -1000999) { f = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { f = (c[f >> 2] | 0) + 40 | 0; break } g = -1001e3 - b | 0; f = c[h >> 2] | 0; if ((c[f + 8 >> 2] | 0) == 22) f = 12936; else { f = c[f >> 2] | 0; f = (g | 0) > (d[f + 6 >> 0] | 0 | 0) ? 12936 : f + 16 + (g + -1 << 4) | 0 } } while (0); if (!e) f = c[f >> 2] | 0; else { f = c[f >> 2] | 0; c[e >> 2] = c[f + 12 >> 2] } e = f + 16 | 0; return e | 0 } function Kb(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); switch (c[a + 8 >> 2] & 15) { case 4: { e = c[(c[a >> 2] | 0) + 12 >> 2] | 0; return e | 0 } case 7: { e = c[(c[a >> 2] | 0) + 16 >> 2] | 0; return e | 0 } case 5: { e = $f(c[a >> 2] | 0) | 0; return e | 0 } default: { e = 0; return e | 0 } }return 0 } function Lb(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); switch (c[a + 8 >> 2] | 0) { case 22: { e = c[a >> 2] | 0; return e | 0 } case 102: { e = c[(c[a >> 2] | 0) + 12 >> 2] | 0; return e | 0 } default: { e = 0; return e | 0 } }return 0 } function Mb(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); switch (c[a + 8 >> 2] & 15) { case 7: { e = (c[a >> 2] | 0) + 24 | 0; return e | 0 } case 2: { e = c[a >> 2] | 0; return e | 0 } default: { e = 0; return e | 0 } }return 0 } function Nb(a, b) { a = a | 0; b = b | 0; var e = 0; e = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { a = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { a = (c[a + 12 >> 2] | 0) + 40 | 0; break } b = -1001e3 - b | 0; a = c[e >> 2] | 0; if ((c[a + 8 >> 2] | 0) == 22) a = 12936; else { a = c[a >> 2] | 0; a = (b | 0) > (d[a + 6 >> 0] | 0 | 0) ? 12936 : a + 16 + (b + -1 << 4) | 0 } } else { e = (c[e >> 2] | 0) + (b << 4) | 0; a = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); if ((c[a + 8 >> 2] | 0) != 72) { e = 0; return e | 0 } e = c[a >> 2] | 0; return e | 0 } function Ob(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; h = c[a + 16 >> 2] | 0; g = (b | 0) > 0; do if (!g) { if ((b | 0) >= -1000999) { e = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { e = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; f = c[h >> 2] | 0; if ((c[f + 8 >> 2] | 0) == 22) e = 12936; else { f = c[f >> 2] | 0; e = (e | 0) > (d[f + 6 >> 0] | 0 | 0) ? 12936 : f + 16 + (e + -1 << 4) | 0 } } else { e = (c[h >> 2] | 0) + (b << 4) | 0; e = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); switch (c[e + 8 >> 2] & 63) { case 5: { h = c[e >> 2] | 0; return h | 0 } case 6: { h = c[e >> 2] | 0; return h | 0 } case 38: { h = c[e >> 2] | 0; return h | 0 } case 22: { h = c[e >> 2] | 0; return h | 0 } case 8: { h = c[e >> 2] | 0; return h | 0 } case 2: case 7: { do if (!g) { if ((b | 0) >= -1000999) { e = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { e = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - b | 0; e = c[h >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (f | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (f + -1 << 4) | 0 } } else { e = (c[h >> 2] | 0) + (b << 4) | 0; e = e >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); switch (c[e + 8 >> 2] & 15) { case 7: { h = (c[e >> 2] | 0) + 24 | 0; return h | 0 } case 2: { h = c[e >> 2] | 0; return h | 0 } default: { h = 0; return h | 0 } } } default: { h = 0; return h | 0 } }return 0 } function Pb(a) { a = a | 0; var b = 0; a = a + 8 | 0; b = c[a >> 2] | 0; c[b + 8 >> 2] = 0; c[a >> 2] = b + 16; return } function Qb(a, b) { a = a | 0; b = +b; var d = 0; a = a + 8 | 0; d = c[a >> 2] | 0; h[d >> 3] = b; c[d + 8 >> 2] = 3; c[a >> 2] = d + 16; return } function Rb(a, b) { a = a | 0; b = b | 0; var d = 0; a = a + 8 | 0; d = c[a >> 2] | 0; h[d >> 3] = +(b | 0); c[d + 8 >> 2] = 3; c[a >> 2] = d + 16; return } function Sb(a, b) { a = a | 0; b = b | 0; var d = 0; a = a + 8 | 0; d = c[a >> 2] | 0; h[d >> 3] = (b | 0) > -1 ? +(b | 0) : +(b >>> 0); c[d + 8 >> 2] = 3; c[a >> 2] = d + 16; return } function Tb(a, b, e) { a = a | 0; b = b | 0; e = e | 0; if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); e = Mf(a, b, e) | 0; b = a + 8 | 0; a = c[b >> 2] | 0; c[a >> 2] = e; c[a + 8 >> 2] = d[e + 4 >> 0] | 0 | 64; c[b >> 2] = (c[b >> 2] | 0) + 16; return e + 16 | 0 } function Ub(a, b) { a = a | 0; b = b | 0; var e = 0; if (!b) { b = a + 8 | 0; a = c[b >> 2] | 0; c[a + 8 >> 2] = 0; c[b >> 2] = a + 16; b = 0; return b | 0 } if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); b = Nf(a, b) | 0; a = a + 8 | 0; e = c[a >> 2] | 0; c[e >> 2] = b; c[e + 8 >> 2] = d[b + 4 >> 0] | 0 | 64; c[a >> 2] = (c[a >> 2] | 0) + 16; b = b + 16 | 0; return b | 0 } function Vb(a, b, d) { a = a | 0; b = b | 0; d = d | 0; if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); return $e(a, b, d) | 0 } function Wb(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; f = i; i = i + 16 | 0; e = f; if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); c[e >> 2] = d; d = $e(a, b, e) | 0; i = f; return d | 0 } function Xb(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; if (!d) { e = a + 8 | 0; a = c[e >> 2] | 0; c[a >> 2] = b; c[a + 8 >> 2] = 22; b = c[e >> 2] | 0; b = b + 16 | 0; c[e >> 2] = b; return } if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); e = ae(a, d) | 0; c[e + 12 >> 2] = b; b = a + 8 | 0; a = (c[b >> 2] | 0) + (0 - d << 4) | 0; c[b >> 2] = a; do { d = d + -1 | 0; h = a + (d << 4) | 0; g = c[h + 4 >> 2] | 0; f = e + 16 + (d << 4) | 0; c[f >> 2] = c[h >> 2]; c[f + 4 >> 2] = g; c[e + 16 + (d << 4) + 8 >> 2] = c[a + (d << 4) + 8 >> 2]; a = c[b >> 2] | 0 } while ((d | 0) != 0); c[a >> 2] = e; c[a + 8 >> 2] = 102; h = b; g = c[h >> 2] | 0; g = g + 16 | 0; c[h >> 2] = g; return } function Yb(a, b) { a = a | 0; b = b | 0; var d = 0; a = a + 8 | 0; d = c[a >> 2] | 0; c[d >> 2] = (b | 0) != 0 & 1; c[d + 8 >> 2] = 1; c[a >> 2] = d + 16; return } function Zb(a, b) { a = a | 0; b = b | 0; var d = 0; a = a + 8 | 0; d = c[a >> 2] | 0; c[d >> 2] = b; c[d + 8 >> 2] = 2; c[a >> 2] = (c[a >> 2] | 0) + 16; return } function _b(a) { a = a | 0; var b = 0, d = 0; b = a + 8 | 0; d = c[b >> 2] | 0; c[d >> 2] = a; c[d + 8 >> 2] = 72; c[b >> 2] = (c[b >> 2] | 0) + 16; return (c[(c[a + 12 >> 2] | 0) + 172 >> 2] | 0) == (a | 0) | 0 } function $b(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0; e = Zf(c[(c[a + 12 >> 2] | 0) + 40 >> 2] | 0, 2) | 0; f = a + 8 | 0; g = c[f >> 2] | 0; c[f >> 2] = g + 16; b = Nf(a, b) | 0; c[g >> 2] = b; c[g + 8 >> 2] = d[b + 4 >> 0] | 0 | 64; b = (c[f >> 2] | 0) + -16 | 0; jg(a, e, b, b); return } function ac(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); f = (c[a + 8 >> 2] | 0) + -16 | 0; jg(a, b, f, f); return } function bc(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0; g = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - b | 0; b = c[g >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (f | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (f + -1 << 4) | 0 } } else { b = (c[g >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); g = a + 8 | 0; f = c[g >> 2] | 0; e = Nf(a, e) | 0; c[f >> 2] = e; c[f + 8 >> 2] = d[e + 4 >> 0] | 0 | 64; e = c[g >> 2] | 0; c[g >> 2] = e + 16; jg(a, b, e, e); return } function cc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); a = a + 8 | 0; f = Tf(c[b >> 2] | 0, (c[a >> 2] | 0) + -16 | 0) | 0; a = c[a >> 2] | 0; g = f; b = c[g + 4 >> 2] | 0; e = a + -16 | 0; c[e >> 2] = c[g >> 2]; c[e + 4 >> 2] = b; c[a + -8 >> 2] = c[f + 8 >> 2]; return } function dc(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - b | 0; b = c[g >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (f | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (f + -1 << 4) | 0 } } else { b = (c[g >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); g = Zf(c[b >> 2] | 0, e) | 0; e = a + 8 | 0; a = c[e >> 2] | 0; h = g; b = c[h + 4 >> 2] | 0; f = a; c[f >> 2] = c[h >> 2]; c[f + 4 >> 2] = b; c[a + 8 >> 2] = c[g + 8 >> 2]; c[e >> 2] = (c[e >> 2] | 0) + 16; return } function ec(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0; j = i; i = i + 16 | 0; h = j; g = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - b | 0; b = c[g >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (f | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (f + -1 << 4) | 0 } } else { b = (c[g >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); c[h >> 2] = e; c[h + 8 >> 2] = 2; g = Tf(c[b >> 2] | 0, h) | 0; h = a + 8 | 0; e = c[h >> 2] | 0; b = g; f = c[b + 4 >> 2] | 0; a = e; c[a >> 2] = c[b >> 2]; c[a + 4 >> 2] = f; c[e + 8 >> 2] = c[g + 8 >> 2]; c[h >> 2] = (c[h >> 2] | 0) + 16; i = j; return } function fc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); e = Xf(a) | 0; f = a + 8 | 0; g = c[f >> 2] | 0; c[g >> 2] = e; c[g + 8 >> 2] = 69; c[f >> 2] = (c[f >> 2] | 0) + 16; if (!((b | 0) > 0 | (d | 0) > 0)) return; Rf(a, e, b, d); return } function gc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); e = c[b + 8 >> 2] | 0; switch (e & 15) { case 5: { b = (c[b >> 2] | 0) + 24 | 0; break } case 7: { b = (c[b >> 2] | 0) + 8 | 0; break } default: b = (c[a + 12 >> 2] | 0) + 252 + ((e & 15) << 2) | 0 }b = c[b >> 2] | 0; if (!b) { a = 0; return a | 0 } a = a + 8 | 0; f = c[a >> 2] | 0; c[f >> 2] = b; c[f + 8 >> 2] = 69; c[a >> 2] = (c[a >> 2] | 0) + 16; a = 1; return a | 0 } function hc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); f = c[(c[b >> 2] | 0) + 12 >> 2] | 0; b = a + 8 | 0; e = c[b >> 2] | 0; if (!f) { f = 0; a = e + 8 | 0; c[a >> 2] = f; a = c[b >> 2] | 0; a = a + 16 | 0; c[b >> 2] = a; return } c[e >> 2] = f; f = 69; a = e + 8 | 0; c[a >> 2] = f; a = c[b >> 2] | 0; a = a + 16 | 0; c[b >> 2] = a; return } function ic(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0; f = Zf(c[(c[a + 12 >> 2] | 0) + 40 >> 2] | 0, 2) | 0; e = a + 8 | 0; g = c[e >> 2] | 0; c[e >> 2] = g + 16; b = Nf(a, b) | 0; c[g >> 2] = b; c[g + 8 >> 2] = d[b + 4 >> 0] | 0 | 64; b = c[e >> 2] | 0; kg(a, f, b + -16 | 0, b + -32 | 0); c[e >> 2] = (c[e >> 2] | 0) + -32; return } function jc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); f = a + 8 | 0; e = c[f >> 2] | 0; kg(a, b, e + -32 | 0, e + -16 | 0); c[f >> 2] = (c[f >> 2] | 0) + -32; return } function kc(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0; g = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - b | 0; b = c[g >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (f | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (f + -1 << 4) | 0 } } else { b = (c[g >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); g = a + 8 | 0; f = c[g >> 2] | 0; c[g >> 2] = f + 16; e = Nf(a, e) | 0; c[f >> 2] = e; c[f + 8 >> 2] = d[e + 4 >> 0] | 0 | 64; e = c[g >> 2] | 0; kg(a, b, e + -16 | 0, e + -32 | 0); c[g >> 2] = (c[g >> 2] | 0) + -32; return } function lc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; g = c[b + 16 >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - e | 0; e = c[g >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (f | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (f + -1 << 4) | 0 } } else { e = (c[g >> 2] | 0) + (e << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); g = b + 8 | 0; h = c[g >> 2] | 0; f = Vf(b, c[e >> 2] | 0, h + -32 | 0) | 0; k = h + -16 | 0; j = c[k + 4 >> 2] | 0; i = f; c[i >> 2] = c[k >> 2]; c[i + 4 >> 2] = j; c[f + 8 >> 2] = c[h + -8 >> 2]; e = c[e >> 2] | 0; a[e + 6 >> 0] = 0; f = c[g >> 2] | 0; if (!(c[f + -8 >> 2] & 64)) { k = f; k = k + -32 | 0; c[g >> 2] = k; return } if (!(a[(c[f + -16 >> 2] | 0) + 5 >> 0] & 3)) { k = f; k = k + -32 | 0; c[g >> 2] = k; return } if (!(a[e + 5 >> 0] & 4)) { k = f; k = k + -32 | 0; c[g >> 2] = k; return } le(b, e); k = c[g >> 2] | 0; k = k + -32 | 0; c[g >> 2] = k; return } function mc(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0; h = c[b + 16 >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - e | 0; e = c[h >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (g | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (g + -1 << 4) | 0 } } else { e = (c[h >> 2] | 0) + (e << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); h = b + 8 | 0; Uf(b, c[e >> 2] | 0, f, (c[h >> 2] | 0) + -16 | 0); g = c[h >> 2] | 0; if (!(c[g + -8 >> 2] & 64)) { b = g; b = b + -16 | 0; c[h >> 2] = b; return } if (!(a[(c[g + -16 >> 2] | 0) + 5 >> 0] & 3)) { b = g; b = b + -16 | 0; c[h >> 2] = b; return } e = c[e >> 2] | 0; if (!(a[e + 5 >> 0] & 4)) { b = g; b = b + -16 | 0; c[h >> 2] = b; return } le(b, e); b = c[h >> 2] | 0; b = b + -16 | 0; c[h >> 2] = b; return } function nc(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0; k = i; i = i + 16 | 0; j = k; h = c[b + 16 >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - e | 0; e = c[h >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (g | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (g + -1 << 4) | 0 } } else { e = (c[h >> 2] | 0) + (e << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); c[j >> 2] = f; c[j + 8 >> 2] = 2; h = b + 8 | 0; f = c[h >> 2] | 0; g = Vf(b, c[e >> 2] | 0, j) | 0; m = f + -16 | 0; l = c[m + 4 >> 2] | 0; j = g; c[j >> 2] = c[m >> 2]; c[j + 4 >> 2] = l; c[g + 8 >> 2] = c[f + -8 >> 2]; g = c[h >> 2] | 0; if (!(c[g + -8 >> 2] & 64)) { m = g; m = m + -16 | 0; c[h >> 2] = m; i = k; return } if (!(a[(c[g + -16 >> 2] | 0) + 5 >> 0] & 3)) { m = g; m = m + -16 | 0; c[h >> 2] = m; i = k; return } e = c[e >> 2] | 0; if (!(a[e + 5 >> 0] & 4)) { m = g; m = m + -16 | 0; c[h >> 2] = m; i = k; return } le(b, e); m = c[h >> 2] | 0; m = m + -16 | 0; c[h >> 2] = m; i = k; return } function oc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; g = c[b + 16 >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { g = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { g = (c[b + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - e | 0; e = c[g >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) g = 12936; else { g = c[e >> 2] | 0; g = (f | 0) > (d[g + 6 >> 0] | 0 | 0) ? 12936 : g + 16 + (f + -1 << 4) | 0 } } else { g = (c[g >> 2] | 0) + (e << 4) | 0; g = g >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? g : 12936 } while (0); h = b + 8 | 0; e = c[h >> 2] | 0; if (!(c[e + -8 >> 2] | 0)) e = 0; else e = c[e + -16 >> 2] | 0; f = c[g + 8 >> 2] | 0; switch (f & 15) { case 5: { c[(c[g >> 2] | 0) + 24 >> 2] = e; if (!e) { j = c[h >> 2] | 0; j = j + -16 | 0; c[h >> 2] = j; return 1 } if (a[e + 5 >> 0] & 3 ? (i = c[g >> 2] | 0, a[i + 5 >> 0] & 4) : 0) le(b, i); pe(b, c[g >> 2] | 0, e); j = c[h >> 2] | 0; j = j + -16 | 0; c[h >> 2] = j; return 1 } case 7: { c[(c[g >> 2] | 0) + 8 >> 2] = e; if (!e) { j = c[h >> 2] | 0; j = j + -16 | 0; c[h >> 2] = j; return 1 } if (a[e + 5 >> 0] & 3 ? (j = c[g >> 2] | 0, a[j + 5 >> 0] & 4) : 0) je(b, j, e); pe(b, c[g >> 2] | 0, e); j = c[h >> 2] | 0; j = j + -16 | 0; c[h >> 2] = j; return 1 } default: { c[(c[b + 12 >> 2] | 0) + 252 + ((f & 15) << 2) >> 2] = e; j = c[h >> 2] | 0; j = j + -16 | 0; c[h >> 2] = j; return 1 } }return 0 } function pc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = c[b + 16 >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - e | 0; e = c[g >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (f | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (f + -1 << 4) | 0 } } else { e = (c[g >> 2] | 0) + (e << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); f = b + 8 | 0; g = c[f >> 2] | 0; if (!(c[g + -8 >> 2] | 0)) { c[(c[e >> 2] | 0) + 12 >> 2] = 0; b = g; b = b + -16 | 0; c[f >> 2] = b; return } h = g + -16 | 0; c[(c[e >> 2] | 0) + 12 >> 2] = c[h >> 2]; h = c[h >> 2] | 0; if (!(a[h + 5 >> 0] & 3)) { b = g; b = b + -16 | 0; c[f >> 2] = b; return } e = c[e >> 2] | 0; if (!(a[e + 5 >> 0] & 4)) { b = g; b = b + -16 | 0; c[f >> 2] = b; return } je(b, e, h); b = c[f >> 2] | 0; b = b + -16 | 0; c[f >> 2] = b; return } function qc(b, e) { b = b | 0; e = e | 0; b = c[b + 16 >> 2] | 0; if (!(a[b + 18 >> 0] & 8)) { e = 0; return e | 0 } if (e | 0) c[e >> 2] = c[b + 24 >> 2]; e = d[b + 37 >> 0] | 0; return e | 0 } function rc(a, d, e, f, g) { a = a | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0; h = a + 8 | 0; d = (c[h >> 2] | 0) + (~d << 4) | 0; if ((g | 0) != 0 ? (b[a + 36 >> 1] | 0) == 0 : 0) { i = c[a + 16 >> 2] | 0; c[i + 28 >> 2] = g; c[i + 24 >> 2] = f; Wd(a, d, e, 1) } else Wd(a, d, e, 0); if ((e | 0) != -1) return; a = (c[a + 16 >> 2] | 0) + 4 | 0; d = c[h >> 2] | 0; if ((c[a >> 2] | 0) >>> 0 >= d >>> 0) return; c[a >> 2] = d; return } function sc(e, f, g, h, j, k) { e = e | 0; f = f | 0; g = g | 0; h = h | 0; j = j | 0; k = k | 0; var l = 0, m = 0, n = 0, o = 0, p = 0; p = i; i = i + 16 | 0; o = p; if (!h) m = 0; else { m = c[e + 16 >> 2] | 0; do if ((h | 0) <= 0) { if ((h | 0) >= -1000999) { h = (c[e + 8 >> 2] | 0) + (h << 4) | 0; break } if ((h | 0) == -1001e3) { h = (c[e + 12 >> 2] | 0) + 40 | 0; break } l = -1001e3 - h | 0; h = c[m >> 2] | 0; if ((c[h + 8 >> 2] | 0) == 22) h = 12936; else { h = c[h >> 2] | 0; h = (l | 0) > (d[h + 6 >> 0] | 0) ? 12936 : h + 16 + (l + -1 << 4) | 0 } } else { h = (c[m >> 2] | 0) + (h << 4) | 0; h = h >>> 0 < (c[e + 8 >> 2] | 0) >>> 0 ? h : 12936 } while (0); m = h - (c[e + 28 >> 2] | 0) | 0 } n = e + 8 | 0; h = (c[n >> 2] | 0) + (~f << 4) | 0; c[o >> 2] = h; l = h; if ((k | 0) != 0 ? (b[e + 36 >> 1] | 0) == 0 : 0) { f = c[e + 16 >> 2] | 0; c[f + 28 >> 2] = k; c[f + 24 >> 2] = j; c[f + 20 >> 2] = l - (c[e + 28 >> 2] | 0); a[f + 36 >> 0] = a[e + 41 >> 0] | 0; o = e + 68 | 0; k = f + 32 | 0; c[k >> 2] = c[o >> 2]; c[o >> 2] = m; m = f + 18 | 0; a[m >> 0] = d[m >> 0] | 16; Wd(e, h, g, 1); a[m >> 0] = d[m >> 0] & 239; c[o >> 2] = c[k >> 2]; m = 0 } else { c[o + 4 >> 2] = g; m = Xd(e, 19, o, l - (c[e + 28 >> 2] | 0) | 0, m) | 0 } if ((g | 0) != -1) { i = p; return m | 0 } l = (c[e + 16 >> 2] | 0) + 4 | 0; h = c[n >> 2] | 0; if ((c[l >> 2] | 0) >>> 0 >= h >>> 0) { i = p; return m | 0 } c[l >> 2] = h; i = p; return m | 0 } function tc(a, b) { a = a | 0; b = b | 0; Wd(a, c[b >> 2] | 0, c[b + 4 >> 2] | 0, 0); return } function uc(b, d, e, f, g) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, j = 0, k = 0, l = 0; h = i; i = i + 32 | 0; j = h; ug(b, j, d, e); f = Yd(b, j, (f | 0) == 0 ? 10032 : f, g) | 0; if (f | 0) { i = h; return f | 0 } d = c[(c[b + 8 >> 2] | 0) + -16 >> 2] | 0; if ((a[d + 6 >> 0] | 0) != 1) { i = h; return f | 0 } e = Zf(c[(c[b + 12 >> 2] | 0) + 40 >> 2] | 0, 2) | 0; d = d + 16 | 0; g = c[(c[d >> 2] | 0) + 8 >> 2] | 0; l = e; k = c[l + 4 >> 2] | 0; j = g; c[j >> 2] = c[l >> 2]; c[j + 4 >> 2] = k; j = e + 8 | 0; c[g + 8 >> 2] = c[j >> 2]; if (!(c[j >> 2] & 64)) { i = h; return f | 0 } e = c[e >> 2] | 0; if (!(a[e + 5 >> 0] & 3)) { i = h; return f | 0 } d = c[d >> 2] | 0; if (!(a[d + 5 >> 0] & 4)) { i = h; return f | 0 } je(b, d, e); i = h; return f | 0 } function vc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = c[a + 8 >> 2] | 0; if ((c[e + -8 >> 2] | 0) != 70) { e = 1; return e | 0 } e = _d(a, c[(c[e + -16 >> 2] | 0) + 12 >> 2] | 0, b, d, 0) | 0; return e | 0 } function wc(a) { a = a | 0; return d[a + 6 >> 0] | 0 | 0 } function xc(e, f, g) { e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0; i = c[e + 12 >> 2] | 0; do switch (f | 0) { case 0: { a[i + 63 >> 0] = 0; i = 0; return i | 0 } case 1: { Ef(i, 0); a[i + 63 >> 0] = 1; i = 0; return i | 0 } case 2: { De(e, 0); i = 0; return i | 0 } case 3: { i = ((c[i + 12 >> 2] | 0) + (c[i + 8 >> 2] | 0) | 0) >>> 10; return i | 0 } case 4: { i = (c[i + 12 >> 2] | 0) + (c[i + 8 >> 2] | 0) & 1023; return i | 0 } case 5: { h = b[i + 62 >> 1] | 0; if ((h & 255) << 24 >> 24 == 2) { i = (c[i + 20 >> 2] | 0) == 0 & 1; Ce(e); return i | 0 } f = (g << 10) + -1600 | 0; if ((h & 65535) >= 256) f = (c[i + 12 >> 2] | 0) + f | 0; Ef(i, f); Ce(e); i = (a[i + 61 >> 0] | 0) == 5 & 1; return i | 0 } case 6: { e = i + 156 | 0; i = c[e >> 2] | 0; c[e >> 2] = g; return i | 0 } case 8: { e = i + 160 | 0; i = c[e >> 2] | 0; c[e >> 2] = g; return i | 0 } case 7: { e = i + 164 | 0; i = c[e >> 2] | 0; c[e >> 2] = g; return i | 0 } case 9: { i = d[i + 63 >> 0] | 0; return i | 0 } case 10: { re(e, 2); i = 0; return i | 0 } case 11: { re(e, 0); i = 0; return i | 0 } default: { i = -1; return i | 0 } } while (0); return 0 } function yc(a) { a = a | 0; Fd(a); return 0 } function zc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); f = a + 8 | 0; a = Pf(a, c[b >> 2] | 0, (c[f >> 2] | 0) + -16 | 0) | 0; e = c[f >> 2] | 0; c[f >> 2] = (a | 0) == 0 ? e + -16 | 0 : e + 16 | 0; return a | 0 } function Ac(a, b) { a = a | 0; b = b | 0; var e = 0; if ((b | 0) > 1) { if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); og(a, b); return } else { if (b | 0) return; b = a + 8 | 0; e = c[b >> 2] | 0; a = Mf(a, 15616, 0) | 0; c[e >> 2] = a; c[e + 8 >> 2] = d[a + 4 >> 0] | 0 | 64; c[b >> 2] = (c[b >> 2] | 0) + 16; return } } function Bc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0; f = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - b | 0; b = c[f >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (e | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (e + -1 << 4) | 0 } } else { b = (c[f >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); f = a + 8 | 0; pg(a, c[f >> 2] | 0, b); c[f >> 2] = (c[f >> 2] | 0) + 16; return } function Cc(a, b) { a = a | 0; b = b | 0; a = a + 12 | 0; if (b | 0) c[b >> 2] = c[(c[a >> 2] | 0) + 4 >> 2]; return c[c[a >> 2] >> 2] | 0 } function Dc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; a = c[a + 12 >> 2] | 0; c[a + 4 >> 2] = d; c[a >> 2] = b; return } function Ec(a, b) { a = a | 0; b = b | 0; var d = 0; if ((c[(c[a + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(a); b = Of(a, b, 0) | 0; a = a + 8 | 0; d = c[a >> 2] | 0; c[d >> 2] = b; c[d + 8 >> 2] = 71; c[a >> 2] = (c[a >> 2] | 0) + 16; return b + 24 | 0 } function Fc(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; g = c[a + 16 >> 2] | 0; do if ((b | 0) <= 0) { if ((b | 0) >= -1000999) { b = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { b = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - b | 0; b = c[g >> 2] | 0; if ((c[b + 8 >> 2] | 0) == 22) b = 12936; else { b = c[b >> 2] | 0; b = (f | 0) > (d[b + 6 >> 0] | 0 | 0) ? 12936 : b + 16 + (f + -1 << 4) | 0 } } else { b = (c[g >> 2] | 0) + (b << 4) | 0; b = b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? b : 12936 } while (0); a: do switch (c[b + 8 >> 2] & 63) { case 38: { b = c[b >> 2] | 0; if ((e | 0) <= 0) { a = 0; return a | 0 } if ((d[b + 6 >> 0] | 0 | 0) < (e | 0)) { a = 0; return a | 0 } else { f = 15616; b = b + 16 + (e + -1 << 4) | 0; break a } } case 6: { b = c[b >> 2] | 0; f = c[b + 12 >> 2] | 0; if ((e | 0) <= 0) { a = 0; return a | 0 } if ((c[f + 40 >> 2] | 0) < (e | 0)) { a = 0; return a | 0 } e = e + -1 | 0; b = c[(c[b + 16 + (e << 2) >> 2] | 0) + 8 >> 2] | 0; f = c[(c[f + 28 >> 2] | 0) + (e << 3) >> 2] | 0; if (!f) f = 15616; else f = f + 16 | 0; break } default: { a = 0; return a | 0 } } while (0); a = a + 8 | 0; e = c[a >> 2] | 0; i = b; h = c[i + 4 >> 2] | 0; g = e; c[g >> 2] = c[i >> 2]; c[g + 4 >> 2] = h; c[e + 8 >> 2] = c[b + 8 >> 2]; c[a >> 2] = (c[a >> 2] | 0) + 16; a = f; return a | 0 } function Gc(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0; h = c[b + 16 >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - e | 0; e = c[h >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (g | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (g + -1 << 4) | 0 } } else { e = (c[h >> 2] | 0) + (e << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); a: do switch (c[e + 8 >> 2] & 63) { case 38: { e = c[e >> 2] | 0; if ((f | 0) <= 0) { b = 0; return b | 0 } if ((d[e + 6 >> 0] | 0 | 0) < (f | 0)) { b = 0; return b | 0 } else { i = 15616; h = e; e = e + 16 + (f + -1 << 4) | 0; break a } } case 6: { e = c[e >> 2] | 0; g = c[e + 12 >> 2] | 0; if ((f | 0) <= 0) { b = 0; return b | 0 } if ((c[g + 40 >> 2] | 0) < (f | 0)) { b = 0; return b | 0 } f = f + -1 | 0; h = c[e + 16 + (f << 2) >> 2] | 0; e = c[h + 8 >> 2] | 0; g = c[(c[g + 28 >> 2] | 0) + (f << 3) >> 2] | 0; if (!g) i = 15616; else i = g + 16 | 0; break } default: { b = 0; return b | 0 } } while (0); f = b + 8 | 0; g = c[f >> 2] | 0; l = g + -16 | 0; c[f >> 2] = l; k = c[l + 4 >> 2] | 0; j = e; c[j >> 2] = c[l >> 2]; c[j + 4 >> 2] = k; c[e + 8 >> 2] = c[g + -8 >> 2]; e = c[f >> 2] | 0; if (!(c[e + 8 >> 2] & 64)) { l = i; return l | 0 } g = c[e >> 2] | 0; if (!(a[g + 5 >> 0] & 3)) { l = i; return l | 0 } e = h; if (!(a[e + 5 >> 0] & 4)) { l = i; return l | 0 } je(b, e, g); l = i; return l | 0 } function Hc(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = c[a + 16 >> 2] | 0; h = (b | 0) > 0; do if (!h) { if ((b | 0) >= -1000999) { f = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { f = (c[a + 12 >> 2] | 0) + 40 | 0; break } f = -1001e3 - b | 0; g = c[i >> 2] | 0; if ((c[g + 8 >> 2] | 0) == 22) f = 12936; else { g = c[g >> 2] | 0; f = (f | 0) > (d[g + 6 >> 0] | 0 | 0) ? 12936 : g + 16 + (f + -1 << 4) | 0 } } else { f = (c[i >> 2] | 0) + (b << 4) | 0; f = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936 } while (0); switch (c[f + 8 >> 2] & 63) { case 6: { do if (!h) { if ((b | 0) >= -1000999) { f = (c[a + 8 >> 2] | 0) + (b << 4) | 0; break } if ((b | 0) == -1001e3) { f = (c[a + 12 >> 2] | 0) + 40 | 0; break } g = -1001e3 - b | 0; f = c[i >> 2] | 0; if ((c[f + 8 >> 2] | 0) == 22) f = 12936; else { f = c[f >> 2] | 0; f = (g | 0) > (d[f + 6 >> 0] | 0 | 0) ? 12936 : f + 16 + (g + -1 << 4) | 0 } } else { f = (c[i >> 2] | 0) + (b << 4) | 0; f = f >>> 0 < (c[a + 8 >> 2] | 0) >>> 0 ? f : 12936 } while (0); e = c[(c[f >> 2] | 0) + 16 + (e + -1 << 2) >> 2] | 0; return e | 0 } case 38: { e = (c[f >> 2] | 0) + 16 + (e + -1 << 4) | 0; return e | 0 } default: { e = 0; return e | 0 } }return 0 } function Ic(b, e, f, g, h) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0; k = c[b + 16 >> 2] | 0; do if ((e | 0) <= 0) { if ((e | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (e << 4) | 0; break } if ((e | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } e = -1001e3 - e | 0; i = c[k >> 2] | 0; if ((c[i + 8 >> 2] | 0) == 22) e = 12936; else { j = c[i >> 2] | 0; e = (e | 0) > (d[j + 6 >> 0] | 0 | 0) ? 12936 : j + 16 + (e + -1 << 4) | 0 } } else { e = (c[k >> 2] | 0) + (e << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); j = c[e >> 2] | 0; f = j + 16 + (f + -1 << 2) | 0; do if ((g | 0) <= 0) { if ((g | 0) >= -1000999) { e = (c[b + 8 >> 2] | 0) + (g << 4) | 0; break } if ((g | 0) == -1001e3) { e = (c[b + 12 >> 2] | 0) + 40 | 0; break } i = -1001e3 - g | 0; e = c[k >> 2] | 0; if ((c[e + 8 >> 2] | 0) == 22) e = 12936; else { e = c[e >> 2] | 0; e = (i | 0) > (d[e + 6 >> 0] | 0 | 0) ? 12936 : e + 16 + (i + -1 << 4) | 0 } } else { e = (c[k >> 2] | 0) + (g << 4) | 0; e = e >>> 0 < (c[b + 8 >> 2] | 0) >>> 0 ? e : 12936 } while (0); e = (c[e >> 2] | 0) + 16 + (h + -1 << 2) | 0; c[f >> 2] = c[e >> 2]; e = c[e >> 2] | 0; if (!(a[e + 5 >> 0] & 3)) return; if (!(a[j + 5 >> 0] & 4)) return; je(b, j, e); return } function Jc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; i = d + b | 0; j = i + 511 | 0; e = c[a + 20 >> 2] | 0; do if ((e | 0) > (c[a + 24 >> 2] | 0) ? (g = (c[(c[a >> 2] | 0) + 12 >> 2] | 0) + (e + -1 << 2) | 0, h = c[g >> 2] | 0, (h & 63 | 0) == 4) : 0) { e = h >>> 6 & 255; f = e + (h >>> 23) | 0; if ((e | 0) > (b | 0) | (f + 1 | 0) < (b | 0) ? (e | 0) < (b | 0) | (e | 0) > (i | 0) : 0) break; d = (e | 0) < (b | 0) ? e : b; c[g >> 2] = ((f | 0) < (i | 0) ? j : f) - d << 23 | d << 6 & 16320 | h & 8372287; return } while (0); Kc(a, b << 6 | (d << 23) + -8388608 | 4) | 0; return } function Kc(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; q = c[b >> 2] | 0; o = b + 28 | 0; e = c[o >> 2] | 0; r = b + 20 | 0; n = c[r >> 2] | 0; do if ((e | 0) != -1) { k = c[q + 12 >> 2] | 0; while (1) { j = k + (e << 2) | 0; i = c[j >> 2] | 0; h = (i >>> 14) + -131071 | 0; g = e; e = (h | 0) == -1 ? -1 : e + 1 + h | 0; if ((g | 0) > 0 ? (l = j + -4 | 0, m = c[l >> 2] | 0, (a[4156 + (m & 63) >> 0] | 0) < 0) : 0) { f = l; h = m } else { f = j; h = i } if ((h & 63 | 0) == 28) { c[f >> 2] = h & 8372224 | h >>> 23 << 6 | 27; f = n + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { e = 8; break } f = c[j >> 2] & 16383 | (f << 14) + 2147467264 } else { f = n + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { e = 11; break } f = (f << 14) + 2147467264 | i & 16383 } c[j >> 2] = f; if ((e | 0) == -1) { e = 14; break } } if ((e | 0) == 8) He(c[b + 12 >> 2] | 0, 2480); else if ((e | 0) == 11) He(c[b + 12 >> 2] | 0, 2480); else if ((e | 0) == 14) { p = c[r >> 2] | 0; break } } else p = n; while (0); c[o >> 2] = -1; e = q + 48 | 0; if ((p | 0) < (c[e >> 2] | 0)) { f = c[q + 12 >> 2] | 0; e = p } else { p = q + 12 | 0; f = Se(c[(c[b + 12 >> 2] | 0) + 52 >> 2] | 0, c[p >> 2] | 0, e, 4, 2147483645, 2507) | 0; c[p >> 2] = f; e = c[r >> 2] | 0 } c[f + (e << 2) >> 2] = d; f = c[r >> 2] | 0; g = q + 52 | 0; e = b + 12 | 0; if ((f | 0) < (c[g >> 2] | 0)) { d = q + 20 | 0; q = f; b = c[e >> 2] | 0; b = b + 8 | 0; b = c[b >> 2] | 0; d = c[d >> 2] | 0; q = d + (q << 2) | 0; c[q >> 2] = b; q = c[r >> 2] | 0; b = q + 1 | 0; c[r >> 2] = b; return q | 0 } else { d = q + 20 | 0; c[d >> 2] = Se(c[(c[e >> 2] | 0) + 52 >> 2] | 0, c[d >> 2] | 0, g, 4, 2147483645, 2507) | 0; q = c[r >> 2] | 0; b = c[e >> 2] | 0; b = b + 8 | 0; b = c[b >> 2] | 0; d = c[d >> 2] | 0; q = d + (q << 2) | 0; c[q >> 2] = b; q = c[r >> 2] | 0; b = q + 1 | 0; c[r >> 2] = b; return q | 0 } return 0 } function Lc(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; return Kc(a, c << 6 | b | d << 23 | e << 14) | 0 } function Mc(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; g = a + 28 | 0; f = c[g >> 2] | 0; c[g >> 2] = -1; g = Kc(a, 2147450903) | 0; if ((f | 0) == -1) { i = g; return i | 0 } if ((g | 0) == -1) { i = f; return i | 0 } e = c[(c[a >> 2] | 0) + 12 >> 2] | 0; b = g; while (1) { h = e + (b << 2) | 0; i = c[h >> 2] | 0; d = (i >>> 14) + -131071 | 0; d = (d | 0) == -1 ? -1 : b + 1 + d | 0; if ((d | 0) == -1) break; else b = d } b = f + ~b | 0; if ((((b | 0) > -1 ? b : 0 - b | 0) | 0) > 131071) He(c[a + 12 >> 2] | 0, 2480); c[h >> 2] = (b << 14) + 2147467264 | i & 16383; i = g; return i | 0 } function Nc(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return Kc(a, c << 6 | b | d << 14) | 0 } function Oc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; if ((d | 0) == -1) return; e = c[b >> 2] | 0; if ((e | 0) == -1) { c[b >> 2] = d; return } f = c[(c[a >> 2] | 0) + 12 >> 2] | 0; while (1) { g = f + (e << 2) | 0; h = c[g >> 2] | 0; b = (h >>> 14) + -131071 | 0; b = (b | 0) == -1 ? -1 : e + 1 + b | 0; if ((b | 0) == -1) break; else e = b } b = ~e + d | 0; if ((((b | 0) > -1 ? b : 0 - b | 0) | 0) > 131071) He(c[a + 12 >> 2] | 0, 2480); c[g >> 2] = h & 16383 | (b << 14) + 2147467264; return } function Pc(a, b, c) { a = a | 0; b = b | 0; c = c | 0; Kc(a, b << 6 | (c << 23) + 8388608 | 31) | 0; return } function Qc(a) { a = a | 0; var b = 0; b = c[a + 20 >> 2] | 0; c[a + 24 >> 2] = b; return b | 0 } function Rc(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0; if ((c[b + 20 >> 2] | 0) == (e | 0)) { c[b + 24 >> 2] = e; f = b + 28 | 0; if ((d | 0) == -1) return; g = c[f >> 2] | 0; if ((g | 0) == -1) { c[f >> 2] = d; return } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { i = h + (g << 2) | 0; j = c[i >> 2] | 0; f = (j >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = ~g + d | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); c[i >> 2] = (f << 14) + 2147467264 | j & 16383; return } if ((d | 0) == -1) return; k = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { j = k + (d << 2) | 0; i = c[j >> 2] | 0; h = (i >>> 14) + -131071 | 0; g = d; d = (h | 0) == -1 ? -1 : d + 1 + h | 0; if ((g | 0) > 0 ? (l = j + -4 | 0, m = c[l >> 2] | 0, (a[4156 + (m & 63) >> 0] | 0) < 0) : 0) { f = l; h = m } else { f = j; h = i } if ((h & 63 | 0) == 28) { c[f >> 2] = h & 8372224 | h >>> 23 << 6 | 27; f = ~g + e | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { f = 17; break } f = c[j >> 2] & 16383 | (f << 14) + 2147467264 } else { f = ~g + e | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { f = 20; break } f = i & 16383 | (f << 14) + 2147467264 } c[j >> 2] = f; if ((d | 0) == -1) { f = 23; break } } if ((f | 0) == 17) He(c[b + 12 >> 2] | 0, 2480); else if ((f | 0) == 20) He(c[b + 12 >> 2] | 0, 2480); else if ((f | 0) == 23) return } function Sc(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; c[a + 24 >> 2] = c[a + 20 >> 2]; d = a + 28 | 0; if ((b | 0) == -1) return; e = c[d >> 2] | 0; if ((e | 0) == -1) { c[d >> 2] = b; return } f = c[(c[a >> 2] | 0) + 12 >> 2] | 0; while (1) { h = f + (e << 2) | 0; g = c[h >> 2] | 0; d = (g >>> 14) + -131071 | 0; d = (d | 0) == -1 ? -1 : e + 1 + d | 0; if ((d | 0) == -1) break; else e = d } d = ~e + b | 0; if ((((d | 0) > -1 ? d : 0 - d | 0) | 0) > 131071) He(c[a + 12 >> 2] | 0, 2480); c[h >> 2] = (d << 14) + 2147467264 | g & 16383; return } function Tc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; if ((b | 0) == -1) return; e = c[(c[a >> 2] | 0) + 12 >> 2] | 0; a = (d << 6) + 64 & 16320; do { f = e + (b << 2) | 0; g = c[f >> 2] | 0; d = (g >>> 14) + -131071 | 0; c[f >> 2] = g & -16321 | a; b = (d | 0) == -1 ? -1 : b + 1 + d | 0 } while ((b | 0) != -1); return } function Uc(a, b, c) { a = a | 0; b = b | 0; c = c | 0; b = b << 6; if ((c | 0) < 262144) { c = Kc(a, b | c << 14 | 1) | 0; return c | 0 } else { b = Kc(a, b | 2) | 0; Kc(a, c << 6 | 39) | 0; c = b; return c | 0 } return 0 } function Vc(b, e) { b = b | 0; e = e | 0; var f = 0; e = (d[b + 48 >> 0] | 0) + e | 0; f = (c[b >> 2] | 0) + 78 | 0; if ((e | 0) <= (d[f >> 0] | 0 | 0)) return; if ((e | 0) > 249) He(c[b + 12 >> 2] | 0, 2515); a[f >> 0] = e; return } function Wc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0; g = b + 48 | 0; e = (d[g >> 0] | 0) + e | 0; f = (c[b >> 2] | 0) + 78 | 0; if ((e | 0) <= (d[f >> 0] | 0 | 0)) { b = e & 255; a[g >> 0] = b; return } if ((e | 0) > 249) He(c[b + 12 >> 2] | 0, 2515); b = e & 255; a[f >> 0] = b; a[g >> 0] = b; return } function Xc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0; e = i; i = i + 16 | 0; f = e; c[f >> 2] = b; c[f + 8 >> 2] = d[b + 4 >> 0] | 0 | 64; b = Yc(a, f, f) | 0; i = e; return b | 0 } function Yc(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; o = i; i = i + 16 | 0; f = o; n = c[(c[b + 12 >> 2] | 0) + 52 >> 2] | 0; l = Vf(n, c[b + 4 >> 2] | 0, d) | 0; m = c[b >> 2] | 0; k = l + 8 | 0; if (((c[k >> 2] | 0) == 3 ? (h[f >> 3] = +h[l >> 3] + 6755399441055744.0, g = c[f >> 2] | 0, j = c[m + 8 >> 2] | 0, (c[j + (g << 4) + 8 >> 2] | 0) == (c[e + 8 >> 2] | 0)) : 0) ? ng(0, j + (g << 4) | 0, e) | 0 : 0) { n = g; i = o; return n | 0 } f = m + 44 | 0; d = c[f >> 2] | 0; j = b + 32 | 0; b = c[j >> 2] | 0; h[l >> 3] = +(b | 0); c[k >> 2] = 3; if ((b | 0) < (d | 0)) f = d; else { l = m + 8 | 0; c[l >> 2] = Se(n, c[l >> 2] | 0, f, 16, 67108863, 2550) | 0; f = c[f >> 2] | 0 } g = c[m + 8 >> 2] | 0; if ((d | 0) < (f | 0)) do { c[g + (d << 4) + 8 >> 2] = 0; d = d + 1 | 0 } while ((d | 0) < (f | 0)); f = e; k = c[f + 4 >> 2] | 0; l = g + (b << 4) | 0; c[l >> 2] = c[f >> 2]; c[l + 4 >> 2] = k; l = e + 8 | 0; c[g + (b << 4) + 8 >> 2] = c[l >> 2]; c[j >> 2] = (c[j >> 2] | 0) + 1; if (!(c[l >> 2] & 64)) { n = b; i = o; return n | 0 } d = c[e >> 2] | 0; if (!(a[d + 5 >> 0] & 3)) { n = b; i = o; return n | 0 } if (!(a[m + 5 >> 0] & 4)) { n = b; i = o; return n | 0 } je(n, m, d); n = b; i = o; return n | 0 } function Zc(a, b) { a = a | 0; b = +b; var e = 0, f = 0, g = 0, j = 0, k = 0, l = 0; j = i; i = i + 32 | 0; e = j; f = j + 8 | 0; h[e >> 3] = b; g = c[(c[a + 12 >> 2] | 0) + 52 >> 2] | 0; h[f >> 3] = b; c[f + 8 >> 2] = 3; if (b != b | 0.0 != 0.0 | b == 0.0) { k = g + 8 | 0; l = c[k >> 2] | 0; c[k >> 2] = l + 16; g = Mf(g, e, 8) | 0; c[l >> 2] = g; c[l + 8 >> 2] = d[g + 4 >> 0] | 0 | 64; g = Yc(a, (c[k >> 2] | 0) + -16 | 0, f) | 0; c[k >> 2] = (c[k >> 2] | 0) + -16; i = j; return g | 0 } else { l = Yc(a, f, f) | 0; i = j; return l | 0 } return 0 } function _c(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; switch (c[e >> 2] | 0) { case 12: { b = (c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (c[e + 8 >> 2] << 2) | 0; c[b >> 2] = c[b >> 2] & -8372225 | (f << 14) + 16384 & 8372224; return } case 13: { i = e + 8 | 0; g = c[b >> 2] | 0; e = c[g + 12 >> 2] | 0; j = e + (c[i >> 2] << 2) | 0; c[j >> 2] = c[j >> 2] & 8388607 | (f << 23) + 8388608; i = e + (c[i >> 2] << 2) | 0; e = b + 48 | 0; f = d[e >> 0] | 0; c[i >> 2] = f << 6 | c[i >> 2] & -16321; f = f + 1 | 0; g = g + 78 | 0; do if (f >>> 0 > (d[g >> 0] | 0) >>> 0) if (f >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { h = f & 255; a[g >> 0] = h; break } else h = f & 255; while (0); a[e >> 0] = h; return } default: return } } function $c(a, b) { a = a | 0; b = b | 0; switch (c[b >> 2] | 0) { case 12: { c[b >> 2] = 6; b = b + 8 | 0; c[b >> 2] = (c[(c[(c[a >> 2] | 0) + 12 >> 2] | 0) + (c[b >> 2] << 2) >> 2] | 0) >>> 6 & 255; return } case 13: { a = (c[(c[a >> 2] | 0) + 12 >> 2] | 0) + (c[b + 8 >> 2] << 2) | 0; c[a >> 2] = c[a >> 2] & 8388607 | 16777216; c[b >> 2] = 11; return } default: return } } function ad(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; switch (c[e >> 2] | 0) { case 7: { c[e >> 2] = 6; return } case 8: { j = e + 8 | 0; c[j >> 2] = Kc(b, c[j >> 2] << 23 | 5) | 0; c[e >> 2] = 11; return } case 9: { i = e + 8 | 0; g = c[i >> 2] | 0; j = g << 16; k = j >> 16; h = g >>> 16; f = h & 255; if ((k & 256 | 0) == 0 ? (d[b + 46 >> 0] | 0 | 0) <= (k | 0) : 0) { k = b + 48 | 0; a[k >> 0] = (a[k >> 0] | 0) + -1 << 24 >> 24 } if ((g & -16777216 | 0) == 117440512) if ((d[b + 46 >> 0] | 0) > (f & 255)) f = 7; else { f = b + 48 | 0; a[f >> 0] = (a[f >> 0] | 0) + -1 << 24 >> 24; f = 7 } else f = 6; c[i >> 2] = Kc(b, h << 23 & 2139095040 | f | j >> 2) | 0; c[e >> 2] = 11; return } case 12: { c[e >> 2] = 6; k = e + 8 | 0; c[k >> 2] = (c[(c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (c[k >> 2] << 2) >> 2] | 0) >>> 6 & 255; return } case 13: { k = (c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (c[e + 8 >> 2] << 2) | 0; c[k >> 2] = c[k >> 2] & 8388607 | 16777216; c[e >> 2] = 11; return } default: return } } function bd(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; ad(b, e); if (((c[e >> 2] | 0) == 6 ? (f = c[e + 8 >> 2] | 0, (f & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (f | 0) : 0) { h = b + 48 | 0; a[h >> 0] = (a[h >> 0] | 0) + -1 << 24 >> 24 } f = b + 48 | 0; g = (d[f >> 0] | 0) + 1 | 0; h = (c[b >> 2] | 0) + 78 | 0; if (g >>> 0 <= (d[h >> 0] | 0) >>> 0) { h = g & 255; a[f >> 0] = h; h = h & 255; h = h + -1 | 0; cd(b, e, h); return } if (g >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); g = g & 255; a[h >> 0] = g; h = g; a[f >> 0] = h; h = h & 255; h = h + -1 | 0; cd(b, e, h); return } function cd(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0; dd(b, d, e); n = (c[d >> 2] | 0) == 10; C = d + 16 | 0; do if (n ? (k = c[d + 8 >> 2] | 0, (k | 0) != -1) : 0) { f = c[C >> 2] | 0; if ((f | 0) == -1) { c[C >> 2] = k; break } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { i = h + (f << 2) | 0; j = c[i >> 2] | 0; g = (j >>> 14) + -131071 | 0; g = (g | 0) == -1 ? -1 : f + 1 + g | 0; if ((g | 0) == -1) break; else f = g } f = k + ~f | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[i >> 2] = (f << 14) + 2147467264 | j & 16383; break } } while (0); f = c[C >> 2] | 0; x = d + 20 | 0; j = c[x >> 2] | 0; if ((f | 0) == (j | 0)) { c[C >> 2] = -1; c[x >> 2] = -1; C = d + 8 | 0; c[C >> 2] = e; c[d >> 2] = 6; return } a: do if ((f | 0) == -1) k = 18; else { i = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { g = i + (f << 2) | 0; if ((f | 0) > 0 ? (l = c[g + -4 >> 2] | 0, (a[4156 + (l & 63) >> 0] | 0) < 0) : 0) h = l; else h = c[g >> 2] | 0; if ((h & 63 | 0) != 28) { k = 25; break a } k = ((c[g >> 2] | 0) >>> 14) + -131071 | 0; f = (k | 0) == -1 ? -1 : f + 1 + k | 0; if ((f | 0) == -1) { k = 18; break } } } while (0); b: do if ((k | 0) == 18) if ((j | 0) == -1) { r = -1; z = -1 } else { i = c[(c[b >> 2] | 0) + 12 >> 2] | 0; f = j; while (1) { g = i + (f << 2) | 0; if ((f | 0) > 0 ? (m = c[g + -4 >> 2] | 0, (a[4156 + (m & 63) >> 0] | 0) < 0) : 0) h = m; else h = c[g >> 2] | 0; if ((h & 63 | 0) != 28) { k = 25; break b } l = ((c[g >> 2] | 0) >>> 14) + -131071 | 0; f = (l | 0) == -1 ? -1 : f + 1 + l | 0; if ((f | 0) == -1) { r = -1; z = -1; break } } } while (0); do if ((k | 0) == 25) { m = b + 28 | 0; do if (!n) { i = c[m >> 2] | 0; c[m >> 2] = -1; j = Kc(b, 2147450903) | 0; if ((i | 0) != -1) if ((j | 0) != -1) { h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; g = j; while (1) { k = h + (g << 2) | 0; l = c[k >> 2] | 0; f = (l >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = i + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[k >> 2] = (f << 14) + 2147467264 | l & 16383; o = j; break } } else o = i; else o = j } else o = -1; while (0); j = b + 20 | 0; n = b + 24 | 0; c[n >> 2] = c[j >> 2]; l = e << 6; k = Kc(b, l | 16387) | 0; c[n >> 2] = c[j >> 2]; l = Kc(b, l | 8388611) | 0; c[n >> 2] = c[j >> 2]; if ((o | 0) != -1) { f = c[m >> 2] | 0; if ((f | 0) == -1) { c[m >> 2] = o; r = k; z = l; break } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { i = h + (f << 2) | 0; j = c[i >> 2] | 0; g = (j >>> 14) + -131071 | 0; g = (g | 0) == -1 ? -1 : f + 1 + g | 0; if ((g | 0) == -1) break; else f = g } f = o + ~f | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[i >> 2] = (f << 14) + 2147467264 | j & 16383; r = k; z = l; break } } else { r = k; z = l } } while (0); o = c[b + 20 >> 2] | 0; c[b + 24 >> 2] = o; f = c[x >> 2] | 0; c: do if ((f | 0) != -1) { m = e << 6; n = m & 16320; l = c[(c[b >> 2] | 0) + 12 >> 2] | 0; if ((e | 0) == 255) { while (1) { k = l + (f << 2) | 0; j = c[k >> 2] | 0; i = (j >>> 14) + -131071 | 0; h = f; f = (i | 0) == -1 ? -1 : f + 1 + i | 0; if ((h | 0) > 0 ? (p = k + -4 | 0, q = c[p >> 2] | 0, (a[4156 + (q & 63) >> 0] | 0) < 0) : 0) { g = p; i = q } else { g = k; i = j } if ((i & 63 | 0) == 28) { c[g >> 2] = i & 8372224 | i >>> 23 << 6 | 27; g = o + ~h | 0; if ((((g | 0) > -1 ? g : 0 - g | 0) | 0) > 131071) { k = 60; break } g = c[k >> 2] & 16383 | (g << 14) + 2147467264 } else { g = r + ~h | 0; if ((((g | 0) > -1 ? g : 0 - g | 0) | 0) > 131071) { k = 63; break } g = j & 16383 | (g << 14) + 2147467264 } c[k >> 2] = g; if ((f | 0) == -1) break c } if ((k | 0) == 60) { q = b + 12 | 0; q = c[q >> 2] | 0; He(q, 2480) } else if ((k | 0) == 63) { q = b + 12 | 0; q = c[q >> 2] | 0; He(q, 2480) } } else s = f; while (1) { j = l + (s << 2) | 0; i = c[j >> 2] | 0; q = (i >>> 14) + -131071 | 0; h = s; s = (q | 0) == -1 ? -1 : s + 1 + q | 0; if ((h | 0) > 0 ? (t = j + -4 | 0, u = c[t >> 2] | 0, (a[4156 + (u & 63) >> 0] | 0) < 0) : 0) { g = t; f = u } else { g = j; f = i } if ((f & 63 | 0) == 28) { if ((f >>> 23 | 0) == (e | 0)) f = f & 8372224 | m | 27; else f = f & -16321 | n; c[g >> 2] = f; f = o + ~h | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { k = 60; break } f = c[j >> 2] & 16383 | (f << 14) + 2147467264 } else { f = r + ~h | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { k = 63; break } f = i & 16383 | (f << 14) + 2147467264 } c[j >> 2] = f; if ((s | 0) == -1) break c } if ((k | 0) == 60) { u = b + 12 | 0; u = c[u >> 2] | 0; He(u, 2480) } else if ((k | 0) == 63) { u = b + 12 | 0; u = c[u >> 2] | 0; He(u, 2480) } } while (0); f = c[C >> 2] | 0; if ((f | 0) == -1) { c[C >> 2] = -1; c[x >> 2] = -1; C = d + 8 | 0; c[C >> 2] = e; c[d >> 2] = 6; return } m = e << 6; n = m & 16320; l = c[(c[b >> 2] | 0) + 12 >> 2] | 0; if ((e | 0) == 255) { while (1) { k = l + (f << 2) | 0; j = c[k >> 2] | 0; u = (j >>> 14) + -131071 | 0; h = f; f = (u | 0) == -1 ? -1 : f + 1 + u | 0; if ((h | 0) > 0 ? (v = k + -4 | 0, w = c[v >> 2] | 0, (a[4156 + (w & 63) >> 0] | 0) < 0) : 0) { g = v; i = w } else { g = k; i = j } if ((i & 63 | 0) == 28) { c[g >> 2] = i & 8372224 | i >>> 23 << 6 | 27; g = o + ~h | 0; if ((((g | 0) > -1 ? g : 0 - g | 0) | 0) > 131071) { k = 85; break } g = c[k >> 2] & 16383 | (g << 14) + 2147467264 } else { g = z + ~h | 0; if ((((g | 0) > -1 ? g : 0 - g | 0) | 0) > 131071) { k = 88; break } g = j & 16383 | (g << 14) + 2147467264 } c[k >> 2] = g; if ((f | 0) == -1) { k = 91; break } } if ((k | 0) == 85) { w = b + 12 | 0; w = c[w >> 2] | 0; He(w, 2480) } else if ((k | 0) == 88) { w = b + 12 | 0; w = c[w >> 2] | 0; He(w, 2480) } else if ((k | 0) == 91) { c[C >> 2] = -1; c[x >> 2] = -1; C = d + 8 | 0; c[C >> 2] = e; c[d >> 2] = 6; return } } else y = f; while (1) { j = l + (y << 2) | 0; i = c[j >> 2] | 0; w = (i >>> 14) + -131071 | 0; h = y; y = (w | 0) == -1 ? -1 : y + 1 + w | 0; if ((h | 0) > 0 ? (A = j + -4 | 0, B = c[A >> 2] | 0, (a[4156 + (B & 63) >> 0] | 0) < 0) : 0) { g = A; f = B } else { g = j; f = i } if ((f & 63 | 0) == 28) { if ((f >>> 23 | 0) == (e | 0)) f = f & 8372224 | m | 27; else f = f & -16321 | n; c[g >> 2] = f; f = o + ~h | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { k = 85; break } f = c[j >> 2] & 16383 | (f << 14) + 2147467264 } else { f = z + ~h | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) { k = 88; break } f = i & 16383 | (f << 14) + 2147467264 } c[j >> 2] = f; if ((y | 0) == -1) { k = 91; break } } if ((k | 0) == 85) { C = b + 12 | 0; C = c[C >> 2] | 0; He(C, 2480) } else if ((k | 0) == 88) { C = b + 12 | 0; C = c[C >> 2] | 0; He(C, 2480) } else if ((k | 0) == 91) { c[C >> 2] = -1; c[x >> 2] = -1; C = d + 8 | 0; c[C >> 2] = e; c[d >> 2] = 6; return } } function dd(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0.0; m = i; i = i + 32 | 0; g = m + 16 | 0; j = m; ad(a, b); f = c[b >> 2] | 0; a: do switch (f | 0) { case 1: { j = e + 1 | 0; f = c[a + 20 >> 2] | 0; do if ((f | 0) > (c[a + 24 >> 2] | 0) ? (k = (c[(c[a >> 2] | 0) + 12 >> 2] | 0) + (f + -1 << 2) | 0, l = c[k >> 2] | 0, (l & 63 | 0) == 4) : 0) { f = l >>> 6 & 255; g = f + (l >>> 23) | 0; if ((f | 0) > (e | 0) | (g + 1 | 0) < (e | 0) ? (f | 0) < (e | 0) | (f | 0) > (j | 0) : 0) break; a = (f | 0) < (e | 0) ? f : e; c[k >> 2] = a << 6 & 16320 | l & 8372287 | ((g | 0) <= (e | 0) ? e : g) - a << 23; break a } while (0); Kc(a, e << 6 | 4) | 0; break } case 2: case 3: { Kc(a, e << 6 | ((f | 0) == 2 & 1) << 23 | 3) | 0; break } case 4: { f = c[b + 8 >> 2] | 0; g = e << 6; if ((f | 0) < 262144) { Kc(a, g | f << 14 | 1) | 0; break a } else { Kc(a, g | 2) | 0; Kc(a, f << 6 | 39) | 0; break a } } case 5: { n = +h[b + 8 >> 3]; h[g >> 3] = n; f = c[(c[a + 12 >> 2] | 0) + 52 >> 2] | 0; h[j >> 3] = n; c[j + 8 >> 2] = 3; if (n != n | 0.0 != 0.0 | n == 0.0) { l = f + 8 | 0; k = c[l >> 2] | 0; c[l >> 2] = k + 16; f = Mf(f, g, 8) | 0; c[k >> 2] = f; c[k + 8 >> 2] = d[f + 4 >> 0] | 0 | 64; f = Yc(a, (c[l >> 2] | 0) + -16 | 0, j) | 0; c[l >> 2] = (c[l >> 2] | 0) + -16 } else f = Yc(a, j, j) | 0; g = e << 6; if ((f | 0) < 262144) { Kc(a, g | f << 14 | 1) | 0; break a } else { Kc(a, g | 2) | 0; Kc(a, f << 6 | 39) | 0; break a } } case 11: { a = (c[(c[a >> 2] | 0) + 12 >> 2] | 0) + (c[b + 8 >> 2] << 2) | 0; c[a >> 2] = c[a >> 2] & -16321 | e << 6 & 16320; break } case 6: { f = c[b + 8 >> 2] | 0; if ((f | 0) != (e | 0)) Kc(a, f << 23 | e << 6) | 0; break } default: { i = m; return } } while (0); c[b + 8 >> 2] = e; c[b >> 2] = 6; i = m; return } function ed(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; ad(b, e); if ((c[e >> 2] | 0) == 6) { h = e + 8 | 0; f = c[h >> 2] | 0; if ((c[e + 16 >> 2] | 0) == (c[e + 20 >> 2] | 0)) { e = f; return e | 0 } if ((f | 0) >= (d[b + 46 >> 0] | 0 | 0)) { cd(b, e, f); e = c[h >> 2] | 0; return e | 0 } } ad(b, e); if (((c[e >> 2] | 0) == 6 ? (g = c[e + 8 >> 2] | 0, (g & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (g | 0) : 0) { h = b + 48 | 0; a[h >> 0] = (a[h >> 0] | 0) + -1 << 24 >> 24 } f = b + 48 | 0; g = (d[f >> 0] | 0) + 1 | 0; h = (c[b >> 2] | 0) + 78 | 0; do if (g >>> 0 > (d[h >> 0] | 0) >>> 0) if (g >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { i = g & 255; a[h >> 0] = i; break } else i = g & 255; while (0); a[f >> 0] = i; cd(b, e, (i & 255) + -1 | 0); e = c[e + 8 >> 2] | 0; return e | 0 } function fd(a, b) { a = a | 0; b = b | 0; if ((c[b >> 2] | 0) == 8 ? (c[b + 16 >> 2] | 0) == (c[b + 20 >> 2] | 0) : 0) return; ed(a, b) | 0; return } function gd(a, b) { a = a | 0; b = b | 0; if ((c[b + 16 >> 2] | 0) == (c[b + 20 >> 2] | 0)) { ad(a, b); return } else { ed(a, b) | 0; return } } function hd(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, j = 0, k = 0, l = 0, m = 0.0, n = 0; l = i; i = i + 32 | 0; j = l + 16 | 0; k = l; if ((c[b + 16 >> 2] | 0) == (c[b + 20 >> 2] | 0)) ad(a, b); else ed(a, b) | 0; f = c[b >> 2] | 0; switch (f | 0) { case 1: case 3: case 2: { if ((c[a + 32 >> 2] | 0) < 256) { if ((f | 0) == 1) { c[k + 8 >> 2] = 0; c[j >> 2] = c[a + 4 >> 2]; c[j + 8 >> 2] = 69; e = Yc(a, j, k) | 0 } else { c[j >> 2] = (f | 0) == 2 & 1; c[j + 8 >> 2] = 1; e = Yc(a, j, j) | 0 } c[b + 8 >> 2] = e; c[b >> 2] = 4; b = e | 256; i = l; return b | 0 } break } case 5: { f = b + 8 | 0; m = +h[f >> 3]; h[j >> 3] = m; e = c[(c[a + 12 >> 2] | 0) + 52 >> 2] | 0; h[k >> 3] = m; c[k + 8 >> 2] = 3; if (m != m | 0.0 != 0.0 | m == 0.0) { g = e + 8 | 0; n = c[g >> 2] | 0; c[g >> 2] = n + 16; e = Mf(e, j, 8) | 0; c[n >> 2] = e; c[n + 8 >> 2] = d[e + 4 >> 0] | 0 | 64; e = Yc(a, (c[g >> 2] | 0) + -16 | 0, k) | 0; c[g >> 2] = (c[g >> 2] | 0) + -16 } else e = Yc(a, k, k) | 0; c[f >> 2] = e; c[b >> 2] = 4; g = 15; break } case 4: { e = c[b + 8 >> 2] | 0; g = 15; break } default: { } }if ((g | 0) == 15 ? (e | 0) < 256 : 0) { n = e | 256; i = l; return n | 0 } n = ed(a, b) | 0; i = l; return n | 0 } function id(b, f, g) { b = b | 0; f = f | 0; g = g | 0; var h = 0; switch (c[f >> 2] | 0) { case 7: { if (((c[g >> 2] | 0) == 6 ? (h = c[g + 8 >> 2] | 0, (h & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0) <= (h | 0) : 0) { h = b + 48 | 0; a[h >> 0] = (a[h >> 0] | 0) + -1 << 24 >> 24 } cd(b, g, c[f + 8 >> 2] | 0); return } case 8: { Kc(b, (ed(b, g) | 0) << 6 | c[f + 8 >> 2] << 23 | 9) | 0; break } case 9: { h = f + 8 | 0; f = (a[h + 3 >> 0] | 0) == 7 ? 10 : 8; Kc(b, (hd(b, g) | 0) << 14 | f | d[h + 2 >> 0] << 6 | e[h >> 1] << 23) | 0; break } default: { } }if ((c[g >> 2] | 0) != 6) return; f = c[g + 8 >> 2] | 0; if (f & 256 | 0) return; if ((d[b + 46 >> 0] | 0) > (f | 0)) return; b = b + 48 | 0; a[b >> 0] = (a[b >> 0] | 0) + -1 << 24 >> 24; return } function jd(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; ed(b, e) | 0; g = e + 8 | 0; j = c[g >> 2] | 0; if ((c[e >> 2] | 0) == 6 & (j & 256 | 0) == 0 ? (d[b + 46 >> 0] | 0 | 0) <= (j | 0) : 0) { k = b + 48 | 0; a[k >> 0] = (a[k >> 0] | 0) + -1 << 24 >> 24 } k = b + 48 | 0; i = d[k >> 0] | 0; c[g >> 2] = i; c[e >> 2] = 6; e = i + 2 | 0; g = (c[b >> 2] | 0) + 78 | 0; do if (e >>> 0 > (d[g >> 0] | 0) >>> 0) if (e >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { h = e & 255; a[g >> 0] = h; break } else h = e & 255; while (0); a[k >> 0] = h; Kc(b, j << 23 | i << 6 | (hd(b, f) | 0) << 14 | 12) | 0; if ((c[f >> 2] | 0) != 6) return; e = c[f + 8 >> 2] | 0; if (e & 256 | 0) return; if ((d[b + 46 >> 0] | 0 | 0) > (e | 0)) return; a[k >> 0] = (a[k >> 0] | 0) + -1 << 24 >> 24; return } function kd(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; ad(b, e); h = c[e >> 2] | 0; a: do switch (h | 0) { case 10: { i = e + 8 | 0; o = c[i >> 2] | 0; h = (c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (o << 2) | 0; if (!((o | 0) > 0 ? (g = h + -4 | 0, f = c[g >> 2] | 0, (a[4156 + (f & 63) >> 0] | 0) < 0) : 0)) { g = h; f = c[h >> 2] | 0 } c[g >> 2] = ((f & 16320 | 0) == 0 & 1) << 6 | f & -16321; k = c[i >> 2] | 0; o = 32; break } case 2: case 5: case 4: break; default: { i = e + 8 | 0; switch (h | 0) { case 11: { f = c[(c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (c[i >> 2] << 2) >> 2] | 0; if ((f & 63 | 0) == 20) { j = b + 20 | 0; c[j >> 2] = (c[j >> 2] | 0) + -1; Kc(b, f >>> 23 << 6 | 16411) | 0; j = b + 28 | 0; i = c[j >> 2] | 0; c[j >> 2] = -1; j = Kc(b, 2147450903) | 0; if ((i | 0) == -1) { k = j; o = 32; break a } if ((j | 0) == -1) { k = i; o = 33; break a } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; g = j; while (1) { l = h + (g << 2) | 0; m = c[l >> 2] | 0; f = (m >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = i + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[l >> 2] = (f << 14) + 2147467264 | m & 16383; k = j; o = 32; break a } } else o = 15; break } case 6: { o = 22; break } default: o = 15 }if ((o | 0) == 15) { f = b + 48 | 0; g = (d[f >> 0] | 0) + 1 | 0; h = (c[b >> 2] | 0) + 78 | 0; do if (g >>> 0 > (d[h >> 0] | 0) >>> 0) if (g >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { j = g & 255; a[h >> 0] = j; break } else j = g & 255; while (0); a[f >> 0] = j; dd(b, e, (j & 255) + -1 | 0); if ((c[e >> 2] | 0) == 6) o = 22; else n = c[i >> 2] | 0 } if ((o | 0) == 22) { f = c[i >> 2] | 0; if ((f & 256 | 0) == 0 ? (d[b + 46 >> 0] | 0) <= (f | 0) : 0) { n = b + 48 | 0; a[n >> 0] = (a[n >> 0] | 0) + -1 << 24 >> 24; n = f } else n = f } Kc(b, n << 23 | 16348) | 0; j = b + 28 | 0; i = c[j >> 2] | 0; c[j >> 2] = -1; j = Kc(b, 2147450903) | 0; if ((i | 0) != -1) if ((j | 0) != -1) { h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; g = j; while (1) { l = h + (g << 2) | 0; m = c[l >> 2] | 0; f = (m >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = i + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[l >> 2] = (f << 14) + 2147467264 | m & 16383; k = j; o = 32; break a } } else { k = i; o = 33 } else { k = j; o = 32 } } } while (0); if ((o | 0) == 32 ? (k | 0) != -1 : 0) o = 33; do if ((o | 0) == 33) { f = e + 20 | 0; g = c[f >> 2] | 0; if ((g | 0) == -1) { c[f >> 2] = k; break } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { i = h + (g << 2) | 0; j = c[i >> 2] | 0; f = (j >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = k + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[i >> 2] = (f << 14) + 2147467264 | j & 16383; break } } while (0); l = e + 16 | 0; k = c[l >> 2] | 0; c[b + 24 >> 2] = c[b + 20 >> 2]; f = b + 28 | 0; if ((k | 0) == -1) { c[l >> 2] = -1; return } g = c[f >> 2] | 0; if ((g | 0) == -1) { c[f >> 2] = k; c[l >> 2] = -1; return } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { i = h + (g << 2) | 0; j = c[i >> 2] | 0; f = (j >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = k + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); c[i >> 2] = (f << 14) + 2147467264 | j & 16383; c[l >> 2] = -1; return } function ld(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; ad(b, e); g = c[e >> 2] | 0; a: do switch (g | 0) { case 10: { k = c[e + 8 >> 2] | 0; o = 29; break } case 3: case 1: break; default: { j = e + 8 | 0; switch (g | 0) { case 11: { g = c[(c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (c[j >> 2] << 2) >> 2] | 0; if ((g & 63 | 0) == 20) { l = b + 20 | 0; c[l >> 2] = (c[l >> 2] | 0) + -1; Kc(b, g >>> 23 << 6 | 27) | 0; l = b + 28 | 0; j = c[l >> 2] | 0; c[l >> 2] = -1; l = Kc(b, 2147450903) | 0; if ((j | 0) == -1) { k = l; o = 29; break a } if ((l | 0) == -1) { k = j; o = 30; break a } i = c[(c[b >> 2] | 0) + 12 >> 2] | 0; h = l; while (1) { m = i + (h << 2) | 0; n = c[m >> 2] | 0; g = (n >>> 14) + -131071 | 0; g = (g | 0) == -1 ? -1 : h + 1 + g | 0; if ((g | 0) == -1) break; else h = g } g = j + ~h | 0; if ((((g | 0) > -1 ? g : 0 - g | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[m >> 2] = (g << 14) + 2147467264 | n & 16383; k = l; o = 29; break a } } else o = 12; break } case 6: { o = 19; break } default: o = 12 }if ((o | 0) == 12) { f = b + 48 | 0; g = (d[f >> 0] | 0) + 1 | 0; h = (c[b >> 2] | 0) + 78 | 0; do if (g >>> 0 > (d[h >> 0] | 0) >>> 0) if (g >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { i = g & 255; a[h >> 0] = i; break } else i = g & 255; while (0); a[f >> 0] = i; dd(b, e, (i & 255) + -1 | 0); if ((c[e >> 2] | 0) == 6) o = 19; else f = c[j >> 2] | 0 } if ((o | 0) == 19) { f = c[j >> 2] | 0; if ((f & 256 | 0) == 0 ? (d[b + 46 >> 0] | 0 | 0) <= (f | 0) : 0) { n = b + 48 | 0; a[n >> 0] = (a[n >> 0] | 0) + -1 << 24 >> 24 } } Kc(b, f << 23 | 32732) | 0; j = b + 28 | 0; i = c[j >> 2] | 0; c[j >> 2] = -1; j = Kc(b, 2147450903) | 0; if ((i | 0) != -1) if ((j | 0) != -1) { h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; f = j; while (1) { l = h + (f << 2) | 0; m = c[l >> 2] | 0; g = (m >>> 14) + -131071 | 0; g = (g | 0) == -1 ? -1 : f + 1 + g | 0; if ((g | 0) == -1) break; else f = g } f = i + ~f | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[l >> 2] = (f << 14) + 2147467264 | m & 16383; k = j; o = 29; break a } } else { k = i; o = 30 } else { k = j; o = 29 } } } while (0); if ((o | 0) == 29 ? (k | 0) != -1 : 0) o = 30; do if ((o | 0) == 30) { f = e + 16 | 0; g = c[f >> 2] | 0; if ((g | 0) == -1) { c[f >> 2] = k; break } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { i = h + (g << 2) | 0; j = c[i >> 2] | 0; f = (j >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = k + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[i >> 2] = (f << 14) + 2147467264 | j & 16383; break } } while (0); l = e + 20 | 0; k = c[l >> 2] | 0; c[b + 24 >> 2] = c[b + 20 >> 2]; f = b + 28 | 0; if ((k | 0) == -1) { c[l >> 2] = -1; return } g = c[f >> 2] | 0; if ((g | 0) == -1) { c[f >> 2] = k; c[l >> 2] = -1; return } h = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { i = h + (g << 2) | 0; j = c[i >> 2] | 0; f = (j >>> 14) + -131071 | 0; f = (f | 0) == -1 ? -1 : g + 1 + f | 0; if ((f | 0) == -1) break; else g = f } f = k + ~g | 0; if ((((f | 0) > -1 ? f : 0 - f | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); c[i >> 2] = (f << 14) + 2147467264 | j & 16383; c[l >> 2] = -1; return } function md(d, e, f) { d = d | 0; e = e | 0; f = f | 0; var g = 0; g = e + 8 | 0; a[g + 2 >> 0] = c[g >> 2]; b[g >> 1] = hd(d, f) | 0; a[g + 3 >> 0] = (c[e >> 2] | 0) == 8 ? 8 : 7; c[e >> 2] = 9; return } function nd(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = i; i = i + 32 | 0; l = s; c[l + 20 >> 2] = -1; c[l + 16 >> 2] = -1; c[l >> 2] = 5; h[l + 8 >> 3] = 0.0; switch (e | 0) { case 0: { if (((c[f >> 2] | 0) == 5 ? (c[f + 16 >> 2] | 0) == -1 : 0) ? (c[f + 20 >> 2] | 0) == -1 : 0) { r = f + 8 | 0; h[r >> 3] = -+h[r >> 3]; i = s; return } ed(b, f) | 0; od(b, 19, f, l, g); i = s; return } case 1: { ad(b, f); switch (c[f >> 2] | 0) { case 3: case 1: { c[f >> 2] = 2; break } case 2: case 5: case 4: { c[f >> 2] = 3; break } case 10: { m = c[f + 8 >> 2] | 0; e = (c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (m << 2) | 0; if (!((m | 0) > 0 ? (k = e + -4 | 0, j = c[k >> 2] | 0, (a[4156 + (j & 63) >> 0] | 0) < 0) : 0)) { k = e; j = c[e >> 2] | 0 } c[k >> 2] = ((j & 16320 | 0) == 0 & 1) << 6 | j & -16321; break } case 6: { n = 21; break } case 11: { j = b + 48 | 0; k = (d[j >> 0] | 0) + 1 | 0; e = (c[b >> 2] | 0) + 78 | 0; do if (k >>> 0 > (d[e >> 0] | 0) >>> 0) if (k >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { m = k & 255; a[e >> 0] = m; break } else m = k & 255; while (0); a[j >> 0] = m; dd(b, f, (m & 255) + -1 | 0); if ((c[f >> 2] | 0) == 6) n = 21; else { k = f + 8 | 0; j = k; k = c[k >> 2] | 0; n = 24 } break } default: { } }if ((n | 0) == 21) { j = f + 8 | 0; k = c[j >> 2] | 0; if ((k & 256 | 0) == 0 ? (d[b + 46 >> 0] | 0) <= (k | 0) : 0) { n = b + 48 | 0; a[n >> 0] = (a[n >> 0] | 0) + -1 << 24 >> 24; n = 24 } else n = 24 } if ((n | 0) == 24) { c[j >> 2] = Kc(b, k << 23 | 20) | 0; c[f >> 2] = 11 } n = f + 20 | 0; j = c[n >> 2] | 0; m = f + 16 | 0; k = c[m >> 2] | 0; c[n >> 2] = k; c[m >> 2] = j; if ((k | 0) != -1) { l = c[(c[b >> 2] | 0) + 12 >> 2] | 0; do { e = l + (k << 2) | 0; if ((k | 0) > 0 ? (o = e + -4 | 0, p = c[o >> 2] | 0, (a[4156 + (p & 63) >> 0] | 0) < 0) : 0) { j = o; g = p } else { j = e; g = c[e >> 2] | 0 } if ((g & 63 | 0) == 28) c[j >> 2] = g & 8372224 | g >>> 23 << 6 | 27; f = ((c[e >> 2] | 0) >>> 14) + -131071 | 0; k = (f | 0) == -1 ? -1 : k + 1 + f | 0 } while ((k | 0) != -1); j = c[m >> 2] | 0 } if ((j | 0) == -1) { i = s; return } l = c[(c[b >> 2] | 0) + 12 >> 2] | 0; do { g = l + (j << 2) | 0; if ((j | 0) > 0 ? (r = g + -4 | 0, q = c[r >> 2] | 0, (a[4156 + (q & 63) >> 0] | 0) < 0) : 0) { k = r; e = q } else { k = g; e = c[g >> 2] | 0 } if ((e & 63 | 0) == 28) c[k >> 2] = e & 8372224 | e >>> 23 << 6 | 27; b = ((c[g >> 2] | 0) >>> 14) + -131071 | 0; j = (b | 0) == -1 ? -1 : j + 1 + b | 0 } while ((j | 0) != -1); i = s; return } case 2: { ed(b, f) | 0; od(b, 21, f, l, g); i = s; return } default: { i = s; return } } } function od(b, e, f, g, i) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; i = i | 0; var j = 0.0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; if (((((((c[f >> 2] | 0) == 5 ? (c[f + 16 >> 2] | 0) == -1 : 0) ? (c[f + 20 >> 2] | 0) == -1 : 0) ? (c[g >> 2] | 0) == 5 : 0) ? (c[g + 16 >> 2] | 0) == -1 : 0) ? (c[g + 20 >> 2] | 0) == -1 : 0) ? (j = +h[g + 8 >> 3], k = f + 8 | 0, !((e | 1 | 0) == 17 & j == 0.0)) : 0) { h[k >> 3] = +Ye(e + -13 | 0, +h[k >> 3], j); return } switch (e | 0) { case 19: case 21: { l = 0; break } default: l = hd(b, g) | 0 }k = hd(b, f) | 0; if ((k | 0) > (l | 0)) { if (((c[f >> 2] | 0) == 6 ? (m = c[f + 8 >> 2] | 0, (m & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (m | 0) : 0) { p = b + 48 | 0; a[p >> 0] = (a[p >> 0] | 0) + -1 << 24 >> 24 } if (((c[g >> 2] | 0) == 6 ? (n = c[g + 8 >> 2] | 0, (n & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (n | 0) : 0) { p = b + 48 | 0; a[p >> 0] = (a[p >> 0] | 0) + -1 << 24 >> 24 } } else { if (((c[g >> 2] | 0) == 6 ? (o = c[g + 8 >> 2] | 0, (o & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (o | 0) : 0) { o = b + 48 | 0; a[o >> 0] = (a[o >> 0] | 0) + -1 << 24 >> 24 } if (((c[f >> 2] | 0) == 6 ? (p = c[f + 8 >> 2] | 0, (p & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (p | 0) : 0) { p = b + 48 | 0; a[p >> 0] = (a[p >> 0] | 0) + -1 << 24 >> 24 } } c[f + 8 >> 2] = Kc(b, l << 14 | e | k << 23) | 0; c[f >> 2] = 11; c[(c[(c[b >> 2] | 0) + 20 >> 2] | 0) + ((c[b + 20 >> 2] | 0) + -1 << 2) >> 2] = i; return } function pd(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0; switch (e | 0) { case 13: { kd(b, f); return } case 14: { ld(b, f); return } case 6: { ad(b, f); if (((c[f >> 2] | 0) == 6 ? (g = c[f + 8 >> 2] | 0, (g & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (g | 0) : 0) { h = b + 48 | 0; a[h >> 0] = (a[h >> 0] | 0) + -1 << 24 >> 24 } e = b + 48 | 0; g = (d[e >> 0] | 0) + 1 | 0; h = (c[b >> 2] | 0) + 78 | 0; do if (g >>> 0 > (d[h >> 0] | 0) >>> 0) if (g >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { i = g & 255; a[h >> 0] = i; break } else i = g & 255; while (0); a[e >> 0] = i; cd(b, f, (i & 255) + -1 | 0); return } case 5: case 4: case 3: case 2: case 1: case 0: { if (((c[f >> 2] | 0) == 5 ? (c[f + 16 >> 2] | 0) == -1 : 0) ? (c[f + 20 >> 2] | 0) == -1 : 0) return; hd(b, f) | 0; return } default: { hd(b, f) | 0; return } } } function qd(b, e, f, g, h) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, l = 0, m = 0; switch (e | 0) { case 13: { ad(b, g); e = g + 20 | 0; m = c[f + 20 >> 2] | 0; do if ((m | 0) != -1) { i = c[e >> 2] | 0; if ((i | 0) == -1) { c[e >> 2] = m; break } j = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { k = j + (i << 2) | 0; l = c[k >> 2] | 0; e = (l >>> 14) + -131071 | 0; e = (e | 0) == -1 ? -1 : i + 1 + e | 0; if ((e | 0) == -1) break; else i = e } e = m + ~i | 0; if ((((e | 0) > -1 ? e : 0 - e | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[k >> 2] = (e << 14) + 2147467264 | l & 16383; break } } while (0); c[f >> 2] = c[g >> 2]; c[f + 4 >> 2] = c[g + 4 >> 2]; c[f + 8 >> 2] = c[g + 8 >> 2]; c[f + 12 >> 2] = c[g + 12 >> 2]; c[f + 16 >> 2] = c[g + 16 >> 2]; c[f + 20 >> 2] = c[g + 20 >> 2]; return } case 14: { ad(b, g); e = g + 16 | 0; m = c[f + 16 >> 2] | 0; do if ((m | 0) != -1) { i = c[e >> 2] | 0; if ((i | 0) == -1) { c[e >> 2] = m; break } j = c[(c[b >> 2] | 0) + 12 >> 2] | 0; while (1) { k = j + (i << 2) | 0; l = c[k >> 2] | 0; e = (l >>> 14) + -131071 | 0; e = (e | 0) == -1 ? -1 : i + 1 + e | 0; if ((e | 0) == -1) break; else i = e } e = m + ~i | 0; if ((((e | 0) > -1 ? e : 0 - e | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); else { c[k >> 2] = (e << 14) + 2147467264 | l & 16383; break } } while (0); c[f >> 2] = c[g >> 2]; c[f + 4 >> 2] = c[g + 4 >> 2]; c[f + 8 >> 2] = c[g + 8 >> 2]; c[f + 12 >> 2] = c[g + 12 >> 2]; c[f + 16 >> 2] = c[g + 16 >> 2]; c[f + 20 >> 2] = c[g + 20 >> 2]; return } case 6: { if ((c[g + 16 >> 2] | 0) == (c[g + 20 >> 2] | 0)) ad(b, g); else ed(b, g) | 0; if ((c[g >> 2] | 0) == 11 ? (j = g + 8 | 0, k = (c[(c[b >> 2] | 0) + 12 >> 2] | 0) + (c[j >> 2] << 2) | 0, l = c[k >> 2] | 0, (l & 63 | 0) == 22) : 0) { e = f + 8 | 0; i = c[e >> 2] | 0; if ((c[f >> 2] | 0) == 6 & (i & 256 | 0) == 0 ? (d[b + 46 >> 0] | 0 | 0) <= (i | 0) : 0) { b = b + 48 | 0; a[b >> 0] = (a[b >> 0] | 0) + -1 << 24 >> 24 } c[k >> 2] = i << 23 | l & 8388607; c[f >> 2] = 11; c[e >> 2] = c[j >> 2]; return } ad(b, g); if (((c[g >> 2] | 0) == 6 ? (i = c[g + 8 >> 2] | 0, (i & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (i | 0) : 0) { l = b + 48 | 0; a[l >> 0] = (a[l >> 0] | 0) + -1 << 24 >> 24 } j = b + 48 | 0; e = (d[j >> 0] | 0) + 1 | 0; i = (c[b >> 2] | 0) + 78 | 0; do if (e >>> 0 > (d[i >> 0] | 0) >>> 0) if (e >>> 0 > 249) He(c[b + 12 >> 2] | 0, 2515); else { m = e & 255; a[i >> 0] = m; break } else m = e & 255; while (0); a[j >> 0] = m; cd(b, g, (m & 255) + -1 | 0); od(b, 22, f, g, h); return } case 5: case 4: case 3: case 2: case 1: case 0: { od(b, e + 13 | 0, f, g, h); return } case 9: case 8: case 7: { rd(b, e + 17 | 0, 1, f, g); return } case 12: case 11: case 10: { rd(b, e + 14 | 0, 0, f, g); return } default: return } } function rd(b, e, f, g, h) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, l = 0; k = hd(b, g) | 0; l = hd(b, h) | 0; if (((c[h >> 2] | 0) == 6 ? (i = c[h + 8 >> 2] | 0, (i & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (i | 0) : 0) { h = b + 48 | 0; a[h >> 0] = (a[h >> 0] | 0) + -1 << 24 >> 24 } if (((c[g >> 2] | 0) == 6 ? (j = c[g + 8 >> 2] | 0, (j & 256 | 0) == 0) : 0) ? (d[b + 46 >> 0] | 0 | 0) <= (j | 0) : 0) { h = b + 48 | 0; a[h >> 0] = (a[h >> 0] | 0) + -1 << 24 >> 24 } h = (e | 0) != 24 & (f | 0) == 0; Kc(b, (h ? 64 : f << 6) | e | (h ? l : k) << 23 | (h ? k : l) << 14) | 0; h = b + 28 | 0; j = c[h >> 2] | 0; c[h >> 2] = -1; h = Kc(b, 2147450903) | 0; if ((j | 0) == -1) { l = h; b = g + 8 | 0; c[b >> 2] = l; c[g >> 2] = 10; return } if ((h | 0) == -1) { l = j; b = g + 8 | 0; c[b >> 2] = l; c[g >> 2] = 10; return } f = c[(c[b >> 2] | 0) + 12 >> 2] | 0; e = h; while (1) { k = f + (e << 2) | 0; l = c[k >> 2] | 0; i = (l >>> 14) + -131071 | 0; i = (i | 0) == -1 ? -1 : e + 1 + i | 0; if ((i | 0) == -1) break; else e = i } e = j + ~e | 0; if ((((e | 0) > -1 ? e : 0 - e | 0) | 0) > 131071) He(c[b + 12 >> 2] | 0, 2480); c[k >> 2] = (e << 14) + 2147467264 | l & 16383; l = h; b = g + 8 | 0; c[b >> 2] = l; c[g >> 2] = 10; return } function sd(a, b) { a = a | 0; b = b | 0; c[(c[(c[a >> 2] | 0) + 20 >> 2] | 0) + ((c[a + 20 >> 2] | 0) + -1 << 2) >> 2] = b; return } function td(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0; g = ((e + -1 | 0) / 50 | 0) + 1 | 0; e = (f | 0) == -1 ? 0 : f; if ((g | 0) < 512) { Kc(b, d << 6 | e << 23 | g << 14 | 36) | 0; g = d + 1 | 0; g = g & 255; d = b + 48 | 0; a[d >> 0] = g; return } if ((g | 0) >= 67108864) He(c[b + 12 >> 2] | 0, 2560); Kc(b, d << 6 | e << 23 | 36) | 0; Kc(b, g << 6 | 39) | 0; g = d + 1 | 0; g = g & 255; d = b + 48 | 0; a[d >> 0] = g; return } function ud(a) { a = a | 0; return c[a + 52 >> 2] | 0 } function vd(a) { a = a | 0; return c[a + 44 >> 2] | 0 } function wd(a) { a = a | 0; return d[a + 40 >> 0] | 0 | 0 } function xd(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0, N = 0, O = 0; O = i; i = i + 16 | 0; N = O; M = b + 6 | 0; if ((a[M >> 0] | 0) == 1) { G = c[b + 16 >> 2] | 0; H = c[G >> 2] | 0; J = c[b + 28 >> 2] | 0; K = G + 20 | 0; c[G >> 2] = J + (c[K >> 2] | 0); c[K >> 2] = H - J } if ((a[e >> 0] | 0) == 62) { o = b + 8 | 0; H = (c[o >> 2] | 0) + -16 | 0; c[o >> 2] = H; e = e + 1 | 0; o = 0 } else { H = c[f + 96 >> 2] | 0; o = H; H = c[H >> 2] | 0 } J = H + 8 | 0; if ((c[J >> 2] & 31 | 0) == 6) K = c[H >> 2] | 0; else K = 0; g = a[e >> 0] | 0; a: do if (!(g << 24 >> 24)) j = 1; else { p = (K | 0) == 0; q = f + 16 | 0; r = f + 24 | 0; s = f + 28 | 0; t = f + 12 | 0; u = f + 36 | 0; v = K + 4 | 0; w = K + 12 | 0; x = (o | 0) == 0; y = f + 20 | 0; z = o + 18 | 0; A = o + 28 | 0; B = f + 32 | 0; C = f + 34 | 0; D = f + 33 | 0; E = K + 6 | 0; F = f + 35 | 0; G = f + 8 | 0; l = f + 4 | 0; m = o + 8 | 0; n = b + 12 | 0; k = e; j = 1; while (1) { b: do switch (g << 24 >> 24 | 0) { case 83: { if (!p ? (a[v >> 0] | 0) != 38 : 0) { h = c[w >> 2] | 0; f = c[h + 36 >> 2] | 0; f = (f | 0) == 0 ? 2866 : f + 16 | 0; c[q >> 2] = f; g = c[h + 64 >> 2] | 0; c[r >> 2] = g; c[s >> 2] = c[h + 68 >> 2]; g = (g | 0) == 0 ? 2869 : 2874 } else { c[q >> 2] = 2861; c[r >> 2] = -1; c[s >> 2] = -1; f = 2861; g = 2878 } c[t >> 2] = g; bf(u, f, 60); break } case 108: { if (!x ? (a[z >> 0] & 1) != 0 : 0) { f = c[(c[c[o >> 2] >> 2] | 0) + 12 >> 2] | 0; g = c[f + 20 >> 2] | 0; if (!g) f = 0; else f = c[g + (((c[A >> 2] | 0) - (c[f + 12 >> 2] | 0) >> 2) + -1 << 2) >> 2] | 0 } else f = -1; c[y >> 2] = f; break } case 117: { if (!p) { a[B >> 0] = a[E >> 0] | 0; if ((a[v >> 0] | 0) != 38) { h = c[w >> 2] | 0; a[C >> 0] = a[h + 77 >> 0] | 0; a[D >> 0] = a[h + 76 >> 0] | 0; break b } } else a[B >> 0] = 0; a[C >> 0] = 1; a[D >> 0] = 0; break } case 116: { if (x) f = 0; else f = d[z >> 0] & 64; a[F >> 0] = f; break } case 110: { c: do if ((!x ? (a[z >> 0] & 64) == 0 : 0) ? (I = c[m >> 2] | 0, (a[I + 18 >> 0] & 1) != 0) : 0) { f = c[(c[c[I >> 2] >> 2] | 0) + 12 >> 2] | 0; h = c[f + 12 >> 2] | 0; g = ((c[I + 28 >> 2] | 0) - h >> 2) + -1 | 0; h = c[h + (g << 2) >> 2] | 0; do switch (h & 63) { case 30: case 29: { h = Cd(f, g, h >>> 6 & 255, l) | 0; c[G >> 2] = h; if (!h) break c; else break b } case 34: { c[l >> 2] = 2880; f = 2880; break } case 7: case 6: case 12: { f = 0; L = 47; break } case 10: case 8: { f = 1; L = 47; break } case 24: { f = 5; L = 47; break } case 13: { f = 6; L = 47; break } case 14: { f = 7; L = 47; break } case 15: { f = 8; L = 47; break } case 16: { f = 9; L = 47; break } case 17: { f = 10; L = 47; break } case 18: { f = 11; L = 47; break } case 19: { f = 12; L = 47; break } case 21: { f = 4; L = 47; break } case 25: { f = 13; L = 47; break } case 26: { f = 14; L = 47; break } case 22: { f = 15; L = 47; break } default: { L = 48; break c } } while (0); if ((L | 0) == 47) { L = 0; c[l >> 2] = (c[(c[n >> 2] | 0) + 184 + (f << 2) >> 2] | 0) + 16; f = 2893 } c[G >> 2] = f; break b } else L = 48; while (0); if ((L | 0) == 48) { L = 0; c[G >> 2] = 0 } c[G >> 2] = 15616; c[l >> 2] = 0; break } case 102: case 76: break; default: j = 0 } while (0); k = k + 1 | 0; g = a[k >> 0] | 0; if (!(g << 24 >> 24)) break a } } while (0); if (pm(e, 102) | 0) { L = b + 8 | 0; I = c[L >> 2] | 0; F = H; G = c[F + 4 >> 2] | 0; H = I; c[H >> 2] = c[F >> 2]; c[H + 4 >> 2] = G; c[I + 8 >> 2] = c[J >> 2]; c[L >> 2] = (c[L >> 2] | 0) + 16 } if ((a[M >> 0] | 0) == 1) { I = c[b + 16 >> 2] | 0; J = c[I >> 2] | 0; L = c[b + 28 >> 2] | 0; M = I + 20 | 0; c[I >> 2] = L + (c[M >> 2] | 0); c[M >> 2] = J - L } if (!(pm(e, 76) | 0)) { i = O; return j | 0 } if (K | 0 ? (a[K + 4 >> 0] | 0) != 38 : 0) { f = K + 12 | 0; g = c[(c[f >> 2] | 0) + 20 >> 2] | 0; h = Xf(b) | 0; M = b + 8 | 0; L = c[M >> 2] | 0; c[L >> 2] = h; c[L + 8 >> 2] = 69; c[M >> 2] = (c[M >> 2] | 0) + 16; c[N >> 2] = 1; c[N + 8 >> 2] = 1; if ((c[(c[f >> 2] | 0) + 52 >> 2] | 0) > 0) { e = 0; do { Uf(b, h, c[g + (e << 2) >> 2] | 0, N); e = e + 1 | 0 } while ((e | 0) < (c[(c[f >> 2] | 0) + 52 >> 2] | 0)) } i = O; return j | 0 } N = b + 8 | 0; b = c[N >> 2] | 0; c[b + 8 >> 2] = 0; c[N >> 2] = b + 16; i = O; return j | 0 } function yd(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0; j = b + 6 | 0; if ((a[j >> 0] | 0) == 1) { l = c[b + 16 >> 2] | 0; k = c[l >> 2] | 0; g = c[b + 28 >> 2] | 0; h = l + 20 | 0; c[l >> 2] = g + (c[h >> 2] | 0); c[h >> 2] = k - g } a: do if (!e) { e = c[b + 8 >> 2] | 0; if ((c[e + -8 >> 2] | 0) == 70) e = ie(c[(c[e + -16 >> 2] | 0) + 12 >> 2] | 0, f, 0) | 0; else e = 0 } else { h = c[e + 96 >> 2] | 0; do if (a[h + 18 >> 0] & 1) if ((f | 0) < 0) { g = 0 - f | 0; e = c[h >> 2] | 0; f = d[(c[(c[e >> 2] | 0) + 12 >> 2] | 0) + 76 >> 0] | 0; if ((((c[h + 24 >> 2] | 0) - e >> 4) - f | 0) > (g | 0)) { g = e + (f << 4) + (g << 4) | 0; e = 2851; break } else { e = 0; break a } } else { g = c[h + 24 >> 2] | 0; e = c[(c[c[h >> 2] >> 2] | 0) + 12 >> 2] | 0; e = ie(e, f, ((c[h + 28 >> 2] | 0) - (c[e + 12 >> 2] | 0) >> 2) + -1 | 0) | 0; if (!e) { i = 11; break } else { i = 15; break } } else { g = (c[h >> 2] | 0) + 16 | 0; i = 11 } while (0); if ((i | 0) == 11) { if ((c[b + 16 >> 2] | 0) == (h | 0)) e = b + 8 | 0; else e = c[h + 12 >> 2] | 0; if ((f | 0) > 0 ? ((c[e >> 2] | 0) - g >> 4 | 0) >= (f | 0) : 0) { e = 2838; i = 15 } else { e = 0; break } } if ((i | 0) == 15) g = g + (f + -1 << 4) | 0; l = b + 8 | 0; k = c[l >> 2] | 0; f = g; h = c[f + 4 >> 2] | 0; i = k; c[i >> 2] = c[f >> 2]; c[i + 4 >> 2] = h; c[k + 8 >> 2] = c[g + 8 >> 2]; c[l >> 2] = (c[l >> 2] | 0) + 16 } while (0); if ((a[j >> 0] | 0) != 1) return e | 0; i = c[b + 16 >> 2] | 0; j = c[i >> 2] | 0; k = c[b + 28 >> 2] | 0; l = i + 20 | 0; c[i >> 2] = k + (c[l >> 2] | 0); c[l >> 2] = j - k; return e | 0 } function zd(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; if ((b | 0) < 0) { d = 0; return d | 0 } e = c[a + 16 >> 2] | 0; f = a + 72 | 0; if ((b | 0) != 0 & (e | 0) != (f | 0)) { a = e; while (1) { e = b + -1 | 0; a = c[a + 8 >> 2] | 0; if ((b | 0) > 1 & (a | 0) != (f | 0)) b = e; else { b = e; break } } } else a = e; if ((b | 0) != 0 | (a | 0) == (f | 0)) { d = 0; return d | 0 } c[d + 96 >> 2] = a; d = 1; return d | 0 } function Ad(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0; h = (d | 0) == 0 | (e | 0) == 0; g = c[b + 16 >> 2] | 0; if (a[g + 18 >> 0] & 1) c[b + 20 >> 2] = c[g + 28 >> 2]; c[b + 52 >> 2] = h ? 0 : d; c[b + 44 >> 2] = f; c[b + 48 >> 2] = f; a[b + 40 >> 0] = h ? 0 : e & 255; return 1 } function Bd(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0; j = b + 6 | 0; if ((a[j >> 0] | 0) == 1) { l = c[b + 16 >> 2] | 0; k = c[l >> 2] | 0; g = c[b + 28 >> 2] | 0; h = l + 20 | 0; c[l >> 2] = g + (c[h >> 2] | 0); c[h >> 2] = k - g } h = c[e + 96 >> 2] | 0; do if (a[h + 18 >> 0] & 1) if ((f | 0) < 0) { g = 0 - f | 0; e = c[h >> 2] | 0; f = d[(c[(c[e >> 2] | 0) + 12 >> 2] | 0) + 76 >> 0] | 0; if ((((c[h + 24 >> 2] | 0) - e >> 4) - f | 0) > (g | 0)) { g = e + (f << 4) + (g << 4) | 0; e = 2851; i = 13; break } else { e = 0; break } } else { g = c[h + 24 >> 2] | 0; e = c[(c[c[h >> 2] >> 2] | 0) + 12 >> 2] | 0; e = ie(e, f, ((c[h + 28 >> 2] | 0) - (c[e + 12 >> 2] | 0) >> 2) + -1 | 0) | 0; if (!e) { i = 8; break } else { i = 12; break } } else { g = (c[h >> 2] | 0) + 16 | 0; i = 8 } while (0); if ((i | 0) == 8) { if ((c[b + 16 >> 2] | 0) == (h | 0)) e = b + 8 | 0; else e = c[h + 12 >> 2] | 0; if ((f | 0) > 0 ? ((c[e >> 2] | 0) - g >> 4 | 0) >= (f | 0) : 0) { e = 2838; i = 12 } else e = 0 } if ((i | 0) == 12) { g = g + (f + -1 << 4) | 0; i = 13 } if ((i | 0) == 13) { l = c[b + 8 >> 2] | 0; h = l + -16 | 0; i = c[h + 4 >> 2] | 0; k = g; c[k >> 2] = c[h >> 2]; c[k + 4 >> 2] = i; c[g + 8 >> 2] = c[l + -8 >> 2] } l = b + 8 | 0; c[l >> 2] = (c[l >> 2] | 0) + -16; if ((a[j >> 0] | 0) != 1) return e | 0; i = c[b + 16 >> 2] | 0; j = c[i >> 2] | 0; k = c[b + 28 >> 2] | 0; l = i + 20 | 0; c[i >> 2] = k + (c[l >> 2] | 0); c[l >> 2] = j - k; return e | 0 } function Cd(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0; m = b + 12 | 0; a: while (1) { l = ie(b, e + 1 | 0, d) | 0; c[f >> 2] = l; if (l | 0) { d = 3383; h = 45; break } if ((d | 0) <= 0) { d = 0; h = 45; break } l = c[m >> 2] | 0; j = -1; g = 0; k = 0; do { h = c[l + (k << 2) >> 2] | 0; i = h >>> 6 & 255; switch (h & 63) { case 4: { if ((i | 0) <= (e | 0) ? (i + (h >>> 23) | 0) >= (e | 0) : 0) j = (k | 0) < (g | 0) ? -1 : k; break } case 34: { if ((i + 2 | 0) <= (e | 0)) j = (k | 0) < (g | 0) ? -1 : k; break } case 30: case 29: { if ((i | 0) <= (e | 0)) j = (k | 0) < (g | 0) ? -1 : k; break } case 23: { i = k + -131070 + (h >>> 14) | 0; g = (i | 0) > (g | 0) & ((i | 0) <= (d | 0) & (k | 0) < (i | 0)) ? i : g; break } case 27: { if ((i | 0) == (e | 0)) j = (k | 0) < (g | 0) ? -1 : k; break } default: if ((i | 0) == (e | 0) ? (a[4156 + (h & 63) >> 0] & 64) != 0 : 0) j = (k | 0) < (g | 0) ? -1 : k }k = k + 1 | 0 } while ((k | 0) != (d | 0)); if ((j | 0) == -1) { d = 0; h = 45; break } g = c[l + (j << 2) >> 2] | 0; switch (g & 63) { case 7: case 6: { h = 22; break a } case 5: { h = 33; break a } case 2: case 1: { h = 34; break a } case 12: { h = 39; break a } case 0: break; default: { d = 0; h = 45; break a } }e = g >>> 23; if (e >>> 0 >= (g >>> 6 & 255) >>> 0) { d = 0; h = 45; break } else d = j } if ((h | 0) == 22) { e = g >>> 14; d = g >>> 23; if ((g & 63 | 0) == 7) g = ie(b, d + 1 | 0, j) | 0; else { g = c[(c[b + 28 >> 2] | 0) + (d << 3) >> 2] | 0; g = (g | 0) == 0 ? 10032 : g + 16 | 0 } if (!(e & 256)) { b = Cd(b, j, e & 511, f) | 0; if (!((b | 0) != 0 ? (a[b >> 0] | 0) == 99 : 0)) h = 30 } else { e = e & 255; d = c[b + 8 >> 2] | 0; if ((c[d + (e << 4) + 8 >> 2] & 15 | 0) == 4) c[f >> 2] = (c[d + (e << 4) >> 2] | 0) + 16; else h = 30 } if ((h | 0) == 30) c[f >> 2] = 10032; if (!g) { f = 2911; return f | 0 } f = (Tl(g, 3534) | 0) == 0; f = f ? 2904 : 2911; return f | 0 } else if ((h | 0) == 33) { b = c[(c[b + 28 >> 2] | 0) + (g >>> 23 << 3) >> 2] | 0; c[f >> 2] = (b | 0) == 0 ? 10032 : b + 16 | 0; f = 2926; return f | 0 } else if ((h | 0) == 34) { if ((g & 63 | 0) == 1) e = g >>> 14; else e = (c[l + (j + 1 << 2) >> 2] | 0) >>> 6; d = c[b + 8 >> 2] | 0; if ((c[d + (e << 4) + 8 >> 2] & 15 | 0) != 4) { f = 0; return f | 0 } c[f >> 2] = (c[d + (e << 4) >> 2] | 0) + 16; f = 2917; return f | 0 } else if ((h | 0) == 39) { d = g >>> 14; if (!(d & 256)) { b = Cd(b, j, d & 511, f) | 0; if (b | 0 ? (a[b >> 0] | 0) == 99 : 0) { f = 5899; return f | 0 } } else { e = d & 255; d = c[b + 8 >> 2] | 0; if ((c[d + (e << 4) + 8 >> 2] & 15 | 0) == 4) { c[f >> 2] = (c[d + (e << 4) >> 2] | 0) + 16; f = 5899; return f | 0 } } c[f >> 2] = 10032; f = 5899; return f | 0 } else if ((h | 0) == 45) return d | 0; return 0 } function Dd(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; m = i; i = i + 32 | 0; o = m + 16 | 0; n = m; m = m + 24 | 0; k = c[b + 16 >> 2] | 0; c[m >> 2] = 0; l = c[148 + ((c[d + 8 >> 2] & 15) + 1 << 2) >> 2] | 0; a: do if (a[k + 18 >> 0] & 1) { j = c[c[k >> 2] >> 2] | 0; f = a[j + 6 >> 0] | 0; b: do if (f << 24 >> 24) { g = f & 255; f = 0; while (1) { if ((c[(c[j + 16 + (f << 2) >> 2] | 0) + 8 >> 2] | 0) == (d | 0)) break; f = f + 1 | 0; if ((f | 0) >= (g | 0)) break b } g = c[(c[(c[j + 12 >> 2] | 0) + 28 >> 2] | 0) + (f << 3) >> 2] | 0; g = (g | 0) == 0 ? 10032 : g + 16 | 0; c[m >> 2] = g; f = 2926; c[n >> 2] = e; h = n + 4 | 0; c[h >> 2] = f; h = n + 8 | 0; c[h >> 2] = g; h = n + 12 | 0; c[h >> 2] = l; Ed(b, 2934, n) } while (0); f = c[k + 24 >> 2] | 0; g = c[k + 4 >> 2] | 0; h = f; if (f >>> 0 < g >>> 0) { while (1) { if ((f | 0) == (d | 0)) break; f = f + 16 | 0; if (f >>> 0 >= g >>> 0) break a } f = c[j + 12 >> 2] | 0; f = Cd(f, ((c[k + 28 >> 2] | 0) - (c[f + 12 >> 2] | 0) >> 2) + -1 | 0, d - h >> 4, m) | 0; if (f | 0) { j = f; k = c[m >> 2] | 0; c[n >> 2] = e; m = n + 4 | 0; c[m >> 2] = j; m = n + 8 | 0; c[m >> 2] = k; m = n + 12 | 0; c[m >> 2] = l; Ed(b, 2934, n) } } } while (0); c[o >> 2] = e; c[o + 4 >> 2] = l; Ed(b, 2969, o) } function Ed(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0; g = i; i = i + 96 | 0; j = g; h = g + 32 | 0; g = g + 16 | 0; c[g >> 2] = e; g = $e(b, d, g) | 0; e = c[b + 16 >> 2] | 0; if (!(a[e + 18 >> 0] & 1)) Fd(b); f = c[(c[c[e >> 2] >> 2] | 0) + 12 >> 2] | 0; d = c[f + 20 >> 2] | 0; if (!d) e = 0; else e = c[d + (((c[e + 28 >> 2] | 0) - (c[f + 12 >> 2] | 0) >> 2) + -1 << 2) >> 2] | 0; d = c[f + 36 >> 2] | 0; if (!d) { a[h >> 0] = 63; a[h + 1 >> 0] = 0 } else bf(h, d + 16 | 0, 60); c[j >> 2] = h; c[j + 4 >> 2] = e; c[j + 8 >> 2] = g; af(b, 3488, j) | 0; Fd(b) } function Fd(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; b = c[a + 68 >> 2] | 0; if (!b) Ld(a, 2); b = (c[a + 28 >> 2] | 0) + b | 0; d = b + 8 | 0; if ((c[d >> 2] & 15 | 0) != 6) Ld(a, 6); e = a + 8 | 0; f = c[e >> 2] | 0; i = f + -16 | 0; g = c[i + 4 >> 2] | 0; h = f; c[h >> 2] = c[i >> 2]; c[h + 4 >> 2] = g; c[f + 8 >> 2] = c[f + -8 >> 2]; f = c[e >> 2] | 0; h = b; g = c[h + 4 >> 2] | 0; b = f + -16 | 0; c[b >> 2] = c[h >> 2]; c[b + 4 >> 2] = g; c[f + -8 >> 2] = c[d >> 2]; d = c[e >> 2] | 0; c[e >> 2] = d + 16; Wd(a, d + -16 | 0, 1, 0); Ld(a, 2) } function Gd(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = c[b + 8 >> 2] | 0; Dd(a, (e | 0) == 3 | (e & 15 | 0) == 4 ? d : b, 2994) } function Hd(a, b, c) { a = a | 0; b = b | 0; c = c | 0; var d = 0; d = i; i = i + 16 | 0; d = (hg(b, d) | 0) == 0; Dd(a, d ? b : c, 3006) } function Id(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = i; i = i + 16 | 0; g = f + 8 | 0; e = c[148 + ((c[b + 8 >> 2] & 15) + 1 << 2) >> 2] | 0; b = c[148 + ((c[d + 8 >> 2] & 15) + 1 << 2) >> 2] | 0; if ((e | 0) == (b | 0)) { c[f >> 2] = e; Ed(a, 3028, f) } else { c[g >> 2] = e; c[g + 4 >> 2] = b; Ed(a, 3061, g) } } function Jd(f, g, h) { f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0; u = f + 36 | 0; v = b[u >> 1] | 0; if (!g) g = 1; else g = (e[g + 38 >> 1] | 0) + 1 & 65535; s = f + 38 | 0; b[s >> 1] = g; b[u >> 1] = 0; r = f + 8 | 0; g = Nd(f, 20, (c[r >> 2] | 0) + (0 - h << 4) | 0) | 0; if ((g | 0) == -1) { t = 2; b[u >> 1] = v; v = b[s >> 1] | 0; v = v + -1 << 16 >> 16; b[s >> 1] = v; return t | 0 } if (g >>> 0 <= 1) { t = g; b[u >> 1] = v; v = b[s >> 1] | 0; v = v + -1 << 16 >> 16; b[s >> 1] = v; return t | 0 } p = f + 16 | 0; l = f + 28 | 0; m = f + 41 | 0; n = f + 68 | 0; o = f + 32 | 0; q = f + 12 | 0; a: while (1) { h = c[p >> 2] | 0; if (!h) break; while (1) { k = h + 18 | 0; if (a[k >> 0] & 16) break; h = c[h + 8 >> 2] | 0; if (!h) break a } i = (c[l >> 2] | 0) + (c[h + 20 >> 2] | 0) | 0; fe(f, i); switch (g | 0) { case 4: { j = c[(c[q >> 2] | 0) + 180 >> 2] | 0; c[i >> 2] = j; c[i + 8 >> 2] = d[j + 4 >> 0] | 0 | 64; break } case 6: { j = Mf(f, 3175, 23) | 0; c[i >> 2] = j; c[i + 8 >> 2] = d[j + 4 >> 0] | 0 | 64; break } default: { j = c[r >> 2] | 0; y = j + -16 | 0; x = c[y + 4 >> 2] | 0; w = i; c[w >> 2] = c[y >> 2]; c[w + 4 >> 2] = x; c[i + 8 >> 2] = c[j + -8 >> 2] } }j = i + 16 | 0; c[r >> 2] = j; c[p >> 2] = h; a[m >> 0] = a[h + 36 >> 0] | 0; b[u >> 1] = 0; i = h; do { y = c[i + 4 >> 2] | 0; j = j >>> 0 < y >>> 0 ? y : j; i = c[i + 8 >> 2] | 0 } while ((i | 0) != 0); y = j - (c[l >> 2] | 0) | 0; i = y >> 4; i = i + 11 + ((i + 1 | 0) / 8 | 0) | 0; i = (i | 0) > 1e6 ? 1e6 : i; if ((y | 0) <= 15999984 ? (i | 0) < (c[o >> 2] | 0) : 0) Od(f, i); c[n >> 2] = c[h + 32 >> 2]; a[k >> 0] = d[k >> 0] | 0 | 32; a[h + 37 >> 0] = g; g = Nd(f, 21, 0) | 0; if (g >>> 0 <= 1) { t = 24; break } } if ((t | 0) == 24) { b[u >> 1] = v; y = b[s >> 1] | 0; y = y + -1 << 16 >> 16; b[s >> 1] = y; return g | 0 } a[f + 6 >> 0] = g; h = c[r >> 2] | 0; switch (g | 0) { case 4: { y = c[(c[q >> 2] | 0) + 180 >> 2] | 0; c[h >> 2] = y; c[h + 8 >> 2] = d[y + 4 >> 0] | 0 | 64; break } case 6: { y = Mf(f, 3175, 23) | 0; c[h >> 2] = y; c[h + 8 >> 2] = d[y + 4 >> 0] | 0 | 64; break } default: { w = h + -16 | 0; x = c[w + 4 >> 2] | 0; y = h; c[y >> 2] = c[w >> 2]; c[y + 4 >> 2] = x; c[h + 8 >> 2] = c[h + -8 >> 2] } }y = h + 16 | 0; c[r >> 2] = y; c[(c[p >> 2] | 0) + 4 >> 2] = y; y = g; b[u >> 1] = v; x = b[s >> 1] | 0; x = x + -1 << 16 >> 16; b[s >> 1] = x; return y | 0 } function Kd(d, e, f, g) { d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, j = 0, k = 0, l = 0; l = i; i = i + 16 | 0; k = l + 8 | 0; j = l; h = c[d + 16 >> 2] | 0; if (b[d + 36 >> 1] | 0) if ((c[(c[d + 12 >> 2] | 0) + 172 >> 2] | 0) == (d | 0)) Ed(d, 3133, k); else Ed(d, 3091, j); a[d + 6 >> 0] = 1; c[h + 20 >> 2] = (c[h >> 2] | 0) - (c[d + 28 >> 2] | 0); if (a[h + 18 >> 0] & 1) { i = l; return 0 } c[h + 28 >> 2] = g; if (!g) { k = d + 8 | 0; k = c[k >> 2] | 0; l = 0 - e | 0; l = k + (l << 4) | 0; l = l + -16 | 0; c[h >> 2] = l; Ld(d, 1) } c[h + 24 >> 2] = f; k = d + 8 | 0; k = c[k >> 2] | 0; l = 0 - e | 0; l = k + (l << 4) | 0; l = l + -16 | 0; c[h >> 2] = l; Ld(d, 1); return 0 } function Ld(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; e = c[b + 64 >> 2] | 0; if (e | 0) { c[e + 160 >> 2] = d; sa(e + 4 | 0, 1) } a[b + 6 >> 0] = d; g = b + 12 | 0; e = c[g >> 2] | 0; f = c[e + 172 >> 2] | 0; if (c[f + 64 >> 2] | 0) { h = c[b + 8 >> 2] | 0; k = f + 8 | 0; f = c[k >> 2] | 0; c[k >> 2] = f + 16; k = h + -16 | 0; j = c[k + 4 >> 2] | 0; i = f; c[i >> 2] = c[k >> 2]; c[i + 4 >> 2] = j; c[f + 8 >> 2] = c[h + -8 >> 2]; Ld(c[(c[g >> 2] | 0) + 172 >> 2] | 0, d) } e = c[e + 168 >> 2] | 0; if (!e) ma(); $a[e & 255](b) | 0; ma() } function Md(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0; m = f + 16 | 0; k = c[m >> 2] | 0; if ((e[f + 38 >> 1] | 0) > 199) Rd(f, 3199, g); h = f + 6 | 0; switch (a[h >> 0] | 0) { case 0: { if ((k | 0) != (f + 72 | 0)) Rd(f, 3216, g); if (Sd(f, g + -16 | 0, -1) | 0) return; sg(f); return } case 1: { a[h >> 0] = 0; l = f + 28 | 0; c[k >> 2] = (c[l >> 2] | 0) + (c[k + 20 >> 2] | 0); h = k + 18 | 0; i = a[h >> 0] | 0; if (!(i & 1)) { j = c[k + 28 >> 2] | 0; if (!j) j = k; else { a[k + 37 >> 0] = 1; a[h >> 0] = i & 255 | 8; g = $a[j & 255](f) | 0; g = (c[f + 8 >> 2] | 0) + (0 - g << 4) | 0; j = c[m >> 2] | 0 } h = d[f + 40 >> 0] | 0; if (!(h & 6)) { i = g; h = c[j + 8 >> 2] | 0 } else { if (h & 2) { g = g - (c[l >> 2] | 0) | 0; Qd(f, 1, -1); g = (c[l >> 2] | 0) + g | 0 } h = c[j + 8 >> 2] | 0; c[f + 20 >> 2] = c[h + 28 >> 2]; i = g } g = c[j >> 2] | 0; j = b[j + 16 >> 1] | 0; c[m >> 2] = h; k = f + 8 | 0; a: do if (j << 16 >> 16) { h = j << 16 >> 16; while (1) { if (i >>> 0 >= (c[k >> 2] | 0) >>> 0) break; j = g + 16 | 0; n = i; l = c[n + 4 >> 2] | 0; m = g; c[m >> 2] = c[n >> 2]; c[m + 4 >> 2] = l; c[g + 8 >> 2] = c[i + 8 >> 2]; h = h + -1 | 0; if (!h) { g = j; break a } else { g = j; i = i + 16 | 0 } } if ((h | 0) > 0) while (1) { i = g + 16 | 0; c[g + 8 >> 2] = 0; if ((h | 0) > 1) { g = i; h = h + -1 | 0 } else { g = i; break } } } while (0); c[k >> 2] = g } else sg(f); Pd(f, 0); return } default: Rd(f, 6743, g) } } function Nd(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, p = 0, q = 0, r = 0, s = 0; s = i; i = i + 176 | 0; p = 4; q = $m(40) | 0; c[q >> 2] = 0; h = s; j = a + 38 | 0; k = b[j >> 1] | 0; l = h + 160 | 0; c[l >> 2] = 0; m = a + 64 | 0; c[h >> 2] = c[m >> 2]; c[m >> 2] = h; p = kn(h + 4 | 0, 1, q | 0, p | 0) | 0; q = C; n = 0; f = n; n = 0; if ((f | 0) != 0 & (o | 0) != 0) { g = mn(c[f >> 2] | 0, p | 0, q | 0) | 0; if (!g) sa(f | 0, o | 0); C = o } else g = -1; if ((g | 0) == 1) f = C; else f = 0; while (1) { if (f | 0) { r = 6; break } n = 0; $(d | 0, a | 0, e | 0); f = n; n = 0; if ((f | 0) != 0 & (o | 0) != 0) { g = mn(c[f >> 2] | 0, p | 0, q | 0) | 0; if (!g) sa(f | 0, o | 0); C = o } else g = -1; if ((g | 0) == 1) f = C; else break } if ((r | 0) == 6) { r = c[h >> 2] | 0; c[m >> 2] = r; b[j >> 1] = k; r = c[l >> 2] | 0; an(p | 0); i = s; return r | 0 } r = c[h >> 2] | 0; c[m >> 2] = r; b[j >> 1] = k; r = c[l >> 2] | 0; an(p | 0); i = s; return r | 0 } function Od(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; g = b + 28 | 0; f = c[g >> 2] | 0; h = b + 32 | 0; e = c[h >> 2] | 0; if ((d + 1 | 0) >>> 0 > 268435455) Te(b); i = Ue(b, f, e << 4, d << 4) | 0; c[g >> 2] = i; if ((e | 0) < (d | 0)) do { c[i + (e << 4) + 8 >> 2] = 0; e = e + 1 | 0 } while ((e | 0) != (d | 0)); c[h >> 2] = d; c[b + 24 >> 2] = i + (d << 4) + -80; e = b + 8 | 0; c[e >> 2] = i + ((c[e >> 2] | 0) - f >> 4 << 4); e = c[b + 56 >> 2] | 0; if (e | 0) do { h = e + 8 | 0; c[h >> 2] = i + ((c[h >> 2] | 0) - f >> 4 << 4); e = c[e >> 2] | 0 } while ((e | 0) != 0); e = c[b + 16 >> 2] | 0; if (!e) return; do { b = e + 4 | 0; c[b >> 2] = i + ((c[b >> 2] | 0) - f >> 4 << 4); c[e >> 2] = i + ((c[e >> 2] | 0) - f >> 4 << 4); if (a[e + 18 >> 0] & 1) { b = e + 24 | 0; c[b >> 2] = i + ((c[b >> 2] | 0) - f >> 4 << 4) } e = c[e + 8 >> 2] | 0 } while ((e | 0) != 0); return } function Pd(e, f) { e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; l = e + 16 | 0; f = c[l >> 2] | 0; m = e + 72 | 0; if ((f | 0) == (m | 0)) return; n = e + 8 | 0; o = e + 40 | 0; p = e + 20 | 0; q = e + 28 | 0; k = e + 68 | 0; do { h = f + 18 | 0; g = a[h >> 0] | 0; if (!(g & 1)) { g = g & 255; if (g & 16 | 0) { a[h >> 0] = g & 239; c[k >> 2] = c[f + 32 >> 2] } j = c[f + 16 >> 2] | 0; g = j >>> 16; if ((j & 65535) << 16 >> 16 == -1 ? (r = f + 4 | 0, s = c[n >> 2] | 0, (c[r >> 2] | 0) >>> 0 < s >>> 0) : 0) c[r >> 2] = s; if (!(g & 32)) a[f + 37 >> 0] = 1; a[h >> 0] = g & 199 | 8; f = $a[c[f + 28 >> 2] & 255](e) | 0; f = (c[n >> 2] | 0) + (0 - f << 4) | 0; j = c[l >> 2] | 0; g = d[o >> 0] | 0; if (!(g & 6)) { h = f; i = c[j + 8 >> 2] | 0 } else { if (g & 2) { f = f - (c[q >> 2] | 0) | 0; Qd(e, 1, -1); f = (c[q >> 2] | 0) + f | 0 } i = c[j + 8 >> 2] | 0; c[p >> 2] = c[i + 28 >> 2]; h = f } f = c[j >> 2] | 0; g = b[j + 16 >> 1] | 0; c[l >> 2] = i; a: do if (g << 16 >> 16) { g = g << 16 >> 16; while (1) { if (h >>> 0 >= (c[n >> 2] | 0) >>> 0) break; i = f + 16 | 0; u = h; t = c[u + 4 >> 2] | 0; j = f; c[j >> 2] = c[u >> 2]; c[j + 4 >> 2] = t; c[f + 8 >> 2] = c[h + 8 >> 2]; g = g + -1 | 0; if (!g) { f = i; break a } else { f = i; h = h + 16 | 0 } } if ((g | 0) > 0) while (1) { h = f + 16 | 0; c[f + 8 >> 2] = 0; if ((g | 0) > 1) { f = h; g = g + -1 | 0 } else { f = h; break } } } while (0); c[n >> 2] = f } else { rg(e); sg(e) } f = c[l >> 2] | 0 } while ((f | 0) != (m | 0)); return } function Qd(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; s = i; i = i + 112 | 0; r = s; n = s + 4 | 0; p = c[b + 52 >> 2] | 0; if (!p) { i = s; return } q = b + 41 | 0; if (!(a[q >> 0] | 0)) { i = s; return } g = c[b + 16 >> 2] | 0; h = b + 8 | 0; t = c[h >> 2] | 0; j = b + 28 | 0; m = c[j >> 2] | 0; k = t - m | 0; l = g + 4 | 0; m = (c[l >> 2] | 0) - m | 0; c[n >> 2] = e; c[n + 20 >> 2] = f; c[n + 96 >> 2] = g; e = t; do if (((c[b + 24 >> 2] | 0) - t | 0) < 336) { e = c[b + 32 >> 2] | 0; if ((e | 0) > 1e6) Ld(b, 6); t = (k >> 4) + 25 | 0; e = e << 1; e = (e | 0) > 1e6 ? 1e6 : e; e = (e | 0) < (t | 0) ? t : e; if ((e | 0) > 1e6) { Od(b, 1000200); Ed(b, 7041, r) } else { Od(b, e); o = c[h >> 2] | 0; break } } else o = e; while (0); c[l >> 2] = o + 320; a[q >> 0] = 0; t = g + 18 | 0; a[t >> 0] = d[t >> 0] | 2; _a[p & 31](b, n); a[q >> 0] = 1; r = c[j >> 2] | 0; c[l >> 2] = r + m; c[h >> 2] = r + k; a[t >> 0] = d[t >> 0] & 253; i = s; return } function Rd(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0; f = a + 8 | 0; c[f >> 2] = e; b = Nf(a, b) | 0; c[e >> 2] = b; c[e + 8 >> 2] = d[b + 4 >> 0] | 0 | 64; c[f >> 2] = (c[f >> 2] | 0) + 16; Ld(a, -1) } function Sd(e, f, g) { e = e | 0; f = f | 0; g = g | 0; var h = 0, j = 0, k = 0, 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; A = i; i = i + 32 | 0; n = A + 24 | 0; v = A + 16 | 0; r = A + 8 | 0; q = A; y = e + 28 | 0; z = e + 8 | 0; w = e + 24 | 0; x = e + 32 | 0; a: while (1) { s = c[y >> 2] | 0; p = f; switch (c[f + 8 >> 2] & 63) { case 22: { h = 3; break a } case 38: { h = 4; break a } case 6: { h = 29; break a } default: { } }j = cg(e, f, 16) | 0; k = p - (c[y >> 2] | 0) | 0; m = j + 8 | 0; if ((c[m >> 2] & 15 | 0) != 6) { h = 61; break } h = c[z >> 2] | 0; if (h >>> 0 > f >>> 0) { do { u = h; h = h + -16 | 0; C = h; B = c[C + 4 >> 2] | 0; t = u; c[t >> 2] = c[C >> 2]; c[t + 4 >> 2] = B; c[u + 8 >> 2] = c[u + -8 >> 2] } while (h >>> 0 > f >>> 0); f = c[z >> 2] | 0 } else f = h; f = f + 16 | 0; c[z >> 2] = f; if (((c[w >> 2] | 0) - f | 0) < 16) { h = c[x >> 2] | 0; if ((h | 0) > 1e6) { h = 67; break } C = (f - (c[y >> 2] | 0) >> 4) + 5 | 0; f = h << 1; f = (f | 0) > 1e6 ? 1e6 : f; f = (f | 0) < (C | 0) ? C : f; if ((f | 0) > 1e6) { h = 69; break } Od(e, f) } f = (c[y >> 2] | 0) + k | 0; u = j; B = c[u + 4 >> 2] | 0; C = f; c[C >> 2] = c[u >> 2]; c[C + 4 >> 2] = B; c[f + 8 >> 2] = c[m >> 2] } if ((h | 0) == 3) o = f; else if ((h | 0) == 4) o = (c[f >> 2] | 0) + 12 | 0; else if ((h | 0) == 29) { q = p - s | 0; u = c[(c[f >> 2] | 0) + 12 >> 2] | 0; j = c[z >> 2] | 0; n = j - p >> 4; k = n + -1 | 0; t = u + 78 | 0; f = d[t >> 0] | 0; do if (((c[w >> 2] | 0) - j >> 4 | 0) <= (f | 0)) { h = c[x >> 2] | 0; if ((h | 0) > 1e6) Ld(e, 6); C = (j - s >> 4) + 5 + f | 0; f = h << 1; f = (f | 0) > 1e6 ? 1e6 : f; f = (f | 0) < (C | 0) ? C : f; if ((f | 0) > 1e6) { Od(e, 1000200); Ed(e, 7041, r) } else { Od(e, f); break } } while (0); j = c[u + 76 >> 2] | 0; o = j & 255; p = j & 255; m = j >>> 16; if ((n | 0) <= (p | 0)) { f = k; h = c[z >> 2] | 0; do { C = h; h = h + 16 | 0; c[C + 8 >> 2] = 0; f = f + 1 | 0 } while ((f | 0) < (p | 0)); c[z >> 2] = h; k = f } if (!(j & 65280)) { h = (c[y >> 2] | 0) + q | 0; l = h + 16 | 0 } else { j = c[z >> 2] | 0; h = m & 255; do if (((c[w >> 2] | 0) - j >> 4 | 0) <= (h | 0)) { f = c[x >> 2] | 0; if ((f | 0) > 1e6) Ld(e, 6); C = h + 5 + (j - (c[y >> 2] | 0) >> 4) | 0; f = f << 1; f = (f | 0) > 1e6 ? 1e6 : f; f = (f | 0) < (C | 0) ? C : f; if ((f | 0) > 1e6) { Od(e, 1000200); Ed(e, 7041, v) } else { Od(e, f); l = c[z >> 2] | 0; break } } else l = j; while (0); f = 0 - k | 0; h = l + (f << 4) | 0; if (o << 24 >> 24 ? (c[z >> 2] = l + 16, x = h, B = c[x + 4 >> 2] | 0, C = l, c[C >> 2] = c[x >> 2], c[C + 4 >> 2] = B, C = l + (f << 4) + 8 | 0, c[l + 8 >> 2] = c[C >> 2], c[C >> 2] = 0, o << 24 >> 24 != 1) : 0) { f = 1; do { B = c[z >> 2] | 0; C = h + (f << 4) | 0; c[z >> 2] = B + 16; v = C; w = c[v + 4 >> 2] | 0; x = B; c[x >> 2] = c[v >> 2]; c[x + 4 >> 2] = w; C = C + 8 | 0; c[B + 8 >> 2] = c[C >> 2]; c[C >> 2] = 0; f = f + 1 | 0 } while ((f | 0) != (p | 0)) } h = (c[y >> 2] | 0) + q | 0 } j = e + 16 | 0; f = c[(c[j >> 2] | 0) + 12 >> 2] | 0; if (!f) k = Ff(e) | 0; else k = f; c[j >> 2] = k; b[k + 16 >> 1] = g; c[k >> 2] = h; c[k + 24 >> 2] = l; C = l + ((d[t >> 0] | 0) << 4) | 0; c[k + 4 >> 2] = C; h = k + 28 | 0; c[h >> 2] = c[u + 12 >> 2]; f = k + 18 | 0; a[f >> 0] = 1; c[z >> 2] = C; if ((c[(c[e + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(e); if (!(a[e + 40 >> 0] & 1)) { C = 0; i = A; return C | 0 } c[h >> 2] = (c[h >> 2] | 0) + 4; C = c[k + 8 >> 2] | 0; if ((a[C + 18 >> 0] & 1) != 0 ? (c[(c[C + 28 >> 2] | 0) + -4 >> 2] & 63 | 0) == 30 : 0) { a[f >> 0] = d[f >> 0] | 0 | 64; f = 4 } else f = 0; Qd(e, f, -1); c[h >> 2] = (c[h >> 2] | 0) + -4; C = 0; i = A; return C | 0 } else if ((h | 0) == 61) Dd(e, f, 7071); else if ((h | 0) == 67) Ld(e, 6); else if ((h | 0) == 69) { Od(e, 1000200); Ed(e, 7041, n) } k = p - s | 0; j = c[o >> 2] | 0; h = c[z >> 2] | 0; do if (((c[w >> 2] | 0) - h | 0) < 336) { f = c[x >> 2] | 0; if ((f | 0) > 1e6) Ld(e, 6); C = (h - s >> 4) + 25 | 0; f = f << 1; f = (f | 0) > 1e6 ? 1e6 : f; f = (f | 0) < (C | 0) ? C : f; if ((f | 0) > 1e6) { Od(e, 1000200); Ed(e, 7041, q) } else { Od(e, f); break } } while (0); m = e + 16 | 0; f = c[(c[m >> 2] | 0) + 12 >> 2] | 0; if (!f) f = Ff(e) | 0; c[m >> 2] = f; b[f + 16 >> 1] = g; c[f >> 2] = (c[y >> 2] | 0) + k; c[f + 4 >> 2] = (c[z >> 2] | 0) + 320; a[f + 18 >> 0] = 0; if ((c[(c[e + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(e); h = e + 40 | 0; if (a[h >> 0] & 1) Qd(e, 0, -1); f = $a[j & 255](e) | 0; f = (c[z >> 2] | 0) + (0 - f << 4) | 0; l = c[m >> 2] | 0; h = d[h >> 0] | 0; if (!(h & 6)) { j = f; k = c[l + 8 >> 2] | 0 } else { if (h & 2) { f = f - (c[y >> 2] | 0) | 0; Qd(e, 1, -1); f = (c[y >> 2] | 0) + f | 0 } k = c[l + 8 >> 2] | 0; c[e + 20 >> 2] = c[k + 28 >> 2]; j = f } f = c[l >> 2] | 0; h = b[l + 16 >> 1] | 0; c[m >> 2] = k; b: do if (h << 16 >> 16) { h = h << 16 >> 16; while (1) { if (j >>> 0 >= (c[z >> 2] | 0) >>> 0) break; k = f + 16 | 0; e = j; B = c[e + 4 >> 2] | 0; C = f; c[C >> 2] = c[e >> 2]; c[C + 4 >> 2] = B; c[f + 8 >> 2] = c[j + 8 >> 2]; h = h + -1 | 0; if (!h) { f = k; break b } else { f = k; j = j + 16 | 0 } } if ((h | 0) > 0) while (1) { j = f + 16 | 0; c[f + 8 >> 2] = 0; if ((h | 0) > 1) { f = j; h = h + -1 | 0 } else { f = j; break } } } while (0); c[z >> 2] = f; C = 1; i = A; return C | 0 } function Td(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; e = i; i = i + 16 | 0; d = c[a + 32 >> 2] | 0; if ((d | 0) > 1e6) Ld(a, 6); f = b + 5 + ((c[a + 8 >> 2] | 0) - (c[a + 28 >> 2] | 0) >> 4) | 0; b = d << 1; b = (b | 0) > 1e6 ? 1e6 : b; b = (b | 0) < (f | 0) ? f : b; if ((b | 0) > 1e6) { Od(a, 1000200); Ed(a, 7041, e) } else { Od(a, b); i = e; return } } function Ud(a) { a = a | 0; var b = 0, d = 0, e = 0; b = c[a + 8 >> 2] | 0; d = c[a + 16 >> 2] | 0; if (d) do { e = c[d + 4 >> 2] | 0; b = b >>> 0 < e >>> 0 ? e : b; d = c[d + 8 >> 2] | 0 } while ((d | 0) != 0); e = b - (c[a + 28 >> 2] | 0) | 0; b = e >> 4; b = b + 11 + ((b + 1 | 0) / 8 | 0) | 0; b = (b | 0) > 1e6 ? 1e6 : b; if ((e | 0) > 15999984) return; if ((b | 0) >= (c[a + 32 >> 2] | 0)) return; Od(a, b); return } function Vd(a, e) { a = a | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0; i = a + 16 | 0; h = c[i >> 2] | 0; f = d[a + 40 >> 0] | 0; if (!(f & 6)) f = c[h + 8 >> 2] | 0; else { if (f & 2) { j = a + 28 | 0; e = e - (c[j >> 2] | 0) | 0; Qd(a, 1, -1); e = (c[j >> 2] | 0) + e | 0 } f = c[h + 8 >> 2] | 0; c[a + 20 >> 2] = c[f + 28 >> 2] } g = c[h >> 2] | 0; h = b[h + 16 >> 1] | 0; j = h << 16 >> 16; c[i >> 2] = f; a = a + 8 | 0; if (!(h << 16 >> 16)) { k = g; c[a >> 2] = k; k = j + 1 | 0; return k | 0 } else { f = j; h = e } while (1) { if (h >>> 0 >= (c[a >> 2] | 0) >>> 0) break; e = g + 16 | 0; m = h; l = c[m + 4 >> 2] | 0; i = g; c[i >> 2] = c[m >> 2]; c[i + 4 >> 2] = l; c[g + 8 >> 2] = c[h + 8 >> 2]; f = f + -1 | 0; if (!f) { k = 11; break } else { g = e; h = h + 16 | 0 } } if ((k | 0) == 11) { c[a >> 2] = e; m = j + 1 | 0; return m | 0 } if ((f | 0) <= 0) { m = g; c[a >> 2] = m; m = j + 1 | 0; return m | 0 } while (1) { e = g + 16 | 0; c[g + 8 >> 2] = 0; if ((f | 0) > 1) { g = e; f = f + -1 | 0 } else break } c[a >> 2] = e; m = j + 1 | 0; return m | 0 } function Wd(a, d, e, f) { a = a | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0; k = i; i = i + 16 | 0; h = k; j = a + 38 | 0; g = (b[j >> 1] | 0) + 1 << 16 >> 16; b[j >> 1] = g; if ((g & 65535) > 199) { if (g << 16 >> 16 == 200) Ed(a, 3199, h); if ((g & 65535) > 224) Ld(a, 6) } f = (f | 0) != 0; if (!f) { h = a + 36 | 0; b[h >> 1] = (b[h >> 1] | 0) + 1 << 16 >> 16 } if (!(Sd(a, d, e) | 0)) sg(a); if (f) { e = b[j >> 1] | 0; e = e + -1 << 16 >> 16; b[j >> 1] = e; i = k; return } else { d = a + 36 | 0; e = c[d >> 2] | 0; b[d >> 1] = (e & 65535) + -1 << 16 >> 16; e = e >>> 16 & 65535; e = e + -1 << 16 >> 16; b[j >> 1] = e; i = k; return } } function Xd(e, f, g, h, i) { e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; l = e + 16 | 0; j = c[l >> 2] | 0; m = e + 41 | 0; n = a[m >> 0] | 0; o = e + 36 | 0; k = b[o >> 1] | 0; p = e + 68 | 0; q = c[p >> 2] | 0; c[p >> 2] = i; i = Nd(e, f, g) | 0; if (!i) { c[p >> 2] = q; return i | 0 } g = e + 28 | 0; f = (c[g >> 2] | 0) + h | 0; fe(e, f); switch (i | 0) { case 4: { h = c[(c[e + 12 >> 2] | 0) + 180 >> 2] | 0; c[f >> 2] = h; c[f + 8 >> 2] = d[h + 4 >> 0] | 0 | 64; break } case 6: { h = Mf(e, 3175, 23) | 0; c[f >> 2] = h; c[f + 8 >> 2] = d[h + 4 >> 0] | 0 | 64; break } default: { h = c[e + 8 >> 2] | 0; t = h + -16 | 0; s = c[t + 4 >> 2] | 0; r = f; c[r >> 2] = c[t >> 2]; c[r + 4 >> 2] = s; c[f + 8 >> 2] = c[h + -8 >> 2] } }f = f + 16 | 0; c[e + 8 >> 2] = f; c[l >> 2] = j; a[m >> 0] = n; b[o >> 1] = k; if (j) do { t = c[j + 4 >> 2] | 0; f = f >>> 0 < t >>> 0 ? t : f; j = c[j + 8 >> 2] | 0 } while ((j | 0) != 0); t = f - (c[g >> 2] | 0) | 0; f = t >> 4; f = f + 11 + ((f + 1 | 0) / 8 | 0) | 0; f = (f | 0) > 1e6 ? 1e6 : f; if ((t | 0) > 15999984) { c[p >> 2] = q; return i | 0 } if ((f | 0) >= (c[e + 32 >> 2] | 0)) { c[p >> 2] = q; return i | 0 } Od(e, f); c[p >> 2] = q; return i | 0 } function Yd(a, d, e, f) { a = a | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; g = i; i = i + 64 | 0; p = g; h = a + 36 | 0; b[h >> 1] = (b[h >> 1] | 0) + 1 << 16 >> 16; c[p >> 2] = d; c[p + 56 >> 2] = e; c[p + 52 >> 2] = f; m = p + 16 | 0; c[m >> 2] = 0; l = p + 24 | 0; c[l >> 2] = 0; k = p + 28 | 0; c[k >> 2] = 0; j = p + 36 | 0; c[j >> 2] = 0; d = p + 40 | 0; c[d >> 2] = 0; e = p + 48 | 0; c[e >> 2] = 0; o = p + 4 | 0; c[o >> 2] = 0; n = p + 12 | 0; c[n >> 2] = 0; f = Xd(a, 22, p, (c[a + 8 >> 2] | 0) - (c[a + 28 >> 2] | 0) | 0, c[a + 68 >> 2] | 0) | 0; c[o >> 2] = Ue(a, c[o >> 2] | 0, c[n >> 2] | 0, 0) | 0; c[n >> 2] = 0; Ue(a, c[m >> 2] | 0, c[l >> 2] << 1, 0) | 0; Ue(a, c[k >> 2] | 0, c[j >> 2] << 4, 0) | 0; Ue(a, c[d >> 2] | 0, c[e >> 2] << 4, 0) | 0; b[h >> 1] = (b[h >> 1] | 0) + -1 << 16 >> 16; i = g; return f | 0 } function Zd(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0; l = i; i = i + 16 | 0; k = l + 8 | 0; j = l; f = c[e >> 2] | 0; h = c[f >> 2] | 0; c[f >> 2] = h + -1; if (!h) f = tg(f) | 0; else { h = f + 4 | 0; f = c[h >> 2] | 0; c[h >> 2] = f + 1; f = d[f >> 0] | 0 } g = c[e + 52 >> 2] | 0; h = (g | 0) == 0; if ((f | 0) == 27) { if (!h ? (pm(g, 98) | 0) == 0 : 0) { c[j >> 2] = 3296; c[j + 4 >> 2] = g; af(b, 3254, j) | 0; Ld(b, 3) } f = dg(b, c[e >> 2] | 0, e + 4 | 0, c[e + 56 >> 2] | 0) | 0 } else { if (!h ? (pm(g, 116) | 0) == 0 : 0) { c[k >> 2] = 3303; c[k + 4 >> 2] = g; af(b, 3254, k) | 0; Ld(b, 3) } f = cf(b, c[e >> 2] | 0, e + 4 | 0, e + 16 | 0, c[e + 56 >> 2] | 0, f) | 0 } h = f + 6 | 0; if (!(a[h >> 0] | 0)) { i = l; return } e = f + 16 | 0; j = f + 5 | 0; g = 0; do { k = ce(b) | 0; c[e + (g << 2) >> 2] = k; if (a[k + 5 >> 0] & 3 ? a[j >> 0] & 4 : 0) je(b, f, k); g = g + 1 | 0 } while ((g | 0) < (d[h >> 0] | 0)); i = l; return } function _d(a, b, d, e, f) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, j = 0; g = i; i = i + 48 | 0; j = g + 20 | 0; h = g; c[h >> 2] = a; c[h + 4 >> 2] = d; c[h + 8 >> 2] = e; c[h + 12 >> 2] = f; f = h + 16 | 0; gg(j); c[f >> 2] = ab[d & 31](a, j, 18, e) | 0; $d(b, h); i = g; return c[f >> 2] | 0 } function $d(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = i; i = i + 16 | 0; r = t; c[r >> 2] = c[d + 64 >> 2]; s = e + 16 | 0; f = c[s >> 2] | 0; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } c[r >> 2] = c[d + 68 >> 2]; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } g = b[d + 76 >> 1] | 0; a[r >> 0] = g; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 1, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f; a[r >> 0] = a[d + 77 >> 0] | 0; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 1, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } } else a[r >> 0] = (g & 65535) >>> 8; a[r >> 0] = a[d + 78 >> 0] | 0; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 1, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } k = c[d + 12 >> 2] | 0; l = c[d + 48 >> 2] | 0; c[r >> 2] = l; if (!f) { g = e + 4 | 0; j = e + 8 | 0; f = ab[c[g >> 2] & 31](c[e >> 2] | 0, r, 4, c[j >> 2] | 0) | 0; c[s >> 2] = f; if (!f) { f = ab[c[g >> 2] & 31](c[e >> 2] | 0, k, l << 2, c[j >> 2] | 0) | 0; c[s >> 2] = f; g = c[d + 44 >> 2] | 0; c[r >> 2] = g; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } } else m = 14 } else m = 14; if ((m | 0) == 14) { g = c[d + 44 >> 2] | 0; c[r >> 2] = g } a: do if ((g | 0) > 0) { n = d + 8 | 0; o = e + 4 | 0; p = e + 8 | 0; m = 0; while (1) { k = c[n >> 2] | 0; l = k + (m << 4) | 0; k = k + (m << 4) + 8 | 0; j = c[k >> 2] | 0; a[r >> 0] = j & 15; if (!f) { f = ab[c[o >> 2] & 31](c[e >> 2] | 0, r, 1, c[p >> 2] | 0) | 0; c[s >> 2] = f; j = c[k >> 2] | 0 } b: do switch (j & 15) { case 4: { j = c[l >> 2] | 0; if (!j) { c[r >> 2] = 0; if (!f) { f = ab[c[o >> 2] & 31](c[e >> 2] | 0, r, 4, c[p >> 2] | 0) | 0; c[s >> 2] = f } break b } c[r >> 2] = (c[j + 12 >> 2] | 0) + 1; if (!f) { f = ab[c[o >> 2] & 31](c[e >> 2] | 0, r, 4, c[p >> 2] | 0) | 0; c[s >> 2] = f; if (!f) { f = ab[c[o >> 2] & 31](c[e >> 2] | 0, j + 16 | 0, c[r >> 2] | 0, c[p >> 2] | 0) | 0; c[s >> 2] = f } } break } case 1: { a[r >> 0] = c[l >> 2]; if (!f) { f = ab[c[o >> 2] & 31](c[e >> 2] | 0, r, 1, c[p >> 2] | 0) | 0; c[s >> 2] = f } break } case 3: { h[r >> 3] = +h[l >> 3]; if (!f) { f = ab[c[o >> 2] & 31](c[e >> 2] | 0, r, 8, c[p >> 2] | 0) | 0; c[s >> 2] = f } break } default: { } } while (0); m = m + 1 | 0; if ((m | 0) == (g | 0)) break a } } while (0); j = c[d + 56 >> 2] | 0; c[r >> 2] = j; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } if ((j | 0) > 0) { g = d + 16 | 0; f = 0; do { $d(c[(c[g >> 2] | 0) + (f << 2) >> 2] | 0, e); f = f + 1 | 0 } while ((f | 0) != (j | 0)); f = c[s >> 2] | 0 } p = d + 40 | 0; n = c[p >> 2] | 0; c[r >> 2] = n; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } if ((n | 0) > 0) { k = d + 28 | 0; l = e + 4 | 0; m = e + 8 | 0; j = 0; do { g = c[k >> 2] | 0; a[r >> 0] = a[g + (j << 3) + 4 >> 0] | 0; if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 1, c[m >> 2] | 0) | 0; c[s >> 2] = f; g = c[k >> 2] | 0 } a[r >> 0] = a[g + (j << 3) + 5 >> 0] | 0; if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 1, c[m >> 2] | 0) | 0; c[s >> 2] = f } j = j + 1 | 0 } while ((j | 0) != (n | 0)) } o = e + 12 | 0; if ((c[o >> 2] | 0) == 0 ? (q = c[d + 36 >> 2] | 0, (q | 0) != 0) : 0) { c[r >> 2] = (c[q + 12 >> 2] | 0) + 1; if (!f) { g = e + 4 | 0; j = e + 8 | 0; f = ab[c[g >> 2] & 31](c[e >> 2] | 0, r, 4, c[j >> 2] | 0) | 0; c[s >> 2] = f; if (!f) { f = ab[c[g >> 2] & 31](c[e >> 2] | 0, q + 16 | 0, c[r >> 2] | 0, c[j >> 2] | 0) | 0; c[s >> 2] = f } } } else { c[r >> 2] = 0; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } } if (!(c[o >> 2] | 0)) l = c[d + 52 >> 2] | 0; else l = 0; k = c[d + 20 >> 2] | 0; c[r >> 2] = l; if (!f) { g = e + 4 | 0; j = e + 8 | 0; f = ab[c[g >> 2] & 31](c[e >> 2] | 0, r, 4, c[j >> 2] | 0) | 0; c[s >> 2] = f; if (!f) { f = ab[c[g >> 2] & 31](c[e >> 2] | 0, k, l << 2, c[j >> 2] | 0) | 0; c[s >> 2] = f } } if (!(c[o >> 2] | 0)) n = c[d + 60 >> 2] | 0; else n = 0; c[r >> 2] = n; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } if ((n | 0) > 0) { k = d + 24 | 0; l = e + 4 | 0; m = e + 8 | 0; j = 0; do { g = c[(c[k >> 2] | 0) + (j * 12 | 0) >> 2] | 0; if (!g) { c[r >> 2] = 0; if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 4, c[m >> 2] | 0) | 0; c[s >> 2] = f } } else { c[r >> 2] = (c[g + 12 >> 2] | 0) + 1; do if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 4, c[m >> 2] | 0) | 0; c[s >> 2] = f; if (f | 0) break; f = ab[c[l >> 2] & 31](c[e >> 2] | 0, g + 16 | 0, c[r >> 2] | 0, c[m >> 2] | 0) | 0; c[s >> 2] = f } while (0) } g = c[k >> 2] | 0; c[r >> 2] = c[g + (j * 12 | 0) + 4 >> 2]; if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 4, c[m >> 2] | 0) | 0; c[s >> 2] = f; g = c[k >> 2] | 0 } c[r >> 2] = c[g + (j * 12 | 0) + 8 >> 2]; if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 4, c[m >> 2] | 0) | 0; c[s >> 2] = f } j = j + 1 | 0 } while ((j | 0) != (n | 0)) } if (!(c[o >> 2] | 0)) n = c[p >> 2] | 0; else n = 0; c[r >> 2] = n; if (!f) { f = ab[c[e + 4 >> 2] & 31](c[e >> 2] | 0, r, 4, c[e + 8 >> 2] | 0) | 0; c[s >> 2] = f } if ((n | 0) <= 0) { i = t; return } k = d + 28 | 0; l = e + 4 | 0; m = e + 8 | 0; j = 0; do { g = c[(c[k >> 2] | 0) + (j << 3) >> 2] | 0; if (!g) { c[r >> 2] = 0; if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 4, c[m >> 2] | 0) | 0; c[s >> 2] = f } } else { c[r >> 2] = (c[g + 12 >> 2] | 0) + 1; do if (!f) { f = ab[c[l >> 2] & 31](c[e >> 2] | 0, r, 4, c[m >> 2] | 0) | 0; c[s >> 2] = f; if (f | 0) break; f = ab[c[l >> 2] & 31](c[e >> 2] | 0, g + 16 | 0, c[r >> 2] | 0, c[m >> 2] | 0) | 0; c[s >> 2] = f } while (0) } j = j + 1 | 0 } while ((j | 0) != (n | 0)); i = t; return } function ae(b, c) { b = b | 0; c = c | 0; b = oe(b, 38, (c << 4) + 16 | 0, 0, 0) | 0; a[b + 6 >> 0] = c; return b | 0 } function be(b, d) { b = b | 0; d = d | 0; var e = 0; e = d << 2; b = oe(b, 6, e + 16 | 0, 0, 0) | 0; c[b + 12 >> 2] = 0; a[b + 6 >> 0] = d; if (!d) return b | 0; hn(b + 16 | 0, 0, e | 0) | 0; return b | 0 } function ce(a) { a = a | 0; a = oe(a, 10, 32, 0, 0) | 0; c[a + 8 >> 2] = a + 16; c[a + 24 >> 2] = 0; return a | 0 } function de(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = c[b + 12 >> 2] | 0; f = b + 56 | 0; g = c[f >> 2] | 0; a: do if (g) { h = g; while (1) { g = c[h + 8 >> 2] | 0; if (g >>> 0 < e >>> 0) break a; if ((g | 0) == (e | 0)) break; f = c[h >> 2] | 0; if (!f) { f = h; break a } else { g = h; h = f; f = g } } f = h + 5 | 0; g = (d[f >> 0] | 0) ^ 3; if (((d[i + 60 >> 0] | 0) ^ 3) & g | 0) { i = h; return i | 0 } a[f >> 0] = g; i = h; return i | 0 } while (0); b = oe(b, 10, 32, f, 0) | 0; c[b + 8 >> 2] = e; h = b + 16 | 0; c[h >> 2] = i + 112; i = i + 128 + 4 | 0; e = c[i >> 2] | 0; c[h + 4 >> 2] = e; c[e + 16 >> 2] = b; c[i >> 2] = b; i = b; return i | 0 } function ee(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; if ((c[b + 8 >> 2] | 0) == (b + 16 | 0)) { Ue(a, b, 32, 0) | 0; return } d = b + 16 | 0; e = c[d + 4 >> 2] | 0; c[e + 16 >> 2] = c[d >> 2]; c[(c[d >> 2] | 0) + 16 + 4 >> 2] = e; Ue(a, b, 32, 0) | 0; return } function fe(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; h = c[a + 12 >> 2] | 0; i = a + 56 | 0; e = c[i >> 2] | 0; if (!e) return; j = h + 60 | 0; k = h + 68 | 0; while (1) { g = e + 8 | 0; f = c[g >> 2] | 0; if (f >>> 0 < b >>> 0) { e = 10; break } c[i >> 2] = c[e >> 2]; if (!(((d[j >> 0] | 0) ^ 3) & ((d[e + 5 >> 0] | 0) ^ 3))) { if ((f | 0) != (e + 16 | 0)) { g = e + 16 | 0; f = c[g + 4 >> 2] | 0; c[f + 16 >> 2] = c[g >> 2]; c[(c[g >> 2] | 0) + 16 + 4 >> 2] = f } Ue(a, e, 32, 0) | 0 } else { l = e + 16 | 0; o = c[l + 4 >> 2] | 0; c[o + 16 >> 2] = c[l >> 2]; c[(c[l >> 2] | 0) + 16 + 4 >> 2] = o; l = e + 16 | 0; o = f; n = c[o + 4 >> 2] | 0; m = l; c[m >> 2] = c[o >> 2]; c[m + 4 >> 2] = n; c[e + 24 >> 2] = c[f + 8 >> 2]; c[g >> 2] = l; c[e >> 2] = c[k >> 2]; c[k >> 2] = e; ne(h, e) } e = c[i >> 2] | 0; if (!e) { e = 10; break } } if ((e | 0) == 10) return } function ge(b) { b = b | 0; b = oe(b, 9, 80, 0, 0) | 0; c[b + 8 >> 2] = 0; c[b + 44 >> 2] = 0; c[b + 16 >> 2] = 0; c[b + 56 >> 2] = 0; c[b + 12 >> 2] = 0; c[b + 32 >> 2] = 0; c[b + 48 >> 2] = 0; c[b + 20 >> 2] = 0; c[b + 52 >> 2] = 0; c[b + 28 >> 2] = 0; c[b + 40 >> 2] = 0; a[b + 76 >> 0] = 0; a[b + 77 >> 0] = 0; a[b + 78 >> 0] = 0; c[b + 24 >> 2] = 0; c[b + 60 >> 2] = 0; c[b + 64 >> 2] = 0; c[b + 68 >> 2] = 0; c[b + 36 >> 2] = 0; return b | 0 } function he(a, b) { a = a | 0; b = b | 0; Ue(a, c[b + 12 >> 2] | 0, c[b + 48 >> 2] << 2, 0) | 0; Ue(a, c[b + 16 >> 2] | 0, c[b + 56 >> 2] << 2, 0) | 0; Ue(a, c[b + 8 >> 2] | 0, c[b + 44 >> 2] << 4, 0) | 0; Ue(a, c[b + 20 >> 2] | 0, c[b + 52 >> 2] << 2, 0) | 0; Ue(a, c[b + 24 >> 2] | 0, (c[b + 60 >> 2] | 0) * 12 | 0, 0) | 0; Ue(a, c[b + 28 >> 2] | 0, c[b + 40 >> 2] << 3, 0) | 0; Ue(a, b, 80, 0) | 0; return } function ie(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = c[a + 60 >> 2] | 0; if ((e | 0) <= 0) { f = 0; return f | 0 } f = c[a + 24 >> 2] | 0; a = 0; while (1) { if ((c[f + (a * 12 | 0) + 4 >> 2] | 0) > (d | 0)) { a = 0; b = 8; break } if ((c[f + (a * 12 | 0) + 8 >> 2] | 0) > (d | 0)) { b = b + -1 | 0; if (!b) { b = 6; break } } a = a + 1 | 0; if ((a | 0) >= (e | 0)) { a = 0; b = 8; break } } if ((b | 0) == 6) { f = (c[f + (a * 12 | 0) >> 2] | 0) + 16 | 0; return f | 0 } else if ((b | 0) == 8) return a | 0; return 0 } function je(b, e, f) { b = b | 0; e = e | 0; f = f | 0; b = c[b + 12 >> 2] | 0; if ((d[b + 61 >> 0] | 0) < 2) { ke(b, f); return } else { f = e + 5 | 0; a[f >> 0] = (d[b + 60 >> 0] | 0) & 3 | (d[f >> 0] | 0) & 184; return } } function ke(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = e + 5 | 0; a[i >> 0] = d[i >> 0] & 252; switch (a[e + 4 >> 0] | 0) { case 20: case 4: { f = (c[e + 12 >> 2] | 0) + 17 | 0; break } case 7: { f = c[e + 8 >> 2] | 0; if (f | 0 ? a[f + 5 >> 0] & 3 : 0) ke(b, f); f = c[e + 12 >> 2] | 0; if (f | 0 ? a[f + 5 >> 0] & 3 : 0) ke(b, f); f = (c[e + 16 >> 2] | 0) + 24 | 0; break } case 10: { g = e + 8 | 0; f = c[g >> 2] | 0; if ((c[f + 8 >> 2] & 64 | 0) != 0 ? (h = c[f >> 2] | 0, (a[h + 5 >> 0] & 3) != 0) : 0) { ke(b, h); f = c[g >> 2] | 0 } if ((f | 0) == (e + 16 | 0)) f = 32; else return; break } case 6: { i = b + 84 | 0; c[e + 8 >> 2] = c[i >> 2]; c[i >> 2] = e; return } case 38: { i = b + 84 | 0; c[e + 8 >> 2] = c[i >> 2]; c[i >> 2] = e; return } case 5: { i = b + 84 | 0; c[e + 28 >> 2] = c[i >> 2]; c[i >> 2] = e; return } case 8: { i = b + 84 | 0; c[e + 60 >> 2] = c[i >> 2]; c[i >> 2] = e; return } case 9: { i = b + 84 | 0; c[e + 72 >> 2] = c[i >> 2]; c[i >> 2] = e; return } default: return }a[i >> 0] = d[i >> 0] | 4; i = b + 16 | 0; c[i >> 2] = (c[i >> 2] | 0) + f; return } function le(b, e) { b = b | 0; e = e | 0; var f = 0; b = c[b + 12 >> 2] | 0; f = e + 5 | 0; a[f >> 0] = (d[f >> 0] | 0) & 251; b = b + 88 | 0; c[e + 28 >> 2] = c[b >> 2]; c[b >> 2] = e; return } function me(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0; if (c[e + 32 >> 2] | 0) { f = c[b + 12 >> 2] | 0; h = e + 5 | 0; a[h >> 0] = (d[h >> 0] | 0) & 251; f = f + 88 | 0; c[e + 72 >> 2] = c[f >> 2]; c[f >> 2] = e; return } if (!(a[f + 5 >> 0] & 3)) return; g = e + 5 | 0; h = a[g >> 0] | 0; if (!(h & 4)) return; e = c[b + 12 >> 2] | 0; if ((d[e + 61 >> 0] | 0) < 2) { ke(e, f); return } else { a[g >> 0] = (d[e + 60 >> 0] | 0) & 3 | h & 184; return } } function ne(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0; f = e + 5 | 0; g = d[f >> 0] | 0; if (g & 7 | 0) return; if ((a[b + 62 >> 0] | 0) != 2 ? (d[b + 61 >> 0] | 0) >= 2 : 0) { a[f >> 0] = d[b + 60 >> 0] & 3 | g & 184; return } a[f >> 0] = g & 187 | 4; e = c[e + 8 >> 2] | 0; if (!(c[e + 8 >> 2] & 64)) return; e = c[e >> 2] | 0; if (!(a[e + 5 >> 0] & 3)) return; ke(b, e); return } function oe(b, e, f, g, h) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0; i = c[b + 12 >> 2] | 0; h = (Ue(b, 0, e & 15, f) | 0) + h | 0; g = (g | 0) == 0 ? i + 68 | 0 : g; a[h + 5 >> 0] = (d[i + 60 >> 0] | 0) & 3; a[h + 4 >> 0] = e; c[h >> 2] = c[g >> 2]; c[g >> 2] = h; return h | 0 } function pe(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = c[b + 12 >> 2] | 0; j = e + 5 | 0; if ((f | 0) == 0 | (a[j >> 0] & 24) != 0) return; if (a[f + 6 >> 0] & 4) return; if (!(bg(f, 2, c[i + 192 >> 2] | 0) | 0)) return; f = i + 76 | 0; g = c[f >> 2] | 0; if ((g | 0) == (e | 0)) { do h = qe(b, g, 1) | 0; while ((h | 0) == (g | 0)); c[f >> 2] = h } f = i + 68 | 0; while (1) { g = c[f >> 2] | 0; if ((g | 0) == (e | 0)) break; else f = g } c[f >> 2] = c[e >> 2]; f = i + 72 | 0; c[e >> 2] = c[f >> 2]; c[f >> 2] = e; f = d[j >> 0] | 0 | 16; a[j >> 0] = f; if ((d[i + 61 >> 0] | 0) < 2) f = f & 191; else f = (d[i + 60 >> 0] | 0) & 3 | f & 184; a[j >> 0] = f; return } function qe(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0; m = b + 12 | 0; k = c[(c[m >> 2] | 0) + 60 >> 2] | 0; n = k & 255 ^ 3; l = (k & 16711680 | 0) == 131072; j = l ? 255 : 184; k = l ? 64 : k & 3; l = l ? 64 : 0; g = c[e >> 2] | 0; a: do if (!g) g = 0; else { b: while (1) { if (!f) break a; f = f + -1 | 0; h = g + 5 | 0; i = d[h >> 0] | 0; c: do if (!((i ^ 3) & n)) { c[e >> 2] = c[g >> 2]; i = c[g + 4 >> 2] | 0; h = i >>> 16; switch ((i & 255) << 24 >> 24) { case 9: { he(b, g); break c } case 6: { Ue(b, g, (h << 2 & 1020) + 16 | 0, 0) | 0; break c } case 38: { Ue(b, g, (h << 4 & 4080) + 16 | 0, 0) | 0; break c } case 10: { ee(b, g); break c } case 5: { Yf(b, g); break c } case 8: { Hf(b, g); break c } case 7: { Ue(b, g, (c[g + 16 >> 2] | 0) + 24 | 0, 0) | 0; break c } case 4: { i = (c[m >> 2] | 0) + 28 | 0; c[i >> 2] = (c[i >> 2] | 0) + -1; break } case 20: break; default: break c }Ue(b, g, (c[g + 12 >> 2] | 0) + 17 | 0, 0) | 0 } else { if (i & l | 0) { g = 0; break b } if (((a[g + 4 >> 0] | 0) == 8 ? c[g + 28 >> 2] | 0 : 0) ? (qe(b, g + 56 | 0, -3) | 0, Gf(g), (a[(c[m >> 2] | 0) + 62 >> 0] | 0) != 1) : 0) Ud(g); a[h >> 0] = i & j | k; e = g } while (0); g = c[e >> 2] | 0; if (!g) { g = 0; break a } } return g | 0 } while (0); n = (g | 0) == 0 ? 0 : e; return n | 0 } function re(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = b + 12 | 0; h = c[g >> 2] | 0; f = h + 62 | 0; if ((d[f >> 0] | 0) == (e | 0)) return; if ((e | 0) == 2) { e = h + 61 | 0; if (a[e >> 0] | 0) do se(b) | 0; while ((a[e >> 0] | 0) != 0); c[h + 20 >> 2] = (c[h + 12 >> 2] | 0) + (c[h + 8 >> 2] | 0); a[f >> 0] = 2; return } a[f >> 0] = 0; a[h + 61 >> 0] = 2; c[h + 64 >> 2] = 0; e = h + 72 | 0; do f = qe(b, e, 1) | 0; while ((f | 0) == (e | 0)); c[h + 80 >> 2] = f; e = h + 68 | 0; do f = qe(b, e, 1) | 0; while ((f | 0) == (e | 0)); c[h + 76 >> 2] = f; e = (c[g >> 2] | 0) + 61 | 0; if (1 << d[e >> 0] & -29 | 0) return; do se(b) | 0; while (!(1 << d[e >> 0] & -29 | 0)); return } function se(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; v = i; i = i + 16 | 0; g = v; t = b + 12 | 0; u = c[t >> 2] | 0; n = u + 61 | 0; switch (a[n >> 0] | 0) { case 5: { g = u + 16 | 0; c[g >> 2] = c[u + 32 >> 2] << 2; e = u + 84 | 0; c[e >> 2] = 0; c[e + 4 >> 2] = 0; c[e + 8 >> 2] = 0; c[e + 12 >> 2] = 0; c[e + 16 >> 2] = 0; e = c[u + 172 >> 2] | 0; if (e | 0 ? a[e + 5 >> 0] & 3 : 0) ke(u, e); if (c[u + 48 >> 2] & 64 | 0 ? (f = c[u + 40 >> 2] | 0, a[f + 5 >> 0] & 3) : 0) ke(u, f); te(u); e = c[u + 104 >> 2] | 0; if (e | 0) { f = u + 60 | 0; do { b = e + 5 | 0; a[b >> 0] = d[f >> 0] & 3 | d[b >> 0] & 184; ke(u, e); e = c[e >> 2] | 0 } while ((e | 0) != 0) } a[n >> 0] = 0; b = c[g >> 2] | 0; i = v; return b | 0 } case 0: { m = u + 84 | 0; if (c[m >> 2] | 0) { t = u + 16 | 0; b = c[t >> 2] | 0; ue(u); b = (c[t >> 2] | 0) - b | 0; i = v; return b | 0 } a[n >> 0] = 1; r = u + 16 | 0; g = c[r >> 2] | 0; s = u + 20 | 0; c[s >> 2] = g; if (a[b + 5 >> 0] & 3) ke(u, b); if (c[u + 48 >> 2] & 64 | 0 ? (e = c[u + 40 >> 2] | 0, a[e + 5 >> 0] & 3) : 0) ke(u, e); te(u); f = u + 112 | 0; e = c[u + 128 + 4 >> 2] | 0; if ((e | 0) != (f | 0)) do { if (((a[e + 5 >> 0] & 7) == 0 ? (h = c[e + 8 >> 2] | 0, c[h + 8 >> 2] & 64 | 0) : 0) ? (j = c[h >> 2] | 0, a[j + 5 >> 0] & 3) : 0) ke(u, j); e = c[e + 16 + 4 >> 2] | 0 } while ((e | 0) != (f | 0)); if (c[m >> 2] | 0) do ue(u); while ((c[m >> 2] | 0) != 0); k = (c[r >> 2] | 0) - g | 0; q = u + 92 | 0; f = c[q >> 2] | 0; o = u + 88 | 0; p = c[o >> 2] | 0; l = u + 96 | 0; e = c[l >> 2] | 0; c[l >> 2] = 0; c[o >> 2] = 0; c[q >> 2] = 0; c[m >> 2] = p; if (p | 0) do ue(u); while ((c[m >> 2] | 0) != 0); c[m >> 2] = f; if (f | 0) do ue(u); while ((c[m >> 2] | 0) != 0); c[m >> 2] = e; if (e | 0) do ue(u); while ((c[m >> 2] | 0) != 0); j = c[r >> 2] | 0; while (1) { e = c[l >> 2] | 0; c[l >> 2] = 0; f = 0; a: while (1) { do { if (!e) break a; p = e; e = c[e + 28 >> 2] | 0 } while (!(ve(u, p) | 0)); if (!(c[m >> 2] | 0)) { f = 1; continue } while (1) { ue(u); if (!(c[m >> 2] | 0)) { f = 1; continue a } } } if (!f) break } we(u, c[q >> 2] | 0, 0); n = u + 100 | 0; we(u, c[n >> 2] | 0, 0); o = c[q >> 2] | 0; p = c[n >> 2] | 0; e = c[r >> 2] | 0; h = c[t >> 2] | 0; f = h + 104 | 0; while (1) { g = c[f >> 2] | 0; if (!g) break; else f = g } k = k - j + e | 0; e = h + 72 | 0; g = c[e >> 2] | 0; b: do if (g | 0) while (1) { j = g; while (1) { g = j + 5 | 0; h = d[g >> 0] | 0; if (!(h & 3)) break; a[g >> 0] = h | 8; c[e >> 2] = c[j >> 2]; c[j >> 2] = c[f >> 2]; c[f >> 2] = j; f = c[e >> 2] | 0; if (!f) break b; else { h = j; j = f; f = h } } g = c[j >> 2] | 0; if (!g) break; else e = j } while (0); e = c[u + 104 >> 2] | 0; if (e | 0) { f = u + 60 | 0; do { j = e + 5 | 0; a[j >> 0] = d[f >> 0] & 3 | d[j >> 0] & 184; ke(u, e); e = c[e >> 2] | 0 } while ((e | 0) != 0) } if (c[m >> 2] | 0) do ue(u); while ((c[m >> 2] | 0) != 0); g = c[r >> 2] | 0; while (1) { e = c[l >> 2] | 0; c[l >> 2] = 0; f = 0; c: while (1) { do { if (!e) break c; j = e; e = c[e + 28 >> 2] | 0 } while (!(ve(u, j) | 0)); if (!(c[m >> 2] | 0)) { f = 1; continue } while (1) { ue(u); if (!(c[m >> 2] | 0)) { f = 1; continue c } } } if (!f) break } m = k - g | 0; e = c[l >> 2] | 0; if (e | 0) do { k = a[e + 7 >> 0] | 0; f = c[e + 16 >> 2] | 0; l = f + (1 << (k & 255) << 5) | 0; if (k << 24 >> 24 != 31) do { g = f + 8 | 0; do if (c[g >> 2] | 0) { h = f + 24 | 0; j = c[h >> 2] | 0; if (!(j & 64)) break; k = c[f + 16 >> 2] | 0; if ((j & 15 | 0) != 4) { if (!(a[k + 5 >> 0] & 3)) break; c[g >> 2] = 0; c[h >> 2] = 11; break } if (!k) break; if (!(a[k + 5 >> 0] & 3)) break; ke(u, k) } while (0); f = f + 32 | 0 } while (f >>> 0 < l >>> 0); e = c[e + 28 >> 2] | 0 } while ((e | 0) != 0); e = c[n >> 2] | 0; if (e | 0) do { k = a[e + 7 >> 0] | 0; f = c[e + 16 >> 2] | 0; l = f + (1 << (k & 255) << 5) | 0; if (k << 24 >> 24 != 31) do { g = f + 8 | 0; do if (c[g >> 2] | 0) { h = f + 24 | 0; j = c[h >> 2] | 0; if (!(j & 64)) break; k = c[f + 16 >> 2] | 0; if ((j & 15 | 0) != 4) { if (!(a[k + 5 >> 0] & 3)) break; c[g >> 2] = 0; c[h >> 2] = 11; break } if (!k) break; if (!(a[k + 5 >> 0] & 3)) break; ke(u, k) } while (0); f = f + 32 | 0 } while (f >>> 0 < l >>> 0); e = c[e + 28 >> 2] | 0 } while ((e | 0) != 0); we(u, c[q >> 2] | 0, o); we(u, c[n >> 2] | 0, p); k = u + 60 | 0; a[k >> 0] = d[k >> 0] ^ 3; k = m + (c[r >> 2] | 0) | 0; c[s >> 2] = (c[s >> 2] | 0) + k; j = c[t >> 2] | 0; a[j + 61 >> 0] = 2; c[j + 64 >> 2] = 0; e = j + 72 | 0; h = 0; do { h = h + 1 | 0; f = qe(b, e, 1) | 0 } while ((f | 0) == (e | 0)); c[j + 80 >> 2] = f; f = j + 68 | 0; e = 0; do { e = e + 1 | 0; g = qe(b, f, 1) | 0 } while ((g | 0) == (f | 0)); c[j + 76 >> 2] = g; b = ((e + h | 0) * 5 | 0) + k | 0; i = v; return b | 0 } case 2: { l = u + 64 | 0; k = u + 32 | 0; j = u + 24 | 0; g = 0; while (1) { f = c[l >> 2] | 0; h = f + g | 0; e = c[k >> 2] | 0; if ((h | 0) >= (e | 0)) break; qe(b, (c[j >> 2] | 0) + (h << 2) | 0, -3) | 0; g = g + 1 | 0; if ((g | 0) >= 80) { m = 93; break } } if ((m | 0) == 93) { f = c[l >> 2] | 0; e = c[k >> 2] | 0 } b = f + g | 0; c[l >> 2] = b; if ((b | 0) >= (e | 0)) a[n >> 0] = 3; b = g * 5 | 0; i = v; return b | 0 } case 3: { e = u + 80 | 0; f = c[e >> 2] | 0; if (!f) { a[n >> 0] = 4; b = 0; i = v; return b | 0 } else { c[e >> 2] = qe(b, f, 80) | 0; b = 400; i = v; return b | 0 } } case 4: { e = u + 76 | 0; f = c[e >> 2] | 0; if (f | 0) { c[e >> 2] = qe(b, f, 80) | 0; b = 400; i = v; return b | 0 } c[g >> 2] = c[u + 172 >> 2]; qe(b, g, 1) | 0; e = c[t >> 2] | 0; if ((a[e + 62 >> 0] | 0) != 1) { f = (c[e + 32 >> 2] | 0) / 2 | 0; if ((c[e + 28 >> 2] | 0) >>> 0 < f >>> 0) Lf(b, f); t = e + 144 | 0; u = e + 152 | 0; c[t >> 2] = Ue(b, c[t >> 2] | 0, c[u >> 2] | 0, 0) | 0; c[u >> 2] = 0 } a[n >> 0] = 5; b = 5; i = v; return b | 0 } default: { b = 0; i = v; return b | 0 } }return 0 } function te(b) { b = b | 0; var d = 0; d = c[b + 252 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 256 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 260 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 264 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 268 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 272 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 276 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 280 >> 2] | 0; if (d | 0 ? a[d + 5 >> 0] & 3 : 0) ke(b, d); d = c[b + 284 >> 2] | 0; if (!d) return; if (!(a[d + 5 >> 0] & 3)) return; ke(b, d); return } function ue(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; f = b + 84 | 0; t = c[f >> 2] | 0; h = t + 5 | 0; a[h >> 0] = d[h >> 0] | 4; e = c[t + 4 >> 2] | 0; g = e >>> 16; i = g & 255; switch ((e & 255) << 24 >> 24) { case 5: { k = t + 28 | 0; c[f >> 2] = c[k >> 2]; g = t + 24 | 0; f = c[g >> 2] | 0; do if (f) { if (!(a[f + 6 >> 0] & 8)) { e = bg(f, 3, c[b + 196 >> 2] | 0) | 0; f = c[g >> 2] | 0; if (f) q = 5 } else { e = 0; q = 5 } if ((q | 0) == 5) if (a[f + 5 >> 0] & 3) ke(b, f); if (((e | 0) != 0 ? (c[e + 8 >> 2] & 15 | 0) == 4 : 0) ? (m = (c[e >> 2] | 0) + 16 | 0, l = pm(m, 107) | 0, l = (l | 0) != 0, m = (pm(m, 118) | 0) != 0, l | m) : 0) { a[h >> 0] = d[h >> 0] & 251; if (l) if (m) { s = b + 100 | 0; c[k >> 2] = c[s >> 2]; c[s >> 2] = t; break } else { ve(b, t) | 0; break } s = a[t + 7 >> 0] | 0; f = c[t + 16 >> 2] | 0; j = f + (1 << (s & 255) << 5) | 0; e = (c[t + 8 >> 2] | 0) > 0 & 1; if (s << 24 >> 24 != 31) do { g = f + 8 | 0; h = f + 24 | 0; i = (c[h >> 2] & 64 | 0) == 0; if (!(c[g >> 2] | 0)) { if (!i ? (a[(c[f + 16 >> 2] | 0) + 5 >> 0] & 3) != 0 : 0) c[h >> 2] = 11 } else { if (!i ? (p = c[f + 16 >> 2] | 0, a[p + 5 >> 0] & 3) : 0) ke(b, p); if (!e) { e = c[g >> 2] | 0; do if (e & 64) { g = c[f >> 2] | 0; if ((e & 15 | 0) != 4) { e = d[g + 5 >> 0] & 3; break } if ((g | 0) != 0 ? (a[g + 5 >> 0] & 3) != 0 : 0) { ke(b, g); e = 0 } else e = 0 } else e = 0; while (0); e = (e | 0) != 0 & 1 } } f = f + 32 | 0 } while (f >>> 0 < j >>> 0); if (!e) { s = b + 88 | 0; c[k >> 2] = c[s >> 2]; c[s >> 2] = t; break } else { s = b + 92 | 0; c[k >> 2] = c[s >> 2]; c[s >> 2] = t; break } } else q = 34 } else q = 34; while (0); if ((q | 0) == 34) { i = t + 16 | 0; e = c[i >> 2] | 0; k = e + (1 << d[t + 7 >> 0] << 5) | 0; j = t + 8 | 0; f = c[j >> 2] | 0; if ((f | 0) > 0) { h = t + 12 | 0; g = 0; e = f; do { f = c[h >> 2] | 0; if ((c[f + (g << 4) + 8 >> 2] & 64 | 0) != 0 ? (o = c[f + (g << 4) >> 2] | 0, (a[o + 5 >> 0] & 3) != 0) : 0) { ke(b, o); e = c[j >> 2] | 0 } g = g + 1 | 0 } while ((g | 0) < (e | 0)); e = c[i >> 2] | 0 } if (e >>> 0 < k >>> 0) do { g = e + 8 | 0; f = c[g >> 2] | 0; h = e + 24 | 0; i = (c[h >> 2] & 64 | 0) == 0; if (!f) { if (!i ? a[(c[e + 16 >> 2] | 0) + 5 >> 0] & 3 : 0) c[h >> 2] = 11 } else { if (!i ? (r = c[e + 16 >> 2] | 0, (a[r + 5 >> 0] & 3) != 0) : 0) { ke(b, r); f = c[g >> 2] | 0 } if (f & 64 | 0 ? (s = c[e >> 2] | 0, a[s + 5 >> 0] & 3) : 0) ke(b, s) } e = e + 32 | 0 } while (e >>> 0 < k >>> 0) } e = (c[t + 8 >> 2] << 4) + 32 + (32 << d[t + 7 >> 0]) | 0; break } case 6: { c[f >> 2] = c[t + 8 >> 2]; e = c[t + 12 >> 2] | 0; if ((e | 0) != 0 ? (a[e + 5 >> 0] & 3) != 0 : 0) { ke(b, e); e = a[t + 6 >> 0] | 0 } else e = i; h = t + 6 | 0; if (!(e << 24 >> 24)) e = e & 255; else { g = 0; while (1) { f = c[t + 16 + (g << 2) >> 2] | 0; if ((f | 0) != 0 ? (a[f + 5 >> 0] & 3) != 0 : 0) { ke(b, f); f = a[h >> 0] | 0 } else f = e; g = g + 1 | 0; e = f & 255; if ((g | 0) >= (e | 0)) break; else e = f } } e = (e << 2) + 16 | 0; break } case 38: { c[f >> 2] = c[t + 8 >> 2]; h = t + 6 | 0; if (!(i << 24 >> 24)) e = g & 255; else { g = 0; e = i; while (1) { if ((c[t + 16 + (g << 4) + 8 >> 2] & 64 | 0) != 0 ? (j = c[t + 16 + (g << 4) >> 2] | 0, (a[j + 5 >> 0] & 3) != 0) : 0) { ke(b, j); f = a[h >> 0] | 0 } else f = e; g = g + 1 | 0; e = f & 255; if ((g | 0) >= (e | 0)) break; else e = f } } e = (e << 4) + 16 | 0; break } case 8: { r = t + 60 | 0; c[f >> 2] = c[r >> 2]; s = b + 88 | 0; c[r >> 2] = c[s >> 2]; c[s >> 2] = t; a[h >> 0] = e >>> 8 & 251; h = t + 28 | 0; e = c[h >> 2] | 0; if (!e) e = 1; else { g = t + 8 | 0; f = c[g >> 2] | 0; if (e >>> 0 < f >>> 0) do { if ((c[e + 8 >> 2] & 64 | 0) != 0 ? (k = c[e >> 2] | 0, (a[k + 5 >> 0] & 3) != 0) : 0) { ke(b, k); f = c[g >> 2] | 0 } e = e + 16 | 0 } while (e >>> 0 < f >>> 0); if ((a[b + 61 >> 0] | 0) == 1) { f = (c[h >> 2] | 0) + (c[t + 32 >> 2] << 4) | 0; if (e >>> 0 < f >>> 0) { do { c[e + 8 >> 2] = 0; e = e + 16 | 0 } while (e >>> 0 < f >>> 0); e = 112 } else e = 112 } else { e = t + 72 | 0; g = c[t + 16 >> 2] | 0; if ((e | 0) == (g | 0)) e = 112; else { f = 0; do { f = f + 1 | 0; e = c[e + 12 >> 2] | 0 } while ((e | 0) != (g | 0)); e = (f * 40 | 0) + 112 | 0 } } e = (c[t + 32 >> 2] << 4) + e | 0 } break } case 9: { c[f >> 2] = c[t + 72 >> 2]; e = t + 32 | 0; s = c[e >> 2] | 0; if (s | 0 ? a[s + 5 >> 0] & 3 : 0) c[e >> 2] = 0; e = c[t + 36 >> 2] | 0; if (e | 0 ? a[e + 5 >> 0] & 3 : 0) ke(b, e); l = t + 44 | 0; e = c[l >> 2] | 0; if ((e | 0) > 0) { h = t + 8 | 0; g = 0; do { f = c[h >> 2] | 0; if ((c[f + (g << 4) + 8 >> 2] & 64 | 0) != 0 ? (n = c[f + (g << 4) >> 2] | 0, (a[n + 5 >> 0] & 3) != 0) : 0) { ke(b, n); e = c[l >> 2] | 0 } g = g + 1 | 0 } while ((g | 0) < (e | 0)) } k = t + 40 | 0; e = c[k >> 2] | 0; if ((e | 0) > 0) { h = t + 28 | 0; g = 0; do { f = c[(c[h >> 2] | 0) + (g << 3) >> 2] | 0; if ((f | 0) != 0 ? (a[f + 5 >> 0] & 3) != 0 : 0) { ke(b, f); e = c[k >> 2] | 0 } g = g + 1 | 0 } while ((g | 0) < (e | 0)) } j = t + 56 | 0; e = c[j >> 2] | 0; if ((e | 0) > 0) { h = t + 16 | 0; g = 0; do { f = c[(c[h >> 2] | 0) + (g << 2) >> 2] | 0; if ((f | 0) != 0 ? (a[f + 5 >> 0] & 3) != 0 : 0) { ke(b, f); e = c[j >> 2] | 0 } g = g + 1 | 0 } while ((g | 0) < (e | 0)) } i = t + 60 | 0; f = c[i >> 2] | 0; if ((f | 0) > 0) { h = t + 24 | 0; g = 0; do { e = c[(c[h >> 2] | 0) + (g * 12 | 0) >> 2] | 0; if ((e | 0) != 0 ? (a[e + 5 >> 0] & 3) != 0 : 0) { ke(b, e); f = c[i >> 2] | 0 } g = g + 1 | 0 } while ((g | 0) < (f | 0)); e = c[j >> 2] | 0 } e = (f * 12 | 0) + 80 + (c[l >> 2] << 4) + (c[k >> 2] << 3) + ((c[t + 48 >> 2] | 0) + e + (c[t + 52 >> 2] | 0) << 2) | 0; break } default: return }b = b + 16 | 0; c[b >> 2] = (c[b >> 2] | 0) + e; return } function ve(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; m = e + 16 | 0; g = c[m >> 2] | 0; p = g + (1 << d[e + 7 >> 0] << 5) | 0; l = e + 8 | 0; h = c[l >> 2] | 0; if ((h | 0) > 0) { j = e + 12 | 0; f = 0; i = 0; do { g = c[j >> 2] | 0; if ((c[g + (i << 4) + 8 >> 2] & 64 | 0) != 0 ? (k = c[g + (i << 4) >> 2] | 0, (a[k + 5 >> 0] & 3) != 0) : 0) { ke(b, k); f = 1; h = c[l >> 2] | 0 } i = i + 1 | 0 } while ((i | 0) < (h | 0)); g = c[m >> 2] | 0 } else f = 0; if (g >>> 0 < p >>> 0) { n = g; h = 0; g = 0; do { k = n + 8 | 0; l = c[k >> 2] | 0; i = n + 24 | 0; m = c[i >> 2] | 0; j = (m & 64 | 0) == 0; a: do if (!l) { if (!j ? (a[(c[n + 16 >> 2] | 0) + 5 >> 0] & 3) != 0 : 0) c[i >> 2] = 11 } else { do if (j) { o = l; q = 18 } else { j = c[n + 16 >> 2] | 0; if ((m & 15 | 0) == 4) { if (!j) { o = l; q = 18; break } if (!(a[j + 5 >> 0] & 3)) { o = l; q = 18; break } ke(b, j); o = c[k >> 2] | 0; q = 18; break } i = (l & 64 | 0) == 0; if (!(a[j + 5 >> 0] & 3)) if (i) break a; else break; if (i) { g = 1; break a } h = (a[(c[n >> 2] | 0) + 5 >> 0] & 3) == 0 ? h : 1; g = 1; break a } while (0); if ((q | 0) == 18 ? (q = 0, (o & 64 | 0) == 0) : 0) break; i = c[n >> 2] | 0; if (a[i + 5 >> 0] & 3) { ke(b, i); f = 1 } } while (0); n = n + 32 | 0 } while (n >>> 0 < p >>> 0) } else { h = 0; g = 0 } if ((h | 0) != 0 | (a[b + 61 >> 0] | 0) != 1) { b = b + 96 | 0; c[e + 28 >> 2] = c[b >> 2]; c[b >> 2] = e; return f | 0 } if (!g) { b = b + 88 | 0; c[e + 28 >> 2] = c[b >> 2]; c[b >> 2] = e; return f | 0 } else { b = b + 100 | 0; c[e + 28 >> 2] = c[b >> 2]; c[b >> 2] = e; return f | 0 } return 0 } function we(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0; if ((e | 0) == (f | 0)) return; do { k = e + 16 | 0; g = c[k >> 2] | 0; l = g + (1 << (d[e + 7 >> 0] | 0) << 5) | 0; j = e + 8 | 0; if ((c[j >> 2] | 0) > 0) { h = e + 12 | 0; g = 0; do { i = c[h >> 2] | 0; if (xe(b, i + (g << 4) | 0) | 0) c[i + (g << 4) + 8 >> 2] = 0; g = g + 1 | 0 } while ((g | 0) < (c[j >> 2] | 0)); g = c[k >> 2] | 0 } if (g >>> 0 < l >>> 0) do { h = g + 8 | 0; if (((c[h >> 2] | 0 ? xe(b, g) | 0 : 0) ? (c[h >> 2] = 0, m = g + 24 | 0, c[m >> 2] & 64 | 0) : 0) ? a[(c[g + 16 >> 2] | 0) + 5 >> 0] & 3 : 0) c[m >> 2] = 11; g = g + 32 | 0 } while (g >>> 0 < l >>> 0); e = c[e + 28 >> 2] | 0 } while ((e | 0) != (f | 0)); return } function xe(b, e) { b = b | 0; e = e | 0; var f = 0; f = c[e + 8 >> 2] | 0; if (!(f & 64)) { f = 0; return f | 0 } e = c[e >> 2] | 0; if ((f & 15 | 0) != 4) { f = (d[e + 5 >> 0] | 0) & 3; return f | 0 } if (!e) { f = 0; return f | 0 } if (!(a[e + 5 >> 0] & 3)) { f = 0; return f | 0 } ke(b, e); f = 0; return f | 0 } function ye(a, b) { a = a | 0; b = b | 0; var e = 0; e = (c[a + 12 >> 2] | 0) + 61 | 0; if (1 << (d[e >> 0] | 0) & b | 0) return; do se(a) | 0; while (!(1 << (d[e >> 0] | 0) & b | 0)); return } function ze(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = b + 12 | 0; j = c[h >> 2] | 0; f = j + 104 | 0; while (1) { e = c[f >> 2] | 0; if (!e) break; else f = e } i = j + 72 | 0; g = c[i >> 2] | 0; if (!g) e = j; else { while (1) { e = g + 5 | 0; a[e >> 0] = d[e >> 0] | 0 | 8; c[i >> 2] = c[g >> 2]; c[g >> 2] = c[f >> 2]; c[f >> 2] = g; e = c[i >> 2] | 0; if (!e) break; else { f = g; g = e } } e = c[h >> 2] | 0 } f = e + 104 | 0; e = c[f >> 2] | 0; if (e | 0) do { h = e + 5 | 0; a[h >> 0] = (d[h >> 0] | 0) & 191; Ae(b, 0); e = c[f >> 2] | 0 } while ((e | 0) != 0); a[j + 60 >> 0] = 3; a[j + 62 >> 0] = 0; qe(b, i, -3) | 0; qe(b, j + 68 | 0, -3) | 0; g = j + 32 | 0; if ((c[g >> 2] | 0) <= 0) return; f = j + 24 | 0; e = 0; do { qe(b, (c[f >> 2] | 0) + (e << 2) | 0, -3) | 0; e = e + 1 | 0 } while ((e | 0) < (c[g >> 2] | 0)); return } function Ae(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; m = i; i = i + 32 | 0; n = m + 16 | 0; l = m; k = c[b + 12 >> 2] | 0; f = k + 104 | 0; h = c[f >> 2] | 0; c[f >> 2] = c[h >> 2]; f = k + 68 | 0; c[h >> 2] = c[f >> 2]; c[f >> 2] = h; f = h + 5 | 0; g = d[f >> 0] | 0; a[f >> 0] = g & 239; if ((d[k + 61 >> 0] | 0) >= 2) a[f >> 0] = (d[k + 60 >> 0] | 0) & 3 | g & 168; c[l >> 2] = h; j = l + 8 | 0; c[j >> 2] = d[h + 4 >> 0] | 0 | 64; f = cg(b, l, 2) | 0; if (!f) { i = m; return } g = f + 8 | 0; if ((c[g >> 2] & 15 | 0) != 6) { i = m; return } p = b + 41 | 0; q = a[p >> 0] | 0; k = k + 63 | 0; o = a[k >> 0] | 0; a[p >> 0] = 0; a[k >> 0] = 0; h = b + 8 | 0; r = c[h >> 2] | 0; t = f; s = c[t + 4 >> 2] | 0; f = r; c[f >> 2] = c[t >> 2]; c[f + 4 >> 2] = s; c[r + 8 >> 2] = c[g >> 2]; f = c[h >> 2] | 0; r = l; g = c[r + 4 >> 2] | 0; l = f + 16 | 0; c[l >> 2] = c[r >> 2]; c[l + 4 >> 2] = g; c[f + 24 >> 2] = c[j >> 2]; f = c[h >> 2] | 0; c[h >> 2] = f + 32; f = Xd(b, 23, 0, f - (c[b + 28 >> 2] | 0) | 0, 0) | 0; a[p >> 0] = q; a[k >> 0] = o; if (!((e | 0) != 0 & (f | 0) != 0)) { i = m; return } if ((f | 0) != 2) { t = f; Ld(b, t) } f = c[h >> 2] | 0; if ((c[f + -8 >> 2] & 15 | 0) == 4) f = (c[f + -16 >> 2] | 0) + 16 | 0; else f = 3308; c[n >> 2] = f; af(b, 3319, n) | 0; t = 5; Ld(b, t) } function Be(a, b) { a = a | 0; b = b | 0; Wd(a, (c[a + 8 >> 2] | 0) + -32 | 0, 0, 0); return } function Ce(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = c[b + 12 >> 2] | 0; do if ((a[j + 62 >> 0] | 0) == 2) { h = j + 20 | 0; d = c[h >> 2] | 0; if (!d) { De(b, 0); d = c[j + 8 >> 2] | 0; i = c[j + 12 >> 2] | 0; f = j + 61 | 0; e = i; g = d; d = i + d | 0 } else { f = j + 61 | 0; if ((a[f >> 0] | 0) != 5) do se(b) | 0; while ((a[f >> 0] | 0) != 5); a[f >> 0] = 0; g = c[j + 8 >> 2] | 0; e = c[j + 12 >> 2] | 0; i = (e + g | 0) >>> 0 > (R(c[j + 160 >> 2] | 0, (d >>> 0) / 100 | 0) | 0) >>> 0; d = i ? 0 : d } c[h >> 2] = d; i = g + e | 0; g = (i | 0) / 100 | 0; e = c[j + 156 >> 2] | 0; h = R(e, 0 - g | 0) | 0; Ef(j, ((e | 0) < (2147483644 / (g | 0) | 0 | 0) ? h : -2147483644) + i | 0) } else { g = j + 12 | 0; d = c[j + 164 >> 2] | 0; d = (d | 0) < 40 ? 40 : d; h = ((c[g >> 2] | 0) / 200 | 0) + 1 | 0; e = R(d, h) | 0; f = j + 61 | 0; e = (h | 0) < (2147483644 / (d | 0) | 0 | 0) ? e : 2147483644; do { e = e - (se(b) | 0) | 0; h = (a[f >> 0] | 0) == 5; if ((e | 0) <= -1600) { i = 11; break } } while (!h); if ((i | 0) == 11 ? !h : 0) { Ef(j, ((e | 0) / (d | 0) | 0) * 200 | 0); break } h = (c[j + 20 >> 2] | 0) / 100 | 0; e = c[j + 156 >> 2] | 0; i = R(e, 0 - h | 0) | 0; Ef(j, (c[g >> 2] | 0) + (c[j + 8 >> 2] | 0) + ((e | 0) < (2147483644 / (h | 0) | 0 | 0) ? i : -2147483644) | 0) } while (0); e = j + 104 | 0; if (!(c[e >> 2] | 0)) return; else d = 0; while (1) { if ((d | 0) >= 4 ? (a[f >> 0] | 0) != 5 : 0) { i = 18; break } Ae(b, 1); if (!(c[e >> 2] | 0)) { i = 18; break } else d = d + 1 | 0 } if ((i | 0) == 18) return } function De(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0; i = b + 12 | 0; j = c[i >> 2] | 0; k = j + 62 | 0; l = a[k >> 0] | 0; h = (e | 0) != 0; if (!h) { a[k >> 0] = 0; f = j + 104 | 0; e = c[f >> 2] | 0; if (e) { do { g = e + 5 | 0; a[g >> 0] = d[g >> 0] & 191; Ae(b, 1); e = c[f >> 2] | 0 } while ((e | 0) != 0); if ((a[k >> 0] | 0) == 2) e = 7; else e = 6 } else e = 6 } else { a[k >> 0] = 1; e = 6 } if ((e | 0) == 6 ? (d[j + 61 >> 0] | 0) < 2 : 0) e = 7; if ((e | 0) == 7) { g = c[i >> 2] | 0; a[g + 61 >> 0] = 2; c[g + 64 >> 2] = 0; e = g + 72 | 0; do f = qe(b, e, 1) | 0; while ((f | 0) == (e | 0)); c[g + 80 >> 2] = f; e = g + 68 | 0; do f = qe(b, e, 1) | 0; while ((f | 0) == (e | 0)); c[g + 76 >> 2] = f } e = c[i >> 2] | 0; f = e + 61 | 0; if ((a[f >> 0] | 0) == 5) g = 5; else { do se(b) | 0; while ((a[f >> 0] | 0) != 5); g = c[i >> 2] | 0; e = g; g = a[g + 61 >> 0] | 0 } f = e + 61 | 0; if (!(1 << (g & 255) & -33)) { do se(b) | 0; while (!(1 << d[f >> 0] & -33 | 0)); f = c[i >> 2] | 0; e = f; f = a[f + 61 >> 0] | 0 } else f = g; e = e + 61 | 0; if (f << 24 >> 24 != 5) do se(b) | 0; while ((a[e >> 0] | 0) != 5); if (l << 24 >> 24 == 2 ? (m = (c[i >> 2] | 0) + 61 | 0, a[m >> 0] | 0) : 0) do se(b) | 0; while ((a[m >> 0] | 0) != 0); a[k >> 0] = l; m = (c[j + 12 >> 2] | 0) + (c[j + 8 >> 2] | 0) | 0; k = (m | 0) / 100 | 0; g = c[j + 156 >> 2] | 0; l = R(k, 0 - g | 0) | 0; Ef(j, ((g | 0) < (2147483644 / (k | 0) | 0 | 0) ? l : -2147483644) + m | 0); if (h) return; f = (c[i >> 2] | 0) + 104 | 0; e = c[f >> 2] | 0; if (!e) return; do { m = e + 5 | 0; a[m >> 0] = d[m >> 0] & 191; Ae(b, 1); e = c[f >> 2] | 0 } while ((e | 0) != 0); return } function Ee(b) { b = b | 0; var d = 0; d = c[b + 12 >> 2] | 0; if (!(a[d + 63 >> 0] | 0)) { Ef(d, -1600); return } else { Ce(b); return } } function Fe(b) { b = b | 0; var e = 0, f = 0, g = 0; e = 0; do { f = Nf(b, c[16 + (e << 2) >> 2] | 0) | 0; g = f + 5 | 0; a[g >> 0] = d[g >> 0] | 0 | 32; e = e + 1 | 0; a[f + 6 >> 0] = e } while ((e | 0) != 22); return } function Ge(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 32 | 0; h = j + 16 | 0; g = j + 8 | 0; f = j; if ((d | 0) >= 257) { e = c[16 + (d + -257 << 2) >> 2] | 0; if ((d | 0) >= 286) { d = e; i = j; return d | 0 } d = c[b + 52 >> 2] | 0; c[h >> 2] = e; d = af(d, 3483, h) | 0; i = j; return d | 0 } e = c[b + 52 >> 2] | 0; if (!(a[2581 + (d + 1) >> 0] & 4)) { c[g >> 2] = d; d = af(e, 3474, g) | 0; i = j; return d | 0 } else { c[f >> 2] = d; d = af(e, 3469, f) | 0; i = j; return d | 0 } return 0 } function He(a, b) { a = a | 0; b = b | 0; Ie(a, b, c[a + 16 >> 2] | 0) } function Ie(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = i; i = i + 128 | 0; q = r + 48 | 0; h = r + 40 | 0; g = r + 32 | 0; f = r + 24 | 0; m = r + 16 | 0; n = r; r = r + 56 | 0; bf(r, (c[b + 68 >> 2] | 0) + 16 | 0, 60); p = b + 52 | 0; o = c[p >> 2] | 0; j = c[b + 4 >> 2] | 0; c[n >> 2] = r; c[n + 4 >> 2] = j; c[n + 8 >> 2] = d; n = af(o, 3488, n) | 0; if (!e) { r = c[p >> 2] | 0; Ld(r, 3) } o = c[p >> 2] | 0; do if ((e + -287 | 0) >>> 0 >= 3) { if ((e | 0) >= 257) { d = c[16 + (e + -257 << 2) >> 2] | 0; if ((e | 0) >= 286) break; c[h >> 2] = d; d = af(o, 3483, h) | 0; break } if (!(a[2581 + (e + 1) >> 0] & 4)) { c[g >> 2] = e; d = af(o, 3474, g) | 0; break } else { c[f >> 2] = e; d = af(o, 3469, f) | 0; break } } else { f = b + 60 | 0; g = c[f >> 2] | 0; e = g + 4 | 0; d = c[e >> 2] | 0; h = g + 8 | 0; j = c[h >> 2] | 0; do if ((d + 1 | 0) >>> 0 > j >>> 0) { if (j >>> 0 > 2147483645) Ie(b, 3498, 0); d = j << 1; if ((d | 0) == -2) Te(o); else { l = Ue(o, c[g >> 2] | 0, j, d) | 0; c[g >> 2] = l; c[h >> 2] = d; k = c[e >> 2] | 0; break } } else { k = d; l = c[g >> 2] | 0 } while (0); c[e >> 2] = k + 1; a[l + k >> 0] = 0; d = c[p >> 2] | 0; c[m >> 2] = c[c[f >> 2] >> 2]; d = af(d, 3483, m) | 0 } while (0); c[q >> 2] = n; c[q + 4 >> 2] = d; af(o, 3523, q) | 0; r = c[p >> 2] | 0; Ld(r, 3) } function Je(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0; g = c[a + 52 >> 2] | 0; b = Mf(g, b, e) | 0; f = g + 8 | 0; e = c[f >> 2] | 0; c[f >> 2] = e + 16; c[e >> 2] = b; c[e + 8 >> 2] = d[b + 4 >> 0] | 0 | 64; e = Vf(g, c[(c[a + 48 >> 2] | 0) + 4 >> 2] | 0, (c[f >> 2] | 0) + -16 | 0) | 0; a = e + 8 | 0; if (!(c[a >> 2] | 0)) { c[e >> 2] = 1; c[a >> 2] = 1; if ((c[(c[g + 12 >> 2] | 0) + 12 >> 2] | 0) > 0) Ee(g) } else b = c[e + 16 >> 2] | 0; c[f >> 2] = (c[f >> 2] | 0) + -16; return b | 0 } function Ke(b, e, f, g, h) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0; a[e + 76 >> 0] = 46; i = e + 52 | 0; c[i >> 2] = b; c[e >> 2] = h; c[e + 32 >> 2] = 286; c[e + 56 >> 2] = f; c[e + 48 >> 2] = 0; c[e + 4 >> 2] = 1; c[e + 8 >> 2] = 1; c[e + 68 >> 2] = g; h = Nf(b, 3534) | 0; c[e + 72 >> 2] = h; h = h + 5 | 0; a[h >> 0] = d[h >> 0] | 0 | 32; h = e + 60 | 0; g = c[h >> 2] | 0; g = Ue(c[i >> 2] | 0, c[g >> 2] | 0, c[g + 8 >> 2] | 0, 32) | 0; h = c[h >> 2] | 0; c[h >> 2] = g; c[h + 8 >> 2] = 32; return } function Le(a) { a = a | 0; var b = 0; c[a + 8 >> 2] = c[a + 4 >> 2]; b = a + 32 | 0; if ((c[b >> 2] | 0) == 286) { c[a + 16 >> 2] = Me(a, a + 24 | 0) | 0; return } else { a = a + 16 | 0; c[a >> 2] = c[b >> 2]; c[a + 4 >> 2] = c[b + 4 >> 2]; c[a + 8 >> 2] = c[b + 8 >> 2]; c[a + 12 >> 2] = c[b + 12 >> 2]; c[b >> 2] = 286; return } }
function Xm(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0; l = i; i = i + 64 | 0; g = l + 32 | 0; j = l + 24 | 0; h = l + 8 | 0; b = l; k = l + 40 | 0; f = l + 48 | 0; c[k >> 2] = a; if (!a) c[k >> 2] = 15617; c[b >> 2] = 12909; c[b + 4 >> 2] = 7; if (!(Ha(33, b | 0) | 0)) { d = f + 4 | 0; e = k; a = 0; while (1) { c[h >> 2] = 0; c[h + 4 >> 2] = f; c[h + 8 >> 2] = 0; ka(265, h | 0) | 0; b = c[k >> 2] | 0; m = c[d >> 2] ^ e ^ b; n = c[3261] | 0; c[3261] = n + 1; c[j >> 2] = n; c[j + 4 >> 2] = m; Bl(b, 20, 12914, j) | 0; c[g >> 2] = c[k >> 2]; c[g + 4 >> 2] = 0; if (Ha(33, g | 0) | 0) break; b = a + 1 | 0; if ((a | 0) < 100) a = b; else { a = b; break } } a = (a | 0) > 99 ? 0 : c[k >> 2] | 0 } else a = 0; i = l; return a | 0 } function Ym(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 32 | 0; f = j + 16 | 0; e = j; g = rm(b) | 0; if ((c[d + 76 >> 2] | 0) > -1) h = Fl(d) | 0; else h = 0; um(d) | 0; do if (!a) { a = d + 60 | 0; if (g & 524288 | 0) { c[e >> 2] = c[a >> 2]; c[e + 4 >> 2] = 2; c[e + 8 >> 2] = 1; ia(221, e | 0) | 0 } c[f >> 2] = c[a >> 2]; c[f + 4 >> 2] = 4; c[f + 8 >> 2] = g & -524481; if ((Zk(ia(221, f | 0) | 0) | 0) < 0) a = 15; else a = 12 } else { a = qm(a, b) | 0; if (!a) a = 15; else { b = a + 60 | 0; e = c[b >> 2] | 0; f = c[d + 60 >> 2] | 0; if ((e | 0) != (f | 0)) { if ((Zm(e, f, g & 524288) | 0) < 0) { tm(a) | 0; a = 15; break } } else c[b >> 2] = -1; c[d >> 2] = c[d >> 2] & 1 | c[a >> 2]; c[d + 32 >> 2] = c[a + 32 >> 2]; c[d + 36 >> 2] = c[a + 36 >> 2]; c[d + 40 >> 2] = c[a + 40 >> 2]; c[d + 12 >> 2] = c[a + 12 >> 2]; tm(a) | 0; a = 12 } } while (0); if ((a | 0) == 12) { if (h) al(d) } else if ((a | 0) == 15) { tm(d) | 0; d = 0 } i = j; return d | 0 } function Zm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, j = 0, k = 0; k = i; i = i + 48 | 0; j = k + 24 | 0; h = k + 16 | 0; f = k; a: do if ((a | 0) == (b | 0)) d = Zk(-22) | 0; else { g = (d & 524288 | 0) != 0; b: do if (g) { c: while (1) { c[f >> 2] = a; c[f + 4 >> 2] = b; c[f + 8 >> 2] = d; e = ya(330, f | 0) | 0; switch (e | 0) { case -38: break b; case -16: break; default: break c } } d = Zk(e) | 0; break a } while (0); do { c[h >> 2] = a; c[h + 4 >> 2] = b; d = la(63, h | 0) | 0 } while ((d | 0) == -16); if (g) { c[j >> 2] = b; c[j + 4 >> 2] = 2; c[j + 8 >> 2] = 1; ia(221, j | 0) | 0 } d = Zk(d) | 0 } while (0); i = k; return d | 0 } function _m() { var a = 0, b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0; j = i; i = i + 48 | 0; g = j + 16 | 0; f = j; b = j + 20 | 0; a = 0; while (1) { d = Xm(b) | 0; if (!d) { a = 0; break } c[f >> 2] = d; c[f + 4 >> 2] = 32962; c[f + 8 >> 2] = 384; e = Zk(Qa(5, f | 0) | 0) | 0; a = a + 1 | 0; if ((e | 0) > -1) { h = 5; break } if ((a | 0) >= 100) { a = 0; break } } if ((h | 0) == 5) { a = sm(e, 12926) | 0; c[g >> 2] = d; Ma(10, g | 0) | 0 } i = j; return a | 0 } function $m(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0; L = i; i = i + 16 | 0; p = L; do if (a >>> 0 < 245) { o = a >>> 0 < 11 ? 16 : a + 11 & -8; a = o >>> 3; t = c[3262] | 0; d = t >>> a; if (d & 3 | 0) { a = (d & 1 ^ 1) + a | 0; d = 13088 + (a << 1 << 2) | 0; e = d + 8 | 0; f = c[e >> 2] | 0; g = f + 8 | 0; h = c[g >> 2] | 0; do if ((d | 0) != (h | 0)) { if (h >>> 0 < (c[3266] | 0) >>> 0) ma(); b = h + 12 | 0; if ((c[b >> 2] | 0) == (f | 0)) { c[b >> 2] = d; c[e >> 2] = h; break } else ma() } else c[3262] = t & ~(1 << a); while (0); K = a << 3; c[f + 4 >> 2] = K | 3; K = f + K + 4 | 0; c[K >> 2] = c[K >> 2] | 1; K = g; i = L; return K | 0 } s = c[3264] | 0; if (o >>> 0 > s >>> 0) { if (d | 0) { j = 2 << a; a = d << a & (j | 0 - j); a = (a & 0 - a) + -1 | 0; j = a >>> 12 & 16; a = a >>> j; e = a >>> 5 & 8; a = a >>> e; g = a >>> 2 & 4; a = a >>> g; d = a >>> 1 & 2; a = a >>> d; b = a >>> 1 & 1; b = (e | j | g | d | b) + (a >>> b) | 0; a = 13088 + (b << 1 << 2) | 0; d = a + 8 | 0; g = c[d >> 2] | 0; j = g + 8 | 0; e = c[j >> 2] | 0; do if ((a | 0) != (e | 0)) { if (e >>> 0 < (c[3266] | 0) >>> 0) ma(); f = e + 12 | 0; if ((c[f >> 2] | 0) == (g | 0)) { c[f >> 2] = a; c[d >> 2] = e; k = t; break } else ma() } else { k = t & ~(1 << b); c[3262] = k } while (0); h = (b << 3) - o | 0; c[g + 4 >> 2] = o | 3; e = g + o | 0; c[e + 4 >> 2] = h | 1; c[e + h >> 2] = h; if (s | 0) { f = c[3267] | 0; b = s >>> 3; d = 13088 + (b << 1 << 2) | 0; b = 1 << b; if (k & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { l = a; m = b } } else { c[3262] = k | b; l = d; m = d + 8 | 0 } c[m >> 2] = f; c[l + 12 >> 2] = f; c[f + 8 >> 2] = l; c[f + 12 >> 2] = d } c[3264] = h; c[3267] = e; K = j; i = L; return K | 0 } l = c[3263] | 0; if (l) { a = (l & 0 - l) + -1 | 0; J = a >>> 12 & 16; a = a >>> J; I = a >>> 5 & 8; a = a >>> I; K = a >>> 2 & 4; a = a >>> K; j = a >>> 1 & 2; a = a >>> j; k = a >>> 1 & 1; k = c[13352 + ((I | J | K | j | k) + (a >>> k) << 2) >> 2] | 0; a = k; j = k; k = (c[k + 4 >> 2] & -8) - o | 0; while (1) { b = c[a + 16 >> 2] | 0; if (!b) { b = c[a + 20 >> 2] | 0; if (!b) break } K = (c[b + 4 >> 2] & -8) - o | 0; J = K >>> 0 < k >>> 0; a = b; j = J ? b : j; k = J ? K : k } f = c[3266] | 0; if (j >>> 0 < f >>> 0) ma(); h = j + o | 0; if (j >>> 0 >= h >>> 0) ma(); g = c[j + 24 >> 2] | 0; d = c[j + 12 >> 2] | 0; do if ((d | 0) == (j | 0)) { a = j + 20 | 0; b = c[a >> 2] | 0; if (!b) { a = j + 16 | 0; b = c[a >> 2] | 0; if (!b) { n = 0; break } } while (1) { d = b + 20 | 0; e = c[d >> 2] | 0; if (e | 0) { b = e; a = d; continue } d = b + 16 | 0; e = c[d >> 2] | 0; if (!e) break; else { b = e; a = d } } if (a >>> 0 < f >>> 0) ma(); else { c[a >> 2] = 0; n = b; break } } else { e = c[j + 8 >> 2] | 0; if (e >>> 0 < f >>> 0) ma(); b = e + 12 | 0; if ((c[b >> 2] | 0) != (j | 0)) ma(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (j | 0)) { c[b >> 2] = d; c[a >> 2] = e; n = d; break } else ma() } while (0); do if (g | 0) { b = c[j + 28 >> 2] | 0; a = 13352 + (b << 2) | 0; if ((j | 0) == (c[a >> 2] | 0)) { c[a >> 2] = n; if (!n) { c[3263] = l & ~(1 << b); break } } else { if (g >>> 0 < (c[3266] | 0) >>> 0) ma(); b = g + 16 | 0; if ((c[b >> 2] | 0) == (j | 0)) c[b >> 2] = n; else c[g + 20 >> 2] = n; if (!n) break } a = c[3266] | 0; if (n >>> 0 < a >>> 0) ma(); c[n + 24 >> 2] = g; b = c[j + 16 >> 2] | 0; do if (b | 0) if (b >>> 0 < a >>> 0) ma(); else { c[n + 16 >> 2] = b; c[b + 24 >> 2] = n; break } while (0); b = c[j + 20 >> 2] | 0; if (b | 0) if (b >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[n + 20 >> 2] = b; c[b + 24 >> 2] = n; break } } while (0); if (k >>> 0 < 16) { K = k + o | 0; c[j + 4 >> 2] = K | 3; K = j + K + 4 | 0; c[K >> 2] = c[K >> 2] | 1 } else { c[j + 4 >> 2] = o | 3; c[h + 4 >> 2] = k | 1; c[h + k >> 2] = k; if (s | 0) { e = c[3267] | 0; b = s >>> 3; d = 13088 + (b << 1 << 2) | 0; b = 1 << b; if (t & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { q = a; r = b } } else { c[3262] = t | b; q = d; r = d + 8 | 0 } c[r >> 2] = e; c[q + 12 >> 2] = e; c[e + 8 >> 2] = q; c[e + 12 >> 2] = d } c[3264] = k; c[3267] = h } K = j + 8 | 0; i = L; return K | 0 } } } else if (a >>> 0 <= 4294967231) { a = a + 11 | 0; o = a & -8; l = c[3263] | 0; if (l) { e = 0 - o | 0; a = a >>> 8; if (a) if (o >>> 0 > 16777215) k = 31; else { r = (a + 1048320 | 0) >>> 16 & 8; D = a << r; q = (D + 520192 | 0) >>> 16 & 4; D = D << q; k = (D + 245760 | 0) >>> 16 & 2; k = 14 - (q | r | k) + (D << k >>> 15) | 0; k = o >>> (k + 7 | 0) & 1 | k << 1 } else k = 0; a = c[13352 + (k << 2) >> 2] | 0; a: do if (!a) { d = 0; f = 0; D = 86 } else { f = 0; j = a; h = o << ((k | 0) == 31 ? 0 : 25 - (k >>> 1) | 0); d = 0; while (1) { a = (c[j + 4 >> 2] & -8) - o | 0; if (a >>> 0 < e >>> 0) if (!a) { a = j; e = 0; d = j; D = 90; break a } else { f = j; e = a } a = c[j + 20 >> 2] | 0; j = c[j + 16 + (h >>> 31 << 2) >> 2] | 0; d = (a | 0) == 0 | (a | 0) == (j | 0) ? d : a; a = (j | 0) == 0; if (a) { D = 86; break } else h = h << (a & 1 ^ 1) } } while (0); if ((D | 0) == 86) { if ((d | 0) == 0 & (f | 0) == 0) { a = 2 << k; a = l & (a | 0 - a); if (!a) break; r = (a & 0 - a) + -1 | 0; m = r >>> 12 & 16; r = r >>> m; k = r >>> 5 & 8; r = r >>> k; n = r >>> 2 & 4; r = r >>> n; q = r >>> 1 & 2; r = r >>> q; d = r >>> 1 & 1; d = c[13352 + ((k | m | n | q | d) + (r >>> d) << 2) >> 2] | 0 } if (!d) { k = f; j = e } else { a = f; D = 90 } } if ((D | 0) == 90) while (1) { D = 0; r = (c[d + 4 >> 2] & -8) - o | 0; f = r >>> 0 < e >>> 0; e = f ? r : e; a = f ? d : a; f = c[d + 16 >> 2] | 0; if (f | 0) { d = f; D = 90; continue } d = c[d + 20 >> 2] | 0; if (!d) { k = a; j = e; break } else D = 90 } if ((k | 0) != 0 ? j >>> 0 < ((c[3264] | 0) - o | 0) >>> 0 : 0) { f = c[3266] | 0; if (k >>> 0 < f >>> 0) ma(); h = k + o | 0; if (k >>> 0 >= h >>> 0) ma(); g = c[k + 24 >> 2] | 0; d = c[k + 12 >> 2] | 0; do if ((d | 0) == (k | 0)) { a = k + 20 | 0; b = c[a >> 2] | 0; if (!b) { a = k + 16 | 0; b = c[a >> 2] | 0; if (!b) { s = 0; break } } while (1) { d = b + 20 | 0; e = c[d >> 2] | 0; if (e | 0) { b = e; a = d; continue } d = b + 16 | 0; e = c[d >> 2] | 0; if (!e) break; else { b = e; a = d } } if (a >>> 0 < f >>> 0) ma(); else { c[a >> 2] = 0; s = b; break } } else { e = c[k + 8 >> 2] | 0; if (e >>> 0 < f >>> 0) ma(); b = e + 12 | 0; if ((c[b >> 2] | 0) != (k | 0)) ma(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (k | 0)) { c[b >> 2] = d; c[a >> 2] = e; s = d; break } else ma() } while (0); do if (g) { b = c[k + 28 >> 2] | 0; a = 13352 + (b << 2) | 0; if ((k | 0) == (c[a >> 2] | 0)) { c[a >> 2] = s; if (!s) { t = l & ~(1 << b); c[3263] = t; break } } else { if (g >>> 0 < (c[3266] | 0) >>> 0) ma(); b = g + 16 | 0; if ((c[b >> 2] | 0) == (k | 0)) c[b >> 2] = s; else c[g + 20 >> 2] = s; if (!s) { t = l; break } } a = c[3266] | 0; if (s >>> 0 < a >>> 0) ma(); c[s + 24 >> 2] = g; b = c[k + 16 >> 2] | 0; do if (b | 0) if (b >>> 0 < a >>> 0) ma(); else { c[s + 16 >> 2] = b; c[b + 24 >> 2] = s; break } while (0); b = c[k + 20 >> 2] | 0; if (b) if (b >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[s + 20 >> 2] = b; c[b + 24 >> 2] = s; t = l; break } else t = l } else t = l; while (0); do if (j >>> 0 >= 16) { c[k + 4 >> 2] = o | 3; c[h + 4 >> 2] = j | 1; c[h + j >> 2] = j; b = j >>> 3; if (j >>> 0 < 256) { d = 13088 + (b << 1 << 2) | 0; a = c[3262] | 0; b = 1 << b; if (a & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { B = a; C = b } } else { c[3262] = a | b; B = d; C = d + 8 | 0 } c[C >> 2] = h; c[B + 12 >> 2] = h; c[h + 8 >> 2] = B; c[h + 12 >> 2] = d; break } b = j >>> 8; if (b) if (j >>> 0 > 16777215) b = 31; else { J = (b + 1048320 | 0) >>> 16 & 8; K = b << J; I = (K + 520192 | 0) >>> 16 & 4; K = K << I; b = (K + 245760 | 0) >>> 16 & 2; b = 14 - (I | J | b) + (K << b >>> 15) | 0; b = j >>> (b + 7 | 0) & 1 | b << 1 } else b = 0; d = 13352 + (b << 2) | 0; c[h + 28 >> 2] = b; a = h + 16 | 0; c[a + 4 >> 2] = 0; c[a >> 2] = 0; a = 1 << b; if (!(t & a)) { c[3263] = t | a; c[d >> 2] = h; c[h + 24 >> 2] = d; c[h + 12 >> 2] = h; c[h + 8 >> 2] = h; break } a = j << ((b | 0) == 31 ? 0 : 25 - (b >>> 1) | 0); e = c[d >> 2] | 0; while (1) { if ((c[e + 4 >> 2] & -8 | 0) == (j | 0)) { D = 148; break } d = e + 16 + (a >>> 31 << 2) | 0; b = c[d >> 2] | 0; if (!b) { D = 145; break } else { a = a << 1; e = b } } if ((D | 0) == 145) if (d >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[d >> 2] = h; c[h + 24 >> 2] = e; c[h + 12 >> 2] = h; c[h + 8 >> 2] = h; break } else if ((D | 0) == 148) { b = e + 8 | 0; a = c[b >> 2] | 0; K = c[3266] | 0; if (a >>> 0 >= K >>> 0 & e >>> 0 >= K >>> 0) { c[a + 12 >> 2] = h; c[b >> 2] = h; c[h + 8 >> 2] = a; c[h + 12 >> 2] = e; c[h + 24 >> 2] = 0; break } else ma() } } else { K = j + o | 0; c[k + 4 >> 2] = K | 3; K = k + K + 4 | 0; c[K >> 2] = c[K >> 2] | 1 } while (0); K = k + 8 | 0; i = L; return K | 0 } } } else o = -1; while (0); d = c[3264] | 0; if (d >>> 0 >= o >>> 0) { b = d - o | 0; a = c[3267] | 0; if (b >>> 0 > 15) { K = a + o | 0; c[3267] = K; c[3264] = b; c[K + 4 >> 2] = b | 1; c[K + b >> 2] = b; c[a + 4 >> 2] = o | 3 } else { c[3264] = 0; c[3267] = 0; c[a + 4 >> 2] = d | 3; K = a + d + 4 | 0; c[K >> 2] = c[K >> 2] | 1 } K = a + 8 | 0; i = L; return K | 0 } j = c[3265] | 0; if (j >>> 0 > o >>> 0) { I = j - o | 0; c[3265] = I; K = c[3268] | 0; J = K + o | 0; c[3268] = J; c[J + 4 >> 2] = I | 1; c[K + 4 >> 2] = o | 3; K = K + 8 | 0; i = L; return K | 0 } if (!(c[3380] | 0)) { c[3382] = 4096; c[3381] = 4096; c[3383] = -1; c[3384] = -1; c[3385] = 0; c[3373] = 0; a = p & -16 ^ 1431655768; c[p >> 2] = a; c[3380] = a; a = 4096 } else a = c[3382] | 0; k = o + 48 | 0; l = o + 47 | 0; h = a + l | 0; f = 0 - a | 0; m = h & f; if (m >>> 0 <= o >>> 0) { K = 0; i = L; return K | 0 } a = c[3372] | 0; if (a | 0 ? (B = c[3370] | 0, C = B + m | 0, C >>> 0 <= B >>> 0 | C >>> 0 > a >>> 0) : 0) { K = 0; i = L; return K | 0 } b: do if (!(c[3373] & 4)) { d = c[3268] | 0; c: do if (d) { e = 13496; while (1) { a = c[e >> 2] | 0; if (a >>> 0 <= d >>> 0 ? (u = e + 4 | 0, (a + (c[u >> 2] | 0) | 0) >>> 0 > d >>> 0) : 0) break; a = c[e + 8 >> 2] | 0; if (!a) { D = 172; break c } else e = a } d = h - j & f; if (d >>> 0 < 2147483647) { a = xa(d | 0) | 0; if ((a | 0) == ((c[e >> 2] | 0) + (c[u >> 2] | 0) | 0)) { if ((a | 0) != (-1 | 0)) { h = d; g = a; D = 190; break b } } else { b = d; D = 180 } } } else D = 172; while (0); do if (((D | 0) == 172 ? (g = xa(0) | 0, (g | 0) != (-1 | 0)) : 0) ? (b = g, v = c[3381] | 0, w = v + -1 | 0, b = ((w & b | 0) == 0 ? 0 : (w + b & 0 - v) - b | 0) + m | 0, v = c[3370] | 0, w = b + v | 0, b >>> 0 > o >>> 0 & b >>> 0 < 2147483647) : 0) { C = c[3372] | 0; if (C | 0 ? w >>> 0 <= v >>> 0 | w >>> 0 > C >>> 0 : 0) break; a = xa(b | 0) | 0; if ((a | 0) == (g | 0)) { h = b; D = 190; break b } else D = 180 } while (0); d: do if ((D | 0) == 180) { d = 0 - b | 0; do if (k >>> 0 > b >>> 0 & (b >>> 0 < 2147483647 & (a | 0) != (-1 | 0)) ? (x = c[3382] | 0, x = l - b + x & 0 - x, x >>> 0 < 2147483647) : 0) if ((xa(x | 0) | 0) == (-1 | 0)) { xa(d | 0) | 0; break d } else { b = x + b | 0; break } while (0); if ((a | 0) != (-1 | 0)) { h = b; g = a; D = 190; break b } } while (0); c[3373] = c[3373] | 4; D = 187 } else D = 187; while (0); if ((((D | 0) == 187 ? m >>> 0 < 2147483647 : 0) ? (A = xa(m | 0) | 0, y = xa(0) | 0, A >>> 0 < y >>> 0 & ((A | 0) != (-1 | 0) & (y | 0) != (-1 | 0))) : 0) ? (z = y - A | 0, z >>> 0 > (o + 40 | 0) >>> 0) : 0) { h = z; g = A; D = 190 } if ((D | 0) == 190) { b = (c[3370] | 0) + h | 0; c[3370] = b; if (b >>> 0 > (c[3371] | 0) >>> 0) c[3371] = b; l = c[3268] | 0; do if (l) { b = 13496; while (1) { a = c[b >> 2] | 0; d = b + 4 | 0; e = c[d >> 2] | 0; if ((g | 0) == (a + e | 0)) { D = 200; break } f = c[b + 8 >> 2] | 0; if (!f) break; else b = f } if (((D | 0) == 200 ? (c[b + 12 >> 2] & 8 | 0) == 0 : 0) ? l >>> 0 < g >>> 0 & l >>> 0 >= a >>> 0 : 0) { c[d >> 2] = e + h; K = l + 8 | 0; K = (K & 7 | 0) == 0 ? 0 : 0 - K & 7; J = l + K | 0; K = h - K + (c[3265] | 0) | 0; c[3268] = J; c[3265] = K; c[J + 4 >> 2] = K | 1; c[J + K + 4 >> 2] = 40; c[3269] = c[3384]; break } b = c[3266] | 0; if (g >>> 0 < b >>> 0) { c[3266] = g; j = g } else j = b; a = g + h | 0; b = 13496; while (1) { if ((c[b >> 2] | 0) == (a | 0)) { D = 208; break } b = c[b + 8 >> 2] | 0; if (!b) { a = 13496; break } } if ((D | 0) == 208) if (!(c[b + 12 >> 2] & 8)) { c[b >> 2] = g; n = b + 4 | 0; c[n >> 2] = (c[n >> 2] | 0) + h; n = g + 8 | 0; n = g + ((n & 7 | 0) == 0 ? 0 : 0 - n & 7) | 0; b = a + 8 | 0; b = a + ((b & 7 | 0) == 0 ? 0 : 0 - b & 7) | 0; m = n + o | 0; k = b - n - o | 0; c[n + 4 >> 2] = o | 3; do if ((b | 0) != (l | 0)) { if ((b | 0) == (c[3267] | 0)) { K = (c[3264] | 0) + k | 0; c[3264] = K; c[3267] = m; c[m + 4 >> 2] = K | 1; c[m + K >> 2] = K; break } a = c[b + 4 >> 2] | 0; if ((a & 3 | 0) == 1) { h = a & -8; f = a >>> 3; e: do if (a >>> 0 >= 256) { g = c[b + 24 >> 2] | 0; e = c[b + 12 >> 2] | 0; do if ((e | 0) == (b | 0)) { e = b + 16 | 0; d = e + 4 | 0; a = c[d >> 2] | 0; if (!a) { a = c[e >> 2] | 0; if (!a) { I = 0; break } else d = e } while (1) { e = a + 20 | 0; f = c[e >> 2] | 0; if (f | 0) { a = f; d = e; continue } e = a + 16 | 0; f = c[e >> 2] | 0; if (!f) break; else { a = f; d = e } } if (d >>> 0 < j >>> 0) ma(); else { c[d >> 2] = 0; I = a; break } } else { f = c[b + 8 >> 2] | 0; if (f >>> 0 < j >>> 0) ma(); a = f + 12 | 0; if ((c[a >> 2] | 0) != (b | 0)) ma(); d = e + 8 | 0; if ((c[d >> 2] | 0) == (b | 0)) { c[a >> 2] = e; c[d >> 2] = f; I = e; break } else ma() } while (0); if (!g) break; a = c[b + 28 >> 2] | 0; d = 13352 + (a << 2) | 0; do if ((b | 0) != (c[d >> 2] | 0)) { if (g >>> 0 < (c[3266] | 0) >>> 0) ma(); a = g + 16 | 0; if ((c[a >> 2] | 0) == (b | 0)) c[a >> 2] = I; else c[g + 20 >> 2] = I; if (!I) break e } else { c[d >> 2] = I; if (I | 0) break; c[3263] = c[3263] & ~(1 << a); break e } while (0); e = c[3266] | 0; if (I >>> 0 < e >>> 0) ma(); c[I + 24 >> 2] = g; a = b + 16 | 0; d = c[a >> 2] | 0; do if (d | 0) if (d >>> 0 < e >>> 0) ma(); else { c[I + 16 >> 2] = d; c[d + 24 >> 2] = I; break } while (0); a = c[a + 4 >> 2] | 0; if (!a) break; if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[I + 20 >> 2] = a; c[a + 24 >> 2] = I; break } } else { d = c[b + 8 >> 2] | 0; e = c[b + 12 >> 2] | 0; a = 13088 + (f << 1 << 2) | 0; do if ((d | 0) != (a | 0)) { if (d >>> 0 < j >>> 0) ma(); if ((c[d + 12 >> 2] | 0) == (b | 0)) break; ma() } while (0); if ((e | 0) == (d | 0)) { c[3262] = c[3262] & ~(1 << f); break } do if ((e | 0) == (a | 0)) F = e + 8 | 0; else { if (e >>> 0 < j >>> 0) ma(); a = e + 8 | 0; if ((c[a >> 2] | 0) == (b | 0)) { F = a; break } ma() } while (0); c[d + 12 >> 2] = e; c[F >> 2] = d } while (0); b = b + h | 0; f = h + k | 0 } else f = k; b = b + 4 | 0; c[b >> 2] = c[b >> 2] & -2; c[m + 4 >> 2] = f | 1; c[m + f >> 2] = f; b = f >>> 3; if (f >>> 0 < 256) { d = 13088 + (b << 1 << 2) | 0; a = c[3262] | 0; b = 1 << b; do if (!(a & b)) { c[3262] = a | b; J = d; K = d + 8 | 0 } else { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 >= (c[3266] | 0) >>> 0) { J = a; K = b; break } ma() } while (0); c[K >> 2] = m; c[J + 12 >> 2] = m; c[m + 8 >> 2] = J; c[m + 12 >> 2] = d; break } b = f >>> 8; do if (!b) b = 0; else { if (f >>> 0 > 16777215) { b = 31; break } J = (b + 1048320 | 0) >>> 16 & 8; K = b << J; I = (K + 520192 | 0) >>> 16 & 4; K = K << I; b = (K + 245760 | 0) >>> 16 & 2; b = 14 - (I | J | b) + (K << b >>> 15) | 0; b = f >>> (b + 7 | 0) & 1 | b << 1 } while (0); e = 13352 + (b << 2) | 0; c[m + 28 >> 2] = b; a = m + 16 | 0; c[a + 4 >> 2] = 0; c[a >> 2] = 0; a = c[3263] | 0; d = 1 << b; if (!(a & d)) { c[3263] = a | d; c[e >> 2] = m; c[m + 24 >> 2] = e; c[m + 12 >> 2] = m; c[m + 8 >> 2] = m; break } a = f << ((b | 0) == 31 ? 0 : 25 - (b >>> 1) | 0); e = c[e >> 2] | 0; while (1) { if ((c[e + 4 >> 2] & -8 | 0) == (f | 0)) { D = 278; break } d = e + 16 + (a >>> 31 << 2) | 0; b = c[d >> 2] | 0; if (!b) { D = 275; break } else { a = a << 1; e = b } } if ((D | 0) == 275) if (d >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[d >> 2] = m; c[m + 24 >> 2] = e; c[m + 12 >> 2] = m; c[m + 8 >> 2] = m; break } else if ((D | 0) == 278) { b = e + 8 | 0; a = c[b >> 2] | 0; K = c[3266] | 0; if (a >>> 0 >= K >>> 0 & e >>> 0 >= K >>> 0) { c[a + 12 >> 2] = m; c[b >> 2] = m; c[m + 8 >> 2] = a; c[m + 12 >> 2] = e; c[m + 24 >> 2] = 0; break } else ma() } } else { K = (c[3265] | 0) + k | 0; c[3265] = K; c[3268] = m; c[m + 4 >> 2] = K | 1 } while (0); K = n + 8 | 0; i = L; return K | 0 } else a = 13496; while (1) { b = c[a >> 2] | 0; if (b >>> 0 <= l >>> 0 ? (E = b + (c[a + 4 >> 2] | 0) | 0, E >>> 0 > l >>> 0) : 0) break; a = c[a + 8 >> 2] | 0 } f = E + -47 | 0; a = f + 8 | 0; a = f + ((a & 7 | 0) == 0 ? 0 : 0 - a & 7) | 0; f = l + 16 | 0; a = a >>> 0 < f >>> 0 ? l : a; b = a + 8 | 0; d = g + 8 | 0; d = (d & 7 | 0) == 0 ? 0 : 0 - d & 7; K = g + d | 0; d = h + -40 - d | 0; c[3268] = K; c[3265] = d; c[K + 4 >> 2] = d | 1; c[K + d + 4 >> 2] = 40; c[3269] = c[3384]; d = a + 4 | 0; c[d >> 2] = 27; c[b >> 2] = c[3374]; c[b + 4 >> 2] = c[3375]; c[b + 8 >> 2] = c[3376]; c[b + 12 >> 2] = c[3377]; c[3374] = g; c[3375] = h; c[3377] = 0; c[3376] = b; b = a + 24 | 0; do { b = b + 4 | 0; c[b >> 2] = 7 } while ((b + 4 | 0) >>> 0 < E >>> 0); if ((a | 0) != (l | 0)) { g = a - l | 0; c[d >> 2] = c[d >> 2] & -2; c[l + 4 >> 2] = g | 1; c[a >> 2] = g; b = g >>> 3; if (g >>> 0 < 256) { d = 13088 + (b << 1 << 2) | 0; a = c[3262] | 0; b = 1 << b; if (a & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { G = a; H = b } } else { c[3262] = a | b; G = d; H = d + 8 | 0 } c[H >> 2] = l; c[G + 12 >> 2] = l; c[l + 8 >> 2] = G; c[l + 12 >> 2] = d; break } b = g >>> 8; if (b) if (g >>> 0 > 16777215) d = 31; else { J = (b + 1048320 | 0) >>> 16 & 8; K = b << J; I = (K + 520192 | 0) >>> 16 & 4; K = K << I; d = (K + 245760 | 0) >>> 16 & 2; d = 14 - (I | J | d) + (K << d >>> 15) | 0; d = g >>> (d + 7 | 0) & 1 | d << 1 } else d = 0; e = 13352 + (d << 2) | 0; c[l + 28 >> 2] = d; c[l + 20 >> 2] = 0; c[f >> 2] = 0; b = c[3263] | 0; a = 1 << d; if (!(b & a)) { c[3263] = b | a; c[e >> 2] = l; c[l + 24 >> 2] = e; c[l + 12 >> 2] = l; c[l + 8 >> 2] = l; break } a = g << ((d | 0) == 31 ? 0 : 25 - (d >>> 1) | 0); e = c[e >> 2] | 0; while (1) { if ((c[e + 4 >> 2] & -8 | 0) == (g | 0)) { D = 304; break } d = e + 16 + (a >>> 31 << 2) | 0; b = c[d >> 2] | 0; if (!b) { D = 301; break } else { a = a << 1; e = b } } if ((D | 0) == 301) if (d >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[d >> 2] = l; c[l + 24 >> 2] = e; c[l + 12 >> 2] = l; c[l + 8 >> 2] = l; break } else if ((D | 0) == 304) { b = e + 8 | 0; a = c[b >> 2] | 0; K = c[3266] | 0; if (a >>> 0 >= K >>> 0 & e >>> 0 >= K >>> 0) { c[a + 12 >> 2] = l; c[b >> 2] = l; c[l + 8 >> 2] = a; c[l + 12 >> 2] = e; c[l + 24 >> 2] = 0; break } else ma() } } } else { K = c[3266] | 0; if ((K | 0) == 0 | g >>> 0 < K >>> 0) c[3266] = g; c[3374] = g; c[3375] = h; c[3377] = 0; c[3271] = c[3380]; c[3270] = -1; b = 0; do { K = 13088 + (b << 1 << 2) | 0; c[K + 12 >> 2] = K; c[K + 8 >> 2] = K; b = b + 1 | 0 } while ((b | 0) != 32); K = g + 8 | 0; K = (K & 7 | 0) == 0 ? 0 : 0 - K & 7; J = g + K | 0; K = h + -40 - K | 0; c[3268] = J; c[3265] = K; c[J + 4 >> 2] = K | 1; c[J + K + 4 >> 2] = 40; c[3269] = c[3384] } while (0); b = c[3265] | 0; if (b >>> 0 > o >>> 0) { I = b - o | 0; c[3265] = I; K = c[3268] | 0; J = K + o | 0; c[3268] = J; c[J + 4 >> 2] = I | 1; c[K + 4 >> 2] = o | 3; K = K + 8 | 0; i = L; return K | 0 } } c[(_k() | 0) >> 2] = 12; K = 0; i = L; return K | 0 } function an(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0; if (!a) return; d = a + -8 | 0; h = c[3266] | 0; if (d >>> 0 < h >>> 0) ma(); a = c[a + -4 >> 2] | 0; b = a & 3; if ((b | 0) == 1) ma(); e = a & -8; n = d + e | 0; do if (!(a & 1)) { a = c[d >> 2] | 0; if (!b) return; k = d + (0 - a) | 0; j = a + e | 0; if (k >>> 0 < h >>> 0) ma(); if ((k | 0) == (c[3267] | 0)) { a = n + 4 | 0; b = c[a >> 2] | 0; if ((b & 3 | 0) != 3) { q = k; f = j; break } c[3264] = j; c[a >> 2] = b & -2; c[k + 4 >> 2] = j | 1; c[k + j >> 2] = j; return } e = a >>> 3; if (a >>> 0 < 256) { b = c[k + 8 >> 2] | 0; d = c[k + 12 >> 2] | 0; a = 13088 + (e << 1 << 2) | 0; if ((b | 0) != (a | 0)) { if (b >>> 0 < h >>> 0) ma(); if ((c[b + 12 >> 2] | 0) != (k | 0)) ma() } if ((d | 0) == (b | 0)) { c[3262] = c[3262] & ~(1 << e); q = k; f = j; break } if ((d | 0) != (a | 0)) { if (d >>> 0 < h >>> 0) ma(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (k | 0)) g = a; else ma() } else g = d + 8 | 0; c[b + 12 >> 2] = d; c[g >> 2] = b; q = k; f = j; break } g = c[k + 24 >> 2] | 0; d = c[k + 12 >> 2] | 0; do if ((d | 0) == (k | 0)) { d = k + 16 | 0; b = d + 4 | 0; a = c[b >> 2] | 0; if (!a) { a = c[d >> 2] | 0; if (!a) { i = 0; break } else b = d } while (1) { d = a + 20 | 0; e = c[d >> 2] | 0; if (e | 0) { a = e; b = d; continue } d = a + 16 | 0; e = c[d >> 2] | 0; if (!e) break; else { a = e; b = d } } if (b >>> 0 < h >>> 0) ma(); else { c[b >> 2] = 0; i = a; break } } else { e = c[k + 8 >> 2] | 0; if (e >>> 0 < h >>> 0) ma(); a = e + 12 | 0; if ((c[a >> 2] | 0) != (k | 0)) ma(); b = d + 8 | 0; if ((c[b >> 2] | 0) == (k | 0)) { c[a >> 2] = d; c[b >> 2] = e; i = d; break } else ma() } while (0); if (g) { a = c[k + 28 >> 2] | 0; b = 13352 + (a << 2) | 0; if ((k | 0) == (c[b >> 2] | 0)) { c[b >> 2] = i; if (!i) { c[3263] = c[3263] & ~(1 << a); q = k; f = j; break } } else { if (g >>> 0 < (c[3266] | 0) >>> 0) ma(); a = g + 16 | 0; if ((c[a >> 2] | 0) == (k | 0)) c[a >> 2] = i; else c[g + 20 >> 2] = i; if (!i) { q = k; f = j; break } } d = c[3266] | 0; if (i >>> 0 < d >>> 0) ma(); c[i + 24 >> 2] = g; a = k + 16 | 0; b = c[a >> 2] | 0; do if (b | 0) if (b >>> 0 < d >>> 0) ma(); else { c[i + 16 >> 2] = b; c[b + 24 >> 2] = i; break } while (0); a = c[a + 4 >> 2] | 0; if (a) if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[i + 20 >> 2] = a; c[a + 24 >> 2] = i; q = k; f = j; break } else { q = k; f = j } } else { q = k; f = j } } else { q = d; f = e } while (0); if (q >>> 0 >= n >>> 0) ma(); a = n + 4 | 0; b = c[a >> 2] | 0; if (!(b & 1)) ma(); if (!(b & 2)) { if ((n | 0) == (c[3268] | 0)) { p = (c[3265] | 0) + f | 0; c[3265] = p; c[3268] = q; c[q + 4 >> 2] = p | 1; if ((q | 0) != (c[3267] | 0)) return; c[3267] = 0; c[3264] = 0; return } if ((n | 0) == (c[3267] | 0)) { p = (c[3264] | 0) + f | 0; c[3264] = p; c[3267] = q; c[q + 4 >> 2] = p | 1; c[q + p >> 2] = p; return } f = (b & -8) + f | 0; e = b >>> 3; do if (b >>> 0 >= 256) { g = c[n + 24 >> 2] | 0; a = c[n + 12 >> 2] | 0; do if ((a | 0) == (n | 0)) { d = n + 16 | 0; b = d + 4 | 0; a = c[b >> 2] | 0; if (!a) { a = c[d >> 2] | 0; if (!a) { m = 0; break } else b = d } while (1) { d = a + 20 | 0; e = c[d >> 2] | 0; if (e | 0) { a = e; b = d; continue } d = a + 16 | 0; e = c[d >> 2] | 0; if (!e) break; else { a = e; b = d } } if (b >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[b >> 2] = 0; m = a; break } } else { b = c[n + 8 >> 2] | 0; if (b >>> 0 < (c[3266] | 0) >>> 0) ma(); d = b + 12 | 0; if ((c[d >> 2] | 0) != (n | 0)) ma(); e = a + 8 | 0; if ((c[e >> 2] | 0) == (n | 0)) { c[d >> 2] = a; c[e >> 2] = b; m = a; break } else ma() } while (0); if (g | 0) { a = c[n + 28 >> 2] | 0; b = 13352 + (a << 2) | 0; if ((n | 0) == (c[b >> 2] | 0)) { c[b >> 2] = m; if (!m) { c[3263] = c[3263] & ~(1 << a); break } } else { if (g >>> 0 < (c[3266] | 0) >>> 0) ma(); a = g + 16 | 0; if ((c[a >> 2] | 0) == (n | 0)) c[a >> 2] = m; else c[g + 20 >> 2] = m; if (!m) break } d = c[3266] | 0; if (m >>> 0 < d >>> 0) ma(); c[m + 24 >> 2] = g; a = n + 16 | 0; b = c[a >> 2] | 0; do if (b | 0) if (b >>> 0 < d >>> 0) ma(); else { c[m + 16 >> 2] = b; c[b + 24 >> 2] = m; break } while (0); a = c[a + 4 >> 2] | 0; if (a | 0) if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[m + 20 >> 2] = a; c[a + 24 >> 2] = m; break } } } else { b = c[n + 8 >> 2] | 0; d = c[n + 12 >> 2] | 0; a = 13088 + (e << 1 << 2) | 0; if ((b | 0) != (a | 0)) { if (b >>> 0 < (c[3266] | 0) >>> 0) ma(); if ((c[b + 12 >> 2] | 0) != (n | 0)) ma() } if ((d | 0) == (b | 0)) { c[3262] = c[3262] & ~(1 << e); break } if ((d | 0) != (a | 0)) { if (d >>> 0 < (c[3266] | 0) >>> 0) ma(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (n | 0)) l = a; else ma() } else l = d + 8 | 0; c[b + 12 >> 2] = d; c[l >> 2] = b } while (0); c[q + 4 >> 2] = f | 1; c[q + f >> 2] = f; if ((q | 0) == (c[3267] | 0)) { c[3264] = f; return } } else { c[a >> 2] = b & -2; c[q + 4 >> 2] = f | 1; c[q + f >> 2] = f } a = f >>> 3; if (f >>> 0 < 256) { d = 13088 + (a << 1 << 2) | 0; b = c[3262] | 0; a = 1 << a; if (b & a) { a = d + 8 | 0; b = c[a >> 2] | 0; if (b >>> 0 < (c[3266] | 0) >>> 0) ma(); else { o = b; p = a } } else { c[3262] = b | a; o = d; p = d + 8 | 0 } c[p >> 2] = q; c[o + 12 >> 2] = q; c[q + 8 >> 2] = o; c[q + 12 >> 2] = d; return } a = f >>> 8; if (a) if (f >>> 0 > 16777215) a = 31; else { o = (a + 1048320 | 0) >>> 16 & 8; p = a << o; n = (p + 520192 | 0) >>> 16 & 4; p = p << n; a = (p + 245760 | 0) >>> 16 & 2; a = 14 - (n | o | a) + (p << a >>> 15) | 0; a = f >>> (a + 7 | 0) & 1 | a << 1 } else a = 0; e = 13352 + (a << 2) | 0; c[q + 28 >> 2] = a; c[q + 20 >> 2] = 0; c[q + 16 >> 2] = 0; b = c[3263] | 0; d = 1 << a; do if (b & d) { b = f << ((a | 0) == 31 ? 0 : 25 - (a >>> 1) | 0); e = c[e >> 2] | 0; while (1) { if ((c[e + 4 >> 2] & -8 | 0) == (f | 0)) { a = 130; break } d = e + 16 + (b >>> 31 << 2) | 0; a = c[d >> 2] | 0; if (!a) { a = 127; break } else { b = b << 1; e = a } } if ((a | 0) == 127) if (d >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[d >> 2] = q; c[q + 24 >> 2] = e; c[q + 12 >> 2] = q; c[q + 8 >> 2] = q; break } else if ((a | 0) == 130) { a = e + 8 | 0; b = c[a >> 2] | 0; p = c[3266] | 0; if (b >>> 0 >= p >>> 0 & e >>> 0 >= p >>> 0) { c[b + 12 >> 2] = q; c[a >> 2] = q; c[q + 8 >> 2] = b; c[q + 12 >> 2] = e; c[q + 24 >> 2] = 0; break } else ma() } } else { c[3263] = b | d; c[e >> 2] = q; c[q + 24 >> 2] = e; c[q + 12 >> 2] = q; c[q + 8 >> 2] = q } while (0); q = (c[3270] | 0) + -1 | 0; c[3270] = q; if (!q) a = 13504; else return; while (1) { a = c[a >> 2] | 0; if (!a) break; else a = a + 8 | 0 } c[3270] = -1; return } function bn(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; if (!a) { b = $m(b) | 0; return b | 0 } if (b >>> 0 > 4294967231) { c[(_k() | 0) >> 2] = 12; b = 0; return b | 0 } d = cn(a + -8 | 0, b >>> 0 < 11 ? 16 : b + 11 & -8) | 0; if (d | 0) { b = d + 8 | 0; return b | 0 } d = $m(b) | 0; if (!d) { b = 0; return b | 0 } e = c[a + -4 >> 2] | 0; e = (e & -8) - ((e & 3 | 0) == 0 ? 8 : 4) | 0; nn(d | 0, a | 0, (e >>> 0 < b >>> 0 ? e : b) | 0) | 0; an(a); b = d; return b | 0 } function cn(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; n = a + 4 | 0; o = c[n >> 2] | 0; d = o & -8; k = a + d | 0; i = c[3266] | 0; e = o & 3; if (!((e | 0) != 1 & a >>> 0 >= i >>> 0 & a >>> 0 < k >>> 0)) ma(); f = c[k + 4 >> 2] | 0; if (!(f & 1)) ma(); if (!e) { if (b >>> 0 < 256) { a = 0; return a | 0 } if (d >>> 0 >= (b + 4 | 0) >>> 0 ? (d - b | 0) >>> 0 <= c[3382] << 1 >>> 0 : 0) return a | 0; a = 0; return a | 0 } if (d >>> 0 >= b >>> 0) { d = d - b | 0; if (d >>> 0 <= 15) return a | 0; m = a + b | 0; c[n >> 2] = o & 1 | b | 2; c[m + 4 >> 2] = d | 3; o = m + d + 4 | 0; c[o >> 2] = c[o >> 2] | 1; dn(m, d); return a | 0 } if ((k | 0) == (c[3268] | 0)) { d = (c[3265] | 0) + d | 0; if (d >>> 0 <= b >>> 0) { a = 0; return a | 0 } m = d - b | 0; l = a + b | 0; c[n >> 2] = o & 1 | b | 2; c[l + 4 >> 2] = m | 1; c[3268] = l; c[3265] = m; return a | 0 } if ((k | 0) == (c[3267] | 0)) { e = (c[3264] | 0) + d | 0; if (e >>> 0 < b >>> 0) { a = 0; return a | 0 } d = e - b | 0; if (d >>> 0 > 15) { e = a + b | 0; m = e + d | 0; c[n >> 2] = o & 1 | b | 2; c[e + 4 >> 2] = d | 1; c[m >> 2] = d; o = m + 4 | 0; c[o >> 2] = c[o >> 2] & -2 } else { c[n >> 2] = o & 1 | e | 2; e = a + e + 4 | 0; c[e >> 2] = c[e >> 2] | 1; e = 0; d = 0 } c[3264] = d; c[3267] = e; return a | 0 } if (f & 2 | 0) { a = 0; return a | 0 } l = (f & -8) + d | 0; if (l >>> 0 < b >>> 0) { a = 0; return a | 0 } m = l - b | 0; g = f >>> 3; do if (f >>> 0 >= 256) { h = c[k + 24 >> 2] | 0; f = c[k + 12 >> 2] | 0; do if ((f | 0) == (k | 0)) { f = k + 16 | 0; e = f + 4 | 0; d = c[e >> 2] | 0; if (!d) { d = c[f >> 2] | 0; if (!d) { j = 0; break } else e = f } while (1) { f = d + 20 | 0; g = c[f >> 2] | 0; if (g | 0) { d = g; e = f; continue } f = d + 16 | 0; g = c[f >> 2] | 0; if (!g) break; else { d = g; e = f } } if (e >>> 0 < i >>> 0) ma(); else { c[e >> 2] = 0; j = d; break } } else { g = c[k + 8 >> 2] | 0; if (g >>> 0 < i >>> 0) ma(); d = g + 12 | 0; if ((c[d >> 2] | 0) != (k | 0)) ma(); e = f + 8 | 0; if ((c[e >> 2] | 0) == (k | 0)) { c[d >> 2] = f; c[e >> 2] = g; j = f; break } else ma() } while (0); if (h | 0) { d = c[k + 28 >> 2] | 0; e = 13352 + (d << 2) | 0; if ((k | 0) == (c[e >> 2] | 0)) { c[e >> 2] = j; if (!j) { c[3263] = c[3263] & ~(1 << d); break } } else { if (h >>> 0 < (c[3266] | 0) >>> 0) ma(); d = h + 16 | 0; if ((c[d >> 2] | 0) == (k | 0)) c[d >> 2] = j; else c[h + 20 >> 2] = j; if (!j) break } f = c[3266] | 0; if (j >>> 0 < f >>> 0) ma(); c[j + 24 >> 2] = h; d = k + 16 | 0; e = c[d >> 2] | 0; do if (e | 0) if (e >>> 0 < f >>> 0) ma(); else { c[j + 16 >> 2] = e; c[e + 24 >> 2] = j; break } while (0); d = c[d + 4 >> 2] | 0; if (d | 0) if (d >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[j + 20 >> 2] = d; c[d + 24 >> 2] = j; break } } } else { e = c[k + 8 >> 2] | 0; f = c[k + 12 >> 2] | 0; d = 13088 + (g << 1 << 2) | 0; if ((e | 0) != (d | 0)) { if (e >>> 0 < i >>> 0) ma(); if ((c[e + 12 >> 2] | 0) != (k | 0)) ma() } if ((f | 0) == (e | 0)) { c[3262] = c[3262] & ~(1 << g); break } if ((f | 0) != (d | 0)) { if (f >>> 0 < i >>> 0) ma(); d = f + 8 | 0; if ((c[d >> 2] | 0) == (k | 0)) h = d; else ma() } else h = f + 8 | 0; c[e + 12 >> 2] = f; c[h >> 2] = e } while (0); if (m >>> 0 < 16) { c[n >> 2] = l | o & 1 | 2; o = a + l + 4 | 0; c[o >> 2] = c[o >> 2] | 1; return a | 0 } else { l = a + b | 0; c[n >> 2] = o & 1 | b | 2; c[l + 4 >> 2] = m | 3; o = l + m + 4 | 0; c[o >> 2] = c[o >> 2] | 1; dn(l, m); return a | 0 } return 0 } function dn(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; o = a + b | 0; d = c[a + 4 >> 2] | 0; do if (!(d & 1)) { g = c[a >> 2] | 0; if (!(d & 3)) return; l = a + (0 - g) | 0; k = g + b | 0; i = c[3266] | 0; if (l >>> 0 < i >>> 0) ma(); if ((l | 0) == (c[3267] | 0)) { a = o + 4 | 0; d = c[a >> 2] | 0; if ((d & 3 | 0) != 3) { r = l; f = k; break } c[3264] = k; c[a >> 2] = d & -2; c[l + 4 >> 2] = k | 1; c[l + k >> 2] = k; return } e = g >>> 3; if (g >>> 0 < 256) { d = c[l + 8 >> 2] | 0; b = c[l + 12 >> 2] | 0; a = 13088 + (e << 1 << 2) | 0; if ((d | 0) != (a | 0)) { if (d >>> 0 < i >>> 0) ma(); if ((c[d + 12 >> 2] | 0) != (l | 0)) ma() } if ((b | 0) == (d | 0)) { c[3262] = c[3262] & ~(1 << e); r = l; f = k; break } if ((b | 0) != (a | 0)) { if (b >>> 0 < i >>> 0) ma(); a = b + 8 | 0; if ((c[a >> 2] | 0) == (l | 0)) h = a; else ma() } else h = b + 8 | 0; c[d + 12 >> 2] = b; c[h >> 2] = d; r = l; f = k; break } g = c[l + 24 >> 2] | 0; b = c[l + 12 >> 2] | 0; do if ((b | 0) == (l | 0)) { b = l + 16 | 0; d = b + 4 | 0; a = c[d >> 2] | 0; if (!a) { a = c[b >> 2] | 0; if (!a) { j = 0; break } else d = b } while (1) { b = a + 20 | 0; e = c[b >> 2] | 0; if (e | 0) { a = e; d = b; continue } b = a + 16 | 0; e = c[b >> 2] | 0; if (!e) break; else { a = e; d = b } } if (d >>> 0 < i >>> 0) ma(); else { c[d >> 2] = 0; j = a; break } } else { e = c[l + 8 >> 2] | 0; if (e >>> 0 < i >>> 0) ma(); a = e + 12 | 0; if ((c[a >> 2] | 0) != (l | 0)) ma(); d = b + 8 | 0; if ((c[d >> 2] | 0) == (l | 0)) { c[a >> 2] = b; c[d >> 2] = e; j = b; break } else ma() } while (0); if (g) { a = c[l + 28 >> 2] | 0; d = 13352 + (a << 2) | 0; if ((l | 0) == (c[d >> 2] | 0)) { c[d >> 2] = j; if (!j) { c[3263] = c[3263] & ~(1 << a); r = l; f = k; break } } else { if (g >>> 0 < (c[3266] | 0) >>> 0) ma(); a = g + 16 | 0; if ((c[a >> 2] | 0) == (l | 0)) c[a >> 2] = j; else c[g + 20 >> 2] = j; if (!j) { r = l; f = k; break } } b = c[3266] | 0; if (j >>> 0 < b >>> 0) ma(); c[j + 24 >> 2] = g; a = l + 16 | 0; d = c[a >> 2] | 0; do if (d | 0) if (d >>> 0 < b >>> 0) ma(); else { c[j + 16 >> 2] = d; c[d + 24 >> 2] = j; break } while (0); a = c[a + 4 >> 2] | 0; if (a) if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[j + 20 >> 2] = a; c[a + 24 >> 2] = j; r = l; f = k; break } else { r = l; f = k } } else { r = l; f = k } } else { r = a; f = b } while (0); h = c[3266] | 0; if (o >>> 0 < h >>> 0) ma(); a = o + 4 | 0; d = c[a >> 2] | 0; if (!(d & 2)) { if ((o | 0) == (c[3268] | 0)) { q = (c[3265] | 0) + f | 0; c[3265] = q; c[3268] = r; c[r + 4 >> 2] = q | 1; if ((r | 0) != (c[3267] | 0)) return; c[3267] = 0; c[3264] = 0; return } if ((o | 0) == (c[3267] | 0)) { q = (c[3264] | 0) + f | 0; c[3264] = q; c[3267] = r; c[r + 4 >> 2] = q | 1; c[r + q >> 2] = q; return } f = (d & -8) + f | 0; e = d >>> 3; do if (d >>> 0 >= 256) { g = c[o + 24 >> 2] | 0; b = c[o + 12 >> 2] | 0; do if ((b | 0) == (o | 0)) { b = o + 16 | 0; d = b + 4 | 0; a = c[d >> 2] | 0; if (!a) { a = c[b >> 2] | 0; if (!a) { n = 0; break } else d = b } while (1) { b = a + 20 | 0; e = c[b >> 2] | 0; if (e | 0) { a = e; d = b; continue } b = a + 16 | 0; e = c[b >> 2] | 0; if (!e) break; else { a = e; d = b } } if (d >>> 0 < h >>> 0) ma(); else { c[d >> 2] = 0; n = a; break } } else { e = c[o + 8 >> 2] | 0; if (e >>> 0 < h >>> 0) ma(); a = e + 12 | 0; if ((c[a >> 2] | 0) != (o | 0)) ma(); d = b + 8 | 0; if ((c[d >> 2] | 0) == (o | 0)) { c[a >> 2] = b; c[d >> 2] = e; n = b; break } else ma() } while (0); if (g | 0) { a = c[o + 28 >> 2] | 0; d = 13352 + (a << 2) | 0; if ((o | 0) == (c[d >> 2] | 0)) { c[d >> 2] = n; if (!n) { c[3263] = c[3263] & ~(1 << a); break } } else { if (g >>> 0 < (c[3266] | 0) >>> 0) ma(); a = g + 16 | 0; if ((c[a >> 2] | 0) == (o | 0)) c[a >> 2] = n; else c[g + 20 >> 2] = n; if (!n) break } b = c[3266] | 0; if (n >>> 0 < b >>> 0) ma(); c[n + 24 >> 2] = g; a = o + 16 | 0; d = c[a >> 2] | 0; do if (d | 0) if (d >>> 0 < b >>> 0) ma(); else { c[n + 16 >> 2] = d; c[d + 24 >> 2] = n; break } while (0); a = c[a + 4 >> 2] | 0; if (a | 0) if (a >>> 0 < (c[3266] | 0) >>> 0) ma(); else { c[n + 20 >> 2] = a; c[a + 24 >> 2] = n; break } } } else { d = c[o + 8 >> 2] | 0; b = c[o + 12 >> 2] | 0; a = 13088 + (e << 1 << 2) | 0; if ((d | 0) != (a | 0)) { if (d >>> 0 < h >>> 0) ma(); if ((c[d + 12 >> 2] | 0) != (o | 0)) ma() } if ((b | 0) == (d | 0)) { c[3262] = c[3262] & ~(1 << e); break } if ((b | 0) != (a | 0)) { if (b >>> 0 < h >>> 0) ma(); a = b + 8 | 0; if ((c[a >> 2] | 0) == (o | 0)) m = a; else ma() } else m = b + 8 | 0; c[d + 12 >> 2] = b; c[m >> 2] = d } while (0); c[r + 4 >> 2] = f | 1; c[r + f >> 2] = f; if ((r | 0) == (c[3267] | 0)) { c[3264] = f; return } } else { c[a >> 2] = d & -2; c[r + 4 >> 2] = f | 1; c[r + f >> 2] = f } a = f >>> 3; if (f >>> 0 < 256) { b = 13088 + (a << 1 << 2) | 0; d = c[3262] | 0; a = 1 << a; if (d & a) { a = b + 8 | 0; d = c[a >> 2] | 0; if (d >>> 0 < (c[3266] | 0) >>> 0) ma(); else { p = d; q = a } } else { c[3262] = d | a; p = b; q = b + 8 | 0 } c[q >> 2] = r; c[p + 12 >> 2] = r; c[r + 8 >> 2] = p; c[r + 12 >> 2] = b; return } a = f >>> 8; if (a) if (f >>> 0 > 16777215) a = 31; else { p = (a + 1048320 | 0) >>> 16 & 8; q = a << p; o = (q + 520192 | 0) >>> 16 & 4; q = q << o; a = (q + 245760 | 0) >>> 16 & 2; a = 14 - (o | p | a) + (q << a >>> 15) | 0; a = f >>> (a + 7 | 0) & 1 | a << 1 } else a = 0; e = 13352 + (a << 2) | 0; c[r + 28 >> 2] = a; c[r + 20 >> 2] = 0; c[r + 16 >> 2] = 0; d = c[3263] | 0; b = 1 << a; if (!(d & b)) { c[3263] = d | b; c[e >> 2] = r; c[r + 24 >> 2] = e; c[r + 12 >> 2] = r; c[r + 8 >> 2] = r; return } d = f << ((a | 0) == 31 ? 0 : 25 - (a >>> 1) | 0); e = c[e >> 2] | 0; while (1) { if ((c[e + 4 >> 2] & -8 | 0) == (f | 0)) { a = 127; break } b = e + 16 + (d >>> 31 << 2) | 0; a = c[b >> 2] | 0; if (!a) { a = 124; break } else { d = d << 1; e = a } } if ((a | 0) == 124) { if (b >>> 0 < (c[3266] | 0) >>> 0) ma(); c[b >> 2] = r; c[r + 24 >> 2] = e; c[r + 12 >> 2] = r; c[r + 8 >> 2] = r; return } else if ((a | 0) == 127) { a = e + 8 | 0; d = c[a >> 2] | 0; q = c[3266] | 0; if (!(d >>> 0 >= q >>> 0 & e >>> 0 >= q >>> 0)) ma(); c[d + 12 >> 2] = r; c[a >> 2] = r; c[r + 8 >> 2] = d; c[r + 12 >> 2] = e; c[r + 24 >> 2] = 0; return } } function en() { } function fn(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; d = b - d - (c >>> 0 > a >>> 0 | 0) >>> 0; return (C = d, a - c >>> 0 | 0) | 0 } function gn(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; c = a + c >>> 0; return (C = b + d + (c >>> 0 < a >>> 0 | 0) >>> 0, c | 0) | 0 } function hn(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = b + e | 0; if ((e | 0) >= 20) { d = d & 255; h = b & 3; i = d | d << 8 | d << 16 | d << 24; g = f & ~3; if (h) { h = b + 4 - h | 0; while ((b | 0) < (h | 0)) { a[b >> 0] = d; b = b + 1 | 0 } } while ((b | 0) < (g | 0)) { c[b >> 2] = i; b = b + 4 | 0 } } while ((b | 0) < (f | 0)) { a[b >> 0] = d; b = b + 1 | 0 } return b - e | 0 } function jn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if ((c | 0) < 32) { C = b << c | (a & (1 << c) - 1 << 32 - c) >>> 32 - c; return a << c } C = a << c - 32; return 0 } function kn(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0; p = p + 1 | 0; c[a >> 2] = p; while ((f | 0) < (e | 0)) { if (!(c[d + (f << 3) >> 2] | 0)) { c[d + (f << 3) >> 2] = p; c[d + ((f << 3) + 4) >> 2] = b; c[d + ((f << 3) + 8) >> 2] = 0; C = e; return d | 0 } f = f + 1 | 0 } e = e * 2 | 0; d = bn(d | 0, 8 * (e + 1 | 0) | 0) | 0; d = kn(a | 0, b | 0, d | 0, e | 0) | 0; C = e; return d | 0 } function ln(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if ((c | 0) < 32) { C = b >>> c; return a >>> c | (b & (1 << c) - 1) << 32 - c } C = 0; return b >>> c - 32 | 0 } function mn(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; while ((f | 0) < (d | 0)) { e = c[b + (f << 3) >> 2] | 0; if (!e) break; if ((e | 0) == (a | 0)) return c[b + ((f << 3) + 4) >> 2] | 0; f = f + 1 | 0 } return 0 } function nn(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0; if ((e | 0) >= 4096) return za(b | 0, d | 0, e | 0) | 0; f = b | 0; if ((b & 3) == (d & 3)) { while (b & 3) { if (!e) return f | 0; a[b >> 0] = a[d >> 0] | 0; b = b + 1 | 0; d = d + 1 | 0; e = e - 1 | 0 } while ((e | 0) >= 4) { c[b >> 2] = c[d >> 2]; b = b + 4 | 0; d = d + 4 | 0; e = e - 4 | 0 } } while ((e | 0) > 0) { a[b >> 0] = a[d >> 0] | 0; b = b + 1 | 0; d = d + 1 | 0; e = e - 1 | 0 } return f | 0 } function on(b) { b = b | 0; var c = 0; c = a[m + (b & 255) >> 0] | 0; if ((c | 0) < 8) return c | 0; c = a[m + (b >> 8 & 255) >> 0] | 0; if ((c | 0) < 8) return c + 8 | 0; c = a[m + (b >> 16 & 255) >> 0] | 0; if ((c | 0) < 8) return c + 16 | 0; return (a[m + (b >>> 24) >> 0] | 0) + 24 | 0 } function pn(a, b, d, e, f) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0; l = a; j = b; k = j; h = d; n = e; i = n; if (!k) { g = (f | 0) != 0; if (!i) { if (g) { c[f >> 2] = (l >>> 0) % (h >>> 0); c[f + 4 >> 2] = 0 } n = 0; f = (l >>> 0) / (h >>> 0) >>> 0; return (C = n, f) | 0 } else { if (!g) { n = 0; f = 0; return (C = n, f) | 0 } c[f >> 2] = a | 0; c[f + 4 >> 2] = b & 0; n = 0; f = 0; return (C = n, f) | 0 } } g = (i | 0) == 0; do if (h) { if (!g) { g = (U(i | 0) | 0) - (U(k | 0) | 0) | 0; if (g >>> 0 <= 31) { m = g + 1 | 0; i = 31 - g | 0; b = g - 31 >> 31; h = m; a = l >>> (m >>> 0) & b | k << i; b = k >>> (m >>> 0) & b; g = 0; i = l << i; break } if (!f) { n = 0; f = 0; return (C = n, f) | 0 } c[f >> 2] = a | 0; c[f + 4 >> 2] = j | b & 0; n = 0; f = 0; return (C = n, f) | 0 } g = h - 1 | 0; if (g & h | 0) { i = (U(h | 0) | 0) + 33 - (U(k | 0) | 0) | 0; p = 64 - i | 0; m = 32 - i | 0; j = m >> 31; o = i - 32 | 0; b = o >> 31; h = i; a = m - 1 >> 31 & k >>> (o >>> 0) | (k << m | l >>> (i >>> 0)) & b; b = b & k >>> (i >>> 0); g = l << p & j; i = (k << p | l >>> (o >>> 0)) & j | l << m & i - 33 >> 31; break } if (f | 0) { c[f >> 2] = g & l; c[f + 4 >> 2] = 0 } if ((h | 0) == 1) { o = j | b & 0; p = a | 0 | 0; return (C = o, p) | 0 } else { p = on(h | 0) | 0; o = k >>> (p >>> 0) | 0; p = k << 32 - p | l >>> (p >>> 0) | 0; return (C = o, p) | 0 } } else { if (g) { if (f | 0) { c[f >> 2] = (k >>> 0) % (h >>> 0); c[f + 4 >> 2] = 0 } o = 0; p = (k >>> 0) / (h >>> 0) >>> 0; return (C = o, p) | 0 } if (!l) { if (f | 0) { c[f >> 2] = 0; c[f + 4 >> 2] = (k >>> 0) % (i >>> 0) } o = 0; p = (k >>> 0) / (i >>> 0) >>> 0; return (C = o, p) | 0 } g = i - 1 | 0; if (!(g & i)) { if (f | 0) { c[f >> 2] = a | 0; c[f + 4 >> 2] = g & k | b & 0 } o = 0; p = k >>> ((on(i | 0) | 0) >>> 0); return (C = o, p) | 0 } g = (U(i | 0) | 0) - (U(k | 0) | 0) | 0; if (g >>> 0 <= 30) { b = g + 1 | 0; i = 31 - g | 0; h = b; a = k << i | l >>> (b >>> 0); b = k >>> (b >>> 0); g = 0; i = l << i; break } if (!f) { o = 0; p = 0; return (C = o, p) | 0 } c[f >> 2] = a | 0; c[f + 4 >> 2] = j | b & 0; o = 0; p = 0; return (C = o, p) | 0 } while (0); if (!h) { k = i; j = 0; i = 0 } else { m = d | 0 | 0; l = n | e & 0; k = gn(m | 0, l | 0, -1, -1) | 0; d = C; j = i; i = 0; do { e = j; j = g >>> 31 | j << 1; g = i | g << 1; e = a << 1 | e >>> 31 | 0; n = a >>> 31 | b << 1 | 0; fn(k | 0, d | 0, e | 0, n | 0) | 0; p = C; o = p >> 31 | ((p | 0) < 0 ? -1 : 0) << 1; i = o & 1; a = fn(e | 0, n | 0, o & m | 0, (((p | 0) < 0 ? -1 : 0) >> 31 | ((p | 0) < 0 ? -1 : 0) << 1) & l | 0) | 0; b = C; h = h - 1 | 0 } while ((h | 0) != 0); k = j; j = 0 } h = 0; if (f | 0) { c[f >> 2] = a; c[f + 4 >> 2] = b } o = (g | 0) >>> 31 | (k | h) << 1 | (h << 1 | g >>> 31) & 0 | j; p = (g << 1 | 0 >>> 31) & -2 | i; return (C = o, p) | 0 } function qn(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return pn(a, b, c, d, 0) | 0 } function rn(a, b) { a = a | 0; b = b | 0; var c = 0, d = 0, e = 0, f = 0; f = a & 65535; e = b & 65535; c = R(e, f) | 0; d = a >>> 16; a = (c >>> 16) + (R(e, d) | 0) | 0; e = b >>> 16; b = R(e, f) | 0; return (C = (a >>> 16) + (R(e, d) | 0) + (((a & 65535) + b | 0) >>> 16) | 0, a + b << 16 | c & 65535 | 0) | 0 } function sn(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; var e = 0, f = 0; e = a; f = c; c = rn(e, f) | 0; a = C; return (C = (R(b, f) | 0) + (R(d, e) | 0) + a | a & 0, c | 0 | 0) | 0 } function tn(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; g = i; i = i + 16 | 0; f = g | 0; pn(a, b, d, e, f) | 0; i = g; return (C = c[f + 4 >> 2] | 0, c[f >> 2] | 0) | 0 } function un() { return 0 } function vn(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return Ya[a & 31](b | 0, c | 0, d | 0) | 0 } function wn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(0, a | 0, b | 0, c | 0) | 0 } function xn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(1, a | 0, b | 0, c | 0) | 0 } function yn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(2, a | 0, b | 0, c | 0) | 0 } function zn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(3, a | 0, b | 0, c | 0) | 0 } function An(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(4, a | 0, b | 0, c | 0) | 0 } function Bn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(5, a | 0, b | 0, c | 0) | 0 } function Cn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(6, a | 0, b | 0, c | 0) | 0 } function Dn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Y(7, a | 0, b | 0, c | 0) | 0 } function En(a, b) { a = a | 0; b = b | 0; Za[a & 31](b | 0) } function Fn(a) { a = a | 0; _(0, a | 0) } function Gn(a) { a = a | 0; _(1, a | 0) } function Hn(a) { a = a | 0; _(2, a | 0) } function In(a) { a = a | 0; _(3, a | 0) } function Jn(a) { a = a | 0; _(4, a | 0) } function Kn(a) { a = a | 0; _(5, a | 0) } function Ln(a) { a = a | 0; _(6, a | 0) } function Mn(a) { a = a | 0; _(7, a | 0) } function Nn(a, b, c) { a = a | 0; b = b | 0; c = c | 0; _a[a & 31](b | 0, c | 0) } function On(a, b) { a = a | 0; b = b | 0; aa(0, a | 0, b | 0) } function Pn(a, b) { a = a | 0; b = b | 0; aa(1, a | 0, b | 0) } function Qn(a, b) { a = a | 0; b = b | 0; aa(2, a | 0, b | 0) } function Rn(a, b) { a = a | 0; b = b | 0; aa(3, a | 0, b | 0) } function Sn(a, b) { a = a | 0; b = b | 0; aa(4, a | 0, b | 0) } function Tn(a, b) { a = a | 0; b = b | 0; aa(5, a | 0, b | 0) } function Un(a, b) { a = a | 0; b = b | 0; aa(6, a | 0, b | 0) } function Vn(a, b) { a = a | 0; b = b | 0; aa(7, a | 0, b | 0) } function Wn(a, b) { a = a | 0; b = b | 0; return $a[a & 255](b | 0) | 0 } function Xn(a) { a = a | 0; return ca(0, a | 0) | 0 } function Yn(a) { a = a | 0; return ca(1, a | 0) | 0 } function Zn(a) { a = a | 0; return ca(2, a | 0) | 0 } function _n(a) { a = a | 0; return ca(3, a | 0) | 0 } function $n(a) { a = a | 0; return ca(4, a | 0) | 0 } function ao(a) { a = a | 0; return ca(5, a | 0) | 0 } function bo(a) { a = a | 0; return ca(6, a | 0) | 0 } function co(a) { a = a | 0; return ca(7, a | 0) | 0 } function eo(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; return ab[a & 31](b | 0, c | 0, d | 0, e | 0) | 0 } function fo(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(0, a | 0, b | 0, c | 0, d | 0) | 0 } function go(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(1, a | 0, b | 0, c | 0, d | 0) | 0 } function ho(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(2, a | 0, b | 0, c | 0, d | 0) | 0 } function io(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(3, a | 0, b | 0, c | 0, d | 0) | 0 } function jo(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(4, a | 0, b | 0, c | 0, d | 0) | 0 } function ko(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(5, a | 0, b | 0, c | 0, d | 0) | 0 } function lo(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(6, a | 0, b | 0, c | 0, d | 0) | 0 } function mo(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return ea(7, a | 0, b | 0, c | 0, d | 0) | 0 } function no(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return bb[a & 31](b | 0, c | 0) | 0 } function oo(a, b) { a = a | 0; b = b | 0; return ga(0, a | 0, b | 0) | 0 } function po(a, b) { a = a | 0; b = b | 0; return ga(1, a | 0, b | 0) | 0 } function qo(a, b) { a = a | 0; b = b | 0; return ga(2, a | 0, b | 0) | 0 } function ro(a, b) { a = a | 0; b = b | 0; return ga(3, a | 0, b | 0) | 0 } function so(a, b) { a = a | 0; b = b | 0; return ga(4, a | 0, b | 0) | 0 } function to(a, b) { a = a | 0; b = b | 0; return ga(5, a | 0, b | 0) | 0 } function uo(a, b) { a = a | 0; b = b | 0; return ga(6, a | 0, b | 0) | 0 } function vo(a, b) { a = a | 0; b = b | 0; return ga(7, a | 0, b | 0) | 0 } function wo(a, b, c) { a = a | 0; b = b | 0; c = c | 0; V(0); return 0 } function xo(a) { a = a | 0; V(1) } function yo(a, b) { a = a | 0; b = b | 0; V(2) } function zo(a) { a = a | 0; V(3); return 0 } function Ao(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; V(4); return 0 } function Bo(a, b) { a = a | 0; b = b | 0; V(5); return 0 }
// EMSCRIPTEN_END_FUNCS
var Ya = [wo, wo, wn, wo, xn, wo, yn, wo, zn, wo, An, wo, Bn, wo, Cn, wo, Dn, wo, Xk, Yk, bl, cl, Pl, vh, xh, Yh, wo, wo, wo, wo, wo, wo]; var Za = [xo, xo, Fn, xo, Gn, xo, Hn, xo, In, xo, Jn, xo, Kn, xo, Ln, xo, Mn, xo, $k, dl, xo, xo, xo, xo, xo, xo, xo, xo, xo, xo, xo, xo]; var _a = [yo, yo, On, yo, Pn, yo, Qn, yo, Rn, yo, Sn, yo, Tn, yo, Un, yo, Vn, yo, kb, tc, Md, Pd, Zd, Be, Cf, Mi, yo, yo, yo, yo, yo, yo]; var $a = [zo, zo, Xn, zo, Yn, zo, Zn, zo, _n, zo, $n, zo, ao, zo, bo, zo, co, zo, zh, Ah, Bh, Ch, Dh, Eh, Fh, Gh, Hh, Ih, Jh, Kh, Lh, Mh, Nh, Oh, Ph, Qh, Rh, Sh, Th, Uh, ai, bi, ci, di, ei, fi, gi, hi, ii, ji, ki, li, ni, oi, pi, qi, ri, si, wi, xi, yi, zi, Ai, Bi, Ci, Di, Ei, Fi, Gi, Hi, Ii, Ji, Ki, Li, Pi, bj, cj, dj, ej, fj, gj, hj, ij, jj, kj, Qi, Ri, Si, Ti, Ui, Vi, Wi, Xi, pj, qj, rj, sj, tj, uj, vj, wj, xj, yj, zj, Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj, Ij, Jj, Kj, Lj, Mj, Nj, Oj, Pj, Qj, Sj, Tj, Uj, Vj, Wj, Xj, Yj, Zj, _j, $j, ak, ck, dk, ek, fk, gk, hk, ik, jk, kk, lk, mk, nk, ok, pk, xk, yk, zk, Ak, Bk, Ck, Dk, Sk, Tk, Uk, Nk, Ok, Wk, uh, _h, Zh, Vh, ti, Oi, aj, lj, mj, uk, Hk, Ik, Jk, Kk, Lk, yh, Gk, mi, wk, Ni, Rj, bk, $h, oj, vi, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo, zo]; var ab = [Ao, Ao, fo, Ao, go, Ao, ho, Ao, io, Ao, jo, Ao, ko, Ao, lo, Ao, mo, Ao, th, vk, Ao, Ao, Ao, Ao, Ao, Ao, Ao, Ao, Ao, Ao, Ao, Ao]; var bb = [Bo, Bo, oo, Bo, po, Bo, qo, Bo, ro, Bo, so, Bo, to, Bo, uo, Bo, vo, Bo, Af, Bo, Bo, Bo, Bo, Bo, Bo, Bo, Bo, Bo, Bo, Bo, Bo, Bo]; return { _luaL_checkstack: Jg, _lua_setglobal: ic, _lua_pushlightuserdata: Zb, _bitshift64Lshr: ln, _lua_copy: ub, _lua_createtable: fc, _luaL_optinteger: $g, _lua_arith: Db, _lua_pushnil: Pb, _lua_setmetatable: oc, _lua_concat: Ac, _luaL_optlstring: ah, _luaopen_io: Ni, _memcpy: nn, _luaL_pushmodule: eh, _luaL_pushresultsize: gh, _lua_pushthread: _b, _lua_close: zf, _luaopen_math: oj, _lua_gettable: ac, _lua_replace: tb, _lua_xmove: lb, _lua_load: uc, _lua_pcallk: sc, _lua_touserdata: Mb, _lua_getglobal: $b, _luaL_prepbuffsize: dh, _lua_rawget: cc, _free: an, _lua_pushcclosure: Xb, _lua_pushstring: Ub, ___uremdi3: tn, _lua_upvaluejoin: Ic, _luaopen_string: bk, _lua_isuserdata: Bb, _luaL_loadbufferx: Vg, _luaL_buffinit: Bg, _lua_resume: Jd, _lua_iscfunction: yb, _luaL_execresult: Pg, _lua_remove: rb, _luaL_checkoption: Ig, _lua_rawlen: Kb, _lua_len: Bc, _luaL_openlib: _g, _lua_pushvfstring: Vb, _lua_isnumber: zb, _llvm_cttz_i32: on, _lua_newuserdata: Ec, _lua_isstring: Ab, _lua_pushlstring: Tb, _lua_status: wc, _lua_setuservalue: pc, _luaL_len: Ug, _lua_callk: rc, _luaL_checkany: Eg, _luaL_addstring: yg, _lua_pushfstring: Wb, _lua_newthread: Bf, _i64Add: gn, _lua_tolstring: Jb, _lua_rawset: lc, _luaL_traceback: nh, _luaL_requiref: ih, _lua_checkstack: jb, _lua_pushnumber: Qb, _luaL_pushresult: fh, _lua_topointer: Ob, _lua_error: yc, _luaL_setfuncs: jh, _luaopen_debug: vi, _lua_compare: Eb, _luaL_checkinteger: Fg, _lua_getstack: zd, _lua_gettop: pb, _lua_getlocal: yd, _lua_gc: xc, _luaL_checklstring: Gg, _luaL_checkunsigned: Mg, _lua_settable: jc, _luaL_addlstring: xg, _luaL_fileresult: Qg, _lua_toboolean: Ib, _lua_setallocf: Dc, _memset: hn, _lua_gethook: ud, _lua_tointegerx: Gb, _lua_gethookcount: vd, _luaL_testudata: lh, _lua_tounsignedx: Hb, _luaL_openlibs: Vk, _lua_setlocal: Bd, _luaL_optunsigned: ch, _lua_tothread: Nb, _i64Subtract: fn, _lua_rawseti: mc, _lua_rawgetp: ec, _lua_version: nb, _lua_newstate: Af, _lua_pushvalue: vb, _lua_getctx: qc, _lua_tocfunction: Lb, _lua_insert: sb, _lua_typename: xb, _luaL_argerror: Ag, _lua_absindex: ob, _lua_upvalueid: Hc, _lua_rawgeti: dc, ___muldsi3: rn, _testSetjmp: mn, _lua_sethook: Ad, _luaL_callmeta: Dg, _lua_getallocf: Cc, _luaL_loadfilex: Wg, _malloc: $m, _lua_rawequal: Cb, _lua_yieldk: Kd, _lua_type: wb, _lua_getfield: bc, _luaopen_os: Rj, _luaL_checkversion_: Ng, ___udivdi3: qn, _luaL_buffinitsize: Cg, _luaL_checknumber: Hg, _lua_setupvalue: Gc, _luaL_newmetatable: Yg, _lua_getmetatable: gc, _lua_pushunsigned: Sb, _lua_getupvalue: Fc, _luaopen_base: yh, _luaL_gsub: Tg, _luaL_addvalue: zg, ___udivmoddi4: pn, _luaL_tolstring: mh, _lua_atpanic: mb, _luaL_getmetafield: Rg, _lua_getinfo: xd, _luaL_setmetatable: kh, _lua_settop: qb, _lua_pushboolean: Yb, _lua_setfield: kc, _luaL_checktype: Kg, _luaL_ref: hh, _bitshift64Shl: jn, _lua_next: zc, _luaL_checkudata: Lg, _realloc: bn, _luaopen_table: wk, _luaopen_coroutine: mi, _pthread_self: un, _luaopen_bit32: $h, _luaL_getsubtable: Sg, _lua_getuservalue: hc, _luaopen_package: Gk, ___errno_location: _k, _lua_dump: vc, _saveSetjmp: kn, _luaL_optnumber: bh, _lua_pushinteger: Rb, _lua_gethookmask: wd, _luaL_newstate: Zg, _lua_tonumberx: Fb, _luaL_where: ph, ___muldi3: sn, _lua_rawsetp: nc, _luaL_error: Og, _luaL_loadstring: Xg, _luaL_unref: oh, runPostSets: en, stackAlloc: cb, stackSave: db, stackRestore: eb, establishStackSpace: fb, setThrew: gb, setTempRet0: hb, getTempRet0: ib, dynCall_iiii: vn, dynCall_vi: En, dynCall_vii: Nn, dynCall_ii: Wn, dynCall_iiiii: eo, dynCall_iii: no }
})
// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg, Module.asmLibraryArg, buffer); var _luaL_checkstack = Module["_luaL_checkstack"] = asm["_luaL_checkstack"]; var _lua_setglobal = Module["_lua_setglobal"] = asm["_lua_setglobal"]; var _lua_pushlightuserdata = Module["_lua_pushlightuserdata"] = asm["_lua_pushlightuserdata"]; var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"]; var _lua_copy = Module["_lua_copy"] = asm["_lua_copy"]; var _lua_createtable = Module["_lua_createtable"] = asm["_lua_createtable"]; var _luaL_optinteger = Module["_luaL_optinteger"] = asm["_luaL_optinteger"]; var _lua_arith = Module["_lua_arith"] = asm["_lua_arith"]; var _lua_pushnil = Module["_lua_pushnil"] = asm["_lua_pushnil"]; var _lua_setmetatable = Module["_lua_setmetatable"] = asm["_lua_setmetatable"]; var _lua_pushthread = Module["_lua_pushthread"] = asm["_lua_pushthread"]; var _luaL_optlstring = Module["_luaL_optlstring"] = asm["_luaL_optlstring"]; var _luaopen_io = Module["_luaopen_io"] = asm["_luaopen_io"]; var _memcpy = Module["_memcpy"] = asm["_memcpy"]; var _luaL_pushmodule = Module["_luaL_pushmodule"] = asm["_luaL_pushmodule"]; var _luaL_pushresultsize = Module["_luaL_pushresultsize"] = asm["_luaL_pushresultsize"]; var _lua_upvalueid = Module["_lua_upvalueid"] = asm["_lua_upvalueid"]; var _lua_close = Module["_lua_close"] = asm["_lua_close"]; var _luaopen_math = Module["_luaopen_math"] = asm["_luaopen_math"]; var _luaL_setfuncs = Module["_luaL_setfuncs"] = asm["_luaL_setfuncs"]; var ___udivmoddi4 = Module["___udivmoddi4"] = asm["___udivmoddi4"]; var _lua_gethookmask = Module["_lua_gethookmask"] = asm["_lua_gethookmask"]; var runPostSets = Module["runPostSets"] = asm["runPostSets"]; var _lua_xmove = Module["_lua_xmove"] = asm["_lua_xmove"]; var _lua_load = Module["_lua_load"] = asm["_lua_load"]; var _lua_pcallk = Module["_lua_pcallk"] = asm["_lua_pcallk"]; var _lua_touserdata = Module["_lua_touserdata"] = asm["_lua_touserdata"]; var _lua_getglobal = Module["_lua_getglobal"] = asm["_lua_getglobal"]; var _luaL_prepbuffsize = Module["_luaL_prepbuffsize"] = asm["_luaL_prepbuffsize"]; var _lua_rawget = Module["_lua_rawget"] = asm["_lua_rawget"]; var _free = Module["_free"] = asm["_free"]; var _lua_pushcclosure = Module["_lua_pushcclosure"] = asm["_lua_pushcclosure"]; var _lua_pushstring = Module["_lua_pushstring"] = asm["_lua_pushstring"]; var _lua_next = Module["_lua_next"] = asm["_lua_next"]; var _lua_upvaluejoin = Module["_lua_upvaluejoin"] = asm["_lua_upvaluejoin"]; var _luaopen_string = Module["_luaopen_string"] = asm["_luaopen_string"]; var _lua_isuserdata = Module["_lua_isuserdata"] = asm["_lua_isuserdata"]; var _luaL_loadbufferx = Module["_luaL_loadbufferx"] = asm["_luaL_loadbufferx"]; var _lua_resume = Module["_lua_resume"] = asm["_lua_resume"]; var _lua_iscfunction = Module["_lua_iscfunction"] = asm["_lua_iscfunction"]; var _luaL_newstate = Module["_luaL_newstate"] = asm["_luaL_newstate"]; var _luaL_execresult = Module["_luaL_execresult"] = asm["_luaL_execresult"]; var _lua_remove = Module["_lua_remove"] = asm["_lua_remove"]; var _luaL_checkoption = Module["_luaL_checkoption"] = asm["_luaL_checkoption"]; var _lua_rawlen = Module["_lua_rawlen"] = asm["_lua_rawlen"]; var _lua_len = Module["_lua_len"] = asm["_lua_len"]; var _luaL_openlib = Module["_luaL_openlib"] = asm["_luaL_openlib"]; var _lua_pushvfstring = Module["_lua_pushvfstring"] = asm["_lua_pushvfstring"]; var _realloc = Module["_realloc"] = asm["_realloc"]; var _lua_isnumber = Module["_lua_isnumber"] = asm["_lua_isnumber"]; var _llvm_cttz_i32 = Module["_llvm_cttz_i32"] = asm["_llvm_cttz_i32"]; var _luaL_checklstring = Module["_luaL_checklstring"] = asm["_luaL_checklstring"]; var _lua_isstring = Module["_lua_isstring"] = asm["_lua_isstring"]; var _lua_pushlstring = Module["_lua_pushlstring"] = asm["_lua_pushlstring"]; var _lua_settable = Module["_lua_settable"] = asm["_lua_settable"]; var _luaL_len = Module["_luaL_len"] = asm["_luaL_len"]; var _lua_callk = Module["_lua_callk"] = asm["_lua_callk"]; var _luaL_checkany = Module["_luaL_checkany"] = asm["_luaL_checkany"]; var _luaL_addstring = Module["_luaL_addstring"] = asm["_luaL_addstring"]; var _lua_pushfstring = Module["_lua_pushfstring"] = asm["_lua_pushfstring"]; var _lua_newthread = Module["_lua_newthread"] = asm["_lua_newthread"]; var _lua_tolstring = Module["_lua_tolstring"] = asm["_lua_tolstring"]; var _lua_rawset = Module["_lua_rawset"] = asm["_lua_rawset"]; var _luaL_traceback = Module["_luaL_traceback"] = asm["_luaL_traceback"]; var _luaL_requiref = Module["_luaL_requiref"] = asm["_luaL_requiref"]; var _lua_checkstack = Module["_lua_checkstack"] = asm["_lua_checkstack"]; var _lua_pushnumber = Module["_lua_pushnumber"] = asm["_lua_pushnumber"]; var _luaL_pushresult = Module["_luaL_pushresult"] = asm["_luaL_pushresult"]; var _lua_topointer = Module["_lua_topointer"] = asm["_lua_topointer"]; var _lua_error = Module["_lua_error"] = asm["_lua_error"]; var _lua_gettable = Module["_lua_gettable"] = asm["_lua_gettable"]; var _luaopen_debug = Module["_luaopen_debug"] = asm["_luaopen_debug"]; var _lua_concat = Module["_lua_concat"] = asm["_lua_concat"]; var _luaL_checkinteger = Module["_luaL_checkinteger"] = asm["_luaL_checkinteger"]; var _lua_getstack = Module["_lua_getstack"] = asm["_lua_getstack"]; var _lua_gettop = Module["_lua_gettop"] = asm["_lua_gettop"]; var _lua_getlocal = Module["_lua_getlocal"] = asm["_lua_getlocal"]; var _lua_gc = Module["_lua_gc"] = asm["_lua_gc"]; var _lua_newuserdata = Module["_lua_newuserdata"] = asm["_lua_newuserdata"]; var _luaL_checkunsigned = Module["_luaL_checkunsigned"] = asm["_luaL_checkunsigned"]; var _lua_setuservalue = Module["_lua_setuservalue"] = asm["_lua_setuservalue"]; var _luaL_addlstring = Module["_luaL_addlstring"] = asm["_luaL_addlstring"]; var _luaL_fileresult = Module["_luaL_fileresult"] = asm["_luaL_fileresult"]; var _lua_toboolean = Module["_lua_toboolean"] = asm["_lua_toboolean"]; var _lua_setallocf = Module["_lua_setallocf"] = asm["_lua_setallocf"]; var _memset = Module["_memset"] = asm["_memset"]; var _lua_gethook = Module["_lua_gethook"] = asm["_lua_gethook"]; var _lua_tointegerx = Module["_lua_tointegerx"] = asm["_lua_tointegerx"]; var _lua_gethookcount = Module["_lua_gethookcount"] = asm["_lua_gethookcount"]; var _luaL_testudata = Module["_luaL_testudata"] = asm["_luaL_testudata"]; var _lua_tounsignedx = Module["_lua_tounsignedx"] = asm["_lua_tounsignedx"]; var _luaL_openlibs = Module["_luaL_openlibs"] = asm["_luaL_openlibs"]; var _lua_setlocal = Module["_lua_setlocal"] = asm["_lua_setlocal"]; var _luaL_optunsigned = Module["_luaL_optunsigned"] = asm["_luaL_optunsigned"]; var _lua_tothread = Module["_lua_tothread"] = asm["_lua_tothread"]; var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"]; var _lua_rawgetp = Module["_lua_rawgetp"] = asm["_lua_rawgetp"]; var _lua_version = Module["_lua_version"] = asm["_lua_version"]; var _lua_newstate = Module["_lua_newstate"] = asm["_lua_newstate"]; var _lua_pushvalue = Module["_lua_pushvalue"] = asm["_lua_pushvalue"]; var _lua_getctx = Module["_lua_getctx"] = asm["_lua_getctx"]; var _lua_tocfunction = Module["_lua_tocfunction"] = asm["_lua_tocfunction"]; var _lua_insert = Module["_lua_insert"] = asm["_lua_insert"]; var _lua_typename = Module["_lua_typename"] = asm["_lua_typename"]; var _luaL_argerror = Module["_luaL_argerror"] = asm["_luaL_argerror"]; var _lua_absindex = Module["_lua_absindex"] = asm["_lua_absindex"]; var _lua_rawgeti = Module["_lua_rawgeti"] = asm["_lua_rawgeti"]; var ___muldsi3 = Module["___muldsi3"] = asm["___muldsi3"]; var _testSetjmp = Module["_testSetjmp"] = asm["_testSetjmp"]; var _lua_sethook = Module["_lua_sethook"] = asm["_lua_sethook"]; var _luaL_callmeta = Module["_luaL_callmeta"] = asm["_luaL_callmeta"]; var _luaL_buffinit = Module["_luaL_buffinit"] = asm["_luaL_buffinit"]; var _luaL_loadfilex = Module["_luaL_loadfilex"] = asm["_luaL_loadfilex"]; var _malloc = Module["_malloc"] = asm["_malloc"]; var _lua_rawequal = Module["_lua_rawequal"] = asm["_lua_rawequal"]; var _lua_yieldk = Module["_lua_yieldk"] = asm["_lua_yieldk"]; var _lua_type = Module["_lua_type"] = asm["_lua_type"]; var _lua_compare = Module["_lua_compare"] = asm["_lua_compare"]; var _lua_getfield = Module["_lua_getfield"] = asm["_lua_getfield"]; var _luaopen_os = Module["_luaopen_os"] = asm["_luaopen_os"]; var _luaL_checkversion_ = Module["_luaL_checkversion_"] = asm["_luaL_checkversion_"]; var ___udivdi3 = Module["___udivdi3"] = asm["___udivdi3"]; var _luaL_buffinitsize = Module["_luaL_buffinitsize"] = asm["_luaL_buffinitsize"]; var _luaL_checknumber = Module["_luaL_checknumber"] = asm["_luaL_checknumber"]; var _lua_setupvalue = Module["_lua_setupvalue"] = asm["_lua_setupvalue"]; var _luaL_newmetatable = Module["_luaL_newmetatable"] = asm["_luaL_newmetatable"]; var _lua_getmetatable = Module["_lua_getmetatable"] = asm["_lua_getmetatable"]; var _lua_pushunsigned = Module["_lua_pushunsigned"] = asm["_lua_pushunsigned"]; var _lua_getupvalue = Module["_lua_getupvalue"] = asm["_lua_getupvalue"]; var _luaopen_base = Module["_luaopen_base"] = asm["_luaopen_base"]; var _luaL_gsub = Module["_luaL_gsub"] = asm["_luaL_gsub"]; var _luaL_addvalue = Module["_luaL_addvalue"] = asm["_luaL_addvalue"]; var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"]; var _luaL_tolstring = Module["_luaL_tolstring"] = asm["_luaL_tolstring"]; var _lua_atpanic = Module["_lua_atpanic"] = asm["_lua_atpanic"]; var _luaL_getmetafield = Module["_luaL_getmetafield"] = asm["_luaL_getmetafield"]; var _lua_getinfo = Module["_lua_getinfo"] = asm["_lua_getinfo"]; var _luaL_setmetatable = Module["_luaL_setmetatable"] = asm["_luaL_setmetatable"]; var _lua_settop = Module["_lua_settop"] = asm["_lua_settop"]; var _lua_pushboolean = Module["_lua_pushboolean"] = asm["_lua_pushboolean"]; var _lua_setfield = Module["_lua_setfield"] = asm["_lua_setfield"]; var _luaL_checktype = Module["_luaL_checktype"] = asm["_luaL_checktype"]; var _lua_replace = Module["_lua_replace"] = asm["_lua_replace"]; var ___uremdi3 = Module["___uremdi3"] = asm["___uremdi3"]; var _luaL_checkudata = Module["_luaL_checkudata"] = asm["_luaL_checkudata"]; var _luaL_ref = Module["_luaL_ref"] = asm["_luaL_ref"]; var _i64Add = Module["_i64Add"] = asm["_i64Add"]; var _luaopen_coroutine = Module["_luaopen_coroutine"] = asm["_luaopen_coroutine"]; var _pthread_self = Module["_pthread_self"] = asm["_pthread_self"]; var _luaopen_bit32 = Module["_luaopen_bit32"] = asm["_luaopen_bit32"]; var _luaopen_table = Module["_luaopen_table"] = asm["_luaopen_table"]; var _luaL_getsubtable = Module["_luaL_getsubtable"] = asm["_luaL_getsubtable"]; var _lua_getuservalue = Module["_lua_getuservalue"] = asm["_lua_getuservalue"]; var _luaopen_package = Module["_luaopen_package"] = asm["_luaopen_package"]; var ___errno_location = Module["___errno_location"] = asm["___errno_location"]; var _lua_rawseti = Module["_lua_rawseti"] = asm["_lua_rawseti"]; var _saveSetjmp = Module["_saveSetjmp"] = asm["_saveSetjmp"]; var _luaL_optnumber = Module["_luaL_optnumber"] = asm["_luaL_optnumber"]; var _lua_pushinteger = Module["_lua_pushinteger"] = asm["_lua_pushinteger"]; var _lua_getallocf = Module["_lua_getallocf"] = asm["_lua_getallocf"]; var _lua_dump = Module["_lua_dump"] = asm["_lua_dump"]; var _lua_status = Module["_lua_status"] = asm["_lua_status"]; var _lua_tonumberx = Module["_lua_tonumberx"] = asm["_lua_tonumberx"]; var _luaL_where = Module["_luaL_where"] = asm["_luaL_where"]; var ___muldi3 = Module["___muldi3"] = asm["___muldi3"]; var _lua_rawsetp = Module["_lua_rawsetp"] = asm["_lua_rawsetp"]; var _luaL_error = Module["_luaL_error"] = asm["_luaL_error"]; var _luaL_unref = Module["_luaL_unref"] = asm["_luaL_unref"]; var _luaL_loadstring = Module["_luaL_loadstring"] = asm["_luaL_loadstring"]; var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"]; var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"]; var dynCall_vii = Module["dynCall_vii"] = asm["dynCall_vii"]; var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"]; var dynCall_iiiii = Module["dynCall_iiiii"] = asm["dynCall_iiiii"]; var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"]; Runtime.stackAlloc = asm["stackAlloc"]; Runtime.stackSave = asm["stackSave"]; Runtime.stackRestore = asm["stackRestore"]; Runtime.establishStackSpace = asm["establishStackSpace"]; Runtime.setTempRet0 = asm["setTempRet0"]; Runtime.getTempRet0 = asm["getTempRet0"]; function ExitStatus(status) { this.name = "ExitStatus"; this.message = "Program terminated with exit(" + status + ")"; this.status = status } ExitStatus.prototype = new Error; ExitStatus.prototype.constructor = ExitStatus; var initialStackTop; var preloadStartTime = null; var calledMain = false; dependenciesFulfilled = function runCaller() { if (!Module["calledRun"]) run(); if (!Module["calledRun"]) dependenciesFulfilled = runCaller }; Module["callMain"] = Module.callMain = function callMain(args) { args = args || []; ensureInitRuntime(); var argc = args.length + 1; function pad() { for (var i = 0; i < 4 - 1; i++) { argv.push(0) } } var argv = [allocate(intArrayFromString(Module["thisProgram"]), "i8", ALLOC_NORMAL)]; pad(); for (var i = 0; i < argc - 1; i = i + 1) { argv.push(allocate(intArrayFromString(args[i]), "i8", ALLOC_NORMAL)); pad() } argv.push(0); argv = allocate(argv, "i32", ALLOC_NORMAL); try { var ret = Module["_main"](argc, argv, 0); exit(ret, true) } catch (e) { if (e instanceof ExitStatus) { return } else if (e == "SimulateInfiniteLoop") { Module["noExitRuntime"] = true; return } else { if (e && typeof e === "object" && e.stack) Module.printErr("exception thrown: " + [e, e.stack]); throw e } } finally { calledMain = true } }; function run(args) { args = args || Module["arguments"]; if (preloadStartTime === null) preloadStartTime = Date.now(); if (runDependencies > 0) { return } preRun(); if (runDependencies > 0) return; if (Module["calledRun"]) return; function doRun() { if (Module["calledRun"]) return; Module["calledRun"] = true; if (ABORT) return; ensureInitRuntime(); preMain(); if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); if (Module["_main"] && shouldRunNow) Module["callMain"](args); postRun() } if (Module["setStatus"]) { Module["setStatus"]("Running..."); setTimeout((function () { setTimeout((function () { Module["setStatus"]("") }), 1); doRun() }), 1) } else { doRun() } } Module["run"] = Module.run = run; function exit(status, implicit) { if (implicit && Module["noExitRuntime"]) { return } if (Module["noExitRuntime"]) { } else { ABORT = true; EXITSTATUS = status; STACKTOP = initialStackTop; exitRuntime(); if (Module["onExit"]) Module["onExit"](status) } if (ENVIRONMENT_IS_NODE) { process["exit"](status) } else if (ENVIRONMENT_IS_SHELL && typeof quit === "function") { quit(status) } throw new ExitStatus(status) } Module["exit"] = Module.exit = exit; var abortDecorators = []; function abort(what) { if (what !== undefined) { Module.print(what); Module.printErr(what); what = JSON.stringify(what) } else { what = "" } ABORT = true; EXITSTATUS = 1; var extra = "\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information."; var output = "abort(" + what + ") at " + stackTrace() + extra; if (abortDecorators) { abortDecorators.forEach((function (decorator) { output = decorator(output, what) })) } throw output } Module["abort"] = Module.abort = abort; if (Module["preInit"]) { if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; while (Module["preInit"].length > 0) { Module["preInit"].pop()() } } var shouldRunNow = false; if (Module["noInitialRun"]) { shouldRunNow = false } Module["noExitRuntime"] = true; run(); !(function (exports, global, emscripten) { var slice = [].slice; var apply = (function () { }).apply; function new_(a, b, c, d, e, f, g, h, i) { switch (arguments.length) { case 0: return new this; case 1: return new this(a); case 2: return new this(a, b); case 3: return new this(a, b, c); case 4: return new this(a, b, c, d); case 5: return new this(a, b, c, d, e); case 6: return new this(a, b, c, d, e, f); case 7: return new this(a, b, c, d, e, f, g); case 8: return new this(a, b, c, d, e, f, g, h); case 9: return new this(a, b, c, d, e, f, g, h, i); default: var obj = Object.create(this.prototype); var ret = apply.call(this, obj, arguments); return typeof ret === "object" && ret !== null || typeof ret === "function" ? ret : obj } } var Lua = exports.Lua = { "defines": { "REGISTRYINDEX": -1e6 - 1e3, "RIDX_GLOBALS": 2, "RIDX_MAINTHREAD": 1, "MULTRET": -1, "NOREF": -2, "GC": { "STOP": 0, "RESTART": 1, "COLLECT": 2, "COUNT": 3, "COUNTB": 4, "STEP": 5, "SETPAUSE": 6, "SETSTEPMUL": 7, "SETMAJORINC": 8, "ISRUNNING": 9, "GEN": 10, "INC": 11 }, "T": { "NONE": -1, "NIL": 0, "BOOLEAN": 1, "LIGHTUSERDATA": 2, "NUMBER": 3, "STRING": 4, "TABLE": 5, "FUNCTION": 6, "USERDATA": 7, "THREAD": 8 } }, "lib": { "checkstack": emscripten.cwrap("lua_checkstack", null, ["number", "number"]), "createtable": emscripten.cwrap("lua_createtable", null, ["number", "number", "number"]), "error": emscripten.cwrap("lua_error", "number", ["number"]), "gc": emscripten.cwrap("lua_gc", "number", ["number", "number", "number"]), "getfield": emscripten.cwrap("lua_getfield", null, ["number", "number", "string"]), "getglobal": emscripten.cwrap("lua_getglobal", null, ["number", "string"]), "gettable": emscripten.cwrap("lua_gettable", null, ["number", "number"]), "gettop": emscripten.cwrap("lua_gettop", "number", ["number"]), "newuserdata": emscripten.cwrap("lua_newuserdata", "number", ["number", "number"]), "pcallk": emscripten.cwrap("lua_pcallk", "number", ["number", "number", "number", "number", "number", "number"]), "pushboolean": emscripten.cwrap("lua_pushboolean", null, ["number", "number"]), "pushcclosure": emscripten.cwrap("lua_pushcclosure", null, ["number", "number", "number"]), "pushlightuserdata": emscripten.cwrap("lua_pushlightuserdata", null, ["number", "number"]), "pushlstring": emscripten.cwrap("lua_pushlstring", null, ["number", "array", "number"]), "pushnil": emscripten.cwrap("lua_pushnil", null, ["number"]), "pushnumber": emscripten.cwrap("lua_pushnumber", null, ["number", "number"]), "pushvalue": emscripten.cwrap("lua_pushvalue", null, ["number", "number"]), "rawgeti": emscripten.cwrap("lua_rawgeti", null, ["number", "number", "number"]), "remove": emscripten.cwrap("lua_remove", null, ["number", "number"]), "setfield": emscripten.cwrap("lua_setfield", null, ["number", "number", "string"]), "setglobal": emscripten.cwrap("lua_setglobal", null, ["number", "string"]), "setmetatable": emscripten.cwrap("lua_setmetatable", null, ["number", "number"]), "settable": emscripten.cwrap("lua_settable", null, ["number", "number"]), "settop": emscripten.cwrap("lua_settop", null, ["number", "number"]), "toboolean": emscripten.cwrap("lua_toboolean", "number", ["number", "number"]), "tolstring": emscripten.cwrap("lua_tolstring", "number", ["number", "number", "number"]), "tonumberx": emscripten.cwrap("lua_tonumberx", "number", ["number", "number", "number"]), "tothread": emscripten.cwrap("lua_tothread", "number", ["number", "number"]), "touserdata": emscripten.cwrap("lua_touserdata", "number", ["number", "number"]), "type": emscripten.cwrap("lua_type", "number", ["number", "number"]), "typename": emscripten.cwrap("lua_typename", "string", ["number", "number"]) }, "auxlib": { "checkudata": emscripten.cwrap("luaL_checkudata", "number", ["number", "number", "string"]), "loadbufferx": emscripten.cwrap("luaL_loadbufferx", "number", ["number", "array", "number", "string", "string"]), "newmetatable": emscripten.cwrap("luaL_newmetatable", "number", ["number", "string"]), "newstate": emscripten.cwrap("luaL_newstate", "number", []), "openlibs": emscripten.cwrap("luaL_openlibs", null, ["number"]), "ref": emscripten.cwrap("luaL_ref", "number", ["number", "number"]), "setmetatable": emscripten.cwrap("luaL_setmetatable", null, ["number", "string"]), "testudata": emscripten.cwrap("luaL_testudata", "number", ["number", "number", "string"]), "tolstring": emscripten.cwrap("luaL_tolstring", "number", ["number", "number", "number"]), "traceback": emscripten.cwrap("luaL_traceback", null, ["number", "number", "string", "number"]), "unref": emscripten.cwrap("luaL_unref", "number", ["number", "number", "number"]) }, "refs": {} }; Lua.Error = (function (L, error_index) { this.message = L.tostring(error_index); L.traceback(L._L, this.message, 1); this.lua_stack = L.raw_tostring(-1); L.pop(1) }); Lua.Error.prototype = new Error; Lua.Error.prototype.name = "Lua.Error"; Lua.cfuncs = { "__gc": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); var box = L.checkudata(1, "_PROXY_MT"); var id = emscripten.getValue(box, "double"); delete Lua.refs[getmain(L)][id]; return 0 })), "__index": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); var box = L.checkudata(1, "_PROXY_MT"); var id = emscripten.getValue(box, "double"); var ob = Lua.refs[getmain(L)][id]; var k = L.lua_to_js(2); try { var res = ob[k] } catch (e) { L.push(e); L.error(); throw "Unreachable" } L.push(res); return 1 })), "__newindex": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); var box = L.checkudata(1, "_PROXY_MT"); var id = emscripten.getValue(box, "double"); var ob = Lua.refs[getmain(L)][id]; var k = L.lua_to_js(2); if (L.isnil(3)) { try { delete ob[k] } catch (e) { L.push(e); L.error(); throw "Unreachable" } } else { var v = L.lua_to_js(3); try { ob[k] = v } catch (e) { L.push(e); L.error(); throw "Unreachable" } } return 0 })), "__call": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); var box = L.checkudata(1, "_PROXY_MT"); var id = emscripten.getValue(box, "double"); var ob = Lua.refs[getmain(L)][id]; var top = L.gettop(); var thisarg = top >= 2 ? L.lua_to_js(2) : null; var args = []; for (var i = 3; i <= top; i++) { args.push(L.lua_to_js(i)) } try { var res = apply.call(ob, thisarg, args) } catch (e) { L.push(e); L.error(); throw "Unreachable" } L.push(res); return 1 })), "__len": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); var box = L.checkudata(1, "_PROXY_MT"); var id = emscripten.getValue(box, "double"); var ob = Lua.refs[getmain(L)][id]; L.push(ob.length); return 1 })), "__tostring": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); var box = L.checkudata(1, "_PROXY_MT"); var id = emscripten.getValue(box, "double"); var ob = Lua.refs[getmain(L)][id]; L.pushstring(ob !== null && ob.toString ? ob.toString() : typeof ob); return 1 })), "new": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); var box = L.checkudata(1, "_PROXY_MT"); var id = emscripten.getValue(box, "double"); var ob = Lua.refs[getmain(L)][id]; var top = L.gettop(); var args = []; for (var i = 2; i <= top; i++) { args.push(L.lua_to_js(i)) } try { var res = new_.apply(ob, args) } catch (e) { L.push(e); L.error(); throw "Unreachable" } L.push(res); return 1 })), "traceback": emscripten.Runtime.addFunction((function (L) { L = new Lua.State(L); L.pushjs(new Lua.Error(L, 1)); return 1 })) }; Lua.State = (function (_L) { if (_L) { this._L = _L } else { this._L = Lua.auxlib.newstate(); var refs = []; refs.i = 0; Lua.refs[this._L] = refs; this.gc(Lua.defines.GC.STOP, 0); this.openlibs(); this.newmetatable("_PROXY_MT"); this.pushcclosure(Lua.cfuncs.__gc, 0); this.setfield(-2, "__gc"); this.pushcclosure(Lua.cfuncs.__index, 0); this.setfield(-2, "__index"); this.pushcclosure(Lua.cfuncs.__newindex, 0); this.setfield(-2, "__newindex"); this.pushcclosure(Lua.cfuncs.__call, 0); this.setfield(-2, "__call"); this.pushcclosure(Lua.cfuncs.__len, 0); this.setfield(-2, "__len"); this.pushcclosure(Lua.cfuncs.__tostring, 0); this.setfield(-2, "__tostring"); this.pop(1); this.createtable(0, 0); this.createtable(0, 1); this.pushstring("kv"); this.setfield(-2, "__mode"); Lua.lib.setmetatable(this._L, -2); this.setfield(Lua.defines.REGISTRYINDEX, "wrapped"); this.createtable(0, 3); this.pushcclosure(Lua.cfuncs["new"], 0); this.setfield(-2, "new"); this.push(null); this.setfield(-2, "null"); this.push(global); this.setfield(-2, "global"); this.setglobal("js"); this.gc(Lua.defines.GC.RESTART, 0) } this._G = Lua.Proxy.create(this, Lua.defines.RIDX_GLOBALS) }); ((function () { function wrap(func) { return (function () { var args = slice.call(arguments, 0); args.splice(0, 0, this._L); return func.apply(null, args) }) } for (var i in Lua.lib) { Lua.State.prototype[i] = wrap(Lua.lib[i]) } for (var j in Lua.auxlib) { Lua.State.prototype[j] = wrap(Lua.auxlib[j]) } }))(); Lua.State.prototype.pop = (function (n) { this.settop(-n - 1) }); Lua.State.prototype.isnil = (function (n) { return this.type(n) === 0 }); Lua.State.prototype.isnoneornil = (function (n) { return this.type(n) <= 0 }); Lua.State.prototype.getmetatable = (function (n) { this.getfield(Lua.defines.REGISTRYINDEX, n) }); Lua.State.prototype.pcall = (function (n, r, f) { return this.pcallk(n, r, f, 0, null) }); Lua.State.prototype.tonumber = (function (n) { return this.tonumberx(n, null) }); Lua.State.prototype.printStack = (function () { for (var j = 1; j <= this.gettop(); j++) { var t = this.type(j); console.log(j, this.typename(t), (function (t) { switch (t) { case Lua.defines.T.NUMBER: return this.tonumber(j); case Lua.defines.T.STRING: return this.raw_tostring(j); case Lua.defines.T.USERDATA: return this.touserdata(j); default: return } }).call(this, t)) } }); Lua.State.prototype.pushstring = (function (str) { var chars = emscripten.intArrayFromString(str, true); this.pushlstring(chars, chars.length) }); Lua.State.prototype.raw_tostring = (function (i) { var l = emscripten.allocate(4, "i32", emscripten.ALLOC_STACK); var p = Lua.lib.tolstring(this._L, i || -1, l); if (p === 0) return null; return emscripten.Pointer_stringify(p, emscripten.getValue(l, "i32")) }); Lua.State.prototype.tostring = (function (i) { var l = emscripten.allocate(4, "i32", emscripten.ALLOC_STACK); var p = this.tolstring(i || -1, l); return emscripten.Pointer_stringify(p, emscripten.getValue(l, "i32")) }); Lua.State.prototype.lua_to_js = (function (i) { switch (this.type(i)) { case -1: case 0: return void 0; case 1: return this.toboolean(i) !== 0; case 2: return this.touserdata(i); case 3: return this.tonumberx(i); case 4: return this.raw_tostring(i); case 7: var box = this.testudata(i, "_PROXY_MT"); if (box !== 0) { var id = emscripten.getValue(box, "double"); return Lua.refs[getmain(this)][id] }; default: return new Lua.Proxy(this, i) } }); Lua.State.prototype.pushjs = (function (ob) { var refs = Lua.refs[getmain(this)]; var i = refs.indexOf(ob); if (i !== -1) { this.getfield(Lua.defines.REGISTRYINDEX, "wrapped"); this.pushnumber(i); this.gettable(-2); if (!this.isnil(-1)) { this.remove(this.gettop() - 2 + 1); return } else { this.pop(2) } } i = refs.i++; refs[i] = ob; var box = this.newuserdata(8); emscripten.setValue(box, i, "double"); this.setmetatable("_PROXY_MT"); this.getfield(Lua.defines.REGISTRYINDEX, "wrapped"); this.pushnumber(i); this.pushvalue(-3); this.settable(-3); this.pop(1) }); function getmain(L) { L.rawgeti(Lua.defines.REGISTRYINDEX, Lua.defines.RIDX_MAINTHREAD); var _L = L.tothread(-1); L.pop(1); return _L } Lua.State.prototype.push = (function (ob) { switch (typeof ob) { case "boolean": return this.pushboolean(ob ? 1 : 0); case "number": return this.pushnumber(ob); case "string": return this.pushstring(ob); case "undefined": return this.pushnil(); default: if (typeof ob === "function" && ob.L instanceof Lua.State && ob.L._L === getmain(this)) { return ob.push() } if (typeof ob === "object" && (ob instanceof Boolean || ob instanceof Number || ob instanceof String)) { return this.push(ob.valueOf()) } return this.pushjs(ob) } }); Lua.State.prototype.load = (function (code, name, mode) { var chars = emscripten.intArrayFromString(code, true); if (this.loadbufferx(chars, chars.length, name, mode) !== 0) { throw new Lua.Error(this, -1) } var r = new Lua.Proxy(this, -1); this.pop(1); return r }); Lua.State.prototype.execute = (function (code) { var proxy = this.load(code); var args = slice.call(arguments, 1); try { return proxy.invoke(args) } finally { proxy.free() } }); Lua.Proxy = (function (L, i) { L.pushvalue(i); var ref = L.ref(Lua.defines.REGISTRYINDEX); var _L = getmain(L); if (L._L != _L) { L = new Lua.State(_L) } return Lua.Proxy.create(L, ref) }); Lua.Proxy.create = (function (L, ref) { function self() { "use strict"; var args = slice.call(arguments, 0); args.splice(0, 0, this); return self.invoke(args, 1)[0] } self.L = L; self.ref = ref; self.invoke = Lua.Proxy.invoke; self.push = Lua.Proxy.push; self.free = Lua.Proxy.free; self.toString = Lua.Proxy.toString; self.get = Lua.Proxy.get; self.set = Lua.Proxy.set; return self }); Lua.Proxy.push = (function () { this.L.rawgeti(Lua.defines.REGISTRYINDEX, this.ref) }); Lua.Proxy.free = (function () { this.L.unref(Lua.defines.REGISTRYINDEX, this.ref); this.ref = Lua.defines.NOREF }); Lua.Proxy.invoke = (function (args, n_results) { if (this.L.checkstack(1 + 1 + args.length) === 0) throw "Out of stack space"; if (n_results === void 0 || n_results === null) { n_results = Lua.defines.MULTRET } var pre = this.L.gettop(); this.L.pushcclosure(Lua.cfuncs.traceback, 0); this.push(); for (var i = 0; i < args.length; i++) { this.L.push(args[i]) } if (this.L.pcall(args.length, n_results, pre + 1) !== 0) { var err = this.L.lua_to_js(-1); this.L.settop(pre); throw err } var top = this.L.gettop(); var results = []; for (var j = pre + 2; j <= top; j++) { results.push(this.L.lua_to_js(j)) } this.L.settop(pre); return results }); Lua.Proxy.toString = (function () { this.push(); var s = this.L.tostring(-1); this.L.pop(2); return s }); Lua.Proxy.get = (function (key) { this.push(); this.L.push(key); this.L.gettable(-2); var res = this.L.lua_to_js(-1); this.L.pop(2); return res }); Lua.Proxy.set = (function (key, value) { this.push(); this.L.push(key); this.L.push(value); this.L.settable(-3); this.L.pop(1); return }); Lua.init = (function () { var L = exports.L = new Lua.State; L.execute("dofile'js.lua'"); if (ENVIRONMENT_IS_WEB) { var onload = window.onload; window.onload = (function () { if (onload) onload(); Lua.executeScripts(L) }) } }); Lua.executeScripts = (function (L) { Array.prototype.forEach.call(document.querySelectorAll('script[type="text/lua"]'), (function (tag) { L.execute(tag.innerHTML) })) }); if (!emscripten.noInitialRun) Lua.init(); return Lua })(exports, ENVIRONMENT_IS_NODE ? global : this, Module)
; exports['emscripten'] = Module;
})(typeof module !== 'undefined' ? module.exports : this);