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" } } 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 } if (typeof quit === "function") { Module["quit"] = (function (status, toThrow) { quit(status) }) } } 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 }; if (ENVIRONMENT_IS_WORKER) { Module["readBinary"] = function read(url) { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.responseType = "arraybuffer"; xhr.send(null); return xhr.response } } 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" } if (!Module["quit"]) { Module["quit"] = (function (status, toThrow) { throw toThrow }) } 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; return 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: [], 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 = HEAP32[DYNAMICTOP_PTR >> 2]; var end = (ret + size + 15 | 0) & -16; HEAP32[DYNAMICTOP_PTR >> 2] = end; if (end >= TOTAL_MEMORY) { var success = enlargeMemory(); if (!success) { HEAP32[DYNAMICTOP_PTR >> 2] = 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 = 0; 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) { var len = (str.length << 2) + 1; ret = Runtime.stackAlloc(len); stringToUTF8(str, ret, len) } 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 (!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 __cxa_demangle_func = Module["___cxa_demangle"] || Module["__cxa_demangle"]; if (__cxa_demangle_func) { try { var s = func.substr(1); var len = lengthBytesUTF8(s) + 1; var buf = _malloc(len); stringToUTF8(s, buf, len); var status = _malloc(4); var ret = __cxa_demangle_func(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) { var regex = /__Z[\w\d_]+/g; return text.replace(regex, (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; 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, STATICTOP, staticSealed; var STACK_BASE, STACKTOP, STACK_MAX; var DYNAMIC_BASE, DYNAMICTOP_PTR; STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = DYNAMICTOP_PTR = 0; staticSealed = false; 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 allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) 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"] || 16777216; if (TOTAL_MEMORY < TOTAL_STACK) Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was " + TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); if (Module["buffer"]) { buffer = Module["buffer"] } else { { buffer = new ArrayBuffer(TOTAL_MEMORY) } } updateGlobalBufferViews(); function getTotalMemory() { return TOTAL_MEMORY } 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) { Module["dynCall_v"](func) } else { Module["dynCall_vi"](func, callback.arg) } } else { func(callback.arg === undefined ? null : callback.arg) } } } var __ATPRERUN__ = []; var __ATINIT__ = []; var __ATMAIN__ = []; var __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) { Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"); var lastChar, end; if (dontAddNull) { end = buffer + lengthBytesUTF8(string); lastChar = HEAP8[end] } stringToUTF8(string, buffer, Infinity); if (dontAddNull) HEAP8[end] = lastChar } Module["writeStringToMemory"] = writeStringToMemory; function writeArrayToMemory(array, buffer) { HEAP8.set(array, buffer) } 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; function unSign(value, bits, ignore) { if (value >= 0) { return value } return bits <= 32 ? 2 * Math.abs(1 << bits - 1) + value : Math.pow(2, bits) + value } function reSign(value, bits, ignore) { if (value <= 0) { return value } var half = bits <= 32 ? Math.abs(1 << bits - 1) : Math.pow(2, bits - 1); if (value >= half && (bits <= 32 || value > half)) { value = -2 * half + value } return value } 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_round = Math.round; 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 = [(function ($0, $1) { { if (typeof e8530_send_sdlc_packet_js === "function") { e8530_send_sdlc_packet_js($0, $1) } } }), (function ($0, $1) { { if (typeof e8530_poll_sdlc_packet_js === "function") { return e8530_poll_sdlc_packet_js($0, $1) } } })]; function _emscripten_asm_const_iii(code, a0, a1) { return ASM_CONSTS[code](a0, a1) } STATIC_BASE = 8; STATICTOP = STATIC_BASE + 61664; __ATINIT__.push(); allocate([86, 0, 0, 0, 115, 0, 0, 0, 87, 0, 0, 0, 62, 0, 0, 0, 88, 0, 0, 0, 116, 0, 0, 0, 90, 0, 0, 0, 59, 0, 0, 0, 91, 0, 0, 0, 87, 0, 0, 0, 92, 0, 0, 0, 60, 0, 0, 0, 93, 0, 0, 0, 119, 0, 0, 0, 94, 0, 0, 0, 61, 0, 0, 0, 95, 0, 0, 0, 121, 0, 0, 0, 97, 0, 0, 0, 114, 0, 0, 0, 98, 0, 0, 0, 117, 0, 0, 0, 96, 0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 0, 0, 0, 89, 0, 0, 0, 87, 0, 0, 0, 91, 0, 0, 0, 88, 0, 0, 0, 92, 0, 0, 0, 90, 0, 0, 0, 86, 0, 0, 0, 91, 0, 0, 0, 87, 0, 0, 0, 92, 0, 0, 0, 88, 0, 0, 0, 93, 0, 0, 0, 83, 0, 0, 0, 94, 0, 0, 0, 84, 0, 0, 0, 95, 0, 0, 0, 85, 0, 0, 0, 97, 0, 0, 0, 82, 0, 0, 0, 98, 0, 0, 0, 65, 0, 0, 0, 96, 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 53, 0, 0, 0, 2, 0, 0, 0, 122, 0, 0, 0, 3, 0, 0, 0, 120, 0, 0, 0, 4, 0, 0, 0, 99, 0, 0, 0, 5, 0, 0, 0, 118, 0, 0, 0, 6, 0, 0, 0, 96, 0, 0, 0, 7, 0, 0, 0, 97, 0, 0, 0, 8, 0, 0, 0, 98, 0, 0, 0, 9, 0, 0, 0, 100, 0, 0, 0, 10, 0, 0, 0, 101, 0, 0, 0, 11, 0, 0, 0, 109, 0, 0, 0, 12, 0, 0, 0, 103, 0, 0, 0, 13, 0, 0, 0, 111, 0, 0, 0, 17, 0, 0, 0, 50, 0, 0, 0, 18, 0, 0, 0, 18, 0, 0, 0, 19, 0, 0, 0, 19, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 21, 0, 0, 0, 21, 0, 0, 0, 22, 0, 0, 0, 23, 0, 0, 0, 23, 0, 0, 0, 22, 0, 0, 0, 24, 0, 0, 0, 26, 0, 0, 0, 25, 0, 0, 0, 28, 0, 0, 0, 26, 0, 0, 0, 25, 0, 0, 0, 27, 0, 0, 0, 29, 0, 0, 0, 28, 0, 0, 0, 27, 0, 0, 0, 29, 0, 0, 0, 24, 0, 0, 0, 30, 0, 0, 0, 51, 0, 0, 0, 31, 0, 0, 0, 48, 0, 0, 0, 32, 0, 0, 0, 12, 0, 0, 0, 33, 0, 0, 0, 13, 0, 0, 0, 34, 0, 0, 0, 14, 0, 0, 0, 35, 0, 0, 0, 15, 0, 0, 0, 36, 0, 0, 0, 17, 0, 0, 0, 37, 0, 0, 0, 16, 0, 0, 0, 38, 0, 0, 0, 32, 0, 0, 0, 39, 0, 0, 0, 34, 0, 0, 0, 40, 0, 0, 0, 31, 0, 0, 0, 41, 0, 0, 0, 35, 0, 0, 0, 42, 0, 0, 0, 33, 0, 0, 0, 43, 0, 0, 0, 30, 0, 0, 0, 57, 0, 0, 0, 42, 0, 0, 0, 45, 0, 0, 0, 57, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 1, 0, 0, 0, 48, 0, 0, 0, 2, 0, 0, 0, 49, 0, 0, 0, 3, 0, 0, 0, 50, 0, 0, 0, 5, 0, 0, 0, 51, 0, 0, 0, 4, 0, 0, 0, 52, 0, 0, 0, 38, 0, 0, 0, 53, 0, 0, 0, 40, 0, 0, 0, 54, 0, 0, 0, 37, 0, 0, 0, 55, 0, 0, 0, 41, 0, 0, 0, 56, 0, 0, 0, 39, 0, 0, 0, 44, 0, 0, 0, 36, 0, 0, 0, 58, 0, 0, 0, 56, 0, 0, 0, 60, 0, 0, 0, 6, 0, 0, 0, 61, 0, 0, 0, 7, 0, 0, 0, 62, 0, 0, 0, 8, 0, 0, 0, 63, 0, 0, 0, 9, 0, 0, 0, 64, 0, 0, 0, 11, 0, 0, 0, 66, 0, 0, 0, 45, 0, 0, 0, 65, 0, 0, 0, 46, 0, 0, 0, 67, 0, 0, 0, 43, 0, 0, 0, 68, 0, 0, 0, 47, 0, 0, 0, 69, 0, 0, 0, 44, 0, 0, 0, 70, 0, 0, 0, 56, 0, 0, 0, 71, 0, 0, 0, 54, 0, 0, 0, 72, 0, 0, 0, 58, 0, 0, 0, 74, 0, 0, 0, 58, 0, 0, 0, 75, 0, 0, 0, 55, 0, 0, 0, 76, 0, 0, 0, 49, 0, 0, 0, 77, 0, 0, 0, 55, 0, 0, 0, 79, 0, 0, 0, 58, 0, 0, 0, 81, 0, 0, 0, 54, 0, 0, 0, 99, 0, 0, 0, 114, 0, 0, 0, 100, 0, 0, 0, 115, 0, 0, 0, 101, 0, 0, 0, 116, 0, 0, 0, 102, 0, 0, 0, 117, 0, 0, 0, 103, 0, 0, 0, 119, 0, 0, 0, 104, 0, 0, 0, 121, 0, 0, 0, 105, 0, 0, 0, 62, 0, 0, 0, 106, 0, 0, 0, 59, 0, 0, 0, 108, 0, 0, 0, 60, 0, 0, 0, 107, 0, 0, 0, 61, 0, 0, 0, 82, 0, 0, 0, 71, 0, 0, 0, 83, 0, 0, 0, 75, 0, 0, 0, 84, 0, 0, 0, 67, 0, 0, 0, 86, 0, 0, 0, 89, 0, 0, 0, 87, 0, 0, 0, 91, 0, 0, 0, 88, 0, 0, 0, 92, 0, 0, 0, 85, 0, 0, 0, 78, 0, 0, 0, 90, 0, 0, 0, 86, 0, 0, 0, 91, 0, 0, 0, 87, 0, 0, 0, 92, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 69, 0, 0, 0, 93, 0, 0, 0, 83, 0, 0, 0, 94, 0, 0, 0, 84, 0, 0, 0, 95, 0, 0, 0, 85, 0, 0, 0, 96, 0, 0, 0, 76, 0, 0, 0, 97, 0, 0, 0, 82, 0, 0, 0, 98, 0, 0, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 218, 198, 0, 0, 91, 119, 0, 0, 97, 119, 0, 0, 103, 119, 0, 0, 106, 119, 0, 0, 115, 119, 0, 0, 144, 119, 0, 0, 147, 119, 0, 0, 159, 119, 0, 0, 138, 198, 0, 0, 193, 232, 0, 0, 153, 134, 0, 0, 179, 119, 0, 0, 184, 119, 0, 0, 190, 119, 0, 0, 83, 198, 0, 0, 91, 119, 0, 0, 209, 119, 0, 0, 250, 119, 0, 0, 193, 232, 0, 0, 250, 119, 0, 0, 0, 120, 0, 0, 193, 232, 0, 0, 4, 120, 0, 0, 71, 198, 0, 0, 24, 120, 0, 0, 34, 120, 0, 0, 132, 198, 0, 0, 56, 120, 0, 0, 63, 120, 0, 0, 73, 198, 0, 0, 91, 119, 0, 0, 94, 120, 0, 0, 77, 198, 0, 0, 123, 120, 0, 0, 139, 120, 0, 0, 1, 0, 0, 0, 230, 41, 1, 0, 14, 17, 1, 0, 52, 248, 0, 0, 102, 223, 0, 0, 150, 198, 0, 0, 17, 0, 0, 0, 1, 0, 101, 0, 0, 0, 0, 0, 0, 0, 1, 0, 229, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 1, 0, 37, 0, 0, 0, 0, 0, 0, 0, 1, 0, 165, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 1, 0, 39, 0, 0, 0, 0, 0, 0, 0, 1, 0, 167, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 1, 0, 41, 0, 0, 0, 0, 0, 0, 0, 1, 0, 169, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 1, 0, 43, 0, 0, 0, 0, 0, 0, 0, 1, 0, 171, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 1, 0, 47, 0, 0, 0, 0, 0, 0, 0, 1, 0, 175, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 1, 0, 45, 0, 0, 0, 0, 0, 0, 0, 1, 0, 173, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 1, 0, 53, 0, 0, 0, 0, 0, 0, 0, 1, 0, 181, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 1, 0, 57, 0, 0, 0, 0, 0, 0, 0, 1, 0, 185, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 1, 0, 51, 0, 0, 0, 0, 0, 0, 0, 1, 0, 179, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 1, 0, 59, 0, 0, 0, 0, 0, 0, 0, 1, 0, 187, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 1, 0, 55, 0, 0, 0, 0, 0, 0, 0, 1, 0, 183, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 1, 0, 49, 0, 0, 0, 0, 0, 0, 0, 1, 0, 177, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 1, 0, 103, 0, 0, 0, 0, 0, 0, 0, 1, 0, 231, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 1, 0, 97, 0, 0, 0, 0, 0, 0, 0, 1, 0, 225, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 1, 0, 25, 0, 0, 0, 0, 0, 0, 0, 1, 0, 153, 0, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 1, 0, 27, 0, 0, 0, 0, 0, 0, 0, 1, 0, 155, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 29, 0, 0, 0, 0, 0, 0, 0, 1, 0, 157, 0, 0, 0, 0, 0, 0, 0, 35, 0, 0, 0, 1, 0, 31, 0, 0, 0, 0, 0, 0, 0, 1, 0, 159, 0, 0, 0, 0, 0, 0, 0, 36, 0, 0, 0, 1, 0, 35, 0, 0, 0, 0, 0, 0, 0, 1, 0, 163, 0, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 1, 0, 33, 0, 0, 0, 0, 0, 0, 0, 1, 0, 161, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 1, 0, 65, 0, 0, 0, 0, 0, 0, 0, 1, 0, 193, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 1, 0, 69, 0, 0, 0, 0, 0, 0, 0, 1, 0, 197, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 1, 0, 63, 0, 0, 0, 0, 0, 0, 0, 1, 0, 191, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 1, 0, 71, 0, 0, 0, 0, 0, 0, 0, 1, 0, 199, 0, 0, 0, 0, 0, 0, 0, 42, 0, 0, 0, 1, 0, 67, 0, 0, 0, 0, 0, 0, 0, 1, 0, 195, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 1, 0, 61, 0, 0, 0, 0, 0, 0, 0, 1, 0, 189, 0, 0, 0, 0, 0, 0, 0, 57, 0, 0, 0, 1, 0, 85, 0, 0, 0, 0, 0, 0, 0, 1, 0, 213, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 1, 0, 73, 0, 0, 0, 0, 0, 0, 0, 1, 0, 201, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 0, 1, 0, 115, 0, 0, 0, 0, 0, 0, 0, 1, 0, 243, 0, 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 129, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 131, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 1, 0, 5, 0, 0, 0, 0, 0, 0, 0, 1, 0, 133, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 1, 0, 7, 0, 0, 0, 0, 0, 0, 0, 1, 0, 135, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 1, 0, 11, 0, 0, 0, 0, 0, 0, 0, 1, 0, 139, 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 1, 0, 9, 0, 0, 0, 0, 0, 0, 0, 1, 0, 137, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 1, 0, 77, 0, 0, 0, 0, 0, 0, 0, 1, 0, 205, 0, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 1, 0, 81, 0, 0, 0, 0, 0, 0, 0, 1, 0, 209, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 1, 0, 75, 0, 0, 0, 0, 0, 0, 0, 1, 0, 203, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 1, 0, 83, 0, 0, 0, 0, 0, 0, 0, 1, 0, 211, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 0, 1, 0, 79, 0, 0, 0, 0, 0, 0, 0, 1, 0, 207, 0, 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, 1, 0, 113, 0, 0, 0, 0, 0, 0, 0, 1, 0, 241, 0, 0, 0, 0, 0, 0, 0, 70, 0, 0, 0, 1, 0, 113, 0, 0, 0, 0, 0, 0, 0, 1, 0, 241, 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, 0, 1, 0, 13, 0, 0, 0, 0, 0, 0, 0, 1, 0, 141, 0, 0, 0, 0, 0, 0, 0, 61, 0, 0, 0, 1, 0, 15, 0, 0, 0, 0, 0, 0, 0, 1, 0, 143, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 1, 0, 17, 0, 0, 0, 0, 0, 0, 0, 1, 0, 145, 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, 0, 1, 0, 19, 0, 0, 0, 0, 0, 0, 0, 1, 0, 147, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 1, 0, 23, 0, 0, 0, 0, 0, 0, 0, 1, 0, 151, 0, 0, 0, 0, 0, 0, 0, 66, 0, 0, 0, 1, 0, 91, 0, 0, 0, 0, 0, 0, 0, 1, 0, 219, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0, 0, 1, 0, 93, 0, 0, 0, 0, 0, 0, 0, 1, 0, 221, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 1, 0, 87, 0, 0, 0, 0, 0, 0, 0, 1, 0, 215, 0, 0, 0, 0, 0, 0, 0, 68, 0, 0, 0, 1, 0, 95, 0, 0, 0, 0, 0, 0, 0, 1, 0, 223, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 1, 0, 89, 0, 0, 0, 0, 0, 0, 0, 1, 0, 217, 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 1, 0, 117, 0, 0, 0, 0, 0, 0, 0, 1, 0, 245, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 0, 1, 0, 117, 0, 0, 0, 0, 0, 0, 0, 1, 0, 245, 0, 0, 0, 0, 0, 0, 0, 75, 0, 0, 0, 1, 0, 111, 0, 0, 0, 0, 0, 0, 0, 1, 0, 239, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 1, 0, 105, 0, 0, 0, 0, 0, 0, 0, 1, 0, 233, 0, 0, 0, 0, 0, 0, 0, 76, 0, 0, 0, 1, 0, 99, 0, 0, 0, 0, 0, 0, 0, 1, 0, 227, 0, 0, 0, 0, 0, 0, 0, 82, 0, 0, 0, 2, 0, 121, 15, 0, 0, 0, 0, 0, 0, 2, 0, 121, 143, 0, 0, 0, 0, 0, 0, 83, 0, 0, 0, 3, 0, 113, 121, 27, 0, 0, 0, 0, 0, 3, 0, 121, 155, 241, 0, 0, 0, 0, 0, 84, 0, 0, 0, 3, 0, 113, 121, 5, 0, 0, 0, 0, 0, 3, 0, 121, 133, 241, 0, 0, 0, 0, 0, 85, 0, 0, 0, 2, 0, 121, 29, 0, 0, 0, 0, 0, 0, 2, 0, 121, 157, 0, 0, 0, 0, 0, 0, 86, 0, 0, 0, 2, 0, 121, 51, 0, 0, 0, 0, 0, 0, 2, 0, 121, 179, 0, 0, 0, 0, 0, 0, 87, 0, 0, 0, 2, 0, 121, 55, 0, 0, 0, 0, 0, 0, 2, 0, 121, 183, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 2, 0, 121, 57, 0, 0, 0, 0, 0, 0, 2, 0, 121, 185, 0, 0, 0, 0, 0, 0, 89, 0, 0, 0, 3, 0, 113, 121, 13, 0, 0, 0, 0, 0, 3, 0, 121, 141, 241, 0, 0, 0, 0, 0, 90, 0, 0, 0, 2, 0, 121, 45, 0, 0, 0, 0, 0, 0, 2, 0, 121, 173, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 2, 0, 121, 47, 0, 0, 0, 0, 0, 0, 2, 0, 121, 175, 0, 0, 0, 0, 0, 0, 92, 0, 0, 0, 2, 0, 121, 49, 0, 0, 0, 0, 0, 0, 2, 0, 121, 177, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 2, 0, 121, 39, 0, 0, 0, 0, 0, 0, 2, 0, 121, 167, 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, 2, 0, 121, 41, 0, 0, 0, 0, 0, 0, 2, 0, 121, 169, 0, 0, 0, 0, 0, 0, 95, 0, 0, 0, 2, 0, 121, 43, 0, 0, 0, 0, 0, 0, 2, 0, 121, 171, 0, 0, 0, 0, 0, 0, 96, 0, 0, 0, 2, 0, 121, 25, 0, 0, 0, 0, 0, 0, 2, 0, 121, 153, 0, 0, 0, 0, 0, 0, 97, 0, 0, 0, 2, 0, 121, 37, 0, 0, 0, 0, 0, 0, 2, 0, 121, 165, 0, 0, 0, 0, 0, 0, 98, 0, 0, 0, 2, 0, 121, 3, 0, 0, 0, 0, 0, 0, 2, 0, 121, 131, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 2, 0, 121, 27, 0, 0, 0, 0, 0, 0, 2, 0, 121, 155, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 2, 0, 121, 13, 0, 0, 0, 0, 0, 0, 2, 0, 121, 141, 0, 0, 0, 0, 0, 0, 108, 0, 0, 0, 2, 0, 121, 5, 0, 0, 0, 0, 0, 0, 2, 0, 121, 133, 0, 0, 0, 0, 0, 0, 107, 0, 0, 0, 2, 0, 121, 17, 0, 0, 0, 0, 0, 0, 2, 0, 121, 145, 0, 0, 0, 0, 0, 0, 100, 0, 0, 0, 2, 0, 121, 103, 0, 0, 0, 0, 0, 0, 2, 0, 121, 231, 0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 2, 0, 121, 111, 0, 0, 0, 0, 0, 0, 2, 0, 121, 239, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 2, 0, 121, 105, 0, 0, 0, 0, 0, 0, 2, 0, 121, 233, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 2, 0, 121, 115, 0, 0, 0, 0, 0, 0, 2, 0, 121, 243, 0, 0, 0, 0, 0, 0, 99, 0, 0, 0, 2, 0, 121, 101, 0, 0, 0, 0, 0, 0, 2, 0, 121, 101, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 2, 0, 121, 107, 0, 0, 0, 0, 0, 0, 2, 0, 121, 235, 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, 17, 0, 0, 0, 1, 0, 101, 0, 0, 0, 0, 0, 0, 0, 1, 0, 229, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 1, 0, 39, 0, 0, 0, 0, 0, 0, 0, 1, 0, 167, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 1, 0, 39, 0, 0, 0, 0, 0, 0, 0, 1, 0, 167, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 1, 0, 41, 0, 0, 0, 0, 0, 0, 0, 1, 0, 169, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 1, 0, 43, 0, 0, 0, 0, 0, 0, 0, 1, 0, 171, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 1, 0, 47, 0, 0, 0, 0, 0, 0, 0, 1, 0, 175, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 1, 0, 45, 0, 0, 0, 0, 0, 0, 0, 1, 0, 173, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 1, 0, 53, 0, 0, 0, 0, 0, 0, 0, 1, 0, 181, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 1, 0, 57, 0, 0, 0, 0, 0, 0, 0, 1, 0, 185, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 1, 0, 51, 0, 0, 0, 0, 0, 0, 0, 1, 0, 179, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 1, 0, 59, 0, 0, 0, 0, 0, 0, 0, 1, 0, 187, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 1, 0, 55, 0, 0, 0, 0, 0, 0, 0, 1, 0, 183, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 1, 0, 49, 0, 0, 0, 0, 0, 0, 0, 1, 0, 177, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 1, 0, 103, 0, 0, 0, 0, 0, 0, 0, 1, 0, 231, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 1, 0, 97, 0, 0, 0, 0, 0, 0, 0, 1, 0, 225, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 1, 0, 25, 0, 0, 0, 0, 0, 0, 0, 1, 0, 153, 0, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 1, 0, 27, 0, 0, 0, 0, 0, 0, 0, 1, 0, 155, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 29, 0, 0, 0, 0, 0, 0, 0, 1, 0, 157, 0, 0, 0, 0, 0, 0, 0, 35, 0, 0, 0, 1, 0, 31, 0, 0, 0, 0, 0, 0, 0, 1, 0, 159, 0, 0, 0, 0, 0, 0, 0, 36, 0, 0, 0, 1, 0, 35, 0, 0, 0, 0, 0, 0, 0, 1, 0, 163, 0, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 1, 0, 33, 0, 0, 0, 0, 0, 0, 0, 1, 0, 161, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 1, 0, 65, 0, 0, 0, 0, 0, 0, 0, 1, 0, 193, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 1, 0, 69, 0, 0, 0, 0, 0, 0, 0, 1, 0, 197, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 1, 0, 63, 0, 0, 0, 0, 0, 0, 0, 1, 0, 191, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 1, 0, 71, 0, 0, 0, 0, 0, 0, 0, 1, 0, 199, 0, 0, 0, 0, 0, 0, 0, 42, 0, 0, 0, 1, 0, 67, 0, 0, 0, 0, 0, 0, 0, 1, 0, 195, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 1, 0, 61, 0, 0, 0, 0, 0, 0, 0, 1, 0, 189, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 1, 0, 85, 0, 0, 0, 0, 0, 0, 0, 1, 0, 213, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 0, 1, 0, 115, 0, 0, 0, 0, 0, 0, 0, 1, 0, 243, 0, 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 129, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 131, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 1, 0, 5, 0, 0, 0, 0, 0, 0, 0, 1, 0, 133, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 1, 0, 7, 0, 0, 0, 0, 0, 0, 0, 1, 0, 135, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 1, 0, 11, 0, 0, 0, 0, 0, 0, 0, 1, 0, 139, 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 1, 0, 9, 0, 0, 0, 0, 0, 0, 0, 1, 0, 137, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 1, 0, 77, 0, 0, 0, 0, 0, 0, 0, 1, 0, 205, 0, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 1, 0, 81, 0, 0, 0, 0, 0, 0, 0, 1, 0, 209, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 1, 0, 75, 0, 0, 0, 0, 0, 0, 0, 1, 0, 203, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 1, 0, 83, 0, 0, 0, 0, 0, 0, 0, 1, 0, 211, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 0, 1, 0, 79, 0, 0, 0, 0, 0, 0, 0, 1, 0, 207, 0, 0, 0, 0, 0, 0, 0, 57, 0, 0, 0, 1, 0, 73, 0, 0, 0, 0, 0, 0, 0, 1, 0, 201, 0, 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, 1, 0, 113, 0, 0, 0, 0, 0, 0, 0, 1, 0, 241, 0, 0, 0, 0, 0, 0, 0, 70, 0, 0, 0, 1, 0, 113, 0, 0, 0, 0, 0, 0, 0, 1, 0, 241, 0, 0, 0, 0, 0, 0, 0, 59, 0, 0, 0, 1, 0, 13, 0, 0, 0, 0, 0, 0, 0, 1, 0, 141, 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, 0, 1, 0, 15, 0, 0, 0, 0, 0, 0, 0, 1, 0, 143, 0, 0, 0, 0, 0, 0, 0, 61, 0, 0, 0, 1, 0, 17, 0, 0, 0, 0, 0, 0, 0, 1, 0, 145, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 1, 0, 19, 0, 0, 0, 0, 0, 0, 0, 1, 0, 147, 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, 0, 1, 0, 23, 0, 0, 0, 0, 0, 0, 0, 1, 0, 151, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 1, 0, 91, 0, 0, 0, 0, 0, 0, 0, 1, 0, 219, 0, 0, 0, 0, 0, 0, 0, 66, 0, 0, 0, 1, 0, 93, 0, 0, 0, 0, 0, 0, 0, 1, 0, 221, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0, 0, 1, 0, 87, 0, 0, 0, 0, 0, 0, 0, 1, 0, 215, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 1, 0, 95, 0, 0, 0, 0, 0, 0, 0, 1, 0, 223, 0, 0, 0, 0, 0, 0, 0, 68, 0, 0, 0, 1, 0, 89, 0, 0, 0, 0, 0, 0, 0, 1, 0, 217, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 1, 0, 21, 0, 0, 0, 0, 0, 0, 0, 1, 0, 149, 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 1, 0, 117, 0, 0, 0, 0, 0, 0, 0, 1, 0, 245, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 0, 1, 0, 117, 0, 0, 0, 0, 0, 0, 0, 1, 0, 245, 0, 0, 0, 0, 0, 0, 0, 75, 0, 0, 0, 1, 0, 111, 0, 0, 0, 0, 0, 0, 0, 1, 0, 239, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 1, 0, 99, 0, 0, 0, 0, 0, 0, 0, 1, 0, 227, 0, 0, 0, 0, 0, 0, 0, 76, 0, 0, 0, 1, 0, 105, 0, 0, 0, 0, 0, 0, 0, 1, 0, 233, 0, 0, 0, 0, 0, 0, 0, 82, 0, 0, 0, 2, 0, 121, 15, 0, 0, 0, 0, 0, 0, 2, 0, 121, 143, 0, 0, 0, 0, 0, 0, 83, 0, 0, 0, 3, 0, 113, 121, 27, 0, 0, 0, 0, 0, 3, 0, 121, 155, 241, 0, 0, 0, 0, 0, 84, 0, 0, 0, 3, 0, 113, 121, 5, 0, 0, 0, 0, 0, 3, 0, 121, 133, 241, 0, 0, 0, 0, 0, 85, 0, 0, 0, 2, 0, 121, 29, 0, 0, 0, 0, 0, 0, 2, 0, 121, 157, 0, 0, 0, 0, 0, 0, 86, 0, 0, 0, 2, 0, 121, 51, 0, 0, 0, 0, 0, 0, 2, 0, 121, 179, 0, 0, 0, 0, 0, 0, 87, 0, 0, 0, 2, 0, 121, 55, 0, 0, 0, 0, 0, 0, 2, 0, 121, 183, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 2, 0, 121, 57, 0, 0, 0, 0, 0, 0, 2, 0, 121, 185, 0, 0, 0, 0, 0, 0, 89, 0, 0, 0, 3, 0, 113, 121, 13, 0, 0, 0, 0, 0, 3, 0, 121, 141, 241, 0, 0, 0, 0, 0, 90, 0, 0, 0, 2, 0, 121, 45, 0, 0, 0, 0, 0, 0, 2, 0, 121, 173, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 2, 0, 121, 47, 0, 0, 0, 0, 0, 0, 2, 0, 121, 175, 0, 0, 0, 0, 0, 0, 92, 0, 0, 0, 2, 0, 121, 49, 0, 0, 0, 0, 0, 0, 2, 0, 121, 177, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 2, 0, 121, 39, 0, 0, 0, 0, 0, 0, 2, 0, 121, 167, 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, 2, 0, 121, 41, 0, 0, 0, 0, 0, 0, 2, 0, 121, 169, 0, 0, 0, 0, 0, 0, 95, 0, 0, 0, 2, 0, 121, 43, 0, 0, 0, 0, 0, 0, 2, 0, 121, 171, 0, 0, 0, 0, 0, 0, 96, 0, 0, 0, 2, 0, 121, 25, 0, 0, 0, 0, 0, 0, 2, 0, 121, 153, 0, 0, 0, 0, 0, 0, 97, 0, 0, 0, 2, 0, 121, 37, 0, 0, 0, 0, 0, 0, 2, 0, 121, 165, 0, 0, 0, 0, 0, 0, 98, 0, 0, 0, 2, 0, 121, 3, 0, 0, 0, 0, 0, 0, 2, 0, 121, 131, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 2, 0, 121, 27, 0, 0, 0, 0, 0, 0, 2, 0, 121, 155, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 2, 0, 121, 13, 0, 0, 0, 0, 0, 0, 2, 0, 121, 141, 0, 0, 0, 0, 0, 0, 108, 0, 0, 0, 2, 0, 121, 5, 0, 0, 0, 0, 0, 0, 2, 0, 121, 133, 0, 0, 0, 0, 0, 0, 107, 0, 0, 0, 2, 0, 121, 17, 0, 0, 0, 0, 0, 0, 2, 0, 121, 145, 0, 0, 0, 0, 0, 0, 100, 0, 0, 0, 2, 0, 121, 103, 0, 0, 0, 0, 0, 0, 2, 0, 121, 231, 0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 2, 0, 121, 111, 0, 0, 0, 0, 0, 0, 2, 0, 121, 239, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 2, 0, 121, 105, 0, 0, 0, 0, 0, 0, 2, 0, 121, 233, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 2, 0, 121, 115, 0, 0, 0, 0, 0, 0, 2, 0, 121, 243, 0, 0, 0, 0, 0, 0, 99, 0, 0, 0, 2, 0, 121, 101, 0, 0, 0, 0, 0, 0, 2, 0, 121, 229, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 2, 0, 121, 107, 0, 0, 0, 0, 0, 0, 2, 0, 121, 235, 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, 86, 0, 0, 0, 2, 0, 121, 103, 0, 0, 0, 0, 0, 0, 2, 0, 121, 231, 0, 0, 0, 0, 0, 0, 87, 0, 0, 0, 2, 0, 121, 27, 0, 0, 0, 0, 0, 0, 2, 0, 121, 155, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 2, 0, 121, 105, 0, 0, 0, 0, 0, 0, 2, 0, 121, 233, 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 2, 0, 121, 13, 0, 0, 0, 0, 0, 0, 2, 0, 121, 141, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 2, 0, 121, 25, 0, 0, 0, 0, 0, 0, 2, 0, 121, 153, 0, 0, 0, 0, 0, 0, 92, 0, 0, 0, 2, 0, 121, 5, 0, 0, 0, 0, 0, 0, 2, 0, 121, 133, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 2, 0, 121, 111, 0, 0, 0, 0, 0, 0, 2, 0, 121, 239, 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, 2, 0, 121, 17, 0, 0, 0, 0, 0, 0, 2, 0, 121, 145, 0, 0, 0, 0, 0, 0, 95, 0, 0, 0, 2, 0, 121, 115, 0, 0, 0, 0, 0, 0, 2, 0, 121, 243, 0, 0, 0, 0, 0, 0, 97, 0, 0, 0, 2, 0, 121, 101, 0, 0, 0, 0, 0, 0, 2, 0, 121, 101, 0, 0, 0, 0, 0, 0, 98, 0, 0, 0, 2, 0, 121, 107, 0, 0, 0, 0, 0, 0, 2, 0, 121, 235, 0, 0, 0, 0, 0, 0, 96, 0, 0, 0, 1, 0, 73, 0, 0, 0, 0, 0, 0, 0, 1, 0, 201, 0, 0, 0, 0, 0, 0, 0, 100, 0, 0, 0, 2, 0, 121, 51, 0, 0, 0, 0, 0, 0, 2, 0, 121, 179, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 2, 0, 121, 55, 0, 0, 0, 0, 0, 0, 2, 0, 121, 183, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 2, 0, 121, 57, 0, 0, 0, 0, 0, 0, 2, 0, 121, 185, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 2, 0, 121, 45, 0, 0, 0, 0, 0, 0, 2, 0, 121, 173, 0, 0, 0, 0, 0, 0, 108, 0, 0, 0, 2, 0, 121, 49, 0, 0, 0, 0, 0, 0, 2, 0, 121, 177, 0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 2, 0, 121, 39, 0, 0, 0, 0, 0, 0, 2, 0, 121, 167, 0, 0, 0, 0, 0, 0, 107, 0, 0, 0, 2, 0, 121, 41, 0, 0, 0, 0, 0, 0, 2, 0, 121, 169, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 2, 0, 121, 43, 0, 0, 0, 0, 0, 0, 2, 0, 121, 171, 0, 0, 0, 0, 0, 0, 99, 0, 0, 0, 2, 0, 121, 37, 0, 0, 0, 0, 0, 0, 2, 0, 121, 165, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 2, 0, 121, 3, 0, 0, 0, 0, 0, 0, 2, 0, 121, 131, 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, 86, 0, 0, 0, 2, 0, 121, 51, 0, 0, 0, 0, 0, 0, 2, 0, 121, 179, 0, 0, 0, 0, 0, 0, 87, 0, 0, 0, 2, 0, 121, 55, 0, 0, 0, 0, 0, 0, 2, 0, 121, 183, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 2, 0, 121, 57, 0, 0, 0, 0, 0, 0, 2, 0, 121, 185, 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 2, 0, 121, 45, 0, 0, 0, 0, 0, 0, 2, 0, 121, 173, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 2, 0, 121, 47, 0, 0, 0, 0, 0, 0, 2, 0, 121, 175, 0, 0, 0, 0, 0, 0, 92, 0, 0, 0, 2, 0, 121, 49, 0, 0, 0, 0, 0, 0, 2, 0, 121, 177, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 2, 0, 121, 39, 0, 0, 0, 0, 0, 0, 2, 0, 121, 167, 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, 2, 0, 121, 41, 0, 0, 0, 0, 0, 0, 2, 0, 121, 169, 0, 0, 0, 0, 0, 0, 95, 0, 0, 0, 2, 0, 121, 43, 0, 0, 0, 0, 0, 0, 2, 0, 121, 171, 0, 0, 0, 0, 0, 0, 97, 0, 0, 0, 2, 0, 121, 37, 0, 0, 0, 0, 0, 0, 2, 0, 121, 165, 0, 0, 0, 0, 0, 0, 98, 0, 0, 0, 2, 0, 121, 3, 0, 0, 0, 0, 0, 0, 2, 0, 121, 131, 0, 0, 0, 0, 0, 0, 96, 0, 0, 0, 2, 0, 121, 25, 0, 0, 0, 0, 0, 0, 2, 0, 121, 153, 0, 0, 0, 0, 0, 0, 100, 0, 0, 0, 2, 0, 121, 103, 0, 0, 0, 0, 0, 0, 2, 0, 121, 231, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 2, 0, 121, 27, 0, 0, 0, 0, 0, 0, 2, 0, 121, 155, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 2, 0, 121, 105, 0, 0, 0, 0, 0, 0, 2, 0, 121, 233, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 2, 0, 121, 13, 0, 0, 0, 0, 0, 0, 2, 0, 121, 141, 0, 0, 0, 0, 0, 0, 108, 0, 0, 0, 2, 0, 121, 5, 0, 0, 0, 0, 0, 0, 2, 0, 121, 133, 0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 2, 0, 121, 111, 0, 0, 0, 0, 0, 0, 2, 0, 121, 239, 0, 0, 0, 0, 0, 0, 107, 0, 0, 0, 2, 0, 121, 17, 0, 0, 0, 0, 0, 0, 2, 0, 121, 145, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 2, 0, 121, 115, 0, 0, 0, 0, 0, 0, 2, 0, 121, 243, 0, 0, 0, 0, 0, 0, 99, 0, 0, 0, 2, 0, 121, 101, 0, 0, 0, 0, 0, 0, 2, 0, 121, 101, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 2, 0, 121, 107, 0, 0, 0, 0, 0, 0, 2, 0, 121, 235, 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, 63, 0, 0, 0, 9, 133, 0, 0, 0, 0, 0, 0, 14, 133, 0, 0, 98, 0, 1, 0, 38, 133, 0, 0, 51, 133, 0, 0, 57, 133, 0, 0, 66, 0, 2, 0, 93, 133, 0, 0, 104, 133, 0, 0, 116, 133, 0, 0, 99, 0, 1, 0, 140, 133, 0, 0, 147, 133, 0, 0, 154, 133, 0, 0, 100, 0, 1, 0, 234, 196, 0, 0, 147, 133, 0, 0, 186, 133, 0, 0, 105, 0, 1, 0, 221, 133, 0, 0, 147, 133, 0, 0, 232, 133, 0, 0, 73, 0, 1, 0, 17, 134, 0, 0, 147, 133, 0, 0, 28, 134, 0, 0, 108, 0, 1, 0, 208, 180, 0, 0, 147, 133, 0, 0, 68, 134, 0, 0, 112, 0, 1, 0, 80, 131, 0, 0, 147, 133, 0, 0, 97, 134, 0, 0, 113, 0, 0, 0, 115, 134, 0, 0, 0, 0, 0, 0, 121, 134, 0, 0, 114, 0, 0, 0, 153, 134, 0, 0, 0, 0, 0, 0, 157, 134, 0, 0, 82, 0, 0, 0, 188, 134, 0, 0, 0, 0, 0, 0, 199, 134, 0, 0, 115, 0, 1, 0, 223, 134, 0, 0, 229, 134, 0, 0, 233, 134, 0, 0, 116, 0, 1, 0, 199, 192, 0, 0, 147, 133, 0, 0, 251, 134, 0, 0, 118, 0, 0, 0, 19, 135, 0, 0, 0, 0, 0, 0, 27, 135, 0, 0, 86, 0, 0, 0, 59, 135, 0, 0, 0, 0, 0, 0, 67, 135, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 93, 135, 0, 0, 1, 0, 0, 0, 237, 200, 0, 0, 2, 0, 0, 0, 36, 201, 0, 0, 3, 0, 0, 0, 107, 135, 0, 0, 4, 0, 0, 0, 123, 135, 0, 0, 5, 0, 0, 0, 138, 135, 0, 0, 6, 0, 0, 0, 154, 135, 0, 0, 7, 0, 0, 0, 166, 135, 0, 0, 8, 0, 0, 0, 178, 135, 0, 0, 9, 0, 0, 0, 189, 135, 0, 0, 10, 0, 0, 0, 200, 135, 0, 0, 11, 0, 0, 0, 98, 201, 0, 0, 12, 0, 0, 0, 215, 135, 0, 0, 13, 0, 0, 0, 9, 201, 0, 0, 14, 0, 0, 0, 225, 135, 0, 0, 15, 0, 0, 0, 238, 135, 0, 0, 16, 0, 0, 0, 26, 201, 0, 0, 17, 0, 0, 0, 2, 136, 0, 0, 18, 0, 0, 0, 21, 136, 0, 0, 19, 0, 0, 0, 109, 201, 0, 0, 20, 0, 0, 0, 38, 136, 0, 0, 21, 0, 0, 0, 59, 136, 0, 0, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 28, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 29, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 0, 168, 0, 0, 74, 147, 0, 0, 1, 168, 0, 0, 88, 147, 0, 0, 2, 168, 0, 0, 106, 147, 0, 0, 3, 168, 0, 0, 121, 147, 0, 0, 4, 168, 0, 0, 134, 147, 0, 0, 5, 168, 0, 0, 149, 147, 0, 0, 6, 168, 0, 0, 157, 147, 0, 0, 7, 168, 0, 0, 168, 147, 0, 0, 8, 168, 0, 0, 182, 147, 0, 0, 9, 168, 0, 0, 195, 147, 0, 0, 10, 168, 0, 0, 207, 147, 0, 0, 11, 168, 0, 0, 219, 147, 0, 0, 12, 168, 0, 0, 235, 147, 0, 0, 13, 168, 0, 0, 248, 147, 0, 0, 14, 168, 0, 0, 8, 148, 0, 0, 15, 168, 0, 0, 23, 148, 0, 0, 16, 168, 0, 0, 34, 148, 0, 0, 17, 168, 0, 0, 44, 148, 0, 0, 18, 168, 0, 0, 54, 148, 0, 0, 19, 168, 0, 0, 66, 148, 0, 0, 20, 168, 0, 0, 77, 148, 0, 0, 21, 168, 0, 0, 92, 148, 0, 0, 22, 168, 0, 0, 105, 148, 0, 0, 23, 168, 0, 0, 111, 148, 0, 0, 24, 168, 0, 0, 120, 148, 0, 0, 25, 168, 0, 0, 129, 148, 0, 0, 26, 168, 0, 0, 137, 148, 0, 0, 27, 168, 0, 0, 150, 148, 0, 0, 28, 168, 0, 0, 165, 148, 0, 0, 29, 168, 0, 0, 177, 148, 0, 0, 31, 168, 0, 0, 190, 148, 0, 0, 32, 168, 0, 0, 203, 148, 0, 0, 33, 168, 0, 0, 221, 148, 0, 0, 34, 168, 0, 0, 233, 148, 0, 0, 35, 168, 0, 0, 250, 148, 0, 0, 38, 168, 0, 0, 8, 149, 0, 0, 39, 168, 0, 0, 20, 149, 0, 0, 40, 168, 0, 0, 30, 149, 0, 0, 41, 168, 0, 0, 40, 149, 0, 0, 42, 168, 0, 0, 54, 149, 0, 0, 43, 168, 0, 0, 72, 149, 0, 0, 44, 168, 0, 0, 78, 149, 0, 0, 45, 168, 0, 0, 85, 149, 0, 0, 46, 168, 0, 0, 92, 149, 0, 0, 47, 168, 0, 0, 99, 149, 0, 0, 48, 168, 0, 0, 106, 149, 0, 0, 49, 168, 0, 0, 113, 149, 0, 0, 51, 168, 0, 0, 120, 149, 0, 0, 52, 168, 0, 0, 131, 149, 0, 0, 53, 168, 0, 0, 148, 149, 0, 0, 54, 168, 0, 0, 160, 149, 0, 0, 55, 168, 0, 0, 173, 149, 0, 0, 56, 168, 0, 0, 185, 149, 0, 0, 57, 168, 0, 0, 194, 149, 0, 0, 58, 168, 0, 0, 203, 149, 0, 0, 59, 168, 0, 0, 214, 149, 0, 0, 60, 168, 0, 0, 223, 149, 0, 0, 61, 168, 0, 0, 235, 149, 0, 0, 62, 168, 0, 0, 246, 149, 0, 0, 63, 168, 0, 0, 1, 150, 0, 0, 64, 168, 0, 0, 10, 150, 0, 0, 65, 168, 0, 0, 19, 150, 0, 0, 66, 168, 0, 0, 28, 150, 0, 0, 67, 168, 0, 0, 37, 150, 0, 0, 68, 168, 0, 0, 43, 150, 0, 0, 69, 168, 0, 0, 49, 150, 0, 0, 70, 168, 0, 0, 56, 150, 0, 0, 71, 168, 0, 0, 63, 150, 0, 0, 72, 168, 0, 0, 71, 150, 0, 0, 73, 168, 0, 0, 79, 150, 0, 0, 74, 168, 0, 0, 88, 150, 0, 0, 75, 168, 0, 0, 96, 150, 0, 0, 76, 168, 0, 0, 104, 150, 0, 0, 77, 168, 0, 0, 114, 150, 0, 0, 78, 168, 0, 0, 121, 150, 0, 0, 79, 168, 0, 0, 132, 150, 0, 0, 80, 168, 0, 0, 143, 150, 0, 0, 81, 168, 0, 0, 154, 150, 0, 0, 82, 168, 0, 0, 164, 150, 0, 0, 83, 168, 0, 0, 175, 150, 0, 0, 84, 168, 0, 0, 186, 150, 0, 0, 85, 168, 0, 0, 199, 150, 0, 0, 86, 168, 0, 0, 212, 150, 0, 0, 88, 168, 0, 0, 226, 150, 0, 0, 89, 168, 0, 0, 233, 150, 0, 0, 90, 168, 0, 0, 240, 150, 0, 0, 91, 168, 0, 0, 247, 150, 0, 0, 92, 168, 0, 0, 253, 150, 0, 0, 93, 168, 0, 0, 6, 151, 0, 0, 94, 168, 0, 0, 13, 151, 0, 0, 95, 168, 0, 0, 20, 151, 0, 0, 96, 168, 0, 0, 27, 151, 0, 0, 97, 168, 0, 0, 41, 151, 0, 0, 98, 168, 0, 0, 48, 151, 0, 0, 99, 168, 0, 0, 58, 151, 0, 0, 100, 168, 0, 0, 68, 151, 0, 0, 101, 168, 0, 0, 77, 151, 0, 0, 102, 168, 0, 0, 86, 151, 0, 0, 103, 168, 0, 0, 95, 151, 0, 0, 104, 168, 0, 0, 103, 151, 0, 0, 105, 168, 0, 0, 110, 151, 0, 0, 106, 168, 0, 0, 119, 151, 0, 0, 107, 168, 0, 0, 126, 151, 0, 0, 108, 168, 0, 0, 133, 151, 0, 0, 109, 168, 0, 0, 142, 151, 0, 0, 110, 168, 0, 0, 151, 151, 0, 0, 111, 168, 0, 0, 160, 151, 0, 0, 112, 168, 0, 0, 169, 151, 0, 0, 113, 168, 0, 0, 183, 151, 0, 0, 114, 168, 0, 0, 197, 151, 0, 0, 115, 168, 0, 0, 208, 151, 0, 0, 116, 168, 0, 0, 216, 151, 0, 0, 117, 168, 0, 0, 224, 151, 0, 0, 118, 168, 0, 0, 233, 151, 0, 0, 119, 168, 0, 0, 242, 151, 0, 0, 120, 168, 0, 0, 253, 151, 0, 0, 121, 168, 0, 0, 7, 152, 0, 0, 122, 168, 0, 0, 15, 152, 0, 0, 123, 168, 0, 0, 23, 152, 0, 0, 124, 168, 0, 0, 32, 152, 0, 0, 125, 168, 0, 0, 40, 152, 0, 0, 125, 168, 0, 0, 50, 152, 0, 0, 126, 168, 0, 0, 61, 152, 0, 0, 127, 168, 0, 0, 67, 152, 0, 0, 128, 168, 0, 0, 73, 152, 0, 0, 129, 168, 0, 0, 79, 152, 0, 0, 130, 168, 0, 0, 87, 152, 0, 0, 131, 168, 0, 0, 95, 152, 0, 0, 132, 168, 0, 0, 104, 152, 0, 0, 133, 168, 0, 0, 115, 152, 0, 0, 134, 168, 0, 0, 124, 152, 0, 0, 135, 168, 0, 0, 134, 152, 0, 0, 136, 168, 0, 0, 143, 152, 0, 0, 137, 168, 0, 0, 152, 152, 0, 0, 138, 168, 0, 0, 161, 152, 0, 0, 139, 168, 0, 0, 170, 152, 0, 0, 140, 168, 0, 0, 182, 152, 0, 0, 141, 168, 0, 0, 194, 152, 0, 0, 142, 168, 0, 0, 204, 152, 0, 0, 143, 168, 0, 0, 215, 152, 0, 0, 144, 168, 0, 0, 226, 152, 0, 0, 145, 168, 0, 0, 234, 152, 0, 0, 146, 168, 0, 0, 241, 152, 0, 0, 147, 168, 0, 0, 246, 152, 0, 0, 148, 168, 0, 0, 253, 152, 0, 0, 149, 168, 0, 0, 2, 153, 0, 0, 150, 168, 0, 0, 11, 153, 0, 0, 151, 168, 0, 0, 19, 153, 0, 0, 152, 168, 0, 0, 27, 153, 0, 0, 153, 168, 0, 0, 39, 153, 0, 0, 154, 168, 0, 0, 51, 153, 0, 0, 155, 168, 0, 0, 58, 153, 0, 0, 156, 168, 0, 0, 66, 153, 0, 0, 157, 168, 0, 0, 74, 153, 0, 0, 158, 168, 0, 0, 81, 153, 0, 0, 159, 168, 0, 0, 91, 153, 0, 0, 160, 168, 0, 0, 105, 153, 0, 0, 161, 168, 0, 0, 113, 153, 0, 0, 162, 168, 0, 0, 123, 153, 0, 0, 163, 168, 0, 0, 133, 153, 0, 0, 164, 168, 0, 0, 143, 153, 0, 0, 165, 168, 0, 0, 153, 153, 0, 0, 166, 168, 0, 0, 162, 153, 0, 0, 167, 168, 0, 0, 172, 153, 0, 0, 168, 168, 0, 0, 180, 153, 0, 0, 169, 168, 0, 0, 191, 153, 0, 0, 170, 168, 0, 0, 201, 153, 0, 0, 171, 168, 0, 0, 210, 153, 0, 0, 172, 168, 0, 0, 220, 153, 0, 0, 173, 168, 0, 0, 228, 153, 0, 0, 174, 168, 0, 0, 237, 153, 0, 0, 175, 168, 0, 0, 247, 153, 0, 0, 176, 168, 0, 0, 0, 154, 0, 0, 177, 168, 0, 0, 15, 154, 0, 0, 178, 168, 0, 0, 30, 154, 0, 0, 179, 168, 0, 0, 45, 154, 0, 0, 180, 168, 0, 0, 60, 154, 0, 0, 181, 168, 0, 0, 74, 154, 0, 0, 182, 168, 0, 0, 85, 154, 0, 0, 183, 168, 0, 0, 93, 154, 0, 0, 184, 168, 0, 0, 103, 154, 0, 0, 185, 168, 0, 0, 113, 154, 0, 0, 186, 168, 0, 0, 123, 154, 0, 0, 187, 168, 0, 0, 134, 154, 0, 0, 188, 168, 0, 0, 143, 154, 0, 0, 189, 168, 0, 0, 158, 154, 0, 0, 190, 168, 0, 0, 165, 154, 0, 0, 191, 168, 0, 0, 174, 154, 0, 0, 192, 168, 0, 0, 183, 154, 0, 0, 193, 168, 0, 0, 192, 154, 0, 0, 194, 168, 0, 0, 202, 154, 0, 0, 195, 168, 0, 0, 210, 154, 0, 0, 196, 168, 0, 0, 220, 154, 0, 0, 197, 168, 0, 0, 235, 154, 0, 0, 198, 168, 0, 0, 243, 154, 0, 0, 199, 168, 0, 0, 253, 154, 0, 0, 200, 168, 0, 0, 7, 155, 0, 0, 201, 168, 0, 0, 17, 155, 0, 0, 202, 168, 0, 0, 28, 155, 0, 0, 203, 168, 0, 0, 37, 155, 0, 0, 204, 168, 0, 0, 46, 155, 0, 0, 205, 168, 0, 0, 56, 155, 0, 0, 206, 168, 0, 0, 65, 155, 0, 0, 207, 168, 0, 0, 76, 155, 0, 0, 208, 168, 0, 0, 85, 155, 0, 0, 209, 168, 0, 0, 96, 155, 0, 0, 210, 168, 0, 0, 103, 155, 0, 0, 211, 168, 0, 0, 112, 155, 0, 0, 212, 168, 0, 0, 121, 155, 0, 0, 213, 168, 0, 0, 130, 155, 0, 0, 214, 168, 0, 0, 139, 155, 0, 0, 215, 168, 0, 0, 147, 155, 0, 0, 216, 168, 0, 0, 162, 155, 0, 0, 217, 168, 0, 0, 169, 155, 0, 0, 218, 168, 0, 0, 179, 155, 0, 0, 219, 168, 0, 0, 187, 155, 0, 0, 220, 168, 0, 0, 196, 155, 0, 0, 221, 168, 0, 0, 204, 155, 0, 0, 222, 168, 0, 0, 216, 155, 0, 0, 223, 168, 0, 0, 226, 155, 0, 0, 224, 168, 0, 0, 234, 155, 0, 0, 225, 168, 0, 0, 243, 155, 0, 0, 226, 168, 0, 0, 252, 155, 0, 0, 227, 168, 0, 0, 5, 156, 0, 0, 228, 168, 0, 0, 14, 156, 0, 0, 229, 168, 0, 0, 22, 156, 0, 0, 230, 168, 0, 0, 31, 156, 0, 0, 231, 168, 0, 0, 39, 156, 0, 0, 232, 168, 0, 0, 46, 156, 0, 0, 233, 168, 0, 0, 54, 156, 0, 0, 234, 168, 0, 0, 64, 156, 0, 0, 235, 168, 0, 0, 76, 156, 0, 0, 236, 168, 0, 0, 84, 156, 0, 0, 237, 168, 0, 0, 93, 156, 0, 0, 238, 168, 0, 0, 103, 156, 0, 0, 239, 168, 0, 0, 113, 156, 0, 0, 240, 168, 0, 0, 124, 156, 0, 0, 241, 168, 0, 0, 134, 156, 0, 0, 242, 168, 0, 0, 145, 156, 0, 0, 243, 168, 0, 0, 156, 156, 0, 0, 244, 168, 0, 0, 168, 156, 0, 0, 245, 168, 0, 0, 181, 156, 0, 0, 246, 168, 0, 0, 193, 156, 0, 0, 247, 168, 0, 0, 205, 156, 0, 0, 248, 168, 0, 0, 212, 156, 0, 0, 249, 168, 0, 0, 220, 156, 0, 0, 250, 168, 0, 0, 226, 156, 0, 0, 251, 168, 0, 0, 234, 156, 0, 0, 252, 168, 0, 0, 241, 156, 0, 0, 253, 168, 0, 0, 249, 156, 0, 0, 254, 168, 0, 0, 0, 157, 0, 0, 255, 168, 0, 0, 10, 157, 0, 0, 0, 169, 0, 0, 19, 157, 0, 0, 1, 169, 0, 0, 27, 157, 0, 0, 2, 169, 0, 0, 38, 157, 0, 0, 3, 169, 0, 0, 47, 157, 0, 0, 4, 169, 0, 0, 59, 157, 0, 0, 5, 169, 0, 0, 72, 157, 0, 0, 6, 169, 0, 0, 84, 157, 0, 0, 7, 169, 0, 0, 94, 157, 0, 0, 8, 169, 0, 0, 104, 157, 0, 0, 9, 169, 0, 0, 113, 157, 0, 0, 10, 169, 0, 0, 121, 157, 0, 0, 11, 169, 0, 0, 133, 157, 0, 0, 12, 169, 0, 0, 143, 157, 0, 0, 13, 169, 0, 0, 152, 157, 0, 0, 14, 169, 0, 0, 164, 157, 0, 0, 15, 169, 0, 0, 172, 157, 0, 0, 16, 169, 0, 0, 180, 157, 0, 0, 17, 169, 0, 0, 192, 157, 0, 0, 18, 169, 0, 0, 204, 157, 0, 0, 19, 169, 0, 0, 216, 157, 0, 0, 20, 169, 0, 0, 226, 157, 0, 0, 21, 169, 0, 0, 239, 157, 0, 0, 22, 169, 0, 0, 250, 157, 0, 0, 23, 169, 0, 0, 5, 158, 0, 0, 24, 169, 0, 0, 16, 158, 0, 0, 25, 169, 0, 0, 27, 158, 0, 0, 26, 169, 0, 0, 37, 158, 0, 0, 27, 169, 0, 0, 47, 158, 0, 0, 28, 169, 0, 0, 58, 158, 0, 0, 29, 169, 0, 0, 71, 158, 0, 0, 30, 169, 0, 0, 82, 158, 0, 0, 31, 169, 0, 0, 94, 158, 0, 0, 32, 169, 0, 0, 107, 158, 0, 0, 33, 169, 0, 0, 120, 158, 0, 0, 34, 169, 0, 0, 131, 158, 0, 0, 35, 169, 0, 0, 143, 158, 0, 0, 36, 169, 0, 0, 153, 158, 0, 0, 37, 169, 0, 0, 165, 158, 0, 0, 38, 169, 0, 0, 176, 158, 0, 0, 39, 169, 0, 0, 187, 158, 0, 0, 40, 169, 0, 0, 196, 158, 0, 0, 41, 169, 0, 0, 206, 158, 0, 0, 42, 169, 0, 0, 215, 158, 0, 0, 43, 169, 0, 0, 225, 158, 0, 0, 44, 169, 0, 0, 236, 158, 0, 0, 45, 169, 0, 0, 247, 158, 0, 0, 46, 169, 0, 0, 3, 159, 0, 0, 47, 169, 0, 0, 16, 159, 0, 0, 48, 169, 0, 0, 29, 159, 0, 0, 49, 169, 0, 0, 39, 159, 0, 0, 50, 169, 0, 0, 47, 159, 0, 0, 51, 169, 0, 0, 58, 159, 0, 0, 52, 169, 0, 0, 69, 159, 0, 0, 53, 169, 0, 0, 82, 159, 0, 0, 54, 169, 0, 0, 93, 159, 0, 0, 55, 169, 0, 0, 104, 159, 0, 0, 56, 169, 0, 0, 116, 159, 0, 0, 57, 169, 0, 0, 127, 159, 0, 0, 58, 169, 0, 0, 138, 159, 0, 0, 59, 169, 0, 0, 150, 159, 0, 0, 60, 169, 0, 0, 161, 159, 0, 0, 61, 169, 0, 0, 172, 159, 0, 0, 62, 169, 0, 0, 183, 159, 0, 0, 63, 169, 0, 0, 191, 159, 0, 0, 64, 169, 0, 0, 202, 159, 0, 0, 65, 169, 0, 0, 213, 159, 0, 0, 66, 169, 0, 0, 225, 159, 0, 0, 67, 169, 0, 0, 237, 159, 0, 0, 68, 169, 0, 0, 248, 159, 0, 0, 69, 169, 0, 0, 3, 160, 0, 0, 70, 169, 0, 0, 13, 160, 0, 0, 71, 169, 0, 0, 21, 160, 0, 0, 72, 169, 0, 0, 29, 160, 0, 0, 73, 169, 0, 0, 42, 160, 0, 0, 74, 169, 0, 0, 53, 160, 0, 0, 75, 169, 0, 0, 63, 160, 0, 0, 76, 169, 0, 0, 72, 160, 0, 0, 77, 169, 0, 0, 85, 160, 0, 0, 78, 169, 0, 0, 96, 160, 0, 0, 79, 169, 0, 0, 104, 160, 0, 0, 80, 169, 0, 0, 115, 160, 0, 0, 81, 169, 0, 0, 127, 160, 0, 0, 82, 169, 0, 0, 141, 160, 0, 0, 83, 169, 0, 0, 153, 160, 0, 0, 84, 169, 0, 0, 165, 160, 0, 0, 85, 169, 0, 0, 176, 160, 0, 0, 86, 169, 0, 0, 190, 160, 0, 0, 87, 169, 0, 0, 203, 160, 0, 0, 88, 169, 0, 0, 215, 160, 0, 0, 89, 169, 0, 0, 227, 160, 0, 0, 90, 169, 0, 0, 239, 160, 0, 0, 91, 169, 0, 0, 250, 160, 0, 0, 92, 169, 0, 0, 5, 161, 0, 0, 93, 169, 0, 0, 17, 161, 0, 0, 94, 169, 0, 0, 31, 161, 0, 0, 95, 169, 0, 0, 41, 161, 0, 0, 96, 169, 0, 0, 51, 161, 0, 0, 97, 169, 0, 0, 63, 161, 0, 0, 98, 169, 0, 0, 73, 161, 0, 0, 99, 169, 0, 0, 83, 161, 0, 0, 100, 169, 0, 0, 95, 161, 0, 0, 101, 169, 0, 0, 105, 161, 0, 0, 102, 169, 0, 0, 115, 161, 0, 0, 103, 169, 0, 0, 127, 161, 0, 0, 104, 169, 0, 0, 139, 161, 0, 0, 105, 169, 0, 0, 152, 161, 0, 0, 106, 169, 0, 0, 165, 161, 0, 0, 107, 169, 0, 0, 178, 161, 0, 0, 108, 169, 0, 0, 191, 161, 0, 0, 109, 169, 0, 0, 203, 161, 0, 0, 110, 169, 0, 0, 216, 161, 0, 0, 111, 169, 0, 0, 224, 161, 0, 0, 112, 169, 0, 0, 232, 161, 0, 0, 113, 169, 0, 0, 245, 161, 0, 0, 114, 169, 0, 0, 0, 162, 0, 0, 115, 169, 0, 0, 9, 162, 0, 0, 116, 169, 0, 0, 19, 162, 0, 0, 117, 169, 0, 0, 26, 162, 0, 0, 118, 169, 0, 0, 36, 162, 0, 0, 119, 169, 0, 0, 44, 162, 0, 0, 120, 169, 0, 0, 56, 162, 0, 0, 121, 169, 0, 0, 67, 162, 0, 0, 122, 169, 0, 0, 79, 162, 0, 0, 123, 169, 0, 0, 90, 162, 0, 0, 124, 169, 0, 0, 102, 162, 0, 0, 125, 169, 0, 0, 115, 162, 0, 0, 126, 169, 0, 0, 125, 162, 0, 0, 127, 169, 0, 0, 134, 162, 0, 0, 128, 169, 0, 0, 148, 162, 0, 0, 129, 169, 0, 0, 161, 162, 0, 0, 130, 169, 0, 0, 172, 162, 0, 0, 131, 169, 0, 0, 184, 162, 0, 0, 132, 169, 0, 0, 197, 162, 0, 0, 133, 169, 0, 0, 207, 162, 0, 0, 134, 169, 0, 0, 213, 162, 0, 0, 135, 169, 0, 0, 223, 162, 0, 0, 136, 169, 0, 0, 233, 162, 0, 0, 137, 169, 0, 0, 246, 162, 0, 0, 138, 169, 0, 0, 1, 163, 0, 0, 139, 169, 0, 0, 11, 163, 0, 0, 140, 169, 0, 0, 21, 163, 0, 0, 141, 169, 0, 0, 32, 163, 0, 0, 142, 169, 0, 0, 41, 163, 0, 0, 143, 169, 0, 0, 50, 163, 0, 0, 144, 169, 0, 0, 59, 163, 0, 0, 145, 169, 0, 0, 68, 163, 0, 0, 146, 169, 0, 0, 80, 163, 0, 0, 147, 169, 0, 0, 95, 163, 0, 0, 148, 169, 0, 0, 107, 163, 0, 0, 149, 169, 0, 0, 118, 163, 0, 0, 150, 169, 0, 0, 132, 163, 0, 0, 151, 169, 0, 0, 145, 163, 0, 0, 152, 169, 0, 0, 157, 163], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE); allocate([153, 169, 0, 0, 168, 163, 0, 0, 154, 169, 0, 0, 182, 163, 0, 0, 155, 169, 0, 0, 195, 163, 0, 0, 156, 169, 0, 0, 206, 163, 0, 0, 157, 169, 0, 0, 221, 163, 0, 0, 158, 169, 0, 0, 236, 163, 0, 0, 159, 169, 0, 0, 247, 163, 0, 0, 160, 169, 0, 0, 2, 164, 0, 0, 161, 169, 0, 0, 14, 164, 0, 0, 162, 169, 0, 0, 31, 164, 0, 0, 163, 169, 0, 0, 44, 164, 0, 0, 164, 169, 0, 0, 60, 164, 0, 0, 165, 169, 0, 0, 72, 164, 0, 0, 166, 169, 0, 0, 81, 164, 0, 0, 167, 169, 0, 0, 93, 164, 0, 0, 168, 169, 0, 0, 105, 164, 0, 0, 169, 169, 0, 0, 116, 164, 0, 0, 170, 169, 0, 0, 127, 164, 0, 0, 171, 169, 0, 0, 143, 164, 0, 0, 172, 169, 0, 0, 155, 164, 0, 0, 173, 169, 0, 0, 168, 164, 0, 0, 174, 169, 0, 0, 181, 164, 0, 0, 175, 169, 0, 0, 195, 164, 0, 0, 176, 169, 0, 0, 204, 164, 0, 0, 177, 169, 0, 0, 218, 164, 0, 0, 178, 169, 0, 0, 232, 164, 0, 0, 179, 169, 0, 0, 244, 164, 0, 0, 180, 169, 0, 0, 0, 165, 0, 0, 181, 169, 0, 0, 11, 165, 0, 0, 182, 169, 0, 0, 22, 165, 0, 0, 183, 169, 0, 0, 34, 165, 0, 0, 184, 169, 0, 0, 47, 165, 0, 0, 185, 169, 0, 0, 58, 165, 0, 0, 186, 169, 0, 0, 68, 165, 0, 0, 187, 169, 0, 0, 78, 165, 0, 0, 188, 169, 0, 0, 86, 165, 0, 0, 189, 169, 0, 0, 97, 165, 0, 0, 190, 169, 0, 0, 110, 165, 0, 0, 191, 169, 0, 0, 124, 165, 0, 0, 192, 169, 0, 0, 133, 165, 0, 0, 193, 169, 0, 0, 144, 165, 0, 0, 194, 169, 0, 0, 153, 165, 0, 0, 195, 169, 0, 0, 161, 165, 0, 0, 196, 169, 0, 0, 170, 165, 0, 0, 197, 169, 0, 0, 181, 165, 0, 0, 198, 169, 0, 0, 194, 165, 0, 0, 199, 169, 0, 0, 204, 165, 0, 0, 200, 169, 0, 0, 213, 165, 0, 0, 201, 169, 0, 0, 221, 165, 0, 0, 202, 169, 0, 0, 230, 165, 0, 0, 203, 169, 0, 0, 238, 165, 0, 0, 204, 169, 0, 0, 248, 165, 0, 0, 205, 169, 0, 0, 255, 165, 0, 0, 206, 169, 0, 0, 9, 166, 0, 0, 207, 169, 0, 0, 17, 166, 0, 0, 208, 169, 0, 0, 27, 166, 0, 0, 209, 169, 0, 0, 37, 166, 0, 0, 210, 169, 0, 0, 49, 166, 0, 0, 211, 169, 0, 0, 55, 166, 0, 0, 212, 169, 0, 0, 64, 166, 0, 0, 213, 169, 0, 0, 72, 166, 0, 0, 214, 169, 0, 0, 79, 166, 0, 0, 215, 169, 0, 0, 85, 166, 0, 0, 216, 169, 0, 0, 94, 166, 0, 0, 217, 169, 0, 0, 105, 166, 0, 0, 218, 169, 0, 0, 118, 166, 0, 0, 219, 169, 0, 0, 125, 166, 0, 0, 220, 169, 0, 0, 133, 166, 0, 0, 221, 169, 0, 0, 139, 166, 0, 0, 222, 169, 0, 0, 148, 166, 0, 0, 223, 169, 0, 0, 157, 166, 0, 0, 224, 169, 0, 0, 167, 166, 0, 0, 225, 169, 0, 0, 174, 166, 0, 0, 226, 169, 0, 0, 185, 166, 0, 0, 227, 169, 0, 0, 196, 166, 0, 0, 228, 169, 0, 0, 206, 166, 0, 0, 229, 169, 0, 0, 218, 166, 0, 0, 230, 169, 0, 0, 227, 166, 0, 0, 231, 169, 0, 0, 240, 166, 0, 0, 232, 169, 0, 0, 246, 166, 0, 0, 233, 169, 0, 0, 252, 166, 0, 0, 234, 169, 0, 0, 2, 167, 0, 0, 235, 169, 0, 0, 8, 167, 0, 0, 235, 169, 0, 0, 14, 167, 0, 0, 236, 169, 0, 0, 20, 167, 0, 0, 236, 169, 0, 0, 29, 167, 0, 0, 237, 169, 0, 0, 35, 167, 0, 0, 238, 169, 0, 0, 41, 167, 0, 0, 239, 169, 0, 0, 47, 167, 0, 0, 240, 169, 0, 0, 58, 167, 0, 0, 241, 169, 0, 0, 66, 167, 0, 0, 242, 169, 0, 0, 76, 167, 0, 0, 243, 169, 0, 0, 83, 167, 0, 0, 244, 169, 0, 0, 89, 167, 0, 0, 245, 169, 0, 0, 101, 167, 0, 0, 246, 169, 0, 0, 113, 167, 0, 0, 247, 169, 0, 0, 129, 167, 0, 0, 248, 169, 0, 0, 145, 167, 0, 0, 249, 169, 0, 0, 160, 167, 0, 0, 250, 169, 0, 0, 170, 167, 0, 0, 251, 169, 0, 0, 182, 167, 0, 0, 252, 169, 0, 0, 192, 167, 0, 0, 253, 169, 0, 0, 202, 167, 0, 0, 254, 169, 0, 0, 211, 167, 0, 0, 255, 169, 0, 0, 220, 167, 0, 0, 0, 170, 0, 0, 229, 167, 0, 0, 1, 170, 0, 0, 239, 167, 0, 0, 3, 170, 0, 0, 249, 167, 0, 0, 4, 170, 0, 0, 3, 168, 0, 0, 5, 170, 0, 0, 16, 168, 0, 0, 6, 170, 0, 0, 27, 168, 0, 0, 7, 170, 0, 0, 39, 168, 0, 0, 8, 170, 0, 0, 49, 168, 0, 0, 9, 170, 0, 0, 62, 168, 0, 0, 10, 170, 0, 0, 73, 168, 0, 0, 11, 170, 0, 0, 83, 168, 0, 0, 12, 170, 0, 0, 94, 168, 0, 0, 13, 170, 0, 0, 104, 168, 0, 0, 14, 170, 0, 0, 115, 168, 0, 0, 15, 170, 0, 0, 125, 168, 0, 0, 16, 170, 0, 0, 135, 168, 0, 0, 17, 170, 0, 0, 150, 168, 0, 0, 18, 170, 0, 0, 159, 168, 0, 0, 19, 170, 0, 0, 168, 168, 0, 0, 20, 170, 0, 0, 178, 168, 0, 0, 21, 170, 0, 0, 191, 168, 0, 0, 22, 170, 0, 0, 204, 168, 0, 0, 23, 170, 0, 0, 214, 168, 0, 0, 24, 170, 0, 0, 224, 168, 0, 0, 25, 170, 0, 0, 234, 168, 0, 0, 26, 170, 0, 0, 247, 168, 0, 0, 27, 170, 0, 0, 4, 169, 0, 0, 28, 170, 0, 0, 15, 169, 0, 0, 29, 170, 0, 0, 26, 169, 0, 0, 30, 170, 0, 0, 38, 169, 0, 0, 31, 170, 0, 0, 47, 169, 0, 0, 33, 170, 0, 0, 57, 169, 0, 0, 34, 170, 0, 0, 65, 169, 0, 0, 35, 170, 0, 0, 77, 169, 0, 0, 36, 170, 0, 0, 87, 169, 0, 0, 37, 170, 0, 0, 100, 169, 0, 0, 38, 170, 0, 0, 112, 169, 0, 0, 39, 170, 0, 0, 126, 169, 0, 0, 40, 170, 0, 0, 139, 169, 0, 0, 41, 170, 0, 0, 149, 169, 0, 0, 42, 170, 0, 0, 163, 169, 0, 0, 43, 170, 0, 0, 177, 169, 0, 0, 44, 170, 0, 0, 191, 169, 0, 0, 45, 170, 0, 0, 211, 169, 0, 0, 46, 170, 0, 0, 230, 169, 0, 0, 47, 170, 0, 0, 242, 169, 0, 0, 48, 170, 0, 0, 253, 169, 0, 0, 49, 170, 0, 0, 11, 170, 0, 0, 50, 170, 0, 0, 22, 170, 0, 0, 51, 170, 0, 0, 33, 170, 0, 0, 52, 170, 0, 0, 45, 170, 0, 0, 53, 170, 0, 0, 57, 170, 0, 0, 54, 170, 0, 0, 69, 170, 0, 0, 55, 170, 0, 0, 79, 170, 0, 0, 56, 170, 0, 0, 91, 170, 0, 0, 57, 170, 0, 0, 104, 170, 0, 0, 58, 170, 0, 0, 115, 170, 0, 0, 59, 170, 0, 0, 125, 170, 0, 0, 60, 170, 0, 0, 133, 170, 0, 0, 61, 170, 0, 0, 145, 170, 0, 0, 62, 170, 0, 0, 158, 170, 0, 0, 63, 170, 0, 0, 171, 170, 0, 0, 64, 170, 0, 0, 182, 170, 0, 0, 65, 170, 0, 0, 190, 170, 0, 0, 66, 170, 0, 0, 202, 170, 0, 0, 67, 170, 0, 0, 212, 170, 0, 0, 68, 170, 0, 0, 224, 170, 0, 0, 69, 170, 0, 0, 234, 170, 0, 0, 70, 170, 0, 0, 245, 170, 0, 0, 71, 170, 0, 0, 3, 171, 0, 0, 72, 170, 0, 0, 15, 171, 0, 0, 73, 170, 0, 0, 28, 171, 0, 0, 74, 170, 0, 0, 40, 171, 0, 0, 75, 170, 0, 0, 55, 171, 0, 0, 76, 170, 0, 0, 66, 171, 0, 0, 77, 170, 0, 0, 76, 171, 0, 0, 78, 170, 0, 0, 84, 171, 0, 0, 79, 170, 0, 0, 97, 171, 0, 0, 80, 170, 0, 0, 107, 171, 0, 0, 81, 170, 0, 0, 117, 171, 0, 0, 82, 170, 0, 0, 130, 171, 0, 0, 96, 170, 0, 0, 150, 171, 0, 0, 97, 170, 0, 0, 163, 171, 0, 0, 98, 170, 0, 0, 173, 171, 0, 0, 99, 170, 0, 0, 183, 171, 0, 0, 100, 170, 0, 0, 197, 171, 0, 0, 101, 170, 0, 0, 208, 171, 0, 0, 102, 170, 0, 0, 221, 171, 0, 0, 103, 170, 0, 0, 232, 171, 0, 0, 104, 170, 0, 0, 253, 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160, 0, 0, 165, 141, 0, 0, 1, 160, 0, 0, 170, 141, 0, 0, 2, 160, 0, 0, 176, 141, 0, 0, 3, 160, 0, 0, 181, 141, 0, 0, 4, 160, 0, 0, 187, 141, 0, 0, 5, 160, 0, 0, 195, 141, 0, 0, 6, 160, 0, 0, 202, 141, 0, 0, 7, 160, 0, 0, 209, 141, 0, 0, 8, 160, 0, 0, 220, 141, 0, 0, 9, 160, 0, 0, 21, 200, 0, 0, 10, 160, 0, 0, 227, 141, 0, 0, 11, 160, 0, 0, 234, 141, 0, 0, 12, 160, 0, 0, 241, 141, 0, 0, 13, 160, 0, 0, 253, 141, 0, 0, 14, 160, 0, 0, 9, 142, 0, 0, 15, 160, 0, 0, 20, 142, 0, 0, 16, 160, 0, 0, 29, 142, 0, 0, 17, 160, 0, 0, 38, 142, 0, 0, 18, 160, 0, 0, 45, 142, 0, 0, 19, 160, 0, 0, 52, 142, 0, 0, 20, 160, 0, 0, 61, 142, 0, 0, 21, 160, 0, 0, 68, 142, 0, 0, 22, 160, 0, 0, 75, 142, 0, 0, 23, 160, 0, 0, 85, 142, 0, 0, 24, 160, 0, 0, 91, 142, 0, 0, 25, 160, 0, 0, 99, 142, 0, 0, 26, 160, 0, 0, 108, 142, 0, 0, 27, 160, 0, 0, 116, 142, 0, 0, 28, 160, 0, 0, 124, 142, 0, 0, 29, 160, 0, 0, 132, 142, 0, 0, 30, 160, 0, 0, 139, 142, 0, 0, 31, 160, 0, 0, 146, 142, 0, 0, 32, 160, 0, 0, 156, 142, 0, 0, 33, 160, 0, 0, 167, 142, 0, 0, 34, 160, 0, 0, 178, 142, 0, 0, 35, 160, 0, 0, 188, 142, 0, 0, 36, 160, 0, 0, 201, 142, 0, 0, 37, 160, 0, 0, 215, 142, 0, 0, 38, 160, 0, 0, 229, 142, 0, 0, 39, 160, 0, 0, 240, 142, 0, 0, 40, 160, 0, 0, 254, 142, 0, 0, 41, 160, 0, 0, 12, 143, 0, 0, 42, 160, 0, 0, 18, 143, 0, 0, 43, 160, 0, 0, 26, 143, 0, 0, 44, 160, 0, 0, 38, 143, 0, 0, 45, 160, 0, 0, 51, 143, 0, 0, 46, 160, 0, 0, 64, 143, 0, 0, 47, 160, 0, 0, 74, 143, 0, 0, 48, 160, 0, 0, 84, 143, 0, 0, 49, 160, 0, 0, 97, 143, 0, 0, 50, 160, 0, 0, 108, 143, 0, 0, 51, 160, 0, 0, 120, 143, 0, 0, 52, 160, 0, 0, 129, 143, 0, 0, 53, 160, 0, 0, 137, 143, 0, 0, 54, 160, 0, 0, 145, 143, 0, 0, 56, 160, 0, 0, 157, 143, 0, 0, 57, 160, 0, 0, 168, 143, 0, 0, 58, 160, 0, 0, 181, 143, 0, 0, 59, 160, 0, 0, 193, 143, 0, 0, 60, 160, 0, 0, 199, 143, 0, 0, 61, 160, 0, 0, 209, 143, 0, 0, 62, 160, 0, 0, 221, 143, 0, 0, 63, 160, 0, 0, 232, 143, 0, 0, 64, 160, 0, 0, 241, 143, 0, 0, 65, 160, 0, 0, 250, 143, 0, 0, 66, 160, 0, 0, 5, 144, 0, 0, 67, 160, 0, 0, 16, 144, 0, 0, 68, 160, 0, 0, 27, 144, 0, 0, 69, 160, 0, 0, 35, 144, 0, 0, 70, 160, 0, 0, 45, 144, 0, 0, 71, 160, 0, 0, 60, 144, 0, 0, 72, 160, 0, 0, 75, 144, 0, 0, 73, 160, 0, 0, 83, 144, 0, 0, 74, 160, 0, 0, 90, 144, 0, 0, 75, 160, 0, 0, 99, 144, 0, 0, 76, 160, 0, 0, 111, 144, 0, 0, 77, 160, 0, 0, 122, 144, 0, 0, 78, 160, 0, 0, 131, 144, 0, 0, 79, 160, 0, 0, 140, 144, 0, 0, 80, 160, 0, 0, 153, 144, 0, 0, 81, 160, 0, 0, 163, 144, 0, 0, 82, 160, 0, 0, 173, 144, 0, 0, 84, 160, 0, 0, 184, 144, 0, 0, 85, 160, 0, 0, 194, 144, 0, 0, 86, 160, 0, 0, 207, 144, 0, 0, 87, 160, 0, 0, 217, 144, 0, 0, 88, 160, 0, 0, 228, 144, 0, 0, 89, 160, 0, 0, 236, 144, 0, 0, 90, 160, 0, 0, 244, 144, 0, 0, 91, 160, 0, 0, 254, 144, 0, 0, 92, 160, 0, 0, 7, 145, 0, 0, 93, 160, 0, 0, 22, 145, 0, 0, 94, 160, 0, 0, 34, 145, 0, 0, 95, 160, 0, 0, 44, 145, 0, 0, 96, 160, 0, 0, 53, 145, 0, 0, 97, 160, 0, 0, 65, 145, 0, 0, 98, 160, 0, 0, 74, 145, 0, 0, 99, 160, 0, 0, 85, 145, 0, 0, 100, 160, 0, 0, 97, 145, 0, 0, 101, 160, 0, 0, 105, 145, 0, 0, 102, 160, 0, 0, 116, 145, 0, 0, 103, 160, 0, 0, 131, 145, 0, 0, 104, 160, 0, 0, 140, 145, 0, 0, 105, 160, 0, 0, 149, 145, 0, 0, 106, 160, 0, 0, 159, 145, 0, 0, 108, 160, 0, 0, 169, 145, 0, 0, 109, 160, 0, 0, 176, 145, 0, 0, 110, 160, 0, 0, 187, 145, 0, 0, 111, 160, 0, 0, 199, 145, 0, 0, 112, 160, 0, 0, 212, 145, 0, 0, 113, 160, 0, 0, 224, 145, 0, 0, 114, 160, 0, 0, 234, 145, 0, 0, 117, 160, 0, 0, 244, 145, 0, 0, 118, 160, 0, 0, 0, 146, 0, 0, 119, 160, 0, 0, 11, 146, 0, 0, 120, 160, 0, 0, 21, 146, 0, 0, 121, 160, 0, 0, 31, 146, 0, 0, 122, 160, 0, 0, 42, 146, 0, 0, 123, 160, 0, 0, 53, 146, 0, 0, 124, 160, 0, 0, 63, 146, 0, 0, 125, 160, 0, 0, 69, 146, 0, 0, 126, 160, 0, 0, 87, 146, 0, 0, 127, 160, 0, 0, 105, 146, 0, 0, 128, 160, 0, 0, 118, 146, 0, 0, 129, 160, 0, 0, 134, 146, 0, 0, 130, 160, 0, 0, 150, 146, 0, 0, 131, 160, 0, 0, 160, 146, 0, 0, 132, 160, 0, 0, 173, 146, 0, 0, 133, 160, 0, 0, 186, 146, 0, 0, 134, 160, 0, 0, 193, 146, 0, 0, 135, 160, 0, 0, 207, 146, 0, 0, 136, 160, 0, 0, 221, 146, 0, 0, 138, 160, 0, 0, 233, 146, 0, 0, 139, 160, 0, 0, 239, 146, 0, 0, 141, 160, 0, 0, 3, 147, 0, 0, 143, 160, 0, 0, 13, 147, 0, 0, 144, 160, 0, 0, 25, 147, 0, 0, 145, 160, 0, 0, 37, 147, 0, 0, 146, 160, 0, 0, 53, 147, 0, 0, 152, 160, 0, 0, 67, 147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 4, 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, 12, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 13, 0, 0, 0, 14, 0, 0, 0, 15, 0, 0, 0, 16, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 17, 0, 0, 0, 18, 0, 0, 0, 19, 0, 0, 0, 20, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 21, 0, 0, 0, 22, 0, 0, 0, 23, 0, 0, 0, 24, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 27, 0, 0, 0, 20, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 28, 0, 0, 0, 29, 0, 0, 0, 30, 0, 0, 0, 20, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 35, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 36, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 39, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 38, 0, 0, 0, 40, 0, 0, 0, 41, 0, 0, 0, 42, 0, 0, 0, 43, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 46, 0, 0, 0, 47, 0, 0, 0, 48, 0, 0, 0, 49, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 50, 0, 0, 0, 51, 0, 0, 0, 52, 0, 0, 0, 53, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 54, 0, 0, 0, 55, 0, 0, 0, 56, 0, 0, 0, 57, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 58, 0, 0, 0, 59, 0, 0, 0, 60, 0, 0, 0, 61, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 62, 0, 0, 0, 63, 0, 0, 0, 64, 0, 0, 0, 65, 0, 0, 0, 66, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 70, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 20, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 34, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 75, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 0, 78, 0, 0, 0, 79, 0, 0, 0, 76, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 80, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 81, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 82, 0, 0, 0, 83, 0, 0, 0, 84, 0, 0, 0, 85, 0, 0, 0, 86, 0, 0, 0, 87, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 131, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 132, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 133, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 134, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 135, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 136, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 137, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 138, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 139, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 140, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 141, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 20, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 142, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 144, 0, 0, 0, 70, 173, 0, 0, 16, 175, 0, 0, 20, 175, 0, 0, 24, 175, 0, 0, 28, 175, 0, 0, 32, 175, 0, 0, 36, 175, 0, 0, 40, 175, 0, 0, 44, 175, 0, 0, 48, 175, 0, 0, 52, 175, 0, 0, 56, 175, 0, 0, 60, 175, 0, 0, 64, 175, 0, 0, 68, 175, 0, 0, 72, 175, 0, 0, 76, 175, 0, 0, 241, 175, 0, 0, 247, 175, 0, 0, 253, 175, 0, 0, 4, 176, 0, 0, 11, 176, 0, 0, 18, 176, 0, 0, 25, 176, 0, 0, 32, 176, 0, 0, 39, 176, 0, 0, 46, 176, 0, 0, 53, 176, 0, 0, 60, 176, 0, 0, 67, 176, 0, 0, 74, 176, 0, 0, 81, 176, 0, 0, 88, 176, 0, 0, 163, 175, 0, 0, 167, 175, 0, 0, 171, 175, 0, 0, 176, 175, 0, 0, 181, 175, 0, 0, 186, 175, 0, 0, 191, 175, 0, 0, 196, 175, 0, 0, 201, 175, 0, 0, 206, 175, 0, 0, 211, 175, 0, 0, 216, 175, 0, 0, 221, 175, 0, 0, 226, 175, 0, 0, 231, 175, 0, 0, 236, 175, 0, 0, 101, 175, 0, 0, 104, 175, 0, 0, 107, 175, 0, 0, 111, 175, 0, 0, 115, 175, 0, 0, 119, 175, 0, 0, 123, 175, 0, 0, 127, 175, 0, 0, 131, 175, 0, 0, 135, 175, 0, 0, 139, 175, 0, 0, 143, 175, 0, 0, 147, 175, 0, 0, 151, 175, 0, 0, 155, 175, 0, 0, 159, 175, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, 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, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 11, 0, 0, 0, 12, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 14, 0, 0, 0, 15, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 17, 0, 0, 0, 18, 0, 0, 0, 19, 0, 0, 0, 20, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 21, 0, 0, 0, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 24, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 27, 0, 0, 0, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 32, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 31, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 34, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 35, 0, 0, 0, 36, 0, 0, 0, 37, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 41, 0, 0, 0, 42, 0, 0, 0, 43, 0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 45, 0, 0, 0, 46, 0, 0, 0, 47, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 49, 0, 0, 0, 50, 0, 0, 0, 51, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 53, 0, 0, 0, 54, 0, 0, 0, 55, 0, 0, 0, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 57, 0, 0, 0, 58, 0, 0, 0, 59, 0, 0, 0, 60, 0, 0, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 65, 0, 0, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 70, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 74, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 75, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 76, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 77, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 78, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 79, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 80, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 81, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 82, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 83, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 84, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 85, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 86, 0, 0, 0, 67, 0, 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, 87, 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, 0, 73, 0, 0, 0, 88, 0, 0, 0, 89, 0, 0, 0, 89, 0, 0, 0, 89, 0, 0, 0, 89, 0, 0, 0, 90, 0, 0, 0, 90, 0, 0, 0, 90, 0, 0, 0, 90, 0, 0, 0, 91, 0, 0, 0, 91, 0, 0, 0, 91, 0, 0, 0, 91, 0, 0, 0, 92, 0, 0, 0, 92, 0, 0, 0, 92, 0, 0, 0, 92, 0, 0, 0, 93, 0, 0, 0, 93, 0, 0, 0, 93, 0, 0, 0, 93, 0, 0, 0, 94, 0, 0, 0, 94, 0, 0, 0, 94, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 95, 0, 0, 0, 95, 0, 0, 0, 95, 0, 0, 0, 96, 0, 0, 0, 96, 0, 0, 0, 96, 0, 0, 0, 96, 0, 0, 0, 97, 0, 0, 0, 97, 0, 0, 0, 97, 0, 0, 0, 97, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 98, 0, 0, 0, 99, 0, 0, 0, 99, 0, 0, 0, 99, 0, 0, 0, 99, 0, 0, 0, 100, 0, 0, 0, 100, 0, 0, 0, 100, 0, 0, 0, 100, 0, 0, 0, 101, 0, 0, 0, 101, 0, 0, 0, 101, 0, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 103, 0, 0, 0, 103, 0, 0, 0, 103, 0, 0, 0, 103, 0, 0, 0, 104, 0, 0, 0, 104, 0, 0, 0, 104, 0, 0, 0, 104, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 106, 0, 0, 0, 107, 0, 0, 0, 108, 0, 0, 0, 109, 0, 0, 0, 110, 0, 0, 0, 111, 0, 0, 0, 112, 0, 0, 0, 113, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 114, 0, 0, 0, 115, 0, 0, 0, 116, 0, 0, 0, 117, 0, 0, 0, 118, 0, 0, 0, 119, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 122, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 123, 0, 0, 0, 124, 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135, 0, 0, 0, 136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135, 0, 0, 0, 136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135, 0, 0, 0, 136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE + 10240); allocate([136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135, 0, 0, 0, 136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135, 0, 0, 0, 136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135, 0, 0, 0, 136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 131, 0, 0, 0, 132, 0, 0, 0, 133, 0, 0, 0, 134, 0, 0, 0, 135, 0, 0, 0, 136, 0, 0, 0, 137, 0, 0, 0, 138, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 139, 0, 0, 0, 140, 0, 0, 0, 141, 0, 0, 0, 142, 0, 0, 0, 143, 0, 0, 0, 144, 0, 0, 0, 145, 0, 0, 0, 146, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 150, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 155, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 156, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 157, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 158, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 159, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 160, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 0, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 0, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 0, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 0, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 0, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 0, 0, 0, 0, 147, 0, 0, 0, 148, 0, 0, 0, 149, 0, 0, 0, 0, 0, 0, 0, 151, 0, 0, 0, 152, 0, 0, 0, 153, 0, 0, 0, 0, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 161, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 40, 0, 0, 0, 40, 0, 0, 0, 40, 0, 0, 0, 40, 0, 0, 0, 40, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 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, 162, 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, 162, 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, 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, 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, 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, 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, 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, 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, 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, 163, 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, 163, 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, 163, 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, 163, 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, 163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 0, 0, 165, 0, 0, 0, 166, 0, 0, 0, 0, 0, 0, 0, 163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, 0, 0, 0, 168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163, 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, 163, 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, 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 179, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184, 0, 0, 0, 185, 0, 0, 0, 185, 0, 0, 0, 185, 0, 0, 0, 185, 0, 0, 0, 186, 0, 0, 0, 186, 0, 0, 0, 186, 0, 0, 0, 186, 0, 0, 0, 187, 0, 0, 0, 187, 0, 0, 0, 187, 0, 0, 0, 187, 0, 0, 0, 188, 0, 0, 0, 188, 0, 0, 0, 188, 0, 0, 0, 188, 0, 0, 0, 189, 0, 0, 0, 189, 0, 0, 0, 189, 0, 0, 0, 189, 0, 0, 0, 190, 0, 0, 0, 190, 0, 0, 0, 190, 0, 0, 0, 190, 0, 0, 0, 191, 0, 0, 0, 191, 0, 0, 0, 191, 0, 0, 0, 191, 0, 0, 0, 192, 0, 0, 0, 192, 0, 0, 0, 192, 0, 0, 0, 192, 0, 0, 0, 193, 0, 0, 0, 193, 0, 0, 0, 193, 0, 0, 0, 193, 0, 0, 0, 194, 0, 0, 0, 194, 0, 0, 0, 194, 0, 0, 0, 194, 0, 0, 0, 195, 0, 0, 0, 195, 0, 0, 0, 195, 0, 0, 0, 195, 0, 0, 0, 196, 0, 0, 0, 196, 0, 0, 0, 196, 0, 0, 0, 196, 0, 0, 0, 197, 0, 0, 0, 197, 0, 0, 0, 197, 0, 0, 0, 197, 0, 0, 0, 198, 0, 0, 0, 198, 0, 0, 0, 198, 0, 0, 0, 198, 0, 0, 0, 199, 0, 0, 0, 199, 0, 0, 0, 199, 0, 0, 0, 199, 0, 0, 0, 200, 0, 0, 0, 200, 0, 0, 0, 200, 0, 0, 0, 200], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE + 20480); allocate([201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 205, 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, 206, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207, 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, 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, 0, 208, 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, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 10, 0, 0, 0, 11, 0, 0, 0, 12, 0, 0, 0, 13, 0, 0, 0, 14, 0, 0, 0, 15, 0, 0, 0, 15, 0, 0, 0, 15, 0, 0, 0, 230, 180, 0, 0, 1, 0, 0, 0, 109, 181, 0, 0, 1, 0, 0, 0, 236, 180, 0, 0, 2, 0, 0, 0, 242, 180, 0, 0, 3, 0, 0, 0, 215, 192, 0, 0, 4, 0, 0, 0, 230, 41, 1, 0, 14, 17, 1, 0, 52, 248, 0, 0, 102, 223, 0, 0, 150, 198, 0, 0, 31, 184, 0, 0, 46, 184, 0, 0, 61, 184, 0, 0, 76, 184, 0, 0, 91, 184, 0, 0, 0, 0, 0, 0, 0, 128, 2, 0, 40, 0, 0, 0, 1, 0, 0, 0, 8, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 208, 2, 0, 40, 0, 0, 0, 1, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 5, 0, 40, 0, 0, 0, 2, 0, 0, 0, 8, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 160, 5, 0, 40, 0, 0, 0, 2, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 10, 0, 80, 0, 0, 0, 2, 0, 0, 0, 8, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 64, 11, 0, 80, 0, 0, 0, 2, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 128, 12, 0, 80, 0, 0, 0, 2, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 192, 18, 0, 80, 0, 0, 0, 2, 0, 0, 0, 15, 0, 0, 0, 0, 2, 0, 0, 2, 128, 0, 0, 0, 128, 22, 0, 80, 0, 0, 0, 2, 0, 0, 0, 18, 0, 0, 0, 0, 2, 0, 0, 2, 128, 0, 0, 0, 192, 23, 0, 80, 0, 0, 0, 2, 0, 0, 0, 19, 0, 0, 0, 0, 2, 0, 0, 2, 128, 0, 0, 0, 0, 25, 0, 80, 0, 0, 0, 2, 0, 0, 0, 20, 0, 0, 0, 0, 2, 0, 0, 2, 128, 0, 0, 0, 64, 26, 0, 80, 0, 0, 0, 2, 0, 0, 0, 21, 0, 0, 0, 0, 2, 0, 0, 2, 128, 0, 0, 0, 0, 45, 0, 80, 0, 0, 0, 2, 0, 0, 0, 36, 0, 0, 0, 0, 2, 0, 0, 2, 128, 0, 0, 0, 64, 19, 0, 77, 0, 0, 0, 2, 0, 0, 0, 8, 0, 0, 0, 0, 4, 0, 0, 2, 128, 0, 0, 0, 233, 3, 0, 77, 0, 0, 0, 1, 0, 0, 0, 26, 0, 0, 0, 128, 0, 0, 0, 1, 128, 0, 0, 0, 210, 7, 0, 77, 0, 0, 0, 2, 0, 0, 0, 26, 0, 0, 0, 128, 0, 0, 0, 1, 128, 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, 5, 0, 80, 0, 0, 0, 1, 0, 0, 0, 8, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 160, 5, 0, 80, 0, 0, 0, 1, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 178, 5, 0, 81, 0, 0, 0, 1, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 196, 5, 0, 82, 0, 0, 0, 1, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 214, 5, 0, 83, 0, 0, 0, 1, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 64, 6, 0, 80, 0, 0, 0, 1, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 84, 6, 0, 81, 0, 0, 0, 1, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 104, 6, 0, 82, 0, 0, 0, 1, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 124, 6, 0, 83, 0, 0, 0, 1, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 224, 6, 0, 80, 0, 0, 0, 1, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 246, 6, 0, 81, 0, 0, 0, 1, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 12, 7, 0, 82, 0, 0, 0, 1, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 34, 7, 0, 83, 0, 0, 0, 1, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 10, 0, 80, 0, 0, 0, 2, 0, 0, 0, 8, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 64, 11, 0, 80, 0, 0, 0, 2, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 100, 11, 0, 81, 0, 0, 0, 2, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 136, 11, 0, 82, 0, 0, 0, 2, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 172, 11, 0, 83, 0, 0, 0, 2, 0, 0, 0, 9, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 128, 12, 0, 80, 0, 0, 0, 2, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 168, 12, 0, 81, 0, 0, 0, 2, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 208, 12, 0, 82, 0, 0, 0, 2, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 248, 12, 0, 83, 0, 0, 0, 2, 0, 0, 0, 10, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 192, 13, 0, 80, 0, 0, 0, 2, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 236, 13, 0, 81, 0, 0, 0, 2, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 24, 14, 0, 82, 0, 0, 0, 2, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 68, 14, 0, 83, 0, 0, 0, 2, 0, 0, 0, 11, 0, 0, 0, 0, 2, 0, 0, 2, 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, 0, 0, 0, 0, 92, 0, 0, 38, 0, 0, 0, 96, 105, 0, 0, 8, 0, 0, 0, 144, 106, 0, 0, 0, 1, 2, 0, 0, 24, 0, 0, 0, 138, 2, 0, 0, 18, 0, 0, 0, 129, 2, 0, 0, 0, 0, 0, 0, 139, 2, 0, 0, 20, 0, 0, 0, 130, 2, 0, 0, 2, 0, 0, 0, 2, 2, 0, 0, 26, 0, 0, 0, 131, 2, 0, 0, 4, 0, 0, 0, 3, 2, 0, 0, 28, 0, 0, 0, 132, 2, 0, 0, 6, 0, 0, 0, 4, 2, 0, 0, 30, 0, 0, 0, 133, 2, 0, 0, 8, 0, 0, 0, 5, 2, 0, 0, 32, 0, 0, 0, 134, 2, 0, 0, 10, 0, 0, 0, 6, 2, 0, 0, 34, 0, 0, 0, 135, 2, 0, 0, 12, 0, 0, 0, 7, 2, 0, 0, 36, 0, 0, 0, 136, 2, 0, 0, 14, 0, 0, 0, 8, 2, 0, 0, 38, 0, 0, 0, 137, 2, 0, 0, 16, 0, 0, 1, 144, 2, 0, 0, 84, 0, 0, 1, 135, 2, 0, 0, 56, 0, 0, 1, 145, 2, 0, 0, 86, 0, 0, 1, 136, 2, 0, 0, 58, 0, 0, 1, 146, 2, 0, 0, 88, 0, 0, 1, 137, 2, 0, 0, 60, 0, 0, 1, 147, 2, 0, 0, 90, 0, 0, 1, 138, 2, 0, 0, 62, 0, 0, 1, 129, 2, 0, 0, 22, 0, 0, 1, 139, 2, 0, 0, 64, 0, 0, 1, 130, 2, 0, 0, 46, 0, 0, 1, 140, 2, 0, 0, 66, 0, 0, 1, 131, 2, 0, 0, 48, 0, 0, 1, 141, 2, 0, 0, 68, 0, 0, 1, 132, 2, 0, 0, 50, 0, 0, 1, 142, 2, 0, 0, 70, 0, 0, 1, 133, 2, 0, 0, 52, 0, 0, 1, 143, 2, 0, 0, 72, 0, 0, 1, 134, 2, 0, 0, 54, 0, 0, 0, 131, 3, 0, 0, 0, 0, 0, 0, 130, 2, 0, 0, 44, 0, 0, 0, 132, 4, 0, 0, 4, 0, 0, 0, 134, 6, 0, 0, 48, 0, 0, 1, 132, 4, 0, 0, 80, 0, 0, 1, 130, 2, 0, 0, 46, 0, 0, 1, 131, 3, 0, 0, 88, 0, 0, 1, 134, 6, 0, 0, 12, 0, 0, 215, 192, 0, 0, 5, 0, 0, 0, 99, 188, 0, 0, 5, 0, 0, 0, 181, 193, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 2, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 4, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 134, 198, 0, 0, 228, 194, 0, 0, 241, 194, 0, 0, 69, 198, 0, 0, 253, 194, 0, 0, 18, 195, 0, 0, 136, 198, 0, 0, 42, 195, 0, 0, 60, 195, 0, 0, 140, 198, 0, 0, 193, 232, 0, 0, 81, 195, 0, 0, 92, 195, 0, 0, 97, 195, 0, 0, 116, 195, 0, 0, 226, 198, 0, 0, 140, 195, 0, 0, 150, 195, 0, 0, 65, 198, 0, 0, 193, 232, 0, 0, 186, 195, 0, 0, 191, 195, 0, 0, 196, 195, 0, 0, 216, 195, 0, 0, 220, 198, 0, 0, 239, 195, 0, 0, 249, 195, 0, 0, 75, 198, 0, 0, 14, 196, 0, 0, 26, 196, 0, 0, 38, 196, 0, 0, 41, 196, 0, 0, 49, 196, 0, 0, 75, 196, 0, 0, 193, 232, 0, 0, 78, 196, 0, 0, 95, 196, 0, 0, 98, 196, 0, 0, 118, 196, 0, 0, 161, 196, 0, 0, 165, 196, 0, 0, 185, 196, 0, 0, 1, 0, 0, 0, 192, 197, 0, 0, 2, 0, 0, 0, 196, 197, 0, 0, 3, 0, 0, 0, 199, 197, 0, 0, 4, 0, 0, 0, 202, 197, 0, 0, 5, 0, 0, 0, 205, 197, 0, 0, 6, 0, 0, 0, 208, 197, 0, 0, 7, 0, 0, 0, 211, 197, 0, 0, 8, 0, 0, 0, 214, 197, 0, 0, 9, 0, 0, 0, 217, 197, 0, 0, 10, 0, 0, 0, 220, 197, 0, 0, 11, 0, 0, 0, 223, 197, 0, 0, 12, 0, 0, 0, 227, 197, 0, 0, 13, 0, 0, 0, 231, 197, 0, 0, 14, 0, 0, 0, 235, 197, 0, 0, 14, 0, 0, 0, 247, 197, 0, 0, 15, 0, 0, 0, 254, 197, 0, 0, 15, 0, 0, 0, 9, 198, 0, 0, 16, 0, 0, 0, 15, 198, 0, 0, 17, 0, 0, 0, 21, 198, 0, 0, 17, 0, 0, 0, 31, 198, 0, 0, 18, 0, 0, 0, 107, 201, 0, 0, 19, 0, 0, 0, 251, 200, 0, 0, 20, 0, 0, 0, 253, 200, 0, 0, 21, 0, 0, 0, 255, 200, 0, 0, 22, 0, 0, 0, 1, 201, 0, 0, 23, 0, 0, 0, 3, 201, 0, 0, 24, 0, 0, 0, 5, 201, 0, 0, 25, 0, 0, 0, 7, 201, 0, 0, 26, 0, 0, 0, 33, 198, 0, 0, 27, 0, 0, 0, 235, 200, 0, 0, 28, 0, 0, 0, 35, 198, 0, 0, 28, 0, 0, 0, 41, 198, 0, 0, 29, 0, 0, 0, 43, 198, 0, 0, 29, 0, 0, 0, 49, 198, 0, 0, 30, 0, 0, 0, 51, 198, 0, 0, 31, 0, 0, 0, 61, 198, 0, 0, 32, 0, 0, 0, 65, 198, 0, 0, 33, 0, 0, 0, 67, 198, 0, 0, 34, 0, 0, 0, 69, 198, 0, 0, 35, 0, 0, 0, 71, 198, 0, 0, 36, 0, 0, 0, 73, 198, 0, 0, 37, 0, 0, 0, 75, 198, 0, 0, 38, 0, 0, 0, 77, 198, 0, 0, 39, 0, 0, 0, 79, 198, 0, 0, 40, 0, 0, 0, 81, 198, 0, 0, 41, 0, 0, 0, 83, 198, 0, 0, 42, 0, 0, 0, 85, 198, 0, 0, 42, 0, 0, 0, 97, 198, 0, 0, 43, 0, 0, 0, 99, 198, 0, 0, 43, 0, 0, 0, 112, 198, 0, 0, 44, 0, 0, 0, 114, 198, 0, 0, 45, 0, 0, 0, 121, 198, 0, 0, 46, 0, 0, 0, 130, 198, 0, 0, 47, 0, 0, 0, 132, 198, 0, 0, 48, 0, 0, 0, 134, 198, 0, 0, 49, 0, 0, 0, 136, 198, 0, 0, 50, 0, 0, 0, 138, 198, 0, 0, 51, 0, 0, 0, 140, 198, 0, 0, 52, 0, 0, 0, 142, 198, 0, 0, 53, 0, 0, 0, 144, 198, 0, 0, 54, 0, 0, 0, 146, 198, 0, 0, 55, 0, 0, 0, 148, 198, 0, 0, 55, 0, 0, 0, 158, 198, 0, 0, 56, 0, 0, 0, 160, 198, 0, 0, 56, 0, 0, 0, 166, 198, 0, 0, 56, 0, 0, 0, 177, 198, 0, 0, 57, 0, 0, 0, 179, 198, 0, 0, 57, 0, 0, 0, 189, 198, 0, 0, 58, 0, 0, 0, 191, 198, 0, 0, 58, 0, 0, 0, 201, 198, 0, 0, 59, 0, 0, 0, 207, 198, 0, 0, 59, 0, 0, 0, 212, 198, 0, 0, 60, 0, 0, 0, 214, 198, 0, 0, 61, 0, 0, 0, 216, 198, 0, 0, 62, 0, 0, 0, 218, 198, 0, 0, 63, 0, 0, 0, 220, 198, 0, 0, 64, 0, 0, 0, 222, 198, 0, 0, 66, 0, 0, 0, 224, 198, 0, 0, 65, 0, 0, 0, 226, 198, 0, 0, 67, 0, 0, 0, 228, 198, 0, 0, 67, 0, 0, 0, 234, 198, 0, 0, 68, 0, 0, 0, 236, 198, 0, 0, 68, 0, 0, 0, 31, 204, 0, 0, 69, 0, 0, 0, 243, 198, 0, 0, 69, 0, 0, 0, 249, 198, 0, 0, 71, 0, 0, 0, 251, 198, 0, 0, 71, 0, 0, 0, 4, 199, 0, 0, 73, 0, 0, 0, 9, 199, 0, 0, 73, 0, 0, 0, 18, 199, 0, 0, 72, 0, 0, 0, 23, 199, 0, 0, 72, 0, 0, 0, 33, 199, 0, 0, 72, 0, 0, 0, 43, 199, 0, 0, 74, 0, 0, 0, 55, 199, 0, 0, 75, 0, 0, 0, 60, 199, 0, 0, 75, 0, 0, 0, 68, 199, 0, 0, 76, 0, 0, 0, 72, 199, 0, 0, 77, 0, 0, 0, 78, 199, 0, 0, 78, 0, 0, 0, 87, 199, 0, 0, 79, 0, 0, 0, 97, 199, 0, 0, 79, 0, 0, 0, 108, 199, 0, 0, 79, 0, 0, 0, 119, 199, 0, 0, 80, 0, 0, 0, 132, 199, 0, 0, 81, 0, 0, 0, 137, 199, 0, 0, 82, 0, 0, 0, 147, 199, 0, 0, 83, 0, 0, 0, 155, 199, 0, 0, 84, 0, 0, 0, 164, 199, 0, 0, 85, 0, 0, 0, 172, 199, 0, 0, 86, 0, 0, 0, 181, 199, 0, 0, 87, 0, 0, 0, 186, 199, 0, 0, 88, 0, 0, 0, 191, 199, 0, 0, 89, 0, 0, 0, 196, 199, 0, 0, 90, 0, 0, 0, 204, 199, 0, 0, 91, 0, 0, 0, 209, 199, 0, 0, 92, 0, 0, 0, 214, 199, 0, 0, 93, 0, 0, 0, 219, 199, 0, 0, 94, 0, 0, 0, 224, 199, 0, 0, 95, 0, 0, 0, 229, 199, 0, 0, 96, 0, 0, 0, 234, 199, 0, 0, 97, 0, 0, 0, 243, 199, 0, 0, 98, 0, 0, 0, 248, 199, 0, 0, 99, 0, 0, 0, 2, 200, 0, 0, 100, 0, 0, 0, 9, 200, 0, 0, 101, 0, 0, 0, 14, 200, 0, 0, 102, 0, 0, 0, 21, 200, 0, 0, 103, 0, 0, 0, 28, 200, 0, 0, 104, 0, 0, 0, 32, 200, 0, 0, 105, 0, 0, 0, 41, 200, 0, 0, 106, 0, 0, 0, 44, 200, 0, 0, 107, 0, 0, 0, 49, 200, 0, 0, 108, 0, 0, 0, 54, 200, 0, 0, 109, 0, 0, 0, 60, 200, 0, 0, 110, 0, 0, 0, 67, 200, 0, 0, 111, 0, 0, 0, 74, 200, 0, 0, 112, 0, 0, 0, 81, 200, 0, 0, 113, 0, 0, 0, 88, 200, 0, 0, 114, 0, 0, 0, 95, 200, 0, 0, 115, 0, 0, 0, 102, 200, 0, 0, 116, 0, 0, 0, 109, 200, 0, 0, 117, 0, 0, 0, 116, 200, 0, 0, 118, 0, 0, 0, 123, 200, 0, 0, 119, 0, 0, 0, 131, 200, 0, 0, 120, 0, 0, 0, 139, 200, 0, 0, 121, 0, 0, 0, 147, 200, 0, 0, 122, 0, 0, 0, 155, 200, 0, 0, 123, 0, 0, 0, 163, 200, 0, 0, 124, 0, 0, 0, 171, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 1, 0, 0, 0, 58, 4, 0, 0, 2, 0, 0, 0, 59, 4, 0, 0, 3, 0, 0, 0, 60, 4, 0, 0, 4, 0, 0, 0, 61, 4, 0, 0, 5, 0, 0, 0, 62, 4, 0, 0, 6, 0, 0, 0, 63, 4, 0, 0, 7, 0, 0, 0, 64, 4, 0, 0, 8, 0, 0, 0, 65, 4, 0, 0, 9, 0, 0, 0, 66, 4, 0, 0, 10, 0, 0, 0, 67, 4, 0, 0, 11, 0, 0, 0, 68, 4, 0, 0, 12, 0, 0, 0, 69, 4, 0, 0, 13, 0, 0, 0, 70, 4, 0, 0, 14, 0, 0, 0, 71, 4, 0, 0, 15, 0, 0, 0, 72, 4, 0, 0, 16, 0, 0, 0, 96, 0, 0, 0, 17, 0, 0, 0, 49, 0, 0, 0, 18, 0, 0, 0, 50, 0, 0, 0, 19, 0, 0, 0, 51, 0, 0, 0, 20, 0, 0, 0, 52, 0, 0, 0, 21, 0, 0, 0, 53, 0, 0, 0, 22, 0, 0, 0, 54, 0, 0, 0, 23, 0, 0, 0, 55, 0, 0, 0, 24, 0, 0, 0, 56, 0, 0, 0, 25, 0, 0, 0, 57, 0, 0, 0, 26, 0, 0, 0, 48, 0, 0, 0, 27, 0, 0, 0, 45, 0, 0, 0, 28, 0, 0, 0, 61, 0, 0, 0, 29, 0, 0, 0, 187, 0, 0, 0, 29, 0, 0, 0, 8, 0, 0, 0, 30, 0, 0, 0, 9, 0, 0, 0, 31, 0, 0, 0, 113, 0, 0, 0, 32, 0, 0, 0, 119, 0, 0, 0, 33, 0, 0, 0, 101, 0, 0, 0, 34, 0, 0, 0, 114, 0, 0, 0, 35, 0, 0, 0, 116, 0, 0, 0, 36, 0, 0, 0, 121, 0, 0, 0, 37, 0, 0, 0, 117, 0, 0, 0, 38, 0, 0, 0, 105, 0, 0, 0, 39, 0, 0, 0, 111, 0, 0, 0, 40, 0, 0, 0, 112, 0, 0, 0, 41, 0, 0, 0, 91, 0, 0, 0, 42, 0, 0, 0, 93, 0, 0, 0, 43, 0, 0, 0, 13, 0, 0, 0, 44, 0, 0, 0, 57, 4, 0, 0, 45, 0, 0, 0, 97, 0, 0, 0, 46, 0, 0, 0, 115, 0, 0, 0, 47, 0, 0, 0, 100, 0, 0, 0, 48, 0, 0, 0, 102, 0, 0, 0, 49, 0, 0, 0, 103, 0, 0, 0, 50, 0, 0, 0, 104, 0, 0, 0, 51, 0, 0, 0, 106, 0, 0, 0, 52, 0, 0, 0, 107, 0, 0, 0, 53, 0, 0, 0, 108, 0, 0, 0, 54, 0, 0, 0, 59, 0, 0, 0, 55, 0, 0, 0, 186, 0, 0, 0, 55, 0, 0, 0, 39, 0, 0, 0, 56, 0, 0, 0, 92, 0, 0, 0, 57, 0, 0, 0, 220, 0, 0, 0, 57, 0, 0, 0, 225, 4, 0, 0, 58, 0, 0, 0, 60, 0, 0, 0, 59, 0, 0, 0, 122, 0, 0, 0, 60, 0, 0, 0, 120, 0, 0, 0, 61, 0, 0, 0, 99, 0, 0, 0, 62, 0, 0, 0, 118, 0, 0, 0, 63, 0, 0, 0, 98, 0, 0, 0, 64, 0, 0, 0, 110, 0, 0, 0, 66, 0, 0, 0, 109, 0, 0, 0, 65, 0, 0, 0, 44, 0, 0, 0, 67, 0, 0, 0, 46, 0, 0, 0, 68, 0, 0, 0, 47, 0, 0, 0, 69, 0, 0, 0, 229, 4, 0, 0, 70, 0, 0, 0, 224, 4, 0, 0, 71, 0, 0, 0, 227, 4, 0, 0, 73, 0, 0, 0, 227, 4, 0, 0, 72, 0, 0, 0, 226, 4, 0, 0, 75, 0, 0, 0, 1, 5, 0, 0, 74, 0, 0, 0, 32, 0, 0, 0, 76, 0, 0, 0, 230, 4, 0, 0, 77, 0, 0, 0, 231, 4, 0, 0, 78, 0, 0, 0, 231, 4, 0, 0, 79, 0, 0, 0, 118, 4, 0, 0, 80, 0, 0, 0, 228, 4, 0, 0, 81, 0, 0, 0, 83, 4, 0, 0, 82, 0, 0, 0, 84, 4, 0, 0, 83, 0, 0, 0, 85, 4, 0, 0, 84, 0, 0, 0, 86, 4, 0, 0, 85, 0, 0, 0, 95, 4, 0, 0, 86, 0, 0, 0, 96, 4, 0, 0, 87, 0, 0, 0, 97, 4, 0, 0, 88, 0, 0, 0, 87, 4, 0, 0, 89, 0, 0, 0, 92, 4, 0, 0, 90, 0, 0, 0, 93, 4, 0, 0, 91, 0, 0, 0, 94, 4, 0, 0, 92, 0, 0, 0, 89, 4, 0, 0, 93, 0, 0, 0, 90, 4, 0, 0, 94, 0, 0, 0, 91, 4, 0, 0, 95, 0, 0, 0, 88, 4, 0, 0, 96, 0, 0, 0, 98, 4, 0, 0, 97, 0, 0, 0, 99, 4, 0, 0, 98, 0, 0, 0, 73, 4, 0, 0, 99, 0, 0, 0, 74, 4, 0, 0, 100, 0, 0, 0, 75, 4, 0, 0, 101, 0, 0, 0, 127, 0, 0, 0, 102, 0, 0, 0, 77, 4, 0, 0, 103, 0, 0, 0, 78, 4, 0, 0, 104, 0, 0, 0, 82, 4, 0, 0, 105, 0, 0, 0, 80, 4, 0, 0, 106, 0, 0, 0, 81, 4, 0, 0, 107, 0, 0, 0, 79, 4, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 252, 115, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 24, 0, 0, 0, 202, 232, 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, 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, 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, 172, 230, 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, 112, 117, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 210, 232, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 117, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 24, 0, 0, 0, 218, 236, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 117, 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, 27, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 100, 98, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 99, 109, 100, 32, 40, 37, 48, 50, 88, 41, 10, 0, 105, 103, 110, 111, 114, 105, 110, 103, 32, 112, 99, 101, 32, 107, 101, 121, 58, 32, 48, 120, 37, 48, 52, 120, 32, 40, 37, 115, 41, 10, 0, 97, 100, 98, 45, 107, 98, 100, 58, 32, 108, 105, 115, 116, 101, 110, 32, 37, 117, 10, 0, 97, 100, 98, 45, 107, 98, 100, 58, 32, 116, 97, 108, 107, 32, 37, 117, 10, 0, 97, 100, 98, 45, 107, 98, 100, 58, 32, 116, 97, 108, 107, 32, 50, 10, 0, 91, 99, 110, 116, 93, 0, 99, 108, 111, 99, 107, 0, 103, 98, 0, 91, 97, 100, 100, 114, 46, 46, 93, 0, 114, 117, 110, 32, 119, 105, 116, 104, 32, 98, 114, 101, 97, 107, 112, 111, 105, 110, 116, 115, 32, 97, 116, 32, 97, 100, 100, 114, 0, 103, 101, 0, 91, 101, 120, 99, 101, 112, 116, 105, 111, 110, 93, 0, 114, 117, 110, 32, 117, 110, 116, 105, 108, 32, 101, 120, 99, 101, 112, 116, 105, 111, 110, 0, 104, 97, 108, 116, 0, 91, 118, 97, 108, 93, 0, 115, 101, 116, 32, 104, 97, 108, 116, 32, 115, 116, 97, 116, 101, 32, 91, 50, 93, 0, 101, 120, 101, 99, 117, 116, 101, 32, 99, 110, 116, 32, 105, 110, 115, 116, 114, 117, 99, 116, 105, 111, 110, 115, 44, 32, 115, 107, 105, 112, 32, 99, 97, 108, 108, 115, 32, 91, 49, 93, 0, 114, 101, 115, 101, 116, 0, 114, 116, 101, 0, 101, 120, 101, 99, 117, 116, 101, 32, 116, 111, 32, 110, 101, 120, 116, 32, 114, 116, 101, 0, 114, 101, 103, 32, 91, 118, 97, 108, 93, 0, 103, 101, 116, 32, 111, 114, 32, 115, 101, 116, 32, 97, 32, 114, 101, 103, 105, 115, 116, 101, 114, 0, 91, 119, 104, 97, 116, 93, 0, 112, 114, 105, 110, 116, 32, 115, 116, 97, 116, 117, 115, 32, 40, 99, 112, 117, 124, 109, 101, 109, 124, 115, 99, 99, 124, 118, 105, 97, 41, 0, 101, 120, 101, 99, 117, 116, 101, 32, 99, 110, 116, 32, 105, 110, 115, 116, 114, 117, 99, 116, 105, 111, 110, 115, 32, 91, 49, 93, 0, 91, 91, 45, 93, 97, 100, 100, 114, 32, 91, 99, 110, 116, 93, 93, 0, 100, 105, 115, 97, 115, 115, 101, 109, 98, 108, 101, 0, 109, 101, 109, 0, 117, 110, 107, 110, 111, 119, 110, 32, 99, 111, 109, 112, 111, 110, 101, 110, 116, 32, 40, 37, 115, 41, 10, 0, 54, 53, 50, 50, 45, 86, 73, 65, 0, 32, 80, 67, 82, 61, 37, 48, 50, 88, 32, 32, 65, 67, 82, 61, 37, 48, 50, 88, 32, 32, 73, 70, 82, 61, 37, 48, 50, 88, 32, 32, 73, 69, 82, 61, 37, 48, 50, 88, 32, 32, 73, 82, 81, 61, 37, 117, 10, 0, 68, 68, 82, 65, 61, 37, 48, 50, 88, 32, 68, 68, 82, 66, 61, 37, 48, 50, 88, 32, 32, 67, 65, 49, 61, 37, 88, 32, 32, 32, 84, 49, 76, 61, 37, 48, 52, 88, 32, 83, 72, 70, 84, 61, 37, 48, 50, 88, 47, 37, 117, 10, 0, 32, 73, 82, 65, 61, 37, 48, 50, 88, 32, 32, 73, 82, 66, 61, 37, 48, 50, 88, 32, 32, 67, 65, 50, 61, 37, 88, 32, 32, 37, 99, 84, 49, 86, 61, 37, 48, 52, 88, 10, 0, 32, 79, 82, 65, 61, 37, 48, 50, 88, 32, 32, 79, 82, 66, 61, 37, 48, 50, 88, 32, 32, 67, 66, 49, 61, 37, 88, 32, 32, 32, 84, 50, 76, 61, 37, 48, 52, 88, 10, 0, 32, 32, 80, 65, 61, 37, 48, 50, 88, 32, 32, 32, 80, 66, 61, 37, 48, 50, 88, 32, 32, 67, 66, 50, 61, 37, 88, 32, 32, 37, 99, 84, 50, 86, 61, 37, 48, 52, 88, 10, 0, 56, 53, 51, 48, 45, 83, 67, 67, 0, 32, 32, 73, 82, 81, 61, 37, 117, 10, 0, 87, 82, 37, 48, 50, 117, 65, 61, 37, 48, 50, 88, 32, 32, 82, 82, 37, 48, 50, 117, 65, 61, 37, 48, 50, 88, 32, 32, 87, 82, 37, 48, 50, 117, 66, 61, 37, 48, 50, 88, 32, 32, 82, 82, 37, 48, 50, 117, 66, 61, 37, 48, 50, 88, 10, 0, 77, 69, 77, 0, 67, 76, 75, 61, 37, 108, 120, 32, 32, 79, 80, 61, 37, 108, 120, 32, 32, 68, 76, 89, 61, 37, 108, 117, 32, 32, 67, 80, 73, 61, 37, 46, 52, 102, 10, 0, 32, 83, 82, 61, 37, 48, 52, 88, 91, 37, 99, 37, 99, 93, 32, 32, 67, 67, 61, 37, 48, 50, 88, 91, 37, 99, 37, 99, 37, 99, 37, 99, 37, 99, 93, 32, 69, 88, 61, 37, 48, 50, 88, 40, 37, 45, 52, 115, 41, 32, 84, 82, 80, 61, 37, 48, 52, 88, 32, 73, 77, 76, 61, 37, 88, 32, 73, 80, 76, 61, 37, 88, 10, 0, 32, 68, 48, 61, 37, 48, 56, 108, 88, 32, 32, 68, 52, 61, 37, 48, 56, 108, 88, 32, 32, 65, 48, 61, 37, 48, 56, 108, 88, 32, 32, 65, 52, 61, 37, 48, 56, 108, 88, 32, 32, 32, 80, 67, 61, 37, 48, 56, 108, 88, 10, 0, 32, 68, 49, 61, 37, 48, 56, 108, 88, 32, 32, 68, 53, 61, 37, 48, 56, 108, 88, 32, 32, 65, 49, 61, 37, 48, 56, 108, 88, 32, 32, 65, 53, 61, 37, 48, 56, 108, 88, 32, 32, 76, 80, 67, 61, 37, 48, 56, 108, 88, 10, 0, 32, 68, 50, 61, 37, 48, 56, 108, 88, 32, 32, 68, 54, 61, 37, 48, 56, 108, 88, 32, 32, 65, 50, 61, 37, 48, 56, 108, 88, 32, 32, 65, 54, 61, 37, 48, 56, 108, 88, 32, 32, 85, 83, 80, 61, 37, 48, 56, 108, 88, 10, 0, 32, 68, 51, 61, 37, 48, 56, 108, 88, 32, 32, 68, 55, 61, 37, 48, 56, 108, 88, 32, 32, 65, 51, 61, 37, 48, 56, 108, 88, 32, 32, 65, 55, 61, 37, 48, 56, 108, 88, 32, 32, 83, 83, 80, 61, 37, 48, 56, 108, 88, 10, 0, 37, 48, 56, 108, 88, 32, 32, 37, 115, 10, 0, 37, 48, 52, 88, 32, 0, 32, 32, 32, 32, 32, 0, 37, 115, 0, 37, 45, 56, 115, 32, 37, 115, 0, 37, 45, 56, 115, 32, 37, 115, 44, 32, 37, 115, 0, 37, 45, 56, 115, 32, 37, 115, 44, 32, 37, 115, 44, 32, 37, 115, 0, 45, 45, 45, 0, 59, 32, 0, 109, 105, 115, 115, 105, 110, 103, 32, 114, 101, 103, 105, 115, 116, 101, 114, 10, 0, 98, 97, 100, 32, 114, 101, 103, 105, 115, 116, 101, 114, 32, 40, 37, 115, 41, 10, 0, 37, 48, 56, 108, 88, 10, 0, 109, 105, 115, 115, 105, 110, 103, 32, 118, 97, 108, 117, 101, 10, 0, 101, 120, 99, 101, 112, 116, 105, 111, 110, 32, 37, 48, 50, 88, 32, 40, 37, 115, 41, 10, 0, 37, 48, 56, 108, 88, 58, 32, 101, 120, 99, 101, 112, 116, 105, 111, 110, 32, 37, 48, 50, 88, 32, 40, 37, 115, 41, 32, 73, 87, 61, 37, 48, 52, 88, 10, 0, 37, 48, 56, 108, 88, 58, 32, 117, 110, 100, 101, 102, 105, 110, 101, 100, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 58, 32, 37, 48, 52, 108, 88, 32, 91, 37, 48, 52, 88, 32, 37, 48, 52, 88, 32, 37, 48, 52, 88, 32, 37, 48, 52, 88, 32, 37, 48, 52, 88, 93, 10, 0, 109, 97, 114, 107, 58, 32, 80, 67, 61, 37, 48, 54, 108, 88, 10, 0, 117, 110, 104, 97, 110, 100, 108, 101, 100, 32, 104, 111, 111, 107, 32, 40, 37, 48, 52, 88, 41, 10, 0, 107, 101, 121, 112, 97, 100, 32, 109, 111, 100, 101, 58, 32, 109, 111, 116, 105, 111, 110, 10, 0, 107, 101, 121, 112, 97, 100, 32, 109, 111, 100, 101, 58, 32, 107, 101, 121, 112, 97, 100, 10, 0, 117, 110, 104, 97, 110, 100, 108, 101, 100, 32, 109, 97, 103, 105, 99, 32, 107, 101, 121, 32, 40, 37, 117, 41, 10, 0, 105, 119, 109, 58, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 117, 32, 40, 112, 114, 105, 41, 10, 0, 105, 119, 109, 58, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 117, 32, 40, 100, 105, 115, 107, 41, 10, 0, 105, 119, 109, 58, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 117, 32, 102, 97, 105, 108, 101, 100, 10, 0, 105, 119, 109, 58, 32, 115, 97, 118, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 117, 10, 0, 105, 119, 109, 58, 32, 115, 97, 118, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 117, 32, 102, 97, 105, 108, 101, 100, 32, 40, 112, 114, 105, 41, 10, 0, 105, 119, 109, 58, 32, 115, 97, 118, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 117, 32, 102, 97, 105, 108, 101, 100, 32, 40, 100, 105, 115, 107, 41, 10, 0, 0, 43, 48, 42, 47, 4, 53, 41, 46, 12, 58, 3, 52, 25, 9, 40, 45, 55, 14, 11, 57, 32, 30, 2, 51, 28, 17, 24, 8, 21, 63, 39, 44, 49, 5, 54, 13, 59, 26, 10, 56, 15, 33, 31, 29, 18, 22, 1, 50, 6, 60, 27, 16, 34, 19, 23, 7, 61, 35, 20, 62, 36, 37, 38, 105, 119, 109, 58, 32, 100, 114, 105, 118, 101, 32, 37, 117, 32, 101, 106, 101, 99, 116, 10, 0, 73, 87, 77, 58, 32, 68, 37, 117, 32, 84, 114, 97, 99, 107, 32, 37, 117, 32, 32, 32, 32, 13, 0, 105, 103, 110, 111, 114, 105, 110, 103, 32, 112, 99, 101, 32, 107, 101, 121, 58, 32, 37, 48, 52, 120, 32, 40, 37, 115, 41, 10, 0, 107, 98, 100, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 99, 111, 109, 109, 97, 110, 100, 32, 40, 37, 48, 50, 88, 41, 10, 0, 112, 99, 101, 45, 109, 97, 99, 112, 108, 117, 115, 0, 118, 105, 100, 101, 111, 0, 119, 105, 100, 116, 104, 0, 104, 101, 105, 103, 104, 116, 0, 99, 111, 108, 111, 114, 48, 0, 99, 111, 108, 111, 114, 49, 0, 98, 114, 105, 103, 104, 116, 110, 101, 115, 115, 0, 86, 73, 68, 69, 79, 58, 0, 97, 100, 100, 114, 61, 48, 120, 37, 48, 54, 108, 88, 32, 119, 61, 37, 117, 32, 104, 61, 37, 117, 32, 98, 114, 105, 103, 104, 116, 61, 37, 117, 37, 37, 10, 0, 0, 1, 59, 2, 60, 40, 54, 3, 61, 32, 49, 41, 55, 19, 35, 4, 62, 52, 30, 33, 50, 12, 14, 42, 56, 16, 27, 20, 36, 23, 44, 5, 63, 58, 39, 53, 31, 48, 18, 34, 51, 29, 11, 13, 15, 26, 22, 43, 57, 38, 47, 17, 28, 10, 25, 21, 37, 46, 9, 24, 45, 8, 7, 6, 115, 111, 117, 110, 100, 0, 83, 79, 85, 78, 68, 58, 0, 97, 100, 100, 114, 61, 48, 120, 37, 48, 54, 108, 88, 32, 108, 111, 119, 112, 97, 115, 115, 61, 37, 108, 117, 32, 100, 114, 105, 118, 101, 114, 61, 37, 115, 10, 0, 42, 42, 42, 32, 115, 101, 116, 116, 105, 110, 103, 32, 115, 111, 117, 110, 100, 32, 100, 114, 105, 118, 101, 114, 32, 102, 97, 105, 108, 101, 100, 32, 40, 37, 115, 41, 10, 0, 115, 111, 110, 121, 0, 105, 110, 115, 101, 114, 116, 95, 100, 101, 108, 97, 121, 0, 102, 111, 114, 109, 97, 116, 95, 104, 100, 95, 97, 115, 95, 100, 100, 0, 105, 110, 115, 101, 114, 116, 95, 100, 101, 108, 97, 121, 95, 37, 117, 0, 100, 114, 105, 118, 101, 61, 37, 117, 32, 100, 101, 108, 97, 121, 61, 37, 108, 117, 10, 0, 115, 99, 115, 105, 0, 83, 67, 83, 73, 58, 0, 97, 100, 100, 114, 61, 48, 120, 37, 48, 54, 108, 120, 32, 115, 105, 122, 101, 61, 48, 120, 37, 108, 120, 10, 0, 100, 101, 118, 105, 99, 101, 0, 105, 100, 0, 118, 101, 110, 100, 111, 114, 0, 80, 67, 69, 0, 112, 114, 111, 100, 117, 99, 116, 0, 80, 67, 69, 68, 73, 83, 75, 0, 105, 100, 61, 37, 117, 32, 100, 114, 105, 118, 101, 61, 37, 117, 32, 118, 101, 110, 100, 111, 114, 61, 34, 37, 115, 34, 32, 112, 114, 111, 100, 117, 99, 116, 61, 34, 37, 115, 34, 10, 0, 105, 119, 109, 0, 73, 87, 77, 58, 0, 97, 100, 100, 114, 61, 48, 120, 37, 48, 54, 108, 120, 10, 0, 115, 105, 110, 103, 108, 101, 95, 115, 105, 100, 101, 100, 0, 108, 111, 99, 107, 101, 100, 0, 105, 110, 115, 101, 114, 116, 101, 100, 0, 97, 117, 116, 111, 95, 114, 111, 116, 97, 116, 101, 0, 100, 114, 105, 118, 101, 61, 37, 117, 32, 115, 105, 122, 101, 61, 37, 117, 75, 32, 108, 111, 99, 107, 101, 100, 61, 37, 100, 32, 114, 111, 116, 97, 116, 101, 61, 37, 100, 32, 100, 105, 115, 107, 61, 37, 117, 32, 102, 105, 108, 101, 61, 37, 115, 10, 0, 115, 112, 101, 101, 100, 58, 32, 37, 117, 10, 0, 97, 100, 98, 0, 107, 101, 121, 98, 111, 97, 114, 100, 0, 107, 101, 121, 112, 97, 100, 95, 109, 111, 116, 105, 111, 110, 0, 65, 68, 66, 58, 0, 101, 110, 97, 98, 108, 101, 100, 10, 0, 42, 42, 42, 32, 99, 97, 110, 39, 116, 32, 99, 114, 101, 97, 116, 101, 32, 97, 100, 98, 10, 0, 109, 111, 117, 115, 101, 10, 0, 109, 111, 116, 105, 111, 110, 0, 107, 101, 121, 112, 97, 100, 0, 107, 101, 121, 98, 111, 97, 114, 100, 32, 107, 101, 121, 112, 97, 100, 95, 109, 111, 100, 101, 61, 37, 115, 10, 0, 109, 111, 100, 101, 108, 0, 105, 110, 116, 108, 0, 75, 69, 89, 66, 79, 65, 82, 68, 58, 0, 109, 111, 100, 101, 108, 61, 37, 117, 32, 105, 110, 116, 101, 114, 110, 97, 116, 105, 111, 110, 97, 108, 61, 37, 100, 32, 107, 101, 121, 112, 97, 100, 61, 37, 115, 10, 0, 114, 116, 99, 0, 112, 114, 97, 109, 46, 100, 97, 116, 0, 114, 101, 97, 108, 116, 105, 109, 101, 0, 114, 111, 109, 100, 105, 115, 107, 0, 115, 116, 97, 114, 116, 0, 60, 110, 111, 119, 62, 0, 82, 84, 67, 58, 0, 102, 105, 108, 101, 61, 37, 115, 32, 114, 101, 97, 108, 116, 105, 109, 101, 61, 37, 100, 32, 115, 116, 97, 114, 116, 61, 37, 115, 32, 114, 111, 109, 100, 105, 115, 107, 61, 37, 100, 10, 0, 42, 42, 42, 32, 114, 101, 97, 100, 105, 110, 103, 32, 114, 116, 99, 32, 102, 105, 108, 101, 32, 102, 97, 105, 108, 101, 100, 10, 0, 115, 101, 114, 105, 97, 108, 0, 112, 111, 114, 116, 0, 109, 117, 108, 116, 105, 99, 104, 97, 114, 0, 83, 69, 82, 73, 65, 76, 58, 0, 112, 111, 114, 116, 61, 37, 117, 32, 109, 117, 108, 116, 105, 99, 104, 97, 114, 61, 37, 117, 32, 100, 114, 105, 118, 101, 114, 61, 37, 115, 10, 0, 42, 42, 42, 32, 98, 97, 100, 32, 112, 111, 114, 116, 32, 110, 117, 109, 98, 101, 114, 32, 40, 37, 117, 41, 10, 0, 42, 42, 42, 32, 99, 97, 110, 39, 116, 32, 111, 112, 101, 110, 32, 100, 114, 105, 118, 101, 114, 32, 40, 37, 115, 41, 10, 0, 115, 99, 99, 0, 83, 67, 67, 58, 0, 118, 105, 97, 0, 86, 73, 65, 58, 0, 109, 97, 105, 110, 32, 118, 105, 100, 101, 111, 32, 98, 117, 102, 102, 101, 114, 10, 0, 97, 108, 116, 101, 114, 110, 97, 116, 101, 32, 118, 105, 100, 101, 111, 32, 98, 117, 102, 102, 101, 114, 10, 0, 109, 97, 105, 110, 32, 115, 111, 117, 110, 100, 32, 98, 117, 102, 102, 101, 114, 10, 0, 97, 108, 116, 101, 114, 110, 97, 116, 101, 32, 115, 111, 117, 110, 100, 32, 98, 117, 102, 102, 101, 114, 10, 0, 54, 56, 48, 48, 48, 0, 67, 80, 85, 58, 0, 109, 111, 100, 101, 108, 61, 37, 115, 32, 115, 112, 101, 101, 100, 61, 37, 100, 10, 0, 42, 42, 42, 32, 117, 110, 107, 110, 111, 119, 110, 32, 99, 112, 117, 32, 109, 111, 100, 101, 108, 32, 40, 37, 115, 41, 10, 0, 109, 97, 99, 58, 32, 114, 101, 115, 101, 116, 10, 0, 54, 56, 48, 49, 48, 0, 54, 56, 48, 50, 48, 0, 42, 42, 42, 32, 82, 65, 77, 32, 110, 111, 116, 32, 102, 111, 117, 110, 100, 32, 97, 116, 32, 48, 48, 48, 48, 48, 48, 10, 0, 42, 42, 42, 32, 82, 79, 77, 32, 110, 111, 116, 32, 102, 111, 117, 110, 100, 32, 97, 116, 32, 52, 48, 48, 48, 48, 48, 10, 0, 109, 101, 109, 116, 101, 115, 116, 0, 100, 105, 115, 97, 98, 108, 105, 110, 103, 32, 109, 101, 109, 111, 114, 121, 32, 116, 101, 115, 116, 10, 0, 115, 121, 115, 116, 101, 109, 0, 109, 97, 99, 45, 112, 108, 117, 115, 0, 83, 89, 83, 84, 69, 77, 58, 0, 109, 111, 100, 101, 108, 61, 37, 115, 10, 0, 109, 97, 99, 45, 115, 101, 0, 109, 97, 99, 45, 99, 108, 97, 115, 115, 105, 99, 0, 42, 42, 42, 32, 117, 110, 107, 110, 111, 119, 110, 32, 109, 111, 100, 101, 108, 32, 40, 37, 115, 41, 10, 0, 115, 121, 115, 116, 101, 109, 32, 116, 111, 111, 32, 115, 108, 111, 119, 44, 32, 115, 107, 105, 112, 112, 105, 110, 103, 32, 49, 32, 115, 101, 99, 111, 110, 100, 10, 0, 112, 99, 101, 45, 109, 97, 99, 112, 108, 117, 115, 58, 32, 115, 101, 103, 109, 101, 110, 116, 97, 116, 105, 111, 110, 32, 102, 97, 117, 108, 116, 10, 0, 99, 112, 117, 0, 112, 99, 101, 45, 109, 97, 99, 112, 108, 117, 115, 58, 32, 115, 105, 103, 110, 97, 108, 32, 37, 100, 10, 0, 91, 37, 48, 54, 108, 88, 93, 32, 0, 37, 115, 58, 32, 98, 97, 100, 32, 100, 114, 105, 118, 101, 32, 110, 117, 109, 98, 101, 114, 32, 40, 37, 117, 41, 10, 0, 37, 115, 58, 32, 101, 114, 114, 111, 114, 32, 112, 97, 114, 115, 105, 110, 103, 32, 105, 110, 105, 32, 115, 116, 114, 105, 110, 103, 32, 40, 37, 115, 41, 10, 0, 99, 112, 117, 46, 109, 111, 100, 101, 108, 32, 61, 32, 34, 0, 34, 10, 0, 99, 112, 117, 46, 115, 112, 101, 101, 100, 32, 61, 32, 0, 109, 97, 99, 112, 108, 117, 115, 0, 67, 79, 78, 70, 73, 71, 58, 0, 102, 105, 108, 101, 61, 34, 37, 115, 34, 10, 0, 42, 42, 42, 32, 108, 111, 97, 100, 105, 110, 103, 32, 99, 111, 110, 102, 105, 103, 32, 102, 105, 108, 101, 32, 102, 97, 105, 108, 101, 100, 10, 0, 112, 99, 101, 45, 109, 97, 99, 112, 108, 117, 115, 32, 118, 101, 114, 115, 105, 111, 110, 32, 50, 48, 49, 55, 48, 52, 49, 52, 45, 55, 54, 49, 48, 102, 101, 98, 45, 109, 111, 100, 10, 67, 111, 112, 121, 114, 105, 103, 104, 116, 32, 40, 67, 41, 32, 50, 48, 48, 55, 45, 50, 48, 49, 50, 32, 72, 97, 109, 112, 97, 32, 72, 117, 103, 32, 60, 104, 97, 109, 112, 97, 64, 104, 97, 109, 112, 97, 46, 99, 104, 62, 10, 0, 112, 99, 101, 45, 109, 97, 99, 112, 108, 117, 115, 32, 118, 101, 114, 115, 105, 111, 110, 32, 50, 48, 49, 55, 48, 52, 49, 52, 45, 55, 54, 49, 48, 102, 101, 98, 45, 109, 111, 100, 10, 10, 67, 111, 112, 121, 114, 105, 103, 104, 116, 32, 40, 67, 41, 32, 50, 48, 48, 55, 45, 50, 48, 49, 50, 32, 72, 97, 109, 112, 97, 32, 72, 117, 103, 32, 60, 104, 97, 109, 112, 97, 64, 104, 97, 109, 112, 97, 46, 99, 104, 62, 10, 0, 112, 99, 101, 45, 109, 97, 99, 112, 108, 117, 115, 58, 32, 77, 97, 99, 105, 110, 116, 111, 115, 104, 32, 80, 108, 117, 115, 32, 101, 109, 117, 108, 97, 116, 111, 114, 0, 117, 115, 97, 103, 101, 58, 32, 112, 99, 101, 45, 109, 97, 99, 112, 108, 117, 115, 32, 91, 111, 112, 116, 105, 111, 110, 115, 93, 0, 104, 101, 108, 112, 0, 80, 114, 105, 110, 116, 32, 117, 115, 97, 103, 101, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 0, 100, 105, 115, 107, 45, 100, 101, 108, 97, 121, 45, 49, 0, 100, 101, 108, 97, 121, 0, 83, 101, 116, 32, 116, 104, 101, 32, 100, 105, 115, 107, 32, 100, 101, 108, 97, 121, 32, 102, 111, 114, 32, 100, 114, 105, 118, 101, 32, 49, 32, 91, 51, 48, 93, 0, 100, 105, 115, 107, 45, 100, 101, 108, 97, 121, 0, 100, 114, 105, 118, 101, 32, 100, 101, 108, 97, 121, 0, 83, 101, 116, 32, 116, 104, 101, 32, 100, 105, 115, 107, 32, 100, 101, 108, 97, 121, 32, 91, 51, 48, 93, 0, 99, 111, 110, 102, 105, 103, 0, 115, 116, 114, 105, 110, 103, 0, 83, 101, 116, 32, 116, 104, 101, 32, 99, 111, 110, 102, 105, 103, 32, 102, 105, 108, 101, 32, 110, 97, 109, 101, 32, 91, 110, 111, 110, 101, 93, 0, 65, 100, 100, 32, 97, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 32, 116, 111, 32, 116, 104, 101, 32, 115, 101, 97, 114, 99, 104, 32, 112, 97, 116, 104, 0, 105, 110, 105, 45, 112, 114, 101, 102, 105, 120, 0, 65, 100, 100, 32, 97, 110, 32, 105, 110, 105, 32, 115, 116, 114, 105, 110, 103, 32, 98, 101, 102, 111, 114, 101, 32, 116, 104, 101, 32, 99, 111, 110, 102, 105, 103, 32, 102, 105, 108, 101, 0, 105, 110, 105, 45, 97, 112, 112, 101, 110, 100, 0, 65, 100, 100, 32, 97, 110, 32, 105, 110, 105, 32, 115, 116, 114, 105, 110, 103, 32, 97, 102, 116, 101, 114, 32, 116, 104, 101, 32, 99, 111, 110, 102, 105, 103, 32, 102, 105, 108, 101, 0, 83, 101, 116, 32, 116, 104, 101, 32, 108, 111, 103, 32, 102, 105, 108, 101, 32, 110, 97, 109, 101, 32, 91, 110, 111, 110, 101, 93, 0, 83, 101, 116, 32, 116, 104, 101, 32, 67, 80, 85, 32, 109, 111, 100, 101, 108, 0, 113, 117, 105, 101, 116, 0, 83, 101, 116, 32, 116, 104, 101, 32, 108, 111, 103, 32, 108, 101, 118, 101, 108, 32, 116, 111, 32, 101, 114, 114, 111, 114, 32, 91, 110, 111, 93, 0, 114, 117, 110, 0, 83, 116, 97, 114, 116, 32, 114, 117, 110, 110, 105, 110, 103, 32, 105, 109, 109, 101, 100, 105, 97, 116, 101, 108, 121, 32, 91, 110, 111, 93, 0, 110, 111, 45, 109, 111, 110, 105, 116, 111, 114, 0, 78, 101, 118, 101, 114, 32, 115, 116, 111, 112, 32, 114, 117, 110, 110, 105, 110, 103, 32, 91, 110, 111, 93, 0, 115, 112, 101, 101, 100, 0, 105, 110, 116, 0, 83, 101, 116, 32, 116, 104, 101, 32, 67, 80, 85, 32, 115, 112, 101, 101, 100, 0, 83, 101, 116, 32, 116, 104, 101, 32, 116, 101, 114, 109, 105, 110, 97, 108, 32, 100, 101, 118, 105, 99, 101, 0, 118, 101, 114, 98, 111, 115, 101, 0, 83, 101, 116, 32, 116, 104, 101, 32, 108, 111, 103, 32, 108, 101, 118, 101, 108, 32, 116, 111, 32, 100, 101, 98, 117, 103, 32, 91, 110, 111, 93, 0, 118, 101, 114, 115, 105, 111, 110, 0, 80, 114, 105, 110, 116, 32, 118, 101, 114, 115, 105, 111, 110, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 0, 101, 109, 117, 46, 99, 112, 117, 46, 109, 111, 100, 101, 108, 0, 101, 109, 117, 46, 100, 105, 115, 107, 46, 99, 111, 109, 109, 105, 116, 0, 101, 109, 117, 46, 100, 105, 115, 107, 46, 101, 106, 101, 99, 116, 0, 101, 109, 117, 46, 100, 105, 115, 107, 46, 105, 110, 115, 101, 114, 116, 0, 101, 109, 117, 46, 100, 105, 115, 107, 46, 114, 111, 0, 101, 109, 117, 46, 100, 105, 115, 107, 46, 114, 119, 0, 101, 109, 117, 46, 105, 119, 109, 46, 114, 111, 0, 101, 109, 117, 46, 105, 119, 109, 46, 114, 119, 0, 101, 109, 117, 46, 105, 119, 109, 46, 115, 116, 97, 116, 117, 115, 0, 101, 109, 117, 46, 112, 97, 117, 115, 101, 0, 101, 109, 117, 46, 114, 101, 97, 108, 116, 105, 109, 101, 0, 101, 109, 117, 46, 114, 101, 97, 108, 116, 105, 109, 101, 46, 116, 111, 103, 103, 108, 101, 0, 101, 109, 117, 46, 115, 101, 114, 112, 111, 114, 116, 46, 100, 114, 105, 118, 101, 114, 0, 101, 109, 117, 46, 115, 101, 114, 112, 111, 114, 116, 46, 102, 105, 108, 101, 0, 101, 109, 117, 46, 118, 105, 100, 101, 111, 46, 98, 114, 105, 103, 104, 116, 110, 101, 115, 115, 0, 109, 97, 99, 46, 105, 110, 115, 101, 114, 116, 0, 73, 87, 77, 32, 100, 114, 105, 118, 101, 32, 37, 117, 58, 32, 108, 111, 99, 107, 101, 100, 61, 37, 100, 10, 0, 115, 101, 116, 116, 105, 110, 103, 32, 97, 108, 108, 32, 105, 119, 109, 32, 100, 114, 105, 118, 101, 115, 32, 116, 111, 32, 114, 101, 97, 100, 47, 119, 114, 105, 116, 101, 10, 0, 115, 101, 116, 116, 105, 110, 103, 32, 105, 119, 109, 32, 100, 114, 105, 118, 101, 32, 37, 108, 117, 32, 116, 111, 32, 114, 101, 97, 100, 47, 119, 114, 105, 116, 101, 10, 0, 115, 101, 116, 116, 105, 110, 103, 32, 97, 108, 108, 32, 105, 119, 109, 32, 100, 114, 105, 118, 101, 115, 32, 116, 111, 32, 114, 101, 97, 100, 45, 111, 110, 108, 121, 10, 0, 115, 101, 116, 116, 105, 110, 103, 32, 105, 119, 109, 32, 100, 114, 105, 118, 101, 32, 37, 108, 117, 32, 116, 111, 32, 114, 101, 97, 100, 45, 111, 110, 108, 121, 10, 0, 115, 101, 116, 116, 105, 110, 103, 32, 114, 101, 97, 100, 47, 119, 114, 105, 116, 101, 32, 100, 114, 105, 118, 101, 32, 37, 108, 117, 10, 0, 115, 101, 116, 116, 105, 110, 103, 32, 114, 101, 97, 100, 111, 110, 108, 121, 32, 100, 114, 105, 118, 101, 32, 37, 108, 117, 10, 0, 42, 42, 42, 32, 100, 105, 115, 107, 32, 101, 106, 101, 99, 116, 32, 101, 114, 114, 111, 114, 58, 32, 98, 97, 100, 32, 100, 114, 105, 118, 101, 32, 40, 37, 115, 41, 10, 0, 42, 42, 42, 32, 100, 105, 115, 107, 32, 101, 106, 101, 99, 116, 32, 101, 114, 114, 111, 114, 58, 32, 110, 111, 32, 115, 117, 99, 104, 32, 100, 105, 115, 107, 32, 40, 37, 108, 117, 41, 10, 0, 101, 106, 101, 99, 116, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 108, 117, 10, 0, 97, 108, 108, 0, 99, 111, 109, 109, 105, 116, 105, 110, 103, 32, 97, 108, 108, 32, 100, 114, 105, 118, 101, 115, 10, 0, 42, 42, 42, 32, 99, 111, 109, 109, 105, 116, 32, 102, 97, 105, 108, 101, 100, 32, 102, 111, 114, 32, 97, 116, 32, 108, 101, 97, 115, 116, 32, 111, 110, 101, 32, 100, 105, 115, 107, 10, 0, 42, 42, 42, 32, 99, 111, 109, 109, 105, 116, 32, 101, 114, 114, 111, 114, 58, 32, 98, 97, 100, 32, 100, 114, 105, 118, 101, 32, 40, 37, 115, 41, 10, 0, 99, 111, 109, 109, 105, 116, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 37, 117, 10, 0, 42, 42, 42, 32, 99, 111, 109, 109, 105, 116, 32, 101, 114, 114, 111, 114, 32, 102, 111, 114, 32, 100, 114, 105, 118, 101, 32, 37, 117, 10, 0, 117, 110, 107, 110, 111, 119, 110, 32, 67, 80, 85, 32, 109, 111, 100, 101, 108, 32, 40, 37, 115, 41, 10], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE + 25144); allocate([0, 80, 67, 69, 32, 32, 32, 32, 32, 0, 80, 67, 69, 68, 73, 83, 75, 32, 32, 32, 32, 32, 32, 32, 32, 32, 0, 115, 99, 115, 105, 58, 32, 103, 101, 116, 32, 32, 56, 58, 32, 37, 48, 52, 108, 88, 32, 45, 62, 32, 37, 48, 50, 88, 10, 0, 115, 99, 115, 105, 58, 32, 115, 101, 116, 32, 32, 56, 58, 32, 37, 48, 52, 108, 88, 32, 60, 45, 32, 37, 48, 50, 88, 10, 0, 115, 99, 115, 105, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 99, 111, 109, 109, 97, 110, 100, 32, 40, 37, 48, 50, 88, 41, 10, 0, 115, 99, 115, 105, 58, 32, 119, 114, 105, 116, 101, 32, 98, 108, 111, 99, 107, 32, 99, 111, 117, 110, 116, 32, 37, 117, 10, 0, 115, 99, 115, 105, 58, 32, 119, 114, 105, 116, 101, 32, 115, 105, 122, 101, 32, 109, 105, 115, 109, 97, 116, 99, 104, 32, 40, 37, 117, 32, 47, 32, 37, 117, 41, 10, 0, 115, 99, 115, 105, 58, 32, 119, 114, 105, 116, 101, 32, 101, 114, 114, 111, 114, 10, 0, 115, 99, 115, 105, 58, 32, 116, 111, 111, 32, 109, 97, 110, 121, 32, 98, 108, 111, 99, 107, 115, 32, 40, 37, 117, 41, 10, 0, 115, 99, 115, 105, 58, 32, 114, 101, 97, 100, 32, 101, 114, 114, 111, 114, 32, 97, 116, 32, 37, 108, 117, 32, 43, 32, 37, 108, 117, 10, 0, 115, 116, 111, 112, 32, 109, 111, 116, 111, 114, 0, 115, 116, 97, 114, 116, 32, 109, 111, 116, 111, 114, 0, 101, 106, 101, 99, 116, 32, 109, 101, 100, 105, 97, 0, 108, 111, 97, 100, 32, 109, 101, 100, 105, 97, 0, 115, 99, 115, 105, 58, 32, 115, 116, 97, 114, 116, 47, 115, 116, 111, 112, 32, 117, 110, 105, 116, 32, 37, 117, 32, 40, 37, 115, 41, 10, 0, 65, 80, 80, 76, 69, 32, 67, 79, 77, 80, 85, 84, 69, 82, 44, 32, 73, 78, 67, 0, 115, 99, 115, 105, 58, 32, 109, 111, 100, 101, 32, 115, 101, 110, 115, 101, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 109, 111, 100, 101, 32, 112, 97, 103, 101, 32, 40, 37, 48, 50, 88, 41, 10, 0, 115, 116, 100, 105, 111, 58, 102, 105, 108, 101, 61, 0, 83, 79, 78, 89, 58, 0, 80, 67, 69, 32, 82, 79, 77, 32, 101, 120, 116, 101, 110, 115, 105, 111, 110, 32, 110, 111, 116, 32, 102, 111, 117, 110, 100, 10, 0, 80, 67, 69, 32, 82, 79, 77, 32, 101, 120, 116, 101, 110, 115, 105, 111, 110, 32, 97, 116, 32, 48, 120, 37, 48, 54, 108, 120, 10, 0, 115, 111, 110, 121, 32, 100, 114, 105, 118, 101, 114, 32, 110, 111, 116, 32, 102, 111, 117, 110, 100, 10, 0, 115, 111, 110, 121, 32, 100, 114, 105, 118, 101, 114, 32, 97, 116, 32, 48, 120, 37, 48, 54, 108, 120, 10, 0, 105, 110, 115, 101, 114, 116, 32, 100, 114, 105, 118, 101, 32, 37, 117, 10, 0, 115, 111, 110, 121, 58, 32, 115, 116, 97, 116, 117, 115, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 40, 99, 115, 61, 48, 120, 37, 48, 52, 120, 41, 10, 0, 115, 111, 110, 121, 58, 32, 99, 111, 110, 116, 114, 111, 108, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 40, 111, 112, 99, 111, 100, 101, 61, 48, 120, 37, 48, 52, 120, 41, 10, 0, 115, 111, 110, 121, 58, 32, 119, 114, 105, 116, 101, 32, 101, 114, 114, 111, 114, 32, 97, 116, 32, 37, 117, 47, 37, 117, 47, 37, 117, 10, 0, 115, 111, 110, 121, 58, 32, 99, 104, 115, 32, 101, 114, 114, 111, 114, 32, 40, 98, 108, 107, 61, 37, 108, 117, 44, 32, 108, 98, 97, 61, 37, 108, 117, 41, 10, 0, 115, 111, 110, 121, 58, 32, 102, 111, 114, 109, 97, 116, 116, 101, 100, 32, 100, 105, 115, 107, 32, 40, 37, 108, 117, 32, 98, 108, 111, 99, 107, 115, 41, 10, 0, 115, 111, 110, 121, 58, 32, 112, 114, 105, 109, 101, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 40, 116, 114, 97, 112, 61, 48, 120, 37, 48, 52, 120, 41, 10, 0, 115, 111, 110, 121, 58, 32, 110, 111, 110, 45, 97, 108, 105, 103, 110, 101, 100, 32, 119, 114, 105, 116, 101, 10, 0, 115, 111, 110, 121, 58, 32, 119, 114, 105, 116, 101, 32, 101, 114, 114, 111, 114, 10, 0, 115, 111, 110, 121, 58, 32, 110, 111, 110, 45, 97, 108, 105, 103, 110, 101, 100, 32, 114, 101, 97, 100, 10, 0, 115, 111, 110, 121, 58, 32, 114, 101, 97, 100, 32, 101, 114, 114, 111, 114, 10, 0, 115, 111, 110, 121, 58, 32, 114, 101, 97, 100, 32, 101, 114, 114, 111, 114, 32, 97, 116, 32, 37, 117, 47, 37, 117, 47, 37, 117, 10, 0, 79, 112, 101, 110, 0, 67, 108, 111, 115, 101, 0, 82, 101, 97, 100, 0, 87, 114, 105, 116, 101, 0, 67, 111, 110, 116, 114, 111, 108, 0, 83, 116, 97, 116, 117, 115, 0, 75, 105, 108, 108, 73, 79, 0, 71, 101, 116, 86, 111, 108, 73, 110, 102, 111, 0, 67, 114, 101, 97, 116, 101, 0, 79, 112, 101, 110, 82, 70, 0, 82, 101, 110, 97, 109, 101, 0, 71, 101, 116, 70, 105, 108, 101, 73, 110, 102, 111, 0, 83, 101, 116, 70, 105, 108, 101, 73, 110, 102, 111, 0, 85, 110, 109, 111, 117, 110, 116, 86, 111, 108, 0, 77, 111, 117, 110, 116, 86, 111, 108, 0, 65, 108, 108, 111, 99, 97, 116, 101, 0, 71, 101, 116, 69, 79, 70, 0, 83, 101, 116, 69, 79, 70, 0, 70, 108, 117, 115, 104, 86, 111, 108, 0, 71, 101, 116, 86, 111, 108, 0, 83, 101, 116, 86, 111, 108, 0, 73, 110, 105, 116, 81, 117, 101, 117, 101, 0, 69, 106, 101, 99, 116, 0, 71, 101, 116, 70, 80, 111, 115, 0, 73, 110, 105, 116, 90, 111, 110, 101, 0, 71, 101, 116, 90, 111, 110, 101, 0, 83, 101, 116, 90, 111, 110, 101, 0, 70, 114, 101, 101, 77, 101, 109, 0, 77, 97, 120, 77, 101, 109, 0, 78, 101, 119, 80, 116, 114, 0, 68, 105, 115, 112, 111, 115, 80, 116, 114, 0, 83, 101, 116, 80, 116, 114, 83, 105, 122, 101, 0, 71, 101, 116, 80, 116, 114, 83, 105, 122, 101, 0, 78, 101, 119, 72, 97, 110, 100, 108, 101, 0, 68, 105, 115, 112, 111, 115, 72, 97, 110, 100, 108, 101, 0, 83, 101, 116, 72, 97, 110, 100, 108, 101, 83, 105, 122, 101, 0, 71, 101, 116, 72, 97, 110, 100, 108, 101, 83, 105, 122, 101, 0, 72, 97, 110, 100, 108, 101, 90, 111, 110, 101, 0, 82, 101, 97, 108, 108, 111, 99, 72, 97, 110, 100, 108, 101, 0, 82, 101, 99, 111, 118, 101, 114, 72, 97, 110, 100, 108, 101, 0, 72, 76, 111, 99, 107, 0, 72, 85, 110, 108, 111, 99, 107, 0, 69, 109, 112, 116, 121, 72, 97, 110, 100, 108, 101, 0, 73, 110, 105, 116, 65, 112, 112, 108, 90, 111, 110, 101, 0, 83, 101, 116, 65, 112, 112, 108, 76, 105, 109, 105, 116, 0, 66, 108, 111, 99, 107, 77, 111, 118, 101, 0, 80, 111, 115, 116, 69, 118, 101, 110, 116, 0, 79, 83, 69, 118, 101, 110, 116, 65, 118, 97, 105, 108, 0, 71, 101, 116, 79, 83, 69, 118, 101, 110, 116, 0, 70, 108, 117, 115, 104, 69, 118, 101, 110, 116, 115, 0, 86, 73, 110, 115, 116, 97, 108, 108, 0, 86, 82, 101, 109, 111, 118, 101, 0, 79, 102, 102, 108, 105, 110, 101, 0, 77, 111, 114, 101, 77, 97, 115, 116, 101, 114, 115, 0, 87, 114, 105, 116, 101, 80, 97, 114, 97, 109, 0, 82, 101, 97, 100, 68, 97, 116, 101, 84, 105, 109, 101, 0, 83, 101, 116, 68, 97, 116, 101, 84, 105, 109, 101, 0, 68, 101, 108, 97, 121, 0, 67, 109, 112, 83, 116, 114, 105, 110, 103, 0, 68, 114, 118, 114, 73, 110, 115, 116, 97, 108, 108, 0, 68, 114, 118, 114, 82, 101, 109, 111, 118, 101, 0, 73, 110, 105, 116, 85, 116, 105, 108, 0, 82, 101, 115, 114, 118, 77, 101, 109, 0, 83, 101, 116, 70, 105, 108, 76, 111, 99, 107, 0, 82, 115, 116, 70, 105, 108, 76, 111, 99, 107, 0, 83, 101, 116, 70, 105, 108, 84, 121, 112, 101, 0, 83, 101, 116, 70, 80, 111, 115, 0, 70, 108, 117, 115, 104, 70, 105, 108, 101, 0, 71, 101, 116, 84, 114, 97, 112, 65, 100, 100, 114, 101, 115, 115, 0, 83, 101, 116, 84, 114, 97, 112, 65, 100, 100, 114, 101, 115, 115, 0, 80, 116, 114, 90, 111, 110, 101, 0, 72, 80, 117, 114, 103, 101, 0, 72, 78, 111, 80, 117, 114, 103, 101, 0, 83, 101, 116, 71, 114, 111, 119, 90, 111, 110, 101, 0, 67, 111, 109, 112, 97, 99, 116, 77, 101, 109, 0, 80, 117, 114, 103, 101, 77, 101, 109, 0, 65, 100, 100, 68, 114, 105, 118, 101, 0, 82, 68, 114, 118, 114, 73, 110, 115, 116, 97, 108, 108, 0, 82, 101, 108, 83, 116, 114, 105, 110, 103, 0, 82, 101, 97, 100, 88, 80, 114, 97, 109, 0, 87, 114, 105, 116, 101, 88, 80, 114, 97, 109, 0, 85, 112, 114, 83, 116, 114, 105, 110, 103, 0, 83, 116, 114, 105, 112, 65, 100, 100, 114, 101, 115, 115, 0, 76, 111, 119, 101, 114, 84, 101, 120, 116, 0, 83, 101, 116, 65, 112, 112, 66, 97, 115, 101, 0, 73, 110, 115, 84, 105, 109, 101, 0, 82, 109, 118, 84, 105, 109, 101, 0, 80, 114, 105, 109, 101, 84, 105, 109, 101, 0, 80, 111, 119, 101, 114, 79, 102, 102, 0, 77, 101, 109, 111, 114, 121, 68, 105, 115, 112, 97, 116, 99, 104, 0, 83, 119, 97, 112, 77, 77, 85, 77, 111, 100, 101, 0, 78, 77, 73, 110, 115, 116, 97, 108, 108, 0, 78, 77, 82, 101, 109, 111, 118, 101, 0, 72, 70, 83, 68, 105, 115, 112, 97, 116, 99, 104, 0, 77, 97, 120, 66, 108, 111, 99, 107, 0, 80, 117, 114, 103, 101, 83, 112, 97, 99, 101, 0, 77, 97, 120, 65, 112, 112, 108, 90, 111, 110, 101, 0, 77, 111, 118, 101, 72, 72, 105, 0, 83, 116, 97, 99, 107, 83, 112, 97, 99, 101, 0, 78, 101, 119, 69, 109, 112, 116, 121, 72, 97, 110, 100, 108, 101, 0, 72, 83, 101, 116, 82, 66, 105, 116, 0, 72, 67, 108, 114, 82, 66, 105, 116, 0, 72, 71, 101, 116, 83, 116, 97, 116, 101, 0, 72, 83, 101, 116, 83, 116, 97, 116, 101, 0, 73, 110, 105, 116, 70, 83, 0, 73, 110, 105, 116, 69, 118, 101, 110, 116, 115, 0, 83, 108, 111, 116, 77, 97, 110, 97, 103, 101, 114, 0, 83, 108, 111, 116, 86, 73, 110, 115, 116, 97, 108, 108, 0, 83, 108, 111, 116, 86, 82, 101, 109, 111, 118, 101, 0, 65, 116, 116, 97, 99, 104, 86, 66, 76, 0, 68, 111, 86, 66, 76, 84, 97, 115, 107, 0, 83, 73, 110, 116, 73, 110, 115, 116, 97, 108, 108, 0, 83, 73, 110, 116, 82, 101, 109, 111, 118, 101, 0, 67, 111, 117, 110, 116, 65, 68, 66, 115, 0, 71, 101, 116, 73, 110, 100, 65, 68, 66, 0, 71, 101, 116, 65, 68, 66, 73, 110, 102, 111, 0, 83, 101, 116, 65, 68, 66, 73, 110, 102, 111, 0, 65, 68, 66, 82, 101, 73, 110, 105, 116, 0, 65, 68, 66, 79, 112, 0, 71, 101, 116, 68, 101, 102, 97, 117, 108, 116, 83, 116, 97, 114, 116, 117, 112, 0, 83, 101, 116, 68, 101, 102, 97, 117, 108, 116, 83, 116, 97, 114, 116, 117, 112, 0, 73, 110, 116, 101, 114, 110, 97, 108, 87, 97, 105, 116, 0, 71, 101, 116, 86, 105, 100, 101, 111, 68, 101, 102, 97, 117, 108, 116, 0, 83, 101, 116, 86, 105, 100, 101, 111, 68, 101, 102, 97, 117, 108, 116, 0, 68, 84, 73, 110, 115, 116, 97, 108, 108, 0, 83, 101, 116, 79, 83, 68, 101, 102, 97, 117, 108, 116, 0, 71, 101, 116, 79, 83, 68, 101, 102, 97, 117, 108, 116, 0, 80, 77, 103, 114, 79, 112, 0, 73, 79, 80, 73, 110, 102, 111, 65, 99, 99, 101, 115, 115, 0, 73, 79, 80, 77, 115, 103, 82, 101, 113, 117, 101, 115, 116, 0, 73, 79, 80, 77, 111, 118, 101, 68, 97, 116, 97, 0, 83, 108, 101, 101, 112, 0, 67, 111, 109, 109, 84, 111, 111, 108, 98, 111, 120, 68, 105, 115, 112, 97, 116, 99, 104, 0, 68, 101, 98, 117, 103, 85, 116, 105, 108, 0, 68, 101, 102, 101, 114, 85, 115, 101, 114, 70, 110, 0, 83, 121, 115, 69, 110, 118, 105, 114, 111, 110, 115, 0, 84, 114, 97, 110, 115, 108, 97, 116, 101, 50, 52, 116, 111, 51, 50, 0, 69, 103, 114, 101, 116, 68, 105, 115, 112, 97, 116, 99, 104, 0, 72, 87, 80, 114, 105, 118, 0, 83, 111, 117, 110, 100, 68, 105, 115, 112, 97, 116, 99, 104, 0, 83, 110, 100, 68, 105, 115, 112, 111, 115, 101, 67, 104, 97, 110, 110, 101, 108, 0, 83, 110, 100, 65, 100, 100, 77, 111, 100, 105, 102, 105, 101, 114, 0, 83, 110, 100, 68, 111, 67, 111, 109, 109, 97, 110, 100, 0, 83, 110, 100, 68, 111, 73, 109, 109, 101, 100, 105, 97, 116, 101, 0, 83, 110, 100, 80, 108, 97, 121, 0, 83, 110, 100, 67, 111, 110, 116, 114, 111, 108, 0, 83, 110, 100, 78, 101, 119, 67, 104, 97, 110, 110, 101, 108, 0, 73, 110, 105, 116, 80, 114, 111, 99, 77, 101, 110, 117, 0, 71, 101, 116, 67, 86, 97, 114, 105, 97, 110, 116, 0, 71, 101, 116, 87, 86, 97, 114, 105, 97, 110, 116, 0, 80, 111, 112, 85, 112, 77, 101, 110, 117, 83, 101, 108, 101, 99, 116, 0, 82, 71, 101, 116, 82, 101, 115, 111, 117, 114, 99, 101, 0, 67, 111, 117, 110, 116, 49, 82, 101, 115, 111, 117, 114, 99, 101, 115, 0, 71, 101, 116, 49, 73, 120, 82, 101, 115, 111, 117, 114, 99, 101, 0, 71, 101, 116, 49, 73, 120, 84, 121, 112, 101, 0, 85, 110, 105, 113, 117, 101, 49, 73, 68, 0, 84, 69, 83, 101, 108, 86, 105, 101, 119, 0, 84, 69, 80, 105, 110, 83, 99, 114, 111, 108, 108, 0, 84, 69, 65, 117, 116, 111, 86, 105, 101, 119, 0, 83, 101, 116, 70, 114, 97, 99, 116, 69, 110, 97, 98, 108, 101, 0, 83, 67, 83, 73, 68, 105, 115, 112, 97, 116, 99, 104, 0, 80, 97, 99, 107, 56, 0, 67, 111, 112, 121, 77, 97, 115, 107, 0, 70, 105, 120, 65, 116, 97, 110, 50, 0, 88, 77, 117, 110, 103, 101, 114, 0, 72, 79, 112, 101, 110, 82, 101, 115, 70, 105, 108, 101, 0, 72, 67, 114, 101, 97, 116, 101, 82, 101, 115, 70, 105, 108, 101, 0, 67, 111, 117, 110, 116, 49, 84, 121, 112, 101, 115, 0, 73, 110, 118, 97, 108, 77, 101, 110, 117, 66, 97, 114, 0, 71, 101, 116, 49, 82, 101, 115, 111, 117, 114, 99, 101, 0, 71, 101, 116, 49, 78, 97, 109, 101, 100, 82, 101, 115, 111, 117, 114, 99, 101, 0, 77, 97, 120, 83, 105, 122, 101, 82, 115, 114, 99, 0, 82, 101, 115, 111, 117, 114, 99, 101, 68, 105, 115, 112, 97, 116, 99, 104, 0, 65, 108, 105, 97, 115, 68, 105, 115, 112, 97, 116, 99, 104, 0, 73, 110, 115, 77, 101, 110, 117, 73, 116, 101, 109, 0, 72, 105, 100, 101, 68, 73, 116, 101, 109, 0, 83, 104, 111, 119, 68, 73, 116, 101, 109, 0, 76, 97, 121, 101, 114, 68, 105, 115, 112, 97, 116, 99, 104, 0, 67, 111, 109, 112, 111, 110, 101, 110, 116, 68, 105, 115, 112, 97, 116, 99, 104, 0, 80, 97, 99, 107, 57, 0, 80, 97, 99, 107, 49, 48, 0, 80, 97, 99, 107, 49, 49, 0, 80, 97, 99, 107, 49, 50, 0, 80, 97, 99, 107, 49, 51, 0, 80, 97, 99, 107, 49, 52, 0, 80, 97, 99, 107, 49, 53, 0, 83, 99, 114, 110, 66, 105, 116, 77, 97, 112, 0, 83, 101, 116, 70, 83, 99, 97, 108, 101, 68, 105, 115, 97, 98, 108, 101, 0, 70, 111, 110, 116, 77, 101, 116, 114, 105, 99, 115, 0, 71, 101, 116, 77, 97, 115, 107, 84, 97, 98, 108, 101, 0, 77, 101, 97, 115, 117, 114, 101, 84, 101, 120, 116, 0, 67, 97, 108, 99, 77, 97, 115, 107, 0, 83, 101, 101, 100, 70, 105, 108, 108, 0, 90, 111, 111, 109, 87, 105, 110, 100, 111, 119, 0, 84, 114, 97, 99, 107, 66, 111, 120, 0, 84, 69, 71, 101, 116, 79, 102, 102, 115, 101, 116, 0, 84, 69, 68, 105, 115, 112, 97, 116, 99, 104, 0, 84, 69, 83, 116, 121, 108, 101, 78, 101, 119, 0, 76, 111, 110, 103, 50, 70, 105, 120, 0, 70, 105, 120, 50, 76, 111, 110, 103, 0, 70, 105, 120, 50, 70, 114, 97, 99, 0, 70, 114, 97, 99, 50, 70, 105, 120, 0, 70, 105, 120, 50, 88, 0, 88, 50, 70, 105, 120, 0, 70, 114, 97, 99, 50, 88, 0, 88, 50, 70, 114, 97, 99, 0, 70, 114, 97, 99, 67, 111, 115, 0, 70, 114, 97, 99, 83, 105, 110, 0, 70, 114, 97, 99, 83, 113, 114, 116, 0, 70, 114, 97, 99, 77, 117, 108, 0, 70, 114, 97, 99, 68, 105, 118, 0, 85, 115, 101, 114, 68, 101, 108, 97, 121, 0, 70, 105, 120, 68, 105, 118, 0, 71, 101, 116, 73, 116, 101, 109, 67, 109, 100, 0, 83, 101, 116, 73, 116, 101, 109, 67, 109, 100, 0, 73, 110, 105, 116, 67, 117, 114, 115, 111, 114, 0, 83, 101, 116, 67, 117, 114, 115, 111, 114, 0, 72, 105, 100, 101, 67, 117, 114, 115, 111, 114, 0, 83, 104, 111, 119, 67, 117, 114, 115, 111, 114, 0, 70, 111, 110, 116, 68, 105, 115, 112, 97, 116, 99, 104, 0, 83, 104, 105, 101, 108, 100, 67, 117, 114, 115, 111, 114, 0, 79, 98, 115, 99, 117, 114, 101, 67, 117, 114, 115, 111, 114, 0, 66, 105, 116, 65, 110, 100, 0, 66, 105, 116, 88, 111, 114, 0, 66, 105, 116, 78, 111, 116, 0, 66, 105, 116, 79, 114, 0, 66, 105, 116, 83, 104, 105, 102, 116, 0, 66, 105, 116, 84, 115, 116, 0, 66, 105, 116, 83, 101, 116, 0, 66, 105, 116, 67, 108, 114, 0, 87, 97, 105, 116, 78, 101, 120, 116, 69, 118, 101, 110, 116, 0, 82, 97, 110, 100, 111, 109, 0, 70, 111, 114, 101, 67, 111, 108, 111, 114, 0, 66, 97, 99, 107, 67, 111, 108, 111, 114, 0, 67, 111, 108, 111, 114, 66, 105, 116, 0, 71, 101, 116, 80, 105, 120, 101, 108, 0, 83, 116, 117, 102, 102, 72, 101, 120, 0, 76, 111, 110, 103, 77, 117, 108, 0, 70, 105, 120, 77, 117, 108, 0, 70, 105, 120, 82, 97, 116, 105, 111, 0, 72, 105, 87, 111, 114, 100, 0, 76, 111, 87, 111, 114, 100, 0, 70, 105, 120, 82, 111, 117, 110, 100, 0, 73, 110, 105, 116, 80, 111, 114, 116, 0, 73, 110, 105, 116, 71, 114, 97, 102, 0, 79, 112, 101, 110, 80, 111, 114, 116, 0, 76, 111, 99, 97, 108, 84, 111, 71, 108, 111, 98, 97, 108, 0, 71, 108, 111, 98, 97, 108, 84, 111, 76, 111, 99, 97, 108, 0, 71, 114, 97, 102, 68, 101, 118, 105, 99, 101, 0, 83, 101, 116, 80, 111, 114, 116, 0, 71, 101, 116, 80, 111, 114, 116, 0, 83, 101, 116, 80, 66, 105, 116, 115, 0, 80, 111, 114, 116, 83, 105, 122, 101, 0, 77, 111, 118, 101, 80, 111, 114, 116, 84, 111, 0, 83, 101, 116, 79, 114, 105, 103, 105, 110, 0, 83, 101, 116, 67, 108, 105, 112, 0, 71, 101, 116, 67, 108, 105, 112, 0, 67, 108, 105, 112, 82, 101, 99, 116, 0, 66, 97, 99, 107, 80, 97, 116, 0, 67, 108, 111, 115, 101, 80, 111, 114, 116, 0, 67, 108, 111, 115, 101, 67, 80, 111, 114, 116, 0, 65, 100, 100, 80, 116, 0, 83, 117, 98, 80, 116, 0, 83, 101, 116, 80, 116, 0, 69, 113, 117, 97, 108, 80, 116, 0, 83, 116, 100, 84, 101, 120, 116, 0, 68, 114, 97, 119, 67, 104, 97, 114, 0, 68, 114, 97, 119, 83, 116, 114, 105, 110, 103, 0, 68, 114, 97, 119, 84, 101, 120, 116, 0, 84, 101, 120, 116, 87, 105, 100, 116, 104, 0, 84, 101, 120, 116, 70, 111, 110, 116, 0, 84, 101, 120, 116, 70, 97, 99, 101, 0, 84, 101, 120, 116, 77, 111, 100, 101, 0, 84, 101, 120, 116, 83, 105, 122, 101, 0, 71, 101, 116, 70, 111, 110, 116, 73, 110, 102, 111, 0, 83, 116, 114, 105, 110, 103, 87, 105, 100, 116, 104, 0, 67, 104, 97, 114, 87, 105, 100, 116, 104, 0, 83, 112, 97, 99, 101, 69, 120, 116, 114, 97, 0, 79, 83, 68, 105, 115, 112, 97, 116, 99, 104, 0, 83, 116, 100, 76, 105, 110, 101, 0, 76, 105, 110, 101, 84, 111, 0, 76, 105, 110, 101, 0, 77, 111, 118, 101, 84, 111, 0, 77, 111, 118, 101, 0, 83, 104, 117, 116, 100, 111, 119, 110, 0, 72, 105, 100, 101, 80, 101, 110, 0, 83, 104, 111, 119, 80, 101, 110, 0, 71, 101, 116, 80, 101, 110, 83, 116, 97, 116, 101, 0, 83, 101, 116, 80, 101, 110, 83, 116, 97, 116, 101, 0, 71, 101, 116, 80, 101, 110, 0, 80, 101, 110, 83, 105, 122, 101, 0, 80, 101, 110, 77, 111, 100, 101, 0, 80, 101, 110, 80, 97, 116, 0, 80, 101, 110, 78, 111, 114, 109, 97, 108, 0, 85, 110, 105, 109, 112, 108, 101, 109, 101, 110, 116, 101, 100, 0, 83, 116, 100, 82, 101, 99, 116, 0, 70, 114, 97, 109, 101, 82, 101, 99, 116, 0, 80, 97, 105, 110, 116, 82, 101, 99, 116, 0, 69, 114, 97, 115, 101, 82, 101, 99, 116, 0, 73, 110, 118, 101, 114, 82, 101, 99, 116, 0, 70, 105, 108, 108, 82, 101, 99, 116, 0, 69, 113, 117, 97, 108, 82, 101, 99, 116, 0, 83, 101, 116, 82, 101, 99, 116, 0, 79, 102, 102, 115, 101, 116, 82, 101, 99, 116, 0, 73, 110, 115, 101, 116, 82, 101, 99, 116, 0, 83, 101, 99, 116, 82, 101, 99, 116, 0, 85, 110, 105, 111, 110, 82, 101, 99, 116, 0, 80, 116, 50, 82, 101, 99, 116, 0, 80, 116, 73, 110, 82, 101, 99, 116, 0, 69, 109, 112, 116, 121, 82, 101, 99, 116, 0, 83, 116, 100, 82, 82, 101, 99, 116, 0, 70, 114, 97, 109, 101, 82, 111, 117, 110, 100, 82, 101, 99, 116, 0, 80, 97, 105, 110, 116, 82, 111, 117, 110, 100, 82, 101, 99, 116, 0, 69, 114, 97, 115, 101, 82, 111, 117, 110, 100, 82, 101, 99, 116, 0, 73, 110, 118, 101, 114, 82, 111, 117, 110, 100, 82, 101, 99, 116, 0, 70, 105, 108, 108, 82, 111, 117, 110, 100, 82, 101, 99, 116, 0, 83, 99, 114, 105, 112, 116, 85, 116, 105, 108, 0, 83, 116, 100, 79, 118, 97, 108, 0, 70, 114, 97, 109, 101, 79, 118, 97, 108, 0, 80, 97, 105, 110, 116, 79, 118, 97, 108, 0, 69, 114, 97, 115, 101, 79, 118, 97, 108, 0, 73, 110, 118, 101, 114, 116, 79, 118, 97, 108, 0, 70, 105, 108, 108, 79, 118, 97, 108, 0, 83, 108, 111, 112, 101, 70, 114, 111, 109, 65, 110, 103, 108, 101, 0, 83, 116, 100, 65, 114, 99, 0, 70, 114, 97, 109, 101, 65, 114, 99, 0, 80, 97, 105, 110, 116, 65, 114, 99, 0, 69, 114, 97, 115, 101, 65, 114, 99, 0, 73, 110, 118, 101, 114, 116, 65, 114, 99, 0, 70, 105, 108, 108, 65, 114, 99, 0, 80, 116, 84, 111, 65, 110, 103, 108, 101, 0, 65, 110, 103, 108, 101, 70, 114, 111, 109, 83, 108, 111, 112, 101, 0, 83, 116, 100, 80, 111, 108, 121, 0, 70, 114, 97, 109, 101, 80, 111, 108, 121, 0, 80, 97, 105, 110, 116, 80, 111, 108, 121, 0, 69, 114, 97, 115, 101, 80, 111, 108, 121, 0, 73, 110, 118, 101, 114, 116, 80, 111, 108, 121, 0, 70, 105, 108, 108, 80, 111, 108, 121, 0, 79, 112, 101, 110, 80, 111, 108, 121, 0, 67, 108, 111, 115, 101, 80, 103, 111, 110, 0, 75, 105, 108, 108, 80, 111, 108, 121, 0, 79, 102, 102, 115, 101, 116, 80, 111, 108, 121, 0, 80, 97, 99, 107, 66, 105, 116, 115, 0, 85, 110, 112, 97, 99, 107, 66, 105, 116, 115, 0, 83, 116, 100, 82, 103, 110, 0, 70, 114, 97, 109, 101, 82, 103, 110, 0, 80, 97, 105, 110, 116, 82, 103, 110, 0, 69, 114, 97, 115, 101, 82, 103, 110, 0, 73, 110, 118, 101, 114, 82, 103, 110, 0, 70, 105, 108, 108, 82, 103, 110, 0, 66, 105, 116, 77, 97, 112, 84, 111, 82, 101, 103, 105, 111, 110, 0, 78, 101, 119, 82, 103, 110, 0, 68, 105, 115, 112, 111, 115, 82, 103, 110, 0, 79, 112, 101, 110, 82, 103, 110, 0, 67, 108, 111, 115, 101, 82, 103, 110, 0, 67, 111, 112, 121, 82, 103, 110, 0, 83, 101, 116, 69, 109, 112, 116, 121, 82, 103, 110, 0, 83, 101, 116, 82, 101, 99, 82, 103, 110, 0, 82, 101, 99, 116, 82, 103, 110, 0, 79, 102, 115, 101, 116, 82, 103, 110, 0, 73, 110, 115, 101, 116, 82, 103, 110, 0, 69, 109, 112, 116, 121, 82, 103, 110, 0, 69, 113, 117, 97, 108, 82, 103, 110, 0, 83, 101, 99, 116, 82, 103, 110, 0, 85, 110, 105, 111, 110, 82, 103, 110, 0, 68, 105, 102, 102, 82, 103, 110, 0, 88, 111, 114, 82, 103, 110, 0, 80, 116, 73, 110, 82, 103, 110, 0, 82, 101, 99, 116, 73, 110, 82, 103, 110, 0, 83, 101, 116, 83, 116, 100, 80, 114, 111, 99, 115, 0, 83, 116, 100, 66, 105, 116, 115, 0, 67, 111, 112, 121, 66, 105, 116, 115, 0, 83, 116, 100, 84, 120, 77, 101, 97, 115, 0, 83, 116, 100, 71, 101, 116, 80, 105, 99, 0, 83, 99, 114, 111, 108, 108, 82, 101, 99, 116, 0, 83, 116, 100, 80, 117, 116, 80, 105, 99, 0, 83, 116, 100, 67, 111, 109, 109, 101, 110, 116, 0, 80, 105, 99, 67, 111, 109, 109, 101, 110, 116, 0, 79, 112, 101, 110, 80, 105, 99, 116, 117, 114, 101, 0, 67, 108, 111, 115, 101, 80, 105, 99, 116, 117, 114, 101, 0, 75, 105, 108, 108, 80, 105, 99, 116, 117, 114, 101, 0, 68, 114, 97, 119, 80, 105, 99, 116, 117, 114, 101, 0, 76, 97, 121, 111, 117, 116, 0, 83, 99, 97, 108, 101, 80, 116, 0, 77, 97, 112, 80, 116, 0, 77, 97, 112, 82, 101, 99, 116, 0, 77, 97, 112, 82, 103, 110, 0, 77, 97, 112, 80, 111, 108, 121, 0, 80, 114, 71, 108, 117, 101, 0, 73, 110, 105, 116, 70, 111, 110, 116, 115, 0, 71, 101, 116, 70, 78, 97, 109, 101, 0, 71, 101, 116, 70, 78, 117, 109, 0, 70, 77, 83, 119, 97, 112, 70, 111, 110, 116, 0, 82, 101, 97, 108, 70, 111, 110, 116, 0, 83, 101, 116, 70, 111, 110, 116, 76, 111, 99, 107, 0, 68, 114, 97, 119, 71, 114, 111, 119, 73, 99, 111, 110, 0, 68, 114, 97, 103, 71, 114, 97, 121, 82, 103, 110, 0, 78, 101, 119, 83, 116, 114, 105, 110, 103, 0, 83, 101, 116, 83, 116, 114, 105, 110, 103, 0, 83, 104, 111, 119, 72, 105, 100, 101, 0, 67, 97, 108, 99, 86, 105, 115, 0, 67, 97, 108, 99, 86, 66, 101, 104, 105, 110, 100, 0, 67, 108, 105, 112, 65, 98, 111, 118, 101, 0, 80, 97, 105, 110, 116, 79, 110, 101, 0, 80, 97, 105, 110, 116, 66, 101, 104, 105, 110, 100, 0, 83, 97, 118, 101, 79, 108, 100, 0, 68, 114, 97, 119, 78, 101, 119, 0, 71, 101, 116, 87, 77, 103, 114, 80, 111, 114, 116, 0, 67, 104, 101, 99, 107, 85, 112, 100, 97, 116, 101, 0, 73, 110, 105, 116, 87, 105, 110, 100, 111, 119, 115, 0, 78, 101, 119, 87, 105, 110, 100, 111, 119, 0, 68, 105, 115, 112, 111, 115, 87, 105, 110, 100, 111, 119, 0, 83, 104, 111, 119, 87, 105, 110, 100, 111, 119, 0, 72, 105, 100, 101, 87, 105, 110, 100, 111, 119, 0, 71, 101, 116, 87, 82, 101, 102, 67, 111, 110, 0, 83, 101, 116, 87, 82, 101, 102, 67, 111, 110, 0, 71, 101, 116, 87, 84, 105, 116, 108, 101, 0, 83, 101, 116, 87, 84, 105, 116, 108, 101, 0, 77, 111, 118, 101, 87, 105, 110, 100, 111, 119, 0, 72, 105, 108, 105, 116, 101, 87, 105, 110, 100, 111, 119, 0, 83, 105, 122, 101, 87, 105, 110, 100, 111, 119, 0, 84, 114, 97, 99, 107, 71, 111, 65, 119, 97, 121, 0, 83, 101, 108, 101, 99, 116, 87, 105, 110, 100, 111, 119, 0, 66, 114, 105, 110, 103, 84, 111, 70, 114, 111, 110, 116, 0, 83, 101, 110, 100, 66, 101, 104, 105, 110, 100, 0, 66, 101, 103, 105, 110, 85, 112, 100, 97, 116, 101, 0, 69, 110, 100, 85, 112, 100, 97, 116, 101, 0, 70, 114, 111, 110, 116, 87, 105, 110, 100, 111, 119, 0, 68, 114, 97, 103, 87, 105, 110, 100, 111, 119, 0, 68, 114, 97, 103, 84, 104, 101, 82, 103, 110, 0, 73, 110, 118, 97, 108, 82, 103, 110, 0, 73, 110, 118, 97, 108, 82, 101, 99, 116, 0, 86, 97, 108, 105, 100, 82, 103, 110, 0, 86, 97, 108, 105, 100, 82, 101, 99, 116, 0, 71, 114, 111, 119, 87, 105, 110, 100, 111, 119, 0, 70, 105, 110, 100, 87, 105, 110, 100, 111, 119, 0, 67, 108, 111, 115, 101, 87, 105, 110, 100, 111, 119, 0, 83, 101, 116, 87, 105, 110, 100, 111, 119, 80, 105, 99, 0, 71, 101, 116, 87, 105, 110, 100, 111, 119, 80, 105, 99, 0, 73, 110, 105, 116, 77, 101, 110, 117, 115, 0, 78, 101, 119, 77, 101, 110, 117, 0, 68, 105, 115, 112, 111, 115, 77, 101, 110, 117, 0, 65, 112, 112, 101, 110, 100, 77, 101, 110, 117, 0, 67, 108, 101, 97, 114, 77, 101, 110, 117, 66, 97, 114, 0, 73, 110, 115, 101, 114, 116, 77, 101, 110, 117, 0, 68, 101, 108, 101, 116, 101, 77, 101, 110, 117, 0, 68, 114, 97, 119, 77, 101, 110, 117, 66, 97, 114, 0, 72, 105, 108, 105, 116, 101, 77, 101, 110, 117, 0, 69, 110, 97, 98, 108, 101, 73, 116, 101, 109, 0, 68, 105, 115, 97, 98, 108, 101, 73, 116, 101, 109, 0, 71, 101, 116, 77, 101, 110, 117, 66, 97, 114, 0, 83, 101, 116, 77, 101, 110, 117, 66, 97, 114, 0, 77, 101, 110, 117, 83, 101, 108, 101, 99, 116, 0, 77, 101, 110, 117, 75, 101, 121, 0, 71, 101, 116, 73, 116, 109, 73, 99, 111, 110, 0, 83, 101, 116, 73, 116, 109, 73, 99, 111, 110, 0, 71, 101, 116, 73, 116, 109, 83, 116, 121, 108, 101, 0, 83, 101, 116, 73, 116, 109, 83, 116, 121, 108, 101, 0, 71, 101, 116, 73, 116, 109, 77, 97, 114, 107, 0, 83, 101, 116, 73, 116, 109, 77, 97, 114, 107, 0, 67, 104, 101, 99, 107, 73, 116, 101, 109, 0, 71, 101, 116, 73, 116, 101, 109, 0, 83, 101, 116, 73, 116, 101, 109, 0, 67, 97, 108, 99, 77, 101, 110, 117, 83, 105, 122, 101, 0, 71, 101, 116, 77, 72, 97, 110, 100, 108, 101, 0, 83, 101, 116, 77, 70, 108, 97, 115, 104, 0, 80, 108, 111, 116, 73, 99, 111, 110, 0, 70, 108, 97, 115, 104, 77, 101, 110, 117, 66, 97, 114, 0, 65, 100, 100, 82, 101, 115, 77, 101, 110, 117, 0, 80, 105, 110, 82, 101, 99, 116, 0, 68, 101, 108, 116, 97, 80, 111, 105, 110, 116, 0, 67, 111, 117, 110, 116, 77, 73, 116, 101, 109, 115, 0, 73, 110, 115, 101, 114, 116, 82, 101, 115, 77, 101, 110, 117, 0, 68, 101, 108, 77, 101, 110, 117, 73, 116, 101, 109, 0, 85, 112, 100, 116, 67, 111, 110, 116, 114, 111, 108, 0, 78, 101, 119, 67, 111, 110, 116, 114, 111, 108, 0, 68, 105, 115, 112, 111, 115, 67, 111, 110, 116, 114, 111, 108, 0, 75, 105, 108, 108, 67, 111, 110, 116, 114, 111, 108, 115, 0, 83, 104, 111, 119, 67, 111, 110, 116, 114, 111, 108, 0, 72, 105, 100, 101, 67, 111, 110, 116, 114, 111, 108, 0, 77, 111, 118, 101, 67, 111, 110, 116, 114, 111, 108, 0, 71, 101, 116, 67, 82, 101, 102, 67, 111, 110, 0, 83, 101, 116, 67, 82, 101, 102, 67, 111, 110, 0, 83, 105, 122, 101, 67, 111, 110, 116, 114, 111, 108, 0, 72, 105, 108, 105, 116, 101, 67, 111, 110, 116, 114, 111, 108, 0, 71, 101, 116, 67, 84, 105, 116, 108, 101, 0, 83, 101, 116, 67, 84, 105, 116, 108, 101, 0, 71, 101, 116, 67, 116, 108, 86, 97, 108, 117, 101, 0, 71, 101, 116, 77, 105, 110, 67, 116, 108, 0, 71, 101, 116, 77, 97, 120, 67, 116, 108, 0, 83, 101, 116, 67, 116, 108, 86, 97, 108, 117, 101, 0, 83, 101, 116, 77, 105, 110, 67, 116, 108, 0, 83, 101, 116, 77, 97, 120, 67, 116, 108, 0, 84, 101, 115, 116, 67, 111, 110, 116, 114, 111, 108, 0, 68, 114, 97, 103, 67, 111, 110, 116, 114, 111, 108, 0, 84, 114, 97, 99, 107, 67, 111, 110, 116, 114, 111, 108, 0, 68, 114, 97, 119, 67, 111, 110, 116, 114, 111, 108, 115, 0, 71, 101, 116, 67, 116, 108, 65, 99, 116, 105, 111, 110, 0, 83, 101, 116, 67, 116, 108, 65, 99, 116, 105, 111, 110, 0, 70, 105, 110, 100, 67, 111, 110, 116, 114, 111, 108, 0, 68, 114, 97, 119, 49, 67, 111, 110, 116, 114, 111, 108, 0, 68, 101, 113, 117, 101, 117, 101, 0, 69, 110, 113, 117, 101, 117, 101, 0, 71, 101, 116, 78, 101, 120, 116, 69, 118, 101, 110, 116, 0, 69, 118, 101, 110, 116, 65, 118, 97, 105, 108, 0, 71, 101, 116, 77, 111, 117, 115, 101, 0, 83, 116, 105, 108, 108, 68, 111, 119, 110, 0, 66, 117, 116, 116, 111, 110, 0, 84, 105, 99, 107, 67, 111, 117, 110, 116, 0, 71, 101, 116, 75, 101, 121, 115, 0, 87, 97, 105, 116, 77, 111, 117, 115, 101, 85, 112, 0, 85, 112, 100, 116, 68, 105, 97, 108, 111, 103, 0, 67, 111, 117, 108, 100, 68, 105, 97, 108, 111, 103, 0, 70, 114, 101, 101, 68, 105, 97, 108, 111, 103, 0, 73, 110, 105, 116, 68, 105, 97, 108, 111, 103, 115, 0, 71, 101, 116, 78, 101, 119, 68, 105, 97, 108, 111, 103, 0, 78, 101, 119, 68, 105, 97, 108, 111, 103, 0, 83, 101, 108, 73, 84, 101, 120, 116, 0, 73, 115, 68, 105, 97, 108, 111, 103, 69, 118, 101, 110, 116, 0, 68, 105, 97, 108, 111, 103, 83, 101, 108, 101, 99, 116, 0, 68, 114, 97, 119, 68, 105, 97, 108, 111, 103, 0, 67, 108, 111, 115, 101, 68, 105, 97, 108, 111, 103, 0, 68, 105, 115, 112, 111, 115, 68, 105, 97, 108, 111, 103, 0, 70, 105, 110, 100, 68, 73, 116, 101, 109, 0, 65, 108, 101, 114, 116, 0, 83, 116, 111, 112, 65, 108, 101, 114, 116, 0, 78, 111, 116, 101, 65, 108, 101, 114, 116, 0, 67, 97, 117, 116, 105, 111, 110, 65, 108, 101, 114, 116, 0, 67, 111, 117, 108, 100, 65, 108, 101, 114, 116, 0, 70, 114, 101, 101, 65, 108, 101, 114, 116, 0, 80, 97, 114, 97, 109, 84, 101, 120, 116, 0, 69, 114, 114, 111, 114, 83, 111, 117, 110, 100, 0, 71, 101, 116, 68, 73, 116, 101, 109, 0, 83, 101, 116, 68, 73, 116, 101, 109, 0, 83, 101, 116, 73, 84, 101, 120, 116, 0, 71, 101, 116, 73, 84, 101, 120, 116, 0, 77, 111, 100, 97, 108, 68, 105, 97, 108, 111, 103, 0, 68, 101, 116, 97, 99, 104, 82, 101, 115, 111, 117, 114, 99, 101, 0, 83, 101, 116, 82, 101, 115, 80, 117, 114, 103, 101, 0, 67, 117, 114, 82, 101, 115, 70, 105, 108, 101, 0, 73, 110, 105, 116, 82, 101, 115, 111, 117, 114, 99, 101, 115, 0, 82, 115, 114, 99, 90, 111, 110, 101, 73, 110, 105, 116, 0, 79, 112, 101, 110, 82, 101, 115, 70, 105, 108, 101, 0, 85, 115, 101, 82, 101, 115, 70, 105, 108, 101, 0, 85, 112, 100, 97, 116, 101, 82, 101, 115, 70, 105, 108, 101, 0, 67, 108, 111, 115, 101, 82, 101, 115, 70, 105, 108, 101, 0, 83, 101, 116, 82, 101, 115, 76, 111, 97, 100, 0, 67, 111, 117, 110, 116, 82, 101, 115, 111, 117, 114, 99, 101, 115, 0, 71, 101, 116, 73, 110, 100, 82, 101, 115, 111, 117, 114, 99, 101, 0, 67, 111, 117, 110, 116, 84, 121, 112, 101, 115, 0, 71, 101, 116, 73, 110, 100, 84, 121, 112, 101, 0, 71, 101, 116, 82, 101, 115, 111, 117, 114, 99, 101, 0, 71, 101, 116, 78, 97, 109, 101, 100, 82, 101, 115, 111, 117, 114, 99, 101, 0, 76, 111, 97, 100, 82, 101, 115, 111, 117, 114, 99, 101, 0, 82, 101, 108, 101, 97, 115, 101, 82, 101, 115, 111, 117, 114, 99, 101, 0, 72, 111, 109, 101, 82, 101, 115, 70, 105, 108, 101, 0, 83, 105, 122, 101, 82, 115, 114, 99, 0, 71, 101, 116, 82, 101, 115, 65, 116, 116, 114, 115, 0, 83, 101, 116, 82, 101, 115, 65, 116, 116, 114, 115, 0, 71, 101, 116, 82, 101, 115, 73, 110, 102, 111, 0, 83, 101, 116, 82, 101, 115, 73, 110, 102, 111, 0, 67, 104, 97, 110, 103, 101, 100, 82, 101, 115, 111, 117, 114, 99, 101, 0, 65, 100, 100, 82, 101, 115, 111, 117, 114, 99, 101, 0, 65, 100, 100, 82, 101, 102, 101, 114, 101, 110, 99, 101, 0, 82, 109, 118, 101, 82, 101, 115, 111, 117, 114, 99, 101, 0, 82, 109, 118, 101, 82, 101, 102, 101, 114, 101, 110, 99, 101, 0, 82, 101, 115, 69, 114, 114, 111, 114, 0, 87, 114, 105, 116, 101, 82, 101, 115, 111, 117, 114, 99, 101, 0, 67, 114, 101, 97, 116, 101, 82, 101, 115, 70, 105, 108, 101, 0, 83, 121, 115, 116, 101, 109, 69, 118, 101, 110, 116, 0, 83, 121, 115, 116, 101, 109, 67, 108, 105, 99, 107, 0, 83, 121, 115, 116, 101, 109, 84, 97, 115, 107, 0, 83, 121, 115, 116, 101, 109, 77, 101, 110, 117, 0, 79, 112, 101, 110, 68, 101, 115, 107, 65, 99, 99, 0, 67, 108, 111, 115, 101, 68, 101, 115, 107, 65, 99, 99, 0, 71, 101, 116, 80, 97, 116, 116, 101, 114, 110, 0, 71, 101, 116, 67, 117, 114, 115, 111, 114, 0, 71, 101, 116, 83, 116, 114, 105, 110, 103, 0, 71, 101, 116, 73, 99, 111, 110, 0, 71, 101, 116, 80, 105, 99, 116, 117, 114, 101, 0, 71, 101, 116, 78, 101, 119, 87, 105, 110, 100, 111, 119, 0, 71, 101, 116, 78, 101, 119, 67, 111, 110, 116, 114, 111, 108, 0, 71, 101, 116, 82, 77, 101, 110, 117, 0, 71, 101, 116, 78, 101, 119, 77, 66, 97, 114, 0, 85, 110, 105, 113, 117, 101, 73, 68, 0, 83, 121, 115, 69, 100, 105, 116, 0, 75, 101, 121, 84, 114, 97, 110, 115, 0, 79, 112, 101, 110, 82, 70, 80, 101, 114, 109, 0, 82, 115, 114, 99, 77, 97, 112, 69, 110, 116, 114, 121, 0, 83, 101, 99, 115, 50, 68, 97, 116, 101, 0, 68, 97, 116, 101, 50, 83, 101, 99, 0, 83, 121, 115, 66, 101, 101, 112, 0, 83, 121, 115, 69, 114, 114, 111, 114, 0, 80, 117, 116, 73, 99, 111, 110, 0, 84, 69, 71, 101, 116, 84, 101, 120, 116, 0, 84, 69, 73, 110, 105, 116, 0, 84, 69, 68, 105, 115, 112, 111, 115, 101, 0, 84, 101, 120, 116, 66, 111, 120, 0, 84, 69, 83, 101, 116, 84, 101, 120, 116, 0, 84, 69, 67, 97, 108, 84, 101, 120, 116, 0, 84, 69, 83, 101, 116, 83, 101, 108, 101, 99, 116, 0, 84, 69, 78, 101, 119, 0, 84, 69, 85, 112, 100, 97, 116, 101, 0, 84, 69, 67, 108, 105, 99, 107, 0, 84, 69, 67, 111, 112, 121, 0, 84, 69, 67, 117, 116, 0, 84, 69, 68, 101, 108, 101, 116, 101, 0, 84, 69, 65, 99, 116, 105, 118, 97, 116, 101, 0, 84, 69, 68, 101, 97, 99, 116, 105, 118, 97, 116, 101, 0, 84, 69, 73, 100, 108, 101, 0, 84, 69, 80, 97, 115, 116, 101, 0, 84, 69, 75, 101, 121, 0, 84, 69, 83, 99, 114, 111, 108, 108, 0, 84, 69, 73, 110, 115, 101, 114, 116, 0, 84, 69, 83, 101, 116, 74, 117, 115, 116, 0, 77, 117, 110, 103, 101, 114, 0, 72, 97, 110, 100, 84, 111, 72, 97, 110, 100, 0, 80, 116, 114, 84, 111, 88, 72, 97, 110, 100, 0, 80, 116, 114, 84, 111, 72, 97, 110, 100, 0, 72, 97, 110, 100, 65, 110, 100, 72, 97, 110, 100, 0, 73, 110, 105, 116, 80, 97, 99, 107, 0, 73, 110, 105, 116, 65, 108, 108, 80, 97, 99, 107, 115, 0, 80, 97, 99, 107, 48, 0, 80, 97, 99, 107, 49, 0, 80, 97, 99, 107, 50, 0, 80, 97, 99, 107, 51, 0, 70, 80, 54, 56, 75, 0, 80, 97, 99, 107, 52, 0, 69, 108, 101, 109, 115, 54, 56, 75, 0, 80, 97, 99, 107, 53, 0, 80, 97, 99, 107, 54, 0, 80, 97, 99, 107, 55, 0, 80, 116, 114, 65, 110, 100, 72, 97, 110, 100, 0, 76, 111, 97, 100, 83, 101, 103, 0, 85, 110, 108, 111, 97, 100, 83, 101, 103, 0, 76, 97, 117, 110, 99, 104, 0, 67, 104, 97, 105, 110, 0, 69, 120, 105, 116, 84, 111, 83, 104, 101, 108, 108, 0, 71, 101, 116, 65, 112, 112, 80, 97, 114, 109, 115, 0, 71, 101, 116, 82, 101, 115, 70, 105, 108, 101, 65, 116, 116, 114, 115, 0, 83, 101, 116, 82, 101, 115, 70, 105, 108, 101, 65, 116, 116, 114, 115, 0, 77, 101, 116, 104, 111, 100, 68, 105, 115, 112, 97, 116, 99, 104, 0, 73, 110, 102, 111, 83, 99, 114, 97, 112, 0, 85, 110, 108, 111, 100, 101, 83, 99, 114, 97, 112, 0, 76, 111, 100, 101, 83, 99, 114, 97, 112, 0, 90, 101, 114, 111, 83, 99, 114, 97, 112, 0, 71, 101, 116, 83, 99, 114, 97, 112, 0, 80, 117, 116, 83, 99, 114, 97, 112, 0, 68, 101, 98, 117, 103, 103, 101, 114, 0, 79, 112, 101, 110, 67, 112, 111, 114, 116, 0, 73, 110, 105, 116, 67, 112, 111, 114, 116, 0, 78, 101, 119, 80, 105, 120, 77, 97, 112, 0, 68, 105, 115, 112, 111, 115, 80, 105, 120, 77, 97, 112, 0, 67, 111, 112, 121, 80, 105, 120, 77, 97, 112, 0, 83, 101, 116, 67, 80, 111, 114, 116, 80, 105, 120, 0, 78, 101, 119, 80, 105, 120, 80, 97, 116, 0, 68, 105, 115, 112, 111, 115, 80, 105, 120, 80, 97, 116, 0, 67, 111, 112, 121, 80, 105, 120, 80, 97, 116, 0, 80, 101, 110, 80, 105, 120, 80, 97, 116, 0, 66, 97, 99, 107, 80, 105, 120, 80, 97, 116, 0, 71, 101, 116, 80, 105, 120, 80, 97, 116, 0, 77, 97, 107, 101, 82, 71, 66, 80, 97, 116, 0, 70, 105, 108, 108, 67, 82, 101, 99, 116, 0, 70, 105, 108, 108, 67, 79, 118, 97, 108, 0, 70, 105, 108, 108, 67, 82, 111, 117, 110, 100, 82, 101, 99, 116, 0, 70, 105, 108, 108, 67, 65, 114, 99, 0, 70, 105, 108, 108, 67, 82, 103, 110, 0, 70, 105, 108, 108, 67, 80, 111, 108, 121, 0, 82, 71, 66, 70, 111, 114, 101, 67, 111, 108, 111, 114, 0, 82, 71, 66, 66, 97, 99, 107, 67, 111, 108, 111, 114, 0, 83, 101, 116, 67, 80, 105, 120, 101, 108, 0, 71, 101, 116, 67, 80, 105, 120, 101, 108, 0, 71, 101, 116, 67, 84, 97, 98, 108, 101, 0, 71, 101, 116, 70, 111, 114, 101, 67, 111, 108, 111, 114, 0, 71, 101, 116, 66, 97, 99, 107, 67, 111, 108, 111, 114, 0, 71, 101, 116, 67, 67, 117, 114, 115, 111, 114, 0, 83, 101, 116, 67, 67, 117, 114, 115, 111, 114, 0, 65, 108, 108, 111, 99, 67, 117, 114, 115, 111, 114, 0, 71, 101, 116, 67, 73, 99, 111, 110, 0, 80, 108, 111, 116, 67, 73, 99, 111, 110, 0, 79, 112, 67, 111, 108, 111, 114, 0, 72, 105, 108, 105, 116, 101, 67, 111, 108, 111, 114, 0, 67, 104, 97, 114, 69, 120, 116, 114, 97, 0, 68, 105, 115, 112, 111, 115, 67, 84, 97, 98, 108, 101, 0, 68, 105, 115, 112, 111, 115, 67, 73, 99, 111, 110, 0, 68, 105, 115, 112, 111, 115, 67, 67, 117, 114, 115, 111, 114, 0, 71, 101, 116, 77, 97, 120, 68, 101, 118, 105, 99, 101, 0, 71, 101, 116, 67, 84, 83, 101, 101, 100, 0, 71, 101, 116, 68, 101, 118, 105, 99, 101, 76, 105, 115, 116, 0, 71, 101, 116, 77, 97, 105, 110, 68, 101, 118, 105, 99, 101, 0, 71, 101, 116, 78, 101, 120, 116, 68, 101, 118, 105, 99, 101, 0, 84, 101, 115, 116, 68, 101, 118, 105, 99, 101, 65, 116, 116, 114, 105, 98, 117, 116, 101, 0, 83, 101, 116, 68, 101, 118, 105, 99, 101, 65, 116, 116, 114, 105, 98, 117, 116, 101, 0, 73, 110, 105, 116, 71, 68, 101, 118, 105, 99, 101, 0, 78, 101, 119, 71, 68, 101, 118, 105, 99, 101, 0, 68, 105, 115, 112, 111, 115, 71, 68, 101, 118, 105, 99, 101, 0, 83, 101, 116, 71, 68, 101, 118, 105, 99, 101, 0, 71, 101, 116, 71, 68, 101, 118, 105, 99, 101, 0, 67, 111, 108, 111, 114, 50, 73, 110, 100, 101, 120, 0, 73, 110, 100, 101, 120, 50, 67, 111, 108, 111, 114, 0, 73, 110, 118, 101, 114, 116, 67, 111, 108, 111, 114, 0, 82, 101, 97, 108, 67, 111, 108, 111, 114, 0, 71, 101, 116, 83, 117, 98, 84, 97, 98, 108, 101, 0, 85, 112, 100, 97, 116, 101, 80, 105, 120, 77, 97, 112, 0, 77, 97, 107, 101, 73, 84, 97, 98, 108, 101, 0, 65, 100, 100, 83, 101, 97, 114, 99, 104, 0, 65, 100, 100, 67, 111, 109, 112, 0, 83, 101, 116, 67, 108, 105, 101, 110, 116, 73, 68, 0, 80, 114, 111, 116, 101, 99, 116, 69, 110, 116, 114, 121, 0, 82, 101, 115, 101, 114, 118, 101, 69, 110, 116, 114, 121, 0, 83, 101, 116, 69, 110, 116, 114, 105, 101, 115, 0, 81, 68, 69, 114, 114, 111, 114, 0, 83, 101, 116, 87, 105, 110, 67, 111, 108, 111, 114, 0, 71, 101, 116, 65, 117, 120, 87, 105, 110, 0, 83, 101, 116, 67, 116, 108, 67, 111, 108, 111, 114, 0, 71, 101, 116, 65, 117, 120, 67, 116, 108, 0, 78, 101, 119, 67, 87, 105, 110, 100, 111, 119, 0, 71, 101, 116, 78, 101, 119, 67, 87, 105, 110, 100, 111, 119, 0, 83, 101, 116, 68, 101, 115, 107, 67, 80, 97, 116, 0, 71, 101, 116, 67, 87, 77, 103, 114, 80, 111, 114, 116, 0, 83, 97, 118, 101, 69, 110, 116, 114, 105, 101, 115, 0, 82, 101, 115, 116, 111, 114, 101, 69, 110, 116, 114, 105, 101, 115, 0, 78, 101, 119, 67, 68, 105, 97, 108, 111, 103, 0, 68, 101, 108, 83, 101, 97, 114, 99, 104, 0, 68, 101, 108, 67, 111, 109, 112, 0, 83, 101, 116, 83, 116, 100, 67, 80, 114, 111, 99, 115, 0, 67, 97, 108, 99, 67, 77, 97, 115, 107, 0, 83, 101, 101, 100, 67, 70, 105, 108, 108, 0, 67, 111, 112, 121, 68, 101, 101, 112, 77, 97, 115, 107, 0, 72, 105, 103, 104, 76, 101, 118, 101, 108, 70, 83, 68, 105, 115, 112, 97, 116, 99, 104, 0, 68, 101, 108, 77, 67, 69, 110, 116, 114, 105, 101, 115, 0, 71, 101, 116, 77, 67, 73, 110, 102, 111, 0, 83, 101, 116, 77, 67, 73, 110, 102, 111, 0, 68, 105, 115, 112, 77, 67, 69, 110, 116, 114, 105, 101, 115, 0, 71, 101, 116, 77, 67, 69, 110, 116, 114, 121, 0, 83, 101, 116, 77, 67, 69, 110, 116, 114, 105, 101, 115, 0, 77, 101, 110, 117, 67, 104, 111, 105, 99, 101, 0, 77, 111, 100, 97, 108, 68, 105, 97, 108, 111, 103, 77, 101, 110, 117, 83, 101, 116, 117, 112, 0, 68, 105, 97, 108, 111, 103, 68, 105, 115, 112, 97, 116, 99, 104, 0, 37, 48, 52, 88, 0, 66, 70, 73, 78, 83, 0, 35, 37, 115, 37, 48, 52, 88, 0, 68, 37, 117, 0, 65, 37, 117, 0, 65, 0, 68, 0, 37, 115, 37, 117, 0, 40, 65, 37, 117, 41, 43, 0, 45, 40, 65, 37, 117, 41, 0, 37, 115, 37, 115, 37, 48, 52, 88, 40, 65, 37, 117, 41, 0, 35, 37, 115, 37, 48, 50, 88, 0, 35, 37, 115, 37, 48, 56, 108, 88, 0, 35, 37, 115, 37, 88, 0, 37, 115, 37, 48, 56, 108, 88, 0, 67, 67, 82, 0, 83, 82, 0, 85, 83, 80, 0, 68, 37, 117, 58, 68, 37, 117, 0, 37, 117, 0, 83, 70, 67, 0, 68, 70, 67, 0, 86, 66, 82, 0, 67, 82, 40, 37, 117, 41, 0, 37, 115, 37, 117, 45, 37, 115, 37, 117, 0, 37, 115, 37, 117, 47, 37, 115, 37, 117, 0, 40, 65, 37, 117, 41, 0, 46, 76, 0, 46, 87, 0, 37, 115, 37, 115, 37, 48, 50, 88, 40, 65, 37, 117, 44, 32, 37, 115, 37, 117, 37, 115, 42, 37, 117, 41, 0, 37, 115, 37, 115, 37, 48, 52, 88, 0, 37, 115, 37, 48, 56, 108, 88, 40, 80, 67, 41, 0, 37, 115, 37, 115, 37, 48, 50, 88, 40, 80, 67, 44, 32, 37, 115, 37, 117, 37, 115, 42, 37, 117, 41, 0, 60, 69, 65, 62, 40, 37, 48, 50, 88, 41, 0, 80, 67, 0, 37, 115, 37, 117, 37, 115, 0, 42, 37, 117, 0, 37, 115, 37, 115, 37, 48, 56, 88, 0, 40, 91, 37, 115, 44, 32, 37, 115, 93, 44, 32, 37, 115, 37, 115, 44, 32, 37, 115, 41, 0, 40, 91, 37, 115, 44, 32, 37, 115, 44, 32, 37, 115, 37, 115, 93, 44, 32, 37, 115, 41, 0, 36, 0, 66, 70, 83, 69, 84, 0, 66, 70, 67, 76, 82, 0, 66, 70, 69, 88, 84, 83, 0, 66, 70, 67, 72, 71, 0, 66, 70, 69, 88, 84, 85, 0, 66, 70, 84, 83, 84, 0, 82, 79, 76, 46, 87, 0, 82, 79, 82, 46, 87, 0, 82, 79, 88, 76, 46, 87, 0, 82, 79, 88, 82, 46, 87, 0, 76, 83, 76, 46, 87, 0, 76, 83, 82, 46, 87, 0, 65, 83, 76, 46, 87, 0, 65, 83, 76, 46, 76, 0, 76, 83, 76, 46, 76, 0, 82, 79, 88, 76, 46, 76, 0, 82, 79, 76, 46, 76, 0, 68, 87, 0, 65, 83, 76, 46, 66, 0, 76, 83, 76, 46, 66, 0, 82, 79, 88, 76, 46, 66, 0, 82, 79, 76, 46, 66, 0, 65, 83, 82, 46, 87, 0, 65, 83, 82, 46, 76, 0, 76, 83, 82, 46, 76, 0, 82, 79, 88, 82, 46, 76, 0, 82, 79, 82, 46, 76, 0, 65, 83, 82, 46, 66, 0, 76, 83, 82, 46, 66, 0, 82, 79, 88, 82, 46, 66, 0, 82, 79, 82, 46, 66, 0, 65, 68, 68, 65, 46, 76, 0, 65, 68, 68, 88, 46, 76, 0, 65, 68, 68, 46, 76, 0, 65, 68, 68, 88, 46, 87, 0, 65, 68, 68, 46, 87, 0, 65, 68, 68, 88, 46, 66, 0, 65, 68, 68, 46, 66, 0, 65, 68, 68, 65, 46, 87, 0, 77, 85, 76, 83, 46, 87, 0, 69, 88, 71, 0, 65, 78, 68, 46, 76, 0, 65, 78, 68, 46, 87, 0, 65, 66, 67, 68, 46, 66, 0, 65, 78, 68, 46, 66, 0, 77, 85, 76, 85, 46, 87, 0, 67, 77, 80, 65, 46, 76, 0, 67, 77, 80, 77, 46, 76, 0, 69, 79, 82, 46, 76, 0, 67, 77, 80, 77, 46, 87, 0, 69, 79, 82, 46, 87, 0, 67, 77, 80, 77, 46, 66, 0, 69, 79, 82, 46, 66, 0, 67, 77, 80, 65, 46, 87, 0, 67, 77, 80, 46, 76, 0, 67, 77, 80, 46, 87, 0, 67, 77, 80, 46, 66, 0, 83, 85, 66, 65, 46, 76, 0, 83, 85, 66, 88, 46, 76, 0, 83, 85, 66, 46, 76, 0, 83, 85, 66, 88, 46, 87, 0, 83, 85, 66, 46, 87, 0, 83, 85, 66, 88, 46, 66, 0, 83, 85, 66, 46, 66, 0, 83, 85, 66, 65, 46, 87, 0, 68, 73, 86, 83, 46, 87, 0, 79, 82, 46, 76, 0, 79, 82, 46, 87, 0, 83, 66, 67, 68, 46, 66, 0, 79, 82, 46, 66, 0, 68, 73, 86, 85, 46, 87, 0, 77, 79, 86, 69, 81, 0, 46, 83, 0, 66, 82, 65, 0, 66, 83, 82, 0, 66, 72, 73, 0, 66, 76, 83, 0, 66, 67, 67, 0, 66, 67, 83, 0, 66, 78, 69, 0, 66, 69, 81, 0, 66, 86, 67, 0, 66, 86, 83, 0, 66, 80, 76, 0, 66, 77, 73, 0, 66, 71, 69, 0, 66, 76, 84, 0, 66, 71, 84, 0, 66, 76, 69, 0, 83, 85, 66, 81, 46, 76, 0, 83, 85, 66, 81, 46, 87, 0, 83, 85, 66, 81, 46, 66, 0, 83, 84, 0, 83, 70, 0, 83, 72, 73, 0, 83, 76, 83, 0, 83, 67, 67, 0, 83, 67, 83, 0, 83, 78, 69, 0, 83, 69, 81, 0, 83, 86, 67, 0, 83, 86, 83, 0, 83, 80, 76, 0, 83, 77, 73, 0, 83, 71, 69, 0, 83, 76, 84, 0, 83, 71, 84, 0, 83, 76, 69, 0, 68, 66, 84, 0, 68, 66, 70, 0, 68, 66, 72, 73, 0, 68, 66, 76, 83, 0, 68, 66, 67, 67, 0, 68, 66, 67, 83, 0, 68, 66, 78, 69, 0, 68, 66, 69, 81, 0, 68, 66, 86, 67, 0, 68, 66, 86, 83, 0, 68, 66, 80, 76, 0, 68, 66, 77, 73, 0, 68, 66, 71, 69, 0, 68, 66, 76, 84, 0, 68, 66, 71, 84, 0, 68, 66, 76, 69, 0, 84, 82, 65, 80, 84, 0, 84, 82, 65, 80, 70, 0, 84, 82, 65, 80, 72, 73, 0, 84, 82, 65, 80, 76, 83, 0, 84, 82, 65, 80, 67, 67, 0, 84, 82, 65, 80, 67, 83, 0, 84, 82, 65, 80, 78, 69, 0, 84, 82, 65, 80, 69, 81, 0, 84, 82, 65, 80, 86, 67, 0, 84, 82, 65, 80, 86, 83, 0, 84, 82, 65, 80, 80, 76, 0, 84, 82, 65, 80, 77, 73, 0, 84, 82, 65, 80, 71, 69, 0, 84, 82, 65, 80, 76, 84, 0, 84, 82, 65, 80, 71, 84, 0, 84, 82, 65, 80, 76, 69, 0, 65, 68, 68, 81, 46, 76, 0, 65, 68, 68, 81, 46, 87, 0, 65, 68, 68, 81, 46, 66, 0, 74, 83, 82, 0, 82, 69, 83, 69, 84, 0, 78, 79, 80, 0, 83, 84, 79, 80, 0, 82, 84, 69, 0, 82, 84, 68, 0, 84, 82, 65, 80, 86, 0, 82, 84, 82, 0, 77, 79, 86, 69, 67, 0, 76, 73, 78, 75, 0, 85, 78, 76, 75, 0, 77, 79, 86, 69, 0, 77, 79, 86, 69, 77, 46, 76, 0, 77, 79, 86, 69, 77, 46, 87, 0, 68, 73, 86, 85, 76, 46, 76, 0, 68, 73, 86, 85, 46, 76, 0, 77, 85, 76, 85, 46, 76, 0, 73, 76, 76, 69, 71, 65, 76, 0, 84, 65, 83, 0, 84, 83, 84, 46, 76, 0, 84, 83, 84, 46, 87, 0, 84, 83, 84, 46, 66, 0, 69, 88, 84, 66, 46, 76, 0, 69, 88, 84, 46, 76, 0, 69, 88, 84, 46, 87, 0, 83, 87, 65, 80, 0, 80, 69, 65, 0, 78, 66, 67, 68, 46, 66, 0, 77, 79, 86, 69, 46, 87, 0, 78, 79, 84, 46, 76, 0, 78, 79, 84, 46, 87, 0, 78, 79, 84, 46, 66, 0, 78, 69, 71, 46, 76, 0, 78, 69, 71, 46, 87, 0, 78, 69, 71, 46, 66, 0, 67, 76, 82, 46, 76, 0, 67, 76, 82, 46, 87, 0, 67, 76, 82, 46, 66, 0, 76, 69, 65, 0, 78, 69, 71, 88, 46, 76, 0, 78, 69, 71, 88, 46, 87, 0, 78, 69, 71, 88, 46, 66, 0, 77, 79, 86, 69, 65, 46, 87, 0, 77, 79, 86, 69, 65, 46, 76, 0, 77, 79, 86, 69, 46, 76, 0, 77, 79, 86, 69, 46, 66, 0, 74, 77, 80, 0, 77, 79, 86, 83, 46, 76, 0, 77, 79, 86, 83, 46, 87, 0, 77, 79, 86, 83, 46, 66, 0, 67, 77, 80, 73, 46, 76, 0, 67, 77, 80, 73, 46, 87, 0, 67, 77, 80, 73, 46, 66, 0, 69, 79, 82, 73, 46, 76, 0, 69, 79, 82, 73, 46, 87, 0, 69, 79, 82, 73, 46, 66, 0, 66, 83, 69, 84, 0, 66, 67, 76, 82, 0, 66, 67, 72, 71, 0, 66, 84, 83, 84, 0, 65, 68, 68, 73, 46, 76, 0, 65, 68, 68, 73, 46, 87, 0, 65, 68, 68, 73, 46, 66, 0, 67, 72, 75, 50, 46, 76, 0, 67, 77, 80, 50, 46, 76, 0, 83, 85, 66, 73, 46, 76, 0, 83, 85, 66, 73, 46, 87, 0, 83, 85, 66, 73, 46, 66, 0, 67, 72, 75, 50, 46, 87, 0, 67, 77, 80, 50, 46, 87, 0, 65, 78, 68, 73, 46, 76, 0, 65, 78, 68, 73, 46, 87, 0, 65, 78, 68, 73, 46, 66, 0, 77, 79, 86, 69, 80], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE + 35384); allocate([46, 76, 0, 77, 79, 86, 69, 80, 46, 87, 0, 67, 72, 75, 50, 46, 66, 0, 67, 77, 80, 50, 46, 66, 0, 79, 82, 73, 46, 76, 0, 79, 82, 73, 46, 87, 0, 79, 82, 73, 46, 66, 0, 110, 111, 110, 101, 0, 112, 99, 0, 108, 112, 99, 0, 115, 114, 0, 115, 112, 0, 99, 99, 114, 0, 117, 115, 112, 0, 115, 115, 112, 0, 66, 85, 83, 69, 0, 91, 37, 48, 54, 108, 88, 93, 32, 54, 56, 48, 48, 48, 58, 32, 100, 111, 117, 98, 108, 101, 32, 101, 120, 99, 101, 112, 116, 105, 111, 110, 32, 40, 37, 117, 58, 37, 115, 41, 10, 0, 65, 68, 68, 82, 0, 82, 83, 69, 84, 0, 73, 76, 76, 71, 0, 68, 73, 86, 90, 0, 67, 72, 75, 0, 79, 70, 76, 87, 0, 80, 82, 73, 86, 0, 84, 82, 65, 67, 69, 0, 65, 88, 88, 88, 0, 70, 88, 88, 88, 0, 70, 82, 77, 84, 0, 65, 86, 69, 67, 0, 84, 82, 65, 80, 0, 73, 78, 84, 82, 0, 119, 97, 114, 110, 105, 110, 103, 58, 32, 100, 101, 108, 97, 121, 32, 61, 61, 32, 48, 32, 97, 116, 32, 37, 48, 56, 108, 120, 10, 0, 83, 67, 67, 32, 37, 99, 58, 32, 83, 121, 110, 99, 47, 72, 117, 110, 116, 32, 73, 69, 32, 115, 101, 116, 32, 105, 110, 32, 87, 82, 49, 53, 10, 0, 83, 67, 67, 32, 37, 99, 58, 32, 84, 120, 32, 85, 110, 100, 101, 114, 114, 117, 110, 47, 69, 79, 77, 32, 73, 69, 32, 115, 101, 116, 32, 105, 110, 32, 87, 82, 49, 53, 10, 0, 123, 32, 105, 102, 40, 116, 121, 112, 101, 111, 102, 32, 101, 56, 53, 51, 48, 95, 115, 101, 110, 100, 95, 115, 100, 108, 99, 95, 112, 97, 99, 107, 101, 116, 95, 106, 115, 32, 61, 61, 61, 32, 34, 102, 117, 110, 99, 116, 105, 111, 110, 34, 41, 32, 123, 32, 101, 56, 53, 51, 48, 95, 115, 101, 110, 100, 95, 115, 100, 108, 99, 95, 112, 97, 99, 107, 101, 116, 95, 106, 115, 40, 36, 48, 44, 36, 49, 41, 59, 32, 125, 32, 125, 0, 83, 67, 67, 32, 37, 99, 58, 32, 83, 101, 110, 100, 32, 97, 98, 111, 114, 116, 10, 0, 123, 32, 105, 102, 40, 116, 121, 112, 101, 111, 102, 32, 101, 56, 53, 51, 48, 95, 112, 111, 108, 108, 95, 115, 100, 108, 99, 95, 112, 97, 99, 107, 101, 116, 95, 106, 115, 32, 61, 61, 61, 32, 34, 102, 117, 110, 99, 116, 105, 111, 110, 34, 41, 32, 123, 32, 114, 101, 116, 117, 114, 110, 32, 101, 56, 53, 51, 48, 95, 112, 111, 108, 108, 95, 115, 100, 108, 99, 95, 112, 97, 99, 107, 101, 116, 95, 106, 115, 40, 36, 48, 44, 36, 49, 41, 59, 32, 125, 32, 125, 0, 66, 76, 75, 32, 37, 48, 52, 88, 58, 32, 65, 49, 61, 37, 48, 56, 108, 88, 32, 65, 50, 61, 37, 48, 56, 108, 88, 32, 83, 61, 37, 48, 56, 108, 88, 32, 82, 79, 61, 37, 100, 10, 0, 100, 105, 115, 107, 32, 37, 117, 58, 32, 119, 114, 105, 116, 105, 110, 103, 32, 98, 97, 99, 107, 32, 102, 100, 99, 32, 105, 109, 97, 103, 101, 10, 0, 100, 105, 115, 107, 32, 37, 117, 58, 32, 119, 114, 105, 116, 105, 110, 103, 32, 98, 97, 99, 107, 32, 102, 97, 105, 108, 101, 100, 10, 0, 68, 79, 83, 69, 77, 85, 0, 0, 113, 101, 100, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 102, 101, 97, 116, 117, 114, 101, 115, 32, 40, 48, 120, 37, 48, 56, 108, 108, 120, 41, 10, 0, 108, 111, 103, 0, 45, 62, 0, 60, 45, 0, 37, 115, 32, 37, 48, 50, 88, 0, 32, 32, 32, 0, 112, 111, 115, 105, 120, 0, 115, 116, 100, 105, 111, 0, 109, 111, 117, 115, 101, 0, 67, 84, 83, 0, 68, 84, 82, 0, 82, 84, 83, 0, 68, 83, 82, 0, 67, 68, 0, 82, 73, 0, 45, 45, 32, 37, 115, 61, 37, 100, 10, 0, 78, 0, 79, 0, 69, 0, 45, 45, 32, 37, 108, 117, 32, 37, 117, 37, 115, 37, 117, 10, 0, 112, 114, 111, 116, 111, 99, 111, 108, 0, 109, 105, 99, 114, 111, 115, 111, 102, 116, 0, 109, 115, 121, 115, 0, 120, 109, 117, 108, 0, 120, 100, 105, 118, 0, 121, 109, 117, 108, 0, 121, 100, 105, 118, 0, 102, 108, 117, 115, 104, 0, 114, 101, 97, 100, 0, 119, 114, 105, 116, 101, 0, 45, 45, 0, 115, 101, 114, 99, 111, 110, 0, 103, 99, 114, 58, 32, 100, 97, 116, 97, 32, 99, 114, 99, 32, 101, 114, 114, 111, 114, 32, 40, 37, 117, 47, 37, 117, 47, 37, 117, 41, 10, 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, 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, 255, 255, 2, 3, 255, 4, 5, 6, 255, 255, 255, 255, 255, 255, 7, 8, 255, 255, 255, 9, 10, 11, 12, 13, 255, 255, 14, 15, 16, 17, 18, 19, 255, 20, 21, 22, 23, 24, 25, 26, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 255, 28, 29, 30, 255, 255, 255, 31, 255, 255, 32, 33, 255, 34, 35, 36, 37, 38, 39, 40, 255, 255, 255, 255, 255, 41, 42, 43, 255, 44, 45, 46, 47, 48, 49, 50, 255, 255, 51, 52, 53, 54, 55, 56, 255, 57, 58, 59, 60, 61, 62, 63, 150, 151, 154, 155, 157, 158, 159, 166, 167, 171, 172, 173, 174, 175, 178, 179, 180, 181, 182, 183, 185, 186, 187, 188, 189, 190, 191, 203, 205, 206, 207, 211, 214, 215, 217, 218, 219, 220, 221, 222, 223, 229, 230, 231, 233, 234, 235, 236, 237, 238, 239, 242, 243, 244, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 46, 112, 98, 105, 116, 0, 46, 112, 114, 105, 0, 112, 114, 105, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 118, 101, 114, 115, 105, 111, 110, 32, 110, 117, 109, 98, 101, 114, 32, 40, 37, 108, 117, 41, 10, 0, 112, 114, 105, 58, 32, 99, 114, 99, 32, 101, 114, 114, 111, 114, 10, 0, 112, 114, 105, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 118, 101, 114, 115, 105, 111, 110, 32, 110, 117, 109, 98, 101, 114, 32, 40, 37, 117, 41, 10, 0, 112, 114, 105, 47, 116, 99, 58, 32, 98, 97, 100, 32, 109, 97, 103, 105, 99, 10, 0, 46, 97, 110, 97, 0, 46, 99, 112, 50, 0, 46, 105, 109, 97, 103, 101, 0, 46, 105, 109, 97, 0, 46, 105, 109, 100, 0, 46, 105, 109, 103, 0, 46, 109, 115, 97, 0, 46, 112, 102, 100, 99, 0, 46, 112, 115, 105, 0, 46, 114, 97, 119, 0, 46, 115, 116, 0, 46, 115, 116, 120, 0, 46, 116, 99, 0, 46, 116, 100, 48, 0, 46, 120, 100, 102, 0, 99, 112, 50, 58, 32, 37, 117, 47, 37, 117, 47, 37, 117, 58, 32, 115, 101, 99, 116, 111, 114, 32, 100, 97, 116, 97, 32, 116, 111, 111, 32, 98, 105, 103, 32, 40, 37, 117, 41, 10, 0, 99, 112, 50, 58, 32, 37, 117, 47, 37, 117, 47, 37, 117, 58, 0, 32, 45, 0, 32, 0, 32, 37, 48, 50, 88, 0, 83, 79, 70, 84, 87, 65, 82, 69, 32, 80, 73, 82, 65, 84, 69, 83, 0, 99, 112, 50, 58, 32, 110, 111, 116, 32, 97, 32, 67, 80, 50, 32, 102, 105, 108, 101, 10, 0, 99, 112, 50, 58, 32, 119, 97, 114, 110, 105, 110, 103, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 67, 80, 50, 32, 118, 101, 114, 115, 105, 111, 110, 10, 0, 82, 101, 108, 101, 97, 115, 101, 32, 51, 46, 48, 50, 36, 48, 0, 82, 101, 108, 101, 97, 115, 101, 32, 51, 46, 48, 55, 36, 48, 0, 82, 101, 108, 101, 97, 115, 101, 32, 52, 46, 48, 48, 36, 48, 0, 82, 101, 108, 101, 97, 115, 101, 32, 53, 46, 48, 49, 36, 48, 0, 82, 101, 108, 101, 97, 115, 101, 32, 54, 46, 48, 10, 36, 48, 0, 100, 99, 52, 50, 58, 32, 100, 97, 116, 97, 32, 99, 104, 101, 99, 107, 115, 117, 109, 32, 101, 114, 114, 111, 114, 10, 0, 100, 99, 52, 50, 58, 32, 116, 97, 103, 32, 99, 104, 101, 99, 107, 115, 117, 109, 32, 101, 114, 114, 111, 114, 10, 0, 6, 78, 111, 110, 97, 109, 101, 0, 73, 77, 68, 32, 49, 46, 49, 55, 58, 32, 37, 50, 100, 47, 37, 50, 100, 47, 37, 52, 100, 32, 37, 48, 50, 100, 58, 37, 48, 50, 100, 58, 37, 48, 50, 100, 0, 112, 115, 105, 58, 32, 99, 114, 99, 32, 101, 114, 114, 111, 114, 10, 0, 112, 115, 105, 58, 32, 111, 114, 112, 104, 97, 110, 101, 100, 32, 97, 108, 116, 101, 114, 110, 97, 116, 101, 32, 115, 101, 99, 116, 111, 114, 10, 0, 112, 115, 105, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 118, 101, 114, 115, 105, 111, 110, 32, 40, 37, 108, 117, 41, 10, 0, 115, 116, 120, 58, 32, 98, 97, 100, 32, 109, 97, 103, 105, 99, 10, 0, 115, 116, 120, 58, 32, 114, 101, 97, 100, 32, 101, 114, 114, 111, 114, 32, 40, 116, 114, 97, 99, 107, 32, 104, 101, 97, 100, 101, 114, 41, 10, 0, 116, 114, 97, 99, 107, 45, 37, 48, 51, 117, 45, 37, 117, 46, 100, 97, 116, 0, 115, 116, 120, 58, 32, 114, 101, 97, 100, 32, 101, 114, 114, 111, 114, 32, 40, 115, 101, 99, 116, 111, 114, 32, 104, 101, 97, 100, 101, 114, 41, 10, 0, 161, 161, 161, 254, 0, 37, 117, 47, 37, 117, 47, 37, 117, 10, 0, 115, 116, 120, 58, 32, 114, 101, 97, 100, 32, 101, 114, 114, 111, 114, 32, 40, 115, 101, 99, 116, 111, 114, 32, 100, 97, 116, 97, 41, 10, 0, 102, 109, 0, 109, 102, 109, 0, 116, 99, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 109, 97, 114, 107, 32, 48, 120, 37, 48, 50, 120, 32, 40, 37, 115, 44, 32, 99, 61, 37, 117, 44, 32, 104, 61, 37, 117, 44, 32, 98, 105, 116, 61, 37, 108, 117, 47, 37, 108, 117, 41, 10, 0, 116, 100, 48, 58, 32, 97, 100, 118, 97, 110, 99, 101, 100, 32, 99, 111, 109, 112, 114, 101, 115, 115, 105, 111, 110, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 10, 0, 116, 100, 48, 58, 32, 104, 101, 97, 100, 101, 114, 32, 99, 114, 99, 32, 40, 37, 48, 52, 88, 32, 37, 48, 52, 88, 41, 10, 0, 116, 100, 48, 58, 32, 116, 114, 97, 99, 107, 32, 99, 114, 99, 32, 40, 37, 48, 50, 88, 32, 37, 48, 52, 88, 41, 10, 0, 116, 100, 48, 58, 32, 99, 114, 99, 32, 101, 114, 114, 111, 114, 32, 97, 116, 32, 115, 101, 99, 116, 111, 114, 32, 37, 117, 47, 37, 117, 47, 37, 117, 32, 40, 110, 111, 32, 100, 97, 116, 97, 41, 10, 0, 116, 100, 48, 58, 32, 122, 101, 114, 111, 32, 100, 97, 116, 97, 32, 108, 101, 110, 103, 116, 104, 32, 40, 37, 117, 47, 37, 117, 47, 37, 117, 41, 10, 0, 116, 100, 48, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 99, 111, 109, 112, 114, 101, 115, 115, 105, 111, 110, 32, 40, 37, 117, 47, 37, 117, 47, 37, 117, 32, 37, 117, 41, 10, 0, 116, 100, 48, 58, 32, 115, 101, 99, 116, 111, 114, 32, 99, 114, 99, 32, 111, 118, 101, 114, 32, 104, 101, 97, 100, 101, 114, 43, 100, 97, 116, 97, 10, 0, 116, 100, 48, 58, 32, 99, 114, 99, 32, 101, 114, 114, 111, 114, 32, 97, 116, 32, 115, 101, 99, 116, 111, 114, 32, 37, 117, 47, 37, 117, 47, 37, 117, 32, 40, 37, 48, 50, 88, 32, 37, 48, 52, 88, 32, 37, 48, 52, 88, 41, 10, 0, 116, 100, 48, 58, 32, 100, 114, 111, 112, 112, 105, 110, 103, 32, 112, 104, 97, 110, 116, 111, 109, 32, 115, 101, 99, 116, 111, 114, 32, 37, 117, 47, 37, 117, 47, 37, 117, 10, 0, 116, 100, 48, 58, 32, 114, 101, 97, 100, 32, 101, 114, 114, 111, 114, 10, 0, 116, 100, 48, 58, 32, 99, 111, 109, 109, 101, 110, 116, 32, 99, 114, 99, 32, 40, 37, 48, 52, 88, 32, 37, 48, 52, 88, 41, 10, 0, 112, 102, 100, 99, 58, 32, 119, 97, 114, 110, 105, 110, 103, 58, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 101, 112, 114, 101, 99, 97, 116, 101, 100, 32, 118, 101, 114, 115, 105, 111, 110, 32, 48, 32, 102, 105, 108, 101, 10, 0, 112, 102, 100, 99, 58, 32, 119, 97, 114, 110, 105, 110, 103, 58, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 101, 112, 114, 101, 99, 97, 116, 101, 100, 32, 118, 101, 114, 115, 105, 111, 110, 32, 49, 32, 102, 105, 108, 101, 10, 0, 112, 102, 100, 99, 58, 32, 119, 97, 114, 110, 105, 110, 103, 58, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 101, 112, 114, 101, 99, 97, 116, 101, 100, 32, 118, 101, 114, 115, 105, 111, 110, 32, 50, 32, 102, 105, 108, 101, 10, 0, 112, 102, 100, 99, 58, 32, 99, 114, 99, 32, 101, 114, 114, 111, 114, 10, 0, 112, 102, 100, 99, 58, 32, 111, 114, 112, 104, 97, 110, 101, 100, 32, 97, 108, 116, 101, 114, 110, 97, 116, 101, 32, 115, 101, 99, 116, 111, 114, 10, 0, 112, 102, 100, 99, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 118, 101, 114, 115, 105, 111, 110, 32, 40, 37, 108, 117, 41, 10, 0, 119, 97, 118, 102, 105, 108, 116, 101, 114, 0, 108, 111, 119, 112, 97, 115, 115, 0, 119, 97, 118, 0, 115, 110, 100, 45, 115, 100, 108, 58, 32, 98, 117, 102, 102, 101, 114, 32, 117, 110, 100, 101, 114, 114, 117, 110, 0, 115, 110, 100, 45, 115, 100, 108, 58, 32, 101, 114, 114, 111, 114, 32, 105, 110, 105, 116, 105, 97, 108, 105, 122, 105, 110, 103, 32, 97, 117, 100, 105, 111, 32, 115, 117, 98, 115, 121, 115, 116, 101, 109, 32, 40, 37, 115, 41, 10, 0, 115, 110, 100, 45, 115, 100, 108, 58, 32, 101, 114, 114, 111, 114, 32, 111, 112, 101, 110, 105, 110, 103, 32, 111, 117, 116, 112, 117, 116, 32, 40, 37, 115, 41, 10, 0, 115, 114, 97, 116, 101, 58, 32, 37, 108, 117, 58, 37, 100, 32, 37, 102, 10, 0, 121, 101, 115, 0, 110, 111, 0, 65, 32, 32, 37, 48, 56, 108, 88, 32, 32, 37, 48, 52, 88, 32, 32, 37, 48, 52, 88, 10, 0, 83, 32, 32, 37, 48, 52, 88, 58, 37, 48, 52, 108, 88, 32, 32, 37, 48, 52, 88, 32, 32, 37, 48, 52, 88, 10, 0, 69, 32, 32, 34, 37, 115, 34, 10, 0, 37, 52, 117, 32, 32, 0, 98, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 99, 111, 109, 109, 97, 110, 100, 0, 101, 120, 112, 101, 99, 116, 105, 110, 103, 32, 97, 100, 100, 114, 101, 115, 115, 0, 101, 120, 112, 101, 99, 116, 105, 110, 103, 32, 111, 102, 102, 115, 101, 116, 0, 101, 120, 112, 101, 99, 116, 105, 110, 103, 32, 101, 120, 112, 114, 101, 115, 115, 105, 111, 110, 0, 42, 42, 42, 32, 37, 115, 32, 91, 37, 115, 93, 10, 0, 105, 100, 101, 110, 116, 105, 102, 105, 101, 114, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 115, 116, 114, 105, 110, 103, 32, 116, 111, 111, 32, 108, 111, 110, 103, 0, 115, 121, 110, 116, 97, 120, 32, 101, 114, 114, 111, 114, 0, 43, 61, 0, 45, 61, 0, 42, 61, 0, 47, 61, 0, 60, 60, 61, 0, 62, 62, 61, 0, 124, 61, 0, 38, 61, 0, 94, 61, 0, 60, 60, 60, 0, 62, 62, 62, 0, 37, 115, 10, 10, 0, 37, 115, 10, 0, 32, 32, 45, 37, 99, 0, 44, 32, 0, 32, 32, 0, 45, 45, 37, 115, 0, 32, 37, 115, 0, 37, 115, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 111, 112, 116, 105, 111, 110, 32, 40, 37, 115, 41, 10, 0, 37, 115, 58, 32, 109, 105, 115, 115, 105, 110, 103, 32, 111, 112, 116, 105, 111, 110, 32, 97, 114, 103, 117, 109, 101, 110, 116, 32, 40, 37, 115, 41, 10, 0, 37, 115, 58, 32, 117, 110, 107, 110, 111, 119, 110, 32, 111, 112, 116, 105, 111, 110, 32, 40, 45, 37, 99, 41, 10, 0, 37, 115, 58, 32, 109, 105, 115, 115, 105, 110, 103, 32, 111, 112, 116, 105, 111, 110, 32, 97, 114, 103, 117, 109, 101, 110, 116, 32, 40, 45, 37, 99, 41, 10, 0, 99, 111, 119, 0, 68, 73, 83, 75, 58, 0, 42, 42, 42, 32, 99, 111, 119, 32, 102, 97, 105, 108, 101, 100, 32, 40, 100, 114, 105, 118, 101, 61, 37, 117, 32, 102, 105, 108, 101, 61, 37, 115, 41, 10, 0, 100, 114, 105, 118, 101, 61, 37, 117, 32, 116, 121, 112, 101, 61, 99, 111, 119, 32, 102, 105, 108, 101, 61, 37, 115, 10, 0, 100, 114, 105, 118, 101, 0, 116, 121, 112, 101, 0, 111, 102, 102, 115, 101, 116, 0, 98, 108, 111, 99, 107, 115, 0, 115, 105, 122, 101, 103, 0, 114, 101, 97, 100, 111, 110, 108, 121, 0, 111, 112, 116, 105, 111, 110, 97, 108, 0, 105, 109, 97, 103, 101, 0, 100, 111, 115, 101, 109, 117, 0, 113, 101, 100, 0, 112, 97, 114, 116, 105, 116, 105, 111, 110, 0, 97, 110, 97, 100, 105, 115, 107, 0, 99, 112, 50, 0, 100, 99, 52, 50, 0, 105, 109, 97, 103, 101, 100, 105, 115, 107, 0, 105, 109, 100, 0, 112, 102, 100, 99, 0, 112, 102, 100, 99, 45, 97, 117, 116, 111, 0, 112, 115, 105, 0, 116, 101, 108, 101, 100, 105, 115, 107, 0, 42, 42, 42, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 48, 120, 37, 48, 50, 120, 32, 102, 97, 105, 108, 101, 100, 10, 0, 114, 111, 0, 114, 119, 0, 60, 62, 0, 100, 114, 105, 118, 101, 61, 37, 117, 32, 116, 121, 112, 101, 61, 37, 115, 32, 98, 108, 111, 99, 107, 115, 61, 37, 108, 117, 32, 99, 104, 115, 61, 37, 108, 117, 47, 37, 108, 117, 47, 37, 108, 117, 32, 37, 115, 32, 102, 105, 108, 101, 61, 37, 115, 10, 0, 42, 42, 42, 32, 108, 111, 97, 100, 105, 110, 103, 32, 100, 114, 105, 118, 101, 32, 48, 120, 37, 48, 50, 120, 32, 102, 97, 105, 108, 101, 100, 32, 40, 99, 111, 119, 41, 10, 0, 118, 105, 115, 105, 98, 108, 101, 95, 99, 0, 118, 105, 115, 105, 98, 108, 101, 95, 104, 0, 118, 105, 115, 105, 98, 108, 101, 95, 115, 0, 100, 114, 105, 118, 101, 61, 37, 117, 32, 118, 99, 104, 115, 61, 37, 108, 117, 47, 37, 108, 117, 47, 37, 108, 117, 10, 0, 98, 108, 111, 99, 107, 95, 115, 116, 97, 114, 116, 0, 98, 108, 111, 99, 107, 95, 99, 111, 117, 110, 116, 0, 100, 105, 115, 107, 0, 114, 97, 109, 0, 115, 105, 122, 101, 109, 0, 115, 105, 122, 101, 107, 0, 115, 105, 122, 101, 0, 100, 101, 102, 97, 117, 108, 116, 0, 82, 65, 77, 58, 0, 97, 100, 100, 114, 61, 48, 120, 37, 48, 56, 108, 120, 32, 115, 105, 122, 101, 61, 37, 108, 117, 32, 102, 105, 108, 101, 61, 37, 115, 10, 0, 42, 42, 42, 32, 109, 101, 109, 111, 114, 121, 32, 98, 108, 111, 99, 107, 32, 99, 114, 101, 97, 116, 105, 111, 110, 32, 102, 97, 105, 108, 101, 100, 10, 0, 42, 42, 42, 32, 108, 111, 97, 100, 105, 110, 103, 32, 114, 97, 109, 32, 102, 97, 105, 108, 101, 100, 32, 40, 37, 115, 41, 10, 0, 114, 111, 109, 0, 82, 79, 77, 58, 0, 42, 42, 42, 32, 108, 111, 97, 100, 105, 110, 103, 32, 114, 111, 109, 32, 102, 97, 105, 108, 101, 100, 32, 40, 37, 115, 41, 10, 0, 116, 101, 114, 109, 105, 110, 97, 108, 0, 100, 114, 105, 118, 101, 114, 0, 110, 117, 108, 108, 0, 101, 115, 99, 97, 112, 101, 0, 97, 115, 112, 101, 99, 116, 95, 120, 0, 97, 115, 112, 101, 99, 116, 95, 121, 0, 109, 105, 110, 95, 119, 0, 109, 105, 110, 95, 104, 0, 115, 99, 97, 108, 101, 0, 109, 111, 117, 115, 101, 95, 109, 117, 108, 95, 120, 0, 109, 111, 117, 115, 101, 95, 100, 105, 118, 95, 120, 0, 109, 111, 117, 115, 101, 95, 109, 117, 108, 95, 121, 0, 109, 111, 117, 115, 101, 95, 100, 105, 118, 95, 121, 0, 84, 69, 82, 77, 58, 0, 100, 114, 105, 118, 101, 114, 61, 37, 115, 32, 69, 83, 67, 61, 37, 115, 32, 97, 115, 112, 101, 99, 116, 61, 37, 117, 47, 37, 117, 32, 109, 105, 110, 95, 115, 105, 122, 101, 61, 37, 117, 42, 37, 117, 32, 115, 99, 97, 108, 101, 61, 37, 117, 32, 109, 111, 117, 115, 101, 61, 91, 37, 117, 47, 37, 117, 32, 37, 117, 47, 37, 117, 93, 10, 0, 120, 49, 49, 0, 42, 42, 42, 32, 116, 101, 114, 109, 105, 110, 97, 108, 32, 100, 114, 105, 118, 101, 114, 32, 39, 120, 49, 49, 39, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 10, 0, 115, 100, 108, 0, 42, 42, 42, 32, 115, 101, 116, 116, 105, 110, 103, 32, 117, 112, 32, 115, 100, 108, 32, 116, 101, 114, 109, 105, 110, 97, 108, 32, 102, 97, 105, 108, 101, 100, 10, 0, 42, 42, 42, 32, 115, 101, 116, 116, 105, 110, 103, 32, 117, 112, 32, 110, 117, 108, 108, 32, 116, 101, 114, 109, 105, 110, 97, 108, 32, 102, 97, 105, 108, 101, 100, 10, 0, 42, 42, 42, 32, 117, 110, 107, 110, 111, 119, 110, 32, 116, 101, 114, 109, 105, 110, 97, 108, 32, 100, 114, 105, 118, 101, 114, 58, 32, 37, 115, 10, 0, 42, 42, 42, 32, 110, 111, 32, 116, 101, 114, 109, 105, 110, 97, 108, 32, 102, 111, 117, 110, 100, 10, 0, 76, 111, 97, 100, 58, 0, 102, 105, 108, 101, 61, 37, 115, 32, 102, 111, 114, 109, 97, 116, 61, 105, 104, 101, 120, 10, 0, 102, 105, 108, 101, 61, 37, 115, 32, 102, 111, 114, 109, 97, 116, 61, 115, 114, 101, 99, 10, 0, 102, 105, 108, 101, 61, 37, 115, 32, 102, 111, 114, 109, 97, 116, 61, 98, 105, 110, 97, 114, 121, 32, 97, 100, 100, 114, 61, 48, 120, 37, 48, 56, 108, 120, 10, 0, 97, 117, 116, 111, 0, 105, 104, 101, 120, 0, 105, 104, 120, 0, 115, 114, 101, 99, 0, 98, 105, 110, 0, 98, 105, 110, 97, 114, 121, 0, 102, 111, 114, 109, 97, 116, 0, 102, 105, 108, 101, 0, 97, 100, 100, 114, 101, 115, 115, 0, 98, 97, 115, 101, 0, 42, 42, 42, 32, 108, 111, 97, 100, 105, 110, 103, 32, 102, 97, 105, 108, 101, 100, 32, 40, 37, 115, 41, 10, 0, 37, 45, 57, 115, 32, 0, 91, 97, 100, 100, 114, 32, 91, 99, 110, 116, 93, 93, 0, 100, 117, 109, 112, 32, 109, 101, 109, 111, 114, 121, 0, 97, 100, 100, 114, 32, 91, 118, 97, 108, 124, 115, 116, 114, 105, 110, 103, 46, 46, 46, 93, 0, 101, 110, 116, 101, 114, 32, 98, 121, 116, 101, 115, 32, 105, 110, 116, 111, 32, 109, 101, 109, 111, 114, 121, 0, 97, 100, 100, 114, 32, 99, 110, 116, 32, 91, 118, 97, 108, 46, 46, 46, 93, 0, 102, 105, 110, 100, 32, 98, 121, 116, 101, 115, 32, 105, 110, 32, 109, 101, 109, 111, 114, 121, 0, 112, 114, 105, 110, 116, 32, 104, 101, 108, 112, 0, 108, 111, 97, 100, 0, 110, 97, 109, 101, 32, 91, 102, 109, 116, 93, 32, 91, 97, 32, 91, 110, 93, 93, 0, 114, 101, 97, 100, 32, 97, 32, 102, 105, 108, 101, 32, 105, 110, 116, 111, 32, 109, 101, 109, 111, 114, 121, 0, 109, 115, 103, 32, 91, 118, 97, 108, 93, 0, 115, 101, 110, 100, 32, 97, 32, 109, 101, 115, 115, 97, 103, 101, 32, 116, 111, 32, 116, 104, 101, 32, 101, 109, 117, 108, 97, 116, 111, 114, 32, 99, 111, 114, 101, 0, 113, 117, 105, 116, 0, 115, 97, 118, 101, 0, 110, 97, 109, 101, 32, 91, 102, 109, 116, 93, 32, 91, 97, 32, 110, 46, 46, 46, 93, 0, 119, 114, 105, 116, 101, 32, 109, 101, 109, 111, 114, 121, 32, 116, 111, 32, 97, 32, 102, 105, 108, 101, 0, 91, 101, 120, 112, 114, 46, 46, 46, 93, 0, 101, 118, 97, 108, 117, 97, 116, 101, 32, 101, 120, 112, 114, 101, 115, 115, 105, 111, 110, 115, 0, 115, 114, 99, 32, 100, 115, 116, 32, 99, 110, 116, 0, 99, 111, 112, 121, 32, 109, 101, 109, 111, 114, 121, 0, 98, 99, 0, 91, 105, 110, 100, 101, 120, 93, 0, 99, 108, 101, 97, 114, 32, 97, 32, 98, 114, 101, 97, 107, 112, 111, 105, 110, 116, 32, 111, 114, 32, 97, 108, 108, 0, 98, 108, 0, 108, 105, 115, 116, 32, 98, 114, 101, 97, 107, 112, 111, 105, 110, 116, 115, 0, 98, 115, 0, 97, 100, 100, 114, 32, 91, 112, 97, 115, 115, 32, 91, 114, 101, 115, 101, 116, 93, 93, 0, 115, 101, 116, 32, 97, 110, 32, 97, 100, 100, 114, 101, 115, 115, 32, 98, 114, 101, 97, 107, 112, 111, 105, 110, 116, 32, 91, 112, 97, 115, 115, 61, 49, 32, 114, 101, 115, 101, 116, 61, 48, 93, 0, 98, 115, 120, 0, 101, 120, 112, 114, 32, 91, 112, 97, 115, 115, 32, 91, 114, 101, 115, 101, 116, 93, 93, 0, 115, 101, 116, 32, 97, 110, 32, 101, 120, 112, 114, 101, 115, 115, 105, 111, 110, 32, 98, 114, 101, 97, 107, 112, 111, 105, 110, 116, 32, 91, 112, 97, 115, 115, 61, 49, 32, 114, 101, 115, 101, 116, 61, 48, 93, 0, 32, 9, 0, 112, 97, 116, 104, 0, 112, 97, 114, 115, 101, 32, 101, 114, 114, 111, 114, 32, 98, 101, 102, 111, 114, 101, 0, 60, 110, 111, 110, 101, 62, 0, 37, 115, 58, 37, 108, 117, 58, 32, 37, 115, 0, 58, 32, 0, 60, 101, 111, 102, 62, 0, 60, 110, 108, 62, 0, 10, 0, 115, 101, 99, 116, 105, 111, 110, 0, 123, 0, 125, 0, 63, 61, 0, 105, 102, 0, 105, 110, 99, 108, 117, 100, 101, 0, 99, 97, 110, 39, 116, 32, 111, 112, 101, 110, 32, 105, 110, 99, 108, 117, 100, 101, 32, 102, 105, 108, 101, 58, 0, 101, 108, 115, 101, 0, 63, 0, 58, 0, 124, 124, 0, 38, 38, 0, 124, 0, 94, 94, 0, 94, 0, 38, 0, 61, 61, 0, 33, 61, 0, 60, 61, 0, 62, 61, 0, 62, 0, 60, 60, 0, 62, 62, 0, 43, 0, 37, 108, 117, 0, 42, 0, 37, 0, 126, 0, 33, 0, 40, 0, 41, 0, 100, 101, 102, 105, 110, 101, 100, 0, 116, 114, 117, 101, 0, 102, 97, 108, 115, 101, 0, 48, 120, 0, 48, 98, 0, 119, 43, 98, 0, 99, 111, 109, 109, 105, 116, 0, 114, 43, 98, 0, 114, 98, 0, 69, 83, 67, 0, 70, 49, 0, 70, 50, 0, 70, 51, 0, 70, 52, 0, 70, 53, 0, 70, 54, 0, 70, 55, 0, 70, 56, 0, 70, 57, 0, 70, 49, 48, 0, 70, 49, 49, 0, 70, 49, 50, 0, 80, 114, 105, 110, 116, 83, 99, 114, 101, 101, 110, 0, 80, 114, 116, 83, 99, 110, 0, 83, 99, 114, 111, 108, 108, 76, 111, 99, 107, 0, 83, 99, 114, 76, 107, 0, 80, 97, 117, 115, 101, 0, 66, 97, 99, 107, 113, 117, 111, 116, 101, 0, 96, 0, 57, 0, 77, 105, 110, 117, 115, 0, 45, 0, 69, 113, 117, 97, 108, 0, 61, 0, 66, 97, 99, 107, 115, 112, 97, 99, 101, 0, 84, 97, 98, 0, 113, 0, 119, 0, 101, 0, 114, 0, 116, 0, 121, 0, 117, 0, 73, 0, 111, 0, 112, 0, 76, 101, 102, 116, 66, 114, 97, 99, 107, 101, 116, 0, 91, 0, 82, 105, 103, 104, 116, 66, 114, 97, 99, 107, 101, 116, 0, 93, 0, 82, 101, 116, 117, 114, 110, 0, 67, 97, 112, 115, 76, 111, 99, 107, 0, 97, 0, 115, 0, 100, 0, 102, 0, 103, 0, 104, 0, 106, 0, 107, 0, 108, 0, 83, 101, 109, 105, 99, 111, 108, 111, 110, 0, 59, 0, 81, 117, 111, 116, 101, 0, 65, 112, 111, 115, 116, 114, 111, 112, 104, 101, 0, 39, 0, 66, 97, 99, 107, 115, 108, 97, 115, 104, 0, 92, 0, 83, 104, 105, 102, 116, 76, 101, 102, 116, 0, 83, 104, 105, 102, 116, 0, 76, 101, 115, 115, 0, 60, 0, 122, 0, 120, 0, 99, 0, 118, 0, 98, 0, 110, 0, 109, 0, 67, 111, 109, 109, 97, 0, 44, 0, 80, 101, 114, 105, 111, 100, 0, 83, 108, 97, 115, 104, 0, 47, 0, 67, 116, 114, 108, 76, 101, 102, 116, 0, 67, 116, 114, 108, 0, 77, 101, 116, 97, 76, 101, 102, 116, 0, 77, 101, 116, 97, 0, 83, 117, 112, 101, 114, 76, 101, 102, 116, 0, 83, 116, 97, 114, 116, 76, 101, 102, 116, 0, 87, 105, 110, 100, 111, 119, 115, 76, 101, 102, 116, 0, 77, 111, 100, 101, 0, 65, 108, 116, 76, 101, 102, 116, 0, 65, 108, 116, 0, 83, 112, 97, 99, 101, 0, 65, 108, 116, 82, 105, 103, 104, 116, 0, 77, 101, 116, 97, 82, 105, 103, 104, 116, 0, 83, 117, 112, 101, 114, 82, 105, 103, 104, 116, 0, 83, 116, 97, 114, 116, 82, 105, 103, 104, 116, 0, 87, 105, 110, 100, 111, 119, 115, 82, 105, 103, 104, 116, 0, 77, 101, 110, 117, 0, 67, 116, 114, 108, 82, 105, 103, 104, 116, 0, 78, 117, 109, 76, 111, 99, 107, 0, 75, 80, 95, 83, 108, 97, 115, 104, 0, 75, 80, 95, 83, 116, 97, 114, 0, 75, 80, 95, 77, 105, 110, 117, 115, 0, 75, 80, 95, 55, 0, 75, 80, 95, 56, 0, 75, 80, 95, 57, 0, 75, 80, 95, 80, 108, 117, 115, 0, 75, 80, 95, 52, 0, 75, 80, 95, 53, 0, 75, 80, 95, 54, 0, 75, 80, 95, 49, 0, 75, 80, 95, 50, 0, 75, 80, 95, 51, 0, 75, 80, 95, 69, 110, 116, 101, 114, 0, 75, 80, 95, 48, 0, 75, 80, 95, 80, 101, 114, 105, 111, 100, 0, 73, 110, 115, 101, 114, 116, 0, 72, 111, 109, 101, 0, 80, 97, 103, 101, 85, 112, 0, 68, 101, 108, 101, 116, 101, 0, 69, 110, 100, 0, 80, 97, 103, 101, 68, 111, 119, 110, 0, 85, 112, 0, 76, 101, 102, 116, 0, 68, 111, 119, 110, 0, 82, 105, 103, 104, 116, 0, 69, 120, 116, 114, 97, 49, 0, 69, 120, 116, 114, 97, 50, 0, 69, 120, 116, 114, 97, 51, 0, 69, 120, 116, 114, 97, 52, 0, 69, 120, 116, 114, 97, 53, 0, 69, 120, 116, 114, 97, 54, 0, 69, 120, 116, 114, 97, 55, 0, 69, 120, 116, 114, 97, 56, 0, 69, 120, 116, 114, 97, 57, 0, 69, 120, 116, 114, 97, 49, 48, 0, 69, 120, 116, 114, 97, 49, 49, 0, 69, 120, 116, 114, 97, 49, 50, 0, 69, 120, 116, 114, 97, 49, 51, 0, 69, 120, 116, 114, 97, 49, 52, 0, 69, 120, 116, 114, 97, 49, 53, 0, 69, 120, 116, 114, 97, 49, 54, 0, 112, 99, 101, 37, 48, 52, 117, 46, 112, 112, 109, 0, 119, 98, 0, 80, 54, 10, 37, 117, 32, 37, 117, 10, 37, 117, 10, 0, 116, 101, 114, 109, 46, 101, 115, 99, 97, 112, 101, 0, 116, 101, 114, 109, 46, 115, 99, 114, 101, 101, 110, 115, 104, 111, 116, 0, 48, 0, 101, 109, 117, 46, 99, 112, 117, 46, 115, 112, 101, 101, 100, 0, 50, 0, 51, 0, 52, 0, 53, 0, 54, 0, 55, 0, 56, 0, 101, 109, 117, 46, 112, 97, 117, 115, 101, 46, 116, 111, 103, 103, 108, 101, 0, 101, 109, 117, 46, 114, 101, 115, 101, 116, 0, 101, 109, 117, 46, 99, 112, 117, 46, 115, 112, 101, 101, 100, 46, 115, 116, 101, 112, 0, 45, 49, 0, 43, 49, 0, 102, 117, 108, 108, 115, 99, 114, 101, 101, 110, 0, 98, 111, 114, 100, 101, 114, 0, 114, 101, 112, 111, 114, 116, 95, 107, 101, 121, 115, 0, 107, 101, 121, 109, 97, 112, 0, 101, 109, 117, 46, 101, 120, 105, 116, 0, 49, 0, 101, 109, 117, 46, 115, 116, 111, 112, 0, 115, 100, 108, 58, 32, 107, 101, 121, 32, 61, 32, 48, 120, 37, 48, 52, 120, 10, 0, 115, 100, 108, 58, 32, 98, 108, 105, 116, 32, 101, 114, 114, 111, 114, 10, 0, 116, 101, 114, 109, 46, 103, 114, 97, 98, 0, 116, 101, 114, 109, 46, 114, 101, 108, 101, 97, 115, 101, 0, 116, 101, 114, 109, 46, 116, 105, 116, 108, 101, 0, 116, 101, 114, 109, 46, 115, 101, 116, 95, 98, 111, 114, 100, 101, 114, 95, 120, 0, 116, 101, 114, 109, 46, 115, 101, 116, 95, 98, 111, 114, 100, 101, 114, 95, 121, 0, 116, 101, 114, 109, 46, 102, 117, 108, 108, 115, 99, 114, 101, 101, 110, 46, 116, 111, 103, 103, 108, 101, 0, 116, 101, 114, 109, 46, 102, 117, 108, 108, 115, 99, 114, 101, 101, 110, 0, 112, 99, 101, 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, 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, 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, 110, 97, 110, 0, 78, 65, 78, 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70, 46, 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, 114, 119, 97, 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], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE + 45624); 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.length : 0; if (prevCapacity >= newCapacity) return; var CAPACITY_DOUBLING_MAX = 1024 * 1024; newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); var oldContents = node.contents; node.contents = new Uint8Array(newCapacity); if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); return } 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) { var entries = [".", ".."]; for (var key in node.contents) { if (!node.contents.hasOwnProperty(key)) { continue } entries.push(key) } return entries }), symlink: (function (parent, newName, oldPath) { throw new FS.ErrnoError(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) }), mkdirTree: (function (path, mode) { var dirs = path.split("/"); var d = ""; for (var i = 0; i < dirs.length; ++i) { if (!dirs[i]) continue; d += "/" + dirs[i]; try { FS.mkdir(d, mode) } catch (e) { if (e.errno != ERRNO_CODES.EEXIST) throw e } } }), mkdev: (function (path, mode, dev) { if (typeof dev === "undefined") { dev = mode; mode = 438 } mode |= 8192; return FS.mknod(path, mode, dev) }), symlink: (function (oldpath, newpath) { if (!PATH.resolve(oldpath)) { throw new FS.ErrnoError(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 (lookup.node === null) { throw new FS.ErrnoError(ERRNO_CODES.ENOENT) } 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 = "" })) }), 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 }) }; function _emscripten_set_main_loop_timing(mode, value) { Browser.mainLoop.timingMode = mode; Browser.mainLoop.timingValue = value; if (!Browser.mainLoop.func) { return 1 } if (mode == 0) { Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setTimeout() { var timeUntilNextTick = Math.max(0, Browser.mainLoop.tickStartTime + value - _emscripten_get_now()) | 0; setTimeout(Browser.mainLoop.runner, timeUntilNextTick) }; Browser.mainLoop.method = "timeout" } else if (mode == 1) { Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_rAF() { Browser.requestAnimationFrame(Browser.mainLoop.runner) }; Browser.mainLoop.method = "rAF" } else if (mode == 2) { if (!window["setImmediate"]) { var setImmediates = []; var emscriptenMainLoopMessageId = "setimmediate"; function Browser_setImmediate_messageHandler(event) { if (event.source === window && event.data === emscriptenMainLoopMessageId) { event.stopPropagation(); setImmediates.shift()() } } window.addEventListener("message", Browser_setImmediate_messageHandler, true); window["setImmediate"] = function Browser_emulated_setImmediate(func) { setImmediates.push(func); if (ENVIRONMENT_IS_WORKER) { if (Module["setImmediates"] === undefined) Module["setImmediates"] = []; Module["setImmediates"].push(func); window.postMessage({ target: emscriptenMainLoopMessageId }) } else window.postMessage(emscriptenMainLoopMessageId, "*") } } Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setImmediate() { window["setImmediate"](Browser.mainLoop.runner) }; Browser.mainLoop.method = "immediate" } return 0 } function _emscripten_get_now() { abort() } function _emscripten_set_main_loop(func, fps, simulateInfiniteLoop, arg, noSetTiming) { Module["noExitRuntime"] = true; assert(!Browser.mainLoop.func, "emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."); Browser.mainLoop.func = func; Browser.mainLoop.arg = arg; var browserIterationFunc; if (typeof arg !== "undefined") { browserIterationFunc = (function () { Module["dynCall_vi"](func, arg) }) } else { browserIterationFunc = (function () { Module["dynCall_v"](func) }) } var thisMainLoopId = Browser.mainLoop.currentlyRunningMainloop; Browser.mainLoop.runner = function Browser_mainLoop_runner() { if (ABORT) return; if (Browser.mainLoop.queue.length > 0) { var start = Date.now(); var blocker = Browser.mainLoop.queue.shift(); blocker.func(blocker.arg); if (Browser.mainLoop.remainingBlockers) { var remaining = Browser.mainLoop.remainingBlockers; var next = remaining % 1 == 0 ? remaining - 1 : Math.floor(remaining); if (blocker.counted) { Browser.mainLoop.remainingBlockers = next } else { next = next + .5; Browser.mainLoop.remainingBlockers = (8 * remaining + next) / 9 } } console.log('main loop blocker "' + blocker.name + '" took ' + (Date.now() - start) + " ms"); Browser.mainLoop.updateStatus(); if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return; setTimeout(Browser.mainLoop.runner, 0); return } if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return; Browser.mainLoop.currentFrameNumber = Browser.mainLoop.currentFrameNumber + 1 | 0; if (Browser.mainLoop.timingMode == 1 && Browser.mainLoop.timingValue > 1 && Browser.mainLoop.currentFrameNumber % Browser.mainLoop.timingValue != 0) { Browser.mainLoop.scheduler(); return } else if (Browser.mainLoop.timingMode == 0) { Browser.mainLoop.tickStartTime = _emscripten_get_now() } if (Browser.mainLoop.method === "timeout" && Module.ctx) { Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"); Browser.mainLoop.method = "" } Browser.mainLoop.runIter(browserIterationFunc); if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return; if (typeof SDL === "object" && SDL.audio && SDL.audio.queueNewAudioData) SDL.audio.queueNewAudioData(); Browser.mainLoop.scheduler() }; if (!noSetTiming) { if (fps && fps > 0) _emscripten_set_main_loop_timing(0, 1e3 / fps); else _emscripten_set_main_loop_timing(1, 1); Browser.mainLoop.scheduler() } if (simulateInfiniteLoop) { throw "SimulateInfiniteLoop" } } var Browser = { mainLoop: { scheduler: null, method: "", currentlyRunningMainloop: 0, func: null, arg: 0, timingMode: 0, timingValue: 0, currentFrameNumber: 0, queue: [], pause: (function () { Browser.mainLoop.scheduler = null; Browser.mainLoop.currentlyRunningMainloop++ }), resume: (function () { Browser.mainLoop.currentlyRunningMainloop++; var timingMode = Browser.mainLoop.timingMode; var timingValue = Browser.mainLoop.timingValue; var func = Browser.mainLoop.func; Browser.mainLoop.func = null; _emscripten_set_main_loop(func, 0, false, Browser.mainLoop.arg, true); _emscripten_set_main_loop_timing(timingMode, timingValue); Browser.mainLoop.scheduler() }), updateStatus: (function () { if (Module["setStatus"]) { var message = Module["statusMessage"] || "Please wait..."; var remaining = Browser.mainLoop.remainingBlockers; var expected = Browser.mainLoop.expectedBlockers; if (remaining) { if (remaining < expected) { Module["setStatus"](message + " (" + (expected - remaining) + "/" + expected + ")") } else { Module["setStatus"](message) } } else { Module["setStatus"]("") } } }), runIter: (function (func) { if (ABORT) return; if (Module["preMainLoop"]) { var preRet = Module["preMainLoop"](); if (preRet === false) { return } } try { func() } catch (e) { if (e instanceof ExitStatus) { return } else { if (e && typeof e === "object" && e.stack) Module.printErr("exception thrown: " + [e, e.stack]); throw e } } if (Module["postMainLoop"]) Module["postMainLoop"]() }) }, isFullscreen: false, pointerLock: false, moduleContextCreatedCallbacks: [], workers: [], init: (function () { if (!Module["preloadPlugins"]) Module["preloadPlugins"] = []; if (Browser.initted) return; Browser.initted = true; try { new Blob; Browser.hasBlobConstructor = true } catch (e) { Browser.hasBlobConstructor = false; console.log("warning: no blob constructor, cannot create blobs with mimetypes") } Browser.BlobBuilder = typeof MozBlobBuilder != "undefined" ? MozBlobBuilder : typeof WebKitBlobBuilder != "undefined" ? WebKitBlobBuilder : !Browser.hasBlobConstructor ? console.log("warning: no BlobBuilder") : null; Browser.URLObject = typeof window != "undefined" ? window.URL ? window.URL : window.webkitURL : undefined; if (!Module.noImageDecoding && typeof Browser.URLObject === "undefined") { console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."); Module.noImageDecoding = true } var imagePlugin = {}; imagePlugin["canHandle"] = function imagePlugin_canHandle(name) { return !Module.noImageDecoding && /\.(jpg|jpeg|png|bmp)$/i.test(name) }; imagePlugin["handle"] = function imagePlugin_handle(byteArray, name, onload, onerror) { var b = null; if (Browser.hasBlobConstructor) { try { b = new Blob([byteArray], { type: Browser.getMimetype(name) }); if (b.size !== byteArray.length) { b = new Blob([(new Uint8Array(byteArray)).buffer], { type: Browser.getMimetype(name) }) } } catch (e) { Runtime.warnOnce("Blob constructor present but fails: " + e + "; falling back to blob builder") } } if (!b) { var bb = new Browser.BlobBuilder; bb.append((new Uint8Array(byteArray)).buffer); b = bb.getBlob() } var url = Browser.URLObject.createObjectURL(b); var img = new Image; img.onload = function img_onload() { assert(img.complete, "Image " + name + " could not be decoded"); var canvas = document.createElement("canvas"); canvas.width = img.width; canvas.height = img.height; var ctx = canvas.getContext("2d"); ctx.drawImage(img, 0, 0); Module["preloadedImages"][name] = canvas; Browser.URLObject.revokeObjectURL(url); if (onload) onload(byteArray) }; img.onerror = function img_onerror(event) { console.log("Image " + url + " could not be decoded"); if (onerror) onerror() }; img.src = url }; Module["preloadPlugins"].push(imagePlugin); var audioPlugin = {}; audioPlugin["canHandle"] = function audioPlugin_canHandle(name) { return !Module.noAudioDecoding && name.substr(-4) in { ".ogg": 1, ".wav": 1, ".mp3": 1 } }; audioPlugin["handle"] = function audioPlugin_handle(byteArray, name, onload, onerror) { var done = false; function finish(audio) { if (done) return; done = true; Module["preloadedAudios"][name] = audio; if (onload) onload(byteArray) } function fail() { if (done) return; done = true; Module["preloadedAudios"][name] = new Audio; if (onerror) onerror() } if (Browser.hasBlobConstructor) { try { var b = new Blob([byteArray], { type: Browser.getMimetype(name) }) } catch (e) { return fail() } var url = Browser.URLObject.createObjectURL(b); var audio = new Audio; audio.addEventListener("canplaythrough", (function () { finish(audio) }), false); audio.onerror = function audio_onerror(event) { if (done) return; console.log("warning: browser could not fully decode audio " + name + ", trying slower base64 approach"); function encode64(data) { var BASE = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; var PAD = "="; var ret = ""; var leftchar = 0; var leftbits = 0; for (var i = 0; i < data.length; i++) { leftchar = leftchar << 8 | data[i]; leftbits += 8; while (leftbits >= 6) { var curr = leftchar >> leftbits - 6 & 63; leftbits -= 6; ret += BASE[curr] } } if (leftbits == 2) { ret += BASE[(leftchar & 3) << 4]; ret += PAD + PAD } else if (leftbits == 4) { ret += BASE[(leftchar & 15) << 2]; ret += PAD } return ret } audio.src = "data:audio/x-" + name.substr(-3) + ";base64," + encode64(byteArray); finish(audio) }; audio.src = url; Browser.safeSetTimeout((function () { finish(audio) }), 1e4) } else { return fail() } }; Module["preloadPlugins"].push(audioPlugin); function pointerLockChange() { Browser.pointerLock = document["pointerLockElement"] === Module["canvas"] || document["mozPointerLockElement"] === Module["canvas"] || document["webkitPointerLockElement"] === Module["canvas"] || document["msPointerLockElement"] === Module["canvas"] } var canvas = Module["canvas"]; if (canvas) { canvas.requestPointerLock = canvas["requestPointerLock"] || canvas["mozRequestPointerLock"] || canvas["webkitRequestPointerLock"] || canvas["msRequestPointerLock"] || (function () {}); canvas.exitPointerLock = document["exitPointerLock"] || document["mozExitPointerLock"] || document["webkitExitPointerLock"] || document["msExitPointerLock"] || (function () {}); canvas.exitPointerLock = canvas.exitPointerLock.bind(document); document.addEventListener("pointerlockchange", pointerLockChange, false); document.addEventListener("mozpointerlockchange", pointerLockChange, false); document.addEventListener("webkitpointerlockchange", pointerLockChange, false); document.addEventListener("mspointerlockchange", pointerLockChange, false); if (Module["elementPointerLock"]) { canvas.addEventListener("click", (function (ev) { if (!Browser.pointerLock && Module["canvas"].requestPointerLock) { Module["canvas"].requestPointerLock(); ev.preventDefault() } }), false) } } }), createContext: (function (canvas, useWebGL, setInModule, webGLContextAttributes) { if (useWebGL && Module.ctx && canvas == Module.canvas) return Module.ctx; var ctx; var contextHandle; if (useWebGL) { var contextAttributes = { antialias: false, alpha: false }; if (webGLContextAttributes) { for (var attribute in webGLContextAttributes) { contextAttributes[attribute] = webGLContextAttributes[attribute] } } contextHandle = GL.createContext(canvas, contextAttributes); if (contextHandle) { ctx = GL.getContext(contextHandle).GLctx } } else { ctx = canvas.getContext("2d") } if (!ctx) return null; if (setInModule) { if (!useWebGL) assert(typeof GLctx === "undefined", "cannot set in module if GLctx is used, but we are a non-GL context that would replace it"); Module.ctx = ctx; if (useWebGL) GL.makeContextCurrent(contextHandle); Module.useWebGL = useWebGL; Browser.moduleContextCreatedCallbacks.forEach((function (callback) { callback() })); Browser.init() } return ctx }), destroyContext: (function (canvas, useWebGL, setInModule) {}), fullscreenHandlersInstalled: false, lockPointer: undefined, resizeCanvas: undefined, requestFullscreen: (function (lockPointer, resizeCanvas, vrDevice) { Browser.lockPointer = lockPointer; Browser.resizeCanvas = resizeCanvas; Browser.vrDevice = vrDevice; if (typeof Browser.lockPointer === "undefined") Browser.lockPointer = true; if (typeof Browser.resizeCanvas === "undefined") Browser.resizeCanvas = false; if (typeof Browser.vrDevice === "undefined") Browser.vrDevice = null; var canvas = Module["canvas"]; function fullscreenChange() { Browser.isFullscreen = false; var canvasContainer = canvas.parentNode; if ((document["fullscreenElement"] || document["mozFullScreenElement"] || document["msFullscreenElement"] || document["webkitFullscreenElement"] || document["webkitCurrentFullScreenElement"]) === canvasContainer) { canvas.exitFullscreen = document["exitFullscreen"] || document["cancelFullScreen"] || document["mozCancelFullScreen"] || document["msExitFullscreen"] || document["webkitCancelFullScreen"] || (function () {}); canvas.exitFullscreen = canvas.exitFullscreen.bind(document); if (Browser.lockPointer) canvas.requestPointerLock(); Browser.isFullscreen = true; if (Browser.resizeCanvas) Browser.setFullscreenCanvasSize() } else { canvasContainer.parentNode.insertBefore(canvas, canvasContainer); canvasContainer.parentNode.removeChild(canvasContainer); if (Browser.resizeCanvas) Browser.setWindowedCanvasSize() } if (Module["onFullScreen"]) Module["onFullScreen"](Browser.isFullscreen); if (Module["onFullscreen"]) Module["onFullscreen"](Browser.isFullscreen); Browser.updateCanvasDimensions(canvas) } if (!Browser.fullscreenHandlersInstalled) { Browser.fullscreenHandlersInstalled = true; document.addEventListener("fullscreenchange", fullscreenChange, false); document.addEventListener("mozfullscreenchange", fullscreenChange, false); document.addEventListener("webkitfullscreenchange", fullscreenChange, false); document.addEventListener("MSFullscreenChange", fullscreenChange, false) } var canvasContainer = document.createElement("div"); canvas.parentNode.insertBefore(canvasContainer, canvas); canvasContainer.appendChild(canvas); canvasContainer.requestFullscreen = canvasContainer["requestFullscreen"] || canvasContainer["mozRequestFullScreen"] || canvasContainer["msRequestFullscreen"] || (canvasContainer["webkitRequestFullscreen"] ? (function () { canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]) }) : null) || (canvasContainer["webkitRequestFullScreen"] ? (function () { canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]) }) : null); if (vrDevice) { canvasContainer.requestFullscreen({ vrDisplay: vrDevice }) } else { canvasContainer.requestFullscreen() } }), requestFullScreen: (function (lockPointer, resizeCanvas, vrDevice) { Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."); Browser.requestFullScreen = (function (lockPointer, resizeCanvas, vrDevice) { return Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice) }); return Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice) }), nextRAF: 0, fakeRequestAnimationFrame: (function (func) { var now = Date.now(); if (Browser.nextRAF === 0) { Browser.nextRAF = now + 1e3 / 60 } else { while (now + 2 >= Browser.nextRAF) { Browser.nextRAF += 1e3 / 60 } } var delay = Math.max(Browser.nextRAF - now, 0); setTimeout(func, delay) }), requestAnimationFrame: function requestAnimationFrame(func) { if (typeof window === "undefined") { Browser.fakeRequestAnimationFrame(func) } else { if (!window.requestAnimationFrame) { window.requestAnimationFrame = window["requestAnimationFrame"] || window["mozRequestAnimationFrame"] || window["webkitRequestAnimationFrame"] || window["msRequestAnimationFrame"] || window["oRequestAnimationFrame"] || Browser.fakeRequestAnimationFrame } window.requestAnimationFrame(func) } }, safeCallback: (function (func) { return (function () { if (!ABORT) return func.apply(null, arguments) }) }), allowAsyncCallbacks: true, queuedAsyncCallbacks: [], pauseAsyncCallbacks: (function () { Browser.allowAsyncCallbacks = false }), resumeAsyncCallbacks: (function () { Browser.allowAsyncCallbacks = true; if (Browser.queuedAsyncCallbacks.length > 0) { var callbacks = Browser.queuedAsyncCallbacks; Browser.queuedAsyncCallbacks = []; callbacks.forEach((function (func) { func() })) } }), safeRequestAnimationFrame: (function (func) { return Browser.requestAnimationFrame((function () { if (ABORT) return; if (Browser.allowAsyncCallbacks) { func() } else { Browser.queuedAsyncCallbacks.push(func) } })) }), safeSetTimeout: (function (func, timeout) { Module["noExitRuntime"] = true; return setTimeout((function () { if (ABORT) return; if (Browser.allowAsyncCallbacks) { func() } else { Browser.queuedAsyncCallbacks.push(func) } }), timeout) }), safeSetInterval: (function (func, timeout) { Module["noExitRuntime"] = true; return setInterval((function () { if (ABORT) return; if (Browser.allowAsyncCallbacks) { func() } }), timeout) }), getMimetype: (function (name) { return { "jpg": "image/jpeg", "jpeg": "image/jpeg", "png": "image/png", "bmp": "image/bmp", "ogg": "audio/ogg", "wav": "audio/wav", "mp3": "audio/mpeg" } [name.substr(name.lastIndexOf(".") + 1)] }), getUserMedia: (function (func) { if (!window.getUserMedia) { window.getUserMedia = navigator["getUserMedia"] || navigator["mozGetUserMedia"] } window.getUserMedia(func) }), getMovementX: (function (event) { return event["movementX"] || event["mozMovementX"] || event["webkitMovementX"] || 0 }), getMovementY: (function (event) { return event["movementY"] || event["mozMovementY"] || event["webkitMovementY"] || 0 }), getMouseWheelDelta: (function (event) { var delta = 0; switch (event.type) { case "DOMMouseScroll": delta = event.detail; break; case "mousewheel": delta = event.wheelDelta; break; case "wheel": delta = event["deltaY"]; break; default: throw "unrecognized mouse wheel event: " + event.type } return delta }), mouseX: 0, mouseY: 0, mouseMovementX: 0, mouseMovementY: 0, touches: {}, lastTouches: {}, calculateMouseEvent: (function (event) { if (Browser.pointerLock) { if (event.type != "mousemove" && "mozMovementX" in event) { Browser.mouseMovementX = Browser.mouseMovementY = 0 } else { Browser.mouseMovementX = Browser.getMovementX(event); Browser.mouseMovementY = Browser.getMovementY(event) } if (typeof SDL != "undefined") { Browser.mouseX = SDL.mouseX + Browser.mouseMovementX; Browser.mouseY = SDL.mouseY + Browser.mouseMovementY } else { Browser.mouseX += Browser.mouseMovementX; Browser.mouseY += Browser.mouseMovementY } } else { var rect = Module["canvas"].getBoundingClientRect(); var cw = Module["canvas"].width; var ch = Module["canvas"].height; var scrollX = typeof window.scrollX !== "undefined" ? window.scrollX : window.pageXOffset; var scrollY = typeof window.scrollY !== "undefined" ? window.scrollY : window.pageYOffset; if (event.type === "touchstart" || event.type === "touchend" || event.type === "touchmove") { var touch = event.touch; if (touch === undefined) { return } var adjustedX = touch.pageX - (scrollX + rect.left); var adjustedY = touch.pageY - (scrollY + rect.top); adjustedX = adjustedX * (cw / rect.width); adjustedY = adjustedY * (ch / rect.height); var coords = { x: adjustedX, y: adjustedY }; if (event.type === "touchstart") { Browser.lastTouches[touch.identifier] = coords; Browser.touches[touch.identifier] = coords } else if (event.type === "touchend" || event.type === "touchmove") { var last = Browser.touches[touch.identifier]; if (!last) last = coords; Browser.lastTouches[touch.identifier] = last; Browser.touches[touch.identifier] = coords } return } var x = event.pageX - (scrollX + rect.left); var y = event.pageY - (scrollY + rect.top); x = x * (cw / rect.width); y = y * (ch / rect.height); Browser.mouseMovementX = x - Browser.mouseX; Browser.mouseMovementY = y - Browser.mouseY; Browser.mouseX = x; Browser.mouseY = y } }), asyncLoad: (function (url, onload, onerror, noRunDep) { var dep = !noRunDep ? getUniqueRunDependency("al " + url) : ""; Module["readAsync"](url, (function (arrayBuffer) { assert(arrayBuffer, 'Loading data file "' + url + '" failed (no arrayBuffer).'); onload(new Uint8Array(arrayBuffer)); if (dep) removeRunDependency(dep) }), (function (event) { if (onerror) { onerror() } else { throw 'Loading data file "' + url + '" failed.' } })); if (dep) addRunDependency(dep) }), resizeListeners: [], updateResizeListeners: (function () { var canvas = Module["canvas"]; Browser.resizeListeners.forEach((function (listener) { listener(canvas.width, canvas.height) })) }), setCanvasSize: (function (width, height, noUpdates) { var canvas = Module["canvas"]; Browser.updateCanvasDimensions(canvas, width, height); if (!noUpdates) Browser.updateResizeListeners() }), windowedWidth: 0, windowedHeight: 0, setFullscreenCanvasSize: (function () { if (typeof SDL != "undefined") { var flags = HEAPU32[SDL.screen + Runtime.QUANTUM_SIZE * 0 >> 2]; flags = flags | 8388608; HEAP32[SDL.screen + Runtime.QUANTUM_SIZE * 0 >> 2] = flags } Browser.updateResizeListeners() }), setWindowedCanvasSize: (function () { if (typeof SDL != "undefined") { var flags = HEAPU32[SDL.screen + Runtime.QUANTUM_SIZE * 0 >> 2]; flags = flags & ~8388608; HEAP32[SDL.screen + Runtime.QUANTUM_SIZE * 0 >> 2] = flags } Browser.updateResizeListeners() }), updateCanvasDimensions: (function (canvas, wNative, hNative) { if (wNative && hNative) { canvas.widthNative = wNative; canvas.heightNative = hNative } else { wNative = canvas.widthNative; hNative = canvas.heightNative } var w = wNative; var h = hNative; if (Module["forcedAspectRatio"] && Module["forcedAspectRatio"] > 0) { if (w / h < Module["forcedAspectRatio"]) { w = Math.round(h * Module["forcedAspectRatio"]) } else { h = Math.round(w / Module["forcedAspectRatio"]) } } if ((document["fullscreenElement"] || document["mozFullScreenElement"] || document["msFullscreenElement"] || document["webkitFullscreenElement"] || document["webkitCurrentFullScreenElement"]) === canvas.parentNode && typeof screen != "undefined") { var factor = Math.min(screen.width / w, screen.height / h); w = Math.round(w * factor); h = Math.round(h * factor) } if (Browser.resizeCanvas) { if (canvas.width != w) canvas.width = w; if (canvas.height != h) canvas.height = h; if (typeof canvas.style != "undefined") { canvas.style.removeProperty("width"); canvas.style.removeProperty("height") } } else { if (canvas.width != wNative) canvas.width = wNative; if (canvas.height != hNative) canvas.height = hNative; if (typeof canvas.style != "undefined") { if (w != wNative || h != hNative) { canvas.style.setProperty("width", w + "px", "important"); canvas.style.setProperty("height", h + "px", "important") } else { canvas.style.removeProperty("width"); canvas.style.removeProperty("height") } } } }), wgetRequests: {}, nextWgetRequestHandle: 0, getNextWgetRequestHandle: (function () { var handle = Browser.nextWgetRequestHandle; Browser.nextWgetRequestHandle++; return handle }) }; function _malloc(bytes) { var ptr = Runtime.dynamicAlloc(bytes + 8); return ptr + 8 & 4294967288 } Module["_malloc"] = _malloc; function _free() {} Module["_free"] = _free; 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 _putenv(string) { if (string === 0) { ___setErrNo(ERRNO_CODES.EINVAL); return -1 } string = Pointer_stringify(string); var splitPoint = string.indexOf("="); if (string === "" || string.indexOf("=") === -1) { ___setErrNo(ERRNO_CODES.EINVAL); return -1 } var name = string.slice(0, splitPoint); var value = string.slice(splitPoint + 1); if (!(name in ENV) || ENV[name] !== value) { ENV[name] = value; ___buildEnvironment(ENV) } return 0 } function _SDL_RWFromConstMem(mem, size) { var id = SDL.rwops.length; SDL.rwops.push({ bytes: mem, count: size }); return id } function _TTF_FontHeight(font) { var fontData = SDL.fonts[font]; return fontData.size } function _TTF_SizeText(font, text, w, h) { var fontData = SDL.fonts[font]; if (w) { HEAP32[w >> 2] = SDL.estimateTextWidth(fontData, Pointer_stringify(text)) } if (h) { HEAP32[h >> 2] = fontData.size } return 0 } function _TTF_RenderText_Solid(font, text, color) { text = Pointer_stringify(text) || " "; var fontData = SDL.fonts[font]; var w = SDL.estimateTextWidth(fontData, text); var h = fontData.size; var color = SDL.loadColorToCSSRGB(color); var fontString = h + "px " + fontData.name; var surf = SDL.makeSurface(w, h, 0, false, "text:" + text); var surfData = SDL.surfaces[surf]; surfData.ctx.save(); surfData.ctx.fillStyle = color; surfData.ctx.font = fontString; surfData.ctx.textBaseline = "top"; surfData.ctx.fillText(text, 0, 0); surfData.ctx.restore(); return surf } function _Mix_HaltMusic() { var audio = SDL.music.audio; if (audio) { audio.src = audio.src; audio.currentPosition = 0; audio.pause() } SDL.music.audio = null; if (SDL.hookMusicFinished) { Module["dynCall_v"](SDL.hookMusicFinished) } return 0 } function _Mix_PlayMusic(id, loops) { if (SDL.music.audio) { if (!SDL.music.audio.paused) Module.printErr("Music is already playing. " + SDL.music.source); SDL.music.audio.pause() } var info = SDL.audios[id]; var audio; if (info.webAudio) { audio = {}; audio.resource = info; audio.paused = false; audio.currentPosition = 0; audio.play = (function () { SDL.playWebAudio(this) }); audio.pause = (function () { SDL.pauseWebAudio(this) }) } else if (info.audio) { audio = info.audio } audio["onended"] = (function () { if (SDL.music.audio == this) _Mix_HaltMusic() }); audio.loop = loops != 0; audio.volume = SDL.music.volume; SDL.music.audio = audio; audio.play(); return 0 } function _Mix_FreeChunk(id) { SDL.audios[id] = null } function _Mix_LoadWAV_RW(rwopsID, freesrc) { var rwops = SDL.rwops[rwopsID]; if (rwops === undefined) return 0; var filename = ""; var audio; var webAudio; var bytes; if (rwops.filename !== undefined) { filename = PATH.resolve(rwops.filename); var raw = Module["preloadedAudios"][filename]; if (!raw) { if (raw === null) Module.printErr("Trying to reuse preloaded audio, but freePreloadedMediaOnUse is set!"); if (!Module.noAudioDecoding) Runtime.warnOnce("Cannot find preloaded audio " + filename); try { bytes = FS.readFile(filename) } catch (e) { Module.printErr("Couldn't find file for: " + filename); return 0 } } if (Module["freePreloadedMediaOnUse"]) { Module["preloadedAudios"][filename] = null } audio = raw } else if (rwops.bytes !== undefined) { if (SDL.webAudioAvailable()) bytes = HEAPU8.buffer.slice(rwops.bytes, rwops.bytes + rwops.count); else bytes = HEAPU8.subarray(rwops.bytes, rwops.bytes + rwops.count) } else { return 0 } var arrayBuffer = bytes ? bytes.buffer || bytes : bytes; var canPlayWithWebAudio = Module["SDL_canPlayWithWebAudio"] === undefined || Module["SDL_canPlayWithWebAudio"](filename, arrayBuffer); if (bytes !== undefined && SDL.webAudioAvailable() && canPlayWithWebAudio) { audio = undefined; webAudio = {}; webAudio.onDecodeComplete = []; function onDecodeComplete(data) { webAudio.decodedBuffer = data; webAudio.onDecodeComplete.forEach((function (e) { e() })); webAudio.onDecodeComplete = undefined } SDL.audioContext["decodeAudioData"](arrayBuffer, onDecodeComplete) } else if (audio === undefined && bytes) { var blob = new Blob([bytes], { type: rwops.mimetype }); var url = URL.createObjectURL(blob); audio = new Audio; audio.src = url; audio.mozAudioChannelType = "content" } var id = SDL.audios.length; SDL.audios.push({ source: filename, audio: audio, webAudio: webAudio }); return id } function _Mix_PlayChannel(channel, id, loops) { var info = SDL.audios[id]; if (!info) return -1; if (!info.audio && !info.webAudio) return -1; if (channel == -1) { for (var i = SDL.channelMinimumNumber; i < SDL.numChannels; i++) { if (!SDL.channels[i].audio) { channel = i; break } } if (channel == -1) { Module.printErr("All " + SDL.numChannels + " channels in use!"); return -1 } } var channelInfo = SDL.channels[channel]; var audio; if (info.webAudio) { audio = {}; audio.resource = info; audio.paused = false; audio.currentPosition = 0; audio.play = (function () { SDL.playWebAudio(this) }); audio.pause = (function () { SDL.pauseWebAudio(this) }) } else { audio = info.audio.cloneNode(true); audio.numChannels = info.audio.numChannels; audio.frequency = info.audio.frequency } audio["onended"] = function SDL_audio_onended() { if (channelInfo.audio == this) { channelInfo.audio.paused = true; channelInfo.audio = null } if (SDL.channelFinished) Runtime.getFuncWrapper(SDL.channelFinished, "vi")(channel) }; channelInfo.audio = audio; audio.loop = loops != 0; audio.volume = channelInfo.volume; audio.play(); return channel } function _SDL_PauseAudio(pauseOn) { if (!SDL.audio) { return } if (pauseOn) { if (SDL.audio.timer !== undefined) { clearTimeout(SDL.audio.timer); SDL.audio.numAudioTimersPending = 0; SDL.audio.timer = undefined } } else if (!SDL.audio.timer) { SDL.audio.numAudioTimersPending = 1; SDL.audio.timer = Browser.safeSetTimeout(SDL.audio.caller, 1) } SDL.audio.paused = pauseOn } function _SDL_CloseAudio() { if (SDL.audio) { _SDL_PauseAudio(1); _free(SDL.audio.buffer); SDL.audio = null; SDL.allocateChannels(0) } } function _SDL_LockSurface(surf) { var surfData = SDL.surfaces[surf]; surfData.locked++; if (surfData.locked > 1) return 0; if (!surfData.buffer) { surfData.buffer = _malloc(surfData.width * surfData.height * 4); HEAP32[surf + 20 >> 2] = surfData.buffer } HEAP32[surf + 20 >> 2] = surfData.buffer; if (surf == SDL.screen && Module.screenIsReadOnly && surfData.image) return 0; if (SDL.defaults.discardOnLock) { if (!surfData.image) { surfData.image = surfData.ctx.createImageData(surfData.width, surfData.height) } if (!SDL.defaults.opaqueFrontBuffer) return } else { surfData.image = surfData.ctx.getImageData(0, 0, surfData.width, surfData.height) } if (surf == SDL.screen && SDL.defaults.opaqueFrontBuffer) { var data = surfData.image.data; var num = data.length; for (var i = 0; i < num / 4; i++) { data[i * 4 + 3] = 255 } } if (SDL.defaults.copyOnLock && !SDL.defaults.discardOnLock) { if (surfData.isFlagSet(2097152)) { throw "CopyOnLock is not supported for SDL_LockSurface with SDL_HWPALETTE flag set" + (new Error).stack } else { HEAPU8.set(surfData.image.data, surfData.buffer) } } return 0 } function _SDL_FreeRW(rwopsID) { SDL.rwops[rwopsID] = null; while (SDL.rwops.length > 0 && SDL.rwops[SDL.rwops.length - 1] === null) { SDL.rwops.pop() } } function _IMG_Load_RW(rwopsID, freeSrc) { try { var cleanup = (function () { if (rwops && freeSrc) _SDL_FreeRW(rwopsID) }); var addCleanup = (function (func) { var old = cleanup; cleanup = function added_cleanup() { old(); func() } }); var callStbImage = (function (func, params) { var x = Module["_malloc"](4); var y = Module["_malloc"](4); var comp = Module["_malloc"](4); addCleanup((function () { Module["_free"](x); Module["_free"](y); Module["_free"](comp); if (data) Module["_stbi_image_free"](data) })); var data = Module["_" + func].apply(null, params.concat([x, y, comp, 0])); if (!data) return null; return { rawData: true, data: data, width: HEAP32[x >> 2], height: HEAP32[y >> 2], size: HEAP32[x >> 2] * HEAP32[y >> 2] * HEAP32[comp >> 2], bpp: HEAP32[comp >> 2] } }); var rwops = SDL.rwops[rwopsID]; if (rwops === undefined) { return 0 } var filename = rwops.filename; if (filename === undefined) { Runtime.warnOnce("Only file names that have been preloaded are supported for IMG_Load_RW. Consider using STB_IMAGE=1 if you want synchronous image decoding (see settings.js), or package files with --use-preload-plugins"); return 0 } if (!raw) { filename = PATH.resolve(filename); var raw = Module["preloadedImages"][filename]; if (!raw) { if (raw === null) Module.printErr("Trying to reuse preloaded image, but freePreloadedMediaOnUse is set!"); Runtime.warnOnce("Cannot find preloaded image " + filename); Runtime.warnOnce("Cannot find preloaded image " + filename + ". Consider using STB_IMAGE=1 if you want synchronous image decoding (see settings.js), or package files with --use-preload-plugins"); return 0 } else if (Module["freePreloadedMediaOnUse"]) { Module["preloadedImages"][filename] = null } } var surf = SDL.makeSurface(raw.width, raw.height, 0, false, "load:" + filename); var surfData = SDL.surfaces[surf]; surfData.ctx.globalCompositeOperation = "copy"; if (!raw.rawData) { surfData.ctx.drawImage(raw, 0, 0, raw.width, raw.height, 0, 0, raw.width, raw.height) } else { var imageData = surfData.ctx.getImageData(0, 0, surfData.width, surfData.height); if (raw.bpp == 4) { imageData.data.set(HEAPU8.subarray(raw.data, raw.data + raw.size)) } else if (raw.bpp == 3) { var pixels = raw.size / 3; var data = imageData.data; var sourcePtr = raw.data; var destPtr = 0; for (var i = 0; i < pixels; i++) { data[destPtr++] = HEAPU8[sourcePtr++ >> 0]; data[destPtr++] = HEAPU8[sourcePtr++ >> 0]; data[destPtr++] = HEAPU8[sourcePtr++ >> 0]; data[destPtr++] = 255 } } else if (raw.bpp == 1) { var pixels = raw.size; var data = imageData.data; var sourcePtr = raw.data; var destPtr = 0; for (var i = 0; i < pixels; i++) { var value = HEAPU8[sourcePtr++ >> 0]; data[destPtr++] = value; data[destPtr++] = value; data[destPtr++] = value; data[destPtr++] = 255 } } else { Module.printErr("cannot handle bpp " + raw.bpp); return 0 } surfData.ctx.putImageData(imageData, 0, 0) } surfData.ctx.globalCompositeOperation = "source-over"; _SDL_LockSurface(surf); surfData.locked--; if (SDL.GL) { surfData.canvas = surfData.ctx = null } return surf } finally { cleanup() } } function _SDL_RWFromFile(_name, mode) { var id = SDL.rwops.length; var name = Pointer_stringify(_name); SDL.rwops.push({ filename: name, mimetype: Browser.getMimetype(name) }); return id } function _IMG_Load(filename) { var rwops = _SDL_RWFromFile(filename); var result = _IMG_Load_RW(rwops, 1); return result } function _SDL_UpperBlitScaled(src, srcrect, dst, dstrect) { return SDL.blitSurface(src, srcrect, dst, dstrect, true) } function _SDL_UpperBlit(src, srcrect, dst, dstrect) { return SDL.blitSurface(src, srcrect, dst, dstrect, false) } function _SDL_GetTicks() { return Date.now() - SDL.startTime | 0 } var SDL = { defaults: { width: 320, height: 200, copyOnLock: true, discardOnLock: false, opaqueFrontBuffer: true }, version: null, surfaces: {}, canvasPool: [], events: [], fonts: [null], audios: [null], rwops: [null], music: { audio: null, volume: 1 }, mixerFrequency: 22050, mixerFormat: 32784, mixerNumChannels: 2, mixerChunkSize: 1024, channelMinimumNumber: 0, GL: false, glAttributes: { 0: 3, 1: 3, 2: 2, 3: 0, 4: 0, 5: 1, 6: 16, 7: 0, 8: 0, 9: 0, 10: 0, 11: 0, 12: 0, 13: 0, 14: 0, 15: 1, 16: 0, 17: 0, 18: 0 }, keyboardState: null, keyboardMap: {}, canRequestFullscreen: false, isRequestingFullscreen: false, textInput: false, startTime: null, initFlags: 0, buttonState: 0, modState: 0, DOMButtons: [0, 0, 0], DOMEventToSDLEvent: {}, TOUCH_DEFAULT_ID: 0, eventHandler: null, eventHandlerContext: null, eventHandlerTemp: 0, keyCodes: { 16: 1249, 17: 1248, 18: 1250, 20: 1081, 33: 1099, 34: 1102, 35: 1101, 36: 1098, 37: 1104, 38: 1106, 39: 1103, 40: 1105, 44: 316, 45: 1097, 46: 127, 91: 1251, 93: 1125, 96: 1122, 97: 1113, 98: 1114, 99: 1115, 100: 1116, 101: 1117, 102: 1118, 103: 1119, 104: 1120, 105: 1121, 106: 1109, 107: 1111, 109: 1110, 110: 1123, 111: 1108, 112: 1082, 113: 1083, 114: 1084, 115: 1085, 116: 1086, 117: 1087, 118: 1088, 119: 1089, 120: 1090, 121: 1091, 122: 1092, 123: 1093, 124: 1128, 125: 1129, 126: 1130, 127: 1131, 128: 1132, 129: 1133, 130: 1134, 131: 1135, 132: 1136, 133: 1137, 134: 1138, 135: 1139, 144: 1107, 160: 94, 161: 33, 162: 34, 163: 35, 164: 36, 165: 37, 166: 38, 167: 95, 168: 40, 169: 41, 170: 42, 171: 43, 172: 124, 173: 45, 174: 123, 175: 125, 176: 126, 181: 127, 182: 129, 183: 128, 188: 44, 190: 46, 191: 47, 192: 96, 219: 91, 220: 92, 221: 93, 222: 39, 224: 1251 }, scanCodes: { 8: 42, 9: 43, 13: 40, 27: 41, 32: 44, 35: 204, 39: 53, 44: 54, 46: 55, 47: 56, 48: 39, 49: 30, 50: 31, 51: 32, 52: 33, 53: 34, 54: 35, 55: 36, 56: 37, 57: 38, 58: 203, 59: 51, 61: 46, 91: 47, 92: 49, 93: 48, 96: 52, 97: 4, 98: 5, 99: 6, 100: 7, 101: 8, 102: 9, 103: 10, 104: 11, 105: 12, 106: 13, 107: 14, 108: 15, 109: 16, 110: 17, 111: 18, 112: 19, 113: 20, 114: 21, 115: 22, 116: 23, 117: 24, 118: 25, 119: 26, 120: 27, 121: 28, 122: 29, 127: 76, 305: 224, 308: 226, 316: 70 }, loadRect: (function (rect) { return { x: HEAP32[rect + 0 >> 2], y: HEAP32[rect + 4 >> 2], w: HEAP32[rect + 8 >> 2], h: HEAP32[rect + 12 >> 2] } }), updateRect: (function (rect, r) { HEAP32[rect >> 2] = r.x; HEAP32[rect + 4 >> 2] = r.y; HEAP32[rect + 8 >> 2] = r.w; HEAP32[rect + 12 >> 2] = r.h }), intersectionOfRects: (function (first, second) { var leftX = Math.max(first.x, second.x); var leftY = Math.max(first.y, second.y); var rightX = Math.min(first.x + first.w, second.x + second.w); var rightY = Math.min(first.y + first.h, second.y + second.h); return { x: leftX, y: leftY, w: Math.max(leftX, rightX) - leftX, h: Math.max(leftY, rightY) - leftY } }), checkPixelFormat: (function (fmt) {}), loadColorToCSSRGB: (function (color) { var rgba = HEAP32[color >> 2]; return "rgb(" + (rgba & 255) + "," + (rgba >> 8 & 255) + "," + (rgba >> 16 & 255) + ")" }), loadColorToCSSRGBA: (function (color) { var rgba = HEAP32[color >> 2]; return "rgba(" + (rgba & 255) + "," + (rgba >> 8 & 255) + "," + (rgba >> 16 & 255) + "," + (rgba >> 24 & 255) / 255 + ")" }), translateColorToCSSRGBA: (function (rgba) { return "rgba(" + (rgba & 255) + "," + (rgba >> 8 & 255) + "," + (rgba >> 16 & 255) + "," + (rgba >>> 24) / 255 + ")" }), translateRGBAToCSSRGBA: (function (r, g, b, a) { return "rgba(" + (r & 255) + "," + (g & 255) + "," + (b & 255) + "," + (a & 255) / 255 + ")" }), translateRGBAToColor: (function (r, g, b, a) { return r | g << 8 | b << 16 | a << 24 }), makeSurface: (function (width, height, flags, usePageCanvas, source, rmask, gmask, bmask, amask) { flags = flags || 0; var is_SDL_HWSURFACE = flags & 1; var is_SDL_HWPALETTE = flags & 2097152; var is_SDL_OPENGL = flags & 67108864; var surf = _malloc(60); var pixelFormat = _malloc(44); var bpp = is_SDL_HWPALETTE ? 1 : 4; var buffer = 0; if (!is_SDL_HWSURFACE && !is_SDL_OPENGL) { buffer = _malloc(width * height * 4) } HEAP32[surf >> 2] = flags; HEAP32[surf + 4 >> 2] = pixelFormat; HEAP32[surf + 8 >> 2] = width; HEAP32[surf + 12 >> 2] = height; HEAP32[surf + 16 >> 2] = width * bpp; HEAP32[surf + 20 >> 2] = buffer; HEAP32[surf + 36 >> 2] = 0; HEAP32[surf + 40 >> 2] = 0; HEAP32[surf + 44 >> 2] = Module["canvas"].width; HEAP32[surf + 48 >> 2] = Module["canvas"].height; HEAP32[surf + 56 >> 2] = 1; HEAP32[pixelFormat >> 2] = -2042224636; HEAP32[pixelFormat + 4 >> 2] = 0; HEAP8[pixelFormat + 8 >> 0] = bpp * 8; HEAP8[pixelFormat + 9 >> 0] = bpp; HEAP32[pixelFormat + 12 >> 2] = rmask || 255; HEAP32[pixelFormat + 16 >> 2] = gmask || 65280; HEAP32[pixelFormat + 20 >> 2] = bmask || 16711680; HEAP32[pixelFormat + 24 >> 2] = amask || 4278190080; SDL.GL = SDL.GL || is_SDL_OPENGL; var canvas; if (!usePageCanvas) { if (SDL.canvasPool.length > 0) { canvas = SDL.canvasPool.pop() } else { canvas = document.createElement("canvas") } canvas.width = width; canvas.height = height } else { canvas = Module["canvas"] } var webGLContextAttributes = { antialias: SDL.glAttributes[13] != 0 && SDL.glAttributes[14] > 1, depth: SDL.glAttributes[6] > 0, stencil: SDL.glAttributes[7] > 0, alpha: SDL.glAttributes[3] > 0 }; var ctx = Browser.createContext(canvas, is_SDL_OPENGL, usePageCanvas, webGLContextAttributes); SDL.surfaces[surf] = { width: width, height: height, canvas: canvas, ctx: ctx, surf: surf, buffer: buffer, pixelFormat: pixelFormat, alpha: 255, flags: flags, locked: 0, usePageCanvas: usePageCanvas, source: source, isFlagSet: (function (flag) { return flags & flag }) }; return surf }), copyIndexedColorData: (function (surfData, rX, rY, rW, rH) { if (!surfData.colors) { return } var fullWidth = Module["canvas"].width; var fullHeight = Module["canvas"].height; var startX = rX || 0; var startY = rY || 0; var endX = (rW || fullWidth - startX) + startX; var endY = (rH || fullHeight - startY) + startY; var buffer = surfData.buffer; if (!surfData.image.data32) { surfData.image.data32 = new Uint32Array(surfData.image.data.buffer) } var data32 = surfData.image.data32; var colors32 = surfData.colors32; for (var y = startY; y < endY; ++y) { var base = y * fullWidth; for (var x = startX; x < endX; ++x) { data32[base + x] = colors32[HEAPU8[buffer + base + x >> 0]] } } }), freeSurface: (function (surf) { var refcountPointer = surf + 56; var refcount = HEAP32[refcountPointer >> 2]; if (refcount > 1) { HEAP32[refcountPointer >> 2] = refcount - 1; return } var info = SDL.surfaces[surf]; if (!info.usePageCanvas && info.canvas) SDL.canvasPool.push(info.canvas); if (info.buffer) _free(info.buffer); _free(info.pixelFormat); _free(surf); SDL.surfaces[surf] = null; if (surf === SDL.screen) { SDL.screen = null } }), blitSurface__deps: ["SDL_LockSurface"], blitSurface: (function (src, srcrect, dst, dstrect, scale) { var srcData = SDL.surfaces[src]; var dstData = SDL.surfaces[dst]; var sr, dr; if (srcrect) { sr = SDL.loadRect(srcrect) } else { sr = { x: 0, y: 0, w: srcData.width, h: srcData.height } } if (dstrect) { dr = SDL.loadRect(dstrect) } else { dr = { x: 0, y: 0, w: srcData.width, h: srcData.height } } if (dstData.clipRect) { var widthScale = !scale || sr.w === 0 ? 1 : sr.w / dr.w; var heightScale = !scale || sr.h === 0 ? 1 : sr.h / dr.h; dr = SDL.intersectionOfRects(dstData.clipRect, dr); sr.w = dr.w * widthScale; sr.h = dr.h * heightScale; if (dstrect) { SDL.updateRect(dstrect, dr) } } var blitw, blith; if (scale) { blitw = dr.w; blith = dr.h } else { blitw = sr.w; blith = sr.h } if (sr.w === 0 || sr.h === 0 || blitw === 0 || blith === 0) { return 0 } var oldAlpha = dstData.ctx.globalAlpha; dstData.ctx.globalAlpha = srcData.alpha / 255; dstData.ctx.drawImage(srcData.canvas, sr.x, sr.y, sr.w, sr.h, dr.x, dr.y, blitw, blith); dstData.ctx.globalAlpha = oldAlpha; if (dst != SDL.screen) { Runtime.warnOnce("WARNING: copying canvas data to memory for compatibility"); _SDL_LockSurface(dst); dstData.locked-- } return 0 }), downFingers: {}, savedKeydown: null, receiveEvent: (function (event) { function unpressAllPressedKeys() { for (var code in SDL.keyboardMap) { SDL.events.push({ type: "keyup", keyCode: SDL.keyboardMap[code] }) } } switch (event.type) { case "touchstart": case "touchmove": { event.preventDefault(); var touches = []; if (event.type === "touchstart") { for (var i = 0; i < event.touches.length; i++) { var touch = event.touches[i]; if (SDL.downFingers[touch.identifier] != true) { SDL.downFingers[touch.identifier] = true; touches.push(touch) } } } else { touches = event.touches } var firstTouch = touches[0]; if (event.type == "touchstart") { SDL.DOMButtons[0] = 1; } var mouseEventType; switch (event.type) { case "touchstart": mouseEventType = "mousedown"; break; case "touchmove": mouseEventType = "mousemove"; break } console.log("XXX", isDeep); var mouseEvent = { type: !prevIsDeep && isDeep ? "mousedown" : mouseEventType, // BORA modified it! (from `0`) // touch != click AND move but just move button: isDeep ? 0 : 5, pageX: firstTouch.clientX, pageY: firstTouch.clientY };SDL.events.push(mouseEvent); for (var i = 0; i < touches.length; i++) { var touch = touches[i]; SDL.events.push({ type: event.type, touch: touch }) } prevIsDeep = isDeep; break; }; case "touchend": { event.preventDefault(); for (var i = 0; i < event.changedTouches.length; i++) { var touch = event.changedTouches[i]; if (SDL.downFingers[touch.identifier] === true) { delete SDL.downFingers[touch.identifier] } } var mouseEvent = { type: "mouseup", button: 0, pageX: event.changedTouches[0].clientX, pageY: event.changedTouches[0].clientY };SDL.DOMButtons[0] = 0;SDL.events.push(mouseEvent); for (var i = 0; i < event.changedTouches.length; i++) { var touch = event.changedTouches[i]; SDL.events.push({ type: "touchend", touch: touch }) } break }; case "DOMMouseScroll": case "mousewheel": case "wheel": var delta = -Browser.getMouseWheelDelta(event); delta = delta == 0 ? 0 : delta > 0 ? Math.max(delta, 1) : Math.min(delta, -1); var button = delta > 0 ? 3 : 4; SDL.events.push({ type: "mousedown", button: button, pageX: event.pageX, pageY: event.pageY }); SDL.events.push({ type: "mouseup", button: button, pageX: event.pageX, pageY: event.pageY }); SDL.events.push({ type: "wheel", deltaX: 0, deltaY: delta }); event.preventDefault(); break; case "mousemove": if (SDL.DOMButtons[0] === 1) { SDL.events.push({ type: "touchmove", touch: { identifier: 0, deviceID: -1, pageX: event.pageX, pageY: event.pageY } }) } if (Browser.pointerLock) { if ("mozMovementX" in event) { event["movementX"] = event["mozMovementX"]; event["movementY"] = event["mozMovementY"] } if (event["movementX"] == 0 && event["movementY"] == 0) { event.preventDefault(); return } }; case "keydown": case "keyup": case "keypress": case "mousedown": case "mouseup": if (event.type !== "keydown" || !SDL.unicode && !SDL.textInput || event.keyCode === 8 || event.keyCode === 9) { event.preventDefault() } if (event.type == "mousedown") { SDL.DOMButtons[event.button] = 1; SDL.events.push({ type: "touchstart", touch: { identifier: 0, deviceID: -1, pageX: event.pageX, pageY: event.pageY } }) } else if (event.type == "mouseup") { if (!SDL.DOMButtons[event.button]) { return } SDL.events.push({ type: "touchend", touch: { identifier: 0, deviceID: -1, pageX: event.pageX, pageY: event.pageY } }); SDL.DOMButtons[event.button] = 0 } if (event.type === "keydown" || event.type === "mousedown") { SDL.canRequestFullscreen = true } else if (event.type === "keyup" || event.type === "mouseup") { if (SDL.isRequestingFullscreen) { Module["requestFullscreen"](true, true); SDL.isRequestingFullscreen = false } SDL.canRequestFullscreen = false } if (event.type === "keypress" && SDL.savedKeydown) { SDL.savedKeydown.keypressCharCode = event.charCode; SDL.savedKeydown = null } else if (event.type === "keydown") { SDL.savedKeydown = event } if (event.type !== "keypress" || SDL.textInput) { SDL.events.push(event) } break; case "mouseout": for (var i = 0; i < 3; i++) { if (SDL.DOMButtons[i]) { SDL.events.push({ type: "mouseup", button: i, pageX: event.pageX, pageY: event.pageY }); SDL.DOMButtons[i] = 0 } } event.preventDefault(); break; case "focus": SDL.events.push(event); event.preventDefault(); break; case "blur": SDL.events.push(event); unpressAllPressedKeys(); event.preventDefault(); break; case "visibilitychange": SDL.events.push({ type: "visibilitychange", visible: !document.hidden }); unpressAllPressedKeys(); event.preventDefault(); break; case "unload": if (Browser.mainLoop.runner) { SDL.events.push(event); Browser.mainLoop.runner() } return; case "resize": SDL.events.push(event); if (event.preventDefault) { event.preventDefault() } break } if (SDL.events.length >= 1e4) { Module.printErr("SDL event queue full, dropping events"); SDL.events = SDL.events.slice(0, 1e4) } SDL.flushEventsToHandler(); return }), lookupKeyCodeForEvent: (function (event) { var code = event.keyCode; if (code >= 65 && code <= 90) { code += 32 } else { code = SDL.keyCodes[event.keyCode] || event.keyCode; if (event.location === KeyboardEvent.DOM_KEY_LOCATION_RIGHT && code >= (224 | 1 << 10) && code <= (227 | 1 << 10)) { code += 4 } } return code }), handleEvent: (function (event) { if (event.handled) return; event.handled = true; switch (event.type) { case "touchstart": case "touchend": case "touchmove": { Browser.calculateMouseEvent(event); break }; case "keydown": case "keyup": { var down = event.type === "keydown"; var code = SDL.lookupKeyCodeForEvent(event);HEAP8[SDL.keyboardState + code >> 0] = down;SDL.modState = (HEAP8[SDL.keyboardState + 1248 >> 0] ? 64 : 0) | (HEAP8[SDL.keyboardState + 1249 >> 0] ? 1 : 0) | (HEAP8[SDL.keyboardState + 1250 >> 0] ? 256 : 0) | (HEAP8[SDL.keyboardState + 1252 >> 0] ? 128 : 0) | (HEAP8[SDL.keyboardState + 1253 >> 0] ? 2 : 0) | (HEAP8[SDL.keyboardState + 1254 >> 0] ? 512 : 0); if (down) { SDL.keyboardMap[code] = event.keyCode } else { delete SDL.keyboardMap[code] } break }; case "mousedown": case "mouseup": if (event.type == "mousedown") { SDL.buttonState |= 1 << event.button } else if (event.type == "mouseup") { SDL.buttonState &= ~(1 << event.button) }; case "mousemove": { Browser.calculateMouseEvent(event); break } } }), flushEventsToHandler: (function () { if (!SDL.eventHandler) return; while (SDL.pollEvent(SDL.eventHandlerTemp)) { Module["dynCall_iii"](SDL.eventHandler, SDL.eventHandlerContext, SDL.eventHandlerTemp) } }), pollEvent: (function (ptr) { if (SDL.initFlags & 512 && SDL.joystickEventState) { SDL.queryJoysticks() } if (ptr) { while (SDL.events.length > 0) { if (SDL.makeCEvent(SDL.events.shift(), ptr) !== false) return 1 } return 0 } else { return SDL.events.length > 0 } }), makeCEvent: (function (event, ptr) { if (typeof event === "number") { _memcpy(ptr, event, 28); _free(event); return } SDL.handleEvent(event); switch (event.type) { case "keydown": case "keyup": { var down = event.type === "keydown"; var key = SDL.lookupKeyCodeForEvent(event); var scan; if (key >= 1024) { scan = key - 1024 } else { scan = SDL.scanCodes[key] || key } HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP8[ptr + 8 >> 0] = down ? 1 : 0;HEAP8[ptr + 9 >> 0] = 0;HEAP32[ptr + 12 >> 2] = scan;HEAP32[ptr + 16 >> 2] = key;HEAP16[ptr + 20 >> 1] = SDL.modState;HEAP32[ptr + 24 >> 2] = event.keypressCharCode || key; break }; case "keypress": { HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type]; var cStr = intArrayFromString(String.fromCharCode(event.charCode)); for (var i = 0; i < cStr.length; ++i) { HEAP8[ptr + (8 + i) >> 0] = cStr[i] } break }; case "mousedown": case "mouseup": case "mousemove": { if (event.type != "mousemove") { var down = event.type === "mousedown"; HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type]; HEAP32[ptr + 4 >> 2] = 0; HEAP32[ptr + 8 >> 2] = 0; HEAP32[ptr + 12 >> 2] = 0; HEAP8[ptr + 16 >> 0] = event.button + 1; HEAP8[ptr + 17 >> 0] = down ? 1 : 0; HEAP32[ptr + 20 >> 2] = Browser.mouseX; HEAP32[ptr + 24 >> 2] = Browser.mouseY } else { HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type]; HEAP32[ptr + 4 >> 2] = 0; HEAP32[ptr + 8 >> 2] = 0; HEAP32[ptr + 12 >> 2] = 0; HEAP32[ptr + 16 >> 2] = SDL.buttonState; HEAP32[ptr + 20 >> 2] = Browser.mouseX; HEAP32[ptr + 24 >> 2] = Browser.mouseY; HEAP32[ptr + 28 >> 2] = Browser.mouseMovementX; HEAP32[ptr + 32 >> 2] = Browser.mouseMovementY } break }; case "wheel": { HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr + 16 >> 2] = event.deltaX;HEAP32[ptr + 20 >> 2] = event.deltaY; break }; case "touchstart": case "touchend": case "touchmove": { var touch = event.touch; if (!Browser.touches[touch.identifier]) break; var w = Module["canvas"].width; var h = Module["canvas"].height; var x = Browser.touches[touch.identifier].x / w; var y = Browser.touches[touch.identifier].y / h; var lx = Browser.lastTouches[touch.identifier].x / w; var ly = Browser.lastTouches[touch.identifier].y / h; var dx = x - lx; var dy = y - ly; if (touch["deviceID"] === undefined) touch.deviceID = SDL.TOUCH_DEFAULT_ID; if (dx === 0 && dy === 0 && event.type === "touchmove") return false;HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr + 4 >> 2] = _SDL_GetTicks();tempI64 = [touch.deviceID >>> 0, (tempDouble = touch.deviceID, +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 + 8 >> 2] = tempI64[0], HEAP32[ptr + 12 >> 2] = tempI64[1];tempI64 = [touch.identifier >>> 0, (tempDouble = touch.identifier, +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 + 16 >> 2] = tempI64[0], HEAP32[ptr + 20 >> 2] = tempI64[1];HEAPF32[ptr + 24 >> 2] = x;HEAPF32[ptr + 28 >> 2] = y;HEAPF32[ptr + 32 >> 2] = dx;HEAPF32[ptr + 36 >> 2] = dy; if (touch.force !== undefined) { HEAPF32[ptr + 40 >> 2] = touch.force } else { HEAPF32[ptr + 40 >> 2] = event.type == "touchend" ? 0 : 1 } break }; case "unload": { HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type]; break }; case "resize": { HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr + 4 >> 2] = event.w;HEAP32[ptr + 8 >> 2] = event.h; break }; case "joystick_button_up": case "joystick_button_down": { var state = event.type === "joystick_button_up" ? 0 : 1;HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP8[ptr + 4 >> 0] = event.index;HEAP8[ptr + 5 >> 0] = event.button;HEAP8[ptr + 6 >> 0] = state; break }; case "joystick_axis_motion": { HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP8[ptr + 4 >> 0] = event.index;HEAP8[ptr + 5 >> 0] = event.axis;HEAP32[ptr + 8 >> 2] = SDL.joystickAxisValueConversion(event.value); break }; case "focus": { var SDL_WINDOWEVENT_FOCUS_GAINED = 12;HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr + 4 >> 2] = 0;HEAP8[ptr + 8 >> 0] = SDL_WINDOWEVENT_FOCUS_GAINED; break }; case "blur": { var SDL_WINDOWEVENT_FOCUS_LOST = 13;HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr + 4 >> 2] = 0;HEAP8[ptr + 8 >> 0] = SDL_WINDOWEVENT_FOCUS_LOST; break }; case "visibilitychange": { var SDL_WINDOWEVENT_SHOWN = 1; var SDL_WINDOWEVENT_HIDDEN = 2; var visibilityEventID = event.visible ? SDL_WINDOWEVENT_SHOWN : SDL_WINDOWEVENT_HIDDEN;HEAP32[ptr >> 2] = SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr + 4 >> 2] = 0;HEAP8[ptr + 8 >> 0] = visibilityEventID; break }; default: throw "Unhandled SDL event: " + event.type } }), estimateTextWidth: (function (fontData, text) { var h = fontData.size; var fontString = h + "px " + fontData.name; var tempCtx = SDL.ttfContext; tempCtx.save(); tempCtx.font = fontString; var ret = tempCtx.measureText(text).width | 0; tempCtx.restore(); return ret }), allocateChannels: (function (num) { if (SDL.numChannels && SDL.numChannels >= num && num != 0) return; SDL.numChannels = num; SDL.channels = []; for (var i = 0; i < num; i++) { SDL.channels[i] = { audio: null, volume: 1 } } }), setGetVolume: (function (info, volume) { if (!info) return 0; var ret = info.volume * 128; if (volume != -1) { info.volume = Math.min(Math.max(volume, 0), 128) / 128; if (info.audio) { try { info.audio.volume = info.volume; if (info.audio.webAudioGainNode) info.audio.webAudioGainNode["gain"]["value"] = info.volume } catch (e) { Module.printErr("setGetVolume failed to set audio volume: " + e) } } } return ret }), setPannerPosition: (function (info, x, y, z) { if (!info) return; if (info.audio) { if (info.audio.webAudioPannerNode) { info.audio.webAudioPannerNode["setPosition"](x, y, z) } } }), playWebAudio: (function (audio) { if (!audio) return; if (audio.webAudioNode) return; if (!SDL.webAudioAvailable()) return; try { var webAudio = audio.resource.webAudio; audio.paused = false; if (!webAudio.decodedBuffer) { if (webAudio.onDecodeComplete === undefined) abort("Cannot play back audio object that was not loaded"); webAudio.onDecodeComplete.push((function () { if (!audio.paused) SDL.playWebAudio(audio) })); return } audio.webAudioNode = SDL.audioContext["createBufferSource"](); audio.webAudioNode["buffer"] = webAudio.decodedBuffer; audio.webAudioNode["loop"] = audio.loop; audio.webAudioNode["onended"] = (function () { audio["onended"]() }); audio.webAudioPannerNode = SDL.audioContext["createPanner"](); audio.webAudioPannerNode["setPosition"](0, 0, -.5); audio.webAudioPannerNode["panningModel"] = "equalpower"; audio.webAudioGainNode = SDL.audioContext["createGain"](); audio.webAudioGainNode["gain"]["value"] = audio.volume; audio.webAudioNode["connect"](audio.webAudioPannerNode); audio.webAudioPannerNode["connect"](audio.webAudioGainNode); audio.webAudioGainNode["connect"](SDL.audioContext["destination"]); audio.webAudioNode["start"](0, audio.currentPosition); audio.startTime = SDL.audioContext["currentTime"] - audio.currentPosition } catch (e) { Module.printErr("playWebAudio failed: " + e) } }), pauseWebAudio: (function (audio) { if (!audio) return; if (audio.webAudioNode) { try { audio.currentPosition = (SDL.audioContext["currentTime"] - audio.startTime) % audio.resource.webAudio.decodedBuffer.duration; audio.webAudioNode["onended"] = undefined; audio.webAudioNode.stop(0); audio.webAudioNode = undefined } catch (e) { Module.printErr("pauseWebAudio failed: " + e) } } audio.paused = true }), openAudioContext: (function () { if (!SDL.audioContext) { if (typeof AudioContext !== "undefined") SDL.audioContext = new AudioContext; else if (typeof webkitAudioContext !== "undefined") SDL.audioContext = new webkitAudioContext } }), webAudioAvailable: (function () { return !!SDL.audioContext }), fillWebAudioBufferFromHeap: (function (heapPtr, sizeSamplesPerChannel, dstAudioBuffer) { var numChannels = SDL.audio.channels; for (var c = 0; c < numChannels; ++c) { var channelData = dstAudioBuffer["getChannelData"](c); if (channelData.length != sizeSamplesPerChannel) { throw "Web Audio output buffer length mismatch! Destination size: " + channelData.length + " samples vs expected " + sizeSamplesPerChannel + " samples!" } if (SDL.audio.format == 32784) { for (var j = 0; j < sizeSamplesPerChannel; ++j) { channelData[j] = HEAP16[heapPtr + (j * numChannels + c) * 2 >> 1] / 32768 } } else if (SDL.audio.format == 8) { for (var j = 0; j < sizeSamplesPerChannel; ++j) { var v = HEAP8[heapPtr + (j * numChannels + c) >> 0]; channelData[j] = (v >= 0 ? v - 128 : v + 128) / 128 } } } }), debugSurface: (function (surfData) { console.log("dumping surface " + [surfData.surf, surfData.source, surfData.width, surfData.height]); var image = surfData.ctx.getImageData(0, 0, surfData.width, surfData.height); var data = image.data; var num = Math.min(surfData.width, surfData.height); for (var i = 0; i < num; i++) { console.log(" diagonal " + i + ":" + [data[i * surfData.width * 4 + i * 4 + 0], data[i * surfData.width * 4 + i * 4 + 1], data[i * surfData.width * 4 + i * 4 + 2], data[i * surfData.width * 4 + i * 4 + 3]]) } }), joystickEventState: 1, lastJoystickState: {}, joystickNamePool: {}, recordJoystickState: (function (joystick, state) { var buttons = new Array(state.buttons.length); for (var i = 0; i < state.buttons.length; i++) { buttons[i] = SDL.getJoystickButtonState(state.buttons[i]) } SDL.lastJoystickState[joystick] = { buttons: buttons, axes: state.axes.slice(0), timestamp: state.timestamp, index: state.index, id: state.id } }), getJoystickButtonState: (function (button) { if (typeof button === "object") { return button["pressed"] } else { return button > 0 } }), queryJoysticks: (function () { for (var joystick in SDL.lastJoystickState) { var state = SDL.getGamepad(joystick - 1); var prevState = SDL.lastJoystickState[joystick]; if (typeof state === "undefined") return; if (typeof state.timestamp !== "number" || state.timestamp !== prevState.timestamp) { var i; for (i = 0; i < state.buttons.length; i++) { var buttonState = SDL.getJoystickButtonState(state.buttons[i]); if (buttonState !== prevState.buttons[i]) { SDL.events.push({ type: buttonState ? "joystick_button_down" : "joystick_button_up", joystick: joystick, index: joystick - 1, button: i }) } } for (i = 0; i < state.axes.length; i++) { if (state.axes[i] !== prevState.axes[i]) { SDL.events.push({ type: "joystick_axis_motion", joystick: joystick, index: joystick - 1, axis: i, value: state.axes[i] }) } } SDL.recordJoystickState(joystick, state) } } }), joystickAxisValueConversion: (function (value) { value = Math.min(1, Math.max(value, -1)); return Math.ceil((value + 1) * 32767.5 - 32768) }), getGamepads: (function () { var fcn = navigator.getGamepads || navigator.webkitGamepads || navigator.mozGamepads || navigator.gamepads || navigator.webkitGetGamepads; if (fcn !== undefined) { return fcn.apply(navigator) } else { return [] } }), getGamepad: (function (deviceIndex) { var gamepads = SDL.getGamepads(); if (gamepads.length > deviceIndex && deviceIndex >= 0) { return gamepads[deviceIndex] } return null }) }; function _SDL_CreateRGBSurfaceFrom_disabled(pixels, width, height, depth, pitch, rmask, gmask, bmask, amask) { var surf = SDL.makeSurface(width, height, 0, false, "CreateRGBSurfaceFrom", rmask, gmask, bmask, amask); if (depth !== 32) { console.log("TODO: Partially unimplemented SDL_CreateRGBSurfaceFrom called!"); return surf } var data = SDL.surfaces[surf]; var image = data.ctx.createImageData(width, height); var pitchOfDst = width * 4; for (var row = 0; row < height; ++row) { var baseOfDst = row * pitchOfDst; for (var col = 0; col < width * 4; ++col) { image.data[baseOfDst + col] = HEAPU8[pixels + (baseOfDst + col) >> 0] } } data.ctx.putImageData(image, 0, 0); return surf } 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); var len = Math.min(bufsize, lengthBytesUTF8(ret)); var endChar = HEAP8[buf + len]; stringToUTF8(ret, buf, bufsize + 1); HEAP8[buf + len] = endChar; return len }), doAccess: (function (path, amode) { if (amode & ~7) { return -ERRNO_CODES.EINVAL } var node; var lookup = FS.lookupPath(path, { follow: true }); node = lookup.node; var perms = ""; if (amode & 4) perms += "r"; if (amode & 2) perms += "w"; if (amode & 1) perms += "x"; if (perms && FS.nodePermissions(node, perms)) { return -ERRNO_CODES.EACCES } return 0 }), doDup: (function (path, flags, suggestFD) { var suggest = FS.getStream(suggestFD); if (suggest) FS.close(suggest); return FS.open(path, flags, 0, suggestFD, suggestFD).fd }), doReadv: (function (stream, iov, iovcnt, offset) { var ret = 0; for (var i = 0; i < iovcnt; i++) { var ptr = HEAP32[iov + i * 8 >> 2]; var len = HEAP32[iov + (i * 8 + 4) >> 2]; var curr = FS.read(stream, HEAP8, ptr, len, offset); if (curr < 0) return -1; ret += curr; if (curr < len) break } return ret }), doWritev: (function (stream, iov, iovcnt, offset) { var ret = 0; for (var i = 0; i < iovcnt; i++) { var ptr = HEAP32[iov + i * 8 >> 2]; var len = HEAP32[iov + (i * 8 + 4) >> 2]; var curr = FS.write(stream, HEAP8, ptr, len, offset); if (curr < 0) return -1; ret += curr } return ret }), varargs: 0, get: (function (varargs) { SYSCALLS.varargs += 4; var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; return ret }), getStr: (function () { var ret = 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 ___syscall194(which, varargs) { SYSCALLS.varargs = varargs; try { var fd = SYSCALLS.get(), zero = SYSCALLS.getZero(), length = SYSCALLS.get64(); FS.ftruncate(fd, length); return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } var GL = { counter: 1, lastError: 0, buffers: [], mappedBuffers: {}, programs: [], framebuffers: [], renderbuffers: [], textures: [], uniforms: [], shaders: [], vaos: [], contexts: [], currentContext: null, offscreenCanvases: {}, timerQueriesEXT: [], byteSizeByTypeRoot: 5120, byteSizeByType: [1, 1, 2, 2, 4, 4, 4, 2, 3, 4, 8], programInfos: {}, stringCache: {}, tempFixedLengthArray: [], packAlignment: 4, unpackAlignment: 4, init: (function () { GL.miniTempBuffer = new Float32Array(GL.MINI_TEMP_BUFFER_SIZE); for (var i = 0; i < GL.MINI_TEMP_BUFFER_SIZE; i++) { GL.miniTempBufferViews[i] = GL.miniTempBuffer.subarray(0, i + 1) } for (var i = 0; i < 32; i++) { GL.tempFixedLengthArray.push(new Array(i)) } }), recordError: function recordError(errorCode) { if (!GL.lastError) { GL.lastError = errorCode } }, getNewId: (function (table) { var ret = GL.counter++; for (var i = table.length; i < ret; i++) { table[i] = null } return ret }), MINI_TEMP_BUFFER_SIZE: 256, miniTempBuffer: null, miniTempBufferViews: [0], getSource: (function (shader, count, string, length) { var source = ""; for (var i = 0; i < count; ++i) { var frag; if (length) { var len = HEAP32[length + i * 4 >> 2]; if (len < 0) { frag = Pointer_stringify(HEAP32[string + i * 4 >> 2]) } else { frag = Pointer_stringify(HEAP32[string + i * 4 >> 2], len) } } else { frag = Pointer_stringify(HEAP32[string + i * 4 >> 2]) } source += frag } return source }), createContext: (function (canvas, webGLContextAttributes) { if (typeof webGLContextAttributes["majorVersion"] === "undefined" && typeof webGLContextAttributes["minorVersion"] === "undefined") { webGLContextAttributes["majorVersion"] = 1; webGLContextAttributes["minorVersion"] = 0 } var ctx; var errorInfo = "?"; function onContextCreationError(event) { errorInfo = event.statusMessage || errorInfo } try { canvas.addEventListener("webglcontextcreationerror", onContextCreationError, false); try { if (webGLContextAttributes["majorVersion"] == 1 && webGLContextAttributes["minorVersion"] == 0) { ctx = canvas.getContext("webgl", webGLContextAttributes) || canvas.getContext("experimental-webgl", webGLContextAttributes) } else if (webGLContextAttributes["majorVersion"] == 2 && webGLContextAttributes["minorVersion"] == 0) { ctx = canvas.getContext("webgl2", webGLContextAttributes) || canvas.getContext("experimental-webgl2", webGLContextAttributes) } else { throw "Unsupported WebGL context version " + majorVersion + "." + minorVersion + "!" } } finally { canvas.removeEventListener("webglcontextcreationerror", onContextCreationError, false) } if (!ctx) throw ":(" } catch (e) { Module.print("Could not create canvas: " + [errorInfo, e, JSON.stringify(webGLContextAttributes)]); return 0 } if (!ctx) return 0; return GL.registerContext(ctx, webGLContextAttributes) }), registerContext: (function (ctx, webGLContextAttributes) { var handle = GL.getNewId(GL.contexts); var context = { handle: handle, attributes: webGLContextAttributes, version: webGLContextAttributes["majorVersion"], GLctx: ctx }; if (ctx.canvas) ctx.canvas.GLctxObject = context; GL.contexts[handle] = context; if (typeof webGLContextAttributes["enableExtensionsByDefault"] === "undefined" || webGLContextAttributes["enableExtensionsByDefault"]) { GL.initExtensions(context) } return handle }), makeContextCurrent: (function (contextHandle) { var context = GL.contexts[contextHandle]; if (!context) return false; GLctx = Module.ctx = context.GLctx; GL.currentContext = context; return true }), getContext: (function (contextHandle) { return GL.contexts[contextHandle] }), deleteContext: (function (contextHandle) { if (GL.currentContext === GL.contexts[contextHandle]) GL.currentContext = null; if (typeof JSEvents === "object") JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas); if (GL.contexts[contextHandle] && GL.contexts[contextHandle].GLctx.canvas) GL.contexts[contextHandle].GLctx.canvas.GLctxObject = undefined; GL.contexts[contextHandle] = null }), initExtensions: (function (context) { if (!context) context = GL.currentContext; if (context.initExtensionsDone) return; context.initExtensionsDone = true; var GLctx = context.GLctx; context.maxVertexAttribs = GLctx.getParameter(GLctx.MAX_VERTEX_ATTRIBS); if (context.version < 2) { var instancedArraysExt = GLctx.getExtension("ANGLE_instanced_arrays"); if (instancedArraysExt) { GLctx["vertexAttribDivisor"] = (function (index, divisor) { instancedArraysExt["vertexAttribDivisorANGLE"](index, divisor) }); GLctx["drawArraysInstanced"] = (function (mode, first, count, primcount) { instancedArraysExt["drawArraysInstancedANGLE"](mode, first, count, primcount) }); GLctx["drawElementsInstanced"] = (function (mode, count, type, indices, primcount) { instancedArraysExt["drawElementsInstancedANGLE"](mode, count, type, indices, primcount) }) } var vaoExt = GLctx.getExtension("OES_vertex_array_object"); if (vaoExt) { GLctx["createVertexArray"] = (function () { return vaoExt["createVertexArrayOES"]() }); GLctx["deleteVertexArray"] = (function (vao) { vaoExt["deleteVertexArrayOES"](vao) }); GLctx["bindVertexArray"] = (function (vao) { vaoExt["bindVertexArrayOES"](vao) }); GLctx["isVertexArray"] = (function (vao) { return vaoExt["isVertexArrayOES"](vao) }) } var drawBuffersExt = GLctx.getExtension("WEBGL_draw_buffers"); if (drawBuffersExt) { GLctx["drawBuffers"] = (function (n, bufs) { drawBuffersExt["drawBuffersWEBGL"](n, bufs) }) } } GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query"); var automaticallyEnabledExtensions = ["OES_texture_float", "OES_texture_half_float", "OES_standard_derivatives", "OES_vertex_array_object", "WEBGL_compressed_texture_s3tc", "WEBGL_depth_texture", "OES_element_index_uint", "EXT_texture_filter_anisotropic", "ANGLE_instanced_arrays", "OES_texture_float_linear", "OES_texture_half_float_linear", "WEBGL_compressed_texture_atc", "WEBGL_compressed_texture_pvrtc", "EXT_color_buffer_half_float", "WEBGL_color_buffer_float", "EXT_frag_depth", "EXT_sRGB", "WEBGL_draw_buffers", "WEBGL_shared_resources", "EXT_shader_texture_lod", "EXT_color_buffer_float"]; var exts = GLctx.getSupportedExtensions(); if (exts && exts.length > 0) { GLctx.getSupportedExtensions().forEach((function (ext) { if (automaticallyEnabledExtensions.indexOf(ext) != -1) { GLctx.getExtension(ext) } })) } }), populateUniformTable: (function (program) { var p = GL.programs[program]; GL.programInfos[program] = { uniforms: {}, maxUniformLength: 0, maxAttributeLength: -1, maxUniformBlockNameLength: -1 }; var ptable = GL.programInfos[program]; var utable = ptable.uniforms; var numUniforms = GLctx.getProgramParameter(p, GLctx.ACTIVE_UNIFORMS); for (var i = 0; i < numUniforms; ++i) { var u = GLctx.getActiveUniform(p, i); var name = u.name; ptable.maxUniformLength = Math.max(ptable.maxUniformLength, name.length + 1); if (name.indexOf("]", name.length - 1) !== -1) { var ls = name.lastIndexOf("["); name = name.slice(0, ls) } var loc = GLctx.getUniformLocation(p, name); if (loc != null) { var id = GL.getNewId(GL.uniforms); utable[name] = [u.size, id]; GL.uniforms[id] = loc; for (var j = 1; j < u.size; ++j) { var n = name + "[" + j + "]"; loc = GLctx.getUniformLocation(p, n); id = GL.getNewId(GL.uniforms); GL.uniforms[id] = loc } } } }) }; function _SDL_SetVideoMode(width, height, depth, flags) { ["touchstart", "touchend", "touchmove", "mousedown", "mouseup", "mousemove", "DOMMouseScroll", "mousewheel", "wheel", "mouseout"].forEach((function (event) { Module["canvas"].addEventListener(event, SDL.receiveEvent, true) })); var canvas = Module["canvas"]; if (width == 0 && height == 0) { width = canvas.width; height = canvas.height } if (!SDL.addedResizeListener) { SDL.addedResizeListener = true; Browser.resizeListeners.push((function (w, h) { if (!SDL.settingVideoMode) { SDL.receiveEvent({ type: "resize", w: w, h: h }) } })) } if (width !== canvas.width || height !== canvas.height) { SDL.settingVideoMode = true; Browser.setCanvasSize(width, height); SDL.settingVideoMode = false } if (SDL.screen) { SDL.freeSurface(SDL.screen); assert(!SDL.screen) } if (SDL.GL) flags = flags | 67108864; SDL.screen = SDL.makeSurface(width, height, flags, true, "screen"); return SDL.screen } function _SDL_GetMouseState(x, y) { if (x) HEAP32[x >> 2] = Browser.mouseX; if (y) HEAP32[y >> 2] = Browser.mouseY; return SDL.buttonState } function _SDL_ShowCursor(toggle) { switch (toggle) { case 0: if (Browser.isFullscreen) { Module["canvas"].requestPointerLock(); return 0 } else { return 1 } break; case 1: Module["canvas"].exitPointerLock(); return 1; break; case -1: return !Browser.pointerLock; break; default: console.log("SDL_ShowCursor called with unknown toggle parameter value: " + toggle + "."); break } } function _SDL_PollEvent(ptr) { return SDL.pollEvent(ptr) } function _SDL_GetVideoInfo() { var ret = _malloc(5 * Runtime.QUANTUM_SIZE); HEAP32[ret + Runtime.QUANTUM_SIZE * 0 >> 2] = 0; HEAP32[ret + Runtime.QUANTUM_SIZE * 1 >> 2] = 0; HEAP32[ret + Runtime.QUANTUM_SIZE * 2 >> 2] = 0; HEAP32[ret + Runtime.QUANTUM_SIZE * 3 >> 2] = Module["canvas"].width; HEAP32[ret + Runtime.QUANTUM_SIZE * 4 >> 2] = Module["canvas"].height; return ret } function _usleep(useconds) { var msec = useconds / 1e3; if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) { var start = self["performance"]["now"](); while (self["performance"]["now"]() - start < msec) {} } else { var start = Date.now(); while (Date.now() - start < msec) {} } return 0 } function _nanosleep(rqtp, rmtp) { var seconds = HEAP32[rqtp >> 2]; var nanoseconds = HEAP32[rqtp + 4 >> 2]; if (rmtp !== 0) { HEAP32[rmtp >> 2] = 0; HEAP32[rmtp + 4 >> 2] = 0 } return _usleep(seconds * 1e6 + nanoseconds / 1e3) } function _SDL_Flip(surf) {} function _SDL_InitSubSystem(flags) { return 0 } function _SDL_GetError() { if (!SDL.errorMessage) { SDL.errorMessage = allocate(intArrayFromString("unknown SDL-emscripten error"), "i8", ALLOC_NORMAL) } return SDL.errorMessage } function _emscripten_cancel_main_loop() { Browser.mainLoop.pause(); Browser.mainLoop.func = null } var ___tm_current = STATICTOP; STATICTOP += 48; var ___tm_timezone = allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC); 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 _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 _SDL_Init(initFlags) { SDL.startTime = Date.now(); SDL.initFlags = initFlags; if (!Module["doNotCaptureKeyboard"]) { var keyboardListeningElement = Module["keyboardListeningElement"] || document; keyboardListeningElement.addEventListener("keydown", SDL.receiveEvent); keyboardListeningElement.addEventListener("keyup", SDL.receiveEvent); keyboardListeningElement.addEventListener("keypress", SDL.receiveEvent); window.addEventListener("focus", SDL.receiveEvent); window.addEventListener("blur", SDL.receiveEvent); document.addEventListener("visibilitychange", SDL.receiveEvent) } if (initFlags & 512) { addEventListener("gamepadconnected", (function () {})) } window.addEventListener("unload", SDL.receiveEvent); SDL.keyboardState = _malloc(65536); _memset(SDL.keyboardState, 0, 65536); SDL.DOMEventToSDLEvent["keydown"] = 768; SDL.DOMEventToSDLEvent["keyup"] = 769; SDL.DOMEventToSDLEvent["keypress"] = 771; SDL.DOMEventToSDLEvent["mousedown"] = 1025; SDL.DOMEventToSDLEvent["mouseup"] = 1026; SDL.DOMEventToSDLEvent["mousemove"] = 1024; SDL.DOMEventToSDLEvent["wheel"] = 1027; SDL.DOMEventToSDLEvent["touchstart"] = 1792; SDL.DOMEventToSDLEvent["touchend"] = 1793; SDL.DOMEventToSDLEvent["touchmove"] = 1794; SDL.DOMEventToSDLEvent["unload"] = 256; SDL.DOMEventToSDLEvent["resize"] = 28673; SDL.DOMEventToSDLEvent["visibilitychange"] = 512; SDL.DOMEventToSDLEvent["focus"] = 512; SDL.DOMEventToSDLEvent["blur"] = 512; SDL.DOMEventToSDLEvent["joystick_axis_motion"] = 1536; SDL.DOMEventToSDLEvent["joystick_button_down"] = 1539; SDL.DOMEventToSDLEvent["joystick_button_up"] = 1540; return 0 } function _SDL_WasInit() { if (SDL.startTime === null) { _SDL_Init() } return 1 } function _gettimeofday(ptr) { var now = Date.now(); HEAP32[ptr >> 2] = now / 1e3 | 0; HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; return 0 } function _SDL_WM_SetCaption(title, icon) { if (title && typeof Module["setWindowTitle"] !== "undefined") { Module["setWindowTitle"](Pointer_stringify(title)) } icon = icon && Pointer_stringify(icon) } function _emscripten_memcpy_big(dest, src, num) { HEAPU8.set(HEAPU8.subarray(src, src + num), dest); return dest } Module["_memcpy"] = _memcpy; Module["_sbrk"] = _sbrk; Module["_bitshift64Shl"] = _bitshift64Shl; var __sigalrm_handler = 0; function _signal(sig, func) { if (sig == 14) { __sigalrm_handler = func } else {} return 0 } function _SDL_LockAudio() {} 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) }; case 21523: { if (!stream.tty) return -ERRNO_CODES.ENOTTY; return 0 }; default: abort("bad ioctl syscall " + op) } } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall168(which, varargs) { SYSCALLS.varargs = varargs; try { var fds = SYSCALLS.get(), nfds = SYSCALLS.get(), timeout = SYSCALLS.get(); var nonzero = 0; for (var i = 0; i < nfds; i++) { var pollfd = fds + 8 * i; var fd = HEAP32[pollfd >> 2]; var events = HEAP16[pollfd + 4 >> 1]; var mask = 32; var stream = FS.getStream(fd); if (stream) { mask = SYSCALLS.DEFAULT_POLLMASK; if (stream.stream_ops.poll) { mask = stream.stream_ops.poll(stream) } } mask &= events | 8 | 16; if (mask) nonzero++; HEAP16[pollfd + 6 >> 1] = mask } return nonzero } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function _SDL_OpenAudio(desired, obtained) { try { SDL.audio = { freq: HEAPU32[desired >> 2], format: HEAPU16[desired + 4 >> 1], channels: HEAPU8[desired + 6 >> 0], samples: HEAPU16[desired + 8 >> 1], callback: HEAPU32[desired + 16 >> 2], userdata: HEAPU32[desired + 20 >> 2], paused: true, timer: null }; if (SDL.audio.format == 8) { SDL.audio.silence = 128 } else if (SDL.audio.format == 32784) { SDL.audio.silence = 0 } else { throw "Invalid SDL audio format " + SDL.audio.format + "!" } if (SDL.audio.freq <= 0) { throw "Unsupported sound frequency " + SDL.audio.freq + "!" } else if (SDL.audio.freq <= 22050) { SDL.audio.freq = 22050 } else if (SDL.audio.freq <= 32e3) { SDL.audio.freq = 32e3 } else if (SDL.audio.freq <= 44100) { SDL.audio.freq = 44100 } else if (SDL.audio.freq <= 48e3) { SDL.audio.freq = 48e3 } else if (SDL.audio.freq <= 96e3) { SDL.audio.freq = 96e3 } else { throw "Unsupported sound frequency " + SDL.audio.freq + "!" } if (SDL.audio.channels == 0) { SDL.audio.channels = 1 } else if (SDL.audio.channels < 0 || SDL.audio.channels > 32) { throw "Unsupported number of audio channels for SDL audio: " + SDL.audio.channels + "!" } else if (SDL.audio.channels != 1 && SDL.audio.channels != 2) { console.log("Warning: Using untested number of audio channels " + SDL.audio.channels) } if (SDL.audio.samples < 128 || SDL.audio.samples > 524288) { throw "Unsupported audio callback buffer size " + SDL.audio.samples + "!" } else if ((SDL.audio.samples & SDL.audio.samples - 1) != 0) { throw "Audio callback buffer size " + SDL.audio.samples + " must be a power-of-two!" } var totalSamples = SDL.audio.samples * SDL.audio.channels; SDL.audio.bytesPerSample = SDL.audio.format == 8 || SDL.audio.format == 32776 ? 1 : 2; SDL.audio.bufferSize = totalSamples * SDL.audio.bytesPerSample; SDL.audio.bufferDurationSecs = SDL.audio.bufferSize / SDL.audio.bytesPerSample / SDL.audio.channels / SDL.audio.freq; SDL.audio.bufferingDelay = 50 / 1e3; SDL.audio.buffer = _malloc(SDL.audio.bufferSize); SDL.audio.numSimultaneouslyQueuedBuffers = Module["SDL_numSimultaneouslyQueuedBuffers"] || 5; SDL.audio.queueNewAudioData = function SDL_queueNewAudioData() { if (!SDL.audio) return; for (var i = 0; i < SDL.audio.numSimultaneouslyQueuedBuffers; ++i) { var secsUntilNextPlayStart = SDL.audio.nextPlayTime - SDL.audioContext["currentTime"]; if (secsUntilNextPlayStart >= SDL.audio.bufferingDelay + SDL.audio.bufferDurationSecs * SDL.audio.numSimultaneouslyQueuedBuffers) return; Module["dynCall_viii"](SDL.audio.callback, SDL.audio.userdata, SDL.audio.buffer, SDL.audio.bufferSize); SDL.audio.pushAudio(SDL.audio.buffer, SDL.audio.bufferSize) } }; SDL.audio.caller = function SDL_audioCaller() { if (!SDL.audio) return; --SDL.audio.numAudioTimersPending; SDL.audio.queueNewAudioData(); var secsUntilNextPlayStart = SDL.audio.nextPlayTime - SDL.audioContext["currentTime"]; var preemptBufferFeedSecs = SDL.audio.bufferDurationSecs / 2; if (SDL.audio.numAudioTimersPending < SDL.audio.numSimultaneouslyQueuedBuffers) { ++SDL.audio.numAudioTimersPending; SDL.audio.timer = Browser.safeSetTimeout(SDL.audio.caller, Math.max(0, 1e3 * (secsUntilNextPlayStart - preemptBufferFeedSecs))); if (SDL.audio.numAudioTimersPending < SDL.audio.numSimultaneouslyQueuedBuffers) { ++SDL.audio.numAudioTimersPending; Browser.safeSetTimeout(SDL.audio.caller, 1) } } }; SDL.audio.audioOutput = new Audio; SDL.openAudioContext(); if (!SDL.audioContext) throw "Web Audio API is not available!"; SDL.audio.nextPlayTime = 0; SDL.audio.pushAudio = (function (ptr, sizeBytes) { try { if (SDL.audio.paused) return; var sizeSamples = sizeBytes / SDL.audio.bytesPerSample; var sizeSamplesPerChannel = sizeSamples / SDL.audio.channels; if (sizeSamplesPerChannel != SDL.audio.samples) { throw "Received mismatching audio buffer size!" } var source = SDL.audioContext["createBufferSource"](); var soundBuffer = SDL.audioContext["createBuffer"](SDL.audio.channels, sizeSamplesPerChannel, SDL.audio.freq); source["connect"](SDL.audioContext["destination"]); SDL.fillWebAudioBufferFromHeap(ptr, sizeSamplesPerChannel, soundBuffer); source["buffer"] = soundBuffer; var curtime = SDL.audioContext["currentTime"]; var playtime = Math.max(curtime + SDL.audio.bufferingDelay, SDL.audio.nextPlayTime); if (typeof source["start"] !== "undefined") { source["start"](playtime) } else if (typeof source["noteOn"] !== "undefined") { source["noteOn"](playtime) } SDL.audio.nextPlayTime = playtime + SDL.audio.bufferDurationSecs } catch (e) { console.log("Web Audio API error playing back audio: " + e.toString()) } }); if (obtained) { HEAP32[obtained >> 2] = SDL.audio.freq; HEAP16[obtained + 4 >> 1] = SDL.audio.format; HEAP8[obtained + 6 >> 0] = SDL.audio.channels; HEAP8[obtained + 7 >> 0] = SDL.audio.silence; HEAP16[obtained + 8 >> 1] = SDL.audio.samples; HEAP32[obtained + 16 >> 2] = SDL.audio.callback; HEAP32[obtained + 20 >> 2] = SDL.audio.userdata } SDL.allocateChannels(32) } catch (e) { console.log('Initializing SDL audio threw an exception: "' + e.toString() + '"! Continuing without audio.'); SDL.audio = null; SDL.allocateChannels(0); if (obtained) { HEAP32[obtained >> 2] = 0; HEAP16[obtained + 4 >> 1] = 0; HEAP8[obtained + 6 >> 0] = 0; HEAP8[obtained + 7 >> 0] = 0; HEAP16[obtained + 8 >> 1] = 0; HEAP32[obtained + 16 >> 2] = 0; HEAP32[obtained + 20 >> 2] = 0 } } if (!SDL.audio) { return -1 } return 0 } function _SDL_UnlockAudio() {} function _SDL_EnableKeyRepeat(delay, interval) {} Module["_memset"] = _memset; function _SDL_WM_ToggleFullScreen(surf) { if (Browser.isFullscreen) { Module["canvas"].exitFullscreen(); return 1 } else { if (!SDL.canRequestFullscreen) { return 0 } SDL.isRequestingFullscreen = true; return 1 } } function _atexit(func, arg) { __ATEXIT__.unshift({ func: func, arg: arg }) } function _abort() { Module["abort"]() } 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["___uremdi3"] = ___uremdi3; Module["___divdi3"] = ___divdi3; function ___lock() {} function ___unlock() {} function __exit(status) { Module["exit"](status) } function _exit(status) { __exit(status) } var JSEvents = { keyEvent: 0, mouseEvent: 0, wheelEvent: 0, uiEvent: 0, focusEvent: 0, deviceOrientationEvent: 0, deviceMotionEvent: 0, fullscreenChangeEvent: 0, pointerlockChangeEvent: 0, visibilityChangeEvent: 0, touchEvent: 0, lastGamepadState: null, lastGamepadStateFrame: null, numGamepadsConnected: 0, previousFullscreenElement: null, previousScreenX: null, previousScreenY: null, removeEventListenersRegistered: false, staticInit: (function () { if (typeof window !== "undefined") { window.addEventListener("gamepadconnected", (function () { ++JSEvents.numGamepadsConnected })); window.addEventListener("gamepaddisconnected", (function () { --JSEvents.numGamepadsConnected })) } }), registerRemoveEventListeners: (function () { if (!JSEvents.removeEventListenersRegistered) { __ATEXIT__.push((function () { for (var i = JSEvents.eventHandlers.length - 1; i >= 0; --i) { JSEvents._removeHandler(i) } })); JSEvents.removeEventListenersRegistered = true } }), findEventTarget: (function (target) { if (target) { if (typeof target == "number") { target = Pointer_stringify(target) } if (target == "#window") return window; else if (target == "#document") return document; else if (target == "#screen") return window.screen; else if (target == "#canvas") return Module["canvas"]; if (typeof target == "string") return document.getElementById(target); else return target } else { return window } }), deferredCalls: [], deferCall: (function (targetFunction, precedence, argsList) { function arraysHaveEqualContent(arrA, arrB) { if (arrA.length != arrB.length) return false; for (var i in arrA) { if (arrA[i] != arrB[i]) return false } return true } for (var i in JSEvents.deferredCalls) { var call = JSEvents.deferredCalls[i]; if (call.targetFunction == targetFunction && arraysHaveEqualContent(call.argsList, argsList)) { return } } JSEvents.deferredCalls.push({ targetFunction: targetFunction, precedence: precedence, argsList: argsList }); JSEvents.deferredCalls.sort((function (x, y) { return x.precedence < y.precedence })) }), removeDeferredCalls: (function (targetFunction) { for (var i = 0; i < JSEvents.deferredCalls.length; ++i) { if (JSEvents.deferredCalls[i].targetFunction == targetFunction) { JSEvents.deferredCalls.splice(i, 1); --i } } }), canPerformEventHandlerRequests: (function () { return JSEvents.inEventHandler && JSEvents.currentEventHandler.allowsDeferredCalls }), runDeferredCalls: (function () { if (!JSEvents.canPerformEventHandlerRequests()) { return } for (var i = 0; i < JSEvents.deferredCalls.length; ++i) { var call = JSEvents.deferredCalls[i]; JSEvents.deferredCalls.splice(i, 1); --i; call.targetFunction.apply(this, call.argsList) } }), inEventHandler: 0, currentEventHandler: null, eventHandlers: [], isInternetExplorer: (function () { return navigator.userAgent.indexOf("MSIE") !== -1 || navigator.appVersion.indexOf("Trident/") > 0 }), removeAllHandlersOnTarget: (function (target, eventTypeString) { for (var i = 0; i < JSEvents.eventHandlers.length; ++i) { if (JSEvents.eventHandlers[i].target == target && (!eventTypeString || eventTypeString == JSEvents.eventHandlers[i].eventTypeString)) { JSEvents._removeHandler(i--) } } }), _removeHandler: (function (i) { var h = JSEvents.eventHandlers[i]; h.target.removeEventListener(h.eventTypeString, h.eventListenerFunc, h.useCapture); JSEvents.eventHandlers.splice(i, 1) }), registerOrRemoveHandler: (function (eventHandler) { var jsEventHandler = function jsEventHandler(event) { ++JSEvents.inEventHandler; JSEvents.currentEventHandler = eventHandler; JSEvents.runDeferredCalls(); eventHandler.handlerFunc(event); JSEvents.runDeferredCalls(); --JSEvents.inEventHandler }; if (eventHandler.callbackfunc) { eventHandler.eventListenerFunc = jsEventHandler; eventHandler.target.addEventListener(eventHandler.eventTypeString, jsEventHandler, eventHandler.useCapture); JSEvents.eventHandlers.push(eventHandler); JSEvents.registerRemoveEventListeners() } else { for (var i = 0; i < JSEvents.eventHandlers.length; ++i) { if (JSEvents.eventHandlers[i].target == eventHandler.target && JSEvents.eventHandlers[i].eventTypeString == eventHandler.eventTypeString) { JSEvents._removeHandler(i--) } } } }), registerKeyEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.keyEvent) { JSEvents.keyEvent = _malloc(164) } var handlerFunc = (function (event) { var e = event || window.event; stringToUTF8(e.key ? e.key : "", JSEvents.keyEvent + 0, 32); stringToUTF8(e.code ? e.code : "", JSEvents.keyEvent + 32, 32); HEAP32[JSEvents.keyEvent + 64 >> 2] = e.location; HEAP32[JSEvents.keyEvent + 68 >> 2] = e.ctrlKey; HEAP32[JSEvents.keyEvent + 72 >> 2] = e.shiftKey; HEAP32[JSEvents.keyEvent + 76 >> 2] = e.altKey; HEAP32[JSEvents.keyEvent + 80 >> 2] = e.metaKey; HEAP32[JSEvents.keyEvent + 84 >> 2] = e.repeat; stringToUTF8(e.locale ? e.locale : "", JSEvents.keyEvent + 88, 32); stringToUTF8(e.char ? e.char : "", JSEvents.keyEvent + 120, 32); HEAP32[JSEvents.keyEvent + 152 >> 2] = e.charCode; HEAP32[JSEvents.keyEvent + 156 >> 2] = e.keyCode; HEAP32[JSEvents.keyEvent + 160 >> 2] = e.which; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.keyEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: JSEvents.isInternetExplorer() ? false : true, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), getBoundingClientRectOrZeros: (function (target) { return target.getBoundingClientRect ? target.getBoundingClientRect() : { left: 0, top: 0 } }), fillMouseEventData: (function (eventStruct, e, target) { HEAPF64[eventStruct >> 3] = JSEvents.tick(); HEAP32[eventStruct + 8 >> 2] = e.screenX; HEAP32[eventStruct + 12 >> 2] = e.screenY; HEAP32[eventStruct + 16 >> 2] = e.clientX; HEAP32[eventStruct + 20 >> 2] = e.clientY; HEAP32[eventStruct + 24 >> 2] = e.ctrlKey; HEAP32[eventStruct + 28 >> 2] = e.shiftKey; HEAP32[eventStruct + 32 >> 2] = e.altKey; HEAP32[eventStruct + 36 >> 2] = e.metaKey; HEAP16[eventStruct + 40 >> 1] = e.button; HEAP16[eventStruct + 42 >> 1] = e.buttons; HEAP32[eventStruct + 44 >> 2] = e["movementX"] || e["mozMovementX"] || e["webkitMovementX"] || e.screenX - JSEvents.previousScreenX; HEAP32[eventStruct + 48 >> 2] = e["movementY"] || e["mozMovementY"] || e["webkitMovementY"] || e.screenY - JSEvents.previousScreenY; if (Module["canvas"]) { var rect = Module["canvas"].getBoundingClientRect(); HEAP32[eventStruct + 60 >> 2] = e.clientX - rect.left; HEAP32[eventStruct + 64 >> 2] = e.clientY - rect.top } else { HEAP32[eventStruct + 60 >> 2] = 0; HEAP32[eventStruct + 64 >> 2] = 0 } if (target) { var rect = JSEvents.getBoundingClientRectOrZeros(target); HEAP32[eventStruct + 52 >> 2] = e.clientX - rect.left; HEAP32[eventStruct + 56 >> 2] = e.clientY - rect.top } else { HEAP32[eventStruct + 52 >> 2] = 0; HEAP32[eventStruct + 56 >> 2] = 0 } if (e.type !== "wheel" && e.type !== "mousewheel") { JSEvents.previousScreenX = e.screenX; JSEvents.previousScreenY = e.screenY } }), registerMouseEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.mouseEvent) { JSEvents.mouseEvent = _malloc(72) } target = JSEvents.findEventTarget(target); var handlerFunc = (function (event) { var e = event || window.event; JSEvents.fillMouseEventData(JSEvents.mouseEvent, e, target); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.mouseEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: eventTypeString != "mousemove" && eventTypeString != "mouseenter" && eventTypeString != "mouseleave", eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; if (JSEvents.isInternetExplorer() && eventTypeString == "mousedown") eventHandler.allowsDeferredCalls = false; JSEvents.registerOrRemoveHandler(eventHandler) }), registerWheelEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.wheelEvent) { JSEvents.wheelEvent = _malloc(104) } target = JSEvents.findEventTarget(target); var wheelHandlerFunc = (function (event) { var e = event || window.event; JSEvents.fillMouseEventData(JSEvents.wheelEvent, e, target); HEAPF64[JSEvents.wheelEvent + 72 >> 3] = e["deltaX"]; HEAPF64[JSEvents.wheelEvent + 80 >> 3] = e["deltaY"]; HEAPF64[JSEvents.wheelEvent + 88 >> 3] = e["deltaZ"]; HEAP32[JSEvents.wheelEvent + 96 >> 2] = e["deltaMode"]; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.wheelEvent, userData); if (shouldCancel) { e.preventDefault() } }); var mouseWheelHandlerFunc = (function (event) { var e = event || window.event; JSEvents.fillMouseEventData(JSEvents.wheelEvent, e, target); HEAPF64[JSEvents.wheelEvent + 72 >> 3] = e["wheelDeltaX"] || 0; HEAPF64[JSEvents.wheelEvent + 80 >> 3] = -(e["wheelDeltaY"] ? e["wheelDeltaY"] : e["wheelDelta"]); HEAPF64[JSEvents.wheelEvent + 88 >> 3] = 0; HEAP32[JSEvents.wheelEvent + 96 >> 2] = 0; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.wheelEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: true, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: eventTypeString == "wheel" ? wheelHandlerFunc : mouseWheelHandlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), pageScrollPos: (function () { if (window.pageXOffset > 0 || window.pageYOffset > 0) { return [window.pageXOffset, window.pageYOffset] } if (typeof document.documentElement.scrollLeft !== "undefined" || typeof document.documentElement.scrollTop !== "undefined") { return [document.documentElement.scrollLeft, document.documentElement.scrollTop] } return [document.body.scrollLeft | 0, document.body.scrollTop | 0] }), registerUiEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.uiEvent) { JSEvents.uiEvent = _malloc(36) } if (eventTypeString == "scroll" && !target) { target = document } else { target = JSEvents.findEventTarget(target) } var handlerFunc = (function (event) { var e = event || window.event; if (e.target != target) { return } var scrollPos = JSEvents.pageScrollPos(); HEAP32[JSEvents.uiEvent >> 2] = e.detail; HEAP32[JSEvents.uiEvent + 4 >> 2] = document.body.clientWidth; HEAP32[JSEvents.uiEvent + 8 >> 2] = document.body.clientHeight; HEAP32[JSEvents.uiEvent + 12 >> 2] = window.innerWidth; HEAP32[JSEvents.uiEvent + 16 >> 2] = window.innerHeight; HEAP32[JSEvents.uiEvent + 20 >> 2] = window.outerWidth; HEAP32[JSEvents.uiEvent + 24 >> 2] = window.outerHeight; HEAP32[JSEvents.uiEvent + 28 >> 2] = scrollPos[0]; HEAP32[JSEvents.uiEvent + 32 >> 2] = scrollPos[1]; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.uiEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), getNodeNameForTarget: (function (target) { if (!target) return ""; if (target == window) return "#window"; if (target == window.screen) return "#screen"; return target && target.nodeName ? target.nodeName : "" }), registerFocusEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.focusEvent) { JSEvents.focusEvent = _malloc(256) } var handlerFunc = (function (event) { var e = event || window.event; var nodeName = JSEvents.getNodeNameForTarget(e.target); var id = e.target.id ? e.target.id : ""; stringToUTF8(nodeName, JSEvents.focusEvent + 0, 128); stringToUTF8(id, JSEvents.focusEvent + 128, 128); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.focusEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), tick: (function () { if (window["performance"] && window["performance"]["now"]) return window["performance"]["now"](); else return Date.now() }), registerDeviceOrientationEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.deviceOrientationEvent) { JSEvents.deviceOrientationEvent = _malloc(40) } var handlerFunc = (function (event) { var e = event || window.event; HEAPF64[JSEvents.deviceOrientationEvent >> 3] = JSEvents.tick(); HEAPF64[JSEvents.deviceOrientationEvent + 8 >> 3] = e.alpha; HEAPF64[JSEvents.deviceOrientationEvent + 16 >> 3] = e.beta; HEAPF64[JSEvents.deviceOrientationEvent + 24 >> 3] = e.gamma; HEAP32[JSEvents.deviceOrientationEvent + 32 >> 2] = e.absolute; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.deviceOrientationEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), registerDeviceMotionEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.deviceMotionEvent) { JSEvents.deviceMotionEvent = _malloc(80) } var handlerFunc = (function (event) { var e = event || window.event; HEAPF64[JSEvents.deviceOrientationEvent >> 3] = JSEvents.tick(); HEAPF64[JSEvents.deviceMotionEvent + 8 >> 3] = e.acceleration.x; HEAPF64[JSEvents.deviceMotionEvent + 16 >> 3] = e.acceleration.y; HEAPF64[JSEvents.deviceMotionEvent + 24 >> 3] = e.acceleration.z; HEAPF64[JSEvents.deviceMotionEvent + 32 >> 3] = e.accelerationIncludingGravity.x; HEAPF64[JSEvents.deviceMotionEvent + 40 >> 3] = e.accelerationIncludingGravity.y; HEAPF64[JSEvents.deviceMotionEvent + 48 >> 3] = e.accelerationIncludingGravity.z; HEAPF64[JSEvents.deviceMotionEvent + 56 >> 3] = e.rotationRate.alpha; HEAPF64[JSEvents.deviceMotionEvent + 64 >> 3] = e.rotationRate.beta; HEAPF64[JSEvents.deviceMotionEvent + 72 >> 3] = e.rotationRate.gamma; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.deviceMotionEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), screenOrientation: (function () { if (!window.screen) return undefined; return window.screen.orientation || window.screen.mozOrientation || window.screen.webkitOrientation || window.screen.msOrientation }), fillOrientationChangeEventData: (function (eventStruct, e) { var orientations = ["portrait-primary", "portrait-secondary", "landscape-primary", "landscape-secondary"]; var orientations2 = ["portrait", "portrait", "landscape", "landscape"]; var orientationString = JSEvents.screenOrientation(); var orientation = orientations.indexOf(orientationString); if (orientation == -1) { orientation = orientations2.indexOf(orientationString) } HEAP32[eventStruct >> 2] = 1 << orientation; HEAP32[eventStruct + 4 >> 2] = window.orientation }), registerOrientationChangeEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.orientationChangeEvent) { JSEvents.orientationChangeEvent = _malloc(8) } if (!target) { target = window.screen } else { target = JSEvents.findEventTarget(target) } var handlerFunc = (function (event) { var e = event || window.event; JSEvents.fillOrientationChangeEventData(JSEvents.orientationChangeEvent, e); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.orientationChangeEvent, userData); if (shouldCancel) { e.preventDefault() } }); if (eventTypeString == "orientationchange" && window.screen.mozOrientation !== undefined) { eventTypeString = "mozorientationchange" } var eventHandler = { target: target, allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), fullscreenEnabled: (function () { return document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled }), fillFullscreenChangeEventData: (function (eventStruct, e) { var fullscreenElement = document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement; var isFullscreen = !!fullscreenElement; HEAP32[eventStruct >> 2] = isFullscreen; HEAP32[eventStruct + 4 >> 2] = JSEvents.fullscreenEnabled(); var reportedElement = isFullscreen ? fullscreenElement : JSEvents.previousFullscreenElement; var nodeName = JSEvents.getNodeNameForTarget(reportedElement); var id = reportedElement && reportedElement.id ? reportedElement.id : ""; stringToUTF8(nodeName, eventStruct + 8, 128); stringToUTF8(id, eventStruct + 136, 128); HEAP32[eventStruct + 264 >> 2] = reportedElement ? reportedElement.clientWidth : 0; HEAP32[eventStruct + 268 >> 2] = reportedElement ? reportedElement.clientHeight : 0; HEAP32[eventStruct + 272 >> 2] = screen.width; HEAP32[eventStruct + 276 >> 2] = screen.height; if (isFullscreen) { JSEvents.previousFullscreenElement = fullscreenElement } }), registerFullscreenChangeEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.fullscreenChangeEvent) { JSEvents.fullscreenChangeEvent = _malloc(280) } if (!target) { target = document } else { target = JSEvents.findEventTarget(target) } var handlerFunc = (function (event) { var e = event || window.event; JSEvents.fillFullscreenChangeEventData(JSEvents.fullscreenChangeEvent, e); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.fullscreenChangeEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), resizeCanvasForFullscreen: (function (target, strategy) { var restoreOldStyle = __registerRestoreOldStyle(target); var cssWidth = strategy.softFullscreen ? window.innerWidth : screen.width; var cssHeight = strategy.softFullscreen ? window.innerHeight : screen.height; var rect = target.getBoundingClientRect(); var windowedCssWidth = rect.right - rect.left; var windowedCssHeight = rect.bottom - rect.top; var windowedRttWidth = target.width; var windowedRttHeight = target.height; if (strategy.scaleMode == 3) { __setLetterbox(target, (cssHeight - windowedCssHeight) / 2, (cssWidth - windowedCssWidth) / 2); cssWidth = windowedCssWidth; cssHeight = windowedCssHeight } else if (strategy.scaleMode == 2) { if (cssWidth * windowedRttHeight < windowedRttWidth * cssHeight) { var desiredCssHeight = windowedRttHeight * cssWidth / windowedRttWidth; __setLetterbox(target, (cssHeight - desiredCssHeight) / 2, 0); cssHeight = desiredCssHeight } else { var desiredCssWidth = windowedRttWidth * cssHeight / windowedRttHeight; __setLetterbox(target, 0, (cssWidth - desiredCssWidth) / 2); cssWidth = desiredCssWidth } } if (!target.style.backgroundColor) target.style.backgroundColor = "black"; if (!document.body.style.backgroundColor) document.body.style.backgroundColor = "black"; target.style.width = cssWidth + "px"; target.style.height = cssHeight + "px"; if (strategy.filteringMode == 1) { target.style.imageRendering = "optimizeSpeed"; target.style.imageRendering = "-moz-crisp-edges"; target.style.imageRendering = "-o-crisp-edges"; target.style.imageRendering = "-webkit-optimize-contrast"; target.style.imageRendering = "optimize-contrast"; target.style.imageRendering = "crisp-edges"; target.style.imageRendering = "pixelated" } var dpiScale = strategy.canvasResolutionScaleMode == 2 ? window.devicePixelRatio : 1; if (strategy.canvasResolutionScaleMode != 0) { target.width = cssWidth * dpiScale; target.height = cssHeight * dpiScale; if (target.GLctxObject) target.GLctxObject.GLctx.viewport(0, 0, target.width, target.height) } return restoreOldStyle }), requestFullscreen: (function (target, strategy) { if (strategy.scaleMode != 0 || strategy.canvasResolutionScaleMode != 0) { JSEvents.resizeCanvasForFullscreen(target, strategy) } if (target.requestFullscreen) { target.requestFullscreen() } else if (target.msRequestFullscreen) { target.msRequestFullscreen() } else if (target.mozRequestFullScreen) { target.mozRequestFullScreen() } else if (target.mozRequestFullscreen) { target.mozRequestFullscreen() } else if (target.webkitRequestFullscreen) { target.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT) } else { if (typeof JSEvents.fullscreenEnabled() === "undefined") { return -1 } else { return -3 } } if (strategy.canvasResizedCallback) { Module["dynCall_iiii"](strategy.canvasResizedCallback, 37, 0, strategy.canvasResizedCallbackUserData) } return 0 }), fillPointerlockChangeEventData: (function (eventStruct, e) { var pointerLockElement = document.pointerLockElement || document.mozPointerLockElement || document.webkitPointerLockElement || document.msPointerLockElement; var isPointerlocked = !!pointerLockElement; HEAP32[eventStruct >> 2] = isPointerlocked; var nodeName = JSEvents.getNodeNameForTarget(pointerLockElement); var id = pointerLockElement && pointerLockElement.id ? pointerLockElement.id : ""; stringToUTF8(nodeName, eventStruct + 4, 128); stringToUTF8(id, eventStruct + 132, 128) }), registerPointerlockChangeEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.pointerlockChangeEvent) { JSEvents.pointerlockChangeEvent = _malloc(260) } if (!target) { target = document } else { target = JSEvents.findEventTarget(target) } var handlerFunc = (function (event) { var e = event || window.event; JSEvents.fillPointerlockChangeEventData(JSEvents.pointerlockChangeEvent, e); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.pointerlockChangeEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), registerPointerlockErrorEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!target) { target = document } else { target = JSEvents.findEventTarget(target) } var handlerFunc = (function (event) { var e = event || window.event; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), requestPointerLock: (function (target) { if (target.requestPointerLock) { target.requestPointerLock() } else if (target.mozRequestPointerLock) { target.mozRequestPointerLock() } else if (target.webkitRequestPointerLock) { target.webkitRequestPointerLock() } else if (target.msRequestPointerLock) { target.msRequestPointerLock() } else { if (document.body.requestPointerLock || document.body.mozRequestPointerLock || document.body.webkitRequestPointerLock || document.body.msRequestPointerLock) { return -3 } else { return -1 } } return 0 }), fillVisibilityChangeEventData: (function (eventStruct, e) { var visibilityStates = ["hidden", "visible", "prerender", "unloaded"]; var visibilityState = visibilityStates.indexOf(document.visibilityState); HEAP32[eventStruct >> 2] = document.hidden; HEAP32[eventStruct + 4 >> 2] = visibilityState }), registerVisibilityChangeEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.visibilityChangeEvent) { JSEvents.visibilityChangeEvent = _malloc(8) } if (!target) { target = document } else { target = JSEvents.findEventTarget(target) } var handlerFunc = (function (event) { var e = event || window.event; JSEvents.fillVisibilityChangeEventData(JSEvents.visibilityChangeEvent, e); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.visibilityChangeEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), registerTouchEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.touchEvent) { JSEvents.touchEvent = _malloc(1684) } target = JSEvents.findEventTarget(target); var handlerFunc = (function (event) { var e = event || window.event; var touches = {}; for (var i = 0; i < e.touches.length; ++i) { var touch = e.touches[i]; touches[touch.identifier] = touch } for (var i = 0; i < e.changedTouches.length; ++i) { var touch = e.changedTouches[i]; touches[touch.identifier] = touch; touch.changed = true } for (var i = 0; i < e.targetTouches.length; ++i) { var touch = e.targetTouches[i]; touches[touch.identifier].onTarget = true } var ptr = JSEvents.touchEvent; HEAP32[ptr + 4 >> 2] = e.ctrlKey; HEAP32[ptr + 8 >> 2] = e.shiftKey; HEAP32[ptr + 12 >> 2] = e.altKey; HEAP32[ptr + 16 >> 2] = e.metaKey; ptr += 20; var canvasRect = Module["canvas"] ? Module["canvas"].getBoundingClientRect() : undefined; var targetRect = JSEvents.getBoundingClientRectOrZeros(target); var numTouches = 0; for (var i in touches) { var t = touches[i]; HEAP32[ptr >> 2] = t.identifier; HEAP32[ptr + 4 >> 2] = t.screenX; HEAP32[ptr + 8 >> 2] = t.screenY; HEAP32[ptr + 12 >> 2] = t.clientX; HEAP32[ptr + 16 >> 2] = t.clientY; HEAP32[ptr + 20 >> 2] = t.pageX; HEAP32[ptr + 24 >> 2] = t.pageY; HEAP32[ptr + 28 >> 2] = t.changed; HEAP32[ptr + 32 >> 2] = t.onTarget; if (canvasRect) { HEAP32[ptr + 44 >> 2] = t.clientX - canvasRect.left; HEAP32[ptr + 48 >> 2] = t.clientY - canvasRect.top } else { HEAP32[ptr + 44 >> 2] = 0; HEAP32[ptr + 48 >> 2] = 0 } HEAP32[ptr + 36 >> 2] = t.clientX - targetRect.left; HEAP32[ptr + 40 >> 2] = t.clientY - targetRect.top; ptr += 52; if (++numTouches >= 32) { break } } HEAP32[JSEvents.touchEvent >> 2] = numTouches; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.touchEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: target, allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), fillGamepadEventData: (function (eventStruct, e) { HEAPF64[eventStruct >> 3] = e.timestamp; for (var i = 0; i < e.axes.length; ++i) { HEAPF64[eventStruct + i * 8 + 16 >> 3] = e.axes[i] } for (var i = 0; i < e.buttons.length; ++i) { if (typeof e.buttons[i] === "object") { HEAPF64[eventStruct + i * 8 + 528 >> 3] = e.buttons[i].value } else { HEAPF64[eventStruct + i * 8 + 528 >> 3] = e.buttons[i] } } for (var i = 0; i < e.buttons.length; ++i) { if (typeof e.buttons[i] === "object") { HEAP32[eventStruct + i * 4 + 1040 >> 2] = e.buttons[i].pressed } else { HEAP32[eventStruct + i * 4 + 1040 >> 2] = e.buttons[i] == 1 } } HEAP32[eventStruct + 1296 >> 2] = e.connected; HEAP32[eventStruct + 1300 >> 2] = e.index; HEAP32[eventStruct + 8 >> 2] = e.axes.length; HEAP32[eventStruct + 12 >> 2] = e.buttons.length; stringToUTF8(e.id, eventStruct + 1304, 64); stringToUTF8(e.mapping, eventStruct + 1368, 64) }), registerGamepadEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.gamepadEvent) { JSEvents.gamepadEvent = _malloc(1432) } var handlerFunc = (function (event) { var e = event || window.event; JSEvents.fillGamepadEventData(JSEvents.gamepadEvent, e.gamepad); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.gamepadEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: true, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), registerBeforeUnloadEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { var handlerFunc = (function (event) { var e = event || window.event; var confirmationMessage = Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData); if (confirmationMessage) { confirmationMessage = Pointer_stringify(confirmationMessage) } if (confirmationMessage) { e.preventDefault(); e.returnValue = confirmationMessage; return confirmationMessage } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), battery: (function () { return navigator.battery || navigator.mozBattery || navigator.webkitBattery }), fillBatteryEventData: (function (eventStruct, e) { HEAPF64[eventStruct >> 3] = e.chargingTime; HEAPF64[eventStruct + 8 >> 3] = e.dischargingTime; HEAPF64[eventStruct + 16 >> 3] = e.level; HEAP32[eventStruct + 24 >> 2] = e.charging }), registerBatteryEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!JSEvents.batteryEvent) { JSEvents.batteryEvent = _malloc(32) } var handlerFunc = (function (event) { var e = event || window.event; JSEvents.fillBatteryEventData(JSEvents.batteryEvent, JSEvents.battery()); var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.batteryEvent, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }), registerWebGlEventCallback: (function (target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { if (!target) { target = Module["canvas"] } var handlerFunc = (function (event) { var e = event || window.event; var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData); if (shouldCancel) { e.preventDefault() } }); var eventHandler = { target: JSEvents.findEventTarget(target), allowsDeferredCalls: false, eventTypeString: eventTypeString, callbackfunc: callbackfunc, handlerFunc: handlerFunc, useCapture: useCapture }; JSEvents.registerOrRemoveHandler(eventHandler) }) }; function _emscripten_get_pointerlock_status(pointerlockStatus) { if (pointerlockStatus) JSEvents.fillPointerlockChangeEventData(pointerlockStatus); if (!document.body || !document.body.requestPointerLock && !document.body.mozRequestPointerLock && !document.body.webkitRequestPointerLock && !document.body.msRequestPointerLock) { return -1 } return 0 } Module["_llvm_bswap_i32"] = _llvm_bswap_i32; 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) } function _SDL_WM_GrabInput() {} function ___syscall3(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); return FS.read(stream, HEAP8, buf, count) } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall5(which, varargs) { SYSCALLS.varargs = varargs; try { var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = SYSCALLS.get(); var stream = FS.open(pathname, flags, mode); return stream.fd } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall4(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); return FS.write(stream, HEAP8, buf, count) } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } function ___syscall6(which, varargs) { SYSCALLS.varargs = varargs; try { var stream = SYSCALLS.getStreamFromFD(); FS.close(stream); return 0 } catch (e) { if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno } } Module["___udivdi3"] = ___udivdi3; Module["___muldsi3"] = ___muldsi3; Module["___muldi3"] = ___muldi3; var _strlen = undefined; Module["_strlen"] = _strlen; function __reallyNegative(x) { return x < 0 || x === 0 && 1 / x === -Infinity } function __formatString(format, varargs) { assert((varargs & 3) === 0); var textIndex = format; var argIndex = varargs; function getNextArg(type) { var ret; argIndex = Runtime.prepVararg(argIndex, type); if (type === "double") { ret = HEAPF64[argIndex >> 3]; argIndex += 8 } else if (type == "i64") { ret = [HEAP32[argIndex >> 2], HEAP32[argIndex + 4 >> 2]]; argIndex += 8 } else { assert((argIndex & 3) === 0); type = "i32"; ret = HEAP32[argIndex >> 2]; argIndex += 4 } return ret } var ret = []; var curr, next, currArg; while (1) { var startTextIndex = textIndex; curr = HEAP8[textIndex >> 0]; if (curr === 0) break; next = HEAP8[textIndex + 1 >> 0]; if (curr == 37) { var flagAlwaysSigned = false; var flagLeftAlign = false; var flagAlternative = false; var flagZeroPad = false; var flagPadSign = false; flagsLoop: while (1) { switch (next) { case 43: flagAlwaysSigned = true; break; case 45: flagLeftAlign = true; break; case 35: flagAlternative = true; break; case 48: if (flagZeroPad) { break flagsLoop } else { flagZeroPad = true; break }; case 32: flagPadSign = true; break; default: break flagsLoop } textIndex++; next = HEAP8[textIndex + 1 >> 0] } var width = 0; if (next == 42) { width = getNextArg("i32"); textIndex++; next = HEAP8[textIndex + 1 >> 0] } else { while (next >= 48 && next <= 57) { width = width * 10 + (next - 48); textIndex++; next = HEAP8[textIndex + 1 >> 0] } } var precisionSet = false, precision = -1; if (next == 46) { precision = 0; precisionSet = true; textIndex++; next = HEAP8[textIndex + 1 >> 0]; if (next == 42) { precision = getNextArg("i32"); textIndex++ } else { while (1) { var precisionChr = HEAP8[textIndex + 1 >> 0]; if (precisionChr < 48 || precisionChr > 57) break; precision = precision * 10 + (precisionChr - 48); textIndex++ } } next = HEAP8[textIndex + 1 >> 0] } if (precision < 0) { precision = 6; precisionSet = false } var argSize; switch (String.fromCharCode(next)) { case "h": var nextNext = HEAP8[textIndex + 2 >> 0]; if (nextNext == 104) { textIndex++; argSize = 1 } else { argSize = 2 } break; case "l": var nextNext = HEAP8[textIndex + 2 >> 0]; if (nextNext == 108) { textIndex++; argSize = 8 } else { argSize = 4 } break; case "L": case "q": case "j": argSize = 8; break; case "z": case "t": case "I": argSize = 4; break; default: argSize = null } if (argSize) textIndex++; next = HEAP8[textIndex + 1 >> 0]; switch (String.fromCharCode(next)) { case "d": case "i": case "u": case "o": case "x": case "X": case "p": { var signed = next == 100 || next == 105;argSize = argSize || 4; var currArg = getNextArg("i" + argSize * 8); var origArg = currArg; var argText; if (argSize == 8) { currArg = Runtime.makeBigInt(currArg[0], currArg[1], next == 117) } if (argSize <= 4) { var limit = Math.pow(256, argSize) - 1; currArg = (signed ? reSign : unSign)(currArg & limit, argSize * 8) } var currAbsArg = Math.abs(currArg); var prefix = ""; if (next == 100 || next == 105) { if (argSize == 8 && i64Math) argText = i64Math.stringify(origArg[0], origArg[1], null); else argText = reSign(currArg, 8 * argSize, 1).toString(10) } else if (next == 117) { if (argSize == 8 && i64Math) argText = i64Math.stringify(origArg[0], origArg[1], true); else argText = unSign(currArg, 8 * argSize, 1).toString(10); currArg = Math.abs(currArg) } else if (next == 111) { argText = (flagAlternative ? "0" : "") + currAbsArg.toString(8) } else if (next == 120 || next == 88) { prefix = flagAlternative && currArg != 0 ? "0x" : ""; if (argSize == 8 && i64Math) { if (origArg[1]) { argText = (origArg[1] >>> 0).toString(16); var lower = (origArg[0] >>> 0).toString(16); while (lower.length < 8) lower = "0" + lower; argText += lower } else { argText = (origArg[0] >>> 0).toString(16) } } else if (currArg < 0) { currArg = -currArg; argText = (currAbsArg - 1).toString(16); var buffer = []; for (var i = 0; i < argText.length; i++) { buffer.push((15 - parseInt(argText[i], 16)).toString(16)) } argText = buffer.join(""); while (argText.length < argSize * 2) argText = "f" + argText } else { argText = currAbsArg.toString(16) } if (next == 88) { prefix = prefix.toUpperCase(); argText = argText.toUpperCase() } } else if (next == 112) { if (currAbsArg === 0) { argText = "(nil)" } else { prefix = "0x"; argText = currAbsArg.toString(16) } } if (precisionSet) { while (argText.length < precision) { argText = "0" + argText } } if (currArg >= 0) { if (flagAlwaysSigned) { prefix = "+" + prefix } else if (flagPadSign) { prefix = " " + prefix } } if (argText.charAt(0) == "-") { prefix = "-" + prefix; argText = argText.substr(1) } while (prefix.length + argText.length < width) { if (flagLeftAlign) { argText += " " } else { if (flagZeroPad) { argText = "0" + argText } else { prefix = " " + prefix } } } argText = prefix + argText;argText.split("").forEach((function (chr) { ret.push(chr.charCodeAt(0)) })); break }; case "f": case "F": case "e": case "E": case "g": case "G": { var currArg = getNextArg("double"); var argText; if (isNaN(currArg)) { argText = "nan"; flagZeroPad = false } else if (!isFinite(currArg)) { argText = (currArg < 0 ? "-" : "") + "inf"; flagZeroPad = false } else { var isGeneral = false; var effectivePrecision = Math.min(precision, 20); if (next == 103 || next == 71) { isGeneral = true; precision = precision || 1; var exponent = parseInt(currArg.toExponential(effectivePrecision).split("e")[1], 10); if (precision > exponent && exponent >= -4) { next = (next == 103 ? "f" : "F").charCodeAt(0); precision -= exponent + 1 } else { next = (next == 103 ? "e" : "E").charCodeAt(0); precision-- } effectivePrecision = Math.min(precision, 20) } if (next == 101 || next == 69) { argText = currArg.toExponential(effectivePrecision); if (/[eE][-+]\d$/.test(argText)) { argText = argText.slice(0, -1) + "0" + argText.slice(-1) } } else if (next == 102 || next == 70) { argText = currArg.toFixed(effectivePrecision); if (currArg === 0 && __reallyNegative(currArg)) { argText = "-" + argText } } var parts = argText.split("e"); if (isGeneral && !flagAlternative) { while (parts[0].length > 1 && parts[0].indexOf(".") != -1 && (parts[0].slice(-1) == "0" || parts[0].slice(-1) == ".")) { parts[0] = parts[0].slice(0, -1) } } else { if (flagAlternative && argText.indexOf(".") == -1) parts[0] += "."; while (precision > effectivePrecision++) parts[0] += "0" } argText = parts[0] + (parts.length > 1 ? "e" + parts[1] : ""); if (next == 69) argText = argText.toUpperCase(); if (currArg >= 0) { if (flagAlwaysSigned) { argText = "+" + argText } else if (flagPadSign) { argText = " " + argText } } } while (argText.length < width) { if (flagLeftAlign) { argText += " " } else { if (flagZeroPad && (argText[0] == "-" || argText[0] == "+")) { argText = argText[0] + "0" + argText.slice(1) } else { argText = (flagZeroPad ? "0" : " ") + argText } } } if (next < 97) argText = argText.toUpperCase();argText.split("").forEach((function (chr) { ret.push(chr.charCodeAt(0)) })); break }; case "s": { var arg = getNextArg("i8*"); var argLength = arg ? _strlen(arg) : "(null)".length; if (precisionSet) argLength = Math.min(argLength, precision); if (!flagLeftAlign) { while (argLength < width--) { ret.push(32) } } if (arg) { for (var i = 0; i < argLength; i++) { ret.push(HEAPU8[arg++ >> 0]) } } else { ret = ret.concat(intArrayFromString("(null)".substr(0, argLength), true)) } if (flagLeftAlign) { while (argLength < width--) { ret.push(32) } } break }; case "c": { if (flagLeftAlign) ret.push(getNextArg("i8")); while (--width > 0) { ret.push(32) } if (!flagLeftAlign) ret.push(getNextArg("i8")); break }; case "n": { var ptr = getNextArg("i32*");HEAP32[ptr >> 2] = ret.length; break }; case "%": { ret.push(curr); break }; default: { for (var i = startTextIndex; i < textIndex + 2; i++) { ret.push(HEAP8[i >> 0]) } } } textIndex += 2 } else { ret.push(curr); textIndex += 1 } } return ret } function __emscripten_traverse_stack(args) { if (!args || !args.callee || !args.callee.name) { return [null, "", ""] } var funstr = args.callee.toString(); var funcname = args.callee.name; var str = "("; var first = true; for (i in args) { var a = args[i]; if (!first) { str += ", " } first = false; if (typeof a === "number" || typeof a === "string") { str += a } else { str += "(" + typeof a + ")" } } str += ")"; var caller = args.callee.caller; args = caller ? caller.arguments : []; if (first) str = ""; return [args, funcname, str] } function _emscripten_get_callstack_js(flags) { var callstack = jsStackTrace(); var iThisFunc = callstack.lastIndexOf("_emscripten_log"); var iThisFunc2 = callstack.lastIndexOf("_emscripten_get_callstack"); var iNextLine = callstack.indexOf("\n", Math.max(iThisFunc, iThisFunc2)) + 1; callstack = callstack.slice(iNextLine); if (flags & 8 && typeof emscripten_source_map === "undefined") { Runtime.warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.'); flags ^= 8; flags |= 16 } var stack_args = null; if (flags & 128) { var stack_args = __emscripten_traverse_stack(arguments); while (stack_args[1].indexOf("_emscripten_") >= 0) stack_args = __emscripten_traverse_stack(stack_args[0]) } lines = callstack.split("\n"); callstack = ""; var newFirefoxRe = new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)"); var firefoxRe = new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?"); var chromeRe = new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)"); for (l in lines) { var line = lines[l]; var jsSymbolName = ""; var file = ""; var lineno = 0; var column = 0; var parts = chromeRe.exec(line); if (parts && parts.length == 5) { jsSymbolName = parts[1]; file = parts[2]; lineno = parts[3]; column = parts[4] } else { parts = newFirefoxRe.exec(line); if (!parts) parts = firefoxRe.exec(line); if (parts && parts.length >= 4) { jsSymbolName = parts[1]; file = parts[2]; lineno = parts[3]; column = parts[4] | 0 } else { callstack += line + "\n"; continue } } var cSymbolName = flags & 32 ? demangle(jsSymbolName) : jsSymbolName; if (!cSymbolName) { cSymbolName = jsSymbolName } var haveSourceMap = false; if (flags & 8) { var orig = emscripten_source_map.originalPositionFor({ line: lineno, column: column }); haveSourceMap = orig && orig.source; if (haveSourceMap) { if (flags & 64) { orig.source = orig.source.substring(orig.source.replace(/\\/g, "/").lastIndexOf("/") + 1) } callstack += " at " + cSymbolName + " (" + orig.source + ":" + orig.line + ":" + orig.column + ")\n" } } if (flags & 16 || !haveSourceMap) { if (flags & 64) { file = file.substring(file.replace(/\\/g, "/").lastIndexOf("/") + 1) } callstack += (haveSourceMap ? " = " + jsSymbolName : " at " + cSymbolName) + " (" + file + ":" + lineno + ":" + column + ")\n" } if (flags & 128 && stack_args[0]) { if (stack_args[1] == jsSymbolName && stack_args[2].length > 0) { callstack = callstack.replace(/\s+$/, ""); callstack += " with values: " + stack_args[1] + stack_args[2] + "\n" } stack_args = __emscripten_traverse_stack(stack_args[0]) } } callstack = callstack.replace(/\s+$/, ""); return callstack } function _emscripten_log_js(flags, str) { if (flags & 24) { str = str.replace(/\s+$/, ""); str += (str.length > 0 ? "\n" : "") + _emscripten_get_callstack_js(flags) } if (flags & 1) { if (flags & 4) { console.error(str) } else if (flags & 2) { console.warn(str) } else { console.log(str) } } else if (flags & 6) { Module.printErr(str) } else { Module.print(str) } } function _emscripten_log(flags, varargs) { var format = HEAP32[varargs >> 2]; varargs += Math.max(Runtime.getNativeFieldSize("i32"), Runtime.getAlignSize("i32", null, true)); var str = ""; if (format) { var result = __formatString(format, varargs); for (var i = 0; i < result.length; ++i) { str += String.fromCharCode(result[i]) } } _emscripten_log_js(flags, str) } function _SDL_FreeSurface(surf) { if (surf) SDL.freeSurface(surf) } function _time(ptr) { var ret = Date.now() / 1e3 | 0; if (ptr) { HEAP32[ptr >> 2] = ret } return ret } 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() } Module["requestFullScreen"] = function Module_requestFullScreen(lockPointer, resizeCanvas, vrDevice) { Module.printErr("Module.requestFullScreen is deprecated. Please call Module.requestFullscreen instead."); Module["requestFullScreen"] = Module["requestFullscreen"]; Browser.requestFullScreen(lockPointer, resizeCanvas, vrDevice) }; Module["requestFullscreen"] = function Module_requestFullscreen(lockPointer, resizeCanvas, vrDevice) { Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice) }; Module["requestAnimationFrame"] = function Module_requestAnimationFrame(func) { Browser.requestAnimationFrame(func) }; Module["setCanvasSize"] = function Module_setCanvasSize(width, height, noUpdates) { Browser.setCanvasSize(width, height, noUpdates) }; Module["pauseMainLoop"] = function Module_pauseMainLoop() { Browser.mainLoop.pause() }; Module["resumeMainLoop"] = function Module_resumeMainLoop() { Browser.mainLoop.resume() }; Module["getUserMedia"] = function Module_getUserMedia() { Browser.getUserMedia() }; Module["createContext"] = function Module_createContext(canvas, useWebGL, setInModule, webGLContextAttributes) { return Browser.createContext(canvas, useWebGL, setInModule, webGLContextAttributes) }; if (ENVIRONMENT_IS_NODE) { _emscripten_get_now = function _emscripten_get_now_actual() { var t = process["hrtime"](); return t[0] * 1e3 + t[1] / 1e6 } } else if (typeof dateNow !== "undefined") { _emscripten_get_now = dateNow } else if (typeof self === "object" && self["performance"] && typeof self["performance"]["now"] === "function") { _emscripten_get_now = (function () { return self["performance"]["now"]() }) } else if (typeof performance === "object" && typeof performance["now"] === "function") { _emscripten_get_now = (function () { return performance["now"]() }) } else { _emscripten_get_now = Date.now } ___buildEnvironment(ENV); var GLctx; GL.init(); JSEvents.staticInit(); DYNAMICTOP_PTR = allocate(1, "i32", ALLOC_STATIC); STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP); STACK_MAX = STACK_BASE + TOTAL_STACK; DYNAMIC_BASE = Runtime.alignMemory(STACK_MAX); HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; staticSealed = true; 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; Module["setThrew"](1, 0) } } function invoke_viiiii(index, a1, a2, a3, a4, a5) { try { Module["dynCall_viiiii"](index, a1, a2, a3, a4, a5) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } function invoke_vi(index, a1) { try { Module["dynCall_vi"](index, a1) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } function invoke_vii(index, a1, a2) { try { Module["dynCall_vii"](index, a1, a2) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } function invoke_ii(index, a1) { try { return Module["dynCall_ii"](index, a1) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } function invoke_viii(index, a1, a2, a3) { try { Module["dynCall_viii"](index, a1, a2, a3) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } function invoke_v(index) { try { Module["dynCall_v"](index) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } 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; Module["setThrew"](1, 0) } } function invoke_iii(index, a1, a2) { try { return Module["dynCall_iii"](index, a1, a2) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } function invoke_iiiiii(index, a1, a2, a3, a4, a5) { try { return Module["dynCall_iiiiii"](index, a1, a2, a3, a4, a5) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } function invoke_viiii(index, a1, a2, a3, a4) { try { Module["dynCall_viiii"](index, a1, a2, a3, a4) } catch (e) { if (typeof e !== "number" && e !== "longjmp") throw e; Module["setThrew"](1, 0) } } 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, "enlargeMemory": enlargeMemory, "getTotalMemory": getTotalMemory, "abortOnCannotGrowMemory": abortOnCannotGrowMemory, "invoke_iiii": invoke_iiii, "invoke_viiiii": invoke_viiiii, "invoke_vi": invoke_vi, "invoke_vii": invoke_vii, "invoke_ii": invoke_ii, "invoke_viii": invoke_viii, "invoke_v": invoke_v, "invoke_iiiii": invoke_iiiii, "invoke_iii": invoke_iii, "invoke_iiiiii": invoke_iiiiii, "invoke_viiii": invoke_viiii, "___syscall221": ___syscall221, "_putenv": _putenv, "_SDL_SetVideoMode": _SDL_SetVideoMode, "_SDL_ShowCursor": _SDL_ShowCursor, "_SDL_UnlockAudio": _SDL_UnlockAudio, "___syscall168": ___syscall168, "___syscall54": ___syscall54, "_SDL_CreateRGBSurfaceFrom": _SDL_CreateRGBSurfaceFrom, "_abort": _abort, "_Mix_FreeChunk": _Mix_FreeChunk, "_TTF_FontHeight": _TTF_FontHeight, "_SDL_CloseAudio": _SDL_CloseAudio, "_emscripten_get_callstack_js": _emscripten_get_callstack_js, "_SDL_GetTicks": _SDL_GetTicks, "_usleep": _usleep, "_SDL_RWFromConstMem": _SDL_RWFromConstMem, "_SDL_LockAudio": _SDL_LockAudio, "___buildEnvironment": ___buildEnvironment, "_SDL_GetVideoInfo": _SDL_GetVideoInfo, "_SDL_LockSurface": _SDL_LockSurface, "_SDL_GetError": _SDL_GetError, "__reallyNegative": __reallyNegative, "_signal": _signal, "_tzset": _tzset, "_emscripten_set_main_loop_timing": _emscripten_set_main_loop_timing, "_SDL_PollEvent": _SDL_PollEvent, "_SDL_Init": _SDL_Init, "_SDL_OpenAudio": _SDL_OpenAudio, "_SDL_FreeSurface": _SDL_FreeSurface, "_Mix_PlayChannel": _Mix_PlayChannel, "_TTF_RenderText_Solid": _TTF_RenderText_Solid, "___syscall194": ___syscall194, "_Mix_LoadWAV_RW": _Mix_LoadWAV_RW, "_SDL_WM_SetCaption": _SDL_WM_SetCaption, "_gmtime": _gmtime, "_emscripten_log": _emscripten_log, "_SDL_InitSubSystem": _SDL_InitSubSystem, "_Mix_PlayMusic": _Mix_PlayMusic, "_nanosleep": _nanosleep, "_emscripten_memcpy_big": _emscripten_memcpy_big, "__emscripten_traverse_stack": __emscripten_traverse_stack, "_emscripten_log_js": _emscripten_log_js, "_atexit": _atexit, "___setErrNo": ___setErrNo, "_SDL_GetMouseState": _SDL_GetMouseState, "_TTF_SizeText": _TTF_SizeText, "_emscripten_get_pointerlock_status": _emscripten_get_pointerlock_status, "_SDL_FreeRW": _SDL_FreeRW, "_IMG_Load": _IMG_Load, "_SDL_WM_GrabInput": _SDL_WM_GrabInput, "_SDL_PauseAudio": _SDL_PauseAudio, "___unlock": ___unlock, "_emscripten_set_main_loop": _emscripten_set_main_loop, "_exit": _exit, "_emscripten_get_now": _emscripten_get_now, "_SDL_UpperBlit": _SDL_UpperBlit, "_SDL_UpperBlitScaled": _SDL_UpperBlitScaled, "_gmtime_r": _gmtime_r, "_getenv": _getenv, "___syscall3": ___syscall3, "__exit": __exit, "_emscripten_asm_const_iii": _emscripten_asm_const_iii, "___lock": ___lock, "_localtime_r": _localtime_r, "___syscall6": ___syscall6, "___syscall5": ___syscall5, "___syscall4": ___syscall4, "_time": _time, "_Mix_HaltMusic": _Mix_HaltMusic, "_emscripten_cancel_main_loop": _emscripten_cancel_main_loop, "_gettimeofday": _gettimeofday, "_SDL_Flip": _SDL_Flip, "__formatString": __formatString, "_SDL_WM_ToggleFullScreen": _SDL_WM_ToggleFullScreen, "___syscall140": ___syscall140, "_localtime": _localtime, "_SDL_WasInit": _SDL_WasInit, "_IMG_Load_RW": _IMG_Load_RW, "_SDL_EnableKeyRepeat": _SDL_EnableKeyRepeat, "___syscall145": ___syscall145, "___syscall146": ___syscall146, "_SDL_RWFromFile": _SDL_RWFromFile, "DYNAMICTOP_PTR": DYNAMICTOP_PTR, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX, "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.DYNAMICTOP_PTR | 0; var j = env.tempDoublePtr | 0; var k = env.ABORT | 0; var l = env.STACKTOP | 0; var m = env.STACK_MAX | 0; var n = env.cttz_i8 | 0; var o = 0; var p = 0; var q = 0; var r = 0; var s = global.NaN, t = global.Infinity; var u = 0, v = 0, w = 0, x = 0, y = 0.0, z = 0, A = 0, B = 0, C = 0.0; var D = 0; var E = global.Math.floor; var F = global.Math.abs; var G = global.Math.sqrt; var H = global.Math.pow; var I = global.Math.cos; var J = global.Math.sin; var K = global.Math.tan; var L = global.Math.acos; var M = global.Math.asin; var N = global.Math.atan; var O = global.Math.atan2; var P = global.Math.exp; var Q = global.Math.log; var R = global.Math.ceil; var S = global.Math.imul; var T = global.Math.min; var U = global.Math.max; var V = global.Math.clz32; var W = env.abort; var X = env.assert; var Y = env.enlargeMemory; var Z = env.getTotalMemory; var _ = env.abortOnCannotGrowMemory; var $ = env.invoke_iiii; var aa = env.invoke_viiiii; var ba = env.invoke_vi; var ca = env.invoke_vii; var da = env.invoke_ii; var ea = env.invoke_viii; var fa = env.invoke_v; var ga = env.invoke_iiiii; var ha = env.invoke_iii; var ia = env.invoke_iiiiii; var ja = env.invoke_viiii; var ka = env.___syscall221; var la = env._putenv; var ma = env._SDL_SetVideoMode; var na = env._SDL_ShowCursor; var oa = env._SDL_UnlockAudio; var pa = env.___syscall168; var qa = env.___syscall54; var ra = env._SDL_CreateRGBSurfaceFrom; var sa = env._abort; var ta = env._Mix_FreeChunk; var ua = env._TTF_FontHeight; var va = env._SDL_CloseAudio; var wa = env._emscripten_get_callstack_js; var xa = env._SDL_GetTicks; var ya = env._usleep; var za = env._SDL_RWFromConstMem; var Aa = env._SDL_LockAudio; var Ba = env.___buildEnvironment; var Ca = env._SDL_GetVideoInfo; var Da = env._SDL_LockSurface; var Ea = env._SDL_GetError; var Fa = env.__reallyNegative; var Ga = env._signal; var Ha = env._tzset; var Ia = env._emscripten_set_main_loop_timing; var Ja = env._SDL_PollEvent; var Ka = env._SDL_Init; var La = env._SDL_OpenAudio; var Ma = env._SDL_FreeSurface; var Na = env._Mix_PlayChannel; var Oa = env._TTF_RenderText_Solid; var Pa = env.___syscall194; var Qa = env._Mix_LoadWAV_RW; var Ra = env._SDL_WM_SetCaption; var Sa = env._gmtime; var Ta = env._emscripten_log; var Ua = env._SDL_InitSubSystem; var Va = env._Mix_PlayMusic; var Wa = env._nanosleep; var Xa = env._emscripten_memcpy_big; var Ya = env.__emscripten_traverse_stack; var Za = env._emscripten_log_js; var _a = env._atexit; var $a = env.___setErrNo; var ab = env._SDL_GetMouseState; var bb = env._TTF_SizeText; var cb = env._emscripten_get_pointerlock_status; var db = env._SDL_FreeRW; var eb = env._IMG_Load; var fb = env._SDL_WM_GrabInput; var gb = env._SDL_PauseAudio; var hb = env.___unlock; var ib = env._emscripten_set_main_loop; var jb = env._exit; var kb = env._emscripten_get_now; var lb = env._SDL_UpperBlit; var mb = env._SDL_UpperBlitScaled; var nb = env._gmtime_r; var ob = env._getenv; var pb = env.___syscall3; var qb = env.__exit; var rb = env._emscripten_asm_const_iii; var sb = env.___lock; var tb = env._localtime_r; var ub = env.___syscall6; var vb = env.___syscall5; var wb = env.___syscall4; var xb = env._time; var yb = env._Mix_HaltMusic; var zb = env._emscripten_cancel_main_loop; var Ab = env._gettimeofday; var Bb = env._SDL_Flip; var Cb = env.__formatString; var Db = env._SDL_WM_ToggleFullScreen; var Eb = env.___syscall140; var Fb = env._localtime; var Gb = env._SDL_WasInit; var Hb = env._IMG_Load_RW; var Ib = env._SDL_EnableKeyRepeat; var Jb = env.___syscall145; var Kb = env.___syscall146; var Lb = env._SDL_RWFromFile; var Mb = 0.0; // EMSCRIPTEN_START_FUNCS function vG(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[c[g >> 2] >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 2 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 3 >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function wG(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 1 >> 0] = c[h >> 2]; l = f; return } function xG(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[g >> 2] | 0) + 2 >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 3 >> 0] = c[h >> 2]; l = f; return } function yG(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[c[g >> 2] >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function zG(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[(c[g >> 2] | 0) + 3 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 2 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[c[g >> 2] >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function AG(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = c[h >> 2]; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 8; l = f; return } function BG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; i = f + 4 | 0; g = f; c[h >> 2] = a; c[i >> 2] = b; c[g >> 2] = d; a = AQ(c[i >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((a | 0) != (c[g >> 2] | 0)) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function CG(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; h = j + 12 | 0; k = j + 8 | 0; f = j + 4 | 0; g = j; c[h >> 2] = a; c[k >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; if (jQ(c[h >> 2] | 0, c[k >> 2] | 0, 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } k = AQ(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((k | 0) != (c[g >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function DG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; i = f + 4 | 0; g = f; c[h >> 2] = a; c[i >> 2] = b; c[g >> 2] = d; a = QP(c[i >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((a | 0) != (c[g >> 2] | 0)) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function EG(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; h = j + 12 | 0; k = j + 8 | 0; f = j + 4 | 0; g = j; c[h >> 2] = a; c[k >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; if (jQ(c[h >> 2] | 0, c[k >> 2] | 0, 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } k = QP(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((k | 0) != (c[g >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function FG(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 272 | 0; h = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; g = i; d = i + 16 | 0; c[f >> 2] = a; c[e >> 2] = b; while (1) { if ((c[e >> 2] | 0) >>> 0 <= 0) { d = 6; break } c[g >> 2] = (c[e >> 2] | 0) >>> 0 < 256 ? c[e >> 2] | 0 : 256; if (BG(c[f >> 2] | 0, d, c[g >> 2] | 0) | 0) { d = 4; break } c[e >> 2] = (c[e >> 2] | 0) - (c[g >> 2] | 0) } if ((d | 0) == 4) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } else if ((d | 0) == 6) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function GG(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 48 | 0; m = n + 32 | 0; h = n + 28 | 0; j = n + 24 | 0; i = n + 12 | 0; g = n + 8 | 0; k = n + 4 | 0; f = n + 40 | 0; c[h >> 2] = a; c[j >> 2] = b; c[n + 20 >> 2] = d; c[n + 16 >> 2] = e; kQ(c[7422] | 0, 47980, n) | 0; if (BG(c[h >> 2] | 0, f, 8) | 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } c[g >> 2] = vG(f, 0) | 0; c[k >> 2] = vG(f, 4) | 0; if ((c[k >> 2] | 0) >>> 0 < 16) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } if (FG(c[h >> 2] | 0, (c[k >> 2] | 0) - 16 | 0) | 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) { f = 12; break } if (HG(c[h >> 2] | 0, c[j >> 2] | 0) | 0) { f = 10; break } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((f | 0) == 10) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((f | 0) == 12) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } return 0 } function HG(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; m = o + 28 | 0; h = o + 24 | 0; g = o + 20 | 0; e = o + 16 | 0; f = o + 12 | 0; k = o + 8 | 0; j = o + 4 | 0; i = o + 32 | 0; n = o; c[h >> 2] = a; c[g >> 2] = b; if (BG(c[h >> 2] | 0, i, 12) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } c[e >> 2] = d[i >> 0]; c[f >> 2] = d[i + 1 >> 0]; c[j >> 2] = d[i + 5 >> 0]; c[k >> 2] = uG(i, 6) | 0; c[n >> 2] = UC(d[i + 2 >> 0] | 0, d[i + 3 >> 0] | 0, d[i + 4 >> 0] | 0, c[k >> 2] | 0) | 0; if (!(c[n >> 2] | 0)) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } g = (ED(c[g >> 2] | 0, c[n >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0) != 0; e = c[n >> 2] | 0; if (g) { VC(e); c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } g = c[j >> 2] | 0; IG(e, g, vG(i, 8) | 0); e = c[h >> 2] | 0; do if (!(c[j >> 2] & 128 | 0)) { if (BG(e, c[(c[n >> 2] | 0) + 24 >> 2] | 0, c[k >> 2] | 0) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } } else { if (!(BG(e, i + 12 | 0, 1) | 0)) { _C(c[n >> 2] | 0, d[i + 12 >> 0] | 0); break } c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } while (0); c[m >> 2] = 0; n = c[m >> 2] | 0; l = o; return n | 0 } function IG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; g = i + 8 | 0; e = i + 4 | 0; f = i; c[h >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; do if (!(c[g >> 2] & 1 | 0)) if (c[g >> 2] & 2 | 0) { c[f >> 2] = (c[e >> 2] | 0) >>> 0 < 375e3 ? 2 : 2; break } else { c[f >> 2] = 0; break } else c[f >> 2] = (c[e >> 2] | 0) >>> 0 < 375e3 ? 1 : 1; while (0); bD(c[h >> 2] | 0, c[f >> 2] | 0); if (c[g >> 2] & 4 | 0) { a = (c[h >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 1 } if (c[g >> 2] & 8 | 0) { a = (c[h >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 2 } if (!(c[g >> 2] & 16)) { l = i; return } h = (c[h >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 4; l = i; return } function JG(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; o = l; l = l + 64 | 0; n = o + 36 | 0; m = o + 32 | 0; h = o + 28 | 0; d = o + 24 | 0; g = o + 20 | 0; i = o + 16 | 0; q = o + 12 | 0; p = o + 40 | 0; f = o + 8 | 0; k = o + 4 | 0; j = o; c[m >> 2] = a; c[h >> 2] = b; c[q >> 2] = MD(c[h >> 2] | 0) | 0; xG(p, 0, 1346782275); xG(p, 4, 0); xG(p, 8, c[q >> 2] | 0); xG(p, 12, 16); if (DG(c[m >> 2] | 0, p, 16) | 0) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = o; return q | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[h >> 2] >> 1] | 0) >>> 0) { d = 14; break } c[f >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[k >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[j >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; if (KG(c[m >> 2] | 0, c[j >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0) | 0) { d = 10; break a } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((d | 0) == 10) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = o; return q | 0 } else if ((d | 0) == 14) { XP(c[m >> 2] | 0) | 0; c[n >> 2] = 0; q = c[n >> 2] | 0; l = o; return q | 0 } return 0 } function KG(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; p = l; l = l + 48 | 0; n = p + 28 | 0; m = p + 24 | 0; o = p + 20 | 0; t = p + 16 | 0; s = p + 12 | 0; k = p + 8 | 0; r = p + 4 | 0; q = p; j = p + 32 | 0; c[m >> 2] = f; c[o >> 2] = g; c[t >> 2] = h; c[s >> 2] = i; LG(c[o >> 2] | 0, r, q); a[j >> 0] = c[t >> 2]; a[j + 1 >> 0] = c[s >> 2]; a[j + 2 >> 0] = b[(c[o >> 2] | 0) + 4 >> 1]; a[j + 3 >> 0] = b[(c[o >> 2] | 0) + 6 >> 1]; a[j + 4 >> 0] = b[(c[o >> 2] | 0) + 8 >> 1]; a[j + 5 >> 0] = c[r >> 2]; a[j + 6 >> 0] = (e[(c[o >> 2] | 0) + 10 >> 1] | 0) >> 8; a[j + 7 >> 0] = e[(c[o >> 2] | 0) + 10 >> 1] | 0; xG(j, 8, c[q >> 2] | 0); if ($C(c[o >> 2] | 0) | 0) h = (e[(c[o >> 2] | 0) + 10 >> 1] | 0 | 0) > 0; else h = 0; c[k >> 2] = h & 1; if (c[k >> 2] | 0) { t = j + 5 | 0; a[t >> 0] = d[t >> 0] | 0 | 128; a[j + 12 >> 0] = a[c[(c[o >> 2] | 0) + 24 >> 2] >> 0] | 0; if (DG(c[m >> 2] | 0, j, 13) | 0) { c[n >> 2] = 1; t = c[n >> 2] | 0; l = p; return t | 0 } } else { if (DG(c[m >> 2] | 0, j, 12) | 0) { c[n >> 2] = 1; t = c[n >> 2] | 0; l = p; return t | 0 } if (DG(c[m >> 2] | 0, c[(c[o >> 2] | 0) + 24 >> 2] | 0, e[(c[o >> 2] | 0) + 10 >> 1] | 0) | 0) { c[n >> 2] = 1; t = c[n >> 2] | 0; l = p; return t | 0 } } c[n >> 2] = 0; t = c[n >> 2] | 0; l = p; return t | 0 } function LG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 8 | 0; g = j + 4 | 0; f = j; c[h >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; c[c[g >> 2] >> 2] = 0; d = e[(c[h >> 2] | 0) + 16 >> 1] | 0; a: do if ((d | 0) < 16386) switch (d | 0) { case 1: { a = c[g >> 2] | 0;c[a >> 2] = c[a >> 2] | 1;c[c[f >> 2] >> 2] = 125e3; break a } case 2: { a = c[g >> 2] | 0;c[a >> 2] = c[a >> 2] | 2;c[c[f >> 2] >> 2] = 25e4; break a } default: { i = 7; break a } } else { if ((d | 0) < 32769) { switch (d | 0) { case 16386: break; default: { i = 7; break a } } a = c[g >> 2] | 0; c[a >> 2] = c[a >> 2] | 2; c[c[f >> 2] >> 2] = 1e6; break } switch (d | 0) { case 32769: { a = c[g >> 2] | 0;c[a >> 2] = c[a >> 2] | 1;c[c[f >> 2] >> 2] = 25e4; break a } case 32770: { a = c[g >> 2] | 0;c[a >> 2] = c[a >> 2] | 2;c[c[f >> 2] >> 2] = 5e5; break a } default: { i = 7; break a } } } while (0); if ((i | 0) == 7) c[c[f >> 2] >> 2] = 0; if (c[(c[h >> 2] | 0) + 12 >> 2] & 1 | 0) { i = c[g >> 2] | 0; c[i >> 2] = c[i >> 2] | 4 } if (c[(c[h >> 2] | 0) + 12 >> 2] & 2 | 0) { i = c[g >> 2] | 0; c[i >> 2] = c[i >> 2] | 8 } if (!(c[(c[h >> 2] | 0) + 12 >> 2] & 4)) { l = j; return } i = c[g >> 2] | 0; c[i >> 2] = c[i >> 2] | 16; l = j; return } function MG(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; n = o + 36 | 0; h = o + 32 | 0; j = o + 28 | 0; i = o + 16 | 0; g = o + 12 | 0; m = o + 8 | 0; f = o + 40 | 0; k = o + 4 | 0; c[h >> 2] = a; c[j >> 2] = b; c[o + 24 >> 2] = d; c[o + 20 >> 2] = e; kQ(c[7422] | 0, 48030, o) | 0; if (BG(c[h >> 2] | 0, f, 8) | 0) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } c[g >> 2] = vG(f, 0) | 0; c[m >> 2] = vG(f, 4) | 0; if ((c[m >> 2] | 0) >>> 0 < 16) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } if (FG(c[h >> 2] | 0, (c[m >> 2] | 0) - 16 | 0) | 0) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } c[k >> 2] = 0; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) { f = 12; break } if (NG(c[h >> 2] | 0, c[j >> 2] | 0, k) | 0) { f = 10; break } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((f | 0) == 10) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } else if ((f | 0) == 12) { c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } return 0 } function NG(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 80 | 0; p = r + 36 | 0; h = r + 32 | 0; j = r + 28 | 0; n = r + 24 | 0; f = r + 20 | 0; i = r + 16 | 0; o = r + 12 | 0; m = r + 8 | 0; g = r + 4 | 0; k = r + 40 | 0; q = r; c[h >> 2] = a; c[j >> 2] = b; c[n >> 2] = e; if (BG(c[h >> 2] | 0, k, 16) | 0) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } if ((d[k >> 0] | 0 | 0) != 83) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } c[f >> 2] = d[k + 1 >> 0]; c[i >> 2] = d[k + 2 >> 0]; c[o >> 2] = uG(k, 6) | 0; c[q >> 2] = UC(d[k + 3 >> 0] | 0, d[k + 4 >> 0] | 0, d[k + 5 >> 0] | 0, c[o >> 2] | 0) | 0; if (!(c[q >> 2] | 0)) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } c[m >> 2] = vG(k, 12) | 0; c[g >> 2] = (vG(k, 8) | 0) & 16777215; OG(c[q >> 2] | 0, c[m >> 2] | 0); PG(c[q >> 2] | 0, d[k + 8 >> 0] | 0, c[g >> 2] | 0); do if (!(c[m >> 2] & 1 | 0)) { if (ED(c[j >> 2] | 0, c[q >> 2] | 0, c[f >> 2] | 0, c[i >> 2] | 0) | 0) { VC(c[q >> 2] | 0); c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } } else { if (c[c[n >> 2] >> 2] | 0) { XC(c[c[n >> 2] >> 2] | 0, c[q >> 2] | 0); break } VC(c[q >> 2] | 0); c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } while (0); f = c[h >> 2] | 0; do if (!(c[m >> 2] & 128 | 0)) { if (BG(f, c[(c[q >> 2] | 0) + 24 >> 2] | 0, c[o >> 2] | 0) | 0) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } } else { if (!(BG(f, k + 16 | 0, 1) | 0)) { _C(c[q >> 2] | 0, d[k + 16 >> 0] | 0); break } c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } while (0); c[c[n >> 2] >> 2] = c[q >> 2]; c[p >> 2] = 0; q = c[p >> 2] | 0; l = r; return q | 0 } function OG(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = a; c[d >> 2] = b; if (c[d >> 2] & 4 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 1 } if (c[d >> 2] & 8 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 2 } if (!(c[d >> 2] & 16)) { l = f; return } e = (c[e >> 2] | 0) + 12 | 0; c[e >> 2] = c[e >> 2] | 4; l = f; return } function PG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[g >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; switch (c[f >> 2] | 0) { case 1: { c[f >> 2] = (c[e >> 2] | 0) >>> 0 < 375e3 ? 1 : 32769; break } case 2: { c[f >> 2] = (c[e >> 2] | 0) >>> 0 < 375e3 ? 2 : 32770; break } default: c[f >> 2] = 0 } bD(c[g >> 2] | 0, c[f >> 2] | 0); l = h; return } function QG(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; o = l; l = l + 64 | 0; n = o + 36 | 0; m = o + 32 | 0; h = o + 28 | 0; d = o + 24 | 0; g = o + 20 | 0; i = o + 16 | 0; q = o + 12 | 0; p = o + 40 | 0; f = o + 8 | 0; k = o + 4 | 0; j = o; c[m >> 2] = a; c[h >> 2] = b; c[q >> 2] = MD(c[h >> 2] | 0) | 0; xG(p, 0, 1346782275); wG(p, 4, 1); wG(p, 6, 0); xG(p, 8, c[q >> 2] | 0); xG(p, 12, 16); if (DG(c[m >> 2] | 0, p, 16) | 0) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = o; return q | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[h >> 2] >> 1] | 0) >>> 0) { d = 14; break } c[f >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[k >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[j >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; if (RG(c[m >> 2] | 0, c[j >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0) | 0) { d = 10; break a } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((d | 0) == 10) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = o; return q | 0 } else if ((d | 0) == 14) { XP(c[m >> 2] | 0) | 0; c[n >> 2] = 0; q = c[n >> 2] | 0; l = o; return q | 0 } return 0 } function RG(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; g = k + 12 | 0; i = k + 8 | 0; f = k + 4 | 0; h = k; c[g >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; if (SG(c[g >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, 0) | 0) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } c[i >> 2] = c[c[i >> 2] >> 2]; while (1) { if (!(c[i >> 2] | 0)) { d = 8; break } if (SG(c[g >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, 1) | 0) { d = 6; break } c[i >> 2] = c[c[i >> 2] >> 2] } if ((d | 0) == 6) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else if ((d | 0) == 8) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function SG(d, f, g, h, i) { d = d | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 80 | 0; s = u + 32 | 0; q = u + 28 | 0; t = u + 24 | 0; m = u + 20 | 0; r = u + 16 | 0; j = u + 12 | 0; p = u + 8 | 0; o = u + 4 | 0; n = u; k = u + 40 | 0; c[q >> 2] = d; c[t >> 2] = f; c[m >> 2] = g; c[r >> 2] = h; c[j >> 2] = i; c[p >> 2] = TG(c[t >> 2] | 0) | 0; if ($C(c[t >> 2] | 0) | 0 ? (e[(c[t >> 2] | 0) + 10 >> 1] | 0 | 0) > 0 : 0) c[p >> 2] = c[p >> 2] | 128; if (c[j >> 2] | 0) c[p >> 2] = c[p >> 2] | 1; UG(c[t >> 2] | 0, o, n); xG(k, 8, c[n >> 2] | 0); a[k >> 0] = 83; a[k + 1 >> 0] = c[m >> 2]; a[k + 2 >> 0] = c[r >> 2]; a[k + 3 >> 0] = b[(c[t >> 2] | 0) + 4 >> 1]; a[k + 4 >> 0] = b[(c[t >> 2] | 0) + 6 >> 1]; a[k + 5 >> 0] = b[(c[t >> 2] | 0) + 8 >> 1]; a[k + 6 >> 0] = (e[(c[t >> 2] | 0) + 10 >> 1] | 0) >> 8; a[k + 7 >> 0] = e[(c[t >> 2] | 0) + 10 >> 1] | 0; a[k + 8 >> 0] = c[o >> 2]; xG(k, 12, c[p >> 2] | 0); if (c[p >> 2] & 128 | 0) { a[k + 16 >> 0] = a[c[(c[t >> 2] | 0) + 24 >> 2] >> 0] | 0; if (DG(c[q >> 2] | 0, k, 17) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } } else { if (DG(c[q >> 2] | 0, k, 16) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } if (DG(c[q >> 2] | 0, c[(c[t >> 2] | 0) + 24 >> 2] | 0, e[(c[t >> 2] | 0) + 10 >> 1] | 0) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } } c[s >> 2] = 0; t = c[s >> 2] | 0; l = u; return t | 0 } function TG(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; c[b >> 2] = 0; if (c[(c[d >> 2] | 0) + 12 >> 2] & 1 | 0) c[b >> 2] = c[b >> 2] | 4; if (c[(c[d >> 2] | 0) + 12 >> 2] & 2 | 0) c[b >> 2] = c[b >> 2] | 8; if (!(c[(c[d >> 2] | 0) + 12 >> 2] & 4)) { d = c[b >> 2] | 0; l = e; return d | 0 } c[b >> 2] = c[b >> 2] | 16; d = c[b >> 2] | 0; l = e; return d | 0 } function UG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; i = h + 8 | 0; g = h + 4 | 0; f = h; c[i >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; d = e[(c[i >> 2] | 0) + 16 >> 1] | 0; a: do if ((d | 0) < 16386) switch (d | 0) { case 1: { c[c[g >> 2] >> 2] = 1;c[c[f >> 2] >> 2] = 125e3;l = h; return } case 2: { c[c[g >> 2] >> 2] = 2;c[c[f >> 2] >> 2] = 25e4;l = h; return } default: break a } else { if ((d | 0) < 32769) { switch (d | 0) { case 16386: break; default: break a } c[c[g >> 2] >> 2] = 2; c[c[f >> 2] >> 2] = 1e6; l = h; return } switch (d | 0) { case 32769: { c[c[g >> 2] >> 2] = 1;c[c[f >> 2] >> 2] = 25e4;l = h; return } case 32770: { c[c[g >> 2] >> 2] = 2;c[c[f >> 2] >> 2] = 5e5;l = h; return } default: break a } } while (0); c[c[g >> 2] >> 2] = 0; c[c[f >> 2] >> 2] = 0; l = h; return } function VG(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; m = l; l = l + 48 | 0; k = m + 28 | 0; h = m + 24 | 0; i = m + 20 | 0; o = m + 16 | 0; n = m + 12 | 0; g = m + 8 | 0; j = m + 4 | 0; f = m + 32 | 0; c[h >> 2] = a; c[i >> 2] = b; c[o >> 2] = d; c[n >> 2] = e; kQ(c[7422] | 0, 48080, m) | 0; xG(f, 0, c[o >> 2] | 0); xG(f, 4, c[n >> 2] | 0); c[14417] = WG(-1, f, 8) | 0; do if (!(XG(c[h >> 2] | 0, f + 8 | 0, 8) | 0)) { c[j >> 2] = vG(f, 12) | 0; if ((c[j >> 2] | 0) >>> 0 < 16) { c[k >> 2] = 1; break } if (YG(c[h >> 2] | 0, (c[j >> 2] | 0) - 16 | 0) | 0) { c[k >> 2] = 1; break } if (ZG(c[h >> 2] | 0, c[i >> 2] | 0) | 0) { c[k >> 2] = 1; break } c[g >> 2] = c[14417]; if (XG(c[h >> 2] | 0, f, 4) | 0) { c[k >> 2] = 1; break } o = vG(f, 0) | 0; if ((o | 0) != (c[g >> 2] | 0)) { c[k >> 2] = 1; break } else { c[k >> 2] = 0; break } } else c[k >> 2] = 1; while (0); l = m; return c[k >> 2] | 0 } function WG(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; k = j + 12 | 0; f = j + 8 | 0; h = j + 4 | 0; i = j; c[g >> 2] = a; c[k >> 2] = b; c[f >> 2] = e; c[i >> 2] = c[k >> 2]; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; c[g >> 2] = c[g >> 2] ^ ((d[c[i >> 2] >> 0] | 0) & 255) << 24; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 8) break; b = c[g >> 2] << 1; if (c[g >> 2] & -2147483648 | 0) c[g >> 2] = b ^ 79764919; else c[g >> 2] = b; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) - 1 } l = j; return c[g >> 2] | 0 } function XG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; i = h + 8 | 0; e = h + 4 | 0; f = h; c[i >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; if (BG(c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = 1; i = c[g >> 2] | 0; l = h; return i | 0 } else { c[14417] = WG(c[14417] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; c[g >> 2] = 0; i = c[g >> 2] | 0; l = h; return i | 0 } return 0 } function YG(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 272 | 0; h = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; g = i; d = i + 16 | 0; c[f >> 2] = a; c[e >> 2] = b; while (1) { if ((c[e >> 2] | 0) >>> 0 <= 0) { d = 6; break } c[g >> 2] = (c[e >> 2] | 0) >>> 0 < 256 ? c[e >> 2] | 0 : 256; if (XG(c[f >> 2] | 0, d, c[g >> 2] | 0) | 0) { d = 4; break } c[e >> 2] = (c[e >> 2] | 0) - (c[g >> 2] | 0) } if ((d | 0) == 4) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } else if ((d | 0) == 6) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function ZG(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, m = 0; m = l; l = l + 32 | 0; j = m + 24 | 0; h = m + 20 | 0; i = m + 16 | 0; e = m + 12 | 0; k = m + 8 | 0; g = m + 4 | 0; f = m; d = m + 28 | 0; c[h >> 2] = a; c[i >> 2] = b; c[f >> 2] = 0; a: while (1) { if (XG(c[h >> 2] | 0, d, 4) | 0) { a = 3; break } c[e >> 2] = uG(d, 0) | 0; c[k >> 2] = uG(d, 2) | 0; c[g >> 2] = WG(0, d, 4) | 0; a = c[e >> 2] | 0; b: do if ((a | 0) < 21315) { switch (a | 0) { case 17742: { a = 5; break a } case 17229: break; default: break b } if (bH(c[h >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0, c[g >> 2] | 0) | 0) { a = 13; break a } else continue a } else switch (a | 0) { case 21315: if ($G(c[h >> 2] | 0, c[i >> 2] | 0, f, c[k >> 2] | 0, c[g >> 2] | 0) | 0) { a = 9; break a } else continue a; case 21575: if (aH(c[h >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[g >> 2] | 0) | 0) { a = 11; break a } else continue a; default: break b } while (0); if (cH(c[h >> 2] | 0, c[k >> 2] | 0, c[g >> 2] | 0) | 0) { a = 15; break } } do if ((a | 0) == 3) c[j >> 2] = 1; else if ((a | 0) == 5) if (_G(c[h >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0, c[g >> 2] | 0) | 0) { c[j >> 2] = 1; break } else { c[j >> 2] = 0; break } else if ((a | 0) == 9) c[j >> 2] = 1; else if ((a | 0) == 11) c[j >> 2] = 1; else if ((a | 0) == 13) c[j >> 2] = 1; else if ((a | 0) == 15) c[j >> 2] = 1; while (0); l = m; return c[j >> 2] | 0 } function _G(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 32 | 0; g = h + 16 | 0; k = h + 12 | 0; f = h + 8 | 0; j = h + 4 | 0; i = h; c[k >> 2] = a; c[f >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; if (cH(c[k >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { c[g >> 2] = 1; k = c[g >> 2] | 0; l = h; return k | 0 } else { LD(c[f >> 2] | 0); c[g >> 2] = 0; k = c[g >> 2] | 0; l = h; return k | 0 } return 0 } function $G(a, b, f, g, h) { a = a | 0; b = b | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0; w = l; l = l + 80 | 0; t = w + 44 | 0; q = w + 40 | 0; m = w + 36 | 0; r = w + 32 | 0; v = w + 28 | 0; o = w + 24 | 0; i = w + 20 | 0; k = w + 16 | 0; s = w + 12 | 0; p = w + 8 | 0; j = w + 4 | 0; n = w + 48 | 0; u = w; c[q >> 2] = a; c[m >> 2] = b; c[r >> 2] = f; c[v >> 2] = g; c[o >> 2] = h; if ((c[v >> 2] | 0) >>> 0 < 12) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } if (XG(c[q >> 2] | 0, n, 12) | 0) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } c[p >> 2] = d[n >> 0]; c[i >> 2] = d[n + 1 >> 0]; c[k >> 2] = d[n + 2 >> 0]; c[s >> 2] = uG(n, 6) | 0; c[u >> 2] = UC(d[n + 3 >> 0] | 0, d[n + 4 >> 0] | 0, d[n + 5 >> 0] | 0, c[s >> 2] | 0) | 0; if (!(c[u >> 2] | 0)) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } c[j >> 2] = (vG(n, 8) | 0) & 16777215; dH(c[u >> 2] | 0, c[p >> 2] | 0); eH(c[u >> 2] | 0, d[n + 8 >> 0] | 0, c[j >> 2] | 0); do if (!(c[p >> 2] & 64 | 0)) { if (ED(c[m >> 2] | 0, c[u >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0) | 0) { VC(c[u >> 2] | 0); c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } } else { if (c[c[r >> 2] >> 2] | 0) { XC(c[c[r >> 2] >> 2] | 0, c[u >> 2] | 0); break } VC(c[u >> 2] | 0); c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } while (0); c[v >> 2] = (c[v >> 2] | 0) - 12; c[o >> 2] = WG(c[o >> 2] | 0, n, 12) | 0; i = c[v >> 2] | 0; do if (c[p >> 2] & 128 | 0) { if (i >>> 0 < 1) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } if (!(XG(c[q >> 2] | 0, n, 1) | 0)) { c[o >> 2] = WG(c[o >> 2] | 0, n, 1) | 0; _C(c[u >> 2] | 0, d[n >> 0] | 0); c[v >> 2] = (c[v >> 2] | 0) - 1; break } c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } else { if (i >>> 0 < (e[(c[u >> 2] | 0) + 10 >> 1] | 0) >>> 0) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } if (!(XG(c[q >> 2] | 0, c[(c[u >> 2] | 0) + 24 >> 2] | 0, c[s >> 2] | 0) | 0)) { c[o >> 2] = WG(c[o >> 2] | 0, c[(c[u >> 2] | 0) + 24 >> 2] | 0, c[s >> 2] | 0) | 0; c[v >> 2] = (c[v >> 2] | 0) - (e[(c[u >> 2] | 0) + 10 >> 1] | 0); break } c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } while (0); c[c[r >> 2] >> 2] = c[u >> 2]; if (cH(c[q >> 2] | 0, c[v >> 2] | 0, c[o >> 2] | 0) | 0) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = w; return v | 0 } else { c[t >> 2] = 0; v = c[t >> 2] | 0; l = w; return v | 0 } return 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, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 288 | 0; k = n + 20 | 0; i = n + 16 | 0; j = n + 12 | 0; m = n + 8 | 0; h = n + 4 | 0; g = n; f = n + 24 | 0; c[i >> 2] = a; c[j >> 2] = b; c[m >> 2] = d; c[h >> 2] = e; if (!(c[j >> 2] | 0)) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } c[g >> 2] = (c[m >> 2] | 0) >>> 0 < 256 ? c[m >> 2] | 0 : 256; if (XG(c[i >> 2] | 0, f, c[g >> 2] | 0) | 0) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else { c[h >> 2] = WG(c[h >> 2] | 0, f, c[g >> 2] | 0) | 0; kD(c[j >> 2] | 0, f, c[g >> 2] | 0) | 0; c[k >> 2] = cH(c[i >> 2] | 0, (c[m >> 2] | 0) - (c[g >> 2] | 0) | 0, c[h >> 2] | 0) | 0; m = c[k >> 2] | 0; l = n; return m | 0 } return 0 } function bH(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; o = q + 32 | 0; i = q + 28 | 0; k = q + 24 | 0; p = q + 20 | 0; h = q + 16 | 0; n = q + 12 | 0; j = q + 8 | 0; m = q + 4 | 0; g = q; c[i >> 2] = a; c[k >> 2] = b; c[p >> 2] = e; c[h >> 2] = f; if (!(c[p >> 2] | 0)) { c[o >> 2] = cH(c[i >> 2] | 0, c[p >> 2] | 0, c[h >> 2] | 0) | 0; p = c[o >> 2] | 0; l = q; return p | 0 } c[g >> 2] = HQ(c[p >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } if (XG(c[i >> 2] | 0, c[g >> 2] | 0, c[p >> 2] | 0) | 0) { IQ(c[g >> 2] | 0); c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } c[h >> 2] = WG(c[h >> 2] | 0, c[g >> 2] | 0, c[p >> 2] | 0) | 0; c[j >> 2] = 0; c[m >> 2] = c[p >> 2]; if ((d[c[g >> 2] >> 0] | 0 | 0) == 10) { c[j >> 2] = (c[j >> 2] | 0) + 1; c[m >> 2] = (c[m >> 2] | 0) - 1 } if ((c[m >> 2] | 0) >>> 0 > 0 ? (d[(c[g >> 2] | 0) + ((c[m >> 2] | 0) - 1) >> 0] | 0 | 0) == 10 : 0) c[m >> 2] = (c[m >> 2] | 0) - 1; c[n >> 2] = JD(c[k >> 2] | 0, (c[g >> 2] | 0) + (c[j >> 2] | 0) | 0, c[m >> 2] | 0) | 0; IQ(c[g >> 2] | 0); p = cH(c[i >> 2] | 0, 0, c[h >> 2] | 0) | 0; c[n >> 2] = c[n >> 2] | p; c[o >> 2] = c[n >> 2]; p = c[o >> 2] | 0; l = q; return p | 0 } function cH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 288 | 0; j = m + 16 | 0; h = m + 12 | 0; f = m + 8 | 0; g = m + 4 | 0; i = m; e = m + 24 | 0; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; c[i >> 2] = (c[f >> 2] | 0) >>> 0 < 256 ? c[f >> 2] | 0 : 256; if (XG(c[h >> 2] | 0, e, c[i >> 2] | 0) | 0) { k = 4; break } c[g >> 2] = WG(c[g >> 2] | 0, e, c[i >> 2] | 0) | 0; c[f >> 2] = (c[f >> 2] | 0) - (c[i >> 2] | 0) } if ((k | 0) == 4) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } if (XG(c[h >> 2] | 0, e, 4) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } k = vG(e, 0) | 0; if ((k | 0) != (c[g >> 2] | 0)) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function dH(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = a; c[d >> 2] = b; if (c[d >> 2] & 1 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 1 } if (c[d >> 2] & 2 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 2 } if (c[d >> 2] & 4 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 4 } if (!(c[d >> 2] & 8)) { l = f; return } e = (c[e >> 2] | 0) + 12 | 0; c[e >> 2] = c[e >> 2] | 8; l = f; return } function eH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[g >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; switch (c[f >> 2] | 0) { case 1: { c[f >> 2] = (c[e >> 2] | 0) >>> 0 < 375e3 ? 1 : 32769; break } case 2: { c[f >> 2] = (c[e >> 2] | 0) >>> 0 < 375e3 ? 2 : 32770; break } case 3: { c[f >> 2] = 3; break } default: c[f >> 2] = 0 } bD(c[g >> 2] | 0, c[f >> 2] | 0); l = h; return } function fH(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 64 | 0; k = q + 32 | 0; h = q + 28 | 0; j = q + 24 | 0; f = q + 20 | 0; i = q + 16 | 0; m = q + 12 | 0; d = q + 40 | 0; g = q + 8 | 0; o = q + 4 | 0; n = q; c[h >> 2] = a; c[j >> 2] = b; c[14417] = -1; xG(d, 0, 1346782275); wG(d, 4, 2); wG(d, 6, 0); xG(d, 8, 0); xG(d, 12, 16); if (gH(c[h >> 2] | 0, d, 16) | 0) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } if (hH(c[h >> 2] | 0, c[j >> 2] | 0) | 0) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } c[f >> 2] = 0; a: while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[c[j >> 2] >> 1] | 0) >>> 0) break; c[g >> 2] = c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[g >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[o >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; c[m >> 2] = 0; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (e[(c[o >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[o >> 2] | 0) + 4 >> 2] | 0) + (c[m >> 2] << 2) >> 2]; if (iH(c[h >> 2] | 0, c[n >> 2] | 0, c[f >> 2] | 0, c[i >> 2] | 0) | 0) { p = 12; break a } c[m >> 2] = (c[m >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((p | 0) == 12) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } if (jH(c[h >> 2] | 0, 17742, 0, 0) | 0) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } xG(d, 0, c[14417] | 0); if (gH(c[h >> 2] | 0, d, 4) | 0) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } else { XP(c[h >> 2] | 0) | 0; c[k >> 2] = 0; p = c[k >> 2] | 0; l = q; return p | 0 } return 0 } function gH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; i = h + 8 | 0; e = h + 4 | 0; f = h; c[i >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; if (DG(c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = 1; i = c[g >> 2] | 0; l = h; return i | 0 } else { c[14417] = WG(c[14417] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; c[g >> 2] = 0; i = c[g >> 2] | 0; l = h; return i | 0 } return 0 } function hH(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; j = k + 16 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 4 | 0; f = k; e = k + 24 | 0; c[g >> 2] = b; c[h >> 2] = d; if (!(c[(c[h >> 2] | 0) + 8 >> 2] | 0)) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } else { wG(e, 0, 17229); wG(e, 2, (c[(c[h >> 2] | 0) + 8 >> 2] | 0) + 2 | 0); a[e + 4 >> 0] = 10; c[f >> 2] = WG(0, e, 5) | 0; c[f >> 2] = WG(c[f >> 2] | 0, c[(c[h >> 2] | 0) + 12 >> 2] | 0, c[(c[h >> 2] | 0) + 8 >> 2] | 0) | 0; c[f >> 2] = WG(c[f >> 2] | 0, e + 4 | 0, 1) | 0; c[i >> 2] = gH(c[g >> 2] | 0, e, 5) | 0; h = gH(c[g >> 2] | 0, c[(c[h >> 2] | 0) + 12 >> 2] | 0, c[(c[h >> 2] | 0) + 8 >> 2] | 0) | 0; c[i >> 2] = c[i >> 2] | h; h = gH(c[g >> 2] | 0, e + 4 | 0, 1) | 0; c[i >> 2] = c[i >> 2] | h; xG(e, 0, c[f >> 2] | 0); h = gH(c[g >> 2] | 0, e, 4) | 0; c[i >> 2] = c[i >> 2] | h; c[j >> 2] = c[i >> 2]; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function iH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; g = k + 12 | 0; i = k + 8 | 0; f = k + 4 | 0; h = k; c[g >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; if (kH(c[g >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, 0) | 0) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } c[i >> 2] = c[c[i >> 2] >> 2]; while (1) { if (!(c[i >> 2] | 0)) { d = 8; break } if (kH(c[g >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, 1) | 0) { d = 6; break } c[i >> 2] = c[c[i >> 2] >> 2] } if ((d | 0) == 6) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else if ((d | 0) == 8) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function jH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; i = m + 16 | 0; n = m + 12 | 0; k = m + 8 | 0; h = m + 4 | 0; g = m; f = m + 24 | 0; c[i >> 2] = a; c[n >> 2] = b; c[k >> 2] = d; c[h >> 2] = e; wG(f, 0, c[n >> 2] | 0); wG(f, 2, c[k >> 2] | 0); c[g >> 2] = WG(0, f, 4) | 0; if (gH(c[i >> 2] | 0, f, 4) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } if ((c[k >> 2] | 0) >>> 0 > 0 ? (c[g >> 2] = WG(c[g >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0) | 0, gH(c[i >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0) | 0) : 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } xG(f, 0, c[g >> 2] | 0); if (gH(c[i >> 2] | 0, f, 4) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } else { c[j >> 2] = 0; n = c[j >> 2] | 0; l = m; return n | 0 } return 0 } function kH(f, g, h, i, j) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; j = j | 0; var k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0; x = l; l = l + 304 | 0; v = x + 36 | 0; t = x + 32 | 0; w = x + 28 | 0; n = x + 24 | 0; u = x + 20 | 0; k = x + 16 | 0; o = x + 12 | 0; s = x + 296 | 0; r = x + 8 | 0; q = x + 4 | 0; p = x; m = x + 40 | 0; c[t >> 2] = f; c[w >> 2] = g; c[n >> 2] = h; c[u >> 2] = i; c[k >> 2] = j; a[s >> 0] = lH(c[w >> 2] | 0) | 0; c[o >> 2] = 12; if ($C(c[w >> 2] | 0) | 0 ? (e[(c[w >> 2] | 0) + 10 >> 1] | 0 | 0) > 0 : 0) { a[s >> 0] = d[s >> 0] | 0 | 128; c[o >> 2] = (c[o >> 2] | 0) + 1 } else c[o >> 2] = (c[o >> 2] | 0) + (e[(c[w >> 2] | 0) + 10 >> 1] | 0); if (c[k >> 2] | 0) a[s >> 0] = d[s >> 0] | 0 | 64; wG(m, 0, 21315); wG(m, 2, c[o >> 2] | 0); mH(c[w >> 2] | 0, r, q); xG(m, 12, c[q >> 2] | 0); a[m + 4 >> 0] = a[s >> 0] | 0; a[m + 5 >> 0] = c[n >> 2]; a[m + 6 >> 0] = c[u >> 2]; a[m + 7 >> 0] = b[(c[w >> 2] | 0) + 4 >> 1]; a[m + 8 >> 0] = b[(c[w >> 2] | 0) + 6 >> 1]; a[m + 9 >> 0] = b[(c[w >> 2] | 0) + 8 >> 1]; a[m + 10 >> 0] = (e[(c[w >> 2] | 0) + 10 >> 1] | 0) >> 8; a[m + 11 >> 0] = e[(c[w >> 2] | 0) + 10 >> 1] | 0; a[m + 12 >> 0] = c[r >> 2]; c[p >> 2] = WG(0, m, 16) | 0; if (gH(c[t >> 2] | 0, m, 16) | 0) { c[v >> 2] = 1; w = c[v >> 2] | 0; l = x; return w | 0 } if ((d[s >> 0] | 0) & 128 | 0) { a[m >> 0] = a[c[(c[w >> 2] | 0) + 24 >> 2] >> 0] | 0; c[p >> 2] = WG(c[p >> 2] | 0, m, 1) | 0; if (gH(c[t >> 2] | 0, m, 1) | 0) { c[v >> 2] = 1; w = c[v >> 2] | 0; l = x; return w | 0 } } else { c[p >> 2] = WG(c[p >> 2] | 0, c[(c[w >> 2] | 0) + 24 >> 2] | 0, e[(c[w >> 2] | 0) + 10 >> 1] | 0) | 0; if (gH(c[t >> 2] | 0, c[(c[w >> 2] | 0) + 24 >> 2] | 0, e[(c[w >> 2] | 0) + 10 >> 1] | 0) | 0) { c[v >> 2] = 1; w = c[v >> 2] | 0; l = x; return w | 0 } } xG(m, 0, c[p >> 2] | 0); if (gH(c[t >> 2] | 0, m, 4) | 0) { c[v >> 2] = 1; w = c[v >> 2] | 0; l = x; return w | 0 } c[o >> 2] = lD(c[w >> 2] | 0, m, 256) | 0; if ((c[o >> 2] | 0) >>> 0 > 0 ? jH(c[t >> 2] | 0, 21575, c[o >> 2] | 0, m) | 0 : 0) { c[v >> 2] = 1; w = c[v >> 2] | 0; l = x; return w | 0 } c[v >> 2] = 0; w = c[v >> 2] | 0; l = x; return w | 0 } function lH(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; c[b >> 2] = 0; if (c[(c[d >> 2] | 0) + 12 >> 2] & 1 | 0) c[b >> 2] = c[b >> 2] | 1; if (c[(c[d >> 2] | 0) + 12 >> 2] & 2 | 0) c[b >> 2] = c[b >> 2] | 2; if (c[(c[d >> 2] | 0) + 12 >> 2] & 4 | 0) c[b >> 2] = c[b >> 2] | 4; if (!(c[(c[d >> 2] | 0) + 12 >> 2] & 8)) { d = c[b >> 2] | 0; l = e; return d | 0 } c[b >> 2] = c[b >> 2] | 8; d = c[b >> 2] | 0; l = e; return d | 0 } function mH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; i = h + 8 | 0; g = h + 4 | 0; f = h; c[i >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; d = e[(c[i >> 2] | 0) + 16 >> 1] | 0; a: do if ((d | 0) < 16386) switch (d | 0) { case 1: { c[c[g >> 2] >> 2] = 1;c[c[f >> 2] >> 2] = 125e3;l = h; return } case 2: { c[c[g >> 2] >> 2] = 2;c[c[f >> 2] >> 2] = 25e4;l = h; return } case 3: { c[c[g >> 2] >> 2] = 3;c[c[f >> 2] >> 2] = 5e5;l = h; return } default: break a } else { if ((d | 0) < 32769) { switch (d | 0) { case 16386: break; default: break a } c[c[g >> 2] >> 2] = 2; c[c[f >> 2] >> 2] = 1e6; l = h; return } switch (d | 0) { case 32769: { c[c[g >> 2] >> 2] = 1;c[c[f >> 2] >> 2] = 25e4;l = h; return } case 32770: { c[c[g >> 2] >> 2] = 2;c[c[f >> 2] >> 2] = 5e5;l = h; return } default: break a } } while (0); c[c[g >> 2] >> 2] = 0; c[c[f >> 2] >> 2] = 0; l = h; return } function nH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; o = l; l = l + 48 | 0; m = o + 32 | 0; j = o + 28 | 0; k = o + 24 | 0; q = o + 20 | 0; p = o + 16 | 0; g = o + 12 | 0; n = o + 8 | 0; i = o + 4 | 0; h = o; f = o + 40 | 0; c[j >> 2] = a; c[k >> 2] = b; c[q >> 2] = d; c[p >> 2] = e; xG(f, 0, c[q >> 2] | 0); xG(f, 4, c[p >> 2] | 0); c[i >> 2] = oH(0, f, 8) | 0; if (pH(c[j >> 2] | 0, c[p >> 2] | 0, c[i >> 2] | 0) | 0) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } c[h >> 2] = 0; a: while (1) { c[i >> 2] = 0; if (qH(c[j >> 2] | 0, f, 8, i) | 0) { a = 5; break } c[g >> 2] = vG(f, 0) | 0; c[n >> 2] = vG(f, 4) | 0; a = c[g >> 2] | 0; b: do if ((a | 0) < 1397048148) { if ((a | 0) >= 1162757152) switch (a | 0) { case 1162757152: { a = 7; break a } default: break b } switch (a | 0) { case 1145132097: break; default: break b } if (tH(c[j >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0) | 0) { a = 13; break a } else continue a } else { if ((a | 0) < 1413564243) { switch (a | 0) { case 1397048148: break; default: break b } if (sH(c[j >> 2] | 0, c[k >> 2] | 0, h, c[n >> 2] | 0, c[i >> 2] | 0) | 0) { a = 11; break a } else continue a } if ((a | 0) < 1413830740) { switch (a | 0) { case 1413564243: break; default: break b } if (uH(c[j >> 2] | 0, c[h >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0) | 0) { a = 15; break a } else continue a } else { switch (a | 0) { case 1413830740: break; default: break b } if (vH(c[j >> 2] | 0, c[k >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0) | 0) { a = 17; break a } else continue a } } while (0); if (wH(c[j >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0) | 0) { a = 19; break } } if ((a | 0) == 5) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } else if ((a | 0) == 7) if (rH(c[j >> 2] | 0, c[k >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0) | 0) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } else { c[m >> 2] = 0; q = c[m >> 2] | 0; l = o; return q | 0 } else if ((a | 0) == 11) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } else if ((a | 0) == 13) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } else if ((a | 0) == 15) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } else if ((a | 0) == 17) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } else if ((a | 0) == 19) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = o; return q | 0 } return 0 } function oH(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; k = o + 28 | 0; f = o + 24 | 0; j = o + 20 | 0; g = o + 16 | 0; h = o + 12 | 0; n = o + 8 | 0; i = o + 4 | 0; m = o; c[k >> 2] = a; c[f >> 2] = b; c[j >> 2] = e; if (!(c[14418] | 0)) { c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 256) break; c[i >> 2] = c[g >> 2] << 24; c[h >> 2] = 0; while (1) { b = c[i >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 >= 8) break; e = c[i >> 2] << 1; if (b & -2147483648 | 0) c[i >> 2] = e ^ 517762881; else c[i >> 2] = e; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[57676 + (c[g >> 2] << 2) >> 2] = b; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[14418] = 1 } c[m >> 2] = c[f >> 2]; while (1) { b = c[k >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 <= 0) break; i = c[m >> 2] | 0; c[m >> 2] = i + 1; c[n >> 2] = b >>> 24 ^ (d[i >> 0] | 0); c[k >> 2] = c[k >> 2] << 8 ^ c[57676 + ((c[n >> 2] & 255) << 2) >> 2]; c[j >> 2] = (c[j >> 2] | 0) - 1 } l = o; return b | 0 } function pH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m; h = m + 20 | 0; g = m + 16 | 0; i = m + 12 | 0; f = m + 8 | 0; k = m + 4 | 0; e = m + 24 | 0; c[g >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; do if ((c[i >> 2] | 0) >>> 0 >= 4) { if (qH(c[g >> 2] | 0, e, 4, f) | 0) { c[h >> 2] = 1; break } c[k >> 2] = vG(e, 0) | 0; if ((c[k >> 2] | 0) != 262144) { i = c[7422] | 0; c[j >> 2] = c[k >> 2]; kQ(i, 48180, j) | 0; c[h >> 2] = 1; break } if (wH(c[g >> 2] | 0, (c[i >> 2] | 0) - 4 | 0, c[f >> 2] | 0) | 0) { c[h >> 2] = 1; break } else { c[h >> 2] = 0; break } } else c[h >> 2] = 1; while (0); l = m; return c[h >> 2] | 0 } function qH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; k = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[k >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; a = AQ(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[k >> 2] | 0) | 0; if ((a | 0) != (c[g >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } if (c[h >> 2] | 0) { k = oH(c[c[h >> 2] >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[c[h >> 2] >> 2] = k } c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } function rH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 32 | 0; g = h + 16 | 0; k = h + 12 | 0; f = h + 8 | 0; j = h + 4 | 0; i = h; c[k >> 2] = a; c[f >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; if (wH(c[k >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { c[g >> 2] = 1; k = c[g >> 2] | 0; l = h; return k | 0 } else { LD(c[f >> 2] | 0); c[g >> 2] = 0; k = c[g >> 2] | 0; l = h; return k | 0 } return 0 } function sH(a, b, e, f, g) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0; A = l; l = l + 112 | 0; z = A; w = A + 64 | 0; n = A + 60 | 0; o = A + 56 | 0; p = A + 52 | 0; y = A + 48 | 0; i = A + 44 | 0; j = A + 40 | 0; u = A + 36 | 0; v = A + 32 | 0; q = A + 28 | 0; r = A + 24 | 0; s = A + 20 | 0; m = A + 16 | 0; t = A + 12 | 0; k = A + 8 | 0; h = A + 72 | 0; x = A + 4 | 0; c[n >> 2] = a; c[o >> 2] = b; c[p >> 2] = e; c[y >> 2] = f; c[i >> 2] = g; if ((c[y >> 2] | 0) >>> 0 < 18) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = A; return z | 0 } if (qH(c[n >> 2] | 0, h, 18, i) | 0) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = A; return z | 0 } c[u >> 2] = uG(h, 0) | 0; c[v >> 2] = uG(h, 2) | 0; c[q >> 2] = uG(h, 4) | 0; c[r >> 2] = uG(h, 6) | 0; c[s >> 2] = uG(h, 8) | 0; c[t >> 2] = uG(h, 10) | 0; c[k >> 2] = d[h + 12 >> 0]; c[m >> 2] = uG(h, 14) | 0; c[j >> 2] = uG(h, 16) | 0; c[x >> 2] = UC(c[q >> 2] | 0, c[r >> 2] | 0, c[s >> 2] | 0, c[t >> 2] | 0) | 0; if (!(c[x >> 2] | 0)) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = A; return z | 0 } xH(c[x >> 2] | 0, c[m >> 2] | 0); bD(c[x >> 2] | 0, c[j >> 2] | 0); switch (c[j >> 2] & 4095 | 0) { case 2: case 1: { gD(c[x >> 2] | 0, c[k >> 2] & 255); break } case 3: { iD(c[x >> 2] | 0, c[k >> 2] & 255); break } default: {} } do if (!(c[m >> 2] & 16384 | 0)) { if (ED(c[o >> 2] | 0, c[x >> 2] | 0, c[u >> 2] | 0, c[v >> 2] | 0) | 0) { VC(c[x >> 2] | 0); c[w >> 2] = 1; z = c[w >> 2] | 0; l = A; return z | 0 } } else { if (c[c[p >> 2] >> 2] | 0) { XC(c[c[p >> 2] >> 2] | 0, c[x >> 2] | 0); break } kQ(c[7422] | 0, 48147, z) | 0; VC(c[x >> 2] | 0); c[w >> 2] = 1; z = c[w >> 2] | 0; l = A; return z | 0 } while (0); c[y >> 2] = (c[y >> 2] | 0) - 18; if (c[m >> 2] & 32768 | 0) _C(c[x >> 2] | 0, d[h + 13 >> 0] | 0); c[c[p >> 2] >> 2] = c[x >> 2]; if (wH(c[n >> 2] | 0, c[y >> 2] | 0, c[i >> 2] | 0) | 0) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = A; return z | 0 } else { c[w >> 2] = 0; z = c[w >> 2] | 0; l = A; return z | 0 } return 0 } function tH(a, b, d, f, g) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; k = o + 24 | 0; j = o + 20 | 0; m = o + 12 | 0; n = o + 8 | 0; i = o + 4 | 0; h = o; c[j >> 2] = a; c[o + 16 >> 2] = b; c[m >> 2] = d; c[n >> 2] = f; c[i >> 2] = g; if (!(c[m >> 2] | 0)) { c[k >> 2] = 1; n = c[k >> 2] | 0; l = o; return n | 0 } if ((e[(c[m >> 2] | 0) + 10 >> 1] | 0) >>> 0 < (c[n >> 2] | 0) >>> 0) g = e[(c[m >> 2] | 0) + 10 >> 1] | 0; else g = c[n >> 2] | 0; c[h >> 2] = g; if ((c[h >> 2] | 0) >>> 0 > 0 ? qH(c[j >> 2] | 0, c[(c[m >> 2] | 0) + 24 >> 2] | 0, c[h >> 2] | 0, i) | 0 : 0) { c[k >> 2] = 1; n = c[k >> 2] | 0; l = o; return n | 0 } if (wH(c[j >> 2] | 0, (c[n >> 2] | 0) - (c[h >> 2] | 0) | 0, c[i >> 2] | 0) | 0) { c[k >> 2] = 1; n = c[k >> 2] | 0; l = o; return n | 0 } else { c[k >> 2] = 0; n = c[k >> 2] | 0; l = o; return n | 0 } return 0 } function uH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 288 | 0; k = n + 20 | 0; i = n + 16 | 0; j = n + 12 | 0; m = n + 8 | 0; h = n + 4 | 0; g = n; f = n + 24 | 0; c[i >> 2] = a; c[j >> 2] = b; c[m >> 2] = d; c[h >> 2] = e; if (!(c[j >> 2] | 0)) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } c[g >> 2] = (c[m >> 2] | 0) >>> 0 < 256 ? c[m >> 2] | 0 : 256; if (qH(c[i >> 2] | 0, f, c[g >> 2] | 0, h) | 0) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else { kD(c[j >> 2] | 0, f, c[g >> 2] | 0) | 0; c[k >> 2] = wH(c[i >> 2] | 0, (c[m >> 2] | 0) - (c[g >> 2] | 0) | 0, c[h >> 2] | 0) | 0; m = c[k >> 2] | 0; l = n; return m | 0 } return 0 } function vH(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; o = q + 32 | 0; i = q + 28 | 0; k = q + 24 | 0; p = q + 20 | 0; h = q + 16 | 0; n = q + 12 | 0; j = q + 8 | 0; m = q + 4 | 0; g = q; c[i >> 2] = a; c[k >> 2] = b; c[p >> 2] = e; c[h >> 2] = f; if (!(c[p >> 2] | 0)) { c[o >> 2] = wH(c[i >> 2] | 0, c[p >> 2] | 0, c[h >> 2] | 0) | 0; p = c[o >> 2] | 0; l = q; return p | 0 } c[g >> 2] = HQ(c[p >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } if (qH(c[i >> 2] | 0, c[g >> 2] | 0, c[p >> 2] | 0, h) | 0) { IQ(c[g >> 2] | 0); c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } c[j >> 2] = 0; c[m >> 2] = c[p >> 2]; if ((d[c[g >> 2] >> 0] | 0 | 0) == 10) { c[j >> 2] = 1; c[m >> 2] = (c[m >> 2] | 0) - 1 } if ((c[m >> 2] | 0) >>> 0 > 0 ? (d[(c[g >> 2] | 0) + ((c[m >> 2] | 0) - 1) >> 0] | 0 | 0) == 10 : 0) c[m >> 2] = (c[m >> 2] | 0) - 1; c[n >> 2] = JD(c[k >> 2] | 0, (c[g >> 2] | 0) + (c[j >> 2] | 0) | 0, c[m >> 2] | 0) | 0; IQ(c[g >> 2] | 0); p = wH(c[i >> 2] | 0, 0, c[h >> 2] | 0) | 0; c[n >> 2] = c[n >> 2] | p; c[o >> 2] = c[n >> 2]; p = c[o >> 2] | 0; l = q; return p | 0 } function wH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 288 | 0; k = n; j = n + 20 | 0; h = n + 16 | 0; f = n + 12 | 0; g = n + 8 | 0; i = n + 4 | 0; e = n + 24 | 0; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; c[i >> 2] = (c[f >> 2] | 0) >>> 0 < 256 ? c[f >> 2] | 0 : 256; if (qH(c[h >> 2] | 0, e, c[i >> 2] | 0, g) | 0) { m = 4; break } c[f >> 2] = (c[f >> 2] | 0) - (c[i >> 2] | 0) } if ((m | 0) == 4) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } if (qH(c[h >> 2] | 0, e, 4, 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } m = vG(e, 0) | 0; if ((m | 0) != (c[g >> 2] | 0)) { kQ(c[7422] | 0, 48130, k) | 0; c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function xH(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = a; c[d >> 2] = b; if (c[d >> 2] & 1 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 1 } if (c[d >> 2] & 2 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 2 } if (c[d >> 2] & 4 | 0) { a = (c[e >> 2] | 0) + 12 | 0; c[a >> 2] = c[a >> 2] | 4 } if (!(c[d >> 2] & 8)) { l = f; return } e = (c[e >> 2] | 0) + 12 | 0; c[e >> 2] = c[e >> 2] | 8; l = f; return } function yH(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; j = p + 32 | 0; g = p + 28 | 0; i = p + 24 | 0; d = p + 20 | 0; h = p + 16 | 0; k = p + 12 | 0; f = p + 8 | 0; n = p + 4 | 0; m = p; c[g >> 2] = a; c[i >> 2] = b; if (zH(c[g >> 2] | 0) | 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = p; return o | 0 } if (AH(c[g >> 2] | 0, c[i >> 2] | 0) | 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = p; return o | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[i >> 2] >> 1] | 0) >>> 0) break; c[f >> 2] = c[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (e[(c[n >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[m >> 2] = c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2]; if (BH(c[g >> 2] | 0, c[m >> 2] | 0, c[d >> 2] | 0, c[h >> 2] | 0) | 0) { o = 12; break a } c[k >> 2] = (c[k >> 2] | 0) + 1 } c[h >> 2] = (c[h >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((o | 0) == 12) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = p; return o | 0 } if (CH(c[g >> 2] | 0, 1162757152, 0, 0) | 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = p; return o | 0 } else { XP(c[g >> 2] | 0) | 0; c[j >> 2] = 0; o = c[j >> 2] | 0; l = p; return o | 0 } return 0 } function zH(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; f = d; e = d + 8 | 0; c[f >> 2] = a; wG(e, 0, 4); wG(e, 2, 0); if (CH(c[f >> 2] | 0, 1346782275, 4, e) | 0) { c[b >> 2] = 1; f = c[b >> 2] | 0; l = d; return f | 0 } else { c[b >> 2] = 0; f = c[b >> 2] | 0; l = d; return f | 0 } return 0 } function AH(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; j = k + 16 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 4 | 0; f = k; e = k + 24 | 0; c[g >> 2] = b; c[h >> 2] = d; if (!(c[(c[h >> 2] | 0) + 8 >> 2] | 0)) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } else { xG(e, 0, 1413830740); xG(e, 4, (c[(c[h >> 2] | 0) + 8 >> 2] | 0) + 2 | 0); a[e + 8 >> 0] = 10; c[f >> 2] = 0; c[i >> 2] = DH(c[g >> 2] | 0, e, 9, f) | 0; h = DH(c[g >> 2] | 0, c[(c[h >> 2] | 0) + 12 >> 2] | 0, c[(c[h >> 2] | 0) + 8 >> 2] | 0, f) | 0; c[i >> 2] = c[i >> 2] | h; h = DH(c[g >> 2] | 0, e + 8 | 0, 1, f) | 0; c[i >> 2] = c[i >> 2] | h; xG(e, 0, c[f >> 2] | 0); h = DH(c[g >> 2] | 0, e, 4, 0) | 0; c[i >> 2] = c[i >> 2] | h; c[j >> 2] = c[i >> 2]; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function BH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; g = k + 12 | 0; i = k + 8 | 0; f = k + 4 | 0; h = k; c[g >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; if (EH(c[g >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, 0) | 0) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } c[i >> 2] = c[c[i >> 2] >> 2]; while (1) { if (!(c[i >> 2] | 0)) { d = 8; break } if (EH(c[g >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, 1) | 0) { d = 6; break } c[i >> 2] = c[c[i >> 2] >> 2] } if ((d | 0) == 6) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else if ((d | 0) == 8) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function CH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; i = m + 16 | 0; n = m + 12 | 0; k = m + 8 | 0; h = m + 4 | 0; g = m; f = m + 24 | 0; c[i >> 2] = a; c[n >> 2] = b; c[k >> 2] = d; c[h >> 2] = e; xG(f, 0, c[n >> 2] | 0); xG(f, 4, c[k >> 2] | 0); c[g >> 2] = 0; if (DH(c[i >> 2] | 0, f, 8, g) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } if ((c[k >> 2] | 0) >>> 0 > 0 ? DH(c[i >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0, g) | 0 : 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } xG(f, 0, c[g >> 2] | 0); if (DH(c[i >> 2] | 0, f, 4, 0) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } else { c[j >> 2] = 0; n = c[j >> 2] | 0; l = m; return n | 0 } return 0 } function DH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; i = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; h = k; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if (c[h >> 2] | 0) { a = oH(c[c[h >> 2] >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[c[h >> 2] >> 2] = a } i = QP(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[i >> 2] | 0) | 0; if ((i | 0) != (c[g >> 2] | 0)) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function EH(b, f, g, h, i) { b = b | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; v = l; l = l + 304 | 0; s = v + 32 | 0; q = v + 28 | 0; t = v + 24 | 0; k = v + 20 | 0; m = v + 16 | 0; j = v + 12 | 0; r = v + 8 | 0; p = v + 4 | 0; o = v; n = v + 40 | 0; c[q >> 2] = b; c[t >> 2] = f; c[k >> 2] = g; c[m >> 2] = h; c[j >> 2] = i; c[p >> 2] = FH(c[t >> 2] | 0) | 0; if ($C(c[t >> 2] | 0) | 0 ? (e[(c[t >> 2] | 0) + 10 >> 1] | 0 | 0) > 0 : 0) c[p >> 2] = c[p >> 2] | 32768; if (c[j >> 2] | 0) c[p >> 2] = c[p >> 2] | 16384; wG(n, 0, c[k >> 2] | 0); wG(n, 2, c[m >> 2] | 0); wG(n, 4, e[(c[t >> 2] | 0) + 4 >> 1] | 0); wG(n, 6, e[(c[t >> 2] | 0) + 6 >> 1] | 0); wG(n, 8, e[(c[t >> 2] | 0) + 8 >> 1] | 0); wG(n, 10, e[(c[t >> 2] | 0) + 10 >> 1] | 0); wG(n, 12, 0); wG(n, 14, c[p >> 2] | 0); wG(n, 16, e[(c[t >> 2] | 0) + 16 >> 1] | 0); if (c[p >> 2] & 32768 | 0) a[n + 13 >> 0] = a[c[(c[t >> 2] | 0) + 24 >> 2] >> 0] | 0; switch ((e[(c[t >> 2] | 0) + 16 >> 1] | 0) & 4095 | 0) { case 2: case 1: { i = hD(c[t >> 2] | 0) | 0;u = 11; break } case 3: { i = jD(c[t >> 2] | 0) | 0;u = 11; break } default: {} } if ((u | 0) == 11) a[n + 12 >> 0] = i; if (CH(c[q >> 2] | 0, 1397048148, 18, n) | 0) { c[s >> 2] = 1; u = c[s >> 2] | 0; l = v; return u | 0 } c[o >> 2] = lD(c[t >> 2] | 0, n, 256) | 0; if ((c[o >> 2] | 0) >>> 0 > 0) { c[r >> 2] = 0; while (1) { if ((c[r >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; if (d[n + (c[r >> 2] | 0) >> 0] | 0 | 0) break; c[r >> 2] = (c[r >> 2] | 0) + 1 } if ((c[r >> 2] | 0) >>> 0 < (c[o >> 2] | 0) >>> 0 ? CH(c[q >> 2] | 0, 1413564243, c[o >> 2] | 0, n) | 0 : 0) { c[s >> 2] = 1; u = c[s >> 2] | 0; l = v; return u | 0 } } if (((c[p >> 2] & 32776 | 0) == 0 ? (e[(c[t >> 2] | 0) + 10 >> 1] | 0 | 0) > 0 : 0) ? CH(c[q >> 2] | 0, 1145132097, e[(c[t >> 2] | 0) + 10 >> 1] | 0, c[(c[t >> 2] | 0) + 24 >> 2] | 0) | 0 : 0) { c[s >> 2] = 1; u = c[s >> 2] | 0; l = v; return u | 0 } c[s >> 2] = 0; u = c[s >> 2] | 0; l = v; return u | 0 } function FH(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; c[b >> 2] = 0; if (c[(c[d >> 2] | 0) + 12 >> 2] & 1 | 0) c[b >> 2] = c[b >> 2] | 1; if (c[(c[d >> 2] | 0) + 12 >> 2] & 2 | 0) c[b >> 2] = c[b >> 2] | 2; if (c[(c[d >> 2] | 0) + 12 >> 2] & 4 | 0) c[b >> 2] = c[b >> 2] | 4; if (!(c[(c[d >> 2] | 0) + 12 >> 2] & 8)) { d = c[b >> 2] | 0; l = e; return d | 0 } c[b >> 2] = c[b >> 2] | 8; d = c[b >> 2] | 0; l = e; return d | 0 } function GH(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; c[b >> 2] = 0; while (1) { a = c[d >> 2] | 0; if ((c[b >> 2] | 0) >>> 0 >= 3) break; c[a + (c[b >> 2] << 2) >> 2] = 0; c[(c[d >> 2] | 0) + 12 + (c[b >> 2] << 2) >> 2] = 0; c[(c[d >> 2] | 0) + 24 + (c[b >> 2] << 2) >> 2] = 0; c[(c[d >> 2] | 0) + 36 + (c[b >> 2] << 2) >> 2] = 0; c[b >> 2] = (c[b >> 2] | 0) + 1 } c[a >> 2] = 8192; l = e; return } function HH(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[(c[d >> 2] | 0) + 24 >> 2] = 0; c[(c[d >> 2] | 0) + 24 + 4 >> 2] = 0; c[(c[d >> 2] | 0) + 24 + 8 >> 2] = 0; c[(c[d >> 2] | 0) + 36 >> 2] = 0; c[(c[d >> 2] | 0) + 36 + 4 >> 2] = 0; c[(c[d >> 2] | 0) + 36 + 8 >> 2] = 0; l = b; return } function IH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, i = 0, j = 0, k = 0, m = 0.0; k = l; l = l + 32 | 0; g = k + 24 | 0; f = k + 20 | 0; j = k + 16 | 0; i = k + 8 | 0; e = k; c[g >> 2] = a; c[f >> 2] = b; c[j >> 2] = d; GH(c[g >> 2] | 0); if ((c[f >> 2] | 0) == 0 | (c[j >> 2] | 0) == 0) { l = k; return } if (c[f >> 2] << 1 >>> 0 >= (c[j >> 2] | 0) >>> 0) c[f >> 2] = (((c[j >> 2] | 0) >>> 0) / 2 | 0) - 1; h[i >> 3] = 1.0 / +K(+(+((c[f >> 2] | 0) >>> 0) * 3.141592653589793 / +((c[j >> 2] | 0) >>> 0))); h[e >> 3] = +h[i >> 3] * (+h[i >> 3] + +G(2.0)) + 1.0; c[c[g >> 2] >> 2] = ~~(8192.0 / +h[e >> 3]); c[(c[g >> 2] | 0) + 4 >> 2] = ~~(16384.0 / +h[e >> 3]); c[(c[g >> 2] | 0) + 8 >> 2] = ~~(8192.0 / +h[e >> 3]); c[(c[g >> 2] | 0) + 12 >> 2] = 8192; c[(c[g >> 2] | 0) + 12 + 4 >> 2] = ~~((1.0 - +h[i >> 3] * +h[i >> 3]) * 16384.0 / +h[e >> 3]); m = (+h[i >> 3] * (+h[i >> 3] - +G(2.0)) + 1.0) * 8192.0; c[(c[g >> 2] | 0) + 12 + 8 >> 2] = ~~(m / +h[e >> 3]); l = k; return } function JH(a, d, f, g, h, i) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; r = l; l = l + 32 | 0; m = r + 24 | 0; k = r + 20 | 0; p = r + 16 | 0; j = r + 12 | 0; n = r + 8 | 0; s = r + 4 | 0; q = r; o = r + 28 | 0; c[m >> 2] = a; c[k >> 2] = d; c[p >> 2] = f; c[j >> 2] = g; c[n >> 2] = h; c[s >> 2] = i; b[o >> 1] = c[s >> 2] | 0 ? 32768 : 0; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; c[q >> 2] = (e[c[p >> 2] >> 1] | 0) ^ (e[o >> 1] | 0); c[q >> 2] = (c[q >> 2] | 0) - 32768; c[(c[m >> 2] | 0) + 24 + 8 >> 2] = c[(c[m >> 2] | 0) + 24 + 4 >> 2]; c[(c[m >> 2] | 0) + 24 + 4 >> 2] = c[(c[m >> 2] | 0) + 24 >> 2]; c[(c[m >> 2] | 0) + 24 >> 2] = c[q >> 2]; c[(c[m >> 2] | 0) + 36 + 8 >> 2] = c[(c[m >> 2] | 0) + 36 + 4 >> 2]; c[(c[m >> 2] | 0) + 36 + 4 >> 2] = c[(c[m >> 2] | 0) + 36 >> 2]; s = S(c[c[m >> 2] >> 2] | 0, c[(c[m >> 2] | 0) + 24 >> 2] | 0) | 0; c[(c[m >> 2] | 0) + 36 >> 2] = s; s = S(c[(c[m >> 2] | 0) + 4 >> 2] | 0, c[(c[m >> 2] | 0) + 24 + 4 >> 2] | 0) | 0; s = s + (S(c[(c[m >> 2] | 0) + 8 >> 2] | 0, c[(c[m >> 2] | 0) + 24 + 8 >> 2] | 0) | 0) | 0; f = (c[m >> 2] | 0) + 36 | 0; c[f >> 2] = (c[f >> 2] | 0) + s; f = S(c[(c[m >> 2] | 0) + 12 + 4 >> 2] | 0, c[(c[m >> 2] | 0) + 36 + 4 >> 2] | 0) | 0; f = f + (S(c[(c[m >> 2] | 0) + 12 + 8 >> 2] | 0, c[(c[m >> 2] | 0) + 36 + 8 >> 2] | 0) | 0) | 0; s = (c[m >> 2] | 0) + 36 | 0; c[s >> 2] = (c[s >> 2] | 0) - f; c[(c[m >> 2] | 0) + 36 >> 2] = (c[(c[m >> 2] | 0) + 36 >> 2] | 0) / 8192 | 0; c[q >> 2] = c[(c[m >> 2] | 0) + 36 >> 2]; c[q >> 2] = (c[q >> 2] | 0) + 32768; do if ((c[q >> 2] | 0) >= 0) if ((c[q >> 2] | 0) > 65535) { c[q >> 2] = 65535; break } else { c[q >> 2] = c[q >> 2] & 65535; break } else c[q >> 2] = 0; while (0); b[c[k >> 2] >> 1] = c[q >> 2] & 65535 ^ (e[o >> 1] | 0); c[p >> 2] = (c[p >> 2] | 0) + (c[n >> 2] << 1); c[k >> 2] = (c[k >> 2] | 0) + (c[n >> 2] << 1); c[j >> 2] = (c[j >> 2] | 0) - 1 } l = r; return } function KH(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 12 | 0; f = h + 8 | 0; d = h + 4 | 0; g = h; c[f >> 2] = a; c[d >> 2] = b; b = c[(c[f >> 2] | 0) + 792 >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 <= (c[(c[f >> 2] | 0) + 788 >> 2] | 0) >>> 0) { c[e >> 2] = b; g = c[e >> 2] | 0; l = h; return g | 0 } c[g >> 2] = JQ(b, c[d >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = h; return g | 0 } else { c[(c[f >> 2] | 0) + 792 >> 2] = c[g >> 2]; c[(c[f >> 2] | 0) + 788 >> 2] = c[d >> 2]; c[e >> 2] = c[(c[f >> 2] | 0) + 792 >> 2]; g = c[e >> 2] | 0; l = h; return g | 0 } return 0 } function LH(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 12 | 0; f = h + 8 | 0; d = h + 4 | 0; g = h; c[f >> 2] = a; c[d >> 2] = b; b = c[(c[f >> 2] | 0) + 800 >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 <= (c[(c[f >> 2] | 0) + 796 >> 2] | 0) >>> 0) { c[e >> 2] = b; g = c[e >> 2] | 0; l = h; return g | 0 } c[g >> 2] = JQ(b, c[d >> 2] << 1) | 0; if (!(c[g >> 2] | 0)) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = h; return g | 0 } else { c[(c[f >> 2] | 0) + 800 >> 2] = c[g >> 2]; c[(c[f >> 2] | 0) + 796 >> 2] = c[d >> 2]; c[e >> 2] = c[(c[f >> 2] | 0) + 800 >> 2]; g = c[e >> 2] | 0; l = h; return g | 0 } return 0 } function MH(d, f, g, h, i) { d = d | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; q = l; l = l + 32 | 0; k = q + 20 | 0; o = q + 16 | 0; j = q + 12 | 0; s = q + 8 | 0; r = q + 4 | 0; m = q; p = q + 26 | 0; n = q + 24 | 0; c[k >> 2] = d; c[o >> 2] = f; c[j >> 2] = g; c[s >> 2] = h; c[r >> 2] = i; b[n >> 1] = c[s >> 2] | 0 ? 32768 : 0; f = (c[r >> 2] | 0) != 0; c[m >> 2] = 0; if (f) { while (1) { if ((c[m >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; b[p >> 1] = (e[c[o >> 2] >> 1] | 0) ^ (e[n >> 1] | 0); a[c[k >> 2] >> 0] = (e[p >> 1] | 0) >> 8; a[(c[k >> 2] | 0) + 1 >> 0] = e[p >> 1] | 0; c[k >> 2] = (c[k >> 2] | 0) + 2; c[o >> 2] = (c[o >> 2] | 0) + 2; c[m >> 2] = (c[m >> 2] | 0) + 1 } l = q; return } else { while (1) { if ((c[m >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; b[p >> 1] = (e[c[o >> 2] >> 1] | 0) ^ (e[n >> 1] | 0); a[c[k >> 2] >> 0] = e[p >> 1] | 0; a[(c[k >> 2] | 0) + 1 >> 0] = (e[p >> 1] | 0) >> 8; c[k >> 2] = (c[k >> 2] | 0) + 2; c[o >> 2] = (c[o >> 2] | 0) + 2; c[m >> 2] = (c[m >> 2] | 0) + 1 } l = q; return } } function NH(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; c[c[f >> 2] >> 2] = c[g >> 2]; c[(c[f >> 2] | 0) + 4 >> 2] = 0; c[(c[f >> 2] | 0) + 8 >> 2] = 0; c[(c[f >> 2] | 0) + 12 >> 2] = 0; c[(c[f >> 2] | 0) + 16 >> 2] = 0; c[(c[f >> 2] | 0) + 788 >> 2] = 0; c[(c[f >> 2] | 0) + 792 >> 2] = 0; c[(c[f >> 2] | 0) + 796 >> 2] = 0; c[(c[f >> 2] | 0) + 800 >> 2] = 0; c[(c[f >> 2] | 0) + 804 >> 2] = 0; c[(c[f >> 2] | 0) + 808 >> 2] = 0; a[(c[f >> 2] | 0) + 812 >> 0] = 1; c[(c[f >> 2] | 0) + 816 >> 2] = 0; c[(c[f >> 2] | 0) + 820 >> 2] = 0; c[(c[f >> 2] | 0) + 824 >> 2] = 0; l = e; return } function OH(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } $H(c[b >> 2] | 0); if (c[(c[b >> 2] | 0) + 816 >> 2] | 0) Pb[c[(c[b >> 2] | 0) + 816 >> 2] & 511](c[b >> 2] | 0); if (c[(c[b >> 2] | 0) + 800 >> 2] | 0) IQ(c[(c[b >> 2] | 0) + 800 >> 2] | 0); if (!(c[(c[b >> 2] | 0) + 792 >> 2] | 0)) { l = d; return } IQ(c[(c[b >> 2] | 0) + 792 >> 2] | 0); l = d; return } function PH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; h = m + 24 | 0; k = m + 20 | 0; e = m + 16 | 0; f = m + 12 | 0; g = m + 8 | 0; j = m + 4 | 0; i = m; c[k >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; if (!(c[(c[k >> 2] | 0) + 16 >> 2] | 0)) { c[h >> 2] = c[e >> 2]; k = c[h >> 2] | 0; l = m; return k | 0 } c[j >> 2] = S(c[(c[k >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0; c[i >> 2] = LH(c[k >> 2] | 0, c[j >> 2] | 0) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[k >> 2] | 0) + 4 >> 2] | 0) >>> 0) break; JH((c[k >> 2] | 0) + 20 + ((c[g >> 2] | 0) * 48 | 0) | 0, (c[i >> 2] | 0) + (c[g >> 2] << 1) | 0, (c[e >> 2] | 0) + (c[g >> 2] << 1) | 0, c[f >> 2] | 0, c[(c[k >> 2] | 0) + 4 >> 2] | 0, c[(c[k >> 2] | 0) + 12 >> 2] | 0); c[g >> 2] = (c[g >> 2] | 0) + 1 } c[h >> 2] = c[i >> 2]; k = c[h >> 2] | 0; l = m; return k | 0 } function QH(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, m = 0; m = l; l = l + 32 | 0; i = m + 20 | 0; k = m + 16 | 0; f = m + 12 | 0; g = m + 8 | 0; h = m + 4 | 0; j = m; c[k >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; if (c[k >> 2] | 0 ? c[(c[k >> 2] | 0) + 820 >> 2] | 0 : 0) { c[j >> 2] = PH(c[k >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[h >> 2] = Nb[c[(c[k >> 2] | 0) + 820 >> 2] & 63](c[k >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0) | 0; dI(c[k >> 2] | 0, a[(c[k >> 2] | 0) + 812 >> 0] | 0 ? c[j >> 2] | 0 : c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = m; return k | 0 } c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } function RH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; h = k + 12 | 0; f = k + 8 | 0; j = k + 4 | 0; i = k; c[h >> 2] = a; c[f >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } if (!(c[(c[h >> 2] | 0) + 824 >> 2] | 0)) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } c[i >> 2] = (c[i >> 2] | 0) != 0 & 1; if ((c[f >> 2] | 0) >>> 0 > 16) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } if (SH(c[h >> 2] | 0, c[f >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } if (Ub[c[(c[h >> 2] | 0) + 824 >> 2] & 63](c[h >> 2] | 0, c[f >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } c[(c[h >> 2] | 0) + 4 >> 2] = c[f >> 2]; c[(c[h >> 2] | 0) + 8 >> 2] = c[j >> 2]; c[(c[h >> 2] | 0) + 12 >> 2] = c[i >> 2]; if (eI(c[h >> 2] | 0, c[f >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } else { TH(c[h >> 2] | 0); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } return 0 } function SH(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; f = j + 16 | 0; g = j + 12 | 0; k = j + 8 | 0; i = j + 4 | 0; h = j; c[g >> 2] = a; c[k >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; do if ((c[(c[g >> 2] | 0) + 4 >> 2] | 0) == (c[k >> 2] | 0)) { if ((c[(c[g >> 2] | 0) + 8 >> 2] | 0) != (c[i >> 2] | 0)) { c[f >> 2] = 0; break } if ((c[(c[g >> 2] | 0) + 12 >> 2] | 0) != (c[h >> 2] | 0)) { c[f >> 2] = 0; break } else { c[f >> 2] = 1; break } } else c[f >> 2] = 0; while (0); l = j; return c[f >> 2] | 0 } function TH(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= (c[(c[d >> 2] | 0) + 4 >> 2] | 0) >>> 0) break; IH((c[d >> 2] | 0) + 20 + ((c[b >> 2] | 0) * 48 | 0) | 0, c[(c[d >> 2] | 0) + 16 >> 2] | 0, c[(c[d >> 2] | 0) + 8 >> 2] | 0); HH((c[d >> 2] | 0) + 20 + ((c[b >> 2] | 0) * 48 | 0) | 0); c[b >> 2] = (c[b >> 2] | 0) + 1 } l = e; return } function UH(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; h = j + 12 | 0; g = j + 8 | 0; f = j + 4 | 0; e = j; c[h >> 2] = b; c[g >> 2] = 0; while (1) { if (!(c[27344 + (c[g >> 2] << 3) >> 2] | 0)) { b = 13; break } c[f >> 2] = c[h >> 2]; c[e >> 2] = c[27344 + (c[g >> 2] << 3) >> 2]; while (1) { if (a[c[e >> 2] >> 0] | 0) d = (a[c[e >> 2] >> 0] | 0) == (a[c[f >> 2] >> 0] | 0); else d = 0; b = c[e >> 2] | 0; if (!d) break; c[e >> 2] = b + 1; c[f >> 2] = (c[f >> 2] | 0) + 1 } if (!(a[b >> 0] | 0)) { if ((a[c[f >> 2] >> 0] | 0) == 58) { b = 11; break } if (!(a[c[f >> 2] >> 0] | 0)) { b = 11; break } } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((b | 0) == 11) { g = Rb[c[27344 + (c[g >> 2] << 3) + 4 >> 2] & 15](c[h >> 2] | 0) | 0; c[i >> 2] = VH(g, c[h >> 2] | 0) | 0; i = c[i >> 2] | 0; l = j; return i | 0 } else if ((b | 0) == 13) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function VH(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 8 | 0; g = h + 4 | 0; e = h; c[g >> 2] = b; c[e >> 2] = d; if (!(c[g >> 2] | 0)) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } if (fI(c[g >> 2] | 0, c[e >> 2] | 0) | 0) { OH(c[g >> 2] | 0); c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } else { b = (wI(c[e >> 2] | 0, 48209, 1) | 0) & 255; a[(c[g >> 2] | 0) + 812 >> 0] = b; b = xI(c[e >> 2] | 0, 48219, 0) | 0; c[(c[g >> 2] | 0) + 16 >> 2] = b; TH(c[g >> 2] | 0); c[f >> 2] = c[g >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function WH(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = HQ(832) | 0; do if (c[b >> 2] | 0) { d = (XH(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[b >> 2] | 0; if (d) { IQ(b); c[e >> 2] = 0; break } else { c[e >> 2] = b; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function XH(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; c[e >> 2] = a; c[d >> 2] = b; NH(c[e >> 2] | 0, c[e >> 2] | 0); c[(c[e >> 2] | 0) + 816 >> 2] = 246; c[(c[e >> 2] | 0) + 820 >> 2] = 45; c[(c[e >> 2] | 0) + 824 >> 2] = 28; l = d; return 0 } function YH(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[c[e >> 2] >> 2]; IQ(c[d >> 2] | 0); l = b; return } function ZH(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = l; l = l + 16 | 0; c[e + 8 >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; l = e; return 0 } function _H(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0; f = l; l = l + 16 | 0; c[f + 12 >> 2] = a; c[f + 8 >> 2] = b; c[f + 4 >> 2] = d; c[f >> 2] = e; l = f; return 0 } function $H(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[(c[b >> 2] | 0) + 804 >> 2] | 0)) { l = d; return } aI(c[b >> 2] | 0) | 0; l = d; return } function aI(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 80 | 0; d = f + 4 | 0; e = f; b = f + 8 | 0; c[e >> 2] = a; if (jQ(c[(c[e >> 2] | 0) + 804 >> 2] | 0, 0, 0) | 0) { c[d >> 2] = 1; e = c[d >> 2] | 0; l = f; return e | 0 } bI(b, 0, 1179011410); bI(b, 4, (c[(c[e >> 2] | 0) + 808 >> 2] | 0) + 36 | 0); bI(b, 8, 1163280727); bI(b, 12, 544501094); bI(b, 16, 16); cI(b, 20, 1); cI(b, 22, c[(c[e >> 2] | 0) + 4 >> 2] | 0); bI(b, 24, c[(c[e >> 2] | 0) + 8 >> 2] | 0); bI(b, 28, S(c[(c[e >> 2] | 0) + 4 >> 2] << 1, c[(c[e >> 2] | 0) + 8 >> 2] | 0) | 0); cI(b, 32, c[(c[e >> 2] | 0) + 4 >> 2] << 1); cI(b, 34, 16); bI(b, 36, 1635017060); bI(b, 40, c[(c[e >> 2] | 0) + 808 >> 2] | 0); if ((QP(b, 1, 44, c[(c[e >> 2] | 0) + 804 >> 2] | 0) | 0) != 44) { c[d >> 2] = 1; e = c[d >> 2] | 0; l = f; return e | 0 } if (jQ(c[(c[e >> 2] | 0) + 804 >> 2] | 0, (c[(c[e >> 2] | 0) + 808 >> 2] | 0) + 44 | 0, 0) | 0) { c[d >> 2] = 1; e = c[d >> 2] | 0; l = f; return e | 0 } else { c[d >> 2] = 0; e = c[d >> 2] | 0; l = f; return e | 0 } return 0 } function bI(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = c[h >> 2]; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 2 >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[g >> 2] | 0) + 3 >> 0] = (c[h >> 2] | 0) >>> 24; l = f; return } function cI(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = c[h >> 2]; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 8; l = f; return } function dI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; i = m + 24 | 0; k = m + 20 | 0; g = m + 16 | 0; h = m + 12 | 0; f = m + 8 | 0; j = m + 4 | 0; e = m; c[k >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; if (!(c[(c[k >> 2] | 0) + 804 >> 2] | 0)) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } c[j >> 2] = S(c[(c[k >> 2] | 0) + 4 >> 2] | 0, c[h >> 2] | 0) | 0; c[f >> 2] = c[j >> 2] << 1; c[e >> 2] = KH(c[k >> 2] | 0, c[f >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } MH(c[e >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0, (c[(c[k >> 2] | 0) + 12 >> 2] | 0) == 0 & 1, 0); a = QP(c[e >> 2] | 0, 1, c[f >> 2] | 0, c[(c[k >> 2] | 0) + 804 >> 2] | 0) | 0; if ((a | 0) != (c[f >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } else { k = (c[k >> 2] | 0) + 808 | 0; c[k >> 2] = (c[k >> 2] | 0) + (c[f >> 2] | 0); c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function eI(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 32 | 0; f = h + 16 | 0; g = h + 12 | 0; c[g >> 2] = a; c[h + 8 >> 2] = b; c[h + 4 >> 2] = d; c[h >> 2] = e; if (!(c[(c[g >> 2] | 0) + 804 >> 2] | 0)) { c[f >> 2] = 0; d = c[f >> 2] | 0; l = h; return d | 0 } if (aI(c[g >> 2] | 0) | 0) { c[f >> 2] = 1; d = c[f >> 2] | 0; l = h; return d | 0 } else { c[f >> 2] = 0; d = c[f >> 2] | 0; l = h; return d | 0 } return 0 } function fI(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; e = h + 12 | 0; f = h + 8 | 0; i = h + 4 | 0; g = h; c[f >> 2] = b; c[i >> 2] = d; c[(c[f >> 2] | 0) + 804 >> 2] = 0; c[(c[f >> 2] | 0) + 808 >> 2] = 0; c[g >> 2] = rI(c[i >> 2] | 0, 48227) | 0; if (!(c[g >> 2] | 0)) { c[e >> 2] = 0; i = c[e >> 2] | 0; l = h; return i | 0 } if (!(a[c[g >> 2] >> 0] | 0)) { c[e >> 2] = 0; i = c[e >> 2] | 0; l = h; return i | 0 } i = dQ(c[g >> 2] | 0, 51391) | 0; c[(c[f >> 2] | 0) + 804 >> 2] = i; IQ(c[g >> 2] | 0); if (!(c[(c[f >> 2] | 0) + 804 >> 2] | 0)) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = h; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = h; return i | 0 } return 0 } function gI(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 48 | 0; s = t; p = t + 36 | 0; o = t + 32 | 0; n = t + 28 | 0; m = t + 24 | 0; q = t + 16 | 0; r = t + 12 | 0; h = t + 8 | 0; j = t + 44 | 0; k = t + 42 | 0; f = t + 4 | 0; i = t + 40 | 0; c[p >> 2] = a; c[o >> 2] = d; c[n >> 2] = e; c[n >> 2] = (c[n >> 2] | 0) / 2 | 0; c[t + 20 >> 2] = 0; c[q >> 2] = c[n >> 2]; c[r >> 2] = c[o >> 2]; while (1) { d = c[p >> 2] | 0; if ((c[n >> 2] | 0) <= 0) { e = 12; break } c[m >> 2] = c[d + 1624 >> 2]; c[h >> 2] = c[m >> 2]; if (+g[(c[m >> 2] | 0) + 20 >> 2] >= +((((c[(c[m >> 2] | 0) + 8 >> 2] | 0) >>> 0) / 2 | 0) >>> 0)) { c[(c[p >> 2] | 0) + 1624 >> 2] = c[c[m >> 2] >> 2]; if (!(c[(c[p >> 2] | 0) + 1624 >> 2] | 0)) c[(c[p >> 2] | 0) + 1628 >> 2] = 0; c[c[m >> 2] >> 2] = c[(c[p >> 2] | 0) + 1632 >> 2]; c[(c[p >> 2] | 0) + 1632 >> 2] = c[m >> 2]; c[m >> 2] = c[(c[p >> 2] | 0) + 1624 >> 2]; if (!(c[m >> 2] | 0)) { e = 7; break } g[(c[m >> 2] | 0) + 20 >> 2] = +g[(c[h >> 2] | 0) + 20 >> 2] - +(~~+g[(c[h >> 2] | 0) + 20 >> 2] | 0) } b[j >> 1] = b[(c[p >> 2] | 0) + 1620 >> 1] | 0; b[k >> 1] = b[(c[(c[m >> 2] | 0) + 16 >> 2] | 0) + (~~+g[(c[m >> 2] | 0) + 20 >> 2] << 1) >> 1] | 0; g[f >> 2] = +g[(c[m >> 2] | 0) + 20 >> 2] - +(~~+g[(c[m >> 2] | 0) + 20 >> 2] | 0); b[i >> 1] = ~~((1.0 - +g[f >> 2]) * +(b[j >> 1] | 0) + +g[f >> 2] * +(b[k >> 1] | 0)); if (+g[(c[m >> 2] | 0) + 20 >> 2] + +g[(c[p >> 2] | 0) + 1616 >> 2] - +(~~+g[(c[m >> 2] | 0) + 20 >> 2] | 0) >= 1.0) b[(c[p >> 2] | 0) + 1620 >> 1] = b[k >> 1] | 0; d = b[i >> 1] | 0; a = c[o >> 2] | 0; c[o >> 2] = a + 2; b[a >> 1] = d; a = (c[m >> 2] | 0) + 20 | 0; g[a >> 2] = +g[a >> 2] + +g[(c[p >> 2] | 0) + 1616 >> 2]; c[n >> 2] = (c[n >> 2] | 0) + -1 } if ((e | 0) == 7) { c[s >> 2] = 48231; Ta(1, s | 0); TQ(c[o >> 2] | 0, 0, c[n >> 2] << 1 | 0) | 0; b[(c[p >> 2] | 0) + 1620 >> 1] = 0; l = t; return } else if ((e | 0) == 12) { JH(d + 832 | 0, c[r >> 2] | 0, c[r >> 2] | 0, c[q >> 2] | 0, c[(c[p >> 2] | 0) + 4 >> 2] | 0, c[(c[p >> 2] | 0) + 1604 >> 2] | 0); l = t; return } } function hI(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; f = k + 12 | 0; h = k + 8 | 0; i = k + 4 | 0; j = k; c[f >> 2] = b; c[h >> 2] = d; c[i >> 2] = e; c[j >> 2] = c[f >> 2]; if (!(c[(c[j >> 2] | 0) + 1624 >> 2] | 0)) { gb(1); a[(c[j >> 2] | 0) + 1601 >> 0] = 1; l = k; return } e = c[f >> 2] | 0; d = c[h >> 2] | 0; if (+g[(c[j >> 2] | 0) + 1616 >> 2] == 1.0) { iI(e, d, c[i >> 2] | 0); l = k; return } else { gI(e, d, c[i >> 2] | 0); l = k; return } } function iI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; e = k + 12 | 0; f = k + 8 | 0; h = k + 4 | 0; i = k; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; while (1) { if ((c[f >> 2] | 0) <= 0) { j = 10; break } if (!(c[(c[g >> 2] | 0) + 1624 >> 2] | 0)) break; c[i >> 2] = c[(c[g >> 2] | 0) + 1624 >> 2]; c[h >> 2] = (c[(c[i >> 2] | 0) + 8 >> 2] | 0) - (c[(c[i >> 2] | 0) + 4 >> 2] | 0); b = c[e >> 2] | 0; d = (c[(c[i >> 2] | 0) + 16 >> 2] | 0) + (c[(c[i >> 2] | 0) + 4 >> 2] | 0) | 0; if ((c[h >> 2] | 0) > (c[f >> 2] | 0)) { QQ(b | 0, d | 0, c[f >> 2] | 0) | 0; a = (c[i >> 2] | 0) + 4 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[f >> 2] | 0); c[f >> 2] = 0; continue } QQ(b | 0, d | 0, c[h >> 2] | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + (c[h >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) - (c[h >> 2] | 0); c[(c[g >> 2] | 0) + 1624 >> 2] = c[c[i >> 2] >> 2]; if (!(c[(c[g >> 2] | 0) + 1624 >> 2] | 0)) c[(c[g >> 2] | 0) + 1628 >> 2] = 0; c[c[i >> 2] >> 2] = c[(c[g >> 2] | 0) + 1632 >> 2]; c[(c[g >> 2] | 0) + 1632 >> 2] = c[i >> 2] } if ((j | 0) == 10) { l = k; return } TQ(c[e >> 2] | 0, 0, c[f >> 2] | 0) | 0; l = k; return } function jI(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = HQ(1636) | 0; do if (c[b >> 2] | 0) { d = (kI(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[b >> 2] | 0; if (d) { lI(b); c[e >> 2] = 0; break } else { c[e >> 2] = b; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function kI(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; c[f >> 2] = b; c[e >> 2] = d; NH(c[f >> 2] | 0, c[f >> 2] | 0); c[(c[f >> 2] | 0) + 816 >> 2] = 247; c[(c[f >> 2] | 0) + 820 >> 2] = 46; c[(c[f >> 2] | 0) + 824 >> 2] = 29; a[(c[f >> 2] | 0) + 1600 >> 0] = 0; a[(c[f >> 2] | 0) + 1601 >> 0] = 1; c[(c[f >> 2] | 0) + 1612 >> 2] = 0; c[(c[f >> 2] | 0) + 1624 >> 2] = 0; c[(c[f >> 2] | 0) + 1628 >> 2] = 0; c[(c[f >> 2] | 0) + 1632 >> 2] = 0; l = e; return 0 } function lI(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = b; c[d >> 2] = c[c[f >> 2] >> 2]; if (a[(c[d >> 2] | 0) + 1600 >> 0] | 0) va(); mI(c[(c[d >> 2] | 0) + 1624 >> 2] | 0); mI(c[(c[d >> 2] | 0) + 1632 >> 2] | 0); IQ(c[d >> 2] | 0); l = e; return } function mI(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; while (1) { if (!(c[b >> 2] | 0)) break; c[d >> 2] = c[b >> 2]; c[b >> 2] = c[c[b >> 2] >> 2]; IQ(c[(c[d >> 2] | 0) + 16 >> 2] | 0); IQ(c[d >> 2] | 0) } l = e; return } function nI(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, m = 0, n = 0, o = 0, p = 0; o = l; l = l + 48 | 0; n = o + 32 | 0; i = o + 28 | 0; g = o + 24 | 0; p = o + 20 | 0; j = o + 16 | 0; f = o + 12 | 0; h = o + 8 | 0; k = o + 4 | 0; m = o; c[i >> 2] = b; c[g >> 2] = d; c[p >> 2] = e; c[m >> 2] = c[c[i >> 2] >> 2]; c[h >> 2] = S(c[(c[i >> 2] | 0) + 4 >> 2] | 0, c[p >> 2] | 0) | 0; c[f >> 2] = c[h >> 2] << 1; Aa(); c[k >> 2] = qI(c[m >> 2] | 0, c[f >> 2] | 0) | 0; oa(); if (!(c[k >> 2] | 0)) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = o; return p | 0 } c[j >> 2] = (c[(c[i >> 2] | 0) + 12 >> 2] | 0) != (c[(c[m >> 2] | 0) + 1604 >> 2] | 0) & 1; MH(c[(c[k >> 2] | 0) + 16 >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0, c[j >> 2] | 0, c[(c[m >> 2] | 0) + 1608 >> 2] | 0); c[(c[k >> 2] | 0) + 4 >> 2] = 0; c[(c[k >> 2] | 0) + 8 >> 2] = c[f >> 2]; Aa(); f = c[m >> 2] | 0; if (!(c[(c[m >> 2] | 0) + 1628 >> 2] | 0)) f = f + 1624 | 0; else f = c[f + 1628 >> 2] | 0; c[f >> 2] = c[k >> 2]; c[(c[m >> 2] | 0) + 1628 >> 2] = c[k >> 2]; oa(); if (a[(c[m >> 2] | 0) + 1601 >> 0] | 0) { gb(0); a[(c[m >> 2] | 0) + 1601 >> 0] = 0 } c[n >> 2] = 0; p = c[n >> 2] | 0; l = o; return p | 0 } function oI(d, e, f, i) { d = d | 0; e = e | 0; f = f | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0.0; t = l; l = l + 112 | 0; s = t + 16 | 0; r = t + 8 | 0; q = t; o = t + 100 | 0; u = t + 96 | 0; j = t + 92 | 0; p = t + 88 | 0; k = t + 80 | 0; n = t + 56 | 0; m = t + 32 | 0; c[u >> 2] = d; c[j >> 2] = e; c[p >> 2] = f; c[t + 84 >> 2] = i; c[k >> 2] = c[c[u >> 2] >> 2]; if ((Gb(16) | 0) == 0 ? (Ua(16) | 0) < 0 : 0) { u = c[7422] | 0; c[q >> 2] = Ea() | 0; kQ(u, 48256, q) | 0; c[o >> 2] = 1; u = c[o >> 2] | 0; l = t; return u | 0 } if (a[(c[k >> 2] | 0) + 1600 >> 0] | 0) { va(); a[(c[k >> 2] | 0) + 1600 >> 0] = 0 } c[n >> 2] = c[p >> 2]; b[n + 4 >> 1] = -32752; a[n + 6 >> 0] = c[j >> 2]; b[n + 8 >> 1] = 256; c[n + 16 >> 2] = 19; c[n + 20 >> 2] = c[k >> 2]; if ((La(n | 0, m | 0) | 0) < 0) { u = c[7422] | 0; c[r >> 2] = Ea() | 0; kQ(u, 48306, r) | 0; c[o >> 2] = 1; u = c[o >> 2] | 0; l = t; return u | 0 } else { gb(1); a[(c[k >> 2] | 0) + 1600 >> 0] = 1; a[(c[k >> 2] | 0) + 1601 >> 0] = 1; c[(c[k >> 2] | 0) + 1604 >> 2] = 1; c[(c[k >> 2] | 0) + 1608 >> 2] = 0; g[(c[k >> 2] | 0) + 1616 >> 2] = +((c[p >> 2] | 0) >>> 0) / +(c[m >> 2] | 0); u = c[7422] | 0; r = c[m >> 2] | 0; v = +g[(c[k >> 2] | 0) + 1616 >> 2]; c[s >> 2] = c[p >> 2]; c[s + 4 >> 2] = r; h[s + 8 >> 3] = v; kQ(u, 48342, s) | 0; b[(c[k >> 2] | 0) + 1620 >> 1] = 0; pI(c[k >> 2] | 0, c[j >> 2] | 0, 6e3, c[m >> 2] | 0); c[o >> 2] = 0; u = c[o >> 2] | 0; l = t; return u | 0 } return 0 } function pI(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; f = k + 12 | 0; h = k + 8 | 0; j = k + 4 | 0; i = k; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[j >> 2] = e; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) break; IH((c[g >> 2] | 0) + 832 + ((c[i >> 2] | 0) * 48 | 0) | 0, c[h >> 2] | 0, c[j >> 2] | 0); HH((c[g >> 2] | 0) + 832 + ((c[i >> 2] | 0) * 48 | 0) | 0); c[i >> 2] = (c[i >> 2] | 0) + 1 } l = k; return } function qI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; f = j + 16 | 0; e = j + 12 | 0; h = j + 8 | 0; i = j + 4 | 0; d = j; c[e >> 2] = a; c[h >> 2] = b; a = c[e >> 2] | 0; do if (c[(c[e >> 2] | 0) + 1632 >> 2] | 0) { c[d >> 2] = c[a + 1632 >> 2]; c[(c[e >> 2] | 0) + 1632 >> 2] = c[c[(c[e >> 2] | 0) + 1632 >> 2] >> 2] } else { if ((c[a + 1612 >> 2] | 0) >>> 0 > 32) { c[f >> 2] = 0; i = c[f >> 2] | 0; l = j; return i | 0 } c[d >> 2] = HQ(24) | 0; if (c[d >> 2] | 0) { c[(c[d >> 2] | 0) + 12 >> 2] = 0; c[(c[d >> 2] | 0) + 16 >> 2] = 0; b = (c[e >> 2] | 0) + 1612 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; break } c[f >> 2] = 0; i = c[f >> 2] | 0; l = j; return i | 0 } while (0); c[c[d >> 2] >> 2] = 0; c[(c[d >> 2] | 0) + 4 >> 2] = 0; g[(c[d >> 2] | 0) + 20 >> 2] = 0.0; c[(c[d >> 2] | 0) + 8 >> 2] = 0; do if ((c[(c[d >> 2] | 0) + 12 >> 2] | 0) >>> 0 < (c[h >> 2] | 0) >>> 0) { c[i >> 2] = JQ(c[(c[d >> 2] | 0) + 16 >> 2] | 0, c[h >> 2] | 0) | 0; if (c[i >> 2] | 0) { c[(c[d >> 2] | 0) + 12 >> 2] = c[h >> 2]; c[(c[d >> 2] | 0) + 16 >> 2] = c[i >> 2]; break } IQ(c[(c[d >> 2] | 0) + 16 >> 2] | 0); IQ(c[d >> 2] | 0); i = (c[e >> 2] | 0) + 1612 | 0; c[i >> 2] = (c[i >> 2] | 0) - 1; c[f >> 2] = 0; i = c[f >> 2] | 0; l = j; return i | 0 } while (0); c[f >> 2] = c[d >> 2]; i = c[f >> 2] | 0; l = j; return i | 0 } function rI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; e = h + 8 | 0; d = h + 4 | 0; g = h; c[e >> 2] = a; c[d >> 2] = b; while (1) { if (!(c[e >> 2] | 0)) { b = 6; break } c[g >> 2] = sI(c[e >> 2] | 0, c[d >> 2] | 0) | 0; if (c[g >> 2] | 0) { b = 4; break } c[e >> 2] = uI(c[e >> 2] | 0) | 0 } if ((b | 0) == 4) { c[f >> 2] = tI(c[g >> 2] | 0) | 0; g = c[f >> 2] | 0; l = h; return g | 0 } else if ((b | 0) == 6) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function sI(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 8 | 0; g = i + 4 | 0; e = i; c[g >> 2] = b; c[e >> 2] = d; c[g >> 2] = vI(c[g >> 2] | 0) | 0; while (1) { d = c[g >> 2] | 0; if (!(a[c[e >> 2] >> 0] | 0)) break; if ((a[d >> 0] | 0) != (a[c[e >> 2] >> 0] | 0)) { h = 4; break } c[g >> 2] = (c[g >> 2] | 0) + 1; c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((h | 0) == 4) { c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } c[g >> 2] = vI(d) | 0; if ((a[c[g >> 2] >> 0] | 0) == 61) { c[g >> 2] = vI((c[g >> 2] | 0) + 1 | 0) | 0; c[f >> 2] = c[g >> 2]; h = c[f >> 2] | 0; l = i; return h | 0 } else { c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } return 0 } function tI(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 20 | 0; i = j + 16 | 0; d = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; g = j; c[i >> 2] = b; c[f >> 2] = 0; while (1) { if (!(a[(c[i >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0)) break; if ((a[(c[i >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) != 58) { c[f >> 2] = (c[f >> 2] | 0) + 1; continue } if ((a[(c[i >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] | 0) != 58) break; c[f >> 2] = (c[f >> 2] | 0) + 2 } while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; if ((a[(c[i >> 2] | 0) + ((c[f >> 2] | 0) - 1) >> 0] | 0) == 32) { c[f >> 2] = (c[f >> 2] | 0) - 1; continue } if ((a[(c[i >> 2] | 0) + ((c[f >> 2] | 0) - 1) >> 0] | 0) != 9) break; c[f >> 2] = (c[f >> 2] | 0) - 1 } c[g >> 2] = HQ((c[f >> 2] | 0) + 1 | 0) | 0; if (!(c[g >> 2] | 0)) { c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } c[d >> 2] = 0; c[e >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) break; if ((a[(c[i >> 2] | 0) + (c[d >> 2] | 0) >> 0] | 0) == 58 ? (a[(c[i >> 2] | 0) + ((c[d >> 2] | 0) + 1) >> 0] | 0) == 58 : 0) { a[(c[g >> 2] | 0) + (c[e >> 2] | 0) >> 0] = 58; c[d >> 2] = (c[d >> 2] | 0) + 2 } else { a[(c[g >> 2] | 0) + (c[e >> 2] | 0) >> 0] = a[(c[i >> 2] | 0) + (c[d >> 2] | 0) >> 0] | 0; c[d >> 2] = (c[d >> 2] | 0) + 1 } c[e >> 2] = (c[e >> 2] | 0) + 1 } a[(c[g >> 2] | 0) + (c[e >> 2] | 0) >> 0] = 0; c[h >> 2] = c[g >> 2]; i = c[h >> 2] | 0; l = j; return i | 0 } function uI(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[e >> 2] = b; while (1) { if (!(a[c[e >> 2] >> 0] | 0)) { b = 8; break } b = (c[e >> 2] | 0) + 1 | 0; if ((a[c[e >> 2] >> 0] | 0) != 58) { c[e >> 2] = b; continue } d = c[e >> 2] | 0; if ((a[b >> 0] | 0) != 58) { b = 6; break } c[e >> 2] = d + 2 } if ((b | 0) == 6) { c[f >> 2] = d + 1; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((b | 0) == 8) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function vI(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f; c[e >> 2] = b; while (1) { b = c[e >> 2] | 0; if ((a[c[e >> 2] >> 0] | 0) == 32) { c[e >> 2] = b + 1; continue } d = c[e >> 2] | 0; if ((a[b >> 0] | 0) != 9) break; c[e >> 2] = d + 1 } l = f; return d | 0 } function wI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 32 | 0; f = h + 20 | 0; k = h + 16 | 0; j = h + 12 | 0; i = h + 8 | 0; e = h + 4 | 0; g = h; c[k >> 2] = a; c[j >> 2] = b; c[i >> 2] = d; c[g >> 2] = rI(c[k >> 2] | 0, c[j >> 2] | 0) | 0; d = c[i >> 2] | 0; if (!(c[g >> 2] | 0)) { c[f >> 2] = d; k = c[f >> 2] | 0; l = h; return k | 0 } c[e >> 2] = d; do if (fP(c[g >> 2] | 0, 51563) | 0) { if (!(fP(c[g >> 2] | 0, 50589) | 0)) { c[e >> 2] = 1; break } if (!(fP(c[g >> 2] | 0, 48360) | 0)) { c[e >> 2] = 1; break } if (!(fP(c[g >> 2] | 0, 51435) | 0)) { c[e >> 2] = 0; break } if (!(fP(c[g >> 2] | 0, 50594) | 0)) { c[e >> 2] = 0; break } if (!(fP(c[g >> 2] | 0, 48364) | 0)) c[e >> 2] = 0 } else c[e >> 2] = 1; while (0); IQ(c[g >> 2] | 0); c[f >> 2] = c[e >> 2]; k = c[f >> 2] | 0; l = h; return k | 0 } function xI(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, m = 0, n = 0; k = l; l = l + 32 | 0; h = k + 24 | 0; n = k + 20 | 0; m = k + 16 | 0; f = k + 12 | 0; j = k + 8 | 0; g = k + 4 | 0; i = k; c[n >> 2] = b; c[m >> 2] = d; c[f >> 2] = e; c[i >> 2] = rI(c[n >> 2] | 0, c[m >> 2] | 0) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = c[f >> 2]; n = c[h >> 2] | 0; l = k; return n | 0 } c[j >> 2] = qQ(c[i >> 2] | 0, g, 0) | 0; if (c[g >> 2] | 0 ? a[c[g >> 2] >> 0] | 0 : 0) { IQ(c[i >> 2] | 0); c[h >> 2] = c[f >> 2]; n = c[h >> 2] | 0; l = k; return n | 0 } IQ(c[i >> 2] | 0); c[h >> 2] = c[j >> 2]; n = c[h >> 2] | 0; l = k; return n | 0 } function yI(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, m = 0, n = 0; k = l; l = l + 32 | 0; h = k + 24 | 0; n = k + 20 | 0; m = k + 16 | 0; f = k + 12 | 0; j = k + 8 | 0; g = k + 4 | 0; i = k; c[n >> 2] = b; c[m >> 2] = d; c[f >> 2] = e; c[i >> 2] = rI(c[n >> 2] | 0, c[m >> 2] | 0) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = c[f >> 2]; n = c[h >> 2] | 0; l = k; return n | 0 } c[j >> 2] = GQ(c[i >> 2] | 0, g, 0) | 0; if (c[g >> 2] | 0 ? a[c[g >> 2] >> 0] | 0 : 0) { IQ(c[i >> 2] | 0); c[h >> 2] = c[f >> 2]; n = c[h >> 2] | 0; l = k; return n | 0 } IQ(c[i >> 2] | 0); c[h >> 2] = c[j >> 2]; n = c[h >> 2] | 0; l = k; return n | 0 } function zI(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; e = f + 4 | 0; b = f; c[e >> 2] = a; c[b >> 2] = HQ(36) | 0; if (!(c[b >> 2] | 0)) { c[d >> 2] = 0; e = c[d >> 2] | 0; l = f; return e | 0 } else { c[c[b >> 2] >> 2] = c[e >> 2]; c[(c[b >> 2] | 0) + 4 >> 2] = 0; c[(c[b >> 2] | 0) + 8 >> 2] = 0; c[(c[b >> 2] | 0) + 12 >> 2] = 0; c[(c[b >> 2] | 0) + 16 >> 2] = 0; c[(c[b >> 2] | 0) + 20 >> 2] = 0; c[d >> 2] = c[b >> 2]; e = c[d >> 2] | 0; l = f; return e | 0 } return 0 } function AI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 16 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 20 >> 2] = c[g >> 2]; l = e; return } function BI(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 16 >> 2] | 0 } function CI(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if (c[(c[b >> 2] | 0) + 4 >> 2] | 0) { Pb[c[a + 4 >> 2] & 511](c[b >> 2] | 0); l = d; return } else { IQ(a); l = d; return } } function DI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; f = j + 12 | 0; i = j + 8 | 0; e = j + 4 | 0; g = j; c[f >> 2] = a; c[i >> 2] = b; c[e >> 2] = d; if (c[(c[f >> 2] | 0) + 8 >> 2] | 0) c[g >> 2] = Nb[c[(c[f >> 2] | 0) + 8 >> 2] & 63](c[f >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0) | 0; else c[g >> 2] = 0; if (c[g >> 2] | 0) { if ((c[(c[f >> 2] | 0) + 16 >> 2] | 0) >>> 0 > 0) { i = (c[f >> 2] | 0) + 16 | 0; c[i >> 2] = (c[i >> 2] | 0) - 1 } if (!(c[(c[f >> 2] | 0) + 16 >> 2] | 0)) { if ((c[(c[f >> 2] | 0) + 20 >> 2] | 0) >>> 0 > 0) c[(c[f >> 2] | 0) + 16 >> 2] = c[(c[f >> 2] | 0) + 20 >> 2]; c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } } c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } function EI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; if (!(c[(c[d >> 2] | 0) + 12 >> 2] | 0)) { l = f; return } Qb[c[(c[d >> 2] | 0) + 12 >> 2] & 255](c[d >> 2] | 0, c[e >> 2] | 0); l = f; return } function FI(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = zI(1) | 0; if (!(c[d >> 2] | 0)) { c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } else { c[(c[d >> 2] | 0) + 4 >> 2] = 248; c[(c[d >> 2] | 0) + 8 >> 2] = 47; c[(c[d >> 2] | 0) + 12 >> 2] = 168; c[(c[d >> 2] | 0) + 24 >> 2] = 0; c[(c[d >> 2] | 0) + 28 >> 2] = c[b >> 2]; c[e >> 2] = c[d >> 2]; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function GI(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; IQ(c[d >> 2] | 0); l = b; return } function HI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; i = f + 4 | 0; g = f; c[h >> 2] = a; c[i >> 2] = b; c[g >> 2] = d; c[g >> 2] = (c[g >> 2] | 0) + (c[i >> 2] << 4); if ((c[(c[h >> 2] | 0) + 28 >> 2] | 0) == (c[g >> 2] | 0)) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function II(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 32 | 0; e = d; f = d + 16 | 0; c[f >> 2] = a; c[d + 12 >> 2] = b; a = c[(c[f >> 2] | 0) + 16 >> 2] | 0; b = c[(c[f >> 2] | 0) + 20 >> 2] | 0; c[e >> 2] = c[(c[f >> 2] | 0) + 28 >> 2]; c[e + 4 >> 2] = a; c[e + 8 >> 2] = b; CQ(48367, e) | 0; l = d; return } function JI(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 4 | 0; i = j + 10 | 0; g = j + 8 | 0; f = j; b[i >> 1] = a; b[g >> 1] = d; c[f >> 2] = zI(2) | 0; if (!(c[f >> 2] | 0)) { c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } else { c[(c[f >> 2] | 0) + 4 >> 2] = 249; c[(c[f >> 2] | 0) + 8 >> 2] = 48; c[(c[f >> 2] | 0) + 12 >> 2] = 169; c[(c[f >> 2] | 0) + 24 >> 2] = e[i >> 1]; c[(c[f >> 2] | 0) + 28 >> 2] = e[g >> 1]; c[h >> 2] = c[f >> 2]; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function KI(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; IQ(c[d >> 2] | 0); l = b; return } function LI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; i = f + 4 | 0; g = f; c[h >> 2] = a; c[i >> 2] = b; c[g >> 2] = d; if ((c[(c[h >> 2] | 0) + 24 >> 2] | 0) == (c[i >> 2] | 0) ? (c[(c[h >> 2] | 0) + 28 >> 2] | 0) == (c[g >> 2] | 0) : 0) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } function MI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; d = l; l = l + 32 | 0; e = d; g = d + 20 | 0; c[g >> 2] = a; c[d + 16 >> 2] = b; f = c[(c[g >> 2] | 0) + 28 >> 2] | 0; a = c[(c[g >> 2] | 0) + 16 >> 2] | 0; b = c[(c[g >> 2] | 0) + 20 >> 2] | 0; c[e >> 2] = c[(c[g >> 2] | 0) + 24 >> 2]; c[e + 4 >> 2] = f; c[e + 8 >> 2] = a; c[e + 12 >> 2] = b; CQ(48389, e) | 0; l = d; return } function NI(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = zI(3) | 0; if (!(c[b >> 2] | 0)) { c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } else { c[(c[b >> 2] | 0) + 4 >> 2] = 250; c[(c[b >> 2] | 0) + 8 >> 2] = 49; c[(c[b >> 2] | 0) + 12 >> 2] = 170; d = gP(c[d >> 2] | 0) | 0; c[(c[b >> 2] | 0) + 32 >> 2] = d; c[e >> 2] = c[b >> 2]; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function OI(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; IQ(c[(c[d >> 2] | 0) + 32 >> 2] | 0); IQ(c[d >> 2] | 0); l = b; return } function PI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 288 | 0; e = f + 276 | 0; i = f + 272 | 0; g = f + 260 | 0; h = f; c[i >> 2] = a; c[f + 268 >> 2] = b; c[f + 264 >> 2] = d; eJ(h, c[(c[i >> 2] | 0) + 32 >> 2] | 0); b = (LJ(h, g) | 0) != 0; if (b & (c[g >> 2] | 0) != 0) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function QI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d; f = d + 8 | 0; c[f >> 2] = a; c[d + 4 >> 2] = b; c[e >> 2] = c[(c[f >> 2] | 0) + 32 >> 2]; CQ(48416, e) | 0; l = d; return } function RI(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 0; c[(c[d >> 2] | 0) + 4 >> 2] = 0; l = b; return } function SI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; e = h + 8 | 0; d = h + 4 | 0; g = h; c[e >> 2] = a; c[d >> 2] = b; c[g >> 2] = JQ(c[(c[e >> 2] | 0) + 4 >> 2] | 0, (c[c[e >> 2] >> 2] | 0) + 1 << 2) | 0; if (!(c[g >> 2] | 0)) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } else { c[(c[e >> 2] | 0) + 4 >> 2] = c[g >> 2]; c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[c[e >> 2] >> 2] << 2) >> 2] = c[d >> 2]; g = c[e >> 2] | 0; c[g >> 2] = (c[g >> 2] | 0) + 1; c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function TI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; if ((c[e >> 2] | 0) >>> 0 >= (c[c[d >> 2] >> 2] | 0) >>> 0) { l = f; return } CI(c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + (c[e >> 2] << 2) >> 2] | 0); c[e >> 2] = (c[e >> 2] | 0) + 1; while (1) { a = c[d >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= (c[c[d >> 2] >> 2] | 0) >>> 0) break; c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + ((c[e >> 2] | 0) - 1 << 2) >> 2] = c[(c[a + 4 >> 2] | 0) + (c[e >> 2] << 2) >> 2]; c[e >> 2] = (c[e >> 2] | 0) + 1 } c[a >> 2] = (c[a >> 2] | 0) - 1; l = f; return } function UI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 8 | 0; d = h + 4 | 0; f = h; c[e >> 2] = a; c[d >> 2] = b; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) { g = 6; break } if ((c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0) == (c[d >> 2] | 0)) break; c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((g | 0) == 6) { l = h; return } TI(c[e >> 2] | 0, c[f >> 2] | 0); l = h; return } function VI(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; c[d >> 2] = 0; while (1) { a = c[(c[b >> 2] | 0) + 4 >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= (c[c[b >> 2] >> 2] | 0) >>> 0) break; CI(c[a + (c[d >> 2] << 2) >> 2] | 0); c[d >> 2] = (c[d >> 2] | 0) + 1 } IQ(a); c[c[b >> 2] >> 2] = 0; c[(c[b >> 2] | 0) + 4 >> 2] = 0; l = e; return } function WI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h; d = h + 12 | 0; e = h + 8 | 0; f = h + 4 | 0; c[d >> 2] = a; c[e >> 2] = b; c[f >> 2] = 0; while (1) { a = c[e >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 >= (c[c[d >> 2] >> 2] | 0) >>> 0) break; c[g >> 2] = c[f >> 2]; kQ(a, 48425, g) | 0; EI(c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0, c[e >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } XP(a) | 0; l = h; return } function XI(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; g = j + 12 | 0; f = j + 8 | 0; e = j + 4 | 0; h = j; c[g >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[c[g >> 2] >> 2] | 0) >>> 0) { d = 6; break } if (DI(c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0) | 0) { d = 4; break } c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((d | 0) == 4) { c[i >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } else if ((d | 0) == 6) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function YI(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; g = j + 16 | 0; m = j + 12 | 0; k = j + 8 | 0; h = j + 4 | 0; f = j; c[g >> 2] = a; c[m >> 2] = b; c[k >> 2] = d; c[h >> 2] = e; c[f >> 2] = XI(c[g >> 2] | 0, c[m >> 2] | 0, c[k >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { c[i >> 2] = 0; m = c[i >> 2] | 0; l = j; return m | 0 } EI(c[f >> 2] | 0, c[h >> 2] | 0); if (!(BI(c[f >> 2] | 0) | 0)) UI(c[g >> 2] | 0, c[f >> 2] | 0); c[i >> 2] = 1; m = c[i >> 2] | 0; l = j; return m | 0 } function ZI(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; a = (qJ(c[d >> 2] | 0, 50834) | 0) != 0; b = c[d >> 2] | 0; if (a) { _I(b, c[e >> 2] | 0); l = f; return } a = (qJ(b, 50820) | 0) != 0; b = c[d >> 2] | 0; if (a) { $I(b, c[e >> 2] | 0); l = f; return } a = (qJ(b, 50906) | 0) != 0; b = c[d >> 2] | 0; if (a) { aJ(b, c[e >> 2] | 0); l = f; return } else { jJ(b, 48431); l = f; return } } function _I(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = a; c[d >> 2] = b; if (!(pJ(c[f >> 2] | 0) | 0)) { l = e; return } WI(c[d >> 2] | 0, c[7547] | 0); l = e; return } function $I(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; d = l; l = l + 16 | 0; g = d + 4 | 0; f = d; c[g >> 2] = a; c[f >> 2] = b; e = (qJ(c[g >> 2] | 0, 50904) | 0) != 0; b = c[g >> 2] | 0; a = c[f >> 2] | 0; if (e) { bJ(b, a); l = d; return } else { cJ(b, a); l = d; return } } function aJ(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; d = h; g = h + 8 | 0; c[f >> 2] = a; c[d >> 2] = b; if (oJ(c[f >> 2] | 0) | 0) { VI(c[d >> 2] | 0); l = h; return } while (1) { if (!(JJ(c[f >> 2] | 0, g) | 0)) break; TI(c[d >> 2] | 0, e[g >> 1] | 0) } pJ(c[f >> 2] | 0) | 0; l = h; return } function bJ(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 272 | 0; h = m + 8 | 0; g = m + 4 | 0; f = m; j = m + 14 | 0; k = m + 12 | 0; i = m + 16 | 0; c[h >> 2] = a; c[g >> 2] = d; b[j >> 1] = 1; b[k >> 1] = 0; a = (nJ(c[h >> 2] | 0, i, 256) | 0) != 0; d = c[h >> 2] | 0; if (!a) { jJ(d, 48485); l = m; return } JJ(d, j) | 0; JJ(c[h >> 2] | 0, k) | 0; if (!(pJ(c[h >> 2] | 0) | 0)) { l = m; return } if ((e[j >> 1] | 0 | 0) <= 0) { l = m; return } c[f >> 2] = NI(i) | 0; AI(c[f >> 2] | 0, e[j >> 1] | 0, e[k >> 1] | 0); EI(c[f >> 2] | 0, c[7547] | 0); SI(c[g >> 2] | 0, c[f >> 2] | 0) | 0; l = m; return } function cJ(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; i = o + 20 | 0; h = o + 16 | 0; j = o + 12 | 0; n = o + 8 | 0; f = o + 4 | 0; k = o + 26 | 0; m = o + 24 | 0; g = o; c[i >> 2] = a; c[h >> 2] = d; b[k >> 1] = 1; b[m >> 1] = 0; c[j >> 2] = 0; c[n >> 2] = 0; c[f >> 2] = 0; a = (LJ(c[i >> 2] | 0, f) | 0) != 0; d = c[i >> 2] | 0; if (!a) { jJ(d, 48450); l = o; return } do if (qJ(d, 50526) | 0) { c[n >> 2] = c[f >> 2] & 65535; if (LJ(c[i >> 2] | 0, f) | 0) { c[j >> 2] = 1; break } jJ(c[i >> 2] | 0, 48468); l = o; return } while (0); JJ(c[i >> 2] | 0, k) | 0; JJ(c[i >> 2] | 0, m) | 0; if (!(pJ(c[i >> 2] | 0) | 0)) { l = o; return } if ((e[k >> 1] | 0 | 0) <= 0) { l = o; return } if (c[j >> 2] | 0) c[g >> 2] = JI(c[n >> 2] & 65535, c[f >> 2] & 65535) | 0; else c[g >> 2] = FI(c[f >> 2] | 0) | 0; AI(c[g >> 2] | 0, e[k >> 1] | 0, e[m >> 1] | 0); EI(c[g >> 2] | 0, c[7547] | 0); SI(c[h >> 2] | 0, c[g >> 2] | 0) | 0; l = o; return } function dJ(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g; d = g + 4 | 0; a[d >> 0] = b; do if ((a[d >> 0] | 0) != 32 ? (a[d >> 0] | 0) != 9 : 0) { if ((a[d >> 0] | 0) != 10 ? (a[d >> 0] | 0) != 13 : 0) { c[e >> 2] = 0; break } c[e >> 2] = 1 } else f = 3; while (0); if ((f | 0) == 3) c[e >> 2] = 1; l = g; return c[e >> 2] | 0 } function eJ(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; e = i + 8 | 0; g = i + 4 | 0; f = i; c[e >> 2] = b; c[g >> 2] = d; c[c[e >> 2] >> 2] = 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= 256) break; a[(c[e >> 2] | 0) + 4 + (c[f >> 2] | 0) >> 0] = a[(c[g >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0; if (!(a[(c[g >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0)) { h = 6; break } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((h | 0) == 6) { l = i; return } a[(c[e >> 2] | 0) + 4 + 255 >> 0] = 0; l = i; return } function fJ(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return (c[b >> 2] | 0) + 4 + (c[c[b >> 2] >> 2] | 0) | 0 } function gJ(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 20 | 0; g = k + 12 | 0; j = k + 8 | 0; h = k + 4 | 0; f = k; c[k + 16 >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[f >> 2] = c[g >> 2]; if (!((a[c[f >> 2] >> 0] | 0) != 37 ? (a[c[f >> 2] >> 0] | 0) != 36 : 0)) c[f >> 2] = (c[f >> 2] | 0) + 1; if ((a[c[g >> 2] >> 0] | 0) != 36) { if (c[14675] | 0 ? (Nb[c[14675] & 63](c[14676] | 0, c[f >> 2] | 0, c[j >> 2] | 0) | 0) == 0 : 0) { c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } if ((a[c[g >> 2] >> 0] | 0) == 37) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } } c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[14677] | 0) >>> 0) { b = 15; break } if (!(fP(c[(c[14678] | 0) + (c[h >> 2] << 3) >> 2] | 0, c[f >> 2] | 0) | 0)) { b = 13; break } c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((b | 0) == 13) { c[c[j >> 2] >> 2] = c[(c[14678] | 0) + (c[h >> 2] << 3) + 4 >> 2]; c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } else if ((b | 0) == 15) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } return 0 } function hJ(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, m = 0, n = 0; n = l; l = l + 32 | 0; h = n + 24 | 0; f = n + 16 | 0; k = n + 12 | 0; g = n + 8 | 0; i = n + 4 | 0; j = n; c[n + 20 >> 2] = b; c[f >> 2] = d; c[k >> 2] = e; c[i >> 2] = c[f >> 2]; if (!((a[c[i >> 2] >> 0] | 0) != 37 ? (a[c[i >> 2] >> 0] | 0) != 36 : 0)) c[i >> 2] = (c[i >> 2] | 0) + 1; if ((a[c[f >> 2] >> 0] | 0) != 36) { if (c[14679] | 0 ? (Nb[c[14679] & 63](c[14680] | 0, c[i >> 2] | 0, c[k >> 2] | 0) | 0) == 0 : 0) { c[h >> 2] = 0; m = c[h >> 2] | 0; l = n; return m | 0 } if ((a[c[f >> 2] >> 0] | 0) == 37) { c[h >> 2] = 1; m = c[h >> 2] | 0; l = n; return m | 0 } } c[g >> 2] = 0; while (1) { b = c[14678] | 0; if ((c[g >> 2] | 0) >>> 0 >= (c[14677] | 0) >>> 0) break; if (!(fP(c[b + (c[g >> 2] << 3) >> 2] | 0, c[i >> 2] | 0) | 0)) { m = 13; break } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((m | 0) == 13) { c[(c[14678] | 0) + (c[g >> 2] << 3) + 4 >> 2] = c[k >> 2]; c[h >> 2] = 0; m = c[h >> 2] | 0; l = n; return m | 0 } c[j >> 2] = JQ(b, (c[14677] | 0) + 1 << 3) | 0; if (!(c[j >> 2] | 0)) { c[h >> 2] = 1; m = c[h >> 2] | 0; l = n; return m | 0 } c[g >> 2] = c[14677]; while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) break; if ((fP(c[(c[j >> 2] | 0) + ((c[g >> 2] | 0) - 1 << 3) >> 2] | 0, c[i >> 2] | 0) | 0) < 0) break; m = (c[j >> 2] | 0) + (c[g >> 2] << 3) | 0; e = (c[j >> 2] | 0) + ((c[g >> 2] | 0) - 1 << 3) | 0; c[m >> 2] = c[e >> 2]; c[m + 4 >> 2] = c[e + 4 >> 2]; c[g >> 2] = (c[g >> 2] | 0) - 1 } m = gP(c[i >> 2] | 0) | 0; c[(c[j >> 2] | 0) + (c[g >> 2] << 3) >> 2] = m; c[(c[j >> 2] | 0) + (c[g >> 2] << 3) + 4 >> 2] = c[k >> 2]; c[14678] = c[j >> 2]; c[14677] = (c[14677] | 0) + 1; c[h >> 2] = 0; m = c[h >> 2] | 0; l = n; return m | 0 } function iJ(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 12 | 0; i = j + 8 | 0; f = j + 4 | 0; g = j; c[j + 16 >> 2] = b; c[h >> 2] = d; c[i >> 2] = e; if ((a[c[h >> 2] >> 0] | 0) == 37) { l = j; return } if ((a[c[h >> 2] >> 0] | 0) == 36) c[h >> 2] = (c[h >> 2] | 0) + 1; c[c[i >> 2] >> 2] = 0; c[g >> 2] = 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[14677] | 0) >>> 0) break; e = (fP(c[(c[14678] | 0) + (c[f >> 2] << 3) >> 2] | 0, c[h >> 2] | 0) | 0) == 0; b = c[14678] | 0; if (e) { c[c[i >> 2] >> 2] = c[b + (c[f >> 2] << 3) + 4 >> 2]; IQ(c[(c[14678] | 0) + (c[f >> 2] << 3) >> 2] | 0) } else { e = b + (c[g >> 2] << 3) | 0; d = (c[14678] | 0) + (c[f >> 2] << 3) | 0; c[e >> 2] = c[d >> 2]; c[e + 4 >> 2] = c[d + 4 >> 2]; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } c[14677] = c[g >> 2]; l = j; return } function jJ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; d = l; l = l + 16 | 0; e = d; g = d + 12 | 0; f = d + 8 | 0; c[g >> 2] = a; c[f >> 2] = b; b = (c[g >> 2] | 0) + 4 + (c[c[g >> 2] >> 2] | 0) | 0; c[e >> 2] = c[f >> 2]; c[e + 4 >> 2] = b; OJ(48506, e); l = d; return } function kJ(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 8 | 0; g = h + 4 | 0; f = h; c[e >> 2] = b; c[f >> 2] = c[c[e >> 2] >> 2]; while (1) { if (a[(c[e >> 2] | 0) + 4 + (c[f >> 2] | 0) >> 0] | 0) b = (dJ(a[(c[e >> 2] | 0) + 4 + (c[f >> 2] | 0) >> 0] | 0) | 0) != 0; else b = 0; d = c[f >> 2] | 0; if (!b) break; c[f >> 2] = d + 1 } c[g >> 2] = d >>> 0 > (c[c[e >> 2] >> 2] | 0) >>> 0 & 1; c[c[e >> 2] >> 2] = c[f >> 2]; l = h; return c[g >> 2] | 0 } function lJ(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, m = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; g = m + 16 | 0; k = m + 12 | 0; f = m + 8 | 0; h = m + 4 | 0; i = m; c[g >> 2] = b; c[k >> 2] = d; c[f >> 2] = e; kJ(c[g >> 2] | 0) | 0; c[h >> 2] = c[c[g >> 2] >> 2]; c[i >> 2] = 0; if (((a[(c[g >> 2] | 0) + 4 + (c[c[g >> 2] >> 2] | 0) >> 0] | 0) + -36 | 0) >>> 0 < 2) { e = a[(c[g >> 2] | 0) + 4 + (c[c[g >> 2] >> 2] | 0) >> 0] | 0; d = c[k >> 2] | 0; c[k >> 2] = d + 1; a[d >> 0] = e; c[h >> 2] = (c[h >> 2] | 0) + 1; c[i >> 2] = (c[i >> 2] | 0) + 1 } while (1) { if (!(a[(c[g >> 2] | 0) + 4 + (c[h >> 2] | 0) >> 0] | 0)) { b = 7; break } if (!(mJ(a[(c[g >> 2] | 0) + 4 + (c[h >> 2] | 0) >> 0] | 0) | 0)) { b = 7; break } e = a[(c[g >> 2] | 0) + 4 + (c[h >> 2] | 0) >> 0] | 0; d = c[k >> 2] | 0; c[k >> 2] = d + 1; a[d >> 0] = e; c[h >> 2] = (c[h >> 2] | 0) + 1; c[i >> 2] = (c[i >> 2] | 0) + 1; if ((c[i >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) { b = 6; break } } if ((b | 0) == 6) { jJ(c[g >> 2] | 0, 48519); c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((b | 0) == 7) { a[c[k >> 2] >> 0] = 0; c[c[g >> 2] >> 2] = c[h >> 2]; c[j >> 2] = (c[i >> 2] | 0) >>> 0 > 0 & 1; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function mJ(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g; d = g + 4 | 0; a[d >> 0] = b; if ((a[d >> 0] | 0) >= 48 ? (a[d >> 0] | 0) <= 57 : 0) c[e >> 2] = 1; else f = 4; do if ((f | 0) == 4) { if ((a[d >> 0] | 0) >= 97 ? (a[d >> 0] | 0) <= 122 : 0) { c[e >> 2] = 1; break } if ((a[d >> 0] | 0) >= 65 ? (a[d >> 0] | 0) <= 90 : 0) { c[e >> 2] = 1; break } if ((a[d >> 0] | 0) == 95) { c[e >> 2] = 1; break } else { c[e >> 2] = 0; break } } while (0); l = g; return c[e >> 2] | 0 } function nJ(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, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; k = o + 24 | 0; f = o + 20 | 0; m = o + 16 | 0; h = o + 12 | 0; g = o + 8 | 0; i = o + 4 | 0; j = o; c[f >> 2] = b; c[m >> 2] = d; c[h >> 2] = e; kJ(c[f >> 2] | 0) | 0; c[g >> 2] = c[c[f >> 2] >> 2]; c[i >> 2] = 0; if ((a[(c[f >> 2] | 0) + 4 + (c[g >> 2] | 0) >> 0] | 0) == 34) { c[j >> 2] = 1; c[g >> 2] = (c[g >> 2] | 0) + 1 } else c[j >> 2] = 0; while (1) { if (!(a[(c[f >> 2] | 0) + 4 + (c[g >> 2] | 0) >> 0] | 0)) break; b = a[(c[f >> 2] | 0) + 4 + (c[g >> 2] | 0) >> 0] | 0; if (c[j >> 2] | 0) { if ((b << 24 >> 24 | 0) == 34) { n = 7; break } } else if (dJ(b) | 0) break; e = a[(c[f >> 2] | 0) + 4 + (c[g >> 2] | 0) >> 0] | 0; d = c[m >> 2] | 0; c[m >> 2] = d + 1; a[d >> 0] = e; c[g >> 2] = (c[g >> 2] | 0) + 1; c[i >> 2] = (c[i >> 2] | 0) + 1; if ((c[i >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) { n = 10; break } } if ((n | 0) == 7) c[g >> 2] = (c[g >> 2] | 0) + 1; else if ((n | 0) == 10) { jJ(c[f >> 2] | 0, 48539); c[k >> 2] = 0; n = c[k >> 2] | 0; l = o; return n | 0 } a[c[m >> 2] >> 0] = 0; c[c[f >> 2] >> 2] = c[g >> 2]; c[k >> 2] = (c[i >> 2] | 0) >>> 0 > 0 & 1; n = c[k >> 2] | 0; l = o; return n | 0 } function oJ(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; c[f >> 2] = b; kJ(c[f >> 2] | 0) | 0; if (!(a[(c[f >> 2] | 0) + 4 + (c[c[f >> 2] >> 2] | 0) >> 0] | 0)) { c[d >> 2] = 1; f = c[d >> 2] | 0; l = e; return f | 0 } else { c[d >> 2] = 0; f = c[d >> 2] | 0; l = e; return f | 0 } return 0 } function pJ(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; if (oJ(c[b >> 2] | 0) | 0) { c[d >> 2] = 1; d = c[d >> 2] | 0; l = e; return d | 0 } else { jJ(c[b >> 2] | 0, 48555); c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } return 0 } function qJ(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; e = i + 8 | 0; h = i + 4 | 0; f = i; c[e >> 2] = b; c[h >> 2] = d; kJ(c[e >> 2] | 0) | 0; c[f >> 2] = c[c[e >> 2] >> 2]; while (1) { if (!(a[c[h >> 2] >> 0] | 0)) break; if ((a[(c[e >> 2] | 0) + 4 + (c[f >> 2] | 0) >> 0] | 0) != (a[c[h >> 2] >> 0] | 0)) break; c[f >> 2] = (c[f >> 2] | 0) + 1; c[h >> 2] = (c[h >> 2] | 0) + 1 } if (a[c[h >> 2] >> 0] | 0) { c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[c[e >> 2] >> 2] = c[f >> 2]; c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function rJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; f = i + 8 | 0; g = i + 4 | 0; e = i; c[f >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; while (1) { if (!(sJ(c[f >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { d = 3; break } if (!(qJ(c[f >> 2] | 0, 50922) | 0)) { d = 5; break } } if ((d | 0) == 3) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } else if ((d | 0) == 5) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function sJ(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, m = 0, n = 0, o = 0, p = 0, q = 0; p = l; l = l + 288 | 0; k = p + 28 | 0; g = p + 24 | 0; o = p + 20 | 0; f = p + 16 | 0; h = p + 12 | 0; i = p + 8 | 0; j = p + 4 | 0; m = p + 32 | 0; n = p; c[g >> 2] = b; c[o >> 2] = d; c[f >> 2] = e; kJ(c[g >> 2] | 0) | 0; c[h >> 2] = c[c[g >> 2] >> 2]; if (lJ(c[g >> 2] | 0, m, 256) | 0) { c[i >> 2] = 0; while (1) { if ((a[m + (c[i >> 2] | 0) >> 0] | 0) != 37) break; c[i >> 2] = (c[i >> 2] | 0) + 1 } do if (!(qJ(c[g >> 2] | 0, 50737) | 0)) { if (qJ(c[g >> 2] | 0, 48568) | 0) { c[j >> 2] = 2; break } if (qJ(c[g >> 2] | 0, 48571) | 0) { c[j >> 2] = 3; break } if (qJ(c[g >> 2] | 0, 48574) | 0) { c[j >> 2] = 4; break } if (qJ(c[g >> 2] | 0, 48577) | 0) { c[j >> 2] = 5; break } if (qJ(c[g >> 2] | 0, 48580) | 0) { c[j >> 2] = 6; break } if (qJ(c[g >> 2] | 0, 48584) | 0) { c[j >> 2] = 7; break } if (qJ(c[g >> 2] | 0, 48588) | 0) { c[j >> 2] = 8; break } if (qJ(c[g >> 2] | 0, 48591) | 0) { c[j >> 2] = 9; break } if (qJ(c[g >> 2] | 0, 48594) | 0) { c[j >> 2] = 10; break } else { c[j >> 2] = 0; break } } else c[j >> 2] = 1; while (0); if (c[j >> 2] | 0) { q = (qJ(c[g >> 2] | 0, 50846) | 0) != 0; e = c[g >> 2] | 0; d = m + (c[i >> 2] | 0) | 0; b = c[o >> 2] | 0; if (q) { iJ(e, d, b); c[k >> 2] = 1; q = c[k >> 2] | 0; l = p; return q | 0 } if (gJ(e, d, b) | 0) c[c[o >> 2] >> 2] = 0; if (tJ(c[g >> 2] | 0, n, c[f >> 2] | 0) | 0) { a: do switch (c[j >> 2] | 0) { case 1: { c[c[o >> 2] >> 2] = c[n >> 2]; break } case 2: { q = c[o >> 2] | 0;c[q >> 2] = (c[q >> 2] | 0) + (c[n >> 2] | 0); break } case 3: { q = c[o >> 2] | 0;c[q >> 2] = (c[q >> 2] | 0) - (c[n >> 2] | 0); break } case 4: { q = c[o >> 2] | 0;c[q >> 2] = S(c[q >> 2] | 0, c[n >> 2] | 0) | 0; break } case 5: if (c[n >> 2] | 0) { q = c[o >> 2] | 0; c[q >> 2] = ((c[q >> 2] | 0) >>> 0) / ((c[n >> 2] | 0) >>> 0) | 0; break a } else { c[c[o >> 2] >> 2] = -1; break a } case 6: { q = c[o >> 2] | 0;c[q >> 2] = c[q >> 2] << c[n >> 2]; break } case 7: { q = c[o >> 2] | 0;c[q >> 2] = (c[q >> 2] | 0) >>> (c[n >> 2] | 0); break } case 8: { q = c[o >> 2] | 0;c[q >> 2] = c[q >> 2] | c[n >> 2]; break } case 9: { q = c[o >> 2] | 0;c[q >> 2] = c[q >> 2] & c[n >> 2]; break } case 10: { q = c[o >> 2] | 0;c[q >> 2] = c[q >> 2] ^ c[n >> 2]; break } default: c[c[o >> 2] >> 2] = c[n >> 2] } while (0); q = c[o >> 2] | 0;c[q >> 2] = c[q >> 2];hJ(c[g >> 2] | 0, m + (c[i >> 2] | 0) | 0, c[c[o >> 2] >> 2] | 0) | 0;c[k >> 2] = 1;q = c[k >> 2] | 0;l = p; return q | 0 } } } c[c[g >> 2] >> 2] = c[h >> 2]; c[k >> 2] = tJ(c[g >> 2] | 0, c[o >> 2] | 0, c[f >> 2] | 0) | 0; q = c[k >> 2] | 0; l = p; return q | 0 } function tJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; h = m + 24 | 0; f = m + 20 | 0; i = m + 16 | 0; e = m + 12 | 0; g = m + 8 | 0; j = m + 4 | 0; k = m; c[f >> 2] = a; c[i >> 2] = b; c[e >> 2] = d; c[g >> 2] = c[c[f >> 2] >> 2]; if (!(uJ(c[f >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0) | 0)) { c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } if (!(qJ(c[f >> 2] | 0, 50524) | 0)) { c[h >> 2] = 1; k = c[h >> 2] | 0; l = m; return k | 0 } if (!(uJ(c[f >> 2] | 0, j, c[e >> 2] | 0) | 0)) { c[c[f >> 2] >> 2] = c[g >> 2]; c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } if (!(qJ(c[f >> 2] | 0, 50526) | 0)) { c[c[f >> 2] >> 2] = c[g >> 2]; c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } if (!(uJ(c[f >> 2] | 0, k, c[e >> 2] | 0) | 0)) { c[c[f >> 2] >> 2] = c[g >> 2]; c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } else { c[c[i >> 2] >> 2] = c[c[i >> 2] >> 2] | 0 ? c[j >> 2] | 0 : c[k >> 2] | 0; c[h >> 2] = 1; k = c[h >> 2] | 0; l = m; return k | 0 } return 0 } function uJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(vJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } while (1) { if (!(qJ(c[i >> 2] | 0, 50528) | 0)) { d = 5; break } c[f >> 2] = 1; if (!(vJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 6; break } if ((c[f >> 2] | 0) != 1) continue; c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0 ? 1 : (c[h >> 2] | 0) != 0) & 1 } if ((d | 0) == 5) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 6) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function vJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(wJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } while (1) { if (!(qJ(c[i >> 2] | 0, 50531) | 0)) { d = 5; break } c[f >> 2] = 1; if (!(wJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 6; break } if ((c[f >> 2] | 0) != 1) continue; c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0 ? (c[h >> 2] | 0) != 0 : 0) & 1 } if ((d | 0) == 5) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 6) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function wJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(xJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } while (1) { if (yJ(c[i >> 2] | 0, 50528) | 0) { d = 4; break } if (!(qJ(c[i >> 2] | 0, 50534) | 0)) { d = 7; break } c[f >> 2] = 1; if (!(xJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 8; break } if ((c[f >> 2] | 0) != 1) continue; c[c[g >> 2] >> 2] = c[c[g >> 2] >> 2] | c[h >> 2] } if ((d | 0) == 4) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 7) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 8) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function xJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(zJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } while (1) { if (!(qJ(c[i >> 2] | 0, 50539) | 0)) { d = 5; break } c[f >> 2] = 1; if (!(zJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 6; break } if ((c[f >> 2] | 0) != 1) continue; c[c[g >> 2] >> 2] = c[c[g >> 2] >> 2] ^ c[h >> 2] } if ((d | 0) == 5) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 6) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function yJ(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; e = j + 12 | 0; i = j + 8 | 0; f = j + 4 | 0; h = j; c[e >> 2] = b; c[i >> 2] = d; c[h >> 2] = c[c[e >> 2] >> 2]; kJ(c[e >> 2] | 0) | 0; c[f >> 2] = c[c[e >> 2] >> 2]; while (1) { if (!(a[c[i >> 2] >> 0] | 0)) break; if ((a[(c[e >> 2] | 0) + 4 + (c[f >> 2] | 0) >> 0] | 0) != (a[c[i >> 2] >> 0] | 0)) break; c[f >> 2] = (c[f >> 2] | 0) + 1; c[i >> 2] = (c[i >> 2] | 0) + 1 } if (a[c[i >> 2] >> 0] | 0) { c[g >> 2] = 0; i = c[g >> 2] | 0; l = j; return i | 0 } else { c[c[e >> 2] >> 2] = c[h >> 2]; c[g >> 2] = 1; i = c[g >> 2] | 0; l = j; return i | 0 } return 0 } function zJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(AJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } while (1) { if (yJ(c[i >> 2] | 0, 50531) | 0) { d = 4; break } if (!(qJ(c[i >> 2] | 0, 50541) | 0)) { d = 7; break } c[f >> 2] = 1; if (!(AJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 8; break } if ((c[f >> 2] | 0) != 1) continue; c[c[g >> 2] >> 2] = c[c[g >> 2] >> 2] & c[h >> 2] } if ((d | 0) == 4) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 7) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 8) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function AJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(BJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } while (1) { if (qJ(c[i >> 2] | 0, 50543) | 0) c[f >> 2] = 1; else { if (!(qJ(c[i >> 2] | 0, 50546) | 0)) { d = 7; break } c[f >> 2] = 2 } if (!(BJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 9; break } if ((c[f >> 2] | 0) == 1) { c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) == (c[h >> 2] | 0) & 1; continue } if ((c[f >> 2] | 0) != 2) continue; c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) != (c[h >> 2] | 0) & 1 } if ((d | 0) == 7) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 9) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function BJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(CJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } a: while (1) { do if (qJ(c[i >> 2] | 0, 50549) | 0) c[f >> 2] = 1; else { if (qJ(c[i >> 2] | 0, 50900) | 0) { c[f >> 2] = 2; break } if (qJ(c[i >> 2] | 0, 50552) | 0) { c[f >> 2] = 3; break } if (!(qJ(c[i >> 2] | 0, 50555) | 0)) { d = 11; break a } c[f >> 2] = 4 } while (0); if (!(CJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 13; break } if ((c[f >> 2] | 0) == 1) { c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) >>> 0 <= (c[h >> 2] | 0) >>> 0 & 1; continue } if ((c[f >> 2] | 0) == 2) { c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) >>> 0 < (c[h >> 2] | 0) >>> 0 & 1; continue } if ((c[f >> 2] | 0) == 3) { c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0 & 1; continue } if ((c[f >> 2] | 0) != 4) continue; c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) >>> 0 > (c[h >> 2] | 0) >>> 0 & 1 } if ((d | 0) == 11) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 13) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function CJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(DJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } a: while (1) { do if (qJ(c[i >> 2] | 0, 48597) | 0) c[f >> 2] = 1; else { if (qJ(c[i >> 2] | 0, 48601) | 0) { c[f >> 2] = 2; break } if (qJ(c[i >> 2] | 0, 50557) | 0) { c[f >> 2] = 3; break } if (!(qJ(c[i >> 2] | 0, 50560) | 0)) { d = 11; break a } c[f >> 2] = 4 } while (0); if (!(DJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 13; break } c[h >> 2] = c[h >> 2] & 31; do if ((c[f >> 2] | 0) != 1) { if ((c[f >> 2] | 0) == 2) { c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) >>> (c[h >> 2] | 0) | c[c[g >> 2] >> 2] << 32 - (c[h >> 2] | 0); break } if ((c[f >> 2] | 0) == 3) { c[c[g >> 2] >> 2] = c[c[g >> 2] >> 2] << c[h >> 2]; break } if ((c[f >> 2] | 0) == 4) c[c[g >> 2] >> 2] = (c[c[g >> 2] >> 2] | 0) >>> (c[h >> 2] | 0) } else c[c[g >> 2] >> 2] = c[c[g >> 2] >> 2] << c[h >> 2] | (c[c[g >> 2] >> 2] | 0) >>> (32 - (c[h >> 2] | 0) | 0); while (0); b = c[g >> 2] | 0; c[b >> 2] = c[b >> 2] } if ((d | 0) == 11) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 13) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function DJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(EJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } while (1) { if (qJ(c[i >> 2] | 0, 50563) | 0) c[f >> 2] = 1; else { if (!(qJ(c[i >> 2] | 0, 50729) | 0)) { d = 7; break } c[f >> 2] = 2 } if (!(EJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 9; break } d = c[c[g >> 2] >> 2] | 0; a = c[h >> 2] | 0; if ((c[f >> 2] | 0) == 1) { c[c[g >> 2] >> 2] = d + a; continue } else { c[c[g >> 2] >> 2] = d - a; continue } } if ((d | 0) == 7) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 9) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function EJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[c[i >> 2] >> 2]; if (!(FJ(c[i >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0)) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } a: while (1) { do if (qJ(c[i >> 2] | 0, 50569) | 0) c[f >> 2] = 1; else { if (qJ(c[i >> 2] | 0, 50937) | 0) { c[f >> 2] = 2; break } if (!(qJ(c[i >> 2] | 0, 50571) | 0)) { d = 9; break a } c[f >> 2] = 3 } while (0); if (!(FJ(c[i >> 2] | 0, h, c[e >> 2] | 0) | 0)) { d = 11; break } if ((c[f >> 2] | 0) == 1) { b = S(c[c[g >> 2] >> 2] | 0, c[h >> 2] | 0) | 0; c[c[g >> 2] >> 2] = b; continue } a = (c[h >> 2] | 0) != 0; d = c[g >> 2] | 0; if ((c[f >> 2] | 0) == 2) if (a) { c[c[g >> 2] >> 2] = ((c[d >> 2] | 0) >>> 0) / ((c[h >> 2] | 0) >>> 0) | 0; continue } else { c[d >> 2] = -1; continue } else if (a) { c[c[g >> 2] >> 2] = ((c[d >> 2] | 0) >>> 0) % ((c[h >> 2] | 0) >>> 0) | 0; continue } else { c[d >> 2] = 0; continue } } if ((d | 0) == 9) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 11) { c[c[i >> 2] >> 2] = c[j >> 2]; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function FJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 20 | 0; f = k + 16 | 0; j = k + 12 | 0; e = k + 8 | 0; g = k + 4 | 0; h = k; c[f >> 2] = a; c[j >> 2] = b; c[e >> 2] = d; c[g >> 2] = c[c[f >> 2] >> 2]; do if (!(qJ(c[f >> 2] | 0, 50575) | 0)) { if (qJ(c[f >> 2] | 0, 50573) | 0) { c[h >> 2] = 2; break } if (qJ(c[f >> 2] | 0, 50563) | 0) { c[h >> 2] = 3; break } if (qJ(c[f >> 2] | 0, 50729) | 0) { c[h >> 2] = 4; break } else { c[h >> 2] = 0; break } } else c[h >> 2] = 1; while (0); if (!(GJ(c[f >> 2] | 0, c[j >> 2] | 0, c[e >> 2] | 0) | 0)) { c[c[f >> 2] >> 2] = c[g >> 2]; c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } do if ((c[h >> 2] | 0) != 1) { if ((c[h >> 2] | 0) == 2) { c[c[j >> 2] >> 2] = ~c[c[j >> 2] >> 2]; break } if ((c[h >> 2] | 0) != 3 & (c[h >> 2] | 0) == 4) c[c[j >> 2] >> 2] = 0 - (c[c[j >> 2] >> 2] | 0) } else c[c[j >> 2] >> 2] = ((c[c[j >> 2] >> 2] | 0) != 0 ^ 1) & 1; while (0); c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } function GJ(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, m = 0, n = 0; n = l; l = l + 288 | 0; m = n + 20 | 0; j = n + 16 | 0; h = n + 12 | 0; i = n + 8 | 0; k = n + 4 | 0; f = n + 24 | 0; g = n; c[j >> 2] = b; c[h >> 2] = d; c[i >> 2] = e; kJ(c[j >> 2] | 0) | 0; c[k >> 2] = c[c[j >> 2] >> 2]; do if (lJ(c[j >> 2] | 0, f, 256) | 0) { if ((a[f >> 0] | 0) != 37 ? (a[f >> 0] | 0) != 36 : 0) { c[g >> 2] = c[c[j >> 2] >> 2]; c[c[j >> 2] >> 2] = c[k >> 2]; if (HJ(c[j >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0 ? (c[c[j >> 2] >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0 : 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } c[c[j >> 2] >> 2] = c[g >> 2] } if (gJ(c[j >> 2] | 0, f, c[h >> 2] | 0) | 0) { c[c[j >> 2] >> 2] = c[k >> 2]; break } c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } while (0); d = (qJ(c[j >> 2] | 0, 50577) | 0) != 0; f = c[j >> 2] | 0; b = c[h >> 2] | 0; e = c[i >> 2] | 0; if (!d) if (HJ(f, b, e) | 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } else { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } if (rJ(f, b, e) | 0 ? qJ(c[j >> 2] | 0, 50579) | 0 : 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } c[c[j >> 2] >> 2] = c[k >> 2]; c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } function HJ(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 32 | 0; m = p + 28 | 0; g = p + 24 | 0; n = p + 20 | 0; f = p + 16 | 0; j = p + 12 | 0; h = p + 8 | 0; k = p + 4 | 0; i = p; c[g >> 2] = b; c[n >> 2] = d; c[f >> 2] = e; kJ(c[g >> 2] | 0) | 0; c[j >> 2] = c[c[g >> 2] >> 2]; c[k >> 2] = 0; c[h >> 2] = 0; a: while (1) { if (!(a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0)) break; if ((a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) >= 48 ? (a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) <= 57 : 0) c[i >> 2] = (a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) - 48; else o = 6; do if ((o | 0) == 6) { o = 0; if ((a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) >= 97 ? (a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) <= 102 : 0) { c[i >> 2] = (a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) - 97 + 10; break } if ((a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) < 65) break a; if ((a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) > 70) break a; c[i >> 2] = (a[(c[g >> 2] | 0) + 4 + (c[j >> 2] | 0) >> 0] | 0) - 65 + 10 } while (0); if ((c[i >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) break; d = S(c[f >> 2] | 0, c[k >> 2] | 0) | 0; c[k >> 2] = d + (c[i >> 2] | 0); c[h >> 2] = (c[h >> 2] | 0) + 1; c[j >> 2] = (c[j >> 2] | 0) + 1 } if (!(c[h >> 2] | 0)) { c[m >> 2] = 0; o = c[m >> 2] | 0; l = p; return o | 0 } else { c[c[g >> 2] >> 2] = c[j >> 2]; c[c[n >> 2] >> 2] = c[k >> 2]; c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } return 0 } function IJ(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 32 | 0; f = i + 16 | 0; k = i + 12 | 0; h = i + 8 | 0; j = i + 4 | 0; g = i; c[k >> 2] = a; c[h >> 2] = d; c[j >> 2] = e; if (rJ(c[k >> 2] | 0, g, c[j >> 2] | 0) | 0) { b[c[h >> 2] >> 1] = c[g >> 2]; c[f >> 2] = 1; k = c[f >> 2] | 0; l = i; return k | 0 } else { c[f >> 2] = 0; k = c[f >> 2] | 0; l = i; return k | 0 } return 0 } function JJ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; b = IJ(c[f >> 2] | 0, c[e >> 2] | 0, 16) | 0; l = d; return b | 0 } function KJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; h = e + 8 | 0; g = e + 4 | 0; f = e; c[h >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; b = rJ(c[h >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0) | 0; l = e; return b | 0 } function LJ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; b = KJ(c[f >> 2] | 0, c[e >> 2] | 0, 16) | 0; l = d; return b | 0 } function MJ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; h = e + 4 | 0; f = e; c[g >> 2] = a; c[h >> 2] = b; c[f >> 2] = d; c[14676] = c[g >> 2]; c[14675] = c[h >> 2]; c[14680] = c[g >> 2]; c[14679] = c[f >> 2]; l = e; return } function NJ(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[14683] | 0)) c[14683] = c[7547]; PP(c[b >> 2] | 0, c[14683] | 0) | 0; XP(c[14683] | 0) | 0; if (!(c[14681] | 0)) { l = d; return } PP(c[b >> 2] | 0, c[14681] | 0) | 0; XP(c[14681] | 0) | 0; l = d; return } function OJ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 32 | 0; d = f + 16 | 0; e = f; c[d >> 2] = a; if (!(c[14683] | 0)) c[14683] = c[7547]; c[e >> 2] = b; kP(c[14683] | 0, c[d >> 2] | 0, e) | 0; XP(c[14683] | 0) | 0; if (!(c[14681] | 0)) { l = f; return } kP(c[14681] | 0, c[d >> 2] | 0, e) | 0; XP(c[14681] | 0) | 0; l = f; return } function PJ(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 8 | 0; b = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = cP(c[f >> 2] | 0) | 0; NJ(50729); NJ(c[f >> 2] | 0); c[b >> 2] = (c[e >> 2] | 0) + 1; while (1) { if ((c[b >> 2] | 0) >>> 0 >= 78) break; NJ(50729); c[b >> 2] = (c[b >> 2] | 0) + 1 } NJ(50466); l = d; return } function QJ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; c[14682] = c[f >> 2]; c[14683] = c[e >> 2]; l = d; return } function RJ(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 8 | 0; i = m; g = m + 24 | 0; h = m + 20 | 0; f = m + 16 | 0; k = m + 12 | 0; c[g >> 2] = a; c[h >> 2] = d; c[f >> 2] = e; SJ(c[f >> 2] | 0); c[k >> 2] = TJ(c[f >> 2] | 0) | 0; if (c[g >> 2] | 0) { c[i >> 2] = c[g >> 2]; CQ(48605, i) | 0 } if (c[h >> 2] | 0) { c[j >> 2] = c[h >> 2]; CQ(48610, j) | 0 } while (1) { if ((b[c[f >> 2] >> 1] | 0) < 0) break; UJ(c[f >> 2] | 0, (c[k >> 2] | 0) + 2 | 0); c[f >> 2] = (c[f >> 2] | 0) + 16 } l = m; return } function SJ(a) { a = a | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; g = i + 24 | 0; e = i + 20 | 0; f = i + 16 | 0; h = i; c[g >> 2] = a; if ((b[c[g >> 2] >> 1] | 0) < 0) { l = i; return } c[e >> 2] = 1; while (1) { if ((b[(c[g >> 2] | 0) + (c[e >> 2] << 4) >> 1] | 0) < 0) break; d = (WJ((c[g >> 2] | 0) + (c[e >> 2] << 4) | 0, (c[g >> 2] | 0) + ((c[e >> 2] | 0) - 1 << 4) | 0) | 0) >= 0; a = c[e >> 2] | 0; if (d) { c[e >> 2] = a + 1; continue } c[f >> 2] = a - 1; d = (c[g >> 2] | 0) + (c[e >> 2] << 4) | 0; c[h >> 2] = c[d >> 2]; c[h + 4 >> 2] = c[d + 4 >> 2]; c[h + 8 >> 2] = c[d + 8 >> 2]; c[h + 12 >> 2] = c[d + 12 >> 2]; d = (c[g >> 2] | 0) + (c[e >> 2] << 4) | 0; a = (c[g >> 2] | 0) + (c[f >> 2] << 4) | 0; c[d >> 2] = c[a >> 2]; c[d + 4 >> 2] = c[a + 4 >> 2]; c[d + 8 >> 2] = c[a + 8 >> 2]; c[d + 12 >> 2] = c[a + 12 >> 2]; while (1) { if ((c[f >> 2] | 0) >>> 0 > 0) a = (WJ(h, (c[g >> 2] | 0) + ((c[f >> 2] | 0) - 1 << 4) | 0) | 0) < 0; else a = 0; d = (c[g >> 2] | 0) + (c[f >> 2] << 4) | 0; if (!a) break; a = (c[g >> 2] | 0) + ((c[f >> 2] | 0) - 1 << 4) | 0; c[d >> 2] = c[a >> 2]; c[d + 4 >> 2] = c[a + 4 >> 2]; c[d + 8 >> 2] = c[a + 8 >> 2]; c[d + 12 >> 2] = c[a + 12 >> 2]; c[f >> 2] = (c[f >> 2] | 0) - 1 } c[d >> 2] = c[h >> 2]; c[d + 4 >> 2] = c[h + 4 >> 2]; c[d + 8 >> 2] = c[h + 8 >> 2]; c[d + 12 >> 2] = c[h + 12 >> 2]; c[e >> 2] = (c[e >> 2] | 0) + 1 } l = i; return } function TJ(a) { a = a | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; d = h + 8 | 0; e = h + 4 | 0; g = h; c[f >> 2] = a; c[g >> 2] = 0; c[d >> 2] = 0; while (1) { if ((b[(c[f >> 2] | 0) + (c[d >> 2] << 4) >> 1] | 0) < 0) break; c[e >> 2] = VJ((c[f >> 2] | 0) + (c[d >> 2] << 4) | 0) | 0; if ((c[e >> 2] | 0) >>> 0 > (c[g >> 2] | 0) >>> 0) c[g >> 2] = c[e >> 2]; c[d >> 2] = (c[d >> 2] | 0) + 1 } l = h; return c[g >> 2] | 0 } function UJ(a, d) { a = a | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 64 | 0; i = o + 40 | 0; m = o + 32 | 0; k = o + 24 | 0; j = o + 16 | 0; h = o + 8 | 0; g = o; f = o + 52 | 0; n = o + 48 | 0; e = o + 44 | 0; c[f >> 2] = a; c[n >> 2] = d; c[e >> 2] = 0; if ((b[c[f >> 2] >> 1] | 0) <= 255) { c[g >> 2] = b[c[f >> 2] >> 1]; CQ(48614, g) | 0; c[e >> 2] = (c[e >> 2] | 0) + 2; if (c[(c[f >> 2] | 0) + 4 >> 2] | 0) { CQ(48620, h) | 0; c[e >> 2] = (c[e >> 2] | 0) + 2 } } else CQ(48623, j) | 0; if (c[(c[f >> 2] | 0) + 4 >> 2] | 0) { c[k >> 2] = c[(c[f >> 2] | 0) + 4 >> 2]; CQ(48626, k) | 0; d = 2 + (cP(c[(c[f >> 2] | 0) + 4 >> 2] | 0) | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + d } if (c[(c[f >> 2] | 0) + 8 >> 2] | 0) { c[m >> 2] = c[(c[f >> 2] | 0) + 8 >> 2]; CQ(48631, m) | 0; d = 1 + (cP(c[(c[f >> 2] | 0) + 8 >> 2] | 0) | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + d } while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) break; uQ(32, c[7547] | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } c[i >> 2] = c[(c[f >> 2] | 0) + 12 >> 2]; CQ(48610, i) | 0; l = o; return } function VJ(a) { a = a | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; if (!(c[(c[e >> 2] | 0) + 12 >> 2] | 0)) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } c[d >> 2] = 0; if ((b[c[e >> 2] >> 1] | 0) <= 255 ? (c[d >> 2] = (c[d >> 2] | 0) + 2, c[(c[e >> 2] | 0) + 4 >> 2] | 0) : 0) c[d >> 2] = (c[d >> 2] | 0) + 2; if (c[(c[e >> 2] | 0) + 4 >> 2] | 0) { a = 2 + (cP(c[(c[e >> 2] | 0) + 4 >> 2] | 0) | 0) | 0; c[d >> 2] = (c[d >> 2] | 0) + a } if (c[(c[e >> 2] | 0) + 8 >> 2] | 0) { e = 1 + (cP(c[(c[e >> 2] | 0) + 8 >> 2] | 0) | 0) | 0; c[d >> 2] = (c[d >> 2] | 0) + e } c[f >> 2] = c[d >> 2]; f = c[f >> 2] | 0; l = g; return f | 0 } function WJ(a, d) { a = a | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; g = j + 12 | 0; h = j + 8 | 0; e = j + 4 | 0; f = j; c[g >> 2] = a; c[h >> 2] = d; a = b[c[g >> 2] >> 1] | 0; if ((b[c[g >> 2] >> 1] | 0) <= 255) a = oQ(a) | 0; c[e >> 2] = a; a = b[c[h >> 2] >> 1] | 0; if ((b[c[h >> 2] >> 1] | 0) <= 255) a = oQ(a) | 0; c[f >> 2] = a; if ((c[e >> 2] | 0) < (c[f >> 2] | 0)) { c[i >> 2] = -1; i = c[i >> 2] | 0; l = j; return i | 0 } if ((c[e >> 2] | 0) > (c[f >> 2] | 0)) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } if ((b[c[g >> 2] >> 1] | 0) < (b[c[h >> 2] >> 1] | 0)) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } if ((b[c[g >> 2] >> 1] | 0) > (b[c[h >> 2] >> 1] | 0)) { c[i >> 2] = -1; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function XJ(d, f, g, h) { d = d | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 64 | 0; r = u + 24 | 0; t = u + 16 | 0; s = u + 8 | 0; q = u; p = u + 52 | 0; j = u + 48 | 0; k = u + 44 | 0; n = u + 40 | 0; m = u + 36 | 0; o = u + 32 | 0; c[j >> 2] = d; c[k >> 2] = f; c[n >> 2] = g; c[m >> 2] = h; if ((c[j >> 2] | 0) == 0 & (c[k >> 2] | 0) == 0) { c[6844] = -1; c[p >> 2] = 0; t = c[p >> 2] | 0; l = u; return t | 0 } if ((c[6844] | 0) < 0) { c[14684] = 0; c[6844] = 0; c[6845] = 1; c[14685] = 0 } if ((c[14684] | 0) != 0 | (c[m >> 2] | 0) == 0) if ((c[6845] | 0) >= (c[j >> 2] | 0)) { c[p >> 2] = -1; t = c[p >> 2] | 0; l = u; return t | 0 } else { c[6844] = c[6845]; c[6845] = (c[6845] | 0) + 1; c[c[n >> 2] >> 2] = (c[k >> 2] | 0) + (c[6844] << 2); c[p >> 2] = 0; t = c[p >> 2] | 0; l = u; return t | 0 } if (!((c[14685] | 0) != 0 ? (a[c[14685] >> 0] | 0) != 0 : 0)) i = 11; do if ((i | 0) == 11) { if ((c[6845] | 0) >= (c[j >> 2] | 0)) { c[p >> 2] = -1; t = c[p >> 2] | 0; l = u; return t | 0 } c[6844] = c[6845]; c[6845] = (c[6845] | 0) + 1; c[14685] = c[(c[k >> 2] | 0) + (c[6844] << 2) >> 2]; if ((a[c[14685] >> 0] | 0) == 45 ? a[(c[14685] | 0) + 1 >> 0] | 0 : 0) { d = c[14685] | 0; if ((a[(c[14685] | 0) + 1 >> 0] | 0) != 45) { c[14685] = d + 1; break } if (!(a[d + 2 >> 0] | 0)) { c[14684] = 1; if ((c[6845] | 0) >= (c[j >> 2] | 0)) { c[p >> 2] = -1; t = c[p >> 2] | 0; l = u; return t | 0 } else { c[6844] = c[6845]; c[6845] = (c[6845] | 0) + 1; c[c[n >> 2] >> 2] = (c[k >> 2] | 0) + (c[6844] << 2); c[p >> 2] = 0; t = c[p >> 2] | 0; l = u; return t | 0 } } c[o >> 2] = YJ(c[m >> 2] | 0, (c[14685] | 0) + 2 | 0) | 0; if (!(c[o >> 2] | 0)) { t = c[7422] | 0; s = c[14685] | 0; c[q >> 2] = c[c[k >> 2] >> 2]; c[q + 4 >> 2] = s; kQ(t, 48635, q) | 0; c[p >> 2] = -2; t = c[p >> 2] | 0; l = u; return t | 0 } if (((c[6845] | 0) + (e[(c[o >> 2] | 0) + 2 >> 1] | 0) | 0) > (c[j >> 2] | 0)) { t = c[7422] | 0; r = c[14685] | 0; c[s >> 2] = c[c[k >> 2] >> 2]; c[s + 4 >> 2] = r; kQ(t, 48660, s) | 0; c[p >> 2] = -3; t = c[p >> 2] | 0; l = u; return t | 0 } else { c[c[n >> 2] >> 2] = (c[k >> 2] | 0) + (c[6845] << 2); c[6845] = (c[6845] | 0) + (e[(c[o >> 2] | 0) + 2 >> 1] | 0); c[14685] = 0; c[p >> 2] = b[c[o >> 2] >> 1]; t = c[p >> 2] | 0; l = u; return t | 0 } } c[c[n >> 2] >> 2] = (c[k >> 2] | 0) + (c[6844] << 2); c[14685] = 0; c[p >> 2] = 0; t = c[p >> 2] | 0; l = u; return t | 0 } while (0); c[o >> 2] = ZJ(c[m >> 2] | 0, a[c[14685] >> 0] | 0) | 0; if (!(c[o >> 2] | 0)) { s = c[7422] | 0; r = a[c[14685] >> 0] | 0; c[t >> 2] = c[c[k >> 2] >> 2]; c[t + 4 >> 2] = r; kQ(s, 48694, t) | 0; c[p >> 2] = -2; t = c[p >> 2] | 0; l = u; return t | 0 } if (((c[6845] | 0) + (e[(c[o >> 2] | 0) + 2 >> 1] | 0) | 0) > (c[j >> 2] | 0)) { t = c[7422] | 0; s = a[c[14685] >> 0] | 0; c[r >> 2] = c[c[k >> 2] >> 2]; c[r + 4 >> 2] = s; kQ(t, 48720, r) | 0; c[p >> 2] = -3; t = c[p >> 2] | 0; l = u; return t | 0 } else { c[c[n >> 2] >> 2] = (c[k >> 2] | 0) + (c[6845] << 2); c[6845] = (c[6845] | 0) + (e[(c[o >> 2] | 0) + 2 >> 1] | 0); c[14685] = (c[14685] | 0) + 1; c[p >> 2] = b[c[o >> 2] >> 1]; t = c[p >> 2] | 0; l = u; return t | 0 } return 0 } function YJ(a, d) { a = a | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = a; c[e >> 2] = d; while (1) { if ((b[c[f >> 2] >> 1] | 0) < 0) { d = 6; break } d = (fP(c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0) | 0) == 0; a = c[f >> 2] | 0; if (d) { d = 4; break } c[f >> 2] = a + 16 } if ((d | 0) == 4) { c[g >> 2] = a; g = c[g >> 2] | 0; l = h; return g | 0 } else if ((d | 0) == 6) { c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function ZJ(a, d) { a = a | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = a; c[e >> 2] = d; while (1) { if ((b[c[f >> 2] >> 1] | 0) < 0) { d = 6; break } a = c[f >> 2] | 0; if ((b[c[f >> 2] >> 1] | 0) == (c[e >> 2] | 0)) { d = 4; break } c[f >> 2] = a + 16 } if ((d | 0) == 4) { c[g >> 2] = a; g = c[g >> 2] | 0; l = h; return g | 0 } else if ((d | 0) == 6) { c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function _J(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 64 | 0; o = r + 32 | 0; i = r + 28 | 0; p = r + 24 | 0; j = r + 20 | 0; k = r + 16 | 0; g = r + 12 | 0; f = r + 40 | 0; h = r + 8 | 0; n = r + 4 | 0; m = r; c[i >> 2] = b; c[p >> 2] = d; c[j >> 2] = e; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= 16) break; if (!(a[(c[p >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0)) break; if ((a[(c[p >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0) == 58) { q = 5; break } a[f + (c[k >> 2] | 0) >> 0] = a[(c[p >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0; c[k >> 2] = (c[k >> 2] | 0) + 1 } if ((q | 0) == 5) a[f + (c[k >> 2] | 0) >> 0] = 0; if (!((c[k >> 2] | 0) >>> 0 >= 16 | (c[k >> 2] | 0) == 0) ? a[(c[p >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0 : 0) { c[g >> 2] = qQ(f, 0, 0) | 0; c[p >> 2] = (c[p >> 2] | 0) + (c[k >> 2] | 0) + 1; c[n >> 2] = _K(c[p >> 2] | 0) | 0; c[h >> 2] = $y(c[n >> 2] | 0, 0, 0, 0) | 0; q = (c[h >> 2] | 0) == 0; IQ(c[n >> 2] | 0); if (q) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } Ky(c[h >> 2] | 0, c[g >> 2] | 0); if (c[j >> 2] | 0 ? (c[m >> 2] = fz(c[i >> 2] | 0, c[g >> 2] | 0) | 0, c[m >> 2] | 0) : 0) { ez(c[i >> 2] | 0, c[m >> 2] | 0) | 0; Jy(c[m >> 2] | 0) } if (dz(c[i >> 2] | 0, c[h >> 2] | 0) | 0) { Jy(c[h >> 2] | 0); c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } else { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } } c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } function $J(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, m = 0; m = l; l = l + 48 | 0; g = m + 8 | 0; k = m; j = m + 36 | 0; e = m + 32 | 0; i = m + 28 | 0; d = m + 24 | 0; f = m + 20 | 0; h = m + 16 | 0; c[e >> 2] = a; c[i >> 2] = b; c[f >> 2] = 0; while (1) { a = XL(c[e >> 2] | 0, c[f >> 2] | 0, 48755) | 0; c[f >> 2] = a; if (!a) { b = 10; break } c[h >> 2] = CM(c[f >> 2] | 0) | 0; a = c[i >> 2] | 0; if (!(c[h >> 2] | 0)) { b = 4; break } c[d >> 2] = Oz(a, c[h >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) c[d >> 2] = nN(c[i >> 2] | 0, c[h >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { b = 8; break } Oy(c[d >> 2] | 0, 0); c[i >> 2] = c[d >> 2]; b = Sy(c[i >> 2] | 0) | 0; a = c[h >> 2] | 0; c[g >> 2] = b; c[g + 4 >> 2] = a; FK(2, 48759, 48800, g) } if ((b | 0) == 4) { Jy(a); c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((b | 0) == 8) { g = Sy(c[i >> 2] | 0) | 0; h = c[h >> 2] | 0; c[k >> 2] = g; c[k + 4 >> 2] = h; FK(0, 48759, 48765, k); Jy(c[i >> 2] | 0); c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((b | 0) == 10) { c[j >> 2] = c[i >> 2]; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function aK(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, 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 = l; l = l + 112 | 0; w = y + 40 | 0; x = y + 8 | 0; v = y; p = y + 108 | 0; s = y + 104 | 0; o = y + 100 | 0; f = y + 96 | 0; u = y + 92 | 0; h = y + 88 | 0; e = y + 84 | 0; d = y + 80 | 0; i = y + 76 | 0; r = y + 72 | 0; j = y + 68 | 0; k = y + 64 | 0; q = y + 60 | 0; m = y + 56 | 0; t = y + 52 | 0; g = y + 48 | 0; n = y + 44 | 0; c[s >> 2] = a; c[o >> 2] = b; hM(c[s >> 2] | 0, 48827, e, 0) | 0; kM(c[s >> 2] | 0, 48833, t, 49806) | 0; gM(c[s >> 2] | 0, 48838, k, 0) | 0; gM(c[s >> 2] | 0, 50906, d, 0) | 0; gM(c[s >> 2] | 0, 50828, i, 0) | 0; gM(c[s >> 2] | 0, 50820, r, 0) | 0; do if (gM(c[s >> 2] | 0, 48845, j, 0) | 0) { if (!(gM(c[s >> 2] | 0, 49201, j, 0) | 0)) { c[j >> 2] = c[j >> 2] & -512; break } if (!(gM(c[s >> 2] | 0, 49195, j, 0) | 0)) { c[j >> 2] = c[j >> 2] << 1; break } if (!(gM(c[s >> 2] | 0, 49189, j, 0) | 0)) { c[j >> 2] = c[j >> 2] << 11; break } if (!(gM(c[s >> 2] | 0, 48852, j, 0) | 0)) { c[j >> 2] = c[j >> 2] << 21; break } else { c[j >> 2] = 0; break } } while (0); jM(c[s >> 2] | 0, 48858, q, 0) | 0; jM(c[s >> 2] | 0, 48867, m, 0) | 0; c[u >> 2] = 0; c[f >> 2] = 0; c[n >> 2] = 0; while (1) { a = XL(c[s >> 2] | 0, c[u >> 2] | 0, 49843) | 0; c[u >> 2] = a; if (!a) break; c[g >> 2] = CM(c[u >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) continue; IQ(c[n >> 2] | 0); c[n >> 2] = _K(c[g >> 2] | 0) | 0; if (!(c[n >> 2] | 0)) continue; c[h >> 2] = dQ(c[n >> 2] | 0, 50621) | 0; if (!(c[h >> 2] | 0)) continue; UP(c[h >> 2] | 0) | 0; do if (!(fP(c[t >> 2] | 0, 49185) | 0)) c[f >> 2] = JN(c[n >> 2] | 0, c[j >> 2] | 0, c[d >> 2] | 0, c[i >> 2] | 0, c[r >> 2] | 0, c[q >> 2] | 0) | 0; else { if (!(fP(c[t >> 2] | 0, 48876) | 0)) { c[f >> 2] = bA(c[n >> 2] | 0, c[k >> 2] | 0, 0, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48882) | 0)) { c[f >> 2] = mz(c[n >> 2] | 0, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 51719) | 0)) { c[f >> 2] = vz(c[n >> 2] | 0, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48889) | 0)) { c[f >> 2] = Nz(c[n >> 2] | 0, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48893) | 0)) { c[f >> 2] = bK(c[s >> 2] | 0, c[d >> 2] | 0, c[i >> 2] | 0, c[r >> 2] | 0, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48903) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 1, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48911) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 2, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48915) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 3, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48920) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 4, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48930) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 4, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48934) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 7, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48939) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 0, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48949) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 12, c[q >> 2] | 0) | 0; break } if (!(fP(c[t >> 2] | 0, 48953) | 0)) { c[f >> 2] = sy(c[n >> 2] | 0, 19, c[q >> 2] | 0) | 0; break } if (fP(c[t >> 2] | 0, 49806) | 0) break; c[f >> 2] = $y(c[n >> 2] | 0, c[k >> 2] | 0, 0, c[q >> 2] | 0) | 0 } while (0); if (c[f >> 2] | 0) break } if (!(c[f >> 2] | 0)) { c[c[o >> 2] >> 2] = 0; IQ(c[n >> 2] | 0); if (!(c[m >> 2] | 0)) { c[v >> 2] = c[e >> 2]; DK(0, 48962, v); c[p >> 2] = 1; x = c[p >> 2] | 0; l = y; return x | 0 } else { c[p >> 2] = 0; x = c[p >> 2] | 0; l = y; return x | 0 } } Ky(c[f >> 2] | 0, c[e >> 2] | 0); if ((c[d >> 2] | 0) != 0 | (c[i >> 2] | 0) != 0 | (c[r >> 2] | 0) != 0) { u = c[f >> 2] | 0; v = Ty(c[f >> 2] | 0) | 0; Qy(u, v, c[d >> 2] | 0, c[i >> 2] | 0, c[r >> 2] | 0) | 0 } k = c[t >> 2] | 0; b = c[(c[f >> 2] | 0) + 28 >> 2] | 0; r = c[(c[f >> 2] | 0) + 32 >> 2] | 0; a = c[(c[f >> 2] | 0) + 36 >> 2] | 0; t = c[(c[f >> 2] | 0) + 40 >> 2] | 0; u = c[q >> 2] | 0 ? 48995 : 48998; v = c[n >> 2] | 0 ? c[n >> 2] | 0 : 49001; c[x >> 2] = c[e >> 2]; c[x + 4 >> 2] = k; c[x + 8 >> 2] = b; c[x + 12 >> 2] = r; c[x + 16 >> 2] = a; c[x + 20 >> 2] = t; c[x + 24 >> 2] = u; c[x + 28 >> 2] = v; FK(2, 48759, 49004, x); IQ(c[n >> 2] | 0); cK(c[s >> 2] | 0, c[f >> 2] | 0); c[f >> 2] = $J(c[s >> 2] | 0, c[f >> 2] | 0) | 0; if (c[f >> 2] | 0) { c[c[o >> 2] >> 2] = c[f >> 2]; c[p >> 2] = 0; x = c[p >> 2] | 0; l = y; return x | 0 } c[c[o >> 2] >> 2] = 0; if (!(c[m >> 2] | 0)) { c[w >> 2] = c[e >> 2]; DK(0, 49060, w); c[p >> 2] = 1; x = c[p >> 2] | 0; l = y; return x | 0 } else { c[p >> 2] = 0; x = c[p >> 2] | 0; l = y; return x | 0 } return 0 } function bK(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; r = l; l = l + 64 | 0; q = r + 48 | 0; n = r + 44 | 0; u = r + 40 | 0; t = r + 36 | 0; s = r + 32 | 0; m = r + 28 | 0; p = r + 24 | 0; j = r + 20 | 0; o = r + 16 | 0; g = r + 12 | 0; h = r + 8 | 0; i = r + 4 | 0; k = r; c[n >> 2] = a; c[u >> 2] = b; c[t >> 2] = d; c[s >> 2] = e; c[m >> 2] = f; c[p >> 2] = EN(c[u >> 2] | 0, c[t >> 2] | 0, c[s >> 2] | 0, c[m >> 2] | 0) | 0; if (!(c[p >> 2] | 0)) { c[q >> 2] = 0; u = c[q >> 2] | 0; l = r; return u | 0 } c[j >> 2] = 0; while (1) { u = WL(c[n >> 2] | 0, c[j >> 2] | 0, 48893) | 0; c[j >> 2] = u; if (!u) { g = 9; break } gM(c[j >> 2] | 0, 48838, o, 0) | 0; gM(c[j >> 2] | 0, 49156, g, 0) | 0; gM(c[j >> 2] | 0, 49168, h, 0) | 0; kM(c[j >> 2] | 0, 49843, i, 0) | 0; jM(c[j >> 2] | 0, 48858, m, 0) | 0; if (!(c[i >> 2] | 0)) { g = 6; break } c[k >> 2] = _K(c[i >> 2] | 0) | 0; u = (DN(c[p >> 2] | 0, c[k >> 2] | 0, c[o >> 2] | 0, 0, c[g >> 2] | 0, c[h >> 2] | 0, c[m >> 2] | 0) | 0) != 0; IQ(c[k >> 2] | 0); if (u) { g = 8; break } } if ((g | 0) == 6) { Jy(c[p >> 2] | 0); c[q >> 2] = 0; u = c[q >> 2] | 0; l = r; return u | 0 } else if ((g | 0) == 8) { Jy(c[p >> 2] | 0); c[q >> 2] = 0; u = c[q >> 2] | 0; l = r; return u | 0 } else if ((g | 0) == 9) { c[q >> 2] = c[p >> 2]; u = c[q >> 2] | 0; l = r; return u | 0 } return 0 } function cK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 48 | 0; e = i; j = i + 32 | 0; d = i + 28 | 0; f = i + 24 | 0; g = i + 20 | 0; h = i + 16 | 0; c[j >> 2] = a; c[d >> 2] = b; gM(c[j >> 2] | 0, 49099, f, 0) | 0; gM(c[j >> 2] | 0, 49109, g, 0) | 0; gM(c[j >> 2] | 0, 49119, h, 0) | 0; if (!(c[f >> 2] | 0)) b = c[(c[d >> 2] | 0) + 32 >> 2] | 0; else b = c[f >> 2] | 0; c[f >> 2] = b; if (!(c[g >> 2] | 0)) b = c[(c[d >> 2] | 0) + 36 >> 2] | 0; else b = c[g >> 2] | 0; c[g >> 2] = b; if (!(c[h >> 2] | 0)) b = c[(c[d >> 2] | 0) + 40 >> 2] | 0; else b = c[h >> 2] | 0; c[h >> 2] = b; Ry(c[d >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0); if (((c[(c[d >> 2] | 0) + 32 >> 2] | 0) == (c[f >> 2] | 0) ? (c[(c[d >> 2] | 0) + 36 >> 2] | 0) == (c[g >> 2] | 0) : 0) ? (c[(c[d >> 2] | 0) + 40 >> 2] | 0) == (c[h >> 2] | 0) : 0) { l = i; return } f = Sy(c[d >> 2] | 0) | 0; g = c[(c[d >> 2] | 0) + 44 >> 2] | 0; h = c[(c[d >> 2] | 0) + 48 >> 2] | 0; j = c[(c[d >> 2] | 0) + 52 >> 2] | 0; c[e >> 2] = f; c[e + 4 >> 2] = g; c[e + 8 >> 2] = h; c[e + 12 >> 2] = j; FK(2, 48759, 49129, e); l = i; return } function dK(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 32 | 0; f = h + 16 | 0; g = h + 12 | 0; d = h + 8 | 0; e = h + 4 | 0; b = h; c[f >> 2] = a; c[e >> 2] = cz() | 0; c[g >> 2] = 0; while (1) { a = WL(c[f >> 2] | 0, c[g >> 2] | 0, 49180) | 0; c[g >> 2] = a; if (!a) break; hM(c[g >> 2] | 0, 48827, b, 0) | 0; if (fz(c[e >> 2] | 0, c[b >> 2] | 0) | 0) continue; a = (aK(c[g >> 2] | 0, d) | 0) == 0; if (!(a & (c[d >> 2] | 0) != 0)) continue; dz(c[e >> 2] | 0, c[d >> 2] | 0) | 0 } l = h; return c[e >> 2] | 0 } function eK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 80 | 0; s = t + 24 | 0; r = t + 16 | 0; o = t; q = t + 68 | 0; i = t + 64 | 0; h = t + 60 | 0; e = t + 56 | 0; k = t + 52 | 0; j = t + 48 | 0; g = t + 44 | 0; p = t + 40 | 0; n = t + 36 | 0; f = t + 32 | 0; m = t + 28 | 0; c[i >> 2] = a; c[h >> 2] = b; c[e >> 2] = d; if (c[e >> 2] | 0) c[c[e >> 2] >> 2] = 0; c[k >> 2] = 0; while (1) { a = WL(c[h >> 2] | 0, c[k >> 2] | 0, 49185) | 0; c[k >> 2] = a; if (!a) { d = 20; break } kM(c[k >> 2] | 0, 49843, g, 0) | 0; if (gM(c[k >> 2] | 0, 49848, f, 0) | 0) gM(c[k >> 2] | 0, 49856, f, 0) | 0; do if (gM(c[k >> 2] | 0, 49189, m, 0) | 0) if (!(gM(c[k >> 2] | 0, 49195, m, 0) | 0)) { c[m >> 2] = c[m >> 2] << 10; break } else { gM(c[k >> 2] | 0, 49201, m, 65536) | 0; break } else c[m >> 2] = c[m >> 2] << 20; while (0); hM(c[k >> 2] | 0, 49206, n, 0) | 0; c[p >> 2] = _K(c[g >> 2] | 0) | 0; b = c[m >> 2] | 0; a = (c[p >> 2] | 0) == 0 ? 50434 : c[p >> 2] | 0; c[o >> 2] = c[f >> 2]; c[o + 4 >> 2] = b; c[o + 8 >> 2] = a; FK(2, 49214, 49219, o); c[j >> 2] = wx(c[f >> 2] | 0, c[m >> 2] | 0, 1) | 0; if (!(c[j >> 2] | 0)) { d = 13; break } Gx(c[j >> 2] | 0, c[n >> 2] & 255); Ix(c[j >> 2] | 0, 0); Vx(c[i >> 2] | 0, c[j >> 2] | 0, 1); if ((c[e >> 2] | 0) != 0 & (c[f >> 2] | 0) == 0) c[c[e >> 2] >> 2] = c[j >> 2]; if (c[p >> 2] | 0 ? tK(c[j >> 2] | 0, c[p >> 2] | 0) | 0 : 0) { d = 18; break } IQ(c[p >> 2] | 0) } if ((d | 0) == 13) { DK(0, 49250, r); IQ(c[p >> 2] | 0); c[q >> 2] = 1; s = c[q >> 2] | 0; l = t; return s | 0 } else if ((d | 0) == 18) { c[s >> 2] = c[p >> 2]; DK(0, 49284, s); IQ(c[p >> 2] | 0); c[q >> 2] = 1; s = c[q >> 2] | 0; l = t; return s | 0 } else if ((d | 0) == 20) { c[q >> 2] = 0; s = c[q >> 2] | 0; l = t; return s | 0 } return 0 } function fK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 80 | 0; q = r + 24 | 0; p = r + 16 | 0; m = r; o = r + 64 | 0; g = r + 60 | 0; f = r + 56 | 0; i = r + 52 | 0; h = r + 48 | 0; e = r + 44 | 0; n = r + 40 | 0; k = r + 36 | 0; d = r + 32 | 0; j = r + 28 | 0; c[g >> 2] = a; c[f >> 2] = b; c[i >> 2] = 0; while (1) { a = WL(c[f >> 2] | 0, c[i >> 2] | 0, 49313) | 0; c[i >> 2] = a; if (!a) { d = 16; break } kM(c[i >> 2] | 0, 49843, e, 0) | 0; if (gM(c[i >> 2] | 0, 49848, d, 0) | 0) gM(c[i >> 2] | 0, 49856, d, 0) | 0; do if (gM(c[i >> 2] | 0, 49189, j, 0) | 0) if (!(gM(c[i >> 2] | 0, 49195, j, 0) | 0)) { c[j >> 2] = c[j >> 2] << 10; break } else { gM(c[i >> 2] | 0, 49201, j, 65536) | 0; break } else c[j >> 2] = c[j >> 2] << 20; while (0); hM(c[i >> 2] | 0, 49206, k, 0) | 0; c[n >> 2] = _K(c[e >> 2] | 0) | 0; b = c[j >> 2] | 0; a = c[n >> 2] | 0 ? c[n >> 2] | 0 : 50434; c[m >> 2] = c[d >> 2]; c[m + 4 >> 2] = b; c[m + 8 >> 2] = a; FK(2, 49317, 49219, m); c[h >> 2] = wx(c[d >> 2] | 0, c[j >> 2] | 0, 1) | 0; if (!(c[h >> 2] | 0)) { d = 11; break } Gx(c[h >> 2] | 0, c[k >> 2] & 255); Ix(c[h >> 2] | 0, 1); Vx(c[g >> 2] | 0, c[h >> 2] | 0, 1); if (c[n >> 2] | 0 ? tK(c[h >> 2] | 0, c[n >> 2] | 0) | 0 : 0) { d = 14; break } IQ(c[n >> 2] | 0) } if ((d | 0) == 11) { DK(0, 49250, p); IQ(c[n >> 2] | 0); c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } else if ((d | 0) == 14) { c[q >> 2] = c[n >> 2]; DK(0, 49322, q); IQ(c[n >> 2] | 0); c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } else if ((d | 0) == 16) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } return 0 } function gK(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, 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; y = l; l = l + 160 | 0; x = y + 80 | 0; w = y + 72 | 0; v = y + 64 | 0; u = y + 56 | 0; t = y + 48 | 0; s = y; o = y + 148 | 0; i = y + 144 | 0; f = y + 140 | 0; p = y + 136 | 0; k = y + 132 | 0; j = y + 128 | 0; d = y + 124 | 0; e = y + 120 | 0; m = y + 112 | 0; n = y + 104 | 0; g = y + 96 | 0; h = y + 92 | 0; q = y + 88 | 0; r = y + 84 | 0; c[i >> 2] = a; c[f >> 2] = b; c[r >> 2] = 0; c[q >> 2] = WL(c[i >> 2] | 0, 0, 49351) | 0; kM(c[q >> 2] | 0, 49360, g, 49367) | 0; if (!(c[f >> 2] | 0)) { while (1) { if (!(c[q >> 2] | 0)) break; if (hK(c[g >> 2] | 0) | 0) break; c[q >> 2] = WL(c[i >> 2] | 0, c[q >> 2] | 0, 49351) | 0; kM(c[q >> 2] | 0, 49360, g, 49367) | 0 } if (!(c[q >> 2] | 0)) c[g >> 2] = 49367 } else { while (1) { if (!(c[q >> 2] | 0)) break; if (!(fP(c[f >> 2] | 0, c[g >> 2] | 0) | 0)) break; c[q >> 2] = WL(c[i >> 2] | 0, c[q >> 2] | 0, 49351) | 0; kM(c[q >> 2] | 0, 49360, g, 49367) | 0 } c[g >> 2] = c[f >> 2] } kM(c[q >> 2] | 0, 49372, h, 0) | 0; hM(c[q >> 2] | 0, 49379, d, 4) | 0; hM(c[q >> 2] | 0, 49388, e, 3) | 0; hM(c[q >> 2] | 0, 49397, k, 512) | 0; hM(c[q >> 2] | 0, 49403, j, 384) | 0; hM(c[q >> 2] | 0, 49409, p, 1) | 0; iM(c[q >> 2] | 0, 49415, m, 1) | 0; iM(c[q >> 2] | 0, 49427, m + 4 | 0, 1) | 0; iM(c[q >> 2] | 0, 49439, n, 1) | 0; iM(c[q >> 2] | 0, 49451, n + 4 | 0, 1) | 0; E = c[h >> 2] | 0 ? c[h >> 2] | 0 : 50624; D = c[d >> 2] | 0; C = c[e >> 2] | 0; B = c[k >> 2] | 0; A = c[j >> 2] | 0; z = c[p >> 2] | 0; b = c[m >> 2] | 0; f = c[m + 4 >> 2] | 0; a = c[n >> 2] | 0; i = c[n + 4 >> 2] | 0; c[s >> 2] = c[g >> 2]; c[s + 4 >> 2] = E; c[s + 8 >> 2] = D; c[s + 12 >> 2] = C; c[s + 16 >> 2] = B; c[s + 20 >> 2] = A; c[s + 24 >> 2] = z; c[s + 28 >> 2] = b; c[s + 32 >> 2] = f; c[s + 36 >> 2] = a; c[s + 40 >> 2] = i; FK(2, 49463, 49469, s); do if (fP(c[g >> 2] | 0, 49544) | 0) { if (!(fP(c[g >> 2] | 0, 49589) | 0)) { c[r >> 2] = zO(c[q >> 2] | 0) | 0; if (c[r >> 2] | 0) break; DK(0, 49593, u); break } if (fP(c[g >> 2] | 0, 49367) | 0) { c[w >> 2] = c[g >> 2]; DK(0, 49666, w); break } c[r >> 2] = RN(c[q >> 2] | 0) | 0; if (!(c[r >> 2] | 0)) DK(0, 49629, v) } else DK(0, 49548, t); while (0); if (!(c[r >> 2] | 0)) { DK(0, 49699, x); c[o >> 2] = 0; E = c[o >> 2] | 0; l = y; return E | 0 } if (c[h >> 2] | 0) fO(c[r >> 2] | 0, c[h >> 2] | 0) | 0; jO(c[r >> 2] | 0, c[p >> 2] | 0); iO(c[r >> 2] | 0, c[k >> 2] | 0, c[j >> 2] | 0); kO(c[r >> 2] | 0, c[d >> 2] | 0, c[e >> 2] | 0); gO(c[r >> 2] | 0, c[m >> 2] | 0, c[m + 4 >> 2] | 0, c[n >> 2] | 0, c[n + 4 >> 2] | 0); c[o >> 2] = c[r >> 2]; E = c[o >> 2] | 0; l = y; return E | 0 } function hK(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[d >> 2] = a; do if (fP(c[d >> 2] | 0, 49367) | 0) if (!(fP(c[d >> 2] | 0, 49589) | 0)) { c[b >> 2] = 1; break } else { c[b >> 2] = 0; break } else c[b >> 2] = 1; while (0); l = e; return c[b >> 2] | 0 } function iK(b, f, g) { b = b | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 304 | 0; q = r + 28 | 0; j = r + 24 | 0; i = r + 20 | 0; o = r + 16 | 0; k = r + 12 | 0; m = r + 8 | 0; h = r + 4 | 0; p = r; n = r + 32 | 0; c[j >> 2] = b; c[i >> 2] = f; c[o >> 2] = g; c[m >> 2] = 0; c[p >> 2] = 0; a: while (1) { if (jK(c[j >> 2] | 0, n) | 0) { f = 22; break } g = d[n + 260 >> 0] | 0; if ((g | 0) != ((kK(n) | 0) & 255 | 0)) { f = 4; break } if ((d[n >> 0] | 0 | 0) == 1) { f = 6; break } if ((d[n >> 0] | 0 | 0) == 4) { if ((d[n + 1 >> 0] | 0 | 0) != 2) { f = 10; break } c[m >> 2] = 0; c[p >> 2] = (d[n + 4 >> 0] | 0) << 8 | (d[n + 4 + 1 >> 0] | 0); c[p >> 2] = c[p >> 2] << 16; continue } if ((d[n >> 0] | 0 | 0) == 2) { if ((d[n + 1 >> 0] | 0 | 0) != 2) { f = 14; break } c[m >> 2] = 1; c[p >> 2] = (d[n + 4 >> 0] | 0) << 8 | (d[n + 4 + 1 >> 0] | 0); c[p >> 2] = c[p >> 2] << 4; continue } if (d[n >> 0] | 0 | 0) continue; c[h >> 2] = (c[p >> 2] | 0) + ((e[n + 2 >> 1] | 0) & 65535); c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (d[n + 1 >> 0] | 0) >>> 0) continue a; f = c[p >> 2] | 0; b = e[n + 2 >> 1] | 0; if (!(c[m >> 2] | 0)) c[h >> 2] = f + b + (c[k >> 2] | 0); else c[h >> 2] = f + (b + (c[k >> 2] | 0) & 65535); Sb[c[o >> 2] & 31](c[i >> 2] | 0, c[h >> 2] | 0, a[n + 4 + (c[k >> 2] | 0) >> 0] | 0); c[k >> 2] = (c[k >> 2] | 0) + 1 } } if ((f | 0) == 4) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 6) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 10) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 14) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 22) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } return 0 } function jK(a, e) { a = a | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; m = o + 16 | 0; i = o + 12 | 0; k = o + 8 | 0; j = o + 4 | 0; h = o; f = o + 21 | 0; g = o + 20 | 0; c[i >> 2] = a; c[k >> 2] = e; while (1) { c[h >> 2] = vQ(c[i >> 2] | 0) | 0; if ((c[h >> 2] | 0) == -1) { n = 3; break } if ((c[h >> 2] | 0) == 58) break; if (!((c[h >> 2] | 0) != 10 & (c[h >> 2] | 0) != 13)) continue; lK(c[i >> 2] | 0) | 0 } if ((n | 0) == 3) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } if (mK(c[i >> 2] | 0, (c[k >> 2] | 0) + 1 | 0) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } if ((mK(c[i >> 2] | 0, f) | 0) == 0 ? (mK(c[i >> 2] | 0, g) | 0) == 0 : 0) { b[(c[k >> 2] | 0) + 2 >> 1] = (d[f >> 0] | 0) << 8 | (d[g >> 0] | 0); if (mK(c[i >> 2] | 0, c[k >> 2] | 0) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } c[j >> 2] = 0; while (1) { f = c[i >> 2] | 0; g = c[k >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 >= (d[(c[k >> 2] | 0) + 1 >> 0] | 0) >>> 0) break; if (mK(f, g + 4 + (c[j >> 2] | 0) | 0) | 0) { n = 17; break } c[j >> 2] = (c[j >> 2] | 0) + 1 } if ((n | 0) == 17) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } if (mK(f, g + 260 | 0) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } else { lK(c[i >> 2] | 0) | 0; c[m >> 2] = 0; n = c[m >> 2] | 0; l = o; return n | 0 } } c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } function kK(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; g = i; f = i + 8 | 0; c[h >> 2] = b; a[f >> 0] = d[(c[h >> 2] | 0) + 1 >> 0] | 0; a[f >> 0] = (d[f >> 0] | 0) + ((e[(c[h >> 2] | 0) + 2 >> 1] | 0) & 255); a[f >> 0] = (d[f >> 0] | 0) + ((e[(c[h >> 2] | 0) + 2 >> 1] | 0) >> 8 & 255); a[f >> 0] = (d[f >> 0] | 0) + ((d[c[h >> 2] >> 0] | 0) & 255); c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (d[(c[h >> 2] | 0) + 1 >> 0] | 0) >>> 0) break; a[f >> 0] = (d[f >> 0] | 0) + (d[(c[h >> 2] | 0) + 4 + (c[g >> 2] | 0) >> 0] | 0); c[g >> 2] = (c[g >> 2] | 0) + 1 } a[f >> 0] = ~(d[f >> 0] | 0) + 1; l = i; return a[f >> 0] | 0 } function lK(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; while (1) { c[b >> 2] = vQ(c[d >> 2] | 0) | 0; if ((c[b >> 2] | 0) == -1) { b = 3; break } if ((c[b >> 2] | 0) == 10 | (c[b >> 2] | 0) == 13) { b = 5; break } } if ((b | 0) == 3) { c[e >> 2] = 1; e = c[e >> 2] | 0; l = f; return e | 0 } else if ((b | 0) == 5) { c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function mK(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; g = k + 12 | 0; i = k + 8 | 0; h = k + 4 | 0; f = k; c[g >> 2] = b; c[i >> 2] = e; a[c[i >> 2] >> 0] = 0; c[h >> 2] = 0; a: while (1) { if ((c[h >> 2] | 0) >>> 0 >= 2) { f = 11; break } c[f >> 2] = vQ(c[g >> 2] | 0) | 0; do if ((c[f >> 2] | 0) >= 48 & (c[f >> 2] | 0) <= 57) a[c[i >> 2] >> 0] = (d[c[i >> 2] >> 0] | 0) << 4 | (c[f >> 2] | 0) - 48; else { if ((c[f >> 2] | 0) >= 65 & (c[f >> 2] | 0) <= 70) { a[c[i >> 2] >> 0] = (d[c[i >> 2] >> 0] | 0) << 4 | (c[f >> 2] | 0) - 65 + 10; break } if (!((c[f >> 2] | 0) >= 97 & (c[f >> 2] | 0) <= 102)) { f = 9; break a } a[c[i >> 2] >> 0] = (d[c[i >> 2] >> 0] | 0) << 4 | (c[f >> 2] | 0) - 97 + 10 } while (0); c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((f | 0) == 9) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else if ((f | 0) == 11) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function nK(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 304 | 0; m = n + 288 | 0; h = n + 284 | 0; g = n + 280 | 0; k = n + 276 | 0; i = n + 272 | 0; j = n; c[h >> 2] = b; c[g >> 2] = e; c[k >> 2] = f; a: while (1) { if (oK(c[h >> 2] | 0, j) | 0) { e = 3; break } f = d[j + 268 >> 0] | 0; if ((f | 0) != ((pK(j) | 0) & 255 | 0)) { e = 5; break } if (!(d[j >> 0] | 0)) continue; if (((d[j >> 0] | 0 | 0) != 1 ? (d[j >> 0] | 0 | 0) != 2 : 0) ? (d[j >> 0] | 0 | 0) != 3 : 0) { if ((d[j >> 0] | 0 | 0) == 5) continue; if ((d[j >> 0] | 0 | 0) == 7) { e = 17; break } if ((d[j >> 0] | 0 | 0) == 8) { e = 17; break } if ((d[j >> 0] | 0 | 0) == 9) { e = 17; break } else continue } c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (d[j + 1 >> 0] | 0) >>> 0) continue a; Sb[c[k >> 2] & 31](c[g >> 2] | 0, (c[j + 4 >> 2] | 0) + (c[i >> 2] | 0) | 0, a[j + 12 + (c[i >> 2] | 0) >> 0] | 0); c[i >> 2] = (c[i >> 2] | 0) + 1 } } if ((e | 0) == 3) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((e | 0) == 5) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((e | 0) == 17) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } return 0 } function oK(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; m = o + 16 | 0; i = o + 12 | 0; k = o + 8 | 0; j = o + 4 | 0; g = o; f = o + 21 | 0; h = o + 20 | 0; c[i >> 2] = b; c[k >> 2] = e; while (1) { c[g >> 2] = vQ(c[i >> 2] | 0) | 0; if ((c[g >> 2] | 0) == -1) { n = 3; break } if ((c[g >> 2] | 0) == 83 ? (qK(c[i >> 2] | 0, h) | 0) == 0 : 0) break; if (!((c[g >> 2] | 0) != 10 & (c[g >> 2] | 0) != 13)) continue; rK(c[i >> 2] | 0) | 0 } if ((n | 0) == 3) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } a[c[k >> 2] >> 0] = a[h >> 0] | 0; c[(c[k >> 2] | 0) + 8 >> 2] = c[27384 + ((d[h >> 0] | 0) << 2) >> 2]; if (sK(c[i >> 2] | 0, (c[k >> 2] | 0) + 1 | 0) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } if ((d[(c[k >> 2] | 0) + 1 >> 0] | 0) >>> 0 < ((c[(c[k >> 2] | 0) + 8 >> 2] | 0) + 1 | 0) >>> 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } h = (c[k >> 2] | 0) + 1 | 0; a[h >> 0] = (d[h >> 0] | 0) - ((c[(c[k >> 2] | 0) + 8 >> 2] | 0) + 1); c[(c[k >> 2] | 0) + 4 >> 2] = 0; c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (c[(c[k >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; if (sK(c[i >> 2] | 0, f) | 0) { n = 15; break } c[(c[k >> 2] | 0) + 4 >> 2] = c[(c[k >> 2] | 0) + 4 >> 2] << 8 | (d[f >> 0] | 0) & 255; c[j >> 2] = (c[j >> 2] | 0) + 1 } if ((n | 0) == 15) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } c[j >> 2] = 0; while (1) { f = c[i >> 2] | 0; g = c[k >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 >= (d[(c[k >> 2] | 0) + 1 >> 0] | 0) >>> 0) break; if (sK(f, g + 12 + (c[j >> 2] | 0) | 0) | 0) { n = 20; break } c[j >> 2] = (c[j >> 2] | 0) + 1 } if ((n | 0) == 20) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } if (sK(f, g + 268 | 0) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } else { rK(c[i >> 2] | 0) | 0; c[m >> 2] = 0; n = c[m >> 2] | 0; l = o; return n | 0 } return 0 } function pK(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; f = h; e = h + 8 | 0; c[g >> 2] = b; a[e >> 0] = (d[(c[g >> 2] | 0) + 1 >> 0] | 0) + (c[(c[g >> 2] | 0) + 8 >> 2] | 0) + 1; a[e >> 0] = (d[e >> 0] | 0) + (c[(c[g >> 2] | 0) + 4 >> 2] & 255); a[e >> 0] = (d[e >> 0] | 0) + ((c[(c[g >> 2] | 0) + 4 >> 2] | 0) >>> 8 & 255); a[e >> 0] = (d[e >> 0] | 0) + ((c[(c[g >> 2] | 0) + 4 >> 2] | 0) >>> 16 & 255); a[e >> 0] = (d[e >> 0] | 0) + ((c[(c[g >> 2] | 0) + 4 >> 2] | 0) >>> 24 & 255); c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (d[(c[g >> 2] | 0) + 1 >> 0] | 0) >>> 0) break; a[e >> 0] = (d[e >> 0] | 0) + (d[(c[g >> 2] | 0) + 12 + (c[f >> 2] | 0) >> 0] | 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } a[e >> 0] = ~(d[e >> 0] | 0); l = h; return a[e >> 0] | 0 } function qK(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; i = h + 8 | 0; g = h + 4 | 0; e = h; c[i >> 2] = b; c[g >> 2] = d; c[e >> 2] = vQ(c[i >> 2] | 0) | 0; b = c[e >> 2] | 0; do if ((c[e >> 2] | 0) >= 48 & (c[e >> 2] | 0) <= 57) a[c[g >> 2] >> 0] = b - 48; else { d = c[e >> 2] | 0; if ((b | 0) >= 65 & (c[e >> 2] | 0) <= 70) { a[c[g >> 2] >> 0] = d - 65 + 10; break } if ((d | 0) >= 97 & (c[e >> 2] | 0) <= 102) { a[c[g >> 2] >> 0] = (c[e >> 2] | 0) - 97 + 10; break } c[f >> 2] = 1; i = c[f >> 2] | 0; l = h; return i | 0 } while (0); c[f >> 2] = 0; i = c[f >> 2] | 0; l = h; return i | 0 } function rK(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; while (1) { c[b >> 2] = vQ(c[d >> 2] | 0) | 0; if ((c[b >> 2] | 0) == -1) { b = 3; break } if ((c[b >> 2] | 0) == 10 | (c[b >> 2] | 0) == 13) { b = 5; break } } if ((b | 0) == 3) { c[e >> 2] = 1; e = c[e >> 2] | 0; l = f; return e | 0 } else if ((b | 0) == 5) { c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function sK(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; g = k + 8 | 0; f = k + 4 | 0; j = k; h = k + 13 | 0; i = k + 12 | 0; c[f >> 2] = b; c[j >> 2] = e; if ((qK(c[f >> 2] | 0, h) | 0) == 0 ? (qK(c[f >> 2] | 0, i) | 0) == 0 : 0) { a[c[j >> 2] >> 0] = ((d[h >> 0] | 0) & 15) << 4 | (d[i >> 0] | 0) & 15; c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } function tK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; d = g + 8 | 0; h = g + 4 | 0; e = g; c[d >> 2] = a; c[h >> 2] = b; c[e >> 2] = dQ(c[h >> 2] | 0, 50621) | 0; if (!(c[e >> 2] | 0)) { c[f >> 2] = 1; h = c[f >> 2] | 0; l = g; return h | 0 } else { AQ(c[(c[d >> 2] | 0) + 44 >> 2] | 0, 1, c[(c[d >> 2] | 0) + 40 >> 2] | 0, c[e >> 2] | 0) | 0; UP(c[e >> 2] | 0) | 0; c[f >> 2] = 0; h = c[f >> 2] | 0; l = g; return h | 0 } return 0 } function uK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; j = h; g = h + 20 | 0; e = h + 16 | 0; i = h + 12 | 0; f = h + 8 | 0; d = h + 4 | 0; c[e >> 2] = a; c[i >> 2] = b; c[j >> 2] = c[i >> 2]; FK(2, 49722, 49728, j); c[d >> 2] = dQ(c[i >> 2] | 0, 50621) | 0; if (!(c[d >> 2] | 0)) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = h; return j | 0 } else { c[f >> 2] = iK(c[d >> 2] | 0, c[e >> 2] | 0, 20) | 0; UP(c[d >> 2] | 0) | 0; c[g >> 2] = c[f >> 2]; j = c[g >> 2] | 0; l = h; return j | 0 } return 0 } function vK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; j = h; g = h + 20 | 0; e = h + 16 | 0; i = h + 12 | 0; f = h + 8 | 0; d = h + 4 | 0; c[e >> 2] = a; c[i >> 2] = b; c[j >> 2] = c[i >> 2]; FK(2, 49722, 49749, j); c[d >> 2] = dQ(c[i >> 2] | 0, 50621) | 0; if (!(c[d >> 2] | 0)) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = h; return j | 0 } else { c[f >> 2] = nK(c[d >> 2] | 0, c[e >> 2] | 0, 20) | 0; UP(c[d >> 2] | 0) | 0; c[g >> 2] = c[f >> 2]; j = c[g >> 2] | 0; l = h; return j | 0 } return 0 } function wK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; j = l; l = l + 32 | 0; m = j; i = j + 28 | 0; h = j + 24 | 0; k = j + 20 | 0; e = j + 16 | 0; f = j + 12 | 0; g = j + 8 | 0; c[h >> 2] = a; c[k >> 2] = b; c[e >> 2] = d; a = c[e >> 2] | 0; c[m >> 2] = c[k >> 2]; c[m + 4 >> 2] = a; FK(2, 49722, 49770, m); c[g >> 2] = dQ(c[k >> 2] | 0, 50621) | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = j; return m | 0 } c[f >> 2] = vQ(c[g >> 2] | 0) | 0; while (1) { if ((c[f >> 2] | 0) == -1) break; ay(c[h >> 2] | 0, c[e >> 2] | 0, c[f >> 2] & 255); c[e >> 2] = (c[e >> 2] | 0) + 1; c[f >> 2] = vQ(c[g >> 2] | 0) | 0 } UP(c[g >> 2] | 0) | 0; c[i >> 2] = 0; m = c[i >> 2] | 0; l = j; return m | 0 } function xK(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 32 | 0; n = p + 24 | 0; m = p + 20 | 0; j = p + 16 | 0; i = p + 12 | 0; g = p + 8 | 0; k = p + 4 | 0; h = p; c[m >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; c[g >> 2] = f; if (!(c[j >> 2] | 0)) { c[n >> 2] = 1; o = c[n >> 2] | 0; l = p; return o | 0 } if (!((c[i >> 2] | 0) != 0 ? (fP(c[i >> 2] | 0, 49806) | 0) != 0 : 0)) o = 5; do if ((o | 0) == 5) { c[k >> 2] = 0; c[h >> 2] = c[j >> 2]; while (1) { if (!(a[(c[j >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0)) break; if ((a[(c[j >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0) == 46) c[h >> 2] = (c[j >> 2] | 0) + (c[k >> 2] | 0) + 1; c[k >> 2] = (c[k >> 2] | 0) + 1 } if (sQ(c[h >> 2] | 0, 49811) | 0 ? sQ(c[h >> 2] | 0, 49816) | 0 : 0) { if (!(sQ(c[h >> 2] | 0, 49820) | 0)) { c[i >> 2] = 49820; break } if (!(sQ(c[h >> 2] | 0, 49825) | 0)) { c[i >> 2] = 49829; break } c[n >> 2] = 1; o = c[n >> 2] | 0; l = p; return o | 0 } c[i >> 2] = 49811 } while (0); if (!(fP(c[i >> 2] | 0, 49829) | 0)) { c[n >> 2] = wK(c[m >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0) | 0; o = c[n >> 2] | 0; l = p; return o | 0 } if (!(fP(c[i >> 2] | 0, 49811) | 0)) { c[n >> 2] = uK(c[m >> 2] | 0, c[j >> 2] | 0) | 0; o = c[n >> 2] | 0; l = p; return o | 0 } if (!(fP(c[i >> 2] | 0, 49820) | 0)) { c[n >> 2] = vK(c[m >> 2] | 0, c[j >> 2] | 0) | 0; o = c[n >> 2] | 0; l = p; return o | 0 } else { c[n >> 2] = 1; o = c[n >> 2] | 0; l = p; return o | 0 } return 0 } function yK(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, m = 0, n = 0; n = l; l = l + 48 | 0; m = n; h = n + 32 | 0; g = n + 28 | 0; j = n + 24 | 0; e = n + 20 | 0; f = n + 16 | 0; i = n + 12 | 0; d = n + 8 | 0; k = n + 4 | 0; c[h >> 2] = a; c[g >> 2] = b; c[j >> 2] = 0; c[k >> 2] = 0; while (1) { a = WL(c[g >> 2] | 0, c[k >> 2] | 0, 50012) | 0; c[k >> 2] = a; if (!a) break; kM(c[k >> 2] | 0, 49836, e, 49829) | 0; kM(c[k >> 2] | 0, 49843, f, 0) | 0; if (gM(c[k >> 2] | 0, 49848, d, 0) | 0) gM(c[k >> 2] | 0, 49856, d, 0) | 0; if (!(c[f >> 2] | 0)) continue; c[i >> 2] = _K(c[f >> 2] | 0) | 0; if (xK(c[h >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0, c[d >> 2] | 0) | 0) { c[j >> 2] = 1; c[m >> 2] = c[i >> 2]; DK(0, 49861, m) } IQ(c[i >> 2] | 0) } l = n; return c[j >> 2] | 0 } function zK() { c[14686] = 0; return } function AK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; g = i; c[f >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; if ((c[14686] | 0) >>> 0 >= 16) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } else { c[58748 + ((c[14686] | 0) * 12 | 0) >> 2] = c[f >> 2]; c[58748 + ((c[14686] | 0) * 12 | 0) + 4 >> 2] = (c[e >> 2] | 0) != 0 & 1; c[58748 + ((c[14686] | 0) * 12 | 0) + 8 >> 2] = c[g >> 2]; c[14686] = (c[14686] | 0) + 1; c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function BK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; h = g + 8 | 0; e = g + 4 | 0; d = g; c[h >> 2] = a; c[e >> 2] = b; c[d >> 2] = dQ(c[h >> 2] | 0, 50818) | 0; if (!(c[d >> 2] | 0)) { c[f >> 2] = 1; h = c[f >> 2] | 0; l = g; return h | 0 } if (AK(c[d >> 2] | 0, 1, c[e >> 2] | 0) | 0) { UP(c[d >> 2] | 0) | 0; c[f >> 2] = 1; h = c[f >> 2] | 0; l = g; return h | 0 } else { c[f >> 2] = 0; h = c[f >> 2] | 0; l = g; return h | 0 } return 0 } function CK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h + 8 | 0; f = h + 4 | 0; e = h; c[d >> 2] = a; c[f >> 2] = b; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[14686] | 0) >>> 0) { g = 6; break } if ((c[58748 + ((c[e >> 2] | 0) * 12 | 0) >> 2] | 0) == (c[d >> 2] | 0)) break; c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((g | 0) == 6) { l = h; return } c[58748 + ((c[e >> 2] | 0) * 12 | 0) + 8 >> 2] = c[f >> 2]; l = h; return } function DK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; f = i + 24 | 0; g = i + 20 | 0; e = i + 16 | 0; h = i; c[f >> 2] = a; c[g >> 2] = b; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[14686] | 0) >>> 0) break; if ((c[f >> 2] | 0) >>> 0 <= (c[58748 + ((c[e >> 2] | 0) * 12 | 0) + 8 >> 2] | 0) >>> 0) { c[h >> 2] = d; kP(c[58748 + ((c[e >> 2] | 0) * 12 | 0) >> 2] | 0, c[g >> 2] | 0, h) | 0; XP(c[58748 + ((c[e >> 2] | 0) * 12 | 0) >> 2] | 0) | 0 } c[e >> 2] = (c[e >> 2] | 0) + 1 } l = i; return } function EK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; e = i; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[14686] | 0) >>> 0) break; if ((c[f >> 2] | 0) >>> 0 <= (c[58748 + ((c[e >> 2] | 0) * 12 | 0) + 8 >> 2] | 0) >>> 0) { kP(c[58748 + ((c[e >> 2] | 0) * 12 | 0) >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0; XP(c[58748 + ((c[e >> 2] | 0) * 12 | 0) >> 2] | 0) | 0 } c[e >> 2] = (c[e >> 2] | 0) + 1 } l = i; return } function FK(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; k = m; g = m + 36 | 0; i = m + 32 | 0; h = m + 28 | 0; f = m + 24 | 0; j = m + 8 | 0; c[g >> 2] = a; c[i >> 2] = b; c[h >> 2] = d; if (!(c[i >> 2] | 0)) c[i >> 2] = 59585; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[14686] | 0) >>> 0) break; if ((c[g >> 2] | 0) >>> 0 <= (c[58748 + ((c[f >> 2] | 0) * 12 | 0) + 8 >> 2] | 0) >>> 0) { c[j >> 2] = e; b = c[58748 + ((c[f >> 2] | 0) * 12 | 0) >> 2] | 0; c[k >> 2] = c[i >> 2]; kQ(b, 49886, k) | 0; kP(c[58748 + ((c[f >> 2] | 0) * 12 | 0) >> 2] | 0, c[h >> 2] | 0, j) | 0; XP(c[58748 + ((c[f >> 2] | 0) * 12 | 0) >> 2] | 0) | 0 } c[f >> 2] = (c[f >> 2] | 0) + 1 } l = m; return } function GK(d) { d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = d; c[c[f >> 2] >> 2] = 0; c[(c[f >> 2] | 0) + 4 >> 2] = 0; c[(c[f >> 2] | 0) + 8 >> 2] = 0; c[(c[f >> 2] | 0) + 12 >> 2] = 0; c[(c[f >> 2] | 0) + 16 >> 2] = 0; c[(c[f >> 2] | 0) + 20 >> 2] = 0; c[(c[f >> 2] | 0) + 24 >> 2] = 0; c[(c[f >> 2] | 0) + 28 >> 2] = 0; c[(c[f >> 2] | 0) + 32 >> 2] = 0; b[(c[f >> 2] | 0) + 36 >> 1] = 0; c[(c[f >> 2] | 0) + 40 >> 2] = 0; b[(c[f >> 2] | 0) + 44 >> 1] = 0; c[(c[f >> 2] | 0) + 48 >> 2] = 0; c[(c[f >> 2] | 0) + 52 >> 2] = 0; a[(c[f >> 2] | 0) + 56 >> 0] = 0; c[(c[f >> 2] | 0) + 60 >> 2] = 0; HK(c[f >> 2] | 0, 27448, 10) | 0; l = e; return } function HK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 20 | 0; i = k + 16 | 0; f = k + 12 | 0; g = k + 8 | 0; h = k + 4 | 0; e = k; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[e >> 2] = JQ(c[(c[i >> 2] | 0) + 52 >> 2] | 0, ((c[(c[i >> 2] | 0) + 48 >> 2] | 0) + (c[g >> 2] | 0) | 0) * 12 | 0) | 0; if (!(c[e >> 2] | 0)) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } c[(c[i >> 2] | 0) + 52 >> 2] = c[e >> 2]; while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) break; c[h >> 2] = c[(c[i >> 2] | 0) + 48 >> 2]; while (1) { if ((c[h >> 2] | 0) >>> 0 <= 0) break; if ((fP(c[c[f >> 2] >> 2] | 0, c[(c[e >> 2] | 0) + (((c[h >> 2] | 0) - 1 | 0) * 12 | 0) >> 2] | 0) | 0) >= 0) break; a = (c[e >> 2] | 0) + ((c[h >> 2] | 0) * 12 | 0) | 0; d = (c[e >> 2] | 0) + (((c[h >> 2] | 0) - 1 | 0) * 12 | 0) | 0; c[a >> 2] = c[d >> 2]; c[a + 4 >> 2] = c[d + 4 >> 2]; c[a + 8 >> 2] = c[d + 8 >> 2]; c[h >> 2] = (c[h >> 2] | 0) - 1 } a = (c[e >> 2] | 0) + ((c[h >> 2] | 0) * 12 | 0) | 0; d = c[f >> 2] | 0; c[a >> 2] = c[d >> 2]; c[a + 4 >> 2] = c[d + 4 >> 2]; c[a + 8 >> 2] = c[d + 8 >> 2]; a = (c[i >> 2] | 0) + 48 | 0; c[a >> 2] = (c[a >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) + 12; c[g >> 2] = (c[g >> 2] | 0) - 1 } c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } function IK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; g = e + 4 | 0; h = e; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; c[c[f >> 2] >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 4 >> 2] = c[g >> 2]; l = e; return } function JK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; g = e + 4 | 0; h = e; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; c[(c[f >> 2] | 0) + 8 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 12 >> 2] = c[g >> 2]; l = e; return } function KK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 16 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 20 >> 2] = c[g >> 2]; l = e; return } function LK(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 24 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 28 >> 2] = c[g >> 2]; l = e; return } function MK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 32 >> 2] = c[f >> 2]; l = d; return } function NK(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; a[(c[f >> 2] | 0) + 56 >> 0] = (c[g >> 2] | 0) != 0; l = e; return } function OK(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = HK(c[d >> 2] | 0, 27568, 4) | 0; l = b; return a | 0 } function PK(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[e >> 2] = b; c[f >> 2] = d; while (1) { if (!(a[c[e >> 2] >> 0] | 0)) { b = 11; break } if (!(fP(c[e >> 2] | 0, c[f >> 2] | 0) | 0)) { b = 4; break } while (1) { if (a[c[e >> 2] >> 0] | 0) b = (a[c[e >> 2] >> 0] | 0) != 46; else b = 0; d = c[e >> 2] | 0; if (!b) break; c[e >> 2] = d + 1 } if ((a[d >> 0] | 0) != 46) continue; c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((b | 0) == 4) { c[g >> 2] = 1; g = c[g >> 2] | 0; l = h; return g | 0 } else if ((b | 0) == 11) { c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function QK(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; e = h + 16 | 0; j = h + 12 | 0; g = h + 8 | 0; f = h + 4 | 0; i = h; c[j >> 2] = b; c[g >> 2] = d; c[f >> 2] = qQ(c[j >> 2] | 0, i, 0) | 0; if ((c[i >> 2] | 0) != (c[j >> 2] | 0) ? (a[c[i >> 2] >> 0] | 0) == 0 : 0) { c[c[g >> 2] >> 2] = c[f >> 2]; c[e >> 2] = 0; j = c[e >> 2] | 0; l = h; return j | 0 } c[e >> 2] = 1; j = c[e >> 2] | 0; l = h; return j | 0 } function RK(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; e = h + 16 | 0; j = h + 12 | 0; g = h + 8 | 0; f = h + 4 | 0; i = h; c[j >> 2] = b; c[g >> 2] = d; c[f >> 2] = GQ(c[j >> 2] | 0, i, 0) | 0; if ((c[i >> 2] | 0) != (c[j >> 2] | 0) ? (a[c[i >> 2] >> 0] | 0) == 0 : 0) { c[c[g >> 2] >> 2] = c[f >> 2]; c[e >> 2] = 0; j = c[e >> 2] | 0; l = h; return j | 0 } c[e >> 2] = 1; j = c[e >> 2] | 0; l = h; return j | 0 } function SK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; d = g + 12 | 0; h = g + 8 | 0; f = g + 4 | 0; e = g; c[h >> 2] = a; c[f >> 2] = b; do if (!(QK(c[h >> 2] | 0, e) | 0)) { c[c[f >> 2] >> 2] = c[e >> 2]; if ((c[c[f >> 2] >> 2] | 0) != (c[e >> 2] | 0)) { c[d >> 2] = 1; break } else { c[d >> 2] = 0; break } } else c[d >> 2] = 1; while (0); l = g; return c[d >> 2] | 0 } function TK(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; d = g + 12 | 0; h = g + 8 | 0; f = g + 4 | 0; e = g; c[h >> 2] = a; c[f >> 2] = b; do if (!(RK(c[h >> 2] | 0, e) | 0)) { c[c[f >> 2] >> 2] = c[e >> 2]; if ((c[c[f >> 2] >> 2] | 0) != (c[e >> 2] | 0)) { c[d >> 2] = 1; break } else { c[d >> 2] = 0; break } } else c[d >> 2] = 1; while (0); l = g; return c[d >> 2] | 0 } function UK(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; e = j + 12 | 0; f = j + 8 | 0; h = j + 4 | 0; g = j; c[f >> 2] = b; c[h >> 2] = d; do if ((c[f >> 2] | 0) != 0 ? (a[c[f >> 2] >> 0] | 0) != 0 : 0) { if (!(fP(c[f >> 2] | 0, 50589) | 0)) { c[c[h >> 2] >> 2] = 1; c[e >> 2] = 0; break } if (!(fP(c[f >> 2] | 0, 50594) | 0)) { c[c[h >> 2] >> 2] = 0; c[e >> 2] = 0; break } if (QK(c[f >> 2] | 0, g) | 0) { c[e >> 2] = 1; break } else { c[c[h >> 2] >> 2] = (c[g >> 2] | 0) != 0 & 1; c[e >> 2] = 0; break } } else i = 3; while (0); if ((i | 0) == 3) { c[c[h >> 2] >> 2] = 0; c[e >> 2] = 0 } l = j; return c[e >> 2] | 0 } function VK(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; j = l; l = l + 48 | 0; f = j + 32 | 0; g = j + 28 | 0; n = j + 24 | 0; p = j + 20 | 0; i = j + 16 | 0; k = j + 12 | 0; m = j + 8 | 0; o = j + 4 | 0; h = j; c[g >> 2] = a; c[n >> 2] = b; c[p >> 2] = d; c[i >> 2] = e; c[h >> 2] = c[c[g >> 2] >> 2]; c[m >> 2] = hL(c[h >> 2] | 0, c[p >> 2] | 0, h) | 0; c[o >> 2] = fL(c[m >> 2] | 0, 50407, 50407) | 0; c[k >> 2] = QK(c[o >> 2] | 0, c[n >> 2] | 0) | 0; IQ(c[m >> 2] | 0); if (c[k >> 2] | 0) { c[f >> 2] = 1; p = c[f >> 2] | 0; l = j; return p | 0 } else { p = gL(c[h >> 2] | 0, c[i >> 2] | 0) | 0; c[c[g >> 2] >> 2] = p; c[f >> 2] = 0; p = c[f >> 2] | 0; l = j; return p | 0 } return 0 } function WK(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 32 | 0; f = i + 20 | 0; m = i + 16 | 0; h = i + 12 | 0; k = i + 8 | 0; j = i + 4 | 0; g = i; c[m >> 2] = a; c[h >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; if (VK(c[m >> 2] | 0, g, c[k >> 2] | 0, c[j >> 2] | 0) | 0) { c[f >> 2] = 1; m = c[f >> 2] | 0; l = i; return m | 0 } else { c[c[h >> 2] >> 2] = c[g >> 2]; c[f >> 2] = 0; m = c[f >> 2] | 0; l = i; return m | 0 } return 0 } function XK() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = 0; while (1) { a = c[14736] | 0; if ((c[b >> 2] | 0) >>> 0 >= (c[14735] | 0) >>> 0) break; IQ(c[a + (c[b >> 2] << 2) >> 2] | 0); c[b >> 2] = (c[b >> 2] | 0) + 1 } IQ(a); c[14735] = 0; c[14736] = 0; l = d; return } function YK(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 24 | 0; f = n + 20 | 0; e = n + 16 | 0; g = n + 12 | 0; h = n + 8 | 0; m = n + 4 | 0; i = n; c[f >> 2] = b; c[e >> 2] = d; c[h >> 2] = cP(c[f >> 2] | 0) | 0; while (1) { if ((c[h >> 2] | 0) >>> 0 > 0) d = (a[(c[f >> 2] | 0) + ((c[h >> 2] | 0) - 1) >> 0] | 0) == 47; else d = 0; b = c[h >> 2] | 0; if (!d) break; c[h >> 2] = b - 1 } do if (!b) j = 9; else { if ((c[h >> 2] | 0) == 1 ? (a[c[f >> 2] >> 0] | 0) == 46 : 0) { j = 9; break } c[i >> 2] = HQ((c[h >> 2] | 0) + 1 | 0) | 0; if (c[i >> 2] | 0) { QQ(c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0) | 0; a[(c[i >> 2] | 0) + (c[h >> 2] | 0) >> 0] = 0; break } c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } while (0); if ((j | 0) == 9) c[i >> 2] = 0; c[m >> 2] = JQ(c[14736] | 0, (c[14735] | 0) + 1 << 2) | 0; if (!(c[m >> 2] | 0)) { IQ(c[i >> 2] | 0); c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } if (c[e >> 2] | 0) { d = c[i >> 2] | 0; b = (c[m >> 2] | 0) + (c[14735] << 2) | 0 } else { c[g >> 2] = c[14735]; while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) break; c[(c[m >> 2] | 0) + (c[g >> 2] << 2) >> 2] = c[(c[m >> 2] | 0) + ((c[g >> 2] | 0) - 1 << 2) >> 2]; c[g >> 2] = (c[g >> 2] | 0) + -1 } d = c[i >> 2] | 0; b = c[m >> 2] | 0 } c[b >> 2] = d; c[14735] = (c[14735] | 0) + 1; c[14736] = c[m >> 2]; c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } function ZK(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[f >> 2] = b; c[e >> 2] = 1; b = c[f >> 2] | 0; do if ((a[c[f >> 2] >> 0] | 0) != 43) { d = c[f >> 2] | 0; if ((a[b >> 0] | 0) == 45) { c[f >> 2] = d + 1; c[e >> 2] = 0; break } if ((a[d >> 0] | 0) == 61) { c[f >> 2] = (c[f >> 2] | 0) + 1; XK() } } else c[f >> 2] = b + 1; while (0); f = YK(c[f >> 2] | 0, c[e >> 2] | 0) | 0; l = g; return f | 0 } function _K(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; f = i + 20 | 0; b = i + 16 | 0; d = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; e = i; c[b >> 2] = a; do if (c[b >> 2] | 0) { c[g >> 2] = $K(c[b >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[f >> 2] = 0; break } if (aL(c[g >> 2] | 0) | 0) { c[f >> 2] = c[g >> 2]; break } c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[14735] | 0) >>> 0) { a = 14; break } c[h >> 2] = bL(c[(c[14736] | 0) + (c[d >> 2] << 2) >> 2] | 0, c[g >> 2] | 0) | 0; if (!(c[h >> 2] | 0)) { a = 10; break } c[e >> 2] = dQ(c[h >> 2] | 0, 50759) | 0; if (c[e >> 2] | 0) { a = 12; break } IQ(c[h >> 2] | 0); c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((a | 0) == 10) { IQ(c[g >> 2] | 0); c[f >> 2] = 0; break } else if ((a | 0) == 12) { UP(c[e >> 2] | 0) | 0; IQ(c[g >> 2] | 0); c[f >> 2] = c[h >> 2]; break } else if ((a | 0) == 14) { c[f >> 2] = c[g >> 2]; break } } else c[f >> 2] = 0; while (0); l = i; return c[f >> 2] | 0 } function $K(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; g = h + 8 | 0; d = h + 4 | 0; e = h; c[g >> 2] = b; c[d >> 2] = cP(c[g >> 2] | 0) | 0; c[e >> 2] = HQ((c[d >> 2] | 0) + 1 | 0) | 0; if (!(c[e >> 2] | 0)) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } else { QQ(c[e >> 2] | 0, c[g >> 2] | 0, c[d >> 2] | 0) | 0; a[(c[e >> 2] | 0) + (c[d >> 2] | 0) >> 0] = 0; c[f >> 2] = c[e >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function aL(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; c[f >> 2] = b; if ((a[c[f >> 2] >> 0] | 0) == 47) c[d >> 2] = 1; else c[d >> 2] = 0; l = e; return c[d >> 2] | 0 } function bL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; i = k + 16 | 0; j = k + 12 | 0; e = k + 8 | 0; f = k + 4 | 0; g = k; c[i >> 2] = b; c[j >> 2] = d; if (!(c[i >> 2] | 0)) { c[h >> 2] = $K(c[j >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } c[e >> 2] = cP(c[i >> 2] | 0) | 0; c[f >> 2] = cP(c[j >> 2] | 0) | 0; c[g >> 2] = HQ((c[e >> 2] | 0) + (c[f >> 2] | 0) + 2 | 0) | 0; if (!(c[g >> 2] | 0)) { c[h >> 2] = 0; j = c[h >> 2] | 0; l = k; return j | 0 } else { QQ(c[g >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0) | 0; a[(c[g >> 2] | 0) + (c[e >> 2] | 0) >> 0] = 47; QQ((c[g >> 2] | 0) + (c[e >> 2] | 0) + 1 | 0, c[j >> 2] | 0, c[f >> 2] | 0) | 0; a[(c[g >> 2] | 0) + ((c[e >> 2] | 0) + (c[f >> 2] | 0) + 1) >> 0] = 0; c[h >> 2] = c[g >> 2]; j = c[h >> 2] | 0; l = k; return j | 0 } return 0 } function cL(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; b = g + 8 | 0; d = g + 4 | 0; e = g; c[b >> 2] = a; c[e >> 2] = 0; while (1) { c[e >> 2] = XL(c[b >> 2] | 0, c[e >> 2] | 0, 50410) | 0; if (!(c[e >> 2] | 0)) { a = 7; break } c[d >> 2] = CM(c[e >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { a = 4; break } if (ZK(c[d >> 2] | 0) | 0) { a = 6; break } } if ((a | 0) == 4) { c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((a | 0) == 6) { c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((a | 0) == 7) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function MC(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 16432 | 0; q = r + 40 | 0; p = r + 36 | 0; j = r + 32 | 0; i = r + 28 | 0; f = r + 24 | 0; h = r + 20 | 0; k = r + 16 | 0; e = r + 12 | 0; m = r + 8 | 0; g = r + 4 | 0; o = r + 48 | 0; n = r; c[p >> 2] = b; c[j >> 2] = d; c[k >> 2] = c[c[j >> 2] >> 2]; if (!(c[k >> 2] | 0)) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } if ((c[k >> 2] | 0) >>> 0 > 128) c[k >> 2] = 128; c[e >> 2] = 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) break; if (c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0 ? (c[c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] >> 2] | 0) >>> 0 > (c[e >> 2] | 0) >>> 0 : 0) c[e >> 2] = c[c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] >> 2]; c[f >> 2] = (c[f >> 2] | 0) + 1 } if (!(c[e >> 2] | 0)) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } if ((c[e >> 2] | 0) >>> 0 > 2) c[e >> 2] = 2; TQ(o | 0, 0, 16384) | 0; a[o >> 0] = 90; a[o + 1 >> 0] = -91; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= 95) break; a[o + (66 + (c[i >> 2] << 1) + 0) >> 0] = 32; a[o + (66 + (c[i >> 2] << 1) + 1) >> 0] = 7; c[i >> 2] = (c[i >> 2] | 0) + 1 } a[o + 256 >> 0] = -1; a[o + 257 >> 0] = 0; a[o + 258 >> 0] = (c[k >> 2] | 0) - 1; a[o + 259 >> 0] = c[e >> 2]; a[o + 260 >> 0] = 1; TQ(o + 261 | 0, 17, 512) | 0; TQ(o + 773 | 0, 0, 512) | 0; TQ(o + 1285 | 0, 51, 512) | 0; TQ(o + 1797 | 0, 68, 512) | 0; c[m >> 2] = 16384; c[f >> 2] = 0; a: while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) { b = 34; break } c[h >> 2] = 0; while (1) { b = c[f >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 >= 2) break; c[i >> 2] = (b << 1) + (c[h >> 2] | 0); c[n >> 2] = _B(c[j >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, 0) | 0; if (c[n >> 2] | 0) { c[g >> 2] = (((KB(c[n >> 2] | 0) | 0) + 7 | 0) >>> 0) / 8 | 0; if ((c[g >> 2] | 0) >>> 0 > 65535) { b = 24; break a } if ((c[m >> 2] ^ (c[m >> 2] | 0) + (c[g >> 2] | 0)) & -65536 | 0) c[m >> 2] = (c[m >> 2] | 0) + 65535 & -65536; rB(o, 261 + (c[i >> 2] << 1) | 0, 5); qB(o, 773 + (c[i >> 2] << 1) | 0, ((c[m >> 2] | 0) >>> 0) / 256 | 0); rB(o, 1285 + (c[i >> 2] << 1) | 0, c[g >> 2] | 0); a[o + (1797 + (c[i >> 2] << 1) + 0) >> 0] = 8; a[o + (1797 + (c[i >> 2] << 1) + 1) >> 0] = 7; if ((c[c[n >> 2] >> 2] | 0) >>> 0 < 375e3) a[o + (1797 + (c[i >> 2] << 1) + 1) >> 0] = 5; if (wB(c[p >> 2] | 0, c[m >> 2] | 0, c[(c[n >> 2] | 0) + 8 >> 2] | 0, c[g >> 2] | 0) | 0) { b = 30; break a } c[m >> 2] = (c[m >> 2] | 0) + (c[g >> 2] | 0) + 255 & -256 } c[h >> 2] = (c[h >> 2] | 0) + 1 } c[f >> 2] = b + 1 } if ((b | 0) == 24) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((b | 0) == 30) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((b | 0) == 34) if (wB(c[p >> 2] | 0, 0, o, 16384) | 0) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } return 0 } function NC(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; f = e + 4 | 0; b = e; c[f >> 2] = a; c[b >> 2] = OC(c[f >> 2] | 0) | 0; do if (sQ(c[b >> 2] | 0, 46919) | 0) { if (!(sQ(c[b >> 2] | 0, 46924) | 0)) { c[d >> 2] = 2; break } if (!(sQ(c[b >> 2] | 0, 46929) | 0)) { c[d >> 2] = 3; break } if (!(sQ(c[b >> 2] | 0, 46936) | 0)) { c[d >> 2] = 13; break } if (!(sQ(c[b >> 2] | 0, 46941) | 0)) { c[d >> 2] = 4; break } if (!(sQ(c[b >> 2] | 0, 46946) | 0)) { c[d >> 2] = 13; break } if (!(sQ(c[b >> 2] | 0, 46951) | 0)) { c[d >> 2] = 6; break } if (!(sQ(c[b >> 2] | 0, 46956) | 0)) { c[d >> 2] = 7; break } if (!(sQ(c[b >> 2] | 0, 46962) | 0)) { c[d >> 2] = 12; break } if (!(sQ(c[b >> 2] | 0, 46967) | 0)) { c[d >> 2] = 13; break } if (!(sQ(c[b >> 2] | 0, 46972) | 0)) { c[d >> 2] = 16; break } if (!(sQ(c[b >> 2] | 0, 46976) | 0)) { c[d >> 2] = 17; break } if (!(sQ(c[b >> 2] | 0, 46981) | 0)) { c[d >> 2] = 18; break } if (!(sQ(c[b >> 2] | 0, 46985) | 0)) { c[d >> 2] = 19; break } if (!(sQ(c[b >> 2] | 0, 46990) | 0)) { c[d >> 2] = 20; break } else { c[d >> 2] = 12; break } } else c[d >> 2] = 1; while (0); l = e; return c[d >> 2] | 0 } function OC(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = b; c[d >> 2] = 59585; while (1) { if (!(a[c[e >> 2] >> 0] | 0)) break; if ((a[c[e >> 2] >> 0] | 0) == 46) c[d >> 2] = c[e >> 2]; c[e >> 2] = (c[e >> 2] | 0) + 1 } l = f; return c[d >> 2] | 0 } function PC(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; g = f; c[d >> 2] = a; c[g >> 2] = b; do switch (c[g >> 2] | 0) { case 1: { c[e >> 2] = ND(c[d >> 2] | 0) | 0; break } case 2: { c[e >> 2] = RD(c[d >> 2] | 0) | 0; break } case 3: { c[e >> 2] = _D(c[d >> 2] | 0) | 0; break } case 4: { c[e >> 2] = mE(c[d >> 2] | 0) | 0; break } case 5: { c[e >> 2] = yE(c[d >> 2] | 0) | 0; break } case 6: { c[e >> 2] = CE(c[d >> 2] | 0) | 0; break } case 11: case 10: case 9: case 8: case 7: { c[e >> 2] = HE(c[d >> 2] | 0) | 0; break } case 12: { c[e >> 2] = LE(c[d >> 2] | 0) | 0; break } case 13: { c[e >> 2] = uF(c[d >> 2] | 0) | 0; break } case 14: { c[e >> 2] = sF(c[d >> 2] | 0) | 0; break } case 15: { c[e >> 2] = tF(c[d >> 2] | 0) | 0; break } case 16: { c[e >> 2] = rF(c[d >> 2] | 0) | 0; break } case 17: { c[e >> 2] = DF(c[d >> 2] | 0) | 0; break } case 18: { c[e >> 2] = MF(c[d >> 2] | 0) | 0; break } case 19: { c[e >> 2] = _F(c[d >> 2] | 0) | 0; break } case 20: { c[e >> 2] = oG(c[d >> 2] | 0) | 0; break } default: c[e >> 2] = 0 } while (0); l = f; return c[e >> 2] | 0 } function QC(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; b = g + 8 | 0; e = g + 4 | 0; d = g; c[b >> 2] = a; c[d >> 2] = dQ(c[b >> 2] | 0, 50621) | 0; if (!(c[d >> 2] | 0)) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } c[e >> 2] = RC(c[d >> 2] | 0) | 0; UP(c[d >> 2] | 0) | 0; if ((c[e >> 2] | 0) == 13 ? (sQ(OC(c[b >> 2] | 0) | 0, 46972) | 0) == 0 : 0) c[e >> 2] = 16; c[f >> 2] = c[e >> 2]; f = c[f >> 2] | 0; l = g; return f | 0 } function RC(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; do if (!(lF(c[b >> 2] | 0) | 0)) { if (KE(c[b >> 2] | 0) | 0) { c[d >> 2] = 7; break } if (nG(c[b >> 2] | 0) | 0) { c[d >> 2] = 19; break } if (xE(c[b >> 2] | 0) | 0) { c[d >> 2] = 4; break } if (lE(c[b >> 2] | 0) | 0) { c[d >> 2] = 3; break } if (BE(c[b >> 2] | 0) | 0) { c[d >> 2] = 5; break } if (GE(c[b >> 2] | 0) | 0) { c[d >> 2] = 6; break } if (LF(c[b >> 2] | 0) | 0) { c[d >> 2] = 17; break } if (CF(c[b >> 2] | 0) | 0) { c[d >> 2] = 13; break } else { c[d >> 2] = 0; break } } else c[d >> 2] = 12; while (0); l = e; return c[d >> 2] | 0 } function SC(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; e = h + 8 | 0; f = h + 4 | 0; i = h; c[e >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; do switch (c[i >> 2] | 0) { case 1: { c[g >> 2] = PD(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 2: { c[g >> 2] = YD(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 3: { c[g >> 2] = dE(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 4: { c[g >> 2] = qE(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 5: { c[g >> 2] = wF(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 6: { c[g >> 2] = FE(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 7: { c[g >> 2] = JE(c[e >> 2] | 0, c[f >> 2] | 0, -1) | 0; break } case 8: { c[g >> 2] = JE(c[e >> 2] | 0, c[f >> 2] | 0, 0) | 0; break } case 9: { c[g >> 2] = JE(c[e >> 2] | 0, c[f >> 2] | 0, 1) | 0; break } case 10: { c[g >> 2] = JE(c[e >> 2] | 0, c[f >> 2] | 0, 2) | 0; break } case 11: { c[g >> 2] = JE(c[e >> 2] | 0, c[f >> 2] | 0, 4) | 0; break } case 12: { c[g >> 2] = _E(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 13: { c[g >> 2] = wF(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 14: { c[g >> 2] = yF(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 15: { c[g >> 2] = BF(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 16: { c[g >> 2] = vF(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 17: { c[g >> 2] = KF(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 19: { c[g >> 2] = iG(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 20: { c[g >> 2] = rG(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } default: c[g >> 2] = 1 } while (0); l = h; return c[g >> 2] | 0 } function TC(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 20 | 0; e = k + 16 | 0; g = k + 12 | 0; j = k + 8 | 0; h = k + 4 | 0; f = k; c[e >> 2] = a; c[g >> 2] = b; c[j >> 2] = d; if (!(c[j >> 2] | 0)) c[j >> 2] = NC(c[e >> 2] | 0) | 0; c[f >> 2] = dQ(c[e >> 2] | 0, 51391) | 0; if (!(c[f >> 2] | 0)) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } else { c[h >> 2] = SC(c[f >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0) | 0; UP(c[f >> 2] | 0) | 0; c[i >> 2] = c[h >> 2]; j = c[i >> 2] | 0; l = k; return j | 0 } return 0 } function UC(d, e, f, g) { d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; k = o + 20 | 0; h = o + 16 | 0; i = o + 12 | 0; m = o + 8 | 0; j = o + 4 | 0; n = o; c[h >> 2] = d; c[i >> 2] = e; c[m >> 2] = f; c[j >> 2] = g; c[n >> 2] = HQ(60) | 0; if (!(c[n >> 2] | 0)) { c[k >> 2] = 0; n = c[k >> 2] | 0; l = o; return n | 0 } c[c[n >> 2] >> 2] = 0; b[(c[n >> 2] | 0) + 4 >> 1] = c[h >> 2]; b[(c[n >> 2] | 0) + 6 >> 1] = c[i >> 2]; b[(c[n >> 2] | 0) + 8 >> 1] = c[m >> 2]; b[(c[n >> 2] | 0) + 10 >> 1] = c[j >> 2]; c[(c[n >> 2] | 0) + 12 >> 2] = 0; b[(c[n >> 2] | 0) + 16 >> 1] = 2; c[(c[n >> 2] | 0) + 20 >> 2] = 0; if ((c[j >> 2] | 0) >>> 0 > 0) { m = HQ(c[j >> 2] | 0) | 0; c[(c[n >> 2] | 0) + 24 >> 2] = m; if (!(c[(c[n >> 2] | 0) + 24 >> 2] | 0)) { IQ(c[n >> 2] | 0); c[k >> 2] = 0; n = c[k >> 2] | 0; l = o; return n | 0 } } else c[(c[n >> 2] | 0) + 24 >> 2] = 0; b[(c[n >> 2] | 0) + 28 >> 1] = 0; c[(c[n >> 2] | 0) + 48 >> 2] = -1; c[(c[n >> 2] | 0) + 52 >> 2] = 0; a[(c[n >> 2] | 0) + 56 >> 0] = 0; a[(c[n >> 2] | 0) + 58 >> 0] = 0; c[k >> 2] = c[n >> 2]; n = c[k >> 2] | 0; l = o; return n | 0 } function VC(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; while (1) { if (!(c[b >> 2] | 0)) break; c[d >> 2] = c[b >> 2]; c[b >> 2] = c[c[b >> 2] >> 2]; IQ(c[(c[d >> 2] | 0) + 24 >> 2] | 0); IQ(c[d >> 2] | 0) } l = e; return } function WC(d, f) { d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; i = m + 16 | 0; j = m + 12 | 0; g = m + 8 | 0; h = m + 4 | 0; k = m; c[j >> 2] = d; c[g >> 2] = f; c[h >> 2] = UC(e[(c[j >> 2] | 0) + 4 >> 1] | 0, e[(c[j >> 2] | 0) + 6 >> 1] | 0, e[(c[j >> 2] | 0) + 8 >> 1] | 0, e[(c[j >> 2] | 0) + 10 >> 1] | 0) | 0; if (!(c[h >> 2] | 0)) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } c[(c[h >> 2] | 0) + 12 >> 2] = c[(c[j >> 2] | 0) + 12 >> 2]; b[(c[h >> 2] | 0) + 16 >> 1] = b[(c[j >> 2] | 0) + 16 >> 1] | 0; QQ(c[(c[h >> 2] | 0) + 24 >> 2] | 0, c[(c[j >> 2] | 0) + 24 >> 2] | 0, e[(c[h >> 2] | 0) + 10 >> 1] | 0) | 0; b[(c[h >> 2] | 0) + 28 >> 1] = b[(c[j >> 2] | 0) + 28 >> 1] | 0; if ((e[(c[j >> 2] | 0) + 28 >> 1] | 0) > 0) QQ((c[h >> 2] | 0) + 30 | 0, (c[j >> 2] | 0) + 30 | 0, e[(c[j >> 2] | 0) + 28 >> 1] | 0) | 0; c[(c[h >> 2] | 0) + 48 >> 2] = c[(c[j >> 2] | 0) + 48 >> 2]; c[(c[h >> 2] | 0) + 52 >> 2] = c[(c[j >> 2] | 0) + 52 >> 2]; if (a[(c[j >> 2] | 0) + 56 >> 0] | 0) { a[(c[h >> 2] | 0) + 56 >> 0] = 1; a[(c[h >> 2] | 0) + 57 >> 0] = a[(c[j >> 2] | 0) + 57 >> 0] | 0 } if (a[(c[j >> 2] | 0) + 58 >> 0] | 0) { a[(c[h >> 2] | 0) + 58 >> 0] = 1; a[(c[h >> 2] | 0) + 59 >> 0] = a[(c[j >> 2] | 0) + 59 >> 0] | 0 } a: do if (!(c[g >> 2] | 0)) c[(c[h >> 2] | 0) + 20 >> 2] = 0; else { c[(c[h >> 2] | 0) + 20 >> 2] = c[(c[j >> 2] | 0) + 20 >> 2]; c[k >> 2] = c[h >> 2]; c[j >> 2] = c[c[j >> 2] >> 2]; while (1) { if (!(c[j >> 2] | 0)) break a; d = WC(c[j >> 2] | 0, 0) | 0; c[c[k >> 2] >> 2] = d; if (!(c[c[k >> 2] >> 2] | 0)) break; c[j >> 2] = c[c[j >> 2] >> 2] } VC(c[h >> 2] | 0); c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } while (0); c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = m; return k | 0 } function XC(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = a; c[d >> 2] = b; while (1) { if (!(c[c[e >> 2] >> 2] | 0)) break; c[e >> 2] = c[c[e >> 2] >> 2] } c[c[e >> 2] >> 2] = c[d >> 2]; l = f; return } function YC(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = b; while (1) { a = c[e >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 <= 0) { b = 6; break } if (!a) { b = 4; break } c[e >> 2] = c[c[e >> 2] >> 2]; c[d >> 2] = (c[d >> 2] | 0) - 1 } if ((b | 0) == 4) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((b | 0) == 6) { c[f >> 2] = a; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function ZC(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; h = m + 16 | 0; i = m + 12 | 0; j = m + 8 | 0; g = m + 4 | 0; k = m; c[i >> 2] = a; c[j >> 2] = d; c[g >> 2] = f; if ((c[j >> 2] | 0) >>> 0 <= (e[(c[i >> 2] | 0) + 10 >> 1] | 0) >>> 0) { b[(c[i >> 2] | 0) + 10 >> 1] = c[j >> 2]; c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } c[k >> 2] = JQ(c[(c[i >> 2] | 0) + 24 >> 2] | 0, c[j >> 2] | 0) | 0; if (!(c[k >> 2] | 0)) { c[h >> 2] = 1; k = c[h >> 2] | 0; l = m; return k | 0 } if ((c[j >> 2] | 0) >>> 0 > (e[(c[i >> 2] | 0) + 10 >> 1] | 0) >>> 0) TQ((c[k >> 2] | 0) + (e[(c[i >> 2] | 0) + 10 >> 1] | 0) | 0, c[g >> 2] & 255 | 0, (c[j >> 2] | 0) - (e[(c[i >> 2] | 0) + 10 >> 1] | 0) | 0) | 0; b[(c[i >> 2] | 0) + 10 >> 1] = c[j >> 2]; c[(c[i >> 2] | 0) + 24 >> 2] = c[k >> 2]; c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } function _C(b, d) { b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; h = i + 4 | 0; f = i; c[g >> 2] = b; c[h >> 2] = d; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[(c[g >> 2] | 0) + 10 >> 1] | 0) >>> 0) break; a[(c[(c[g >> 2] | 0) + 24 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = c[h >> 2]; c[f >> 2] = (c[f >> 2] | 0) + 1 } l = i; return } function $C(a) { a = a | 0; var b = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; b = h; c[f >> 2] = a; c[b >> 2] = 1; while (1) { if ((c[b >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 10 >> 1] | 0) >>> 0) { b = 6; break } if ((d[c[(c[f >> 2] | 0) + 24 >> 2] >> 0] | 0 | 0) != (d[(c[(c[f >> 2] | 0) + 24 >> 2] | 0) + (c[b >> 2] | 0) >> 0] | 0 | 0)) { b = 4; break } c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((b | 0) == 4) { c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } else if ((b | 0) == 6) { c[g >> 2] = 1; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function aD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; h = f + 4 | 0; g = f; c[e >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; b = c[h >> 2] | 0; if (c[g >> 2] | 0) { h = (c[e >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | b; l = f; return } else { h = (c[e >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] & ~b; l = f; return } } function bD(a, d) { a = a | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[f >> 2] = a; c[e >> 2] = d; while (1) { if (!(c[f >> 2] | 0)) break; b[(c[f >> 2] | 0) + 16 >> 1] = c[e >> 2]; c[f >> 2] = c[c[f >> 2] >> 2] } l = g; return } function cD(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 48 >> 2] = c[f >> 2]; l = d; return } function dD(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 48 >> 2] | 0 } function eD(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 52 >> 2] = c[f >> 2]; l = d; return } function fD(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 52 >> 2] | 0 } function gD(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 56 >> 0] = 1; a[(c[f >> 2] | 0) + 57 >> 0] = a[g >> 0] | 0; l = e; return } function hD(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; h = i + 4 | 0; f = i; c[h >> 2] = b; if (a[(c[h >> 2] | 0) + 56 >> 0] | 0) { c[g >> 2] = d[(c[h >> 2] | 0) + 57 >> 0]; h = c[g >> 2] | 0; l = i; return h | 0 } c[f >> 2] = 0; while (1) { b = c[f >> 2] | 0; if ((128 << c[f >> 2] | 0) >= (e[(c[h >> 2] | 0) + 10 >> 1] | 0)) break; c[f >> 2] = b + 1 } c[g >> 2] = b; h = c[g >> 2] | 0; l = i; return h | 0 } function iD(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 58 >> 0] = 1; a[(c[f >> 2] | 0) + 59 >> 0] = a[g >> 0] | 0; l = e; return } function jD(b) { b = b | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; c[f >> 2] = b; if (a[(c[f >> 2] | 0) + 58 >> 0] | 0) { c[e >> 2] = d[(c[f >> 2] | 0) + 59 >> 0]; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function kD(d, e, f) { d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; i = k + 16 | 0; m = k + 12 | 0; g = k + 8 | 0; h = k + 4 | 0; j = k; c[i >> 2] = d; c[m >> 2] = e; c[g >> 2] = f; c[j >> 2] = c[m >> 2]; if ((c[g >> 2] | 0) >>> 0 > 16) c[g >> 2] = 16; b[(c[i >> 2] | 0) + 28 >> 1] = c[g >> 2]; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) break; a[(c[i >> 2] | 0) + 30 + (c[h >> 2] | 0) >> 0] = a[(c[j >> 2] | 0) + (c[h >> 2] | 0) >> 0] | 0; c[h >> 2] = (c[h >> 2] | 0) + 1 } l = k; return c[g >> 2] | 0 } function lD(b, d, f) { b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 32 | 0; k = m + 20 | 0; n = m + 16 | 0; g = m + 12 | 0; i = m + 8 | 0; j = m + 4 | 0; h = m; c[k >> 2] = b; c[n >> 2] = d; c[g >> 2] = f; c[h >> 2] = c[n >> 2]; if ((c[g >> 2] | 0) >>> 0 < (e[(c[k >> 2] | 0) + 28 >> 1] | 0) >>> 0) d = c[g >> 2] | 0; else d = e[(c[k >> 2] | 0) + 28 >> 1] | 0; c[j >> 2] = d; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; a[(c[h >> 2] | 0) + (c[i >> 2] | 0) >> 0] = a[(c[k >> 2] | 0) + 30 + (c[i >> 2] | 0) >> 0] | 0; c[i >> 2] = (c[i >> 2] | 0) + 1 } c[i >> 2] = c[j >> 2]; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) break; a[(c[h >> 2] | 0) + (c[i >> 2] | 0) >> 0] = 0; c[i >> 2] = (c[i >> 2] | 0) + 1 } l = m; return c[j >> 2] | 0 } function mD(a) { a = a | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = HQ(8) | 0; if (!(c[f >> 2] | 0)) { c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { b[c[f >> 2] >> 1] = c[d >> 2]; b[(c[f >> 2] | 0) + 2 >> 1] = 0; c[(c[f >> 2] | 0) + 4 >> 2] = 0; c[e >> 2] = c[f >> 2]; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function nD(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; c[d >> 2] = 0; while (1) { a = c[(c[f >> 2] | 0) + 4 >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; VC(c[a + (c[d >> 2] << 2) >> 2] | 0); c[d >> 2] = (c[d >> 2] | 0) + 1 } IQ(a); b[(c[f >> 2] | 0) + 2 >> 1] = 0; c[(c[f >> 2] | 0) + 4 >> 2] = 0; l = g; return } function oD(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } nD(c[b >> 2] | 0); IQ(c[b >> 2] | 0); l = d; return } function pD(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j + 12 | 0; i = j + 8 | 0; g = j + 4 | 0; h = j; c[i >> 2] = a; c[g >> 2] = d; c[h >> 2] = JQ(c[(c[i >> 2] | 0) + 4 >> 2] | 0, (e[(c[i >> 2] | 0) + 2 >> 1] | 0) + 1 << 2) | 0; if (!(c[h >> 2] | 0)) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = j; return i | 0 } else { c[(c[i >> 2] | 0) + 4 >> 2] = c[h >> 2]; c[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + ((e[(c[i >> 2] | 0) + 2 >> 1] | 0) << 2) >> 2] = c[g >> 2]; i = (c[i >> 2] | 0) + 2 | 0; b[i >> 1] = (e[i >> 1] | 0) + 1; c[f >> 2] = 0; i = c[f >> 2] | 0; l = j; return i | 0 } return 0 } function qD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; m = o + 28 | 0; n = o + 24 | 0; f = o + 20 | 0; j = o + 16 | 0; k = o + 12 | 0; i = o + 8 | 0; h = o + 4 | 0; g = o; c[n >> 2] = a; c[f >> 2] = b; c[j >> 2] = d; if (!(e[(c[n >> 2] | 0) + 2 >> 1] | 0)) { c[m >> 2] = 0; n = c[m >> 2] | 0; l = o; return n | 0 } if (c[j >> 2] | 0) if ((c[f >> 2] | 0) >>> 0 < (e[(c[n >> 2] | 0) + 2 >> 1] | 0) >>> 0) { c[m >> 2] = c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; n = c[m >> 2] | 0; l = o; return n | 0 } else { c[m >> 2] = 0; n = c[m >> 2] | 0; l = o; return n | 0 } c[i >> 2] = 0; a: while (1) { c[h >> 2] = 0; c[g >> 2] = 0; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (e[(c[n >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; do if ((e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { if (!(c[g >> 2] | 0)) { c[h >> 2] = c[k >> 2]; c[g >> 2] = 1; break } if ((e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0 | 0) < (e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0 | 0)) { c[h >> 2] = c[k >> 2]; c[g >> 2] = 1; break } if ((e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0 | 0) == (e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0 | 0)) c[g >> 2] = (c[g >> 2] | 0) + 1 } while (0); c[k >> 2] = (c[k >> 2] | 0) + 1 } if (!(c[g >> 2] | 0)) { b = 19; break } b: do if ((c[f >> 2] | 0) >>> 0 < (c[g >> 2] | 0) >>> 0) { c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (e[(c[n >> 2] | 0) + 2 >> 1] | 0) >>> 0) break b; if ((e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0 | 0) == (e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0 | 0)) { if (!(c[f >> 2] | 0)) { b = 25; break a } c[f >> 2] = (c[f >> 2] | 0) - 1 } c[k >> 2] = (c[k >> 2] | 0) + 1 } } else c[f >> 2] = (c[f >> 2] | 0) - (c[g >> 2] | 0); while (0); c[i >> 2] = (e[(c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0) + 1 } if ((b | 0) == 19) { c[m >> 2] = 0; n = c[m >> 2] | 0; l = o; return n | 0 } else if ((b | 0) == 25) { c[m >> 2] = c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2]; n = c[m >> 2] | 0; l = o; return n | 0 } return 0 } function rD(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; i = n + 28 | 0; m = n + 24 | 0; f = n + 20 | 0; d = n + 16 | 0; g = n + 12 | 0; h = n + 8 | 0; j = n + 4 | 0; k = n; c[m >> 2] = a; c[f >> 2] = b; c[h >> 2] = e[(c[m >> 2] | 0) + 2 >> 1]; if ((c[h >> 2] | 0) >>> 0 < 2) { c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } c[j >> 2] = HQ(c[h >> 2] << 2) | 0; if (!(c[j >> 2] | 0)) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2] = 0; c[g >> 2] = c[d >> 2]; while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) break; if ((e[(c[k >> 2] | 0) + 8 >> 1] | 0 | 0) >= (e[(c[(c[j >> 2] | 0) + ((c[g >> 2] | 0) - 1 << 2) >> 2] | 0) + 8 >> 1] | 0 | 0)) break; c[(c[j >> 2] | 0) + (c[g >> 2] << 2) >> 2] = c[(c[j >> 2] | 0) + ((c[g >> 2] | 0) - 1 << 2) >> 2]; c[g >> 2] = (c[g >> 2] | 0) - 1 } c[(c[j >> 2] | 0) + (c[g >> 2] << 2) >> 2] = c[k >> 2]; c[d >> 2] = (c[d >> 2] | 0) + 1 } c[g >> 2] = 0; c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; while (1) { if (!(c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2] | 0)) break; c[g >> 2] = (((c[g >> 2] | 0) + 1 | 0) >>> 0) % ((c[h >> 2] | 0) >>> 0) | 0 } c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2] = c[(c[j >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[g >> 2] = (((c[g >> 2] | 0) + (c[f >> 2] | 0) | 0) >>> 0) % ((c[h >> 2] | 0) >>> 0) | 0; c[d >> 2] = (c[d >> 2] | 0) + 1 } IQ(c[j >> 2] | 0); c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } function sD(a) { a = a | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[d >> 2] = a; c[e >> 2] = HQ(8) | 0; if (!(c[e >> 2] | 0)) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } else { b[c[e >> 2] >> 1] = c[d >> 2]; b[(c[e >> 2] | 0) + 2 >> 1] = 0; c[(c[e >> 2] | 0) + 4 >> 2] = 0; c[f >> 2] = c[e >> 2]; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function tD(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = 0; while (1) { a = c[(c[d >> 2] | 0) + 4 >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 >= (e[(c[d >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; oD(c[a + (c[f >> 2] << 2) >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } IQ(a); b[(c[d >> 2] | 0) + 2 >> 1] = 0; c[(c[d >> 2] | 0) + 4 >> 2] = 0; l = g; return } function uD(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } tD(c[b >> 2] | 0); IQ(c[b >> 2] | 0); l = d; return } function vD(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; g = j + 12 | 0; f = j + 8 | 0; i = j + 4 | 0; h = j; c[f >> 2] = a; c[i >> 2] = d; c[h >> 2] = JQ(c[(c[f >> 2] | 0) + 4 >> 2] | 0, (e[(c[f >> 2] | 0) + 2 >> 1] | 0) + 1 << 2) | 0; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; i = c[g >> 2] | 0; l = j; return i | 0 } c[(c[f >> 2] | 0) + 4 >> 2] = c[h >> 2]; if ((c[i >> 2] | 0) == 0 ? (c[i >> 2] = mD(e[(c[f >> 2] | 0) + 2 >> 1] | 0) | 0, (c[i >> 2] | 0) == 0) : 0) { c[g >> 2] = 1; i = c[g >> 2] | 0; l = j; return i | 0 } c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + ((e[(c[f >> 2] | 0) + 2 >> 1] | 0) << 2) >> 2] = c[i >> 2]; i = (c[f >> 2] | 0) + 2 | 0; b[i >> 1] = (e[i >> 1] | 0) + 1; c[g >> 2] = 0; i = c[g >> 2] | 0; l = j; return i | 0 } function wD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; g = j + 8 | 0; h = j + 4 | 0; f = j; c[g >> 2] = a; c[h >> 2] = b; c[f >> 2] = d; if ((c[h >> 2] | 0) >>> 0 < (e[(c[g >> 2] | 0) + 2 >> 1] | 0) >>> 0) { c[i >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } if (!(c[f >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } while (1) { f = c[g >> 2] | 0; if ((e[(c[g >> 2] | 0) + 2 >> 1] | 0) >>> 0 > (c[h >> 2] | 0) >>> 0) { d = 8; break } if (vD(f, 0) | 0) { d = 7; break } } if ((d | 0) == 7) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else if ((d | 0) == 8) { c[i >> 2] = c[(c[f + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function xD() { var a = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; a = e; c[a >> 2] = HQ(16) | 0; if (!(c[a >> 2] | 0)) { c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } else { b[c[a >> 2] >> 1] = 0; c[(c[a >> 2] | 0) + 4 >> 2] = 0; c[(c[a >> 2] | 0) + 8 >> 2] = 0; c[(c[a >> 2] | 0) + 12 >> 2] = 0; c[d >> 2] = c[a >> 2]; d = c[d >> 2] | 0; l = e; return d | 0 } return 0 } function yD(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; c[d >> 2] = 0; while (1) { a = c[(c[f >> 2] | 0) + 4 >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= (e[c[f >> 2] >> 1] | 0) >>> 0) break; uD(c[a + (c[d >> 2] << 2) >> 2] | 0); c[d >> 2] = (c[d >> 2] | 0) + 1 } IQ(a); b[c[f >> 2] >> 1] = 0; c[(c[f >> 2] | 0) + 4 >> 2] = 0; IQ(c[(c[f >> 2] | 0) + 12 >> 2] | 0); l = g; return } function zD(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } yD(c[b >> 2] | 0); IQ(c[b >> 2] | 0); l = d; return } function AD(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; c[d >> 2] = 0; while (1) { a = c[(c[f >> 2] | 0) + 4 >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= (e[c[f >> 2] >> 1] | 0) >>> 0) break; uD(c[a + (c[d >> 2] << 2) >> 2] | 0); c[d >> 2] = (c[d >> 2] | 0) + 1 } IQ(a); b[c[f >> 2] >> 1] = 0; c[(c[f >> 2] | 0) + 4 >> 2] = 0; IQ(c[(c[f >> 2] | 0) + 12 >> 2] | 0); c[(c[f >> 2] | 0) + 8 >> 2] = 0; c[(c[f >> 2] | 0) + 12 >> 2] = 0; l = g; return } function BD(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 12 | 0; g = j + 8 | 0; f = j + 4 | 0; i = j; c[g >> 2] = a; c[f >> 2] = d; c[i >> 2] = JQ(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (e[c[g >> 2] >> 1] | 0) + 1 << 2) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } c[(c[g >> 2] | 0) + 4 >> 2] = c[i >> 2]; if ((c[f >> 2] | 0) == 0 ? (c[f >> 2] = sD(e[c[g >> 2] >> 1] | 0) | 0, (c[f >> 2] | 0) == 0) : 0) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + ((e[c[g >> 2] >> 1] | 0) << 2) >> 2] = c[f >> 2]; i = c[g >> 2] | 0; b[i >> 1] = (e[i >> 1] | 0) + 1; c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } function CD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; f = h + 16 | 0; j = h + 12 | 0; g = h + 8 | 0; i = h + 4 | 0; e = h; c[j >> 2] = a; c[g >> 2] = b; c[i >> 2] = d; c[e >> 2] = DD(c[j >> 2] | 0, c[i >> 2] | 0, 1) | 0; if (!(c[e >> 2] | 0)) { c[f >> 2] = 1; j = c[f >> 2] | 0; l = h; return j | 0 } if (vD(c[e >> 2] | 0, c[g >> 2] | 0) | 0) { c[f >> 2] = 1; j = c[f >> 2] | 0; l = h; return j | 0 } else { c[f >> 2] = 0; j = c[f >> 2] | 0; l = h; return j | 0 } return 0 } function DD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; g = j + 8 | 0; h = j + 4 | 0; f = j; c[g >> 2] = a; c[h >> 2] = b; c[f >> 2] = d; if ((c[h >> 2] | 0) >>> 0 < (e[c[g >> 2] >> 1] | 0) >>> 0) { c[i >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } if (!(c[f >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } while (1) { f = c[g >> 2] | 0; if ((e[c[g >> 2] >> 1] | 0) >>> 0 > (c[h >> 2] | 0) >>> 0) { d = 8; break } if (BD(f, 0) | 0) { d = 7; break } } if ((d | 0) == 7) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else if ((d | 0) == 8) { c[i >> 2] = c[(c[f + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function ED(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 32 | 0; f = i + 20 | 0; m = i + 16 | 0; g = i + 12 | 0; k = i + 8 | 0; j = i + 4 | 0; h = i; c[m >> 2] = a; c[g >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; c[h >> 2] = FD(c[m >> 2] | 0, c[k >> 2] | 0, c[j >> 2] | 0, 1) | 0; if (!(c[h >> 2] | 0)) { c[f >> 2] = 1; m = c[f >> 2] | 0; l = i; return m | 0 } if (pD(c[h >> 2] | 0, c[g >> 2] | 0) | 0) { c[f >> 2] = 1; m = c[f >> 2] | 0; l = i; return m | 0 } else { c[f >> 2] = 0; m = c[f >> 2] | 0; l = i; return m | 0 } return 0 } function FD(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; k = l; l = l + 32 | 0; i = k + 24 | 0; n = k + 20 | 0; m = k + 16 | 0; h = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; j = k; c[n >> 2] = a; c[m >> 2] = b; c[h >> 2] = d; c[f >> 2] = e; c[g >> 2] = DD(c[n >> 2] | 0, c[m >> 2] | 0, c[f >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = 0; n = c[i >> 2] | 0; l = k; return n | 0 } c[j >> 2] = wD(c[g >> 2] | 0, c[h >> 2] | 0, c[f >> 2] | 0) | 0; if (!(c[j >> 2] | 0)) { c[i >> 2] = 0; n = c[i >> 2] | 0; l = k; return n | 0 } else { c[i >> 2] = c[j >> 2]; n = c[i >> 2] | 0; l = k; return n | 0 } return 0 } function GD(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; o = l; l = l + 32 | 0; j = o + 28 | 0; m = o + 24 | 0; f = o + 20 | 0; i = o + 16 | 0; k = o + 12 | 0; h = o + 8 | 0; g = o + 4 | 0; n = o; c[j >> 2] = a; c[m >> 2] = d; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[c[j >> 2] >> 1] | 0) >>> 0) break; c[g >> 2] = c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[g >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; c[h >> 2] = 0; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (e[(c[n >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; if ((c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2] | 0) != (c[m >> 2] | 0)) { p = c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2] | 0; a = c[(c[n >> 2] | 0) + 4 >> 2] | 0; d = c[h >> 2] | 0; c[h >> 2] = d + 1; c[a + (d << 2) >> 2] = p } c[k >> 2] = (c[k >> 2] | 0) + 1 } b[(c[n >> 2] | 0) + 2 >> 1] = c[h >> 2]; c[i >> 2] = (c[i >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } l = o; return } function HD(a, b, d, f, g) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; n = l; l = l + 32 | 0; k = n + 28 | 0; q = n + 24 | 0; p = n + 20 | 0; o = n + 16 | 0; i = n + 12 | 0; h = n + 8 | 0; j = n + 4 | 0; m = n; c[q >> 2] = a; c[p >> 2] = b; c[o >> 2] = d; c[i >> 2] = f; c[h >> 2] = g; c[m >> 2] = FD(c[q >> 2] | 0, c[p >> 2] | 0, c[o >> 2] | 0, 0) | 0; if (!(c[m >> 2] | 0)) { c[k >> 2] = 0; q = c[k >> 2] | 0; l = n; return q | 0 } if (c[h >> 2] | 0) if ((c[i >> 2] | 0) >>> 0 < (e[(c[m >> 2] | 0) + 2 >> 1] | 0) >>> 0) { c[k >> 2] = c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; q = c[k >> 2] | 0; l = n; return q | 0 } else { c[k >> 2] = 0; q = c[k >> 2] | 0; l = n; return q | 0 } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (e[(c[m >> 2] | 0) + 2 >> 1] | 0) >>> 0) { b = 12; break } if ((e[(c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[j >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0 | 0) == (c[i >> 2] | 0)) { b = 10; break } c[j >> 2] = (c[j >> 2] | 0) + 1 } if ((b | 0) == 10) { c[k >> 2] = c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[j >> 2] << 2) >> 2]; q = c[k >> 2] | 0; l = n; return q | 0 } else if ((b | 0) == 12) { c[k >> 2] = 0; q = c[k >> 2] | 0; l = n; return q | 0 } return 0 } function ID(a, b, d, f, g) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; v = l; l = l + 48 | 0; r = v + 44 | 0; k = v + 40 | 0; j = v + 36 | 0; o = v + 32 | 0; p = v + 28 | 0; q = v + 24 | 0; i = v + 20 | 0; m = v + 16 | 0; n = v + 12 | 0; h = v + 8 | 0; t = v + 4 | 0; s = v; c[k >> 2] = a; c[j >> 2] = b; c[o >> 2] = d; c[p >> 2] = f; c[q >> 2] = g; c[i >> 2] = 0; a: while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[c[k >> 2] >> 1] | 0) >>> 0) { u = 16; break } c[h >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; c[m >> 2] = 0; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (e[(c[h >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[t >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[m >> 2] << 2) >> 2]; b = c[t >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 < (e[(c[t >> 2] | 0) + 2 >> 1] | 0) >>> 0) break a; c[j >> 2] = (c[j >> 2] | 0) - (e[b + 2 >> 1] | 0); c[m >> 2] = (c[m >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((u | 0) == 16) { c[r >> 2] = 1; u = c[r >> 2] | 0; l = v; return u | 0 } c[s >> 2] = qD(b, c[j >> 2] | 0, 0) | 0; if (!(c[s >> 2] | 0)) { c[r >> 2] = 1; u = c[r >> 2] | 0; l = v; return u | 0 } c[c[o >> 2] >> 2] = c[i >> 2]; c[c[p >> 2] >> 2] = c[m >> 2]; c[c[q >> 2] >> 2] = 0; c[n >> 2] = 0; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (e[(c[t >> 2] | 0) + 2 >> 1] | 0) >>> 0) { u = 13; break } if ((c[(c[(c[t >> 2] | 0) + 4 >> 2] | 0) + (c[n >> 2] << 2) >> 2] | 0) == (c[s >> 2] | 0)) { u = 11; break } u = c[q >> 2] | 0; c[u >> 2] = (c[u >> 2] | 0) + 1; c[n >> 2] = (c[n >> 2] | 0) + 1 } if ((u | 0) == 11) { c[r >> 2] = 0; u = c[r >> 2] | 0; l = v; return u | 0 } else if ((u | 0) == 13) { c[r >> 2] = 1; u = c[r >> 2] | 0; l = v; return u | 0 } return 0 } function JD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; g = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; i = j; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; c[i >> 2] = JQ(c[(c[g >> 2] | 0) + 12 >> 2] | 0, (c[(c[g >> 2] | 0) + 8 >> 2] | 0) + (c[f >> 2] | 0) | 0) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } else { QQ((c[i >> 2] | 0) + (c[(c[g >> 2] | 0) + 8 >> 2] | 0) | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; a = (c[g >> 2] | 0) + 8 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[f >> 2] | 0); c[(c[g >> 2] | 0) + 12 >> 2] = c[i >> 2]; c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function KD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; g = i + 8 | 0; e = i + 4 | 0; f = i; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; IQ(c[(c[g >> 2] | 0) + 12 >> 2] | 0); c[(c[g >> 2] | 0) + 8 >> 2] = 0; c[(c[g >> 2] | 0) + 12 >> 2] = 0; if ((c[e >> 2] | 0) == 0 | (c[f >> 2] | 0) == 0) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } if (JD(c[g >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } else { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function LD(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; i = m + 16 | 0; g = m + 12 | 0; j = m + 8 | 0; h = m + 4 | 0; k = m; c[i >> 2] = b; c[g >> 2] = 0; c[j >> 2] = 0; c[h >> 2] = c[(c[i >> 2] | 0) + 8 >> 2]; c[k >> 2] = c[(c[i >> 2] | 0) + 12 >> 2]; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; if ((d[(c[k >> 2] | 0) + (c[g >> 2] | 0) >> 0] | 0 | 0) != 10) break; c[g >> 2] = (c[g >> 2] | 0) + 1 } while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; b = c[k >> 2] | 0; if ((d[(c[k >> 2] | 0) + (c[g >> 2] | 0) >> 0] | 0 | 0) == 13) { f = c[j >> 2] | 0; c[j >> 2] = f + 1; a[b + f >> 0] = 10; if (((c[g >> 2] | 0) + 1 | 0) >>> 0 < (c[h >> 2] | 0) >>> 0 ? (d[(c[k >> 2] | 0) + ((c[g >> 2] | 0) + 1) >> 0] | 0 | 0) == 10 : 0) c[g >> 2] = (c[g >> 2] | 0) + 1 } else { f = c[k >> 2] | 0; if (!(d[b + (c[g >> 2] | 0) >> 0] | 0)) { b = c[j >> 2] | 0; c[j >> 2] = b + 1; e = 10; b = f + b | 0 } else { e = a[f + (c[g >> 2] | 0) >> 0] | 0; f = c[k >> 2] | 0; b = c[j >> 2] | 0; c[j >> 2] = b + 1; b = f + b | 0 } a[b >> 0] = e } c[g >> 2] = (c[g >> 2] | 0) + 1 } while (1) { if ((c[j >> 2] | 0) >>> 0 > 0) e = (d[(c[k >> 2] | 0) + ((c[j >> 2] | 0) - 1) >> 0] | 0 | 0) == 10; else e = 0; b = c[j >> 2] | 0; if (!e) break; c[j >> 2] = b - 1 } c[(c[i >> 2] | 0) + 8 >> 2] = b; if (c[j >> 2] | 0) { l = m; return } IQ(c[(c[i >> 2] | 0) + 12 >> 2] | 0); c[(c[i >> 2] | 0) + 12 >> 2] = 0; l = m; return } function MD(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; h = m + 28 | 0; d = m + 24 | 0; b = m + 20 | 0; g = m + 16 | 0; i = m + 12 | 0; f = m + 8 | 0; k = m + 4 | 0; j = m; c[h >> 2] = a; c[d >> 2] = 0; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= (e[c[h >> 2] >> 1] | 0) >>> 0) break; c[f >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2]; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[k >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[j >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; while (1) { if (!(c[j >> 2] | 0)) break; c[j >> 2] = c[c[j >> 2] >> 2]; c[d >> 2] = (c[d >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[b >> 2] = (c[b >> 2] | 0) + 1 } l = m; return c[d >> 2] | 0 } function ND(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = (OD(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function OD(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 28 | 0; i = p + 24 | 0; k = p + 20 | 0; g = p + 16 | 0; j = p + 12 | 0; h = p + 8 | 0; m = p + 4 | 0; n = p; f = p + 32 | 0; c[i >> 2] = b; c[k >> 2] = e; while (1) { c[m >> 2] = AQ(f, 1, 8, c[i >> 2] | 0) | 0; if (!(c[m >> 2] | 0)) { b = 3; break } if ((c[m >> 2] | 0) != 8) { b = 5; break } c[g >> 2] = d[f >> 0]; c[j >> 2] = d[f + 1 >> 0]; c[h >> 2] = (d[f + 7 >> 0] | 0) << 8 | (d[f + 6 >> 0] | 0); c[n >> 2] = UC(d[f + 2 >> 0] | 0, d[f + 3 >> 0] | 0, d[f + 4 >> 0] | 0, c[h >> 2] | 0) | 0; if (!(c[n >> 2] | 0)) { b = 7; break } gD(c[n >> 2] | 0, a[f + 5 >> 0] | 0); b = (ED(c[k >> 2] | 0, c[n >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0) | 0) != 0; e = c[n >> 2] | 0; if (b) { b = 9; break } e = AQ(c[e + 24 >> 2] | 0, 1, c[h >> 2] | 0, c[i >> 2] | 0) | 0; if ((e | 0) != (c[h >> 2] | 0)) { b = 11; break } } if ((b | 0) == 3) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 5) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 7) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 9) { VC(e); c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 11) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function PD(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; n = o + 32 | 0; m = o + 28 | 0; h = o + 24 | 0; d = o + 20 | 0; g = o + 16 | 0; i = o + 12 | 0; f = o + 8 | 0; k = o + 4 | 0; j = o; c[m >> 2] = a; c[h >> 2] = b; c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[h >> 2] >> 1] | 0) >>> 0) { d = 12; break } c[f >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[k >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[j >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; if (QD(c[m >> 2] | 0, c[j >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0) | 0) { d = 8; break a } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((d | 0) == 8) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } else if ((d | 0) == 12) { XP(c[m >> 2] | 0) | 0; c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } return 0 } function QD(d, f, g, h) { d = d | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; i = m + 16 | 0; k = m + 12 | 0; q = m + 8 | 0; p = m + 4 | 0; o = m; n = m + 24 | 0; c[i >> 2] = d; c[k >> 2] = f; c[q >> 2] = g; c[p >> 2] = h; c[o >> 2] = hD(c[k >> 2] | 0) | 0; a[n >> 0] = c[q >> 2]; a[n + 1 >> 0] = c[p >> 2]; a[n + 2 >> 0] = b[(c[k >> 2] | 0) + 4 >> 1]; a[n + 3 >> 0] = b[(c[k >> 2] | 0) + 6 >> 1]; a[n + 4 >> 0] = b[(c[k >> 2] | 0) + 8 >> 1]; a[n + 5 >> 0] = c[o >> 2]; a[n + 6 >> 0] = e[(c[k >> 2] | 0) + 10 >> 1] | 0; a[n + 7 >> 0] = (e[(c[k >> 2] | 0) + 10 >> 1] | 0) >> 8; if ((QP(n, 1, 8, c[i >> 2] | 0) | 0) != 8) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = m; return q | 0 } q = QP(c[(c[k >> 2] | 0) + 24 >> 2] | 0, 1, e[(c[k >> 2] | 0) + 10 >> 1] | 0, c[i >> 2] | 0) | 0; if ((q | 0) != (e[(c[k >> 2] | 0) + 10 >> 1] | 0 | 0)) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = m; return q | 0 } else { c[j >> 2] = 0; q = c[j >> 2] | 0; l = m; return q | 0 } return 0 } function RD(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = (SD(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function SD(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; d = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; g = i; c[d >> 2] = a; c[e >> 2] = b; c[f >> 2] = 0; if (TD(c[d >> 2] | 0, f) | 0) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } while (1) { c[g >> 2] = c[f >> 2]; if (UD(c[d >> 2] | 0, c[e >> 2] | 0, f) | 0) { a = 4; break } if ((c[f >> 2] | 0) == (c[g >> 2] | 0)) { a = 6; break } } if ((a | 0) == 4) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } else if ((a | 0) == 6) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function TD(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 64 | 0; h = i + 8 | 0; g = i + 24 | 0; j = i + 20 | 0; f = i + 16 | 0; e = i + 12 | 0; d = i + 32 | 0; c[j >> 2] = a; c[f >> 2] = b; if (CG(c[j >> 2] | 0, c[c[f >> 2] >> 2] | 0, d, 30) | 0) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = i; return j | 0 } if (nQ(d, 47062, 16) | 0) { kQ(c[7422] | 0, 47079, i) | 0; c[g >> 2] = 1; j = c[g >> 2] | 0; l = i; return j | 0 } c[e >> 2] = 0; while (1) { if (!(c[25872 + (c[e >> 2] << 2) >> 2] | 0)) break; if (!(nQ(d + 16 | 0, c[25872 + (c[e >> 2] << 2) >> 2] | 0, 14) | 0)) break; c[e >> 2] = (c[e >> 2] | 0) + 1 } if (!(c[25872 + (c[e >> 2] << 2) >> 2] | 0)) kQ(c[7422] | 0, 47100, h) | 0; j = c[f >> 2] | 0; c[j >> 2] = (c[j >> 2] | 0) + 30; c[g >> 2] = 0; j = c[g >> 2] | 0; l = i; return j | 0 } function UD(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 416 | 0; j = n + 24 | 0; f = n + 20 | 0; g = n + 16 | 0; i = n + 12 | 0; h = n + 8 | 0; k = n + 4 | 0; m = n; e = n + 28 | 0; c[f >> 2] = a; c[g >> 2] = b; c[i >> 2] = d; if (VD(c[f >> 2] | 0, c[c[i >> 2] >> 2] | 0, k) | 0) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(c[k >> 2] | 0)) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (VD(c[f >> 2] | 0, (c[c[i >> 2] >> 2] | 0) + (c[k >> 2] | 0) + 2 | 0, m) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } c[h >> 2] = 0; while (1) { if (((c[h >> 2] | 0) + 3 + 384 | 0) >>> 0 > (c[k >> 2] | 0) >>> 0) { e = 14; break } if (CG(c[f >> 2] | 0, (c[c[i >> 2] >> 2] | 0) + (c[h >> 2] | 0) + 2 | 0, e, 387) | 0) { e = 10; break } if (WD(c[f >> 2] | 0, c[g >> 2] | 0, (c[c[i >> 2] >> 2] | 0) + (c[h >> 2] | 0) + 2 | 0, e, (c[c[i >> 2] >> 2] | 0) + (c[k >> 2] | 0) + 4 | 0, c[m >> 2] | 0) | 0) { e = 12; break } c[h >> 2] = (c[h >> 2] | 0) + 387 } if ((e | 0) == 10) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else if ((e | 0) == 12) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else if ((e | 0) == 14) { i = c[i >> 2] | 0; c[i >> 2] = (c[i >> 2] | 0) + ((c[k >> 2] | 0) + (c[m >> 2] | 0) + 4); c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function VD(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 32 | 0; g = i + 12 | 0; k = i + 8 | 0; j = i + 4 | 0; h = i; f = i + 16 | 0; c[k >> 2] = a; c[j >> 2] = b; c[h >> 2] = e; if (CG(c[k >> 2] | 0, c[j >> 2] | 0, f, 2) | 0) { c[g >> 2] = 1; k = c[g >> 2] | 0; l = i; return k | 0 } else { c[c[h >> 2] >> 2] = (d[f + 1 >> 0] | 0) << 8 | (d[f >> 0] | 0); c[g >> 2] = 0; k = c[g >> 2] | 0; l = i; return k | 0 } return 0 } function WD(b, e, f, g, h, i) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0; y = l; l = l + 80 | 0; v = y; w = y + 72 | 0; k = y + 68 | 0; j = y + 64 | 0; z = y + 56 | 0; o = y + 52 | 0; q = y + 48 | 0; m = y + 44 | 0; n = y + 40 | 0; s = y + 36 | 0; r = y + 32 | 0; t = y + 28 | 0; p = y + 24 | 0; u = y + 20 | 0; x = y + 16 | 0; c[k >> 2] = b; c[j >> 2] = e; c[y + 60 >> 2] = f; c[z >> 2] = g; c[o >> 2] = h; c[q >> 2] = i; c[t >> 2] = c[z >> 2]; c[p >> 2] = (c[z >> 2] | 0) + 3; c[n >> 2] = d[(c[t >> 2] | 0) + 2 >> 0]; if (!(c[n >> 2] | 0)) { c[w >> 2] = 0; z = c[w >> 2] | 0; l = y; return z | 0 } if ((c[n >> 2] | 0) >>> 0 > 24) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = y; return z | 0 } c[u >> 2] = FD(c[j >> 2] | 0, d[c[t >> 2] >> 0] | 0, d[(c[t >> 2] | 0) + 1 >> 0] | 0, 1) | 0; if (!(c[u >> 2] | 0)) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = y; return z | 0 } c[m >> 2] = 0; a: while (1) { if ((c[m >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) { g = 37; break } XD(c[7422] | 0, c[t >> 2] | 0, c[p >> 2] | 0, (c[m >> 2] | 0) + 1 | 0); if ((d[(c[p >> 2] | 0) + 7 >> 0] | 0 | 0) <= 6) c[s >> 2] = 128 << (d[(c[p >> 2] | 0) + 7 >> 0] | 0); else c[s >> 2] = 0; c[x >> 2] = UC(d[(c[p >> 2] | 0) + 4 >> 0] | 0, d[(c[p >> 2] | 0) + 5 >> 0] | 0, d[(c[p >> 2] | 0) + 6 >> 0] | 0, c[s >> 2] | 0) | 0; if (!(c[x >> 2] | 0)) { g = 13; break } gD(c[x >> 2] | 0, a[(c[p >> 2] | 0) + 7 >> 0] | 0); if (pD(c[u >> 2] | 0, c[x >> 2] | 0) | 0) { g = 15; break } c[r >> 2] = (d[(c[p >> 2] | 0) + 9 >> 0] | 0) << 8 | (d[(c[p >> 2] | 0) + 8 >> 0] | 0); do if (!((d[(c[p >> 2] | 0) + 14 >> 0] | 0) & 50 | 0)) { if ((d[(c[p >> 2] | 0) + 3 >> 0] | 0) & 1 | 0) { _C(c[x >> 2] | 0, 0); break } if ((c[s >> 2] | 0) >>> 0 < 256 | (c[s >> 2] | 0) >>> 0 > 4096) { _C(c[x >> 2] | 0, 0); break } if ((c[r >> 2] | 0) >>> 0 < 5805) { _C(c[x >> 2] | 0, 0); break } c[r >> 2] = (c[r >> 2] | 0) - 5805; if (((c[r >> 2] | 0) + (c[s >> 2] | 0) | 0) >>> 0 <= (c[q >> 2] | 0) >>> 0) if (CG(c[k >> 2] | 0, (c[o >> 2] | 0) + (c[r >> 2] | 0) | 0, c[(c[x >> 2] | 0) + 24 >> 2] | 0, c[s >> 2] | 0) | 0) { g = 27; break a } else break; else { z = c[7422] | 0; f = d[(c[t >> 2] | 0) + 1 >> 0] | 0; h = (c[m >> 2] | 0) + 1 | 0; i = c[s >> 2] | 0; c[v >> 2] = d[c[t >> 2] >> 0]; c[v + 4 >> 2] = f; c[v + 8 >> 2] = h; c[v + 12 >> 2] = i; kQ(z, 46995, v) | 0; _C(c[x >> 2] | 0, 0); break } } else _C(c[x >> 2] | 0, 0); while (0); do if ((d[(c[p >> 2] | 0) + 2 >> 0] | 0) & 32 | 0) { g = c[x >> 2] | 0; if ((d[(c[p >> 2] | 0) + 3 >> 0] | 0) & 32 | 0) { aD(g, 2, 1); break } else { aD(g, 1, 1); break } } while (0); if ((d[(c[p >> 2] | 0) + 3 >> 0] | 0) & 1 | 0) aD(c[x >> 2] | 0, 8, 1); if ((d[(c[p >> 2] | 0) + 3 >> 0] | 0) & 64 | 0) aD(c[x >> 2] | 0, 4, 1); c[p >> 2] = (c[p >> 2] | 0) + 16; c[m >> 2] = (c[m >> 2] | 0) + 1 } if ((g | 0) == 13) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = y; return z | 0 } else if ((g | 0) == 15) { VC(c[x >> 2] | 0); c[w >> 2] = 1; z = c[w >> 2] | 0; l = y; return z | 0 } else if ((g | 0) == 27) { c[w >> 2] = 1; z = c[w >> 2] | 0; l = y; return z | 0 } else if ((g | 0) == 37) { c[w >> 2] = 0; z = c[w >> 2] | 0; l = y; return z | 0 } return 0 } function XD(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 80 | 0; p = t + 40 | 0; s = t + 32 | 0; r = t + 24 | 0; q = t + 16 | 0; o = t; g = t + 68 | 0; n = t + 64 | 0; k = t + 60 | 0; j = t + 56 | 0; h = t + 52 | 0; m = t + 48 | 0; i = t + 44 | 0; c[g >> 2] = a; c[n >> 2] = b; c[k >> 2] = e; c[j >> 2] = f; c[i >> 2] = 1; c[m >> 2] = (d[(c[k >> 2] | 0) + 9 >> 0] | 0) << 8 | (d[(c[k >> 2] | 0) + 8 >> 0] | 0); do if ((d[(c[k >> 2] | 0) + 2 >> 0] | 0) & 150 | 0) c[i >> 2] = 0; else { if ((((d[(c[k >> 2] | 0) + 10 >> 0] | 0 | 0) == 0 ? (d[(c[k >> 2] | 0) + 11 >> 0] | 0 | 0) == 0 : 0) ? ((d[(c[k >> 2] | 0) + 14 >> 0] | 0) & 127 | 0) == 0 : 0) ? (d[(c[k >> 2] | 0) + 15 >> 0] | 0 | 0) == 0 : 0) { if ((d[(c[k >> 2] | 0) + 7 >> 0] | 0 | 0) > 6) { c[i >> 2] = 0; break } if ((c[m >> 2] | 0) >>> 0 >= 5805) break; c[i >> 2] = 0; break } c[i >> 2] = 0 } while (0); if (c[i >> 2] | 0) { l = t; return } b = c[g >> 2] | 0; e = d[(c[n >> 2] | 0) + 1 >> 0] | 0; m = c[j >> 2] | 0; c[o >> 2] = d[c[n >> 2] >> 0]; c[o + 4 >> 2] = e; c[o + 8 >> 2] = m; kQ(b, 47036, o) | 0; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 16) break; if ((c[h >> 2] | 0) != 8) { if (!(c[h >> 2] & 3)) kQ(c[g >> 2] | 0, 47054, r) | 0 } else kQ(c[g >> 2] | 0, 47051, q) | 0; o = c[g >> 2] | 0; c[s >> 2] = d[(c[k >> 2] | 0) + (c[h >> 2] | 0) >> 0]; kQ(o, 47056, s) | 0; c[h >> 2] = (c[h >> 2] | 0) + 1 } kQ(c[g >> 2] | 0, 50466, p) | 0; XP(c[g >> 2] | 0) | 0; l = t; return } function YD(a, b) { a = a | 0; b = b | 0; var d = 0; d = l; l = l + 16 | 0; c[d + 4 >> 2] = a; c[d >> 2] = b; l = d; return 1 } function ZD(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; k = j + 16 | 0; g = j + 12 | 0; f = j + 8 | 0; i = j + 4 | 0; h = j; c[k >> 2] = a; c[g >> 2] = b; c[f >> 2] = e; c[h >> 2] = c[k >> 2]; c[g >> 2] = (c[g >> 2] | 0) >>> 1; while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) break; c[i >> 2] = (d[c[h >> 2] >> 0] | 0) & 255; c[i >> 2] = c[i >> 2] << 8 | (d[(c[h >> 2] | 0) + 1 >> 0] | 0) & 255; c[f >> 2] = (c[f >> 2] | 0) + (c[i >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) >>> 1 | c[f >> 2] << 31; c[g >> 2] = (c[g >> 2] | 0) - 1; c[h >> 2] = (c[h >> 2] | 0) + 2 } l = j; return c[f >> 2] | 0 } function _D(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = ($D(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function $D(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 192 | 0; s = u + 8 | 0; r = u; o = u + 44 | 0; k = u + 40 | 0; m = u + 36 | 0; n = u + 32 | 0; j = u + 176 | 0; g = u + 28 | 0; q = u + 24 | 0; i = u + 20 | 0; p = u + 16 | 0; h = u + 12 | 0; f = u + 48 | 0; c[k >> 2] = b; c[m >> 2] = e; if (BG(c[k >> 2] | 0, f, 84) | 0) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } if ((uG(f, 82) | 0) != 256) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } if ((d[f >> 0] | 0 | 0) > 63) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } c[g >> 2] = vG(f, 64) | 0; c[q >> 2] = vG(f, 68) | 0; c[i >> 2] = vG(f, 72) | 0; c[p >> 2] = vG(f, 76) | 0; a[j >> 0] = a[f + 81 >> 0] | 0; f = c[g >> 2] | 0; a: do if ((f | 0) < 819200) if ((f | 0) < 737280) { switch (f | 0) { case 409600: break; default: { t = 12; break a } } c[n >> 2] = aE(c[k >> 2] | 0, c[m >> 2] | 0, 1, h, d[j >> 0] | 0) | 0; break } else { switch (f | 0) { case 737280: break; default: { t = 12; break a } } c[n >> 2] = bE(c[k >> 2] | 0, c[m >> 2] | 0, 9, h) | 0; break } else if ((f | 0) < 1474560) { switch (f | 0) { case 819200: break; default: { t = 12; break a } } c[n >> 2] = aE(c[k >> 2] | 0, c[m >> 2] | 0, 2, h, d[j >> 0] | 0) | 0; break } else { switch (f | 0) { case 1474560: break; default: { t = 12; break a } } c[n >> 2] = bE(c[k >> 2] | 0, c[m >> 2] | 0, 18, h) | 0; break } while (0); if ((t | 0) == 12) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } if (c[n >> 2] | 0) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } if ((c[i >> 2] | 0) != (c[h >> 2] | 0)) { kQ(c[7422] | 0, 47210, r) | 0; c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } if ((c[q >> 2] | 0) >>> 0 > 0) { if (cE(c[k >> 2] | 0, c[m >> 2] | 0, c[q >> 2] | 0, h) | 0) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } if ((c[p >> 2] | 0) != (c[h >> 2] | 0)) { kQ(c[7422] | 0, 47237, s) | 0; c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } } c[o >> 2] = 0; t = c[o >> 2] | 0; l = u; return t | 0 } function aE(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 48 | 0; r = t + 44 | 0; j = t + 40 | 0; n = t + 36 | 0; m = t + 32 | 0; h = t + 28 | 0; i = t + 24 | 0; g = t + 20 | 0; k = t + 16 | 0; o = t + 12 | 0; p = t + 8 | 0; q = t + 4 | 0; s = t; c[j >> 2] = a; c[n >> 2] = b; c[m >> 2] = d; c[h >> 2] = e; c[i >> 2] = f; c[c[h >> 2] >> 2] = 0; c[g >> 2] = 0; a: while (1) { if ((c[g >> 2] | 0) >>> 0 >= 80) { g = 18; break } c[p >> 2] = 12 - (((c[g >> 2] | 0) >>> 0) / 16 | 0); c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; c[o >> 2] = 0; while (1) { if ((c[o >> 2] | 0) >>> 0 >= (c[p >> 2] | 0) >>> 0) break; c[s >> 2] = UC(c[g >> 2] | 0, c[k >> 2] | 0, c[o >> 2] | 0, 512) | 0; if (!(c[s >> 2] | 0)) { g = 8; break a } iD(c[s >> 2] | 0, c[i >> 2] & 255); bD(c[s >> 2] | 0, 3); if (ED(c[n >> 2] | 0, c[s >> 2] | 0, c[g >> 2] | 0, c[k >> 2] | 0) | 0) { g = 10; break a } if (BG(c[j >> 2] | 0, c[(c[s >> 2] | 0) + 24 >> 2] | 0, 512) | 0) { g = 12; break a } b = ZD(c[(c[s >> 2] | 0) + 24 >> 2] | 0, 512, c[c[h >> 2] >> 2] | 0) | 0; c[c[h >> 2] >> 2] = b; c[o >> 2] = (c[o >> 2] | 0) + 1 } c[q >> 2] = FD(c[n >> 2] | 0, c[g >> 2] | 0, c[k >> 2] | 0, 0) | 0; if (c[q >> 2] | 0) rD(c[q >> 2] | 0, 2) | 0; c[k >> 2] = (c[k >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((g | 0) == 8) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((g | 0) == 10) { VC(c[s >> 2] | 0); c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((g | 0) == 12) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((g | 0) == 18) { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } return 0 } function bE(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; o = q + 36 | 0; i = q + 32 | 0; k = q + 28 | 0; n = q + 24 | 0; g = q + 20 | 0; f = q + 16 | 0; j = q + 12 | 0; m = q + 8 | 0; h = q + 4 | 0; p = q; c[i >> 2] = a; c[k >> 2] = b; c[n >> 2] = d; c[g >> 2] = e; c[c[g >> 2] >> 2] = 0; c[h >> 2] = (c[n >> 2] | 0) >>> 0 < 14 ? 2 : 32770; c[f >> 2] = 0; a: while (1) { if ((c[f >> 2] | 0) >>> 0 >= 80) { f = 16; break } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 2) break; c[m >> 2] = 0; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) break; c[p >> 2] = UC(c[f >> 2] | 0, c[j >> 2] | 0, (c[m >> 2] | 0) + 1 | 0, 512) | 0; if (!(c[p >> 2] | 0)) { f = 8; break a } bD(c[p >> 2] | 0, c[h >> 2] | 0); if (ED(c[k >> 2] | 0, c[p >> 2] | 0, c[f >> 2] | 0, c[j >> 2] | 0) | 0) { f = 10; break a } if (BG(c[i >> 2] | 0, c[(c[p >> 2] | 0) + 24 >> 2] | 0, 512) | 0) { f = 12; break a } d = ZD(c[(c[p >> 2] | 0) + 24 >> 2] | 0, 512, c[c[g >> 2] >> 2] | 0) | 0; c[c[g >> 2] >> 2] = d; c[m >> 2] = (c[m >> 2] | 0) + 1 } c[j >> 2] = (c[j >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((f | 0) == 8) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } else if ((f | 0) == 10) { VC(c[p >> 2] | 0); c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } else if ((f | 0) == 12) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } else if ((f | 0) == 16) { c[o >> 2] = 0; p = c[o >> 2] | 0; l = q; return p | 0 } return 0 } function cE(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 64 | 0; r = t + 40 | 0; k = t + 36 | 0; n = t + 32 | 0; s = t + 28 | 0; i = t + 24 | 0; h = t + 20 | 0; m = t + 16 | 0; o = t + 12 | 0; j = t + 8 | 0; q = t + 4 | 0; p = t; g = t + 44 | 0; c[k >> 2] = a; c[n >> 2] = b; c[s >> 2] = d; c[i >> 2] = f; c[c[i >> 2] >> 2] = 0; c[h >> 2] = 0; a: while (1) { if ((c[h >> 2] | 0) >>> 0 >= (e[c[n >> 2] >> 1] | 0) >>> 0) { g = 18; break } c[j >> 2] = c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; c[m >> 2] = 0; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (e[(c[j >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[q >> 2] = c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[m >> 2] << 2) >> 2]; c[o >> 2] = 0; while (1) { if ((c[o >> 2] | 0) >>> 0 >= (e[(c[q >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[p >> 2] = HD(c[n >> 2] | 0, c[h >> 2] | 0, c[m >> 2] | 0, c[o >> 2] | 0, 0) | 0; if (!(c[p >> 2] | 0)) { g = 8; break a } if ((c[s >> 2] | 0) >>> 0 < 12) { g = 10; break a } if (BG(c[k >> 2] | 0, g, 12) | 0) { g = 12; break a } kD(c[p >> 2] | 0, g, 12) | 0; if ((c[h >> 2] | 0) >>> 0 > 0 | (c[m >> 2] | 0) >>> 0 > 0 | (c[o >> 2] | 0) >>> 0 > 0) { d = ZD(g, 12, c[c[i >> 2] >> 2] | 0) | 0; c[c[i >> 2] >> 2] = d } c[s >> 2] = (c[s >> 2] | 0) - 12; c[o >> 2] = (c[o >> 2] | 0) + 1 } c[m >> 2] = (c[m >> 2] | 0) + 1 } c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((g | 0) == 8) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((g | 0) == 10) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((g | 0) == 12) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((g | 0) == 18) if (c[s >> 2] | 0) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } return 0 } function dE(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 176 | 0; n = r + 40 | 0; j = r + 36 | 0; m = r + 32 | 0; f = r + 28 | 0; k = r + 24 | 0; o = r + 20 | 0; i = r + 16 | 0; g = r + 12 | 0; p = r + 8 | 0; h = r + 4 | 0; q = r; e = r + 48 | 0; c[j >> 2] = b; c[m >> 2] = d; c[f >> 2] = 80; c[k >> 2] = 2; c[o >> 2] = 0; c[q >> 2] = 0; do if (eE(c[m >> 2] | 0, 1) | 0) { c[k >> 2] = 1; c[i >> 2] = 2; c[h >> 2] = 409600; if (fE(c[m >> 2] | 0) | 0) c[q >> 2] = (((c[h >> 2] | 0) >>> 0) / 512 | 0) * 12 } else { if (eE(c[m >> 2] | 0, 2) | 0) { c[i >> 2] = 290; c[h >> 2] = 819200; if (!(fE(c[m >> 2] | 0) | 0)) break; c[q >> 2] = (((c[h >> 2] | 0) >>> 0) / 512 | 0) * 12; break } if (gE(c[m >> 2] | 0, 2, 9) | 0) { c[o >> 2] = 9; c[i >> 2] = 546; c[h >> 2] = 737280; break } if (gE(c[m >> 2] | 0, 2, 18) | 0) { c[o >> 2] = 18; c[i >> 2] = 802; c[h >> 2] = 1474560; break } c[n >> 2] = 1; q = c[n >> 2] | 0; l = r; return q | 0 } while (0); if (hE(c[m >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[o >> 2] | 0, g, p) | 0) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = r; return q | 0 } b = e; d = b + 128 | 0; do { a[b >> 0] = 0; b = b + 1 | 0 } while ((b | 0) < (d | 0)); iE(e, c[m >> 2] | 0, (c[o >> 2] | 0) == 0 ? 2 : 3) | 0; xG(e, 64, c[h >> 2] | 0); xG(e, 68, c[q >> 2] | 0); xG(e, 72, c[g >> 2] | 0); xG(e, 76, c[p >> 2] | 0); wG(e, 80, c[i >> 2] | 0); wG(e, 82, 256); if (DG(c[j >> 2] | 0, e, 84) | 0) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = r; return q | 0 } if (jE(c[j >> 2] | 0, c[m >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[o >> 2] | 0) | 0) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = r; return q | 0 } if ((c[q >> 2] | 0) >>> 0 > 0 ? kE(c[j >> 2] | 0, c[m >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[o >> 2] | 0) | 0 : 0) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = r; return q | 0 } XP(c[j >> 2] | 0) | 0; c[n >> 2] = 0; q = c[n >> 2] | 0; l = r; return q | 0 } function eE(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 36 | 0; h = p + 32 | 0; n = p + 28 | 0; d = p + 24 | 0; g = p + 20 | 0; i = p + 16 | 0; k = p + 12 | 0; f = p + 8 | 0; m = p + 4 | 0; j = p; c[h >> 2] = a; c[n >> 2] = b; if ((e[c[h >> 2] >> 1] | 0 | 0) != 80) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[h >> 2] >> 1] | 0) >>> 0) { d = 20; break } c[f >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; if ((e[(c[f >> 2] | 0) + 2 >> 1] | 0 | 0) != (c[n >> 2] | 0)) { d = 6; break } c[k >> 2] = 12 - (((c[d >> 2] | 0) >>> 0) / 16 | 0); c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) break; c[m >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; if ((e[(c[m >> 2] | 0) + 2 >> 1] | 0 | 0) != (c[k >> 2] | 0)) { d = 10; break a } c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[m >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[j >> 2] = c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; if ((e[(c[j >> 2] | 0) + 10 >> 1] | 0 | 0) != 512) { d = 14; break a } if ((e[(c[j >> 2] | 0) + 8 >> 1] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) { d = 16; break a } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((d | 0) == 6) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 10) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 14) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 16) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 20) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function fE(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 24 | 0; g = k + 20 | 0; b = k + 16 | 0; f = k + 12 | 0; h = k + 8 | 0; d = k + 4 | 0; i = k; c[g >> 2] = a; c[b >> 2] = 0; a: while (1) { if ((c[b >> 2] | 0) >>> 0 >= (e[c[g >> 2] >> 1] | 0) >>> 0) { b = 12; break } c[d >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2]; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[(c[d >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[i >> 2] = c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (e[(c[i >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; if ((e[(c[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2] | 0) + 28 >> 1] | 0 | 0) > 0) { b = 8; break a } c[h >> 2] = (c[h >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((b | 0) == 8) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else if ((b | 0) == 12) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function gE(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; p = q + 36 | 0; i = q + 32 | 0; o = q + 28 | 0; m = q + 24 | 0; f = q + 20 | 0; h = q + 16 | 0; j = q + 12 | 0; g = q + 8 | 0; n = q + 4 | 0; k = q; c[i >> 2] = a; c[o >> 2] = b; c[m >> 2] = d; if ((e[c[i >> 2] >> 1] | 0 | 0) != 80) { c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } c[f >> 2] = 0; a: while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[c[i >> 2] >> 1] | 0) >>> 0) { f = 21; break } c[g >> 2] = c[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; if ((e[(c[g >> 2] | 0) + 2 >> 1] | 0 | 0) != (c[o >> 2] | 0)) { f = 6; break } c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; if ((e[(c[n >> 2] | 0) + 2 >> 1] | 0 | 0) != (c[m >> 2] | 0)) { f = 10; break a } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (e[(c[n >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[j >> 2] << 2) >> 2]; if ((e[(c[k >> 2] | 0) + 10 >> 1] | 0 | 0) != 512) { f = 14; break a } if ((e[(c[k >> 2] | 0) + 8 >> 1] | 0 | 0) < 1) { f = 17; break a } if ((e[(c[k >> 2] | 0) + 8 >> 1] | 0) >>> 0 > (c[m >> 2] | 0) >>> 0) { f = 17; break a } c[j >> 2] = (c[j >> 2] | 0) + 1 } c[h >> 2] = (c[h >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((f | 0) == 6) { c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } else if ((f | 0) == 10) { c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } else if ((f | 0) == 14) { c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } else if ((f | 0) == 17) { c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } else if ((f | 0) == 21) { c[p >> 2] = 1; p = c[p >> 2] | 0; l = q; return p | 0 } return 0 } function hE(a, b, d, f, g, h) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 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; x = l; l = l + 80 | 0; w = x + 52 | 0; y = x + 48 | 0; k = x + 44 | 0; o = x + 40 | 0; t = x + 36 | 0; m = x + 32 | 0; u = x + 28 | 0; j = x + 24 | 0; n = x + 20 | 0; p = x + 16 | 0; q = x + 12 | 0; r = x + 8 | 0; i = x + 56 | 0; v = x + 4 | 0; s = x; c[y >> 2] = a; c[k >> 2] = b; c[o >> 2] = d; c[t >> 2] = f; c[m >> 2] = g; c[u >> 2] = h; c[c[m >> 2] >> 2] = 0; c[c[u >> 2] >> 2] = 0; c[v >> 2] = c[y >> 2]; c[q >> 2] = (c[t >> 2] | 0) == 0 ? 0 : 1; c[j >> 2] = 0; a: while (1) { if ((c[j >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) { b = 17; break } if (!(c[t >> 2] | 0)) b = 12 - (((c[j >> 2] | 0) >>> 0) / 16 | 0) | 0; else b = (c[t >> 2] | 0) + 1 | 0; c[r >> 2] = b; c[n >> 2] = 0; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; c[p >> 2] = c[q >> 2]; while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[r >> 2] | 0) >>> 0) break; c[s >> 2] = HD(c[v >> 2] | 0, c[j >> 2] | 0, c[n >> 2] | 0, c[p >> 2] | 0, 0) | 0; if (!(c[s >> 2] | 0)) { b = 11; break a } y = ZD(c[(c[s >> 2] | 0) + 24 >> 2] | 0, e[(c[s >> 2] | 0) + 10 >> 1] | 0, c[c[m >> 2] >> 2] | 0) | 0; c[c[m >> 2] >> 2] = y; if ((c[j >> 2] | 0) >>> 0 > 0 | (c[n >> 2] | 0) >>> 0 > 0 | (c[p >> 2] | 0) >>> 0 > 0) { lD(c[s >> 2] | 0, i, 12) | 0; y = ZD(i, 12, c[c[u >> 2] >> 2] | 0) | 0; c[c[u >> 2] >> 2] = y } c[p >> 2] = (c[p >> 2] | 0) + 1 } c[n >> 2] = (c[n >> 2] | 0) + 1 } c[j >> 2] = (c[j >> 2] | 0) + 1 } if ((b | 0) == 11) { c[w >> 2] = 1; y = c[w >> 2] | 0; l = x; return y | 0 } else if ((b | 0) == 17) { c[w >> 2] = 0; y = c[w >> 2] | 0; l = x; return y | 0 } return 0 } function iE(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; m = l; l = l + 32 | 0; g = m + 24 | 0; o = m + 20 | 0; n = m + 16 | 0; h = m + 12 | 0; i = m + 8 | 0; j = m + 4 | 0; k = m; c[g >> 2] = b; c[o >> 2] = e; c[n >> 2] = f; c[k >> 2] = 47263; c[j >> 2] = HD(c[o >> 2] | 0, 0, 0, c[n >> 2] | 0, 0) | 0; do if (c[j >> 2] | 0) { if ((d[c[(c[j >> 2] | 0) + 24 >> 2] >> 0] | 0 | 0) == 66 ? (d[(c[(c[j >> 2] | 0) + 24 >> 2] | 0) + 1 >> 0] | 0 | 0) == 68 : 0) { c[k >> 2] = (c[(c[j >> 2] | 0) + 24 >> 2] | 0) + 36; break } if ((d[c[(c[j >> 2] | 0) + 24 >> 2] >> 0] | 0 | 0) == 210 ? (d[(c[(c[j >> 2] | 0) + 24 >> 2] | 0) + 1 >> 0] | 0 | 0) == 215 : 0) c[k >> 2] = (c[(c[j >> 2] | 0) + 24 >> 2] | 0) + 36 } while (0); o = d[c[k >> 2] >> 0] | 0; c[i >> 2] = o; c[i >> 2] = (c[i >> 2] | 0) >>> 0 > 63 ? 63 : o; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) break; a[(c[g >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] = a[(c[k >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] | 0; c[h >> 2] = (c[h >> 2] | 0) + 1 } a[c[g >> 2] >> 0] = c[i >> 2]; l = m; return 0 } function jE(a, b, d, f, g) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; u = l; l = l + 64 | 0; t = u + 48 | 0; j = u + 44 | 0; v = u + 40 | 0; i = u + 36 | 0; m = u + 32 | 0; r = u + 28 | 0; h = u + 24 | 0; k = u + 20 | 0; n = u + 16 | 0; o = u + 12 | 0; p = u + 8 | 0; s = u + 4 | 0; q = u; c[j >> 2] = a; c[v >> 2] = b; c[i >> 2] = d; c[m >> 2] = f; c[r >> 2] = g; c[s >> 2] = c[v >> 2]; c[o >> 2] = (c[r >> 2] | 0) == 0 ? 0 : 1; c[h >> 2] = 0; a: while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { d = 17; break } if (!(c[r >> 2] | 0)) d = 12 - (((c[h >> 2] | 0) >>> 0) / 16 | 0) | 0; else d = (c[r >> 2] | 0) + 1 | 0; c[p >> 2] = d; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; c[n >> 2] = c[o >> 2]; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (c[p >> 2] | 0) >>> 0) break; c[q >> 2] = HD(c[s >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0, c[n >> 2] | 0, 0) | 0; if (!(c[q >> 2] | 0)) { d = 11; break a } if (DG(c[j >> 2] | 0, c[(c[q >> 2] | 0) + 24 >> 2] | 0, e[(c[q >> 2] | 0) + 10 >> 1] | 0) | 0) { d = 13; break a } c[n >> 2] = (c[n >> 2] | 0) + 1 } c[k >> 2] = (c[k >> 2] | 0) + 1 } c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((d | 0) == 11) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = u; return v | 0 } else if ((d | 0) == 13) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = u; return v | 0 } else if ((d | 0) == 17) { c[t >> 2] = 0; v = c[t >> 2] | 0; l = u; return v | 0 } return 0 } function kE(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; u = l; l = l + 64 | 0; t = u + 48 | 0; j = u + 44 | 0; v = u + 40 | 0; i = u + 36 | 0; m = u + 32 | 0; r = u + 28 | 0; h = u + 24 | 0; k = u + 20 | 0; n = u + 16 | 0; o = u + 12 | 0; p = u + 8 | 0; g = u + 52 | 0; s = u + 4 | 0; q = u; c[j >> 2] = a; c[v >> 2] = b; c[i >> 2] = d; c[m >> 2] = e; c[r >> 2] = f; c[s >> 2] = c[v >> 2]; c[o >> 2] = (c[r >> 2] | 0) == 0 ? 0 : 1; c[h >> 2] = 0; a: while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { d = 17; break } if (!(c[r >> 2] | 0)) d = 12 - (((c[h >> 2] | 0) >>> 0) / 16 | 0) | 0; else d = (c[r >> 2] | 0) + 1 | 0; c[p >> 2] = d; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; c[n >> 2] = c[o >> 2]; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (c[p >> 2] | 0) >>> 0) break; c[q >> 2] = HD(c[s >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0, c[n >> 2] | 0, 0) | 0; if (!(c[q >> 2] | 0)) { d = 11; break a } lD(c[q >> 2] | 0, g, 12) | 0; if (DG(c[j >> 2] | 0, g, 12) | 0) { d = 13; break a } c[n >> 2] = (c[n >> 2] | 0) + 1 } c[k >> 2] = (c[k >> 2] | 0) + 1 } c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((d | 0) == 11) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = u; return v | 0 } else if ((d | 0) == 13) { c[t >> 2] = 1; v = c[t >> 2] | 0; l = u; return v | 0 } else if ((d | 0) == 17) { c[t >> 2] = 0; v = c[t >> 2] | 0; l = u; return v | 0 } return 0 } function lE(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; g = l; l = l + 144 | 0; f = g + 4 | 0; e = g; b = g + 8 | 0; c[e >> 2] = a; do if (!(jQ(c[e >> 2] | 0, 0, 0) | 0)) { if (BG(c[e >> 2] | 0, b, 84) | 0) { c[f >> 2] = 0; break } if ((uG(b, 82) | 0) != 256) { c[f >> 2] = 0; break } if ((d[b >> 0] | 0 | 0) > 63) { c[f >> 2] = 0; break } else { c[f >> 2] = 1; break } } else c[f >> 2] = 0; while (0); l = g; return c[f >> 2] | 0 } function mE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = (nE(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function nE(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 16 | 0; g = m + 12 | 0; h = m + 8 | 0; f = m + 4 | 0; i = m; e = m + 24 | 0; c[g >> 2] = b; c[h >> 2] = d; do if ((AQ(e, 1, 4, c[g >> 2] | 0) | 0) == 4) { if ((vG(e, 0) | 0) != 1229800480) { c[j >> 2] = 1; break } JD(c[h >> 2] | 0, e, 4) | 0; while (1) { c[f >> 2] = vQ(c[g >> 2] | 0) | 0; if ((c[f >> 2] | 0) == -1) { k = 7; break } if ((c[f >> 2] | 0) == 26) break; a[e >> 0] = c[f >> 2]; JD(c[h >> 2] | 0, e, 1) | 0 } if ((k | 0) == 7) { c[j >> 2] = 1; break } LD(c[h >> 2] | 0); while (1) { c[i >> 2] = AQ(e, 1, 5, c[g >> 2] | 0) | 0; if (!(c[i >> 2] | 0)) { k = 12; break } if ((c[i >> 2] | 0) != 5) { k = 14; break } if (oE(c[g >> 2] | 0, c[h >> 2] | 0, e) | 0) { k = 16; break } } if ((k | 0) == 12) { c[j >> 2] = 0; break } else if ((k | 0) == 14) { c[j >> 2] = 1; break } else if ((k | 0) == 16) { c[j >> 2] = 1; break } } else c[j >> 2] = 1; while (0); l = m; return c[j >> 2] | 0 } function oE(a, b, f) { a = a | 0; b = b | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 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 = l; l = l + 832 | 0; y = z + 52 | 0; k = z + 48 | 0; q = z + 44 | 0; n = z + 40 | 0; p = z + 36 | 0; g = z + 32 | 0; m = z + 28 | 0; v = z + 24 | 0; u = z + 20 | 0; i = z + 16 | 0; r = z + 12 | 0; s = z + 8 | 0; t = z + 4 | 0; j = z + 824 | 0; x = z + 568 | 0; h = z + 312 | 0; o = z + 56 | 0; w = z; c[k >> 2] = a; c[q >> 2] = b; c[n >> 2] = f; c[g >> 2] = d[(c[n >> 2] | 0) + 1 >> 0]; c[m >> 2] = (d[(c[n >> 2] | 0) + 2 >> 0] | 0) & 1; c[v >> 2] = d[(c[n >> 2] | 0) + 3 >> 0]; c[u >> 2] = d[(c[n >> 2] | 0) + 4 >> 0]; if (!(c[v >> 2] | 0)) { c[y >> 2] = 0; y = c[y >> 2] | 0; l = z; return y | 0 } if ((c[u >> 2] | 0) >>> 0 > 6) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } c[i >> 2] = 128 << c[u >> 2]; b = AQ(x, 1, c[v >> 2] | 0, c[k >> 2] | 0) | 0; if ((b | 0) != (c[v >> 2] | 0)) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } if ((d[(c[n >> 2] | 0) + 2 >> 0] | 0) & 128 | 0 ? (b = AQ(h, 1, c[v >> 2] | 0, c[k >> 2] | 0) | 0, (b | 0) != (c[v >> 2] | 0)) : 0) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } if ((d[(c[n >> 2] | 0) + 2 >> 0] | 0) & 64 | 0 ? (b = AQ(o, 1, c[v >> 2] | 0, c[k >> 2] | 0) | 0, (b | 0) != (c[v >> 2] | 0)) : 0) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } c[p >> 2] = 0; a: while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[v >> 2] | 0) >>> 0) { a = 56; break } if ((d[(c[n >> 2] | 0) + 2 >> 0] | 0) & 128 | 0) a = d[h + (c[p >> 2] | 0) >> 0] | 0; else a = c[g >> 2] | 0; c[r >> 2] = a; if ((d[(c[n >> 2] | 0) + 2 >> 0] | 0) & 64 | 0) a = d[o + (c[p >> 2] | 0) >> 0] | 0; else a = c[m >> 2] | 0; c[s >> 2] = a; c[t >> 2] = d[x + (c[p >> 2] | 0) >> 0]; if ((AQ(j, 1, 1, c[k >> 2] | 0) | 0) != 1) { a = 22; break } c[w >> 2] = UC(c[r >> 2] | 0, c[s >> 2] | 0, c[t >> 2] | 0, c[i >> 2] | 0) | 0; if (!(c[w >> 2] | 0)) { a = 24; break } gD(c[w >> 2] | 0, c[u >> 2] & 255); b = (ED(c[q >> 2] | 0, c[w >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0) | 0) != 0; f = c[w >> 2] | 0; if (b) { a = 26; break } if (pE(f, d[c[n >> 2] >> 0] | 0) | 0) { a = 28; break } if (!((((d[j >> 0] | 0 | 0) != 5 ? (d[j >> 0] | 0 | 0) != 6 : 0) ? (d[j >> 0] | 0 | 0) != 7 : 0) ? (d[j >> 0] | 0 | 0) != 8 : 0)) aD(c[w >> 2] | 0, 2, 1); if (!((((d[j >> 0] | 0 | 0) != 3 ? (d[j >> 0] | 0 | 0) != 4 : 0) ? (d[j >> 0] | 0 | 0) != 7 : 0) ? (d[j >> 0] | 0 | 0) != 8 : 0)) aD(c[w >> 2] | 0, 4, 1); b: do if (!(d[j >> 0] | 0)) { aD(c[w >> 2] | 0, 2, 1); _C(c[w >> 2] | 0, 0) } else { do if ((d[j >> 0] | 0 | 0) != 2 ? (d[j >> 0] | 0 | 0) != 4 : 0) { if ((d[j >> 0] | 0 | 0) == 6) break; if ((d[j >> 0] | 0 | 0) == 8) break; do if ((d[j >> 0] | 0 | 0) != 1) { if ((d[j >> 0] | 0 | 0) == 3) break; if ((d[j >> 0] | 0 | 0) == 5) break; if ((d[j >> 0] | 0 | 0) != 7) { a = 54; break a } } while (0); b = AQ(c[(c[w >> 2] | 0) + 24 >> 2] | 0, 1, e[(c[w >> 2] | 0) + 10 >> 1] | 0, c[k >> 2] | 0) | 0; if ((b | 0) != (e[(c[w >> 2] | 0) + 10 >> 1] | 0 | 0)) { a = 53; break a } else break b } while (0); if ((AQ(j, 1, 1, c[k >> 2] | 0) | 0) != 1) { a = 46; break a } _C(c[w >> 2] | 0, d[j >> 0] | 0) } while (0); c[p >> 2] = (c[p >> 2] | 0) + 1 } if ((a | 0) == 22) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } else if ((a | 0) == 24) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } else if ((a | 0) == 26) { VC(f); c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } else if ((a | 0) == 28) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } else if ((a | 0) == 46) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } else if ((a | 0) == 53) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } else if ((a | 0) == 54) { c[y >> 2] = 1; y = c[y >> 2] | 0; l = z; return y | 0 } else if ((a | 0) == 56) { c[y >> 2] = 0; y = c[y >> 2] | 0; l = z; return y | 0 } return 0 } function pE(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; f = g + 8 | 0; h = g + 4 | 0; d = g; c[f >> 2] = a; c[h >> 2] = b; switch (c[h >> 2] | 0) { case 0: { c[d >> 2] = 32769; break } case 1: { c[d >> 2] = 1; break } case 2: { c[d >> 2] = 1; break } case 3: { c[d >> 2] = 32770; break } case 4: { c[d >> 2] = 2; break } case 5: { c[d >> 2] = 2; break } default: { c[e >> 2] = 1;h = c[e >> 2] | 0;l = g; return h | 0 } } bD(c[f >> 2] | 0, c[d >> 2] | 0); c[e >> 2] = 0; h = c[e >> 2] | 0; l = g; return h | 0 } function qE(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; j = m + 20 | 0; h = m + 16 | 0; d = m + 12 | 0; g = m + 8 | 0; f = m + 4 | 0; i = m; c[j >> 2] = a; c[h >> 2] = b; if (rE(c[j >> 2] | 0, c[h >> 2] | 0) | 0) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[h >> 2] >> 1] | 0) >>> 0) { d = 11; break } c[f >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[i >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; if (sE(c[j >> 2] | 0, c[i >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0) | 0) { d = 8; break a } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((d | 0) == 8) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((d | 0) == 11) { XP(c[j >> 2] | 0) | 0; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function rE(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; k = l; l = l + 48 | 0; j = k; e = k + 40 | 0; g = k + 36 | 0; f = k + 32 | 0; h = k + 28 | 0; i = k + 24 | 0; c[e >> 2] = a; c[g >> 2] = b; c[f >> 2] = 0; if (wE(c[(c[g >> 2] | 0) + 12 >> 2] | 0, c[(c[g >> 2] | 0) + 8 >> 2] | 0) | 0) { DG(c[e >> 2] | 0, c[(c[g >> 2] | 0) + 12 >> 2] | 0, 29) | 0; c[f >> 2] = 29; if ((c[f >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 8 >> 2] | 0) >>> 0 ? (d[(c[(c[g >> 2] | 0) + 12 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0 | 0) == 10 : 0) c[f >> 2] = (c[f >> 2] | 0) + 1 } else { c[h >> 2] = xb(0) | 0; c[i >> 2] = Fb(h | 0) | 0; h = c[e >> 2] | 0; o = (c[(c[i >> 2] | 0) + 16 >> 2] | 0) + 1 | 0; n = 1900 + (c[(c[i >> 2] | 0) + 20 >> 2] | 0) | 0; m = c[(c[i >> 2] | 0) + 8 >> 2] | 0; a = c[(c[i >> 2] | 0) + 4 >> 2] | 0; b = c[c[i >> 2] >> 2] | 0; c[j >> 2] = c[(c[i >> 2] | 0) + 12 >> 2]; c[j + 4 >> 2] = o; c[j + 8 >> 2] = n; c[j + 12 >> 2] = m; c[j + 16 >> 2] = a; c[j + 20 >> 2] = b; kQ(h, 47271, j) | 0 } uQ(13, c[e >> 2] | 0) | 0; uQ(10, c[e >> 2] | 0) | 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[(c[g >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; if ((d[(c[(c[g >> 2] | 0) + 12 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0 | 0) == 10) { uQ(13, c[e >> 2] | 0) | 0; uQ(10, c[e >> 2] | 0) | 0 } else uQ(d[(c[(c[g >> 2] | 0) + 12 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0, c[e >> 2] | 0) | 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } uQ(26, c[e >> 2] | 0) | 0; l = k; return 0 } function sE(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 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 = l; l = l + 832 | 0; u = z + 52 | 0; o = z + 48 | 0; y = z + 44 | 0; m = z + 40 | 0; p = z + 36 | 0; r = z + 32 | 0; v = z + 28 | 0; k = z + 56 | 0; j = z + 24 | 0; s = z + 20 | 0; t = z + 16 | 0; x = z + 12 | 0; n = z + 8 | 0; q = z + 4 | 0; w = z; c[o >> 2] = f; c[y >> 2] = g; c[m >> 2] = h; c[p >> 2] = i; c[v >> 2] = e[(c[y >> 2] | 0) + 2 >> 1]; if (!(c[v >> 2] | 0)) { c[u >> 2] = 0; y = c[u >> 2] | 0; l = z; return y | 0 } c[s >> 2] = 0; c[t >> 2] = 0; c[r >> 2] = 1; while (1) { h = c[(c[y >> 2] | 0) + 4 >> 2] | 0; if ((c[r >> 2] | 0) >>> 0 >= (c[v >> 2] | 0) >>> 0) { f = 14; break } if ((e[(c[h + (c[r >> 2] << 2) >> 2] | 0) + 4 >> 1] | 0 | 0) != (c[m >> 2] | 0)) c[s >> 2] = 1; if ((e[(c[(c[(c[y >> 2] | 0) + 4 >> 2] | 0) + (c[r >> 2] << 2) >> 2] | 0) + 6 >> 1] | 0 | 0) != (c[p >> 2] | 0)) c[t >> 2] = 1; if ((e[(c[(c[(c[y >> 2] | 0) + 4 >> 2] | 0) + (c[r >> 2] << 2) >> 2] | 0) + 10 >> 1] | 0 | 0) != (e[(c[c[(c[y >> 2] | 0) + 4 >> 2] >> 2] | 0) + 10 >> 1] | 0 | 0)) { f = 10; break } if ((e[(c[(c[(c[y >> 2] | 0) + 4 >> 2] | 0) + (c[r >> 2] << 2) >> 2] | 0) + 16 >> 1] | 0 | 0) != (e[(c[c[(c[y >> 2] | 0) + 4 >> 2] >> 2] | 0) + 16 >> 1] | 0 | 0)) { f = 12; break } c[r >> 2] = (c[r >> 2] | 0) + 1 } if ((f | 0) == 10) { c[u >> 2] = 1; y = c[u >> 2] | 0; l = z; return y | 0 } else if ((f | 0) == 12) { c[u >> 2] = 1; y = c[u >> 2] | 0; l = z; return y | 0 } else if ((f | 0) == 14) { c[w >> 2] = c[h >> 2]; if (tE(c[w >> 2] | 0, k) | 0) { c[u >> 2] = 1; y = c[u >> 2] | 0; l = z; return y | 0 } a[k + 1 >> 0] = c[m >> 2]; a[k + 2 >> 0] = c[p >> 2]; a[k + 3 >> 0] = c[v >> 2]; if (uE(c[w >> 2] | 0, k + 4 | 0) | 0) { c[u >> 2] = 1; y = c[u >> 2] | 0; l = z; return y | 0 } c[x >> 2] = k + 5; c[j >> 2] = (c[v >> 2] | 0) + 5; if (c[s >> 2] | 0) { c[n >> 2] = k + (c[j >> 2] | 0); c[j >> 2] = (c[j >> 2] | 0) + (c[v >> 2] | 0); s = k + 2 | 0; a[s >> 0] = d[s >> 0] | 0 | 128 } else c[n >> 2] = 0; if (c[t >> 2] | 0) { c[q >> 2] = k + (c[j >> 2] | 0); c[j >> 2] = (c[j >> 2] | 0) + (c[v >> 2] | 0); t = k + 2 | 0; a[t >> 0] = d[t >> 0] | 0 | 64 } else c[q >> 2] = 0; c[r >> 2] = 0; while (1) { if ((c[r >> 2] | 0) >>> 0 >= (c[v >> 2] | 0) >>> 0) break; c[w >> 2] = c[(c[(c[y >> 2] | 0) + 4 >> 2] | 0) + (c[r >> 2] << 2) >> 2]; a[(c[x >> 2] | 0) + (c[r >> 2] | 0) >> 0] = b[(c[w >> 2] | 0) + 8 >> 1]; if (c[n >> 2] | 0) a[(c[n >> 2] | 0) + (c[r >> 2] | 0) >> 0] = b[(c[w >> 2] | 0) + 4 >> 1]; if (c[q >> 2] | 0) a[(c[q >> 2] | 0) + (c[r >> 2] | 0) >> 0] = b[(c[w >> 2] | 0) + 6 >> 1]; c[r >> 2] = (c[r >> 2] | 0) + 1 } x = QP(k, 1, c[j >> 2] | 0, c[o >> 2] | 0) | 0; if ((x | 0) != (c[j >> 2] | 0)) { c[u >> 2] = 1; y = c[u >> 2] | 0; l = z; return y | 0 } c[r >> 2] = 0; while (1) { if ((c[r >> 2] | 0) >>> 0 >= (c[v >> 2] | 0) >>> 0) { f = 38; break } if (vE(c[o >> 2] | 0, c[(c[(c[y >> 2] | 0) + 4 >> 2] | 0) + (c[r >> 2] << 2) >> 2] | 0) | 0) { f = 36; break } c[r >> 2] = (c[r >> 2] | 0) + 1 } if ((f | 0) == 36) { c[u >> 2] = 1; y = c[u >> 2] | 0; l = z; return y | 0 } else if ((f | 0) == 38) { c[u >> 2] = 0; y = c[u >> 2] | 0; l = z; return y | 0 } } return 0 } function tE(b, d) { b = b | 0; d = d | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; h = g + 4 | 0; f = g; c[h >> 2] = b; c[f >> 2] = d; d = e[(c[h >> 2] | 0) + 16 >> 1] | 0; a: do if ((d | 0) < 32769) switch (d | 0) { case 1: { a[c[f >> 2] >> 0] = 2;l = g; return 0 } case 2: { a[c[f >> 2] >> 0] = 5;l = g; return 0 } default: break a } else switch (d | 0) { case 32769: { a[c[f >> 2] >> 0] = 0;l = g; return 0 } case 32770: { a[c[f >> 2] >> 0] = 3;l = g; return 0 } default: break a } while (0); a[c[f >> 2] >> 0] = 5; l = g; return 0 } function uE(b, f) { b = b | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; h = j + 12 | 0; k = j + 8 | 0; g = j + 4 | 0; i = j; c[k >> 2] = b; c[g >> 2] = f; c[i >> 2] = e[(c[k >> 2] | 0) + 10 >> 1]; if (c[i >> 2] & (c[i >> 2] | 0) - 1 | 0) { c[h >> 2] = 1; k = c[h >> 2] | 0; l = j; return k | 0 } if ((c[i >> 2] | 0) >>> 0 > 8192) { c[h >> 2] = 1; k = c[h >> 2] | 0; l = j; return k | 0 } a[c[g >> 2] >> 0] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 < 256) break; k = c[g >> 2] | 0; a[k >> 0] = (d[k >> 0] | 0) + 1; c[i >> 2] = (c[i >> 2] | 0) >>> 1 } c[h >> 2] = 0; k = c[h >> 2] | 0; l = j; return k | 0 } function vE(a, b) { a = a | 0; b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 16 | 0; i = m + 12 | 0; k = m + 8 | 0; f = m + 4 | 0; h = m; c[i >> 2] = a; c[k >> 2] = b; if ($C(c[k >> 2] | 0) | 0) a = (e[(c[k >> 2] | 0) + 10 >> 1] | 0 | 0) > 0; else a = 0; c[h >> 2] = a & 1; if (c[(c[k >> 2] | 0) + 12 >> 2] & 2 | 0 ? c[(c[k >> 2] | 0) + 12 >> 2] & 4 | 0 : 0) c[f >> 2] = 7; else g = 6; do if ((g | 0) == 6) { if (c[(c[k >> 2] | 0) + 12 >> 2] & 2 | 0) { c[f >> 2] = 5; break } if (c[(c[k >> 2] | 0) + 12 >> 2] & 4 | 0) { c[f >> 2] = 3; break } else { c[f >> 2] = 1; break } } while (0); if (c[h >> 2] | 0) c[f >> 2] = (c[f >> 2] | 0) + 1; uQ(c[f >> 2] | 0, c[i >> 2] | 0) | 0; a = c[(c[k >> 2] | 0) + 24 >> 2] | 0; if (!(c[h >> 2] | 0)) { i = QP(a, 1, e[(c[k >> 2] | 0) + 10 >> 1] | 0, c[i >> 2] | 0) | 0; if ((i | 0) != (e[(c[k >> 2] | 0) + 10 >> 1] | 0 | 0)) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } } else uQ(d[a >> 0] | 0, c[i >> 2] | 0) | 0; c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } function wE(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; h = g; c[e >> 2] = a; c[h >> 2] = b; if ((c[h >> 2] | 0) >>> 0 < 29) { c[f >> 2] = 0; h = c[f >> 2] | 0; l = g; return h | 0 } if (((d[c[e >> 2] >> 0] | 0 | 0) == 73 ? (d[(c[e >> 2] | 0) + 1 >> 0] | 0 | 0) == 77 : 0) ? (d[(c[e >> 2] | 0) + 2 >> 0] | 0 | 0) == 68 : 0) { if (((d[(c[e >> 2] | 0) + 12 >> 0] | 0 | 0) == 47 ? (d[(c[e >> 2] | 0) + 15 >> 0] | 0 | 0) == 47 : 0) ? (d[(c[e >> 2] | 0) + 20 >> 0] | 0 | 0) == 32 : 0) { c[f >> 2] = 1; h = c[f >> 2] | 0; l = g; return h | 0 } c[f >> 2] = 0; h = c[f >> 2] | 0; l = g; return h | 0 } c[f >> 2] = 0; h = c[f >> 2] | 0; l = g; return h | 0 } function xE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 32 | 0; e = f + 4 | 0; d = f; b = f + 8 | 0; c[d >> 2] = a; do if (!(jQ(c[d >> 2] | 0, 0, 0) | 0)) { if ((AQ(b, 1, 4, c[d >> 2] | 0) | 0) != 4) { c[e >> 2] = 0; break } if ((vG(b, 0) | 0) != 1229800480) { c[e >> 2] = 0; break } else { c[e >> 2] = 1; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function yE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; a = xD() | 0; c[d >> 2] = a; do if (a) { b = (zE(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function zE(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 40 | 0; f = p + 36 | 0; i = p + 32 | 0; e = p + 28 | 0; g = p + 24 | 0; h = p + 20 | 0; j = p + 16 | 0; m = p + 12 | 0; d = p + 8 | 0; n = p + 4 | 0; k = p; c[f >> 2] = a; c[i >> 2] = b; if (AE(c[f >> 2] | 0, d) | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } do if ((c[d >> 2] | 0) == 409600) c[h >> 2] = 1; else { if ((c[d >> 2] | 0) == 819200) { c[h >> 2] = 2; break } c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } while (0); c[e >> 2] = 0; a: while (1) { if ((c[e >> 2] | 0) >>> 0 >= 80) { a = 25; break } c[m >> 2] = 12 - (((c[e >> 2] | 0) >>> 0) / 16 | 0); c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; d = FD(c[i >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0, 1) | 0; c[n >> 2] = d; if (!d) { a = 13; break a } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; d = UC(c[e >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0, 512) | 0; c[k >> 2] = d; if (!d) { a = 17; break a } d = (pD(c[n >> 2] | 0, c[k >> 2] | 0) | 0) != 0; b = c[k >> 2] | 0; if (d) { a = 19; break a } ZC(b, 512, 0) | 0; bD(c[k >> 2] | 0, 3); if ((AQ(c[(c[k >> 2] | 0) + 24 >> 2] | 0, 1, 512, c[f >> 2] | 0) | 0) != 512) { a = 21; break a } c[j >> 2] = (c[j >> 2] | 0) + 1 } rD(c[n >> 2] | 0, 2) | 0; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((a | 0) == 13) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((a | 0) == 17) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((a | 0) == 19) { VC(b); c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((a | 0) == 21) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((a | 0) == 25) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function AE(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; d = h + 8 | 0; g = h + 4 | 0; e = h; c[d >> 2] = a; c[g >> 2] = b; c[e >> 2] = zQ(c[d >> 2] | 0) | 0; if (jQ(c[d >> 2] | 0, 0, 2) | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } b = zQ(c[d >> 2] | 0) | 0; c[c[g >> 2] >> 2] = b; if (jQ(c[d >> 2] | 0, c[e >> 2] | 0, 0) | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } else { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function BE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 1552 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; b = g + 16 | 0; c[d >> 2] = a; do if (!(AE(c[d >> 2] | 0, f) | 0)) { if ((c[f >> 2] | 0) != 409600 & (c[f >> 2] | 0) != 819200) { c[e >> 2] = 0; break } if (jQ(c[d >> 2] | 0, 0, 0) | 0) { c[e >> 2] = 0; break } if ((AQ(b, 1, 1536, c[d >> 2] | 0) | 0) != 1536) { c[e >> 2] = 0; break } if ((uG(b, 1024) | 0) == 16964) { c[e >> 2] = 1; break } if ((uG(b, 1024) | 0) == 53975) { c[e >> 2] = 1; break } else { c[e >> 2] = 0; break } } else c[e >> 2] = 0; while (0); l = g; return c[e >> 2] | 0 } function CE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; a = xD() | 0; c[d >> 2] = a; do if (a) { b = (DE(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function DE(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 80 | 0; r = t + 52 | 0; h = t + 48 | 0; k = t + 44 | 0; f = t + 40 | 0; i = t + 36 | 0; m = t + 32 | 0; j = t + 28 | 0; o = t + 24 | 0; e = t + 20 | 0; g = t + 16 | 0; p = t + 12 | 0; s = t + 8 | 0; q = t + 4 | 0; n = t; d = t + 56 | 0; c[h >> 2] = a; c[k >> 2] = b; if (CG(c[h >> 2] | 0, 0, d, 10) | 0) { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } if ((uG(d, 0) | 0) != 3599) { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } c[o >> 2] = uG(d, 2) | 0; c[j >> 2] = (uG(d, 4) | 0) + 1; c[e >> 2] = uG(d, 6) | 0; c[g >> 2] = uG(d, 8) | 0; if ((c[o >> 2] | 0) >>> 0 < 1 | (c[o >> 2] | 0) >>> 0 > 127) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } if ((c[j >> 2] | 0) >>> 0 <= 16 ? (c[g >> 2] | 0) >>> 0 >= (c[e >> 2] | 0) >>> 0 : 0) { c[p >> 2] = c[o >> 2] << 9; b = HQ(c[p >> 2] | 0) | 0; c[s >> 2] = b; if (!b) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } c[f >> 2] = c[e >> 2]; a: while (1) { if ((c[f >> 2] | 0) >>> 0 > (c[g >> 2] | 0) >>> 0) { d = 29; break } c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; c[q >> 2] = FD(c[k >> 2] | 0, c[f >> 2] | 0, c[i >> 2] | 0, 1) | 0; if (!(c[q >> 2] | 0)) { d = 17; break a } if (EE(c[h >> 2] | 0, c[s >> 2] | 0, c[p >> 2] | 0) | 0) { d = 19; break a } c[m >> 2] = 0; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; c[n >> 2] = UC(c[f >> 2] | 0, c[i >> 2] | 0, (c[m >> 2] | 0) + 1 | 0, 512) | 0; if (!(c[n >> 2] | 0)) { d = 23; break a } bD(c[n >> 2] | 0, 2); b = (pD(c[q >> 2] | 0, c[n >> 2] | 0) | 0) != 0; e = c[n >> 2] | 0; if (b) { d = 25; break a } QQ(c[e + 24 >> 2] | 0, (c[s >> 2] | 0) + (c[m >> 2] << 9) | 0, 512) | 0; c[m >> 2] = (c[m >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((d | 0) == 17) { IQ(c[s >> 2] | 0); c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((d | 0) == 19) { IQ(c[s >> 2] | 0); c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((d | 0) == 23) { IQ(c[s >> 2] | 0); c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((d | 0) == 25) { VC(e); c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else if ((d | 0) == 29) { IQ(c[s >> 2] | 0); c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } } c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } function EE(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 32 | 0; j = p + 28 | 0; f = p + 24 | 0; h = p + 20 | 0; g = p + 16 | 0; k = p + 12 | 0; m = p + 8 | 0; i = p + 4 | 0; n = p; c[j >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; if (BG(c[j >> 2] | 0, c[f >> 2] | 0, 2) | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } c[i >> 2] = uG(c[f >> 2] | 0, 0) | 0; if ((c[i >> 2] | 0) == (c[h >> 2] | 0)) if (BG(c[j >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } while (1) { if ((c[h >> 2] | 0) >>> 0 <= 0) { d = 22; break } if ((c[i >> 2] | 0) >>> 0 < 1) { d = 9; break } b = vQ(c[j >> 2] | 0) | 0; c[g >> 2] = b; if ((b | 0) == -1) { d = 11; break } c[i >> 2] = (c[i >> 2] | 0) - 1; if ((c[g >> 2] | 0) != 229) { e = c[g >> 2] & 255; b = c[f >> 2] | 0; c[f >> 2] = b + 1; a[b >> 0] = e; c[h >> 2] = (c[h >> 2] | 0) - 1; continue } if ((c[i >> 2] | 0) >>> 0 < 3) { d = 14; break } c[g >> 2] = vQ(c[j >> 2] | 0) | 0; c[k >> 2] = vQ(c[j >> 2] | 0) | 0; c[m >> 2] = vQ(c[j >> 2] | 0) | 0; if ((c[g >> 2] | 0) == -1 | (c[k >> 2] | 0) == -1 | (c[m >> 2] | 0) == -1) { d = 16; break } c[n >> 2] = (c[k >> 2] & 255) << 8 | c[m >> 2] & 255; while (1) { if (!((c[h >> 2] | 0) >>> 0 > 0 ? (c[n >> 2] | 0) >>> 0 > 0 : 0)) break; e = c[g >> 2] & 255; b = c[f >> 2] | 0; c[f >> 2] = b + 1; a[b >> 0] = e; c[h >> 2] = (c[h >> 2] | 0) - 1; c[n >> 2] = (c[n >> 2] | 0) - 1 } c[i >> 2] = (c[i >> 2] | 0) - 3 } if ((d | 0) == 9) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 11) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 14) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 16) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 22) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function FE(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 32 | 0; n = p + 28 | 0; i = p + 24 | 0; f = p + 20 | 0; h = p + 16 | 0; j = p + 12 | 0; g = p + 8 | 0; m = p + 4 | 0; k = p; d = p + 36 | 0; c[n >> 2] = a; c[i >> 2] = b; b = DD(c[i >> 2] | 0, 0, 0) | 0; c[g >> 2] = b; if (!b) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } b = FD(c[i >> 2] | 0, 0, 0, 0) | 0; c[m >> 2] = b; if (!b) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } wG(d, 0, 3599); wG(d, 2, e[(c[m >> 2] | 0) + 2 >> 1] | 0); wG(d, 4, (e[(c[g >> 2] | 0) + 2 >> 1] | 0) - 1 | 0); wG(d, 6, 0); wG(d, 8, (e[c[i >> 2] >> 1] | 0) - 1 | 0); if (DG(c[n >> 2] | 0, d, 10) | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } wG(d, 0, (e[(c[m >> 2] | 0) + 2 >> 1] | 0) << 9); c[f >> 2] = 0; a: while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[c[i >> 2] >> 1] | 0) >>> 0) { d = 24; break } c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (e[(c[g >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; if (DG(c[n >> 2] | 0, d, 2) | 0) { d = 12; break a } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (e[(c[m >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = HD(c[i >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, (c[j >> 2] | 0) + 1 | 0, 0) | 0; if (!(c[k >> 2] | 0)) { d = 16; break a } if ((e[(c[k >> 2] | 0) + 10 >> 1] | 0 | 0) != 512) { d = 18; break a } if (DG(c[n >> 2] | 0, c[(c[k >> 2] | 0) + 24 >> 2] | 0, 512) | 0) { d = 20; break a } c[j >> 2] = (c[j >> 2] | 0) + 1 } c[h >> 2] = (c[h >> 2] | 0) + 1 } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((d | 0) == 12) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 16) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 18) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 20) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 24) { XP(c[n >> 2] | 0) | 0; c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function GE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 32 | 0; d = e + 4 | 0; f = e; b = e + 8 | 0; c[f >> 2] = a; do if (!(CG(c[f >> 2] | 0, 0, b, 10) | 0)) if ((uG(b, 0) | 0) != 3599) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function HE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = (IE(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function IE(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; e = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; i = j; d = j + 24 | 0; c[e >> 2] = a; c[f >> 2] = b; do if (!(BG(c[e >> 2] | 0, d, 8) | 0)) { c[g >> 2] = vG(d, 0) | 0; c[i >> 2] = vG(d, 4) | 0; if ((c[g >> 2] | 0) != 1346782275) { c[h >> 2] = 1; break } if (!(c[i >> 2] | 0)) { c[h >> 2] = GG(c[e >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0) | 0; break } if ((c[i >> 2] | 0) == 65536) { c[h >> 2] = MG(c[e >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0) | 0; break } b = c[e >> 2] | 0; e = c[f >> 2] | 0; d = c[g >> 2] | 0; a = c[i >> 2] | 0; if ((c[i >> 2] | 0) == 131072) { c[h >> 2] = VG(b, e, d, a) | 0; break } else { c[h >> 2] = nH(b, e, d, a) | 0; break } } else c[h >> 2] = 1; while (0); l = j; return c[h >> 2] | 0 } function JE(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; h = i; c[e >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; do if (c[h >> 2] | 0) { if ((c[h >> 2] | 0) == 1) { c[g >> 2] = QG(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } e = c[e >> 2] | 0; a = c[f >> 2] | 0; if ((c[h >> 2] | 0) == 2) { c[g >> 2] = fH(e, a) | 0; break } else { c[g >> 2] = yH(e, a) | 0; break } } else c[g >> 2] = JG(c[e >> 2] | 0, c[f >> 2] | 0) | 0; while (0); l = i; return c[g >> 2] | 0 } function KE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; b = e + 8 | 0; c[f >> 2] = a; do if (!(CG(c[f >> 2] | 0, 0, b, 4) | 0)) if ((vG(b, 0) | 0) != 1346782275) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function LE(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; a = xD() | 0; c[d >> 2] = a; do if (a) { b = (ME(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function ME(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, m = 0, n = 0; n = l; l = l + 48 | 0; k = n + 28 | 0; i = n + 24 | 0; j = n + 20 | 0; e = n + 16 | 0; m = n + 12 | 0; h = n + 8 | 0; f = n + 4 | 0; g = n; d = n + 32 | 0; c[i >> 2] = a; c[j >> 2] = b; c[h >> 2] = 0; a: do if (NE(c[i >> 2] | 0, d, 8, h) | 0) c[k >> 2] = 1; else { c[e >> 2] = vG(d, 0) | 0; c[m >> 2] = vG(d, 4) | 0; if ((c[e >> 2] | 0) != 1347635488) { c[k >> 2] = 1; break } if (OE(c[i >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0, f) | 0) { c[k >> 2] = 1; break } c[g >> 2] = 0; b: while (1) { c[h >> 2] = 0; if (NE(c[i >> 2] | 0, d, 8, h) | 0) { a = 9; break } c[e >> 2] = vG(d, 0) | 0; c[m >> 2] = vG(d, 4) | 0; a = c[e >> 2] | 0; c: do if ((a | 0) < 1296122695) { if ((a | 0) >= 1229081926) switch (a | 0) { case 1229081926: if (RE(c[i >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 17; break b } else continue b; case 1229081933: if (SE(c[i >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 19; break b } else continue b; default: break c } if ((a | 0) >= 1162757152) switch (a | 0) { case 1162757152: { a = 11; break b } default: break c } switch (a | 0) { case 1145132097: break; default: break c } if (WE(c[i >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 27; break b } else continue b } else { if ((a | 0) < 1397048148) if ((a | 0) < 1330005587) { switch (a | 0) { case 1296122695: break; default: break c } if (TE(c[i >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 21; break b } else continue b } else { switch (a | 0) { case 1330005587: break; default: break c } if (UE(c[i >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 23; break b } else continue b } if ((a | 0) < 1413830740) { switch (a | 0) { case 1397048148: break; default: break c } if (QE(c[i >> 2] | 0, c[j >> 2] | 0, g, c[m >> 2] | 0, c[h >> 2] | 0, c[f >> 2] | 0) | 0) { a = 15; break b } else continue b } if ((a | 0) < 1414090053) { switch (a | 0) { case 1413830740: break; default: break c } if (XE(c[i >> 2] | 0, c[j >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 29; break b } else continue b } else { switch (a | 0) { case 1414090053: break; default: break c } if (VE(c[i >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 25; break b } else continue b } } while (0); if (YE(c[i >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { a = 31; break } } switch (a | 0) { case 9: { c[k >> 2] = 1; break a } case 11: if (PE(c[i >> 2] | 0, c[j >> 2] | 0, c[m >> 2] | 0, c[h >> 2] | 0) | 0) { c[k >> 2] = 1; break a } else { c[k >> 2] = 0; break a } case 15: { c[k >> 2] = 1; break a } case 17: { c[k >> 2] = 1; break a } case 19: { c[k >> 2] = 1; break a } case 21: { c[k >> 2] = 1; break a } case 23: { c[k >> 2] = 1; break a } case 25: { c[k >> 2] = 1; break a } case 27: { c[k >> 2] = 1; break a } case 29: { c[k >> 2] = 1; break a } case 31: { c[k >> 2] = 1; break a } } } while (0); l = n; return c[k >> 2] | 0 } function NE(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; k = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[k >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; a = AQ(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[k >> 2] | 0) | 0; if ((a | 0) != (c[g >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } if (c[h >> 2] | 0) { k = ZE(c[c[h >> 2] >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[c[h >> 2] >> 2] = k } c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } function OE(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; m = o; j = o + 24 | 0; i = o + 20 | 0; k = o + 16 | 0; g = o + 12 | 0; h = o + 8 | 0; n = o + 4 | 0; f = o + 32 | 0; c[i >> 2] = a; c[k >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if ((c[k >> 2] | 0) >>> 0 < 4) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = o; return n | 0 } if (NE(c[i >> 2] | 0, f, 4, g) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = o; return n | 0 } c[n >> 2] = uG(f, 0) | 0; if (c[n >> 2] | 0) { k = c[7422] | 0; c[m >> 2] = c[n >> 2]; kQ(k, 47356, m) | 0; c[j >> 2] = 1; n = c[j >> 2] | 0; l = o; return n | 0 } switch (uG(f, 2) | 0) { case 256: { c[c[h >> 2] >> 2] = 1; break } case 257: { c[c[h >> 2] >> 2] = 32769; break } case 512: { c[c[h >> 2] >> 2] = 2; break } case 513: { c[c[h >> 2] >> 2] = 32770; break } case 514: { c[c[h >> 2] >> 2] = 16386; break } case 768: { c[c[h >> 2] >> 2] = 3; break } default: c[c[h >> 2] >> 2] = 0 } if (YE(c[i >> 2] | 0, (c[k >> 2] | 0) - 4 | 0, c[g >> 2] | 0) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = o; return n | 0 } else { c[j >> 2] = 0; n = c[j >> 2] | 0; l = o; return n | 0 } return 0 } function PE(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 32 | 0; g = h + 16 | 0; k = h + 12 | 0; f = h + 8 | 0; j = h + 4 | 0; i = h; c[k >> 2] = a; c[f >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; if (YE(c[k >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { c[g >> 2] = 1; k = c[g >> 2] | 0; l = h; return k | 0 } else { LD(c[f >> 2] | 0); c[g >> 2] = 0; k = c[g >> 2] | 0; l = h; return k | 0 } return 0 } function QE(a, b, e, f, g, h) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, 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 = l; l = l + 64 | 0; x = y; t = y + 52 | 0; o = y + 48 | 0; q = y + 44 | 0; r = y + 40 | 0; w = y + 36 | 0; k = y + 32 | 0; m = y + 28 | 0; j = y + 24 | 0; p = y + 20 | 0; u = y + 16 | 0; n = y + 12 | 0; s = y + 8 | 0; i = y + 56 | 0; v = y + 4 | 0; c[o >> 2] = a; c[q >> 2] = b; c[r >> 2] = e; c[w >> 2] = f; c[k >> 2] = g; c[m >> 2] = h; if ((c[w >> 2] | 0) >>> 0 < 8) { c[t >> 2] = 1; x = c[t >> 2] | 0; l = y; return x | 0 } if (NE(c[o >> 2] | 0, i, 8, k) | 0) { c[t >> 2] = 1; x = c[t >> 2] | 0; l = y; return x | 0 } c[j >> 2] = uG(i, 0) | 0; c[p >> 2] = d[i + 2 >> 0]; c[u >> 2] = d[i + 3 >> 0]; c[s >> 2] = uG(i, 4) | 0; c[n >> 2] = d[i + 6 >> 0]; f = UC(c[j >> 2] | 0, c[p >> 2] | 0, c[u >> 2] | 0, c[s >> 2] | 0) | 0; c[v >> 2] = f; if (!f) { c[t >> 2] = 1; x = c[t >> 2] | 0; l = y; return x | 0 } do if (!(c[n >> 2] & 2 | 0)) { if (ED(c[q >> 2] | 0, c[v >> 2] | 0, c[j >> 2] | 0, c[p >> 2] | 0) | 0) { VC(c[v >> 2] | 0); c[t >> 2] = 1; x = c[t >> 2] | 0; l = y; return x | 0 } } else { if (c[c[r >> 2] >> 2] | 0) { XC(c[c[r >> 2] >> 2] | 0, c[v >> 2] | 0); break } kQ(c[7422] | 0, 47324, x) | 0; VC(c[v >> 2] | 0); c[t >> 2] = 1; x = c[t >> 2] | 0; l = y; return x | 0 } while (0); if (c[n >> 2] & 4 | 0) { x = (c[v >> 2] | 0) + 12 | 0; c[x >> 2] = c[x >> 2] | 2 } bD(c[v >> 2] | 0, c[m >> 2] | 0); c[w >> 2] = (c[w >> 2] | 0) - 8; if (c[n >> 2] & 1 | 0) _C(c[v >> 2] | 0, d[i + 7 >> 0] | 0); c[c[r >> 2] >> 2] = c[v >> 2]; if (YE(c[o >> 2] | 0, c[w >> 2] | 0, c[k >> 2] | 0) | 0) { c[t >> 2] = 1; x = c[t >> 2] | 0; l = y; return x | 0 } else { c[t >> 2] = 0; x = c[t >> 2] | 0; l = y; return x | 0 } return 0 } function RE(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, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 32 | 0; o = q + 20 | 0; n = q + 16 | 0; j = q + 8 | 0; p = q + 4 | 0; m = q; k = q + 24 | 0; c[n >> 2] = e; c[q + 12 >> 2] = f; c[j >> 2] = g; c[p >> 2] = h; c[m >> 2] = i; if ((c[j >> 2] | 0) == 0 | (c[p >> 2] | 0) >>> 0 < 6) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } if (NE(c[n >> 2] | 0, k, 6, m) | 0) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } b[(c[j >> 2] | 0) + 4 >> 1] = d[k >> 0] | 0; b[(c[j >> 2] | 0) + 6 >> 1] = d[k + 1 >> 0] | 0; b[(c[j >> 2] | 0) + 8 >> 1] = d[k + 2 >> 0] | 0; gD(c[j >> 2] | 0, a[k + 3 >> 0] | 0); if ((d[k + 4 >> 0] | 0) & 1 | 0) { h = (c[j >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 1 } if ((d[k + 4 >> 0] | 0) & 2 | 0) { h = (c[j >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 2 } if ((d[k + 4 >> 0] | 0) & 4 | 0) { h = (c[j >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 4 } if ((d[k + 4 >> 0] | 0) & 8 | 0) { h = (c[j >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 8 } i = c[j >> 2] | 0; if ((d[k + 5 >> 0] | 0 | 0) == 1) bD(i, 32769); else bD(i, 1); if (YE(c[n >> 2] | 0, (c[p >> 2] | 0) - 6 | 0, c[m >> 2] | 0) | 0) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } else { c[o >> 2] = 0; p = c[o >> 2] | 0; l = q; return p | 0 } return 0 } function SE(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, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 32 | 0; n = q + 20 | 0; m = q + 16 | 0; o = q + 8 | 0; p = q + 4 | 0; k = q; j = q + 24 | 0; c[m >> 2] = e; c[q + 12 >> 2] = f; c[o >> 2] = g; c[p >> 2] = h; c[k >> 2] = i; if ((c[o >> 2] | 0) == 0 | (c[p >> 2] | 0) >>> 0 < 6) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } if (NE(c[m >> 2] | 0, j, 6, k) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } b[(c[o >> 2] | 0) + 4 >> 1] = d[j >> 0] | 0; b[(c[o >> 2] | 0) + 6 >> 1] = d[j + 1 >> 0] | 0; b[(c[o >> 2] | 0) + 8 >> 1] = d[j + 2 >> 0] | 0; gD(c[o >> 2] | 0, a[j + 3 >> 0] | 0); if ((d[j + 4 >> 0] | 0) & 1 | 0) { h = (c[o >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 1 } if ((d[j + 4 >> 0] | 0) & 2 | 0) { h = (c[o >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 2 } if ((d[j + 4 >> 0] | 0) & 4 | 0) { h = (c[o >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 4 } if ((d[j + 4 >> 0] | 0) & 8 | 0) { h = (c[o >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 8 } switch (d[j + 5 >> 0] | 0 | 0) { case 1: { bD(c[o >> 2] | 0, 32770); break } case 2: { bD(c[o >> 2] | 0, 16386); break } default: bD(c[o >> 2] | 0, 2) } if (YE(c[m >> 2] | 0, (c[p >> 2] | 0) - 6 | 0, c[k >> 2] | 0) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } else { c[n >> 2] = 0; p = c[n >> 2] | 0; l = q; return p | 0 } return 0 } function TE(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, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; n = q + 20 | 0; m = q + 16 | 0; o = q + 8 | 0; p = q + 4 | 0; k = q; j = q + 24 | 0; c[m >> 2] = e; c[q + 12 >> 2] = f; c[o >> 2] = g; c[p >> 2] = h; c[k >> 2] = i; if (!(c[o >> 2] | 0)) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } if ((c[p >> 2] | 0) >>> 0 < 18) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } if (NE(c[m >> 2] | 0, j, 18, k) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } h = (uG(j, 0) | 0) & 65535; b[(c[o >> 2] | 0) + 4 >> 1] = h; b[(c[o >> 2] | 0) + 6 >> 1] = d[j + 2 >> 0] | 0; b[(c[o >> 2] | 0) + 8 >> 1] = d[j + 3 >> 0] | 0; iD(c[o >> 2] | 0, a[j + 4 >> 0] | 0); if ((d[j + 5 >> 0] | 0) & 1 | 0) { h = (c[o >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 1 } if ((d[j + 5 >> 0] | 0) & 2 | 0) { h = (c[o >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 2 } if ((d[j + 5 >> 0] | 0) & 4 | 0) { h = (c[o >> 2] | 0) + 12 | 0; c[h >> 2] = c[h >> 2] | 8 } bD(c[o >> 2] | 0, 3); kD(c[o >> 2] | 0, j + 6 | 0, 12) | 0; if (YE(c[m >> 2] | 0, (c[p >> 2] | 0) - 18 | 0, c[k >> 2] | 0) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } else { c[n >> 2] = 0; p = c[n >> 2] | 0; l = q; return p | 0 } return 0 } function UE(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, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 20 | 0; i = n + 16 | 0; k = n + 8 | 0; m = n + 4 | 0; h = n; g = n + 24 | 0; c[i >> 2] = a; c[n + 12 >> 2] = b; c[k >> 2] = d; c[m >> 2] = e; c[h >> 2] = f; if ((c[k >> 2] | 0) == 0 | (c[m >> 2] | 0) >>> 0 < 4) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } if (NE(c[i >> 2] | 0, g, 4, h) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } e = c[k >> 2] | 0; cD(e, vG(g, 0) | 0); if (YE(c[i >> 2] | 0, (c[m >> 2] | 0) - 4 | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function VE(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, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 20 | 0; i = n + 16 | 0; k = n + 8 | 0; m = n + 4 | 0; h = n; g = n + 24 | 0; c[i >> 2] = a; c[n + 12 >> 2] = b; c[k >> 2] = d; c[m >> 2] = e; c[h >> 2] = f; if ((c[k >> 2] | 0) == 0 | (c[m >> 2] | 0) >>> 0 < 4) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } if (NE(c[i >> 2] | 0, g, 4, h) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } e = c[k >> 2] | 0; eD(e, vG(g, 0) | 0); if (YE(c[i >> 2] | 0, (c[m >> 2] | 0) - 4 | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function WE(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, m = 0; m = l; l = l + 32 | 0; i = m + 20 | 0; h = m + 16 | 0; j = m + 8 | 0; k = m + 4 | 0; g = m; c[h >> 2] = a; c[m + 12 >> 2] = b; c[j >> 2] = d; c[k >> 2] = e; c[g >> 2] = f; do if (c[j >> 2] | 0) { if (ZC(c[j >> 2] | 0, c[k >> 2] | 0, 0) | 0) { c[i >> 2] = 1; break } if ((c[k >> 2] | 0) >>> 0 > 0 ? NE(c[h >> 2] | 0, c[(c[j >> 2] | 0) + 24 >> 2] | 0, c[k >> 2] | 0, g) | 0 : 0) { c[i >> 2] = 1; break } if (YE(c[h >> 2] | 0, 0, c[g >> 2] | 0) | 0) { c[i >> 2] = 1; break } else { c[i >> 2] = 0; break } } else c[i >> 2] = 1; while (0); l = m; return c[i >> 2] | 0 } function XE(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; o = q + 32 | 0; i = q + 28 | 0; k = q + 24 | 0; p = q + 20 | 0; h = q + 16 | 0; n = q + 12 | 0; j = q + 8 | 0; m = q + 4 | 0; g = q; c[i >> 2] = a; c[k >> 2] = b; c[p >> 2] = e; c[h >> 2] = f; if (!(c[p >> 2] | 0)) { c[o >> 2] = YE(c[i >> 2] | 0, c[p >> 2] | 0, c[h >> 2] | 0) | 0; p = c[o >> 2] | 0; l = q; return p | 0 } e = HQ(c[p >> 2] | 0) | 0; c[g >> 2] = e; if (!e) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } if (NE(c[i >> 2] | 0, c[g >> 2] | 0, c[p >> 2] | 0, h) | 0) { IQ(c[g >> 2] | 0); c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } c[j >> 2] = 0; c[m >> 2] = c[p >> 2]; if ((d[c[g >> 2] >> 0] | 0 | 0) == 10) { c[j >> 2] = 1; c[m >> 2] = (c[m >> 2] | 0) - 1 } if ((c[m >> 2] | 0) >>> 0 > 0 ? (d[(c[g >> 2] | 0) + ((c[m >> 2] | 0) - 1) >> 0] | 0 | 0) == 10 : 0) c[m >> 2] = (c[m >> 2] | 0) - 1; c[n >> 2] = JD(c[k >> 2] | 0, (c[g >> 2] | 0) + (c[j >> 2] | 0) | 0, c[m >> 2] | 0) | 0; IQ(c[g >> 2] | 0); p = YE(c[i >> 2] | 0, 0, c[h >> 2] | 0) | 0; c[n >> 2] = c[n >> 2] | p; c[o >> 2] = c[n >> 2]; p = c[o >> 2] | 0; l = q; return p | 0 } function YE(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 288 | 0; k = n; j = n + 20 | 0; h = n + 16 | 0; f = n + 12 | 0; g = n + 8 | 0; i = n + 4 | 0; e = n + 24 | 0; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; c[i >> 2] = (c[f >> 2] | 0) >>> 0 < 256 ? c[f >> 2] | 0 : 256; if (NE(c[h >> 2] | 0, e, c[i >> 2] | 0, g) | 0) { m = 4; break } c[f >> 2] = (c[f >> 2] | 0) - (c[i >> 2] | 0) } if ((m | 0) == 4) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } if (NE(c[h >> 2] | 0, e, 4, 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } m = vG(e, 0) | 0; if ((m | 0) != (c[g >> 2] | 0)) { kQ(c[7422] | 0, 47308, k) | 0; c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function ZE(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; k = o + 28 | 0; f = o + 24 | 0; j = o + 20 | 0; g = o + 16 | 0; h = o + 12 | 0; n = o + 8 | 0; i = o + 4 | 0; m = o; c[k >> 2] = a; c[f >> 2] = b; c[j >> 2] = e; if (!(c[14160] | 0)) { c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 256) break; c[i >> 2] = c[g >> 2] << 24; c[h >> 2] = 0; while (1) { b = c[i >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 >= 8) break; e = c[i >> 2] << 1; if (b & -2147483648 | 0) c[i >> 2] = e ^ 517762881; else c[i >> 2] = e; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[56644 + (c[g >> 2] << 2) >> 2] = b; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[14160] = 1 } c[m >> 2] = c[f >> 2]; while (1) { b = c[k >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 <= 0) break; i = c[m >> 2] | 0; c[m >> 2] = i + 1; c[n >> 2] = b >>> 24 ^ (d[i >> 0] | 0); c[k >> 2] = c[k >> 2] << 8 ^ c[56644 + ((c[n >> 2] & 255) << 2) >> 2]; c[j >> 2] = (c[j >> 2] | 0) - 1 } l = o; return b | 0 } function _E(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; k = q + 36 | 0; h = q + 32 | 0; j = q + 28 | 0; d = q + 24 | 0; i = q + 20 | 0; m = q + 16 | 0; g = q + 12 | 0; f = q + 8 | 0; o = q + 4 | 0; n = q; c[h >> 2] = a; c[j >> 2] = b; if ($E(c[h >> 2] | 0, c[j >> 2] | 0, g) | 0) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } if (aF(c[h >> 2] | 0, c[j >> 2] | 0) | 0) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[j >> 2] >> 1] | 0) >>> 0) break; c[f >> 2] = c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[o >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; c[m >> 2] = 0; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (e[(c[o >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[o >> 2] | 0) + 4 >> 2] | 0) + (c[m >> 2] << 2) >> 2]; if (bF(c[h >> 2] | 0, c[n >> 2] | 0, c[d >> 2] | 0, c[i >> 2] | 0, c[g >> 2] | 0) | 0) { p = 12; break a } c[m >> 2] = (c[m >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((p | 0) == 12) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } if (cF(c[h >> 2] | 0, 1162757152, 0, 0) | 0) { c[k >> 2] = 1; p = c[k >> 2] | 0; l = q; return p | 0 } else { XP(c[h >> 2] | 0) | 0; c[k >> 2] = 0; p = c[k >> 2] | 0; l = q; return p | 0 } return 0 } function $E(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; f = j + 12 | 0; m = j + 8 | 0; k = j + 4 | 0; h = j; e = j + 20 | 0; c[f >> 2] = a; c[m >> 2] = b; c[k >> 2] = d; wG(e, 0, 0); d = kF(c[m >> 2] | 0) | 0; c[c[k >> 2] >> 2] = d; d = c[c[k >> 2] >> 2] | 0; a: do if ((d | 0) < 16386) switch (d | 0) { case 1: { c[h >> 2] = 256; break a } case 2: { c[h >> 2] = 512; break a } case 3: { c[h >> 2] = 768; break a } default: { i = 8; break a } } else { if ((d | 0) < 32769) { switch (d | 0) { case 16386: break; default: { i = 8; break a } } c[h >> 2] = 514; break } switch (d | 0) { case 32769: { c[h >> 2] = 257; break a } case 32770: { c[h >> 2] = 513; break a } default: { i = 8; break a } } } while (0); if ((i | 0) == 8) c[h >> 2] = 0; wG(e, 2, c[h >> 2] | 0); if (cF(c[f >> 2] | 0, 1347635488, 4, e) | 0) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = j; return m | 0 } else { c[g >> 2] = 0; m = c[g >> 2] | 0; l = j; return m | 0 } return 0 } function aF(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; j = k + 16 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 4 | 0; f = k; e = k + 24 | 0; c[g >> 2] = b; c[h >> 2] = d; if (!(c[(c[h >> 2] | 0) + 8 >> 2] | 0)) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } else { xG(e, 0, 1413830740); xG(e, 4, (c[(c[h >> 2] | 0) + 8 >> 2] | 0) + 2 | 0); a[e + 8 >> 0] = 10; c[f >> 2] = 0; c[i >> 2] = dF(c[g >> 2] | 0, e, 9, f) | 0; h = dF(c[g >> 2] | 0, c[(c[h >> 2] | 0) + 12 >> 2] | 0, c[(c[h >> 2] | 0) + 8 >> 2] | 0, f) | 0; c[i >> 2] = c[i >> 2] | h; h = dF(c[g >> 2] | 0, e + 8 | 0, 1, f) | 0; c[i >> 2] = c[i >> 2] | h; xG(e, 0, c[f >> 2] | 0); h = dF(c[g >> 2] | 0, e, 4, 0) | 0; c[i >> 2] = c[i >> 2] | h; c[j >> 2] = c[i >> 2]; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function bF(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, m = 0, n = 0; n = l; l = l + 32 | 0; m = n + 20 | 0; i = n + 16 | 0; k = n + 12 | 0; g = n + 8 | 0; j = n + 4 | 0; h = n; c[i >> 2] = a; c[k >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[h >> 2] = f; if (eF(c[i >> 2] | 0, c[k >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0, 0, c[h >> 2] | 0) | 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } c[k >> 2] = c[c[k >> 2] >> 2]; while (1) { if (!(c[k >> 2] | 0)) { d = 8; break } if (eF(c[i >> 2] | 0, c[k >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0, 1, c[h >> 2] | 0) | 0) { d = 6; break } c[k >> 2] = c[c[k >> 2] >> 2] } if ((d | 0) == 6) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((d | 0) == 8) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } return 0 } function cF(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; i = m + 16 | 0; n = m + 12 | 0; k = m + 8 | 0; h = m + 4 | 0; g = m; f = m + 24 | 0; c[i >> 2] = a; c[n >> 2] = b; c[k >> 2] = d; c[h >> 2] = e; xG(f, 0, c[n >> 2] | 0); xG(f, 4, c[k >> 2] | 0); c[g >> 2] = 0; if (dF(c[i >> 2] | 0, f, 8, g) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } if ((c[k >> 2] | 0) >>> 0 > 0 ? dF(c[i >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0, g) | 0 : 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } xG(f, 0, c[g >> 2] | 0); if (dF(c[i >> 2] | 0, f, 4, 0) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } else { c[j >> 2] = 0; n = c[j >> 2] | 0; l = m; return n | 0 } return 0 } function dF(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; i = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; h = k; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if (c[h >> 2] | 0) { a = ZE(c[c[h >> 2] >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[c[h >> 2] >> 2] = a } i = QP(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[i >> 2] | 0) | 0; if ((i | 0) != (c[g >> 2] | 0)) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function eF(b, d, f, g, h, i) { b = b | 0; d = d | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; s = l; l = l + 48 | 0; q = s + 28 | 0; o = s + 24 | 0; r = s + 20 | 0; k = s + 16 | 0; p = s + 12 | 0; t = s + 8 | 0; m = s + 4 | 0; n = s; j = s + 32 | 0; c[o >> 2] = b; c[r >> 2] = d; c[k >> 2] = f; c[p >> 2] = g; c[t >> 2] = h; c[m >> 2] = i; c[n >> 2] = c[t >> 2] | 0 ? 2 : 0; if ($C(c[r >> 2] | 0) | 0 ? (e[(c[r >> 2] | 0) + 10 >> 1] | 0 | 0) > 0 : 0) c[n >> 2] = c[n >> 2] | 1; if (c[(c[r >> 2] | 0) + 12 >> 2] & 2 | 0) c[n >> 2] = c[n >> 2] | 4; wG(j, 0, c[k >> 2] | 0); a[j + 2 >> 0] = c[p >> 2]; a[j + 3 >> 0] = e[(c[r >> 2] | 0) + 8 >> 1] | 0; wG(j, 4, e[(c[r >> 2] | 0) + 10 >> 1] | 0); a[j + 6 >> 0] = c[n >> 2]; a[j + 7 >> 0] = 0; if (c[n >> 2] & 1 | 0) a[j + 7 >> 0] = a[c[(c[r >> 2] | 0) + 24 >> 2] >> 0] | 0; if (cF(c[o >> 2] | 0, 1397048148, 8, j) | 0) { c[q >> 2] = 1; t = c[q >> 2] | 0; l = s; return t | 0 } if (fF(c[o >> 2] | 0, c[r >> 2] | 0, c[k >> 2] | 0, c[p >> 2] | 0, c[m >> 2] | 0) | 0) { c[q >> 2] = 1; t = c[q >> 2] | 0; l = s; return t | 0 } if (gF(c[o >> 2] | 0, c[r >> 2] | 0, c[k >> 2] | 0, c[p >> 2] | 0, c[m >> 2] | 0) | 0) { c[q >> 2] = 1; t = c[q >> 2] | 0; l = s; return t | 0 } if (hF(c[o >> 2] | 0, c[r >> 2] | 0, c[k >> 2] | 0, c[p >> 2] | 0, c[m >> 2] | 0) | 0) { c[q >> 2] = 1; t = c[q >> 2] | 0; l = s; return t | 0 } if (iF(c[o >> 2] | 0, c[r >> 2] | 0) | 0) { c[q >> 2] = 1; t = c[q >> 2] | 0; l = s; return t | 0 } if (jF(c[o >> 2] | 0, c[r >> 2] | 0) | 0) { c[q >> 2] = 1; t = c[q >> 2] | 0; l = s; return t | 0 } if (((c[n >> 2] & 1 | 0) == 0 ? (e[(c[r >> 2] | 0) + 10 >> 1] | 0 | 0) > 0 : 0) ? cF(c[o >> 2] | 0, 1145132097, e[(c[r >> 2] | 0) + 10 >> 1] | 0, c[(c[r >> 2] | 0) + 24 >> 2] | 0) | 0 : 0) { c[q >> 2] = 1; t = c[q >> 2] | 0; l = s; return t | 0 } c[q >> 2] = 0; t = c[q >> 2] | 0; l = s; return t | 0 } function fF(b, f, g, h, i) { b = b | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 48 | 0; r = t + 28 | 0; o = t + 24 | 0; s = t + 20 | 0; j = t + 16 | 0; k = t + 12 | 0; n = t + 8 | 0; p = t + 4 | 0; q = t; m = t + 32 | 0; c[o >> 2] = b; c[s >> 2] = f; c[j >> 2] = g; c[k >> 2] = h; c[n >> 2] = i; if (((e[(c[s >> 2] | 0) + 16 >> 1] | 0) & 4095 | 0) != 1) { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } c[p >> 2] = hD(c[s >> 2] | 0) | 0; if ((e[(c[s >> 2] | 0) + 4 >> 1] | 0 | 0) != (c[j >> 2] | 0)) g = 1; else g = (e[(c[s >> 2] | 0) + 6 >> 1] | 0 | 0) != (c[k >> 2] | 0); c[q >> 2] = g & 1; if ((c[p >> 2] | 0) >>> 0 > 8) g = 1; else g = (e[(c[s >> 2] | 0) + 10 >> 1] | 0 | 0) != (128 << c[p >> 2] | 0); c[q >> 2] = c[q >> 2] | g & 1; c[q >> 2] = c[q >> 2] | (c[(c[s >> 2] | 0) + 12 >> 2] & 13 | 0) != 0; c[q >> 2] = c[q >> 2] | (e[(c[s >> 2] | 0) + 16 >> 1] | 0 | 0) != (c[n >> 2] | 0); if (!(c[q >> 2] | 0)) { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } a[m >> 0] = e[(c[s >> 2] | 0) + 4 >> 1] | 0; a[m + 1 >> 0] = e[(c[s >> 2] | 0) + 6 >> 1] | 0; a[m + 2 >> 0] = e[(c[s >> 2] | 0) + 8 >> 1] | 0; a[m + 3 >> 0] = c[p >> 2]; a[m + 4 >> 0] = 0; q = m + 4 | 0; a[q >> 0] = d[q >> 0] | 0 | (c[(c[s >> 2] | 0) + 12 >> 2] & 1 | 0 ? 1 : 0); q = m + 4 | 0; a[q >> 0] = d[q >> 0] | 0 | (c[(c[s >> 2] | 0) + 12 >> 2] & 2 | 0 ? 2 : 0); q = m + 4 | 0; a[q >> 0] = d[q >> 0] | 0 | (c[(c[s >> 2] | 0) + 12 >> 2] & 4 | 0 ? 4 : 0); q = m + 4 | 0; a[q >> 0] = d[q >> 0] | 0 | (c[(c[s >> 2] | 0) + 12 >> 2] & 8 | 0 ? 8 : 0); s = e[(c[s >> 2] | 0) + 16 >> 1] | 0; a[m + 5 >> 0] = (s | 0) == 1 ? 0 : (s | 0) == 32769 ? 1 : 0; if (cF(c[o >> 2] | 0, 1229081926, 6, m) | 0) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } return 0 } function gF(b, f, g, h, i) { b = b | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 48 | 0; s = u + 28 | 0; r = u + 24 | 0; p = u + 20 | 0; j = u + 16 | 0; k = u + 12 | 0; m = u + 8 | 0; n = u + 4 | 0; o = u; q = u + 32 | 0; c[r >> 2] = b; c[p >> 2] = f; c[j >> 2] = g; c[k >> 2] = h; c[m >> 2] = i; if (((e[(c[p >> 2] | 0) + 16 >> 1] | 0) & 4095 | 0) != 2) { c[s >> 2] = 0; t = c[s >> 2] | 0; l = u; return t | 0 } c[n >> 2] = hD(c[p >> 2] | 0) | 0; if ((e[(c[p >> 2] | 0) + 4 >> 1] | 0 | 0) != (c[j >> 2] | 0)) g = 1; else g = (e[(c[p >> 2] | 0) + 6 >> 1] | 0 | 0) != (c[k >> 2] | 0); c[o >> 2] = g & 1; if ((c[n >> 2] | 0) >>> 0 > 8) g = 1; else g = (e[(c[p >> 2] | 0) + 10 >> 1] | 0 | 0) != (128 << c[n >> 2] | 0); c[o >> 2] = c[o >> 2] | g & 1; c[o >> 2] = c[o >> 2] | (c[(c[p >> 2] | 0) + 12 >> 2] & 13 | 0) != 0; c[o >> 2] = c[o >> 2] | (e[(c[p >> 2] | 0) + 16 >> 1] | 0 | 0) != (c[m >> 2] | 0); if (!(c[o >> 2] | 0)) { c[s >> 2] = 0; t = c[s >> 2] | 0; l = u; return t | 0 } a[q >> 0] = e[(c[p >> 2] | 0) + 4 >> 1] | 0; a[q + 1 >> 0] = e[(c[p >> 2] | 0) + 6 >> 1] | 0; a[q + 2 >> 0] = e[(c[p >> 2] | 0) + 8 >> 1] | 0; a[q + 3 >> 0] = c[n >> 2]; a[q + 4 >> 0] = 0; g = q + 4 | 0; a[g >> 0] = d[g >> 0] | 0 | (c[(c[p >> 2] | 0) + 12 >> 2] & 1 | 0 ? 1 : 0); g = q + 4 | 0; a[g >> 0] = d[g >> 0] | 0 | (c[(c[p >> 2] | 0) + 12 >> 2] & 2 | 0 ? 2 : 0); g = q + 4 | 0; a[g >> 0] = d[g >> 0] | 0 | (c[(c[p >> 2] | 0) + 12 >> 2] & 4 | 0 ? 4 : 0); g = q + 4 | 0; a[g >> 0] = d[g >> 0] | 0 | (c[(c[p >> 2] | 0) + 12 >> 2] & 8 | 0 ? 8 : 0); g = e[(c[p >> 2] | 0) + 16 >> 1] | 0; a: do if ((g | 0) < 16386) { switch (g | 0) { case 2: break; default: { t = 12; break a } } g = 0 } else { if ((g | 0) >= 32770) switch (g | 0) { case 32770: { g = 1; break a } default: { t = 12; break a } } switch (g | 0) { case 16386: break; default: { t = 12; break a } } g = 2 } while (0); if ((t | 0) == 12) g = 0; a[q + 5 >> 0] = g; if (cF(c[r >> 2] | 0, 1229081933, 6, q) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } else { c[s >> 2] = 0; t = c[s >> 2] | 0; l = u; return t | 0 } return 0 } function hF(b, f, g, h, i) { b = b | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 64 | 0; r = t + 28 | 0; o = t + 24 | 0; s = t + 20 | 0; j = t + 16 | 0; k = t + 12 | 0; n = t + 8 | 0; p = t + 4 | 0; q = t; m = t + 32 | 0; c[o >> 2] = b; c[s >> 2] = f; c[j >> 2] = g; c[k >> 2] = h; c[n >> 2] = i; if (((e[(c[s >> 2] | 0) + 16 >> 1] | 0) & 4095 | 0) != 3) { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } if ((e[(c[s >> 2] | 0) + 4 >> 1] | 0 | 0) != (c[j >> 2] | 0)) g = 1; else g = (e[(c[s >> 2] | 0) + 6 >> 1] | 0 | 0) != (c[k >> 2] | 0); c[q >> 2] = g & 1; c[q >> 2] = c[q >> 2] | (c[(c[s >> 2] | 0) + 12 >> 2] & 9 | 0) != 0; c[q >> 2] = c[q >> 2] | (e[(c[s >> 2] | 0) + 16 >> 1] | 0 | 0) != (c[n >> 2] | 0); a: do if ((lD(c[s >> 2] | 0, m + 6 | 0, 12) | 0) >>> 0 > 0) { c[p >> 2] = 0; while (1) { if ((c[p >> 2] | 0) >>> 0 >= 12) break a; c[q >> 2] = c[q >> 2] | (d[m + (6 + (c[p >> 2] | 0)) >> 0] | 0 | 0) != 0; c[p >> 2] = (c[p >> 2] | 0) + 1 } } while (0); if (!(c[q >> 2] | 0)) { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } wG(m, 0, e[(c[s >> 2] | 0) + 4 >> 1] | 0); a[m + 2 >> 0] = e[(c[s >> 2] | 0) + 6 >> 1] | 0; a[m + 3 >> 0] = e[(c[s >> 2] | 0) + 8 >> 1] | 0; a[m + 4 >> 0] = jD(c[s >> 2] | 0) | 0; a[m + 5 >> 0] = 0; q = m + 5 | 0; a[q >> 0] = d[q >> 0] | 0 | (c[(c[s >> 2] | 0) + 12 >> 2] & 1 | 0 ? 1 : 0); q = m + 5 | 0; a[q >> 0] = d[q >> 0] | 0 | (c[(c[s >> 2] | 0) + 12 >> 2] & 2 | 0 ? 2 : 0); q = m + 5 | 0; a[q >> 0] = d[q >> 0] | 0 | (c[(c[s >> 2] | 0) + 12 >> 2] & 8 | 0 ? 4 : 0); if (cF(c[o >> 2] | 0, 1296122695, 18, m) | 0) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } return 0 } function iF(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; g = h + 12 | 0; e = h + 8 | 0; i = h + 4 | 0; f = h; d = h + 16 | 0; c[e >> 2] = a; c[i >> 2] = b; c[f >> 2] = dD(c[i >> 2] | 0) | 0; if ((c[f >> 2] | 0) == -1) { c[g >> 2] = 0; i = c[g >> 2] | 0; l = h; return i | 0 } xG(d, 0, c[f >> 2] | 0); if (cF(c[e >> 2] | 0, 1330005587, 4, d) | 0) { c[g >> 2] = 1; i = c[g >> 2] | 0; l = h; return i | 0 } else { c[g >> 2] = 0; i = c[g >> 2] | 0; l = h; return i | 0 } return 0 } function jF(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; g = i + 12 | 0; f = i + 8 | 0; j = i + 4 | 0; h = i; d = i + 16 | 0; c[f >> 2] = a; c[j >> 2] = b; c[h >> 2] = fD(c[j >> 2] | 0) | 0; if (c[h >> 2] | 0 ? (c[h >> 2] | 0) != ((e[(c[j >> 2] | 0) + 10 >> 1] | 0) << 3 | 0) : 0) { xG(d, 0, c[h >> 2] | 0); if (cF(c[f >> 2] | 0, 1414090053, 4, d) | 0) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = i; return j | 0 } else { c[g >> 2] = 0; j = c[g >> 2] | 0; l = i; return j | 0 } } c[g >> 2] = 0; j = c[g >> 2] | 0; l = i; return j | 0 } function kF(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; h = m + 28 | 0; g = m + 24 | 0; b = m + 20 | 0; f = m + 16 | 0; i = m + 12 | 0; d = m + 8 | 0; k = m + 4 | 0; j = m; c[g >> 2] = a; c[b >> 2] = 0; a: while (1) { if ((c[b >> 2] | 0) >>> 0 >= (e[c[g >> 2] >> 1] | 0) >>> 0) { b = 9; break } c[d >> 2] = c[(c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2]; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[(c[d >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; c[i >> 2] = 0; if ((c[i >> 2] | 0) >>> 0 < (e[(c[k >> 2] | 0) + 2 >> 1] | 0) >>> 0) { b = 6; break a } c[f >> 2] = (c[f >> 2] | 0) + 1 } c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((b | 0) == 6) { c[j >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; c[h >> 2] = e[(c[j >> 2] | 0) + 16 >> 1]; k = c[h >> 2] | 0; l = m; return k | 0 } else if ((b | 0) == 9) { c[h >> 2] = 0; k = c[h >> 2] | 0; l = m; return k | 0 } return 0 } function lF(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; b = e + 8 | 0; c[f >> 2] = a; do if (!(CG(c[f >> 2] | 0, 0, b, 4) | 0)) if ((vG(b, 0) | 0) != 1347635488) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function mF(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; e = i + 8 | 0; g = i + 4 | 0; f = i; c[e >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; c[f >> 2] = ~c[f >> 2]; while (1) { if (!(c[c[e >> 2] >> 2] | 0)) { a = 6; break } d = c[e >> 2] | 0; if ((c[c[e >> 2] >> 2] & c[f >> 2] | 0) == (c[g >> 2] & c[f >> 2] | 0)) { a = 4; break } c[e >> 2] = d + 24 } if ((a | 0) == 4) { c[h >> 2] = d; h = c[h >> 2] | 0; l = i; return h | 0 } else if ((a | 0) == 6) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function nF(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; g = h + 8 | 0; e = h + 4 | 0; d = h; c[g >> 2] = a; c[e >> 2] = b; a = mF(25896, c[g >> 2] | 0, c[e >> 2] | 0) | 0; c[d >> 2] = a; if (a | 0) { c[f >> 2] = c[d >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } g = mF(26304, c[g >> 2] | 0, c[e >> 2] | 0) | 0; c[d >> 2] = g; if (g | 0) { c[f >> 2] = c[d >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } else { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function oF(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; e = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[e >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; d = xD() | 0; c[h >> 2] = d; if (!d) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } g = (pF(c[e >> 2] | 0, c[h >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0) != 0; a = c[h >> 2] | 0; if (g) { zD(a); c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[i >> 2] = a; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function pF(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 64 | 0; t = u + 52 | 0; i = u + 48 | 0; o = u + 44 | 0; j = u + 40 | 0; m = u + 36 | 0; g = u + 32 | 0; k = u + 28 | 0; p = u + 24 | 0; h = u + 20 | 0; n = u + 16 | 0; r = u + 12 | 0; f = u + 8 | 0; s = u + 4 | 0; q = u; c[i >> 2] = a; c[o >> 2] = b; c[j >> 2] = d; c[m >> 2] = e; if (qF(c[i >> 2] | 0, f) | 0) { c[t >> 2] = 1; t = c[t >> 2] | 0; l = u; return t | 0 } f = mF(c[j >> 2] | 0, c[f >> 2] | 0, 0) | 0; c[j >> 2] = f; if (!f) { c[t >> 2] = 1; t = c[t >> 2] | 0; l = u; return t | 0 } c[g >> 2] = 0; a: while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[j >> 2] | 0) + 4 >> 2] | 0) >>> 0) { a = 27; break } c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[(c[j >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; a = c[g >> 2] | 0; if (c[m >> 2] | 0) { f = S(a, c[(c[j >> 2] | 0) + 8 >> 2] | 0) | 0; c[r >> 2] = f + (c[k >> 2] | 0); c[h >> 2] = ((c[r >> 2] | 0) >>> 0) % ((c[(c[j >> 2] | 0) + 4 >> 2] | 0) >>> 0) | 0; c[n >> 2] = ((c[r >> 2] | 0) >>> 0) / ((c[(c[j >> 2] | 0) + 4 >> 2] | 0) >>> 0) | 0; if ((c[m >> 2] | 0) < 0 ? c[n >> 2] & 1 | 0 : 0) c[h >> 2] = (c[(c[j >> 2] | 0) + 4 >> 2] | 0) - (c[h >> 2] | 0) - 1 } else { c[h >> 2] = a; c[n >> 2] = c[k >> 2] } c[s >> 2] = FD(c[o >> 2] | 0, c[h >> 2] | 0, c[n >> 2] | 0, 1) | 0; if (!(c[s >> 2] | 0)) { a = 15; break a } c[p >> 2] = 0; while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[(c[j >> 2] | 0) + 12 >> 2] | 0) >>> 0) break; c[q >> 2] = UC(c[h >> 2] | 0, c[n >> 2] | 0, (c[p >> 2] | 0) + 1 | 0, c[(c[j >> 2] | 0) + 16 >> 2] | 0) | 0; if (!(c[q >> 2] | 0)) { a = 19; break a } bD(c[q >> 2] | 0, c[(c[j >> 2] | 0) + 20 >> 2] | 0); f = (pD(c[s >> 2] | 0, c[q >> 2] | 0) | 0) != 0; d = c[q >> 2] | 0; if (f) { a = 21; break a } f = AQ(c[d + 24 >> 2] | 0, 1, c[(c[j >> 2] | 0) + 16 >> 2] | 0, c[i >> 2] | 0) | 0; if ((f | 0) != (c[(c[j >> 2] | 0) + 16 >> 2] | 0)) { a = 23; break a } c[p >> 2] = (c[p >> 2] | 0) + 1 } c[k >> 2] = (c[k >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((a | 0) == 15) { c[t >> 2] = 1; t = c[t >> 2] | 0; l = u; return t | 0 } else if ((a | 0) == 19) { c[t >> 2] = 1; t = c[t >> 2] | 0; l = u; return t | 0 } else if ((a | 0) == 21) { VC(d); c[t >> 2] = 1; t = c[t >> 2] | 0; l = u; return t | 0 } else if ((a | 0) == 23) { c[t >> 2] = 1; t = c[t >> 2] | 0; l = u; return t | 0 } else if ((a | 0) == 27) { c[t >> 2] = 0; t = c[t >> 2] | 0; l = u; return t | 0 } return 0 } function qF(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; d = h + 8 | 0; g = h + 4 | 0; e = h; c[d >> 2] = a; c[g >> 2] = b; c[e >> 2] = zQ(c[d >> 2] | 0) | 0; if (jQ(c[d >> 2] | 0, 0, 2) | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } b = zQ(c[d >> 2] | 0) | 0; c[c[g >> 2] >> 2] = b; if (jQ(c[d >> 2] | 0, c[e >> 2] | 0, 0) | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } else { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function rF(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = oF(c[d >> 2] | 0, 26304, 0) | 0; l = b; return a | 0 } function sF(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = oF(c[d >> 2] | 0, 25896, 1) | 0; l = b; return a | 0 } function tF(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = oF(c[d >> 2] | 0, 25896, -1) | 0; l = b; return a | 0 } function uF(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = oF(c[d >> 2] | 0, 25896, 0) | 0; l = b; return a | 0 } function vF(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; b = wF(c[f >> 2] | 0, c[e >> 2] | 0) | 0; l = d; return b | 0 } function wF(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; n = o + 32 | 0; m = o + 28 | 0; h = o + 24 | 0; d = o + 20 | 0; g = o + 16 | 0; i = o + 12 | 0; f = o + 8 | 0; k = o + 4 | 0; j = o; c[m >> 2] = a; c[h >> 2] = b; c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[h >> 2] >> 1] | 0) >>> 0) { d = 12; break } c[f >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; c[i >> 2] = 0; c[j >> 2] = xF(c[k >> 2] | 0, i) | 0; while (1) { if (!(c[j >> 2] | 0)) break; b = QP(c[(c[j >> 2] | 0) + 24 >> 2] | 0, 1, e[(c[j >> 2] | 0) + 10 >> 1] | 0, c[m >> 2] | 0) | 0; if ((b | 0) != (e[(c[j >> 2] | 0) + 10 >> 1] | 0 | 0)) { d = 8; break a } c[j >> 2] = xF(c[k >> 2] | 0, i) | 0 } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((d | 0) == 8) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } else if ((d | 0) == 12) { XP(c[m >> 2] | 0) | 0; c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } return 0 } function xF(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; j = k + 16 | 0; f = k + 12 | 0; d = k + 8 | 0; g = k + 4 | 0; i = k; c[j >> 2] = a; c[f >> 2] = b; c[i >> 2] = 0; c[g >> 2] = 65535; c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[(c[j >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; if ((e[(c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0) >>> 0 >= (c[c[f >> 2] >> 2] | 0) >>> 0 ? (e[(c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2] | 0) + 8 >> 1] | 0) >>> 0 < (c[g >> 2] | 0) >>> 0 : 0) { c[i >> 2] = c[(c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[g >> 2] = e[(c[i >> 2] | 0) + 8 >> 1] } c[d >> 2] = (c[d >> 2] | 0) + 1 } if (!(c[i >> 2] | 0)) { c[h >> 2] = 0; j = c[h >> 2] | 0; l = k; return j | 0 } else { c[c[f >> 2] >> 2] = (e[(c[i >> 2] | 0) + 8 >> 1] | 0) + 1; c[h >> 2] = c[i >> 2]; j = c[h >> 2] | 0; l = k; return j | 0 } return 0 } function yF(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; b = zF(c[f >> 2] | 0, c[e >> 2] | 0, 0) | 0; l = d; return b | 0 } function zF(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 48 | 0; q = r + 40 | 0; p = r + 36 | 0; k = r + 32 | 0; j = r + 28 | 0; f = r + 24 | 0; g = r + 20 | 0; h = r + 16 | 0; m = r + 12 | 0; i = r + 8 | 0; o = r + 4 | 0; n = r; c[p >> 2] = a; c[k >> 2] = b; c[j >> 2] = d; c[i >> 2] = AF(c[k >> 2] | 0) | 0; c[h >> 2] = 0; a: while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { f = 17; break } c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (e[c[k >> 2] >> 1] | 0) >>> 0) break; if (c[j >> 2] | 0 ? c[h >> 2] & 1 | 0 : 0) c[g >> 2] = (e[c[k >> 2] >> 1] | 0) - (c[f >> 2] | 0) - 1; else c[g >> 2] = c[f >> 2]; c[o >> 2] = FD(c[k >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0, 0) | 0; b: do if (c[o >> 2] | 0) { c[m >> 2] = 0; c[n >> 2] = xF(c[o >> 2] | 0, m) | 0; while (1) { if (!(c[n >> 2] | 0)) break b; b = QP(c[(c[n >> 2] | 0) + 24 >> 2] | 0, 1, e[(c[n >> 2] | 0) + 10 >> 1] | 0, c[p >> 2] | 0) | 0; if ((b | 0) != (e[(c[n >> 2] | 0) + 10 >> 1] | 0 | 0)) { f = 13; break a } c[n >> 2] = xF(c[o >> 2] | 0, m) | 0 } } while (0); c[f >> 2] = (c[f >> 2] | 0) + 1 } c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((f | 0) == 13) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 17) { XP(c[p >> 2] | 0) | 0; c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } return 0 } function AF(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; b = g + 4 | 0; d = g; c[f >> 2] = a; c[d >> 2] = 0; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= (e[c[f >> 2] >> 1] | 0) >>> 0) break; if (c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2] | 0 ? (e[(c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2] | 0) + 2 >> 1] | 0) >>> 0 > (c[d >> 2] | 0) >>> 0 : 0) c[d >> 2] = e[(c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2] | 0) + 2 >> 1]; c[b >> 2] = (c[b >> 2] | 0) + 1 } l = g; return c[d >> 2] | 0 } function BF(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; b = zF(c[f >> 2] | 0, c[e >> 2] | 0, 1) | 0; l = d; return b | 0 } function CF(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; b = f + 4 | 0; e = f; c[b >> 2] = a; do if (!(jQ(c[b >> 2] | 0, 0, 2) | 0)) { c[e >> 2] = zQ(c[b >> 2] | 0) | 0; if (!(nF(c[e >> 2] | 0, 0) | 0)) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } } else c[d >> 2] = 0; while (0); l = f; return c[d >> 2] | 0 } function DF(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; a = xD() | 0; c[d >> 2] = a; do if (a) { b = (EF(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function EF(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; k = m + 24 | 0; f = m + 20 | 0; h = m + 16 | 0; g = m + 12 | 0; i = m + 8 | 0; j = m + 4 | 0; e = m + 32 | 0; c[f >> 2] = a; c[h >> 2] = b; if (CG(c[f >> 2] | 0, 0, e, 16) | 0) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } if ((vG(e, 0) | 0) != 1381193984) { kQ(c[7422] | 0, 47384, m) | 0; c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } c[i >> 2] = d[e + 10 >> 0]; c[j >> 2] = 16; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { e = 10; break } if (FF(c[f >> 2] | 0, c[h >> 2] | 0, j) | 0) { e = 8; break } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((e | 0) == 8) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 10) { c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } return 0 } function FF(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 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 = l; l = l + 96 | 0; w = y + 64 | 0; t = y + 60 | 0; m = y + 56 | 0; v = y + 52 | 0; k = y + 48 | 0; q = y + 44 | 0; u = y + 40 | 0; x = y + 36 | 0; h = y + 32 | 0; j = y + 28 | 0; r = y + 24 | 0; i = y + 20 | 0; n = y + 16 | 0; s = y + 12 | 0; g = y + 72 | 0; p = y + 8 | 0; o = y + 4 | 0; c[t >> 2] = b; c[m >> 2] = e; c[v >> 2] = f; if (CG(c[t >> 2] | 0, c[c[v >> 2] >> 2] | 0, g, 16) | 0) { kQ(c[7422] | 0, 47400, y) | 0; c[w >> 2] = 1; x = c[w >> 2] | 0; l = y; return x | 0 } c[x >> 2] = zG(g, 0) | 0; c[h >> 2] = zG(g, 4) | 0; c[n >> 2] = yG(g, 8) | 0; c[s >> 2] = yG(g, 10) | 0; c[q >> 2] = d[g + 14 >> 0] & 127; c[u >> 2] = d[g + 14 >> 0] >> 7 & 1; c[j >> 2] = (c[c[v >> 2] >> 2] | 0) + 16; c[i >> 2] = (c[j >> 2] | 0) + (c[n >> 2] << 4); c[r >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); f = FD(c[m >> 2] | 0, c[q >> 2] | 0, c[u >> 2] | 0, 1) | 0; c[p >> 2] = f; if (!f) { c[w >> 2] = 1; x = c[w >> 2] | 0; l = y; return x | 0 } f = (c[s >> 2] & 1 | 0) != 0; c[k >> 2] = 0; a: do if (!f) { while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) break a; f = UC(c[q >> 2] | 0, c[u >> 2] | 0, (c[k >> 2] | 0) + 1 | 0, 512) | 0; c[o >> 2] = f; if (!f) { g = 12; break } pD(c[p >> 2] | 0, c[o >> 2] | 0) | 0; if (CG(c[t >> 2] | 0, c[j >> 2] | 0, c[(c[o >> 2] | 0) + 24 >> 2] | 0, 512) | 0) { g = 14; break } c[j >> 2] = (c[j >> 2] | 0) + 512; c[k >> 2] = (c[k >> 2] | 0) + 1 } if ((g | 0) == 12) { c[w >> 2] = 1; x = c[w >> 2] | 0; l = y; return x | 0 } else if ((g | 0) == 14) { c[w >> 2] = 1; x = c[w >> 2] | 0; l = y; return x | 0 } } else { while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) break a; if (GF(c[t >> 2] | 0, c[p >> 2] | 0, c[j >> 2] | 0, c[r >> 2] | 0, i) | 0) break; c[j >> 2] = (c[j >> 2] | 0) + 16; c[k >> 2] = (c[k >> 2] | 0) + 1 } c[w >> 2] = 1; x = c[w >> 2] | 0; l = y; return x | 0 } while (0); if (a[59584] | 0 ? HF(c[t >> 2] | 0, c[r >> 2] | 0, c[s >> 2] | 0, c[q >> 2] | 0, c[u >> 2] | 0) | 0 : 0) { c[w >> 2] = 1; x = c[w >> 2] | 0; l = y; return x | 0 } v = c[v >> 2] | 0; c[v >> 2] = (c[v >> 2] | 0) + (c[x >> 2] | 0); c[w >> 2] = 0; x = c[w >> 2] | 0; l = y; return x | 0 } function GF(a, b, e, f, g) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, 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; C = l; l = l + 128 | 0; B = C + 24 | 0; A = C + 8 | 0; s = C + 96 | 0; o = C + 92 | 0; z = C + 88 | 0; D = C + 84 | 0; n = C + 80 | 0; p = C + 76 | 0; i = C + 72 | 0; q = C + 68 | 0; t = C + 64 | 0; r = C + 60 | 0; v = C + 56 | 0; w = C + 52 | 0; x = C + 48 | 0; y = C + 44 | 0; j = C + 40 | 0; k = C + 36 | 0; m = C + 32 | 0; h = C + 104 | 0; u = C + 28 | 0; c[o >> 2] = a; c[z >> 2] = b; c[D >> 2] = e; c[n >> 2] = f; c[p >> 2] = g; if (CG(c[o >> 2] | 0, c[D >> 2] | 0, h, 16) | 0) { kQ(c[7422] | 0, 47450, C) | 0; c[s >> 2] = 1; D = c[s >> 2] | 0; l = C; return D | 0 } c[m >> 2] = zG(h, 0) | 0; c[w >> 2] = yG(h, 4) | 0; c[y >> 2] = yG(h, 6) | 0; c[i >> 2] = d[h + 8 >> 0]; c[q >> 2] = d[h + 9 >> 0]; c[t >> 2] = d[h + 10 >> 0]; c[r >> 2] = d[h + 11 >> 0]; c[j >> 2] = uG(h, 12) | 0; c[x >> 2] = d[h + 14 >> 0]; c[k >> 2] = IF(65535, 47483, 4) | 0; c[k >> 2] = IF(c[k >> 2] | 0, h + 8 | 0, 4) | 0; c[v >> 2] = 128 << (c[r >> 2] & 3); D = UC(c[i >> 2] | 0, c[q >> 2] | 0, c[t >> 2] | 0, c[v >> 2] | 0) | 0; c[u >> 2] = D; if (!D) { c[s >> 2] = 1; D = c[s >> 2] | 0; l = C; return D | 0 } pD(c[z >> 2] | 0, c[u >> 2] | 0) | 0; if ((c[w >> 2] | 0) >>> 0 > 176) cD(c[u >> 2] | 0, (c[w >> 2] | 0) - 176 | 0); gD(c[u >> 2] | 0, c[r >> 2] & 255); eD(c[u >> 2] | 0, (((c[y >> 2] | 0) + 2 | 0) >>> 0) / 4 | 0); if (c[x >> 2] & 8 | 0) aD(c[u >> 2] | 0, 2, 1); if ((c[j >> 2] | 0) != (c[k >> 2] | 0)) aD(c[u >> 2] | 0, 1, 1); if (!(c[x >> 2] & 16 | 0)) { if (CG(c[o >> 2] | 0, (c[n >> 2] | 0) + (c[m >> 2] | 0) | 0, c[(c[u >> 2] | 0) + 24 >> 2] | 0, c[v >> 2] | 0) | 0) { D = c[7422] | 0; b = c[q >> 2] | 0; z = c[t >> 2] | 0; c[A >> 2] = c[i >> 2]; c[A + 4 >> 2] = b; c[A + 8 >> 2] = z; kQ(D, 47488, A) | 0; kQ(c[7422] | 0, 47498, B) | 0; c[s >> 2] = 1; D = c[s >> 2] | 0; l = C; return D | 0 } } else { ZC(c[u >> 2] | 0, 0, 0) | 0; aD(c[u >> 2] | 0, 8, 1); eD(c[u >> 2] | 0, 0) } do if (c[x >> 2] & 128 | 0) { if (!(JF(c[o >> 2] | 0, c[u >> 2] | 0, c[c[p >> 2] >> 2] | 0) | 0)) { D = c[p >> 2] | 0; c[D >> 2] = (c[D >> 2] | 0) + (c[v >> 2] | 0); break } c[s >> 2] = 1; D = c[s >> 2] | 0; l = C; return D | 0 } while (0); c[s >> 2] = 0; D = c[s >> 2] | 0; l = C; return D | 0 } function HF(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 304 | 0; r = s; q = s + 36 | 0; m = s + 32 | 0; p = s + 28 | 0; k = s + 24 | 0; h = s + 20 | 0; n = s + 16 | 0; j = s + 12 | 0; i = s + 8 | 0; g = s + 296 | 0; o = s + 40 | 0; c[m >> 2] = a; c[p >> 2] = b; c[k >> 2] = d; c[h >> 2] = e; c[n >> 2] = f; if (!(c[k >> 2] & 64)) { c[q >> 2] = 0; r = c[q >> 2] | 0; l = s; return r | 0 } if (c[k >> 2] & 128 | 0) c[p >> 2] = (c[p >> 2] | 0) + 2; if (CG(c[m >> 2] | 0, c[p >> 2] | 0, g, 2) | 0) { c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } c[i >> 2] = yG(g, 0) | 0; p = c[n >> 2] | 0; c[r >> 2] = c[h >> 2]; c[r + 4 >> 2] = p; BQ(o, 47432, r) | 0; r = dQ(o, 51391) | 0; c[j >> 2] = r; if (!r) { c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } while (1) { if ((c[i >> 2] | 0) >>> 0 <= 0) break; c[h >> 2] = vQ(c[m >> 2] | 0) | 0; uQ(c[h >> 2] | 0, c[j >> 2] | 0) | 0; c[i >> 2] = (c[i >> 2] | 0) - 1 } UP(c[j >> 2] | 0) | 0; c[q >> 2] = 0; r = c[q >> 2] | 0; l = s; return r | 0 } function IF(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; k = j + 12 | 0; f = j + 8 | 0; h = j + 4 | 0; i = j; c[g >> 2] = a; c[k >> 2] = b; c[f >> 2] = e; c[i >> 2] = c[k >> 2]; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; c[g >> 2] = c[g >> 2] ^ (d[c[i >> 2] >> 0] | 0) << 8; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 8) break; b = c[g >> 2] << 1; if (c[g >> 2] & 32768 | 0) c[g >> 2] = b ^ 4129; else c[g >> 2] = b; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) - 1 } l = j; return c[g >> 2] & 65535 | 0 } function JF(b, f, g) { b = b | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; m = o + 20 | 0; h = o + 16 | 0; n = o + 12 | 0; i = o + 8 | 0; k = o + 4 | 0; j = o; c[h >> 2] = b; c[n >> 2] = f; c[i >> 2] = g; f = WC(c[n >> 2] | 0, 0) | 0; c[j >> 2] = f; if (!f) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } if (CG(c[h >> 2] | 0, c[i >> 2] | 0, c[(c[j >> 2] | 0) + 24 >> 2] | 0, e[(c[j >> 2] | 0) + 10 >> 1] | 0) | 0) { c[m >> 2] = 1; n = c[m >> 2] | 0; l = o; return n | 0 } c[k >> 2] = 0; while (1) { b = c[n >> 2] | 0; if ((c[k >> 2] | 0) >>> 0 >= (e[(c[n >> 2] | 0) + 10 >> 1] | 0) >>> 0) break; a[(c[(c[j >> 2] | 0) + 24 >> 2] | 0) + (c[k >> 2] | 0) >> 0] = (d[(c[b + 24 >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0) ^ ~(d[(c[(c[j >> 2] | 0) + 24 >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0); c[k >> 2] = (c[k >> 2] | 0) + 1 } XC(b, c[j >> 2] | 0); c[m >> 2] = 0; n = c[m >> 2] | 0; l = o; return n | 0 } function KF(a, b) { a = a | 0; b = b | 0; var d = 0; d = l; l = l + 16 | 0; c[d + 4 >> 2] = a; c[d >> 2] = b; l = d; return 1 } function LF(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 32 | 0; d = e + 4 | 0; f = e; b = e + 8 | 0; c[f >> 2] = a; do if (!(CG(c[f >> 2] | 0, 0, b, 8) | 0)) if ((vG(b, 0) | 0) != 1381193984) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function MF(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = (NF(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function NF(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 65584 | 0; h = i + 65572 | 0; j = i + 65568 | 0; f = i + 65564 | 0; d = i + 65560 | 0; e = i + 65556 | 0; g = i; c[j >> 2] = a; c[f >> 2] = b; OF(g, c[j >> 2] | 0); c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= 80) { a = 12; break } c[e >> 2] = 0; while (1) { a = c[d >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 2) break; if (PF(g, a, c[e >> 2] | 0) | 0) { a = 6; break a } if ((c[g + 65544 >> 2] | 0) >>> 0 < (c[g + 65540 >> 2] | 0) >>> 0 ? QF(g, c[f >> 2] | 0, c[d >> 2] | 0, c[e >> 2] | 0) | 0 : 0) { a = 9; break a } c[e >> 2] = (c[e >> 2] | 0) + 1 } c[d >> 2] = a + 1 } if ((a | 0) == 6) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else if ((a | 0) == 9) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else if ((a | 0) == 12) { c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } return 0 } function OF(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; g = f + 4 | 0; h = f; c[g >> 2] = d; c[h >> 2] = e; c[c[g >> 2] >> 2] = c[h >> 2]; c[(c[g >> 2] | 0) + 65544 >> 2] = 0; c[(c[g >> 2] | 0) + 65540 >> 2] = 0; c[(c[g >> 2] | 0) + 65548 >> 2] = 0; b[(c[g >> 2] | 0) + 65552 >> 1] = 0; a[(c[g >> 2] | 0) + 65554 >> 0] = 0; a[(c[g >> 2] | 0) + 65555 >> 0] = 0; l = f; return } function PF(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, m = 0, n = 0, o = 0; m = l; l = l + 32 | 0; k = m + 24 | 0; i = m + 20 | 0; o = m + 16 | 0; n = m + 12 | 0; h = m + 8 | 0; g = m + 4 | 0; j = m; f = m + 28 | 0; c[i >> 2] = b; c[o >> 2] = d; c[n >> 2] = e; c[(c[i >> 2] | 0) + 65544 >> 2] = 0; c[(c[i >> 2] | 0) + 65540 >> 2] = 0; a[(c[i >> 2] | 0) + 65554 >> 0] = 0; c[h >> 2] = (c[o >> 2] << 1) + (c[n >> 2] | 0); if (jQ(c[c[i >> 2] >> 2] | 0, 773 + (c[h >> 2] << 1) | 0, 0) | 0) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = m; return o | 0 } if ((AQ(f, 1, 2, c[c[i >> 2] >> 2] | 0) | 0) != 2) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = m; return o | 0 } c[j >> 2] = uG(f, 0) | 0; c[j >> 2] = c[j >> 2] << 8; if (!(c[j >> 2] | 0)) { c[k >> 2] = 0; o = c[k >> 2] | 0; l = m; return o | 0 } if (jQ(c[c[i >> 2] >> 2] | 0, 1285 + (c[h >> 2] << 1) | 0, 0) | 0) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = m; return o | 0 } if ((AQ(f, 1, 2, c[c[i >> 2] >> 2] | 0) | 0) != 2) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = m; return o | 0 } c[g >> 2] = yG(f, 0) | 0; if (jQ(c[c[i >> 2] >> 2] | 0, c[j >> 2] | 0, 0) | 0) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = m; return o | 0 } o = AQ((c[i >> 2] | 0) + 4 | 0, 1, c[g >> 2] | 0, c[c[i >> 2] >> 2] | 0) | 0; if ((o | 0) != (c[g >> 2] | 0)) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = m; return o | 0 } else { c[(c[i >> 2] | 0) + 65544 >> 2] = 0; c[(c[i >> 2] | 0) + 65540 >> 2] = c[g >> 2] << 3; c[k >> 2] = 0; o = c[k >> 2] | 0; l = m; return o | 0 } return 0 } function QF(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 32 | 0; o = p + 24 | 0; n = p + 20 | 0; k = p + 16 | 0; g = p + 12 | 0; i = p + 8 | 0; j = p + 4 | 0; h = p; m = p + 28 | 0; c[n >> 2] = a; c[k >> 2] = b; c[g >> 2] = e; c[i >> 2] = f; c[j >> 2] = 0; a: while (1) { if ((c[j >> 2] | 0) >>> 0 >= 2) { e = 13; break } c[(c[n >> 2] | 0) + 65548 >> 2] = 0; c[(c[n >> 2] | 0) + 65544 >> 2] = 0; while (1) { if ((c[(c[n >> 2] | 0) + 65548 >> 2] | 0) >>> 0 >= 1) break; if (RF(c[n >> 2] | 0, m, h) | 0) continue; if ((c[j >> 2] | 0) == 0 & (c[h >> 2] | 0) != 0) continue; if (!((c[j >> 2] | 0) != 1 | (c[h >> 2] | 0) != 0)) continue; if ((c[(c[n >> 2] | 0) + 65548 >> 2] | 0) >>> 0 >= 1) break; if (SF(c[n >> 2] | 0, c[k >> 2] | 0, d[m >> 0] | 0, c[h >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0) | 0) { e = 10; break a } } if (HD(c[k >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0, 0, 1) | 0) { e = 13; break } c[j >> 2] = (c[j >> 2] | 0) + 1 } if ((e | 0) == 10) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((e | 0) == 13) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function RF(a, f, g) { a = a | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; m = n + 16 | 0; k = n + 12 | 0; j = n + 8 | 0; h = n + 4 | 0; i = n; c[k >> 2] = a; c[j >> 2] = f; c[h >> 2] = g; c[c[h >> 2] >> 2] = 0; if (ZF(c[k >> 2] | 0, c[j >> 2] | 0) | 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } a = (WF(65535, c[j >> 2] | 0, 1) | 0) & 65535; b[(c[k >> 2] | 0) + 65552 >> 1] = a; if ((d[c[j >> 2] >> 0] | 0 | 0) != 161) { c[c[h >> 2] >> 2] = 1; c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } c[i >> 2] = 0; while (1) { a = (c[i >> 2] | 0) >>> 0 < 2; h = (XF(c[k >> 2] | 0, c[j >> 2] | 0) | 0) != 0; if (!a) { g = 12; break } if (h) { g = 8; break } a = (WF(e[(c[k >> 2] | 0) + 65552 >> 1] | 0, c[j >> 2] | 0, 1) | 0) & 65535; b[(c[k >> 2] | 0) + 65552 >> 1] = a; if ((d[c[j >> 2] >> 0] | 0 | 0) != 161) { g = 10; break } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((g | 0) == 8) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((g | 0) == 10) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((g | 0) == 12) if (h) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } else { j = (WF(e[(c[k >> 2] | 0) + 65552 >> 1] | 0, c[j >> 2] | 0, 1) | 0) & 65535; b[(c[k >> 2] | 0) + 65552 >> 1] = j; c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } return 0 } function SF(a, b, e, f, g, h) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; v = l; l = l + 80 | 0; j = v; t = v + 64 | 0; s = v + 60 | 0; p = v + 56 | 0; i = v + 52 | 0; m = v + 48 | 0; k = v + 44 | 0; n = v + 40 | 0; q = v + 36 | 0; o = v + 32 | 0; r = v + 68 | 0; u = v + 24 | 0; c[s >> 2] = a; c[p >> 2] = b; c[i >> 2] = e; c[m >> 2] = f; c[k >> 2] = g; c[n >> 2] = h; c[q >> 2] = c[(c[s >> 2] | 0) + 65548 >> 2]; c[o >> 2] = c[(c[s >> 2] | 0) + 65544 >> 2]; a: do switch (c[i >> 2] | 0) { case 254: { c[u >> 2] = TF(c[s >> 2] | 0) | 0; if (!(c[u >> 2] | 0)) { c[t >> 2] = 1; u = c[t >> 2] | 0; l = v; return u | 0 } g = c[u >> 2] | 0; if (c[m >> 2] | 0) bD(g, 1); else bD(g, 2);ED(c[p >> 2] | 0, c[u >> 2] | 0, c[k >> 2] | 0, c[n >> 2] | 0) | 0; if (!(RF(c[s >> 2] | 0, r, v + 28 | 0) | 0)) { if ((d[r >> 0] | 0 | 0) != 248 ? (d[r >> 0] | 0 | 0) != 251 : 0) break a; if (UF(c[s >> 2] | 0, c[u >> 2] | 0, d[r >> 0] | 0) | 0) { c[t >> 2] = 1; u = c[t >> 2] | 0; l = v; return u | 0 } } break } case 251: case 248: break; default: { u = c[7422] | 0;a = c[m >> 2] | 0 ? 47529 : 47532;m = c[k >> 2] | 0;n = c[n >> 2] | 0;p = c[(c[s >> 2] | 0) + 65544 >> 2] | 0;r = c[(c[s >> 2] | 0) + 65540 >> 2] | 0;c[j >> 2] = c[i >> 2];c[j + 4 >> 2] = a;c[j + 8 >> 2] = m;c[j + 12 >> 2] = n;c[j + 16 >> 2] = p;c[j + 20 >> 2] = r;kQ(u, 47536, j) | 0 } } while (0); c[(c[s >> 2] | 0) + 65548 >> 2] = c[q >> 2]; c[(c[s >> 2] | 0) + 65544 >> 2] = c[o >> 2]; c[t >> 2] = 0; u = c[t >> 2] | 0; l = v; return u | 0 } function TF(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; n = q + 28 | 0; k = q + 24 | 0; h = q + 20 | 0; j = q + 16 | 0; o = q + 12 | 0; m = q + 8 | 0; i = q + 4 | 0; g = q + 32 | 0; p = q; c[k >> 2] = f; if ((VF(c[k >> 2] | 0, g, 6) | 0) != 6) { c[n >> 2] = 0; p = c[n >> 2] | 0; l = q; return p | 0 } c[i >> 2] = uG(g, 4) | 0; f = (WF(e[(c[k >> 2] | 0) + 65552 >> 1] | 0, g, 4) | 0) & 65535; b[(c[k >> 2] | 0) + 65552 >> 1] = f; c[h >> 2] = d[g >> 0]; c[j >> 2] = d[g + 1 >> 0]; c[o >> 2] = d[g + 2 >> 0]; c[m >> 2] = d[g + 3 >> 0]; c[m >> 2] = 128 << ((c[m >> 2] | 0) >>> 0 < 6 ? c[m >> 2] | 0 : 6); c[p >> 2] = UC(c[h >> 2] | 0, c[j >> 2] | 0, c[o >> 2] | 0, c[m >> 2] | 0) | 0; if (!(c[p >> 2] | 0)) { c[n >> 2] = 0; p = c[n >> 2] | 0; l = q; return p | 0 } gD(c[p >> 2] | 0, a[g + 3 >> 0] | 0); aD(c[p >> 2] | 0, 8, 1); if ((e[(c[k >> 2] | 0) + 65552 >> 1] | 0 | 0) != (c[i >> 2] | 0)) aD(c[p >> 2] | 0, 1, 1); _C(c[p >> 2] | 0, 0); c[n >> 2] = c[p >> 2]; p = c[n >> 2] | 0; l = q; return p | 0 } function UF(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 16 | 0; j = n + 12 | 0; m = n + 8 | 0; i = n + 4 | 0; h = n; g = n + 20 | 0; c[j >> 2] = a; c[m >> 2] = d; c[i >> 2] = f; d = VF(c[j >> 2] | 0, c[(c[m >> 2] | 0) + 24 >> 2] | 0, e[(c[m >> 2] | 0) + 10 >> 1] | 0) | 0; if ((d | 0) != (e[(c[m >> 2] | 0) + 10 >> 1] | 0 | 0)) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } if ((VF(c[j >> 2] | 0, g, 2) | 0) != 2) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } aD(c[m >> 2] | 0, 8, 0); aD(c[m >> 2] | 0, 4, (c[i >> 2] | 0) == 248 & 1); c[h >> 2] = uG(g, 0) | 0; d = (WF(e[(c[j >> 2] | 0) + 65552 >> 1] | 0, c[(c[m >> 2] | 0) + 24 >> 2] | 0, e[(c[m >> 2] | 0) + 10 >> 1] | 0) | 0) & 65535; b[(c[j >> 2] | 0) + 65552 >> 1] = d; if ((e[(c[j >> 2] | 0) + 65552 >> 1] | 0 | 0) != (c[h >> 2] | 0)) aD(c[m >> 2] | 0, 2, 1); c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } function VF(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; g = j + 16 | 0; k = j + 12 | 0; e = j + 8 | 0; h = j + 4 | 0; f = j; c[g >> 2] = a; c[k >> 2] = b; c[e >> 2] = d; c[f >> 2] = c[k >> 2]; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[e >> 2] | 0) >>> 0) { b = 6; break } k = (XF(c[g >> 2] | 0, (c[f >> 2] | 0) + (c[h >> 2] | 0) | 0) | 0) != 0; d = c[h >> 2] | 0; if (k) { b = 4; break } c[h >> 2] = d + 1 } if ((b | 0) == 4) { c[i >> 2] = d; k = c[i >> 2] | 0; l = j; return k | 0 } else if ((b | 0) == 6) { c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function WF(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; k = j + 12 | 0; f = j + 8 | 0; h = j + 4 | 0; i = j; c[g >> 2] = a; c[k >> 2] = b; c[f >> 2] = e; c[i >> 2] = c[k >> 2]; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; c[g >> 2] = c[g >> 2] ^ (d[c[i >> 2] >> 0] | 0) << 8; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 8) break; b = c[g >> 2] << 1; if (c[g >> 2] & 32768 | 0) c[g >> 2] = b ^ 4129; else c[g >> 2] = b; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) - 1 } l = j; return c[g >> 2] & 65535 | 0 } function XF(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; h = i + 4 | 0; f = i; c[g >> 2] = b; c[h >> 2] = e; a[c[h >> 2] >> 0] = 0; if (a[(c[g >> 2] | 0) + 65555 >> 0] | 0) YF(c[g >> 2] | 0) | 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= 8) break; a[c[h >> 2] >> 0] = d[c[h >> 2] >> 0] << 1; if (YF(c[g >> 2] | 0) | 0) { e = c[h >> 2] | 0; a[e >> 0] = d[e >> 0] | 1 } YF(c[g >> 2] | 0) | 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } l = i; return 0 } function YF(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; f = g + 8 | 0; i = g + 4 | 0; h = g; c[e >> 2] = b; c[i >> 2] = (c[(c[e >> 2] | 0) + 65544 >> 2] | 0) >>> 3; c[h >> 2] = 128 >> (c[(c[e >> 2] | 0) + 65544 >> 2] & 7); c[f >> 2] = (d[(c[e >> 2] | 0) + 4 + (c[i >> 2] | 0) >> 0] & c[h >> 2] | 0) != 0 & 1; b = (c[e >> 2] | 0) + 65544 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; if ((c[(c[e >> 2] | 0) + 65544 >> 2] | 0) >>> 0 >= (c[(c[e >> 2] | 0) + 65540 >> 2] | 0) >>> 0) { c[(c[e >> 2] | 0) + 65544 >> 2] = 0; i = (c[e >> 2] | 0) + 65548 | 0; c[i >> 2] = (c[i >> 2] | 0) + 1 } a[(c[e >> 2] | 0) + 65555 >> 0] = ((a[(c[e >> 2] | 0) + 65555 >> 0] | 0) != 0 ^ 1) & 1; l = g; return c[f >> 2] | 0 } function ZF(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; i = k + 12 | 0; g = k + 8 | 0; h = k + 4 | 0; f = k; c[i >> 2] = b; c[g >> 2] = e; a[c[g >> 2] >> 0] = 0; a[(c[i >> 2] | 0) + 65554 >> 0] = 0; c[f >> 2] = (c[(c[i >> 2] | 0) + 65548 >> 2] | 0) + 2; c[h >> 2] = 0; while (1) { e = c[h >> 2] << 1; c[h >> 2] = e | (YF(c[i >> 2] | 0) | 0) != 0; e = c[h >> 2] & 65535; a: do if ((e | 0) < 62831) if ((e | 0) < 62826) { switch (e | 0) { case 17545: break; default: break a } a[c[g >> 2] >> 0] = -95; break } else { switch (e | 0) { case 62826: break; default: break a } a[c[g >> 2] >> 0] = -8; break } else switch (e | 0) { case 63338: { a[c[g >> 2] >> 0] = -4; break a } case 62846: { a[c[g >> 2] >> 0] = -2; break a } case 62831: { a[c[g >> 2] >> 0] = -5; break a } default: break a } while (0); b = c[i >> 2] | 0; if (d[c[g >> 2] >> 0] | 0 | 0) { e = 11; break } if ((c[b + 65548 >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) { e = 10; break } } if ((e | 0) == 10) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else if ((e | 0) == 11) { a[b + 65554 >> 0] = 1; a[(c[i >> 2] | 0) + 65555 >> 0] = 1; c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function _F(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = ($F(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function $F(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 64 | 0; o = q + 8 | 0; n = q; m = q + 44 | 0; j = q + 40 | 0; k = q + 36 | 0; p = q + 32 | 0; f = q + 28 | 0; i = q + 24 | 0; g = q + 20 | 0; h = q + 16 | 0; e = q + 48 | 0; c[j >> 2] = a; c[k >> 2] = b; if (BG(c[j >> 2] | 0, e, 12) | 0) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } if ((d[e >> 0] | 0 | 0) == 116 ? (d[e + 1 >> 0] | 0 | 0) == 100 : 0) { kQ(c[7422] | 0, 47591, n) | 0; c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } if ((d[e >> 0] | 0 | 0) == 84 ? (d[e + 1 >> 0] | 0 | 0) == 68 : 0) { if (d[e + 2 >> 0] | 0 | 0) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } c[p >> 2] = d[e + 4 >> 0]; if ((c[p >> 2] | 0) >>> 0 > 21) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } c[i >> 2] = d[e + 5 >> 0]; c[f >> 2] = ((d[e + 7 >> 0] | 0) & 128 | 0) != 0 & 1; c[g >> 2] = yG(e, 10) | 0; c[h >> 2] = aG(0, e, 10) | 0; if ((c[g >> 2] | 0) != (c[h >> 2] | 0)) { p = c[7422] | 0; n = c[h >> 2] | 0; c[o >> 2] = c[g >> 2]; c[o + 4 >> 2] = n; kQ(p, 47632, o) | 0; c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } if (c[f >> 2] | 0 ? bG(c[j >> 2] | 0, c[k >> 2] | 0) | 0 : 0) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } if (cG(c[j >> 2] | 0, c[k >> 2] | 0, c[i >> 2] | 0) | 0) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } else { c[m >> 2] = 0; p = c[m >> 2] | 0; l = q; return p | 0 } } c[m >> 2] = 1; p = c[m >> 2] | 0; l = q; return p | 0 } function aG(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; k = j + 12 | 0; f = j + 8 | 0; h = j + 4 | 0; i = j; c[g >> 2] = a; c[k >> 2] = b; c[f >> 2] = e; c[i >> 2] = c[k >> 2]; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; c[g >> 2] = c[g >> 2] ^ ((d[c[i >> 2] >> 0] | 0) & 255) << 8; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 8) break; b = c[g >> 2] << 1; if (c[g >> 2] & 32768 | 0) c[g >> 2] = b ^ 41111; else c[g >> 2] = b; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) - 1 } l = j; return c[g >> 2] & 65535 | 0 } function bG(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 64 | 0; r = s; q = s + 44 | 0; k = s + 40 | 0; n = s + 36 | 0; m = s + 32 | 0; o = s + 28 | 0; p = s + 24 | 0; h = s + 20 | 0; i = s + 16 | 0; j = s + 12 | 0; f = s + 48 | 0; g = s + 8 | 0; c[k >> 2] = b; c[n >> 2] = e; if (BG(c[k >> 2] | 0, f, 10) | 0) { c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } c[i >> 2] = yG(f, 0) | 0; c[j >> 2] = aG(0, f + 2 | 0, 8) | 0; c[h >> 2] = yG(f, 2) | 0; if ((c[h >> 2] | 0) >>> 0 > 0) { c[g >> 2] = HQ(c[h >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } if (BG(c[k >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0) { IQ(c[g >> 2] | 0); c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } c[j >> 2] = aG(c[j >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0; c[m >> 2] = 0; c[o >> 2] = c[h >> 2]; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; if (d[(c[g >> 2] | 0) + (c[m >> 2] | 0) >> 0] | 0 | 0) break; c[m >> 2] = (c[m >> 2] | 0) + 1 } while (1) { if ((c[m >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; if (d[(c[g >> 2] | 0) + ((c[o >> 2] | 0) - 1) >> 0] | 0 | 0) break; c[o >> 2] = (c[o >> 2] | 0) - 1 } c[p >> 2] = c[m >> 2]; while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; if (!(d[(c[g >> 2] | 0) + (c[p >> 2] | 0) >> 0] | 0)) a[(c[g >> 2] | 0) + (c[p >> 2] | 0) >> 0] = 10; c[p >> 2] = (c[p >> 2] | 0) + 1 } KD(c[n >> 2] | 0, (c[g >> 2] | 0) + (c[m >> 2] | 0) | 0, (c[o >> 2] | 0) - (c[m >> 2] | 0) | 0) | 0; IQ(c[g >> 2] | 0); LD(c[n >> 2] | 0) } if ((c[i >> 2] | 0) != (c[j >> 2] | 0)) { p = c[7422] | 0; o = c[j >> 2] | 0; c[r >> 2] = c[i >> 2]; c[r + 4 >> 2] = o; kQ(p, 47950, r) | 0; c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } else { c[q >> 2] = 0; r = c[q >> 2] | 0; l = s; return r | 0 } return 0 } function cG(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 64 | 0; r = s; q = s + 44 | 0; i = s + 40 | 0; m = s + 36 | 0; g = s + 32 | 0; k = s + 28 | 0; n = s + 24 | 0; f = s + 20 | 0; j = s + 16 | 0; h = s + 12 | 0; p = s + 8 | 0; o = s + 48 | 0; c[i >> 2] = a; c[m >> 2] = b; c[g >> 2] = e; a: while (1) { if (BG(c[i >> 2] | 0, o, 1) | 0) { f = 3; break } if ((d[o >> 0] | 0 | 0) == 255) { f = 5; break } if (BG(c[i >> 2] | 0, o + 1 | 0, 3) | 0) { f = 7; break } c[p >> 2] = aG(0, o, 3) | 0; if ((d[o + 3 >> 0] | 0 | 0) != (c[p >> 2] & 255 | 0)) { f = 9; break } c[n >> 2] = d[o >> 0]; c[f >> 2] = d[o + 1 >> 0]; c[j >> 2] = (d[o + 2 >> 0] | 0) & 127; c[h >> 2] = c[g >> 2]; if ((d[o + 2 >> 0] | 0) & 128 | 0) c[h >> 2] = c[h >> 2] | 128; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) continue a; if (dG(c[i >> 2] | 0, c[m >> 2] | 0, c[f >> 2] | 0, c[j >> 2] | 0, c[h >> 2] | 0) | 0) { f = 15; break a } c[k >> 2] = (c[k >> 2] | 0) + 1 } } if ((f | 0) == 3) { c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } else if ((f | 0) == 5) { c[q >> 2] = 0; r = c[q >> 2] | 0; l = s; return r | 0 } else if ((f | 0) == 7) { c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } else if ((f | 0) == 9) { n = c[7422] | 0; p = c[p >> 2] | 0; c[r >> 2] = d[o + 3 >> 0]; c[r + 4 >> 2] = p; kQ(n, 47661, r) | 0; c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } else if ((f | 0) == 15) { c[q >> 2] = 1; r = c[q >> 2] | 0; l = s; return r | 0 } return 0 } function dG(b, f, g, h, i) { b = b | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 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 = l; l = l + 160 | 0; C = F + 80 | 0; B = F + 56 | 0; A = F + 48 | 0; E = F + 32 | 0; D = F + 16 | 0; z = F; w = F + 144 | 0; s = F + 140 | 0; u = F + 136 | 0; k = F + 132 | 0; t = F + 128 | 0; q = F + 124 | 0; n = F + 120 | 0; o = F + 116 | 0; p = F + 112 | 0; x = F + 108 | 0; v = F + 104 | 0; m = F + 100 | 0; r = F + 96 | 0; j = F + 152 | 0; y = F + 92 | 0; c[s >> 2] = b; c[u >> 2] = f; c[k >> 2] = g; c[t >> 2] = h; c[q >> 2] = i; if (BG(c[s >> 2] | 0, j, 6) | 0) { c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } c[x >> 2] = d[j + 2 >> 0]; c[v >> 2] = d[j + 3 >> 0]; c[r >> 2] = d[j + 4 >> 0]; c[y >> 2] = UC(d[j >> 0] | 0, d[j + 1 >> 0] | 0, d[j + 2 >> 0] | 0, (c[v >> 2] | 0) >>> 0 <= 6 ? 128 << c[v >> 2] : 0) | 0; if (!(c[y >> 2] | 0)) { c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } gD(c[y >> 2] | 0, a[j + 3 >> 0] | 0); f = (ED(c[u >> 2] | 0, c[y >> 2] | 0, c[k >> 2] | 0, c[t >> 2] | 0) | 0) != 0; g = c[y >> 2] | 0; if (f) { VC(g); c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } eG(g, c[q >> 2] | 0); if (c[r >> 2] & 2 | 0) aD(c[y >> 2] | 0, 2, 1); if (c[r >> 2] & 4 | 0) aD(c[y >> 2] | 0, 4, 1); c[n >> 2] = d[j + 5 >> 0]; c[o >> 2] = aG(0, j, 5) | 0; if (c[r >> 2] & 48 | 0) if ((c[n >> 2] | 0) != (c[o >> 2] & 255 | 0)) { E = c[7422] | 0; C = c[t >> 2] | 0; D = e[(c[y >> 2] | 0) + 8 >> 1] | 0; c[z >> 2] = c[k >> 2]; c[z + 4 >> 2] = C; c[z + 8 >> 2] = D; kQ(E, 47689, z) | 0; c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } else { _C(c[y >> 2] | 0, c[r >> 2] & 16 | 0 ? 246 : 0); c[w >> 2] = 0; E = c[w >> 2] | 0; l = F; return E | 0 } do if ((c[v >> 2] | 0) >>> 0 <= 6) { if (BG(c[s >> 2] | 0, j, 3) | 0) { c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } c[m >> 2] = yG(j, 0) | 0; if (!(c[m >> 2] | 0)) { E = c[7422] | 0; B = c[t >> 2] | 0; C = c[x >> 2] | 0; c[D >> 2] = c[k >> 2]; c[D + 4 >> 2] = B; c[D + 8 >> 2] = C; kQ(E, 47734, D) | 0; c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } c[m >> 2] = (c[m >> 2] | 0) - 1; if (!(d[j + 2 >> 0] | 0)) { if (!(fG(c[s >> 2] | 0, c[y >> 2] | 0, c[m >> 2] | 0) | 0)) break; c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } if ((d[j + 2 >> 0] | 0 | 0) == 1) { if (!(gG(c[s >> 2] | 0, c[y >> 2] | 0, c[m >> 2] | 0) | 0)) break; c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } if ((d[j + 2 >> 0] | 0 | 0) != 2) { D = c[7422] | 0; A = c[t >> 2] | 0; B = c[x >> 2] | 0; C = d[j + 2 >> 0] | 0; c[E >> 2] = c[k >> 2]; c[E + 4 >> 2] = A; c[E + 8 >> 2] = B; c[E + 12 >> 2] = C; kQ(D, 47768, E) | 0; c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } if (hG(c[s >> 2] | 0, c[y >> 2] | 0, c[m >> 2] | 0) | 0) { c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } } while (0); c[p >> 2] = aG(c[o >> 2] | 0, c[(c[y >> 2] | 0) + 24 >> 2] | 0, e[(c[y >> 2] | 0) + 10 >> 1] | 0) | 0; c[o >> 2] = aG(0, c[(c[y >> 2] | 0) + 24 >> 2] | 0, e[(c[y >> 2] | 0) + 10 >> 1] | 0) | 0; if ((c[n >> 2] | 0) != (c[o >> 2] & 255 | 0) ? (kQ(c[7422] | 0, 47808, A) | 0, (c[n >> 2] | 0) != (c[p >> 2] & 255 | 0)) : 0) { E = c[7422] | 0; x = c[t >> 2] | 0; z = e[(c[y >> 2] | 0) + 8 >> 1] | 0; A = c[n >> 2] | 0; C = c[o >> 2] | 0; D = c[p >> 2] | 0; c[B >> 2] = c[k >> 2]; c[B + 4 >> 2] = x; c[B + 8 >> 2] = z; c[B + 12 >> 2] = A; c[B + 16 >> 2] = C; c[B + 20 >> 2] = D; kQ(E, 47842, B) | 0; c[w >> 2] = 1; E = c[w >> 2] | 0; l = F; return E | 0 } if (c[r >> 2] & 64 | 0) { E = c[7422] | 0; B = c[t >> 2] | 0; D = e[(c[y >> 2] | 0) + 8 >> 1] | 0; c[C >> 2] = c[k >> 2]; c[C + 4 >> 2] = B; c[C + 8 >> 2] = D; kQ(E, 47894, C) | 0; GD(c[u >> 2] | 0, c[y >> 2] | 0); VC(c[y >> 2] | 0) } c[w >> 2] = 0; E = c[w >> 2] | 0; l = F; return E | 0 } function eG(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; g = f + 4 | 0; d = f; c[e >> 2] = a; c[g >> 2] = b; c[d >> 2] = c[g >> 2] & 128 | 0 ? 1 : 2; if ((c[g >> 2] & 127 | 0) == 2) c[d >> 2] = c[d >> 2] | 32768; bD(c[e >> 2] | 0, c[d >> 2] | 0); l = f; return } function fG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; g = j + 12 | 0; i = j + 8 | 0; f = j + 4 | 0; c[g >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; if ((c[f >> 2] | 0) != (e[(c[i >> 2] | 0) + 10 >> 1] | 0 | 0)) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } if (BG(c[g >> 2] | 0, c[(c[i >> 2] | 0) + 24 >> 2] | 0, c[f >> 2] | 0) | 0) { kQ(c[7422] | 0, 47933, j) | 0; c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } else { c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function gG(b, d, f) { b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 32 | 0; k = n + 20 | 0; h = n + 16 | 0; m = n + 12 | 0; o = n + 8 | 0; i = n + 4 | 0; j = n; g = n + 24 | 0; c[h >> 2] = b; c[m >> 2] = d; c[o >> 2] = f; if ((c[o >> 2] | 0) != 4) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = n; return o | 0 } if (BG(c[h >> 2] | 0, g, 4) | 0) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = n; return o | 0 } c[j >> 2] = yG(g, 0) | 0; if ((c[j >> 2] << 1 | 0) != (e[(c[m >> 2] | 0) + 10 >> 1] | 0 | 0)) { c[k >> 2] = 1; o = c[k >> 2] | 0; l = n; return o | 0 } c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; a[(c[(c[m >> 2] | 0) + 24 >> 2] | 0) + ((c[i >> 2] << 1) + 0) >> 0] = a[g + 2 >> 0] | 0; a[(c[(c[m >> 2] | 0) + 24 >> 2] | 0) + ((c[i >> 2] << 1) + 1) >> 0] = a[g + 3 >> 0] | 0; c[i >> 2] = (c[i >> 2] | 0) + 1 } c[k >> 2] = 0; o = c[k >> 2] | 0; l = n; return o | 0 } function hG(b, f, g) { b = b | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 32 | 0; n = p + 20 | 0; j = p + 16 | 0; o = p + 12 | 0; i = p + 8 | 0; m = p + 4 | 0; k = p; h = p + 24 | 0; c[j >> 2] = b; c[o >> 2] = f; c[i >> 2] = g; c[m >> 2] = 0; a: while (1) { if ((c[i >> 2] | 0) >>> 0 <= 0) { h = 26; break } if ((c[i >> 2] | 0) >>> 0 < 2) { h = 4; break } if (BG(c[j >> 2] | 0, h, 2) | 0) { h = 6; break } c[i >> 2] = (c[i >> 2] | 0) - 2; if (!(d[h >> 0] | 0)) { c[k >> 2] = d[h + 1 >> 0]; if ((c[k >> 2] | 0) >>> 0 > (c[i >> 2] | 0) >>> 0) { h = 9; break } if (((c[m >> 2] | 0) + (c[k >> 2] | 0) | 0) >>> 0 > (e[(c[o >> 2] | 0) + 10 >> 1] | 0) >>> 0) { h = 11; break } if (BG(c[j >> 2] | 0, (c[(c[o >> 2] | 0) + 24 >> 2] | 0) + (c[m >> 2] | 0) | 0, c[k >> 2] | 0) | 0) { h = 13; break } c[m >> 2] = (c[m >> 2] | 0) + (c[k >> 2] | 0); c[i >> 2] = (c[i >> 2] | 0) - (c[k >> 2] | 0); continue } if ((d[h >> 0] | 0 | 0) != 1) { h = 25; break } c[k >> 2] = d[h + 1 >> 0]; if ((c[i >> 2] | 0) >>> 0 < 2) { h = 17; break } if (((c[m >> 2] | 0) + (c[k >> 2] << 1) | 0) >>> 0 > (e[(c[o >> 2] | 0) + 10 >> 1] | 0) >>> 0) { h = 19; break } if (BG(c[j >> 2] | 0, h + 2 | 0, 2) | 0) { h = 21; break } c[i >> 2] = (c[i >> 2] | 0) - 2; while (1) { if ((c[k >> 2] | 0) >>> 0 <= 0) continue a; a[(c[(c[o >> 2] | 0) + 24 >> 2] | 0) + ((c[m >> 2] | 0) + 0) >> 0] = a[h + 2 >> 0] | 0; a[(c[(c[o >> 2] | 0) + 24 >> 2] | 0) + ((c[m >> 2] | 0) + 1) >> 0] = a[h + 3 >> 0] | 0; c[m >> 2] = (c[m >> 2] | 0) + 2; c[k >> 2] = (c[k >> 2] | 0) - 1 } } switch (h | 0) { case 4: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 6: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 9: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 11: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 13: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 17: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 19: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 21: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 25: { c[n >> 2] = 1;o = c[n >> 2] | 0;l = p; return o | 0 } case 26: if ((c[m >> 2] | 0) >>> 0 < (e[(c[o >> 2] | 0) + 10 >> 1] | 0) >>> 0) { c[n >> 2] = 1; o = c[n >> 2] | 0; l = p; return o | 0 } else { c[n >> 2] = 0; o = c[n >> 2] | 0; l = p; return o | 0 } } return 0 } function iG(b, d) { b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 32 | 0; m = p + 24 | 0; i = p + 20 | 0; k = p + 16 | 0; g = p + 12 | 0; j = p + 8 | 0; h = p + 4 | 0; n = p; f = p + 28 | 0; c[i >> 2] = b; c[k >> 2] = d; if (jG(c[i >> 2] | 0, c[k >> 2] | 0) | 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } if ((c[(c[k >> 2] | 0) + 8 >> 2] | 0) >>> 0 > 0 ? kG(c[i >> 2] | 0, c[k >> 2] | 0) | 0 : 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } c[g >> 2] = 0; a: while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[c[k >> 2] >> 1] | 0) >>> 0) break; c[h >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (e[(c[h >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[j >> 2] << 2) >> 2]; if (lG(c[i >> 2] | 0, c[n >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0) | 0) { o = 11; break a } c[j >> 2] = (c[j >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((o | 0) == 11) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } a[f >> 0] = -1; a[f + 1 >> 0] = 0; a[f + 2 >> 0] = 0; a[f + 3 >> 0] = aG(0, f, 3) | 0; if (DG(c[i >> 2] | 0, f, 4) | 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } else { XP(c[i >> 2] | 0) | 0; c[m >> 2] = 0; o = c[m >> 2] | 0; l = p; return o | 0 } return 0 } function jG(b, f) { b = b | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 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 = l; l = l + 80 | 0; v = y + 56 | 0; s = y + 52 | 0; u = y + 48 | 0; g = y + 44 | 0; i = y + 40 | 0; j = y + 36 | 0; o = y + 32 | 0; t = y + 28 | 0; w = y + 24 | 0; r = y + 20 | 0; q = y + 16 | 0; p = y + 12 | 0; h = y + 8 | 0; m = y + 4 | 0; k = y; n = y + 64 | 0; c[s >> 2] = b; c[u >> 2] = f; c[o >> 2] = e[c[u >> 2] >> 1]; c[t >> 2] = 0; c[w >> 2] = 0; c[r >> 2] = 0; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (e[c[u >> 2] >> 1] | 0) >>> 0) break; c[h >> 2] = c[(c[(c[u >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; if ((e[(c[h >> 2] | 0) + 2 >> 1] | 0) >>> 0 > (c[t >> 2] | 0) >>> 0) c[t >> 2] = e[(c[h >> 2] | 0) + 2 >> 1]; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (e[(c[h >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[m >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[i >> 2] << 2) >> 2]; if ((e[(c[m >> 2] | 0) + 2 >> 1] | 0) >>> 0 > (c[w >> 2] | 0) >>> 0) c[w >> 2] = e[(c[m >> 2] | 0) + 2 >> 1]; c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (e[(c[m >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[k >> 2] = c[(c[(c[m >> 2] | 0) + 4 >> 2] | 0) + (c[j >> 2] << 2) >> 2]; if (!(c[r >> 2] | 0)) c[r >> 2] = e[(c[k >> 2] | 0) + 16 >> 1]; c[j >> 2] = (c[j >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } g = c[r >> 2] | 0; a: do if ((g | 0) < 32769) switch (g | 0) { case 1: { c[r >> 2] = 128; break a } case 2: { c[r >> 2] = 0; break a } default: { x = 21; break a } } else switch (g | 0) { case 32769: { c[r >> 2] = 130; break a } case 32770: { c[r >> 2] = 2; break a } default: { x = 21; break a } } while (0); if ((x | 0) == 21) c[r >> 2] = 0; do if ((c[o >> 2] | 0) >>> 0 >= 45) { if ((c[w >> 2] | 0) >>> 0 < 12) { c[q >> 2] = 3; break } if ((c[w >> 2] | 0) >>> 0 < 17) { c[q >> 2] = 2; break } else { c[q >> 2] = 4; break } } else c[q >> 2] = 1; while (0); a[n >> 0] = 84; a[n + 1 >> 0] = 68; a[n + 2 >> 0] = 0; a[n + 3 >> 0] = 0; a[n + 4 >> 0] = 21; a[n + 5 >> 0] = c[r >> 2]; a[n + 6 >> 0] = c[q >> 2]; a[n + 7 >> 0] = 0; a[n + 8 >> 0] = 0; a[n + 9 >> 0] = c[t >> 2]; if ((c[(c[u >> 2] | 0) + 8 >> 2] | 0) >>> 0 > 0) { x = n + 7 | 0; a[x >> 0] = d[x >> 0] | 0 | 128 } c[p >> 2] = aG(0, n, 10) | 0; AG(n, 10, c[p >> 2] | 0); if (DG(c[s >> 2] | 0, n, 12) | 0) { c[v >> 2] = 1; x = c[v >> 2] | 0; l = y; return x | 0 } else { c[v >> 2] = 0; x = c[v >> 2] | 0; l = y; return x | 0 } return 0 } function kG(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; o = l; l = l + 64 | 0; n = o + 32 | 0; i = o + 28 | 0; k = o + 24 | 0; j = o + 20 | 0; m = o + 16 | 0; h = o + 12 | 0; q = o + 8 | 0; p = o + 4 | 0; f = o + 40 | 0; g = o; c[i >> 2] = b; c[k >> 2] = e; e = c[(c[k >> 2] | 0) + 8 >> 2] | 0; c[m >> 2] = e; c[m >> 2] = (c[m >> 2] | 0) >>> 0 > 65535 ? 65535 : e; AG(f, 2, c[m >> 2] | 0); c[q >> 2] = xb(0) | 0; c[p >> 2] = Sa(q | 0) | 0; a[f + 4 >> 0] = c[(c[p >> 2] | 0) + 20 >> 2]; a[f + 5 >> 0] = c[(c[p >> 2] | 0) + 16 >> 2]; a[f + 6 >> 0] = c[(c[p >> 2] | 0) + 12 >> 2]; a[f + 7 >> 0] = c[(c[p >> 2] | 0) + 8 >> 2]; a[f + 8 >> 0] = c[(c[p >> 2] | 0) + 4 >> 2]; a[f + 9 >> 0] = c[c[p >> 2] >> 2]; c[g >> 2] = HQ(c[m >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = o; return q | 0 } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; if ((d[(c[(c[k >> 2] | 0) + 12 >> 2] | 0) + (c[j >> 2] | 0) >> 0] | 0 | 0) == 10) { b = 0; e = (c[g >> 2] | 0) + (c[j >> 2] | 0) | 0 } else { b = a[(c[(c[k >> 2] | 0) + 12 >> 2] | 0) + (c[j >> 2] | 0) >> 0] | 0; e = (c[g >> 2] | 0) + (c[j >> 2] | 0) | 0 } a[e >> 0] = b; c[j >> 2] = (c[j >> 2] | 0) + 1 } c[h >> 2] = aG(0, f + 2 | 0, 8) | 0; c[h >> 2] = aG(c[h >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0) | 0; AG(f, 0, c[h >> 2] | 0); if (DG(c[i >> 2] | 0, f, 10) | 0) { IQ(c[g >> 2] | 0); c[n >> 2] = 1; q = c[n >> 2] | 0; l = o; return q | 0 } q = (DG(c[i >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0) | 0) != 0; IQ(c[g >> 2] | 0); if (q) { c[n >> 2] = 1; q = c[n >> 2] | 0; l = o; return q | 0 } else { c[n >> 2] = 0; q = c[n >> 2] | 0; l = o; return q | 0 } return 0 } function lG(d, f, g, h) { d = d | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; p = l; l = l + 32 | 0; o = p + 20 | 0; j = p + 16 | 0; n = p + 12 | 0; i = p + 8 | 0; k = p + 4 | 0; m = p; q = p + 24 | 0; c[j >> 2] = d; c[n >> 2] = f; c[i >> 2] = g; c[k >> 2] = h; a[q >> 0] = b[(c[n >> 2] | 0) + 2 >> 1]; a[q + 1 >> 0] = c[i >> 2]; a[q + 2 >> 0] = c[k >> 2]; a[q + 3 >> 0] = aG(0, q, 3) | 0; if (DG(c[j >> 2] | 0, q, 4) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = p; return q | 0 } c[m >> 2] = 0; while (1) { if ((c[m >> 2] | 0) >>> 0 >= (e[(c[n >> 2] | 0) + 2 >> 1] | 0) >>> 0) { g = 8; break } if (mG(c[j >> 2] | 0, c[(c[(c[n >> 2] | 0) + 4 >> 2] | 0) + (c[m >> 2] << 2) >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0) | 0) { g = 6; break } c[m >> 2] = (c[m >> 2] | 0) + 1 } if ((g | 0) == 6) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = p; return q | 0 } else if ((g | 0) == 8) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = p; return q | 0 } return 0 } function mG(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 48 | 0; o = r + 24 | 0; m = r + 20 | 0; p = r + 16 | 0; n = r + 4 | 0; k = r; j = r + 32 | 0; c[m >> 2] = f; c[p >> 2] = g; c[r + 12 >> 2] = h; c[r + 8 >> 2] = i; if ((e[(c[p >> 2] | 0) + 10 >> 1] | 0) & (e[(c[p >> 2] | 0) + 10 >> 1] | 0) - 1 | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } a[j >> 0] = b[(c[p >> 2] | 0) + 4 >> 1]; a[j + 1 >> 0] = b[(c[p >> 2] | 0) + 6 >> 1]; a[j + 2 >> 0] = b[(c[p >> 2] | 0) + 8 >> 1]; a[j + 3 >> 0] = hD(c[p >> 2] | 0) | 0; a[j + 4 >> 0] = 0; if (c[(c[p >> 2] | 0) + 12 >> 2] & 2 | 0) { g = j + 4 | 0; a[g >> 0] = d[g >> 0] | 0 | 2 } if (c[(c[p >> 2] | 0) + 12 >> 2] & 4 | 0) { g = j + 4 | 0; a[g >> 0] = d[g >> 0] | 0 | 4 } a[j + 5 >> 0] = aG(0, c[(c[p >> 2] | 0) + 24 >> 2] | 0, e[(c[p >> 2] | 0) + 10 >> 1] | 0) | 0; if (DG(c[m >> 2] | 0, j, 6) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } if ((d[j + 3 >> 0] | 0 | 0) > 6) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } c[k >> 2] = 1; a: do if (!((e[(c[p >> 2] | 0) + 10 >> 1] | 0) & 1 | 0) ? (e[(c[p >> 2] | 0) + 10 >> 1] | 0 | 0) >= 2 : 0) { c[n >> 2] = 2; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (e[(c[p >> 2] | 0) + 10 >> 1] | 0) >>> 0) break a; if ((d[(c[(c[p >> 2] | 0) + 24 >> 2] | 0) + (c[n >> 2] | 0) >> 0] | 0 | 0) != (d[(c[(c[p >> 2] | 0) + 24 >> 2] | 0) + (c[n >> 2] & 1) >> 0] | 0 | 0)) break; c[n >> 2] = (c[n >> 2] | 0) + 1 } c[k >> 2] = 0 } else q = 13; while (0); if ((q | 0) == 13) c[k >> 2] = 0; if (c[k >> 2] | 0) { AG(j, 0, 5); a[j + 2 >> 0] = 1; AG(j, 3, (e[(c[p >> 2] | 0) + 10 >> 1] | 0 | 0) / 2 | 0); a[j + 5 >> 0] = a[c[(c[p >> 2] | 0) + 24 >> 2] >> 0] | 0; a[j + 6 >> 0] = a[(c[(c[p >> 2] | 0) + 24 >> 2] | 0) + 1 >> 0] | 0; if (DG(c[m >> 2] | 0, j, 7) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } } else { AG(j, 0, (e[(c[p >> 2] | 0) + 10 >> 1] | 0) + 1 | 0); a[j + 2 >> 0] = 0; if (DG(c[m >> 2] | 0, j, 3) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } if (DG(c[m >> 2] | 0, c[(c[p >> 2] | 0) + 24 >> 2] | 0, e[(c[p >> 2] | 0) + 10 >> 1] | 0) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = r; return q | 0 } } c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } function nG(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 32 | 0; f = h + 4 | 0; e = h; b = h + 8 | 0; c[e >> 2] = a; a: do if (!(jQ(c[e >> 2] | 0, 0, 0) | 0)) { if (BG(c[e >> 2] | 0, b, 16) | 0) { c[f >> 2] = 0; break } if (!((d[b >> 0] | 0 | 0) == 116 ? (d[b + 1 >> 0] | 0 | 0) == 100 : 0)) g = 7; do if ((g | 0) == 7) { if ((d[b >> 0] | 0 | 0) == 84 ? (d[b + 1 >> 0] | 0 | 0) == 68 : 0) break; c[f >> 2] = 0; break a } while (0); if (d[b + 2 >> 0] | 0 | 0) { c[f >> 2] = 0; break } else { c[f >> 2] = 1; break } } else c[f >> 2] = 0; while (0); l = h; return c[f >> 2] | 0 } function oG(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = xD() | 0; do if (c[d >> 2] | 0) { b = (pG(c[b >> 2] | 0, c[d >> 2] | 0, 26952) | 0) != 0; a = c[d >> 2] | 0; if (b) { zD(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function pG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 24 | 0; f = n + 20 | 0; h = n + 16 | 0; e = n + 12 | 0; g = n + 8 | 0; i = n + 4 | 0; j = n; c[f >> 2] = a; c[h >> 2] = b; c[e >> 2] = d; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[e >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; if (qG(c[f >> 2] | 0, c[h >> 2] | 0, (c[(c[e >> 2] | 0) + 12 >> 2] | 0) + (c[g >> 2] << 3) | 0, 0, 0) | 0) { m = 4; break } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((m | 0) == 4) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } c[j >> 2] = c[(c[e >> 2] | 0) + 4 >> 2]; c[i >> 2] = 1; a: while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) { m = 14; break } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[e >> 2] | 0) + 16 >> 2] | 0) >>> 0) break; if (qG(c[f >> 2] | 0, c[h >> 2] | 0, (c[(c[e >> 2] | 0) + 20 >> 2] | 0) + (c[g >> 2] << 3) | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { m = 11; break a } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[j >> 2] = (c[j >> 2] | 0) + (c[(c[e >> 2] | 0) + 4 >> 2] | 0); c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((m | 0) == 11) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else if ((m | 0) == 14) { c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } return 0 } function qG(a, b, e, f, g) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 32 | 0; n = q + 28 | 0; i = q + 24 | 0; j = q + 20 | 0; k = q + 16 | 0; m = q + 12 | 0; h = q + 8 | 0; p = q + 4 | 0; o = q; c[i >> 2] = a; c[j >> 2] = b; c[k >> 2] = e; c[m >> 2] = f; c[h >> 2] = g; c[p >> 2] = 128 << (d[(c[k >> 2] | 0) + 2 >> 0] | 0); c[o >> 2] = UC(c[h >> 2] | 0, d[c[k >> 2] >> 0] | 0, d[(c[k >> 2] | 0) + 1 >> 0] | 0, c[p >> 2] | 0) | 0; if (!(c[o >> 2] | 0)) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } bD(c[o >> 2] | 0, 32770); if (ED(c[j >> 2] | 0, c[o >> 2] | 0, c[h >> 2] | 0, d[c[k >> 2] >> 0] | 0) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } if (CG(c[i >> 2] | 0, (c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[m >> 2] | 0) | 0, c[(c[o >> 2] | 0) + 24 >> 2] | 0, c[p >> 2] | 0) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = q; return p | 0 } else { c[n >> 2] = 0; p = c[n >> 2] | 0; l = q; return p | 0 } return 0 } function rG(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; b = sG(c[f >> 2] | 0, c[e >> 2] | 0, 26952) | 0; l = d; return b | 0 } function sG(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 24 | 0; f = n + 20 | 0; h = n + 16 | 0; e = n + 12 | 0; g = n + 8 | 0; i = n + 4 | 0; j = n; c[f >> 2] = a; c[h >> 2] = b; c[e >> 2] = d; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[e >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; if (tG(c[f >> 2] | 0, c[h >> 2] | 0, (c[(c[e >> 2] | 0) + 12 >> 2] | 0) + (c[g >> 2] << 3) | 0, 0, 0) | 0) { m = 4; break } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((m | 0) == 4) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } c[j >> 2] = c[(c[e >> 2] | 0) + 4 >> 2]; c[i >> 2] = 1; a: while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) { m = 14; break } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[e >> 2] | 0) + 16 >> 2] | 0) >>> 0) break; if (tG(c[f >> 2] | 0, c[h >> 2] | 0, (c[(c[e >> 2] | 0) + 20 >> 2] | 0) + (c[g >> 2] << 3) | 0, c[j >> 2] | 0, c[i >> 2] | 0) | 0) { m = 11; break a } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[j >> 2] = (c[j >> 2] | 0) + (c[(c[e >> 2] | 0) + 4 >> 2] | 0); c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((m | 0) == 11) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else if ((m | 0) == 14) { c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } return 0 } function tG(a, b, f, g, h) { a = a | 0; b = b | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; p = l; l = l + 32 | 0; m = p + 28 | 0; i = p + 24 | 0; r = p + 20 | 0; j = p + 16 | 0; k = p + 12 | 0; q = p + 8 | 0; o = p + 4 | 0; n = p; c[i >> 2] = a; c[r >> 2] = b; c[j >> 2] = f; c[k >> 2] = g; c[q >> 2] = h; c[o >> 2] = 128 << (d[(c[j >> 2] | 0) + 2 >> 0] | 0); c[n >> 2] = HD(c[r >> 2] | 0, c[q >> 2] | 0, d[c[j >> 2] >> 0] | 0, d[(c[j >> 2] | 0) + 1 >> 0] | 0, 0) | 0; if (!(c[n >> 2] | 0)) { c[m >> 2] = 1; r = c[m >> 2] | 0; l = p; return r | 0 } if ((e[(c[n >> 2] | 0) + 10 >> 1] | 0 | 0) != (c[o >> 2] | 0)) { c[m >> 2] = 1; r = c[m >> 2] | 0; l = p; return r | 0 } if (EG(c[i >> 2] | 0, (c[(c[j >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] | 0) | 0, c[(c[n >> 2] | 0) + 24 >> 2] | 0, c[o >> 2] | 0) | 0) { c[m >> 2] = 1; r = c[m >> 2] | 0; l = p; return r | 0 } else { c[m >> 2] = 0; r = c[m >> 2] | 0; l = p; return r | 0 } return 0 } function uG(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[c[g >> 2] >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function qh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j; k = j + 16 | 0; f = j + 12 | 0; h = j + 20 | 0; g = j + 8 | 0; c[k >> 2] = b; c[f >> 2] = e; c[g >> 2] = c[k >> 2]; c[f >> 2] = (c[f >> 2] & c[(c[g >> 2] | 0) + 60 >> 2]) >>> (c[(c[g >> 2] | 0) + 64 >> 2] | 0); do switch (c[f >> 2] | 0) { case 0: { a[h >> 0] = a[(c[g >> 2] | 0) + 5 >> 0] | 0; break } case 1: { a[h >> 0] = rh(c[g >> 2] | 0) | 0; break } case 2: { a[h >> 0] = sh(c[g >> 2] | 0) | 0; break } case 3: { a[h >> 0] = th(c[g >> 2] | 0) | 0; break } case 4: { a[h >> 0] = uh(c[g >> 2] | 0) | 0; break } case 5: { vh(c[g >> 2] | 0);a[h >> 0] = wh(c[g >> 2] | 0) | 0; break } case 38: case 6: { a[h >> 0] = xh(c[g >> 2] | 0) | 0; break } case 7: { yh(c[g >> 2] | 0, 0);a[h >> 0] = -1; break } case 32: { a[h >> 0] = xh(c[g >> 2] | 0) | 0; break } default: { a[h >> 0] = -1;k = d[h >> 0] | 0;c[i >> 2] = c[f >> 2];c[i + 4 >> 2] = k;cg(35419, i) } } while (0); l = j; return a[h >> 0] | 0 } function rh(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return a[(c[d >> 2] | 0) + 6 >> 0] | 0 } function sh(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return a[(c[d >> 2] | 0) + 7 >> 0] | 0 } function th(a) { a = a | 0; var b = 0, e = 0; e = l; l = l + 16 | 0; b = e; c[b >> 2] = a; l = e; return (d[(c[b >> 2] | 0) + 8 >> 0] | 0) & 15 | 0 } function uh(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return a[(c[d >> 2] | 0) + 9 >> 0] | 0 } function vh(b) { b = b | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = (d[(c[f >> 2] | 0) + 9 >> 0] >> 2 ^ d[(c[f >> 2] | 0) + 8 >> 0]) & 7; b = (c[f >> 2] | 0) + 11 | 0; f = d[b >> 0] | 0; a[b >> 0] = a[g >> 0] | 0 ? f & -9 : f | 8; l = e; return } function wh(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return a[(c[d >> 2] | 0) + 11 >> 0] | 0 } function xh(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 5 | 0; e = g; f = g + 4 | 0; c[e >> 2] = b; if ((c[c[e >> 2] >> 2] | 0) != 5) { a[d >> 0] = 0; f = a[d >> 0] | 0; l = g; return f | 0 } if ((c[(c[e >> 2] | 0) + 40 >> 2] | 0) >>> 0 >= (c[(c[e >> 2] | 0) + 44 >> 2] | 0) >>> 0) { a[d >> 0] = 0; f = a[d >> 0] | 0; l = g; return f | 0 } a[f >> 0] = a[(c[(c[e >> 2] | 0) + 52 >> 2] | 0) + (c[(c[e >> 2] | 0) + 40 >> 2] | 0) >> 0] | 0; b = (c[e >> 2] | 0) + 40 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; if ((c[(c[e >> 2] | 0) + 40 >> 2] | 0) >>> 0 >= (c[(c[e >> 2] | 0) + 44 >> 2] | 0) >>> 0) zh(c[e >> 2] | 0, 0); a[d >> 0] = a[f >> 0] | 0; f = a[d >> 0] | 0; l = g; return f | 0 } function yh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; g = h; c[f >> 2] = b; c[g >> 2] = e; c[g >> 2] = (c[g >> 2] | 0) != 0 & 1; if ((d[(c[f >> 2] | 0) + 76 >> 0] | 0 | 0) == (c[g >> 2] | 0)) { l = h; return } a[(c[f >> 2] | 0) + 76 >> 0] = c[g >> 2]; if (!(c[(c[f >> 2] | 0) + 84 >> 2] | 0)) { l = h; return } Qb[c[(c[f >> 2] | 0) + 84 >> 2] & 255](c[(c[f >> 2] | 0) + 80 >> 2] | 0, c[g >> 2] & 255); l = h; return } function zh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; g = f; h = f + 4 | 0; c[g >> 2] = b; a[h >> 0] = e; c[c[g >> 2] >> 2] = 7; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 64; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 8; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 4; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = (d[e >> 0] | 0) & -17; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 32; a[(c[g >> 2] | 0) + 5 >> 0] = a[h >> 0] | 0; l = f; return } function Ah(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; d = l; l = l + 16 | 0; g = d + 8 | 0; e = d + 4 | 0; f = d; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = c[g >> 2]; c[e >> 2] = (c[e >> 2] & c[(c[f >> 2] | 0) + 60 >> 2]) >>> (c[(c[f >> 2] | 0) + 64 >> 2] | 0); l = d; return 0 } function Bh(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; j = k; m = k + 16 | 0; g = k + 12 | 0; i = k + 20 | 0; h = k + 8 | 0; c[m >> 2] = b; c[g >> 2] = e; a[i >> 0] = f; c[h >> 2] = c[m >> 2]; c[g >> 2] = (c[g >> 2] & c[(c[h >> 2] | 0) + 60 >> 2]) >>> (c[(c[h >> 2] | 0) + 64 >> 2] | 0); switch (c[g >> 2] | 0) { case 0: { Ch(c[h >> 2] | 0, a[i >> 0] | 0);l = k; return } case 1: { Dh(c[h >> 2] | 0, a[i >> 0] | 0);l = k; return } case 2: { Eh(c[h >> 2] | 0, a[i >> 0] | 0);l = k; return } case 3: { Fh(c[h >> 2] | 0, a[i >> 0] | 0);l = k; return } case 4: { Gh(c[h >> 2] | 0, a[i >> 0] | 0);l = k; return } case 5: { m = (c[h >> 2] | 0) + 11 | 0;a[m >> 0] = d[m >> 0] | 0 | 64;l = k; return } case 32: { Hh(c[h >> 2] | 0, a[i >> 0] | 0);l = k; return } case 7: case 6: { l = k; return } default: { m = d[i >> 0] | 0;c[j >> 2] = c[g >> 2];c[j + 4 >> 2] = m;cg(35448, j);l = k; return } } } function Ch(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 4 >> 0] = a[g >> 0] | 0; l = e; return } function Dh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i; g = i + 5 | 0; f = i + 4 | 0; c[h >> 2] = b; a[g >> 0] = e; a[g >> 0] = (d[g >> 0] | 0) & -97; a[f >> 0] = (d[(c[h >> 2] | 0) + 6 >> 0] | 0) ^ (d[g >> 0] | 0); a[(c[h >> 2] | 0) + 6 >> 0] = a[g >> 0] | 0; switch (c[c[h >> 2] >> 2] | 0) { case 1: { if (!((d[f >> 0] | 0) & (d[g >> 0] | 0) & 4)) { l = i; return } Nh(c[h >> 2] | 0);l = i; return } case 4: { if ((d[f >> 0] | 0) & (d[g >> 0] | 0) & 16 | 0) { if ((c[(c[h >> 2] | 0) + 16 >> 2] | 0) >>> 0 < (c[(c[h >> 2] | 0) + 20 >> 2] | 0) >>> 0) { a[(c[h >> 2] | 0) + 24 + (c[(c[h >> 2] | 0) + 16 >> 2] | 0) >> 0] = a[(c[h >> 2] | 0) + 4 >> 0] | 0; e = (c[h >> 2] | 0) + 16 | 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((c[(c[h >> 2] | 0) + 16 >> 2] | 0) == 1) Oh(c[h >> 2] | 0, a[(c[h >> 2] | 0) + 24 >> 0] | 0); e = (c[h >> 2] | 0) + 9 | 0; a[e >> 0] = (d[e >> 0] | 0) & -33 } if (!((d[f >> 0] | 0) & ~(d[g >> 0] | 0) & 16)) { l = i; return } f = c[h >> 2] | 0; if ((c[(c[h >> 2] | 0) + 16 >> 2] | 0) >>> 0 < (c[(c[h >> 2] | 0) + 20 >> 2] | 0) >>> 0) { h = f + 9 | 0; a[h >> 0] = d[h >> 0] | 0 | 32; l = i; return } b = c[h >> 2] | 0; if (c[f + 68 >> 2] | 0) { Pb[c[b + 68 >> 2] & 511](c[h >> 2] | 0); l = i; return } else { zh(b, 2); l = i; return } } case 5: { if ((d[f >> 0] | 0) & (d[g >> 0] | 0) & 16 | 0) { e = (c[h >> 2] | 0) + 9 | 0; a[e >> 0] = (d[e >> 0] | 0) & -33 } if (!((d[f >> 0] | 0) & ~(d[g >> 0] | 0) & 16)) { l = i; return } f = (c[h >> 2] | 0) + 40 | 0;c[f >> 2] = (c[f >> 2] | 0) + 1;f = c[h >> 2] | 0; if ((c[(c[h >> 2] | 0) + 40 >> 2] | 0) >>> 0 < (c[(c[h >> 2] | 0) + 44 >> 2] | 0) >>> 0) { a[(c[h >> 2] | 0) + 5 >> 0] = a[(c[f + 52 >> 2] | 0) + (c[(c[h >> 2] | 0) + 40 >> 2] | 0) >> 0] | 0; h = (c[h >> 2] | 0) + 9 | 0; a[h >> 0] = d[h >> 0] | 0 | 32; l = i; return } else { zh(f, 0); l = i; return } } case 6: { if ((d[f >> 0] | 0) & (d[g >> 0] | 0) & 16 | 0) { if ((c[(c[h >> 2] | 0) + 40 >> 2] | 0) >>> 0 < (c[(c[h >> 2] | 0) + 44 >> 2] | 0) >>> 0) { a[(c[(c[h >> 2] | 0) + 52 >> 2] | 0) + (c[(c[h >> 2] | 0) + 40 >> 2] | 0) >> 0] = a[(c[h >> 2] | 0) + 4 >> 0] | 0; e = (c[h >> 2] | 0) + 40 | 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } e = (c[h >> 2] | 0) + 9 | 0; a[e >> 0] = (d[e >> 0] | 0) & -33 } if (!((d[f >> 0] | 0) & ~(d[g >> 0] | 0) & 16)) { l = i; return } f = c[h >> 2] | 0; if ((c[(c[h >> 2] | 0) + 40 >> 2] | 0) >>> 0 >= (c[(c[h >> 2] | 0) + 44 >> 2] | 0) >>> 0) { zh(f, 2); l = i; return } else { h = f + 9 | 0; a[h >> 0] = d[h >> 0] | 0 | 32; l = i; return } } case 7: { if ((d[f >> 0] | 0) & (d[g >> 0] | 0) & 16 | 0) { e = (c[h >> 2] | 0) + 9 | 0; a[e >> 0] = (d[e >> 0] | 0) & -33 } if (!((d[f >> 0] | 0) & ~(d[g >> 0] | 0) & 16)) { l = i; return } Ph(c[h >> 2] | 0, 0);l = i; return } case 8: { if ((d[f >> 0] | 0) & (d[g >> 0] | 0) & 16 | 0) { e = (c[h >> 2] | 0) + 9 | 0; a[e >> 0] = (d[e >> 0] | 0) & -33 } if (!((d[f >> 0] | 0) & ~(d[g >> 0] | 0) & 16)) { l = i; return } Mh(c[h >> 2] | 0);l = i; return } default: { l = i; return } } } function Eh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i; h = i + 5 | 0; f = i + 4 | 0; c[g >> 2] = b; a[h >> 0] = e; a[f >> 0] = (d[(c[g >> 2] | 0) + 7 >> 0] | 0) ^ (d[h >> 0] | 0); a[(c[g >> 2] | 0) + 7 >> 0] = a[h >> 0] | 0; a: do switch (c[c[g >> 2] >> 2] | 0) { case 0: { if ((d[f >> 0] | 0) & (d[h >> 0] | 0) & 1 | 0) Ih(c[g >> 2] | 0); break } case 2: { if ((d[f >> 0] | 0) & ~(d[h >> 0] | 0) & 1 | 0) { Jh(c[g >> 2] | 0, a[(c[g >> 2] | 0) + 4 >> 0] | 0); e = (c[g >> 2] | 0) + 6 | 0; a[e >> 0] = (d[e >> 0] | 0) & -9; e = (Kh(c[g >> 2] | 0) | 0) != 0; b = c[g >> 2] | 0; if (e) { Lh(b); yh(c[g >> 2] | 0, 1); break a } else { Mh(b); break a } } break } case 5: { if ((d[f >> 0] | 0) & (d[h >> 0] | 0) & 2 | 0 ? (c[(c[g >> 2] | 0) + 40 >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 44 >> 2] | 0) >>> 0 : 0) { e = (c[g >> 2] | 0) + 11 | 0; a[e >> 0] = d[e >> 0] | 0 | 64 } break } case 6: { if ((d[f >> 0] | 0) & (d[h >> 0] | 0) & 2 | 0 ? (c[(c[g >> 2] | 0) + 40 >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 44 >> 2] | 0) >>> 0 : 0) { e = (c[g >> 2] | 0) + 11 | 0; a[e >> 0] = d[e >> 0] | 0 | 64 } break } default: {} } while (0); if (!((d[f >> 0] | 0) & ~(d[h >> 0] | 0) & 2)) { l = i; return } h = (c[g >> 2] | 0) + 11 | 0; a[h >> 0] = (d[h >> 0] | 0) & -65; l = i; return } function Fh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; f = g; h = g + 5 | 0; i = g + 4 | 0; c[f >> 2] = b; a[h >> 0] = e; a[i >> 0] = (d[(c[f >> 2] | 0) + 8 >> 0] | 0) ^ (d[h >> 0] | 0); a[(c[f >> 2] | 0) + 8 >> 0] = a[h >> 0] | 0; if (!((d[i >> 0] | 0) & (d[h >> 0] | 0) & 2)) { l = g; return } if ((c[c[f >> 2] >> 2] | 0) == 5) zh(c[f >> 2] | 0, 0); if ((c[c[f >> 2] >> 2] | 0) != 6) { l = g; return } zh(c[f >> 2] | 0, 0); l = g; return } function Gh(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 10 >> 0] = a[g >> 0] | 0; l = e; return } function Hh(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 4 | 0; c[f >> 2] = b; a[e >> 0] = d; if ((c[c[f >> 2] >> 2] | 0) != 6) { l = g; return } if ((c[(c[f >> 2] | 0) + 40 >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 44 >> 2] | 0) >>> 0) { l = g; return } a[(c[(c[f >> 2] | 0) + 52 >> 2] | 0) + (c[(c[f >> 2] | 0) + 40 >> 2] | 0) >> 0] = a[e >> 0] | 0; e = (c[f >> 2] | 0) + 40 | 0; c[e >> 2] = (c[e >> 2] | 0) + 1; if ((c[(c[f >> 2] | 0) + 40 >> 2] | 0) >>> 0 < (c[(c[f >> 2] | 0) + 44 >> 2] | 0) >>> 0) { l = g; return } b = c[f >> 2] | 0; if (c[(c[f >> 2] | 0) + 72 >> 2] | 0) { Pb[c[b + 72 >> 2] & 511](c[f >> 2] | 0); l = g; return } else { zh(b, 2); l = g; return } } function Ih(b) { b = b | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; c[c[f >> 2] >> 2] = 1; a[(c[f >> 2] | 0) + 5 >> 0] = a[(c[f >> 2] | 0) + 4 >> 0] | 0; b = (c[f >> 2] | 0) + 6 | 0; a[b >> 0] = d[b >> 0] | 0 | 64; l = e; return } function Jh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; f = i + 8 | 0; g = i; c[h >> 2] = b; a[f >> 0] = e; a[f >> 0] = (d[f >> 0] | 0) & 127; c[g >> 2] = 0; while (1) { if (!(d[f >> 0] | 0)) { e = 5; break } if ((d[f >> 0] | 0) & 1 | 0) { e = 5; break } c[g >> 2] = (c[g >> 2] | 0) + 1; a[f >> 0] = (d[f >> 0] | 0) >> 1 } if ((e | 0) == 5) { c[(c[h >> 2] | 0) + 56 >> 2] = c[g >> 2]; l = i; return } } function Kh(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; f = g + 8 | 0; b = g + 4 | 0; d = g; c[f >> 2] = a; c[b >> 2] = (c[f >> 2] | 0) + 88 + ((c[(c[f >> 2] | 0) + 56 >> 2] & 7) << 5); if (c[c[b >> 2] >> 2] | 0 ? (c[(c[b >> 2] | 0) + 4 >> 2] | 0) != 65535 : 0) { c[d >> 2] = fz(c[(c[f >> 2] | 0) + 344 >> 2] | 0, c[(c[b >> 2] | 0) + 4 >> 2] | 0) | 0; c[e >> 2] = c[d >> 2]; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } function Lh(b) { b = b | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; c[c[f >> 2] >> 2] = 4; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 64; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 8; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -5; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -17; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 32; c[(c[f >> 2] | 0) + 16 >> 2] = 0; c[(c[f >> 2] | 0) + 20 >> 2] = 16; l = e; return } function Mh(b) { b = b | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; c[c[f >> 2] >> 2] = 0; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -65; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -9; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -17; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -5; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -33; l = e; return } function Nh(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 2; l = b; return } function Oh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i; g = i + 4 | 0; f = i + 8 | 0; c[g >> 2] = b; a[f >> 0] = e; c[(c[g >> 2] | 0) + 68 >> 2] = 0; c[(c[g >> 2] | 0) + 72 >> 2] = 0; do switch (d[f >> 0] | 0 | 0) { case 0: { Rh(c[g >> 2] | 0, 6, 220); break } case 3: { Rh(c[g >> 2] | 0, 6, 221); break } case 4: { Rh(c[g >> 2] | 0, 6, 222); break } case 8: { Rh(c[g >> 2] | 0, 6, 223); break } case 10: { Rh(c[g >> 2] | 0, 6, 224); break } case 18: { Rh(c[g >> 2] | 0, 6, 225); break } case 21: { Rh(c[g >> 2] | 0, 6, 226); break } case 26: { Rh(c[g >> 2] | 0, 6, 227); break } case 27: { Rh(c[g >> 2] | 0, 6, 228); break } case 37: { Rh(c[g >> 2] | 0, 10, 229); break } case 40: { Rh(c[g >> 2] | 0, 10, 230); break } case 42: { Rh(c[g >> 2] | 0, 10, 231); break } case 47: { Rh(c[g >> 2] | 0, 10, 232); break } case 60: { Rh(c[g >> 2] | 0, 6, 233); break } default: { c[h >> 2] = d[f >> 0];cg(35477, h);zh(c[g >> 2] | 0, 2) } } while (0); l = i; return } function Ph(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; g = f; h = f + 4 | 0; c[g >> 2] = b; a[h >> 0] = e; c[c[g >> 2] >> 2] = 8; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 64; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 8; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 4; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 16; e = (c[g >> 2] | 0) + 9 | 0; a[e >> 0] = d[e >> 0] | 0 | 32; a[(c[g >> 2] | 0) + 5 >> 0] = a[h >> 0] | 0; l = f; return } function Qh(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; zh(c[d >> 2] | 0, 0); l = b; return } function Rh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 20 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 68 >> 2] = c[g >> 2]; l = e; return } function Sh(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f; c[e >> 2] = b; b = c[(c[e >> 2] | 0) + 52 >> 2] | 0; d = b + 13 | 0; do { a[b >> 0] = 0; b = b + 1 | 0 } while ((b | 0) < (d | 0)); a[c[(c[e >> 2] | 0) + 52 >> 2] >> 0] = -16; c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = 13; di(c[e >> 2] | 0); l = f; return } function Th(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; zh(c[d >> 2] | 0, 0); l = b; return } function Uh(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; b = l; l = l + 16 | 0; g = b + 8 | 0; f = b + 4 | 0; e = b; c[g >> 2] = a; c[f >> 2] = (d[(c[g >> 2] | 0) + 24 + 1 >> 0] | 0) & 31; c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 2 >> 0] | 0); c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 3 >> 0] | 0); a = d[(c[g >> 2] | 0) + 24 + 4 >> 0] | 0; c[e >> 2] = a; c[e >> 2] = (c[e >> 2] | 0) == 0 ? 256 : a; ii(c[g >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0); l = b; return } function Vh(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 8 | 0; b = g + 4 | 0; c[e >> 2] = a; a = d[(c[e >> 2] | 0) + 24 + 4 >> 0] | 0; c[b >> 2] = a; c[b >> 2] = (c[b >> 2] | 0) == 0 ? 256 : a; if (ei(c[e >> 2] | 0, c[b >> 2] << 9) | 0) { c[f >> 2] = c[b >> 2]; cg(35507, f); zh(c[e >> 2] | 0, 2); l = g; return } else { c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = c[b >> 2] << 9; c[(c[e >> 2] | 0) + 72 >> 2] = 234; gi(c[e >> 2] | 0); l = g; return } } function Wh(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; e = h; c[g >> 2] = b; c[e >> 2] = ji(c[g >> 2] | 0) | 0; TQ(c[(c[g >> 2] | 0) + 52 >> 2] | 0, 0, 256) | 0; if (c[e >> 2] | 0) { f = (c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 8 | 0; b = (c[e >> 2] | 0) + 8 | 0; a[f >> 0] = a[b >> 0] | 0; a[f + 1 >> 0] = a[b + 1 >> 0] | 0; a[f + 2 >> 0] = a[b + 2 >> 0] | 0; a[f + 3 >> 0] = a[b + 3 >> 0] | 0; a[f + 4 >> 0] = a[b + 4 >> 0] | 0; a[f + 5 >> 0] = a[b + 5 >> 0] | 0; a[f + 6 >> 0] = a[b + 6 >> 0] | 0; a[f + 7 >> 0] = a[b + 7 >> 0] | 0; f = (c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 16 | 0; b = (c[e >> 2] | 0) + 16 | 0; e = f + 16 | 0; do { a[f >> 0] = a[b >> 0] | 0; f = f + 1 | 0; b = b + 1 | 0 } while ((f | 0) < (e | 0)) } a[(c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 4 >> 0] = 32; c[(c[g >> 2] | 0) + 40 >> 2] = 0; if ((d[(c[g >> 2] | 0) + 24 + 4 >> 0] | 0 | 0) >= 36) { e = 36; f = c[g >> 2] | 0; f = f + 44 | 0; c[f >> 2] = e; g = c[g >> 2] | 0; di(g); l = h; return } e = d[(c[g >> 2] | 0) + 24 + 4 >> 0] | 0; f = c[g >> 2] | 0; f = f + 44 | 0; c[f >> 2] = e; g = c[g >> 2] | 0; di(g); l = h; return } function Xh(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[(c[d >> 2] | 0) + 40 >> 2] = 0; c[(c[d >> 2] | 0) + 44 >> 2] = 0; gi(c[d >> 2] | 0); l = b; return } function Yh(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 8 | 0; e = h + 4 | 0; c[g >> 2] = b; c[e >> 2] = Kh(c[g >> 2] | 0) | 0; b = c[g >> 2] | 0; if (!(c[e >> 2] | 0)) { zh(b, 2); l = h; return } TQ(c[b + 52 >> 2] | 0, 0, 512) | 0; c[(c[g >> 2] | 0) + 40 >> 2] = 0; c[(c[g >> 2] | 0) + 44 >> 2] = 0; switch ((d[(c[g >> 2] | 0) + 24 + 2 >> 0] | 0) & 63 | 0) { case 1: { a[c[(c[g >> 2] | 0) + 52 >> 2] >> 0] = 1;a[(c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 1 >> 0] = 10;c[(c[g >> 2] | 0) + 44 >> 2] = 12; break } case 3: { a[c[(c[g >> 2] | 0) + 52 >> 2] >> 0] = 3;a[(c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 1 >> 0] = 22;c[(c[g >> 2] | 0) + 44 >> 2] = 24; break } case 4: { a[c[(c[g >> 2] | 0) + 52 >> 2] >> 0] = 4;a[(c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 1 >> 0] = 22;a[(c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 2 >> 0] = 0;Nx(c[(c[g >> 2] | 0) + 52 >> 2] | 0, 3, c[(c[e >> 2] | 0) + 32 >> 2] & 65535);a[(c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 5 >> 0] = c[(c[e >> 2] | 0) + 36 >> 2];Nx(c[(c[g >> 2] | 0) + 52 >> 2] | 0, 20, 3600);c[(c[g >> 2] | 0) + 44 >> 2] = 32; break } case 48: { a[c[(c[g >> 2] | 0) + 52 >> 2] >> 0] = 48;a[(c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 1 >> 0] = 33;NP((c[(c[g >> 2] | 0) + 52 >> 2] | 0) + 14 | 0, 35727) | 0;c[(c[g >> 2] | 0) + 44 >> 2] = 34; break } default: { c[f >> 2] = d[(c[g >> 2] | 0) + 24 + 2 >> 0];cg(35747, f) } } b = c[g >> 2] | 0; if ((c[(c[g >> 2] | 0) + 44 >> 2] | 0) >>> 0 > 0) { di(b); l = h; return } else { zh(b, 2); l = h; return } } function Zh(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; b = g + 12 | 0; e = g + 8 | 0; c[b >> 2] = a; switch ((d[(c[b >> 2] | 0) + 24 + 4 >> 0] | 0) & 3 | 0) { case 0: { c[e >> 2] = 35650; break } case 1: { c[e >> 2] = 35661; break } case 2: { c[e >> 2] = 35673; break } case 3: { c[e >> 2] = 35685; break } default: {} } e = c[e >> 2] | 0; c[f >> 2] = c[(c[b >> 2] | 0) + 56 >> 2]; c[f + 4 >> 2] = e; cg(35696, f); zh(c[b >> 2] | 0, 0); l = g; return } function _h(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[e >> 2] = a; c[d >> 2] = Kh(c[e >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { zh(c[e >> 2] | 0, 2); l = f; return } else { c[b >> 2] = Ty(c[d >> 2] | 0) | 0; Ox(c[(c[e >> 2] | 0) + 52 >> 2] | 0, 0, (c[b >> 2] | 0) - 1 | 0); Ox(c[(c[e >> 2] | 0) + 52 >> 2] | 0, 4, 512); c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = 8; di(c[e >> 2] | 0); l = f; return } } function $h(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; b = l; l = l + 16 | 0; g = b + 8 | 0; f = b + 4 | 0; e = b; c[g >> 2] = a; c[f >> 2] = d[(c[g >> 2] | 0) + 24 + 2 >> 0]; c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 3 >> 0] | 0); c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 4 >> 0] | 0); c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 5 >> 0] | 0); c[e >> 2] = d[(c[g >> 2] | 0) + 24 + 7 >> 0]; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 8 >> 0] | 0); ii(c[g >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0); l = b; return } function ai(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 8 | 0; b = g + 4 | 0; c[e >> 2] = a; c[b >> 2] = (d[(c[e >> 2] | 0) + 24 + 7 >> 0] | 0) << 8 | (d[(c[e >> 2] | 0) + 24 + 8 >> 0] | 0); if (ei(c[e >> 2] | 0, c[b >> 2] << 9) | 0) { c[f >> 2] = c[b >> 2]; cg(35507, f); zh(c[e >> 2] | 0, 2); l = g; return } else { c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = c[b >> 2] << 9; c[(c[e >> 2] | 0) + 72 >> 2] = 235; gi(c[e >> 2] | 0); l = g; return } } function bi(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; e = g + 8 | 0; b = g + 4 | 0; h = g; c[f >> 2] = a; c[h >> 2] = Kh(c[f >> 2] | 0) | 0; a = c[f >> 2] | 0; if (!(c[h >> 2] | 0)) { zh(a, 2); l = g; return } else { c[e >> 2] = d[a + 24 + 2 >> 0]; c[e >> 2] = c[e >> 2] << 8 | (d[(c[f >> 2] | 0) + 24 + 3 >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[(c[f >> 2] | 0) + 24 + 4 >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[(c[f >> 2] | 0) + 24 + 5 >> 0] | 0); c[b >> 2] = d[(c[f >> 2] | 0) + 24 + 7 >> 0]; c[b >> 2] = c[b >> 2] << 8 | (d[(c[f >> 2] | 0) + 24 + 8 >> 0] | 0); c[(c[f >> 2] | 0) + 40 >> 2] = 0; c[(c[f >> 2] | 0) + 44 >> 2] = 0; zh(c[f >> 2] | 0, 0); l = g; return } } function ci(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; TQ(c[(c[d >> 2] | 0) + 52 >> 2] | 0, 0, 512) | 0; c[(c[d >> 2] | 0) + 40 >> 2] = 0; c[(c[d >> 2] | 0) + 44 >> 2] = 4; di(c[d >> 2] | 0); l = b; return } function di(b) { b = b | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; c[c[f >> 2] >> 2] = 5; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 64; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -9; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 4; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -17; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 32; a[(c[f >> 2] | 0) + 5 >> 0] = a[(c[(c[f >> 2] | 0) + 52 >> 2] | 0) + (c[(c[f >> 2] | 0) + 40 >> 2] | 0) >> 0] | 0; l = e; return } function ei(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 12 | 0; f = h + 8 | 0; d = h + 4 | 0; g = h; c[f >> 2] = a; c[d >> 2] = b; if ((c[d >> 2] | 0) >>> 0 <= (c[(c[f >> 2] | 0) + 48 >> 2] | 0) >>> 0) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = h; return g | 0 } c[g >> 2] = JQ(c[(c[f >> 2] | 0) + 52 >> 2] | 0, c[d >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[e >> 2] = 1; g = c[e >> 2] | 0; l = h; return g | 0 } else { c[(c[f >> 2] | 0) + 52 >> 2] = c[g >> 2]; c[(c[f >> 2] | 0) + 48 >> 2] = c[d >> 2]; c[e >> 2] = 0; g = c[e >> 2] | 0; l = h; return g | 0 } return 0 } function fi(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; b = l; l = l + 16 | 0; g = b + 8 | 0; f = b + 4 | 0; e = b; c[g >> 2] = a; c[f >> 2] = d[(c[g >> 2] | 0) + 24 + 2 >> 0]; c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 3 >> 0] | 0); c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 4 >> 0] | 0); c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 5 >> 0] | 0); c[e >> 2] = (d[(c[g >> 2] | 0) + 24 + 7 >> 0] | 0) << 8 | (d[(c[g >> 2] | 0) + 24 + 8 >> 0] | 0); hi(c[g >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0); l = b; return } function gi(b) { b = b | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; c[c[f >> 2] >> 2] = 6; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 64; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -9; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -5; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = (d[b >> 0] | 0) & -17; b = (c[f >> 2] | 0) + 9 | 0; a[b >> 0] = d[b >> 0] | 0 | 32; l = e; return } function hi(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j; h = j + 24 | 0; g = j + 20 | 0; e = j + 16 | 0; f = j + 12 | 0; c[h >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[f >> 2] = Kh(c[h >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { zh(c[h >> 2] | 0, 2); l = j; return } if ((c[e >> 2] << 9 | 0) != (c[(c[h >> 2] | 0) + 40 >> 2] | 0)) { a = c[(c[h >> 2] | 0) + 40 >> 2] | 0; c[i >> 2] = c[e >> 2] << 9; c[i + 4 >> 2] = a; cg(35535, i); zh(c[h >> 2] | 0, 2); l = j; return } if (az(c[f >> 2] | 0, c[(c[h >> 2] | 0) + 52 >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0) { cg(35572, j + 8 | 0); zh(c[h >> 2] | 0, 2); l = j; return } else { c[(c[h >> 2] | 0) + 40 >> 2] = 0; c[(c[h >> 2] | 0) + 44 >> 2] = 0; c[(c[h >> 2] | 0) + 72 >> 2] = 0; zh(c[h >> 2] | 0, 0); l = j; return } } function ii(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 8 | 0; i = k; h = k + 28 | 0; g = k + 24 | 0; e = k + 20 | 0; f = k + 16 | 0; c[h >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; c[f >> 2] = Kh(c[h >> 2] | 0) | 0; d = c[h >> 2] | 0; if (!(c[f >> 2] | 0)) { zh(d, 2); l = k; return } if (ei(d, c[e >> 2] << 9) | 0) { c[i >> 2] = c[e >> 2]; cg(35591, i); zh(c[h >> 2] | 0, 2); l = k; return } if (Zy(c[f >> 2] | 0, c[(c[h >> 2] | 0) + 52 >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0) { i = c[e >> 2] | 0; c[j >> 2] = c[g >> 2]; c[j + 4 >> 2] = i; cg(35619, j); zh(c[h >> 2] | 0, 2); l = k; return } else { c[(c[h >> 2] | 0) + 40 >> 2] = 0; c[(c[h >> 2] | 0) + 44 >> 2] = c[e >> 2] << 9; di(c[h >> 2] | 0); l = k; return } } function ji(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; e = f + 4 | 0; b = f; c[e >> 2] = a; c[b >> 2] = c[(c[e >> 2] | 0) + 56 >> 2] & 7; if (c[(c[e >> 2] | 0) + 88 + (c[b >> 2] << 5) >> 2] | 0) { c[d >> 2] = (c[e >> 2] | 0) + 88 + (c[b >> 2] << 5); e = c[d >> 2] | 0; l = f; return e | 0 } else { c[d >> 2] = 0; e = c[d >> 2] | 0; l = f; return e | 0 } return 0 } function ki(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; b = l; l = l + 16 | 0; g = b + 8 | 0; f = b + 4 | 0; e = b; c[g >> 2] = a; c[f >> 2] = (d[(c[g >> 2] | 0) + 24 + 1 >> 0] | 0) & 31; c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 2 >> 0] | 0); c[f >> 2] = c[f >> 2] << 8 | (d[(c[g >> 2] | 0) + 24 + 3 >> 0] | 0); a = d[(c[g >> 2] | 0) + 24 + 4 >> 0] | 0; c[e >> 2] = a; c[e >> 2] = (c[e >> 2] | 0) == 0 ? 256 : a; hi(c[g >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0); l = b; return } function li(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 8 | 0; g = f + 4 | 0; h = f; c[i >> 2] = a; c[g >> 2] = d; b[f + 12 >> 1] = e; c[h >> 2] = c[i >> 2]; c[g >> 2] = (c[g >> 2] & c[(c[h >> 2] | 0) + 60 >> 2]) >>> (c[(c[h >> 2] | 0) + 64 >> 2] | 0); l = f; return } function mi(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; c[c[e >> 2] >> 2] = 0; a[(c[e >> 2] | 0) + 4 >> 0] = 0; a[(c[e >> 2] | 0) + 5 >> 0] = 0; a[(c[e >> 2] | 0) + 6 >> 0] = 0; a[(c[e >> 2] | 0) + 7 >> 0] = 0; a[(c[e >> 2] | 0) + 9 >> 0] = 0; a[(c[e >> 2] | 0) + 10 >> 0] = 0; a[(c[e >> 2] | 0) + 11 >> 0] = 8; a[(c[e >> 2] | 0) + 12 >> 0] = 0; c[(c[e >> 2] | 0) + 16 >> 2] = 0; c[(c[e >> 2] | 0) + 20 >> 2] = 0; c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = 0; c[(c[e >> 2] | 0) + 68 >> 2] = 0; c[(c[e >> 2] | 0) + 72 >> 2] = 0; l = d; return } function ni(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 0; c[(c[d >> 2] | 0) + 4 >> 2] = 0; c[(c[d >> 2] | 0) + 8 >> 2] = 0; c[(c[d >> 2] | 0) + 12 >> 2] = 0; c[(c[d >> 2] | 0) + 20 >> 2] = 0; c[(c[d >> 2] | 0) + 24 >> 2] = 0; c[(c[d >> 2] | 0) + 16 >> 2] = 0; c[(c[d >> 2] | 0) + 28 >> 2] = 0; c[(c[d >> 2] | 0) + 32 >> 2] = 0; c[(c[d >> 2] | 0) + 36 >> 2] = 0; c[(c[d >> 2] | 0) + 40 >> 2] = 0; c[(c[d >> 2] | 0) + 300 >> 2] = 0; c[(c[d >> 2] | 0) + 304 >> 2] = 0; c[(c[d >> 2] | 0) + 564 >> 2] = 0; l = b; return } function oi(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; c[d >> 2] = b; if (c[(c[f >> 2] | 0) + 564 >> 2] | 0) lA(c[(c[f >> 2] | 0) + 564 >> 2] | 0); a = dA(c[d >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 564 >> 2] = a; if (!(c[(c[f >> 2] | 0) + 564 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function pi(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 12 | 0; h = e + 8 | 0; d = e + 4 | 0; f = e; c[g >> 2] = a; c[h >> 2] = b; c[f >> 2] = dL(35791, c[h >> 2] | 0) | 0; c[d >> 2] = oi(c[g >> 2] | 0, c[f >> 2] | 0) | 0; IQ(c[f >> 2] | 0); l = e; return c[d >> 2] | 0 } function qi(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[c[f >> 2] >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 4 >> 2] = c[g >> 2]; lw(c[h >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0, 165); mw(c[h >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0, 166); nw(c[h >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0, 167); ow(c[h >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0, 1); mx(c[c[f >> 2] >> 2] | 0, c[(c[f >> 2] | 0) + 4 >> 2] | 0, 1); l = e; return } function ri(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; a[e + 4 >> 0] = d; xi(c[f >> 2] | 0); l = e; return } function si(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; a[e + 4 >> 0] = d; vi(c[f >> 2] | 0); l = e; return } function ti(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; j = i + 8 | 0; h = i + 12 | 0; f = i + 4 | 0; g = i; c[j >> 2] = b; a[h >> 0] = e; c[g >> 2] = c[j >> 2]; if ((c[(c[g >> 2] | 0) + 32 >> 2] | 0) == (d[h >> 0] | 0 | 0)) { l = i; return } c[(c[g >> 2] | 0) + 32 >> 2] = (d[h >> 0] | 0 | 0) != 0 & 1; c[f >> 2] = 1; c[f >> 2] = c[f >> 2] | (c[(c[g >> 2] | 0) + 32 >> 2] | 0 ? 2 : 0); rA(c[(c[g >> 2] | 0) + 564 >> 2] | 0, d[h >> 0] | 0) | 0; l = i; return } function ui(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, m = 0, n = 0; g = l; l = l + 32 | 0; n = g + 20 | 0; k = g + 16 | 0; i = g + 12 | 0; j = g + 8 | 0; h = g + 4 | 0; m = g; c[n >> 2] = a; c[k >> 2] = b; c[i >> 2] = d; c[j >> 2] = e; c[h >> 2] = f; c[m >> 2] = c[n >> 2]; c[h >> 2] = ((c[h >> 2] | 0) >>> 0) / 2 | 0; c[(c[m >> 2] | 0) + 12 >> 2] = c[k >> 2]; c[(c[m >> 2] | 0) + 16 >> 2] = c[i >> 2]; c[(c[m >> 2] | 0) + 20 >> 2] = c[j >> 2]; c[(c[m >> 2] | 0) + 24 >> 2] = c[h >> 2]; sA(c[(c[m >> 2] | 0) + 564 >> 2] | 0, c[k >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0) | 0; l = g; return } function vi(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f; c[d >> 2] = b; wi(c[d >> 2] | 0); if ((c[(c[d >> 2] | 0) + 304 >> 2] | 0) >>> 0 > 0) { l = f; return } while (1) { g = (qx(c[c[d >> 2] >> 2] | 0, c[(c[d >> 2] | 0) + 4 >> 2] | 0) | 0) != 0; b = c[d >> 2] | 0; if (g) break; g = ox(c[b >> 2] | 0, c[(c[d >> 2] | 0) + 4 >> 2] | 0) | 0; a[(c[d >> 2] | 0) + 308 + ((c[(c[d >> 2] | 0) + 300 >> 2] | 0) + (c[(c[d >> 2] | 0) + 304 >> 2] | 0)) >> 0] = g; g = (c[d >> 2] | 0) + 304 | 0; c[g >> 2] = (c[g >> 2] | 0) + 1; if (((c[(c[d >> 2] | 0) + 300 >> 2] | 0) + (c[(c[d >> 2] | 0) + 304 >> 2] | 0) | 0) >>> 0 < 256) continue; wi(c[d >> 2] | 0); if ((c[(c[d >> 2] | 0) + 304 >> 2] | 0) >>> 0 > 0) { e = 6; break } } if ((e | 0) == 6) { l = f; return } wi(b); l = f; return } function wi(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; if (!(c[(c[d >> 2] | 0) + 304 >> 2] | 0)) { l = e; return } c[b >> 2] = oA(c[(c[d >> 2] | 0) + 564 >> 2] | 0, (c[d >> 2] | 0) + 308 + (c[(c[d >> 2] | 0) + 300 >> 2] | 0) | 0, c[(c[d >> 2] | 0) + 304 >> 2] | 0) | 0; a = (c[d >> 2] | 0) + 300 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[b >> 2] | 0); a = (c[d >> 2] | 0) + 304 | 0; c[a >> 2] = (c[a >> 2] | 0) - (c[b >> 2] | 0); if (c[(c[d >> 2] | 0) + 304 >> 2] | 0) { l = e; return } c[(c[d >> 2] | 0) + 300 >> 2] = 0; l = e; return } function xi(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; while (1) { if (px(c[c[d >> 2] >> 2] | 0, c[(c[d >> 2] | 0) + 4 >> 2] | 0) | 0) { b = 7; break } if (!(c[(c[d >> 2] | 0) + 40 >> 2] | 0)) yi(c[d >> 2] | 0); if (!(c[(c[d >> 2] | 0) + 40 >> 2] | 0)) { b = 7; break } nx(c[c[d >> 2] >> 2] | 0, c[(c[d >> 2] | 0) + 4 >> 2] | 0, a[(c[d >> 2] | 0) + 44 + (c[(c[d >> 2] | 0) + 36 >> 2] | 0) >> 0] | 0); b = (c[d >> 2] | 0) + 36 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; b = (c[d >> 2] | 0) + 40 | 0; c[b >> 2] = (c[b >> 2] | 0) - 1 } if ((b | 0) == 7) { l = e; return } } function yi(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[e >> 2] = a; if (!(c[(c[e >> 2] | 0) + 40 >> 2] | 0)) c[(c[e >> 2] | 0) + 36 >> 2] = 0; c[d >> 2] = (c[(c[e >> 2] | 0) + 36 >> 2] | 0) + (c[(c[e >> 2] | 0) + 40 >> 2] | 0); c[b >> 2] = 256 - (c[d >> 2] | 0); if (!(c[b >> 2] | 0)) { l = f; return } c[b >> 2] = mA(c[(c[e >> 2] | 0) + 564 >> 2] | 0, (c[e >> 2] | 0) + 44 + (c[d >> 2] | 0) | 0, c[b >> 2] | 0) | 0; e = (c[e >> 2] | 0) + 40 | 0; c[e >> 2] = (c[e >> 2] | 0) + (c[b >> 2] | 0); l = f; return } function zi(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; vi(c[e >> 2] | 0); xi(c[e >> 2] | 0); Ai(c[e >> 2] | 0); a = (c[e >> 2] | 0) + 8 | 0; c[a >> 2] = (c[a >> 2] | 0) + ((c[f >> 2] | 0) * 15 | 0); tx(c[c[e >> 2] >> 2] | 0, ((c[(c[e >> 2] | 0) + 8 >> 2] | 0) >>> 0) / 32 | 0); a = (c[e >> 2] | 0) + 8 | 0; c[a >> 2] = c[a >> 2] & 31; l = d; return } function Ai(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; mx(c[c[d >> 2] >> 2] | 0, c[(c[d >> 2] | 0) + 4 >> 2] | 0, 1); l = b; return } function Bi(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; h = g + 4 | 0; e = g; c[f >> 2] = b; c[h >> 2] = d; a[c[f >> 2] >> 0] = 0; a[(c[f >> 2] | 0) + 1 >> 0] = 0; a[(c[f >> 2] | 0) + 2 >> 0] = (c[h >> 2] | 0) != 0; c[(c[f >> 2] | 0) + 4 >> 2] = 0; c[(c[f >> 2] | 0) + 8 >> 2] = 0; c[(c[f >> 2] | 0) + 44 >> 2] = 0; c[(c[f >> 2] | 0) + 48 >> 2] = 0; c[(c[f >> 2] | 0) + 48 + 4 >> 2] = 0; c[(c[f >> 2] | 0) + 56 >> 2] = 0; a[(c[f >> 2] | 0) + 60 >> 0] = 0; c[(c[f >> 2] | 0) + 64 >> 2] = 0; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= 4) break; c[(c[f >> 2] | 0) + 12 + (c[e >> 2] << 2) >> 2] = 0; c[(c[f >> 2] | 0) + 28 + (c[e >> 2] << 2) >> 2] = 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } l = g; return } function Ci(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 4 >> 2] = c[f >> 2]; l = d; return } function Di(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 8 >> 2] = c[f >> 2]; l = d; return } function Ei(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 32 | 0; f = g + 24 | 0; e = g + 8 | 0; d = g + 28 | 0; c[d >> 2] = b; if (!(a[(c[d >> 2] | 0) + 2 >> 0] | 0)) { l = g; return } if (a[(c[d >> 2] | 0) + 1 >> 0] | 0) { l = g; return } a[(c[d >> 2] | 0) + 1 >> 0] = 1; c[(c[d >> 2] | 0) + 132 >> 2] = 0; c[(c[d >> 2] | 0) + 136 >> 2] = 0; b = Fi(c[d >> 2] | 0, 16252928) | 0; c[(c[d >> 2] | 0) + 132 >> 2] = b; if (!(c[(c[d >> 2] | 0) + 132 >> 2] | 0)) { FK(0, 35803, 35809, g); l = g; return } c[e >> 2] = c[(c[d >> 2] | 0) + 132 >> 2]; FK(2, 35803, 35838, e); e = Gi(c[d >> 2] | 0, 4194304, 1048576) | 0; c[(c[d >> 2] | 0) + 136 >> 2] = e; if (!(c[(c[d >> 2] | 0) + 136 >> 2] | 0)) { FK(0, 35803, 35868, g + 16 | 0); l = g; return } else { c[f >> 2] = c[(c[d >> 2] | 0) + 136 >> 2]; FK(2, 35803, 35891, f); Hi(c[d >> 2] | 0); l = g; return } } function Fi(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; g = h + 8 | 0; d = h + 4 | 0; e = h; c[g >> 2] = a; c[d >> 2] = b; if (($x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[d >> 2] | 0) | 0) != 1346585944) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } c[e >> 2] = $x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 8 | 0) | 0; if ((c[e >> 2] | 0) >>> 0 < 4) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } else { a = c[d >> 2] | 0; a = a + ($x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 16 | 0) | 0) | 0; c[(c[g >> 2] | 0) + 44 >> 2] = a; a = c[d >> 2] | 0; a = a + ($x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 20 | 0) | 0) | 0; c[(c[g >> 2] | 0) + 48 >> 2] = a; a = c[d >> 2] | 0; a = a + ($x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 24 | 0) | 0) | 0; c[(c[g >> 2] | 0) + 48 + 4 >> 2] = a; g = $x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 12 | 0) | 0; c[d >> 2] = (c[d >> 2] | 0) + g; c[f >> 2] = c[d >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function Gi(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; g = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; i = j; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) { b = 7; break } c[e >> 2] = (c[e >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) - 1; if (((_x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (c[e >> 2] | 0) - 1 | 0) | 0) & 65535 | 0) != 1326) continue; if (($x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, (c[e >> 2] | 0) + 1 | 0) | 0) != 1399811705) continue; c[i >> 2] = (c[e >> 2] | 0) - 19; if (((_x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[i >> 2] | 0) | 0) & 65535 | 0) == 20224) { b = 6; break } } if ((b | 0) == 6) { c[h >> 2] = c[i >> 2]; i = c[h >> 2] | 0; l = j; return i | 0 } else if ((b | 0) == 7) { c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function Hi(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; m = n + 28 | 0; h = n + 24 | 0; i = n + 20 | 0; k = n + 16 | 0; g = n + 12 | 0; j = n + 8 | 0; f = n + 4 | 0; e = n; c[m >> 2] = b; if (!(c[(c[m >> 2] | 0) + 136 >> 2] | 0)) { l = n; return } if (!(c[(c[m >> 2] | 0) + 132 >> 2] | 0)) { l = n; return } c[e >> 2] = (c[m >> 2] | 0) + 140; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 5) break; c[k >> 2] = (_x(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[(c[m >> 2] | 0) + 136 >> 2] | 0) + 8 + (c[h >> 2] << 1) | 0) | 0) & 65535; c[j >> 2] = (c[(c[m >> 2] | 0) + 136 >> 2] | 0) + (c[k >> 2] | 0); c[g >> 2] = (_x(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[(c[m >> 2] | 0) + 132 >> 2] | 0) + 8 + (c[h >> 2] << 1) | 0) | 0) & 65535; c[f >> 2] = (c[(c[m >> 2] | 0) + 132 >> 2] | 0) + (c[g >> 2] | 0); c[i >> 2] = 0; while (1) { b = c[(c[m >> 2] | 0) + 4 >> 2] | 0; d = c[j >> 2] | 0; if ((c[i >> 2] | 0) >>> 0 >= 6) break; b = Zx(b, d + (c[i >> 2] | 0) | 0) | 0; d = c[e >> 2] | 0; c[e >> 2] = d + 1; a[d >> 0] = b; c[i >> 2] = (c[i >> 2] | 0) + 1 } ay(b, d + 0 | 0, 78); ay(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[j >> 2] | 0) + 1 | 0, -7); ay(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[j >> 2] | 0) + 2 | 0, (c[f >> 2] | 0) >>> 24 & 255); ay(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[j >> 2] | 0) + 3 | 0, (c[f >> 2] | 0) >>> 16 & 255); ay(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[j >> 2] | 0) + 4 | 0, (c[f >> 2] | 0) >>> 8 & 255); ay(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[j >> 2] | 0) + 5 | 0, c[f >> 2] & 255); c[h >> 2] = (c[h >> 2] | 0) + 1 } l = n; return } function Ii(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[g >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; if ((c[f >> 2] | 0) >>> 0 >= 4) { l = h; return } c[(c[g >> 2] | 0) + 12 + (c[f >> 2] << 2) >> 2] = c[e >> 2]; c[(c[g >> 2] | 0) + 28 + (c[f >> 2] << 2) >> 2] = c[e >> 2]; l = h; return } function Ji(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; f = j; h = j + 16 | 0; e = j + 12 | 0; i = j + 8 | 0; g = j + 4 | 0; c[h >> 2] = b; c[e >> 2] = d; if (!(a[c[h >> 2] >> 0] | 0)) { l = j; return } if ((c[e >> 2] | 0) >>> 0 < 1 | (c[e >> 2] | 0) >>> 0 > 4) { l = j; return } c[g >> 2] = fz(c[(c[h >> 2] | 0) + 8 >> 2] | 0, c[e >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { l = j; return } c[i >> 2] = Ki(c[h >> 2] | 0, c[e >> 2] | 0) | 0; if ((Zx(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[i >> 2] | 0) + 3 | 0) | 0) & 255 | 0) { l = j; return } c[f >> 2] = c[e >> 2]; FK(2, 35803, 35915, f); by(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[i >> 2] | 0) + 3 | 0, 1); f = (Ty(c[g >> 2] | 0) | 0) >>> 0 < 1600; d = c[(c[h >> 2] | 0) + 4 >> 2] | 0; e = (c[i >> 2] | 0) + 18 | 0; if (f) by(d, e, 0); else by(d, e, -1); by(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[i >> 2] | 0) + 19 | 0, -1); g = (Ny(c[g >> 2] | 0) | 0) != 0; e = c[(c[h >> 2] | 0) + 4 >> 2] | 0; d = (c[i >> 2] | 0) + 2 | 0; if (g) { by(e, d, -1); l = j; return } else { by(e, d, 0); l = j; return } } function Ki(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; g = f + 8 | 0; d = f + 4 | 0; e = f; c[g >> 2] = a; c[d >> 2] = b; c[e >> 2] = $x(c[(c[g >> 2] | 0) + 4 >> 2] | 0, 308) | 0; if (!((c[d >> 2] | 0) >>> 0 >= 1 & (c[d >> 2] | 0) >>> 0 <= 4)) { g = c[e >> 2] | 0; l = f; return g | 0 } c[e >> 2] = (c[e >> 2] | 0) + (8 + ((c[d >> 2] | 0) * 66 | 0)); g = c[e >> 2] | 0; l = f; return g | 0 } function Li(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; g = j + 20 | 0; h = j + 16 | 0; d = j + 12 | 0; f = j + 8 | 0; i = j + 4 | 0; e = j; c[h >> 2] = b; if (!(a[c[h >> 2] >> 0] | 0)) { c[g >> 2] = 0; i = c[g >> 2] | 0; l = j; return i | 0 } c[d >> 2] = 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= 4) break; if ((c[(c[h >> 2] | 0) + 28 + (c[f >> 2] << 2) >> 2] | 0) >>> 0 > 0 ? (b = (c[h >> 2] | 0) + 28 + (c[f >> 2] << 2) | 0, c[b >> 2] = (c[b >> 2] | 0) - 1, (c[(c[h >> 2] | 0) + 28 + (c[f >> 2] << 2) >> 2] | 0) == 0) : 0) Ji(c[h >> 2] | 0, (c[f >> 2] | 0) + 1 | 0); c[e >> 2] = fz(c[(c[h >> 2] | 0) + 8 >> 2] | 0, (c[f >> 2] | 0) + 1 | 0) | 0; if (c[e >> 2] | 0 ? (c[i >> 2] = Ki(c[h >> 2] | 0, (c[f >> 2] | 0) + 1 | 0) | 0, ((Zx(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[i >> 2] | 0) + 3 | 0) | 0) & 255 | 0) == 1) : 0) c[d >> 2] = 1; c[f >> 2] = (c[f >> 2] | 0) + 1 } c[g >> 2] = c[d >> 2]; i = c[g >> 2] | 0; l = j; return i | 0 } function Mi(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; e = f + 4 | 0; g = f; c[e >> 2] = a; c[g >> 2] = b; switch (c[g >> 2] | 0) { case 16: { Ni(c[e >> 2] | 0);c[d >> 2] = 0; break } case 17: { Oi(c[e >> 2] | 0);c[d >> 2] = 0; break } case 18: { Pi(c[e >> 2] | 0);c[d >> 2] = 0; break } case 19: { Qi(c[e >> 2] | 0);c[d >> 2] = 0; break } case 20: { c[d >> 2] = 0; break } default: c[d >> 2] = 1 } l = f; return c[d >> 2] | 0 } function Ni(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; a[c[d >> 2] >> 0] = 1; if (!(Li(c[d >> 2] | 0) | 0)) { l = e; return } c[(c[d >> 2] | 0) + 216 >> 2] = c[(c[d >> 2] | 0) + 44 >> 2]; l = e; return } function Oi(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; e = h; b = h + 16 | 0; f = h + 12 | 0; d = h + 8 | 0; g = h + 4 | 0; c[b >> 2] = a; c[d >> 2] = Ri(c[b >> 2] | 0, 6, 2) | 0; c[g >> 2] = Ri(c[b >> 2] | 0, 22, 2) | 0; a = c[b >> 2] | 0; if ((c[g >> 2] | 0) >>> 0 < 1 | (c[g >> 2] | 0) >>> 0 > 4) { Ui(a, -56, 0); l = h; return } c[f >> 2] = Ki(a, c[g >> 2] | 0) | 0; i = ((Zx(c[(c[b >> 2] | 0) + 4 >> 2] | 0, (c[f >> 2] | 0) + 3 | 0) | 0) & 255 | 0) == 0; a = c[b >> 2] | 0; if (i) { Ui(a, -65, 0); l = h; return } by(c[a + 4 >> 2] | 0, (c[f >> 2] | 0) + 3 | 0, 2); switch (c[d >> 2] & 255 | 0) { case 2: { fj(c[b >> 2] | 0, c[g >> 2] | 0);l = h; return } case 3: { gj(c[b >> 2] | 0, c[g >> 2] | 0);l = h; return } default: { c[e >> 2] = c[d >> 2];cg(36109, e);Ui(c[b >> 2] | 0, 65519, 0);l = h; return } } } function Pi(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f; d = f + 8 | 0; b = f + 4 | 0; c[d >> 2] = a; c[b >> 2] = Ri(c[d >> 2] | 0, 26, 2) | 0; a = c[b >> 2] | 0; a: do if ((a | 0) >= 9) { if ((a | 0) < 22) switch (a | 0) { case 9: { Ui(c[d >> 2] | 0, 65480, 0);l = f; return } case 21: { $i(c[d >> 2] | 0, 0);l = f; return } default: break a } if ((a | 0) < 23) { switch (a | 0) { case 22: break; default: break a } $i(c[d >> 2] | 0, 1); l = f; return } if ((a | 0) < 21315) { switch (a | 0) { case 23: break; default: break a } aj(c[d >> 2] | 0); l = f; return } else { switch (a | 0) { case 21315: break; default: break a } bj(c[d >> 2] | 0); l = f; return } } else switch (a | 0) { case 1: { Ui(c[d >> 2] | 0, -27, 1);l = f; return } case 5: { Xi(c[d >> 2] | 0);l = f; return } case 7: { Yi(c[d >> 2] | 0);l = f; return } case 8: { Zi(c[d >> 2] | 0);l = f; return } case 6: { _i(c[d >> 2] | 0);l = f; return } default: break a } while (0); c[e >> 2] = c[b >> 2]; cg(35967, e); Ui(c[d >> 2] | 0, -17, 0); l = f; return } function Qi(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f; d = f + 8 | 0; b = f + 4 | 0; c[d >> 2] = a; c[b >> 2] = Ri(c[d >> 2] | 0, 26, 2) | 0; switch (c[b >> 2] | 0) { case 6: { Si(c[d >> 2] | 0);l = f; return } case 8: { Ti(c[d >> 2] | 0);l = f; return } default: { Ui(c[d >> 2] | 0, -18, 0);c[e >> 2] = c[b >> 2];cg(35932, e);l = f; return } } } function Ri(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; h = i + 8 | 0; e = i + 4 | 0; g = i; c[h >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; if ((c[g >> 2] | 0) == 1) { c[f >> 2] = (Zx(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 208 >> 2] | 0) + (c[e >> 2] | 0) | 0) | 0) & 255; h = c[f >> 2] | 0; l = i; return h | 0 } if ((c[g >> 2] | 0) == 2) { c[f >> 2] = (_x(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 208 >> 2] | 0) + (c[e >> 2] | 0) | 0) | 0) & 65535; h = c[f >> 2] | 0; l = i; return h | 0 } if ((c[g >> 2] | 0) == 4) { c[f >> 2] = $x(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 208 >> 2] | 0) + (c[e >> 2] | 0) | 0) | 0; h = c[f >> 2] | 0; l = i; return h | 0 } else { c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } return 0 } function Si(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 28 | 0; h = m + 24 | 0; j = m + 20 | 0; e = m + 16 | 0; g = m + 12 | 0; f = m + 8 | 0; i = m + 4 | 0; d = m; c[k >> 2] = b; c[e >> 2] = Ri(c[k >> 2] | 0, 22, 2) | 0; c[g >> 2] = Ri(c[k >> 2] | 0, 28, 2) | 0; c[j >> 2] = Ri(c[k >> 2] | 0, 30, 4) | 0; b = c[k >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < 1 | (c[e >> 2] | 0) >>> 0 > 4) { Ui(b, -56, 0); l = m; return } c[d >> 2] = fz(c[b + 8 >> 2] | 0, c[e >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { Ui(c[k >> 2] | 0, -64, 0); l = m; return } c[f >> 2] = Ty(c[d >> 2] | 0) | 0; c[i >> 2] = (c[k >> 2] | 0) + 68; e = (Ly(c[d >> 2] | 0) | 0) == 6; b = (c[k >> 2] | 0) + 64 | 0; a: do if (e) { c[b >> 2] = 4; c[c[i >> 2] >> 2] = 800; c[(c[i >> 2] | 0) + 4 >> 2] = -2130050992; c[(c[i >> 2] | 0) + 8 >> 2] = 1600; c[(c[i >> 2] | 0) + 12 >> 2] = -2113273776; c[(c[i >> 2] | 0) + 16 >> 2] = 1440; c[(c[i >> 2] | 0) + 20 >> 2] = -2113339312; c[(c[i >> 2] | 0) + 24 >> 2] = 2880; c[(c[i >> 2] | 0) + 28 >> 2] = -1844314032; switch (Wi(c[f >> 2] | 0) | 0) { case 0: { f = (c[i >> 2] | 0) + 4 | 0;c[f >> 2] = c[f >> 2] | 1073741824; break a } case 1: { f = (c[i >> 2] | 0) + 12 | 0;c[f >> 2] = c[f >> 2] | 1073741824; break a } case 2: { f = (c[i >> 2] | 0) + 20 | 0;c[f >> 2] = c[f >> 2] | 1073741824; break a } default: if (a[(c[k >> 2] | 0) + 60 >> 0] | 0) { f = (c[i >> 2] | 0) + 28 | 0; c[f >> 2] = c[f >> 2] | 1073741824; break a } else { c[(c[k >> 2] | 0) + 64 >> 2] = 1; c[c[i >> 2] >> 2] = 2880; c[(c[i >> 2] | 0) + 4 >> 2] = -770572208; break a } } } else { c[b >> 2] = 1; c[c[i >> 2] >> 2] = c[f >> 2]; c[(c[i >> 2] | 0) + 4 >> 2] = 0 } while (0); if ((c[g >> 2] | 0) >>> 0 > (c[(c[k >> 2] | 0) + 64 >> 2] | 0) >>> 0) c[g >> 2] = c[(c[k >> 2] | 0) + 64 >> 2]; c[h >> 2] = 0; while (1) { b = c[k >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) break; dy(c[b + 4 >> 2] | 0, (c[j >> 2] | 0) + (c[h >> 2] << 3) + 0 | 0, c[(c[i >> 2] | 0) + ((c[h >> 2] << 1) + 0 << 2) >> 2] | 0); dy(c[(c[k >> 2] | 0) + 4 >> 2] | 0, (c[j >> 2] | 0) + (c[h >> 2] << 3) + 4 | 0, c[(c[i >> 2] | 0) + ((c[h >> 2] << 1) + 1 << 2) >> 2] | 0); c[h >> 2] = (c[h >> 2] | 0) + 1 } Vi(b, 28, 2, c[g >> 2] | 0); Ui(c[k >> 2] | 0, 0, 0); l = m; return } function Ti(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; f = i + 20 | 0; e = i + 16 | 0; d = i + 12 | 0; h = i + 8 | 0; g = i + 4 | 0; b = i; c[f >> 2] = a; c[d >> 2] = Ri(c[f >> 2] | 0, 22, 2) | 0; a = c[f >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 < 1 | (c[d >> 2] | 0) >>> 0 > 4) { Ui(a, -56, 0); l = i; return } c[b >> 2] = fz(c[a + 8 >> 2] | 0, c[d >> 2] | 0) | 0; a = c[f >> 2] | 0; if (!(c[b >> 2] | 0)) { Ui(a, -64, 0); l = i; return } c[g >> 2] = Ki(a, c[d >> 2] | 0) | 0; c[e >> 2] = 0; while (1) { a = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 11) break; c[h >> 2] = (_x(c[a + 4 >> 2] | 0, (c[g >> 2] | 0) + (c[e >> 2] << 1) | 0) | 0) & 65535; Vi(c[f >> 2] | 0, 28 + (c[e >> 2] << 1) | 0, 2, c[h >> 2] | 0); c[e >> 2] = (c[e >> 2] | 0) + 1 } Ui(a, 0, 0); l = i; return } function Ui(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; e = h + 16 | 0; j = h + 12 | 0; i = h + 8 | 0; f = h + 4 | 0; g = h; c[e >> 2] = a; c[j >> 2] = b; c[i >> 2] = d; c[(c[e >> 2] | 0) + 204 >> 2] = c[j >> 2] & 32768 | 0 ? c[j >> 2] | -65536 : 0; c[f >> 2] = Ri(c[e >> 2] | 0, 6, 2) | 0; Vi(c[e >> 2] | 0, 16, 2, c[j >> 2] | 0); if (c[i >> 2] | 0) { l = h; return } if (c[f >> 2] & 512 | 0) { l = h; return } c[g >> 2] = $x(c[(c[e >> 2] | 0) + 4 >> 2] | 0, 308) | 0; c[g >> 2] = $x(c[(c[e >> 2] | 0) + 4 >> 2] | 0, c[g >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 212 >> 2] = c[g >> 2]; j = $x(c[(c[e >> 2] | 0) + 4 >> 2] | 0, 2300) | 0; c[(c[e >> 2] | 0) + 216 >> 2] = j; l = h; return } function Vi(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; i = j; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; if ((c[g >> 2] | 0) == 1) { by(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 208 >> 2] | 0) + (c[f >> 2] | 0) | 0, c[i >> 2] & 255); l = j; return } if ((c[g >> 2] | 0) == 2) { cy(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 208 >> 2] | 0) + (c[f >> 2] | 0) | 0, c[i >> 2] & 65535); l = j; return } if ((c[g >> 2] | 0) != 4) { l = j; return } dy(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 208 >> 2] | 0) + (c[f >> 2] | 0) | 0, c[i >> 2] | 0); l = j; return } function Wi(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; do if ((c[b >> 2] | 0) >>> 0 >= 1120) { if ((c[b >> 2] | 0) >>> 0 < 1520) { c[d >> 2] = 2; break } if ((c[b >> 2] | 0) >>> 0 < 2240) { c[d >> 2] = 1; break } if ((c[b >> 2] | 0) >>> 0 < 5760) { c[d >> 2] = 3; break } else { c[d >> 2] = 255; break } } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function Xi(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; d = f + 4 | 0; e = f; c[b >> 2] = a; c[d >> 2] = Ri(c[b >> 2] | 0, 22, 2) | 0; a = c[b >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 < 1 | (c[d >> 2] | 0) >>> 0 > 4) { Ui(a, -56, 0); l = f; return } c[e >> 2] = fz(c[a + 8 >> 2] | 0, c[d >> 2] | 0) | 0; a = c[b >> 2] | 0; if (!(c[e >> 2] | 0)) { Ui(a, -64, 0); l = f; return } else { Ui(a, 0, 0); l = f; return } } function Yi(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; e = f + 4 | 0; d = f; c[b >> 2] = a; c[e >> 2] = Ri(c[b >> 2] | 0, 22, 2) | 0; a = c[b >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < 1 | (c[e >> 2] | 0) >>> 0 > 4) { Ui(a, -56, 0); l = f; return } else { c[d >> 2] = Ki(a, c[e >> 2] | 0) | 0; by(c[(c[b >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 3 | 0, 0); by(c[(c[b >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 2 | 0, 0); by(c[(c[b >> 2] | 0) + 4 >> 2] | 0, (c[d >> 2] | 0) + 18 | 0, 0); Ui(c[b >> 2] | 0, 0, 0); l = f; return } } function Zi(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; d = b + 4 | 0; e = b; c[d >> 2] = a; c[e >> 2] = Ri(c[d >> 2] | 0, 28, 4) | 0; c[(c[d >> 2] | 0) + 56 >> 2] = c[e >> 2] & 16777215; Ui(c[d >> 2] | 0, 0, 0); l = b; return } function _i(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; j = k + 16 | 0; e = k + 12 | 0; g = k + 8 | 0; i = k + 4 | 0; d = k; c[h >> 2] = b; c[j >> 2] = Ri(c[h >> 2] | 0, 22, 2) | 0; c[e >> 2] = Ri(c[h >> 2] | 0, 28, 2) | 0; b = c[h >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 < 1 | (c[j >> 2] | 0) >>> 0 > 4) { Ui(b, -56, 0); l = k; return } c[d >> 2] = fz(c[b + 8 >> 2] | 0, c[j >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { Ui(c[h >> 2] | 0, -64, 0); l = k; return } if (a[(c[d >> 2] | 0) + 56 >> 0] | 0) { Ui(c[h >> 2] | 0, -44, 0); l = k; return } if ((c[e >> 2] | 0) >>> 0 > 0 ? (c[e >> 2] | 0) >>> 0 <= (c[(c[h >> 2] | 0) + 64 >> 2] | 0) >>> 0 : 0) c[g >> 2] = c[(c[h >> 2] | 0) + 68 + ((c[e >> 2] | 0) - 1 << 1 << 2) >> 2]; else f = 10; do if ((f | 0) == 10 ? (c[g >> 2] = Ty(c[d >> 2] | 0) | 0, (Ly(c[d >> 2] | 0) | 0) == 6) : 0) if ((c[e >> 2] | 0) == 1) { c[g >> 2] = 800; break } else { c[g >> 2] = 1600; break } while (0); f = (cj(c[d >> 2] | 0, c[g >> 2] | 0) | 0) != 0; b = c[h >> 2] | 0; if (f) { Ui(b, -50, 0); l = k; return } else { c[i >> 2] = Ki(b, c[j >> 2] | 0) | 0; cy(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[i >> 2] | 0) + 18 | 0, c[g >> 2] & 65535); cy(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[i >> 2] | 0) + 20 | 0, (c[g >> 2] | 0) >>> 16 & 65535); Ui(c[h >> 2] | 0, 0, 0); l = k; return } } function $i(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 24 | 0; i = j + 16 | 0; d = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; g = j; c[h >> 2] = a; c[j + 20 >> 2] = b; c[i >> 2] = Ri(c[h >> 2] | 0, 22, 2) | 0; a = c[h >> 2] | 0; if ((c[i >> 2] | 0) >>> 0 < 1 | (c[i >> 2] | 0) >>> 0 > 4) { Ui(a, -56, 0); l = j; return } c[e >> 2] = c[a + 48 >> 2]; c[f >> 2] = c[(c[h >> 2] | 0) + 48 + 4 >> 2]; c[g >> 2] = fz(c[(c[h >> 2] | 0) + 8 >> 2] | 0, c[i >> 2] | 0) | 0; a: do if (!(c[g >> 2] | 0)) c[d >> 2] = c[e >> 2]; else switch (Ty(c[g >> 2] | 0) | 0) { case 2880: case 1440: case 1600: case 800: { c[d >> 2] = c[e >> 2]; break a } default: { c[d >> 2] = c[f >> 2]; break a } } while (0); Vi(c[h >> 2] | 0, 28, 4, c[d >> 2] | 0); Ui(c[h >> 2] | 0, 0, 0); l = j; return } function aj(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; e = f + 4 | 0; d = f; c[b >> 2] = a; c[e >> 2] = Ri(c[b >> 2] | 0, 22, 2) | 0; if ((c[e >> 2] | 0) >>> 0 < 1 | (c[e >> 2] | 0) >>> 0 > 4) { Ui(c[b >> 2] | 0, -56, 0); l = f; return } else { c[d >> 2] = (c[e >> 2] | 0) - 1; c[d >> 2] = c[d >> 2] << 3 & 8 | (c[d >> 2] | 0) >>> 1 & 1; Vi(c[b >> 2] | 0, 28, 4, c[d >> 2] << 8 | 4); Ui(c[b >> 2] | 0, 0, 0); l = f; return } } function bj(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 576 | 0; p = q + 36 | 0; j = q + 32 | 0; e = q + 28 | 0; d = q + 24 | 0; o = q + 20 | 0; h = q + 16 | 0; n = q + 12 | 0; k = q + 8 | 0; f = q + 4 | 0; g = q + 56 | 0; m = q + 40 | 0; i = q; c[p >> 2] = b; c[e >> 2] = Ri(c[p >> 2] | 0, 22, 2) | 0; c[d >> 2] = Ri(c[p >> 2] | 0, 28, 2) | 0; c[h >> 2] = Ri(c[p >> 2] | 0, 30, 4) | 0; c[n >> 2] = Ri(c[p >> 2] | 0, 34, 4) | 0; b = c[p >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < 1 | (c[e >> 2] | 0) >>> 0 > 4) { Ui(b, -56, 0); l = q; return } c[i >> 2] = fz(c[b + 8 >> 2] | 0, c[e >> 2] | 0) | 0; if (!(c[i >> 2] | 0)) { Ui(c[p >> 2] | 0, -64, 0); l = q; return } if (a[(c[i >> 2] | 0) + 56 >> 0] | 0) { Ui(c[p >> 2] | 0, -44, 0); l = q; return } if ((c[d >> 2] | 0) >>> 0 > 0 ? (c[d >> 2] | 0) >>> 0 <= (c[(c[p >> 2] | 0) + 64 >> 2] | 0) >>> 0 : 0) { c[f >> 2] = c[(c[p >> 2] | 0) + 68 + ((c[d >> 2] | 0) - 1 << 1 << 2) >> 2]; c[o >> 2] = Wi(c[f >> 2] | 0) | 0; if (cj(c[i >> 2] | 0, c[f >> 2] | 0) | 0) { Ui(c[p >> 2] | 0, -50, 0); l = q; return } c[h >> 2] = c[h >> 2] & 16777215; c[n >> 2] = c[n >> 2] & 16777215; b = m; d = b + 12 | 0; do { a[b >> 0] = 0; b = b + 1 | 0 } while ((b | 0) < (d | 0)); c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) { b = 24; break } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 512) break; e = Zx(c[(c[p >> 2] | 0) + 4 >> 2] | 0, (c[h >> 2] | 0) + (c[j >> 2] | 0) | 0) | 0; a[g + (c[j >> 2] | 0) >> 0] = e; c[j >> 2] = (c[j >> 2] | 0) + 1 } a: do if ((c[o >> 2] | 0) != 2 & (c[o >> 2] | 0) != 3) { c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 12) break a; e = Zx(c[(c[p >> 2] | 0) + 4 >> 2] | 0, (c[n >> 2] | 0) + (c[j >> 2] | 0) | 0) | 0; a[m + (c[j >> 2] | 0) >> 0] = e; c[j >> 2] = (c[j >> 2] | 0) + 1 } } while (0); if (dj(c[i >> 2] | 0, g, m, c[k >> 2] | 0) | 0) { b = 22; break } c[h >> 2] = (c[h >> 2] | 0) + 512; c[n >> 2] = (c[n >> 2] | 0) + 12; c[k >> 2] = (c[k >> 2] | 0) + 1 } if ((b | 0) == 22) { Ui(c[p >> 2] | 0, 65535, 0); l = q; return } else if ((b | 0) == 24) { Ui(c[p >> 2] | 0, 0, 0); l = q; return } } Ui(c[p >> 2] | 0, -50, 0); l = q; return } function cj(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 576 | 0; t = u; o = u + 52 | 0; j = u + 48 | 0; g = u + 44 | 0; e = u + 40 | 0; f = u + 36 | 0; i = u + 32 | 0; k = u + 28 | 0; p = u + 24 | 0; m = u + 20 | 0; r = u + 16 | 0; s = u + 12 | 0; h = u + 56 | 0; q = u + 8 | 0; n = u + 4 | 0; c[j >> 2] = b; c[g >> 2] = d; b = (Ly(c[j >> 2] | 0) | 0) != 6; d = c[j >> 2] | 0; if (b) { c[f >> 2] = Ty(d) | 0; if ((c[f >> 2] | 0) != (c[g >> 2] | 0)) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } TQ(h | 0, 0, 512) | 0; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) break; az(c[j >> 2] | 0, h, c[e >> 2] | 0, 1) | 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } c[o >> 2] = 0; t = c[o >> 2] | 0; l = u; return t | 0 } c[n >> 2] = c[d + 64 >> 2]; d = h; b = d + 12 | 0; do { a[d >> 0] = 0; d = d + 1 | 0 } while ((d | 0) < (b | 0)); c[s >> 2] = Wi(c[g >> 2] | 0) | 0; iy(c[n >> 2] | 0) | 0; a: do if ((c[s >> 2] | 0) == 0 | (c[s >> 2] | 0) == 1) { jy(c[n >> 2] | 0, 3); c[m >> 2] = (c[s >> 2] | 0) == 0 ? 1 : 2; c[r >> 2] = 13; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= 80) break a; if (!(c[i >> 2] & 15)) c[r >> 2] = (c[r >> 2] | 0) - 1; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; c[p >> 2] = 0; while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[r >> 2] | 0) >>> 0) break; ky(c[n >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0, c[p >> 2] | 0, 512, 0) | 0; c[q >> 2] = HD(c[(c[n >> 2] | 0) + 68 >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0, c[p >> 2] | 0, 1) | 0; if (c[q >> 2] | 0) kD(c[q >> 2] | 0, h, 12) | 0; c[p >> 2] = (c[p >> 2] | 0) + 1 } c[k >> 2] = (c[k >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } } else { if (!((c[s >> 2] | 0) == 2 | (c[s >> 2] | 0) == 3)) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } jy(c[n >> 2] | 0, (c[s >> 2] | 0) == 2 ? 2 : 32770); c[r >> 2] = (c[s >> 2] | 0) == 2 ? 9 : 18; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= 80) break a; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= 2) break; c[p >> 2] = 0; while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[r >> 2] | 0) >>> 0) break; ky(c[n >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0, c[i >> 2] | 0, c[k >> 2] | 0, (c[p >> 2] | 0) + 1 | 0, 512, 0) | 0; c[p >> 2] = (c[p >> 2] | 0) + 1 } c[k >> 2] = (c[k >> 2] | 0) + 1 } c[i >> 2] = (c[i >> 2] | 0) + 1 } } while (0); c[t >> 2] = Ty(c[j >> 2] | 0) | 0; cg(36074, t); c[o >> 2] = 0; t = c[o >> 2] | 0; l = u; return t | 0 } function dj(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 64 | 0; q = r; m = r + 48 | 0; i = r + 44 | 0; f = r + 40 | 0; o = r + 36 | 0; k = r + 32 | 0; g = r + 28 | 0; j = r + 24 | 0; n = r + 20 | 0; p = r + 16 | 0; h = r + 12 | 0; c[i >> 2] = a; c[f >> 2] = b; c[o >> 2] = d; c[k >> 2] = e; d = (Ly(c[i >> 2] | 0) | 0) != 6; b = c[i >> 2] | 0; if (d) if (az(b, c[f >> 2] | 0, c[k >> 2] | 0, 1) | 0) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } else { c[m >> 2] = 0; q = c[m >> 2] | 0; l = r; return q | 0 } d = Ty(b) | 0; if (ej(d, c[k >> 2] | 0, g, j, n) | 0) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } c[p >> 2] = Wi(Ty(c[i >> 2] | 0) | 0) | 0; if ((c[p >> 2] | 0) == 0 | (c[p >> 2] | 0) == 1) hy(c[(c[i >> 2] | 0) + 64 >> 2] | 0, c[o >> 2] | 0, 12, c[g >> 2] | 0, c[j >> 2] | 0, c[n >> 2] | 0, 0) | 0; c[h >> 2] = 512; if (gy(c[(c[i >> 2] | 0) + 64 >> 2] | 0, c[f >> 2] | 0, h, c[g >> 2] | 0, c[j >> 2] | 0, c[n >> 2] | 0, 0) | 0) { o = c[j >> 2] | 0; p = c[n >> 2] | 0; c[q >> 2] = c[g >> 2]; c[q + 4 >> 2] = o; c[q + 8 >> 2] = p; cg(36007, q); c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } else { c[m >> 2] = 0; q = c[m >> 2] | 0; l = r; return q | 0 } return 0 } function ej(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 48 | 0; j = s; p = s + 44 | 0; g = s + 40 | 0; o = s + 36 | 0; k = s + 32 | 0; m = s + 28 | 0; q = s + 24 | 0; i = s + 20 | 0; h = s + 16 | 0; n = s + 12 | 0; r = s + 8 | 0; c[g >> 2] = a; c[o >> 2] = b; c[k >> 2] = d; c[m >> 2] = e; c[q >> 2] = f; c[i >> 2] = Wi(c[g >> 2] | 0) | 0; a = c[i >> 2] | 0; if ((c[i >> 2] | 0) == 0 | (c[i >> 2] | 0) == 1) { c[n >> 2] = (a | 0) == 0 ? 1 : 2; c[r >> 2] = 12; c[c[k >> 2] >> 2] = 0; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 5) { a = 7; break } if ((c[o >> 2] | 0) >>> 0 < (S(c[n >> 2] << 4, c[r >> 2] | 0) | 0) >>> 0) { a = 5; break } j = S(c[n >> 2] << 4, c[r >> 2] | 0) | 0; c[o >> 2] = (c[o >> 2] | 0) - j; j = c[k >> 2] | 0; c[j >> 2] = (c[j >> 2] | 0) + 16; c[r >> 2] = (c[r >> 2] | 0) - 1; c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((a | 0) == 5) { c[c[q >> 2] >> 2] = ((c[o >> 2] | 0) >>> 0) % ((c[r >> 2] | 0) >>> 0) | 0; c[c[m >> 2] >> 2] = ((((c[o >> 2] | 0) >>> 0) / ((c[r >> 2] | 0) >>> 0) | 0) >>> 0) % ((c[n >> 2] | 0) >>> 0) | 0; q = ((c[o >> 2] | 0) >>> 0) / ((S(c[r >> 2] | 0, c[n >> 2] | 0) | 0) >>> 0) | 0; r = c[k >> 2] | 0; c[r >> 2] = (c[r >> 2] | 0) + q; c[p >> 2] = 0; r = c[p >> 2] | 0; l = s; return r | 0 } else if ((a | 0) == 7) { c[p >> 2] = 1; r = c[p >> 2] | 0; l = s; return r | 0 } } else { do if ((a | 0) == 2) { c[c[q >> 2] >> 2] = (((c[o >> 2] | 0) >>> 0) % 9 | 0) + 1; c[c[m >> 2] >> 2] = ((((c[o >> 2] | 0) >>> 0) / 9 | 0) >>> 0) % 2 | 0; c[c[k >> 2] >> 2] = ((c[o >> 2] | 0) >>> 0) / 18 | 0 } else { if ((c[i >> 2] | 0) == 3) { c[c[q >> 2] >> 2] = (((c[o >> 2] | 0) >>> 0) % 18 | 0) + 1; c[c[m >> 2] >> 2] = ((((c[o >> 2] | 0) >>> 0) / 18 | 0) >>> 0) % 2 | 0; c[c[k >> 2] >> 2] = ((c[o >> 2] | 0) >>> 0) / 36 | 0; break } r = c[o >> 2] | 0; c[j >> 2] = c[g >> 2]; c[j + 4 >> 2] = r; cg(36038, j); c[p >> 2] = 1; r = c[p >> 2] | 0; l = s; return r | 0 } while (0); c[p >> 2] = 0; r = c[p >> 2] | 0; l = s; return r | 0 } return 0 } function fj(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 592 | 0; s = u + 8 | 0; n = u; r = u + 52 | 0; p = u + 48 | 0; f = u + 44 | 0; t = u + 40 | 0; q = u + 36 | 0; o = u + 32 | 0; i = u + 28 | 0; k = u + 24 | 0; j = u + 20 | 0; h = u + 16 | 0; g = u + 72 | 0; m = u + 56 | 0; e = u + 12 | 0; c[r >> 2] = b; c[p >> 2] = d; c[q >> 2] = hj(c[r >> 2] | 0) | 0; c[o >> 2] = Ri(c[r >> 2] | 0, 36, 4) | 0; c[f >> 2] = (Ri(c[r >> 2] | 0, 32, 4) | 0) & 16777215; c[e >> 2] = Ri(c[r >> 2] | 0, 44, 2) | 0; c[h >> 2] = fz(c[(c[r >> 2] | 0) + 8 >> 2] | 0, c[p >> 2] | 0) | 0; if (!(c[h >> 2] | 0)) { Ui(c[r >> 2] | 0, -65, 0); l = u; return } if (c[e >> 2] & 64 | 0) { Ui(c[r >> 2] | 0, 0, 0); l = u; return } if ((c[q >> 2] & 511 | 0) == 0 ? (c[o >> 2] & 511 | 0) == 0 : 0) { c[k >> 2] = ((c[o >> 2] | 0) >>> 0) / 512 | 0; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) { d = 23; break } if (kj(c[h >> 2] | 0, g, m, (((c[q >> 2] | 0) >>> 0) / 512 | 0) + (c[i >> 2] | 0) | 0) | 0) { d = 11; break } c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 512) break; by(c[(c[r >> 2] | 0) + 4 >> 2] | 0, (c[f >> 2] | 0) + (c[i >> 2] << 9) + (c[j >> 2] | 0) | 0, a[g + (c[j >> 2] | 0) >> 0] | 0); c[j >> 2] = (c[j >> 2] | 0) + 1 } c[j >> 2] = 0; while (1) { d = c[r >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 >= 12) break; by(c[d + 4 >> 2] | 0, 764 + (c[j >> 2] | 0) | 0, a[m + (c[j >> 2] | 0) >> 0] | 0); c[j >> 2] = (c[j >> 2] | 0) + 1 } a: do if (c[d + 56 >> 2] | 0) { c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 12) break a; by(c[(c[r >> 2] | 0) + 4 >> 2] | 0, (c[(c[r >> 2] | 0) + 56 >> 2] | 0) + ((c[i >> 2] | 0) * 12 | 0) + (c[j >> 2] | 0) | 0, a[m + (c[j >> 2] | 0) >> 0] | 0); c[j >> 2] = (c[j >> 2] | 0) + 1 } } while (0); c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((d | 0) == 11) { cg(36213, s); Ui(c[r >> 2] | 0, 65535, 0); l = u; return } else if ((d | 0) == 23) { c[t >> 2] = Ki(c[r >> 2] | 0, c[p >> 2] | 0) | 0; by(c[(c[r >> 2] | 0) + 4 >> 2] | 0, (c[t >> 2] | 0) + 3 | 0, 2); Vi(c[r >> 2] | 0, 40, 4, c[o >> 2] | 0); c[q >> 2] = ij(c[r >> 2] | 0, 16, 4) | 0; jj(c[r >> 2] | 0, 16, 4, (c[q >> 2] | 0) + (c[o >> 2] | 0) | 0); Ui(c[r >> 2] | 0, 0, 0); l = u; return } } cg(36189, n); Ui(c[r >> 2] | 0, -50, 0); l = u; return } function gj(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; s = l; l = l + 576 | 0; r = s + 8 | 0; e = s; q = s + 48 | 0; t = s + 44 | 0; f = s + 40 | 0; p = s + 36 | 0; o = s + 32 | 0; m = s + 28 | 0; i = s + 24 | 0; k = s + 20 | 0; j = s + 16 | 0; h = s + 12 | 0; g = s + 64 | 0; n = s + 52 | 0; c[q >> 2] = b; c[t >> 2] = d; c[p >> 2] = hj(c[q >> 2] | 0) | 0; c[o >> 2] = Ri(c[q >> 2] | 0, 36, 4) | 0; c[f >> 2] = (Ri(c[q >> 2] | 0, 32, 4) | 0) & 16777215; c[h >> 2] = fz(c[(c[q >> 2] | 0) + 8 >> 2] | 0, c[t >> 2] | 0) | 0; if (!(c[h >> 2] | 0)) { Ui(c[q >> 2] | 0, -65, 0); l = s; return } if (Ny(c[h >> 2] | 0) | 0) { Ui(c[q >> 2] | 0, -44, 0); l = s; return } if ((c[o >> 2] & 511 | 0) == 0 ? (c[p >> 2] & 511 | 0) == 0 : 0) { d = n; b = d + 12 | 0; do { a[d >> 0] = 0; d = d + 1 | 0 } while ((d | 0) < (b | 0)); c[m >> 2] = (_x(c[(c[q >> 2] | 0) + 4 >> 2] | 0, 770) | 0) & 65535; c[k >> 2] = ((c[o >> 2] | 0) >>> 0) / 512 | 0; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) { d = 23; break } c[j >> 2] = 0; while (1) { d = c[q >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 >= 512) break; t = Zx(c[d + 4 >> 2] | 0, (c[f >> 2] | 0) + (c[i >> 2] << 9) + (c[j >> 2] | 0) | 0) | 0; a[g + (c[j >> 2] | 0) >> 0] = t; c[j >> 2] = (c[j >> 2] | 0) + 1 } a: do if (c[d + 56 >> 2] | 0) { c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 12) break a; t = Zx(c[(c[q >> 2] | 0) + 4 >> 2] | 0, (c[(c[q >> 2] | 0) + 56 >> 2] | 0) + ((c[i >> 2] | 0) * 12 | 0) + (c[j >> 2] | 0) | 0) | 0; a[n + (c[j >> 2] | 0) >> 0] = t; by(c[(c[q >> 2] | 0) + 4 >> 2] | 0, 764 + (c[j >> 2] | 0) | 0, a[n + (c[j >> 2] | 0) >> 0] | 0); c[j >> 2] = (c[j >> 2] | 0) + 1 } } else { cy(c[(c[q >> 2] | 0) + 4 >> 2] | 0, 770, (c[m >> 2] | 0) + (c[i >> 2] | 0) & 65535); c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 12) break a; t = Zx(c[(c[q >> 2] | 0) + 4 >> 2] | 0, 764 + (c[j >> 2] | 0) | 0) | 0; a[n + (c[j >> 2] | 0) >> 0] = t; c[j >> 2] = (c[j >> 2] | 0) + 1 } } while (0); if (dj(c[h >> 2] | 0, g, n, (((c[p >> 2] | 0) >>> 0) / 512 | 0) + (c[i >> 2] | 0) | 0) | 0) { d = 21; break } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((d | 0) == 21) { cg(36170, r); Ui(c[q >> 2] | 0, 65535, 0); l = s; return } else if ((d | 0) == 23) { Vi(c[q >> 2] | 0, 40, 4, c[o >> 2] | 0); c[p >> 2] = ij(c[q >> 2] | 0, 16, 4) | 0; jj(c[q >> 2] | 0, 16, 4, (c[p >> 2] | 0) + (c[o >> 2] | 0) | 0); Ui(c[q >> 2] | 0, 0, 0); l = s; return } } cg(36145, e); Ui(c[q >> 2] | 0, -50, 0); l = s; return } function hj(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 12 | 0; e = f + 8 | 0; g = f + 4 | 0; b = f; c[e >> 2] = a; c[g >> 2] = Ri(c[e >> 2] | 0, 44, 2) | 0; switch (c[g >> 2] & 15 | 0) { case 0: { c[b >> 2] = ij(c[e >> 2] | 0, 16, 4) | 0; break } case 1: { c[b >> 2] = Ri(c[e >> 2] | 0, 46, 4) | 0; break } case 3: { c[b >> 2] = Ri(c[e >> 2] | 0, 46, 4) | 0;c[b >> 2] = (ij(c[e >> 2] | 0, 16, 4) | 0) + (c[b >> 2] | 0); break } default: { c[d >> 2] = 0;g = c[d >> 2] | 0;l = f; return g | 0 } } c[d >> 2] = c[b >> 2]; g = c[d >> 2] | 0; l = f; return g | 0 } function ij(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; h = i + 8 | 0; e = i + 4 | 0; g = i; c[h >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; if ((c[g >> 2] | 0) == 1) { c[f >> 2] = (Zx(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 212 >> 2] | 0) + (c[e >> 2] | 0) | 0) | 0) & 255; h = c[f >> 2] | 0; l = i; return h | 0 } if ((c[g >> 2] | 0) == 2) { c[f >> 2] = (_x(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 212 >> 2] | 0) + (c[e >> 2] | 0) | 0) | 0) & 65535; h = c[f >> 2] | 0; l = i; return h | 0 } if ((c[g >> 2] | 0) == 4) { c[f >> 2] = $x(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 212 >> 2] | 0) + (c[e >> 2] | 0) | 0) | 0; h = c[f >> 2] | 0; l = i; return h | 0 } else { c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } return 0 } function jj(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; i = j; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; if ((c[g >> 2] | 0) == 1) { by(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 212 >> 2] | 0) + (c[f >> 2] | 0) | 0, c[i >> 2] & 255); l = j; return } if ((c[g >> 2] | 0) == 2) { cy(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 212 >> 2] | 0) + (c[f >> 2] | 0) | 0, c[i >> 2] & 65535); l = j; return } if ((c[g >> 2] | 0) != 4) { l = j; return } dy(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[(c[h >> 2] | 0) + 212 >> 2] | 0) + (c[f >> 2] | 0) | 0, c[i >> 2] | 0); l = j; return } function kj(b, d, e, f) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 48 | 0; m = r; q = r + 44 | 0; o = r + 40 | 0; n = r + 36 | 0; k = r + 32 | 0; p = r + 28 | 0; g = r + 24 | 0; i = r + 20 | 0; j = r + 16 | 0; h = r + 12 | 0; c[o >> 2] = b; c[n >> 2] = d; c[k >> 2] = e; c[p >> 2] = f; if ((Ly(c[o >> 2] | 0) | 0) != 6) { d = c[k >> 2] | 0; g = d + 12 | 0; do { a[d >> 0] = 0; d = d + 1 | 0 } while ((d | 0) < (g | 0)); if (Zy(c[o >> 2] | 0, c[n >> 2] | 0, c[p >> 2] | 0, 1) | 0) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } } e = Ty(c[o >> 2] | 0) | 0; if (ej(e, c[p >> 2] | 0, g, i, j) | 0) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } fy(c[(c[o >> 2] | 0) + 64 >> 2] | 0, c[k >> 2] | 0, 12, c[g >> 2] | 0, c[i >> 2] | 0, c[j >> 2] | 0, 0) | 0; c[h >> 2] = 512; if (ey(c[(c[o >> 2] | 0) + 64 >> 2] | 0, c[n >> 2] | 0, h, c[g >> 2] | 0, c[i >> 2] | 0, c[j >> 2] | 0, 0) | 0) { o = c[i >> 2] | 0; p = c[j >> 2] | 0; c[m >> 2] = c[g >> 2]; c[m + 4 >> 2] = o; c[m + 8 >> 2] = p; cg(36231, m); c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } return 0 } function lj(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = b; mj(c[e >> 2] | 0); a[c[e >> 2] >> 0] = 0; c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= 4) break; c[(c[e >> 2] | 0) + 28 + (c[d >> 2] << 2) >> 2] = c[(c[e >> 2] | 0) + 12 + (c[d >> 2] << 2) >> 2]; c[d >> 2] = (c[d >> 2] | 0) + 1 } l = f; return } function mj(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; e = j + 16 | 0; f = j + 12 | 0; h = j + 8 | 0; g = j + 4 | 0; d = j; c[i >> 2] = b; if (!(a[(c[i >> 2] | 0) + 1 >> 0] | 0)) { l = j; return } if (!(c[(c[i >> 2] | 0) + 136 >> 2] | 0)) { l = j; return } if (!(c[(c[i >> 2] | 0) + 132 >> 2] | 0)) { l = j; return } c[d >> 2] = (c[i >> 2] | 0) + 140; c[e >> 2] = 0; while (1) { b = c[i >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 5) break; c[h >> 2] = (_x(c[b + 4 >> 2] | 0, (c[(c[i >> 2] | 0) + 136 >> 2] | 0) + 8 + (c[e >> 2] << 1) | 0) | 0) & 65535; c[g >> 2] = (c[(c[i >> 2] | 0) + 136 >> 2] | 0) + (c[h >> 2] | 0); c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= 6) break; m = c[(c[i >> 2] | 0) + 4 >> 2] | 0; k = (c[g >> 2] | 0) + (c[f >> 2] | 0) | 0; b = c[d >> 2] | 0; c[d >> 2] = b + 1; ay(m, k, a[b >> 0] | 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } c[e >> 2] = (c[e >> 2] | 0) + 1 } a[b + 1 >> 0] = 0; l = j; return } function nj(a) { a = a | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = a; c[c[e >> 2] >> 2] = 0; c[(c[e >> 2] | 0) + 4 >> 2] = 0; c[(c[e >> 2] | 0) + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 12 >> 2] = 0; c[(c[e >> 2] | 0) + 756 >> 2] = 0; c[(c[e >> 2] | 0) + 760 >> 2] = 0; c[(c[e >> 2] | 0) + 764 >> 2] = 0; c[(c[e >> 2] | 0) + 768 >> 2] = 8e3; GH((c[e >> 2] | 0) + 772 | 0); b[(c[e >> 2] | 0) + 820 >> 1] = -32768; c[(c[e >> 2] | 0) + 824 >> 2] = 0; c[(c[e >> 2] | 0) + 828 >> 2] = 60; l = d; return } function oj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 4 >> 2] = c[f >> 2]; l = d; return } function pj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; c[(c[f >> 2] | 0) + 768 >> 2] = c[e >> 2]; IH((c[f >> 2] | 0) + 772 | 0, c[e >> 2] | 0, 22255); l = d; return } function qj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 764 >> 2] = c[f >> 2]; l = d; return } function rj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; c[e >> 2] = (c[e >> 2] | 0) != 0 & 1; if ((c[(c[d >> 2] | 0) + 760 >> 2] | 0) == (c[e >> 2] | 0)) { l = f; return } c[(c[d >> 2] | 0) + 760 >> 2] = c[e >> 2]; l = f; return } function sj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = b; if (c[c[e >> 2] >> 2] | 0) OH(c[c[e >> 2] >> 2] | 0); a = UH(c[d >> 2] | 0) | 0; c[c[e >> 2] >> 2] = a; if (!(c[c[e >> 2] >> 2] | 0)) { c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } if (RH(c[c[e >> 2] >> 2] | 0, 1, 22255, 0) | 0) { OH(c[c[e >> 2] >> 2] | 0); c[c[e >> 2] >> 2] = 0; c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function tj(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[(c[b >> 2] | 0) + 4 >> 2] | 0)) { l = d; return } if (!(c[c[b >> 2] >> 2] | 0)) { l = d; return } do if ((c[(c[b >> 2] | 0) + 12 >> 2] | 0) >>> 0 < 370) { a = c[b >> 2] | 0; if (c[(c[b >> 2] | 0) + 760 >> 2] | 0) { uj(a, 370 - (c[(c[b >> 2] | 0) + 12 >> 2] | 0) | 0); break } if ((c[a + 828 >> 2] | 0) >>> 0 >= 60 ? (c[(c[b >> 2] | 0) + 12 >> 2] | 0) >>> 0 <= 0 : 0) break; vj(c[b >> 2] | 0, 370 - (c[(c[b >> 2] | 0) + 12 >> 2] | 0) | 0) } while (0); a = c[(c[b >> 2] | 0) + 828 >> 2] | 0; if (!(c[(c[b >> 2] | 0) + 824 >> 2] | 0)) { if (a >>> 0 < 60 ? (a = (c[b >> 2] | 0) + 828 | 0, c[a >> 2] = (c[a >> 2] | 0) + 1, (c[(c[b >> 2] | 0) + 828 >> 2] | 0) == 60) : 0) xj(c[b >> 2] | 0) } else { if (a >>> 0 >= 60) wj(c[b >> 2] | 0); c[(c[b >> 2] | 0) + 828 >> 2] = 0 } if ((c[(c[b >> 2] | 0) + 828 >> 2] | 0) >>> 0 < 60) { if ((c[(c[b >> 2] | 0) + 768 >> 2] | 0) >>> 0 > 0) JH((c[b >> 2] | 0) + 772 | 0, (c[b >> 2] | 0) + 16 | 0, (c[b >> 2] | 0) + 16 | 0, c[(c[b >> 2] | 0) + 12 >> 2] | 0, 1, 0); QH(c[c[b >> 2] >> 2] | 0, (c[b >> 2] | 0) + 16 | 0, c[(c[b >> 2] | 0) + 12 >> 2] | 0) | 0 } c[(c[b >> 2] | 0) + 824 >> 2] = 0; c[(c[b >> 2] | 0) + 8 >> 2] = 16; c[(c[b >> 2] | 0) + 12 >> 2] = 0; c[(c[b >> 2] | 0) + 756 >> 2] = 0; l = d; return } function uj(a, f) { a = a | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 12 | 0; g = k + 8 | 0; j = k + 4 | 0; h = k; c[i >> 2] = a; c[g >> 2] = f; if ((c[(c[i >> 2] | 0) + 12 >> 2] | 0) >>> 0 >= 370) { l = k; return } if (!(c[(c[i >> 2] | 0) + 4 >> 2] | 0)) { l = k; return } c[h >> 2] = 8 - (c[(c[i >> 2] | 0) + 764 >> 2] | 0); while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) { f = 16; break } if ((c[(c[i >> 2] | 0) + 12 >> 2] | 0) >>> 0 >= 370) { f = 16; break } do if (c[(c[i >> 2] | 0) + 760 >> 2] | 0) { c[j >> 2] = d[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + (c[(c[i >> 2] | 0) + 8 >> 2] << 1) >> 0]; c[j >> 2] = c[j >> 2] << 8; f = c[j >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 < 32768) { c[j >> 2] = 32768 - (((32768 - f | 0) >>> 0) / ((c[h >> 2] | 0) >>> 0) | 0); break } else { c[j >> 2] = 32768 + (((f - 32768 | 0) >>> 0) / ((c[h >> 2] | 0) >>> 0) | 0); break } } else c[j >> 2] = 32768; while (0); a = (c[i >> 2] | 0) + 8 | 0; c[a >> 2] = (c[a >> 2] | 0) + 1; if ((c[(c[i >> 2] | 0) + 8 >> 2] | 0) >>> 0 >= 370) c[(c[i >> 2] | 0) + 8 >> 2] = 0; if ((c[j >> 2] | 0) != (e[(c[i >> 2] | 0) + 820 >> 1] | 0 | 0)) { b[(c[i >> 2] | 0) + 820 >> 1] = c[j >> 2]; c[(c[i >> 2] | 0) + 824 >> 2] = 1 } b[(c[i >> 2] | 0) + 16 + (c[(c[i >> 2] | 0) + 12 >> 2] << 1) >> 1] = c[j >> 2]; a = (c[i >> 2] | 0) + 12 | 0; c[a >> 2] = (c[a >> 2] | 0) + 1; c[g >> 2] = (c[g >> 2] | 0) - 1 } if ((f | 0) == 16) { l = k; return } } function vj(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; f = h; c[g >> 2] = a; c[f >> 2] = d; if (!(c[f >> 2] | 0)) { l = h; return } if ((c[(c[g >> 2] | 0) + 12 >> 2] | 0) >>> 0 >= 370) { l = h; return } if ((e[(c[g >> 2] | 0) + 820 >> 1] | 0 | 0) != 32768) c[(c[g >> 2] | 0) + 824 >> 2] = 1; while (1) { if ((c[f >> 2] | 0) >>> 0 > 0) d = (c[(c[g >> 2] | 0) + 12 >> 2] | 0) >>> 0 < 370; else d = 0; a = c[g >> 2] | 0; if (!d) break; b[a + 16 + (c[(c[g >> 2] | 0) + 12 >> 2] << 1) >> 1] = -32768; a = (c[g >> 2] | 0) + 8 | 0; c[a >> 2] = (c[a >> 2] | 0) + 1; if ((c[(c[g >> 2] | 0) + 8 >> 2] | 0) >>> 0 >= 370) c[(c[g >> 2] | 0) + 8 >> 2] = 0; a = (c[g >> 2] | 0) + 12 | 0; c[a >> 2] = (c[a >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) - 1 } b[a + 820 >> 1] = -32768; l = h; return } function wj(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 8208 | 0; e = b; d = b + 8 | 0; c[e >> 2] = a; TQ(d | 0, 0, 8192) | 0; QH(c[c[e >> 2] >> 2] | 0, d, 4096) | 0; l = b; return } function xj(a) { a = a | 0; var b = 0; b = l; l = l + 16 | 0; c[b >> 2] = a; l = b; return } function yj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; f = g + 4 | 0; d = g; c[e >> 2] = a; c[f >> 2] = b; if (!(c[(c[e >> 2] | 0) + 760 >> 2] | 0)) { l = g; return } if (!(c[(c[e >> 2] | 0) + 4 >> 2] | 0)) { l = g; return } if ((c[(c[e >> 2] | 0) + 12 >> 2] | 0) >>> 0 >= 370) { l = g; return } b = (c[e >> 2] | 0) + 756 | 0; c[b >> 2] = (c[b >> 2] | 0) + (c[f >> 2] | 0); if ((c[(c[e >> 2] | 0) + 756 >> 2] | 0) >>> 0 < 352) { l = g; return } c[d >> 2] = ((c[(c[e >> 2] | 0) + 756 >> 2] | 0) >>> 0) / 352 | 0; f = (c[e >> 2] | 0) + 756 | 0; c[f >> 2] = ((c[f >> 2] | 0) >>> 0) % 352 | 0; uj(c[e >> 2] | 0, c[d >> 2] | 0); l = g; return } function zj(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; f = j + 16 | 0; g = j + 12 | 0; b = j + 8 | 0; d = j + 4 | 0; h = j; c[f >> 2] = a; if ((c[f >> 2] & 61440 | 0) != 40960) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } if (c[f >> 2] & 2048 | 0) { c[d >> 2] = 64511; c[h >> 2] = 7008 } else { c[d >> 2] = 63743; c[h >> 2] = 11816 } c[b >> 2] = c[f >> 2] & c[d >> 2]; c[g >> 2] = 0; while (1) { if (!(c[(c[h >> 2] | 0) + (c[g >> 2] << 3) + 4 >> 2] | 0)) { b = 11; break } if (((e[(c[h >> 2] | 0) + (c[g >> 2] << 3) >> 1] | 0) & c[d >> 2] | 0) == (c[b >> 2] | 0)) { b = 9; break } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((b | 0) == 9) { c[i >> 2] = c[(c[h >> 2] | 0) + (c[g >> 2] << 3) + 4 >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } else if ((b | 0) == 11) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function Aj(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; f = i + 8 | 0; h = i + 4 | 0; j = i; c[f >> 2] = b; c[h >> 2] = d; c[j >> 2] = e; c[c[f >> 2] >> 2] = 0; c[(c[f >> 2] | 0) + 44 >> 2] = 0; c[(c[f >> 2] | 0) + 4 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 8 >> 2] = c[j >> 2]; a[(c[f >> 2] | 0) + 12 >> 0] = 0; c[(c[f >> 2] | 0) + 16 >> 2] = 8; d = HQ(S((((c[(c[f >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0, c[(c[f >> 2] | 0) + 8 >> 2] | 0) | 0) | 0; c[(c[f >> 2] | 0) + 20 >> 2] = d; if (!(c[(c[f >> 2] | 0) + 20 >> 2] | 0)) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = i; return j | 0 } j = HQ(S((c[h >> 2] | 0) * 3 | 0, c[(c[f >> 2] | 0) + 16 >> 2] | 0) | 0) | 0; c[(c[f >> 2] | 0) + 24 >> 2] = j; if (!(c[(c[f >> 2] | 0) + 24 >> 2] | 0)) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = i; return j | 0 } else { c[(c[f >> 2] | 0) + 28 >> 2] = 255; a[(c[f >> 2] | 0) + 32 >> 0] = 0; a[(c[f >> 2] | 0) + 32 + 1 >> 0] = 0; a[(c[f >> 2] | 0) + 32 + 2 >> 0] = 0; a[(c[f >> 2] | 0) + 35 >> 0] = -1; a[(c[f >> 2] | 0) + 35 + 1 >> 0] = -1; a[(c[f >> 2] | 0) + 35 + 2 >> 0] = -1; c[(c[f >> 2] | 0) + 40 >> 2] = 0; a[(c[f >> 2] | 0) + 48 >> 0] = 0; c[(c[f >> 2] | 0) + 52 >> 2] = 0; c[(c[f >> 2] | 0) + 56 >> 2] = 0; c[g >> 2] = 0; j = c[g >> 2] | 0; l = i; return j | 0 } return 0 } function Bj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; f = h + 8 | 0; d = h + 4 | 0; e = h; c[f >> 2] = a; c[d >> 2] = b; c[e >> 2] = HQ(60) | 0; do if (c[e >> 2] | 0) { f = (Aj(c[e >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[e >> 2] | 0; if (f) { IQ(b); c[g >> 2] = 0; break } else { c[g >> 2] = b; break } } else c[g >> 2] = 0; while (0); l = h; return c[g >> 2] | 0 } function Cj(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 52 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 56 >> 2] = c[g >> 2]; l = e; return } function Dj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[c[e >> 2] >> 2] = c[f >> 2]; l = d; return } function Ej(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; c[d >> 2] = a; c[f >> 2] = b; c[(c[d >> 2] | 0) + 44 >> 2] = c[f >> 2]; if (!(c[(c[d >> 2] | 0) + 44 >> 2] | 0)) { l = e; return } $N(c[(c[d >> 2] | 0) + 44 >> 2] | 0, c[(c[d >> 2] | 0) + 4 >> 2] | 0, c[(c[d >> 2] | 0) + 8 >> 2] | 0) | 0; l = e; return } function Fj(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[i >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 3) break; a[(c[i >> 2] | 0) + 32 + (c[h >> 2] | 0) >> 0] = (c[f >> 2] | 0) >>> (2 - (c[h >> 2] | 0) << 3); a[(c[i >> 2] | 0) + 35 + (c[h >> 2] | 0) >> 0] = (c[g >> 2] | 0) >>> (2 - (c[h >> 2] | 0) << 3); c[h >> 2] = (c[h >> 2] | 0) + 1 } a[(c[i >> 2] | 0) + 12 >> 0] = 1; l = j; return } function Gj(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; c[e >> 2] = b; c[f >> 2] = d; c[f >> 2] = (c[f >> 2] | 0) >>> 0 > 255 ? 255 : d; if ((c[(c[e >> 2] | 0) + 28 >> 2] | 0) == (c[f >> 2] | 0)) { l = g; return } a[(c[e >> 2] | 0) + 12 >> 0] = 1; c[(c[e >> 2] | 0) + 28 >> 2] = c[f >> 2]; l = g; return } function Hj(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 48 | 0; n = s + 32 | 0; r = s + 28 | 0; j = s + 24 | 0; k = s + 20 | 0; m = s + 16 | 0; o = s + 12 | 0; q = s + 8 | 0; i = s + 4 | 0; p = s; g = s + 39 | 0; h = s + 36 | 0; c[n >> 2] = b; if (!(c[(c[n >> 2] | 0) + 44 >> 2] | 0)) { l = s; return } if (!(c[c[n >> 2] >> 2] | 0)) { l = s; return } c[j >> 2] = 0; while (1) { b = c[n >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 >= 3) break; f = (((S(c[b + 28 >> 2] | 0, d[(c[n >> 2] | 0) + 32 + (c[j >> 2] | 0) >> 0] | 0) | 0) >>> 0) / 255 | 0) & 255; a[g + (c[j >> 2] | 0) >> 0] = f; f = (((S(c[(c[n >> 2] | 0) + 28 >> 2] | 0, d[(c[n >> 2] | 0) + 35 + (c[j >> 2] | 0) >> 0] | 0) | 0) >>> 0) / 255 | 0) & 255; a[h + (c[j >> 2] | 0) >> 0] = f; c[j >> 2] = (c[j >> 2] | 0) + 1 } hO(c[b + 44 >> 2] | 0, c[(c[n >> 2] | 0) + 4 >> 2] | 0, c[(c[n >> 2] | 0) + 8 >> 2] | 0); c[q >> 2] = c[c[n >> 2] >> 2]; c[i >> 2] = c[(c[n >> 2] | 0) + 20 >> 2]; c[p >> 2] = c[(c[n >> 2] | 0) + 24 >> 2]; c[r >> 2] = 0; while (1) { b = c[n >> 2] | 0; if ((c[r >> 2] | 0) >>> 0 >= (c[(c[n >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; c[o >> 2] = (c[b + 8 >> 2] | 0) - (c[r >> 2] | 0); if ((c[o >> 2] | 0) >>> 0 > (c[(c[n >> 2] | 0) + 16 >> 2] | 0) >>> 0) c[o >> 2] = c[(c[n >> 2] | 0) + 16 >> 2]; c[m >> 2] = S(c[o >> 2] | 0, (((c[(c[n >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0) | 0; if (!(!(a[(c[n >> 2] | 0) + 12 >> 0] | 0) ? !(nQ(c[i >> 2] | 0, c[q >> 2] | 0, c[m >> 2] | 0) | 0) : 0)) { QQ(c[i >> 2] | 0, c[q >> 2] | 0, c[m >> 2] | 0) | 0; c[k >> 2] = 0; c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= c[m >> 2] << 3 >>> 0) break; if (d[(c[i >> 2] | 0) + ((c[j >> 2] | 0) >>> 3) >> 0] & 128 >> (c[j >> 2] & 7) | 0) { a[(c[p >> 2] | 0) + ((c[k >> 2] | 0) + 0) >> 0] = a[g >> 0] | 0; a[(c[p >> 2] | 0) + ((c[k >> 2] | 0) + 1) >> 0] = a[g + 1 >> 0] | 0; b = a[g + 2 >> 0] | 0; e = c[p >> 2] | 0; f = c[k >> 2] | 0 } else { a[(c[p >> 2] | 0) + ((c[k >> 2] | 0) + 0) >> 0] = a[h >> 0] | 0; a[(c[p >> 2] | 0) + ((c[k >> 2] | 0) + 1) >> 0] = a[h + 1 >> 0] | 0; b = a[h + 2 >> 0] | 0; e = c[p >> 2] | 0; f = c[k >> 2] | 0 } a[e + (f + 2) >> 0] = b; c[k >> 2] = (c[k >> 2] | 0) + 3; c[j >> 2] = (c[j >> 2] | 0) + 1 } lO(c[(c[n >> 2] | 0) + 44 >> 2] | 0, c[p >> 2] | 0, c[r >> 2] | 0, c[o >> 2] | 0) } c[q >> 2] = (c[q >> 2] | 0) + (c[m >> 2] | 0); c[i >> 2] = (c[i >> 2] | 0) + (c[m >> 2] | 0); c[r >> 2] = (c[r >> 2] | 0) + (c[o >> 2] | 0) } a[b + 12 >> 0] = 0; mO(c[(c[n >> 2] | 0) + 44 >> 2] | 0); l = s; return } function Ij(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; g = f + 4 | 0; e = f; c[d >> 2] = a; c[g >> 2] = b; c[e >> 2] = c[(c[d >> 2] | 0) + 40 >> 2]; b = (c[d >> 2] | 0) + 40 | 0; c[b >> 2] = (c[b >> 2] | 0) + (c[g >> 2] | 0); if ((c[(c[d >> 2] | 0) + 40 >> 2] | 0) >>> 0 < 120384) { l = f; return } if ((c[e >> 2] | 0) >>> 0 < 120384) { Hj(c[d >> 2] | 0); Jj(c[d >> 2] | 0, 1) } if ((c[(c[d >> 2] | 0) + 40 >> 2] | 0) >>> 0 < 130240) { l = f; return } Jj(c[d >> 2] | 0, 0); g = (c[d >> 2] | 0) + 40 | 0; c[g >> 2] = (c[g >> 2] | 0) - 130240; l = f; return } function Jj(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = b; a[g >> 0] = e; if ((d[(c[f >> 2] | 0) + 48 >> 0] | 0 | 0) == (d[g >> 0] | 0 | 0)) { l = h; return } a[(c[f >> 2] | 0) + 48 >> 0] = a[g >> 0] | 0; if (!(c[(c[f >> 2] | 0) + 56 >> 2] | 0)) { l = h; return } Qb[c[(c[f >> 2] | 0) + 56 >> 2] & 255](c[(c[f >> 2] | 0) + 52 >> 2] | 0, a[g >> 0] | 0); l = h; return } function Kj(e, f, g) { e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; k = l; l = l + 32 | 0; h = k + 16 | 0; n = k + 12 | 0; j = k + 8 | 0; i = k + 4 | 0; m = k; c[h >> 2] = e; c[n >> 2] = f; c[j >> 2] = g; c[c[h >> 2] >> 2] = 0; c[(c[h >> 2] | 0) + 4 >> 2] = c[n >> 2]; a[(c[h >> 2] | 0) + 288 >> 0] = 0; g = Lj(c[j >> 2] | 0, 0) | 0; b[(c[h >> 2] | 0) + 12 >> 1] = g; c[(c[h >> 2] | 0) + 8 >> 2] = 1; c[m >> 2] = ((d[c[j >> 2] >> 0] | 0) & 255) << 2 | ((d[(c[j >> 2] | 0) + 1 >> 0] | 0) & 192) >> 6; Qb[c[12944 + (c[m >> 2] << 2) >> 2] & 255](c[h >> 2] | 0, c[j >> 2] | 0); c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[(c[h >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; n = Lj(c[j >> 2] | 0, c[i >> 2] << 1) | 0; b[(c[h >> 2] | 0) + 12 + (c[i >> 2] << 1) >> 1] = n; c[i >> 2] = (c[i >> 2] | 0) + 1 } l = k; return } function Lj(a, f) { a = a | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 16 | 0; k = h + 8 | 0; j = h + 4 | 0; g = h + 12 | 0; i = h; c[k >> 2] = a; c[j >> 2] = f; c[i >> 2] = (c[k >> 2] | 0) + (c[j >> 2] | 0); b[g >> 1] = (d[c[i >> 2] >> 0] | 0) & 255; b[g >> 1] = (e[g >> 1] | 0) << 8 | (d[(c[i >> 2] | 0) + 1 >> 0] | 0) & 255; l = h; return b[g >> 1] | 0 } function Mj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) & 63 | 0) == 60) { vm(a, 45669, b, 15, 26, 8) | 0; l = d; return } else { vm(a, 45669, b, 15, 3, 8) | 0; l = d; return } } function Nj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; g = f; c[d >> 2] = a; c[g >> 2] = b; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[d >> 2] | 0) + 12 >> 1] | 0) & 63 | 0) == 60) { vm(a, 45663, b, 16, 27, 16) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 1; l = f; return } else { vm(a, 45663, b, 16, 3, 16) | 0; l = f; return } } function Oj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45657, c[e >> 2] | 0, 17, 3, 32) | 0; l = d; return } function Pj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e; c[d >> 2] = a; c[g >> 2] = b; c[f >> 2] = Em(c[d >> 2] | 0, c[g >> 2] | 0) | 0; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (c[f >> 2] & 2048 | 0) vm(a, 45643, b, 3, 9, 8) | 0; else vm(a, 45650, b, 3, 9, 8) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 128; l = e; return } function Qj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) == 1) { vm(a, 45635, b, 14, 6, 16) | 0; l = d; return } else { vm(a, 45531, b, 6, 3, 8) | 0; l = d; return } } function Rj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) == 1) { vm(a, 45627, b, 14, 6, 32) | 0; l = d; return } else { vm(a, 45526, b, 6, 3, 8) | 0; l = d; return } } function Sj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) == 1) { vm(a, 45635, b, 6, 14, 16) | 0; l = d; return } else { vm(a, 45521, b, 6, 3, 8) | 0; l = d; return } } function Tj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) == 1) { vm(a, 45627, b, 6, 14, 32) | 0; l = d; return } else { vm(a, 45516, b, 6, 3, 8) | 0; l = d; return } } function Uj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) & 63 | 0) == 60) { vm(a, 45620, b, 15, 26, 8) | 0; l = d; return } else { vm(a, 45620, b, 15, 3, 8) | 0; l = d; return } } function Vj(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; g = f; c[d >> 2] = a; c[g >> 2] = b; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[d >> 2] | 0) + 12 >> 1] | 0) & 63 | 0) == 60) { vm(a, 45613, b, 16, 27, 16) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 1; l = f; return } else { vm(a, 45613, b, 16, 3, 16) | 0; l = f; return } } function Wj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45606, c[e >> 2] | 0, 17, 3, 32) | 0; l = d; return } function Xj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e; c[d >> 2] = a; c[g >> 2] = b; c[f >> 2] = Em(c[d >> 2] | 0, c[g >> 2] | 0) | 0; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (c[f >> 2] & 2048 | 0) vm(a, 45592, b, 3, 9, 16) | 0; else vm(a, 45599, b, 3, 9, 16) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 128; l = e; return } function Yj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45585, c[e >> 2] | 0, 15, 3, 8) | 0; l = d; return } function Zj(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45578, c[e >> 2] | 0, 16, 3, 16) | 0; l = d; return } function _j(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45571, c[e >> 2] | 0, 17, 3, 32) | 0; l = d; return } function $j(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e; c[d >> 2] = a; c[g >> 2] = b; c[f >> 2] = Em(c[d >> 2] | 0, c[g >> 2] | 0) | 0; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (c[f >> 2] & 2048 | 0) vm(a, 45557, b, 3, 9, 32) | 0; else vm(a, 45564, b, 3, 9, 32) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 128; l = e; return } function ak(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45550, c[e >> 2] | 0, 15, 3, 8) | 0; l = d; return } function bk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45543, c[e >> 2] | 0, 16, 3, 16) | 0; l = d; return } function ck(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45536, c[e >> 2] | 0, 17, 3, 32) | 0; l = d; return } function dk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44467, c[e >> 2] | 0, 1, 16) | 0; l = d; return } function ek(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45531, c[e >> 2] | 0, 15, 3, 8) | 0; l = d; return } function fk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45526, c[e >> 2] | 0, 15, 3, 8) | 0; l = d; return } function gk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45521, c[e >> 2] | 0, 15, 3, 8) | 0; l = d; return } function hk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45516, c[e >> 2] | 0, 15, 3, 8) | 0; l = d; return } function ik(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) & 63 | 0) == 60) { vm(a, 45509, b, 15, 26, 8) | 0; l = d; return } else { vm(a, 45509, b, 15, 3, 8) | 0; l = d; return } } function jk(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; g = f; c[d >> 2] = a; c[g >> 2] = b; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[d >> 2] | 0) + 12 >> 1] | 0) & 63 | 0) == 60) { vm(a, 45502, b, 16, 27, 16) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 1; l = f; return } else { vm(a, 45502, b, 16, 3, 16) | 0; l = f; return } } function kk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45495, c[e >> 2] | 0, 17, 3, 32) | 0; l = d; return } function lk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45488, c[e >> 2] | 0, 15, 3, 8) | 0; l = d; return } function mk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45481, c[e >> 2] | 0, 16, 3, 16) | 0; l = d; return } function nk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45474, c[e >> 2] | 0, 17, 3, 32) | 0; l = d; return } function ok(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e; c[d >> 2] = a; c[g >> 2] = b; c[f >> 2] = Em(c[d >> 2] | 0, c[g >> 2] | 0) | 0; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (c[f >> 2] & 2048 | 0) vm(a, 45467, b, 9, 3, 8) | 0; else vm(a, 45467, b, 3, 9, 8) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 64; l = e; return } function pk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e; c[d >> 2] = a; c[g >> 2] = b; c[f >> 2] = Em(c[d >> 2] | 0, c[g >> 2] | 0) | 0; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (c[f >> 2] & 2048 | 0) vm(a, 45460, b, 9, 3, 16) | 0; else vm(a, 45460, b, 3, 9, 16) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 64; l = e; return } function qk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e; c[d >> 2] = a; c[g >> 2] = b; c[f >> 2] = Em(c[d >> 2] | 0, c[g >> 2] | 0) | 0; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (c[f >> 2] & 2048 | 0) vm(a, 45453, b, 9, 3, 32) | 0; else vm(a, 45453, b, 3, 9, 32) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 64; l = e; return } function rk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 45449, c[f >> 2] | 0, 3, 0) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 2; l = d; return } function sk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45442, c[e >> 2] | 0, 3, 4, 8) | 0; l = d; return } function tk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45435, c[e >> 2] | 0, 3, 4, 32) | 0; l = d; return } function uk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45427, c[e >> 2] | 0, 3, 8, 32) | 0; l = d; return } function vk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45333, c[e >> 2] | 0, 3, 4, 16) | 0; l = d; return } function wk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45419, c[e >> 2] | 0, 3, 8, 16) | 0; l = d; return } function xk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 45412, c[f >> 2] | 0, 3, 8) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 32; l = d; return } function yk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 45405, c[f >> 2] | 0, 3, 16) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 32; l = d; return } function zk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 45398, c[f >> 2] | 0, 3, 32) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 32; l = d; return } function Ak(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45333, c[e >> 2] | 0, 27, 3, 16) | 0; l = d; return } function Bk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45771, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function Ck(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45394, c[e >> 2] | 0, 3, 8, 32) | 0; l = d; return } function Dk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45388, c[e >> 2] | 0, 3, 8) | 0; l = d; return } function Ek(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45382, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function Fk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45376, c[e >> 2] | 0, 3, 32) | 0; l = d; return } function Gk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; vm(c[e >> 2] | 0, 45333, c[f >> 2] | 0, 26, 3, 16) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 64; l = d; return } function Hk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45370, c[e >> 2] | 0, 3, 8) | 0; l = d; return } function Ik(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45364, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function Jk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45358, c[e >> 2] | 0, 3, 32) | 0; l = d; return } function Kk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45333, c[e >> 2] | 0, 3, 26, 16) | 0; l = d; return } function Lk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45352, c[e >> 2] | 0, 3, 8) | 0; l = d; return } function Mk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45346, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function Nk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45340, c[e >> 2] | 0, 3, 32) | 0; l = d; return } function Ok(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; vm(c[e >> 2] | 0, 45333, c[f >> 2] | 0, 3, 27, 16) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 1; l = d; return } function Pk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 45326, c[f >> 2] | 0, 3, 8) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 32; l = d; return } function Qk(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (!((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7)) { Hm(a, 45317, b, 5, 32) | 0; l = d; return } else { Hm(a, 45322, b, 3, 32) | 0; l = d; return } } function Rk(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Hm(c[d >> 2] | 0, 45311, c[f >> 2] | 0, 5, 16) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 45238, c[f >> 2] | 0, 25, 3, 16) | 0;l = g; return } default: { vm(c[d >> 2] | 0, 45238, c[f >> 2] | 0, 24, 3, 16) | 0;l = g; return } } } function Sk(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Hm(c[d >> 2] | 0, 45305, c[f >> 2] | 0, 5, 32) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 45230, c[f >> 2] | 0, 25, 3, 32) | 0;l = g; return } default: { vm(c[d >> 2] | 0, 45230, c[f >> 2] | 0, 24, 3, 32) | 0;l = g; return } } } function Tk(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; g = f; c[d >> 2] = a; c[g >> 2] = b; a = c[d >> 2] | 0; b = c[g >> 2] | 0; if (!((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7)) { Hm(a, 45298, b, 5, 32) | 0; g = c[d >> 2] | 0; c[g >> 2] = c[g >> 2] | 128; l = f; return } else { Ck(a, b); l = f; return } } function Uk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45292, c[e >> 2] | 0, 3, 8) | 0; l = d; return } function Vk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45286, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function Wk(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 45280, c[e >> 2] | 0, 3, 32) | 0; l = d; return } function Xk(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; a = c[d >> 2] | 0; if ((e[(c[d >> 2] | 0) + 12 >> 1] | 0 | 0) == 19196) { um(a, 45268) | 0; f = c[d >> 2] | 0; c[f >> 2] = c[f >> 2] | 4; l = g; return } else { Hm(a, 45276, c[f >> 2] | 0, 3, 8) | 0; l = g; return } } function Yk(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; h = g; c[f >> 2] = a; c[h >> 2] = d; a = (Em(c[f >> 2] | 0, c[h >> 2] | 0) | 0) & 65535; b[(c[f >> 2] | 0) + 12 + 2 >> 1] = a; a = c[f >> 2] | 0; d = c[h >> 2] | 0; if ((e[(c[f >> 2] | 0) + 12 + 2 >> 1] | 0) & 1024 | 0) { vm(a, 45261, d, 3, 31, 32) | 0; h = c[f >> 2] | 0; f = c[h >> 2] | 0; f = f | 128; c[h >> 2] = f; l = g; return } else { vm(a, 45261, d, 3, 32, 32) | 0; h = c[f >> 2] | 0; f = c[h >> 2] | 0; f = f | 128; c[h >> 2] = f; l = g; return } } function Zk(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; h = g; c[f >> 2] = a; c[h >> 2] = d; a = (Em(c[f >> 2] | 0, c[h >> 2] | 0) | 0) & 65535; b[(c[f >> 2] | 0) + 12 + 2 >> 1] = a; a = c[f >> 2] | 0; d = c[h >> 2] | 0; if ((e[(c[f >> 2] | 0) + 12 + 2 >> 1] | 0) & 1024 | 0) { vm(a, 45246, d, 3, 30, 32) | 0; h = c[f >> 2] | 0; f = c[h >> 2] | 0; f = f | 128; c[h >> 2] = f; l = g; return } else { vm(a, 45254, d, 3, 30, 32) | 0; h = c[f >> 2] | 0; f = c[h >> 2] | 0; f = f | 128; c[h >> 2] = f; l = g; return } } function _k(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (!((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7)) { Hm(a, 44467, b, 1, 16) | 0; l = d; return } else { Im(a, 45238, b, 3, 24, 16) | 0; l = d; return } } function $k(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (!((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7)) { Hm(a, 44467, b, 1, 16) | 0; l = d; return } else { Im(a, 45230, b, 3, 24, 32) | 0; l = d; return } } function al(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; f = h; c[g >> 2] = a; c[f >> 2] = b; a = c[g >> 2] | 0; if ((e[(c[g >> 2] | 0) + 12 >> 1] | 0 | 0) == 20080) { um(a, 45176) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 1; l = h; return } b = c[g >> 2] | 0; if ((e[a + 12 >> 1] | 0 | 0) == 20081) { um(b, 45182) | 0; l = h; return } d = c[g >> 2] | 0; if ((e[b + 12 >> 1] | 0 | 0) == 20082) { Hm(d, 45186, c[f >> 2] | 0, 16, 16) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 1; l = h; return } a = c[g >> 2] | 0; if ((e[d + 12 >> 1] | 0 | 0) == 20083) { um(a, 45191) | 0; f = c[g >> 2] | 0; c[f >> 2] = c[f >> 2] | 1; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 8; l = h; return } b = c[g >> 2] | 0; if ((e[a + 12 >> 1] | 0 | 0) == 20084) { Hm(b, 45195, c[f >> 2] | 0, 16, 16) | 0; f = c[g >> 2] | 0; c[f >> 2] = c[f >> 2] | 16; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 64; l = h; return } a = c[g >> 2] | 0; if ((e[b + 12 >> 1] | 0 | 0) == 20085) { um(a, 46336) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 16; l = h; return } b = c[g >> 2] | 0; if ((e[a + 12 >> 1] | 0 | 0) == 20086) { um(b, 45199) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 32; l = h; return } a = c[g >> 2] | 0; if ((e[b + 12 >> 1] | 0 | 0) == 20087) { um(a, 45205) | 0; l = h; return } b = c[g >> 2] | 0; if ((e[a + 12 >> 1] | 0 | 0) == 20090) { Em(b, c[f >> 2] | 0) | 0; vm(c[g >> 2] | 0, 45209, c[f >> 2] | 0, 29, 9, 16) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 64; l = h; return } a = c[g >> 2] | 0; if ((e[b + 12 >> 1] | 0 | 0) == 20091) { Em(a, c[f >> 2] | 0) | 0; vm(c[g >> 2] | 0, 45209, c[f >> 2] | 0, 9, 29, 16) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 64; l = h; return } b = c[g >> 2] | 0; if (!((e[a + 12 >> 1] | 0) & 48)) { Hm(b, 45811, c[f >> 2] | 0, 19, 0) | 0; l = h; return } a = c[g >> 2] | 0; if (((e[b + 12 >> 1] | 0) & 56 | 0) == 16) { vm(a, 45215, c[f >> 2] | 0, 7, 16, 16) | 0; l = h; return } b = c[g >> 2] | 0; if (((e[a + 12 >> 1] | 0) & 56 | 0) == 24) { Hm(b, 45220, c[f >> 2] | 0, 7, 0) | 0; l = h; return } d = c[g >> 2] | 0; if (((e[b + 12 >> 1] | 0) & 56 | 0) == 32) { vm(d, 45225, c[f >> 2] | 0, 7, 28, 0) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 1; l = h; return } b = c[g >> 2] | 0; a = c[f >> 2] | 0; if (((e[d + 12 >> 1] | 0) & 56 | 0) == 40) { vm(b, 45225, a, 28, 7, 0) | 0; g = c[g >> 2] | 0; c[g >> 2] = c[g >> 2] | 1; l = h; return } else { Hm(b, 44467, a, 1, 16) | 0; l = h; return } } function bl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 45172, c[f >> 2] | 0, 3, 0) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 4; l = d; return } function cl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45165, c[e >> 2] | 0, 18, 3, 8) | 0; l = d; return } function dl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45158, c[e >> 2] | 0, 18, 3, 16) | 0; l = d; return } function el(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 45151, c[e >> 2] | 0, 18, 3, 32) | 0; l = d; return } function fl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; h = i + 8 | 0; d = i + 4 | 0; g = i; c[f >> 2] = a; c[h >> 2] = b; c[d >> 2] = (e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 8 & 15; c[g >> 2] = (e[(c[f >> 2] | 0) + 12 >> 1] | 0) & 63; if ((c[d >> 2] | 0) >>> 0 > 1) { b = c[f >> 2] | 0; c[b >> 2] = c[b >> 2] | 32 } if ((c[g >> 2] | 0) == 58) { Hm(c[f >> 2] | 0, c[17108 + (c[d >> 2] << 2) >> 2] | 0, c[h >> 2] | 0, 16, 0) | 0; h = c[f >> 2] | 0; c[h >> 2] = c[h >> 2] | 128; l = i; return } if ((c[g >> 2] | 0) == 59) { Hm(c[f >> 2] | 0, c[17108 + (c[d >> 2] << 2) >> 2] | 0, c[h >> 2] | 0, 17, 0) | 0; h = c[f >> 2] | 0; c[h >> 2] = c[h >> 2] | 128; l = i; return } if ((c[g >> 2] | 0) == 60) { um(c[f >> 2] | 0, c[17108 + (c[d >> 2] << 2) >> 2] | 0) | 0; h = c[f >> 2] | 0; c[h >> 2] = c[h >> 2] | 128; l = i; return } b = c[f >> 2] | 0; a = c[d >> 2] | 0; if ((c[g >> 2] & 56 | 0) == 8) { vm(b, c[17172 + (a << 2) >> 2] | 0, c[h >> 2] | 0, 5, 22, 0) | 0; h = c[f >> 2] | 0; c[h >> 2] = c[h >> 2] | 2; l = i; return } else { Hm(b, c[17236 + (a << 2) >> 2] | 0, c[h >> 2] | 0, 3, 8) | 0; l = i; return } } function gl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44894, c[e >> 2] | 0, 18, 3, 8) | 0; l = d; return } function hl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44887, c[e >> 2] | 0, 18, 3, 16) | 0; l = d; return } function il(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44880, c[e >> 2] | 0, 18, 3, 32) | 0; l = d; return } function jl(a, b) { a = a | 0; b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 8 | 0; i = j + 4 | 0; g = j; c[h >> 2] = a; c[i >> 2] = b; c[g >> 2] = (e[(c[h >> 2] | 0) + 12 >> 1] | 0) >> 8 & 15; do if (d[(c[i >> 2] | 0) + 1 >> 0] | 0) { a = c[h >> 2] | 0; b = c[17044 + (c[g >> 2] << 2) >> 2] | 0; f = c[i >> 2] | 0; if ((d[(c[i >> 2] | 0) + 1 >> 0] | 0 | 0) == 255) { Hm(a, b, f, 23, 0) | 0; FQ((c[h >> 2] | 0) + 32 | 0, 44206) | 0; i = c[h >> 2] | 0; c[i >> 2] = c[i >> 2] | 128; break } else { Hm(a, b, f, 21, 0) | 0; FQ((c[h >> 2] | 0) + 32 | 0, 44813) | 0; break } } else { Hm(c[h >> 2] | 0, c[17044 + (c[g >> 2] << 2) >> 2] | 0, c[i >> 2] | 0, 22, 0) | 0; FQ((c[h >> 2] | 0) + 32 | 0, 44209) | 0 } while (0); i = c[h >> 2] | 0; c[i >> 2] = c[i >> 2] | ((c[g >> 2] | 0) == 1 ? 4 : 2); if ((c[g >> 2] | 0) >>> 0 <= 1) { l = j; return } i = c[h >> 2] | 0; c[i >> 2] = c[i >> 2] | 32; l = j; return } function kl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44807, c[e >> 2] | 0, 20, 6, 0) | 0; l = d; return } function ll(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44795, c[e >> 2] | 0, 3, 6, 8) | 0; l = d; return } function ml(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44783, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function nl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44778, c[e >> 2] | 0, 3, 6, 32) | 0; l = d; return } function ol(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44800, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function pl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44788, c[f >> 2] | 0, 5, 6, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44788, c[f >> 2] | 0, 12, 13, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44795, c[f >> 2] | 0, 6, 3, 8) | 0;l = g; return } } } function ql(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7) >>> 0 < 2) { Hm(a, 44467, b, 1, 16) | 0; l = d; return } else { vm(a, 44783, b, 6, 3, 16) | 0; l = d; return } } function rl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7) >>> 0 < 2) { Hm(a, 44467, b, 1, 16) | 0; l = d; return } else { vm(a, 44778, b, 6, 3, 32) | 0; l = d; return } } function sl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44771, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function tl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44758, c[e >> 2] | 0, 3, 6, 8) | 0; l = d; return } function ul(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44745, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function vl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44732, c[e >> 2] | 0, 3, 6, 32) | 0; l = d; return } function wl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44764, c[e >> 2] | 0, 3, 8, 16) | 0; l = d; return } function xl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44751, c[f >> 2] | 0, 5, 6, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44751, c[f >> 2] | 0, 12, 13, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44758, c[f >> 2] | 0, 6, 3, 8) | 0;l = g; return } } } function yl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44738, c[f >> 2] | 0, 5, 6, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44738, c[f >> 2] | 0, 12, 13, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44745, c[f >> 2] | 0, 6, 3, 16) | 0;l = g; return } } } function zl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44725, c[f >> 2] | 0, 5, 6, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44725, c[f >> 2] | 0, 12, 13, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44732, c[f >> 2] | 0, 6, 3, 32) | 0;l = g; return } } } function Al(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44718, c[e >> 2] | 0, 3, 8, 32) | 0; l = d; return } function Bl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0; d = l; l = l + 32 | 0; h = d; f = d + 8 | 0; g = d + 16 | 0; c[f >> 2] = a; c[d + 4 >> 2] = b; c[h >> 2] = e[(c[f >> 2] | 0) + 12 >> 1]; BQ(g, 44044, h) | 0; um(c[f >> 2] | 0, g) | 0; b = c[f >> 2] | 0; c[b >> 2] = c[b >> 2] | 4; l = d; return } function Cl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44712, c[e >> 2] | 0, 3, 6, 8) | 0; l = d; return } function Dl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44706, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function El(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44700, c[e >> 2] | 0, 3, 6, 32) | 0; l = d; return } function Fl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44693, c[e >> 2] | 0, 3, 8, 16) | 0; l = d; return } function Gl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) & 56 | 0) == 8) { vm(a, 44680, b, 10, 11, 8) | 0; l = d; return } else { vm(a, 44687, b, 6, 3, 8) | 0; l = d; return } } function Hl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) & 56 | 0) == 8) { vm(a, 44667, b, 10, 11, 16) | 0; l = d; return } else { vm(a, 44674, b, 6, 3, 16) | 0; l = d; return } } function Il(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; g = d; c[f >> 2] = a; c[g >> 2] = b; a = c[f >> 2] | 0; b = c[g >> 2] | 0; if (((e[(c[f >> 2] | 0) + 12 >> 1] | 0) & 56 | 0) == 8) { vm(a, 44654, b, 10, 11, 32) | 0; l = d; return } else { vm(a, 44661, b, 6, 3, 32) | 0; l = d; return } } function Jl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44647, c[e >> 2] | 0, 3, 8, 32) | 0; l = d; return } function Kl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44634, c[e >> 2] | 0, 3, 6, 8) | 0; l = d; return } function Ll(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44621, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function Ml(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44615, c[e >> 2] | 0, 3, 6, 32) | 0; l = d; return } function Nl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44640, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function Ol(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44627, c[f >> 2] | 0, 5, 6, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44627, c[f >> 2] | 0, 12, 13, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44634, c[f >> 2] | 0, 6, 3, 8) | 0;l = g; return } } } function Pl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44611, c[f >> 2] | 0, 6, 5, 32) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44611, c[f >> 2] | 0, 8, 7, 32) | 0;l = g; return } default: { vm(c[d >> 2] | 0, 44621, c[f >> 2] | 0, 6, 3, 16) | 0;l = g; return } } } function Ql(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Hm(c[d >> 2] | 0, 44467, c[f >> 2] | 0, 1, 16) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44611, c[f >> 2] | 0, 6, 7, 32) | 0;l = g; return } default: { vm(c[d >> 2] | 0, 44615, c[f >> 2] | 0, 6, 3, 32) | 0;l = g; return } } } function Rl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44604, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function Sl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44591, c[e >> 2] | 0, 3, 6, 8) | 0; l = d; return } function Tl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44578, c[e >> 2] | 0, 3, 6, 16) | 0; l = d; return } function Ul(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44565, c[e >> 2] | 0, 3, 6, 32) | 0; l = d; return } function Vl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44597, c[e >> 2] | 0, 3, 8, 16) | 0; l = d; return } function Wl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44584, c[f >> 2] | 0, 5, 6, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44584, c[f >> 2] | 0, 12, 13, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44591, c[f >> 2] | 0, 6, 3, 8) | 0;l = g; return } } } function Xl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44571, c[f >> 2] | 0, 5, 6, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44571, c[f >> 2] | 0, 12, 13, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44578, c[f >> 2] | 0, 6, 3, 16) | 0;l = g; return } } } function Yl(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44558, c[f >> 2] | 0, 5, 6, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 1: { vm(c[d >> 2] | 0, 44558, c[f >> 2] | 0, 12, 13, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } default: { vm(c[d >> 2] | 0, 44565, c[f >> 2] | 0, 6, 3, 32) | 0;l = g; return } } } function Zl(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44551, c[e >> 2] | 0, 3, 8, 32) | 0; l = d; return } function _l(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44526, c[f >> 2] | 0, 18, 5, 8) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44532, c[f >> 2] | 0, 18, 5, 8) | 0;l = g; return } case 2: { vm(c[d >> 2] | 0, 44538, c[f >> 2] | 0, 18, 5, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 3: { vm(c[d >> 2] | 0, 44545, c[f >> 2] | 0, 18, 5, 8) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 44526, c[f >> 2] | 0, 6, 5, 8) | 0;l = g; return } case 5: { vm(c[d >> 2] | 0, 44532, c[f >> 2] | 0, 6, 5, 8) | 0;l = g; return } case 6: { vm(c[d >> 2] | 0, 44538, c[f >> 2] | 0, 6, 5, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 7: { vm(c[d >> 2] | 0, 44545, c[f >> 2] | 0, 6, 5, 8) | 0;l = g; return } default: {} } } function $l(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44495, c[f >> 2] | 0, 18, 5, 16) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44430, c[f >> 2] | 0, 18, 5, 16) | 0;l = g; return } case 2: { vm(c[d >> 2] | 0, 44417, c[f >> 2] | 0, 18, 5, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 3: { vm(c[d >> 2] | 0, 44404, c[f >> 2] | 0, 18, 5, 16) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 44495, c[f >> 2] | 0, 6, 5, 16) | 0;l = g; return } case 5: { vm(c[d >> 2] | 0, 44430, c[f >> 2] | 0, 6, 5, 16) | 0;l = g; return } case 6: { vm(c[d >> 2] | 0, 44417, c[f >> 2] | 0, 6, 5, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 7: { vm(c[d >> 2] | 0, 44404, c[f >> 2] | 0, 6, 5, 16) | 0;l = g; return } default: {} } } function am(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44501, c[f >> 2] | 0, 18, 5, 32) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44507, c[f >> 2] | 0, 18, 5, 32) | 0;l = g; return } case 2: { vm(c[d >> 2] | 0, 44513, c[f >> 2] | 0, 18, 5, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 3: { vm(c[d >> 2] | 0, 44520, c[f >> 2] | 0, 18, 5, 32) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 44501, c[f >> 2] | 0, 6, 5, 32) | 0;l = g; return } case 5: { vm(c[d >> 2] | 0, 44507, c[f >> 2] | 0, 6, 5, 32) | 0;l = g; return } case 6: { vm(c[d >> 2] | 0, 44513, c[f >> 2] | 0, 6, 5, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 7: { vm(c[d >> 2] | 0, 44520, c[f >> 2] | 0, 6, 5, 32) | 0;l = g; return } default: {} } } function bm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44495, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function cm(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44470, c[f >> 2] | 0, 18, 5, 8) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44476, c[f >> 2] | 0, 18, 5, 8) | 0;l = g; return } case 2: { vm(c[d >> 2] | 0, 44482, c[f >> 2] | 0, 18, 5, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 3: { vm(c[d >> 2] | 0, 44489, c[f >> 2] | 0, 18, 5, 8) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 44470, c[f >> 2] | 0, 6, 5, 8) | 0;l = g; return } case 5: { vm(c[d >> 2] | 0, 44476, c[f >> 2] | 0, 6, 5, 8) | 0;l = g; return } case 6: { vm(c[d >> 2] | 0, 44482, c[f >> 2] | 0, 6, 5, 8) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 7: { vm(c[d >> 2] | 0, 44489, c[f >> 2] | 0, 6, 5, 8) | 0;l = g; return } default: {} } } function dm(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44436, c[f >> 2] | 0, 18, 5, 16) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44424, c[f >> 2] | 0, 18, 5, 16) | 0;l = g; return } case 2: { vm(c[d >> 2] | 0, 44410, c[f >> 2] | 0, 18, 5, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 3: { vm(c[d >> 2] | 0, 44398, c[f >> 2] | 0, 18, 5, 16) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 44436, c[f >> 2] | 0, 6, 5, 16) | 0;l = g; return } case 5: { vm(c[d >> 2] | 0, 44424, c[f >> 2] | 0, 6, 5, 16) | 0;l = g; return } case 6: { vm(c[d >> 2] | 0, 44410, c[f >> 2] | 0, 6, 5, 16) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 7: { vm(c[d >> 2] | 0, 44398, c[f >> 2] | 0, 6, 5, 16) | 0;l = g; return } default: {} } } function em(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 12 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vm(c[d >> 2] | 0, 44442, c[f >> 2] | 0, 18, 5, 32) | 0;l = g; return } case 1: { vm(c[d >> 2] | 0, 44448, c[f >> 2] | 0, 18, 5, 32) | 0;l = g; return } case 2: { vm(c[d >> 2] | 0, 44454, c[f >> 2] | 0, 18, 5, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 3: { vm(c[d >> 2] | 0, 44461, c[f >> 2] | 0, 18, 5, 32) | 0;l = g; return } case 4: { vm(c[d >> 2] | 0, 44442, c[f >> 2] | 0, 6, 5, 32) | 0;l = g; return } case 5: { vm(c[d >> 2] | 0, 44448, c[f >> 2] | 0, 6, 5, 32) | 0;l = g; return } case 6: { vm(c[d >> 2] | 0, 44454, c[f >> 2] | 0, 6, 5, 32) | 0;f = c[d >> 2] | 0;c[f >> 2] = c[f >> 2] | 32;l = g; return } case 7: { vm(c[d >> 2] | 0, 44461, c[f >> 2] | 0, 6, 5, 32) | 0;l = g; return } default: {} } } function fm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44436, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function gm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44430, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function hm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44424, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function im(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 44417, c[f >> 2] | 0, 3, 16) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 32; l = d; return } function jm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; Hm(c[e >> 2] | 0, 44410, c[f >> 2] | 0, 3, 16) | 0; b = c[e >> 2] | 0; c[b >> 2] = c[b >> 2] | 32; l = d; return } function km(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44404, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function lm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44398, c[e >> 2] | 0, 3, 16) | 0; l = d; return } function mm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44392, c[e >> 2] | 0, 33, 8) | 0; l = d; return } function nm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44385, c[e >> 2] | 0, 33, 34, 8) | 0; l = d; return } function om(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44379, c[e >> 2] | 0, 33, 8) | 0; l = d; return } function pm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44372, c[e >> 2] | 0, 33, 34, 8) | 0; l = d; return } function qm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44366, c[e >> 2] | 0, 33, 8) | 0; l = d; return } function rm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; Hm(c[f >> 2] | 0, 44360, c[e >> 2] | 0, 33, 8) | 0; l = d; return } function sm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; vm(c[f >> 2] | 0, 44049, c[e >> 2] | 0, 34, 33, 8) | 0; l = d; return } function tm(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0; d = l; l = l + 32 | 0; h = d; f = d + 8 | 0; g = d + 16 | 0; c[f >> 2] = a; c[d + 4 >> 2] = b; c[h >> 2] = e[(c[f >> 2] | 0) + 12 >> 1]; BQ(g, 44044, h) | 0; um(c[f >> 2] | 0, g) | 0; b = c[f >> 2] | 0; c[b >> 2] = c[b >> 2] | 4; l = d; return } function um(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; NP((c[e >> 2] | 0) + 32 | 0, c[f >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 28 >> 2] = 0; l = d; return 0 } function vm(a, b, d, e, f, g) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; h = l; l = l + 32 | 0; m = h + 20 | 0; o = h + 16 | 0; k = h + 12 | 0; n = h + 8 | 0; j = h + 4 | 0; i = h; c[m >> 2] = a; c[o >> 2] = b; c[k >> 2] = d; c[n >> 2] = e; c[j >> 2] = f; c[i >> 2] = g; NP((c[m >> 2] | 0) + 32 | 0, c[o >> 2] | 0) | 0; c[(c[m >> 2] | 0) + 28 >> 2] = 2; wm(c[m >> 2] | 0, (c[m >> 2] | 0) + 96 | 0, c[k >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0); wm(c[m >> 2] | 0, (c[m >> 2] | 0) + 160 | 0, c[k >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0); l = h; return 0 } function wm(f, g, h, i, j) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; j = j | 0; var k = 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; P = l; l = l + 224 | 0; N = P + 192 | 0; M = P + 184 | 0; L = P + 176 | 0; K = P + 168 | 0; J = P + 160 | 0; I = P + 152 | 0; H = P + 144 | 0; F = P + 136 | 0; E = P + 128 | 0; D = P + 120 | 0; C = P + 112 | 0; B = P + 104 | 0; A = P + 88 | 0; z = P + 80 | 0; y = P + 72 | 0; x = P + 64 | 0; w = P + 56 | 0; u = P + 48 | 0; t = P + 40 | 0; s = P + 32 | 0; O = P + 24 | 0; G = P + 16 | 0; v = P + 8 | 0; r = P; k = P + 216 | 0; m = P + 212 | 0; o = P + 208 | 0; Q = P + 204 | 0; n = P + 200 | 0; p = P + 220 | 0; q = P + 196 | 0; c[k >> 2] = f; c[m >> 2] = g; c[o >> 2] = h; c[Q >> 2] = i; c[n >> 2] = j; do switch (c[Q >> 2] | 0) { case 0: { a[c[m >> 2] >> 0] = 0;l = P; return } case 1: { Q = c[m >> 2] | 0;N = c[4260] | 0;O = (Lj(c[o >> 2] | 0, 0) | 0) & 65535;c[r >> 2] = N;c[r + 4 >> 2] = O;BQ(Q, 44055, r) | 0;l = P; return } case 2: { Q = c[m >> 2] | 0;N = c[4260] | 0;O = (Lj(c[o >> 2] | 0, 2) | 0) & 65535;c[v >> 2] = N;c[v + 4 >> 2] = O;BQ(Q, 44055, v) | 0;l = P; return } case 3: { xm(c[k >> 2] | 0, c[m >> 2] | 0, c[o >> 2] | 0, (d[(c[o >> 2] | 0) + 1 >> 0] | 0) & 63, c[n >> 2] | 0);l = P; return } case 4: { b[p >> 1] = (d[c[o >> 2] >> 0] | 0) << 8 | (d[(c[o >> 2] | 0) + 1 >> 0] | 0);xm(c[k >> 2] | 0, c[m >> 2] | 0, c[o >> 2] | 0, (e[p >> 1] | 0) >> 3 & 56 | (e[p >> 1] | 0) >> 9 & 7, c[n >> 2] | 0);l = P; return } case 5: { Q = c[m >> 2] | 0;c[G >> 2] = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) & 7;BQ(Q, 44063, G) | 0;l = P; return } case 6: { Q = c[m >> 2] | 0;c[O >> 2] = (d[c[o >> 2] >> 0] | 0) >> 1 & 7;BQ(Q, 44063, O) | 0;l = P; return } case 7: { Q = c[m >> 2] | 0;c[s >> 2] = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) & 7;BQ(Q, 44067, s) | 0;l = P; return } case 8: { Q = c[m >> 2] | 0;c[t >> 2] = (d[c[o >> 2] >> 0] | 0) >> 1 & 7;BQ(Q, 44067, t) | 0;l = P; return } case 9: { Q = c[m >> 2] | 0;O = (d[(c[o >> 2] | 0) + 2 >> 0] | 0) >> 4 & 7;c[u >> 2] = (d[(c[o >> 2] | 0) + 2 >> 0] | 0) & 128 | 0 ? 44071 : 44073;c[u + 4 >> 2] = O;BQ(Q, 44075, u) | 0;l = P; return } case 10: { Q = c[m >> 2] | 0;c[w >> 2] = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) & 7;BQ(Q, 44080, w) | 0;l = P; return } case 11: { Q = c[m >> 2] | 0;c[x >> 2] = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) >> 9 & 7;BQ(Q, 44080, x) | 0;l = P; return } case 12: { Q = c[m >> 2] | 0;c[y >> 2] = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) & 7;BQ(Q, 44087, y) | 0;l = P; return } case 13: { Q = c[m >> 2] | 0;c[z >> 2] = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) >> 9 & 7;BQ(Q, 44087, z) | 0;l = P; return } case 14: { b[p >> 1] = Lj(c[o >> 2] | 0, 2) | 0;Q = c[m >> 2] | 0;M = c[4260] | 0;N = e[p >> 1] | 0;N = ((e[p >> 1] | 0) & 32768 | 0 ? ~N + 1 | 0 : N) & 65535;O = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) & 7;c[A >> 2] = (e[p >> 1] | 0) & 32768 | 0 ? 50729 : 59585;c[A + 4 >> 2] = M;c[A + 8 >> 2] = N;c[A + 12 >> 2] = O;BQ(Q, 44094, A) | 0;Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 1;l = P; return } case 15: { Q = c[m >> 2] | 0;O = d[(c[o >> 2] | 0) + 3 >> 0] | 0;c[B >> 2] = c[4260];c[B + 4 >> 2] = O;BQ(Q, 44108, B) | 0;Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 1;l = P; return } case 16: { b[p >> 1] = Lj(c[o >> 2] | 0, 2) | 0;Q = c[m >> 2] | 0;O = e[p >> 1] | 0;c[C >> 2] = c[4260];c[C + 4 >> 2] = O;BQ(Q, 44055, C) | 0;Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 1;l = P; return } case 17: { c[q >> 2] = ym(c[o >> 2] | 0, 2) | 0;Q = c[m >> 2] | 0;O = c[q >> 2] | 0;c[D >> 2] = c[4260];c[D + 4 >> 2] = O;BQ(Q, 44116, D) | 0;Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 2;l = P; return } case 18: { b[p >> 1] = (d[c[o >> 2] >> 0] | 0) >> 1 & 7;b[p >> 1] = (e[p >> 1] | 0 | 0) == 0 ? 8 : e[p >> 1] | 0;Q = c[m >> 2] | 0;O = e[p >> 1] | 0;c[E >> 2] = c[4260];c[E + 4 >> 2] = O;BQ(Q, 44125, E) | 0;l = P; return } case 19: { Q = c[m >> 2] | 0;O = (e[(c[k >> 2] | 0) + 12 >> 1] | 0) & 15;c[F >> 2] = c[4260];c[F + 4 >> 2] = O;BQ(Q, 44108, F) | 0;l = P; return } case 20: { Q = c[m >> 2] | 0;N = c[4260] | 0;O = zm(e[(c[k >> 2] | 0) + 12 >> 1] | 0) | 0;c[H >> 2] = N;c[H + 4 >> 2] = O;BQ(Q, 44116, H) | 0;l = P; return } case 21: { Q = c[m >> 2] | 0;N = c[4260] | 0;O = (c[(c[k >> 2] | 0) + 4 >> 2] | 0) + 2 + (zm(d[(c[o >> 2] | 0) + 1 >> 0] | 0) | 0) | 0;c[I >> 2] = N;c[I + 4 >> 2] = O;BQ(Q, 44131, I) | 0;l = P; return } case 22: { b[p >> 1] = Lj(c[o >> 2] | 0, c[(c[k >> 2] | 0) + 8 >> 2] << 1) | 0;Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 1;Q = c[m >> 2] | 0;N = c[4260] | 0;O = (c[(c[k >> 2] | 0) + 4 >> 2] | 0) + 2 + (Am(e[p >> 1] | 0) | 0) | 0;c[J >> 2] = N;c[J + 4 >> 2] = O;BQ(Q, 44131, J) | 0;l = P; return } case 23: { c[q >> 2] = ym(c[o >> 2] | 0, c[(c[k >> 2] | 0) + 8 >> 2] << 1) | 0;Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 2;Q = c[m >> 2] | 0;O = (c[(c[k >> 2] | 0) + 4 >> 2] | 0) + 2 + (c[q >> 2] | 0) | 0;c[K >> 2] = c[4260];c[K + 4 >> 2] = O;BQ(Q, 44131, K) | 0;l = P; return } case 24: { Bm(c[m >> 2] | 0, Lj(c[o >> 2] | 0, 2) | 0, 0);Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 1;l = P; return } case 25: { Bm(c[m >> 2] | 0, Lj(c[o >> 2] | 0, 2) | 0, 1);Q = (c[k >> 2] | 0) + 8 | 0;c[Q >> 2] = (c[Q >> 2] | 0) + 1;l = P; return } case 26: { NP(c[m >> 2] | 0, 44139) | 0;l = P; return } case 27: { NP(c[m >> 2] | 0, 44143) | 0;l = P; return } case 28: { NP(c[m >> 2] | 0, 44146) | 0;l = P; return } case 29: { Cm(c[k >> 2] | 0, c[m >> 2] | 0, Lj(c[o >> 2] | 0, 2) | 0);l = P; return } case 30: { Q = c[m >> 2] | 0;O = (e[(c[k >> 2] | 0) + 12 + 2 >> 1] | 0) >> 12 & 7;c[L >> 2] = (e[(c[k >> 2] | 0) + 12 + 2 >> 1] | 0) & 7;c[L + 4 >> 2] = O;BQ(Q, 44150, L) | 0;l = P; return } case 31: { Q = c[m >> 2] | 0;O = (e[(c[k >> 2] | 0) + 12 + 2 >> 1] | 0) >> 12 & 7;c[M >> 2] = (e[(c[k >> 2] | 0) + 12 + 2 >> 1] | 0) & 7;c[M + 4 >> 2] = O;BQ(Q, 44150, M) | 0;l = P; return } case 34: case 32: { Q = c[m >> 2] | 0;c[N >> 2] = (e[(c[k >> 2] | 0) + 12 + 2 >> 1] | 0) >> 12 & 7;BQ(Q, 44063, N) | 0;l = P; return } case 33: { Dm(c[k >> 2] | 0, c[m >> 2] | 0, c[o >> 2] | 0);l = P; return } default: { a[c[m >> 2] >> 0] = 0;l = P; return } } while (0) } function xm(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0; E = l; l = l + 224 | 0; C = E + 176 | 0; B = E + 168 | 0; A = E + 160 | 0; z = E + 152 | 0; x = E + 120 | 0; w = E + 112 | 0; v = E + 104 | 0; u = E + 88 | 0; t = E + 56 | 0; r = E + 40 | 0; q = E + 32 | 0; D = E + 24 | 0; y = E + 16 | 0; s = E + 8 | 0; p = E; g = E + 208 | 0; h = E + 204 | 0; k = E + 200 | 0; i = E + 196 | 0; j = E + 192 | 0; m = E + 188 | 0; n = E + 184 | 0; o = E + 180 | 0; c[g >> 2] = a; c[h >> 2] = b; c[k >> 2] = d; c[i >> 2] = e; c[j >> 2] = f; switch ((c[i >> 2] | 0) >>> 3 & 7 | 0) { case 0: { D = c[h >> 2] | 0;c[p >> 2] = c[i >> 2] & 7;BQ(D, 44063, p) | 0;l = E; return } case 1: { D = c[h >> 2] | 0;c[s >> 2] = c[i >> 2] & 7;BQ(D, 44067, s) | 0;l = E; return } case 2: { D = c[h >> 2] | 0;c[y >> 2] = c[i >> 2] & 7;BQ(D, 44200, y) | 0;l = E; return } case 3: { C = c[h >> 2] | 0;c[D >> 2] = c[i >> 2] & 7;BQ(C, 44080, D) | 0;l = E; return } case 4: { D = c[h >> 2] | 0;c[q >> 2] = c[i >> 2] & 7;BQ(D, 44087, q) | 0;l = E; return } case 5: { c[m >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0;D = c[h >> 2] | 0;A = c[4260] | 0;B = c[m >> 2] | 0;B = (c[m >> 2] & 32768 | 0 ? ~B + 1 | 0 : B) & 65535;C = c[i >> 2] & 7;c[r >> 2] = c[m >> 2] & 32768 | 0 ? 50729 : 59585;c[r + 4 >> 2] = A;c[r + 8 >> 2] = B;c[r + 12 >> 2] = C;BQ(D, 44094, r) | 0;l = E; return } case 6: { c[m >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0; if (c[m >> 2] & 256 | 0) { Gm(c[g >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0); l = E; return } D = c[h >> 2] | 0;w = c[4260] | 0;x = c[m >> 2] | 0;x = (c[m >> 2] & 128 | 0 ? ~x + 1 | 0 : x) & 255;y = c[i >> 2] & 7;z = c[m >> 2] & 32768 | 0 ? 44071 : 44073;A = (c[m >> 2] | 0) >>> 12 & 7;B = c[m >> 2] & 2048 | 0 ? 44206 : 44209;C = 1 << ((c[m >> 2] | 0) >>> 9 & 3);c[t >> 2] = c[m >> 2] & 128 | 0 ? 50729 : 59585;c[t + 4 >> 2] = w;c[t + 8 >> 2] = x;c[t + 12 >> 2] = y;c[t + 16 >> 2] = z;c[t + 20 >> 2] = A;c[t + 24 >> 2] = B;c[t + 28 >> 2] = C;BQ(D, 44212, t) | 0; if (!(c[m >> 2] & 1536)) { l = E; return } D = c[g >> 2] | 0;c[D >> 2] = c[D >> 2] | 128;l = E; return } case 7: switch (c[i >> 2] & 7 | 0) { case 0: { c[m >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0;D = c[h >> 2] | 0;B = c[4260] | 0;C = c[m >> 2] | 0;C = (c[m >> 2] & 32768 | 0 ? ~C + 1 | 0 : C) & 65535;c[u >> 2] = c[m >> 2] & 32768 | 0 ? 50729 : 59585;c[u + 4 >> 2] = B;c[u + 8 >> 2] = C;BQ(D, 44237, u) | 0;l = E; return } case 1: { c[n >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0;c[o >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0;D = c[h >> 2] | 0;C = c[n >> 2] << 16 | c[o >> 2];c[v >> 2] = c[4260];c[v + 4 >> 2] = C;BQ(D, 44131, v) | 0;l = E; return } case 2: { c[m >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0;c[n >> 2] = (c[(c[g >> 2] | 0) + 4 >> 2] | 0) + (Am(c[m >> 2] | 0) | 0) + 2;D = c[h >> 2] | 0;C = c[n >> 2] | 0;c[w >> 2] = c[4260];c[w + 4 >> 2] = C;BQ(D, 44246, w) | 0;l = E; return } case 3: { c[m >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0; if (c[m >> 2] & 256 | 0) { Gm(c[g >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0); l = E; return } D = c[h >> 2] | 0;w = c[4260] | 0;y = c[m >> 2] | 0;y = (c[m >> 2] & 128 | 0 ? ~y + 1 | 0 : y) & 255;z = c[m >> 2] & 32768 | 0 ? 44071 : 44073;A = (c[m >> 2] | 0) >>> 12 & 7;B = c[m >> 2] & 2048 | 0 ? 44206 : 44209;C = 1 << ((c[m >> 2] | 0) >>> 9 & 3);c[x >> 2] = c[m >> 2] & 128 | 0 ? 50729 : 59585;c[x + 4 >> 2] = w;c[x + 8 >> 2] = y;c[x + 12 >> 2] = z;c[x + 16 >> 2] = A;c[x + 20 >> 2] = B;c[x + 24 >> 2] = C;BQ(D, 44258, x) | 0; if (!(c[m >> 2] & 1536)) { l = E; return } D = c[g >> 2] | 0;c[D >> 2] = c[D >> 2] | 128;l = E; return } case 4: { if ((c[j >> 2] | 0) == 8) { c[m >> 2] = (Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0) & 255; D = c[h >> 2] | 0; C = c[m >> 2] | 0; c[z >> 2] = c[4260]; c[z + 4 >> 2] = C; BQ(D, 44108, z) | 0; l = E; return } if ((c[j >> 2] | 0) == 16) { c[m >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0; D = c[h >> 2] | 0; C = c[m >> 2] | 0; c[A >> 2] = c[4260]; c[A + 4 >> 2] = C; BQ(D, 44055, A) | 0; l = E; return } if ((c[j >> 2] | 0) != 32) { l = E; return } c[n >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0;c[o >> 2] = Em(c[g >> 2] | 0, c[k >> 2] | 0) | 0;D = c[h >> 2] | 0;C = c[n >> 2] << 16 | c[o >> 2];c[B >> 2] = c[4260];c[B + 4 >> 2] = C;BQ(D, 44116, B) | 0;l = E; return } default: { D = c[h >> 2] | 0;c[C >> 2] = c[i >> 2] & 63;BQ(D, 44282, C) | 0;l = E; return } } default: {} } } function ym(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[c[g >> 2] >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 2 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 3 >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function zm(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 128 | 0 ? a | -256 : a & 255) | 0 } function Am(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 32768 | 0 ? a | -65536 : a & 65535) | 0 } function Bm(d, f, g) { d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; p = l; l = l + 32 | 0; i = p + 20 | 0; m = p + 26 | 0; q = p + 16 | 0; k = p + 12 | 0; n = p + 8 | 0; o = p + 4 | 0; j = p; h = p + 24 | 0; c[i >> 2] = d; b[m >> 1] = f; c[q >> 2] = g; c[j >> 2] = 1; a[c[i >> 2] >> 0] = 0; a: do if (c[q >> 2] | 0) { b[h >> 1] = b[m >> 1] | 0; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= 16) break a; b[m >> 1] = (e[m >> 1] | 0) << 1 | (e[h >> 1] | 0) & 1; b[h >> 1] = (e[h >> 1] | 0) >> 1; c[k >> 2] = (c[k >> 2] | 0) + 1 } } while (0); c[n >> 2] = 0; c[o >> 2] = 0; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= 16) break; if ((c[k >> 2] | 0) == 8 & (c[o >> 2] | 0) >>> 0 > 0) { Fm(c[i >> 2] | 0, c[n >> 2] | 0, c[o >> 2] | 0, j); c[o >> 2] = 0 } d = c[o >> 2] | 0; do if ((e[m >> 1] | 0) & 1 << c[k >> 2] | 0) if (!d) { c[n >> 2] = c[k >> 2]; c[o >> 2] = 1; break } else { c[o >> 2] = (c[o >> 2] | 0) + 1; break } else if (d >>> 0 > 0) { Fm(c[i >> 2] | 0, c[n >> 2] | 0, c[o >> 2] | 0, j); c[o >> 2] = 0 } while (0); c[k >> 2] = (c[k >> 2] | 0) + 1 } if ((c[o >> 2] | 0) >>> 0 <= 0) { l = p; return } Fm(c[i >> 2] | 0, c[n >> 2] | 0, c[o >> 2] | 0, j); l = p; return } function Cm(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; i = m; g = m + 12 | 0; j = m + 8 | 0; h = m + 16 | 0; k = m + 4 | 0; c[g >> 2] = a; c[j >> 2] = d; b[h >> 1] = f; switch ((e[h >> 1] | 0) & 4095 | 0) { case 0: { c[k >> 2] = 44161;a = c[g >> 2] | 0; break } case 1: { c[k >> 2] = 44165;a = c[g >> 2] | 0; break } case 2048: { c[k >> 2] = 44146;a = c[g >> 2] | 0; break } case 2049: { c[k >> 2] = 44169;a = c[g >> 2] | 0; break } default: { k = c[j >> 2] | 0;c[i >> 2] = (e[h >> 1] | 0) & 4095;BQ(k, 44173, i) | 0;k = c[g >> 2] | 0;c[k >> 2] = c[k >> 2] | 64;l = m; return } } c[a >> 2] = c[a >> 2] | 64; NP(c[j >> 2] | 0, c[k >> 2] | 0) | 0; l = m; return } function Dm(f, g, h) { f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; q = l; l = l + 48 | 0; p = q + 24 | 0; o = q + 16 | 0; j = q + 8 | 0; i = q; m = q + 40 | 0; n = q + 36 | 0; r = q + 32 | 0; k = q + 28 | 0; c[m >> 2] = f; c[n >> 2] = g; c[r >> 2] = h; f = (Em(c[m >> 2] | 0, c[r >> 2] | 0) | 0) & 65535; b[(c[m >> 2] | 0) + 12 + (c[(c[m >> 2] | 0) + 8 >> 2] << 1) >> 1] = f; xm(c[m >> 2] | 0, c[n >> 2] | 0, c[r >> 2] | 0, (d[(c[r >> 2] | 0) + 1 >> 0] | 0) & 63, 8); f = cP(c[n >> 2] | 0) | 0; c[n >> 2] = (c[n >> 2] | 0) + f; f = c[n >> 2] | 0; c[n >> 2] = f + 1; a[f >> 0] = 32; f = c[n >> 2] | 0; c[n >> 2] = f + 1; a[f >> 0] = 123; f = c[n >> 2] | 0; g = (e[(c[m >> 2] | 0) + 12 + 2 >> 1] | 0) >> 6; if ((e[(c[m >> 2] | 0) + 12 + 2 >> 1] | 0) >> 11 & 1 | 0) { c[i >> 2] = g & 7; BQ(f, 44063, i) | 0 } else { c[j >> 2] = g & 31; BQ(f, 44158, j) | 0 } g = cP(c[n >> 2] | 0) | 0; c[n >> 2] = (c[n >> 2] | 0) + g; g = c[n >> 2] | 0; c[n >> 2] = g + 1; a[g >> 0] = 58; g = (e[(c[m >> 2] | 0) + 12 + 2 >> 1] | 0) & 31; c[k >> 2] = g; c[k >> 2] = (c[k >> 2] | 0) == 0 ? 32 : g; g = c[n >> 2] | 0; f = c[k >> 2] | 0; if ((e[(c[m >> 2] | 0) + 12 + 2 >> 1] | 0) >> 5 & 1 | 0) { c[o >> 2] = f & 7; BQ(g, 44063, o) | 0; r = c[n >> 2] | 0; r = cP(r) | 0; p = c[n >> 2] | 0; r = p + r | 0; c[n >> 2] = r; r = c[n >> 2] | 0; NP(r, 50478) | 0; l = q; return } else { c[p >> 2] = f; BQ(g, 44158, p) | 0; r = c[n >> 2] | 0; r = cP(r) | 0; p = c[n >> 2] | 0; r = p + r | 0; c[n >> 2] = r; r = c[n >> 2] | 0; NP(r, 50478) | 0; l = q; return } } function Em(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; g = e + 4 | 0; d = e; c[f >> 2] = a; c[g >> 2] = b; c[d >> 2] = (Lj(c[g >> 2] | 0, c[(c[f >> 2] | 0) + 8 >> 2] << 1) | 0) & 65535; b = (c[f >> 2] | 0) + 8 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; l = e; return c[d >> 2] | 0 } function Fm(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 96 | 0; n = p + 32 | 0; o = p + 16 | 0; f = p; g = p + 56 | 0; i = p + 52 | 0; j = p + 48 | 0; h = p + 44 | 0; k = p + 40 | 0; m = p + 64 | 0; c[g >> 2] = a; c[i >> 2] = b; c[j >> 2] = d; c[h >> 2] = e; if ((c[i >> 2] | 0) >>> 0 < 8) c[k >> 2] = 44073; else { c[k >> 2] = 44071; c[i >> 2] = (c[i >> 2] | 0) - 8 } if (!(c[c[h >> 2] >> 2] | 0)) FQ(c[g >> 2] | 0, 50937) | 0; if ((c[j >> 2] | 0) >>> 0 > 2) { d = c[i >> 2] | 0; n = c[k >> 2] | 0; o = (c[i >> 2] | 0) + (c[j >> 2] | 0) - 1 | 0; c[f >> 2] = c[k >> 2]; c[f + 4 >> 2] = d; c[f + 8 >> 2] = n; c[f + 12 >> 2] = o; BQ(m, 44180, f) | 0; o = c[g >> 2] | 0; FQ(o, m) | 0; o = c[h >> 2] | 0; c[o >> 2] = 0; l = p; return } a = c[k >> 2] | 0; e = c[i >> 2] | 0; if ((c[j >> 2] | 0) == 2) { k = c[k >> 2] | 0; n = (c[i >> 2] | 0) + 1 | 0; c[o >> 2] = a; c[o + 4 >> 2] = e; c[o + 8 >> 2] = k; c[o + 12 >> 2] = n; BQ(m, 44190, o) | 0; o = c[g >> 2] | 0; FQ(o, m) | 0; o = c[h >> 2] | 0; c[o >> 2] = 0; l = p; return } else { c[n >> 2] = a; c[n + 4 >> 2] = e; BQ(m, 44075, n) | 0; o = c[g >> 2] | 0; FQ(o, m) | 0; o = c[h >> 2] | 0; c[o >> 2] = 0; l = p; return } } function Gm(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 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; B = l; l = l + 256 | 0; A = B + 120 | 0; z = B + 96 | 0; o = B + 80 | 0; r = B + 64 | 0; i = B + 48 | 0; n = B + 32 | 0; k = B + 24 | 0; j = B + 8 | 0; h = B; u = B + 160 | 0; p = B + 156 | 0; m = B + 152 | 0; v = B + 164 | 0; q = B + 148 | 0; t = B + 232 | 0; w = B + 216 | 0; s = B + 200 | 0; x = B + 184 | 0; y = B + 168 | 0; C = B + 144 | 0; g = B + 140 | 0; c[u >> 2] = a; c[p >> 2] = d; c[m >> 2] = f; b[v >> 1] = b[(c[u >> 2] | 0) + 12 + 2 >> 1] | 0; c[C >> 2] = ((e[v >> 1] | 0) & 128 | 0) != 0 & 1; c[g >> 2] = ((e[v >> 1] | 0) & 64 | 0) != 0 & 1; do if (!(c[C >> 2] | 0)) if (((e[(c[u >> 2] | 0) + 12 >> 1] | 0) & 56 | 0) == 56) { NP(t, 44293) | 0; break } else { c[h >> 2] = (e[(c[u >> 2] | 0) + 12 >> 1] | 0) & 7; BQ(t, 44067, h) | 0; break } else NP(t, 50729) | 0; while (0); if (c[g >> 2] | 0) NP(w, 50729) | 0; else { h = (e[v >> 1] | 0) >> 12 & 7; C = (e[v >> 1] | 0) & 2048 | 0 ? 44206 : 44209; c[j >> 2] = (e[v >> 1] | 0) & 32768 | 0 ? 44071 : 44073; c[j + 4 >> 2] = h; c[j + 8 >> 2] = C; BQ(w, 44296, j) | 0 } if (!((e[v >> 1] | 0) >> 9 & 3)) NP(y, 59585) | 0; else { c[k >> 2] = 1 << ((e[v >> 1] | 0) >> 9 & 3); BQ(y, 44303, k) | 0 } switch ((e[v >> 1] | 0) >> 4 & 3 | 0) { case 1: case 0: { NP(s, 50729) | 0; break } case 2: { c[q >> 2] = Em(c[u >> 2] | 0, c[m >> 2] | 0) | 0;d = c[4260] | 0;a = c[q >> 2] | 0; if (c[q >> 2] & 32768 | 0) a = ~a + 1 & 65535;c[n >> 2] = c[q >> 2] & 32768 | 0 ? 50729 : 59585;c[n + 4 >> 2] = d;c[n + 8 >> 2] = a;BQ(s, 44237, n) | 0; break } case 3: { c[q >> 2] = Em(c[u >> 2] | 0, c[m >> 2] | 0) | 0;c[q >> 2] = c[q >> 2] << 16 | (Em(c[u >> 2] | 0, c[m >> 2] | 0) | 0);n = c[4260] | 0;C = c[q >> 2] | 0;C = c[q >> 2] & -2147483648 | 0 ? ~C + 1 | 0 : C;c[i >> 2] = c[q >> 2] & -2147483648 | 0 ? 50729 : 59585;c[i + 4 >> 2] = n;c[i + 8 >> 2] = C;BQ(s, 44307, i) | 0; break } default: {} } switch ((e[v >> 1] | 0) & 3 | 0) { case 1: case 0: { NP(x, 50729) | 0; break } case 2: { c[q >> 2] = Em(c[u >> 2] | 0, c[m >> 2] | 0) | 0;d = c[4260] | 0;a = c[q >> 2] | 0; if (c[q >> 2] & 32768 | 0) a = ~a + 1 & 65535;c[r >> 2] = c[q >> 2] & 32768 | 0 ? 50729 : 59585;c[r + 4 >> 2] = d;c[r + 8 >> 2] = a;BQ(x, 44237, r) | 0; break } case 3: { c[q >> 2] = Em(c[u >> 2] | 0, c[m >> 2] | 0) | 0;c[q >> 2] = c[q >> 2] << 16 | (Em(c[u >> 2] | 0, c[m >> 2] | 0) | 0);r = c[4260] | 0;C = c[q >> 2] | 0;C = c[q >> 2] & -2147483648 | 0 ? ~C + 1 | 0 : C;c[o >> 2] = c[q >> 2] & -2147483648 | 0 ? 50729 : 59585;c[o + 4 >> 2] = r;c[o + 8 >> 2] = C;BQ(x, 44307, o) | 0; break } default: {} } a = c[p >> 2] | 0; if ((e[v >> 1] | 0) & 4 | 0) { c[z >> 2] = t; c[z + 4 >> 2] = s; c[z + 8 >> 2] = w; c[z + 12 >> 2] = y; c[z + 16 >> 2] = x; BQ(a, 44316, z) | 0; C = c[u >> 2] | 0; A = c[C >> 2] | 0; A = A | 128; c[C >> 2] = A; l = B; return } else { c[A >> 2] = t; c[A + 4 >> 2] = s; c[A + 8 >> 2] = w; c[A + 12 >> 2] = y; c[A + 16 >> 2] = x; BQ(a, 44337, A) | 0; C = c[u >> 2] | 0; A = c[C >> 2] | 0; A = A | 128; c[C >> 2] = A; l = B; return } } function Hm(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, m = 0; g = l; l = l + 32 | 0; k = g + 16 | 0; m = g + 12 | 0; j = g + 8 | 0; i = g + 4 | 0; h = g; c[k >> 2] = a; c[m >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; c[h >> 2] = f; NP((c[k >> 2] | 0) + 32 | 0, c[m >> 2] | 0) | 0; c[(c[k >> 2] | 0) + 28 >> 2] = 1; wm(c[k >> 2] | 0, (c[k >> 2] | 0) + 96 | 0, c[j >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0); l = g; return 0 } function Im(a, b, d, e, f, g) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; h = l; l = l + 32 | 0; m = h + 20 | 0; o = h + 16 | 0; k = h + 12 | 0; j = h + 8 | 0; n = h + 4 | 0; i = h; c[m >> 2] = a; c[o >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; c[n >> 2] = f; c[i >> 2] = g; NP((c[m >> 2] | 0) + 32 | 0, c[o >> 2] | 0) | 0; c[(c[m >> 2] | 0) + 28 >> 2] = 2; wm(c[m >> 2] | 0, (c[m >> 2] | 0) + 160 | 0, c[k >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0); wm(c[m >> 2] | 0, (c[m >> 2] | 0) + 96 | 0, c[k >> 2] | 0, c[j >> 2] | 0, c[i >> 2] | 0); l = h; return 0 } function Jm(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; f = k + 12 | 0; g = k + 8 | 0; i = k + 4 | 0; h = k; j = k + 16 | 0; c[f >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 16) break; e = Km(c[f >> 2] | 0, (c[i >> 2] | 0) + (c[h >> 2] | 0) | 0) | 0; a[j + (c[h >> 2] | 0) >> 0] = e; c[h >> 2] = (c[h >> 2] | 0) + 1 } Kj(c[g >> 2] | 0, c[i >> 2] | 0, j); l = k; return } function Km(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = b; c[e >> 2] = d; c[e >> 2] = c[e >> 2] & 16777215; d = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[g >> 0] = a[(c[d + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0] | 0; g = a[g >> 0] | 0; l = h; return g | 0 } else { a[g >> 0] = Vb[c[d + 8 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] & 16777215) | 0; g = a[g >> 0] | 0; l = h; return g | 0 } return 0 } function Lm(d) { d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; c[e >> 2] = d; c[c[e >> 2] >> 2] = 0; c[(c[e >> 2] | 0) + 4 >> 2] = 0; c[(c[e >> 2] | 0) + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 12 >> 2] = 0; c[(c[e >> 2] | 0) + 16 >> 2] = 0; c[(c[e >> 2] | 0) + 20 >> 2] = 0; c[(c[e >> 2] | 0) + 24 >> 2] = 0; c[(c[e >> 2] | 0) + 28 >> 2] = 0; c[(c[e >> 2] | 0) + 32 >> 2] = 0; c[(c[e >> 2] | 0) + 36 >> 2] = 0; c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = 0; a[(c[e >> 2] | 0) + 48 >> 0] = 0; a[(c[e >> 2] | 0) + 49 >> 0] = 0; c[(c[e >> 2] | 0) + 52 >> 2] = 0; c[(c[e >> 2] | 0) + 56 >> 2] = 0; c[(c[e >> 2] | 0) + 68 >> 2] = 0; c[(c[e >> 2] | 0) + 72 >> 2] = 0; c[(c[e >> 2] | 0) + 76 >> 2] = 0; c[(c[e >> 2] | 0) + 80 >> 2] = 0; c[(c[e >> 2] | 0) + 84 >> 2] = 0; c[(c[e >> 2] | 0) + 60 >> 2] = 0; c[(c[e >> 2] | 0) + 64 >> 2] = 0; a[(c[e >> 2] | 0) + 334 >> 0] = 1; a[(c[e >> 2] | 0) + 335 >> 0] = 2; c[(c[e >> 2] | 0) + 364 >> 2] = 0; a[(c[e >> 2] | 0) + 368 >> 0] = 0; c[(c[e >> 2] | 0) + 372 >> 2] = 1; c[(c[e >> 2] | 0) + 376 >> 2] = 0; c[(c[e >> 2] | 0) + 380 >> 2] = 0; c[(c[e >> 2] | 0) + 384 >> 2] = 0; c[(c[e >> 2] | 0) + 388 >> 2] = 45675; c[(c[e >> 2] | 0) + 392 >> 2] = 0; c[(c[e >> 2] | 0) + 396 >> 2] = 0; Yn(c[e >> 2] | 0); b[(c[e >> 2] | 0) + 166 >> 1] = 8192; c[f >> 2] = 0; while (1) { d = c[e >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 >= 8) break; Mm(d, c[f >> 2] | 0, 0); Nm(c[e >> 2] | 0, c[f >> 2] | 0, 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } Om(d, 0); Pm(c[e >> 2] | 0, 0); c[(c[e >> 2] | 0) + 152 >> 2] = 0; c[(c[e >> 2] | 0) + 176 >> 2] = 0; c[(c[e >> 2] | 0) + 180 >> 2] = 0; c[(c[e >> 2] | 0) + 184 >> 2] = 0; c[(c[e >> 2] | 0) + 188 >> 2] = 0; c[(c[e >> 2] | 0) + 192 >> 2] = 0; c[(c[e >> 2] | 0) + 196 >> 2] = 0; c[f >> 2] = 0; while (1) { d = c[e >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 >= 32) break; c[d + 200 + (c[f >> 2] << 2) >> 2] = 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } b[d + 328 >> 1] = 0; b[(c[e >> 2] | 0) + 330 >> 1] = 0; l = g; return } function Mm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function Nm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function Om(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; d = c[f >> 2] | 0; c[(a[(c[f >> 2] | 0) + 334 >> 0] | 0 ? d + 168 | 0 : d + 120 + 28 | 0) >> 2] = c[g >> 2]; l = e; return } function Pm(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; d = c[f >> 2] | 0; c[(a[(c[f >> 2] | 0) + 334 >> 0] | 0 ? d + 120 + 28 | 0 : d + 172 | 0) >> 2] = c[g >> 2]; l = e; return } function Qm() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(4528) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { Lm(c[a >> 2] | 0); c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function Rm(a, b, d, e, f, g, h, i) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; j = l; l = l + 32 | 0; k = j + 28 | 0; s = j + 24 | 0; r = j + 20 | 0; q = j + 16 | 0; p = j + 12 | 0; o = j + 8 | 0; n = j + 4 | 0; m = j; c[k >> 2] = a; c[s >> 2] = b; c[r >> 2] = d; c[q >> 2] = e; c[p >> 2] = f; c[o >> 2] = g; c[n >> 2] = h; c[m >> 2] = i; c[(c[k >> 2] | 0) + 4 >> 2] = c[s >> 2]; c[(c[k >> 2] | 0) + 8 >> 2] = c[r >> 2]; c[(c[k >> 2] | 0) + 12 >> 2] = c[q >> 2]; c[(c[k >> 2] | 0) + 16 >> 2] = c[p >> 2]; c[(c[k >> 2] | 0) + 20 >> 2] = c[o >> 2]; c[(c[k >> 2] | 0) + 24 >> 2] = c[n >> 2]; c[(c[k >> 2] | 0) + 28 >> 2] = c[m >> 2]; l = j; return } function Sm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[g >> 2] = (c[h >> 2] | 0) == 0 ? 0 : d; c[(c[f >> 2] | 0) + 32 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 36 >> 2] = c[g >> 2]; l = e; return } function Tm(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 40 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 44 >> 2] = c[g >> 2]; l = e; return } function Um(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 60 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 64 >> 2] = c[g >> 2]; l = e; return } function Vm(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; b = c[f >> 2] | 0; a = c[b >> 2] | 0; c[b >> 2] = c[e >> 2] | 0 ? a & -2 : a | 1; l = d; return } function Wm(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 0; Yn(c[d >> 2] | 0); l = b; return } function Xm(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 2; Yn(c[d >> 2] | 0); l = b; return } function Ym(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 7; Ws(c[d >> 2] | 0); l = b; return } function Zm(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 392 >> 2] | 0 } function _m(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 396 >> 2] | 0 } function $m(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 372 >> 2] | 0 } function an(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; a[(c[f >> 2] | 0) + 335 >> 0] = c[g >> 2] & 3; l = e; return } function bn(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 376 >> 2] | 0 } function cn(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 384 >> 2] | 0 } function dn(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 388 >> 2] | 0 } function en(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[d >> 2] = a; c[e >> 2] = b; if ((c[e >> 2] | 0) >>> 0 >= 32) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } else { c[f >> 2] = c[(c[d >> 2] | 0) + 200 + (((c[(c[d >> 2] | 0) + 196 >> 2] | 0) - (c[e >> 2] | 0) & 31) << 2) >> 2]; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function fn(a) { a = a | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = a; l = e; return b[(c[d >> 2] | 0) + 328 >> 1] | 0 } function gn(b, d, f) { b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 16 | 0; g = n + 12 | 0; i = n + 8 | 0; m = n + 4 | 0; k = n + 20 | 0; h = n; c[g >> 2] = b; c[i >> 2] = d; c[m >> 2] = f; if ((a[c[i >> 2] >> 0] | 0) == 37) c[i >> 2] = (c[i >> 2] | 0) + 1; if (!(fP(c[i >> 2] | 0, 45680) | 0)) { c[c[m >> 2] >> 2] = c[(c[g >> 2] | 0) + 152 >> 2]; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[i >> 2] | 0, 45683) | 0)) { c[c[m >> 2] >> 2] = c[(c[g >> 2] | 0) + 200 + ((c[(c[g >> 2] | 0) + 196 >> 2] & 31) << 2) >> 2]; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if ((a[c[i >> 2] >> 0] | 0) == 111 ? (a[(c[i >> 2] | 0) + 1 >> 0] | 0) == 112 : 0) { c[h >> 2] = 0; while (1) { if ((a[(c[i >> 2] | 0) + 2 >> 0] | 0) < 48) break; if ((a[(c[i >> 2] | 0) + 2 >> 0] | 0) > 57) break; c[h >> 2] = ((c[h >> 2] | 0) * 10 | 0) + ((a[(c[i >> 2] | 0) + 2 >> 0] | 0) - 48); c[i >> 2] = (c[i >> 2] | 0) + 1 } if (a[(c[i >> 2] | 0) + 2 >> 0] | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { k = (hn(c[g >> 2] | 0, (c[(c[g >> 2] | 0) + 152 >> 2] | 0) + (c[h >> 2] << 1) | 0) | 0) & 65535; c[c[m >> 2] >> 2] = k; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } } if (!(fP(c[i >> 2] | 0, 45687) | 0)) { c[c[m >> 2] >> 2] = e[(c[g >> 2] | 0) + 166 >> 1] & 65535; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[i >> 2] | 0, 45690) | 0)) { c[c[m >> 2] >> 2] = c[(c[g >> 2] | 0) + 120 + 28 >> 2]; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[i >> 2] | 0, 45693) | 0)) { c[c[m >> 2] >> 2] = e[(c[g >> 2] | 0) + 166 >> 1] & 255; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[i >> 2] | 0, 45697) | 0)) { k = c[g >> 2] | 0; c[c[m >> 2] >> 2] = c[(a[(c[g >> 2] | 0) + 334 >> 0] | 0 ? k + 168 | 0 : k + 120 + 28 | 0) >> 2]; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[i >> 2] | 0, 45701) | 0)) { k = c[g >> 2] | 0; c[c[m >> 2] >> 2] = c[(a[(c[g >> 2] | 0) + 334 >> 0] | 0 ? k + 120 + 28 | 0 : k + 172 | 0) >> 2]; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if ((a[c[i >> 2] >> 0] | 0) != 97 ? (a[c[i >> 2] >> 0] | 0) != 65 : 0) { if ((a[c[i >> 2] >> 0] | 0) != 100 ? (a[c[i >> 2] >> 0] | 0) != 68 : 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } a[k >> 0] = 100 } else a[k >> 0] = 97; c[i >> 2] = (c[i >> 2] | 0) + 1; c[h >> 2] = 0; while (1) { if ((a[c[i >> 2] >> 0] | 0) < 48) break; if ((a[c[i >> 2] >> 0] | 0) > 57) break; c[h >> 2] = ((c[h >> 2] | 0) * 10 | 0) + ((a[c[i >> 2] >> 0] | 0) - 48); c[i >> 2] = (c[i >> 2] | 0) + 1 } b = c[g >> 2] | 0; if ((a[k >> 0] | 0) == 97) c[c[m >> 2] >> 2] = c[b + 120 + ((c[h >> 2] & 7) << 2) >> 2]; else c[c[m >> 2] >> 2] = c[b + 88 + ((c[h >> 2] & 7) << 2) >> 2]; if ((a[c[i >> 2] >> 0] | 0) == 46) { switch (a[(c[i >> 2] | 0) + 1 >> 0] | 0) { case 66: case 98: { m = c[m >> 2] | 0;c[m >> 2] = c[m >> 2] & 255; break } case 87: case 119: { m = c[m >> 2] | 0;c[m >> 2] = c[m >> 2] & 65535; break } case 76: case 108: { m = c[m >> 2] | 0;c[m >> 2] = c[m >> 2]; break } default: { c[j >> 2] = 1;m = c[j >> 2] | 0;l = n; return m | 0 } } c[i >> 2] = (c[i >> 2] | 0) + 2 } if (a[c[i >> 2] >> 0] | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function hn(a, e) { a = a | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[g >> 2] = a; c[f >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; e = c[g >> 2] | 0; if (((c[f >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { b[h >> 1] = (d[(c[e + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) << 8 | (d[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] | 0); h = b[h >> 1] | 0; l = i; return h | 0 } else { b[h >> 1] = Vb[c[e + 12 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0; h = b[h >> 1] | 0; l = i; return h | 0 } return 0 } function jn(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, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 20 | 0; g = n + 16 | 0; f = n + 12 | 0; m = n + 8 | 0; k = n + 24 | 0; h = n + 4 | 0; i = n; c[g >> 2] = b; c[f >> 2] = d; c[m >> 2] = e; if ((a[c[f >> 2] >> 0] | 0) == 37) c[f >> 2] = (c[f >> 2] | 0) + 1; if (!(fP(c[f >> 2] | 0, 45680) | 0)) { kn(c[g >> 2] | 0, c[m >> 2] | 0); c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[f >> 2] | 0, 45687) | 0)) { ln(c[g >> 2] | 0, c[m >> 2] & 65535); c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[f >> 2] | 0, 45690) | 0)) { Nm(c[g >> 2] | 0, 7, c[m >> 2] | 0); c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[f >> 2] | 0, 45693) | 0)) { mn(c[g >> 2] | 0, c[m >> 2] & 255); c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[f >> 2] | 0, 45697) | 0)) { Om(c[g >> 2] | 0, c[m >> 2] | 0); c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(fP(c[f >> 2] | 0, 45701) | 0)) { Pm(c[g >> 2] | 0, c[m >> 2] | 0); c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if ((a[c[f >> 2] >> 0] | 0) != 97 ? (a[c[f >> 2] >> 0] | 0) != 65 : 0) { if ((a[c[f >> 2] >> 0] | 0) != 100 ? (a[c[f >> 2] >> 0] | 0) != 68 : 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } a[k >> 0] = 100 } else a[k >> 0] = 97; c[f >> 2] = (c[f >> 2] | 0) + 1; c[h >> 2] = 0; while (1) { if ((a[c[f >> 2] >> 0] | 0) >= 48) d = (a[c[f >> 2] >> 0] | 0) <= 57; else d = 0; b = c[h >> 2] | 0; if (!d) break; c[h >> 2] = (b * 10 | 0) + ((a[c[f >> 2] >> 0] | 0) - 48); c[f >> 2] = (c[f >> 2] | 0) + 1 } c[h >> 2] = b & 7; c[i >> 2] = -1; if ((a[c[f >> 2] >> 0] | 0) == 46) { switch (a[(c[f >> 2] | 0) + 1 >> 0] | 0) { case 66: case 98: { c[i >> 2] = 255; break } case 87: case 119: { c[i >> 2] = 65535; break } case 76: case 108: { c[i >> 2] = -1; break } default: { c[j >> 2] = 1;m = c[j >> 2] | 0;l = n; return m | 0 } } c[f >> 2] = (c[f >> 2] | 0) + 2 } if (a[c[f >> 2] >> 0] | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } b = c[g >> 2] | 0; if ((a[k >> 0] | 0) == 97) { c[m >> 2] = c[b + 120 + ((c[h >> 2] & 7) << 2) >> 2] & ~c[i >> 2] | c[m >> 2] & c[i >> 2]; Nm(c[g >> 2] | 0, c[h >> 2] | 0, c[m >> 2] | 0) } else { c[m >> 2] = c[b + 88 + ((c[h >> 2] & 7) << 2) >> 2] & ~c[i >> 2] | c[m >> 2] & c[i >> 2]; Mm(c[g >> 2] | 0, c[h >> 2] | 0, c[m >> 2] | 0) } c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } function kn(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 156 >> 2] = c[f >> 2]; on(c[e >> 2] | 0) | 0; on(c[e >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 152 >> 2] = c[f >> 2]; l = d; return } function ln(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = a; b[g >> 1] = d; if (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) ^ (e[g >> 1] | 0)) & 8192 | 0) nn(c[f >> 2] | 0, ((e[g >> 1] | 0) & 8192 | 0) != 0 & 1); b[(c[f >> 2] | 0) + 166 >> 1] = (e[g >> 1] | 0) & 42783; l = h; return } function mn(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0; h = l; l = l + 16 | 0; i = h; j = h + 4 | 0; c[i >> 2] = f; a[j >> 0] = g; b[(c[i >> 2] | 0) + 166 >> 1] = (e[(c[i >> 2] | 0) + 166 >> 1] | 0) & 65280 | (d[j >> 0] | 0) & 255; l = h; return } function nn(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; c[e >> 2] = b; c[f >> 2] = d; b = c[e >> 2] | 0; c[(a[(c[e >> 2] | 0) + 334 >> 0] | 0 ? b + 172 | 0 : b + 168 | 0) >> 2] = c[(c[e >> 2] | 0) + 120 + 28 >> 2]; b = c[e >> 2] | 0; d = c[e >> 2] | 0; if (c[f >> 2] | 0) Nm(b, 7, c[d + 172 >> 2] | 0); else Nm(b, 7, c[d + 168 >> 2] | 0); a[(c[e >> 2] | 0) + 334 >> 0] = (c[f >> 2] | 0) != 0; l = g; return } function on(d) { d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[e >> 2] = d; d = c[e >> 2] | 0; if (c[(c[e >> 2] | 0) + 156 >> 2] & 1 | 0) { pn(d, c[(c[e >> 2] | 0) + 156 >> 2] | 0, 0, 0); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } b[(c[e >> 2] | 0) + 160 + 2 >> 1] = b[d + 160 + 4 >> 1] | 0; d = hn(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 156 >> 2] | 0) | 0; b[(c[e >> 2] | 0) + 160 + 4 >> 1] = d; d = c[e >> 2] | 0; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(d); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else { d = d + 156 | 0; c[d >> 2] = (c[d >> 2] | 0) + 2; e = (c[e >> 2] | 0) + 152 | 0; c[e >> 2] = (c[e >> 2] | 0) + 2; c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function pn(d, f, g, h) { d = d | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; j = o + 12 | 0; i = o + 8 | 0; k = o + 4 | 0; n = o; m = o + 16 | 0; c[j >> 2] = d; c[i >> 2] = f; c[k >> 2] = g; c[n >> 2] = h; f = c[j >> 2] | 0; if (a[(c[j >> 2] | 0) + 337 >> 0] | 0) { rn(f, 3, 45751); l = o; return } sn(f, 3, 8, 45751); a[(c[j >> 2] | 0) + 337 >> 0] = 1; vn(c[j >> 2] | 0, b[(c[j >> 2] | 0) + 160 >> 1] | 0); tn(c[j >> 2] | 0, c[i >> 2] | 0); b[m >> 1] = 0; if (!(c[n >> 2] | 0)) b[m >> 1] = e[m >> 1] | 16; if (c[k >> 2] | 0) b[m >> 1] = e[m >> 1] | 8; vn(c[j >> 2] | 0, b[m >> 1] | 0); a[(c[j >> 2] | 0) + 337 >> 0] = 0; n = (c[j >> 2] | 0) + 372 | 0; c[n >> 2] = (c[n >> 2] | 0) + 64; l = o; return } function qn(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; a[(c[d >> 2] | 0) + 336 >> 0] = 0; b = c[d >> 2] | 0; if (a[(c[d >> 2] | 0) + 337 >> 0] | 0) { rn(b, 2, 45705); l = e; return } else { sn(b, 2, 0, 45705); a[(c[d >> 2] | 0) + 337 >> 0] = 1; tn(c[d >> 2] | 0, 0); tn(c[d >> 2] | 0, 0); a[(c[d >> 2] | 0) + 337 >> 0] = 0; d = (c[d >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 62; l = e; return } } function rn(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 32 | 0; h = f; g = f + 20 | 0; j = f + 16 | 0; i = f + 12 | 0; c[g >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; d = c[7422] | 0; b = c[j >> 2] | 0; e = c[i >> 2] | 0; c[h >> 2] = c[(c[g >> 2] | 0) + 156 >> 2]; c[h + 4 >> 2] = b; c[h + 8 >> 2] = e; kQ(d, 45710, h) | 0; a[(c[g >> 2] | 0) + 335 >> 0] = 1; l = f; return } function sn(d, f, g, h) { d = d | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 32 | 0; j = q + 16 | 0; p = q + 12 | 0; k = q + 8 | 0; m = q + 4 | 0; n = q + 22 | 0; o = q + 20 | 0; i = q; c[j >> 2] = d; c[p >> 2] = f; c[k >> 2] = g; c[m >> 2] = h; d = c[j >> 2] | 0; if (a[(c[j >> 2] | 0) + 337 >> 0] | 0) { rn(d, c[p >> 2] | 0, c[m >> 2] | 0); l = q; return } a[d + 337 >> 0] = 1; c[p >> 2] = c[p >> 2] & 255; f = (c[j >> 2] | 0) + 376 | 0; c[f >> 2] = (c[f >> 2] | 0) + 1; c[(c[j >> 2] | 0) + 380 >> 2] = c[(c[j >> 2] | 0) + 152 >> 2]; c[(c[j >> 2] | 0) + 384 >> 2] = c[p >> 2]; c[(c[j >> 2] | 0) + 388 >> 2] = c[m >> 2]; if (c[(c[j >> 2] | 0) + 80 >> 2] | 0) Qb[c[(c[j >> 2] | 0) + 80 >> 2] & 255](c[(c[j >> 2] | 0) + 68 >> 2] | 0, c[p >> 2] | 0); if ((c[p >> 2] | 0) != 7 ? (c[p >> 2] | 0) >>> 0 < 32 | (c[p >> 2] | 0) >>> 0 > 47 : 0) b[(c[j >> 2] | 0) + 332 >> 1] = 0; b[n >> 1] = e[(c[j >> 2] | 0) + 166 >> 1] | 0; b[o >> 1] = b[n >> 1] | 0; b[o >> 1] = e[o >> 1] & -32769; b[o >> 1] = e[o >> 1] | 8192; ln(c[j >> 2] | 0, b[o >> 1] | 0); if (c[c[j >> 2] >> 2] & 2 | 0) vn(c[j >> 2] | 0, ((c[k >> 2] & 15) << 12 | c[p >> 2] << 2) & 65535); tn(c[j >> 2] | 0, c[(c[j >> 2] | 0) + 152 >> 2] | 0); vn(c[j >> 2] | 0, b[n >> 1] | 0); c[i >> 2] = (c[(c[j >> 2] | 0) + 176 >> 2] | 0) + (c[p >> 2] << 2); c[i >> 2] = wn(c[j >> 2] | 0, c[i >> 2] | 0) | 0; kn(c[j >> 2] | 0, c[i >> 2] | 0); a[(c[j >> 2] | 0) + 337 >> 0] = 0; l = q; return } function tn(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 8 | 0; g = d + 4 | 0; e = d; c[f >> 2] = a; c[g >> 2] = b; c[e >> 2] = (c[(c[f >> 2] | 0) + 120 + 28 >> 2] | 0) - 4; un(c[f >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0); Nm(c[f >> 2] | 0, 7, c[e >> 2] | 0); l = d; return } function un(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[g >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; if (((c[f >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 2) >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 3) >> 0] = c[h >> 2]; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 28 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0); l = i; return } } function vn(a, d) { a = a | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 4 | 0; h = e + 8 | 0; f = e; c[g >> 2] = a; b[h >> 1] = d; c[f >> 2] = (c[(c[g >> 2] | 0) + 120 + 28 >> 2] | 0) - 2; xn(c[g >> 2] | 0, c[f >> 2] | 0, b[h >> 1] | 0); Nm(c[g >> 2] | 0, 7, c[f >> 2] | 0); l = e; return } function wn(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; h = i; c[f >> 2] = a; c[e >> 2] = b; c[e >> 2] = c[e >> 2] & 16777215; b = c[f >> 2] | 0; if (((c[e >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { c[h >> 2] = d[(c[b + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0]; c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 1) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 2) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 3) >> 0] | 0); c[g >> 2] = c[h >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[g >> 2] = Vb[c[b + 16 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0) | 0; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function xn(d, f, g) { d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 4 | 0; h = k; j = k + 8 | 0; c[i >> 2] = d; c[h >> 2] = f; b[j >> 1] = g; c[h >> 2] = c[h >> 2] & 16777215; if (((c[h >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[i >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + (c[h >> 2] | 0) >> 0] = (e[j >> 1] | 0) >> 8; a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] = e[j >> 1] | 0; l = k; return } else { Sb[c[(c[i >> 2] | 0) + 24 >> 2] & 31](c[(c[i >> 2] | 0) + 4 >> 2] | 0, c[h >> 2] | 0, b[j >> 1] | 0); l = k; return } } function yn(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; b = (c[e >> 2] | 0) + 376 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; c[(c[e >> 2] | 0) + 380 >> 2] = c[(c[e >> 2] | 0) + 152 >> 2]; c[(c[e >> 2] | 0) + 384 >> 2] = 0; c[(c[e >> 2] | 0) + 388 >> 2] = 45756; ln(c[e >> 2] | 0, 9984); b = c[e >> 2] | 0; Nm(b, 7, wn(c[e >> 2] | 0, 0) | 0); b = wn(c[e >> 2] | 0, 4) | 0; c[(c[e >> 2] | 0) + 156 >> 2] = b; on(c[e >> 2] | 0) | 0; on(c[e >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 152 >> 2] = (c[(c[e >> 2] | 0) + 156 >> 2] | 0) - 4; a[(c[e >> 2] | 0) + 337 >> 0] = 0; b = (c[e >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 64; l = d; return } function zn(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (c[(c[b >> 2] | 0) + 76 >> 2] | 0) Qb[c[(c[b >> 2] | 0) + 76 >> 2] & 255](c[(c[b >> 2] | 0) + 68 >> 2] | 0, e[(c[b >> 2] | 0) + 160 >> 1] | 0); sn(c[b >> 2] | 0, 4, 0, 45761); b = (c[b >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 62; l = d; return } function An(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 5, 0, 45766); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 66; l = b; return } function Bn(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 6, 0, 45771); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 68; l = b; return } function Cn(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 7, 0, 45775); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 68; l = b; return } function Dn(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 8, 0, 45780); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 62; l = b; return } function En(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 9, 0, 45785); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 62; l = b; return } function Fn(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 10, 0, 45791); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 62; l = b; return } function Gn(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 11, 0, 45796); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 62; l = b; return } function Hn(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; sn(c[d >> 2] | 0, 14, 0, 45801); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 62; l = b; return } function In(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; sn(c[e >> 2] | 0, 24 + (c[f >> 2] | 0) | 0, 0, 45806); Jn(c[e >> 2] | 0, c[f >> 2] & 7); b = (c[e >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 62; l = d; return } function Jn(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f; c[h >> 2] = a; c[g >> 2] = d; d = (c[h >> 2] | 0) + 166 | 0; b[d >> 1] = (e[d >> 1] | 0) & 63743; d = (c[h >> 2] | 0) + 166 | 0; b[d >> 1] = e[d >> 1] | 0 | (c[g >> 2] & 7) << 8; l = f; return } function Kn(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; sn(c[e >> 2] | 0, 32 + (c[f >> 2] | 0) | 0, 0, 45811); b = (c[e >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 62; l = d; return } function Ln(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; g = e + 4 | 0; h = e; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; sn(c[f >> 2] | 0, c[h >> 2] | 0, 0, 45816); Jn(c[f >> 2] | 0, c[g >> 2] & 7); d = (c[f >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 62; l = e; return } function Mn(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; c[e >> 2] = b; c[f >> 2] = d; if ((c[f >> 2] | 0) == 7 ? (c[(c[e >> 2] | 0) + 364 >> 2] | 0) != 7 : 0) a[(c[e >> 2] | 0) + 368 >> 0] = 1; c[(c[e >> 2] | 0) + 364 >> 2] = c[f >> 2]; l = g; return } function Nn(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = b; if (a[(c[d >> 2] | 0) + 48 >> 0] | 0) { l = f; return } On(c[d >> 2] | 0, 1); ln(c[d >> 2] | 0, 8192); c[e >> 2] = 0; while (1) { b = c[d >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 8) break; Mm(b, c[e >> 2] | 0, 0); Nm(c[d >> 2] | 0, c[e >> 2] | 0, 0); c[e >> 2] = (c[e >> 2] | 0) + 1 } Om(b, 0); Pm(c[d >> 2] | 0, 0); c[(c[d >> 2] | 0) + 176 >> 2] = 0; c[(c[d >> 2] | 0) + 180 >> 2] = 0; c[(c[d >> 2] | 0) + 184 >> 2] = 0; c[(c[d >> 2] | 0) + 188 >> 2] = 0; c[(c[d >> 2] | 0) + 188 >> 2] = 0; a[(c[d >> 2] | 0) + 335 >> 0] = 0; a[(c[d >> 2] | 0) + 336 >> 0] = 0; a[(c[d >> 2] | 0) + 337 >> 0] = 0; yn(c[d >> 2] | 0); On(c[d >> 2] | 0, 0); l = f; return } function On(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = b; a[g >> 0] = e; if (((d[(c[f >> 2] | 0) + 48 >> 0] | 0 | 0) != 0 | 0) == ((d[g >> 0] | 0 | 0) != 0 | 0)) { l = h; return } a[(c[f >> 2] | 0) + 48 >> 0] = (d[g >> 0] | 0 | 0) != 0; if (!(c[(c[f >> 2] | 0) + 44 >> 2] | 0)) { l = h; return } Qb[c[(c[f >> 2] | 0) + 44 >> 2] & 255](c[(c[f >> 2] | 0) + 40 >> 2] | 0, a[g >> 0] | 0); l = h; return } function Pn(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; k = l; l = l + 16 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 4 | 0; j = k; c[g >> 2] = f; f = c[g >> 2] | 0; if (!(d[(c[g >> 2] | 0) + 335 >> 0] | 0)) { n = c[f + 152 >> 2] | 0; m = (c[g >> 2] | 0) + 200 | 0; o = (c[g >> 2] | 0) + 196 | 0; f = (c[o >> 2] | 0) + 1 | 0; c[o >> 2] = f; c[m + ((f & 31) << 2) >> 2] = n; a[(c[g >> 2] | 0) + 336 >> 0] = 0; b[(c[g >> 2] | 0) + 332 >> 1] = e[(c[g >> 2] | 0) + 166 >> 1] | 0; b[(c[g >> 2] | 0) + 160 >> 1] = b[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0; Pb[c[(c[g >> 2] | 0) + 400 + (((b[(c[g >> 2] | 0) + 160 >> 1] & 65535) >> 6 & 1023) << 2) >> 2] & 511](c[g >> 2] | 0); f = (c[g >> 2] | 0) + 392 | 0; c[f >> 2] = (c[f >> 2] | 0) + 1; if (e[(c[g >> 2] | 0) + 332 >> 1] & 32768 | 0) En(c[g >> 2] | 0) } else { o = f + 372 | 0; c[o >> 2] = (c[o >> 2] | 0) + 4; if (d[(c[g >> 2] | 0) + 335 >> 0] & -2 | 0) { l = k; return } } f = c[g >> 2] | 0; if (a[(c[g >> 2] | 0) + 368 >> 0] | 0) { o = f + 335 | 0; a[o >> 0] = d[o >> 0] & -2; In(c[g >> 2] | 0, 7); a[(c[g >> 2] | 0) + 368 >> 0] = 0; l = k; return } if ((c[f + 364 >> 2] | 0) >>> 0 <= 0) { l = k; return } c[h >> 2] = e[(c[g >> 2] | 0) + 166 >> 1] >> 8 & 7; c[i >> 2] = c[(c[g >> 2] | 0) + 364 >> 2]; if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { l = k; return } o = (c[g >> 2] | 0) + 335 | 0; a[o >> 0] = d[o >> 0] & -2; if (c[(c[g >> 2] | 0) + 56 >> 2] | 0) c[j >> 2] = Vb[c[(c[g >> 2] | 0) + 56 >> 2] & 31](c[(c[g >> 2] | 0) + 52 >> 2] | 0, c[i >> 2] | 0) | 0; else c[j >> 2] = -1; g = c[g >> 2] | 0; f = c[i >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 < 256) { Ln(g, f, c[j >> 2] | 0); l = k; return } else { In(g, f); l = k; return } } function Qn(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; d = h + 8 | 0; e = h + 4 | 0; c[d >> 2] = a; c[e >> 2] = b; while (1) { if ((c[e >> 2] | 0) >>> 0 < (c[(c[d >> 2] | 0) + 372 >> 2] | 0) >>> 0) break; c[e >> 2] = (c[e >> 2] | 0) - (c[(c[d >> 2] | 0) + 372 >> 2] | 0); b = (c[d >> 2] | 0) + 396 | 0; c[b >> 2] = (c[b >> 2] | 0) + (c[(c[d >> 2] | 0) + 372 >> 2] | 0); c[(c[d >> 2] | 0) + 372 >> 2] = 0; Pn(c[d >> 2] | 0); if (!(c[(c[d >> 2] | 0) + 372 >> 2] | 0)) { g = 4; break } } if ((g | 0) == 4) { g = c[7422] | 0; c[f >> 2] = c[(c[d >> 2] | 0) + 152 >> 2]; kQ(g, 45821, f) | 0; XP(c[7422] | 0) | 0 } g = (c[d >> 2] | 0) + 396 | 0; c[g >> 2] = (c[g >> 2] | 0) + (c[e >> 2] | 0); g = (c[d >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) - (c[e >> 2] | 0); l = h; return } function Rn(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; i = m + 16 | 0; f = m + 12 | 0; g = m + 8 | 0; k = m + 20 | 0; h = m + 4 | 0; j = m; c[i >> 2] = a; c[f >> 2] = d; if (Sn(c[i >> 2] | 0) | 0) { l = m; return } c[h >> 2] = c[(c[i >> 2] | 0) + 152 >> 2]; c[j >> 2] = Tn(e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; a = c[i >> 2] | 0; if (c[f >> 2] | 0) { k = a + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + 12; Sn(c[i >> 2] | 0) | 0; l = m; return } c[g >> 2] = (e[a + 160 >> 1] | 0) & 7; b[k >> 1] = c[(c[i >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; b[k >> 1] = (e[k >> 1] | 0) - 1; Un(c[i >> 2] | 0, c[g >> 2] | 0, b[k >> 1] | 0); d = (c[i >> 2] | 0) + 372 | 0; a = c[d >> 2] | 0; if ((e[k >> 1] | 0 | 0) == 65535) { c[d >> 2] = a + 14; Sn(c[i >> 2] | 0) | 0; l = m; return } c[d >> 2] = a + 10; c[(c[i >> 2] | 0) + 156 >> 2] = (c[h >> 2] | 0) + (c[j >> 2] | 0); if (Sn(c[i >> 2] | 0) | 0) { l = m; return } if (Sn(c[i >> 2] | 0) | 0) { l = m; return } c[(c[i >> 2] | 0) + 152 >> 2] = (c[(c[i >> 2] | 0) + 156 >> 2] | 0) - 4; l = m; return } function Sn(d) { d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[e >> 2] = d; d = c[e >> 2] | 0; if (c[(c[e >> 2] | 0) + 156 >> 2] & 1 | 0) { pn(d, c[(c[e >> 2] | 0) + 156 >> 2] | 0, 0, 0); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } b[(c[e >> 2] | 0) + 160 + 2 >> 1] = b[d + 160 + 4 >> 1] | 0; d = Vn(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 156 >> 2] | 0) | 0; b[(c[e >> 2] | 0) + 160 + 4 >> 1] = d; d = c[e >> 2] | 0; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(d); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else { d = d + 156 | 0; c[d >> 2] = (c[d >> 2] | 0) + 2; e = (c[e >> 2] | 0) + 152 | 0; c[e >> 2] = (c[e >> 2] | 0) + 2; c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function Tn(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 32768 | 0 ? a | -65536 : a & 65535) | 0 } function Un(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; i = g + 4 | 0; h = g; j = g + 8 | 0; c[i >> 2] = a; c[h >> 2] = d; b[j >> 1] = f; c[h >> 2] = c[h >> 2] & 7; c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] = c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] & -65536 | (e[j >> 1] | 0) & 65535; l = g; return } function Vn(a, e) { a = a | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[g >> 2] = a; c[f >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; e = c[g >> 2] | 0; if (((c[f >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { b[h >> 1] = (d[(c[e + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) << 8 | (d[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] | 0); h = b[h >> 1] | 0; l = i; return h | 0 } else { b[h >> 1] = Vb[c[e + 12 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0; h = b[h >> 1] | 0; l = i; return h | 0 } return 0 } function Wn(b, d) { b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; i = h; g = h + 8 | 0; c[f >> 2] = b; c[i >> 2] = d; a[g >> 0] = c[i >> 2] | 0 ? 255 : 0; d = (c[f >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 4; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = h; return } if (_u(c[f >> 2] | 0, a[g >> 0] | 0) | 0) { l = h; return } else { Sn(c[f >> 2] | 0) | 0; l = h; return } } function Xn(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = a; c[i >> 2] = b; c[h >> 2] = d; c[g >> 2] = e; e = Ub[c[25556 + (c[i >> 2] << 2) >> 2] & 63](c[j >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0) | 0; l = f; return e | 0 } function Yn(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= 1024) break; if (c[17300 + (c[e >> 2] << 2) >> 2] | 0) { a = (c[d >> 2] | 0) + 400 + (c[e >> 2] << 2) | 0; b = c[17300 + (c[e >> 2] << 2) >> 2] | 0 } else { a = (c[d >> 2] | 0) + 400 + (c[e >> 2] << 2) | 0; b = 236 } c[a >> 2] = b; c[e >> 2] = (c[e >> 2] | 0) + 1 } c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= 8) break; if (!(c[21396 + (c[e >> 2] << 2) >> 2] | 0)) a = 236; else a = c[21396 + (c[e >> 2] << 2) >> 2] | 0; c[(c[d >> 2] | 0) + 4496 + (c[e >> 2] << 2) >> 2] = a; c[e >> 2] = (c[e >> 2] | 0) + 1 } l = f; return } function Zn(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; zn(c[d >> 2] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 2; l = b; return } function py(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; g = h + 16 | 0; j = h + 12 | 0; i = h + 8 | 0; f = h; c[j >> 2] = b; c[i >> 2] = d; c[h + 4 >> 2] = e; c[f >> 2] = c[(c[j >> 2] | 0) + 64 >> 2]; if (fP(c[i >> 2] | 0, 50610) | 0) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = h; return j | 0 } if (ry(c[f >> 2] | 0) | 0) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = h; return j | 0 } else { a[(c[f >> 2] | 0) + 72 >> 0] = 0; c[g >> 2] = 0; j = c[g >> 2] | 0; l = h; return j | 0 } return 0 } function qy(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; j = q + 44 | 0; g = q + 40 | 0; b = q + 36 | 0; h = q + 32 | 0; k = q + 28 | 0; n = q + 24 | 0; f = q + 20 | 0; p = q + 16 | 0; m = q + 12 | 0; i = q + 8 | 0; d = q + 4 | 0; o = q; c[g >> 2] = a; c[i >> 2] = c[(c[g >> 2] | 0) + 68 >> 2]; c[f >> 2] = e[c[i >> 2] >> 1]; c[p >> 2] = 0; c[m >> 2] = 0; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= (e[c[i >> 2] >> 1] | 0) >>> 0) break; c[d >> 2] = c[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2]; c[p >> 2] = (c[p >> 2] | 0) + (e[(c[d >> 2] | 0) + 2 >> 1] | 0); c[n >> 2] = 0; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (e[(c[d >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[o >> 2] = c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + (c[n >> 2] << 2) >> 2]; c[m >> 2] = (c[m >> 2] | 0) + (e[(c[o >> 2] | 0) + 2 >> 1] | 0); c[n >> 2] = (c[n >> 2] | 0) + 1 } c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((c[f >> 2] | 0) == 0 | (c[p >> 2] | 0) == 0 | (c[m >> 2] | 0) == 0) { c[j >> 2] = 1; p = c[j >> 2] | 0; l = q; return p | 0 } c[b >> 2] = c[f >> 2]; c[h >> 2] = (((c[p >> 2] | 0) + (((((c[p >> 2] | 0) >>> 0) / ((c[f >> 2] | 0) >>> 0) | 0) >>> 0) / 2 | 0) | 0) >>> 0) / ((c[f >> 2] | 0) >>> 0) | 0; c[k >> 2] = (((c[m >> 2] | 0) + (((((c[m >> 2] | 0) >>> 0) / ((c[p >> 2] | 0) >>> 0) | 0) >>> 0) / 2 | 0) | 0) >>> 0) / ((c[p >> 2] | 0) >>> 0) | 0; if (Qy(c[g >> 2] | 0, c[m >> 2] | 0, c[b >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0) | 0) { c[j >> 2] = 1; p = c[j >> 2] | 0; l = q; return p | 0 } else { Ry(c[g >> 2] | 0, c[b >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0); c[j >> 2] = 0; p = c[j >> 2] | 0; l = q; return p | 0 } return 0 } function ry(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; do if (c[(c[b >> 2] | 0) + 84 >> 2] | 0) { if (!(c[(c[b >> 2] | 0) + 68 >> 2] | 0)) { c[d >> 2] = 1; break } if (Ny(c[b >> 2] | 0) | 0) { c[d >> 2] = 1; break } if (TC(c[(c[b >> 2] | 0) + 84 >> 2] | 0, c[(c[b >> 2] | 0) + 68 >> 2] | 0, c[(c[b >> 2] | 0) + 80 >> 2] | 0) | 0) { c[d >> 2] = 1; break } else { c[d >> 2] = 0; break } } else c[d >> 2] = 1; while (0); l = e; return c[d >> 2] | 0 } function sy(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 28 | 0; g = n + 24 | 0; m = n + 20 | 0; k = n + 16 | 0; i = n + 12 | 0; e = n + 8 | 0; f = n + 4 | 0; h = n; c[g >> 2] = a; c[m >> 2] = b; c[k >> 2] = d; if ((c[m >> 2] | 0) == 0 ? (c[m >> 2] = QC(c[g >> 2] | 0) | 0, (c[m >> 2] | 0) == 0) : 0) c[m >> 2] = NC(c[g >> 2] | 0) | 0; if (!(c[m >> 2] | 0)) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } a = c[g >> 2] | 0; if (!(c[k >> 2] | 0)) { c[h >> 2] = dQ(a, 50617) | 0; if (!(c[h >> 2] | 0)) { c[k >> 2] = 1; c[h >> 2] = dQ(c[g >> 2] | 0, 50621) | 0 } } else c[h >> 2] = dQ(a, 50621) | 0; if (!(c[h >> 2] | 0)) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } c[e >> 2] = ly(c[h >> 2] | 0, c[m >> 2] | 0, c[k >> 2] | 0) | 0; UP(c[h >> 2] | 0) | 0; if (!(c[e >> 2] | 0)) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } c[f >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; c[i >> 2] = cP(c[g >> 2] | 0) | 0; m = HQ((c[i >> 2] | 0) + 1 | 0) | 0; c[(c[f >> 2] | 0) + 84 >> 2] = m; if (c[(c[f >> 2] | 0) + 84 >> 2] | 0) NP(c[(c[f >> 2] | 0) + 84 >> 2] | 0, c[g >> 2] | 0) | 0; Py(c[e >> 2] | 0, c[g >> 2] | 0); c[j >> 2] = c[e >> 2]; m = c[j >> 2] | 0; l = n; return m | 0 } function ty(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = QC(c[d >> 2] | 0) | 0; l = b; return a | 0 } function uy(a, f) { a = a | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 16 | 0; k = h + 8 | 0; j = h + 4 | 0; i = h; g = h + 12 | 0; c[k >> 2] = a; c[j >> 2] = f; c[i >> 2] = (c[k >> 2] | 0) + (c[j >> 2] | 0); b[g >> 1] = d[c[i >> 2] >> 0] | 0; b[g >> 1] = (e[g >> 1] | 0) << 8 | (d[(c[i >> 2] | 0) + 1 >> 0] | 0); l = h; return b[g >> 1] | 0 } function vy(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; g = f + 4 | 0; e = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = d[c[g >> 2] >> 0]; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 2 >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 3 >> 0] | 0); l = f; return c[e >> 2] | 0 } function wy(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[g >> 2] | 0) + 2 >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 3 >> 0] = c[h >> 2]; l = f; return } function xy(a, f) { a = a | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 16 | 0; k = h + 8 | 0; j = h + 4 | 0; i = h; g = h + 12 | 0; c[k >> 2] = a; c[j >> 2] = f; c[i >> 2] = (c[k >> 2] | 0) + (c[j >> 2] | 0); b[g >> 1] = d[(c[i >> 2] | 0) + 1 >> 0] | 0; b[g >> 1] = (e[g >> 1] | 0) << 8 | (d[c[i >> 2] >> 0] | 0); l = h; return b[g >> 1] | 0 } function yy(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; g = f + 4 | 0; e = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = d[(c[g >> 2] | 0) + 3 >> 0]; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 2 >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[c[g >> 2] >> 0] | 0); l = f; return c[e >> 2] | 0 } function zy(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; e = l; l = l + 32 | 0; i = e + 16 | 0; h = e + 12 | 0; g = e + 8 | 0; f = e; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); a = f; c[a >> 2] = d[(c[g >> 2] | 0) + 7 >> 0]; c[a + 4 >> 2] = 0; a = f; a = SQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, 8) | 0; b = f; c[b >> 2] = a | (d[(c[g >> 2] | 0) + 6 >> 0] | 0); c[b + 4 >> 2] = D; b = f; b = SQ(c[b >> 2] | 0, c[b + 4 >> 2] | 0, 8) | 0; a = f; c[a >> 2] = b | (d[(c[g >> 2] | 0) + 5 >> 0] | 0); c[a + 4 >> 2] = D; a = f; a = SQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, 8) | 0; b = f; c[b >> 2] = a | (d[(c[g >> 2] | 0) + 4 >> 0] | 0); c[b + 4 >> 2] = D; b = f; b = SQ(c[b >> 2] | 0, c[b + 4 >> 2] | 0, 8) | 0; a = f; c[a >> 2] = b | (d[(c[g >> 2] | 0) + 3 >> 0] | 0); c[a + 4 >> 2] = D; a = f; a = SQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, 8) | 0; b = f; c[b >> 2] = a | (d[(c[g >> 2] | 0) + 2 >> 0] | 0); c[b + 4 >> 2] = D; b = f; b = SQ(c[b >> 2] | 0, c[b + 4 >> 2] | 0, 8) | 0; a = f; c[a >> 2] = b | (d[(c[g >> 2] | 0) + 1 >> 0] | 0); c[a + 4 >> 2] = D; a = f; a = SQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, 8) | 0; b = f; c[b >> 2] = a | (d[c[g >> 2] >> 0] | 0); c[b + 4 >> 2] = D; b = f; D = c[b + 4 >> 2] | 0; l = e; return c[b >> 2] | 0 } function Ay(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = c[h >> 2]; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 2 >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[g >> 2] | 0) + 3 >> 0] = (c[h >> 2] | 0) >>> 24; l = f; return } function By(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; g = l; l = l + 32 | 0; k = g + 16 | 0; j = g + 12 | 0; i = g; h = g + 8 | 0; c[k >> 2] = b; c[j >> 2] = d; d = i; c[d >> 2] = e; c[d + 4 >> 2] = f; c[h >> 2] = (c[k >> 2] | 0) + (c[j >> 2] | 0); a[c[h >> 2] >> 0] = c[i >> 2]; d = i; d = PQ(c[d >> 2] | 0, c[d + 4 >> 2] | 0, 8) | 0; a[(c[h >> 2] | 0) + 1 >> 0] = d; d = i; d = PQ(c[d >> 2] | 0, c[d + 4 >> 2] | 0, 16) | 0; a[(c[h >> 2] | 0) + 2 >> 0] = d; d = i; d = PQ(c[d >> 2] | 0, c[d + 4 >> 2] | 0, 24) | 0; a[(c[h >> 2] | 0) + 3 >> 0] = d; a[(c[h >> 2] | 0) + 4 >> 0] = c[i + 4 >> 2]; d = i; d = PQ(c[d >> 2] | 0, c[d + 4 >> 2] | 0, 40) | 0; a[(c[h >> 2] | 0) + 5 >> 0] = d; d = i; d = PQ(c[d >> 2] | 0, c[d + 4 >> 2] | 0, 48) | 0; a[(c[h >> 2] | 0) + 6 >> 0] = d; d = i; d = PQ(c[d >> 2] | 0, c[d + 4 >> 2] | 0, 56) | 0; a[(c[h >> 2] | 0) + 7 >> 0] = d; l = g; return } function Cy(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; g = f; c[h >> 2] = a; a = g; c[a >> 2] = b; c[a + 4 >> 2] = d; if (lQ(c[h >> 2] | 0, c[g >> 2] | 0, 0) | 0) { c[e >> 2] = 1; h = c[e >> 2] | 0; l = f; return h | 0 } else { c[e >> 2] = 0; h = c[e >> 2] | 0; l = f; return h | 0 } return 0 } function Dy(a, b, d, e, f, g) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 32 | 0; m = n + 28 | 0; j = n + 24 | 0; h = n + 20 | 0; o = n + 8 | 0; i = n; k = n + 16 | 0; c[j >> 2] = a; c[h >> 2] = b; a = o; c[a >> 2] = d; c[a + 4 >> 2] = e; a = i; c[a >> 2] = f; c[a + 4 >> 2] = g; a = o; if (Cy(c[j >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0) | 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = n; return o | 0 } c[k >> 2] = AQ(c[h >> 2] | 0, 1, c[i >> 2] | 0, c[j >> 2] | 0) | 0; o = i; j = c[o + 4 >> 2] | 0; if (0 < j >>> 0 | (0 == (j | 0) ? (c[k >> 2] | 0) >>> 0 < (c[o >> 2] | 0) >>> 0 : 0)) { j = (c[h >> 2] | 0) + (c[k >> 2] | 0) | 0; o = i; o = NQ(c[o >> 2] | 0, c[o + 4 >> 2] | 0, c[k >> 2] | 0, 0) | 0; TQ(j | 0, 0, o | 0) | 0 } c[m >> 2] = 0; o = c[m >> 2] | 0; l = n; return o | 0 } function Ey(a, b, d, e, f, g) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 32 | 0; m = n + 28 | 0; j = n + 24 | 0; h = n + 20 | 0; o = n + 8 | 0; i = n; k = n + 16 | 0; c[j >> 2] = a; c[h >> 2] = b; a = o; c[a >> 2] = d; c[a + 4 >> 2] = e; a = i; c[a >> 2] = f; c[a + 4 >> 2] = g; a = o; if (Cy(c[j >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0) | 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = n; return o | 0 } c[k >> 2] = QP(c[h >> 2] | 0, 1, c[i >> 2] | 0, c[j >> 2] | 0) | 0; o = i; if (0 != (c[o + 4 >> 2] | 0) ? 1 : (c[k >> 2] | 0) != (c[o >> 2] | 0)) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = n; return o | 0 } else { c[m >> 2] = 0; o = c[m >> 2] | 0; l = n; return o | 0 } return 0 } function Fy(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; e = h + 8 | 0; d = h + 4 | 0; g = h; c[e >> 2] = a; c[d >> 2] = b; if (lQ(c[e >> 2] | 0, 0, 2) | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } c[g >> 2] = xQ(c[e >> 2] | 0) | 0; if ((c[g >> 2] | 0) == -1) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } else { e = c[g >> 2] | 0; g = c[d >> 2] | 0; c[g >> 2] = e; c[g + 4 >> 2] = ((e | 0) < 0) << 31 >> 31; c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function Gy(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; g = f; c[h >> 2] = a; a = g; c[a >> 2] = b; c[a + 4 >> 2] = d; XP(c[h >> 2] | 0) | 0; a = tQ(c[h >> 2] | 0) | 0; if (!(DQ(a, c[g >> 2] | 0) | 0)) { c[e >> 2] = 0; h = c[e >> 2] | 0; l = f; return h | 0 } else { c[e >> 2] = 1; h = c[e >> 2] | 0; l = f; return h | 0 } return 0 } function Hy(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 16 | 0; h = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; j = k; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; if (!(c[c[h >> 2] >> 2] | 0)) { e = S(c[c[f >> 2] >> 2] | 0, c[c[g >> 2] >> 2] | 0) | 0; e = S(e, c[c[j >> 2] >> 2] | 0) | 0; c[c[h >> 2] >> 2] = e } if (!(c[c[h >> 2] >> 2] | 0)) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } if (!(c[c[f >> 2] >> 2] | 0)) { if (!(c[c[j >> 2] >> 2] | 0)) c[c[j >> 2] >> 2] = 63; if (!(c[c[g >> 2] >> 2] | 0)) c[c[g >> 2] >> 2] = 16; e = ((c[c[h >> 2] >> 2] | 0) >>> 0) / ((S(c[c[g >> 2] >> 2] | 0, c[c[j >> 2] >> 2] | 0) | 0) >>> 0) | 0; c[c[f >> 2] >> 2] = e } if (!(c[c[g >> 2] >> 2] | 0)) { if (!(c[c[j >> 2] >> 2] | 0)) c[c[j >> 2] >> 2] = 63; e = ((c[c[h >> 2] >> 2] | 0) >>> 0) / ((S(c[c[f >> 2] >> 2] | 0, c[c[j >> 2] >> 2] | 0) | 0) >>> 0) | 0; c[c[g >> 2] >> 2] = e } if (!(c[c[j >> 2] >> 2] | 0)) { e = ((c[c[h >> 2] >> 2] | 0) >>> 0) / ((S(c[c[f >> 2] >> 2] | 0, c[c[g >> 2] >> 2] | 0) | 0) >>> 0) | 0; c[c[j >> 2] >> 2] = e } c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } function Iy(b, d, e, f, g, h) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; i = l; l = l + 32 | 0; j = i + 20 | 0; k = i + 16 | 0; p = i + 12 | 0; o = i + 8 | 0; n = i + 4 | 0; m = i; c[j >> 2] = b; c[k >> 2] = d; c[p >> 2] = e; c[o >> 2] = f; c[n >> 2] = g; c[m >> 2] = h; c[c[j >> 2] >> 2] = 0; c[(c[j >> 2] | 0) + 4 >> 2] = 0; c[(c[j >> 2] | 0) + 8 >> 2] = 0; c[(c[j >> 2] | 0) + 12 >> 2] = 0; c[(c[j >> 2] | 0) + 16 >> 2] = 0; c[(c[j >> 2] | 0) + 20 >> 2] = 0; c[(c[j >> 2] | 0) + 24 >> 2] = 0; Hy(p, o, n, m) | 0; c[(c[j >> 2] | 0) + 28 >> 2] = c[p >> 2]; c[(c[j >> 2] | 0) + 32 >> 2] = c[o >> 2]; c[(c[j >> 2] | 0) + 36 >> 2] = c[n >> 2]; c[(c[j >> 2] | 0) + 40 >> 2] = c[m >> 2]; c[(c[j >> 2] | 0) + 44 >> 2] = c[o >> 2]; c[(c[j >> 2] | 0) + 48 >> 2] = c[n >> 2]; c[(c[j >> 2] | 0) + 52 >> 2] = c[m >> 2]; a[(c[j >> 2] | 0) + 56 >> 0] = 0; c[(c[j >> 2] | 0) + 60 >> 2] = 0; c[(c[j >> 2] | 0) + 64 >> 2] = c[k >> 2]; l = i; return } function Jy(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } IQ(c[(c[b >> 2] | 0) + 60 >> 2] | 0); if (!(c[(c[b >> 2] | 0) + 4 >> 2] | 0)) { l = d; return } Pb[c[(c[b >> 2] | 0) + 4 >> 2] & 511](c[b >> 2] | 0); l = d; return } function Ky(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 24 >> 2] = c[f >> 2]; l = d; return } function Ly(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[c[b >> 2] >> 2] | 0 } function My(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[c[e >> 2] >> 2] = c[f >> 2]; l = d; return } function Ny(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return (a[(c[d >> 2] | 0) + 56 >> 0] | 0) != 0 | 0 } function Oy(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; a[(c[f >> 2] | 0) + 56 >> 0] = (c[g >> 2] | 0) != 0; l = e; return } function Py(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; if (c[(c[d >> 2] | 0) + 60 >> 2] | 0) IQ(c[(c[d >> 2] | 0) + 60 >> 2] | 0); if (!(c[e >> 2] | 0)) { c[(c[d >> 2] | 0) + 60 >> 2] = 0; l = f; return } b = HQ((cP(c[e >> 2] | 0) | 0) + 1 | 0) | 0; c[(c[d >> 2] | 0) + 60 >> 2] = b; if (!(c[(c[d >> 2] | 0) + 60 >> 2] | 0)) { l = f; return } NP(c[(c[d >> 2] | 0) + 60 >> 2] | 0, c[e >> 2] | 0) | 0; l = f; return } function Qy(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, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 20 | 0; h = n + 16 | 0; j = n + 12 | 0; g = n + 8 | 0; i = n + 4 | 0; m = n; c[h >> 2] = a; c[j >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; c[m >> 2] = f; if (Hy(j, g, i, m) | 0) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else { c[(c[h >> 2] | 0) + 28 >> 2] = c[j >> 2]; c[(c[h >> 2] | 0) + 32 >> 2] = c[g >> 2]; c[(c[h >> 2] | 0) + 36 >> 2] = c[i >> 2]; c[(c[h >> 2] | 0) + 40 >> 2] = c[m >> 2]; c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } return 0 } function Ry(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; g = f + 12 | 0; j = f + 8 | 0; i = f + 4 | 0; h = f; c[g >> 2] = a; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[(c[g >> 2] | 0) + 44 >> 2] = c[j >> 2]; c[(c[g >> 2] | 0) + 48 >> 2] = c[i >> 2]; c[(c[g >> 2] | 0) + 52 >> 2] = c[h >> 2]; l = f; return } function Sy(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 24 >> 2] | 0 } function Ty(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 28 >> 2] | 0 } function Uy(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; do if (Vy(c[b >> 2] | 0) | 0) { if (!(Wy(c[b >> 2] | 0) | 0)) { c[d >> 2] = 0; break } if (!(Xy(c[b >> 2] | 0) | 0)) { c[d >> 2] = 0; break } if (!(Yy(c[b >> 2] | 0) | 0)) { c[d >> 2] = 0; break } else { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, c[(c[b >> 2] | 0) + 32 >> 2] | 0, c[(c[b >> 2] | 0) + 36 >> 2] | 0, c[(c[b >> 2] | 0) + 40 >> 2] | 0) | 0; c[d >> 2] = 0; break } } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function Vy(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 544 | 0; k = n + 28 | 0; i = n + 24 | 0; e = n + 20 | 0; b = n + 32 | 0; h = n + 16 | 0; j = n + 12 | 0; m = n + 8 | 0; f = n + 4 | 0; g = n; c[i >> 2] = a; if (Zy(c[i >> 2] | 0, b, 0, 1) | 0) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } if ((d[b + 510 >> 0] | 0 | 0) == 85 ? (d[b + 511 >> 0] | 0 | 0) == 170 : 0) { c[j >> 2] = 0; c[m >> 2] = 0; c[f >> 2] = 0; c[g >> 2] = 0; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= 4) { b = 17; break } if (!(_y(b + 446 + (c[e >> 2] << 4) | 0, f, g) | 0)) { if (c[j >> 2] | 0 ? (c[j >> 2] | 0) != (c[f >> 2] | 0) : 0) { b = 11; break } if (c[m >> 2] | 0 ? (c[m >> 2] | 0) != (c[g >> 2] | 0) : 0) { b = 14; break } c[j >> 2] = c[f >> 2]; c[m >> 2] = c[g >> 2] } c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((b | 0) == 11) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else if ((b | 0) == 14) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else if ((b | 0) == 17) if ((c[j >> 2] | 0) == 0 | (c[m >> 2] | 0) == 0) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else { c[h >> 2] = ((c[(c[i >> 2] | 0) + 28 >> 2] | 0) >>> 0) / ((S(c[j >> 2] | 0, c[m >> 2] | 0) | 0) >>> 0) | 0; Qy(c[i >> 2] | 0, c[(c[i >> 2] | 0) + 28 >> 2] | 0, c[h >> 2] | 0, c[j >> 2] | 0, c[m >> 2] | 0) | 0; c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } } c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } function Wy(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 544 | 0; h = j + 16 | 0; f = j + 12 | 0; b = j + 24 | 0; e = j + 8 | 0; g = j + 4 | 0; i = j; c[f >> 2] = a; if (Zy(c[f >> 2] | 0, b, 0, 1) | 0) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } if ((d[b + 510 >> 0] | 0 | 0) == 85 ? (d[b + 511 >> 0] | 0 | 0) == 170 : 0) { if (((xy(b, 11) | 0) & 65535 | 0) != 512) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } c[g >> 2] = (xy(b, 26) | 0) & 65535; c[i >> 2] = (xy(b, 24) | 0) & 65535; if ((c[g >> 2] | 0) == 0 | (c[g >> 2] | 0) >>> 0 > 255) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } if ((c[i >> 2] | 0) == 0 | (c[i >> 2] | 0) >>> 0 > 255) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } else { c[e >> 2] = ((c[(c[f >> 2] | 0) + 28 >> 2] | 0) >>> 0) / ((S(c[g >> 2] | 0, c[i >> 2] | 0) | 0) >>> 0) | 0; Qy(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 28 >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0) | 0; c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } } c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } function Xy(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 544 | 0; j = m + 24 | 0; g = m + 20 | 0; i = m + 16 | 0; e = m + 12 | 0; h = m + 8 | 0; k = m + 4 | 0; f = m; b = m + 32 | 0; c[g >> 2] = a; if (Zy(c[g >> 2] | 0, b, 0, 1) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } if (((uy(b, 508) | 0) & 65535 | 0) != 55998) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } c[f >> 2] = 0; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= 512) break; c[f >> 2] = c[f >> 2] ^ (d[b + (c[i >> 2] | 0) >> 0] | 0) << 8; c[f >> 2] = c[f >> 2] ^ (d[b + ((c[i >> 2] | 0) + 1) >> 0] | 0); c[i >> 2] = (c[i >> 2] | 0) + 2 } if (c[f >> 2] | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } if ((vy(b, 128) | 0) != 1) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } if (((uy(b, 140) | 0) & 65535 | 0) > 8) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else { c[e >> 2] = (uy(b, 422) | 0) & 65535; c[h >> 2] = (uy(b, 436) | 0) & 65535; c[k >> 2] = (uy(b, 438) | 0) & 65535; Qy(c[g >> 2] | 0, c[(c[g >> 2] | 0) + 28 >> 2] | 0, c[e >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0) | 0; c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function Yy(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; do switch (c[(c[b >> 2] | 0) + 28 >> 2] | 0) { case 320: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 40, 1, 8) | 0; break } case 360: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 40, 1, 9) | 0; break } case 640: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 40, 2, 8) | 0; break } case 720: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 40, 2, 9) | 0; break } case 800: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 40, 2, 10) | 0; break } case 1440: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 80, 2, 9) | 0; break } case 1600: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 80, 2, 10) | 0; break } case 2400: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 80, 2, 15) | 0; break } case 2880: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 80, 2, 18) | 0; break } case 5760: { Qy(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0, 80, 2, 36) | 0; break } default: { c[d >> 2] = 1;d = c[d >> 2] | 0;l = e; return d | 0 } } while (0); c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } function Zy(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; g = k + 12 | 0; f = k + 8 | 0; h = k + 4 | 0; i = k; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[i >> 2] = e; if (c[(c[g >> 2] | 0) + 8 >> 2] | 0) { c[j >> 2] = Ub[c[(c[g >> 2] | 0) + 8 >> 2] & 63](c[g >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0; j = c[j >> 2] | 0; l = k; return j | 0 } else { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function _y(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 64 | 0; o = u + 60 | 0; n = u + 56 | 0; h = u + 52 | 0; p = u + 48 | 0; f = u + 44 | 0; i = u + 40 | 0; q = u + 36 | 0; g = u + 32 | 0; j = u + 28 | 0; r = u + 24 | 0; k = u + 20 | 0; m = u + 16 | 0; s = u + 8 | 0; t = u; c[n >> 2] = a; c[h >> 2] = b; c[p >> 2] = e; if ((d[c[n >> 2] >> 0] | 0) & 127 | 0) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } c[f >> 2] = d[(c[n >> 2] | 0) + 3 >> 0] | 0 | ((d[(c[n >> 2] | 0) + 2 >> 0] | 0) & 192) << 2; c[i >> 2] = d[(c[n >> 2] | 0) + 1 >> 0]; c[q >> 2] = (d[(c[n >> 2] | 0) + 2 >> 0] | 0) & 63; c[k >> 2] = yy(c[n >> 2] | 0, 8) | 0; c[g >> 2] = d[(c[n >> 2] | 0) + 7 >> 0] | 0 | ((d[(c[n >> 2] | 0) + 6 >> 0] | 0) & 192) << 2; c[j >> 2] = d[(c[n >> 2] | 0) + 5 >> 0]; c[r >> 2] = (d[(c[n >> 2] | 0) + 6 >> 0] | 0) & 63; c[m >> 2] = yy(c[n >> 2] | 0, 12) | 0; if ((c[q >> 2] | 0) == 0 | (c[r >> 2] | 0) == 0 | (c[k >> 2] | 0) == 0 | (c[m >> 2] | 0) == 0) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } c[q >> 2] = (c[q >> 2] | 0) - 1; c[r >> 2] = (c[r >> 2] | 0) - 1; c[m >> 2] = (c[k >> 2] | 0) + (c[m >> 2] | 0) - 1; if ((c[k >> 2] | 0) >>> 0 > (c[q >> 2] | 0) >>> 0 ? (c[m >> 2] | 0) >>> 0 > (c[r >> 2] | 0) >>> 0 : 0) { e = $Q(c[f >> 2] | 0, 0, (c[m >> 2] | 0) - (c[r >> 2] | 0) | 0, 0) | 0; n = D; q = $Q(c[g >> 2] | 0, 0, (c[k >> 2] | 0) - (c[q >> 2] | 0) | 0, 0) | 0; q = NQ(e | 0, n | 0, q | 0, D | 0) | 0; n = s; c[n >> 2] = q; c[n + 4 >> 2] = D; n = $Q(c[f >> 2] | 0, 0, c[j >> 2] | 0, 0) | 0; q = D; e = $Q(c[g >> 2] | 0, 0, c[i >> 2] | 0, 0) | 0; e = NQ(n | 0, q | 0, e | 0, D | 0) | 0; q = t; c[q >> 2] = e; c[q + 4 >> 2] = D; q = t; if ((c[q >> 2] | 0) == 0 & (c[q + 4 >> 2] | 0) == 0) { c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } e = s; q = t; q = XQ(c[e >> 2] | 0, c[e + 4 >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0; c[c[p >> 2] >> 2] = q; q = (c[m >> 2] | 0) - (c[r >> 2] | 0) | 0; r = $Q(c[j >> 2] | 0, 0, c[c[p >> 2] >> 2] | 0, 0) | 0; r = NQ(q | 0, 0, r | 0, D | 0) | 0; q = s; c[q >> 2] = r; c[q + 4 >> 2] = D; q = $Q(c[g >> 2] | 0, 0, c[c[p >> 2] >> 2] | 0, 0) | 0; r = t; c[r >> 2] = q; c[r + 4 >> 2] = D; r = t; if ((c[r >> 2] | 0) == 0 & (c[r + 4 >> 2] | 0) == 0) { c[o >> 2] = 0; t = c[o >> 2] | 0; l = u; return t | 0 } t = XQ(c[s >> 2] | 0, c[s + 4 >> 2] | 0, c[t >> 2] | 0, c[t + 4 >> 2] | 0) | 0; c[c[h >> 2] >> 2] = t; if (c[c[h >> 2] >> 2] | 0 ? c[c[p >> 2] >> 2] | 0 : 0) { c[o >> 2] = 0; t = c[o >> 2] | 0; l = u; return t | 0 } c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } c[o >> 2] = 1; t = c[o >> 2] | 0; l = u; return t | 0 } function $y(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; f = k + 16 | 0; g = k; i = k + 12 | 0; j = k + 8 | 0; c[f >> 2] = a; a = g; c[a >> 2] = b; c[a + 4 >> 2] = d; c[i >> 2] = e; e = (xz(c[f >> 2] | 0) | 0) != 0; b = c[f >> 2] | 0; if (e) { c[h >> 2] = vz(b, c[i >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } e = (Xz(b) | 0) != 0; b = c[f >> 2] | 0; if (e) { c[h >> 2] = Nz(b, c[i >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } e = (oz(b) | 0) != 0; b = c[f >> 2] | 0; if (e) { c[h >> 2] = mz(b, c[i >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } c[j >> 2] = ty(b) | 0; b = c[f >> 2] | 0; if (c[j >> 2] | 0) { c[h >> 2] = sy(b, c[j >> 2] | 0, c[i >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } c[j >> 2] = NC(b) | 0; b = c[f >> 2] | 0; if ((c[j >> 2] | 0) != 0 & (c[j >> 2] | 0) != 13) { c[h >> 2] = sy(b, c[j >> 2] | 0, c[i >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } else { j = g; c[h >> 2] = bA(b, c[j >> 2] | 0, c[j + 4 >> 2] | 0, c[i >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } return 0 } function az(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; g = k + 12 | 0; f = k + 8 | 0; h = k + 4 | 0; i = k; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[i >> 2] = e; if (c[(c[g >> 2] | 0) + 12 >> 2] | 0) { c[j >> 2] = Ub[c[(c[g >> 2] | 0) + 12 >> 2] & 63](c[g >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0; j = c[j >> 2] | 0; l = k; return j | 0 } else { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function bz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; h = i; c[e >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; if (!(c[(c[e >> 2] | 0) + 20 >> 2] | 0)) { c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } if (!(c[h >> 2] | 0)) c[h >> 2] = 59585; c[g >> 2] = Nb[c[(c[e >> 2] | 0) + 20 >> 2] & 63](c[e >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0) | 0; h = c[g >> 2] | 0; l = i; return h | 0 } function cz() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(8) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { c[c[a >> 2] >> 2] = 0; c[(c[a >> 2] | 0) + 4 >> 2] = 0; c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function dz(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; e = k + 16 | 0; d = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; i = k; c[e >> 2] = a; c[d >> 2] = b; c[f >> 2] = 0; while (1) { b = c[e >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) break; if ((c[(c[(c[b + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0) + 24 >> 2] | 0) == (c[(c[d >> 2] | 0) + 24 >> 2] | 0)) { j = 4; break } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((j | 0) == 4) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = k; return j | 0 } c[g >> 2] = (c[b >> 2] | 0) + 1; c[i >> 2] = JQ(c[(c[e >> 2] | 0) + 4 >> 2] | 0, c[g >> 2] << 2) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = k; return j | 0 } else { c[(c[i >> 2] | 0) + (c[c[e >> 2] >> 2] << 2) >> 2] = c[d >> 2]; c[c[e >> 2] >> 2] = c[g >> 2]; c[(c[e >> 2] | 0) + 4 >> 2] = c[i >> 2]; c[h >> 2] = 0; j = c[h >> 2] | 0; l = k; return j | 0 } return 0 } function ez(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; e = i + 16 | 0; d = i + 12 | 0; h = i + 8 | 0; f = i + 4 | 0; g = i; c[e >> 2] = a; c[d >> 2] = b; c[h >> 2] = 0; c[g >> 2] = 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) break; if ((c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0) != (c[d >> 2] | 0)) { c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2] = c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; c[g >> 2] = (c[g >> 2] | 0) + 1 } else c[h >> 2] = 1; c[f >> 2] = (c[f >> 2] | 0) + 1 } c[c[e >> 2] >> 2] = c[g >> 2]; l = i; return c[h >> 2] | 0 } function fz(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; e = h + 8 | 0; d = h + 4 | 0; f = h; c[e >> 2] = a; c[d >> 2] = b; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) { b = 6; break } if ((c[(c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0) + 24 >> 2] | 0) == (c[d >> 2] | 0)) { b = 4; break } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((b | 0) == 4) { c[g >> 2] = c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; g = c[g >> 2] | 0; l = h; return g | 0 } else if ((b | 0) == 6) { c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function gz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; d = f + 4 | 0; e = f; c[b >> 2] = a; c[e >> 2] = 0; c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[c[b >> 2] >> 2] | 0) >>> 0) break; if (c[(c[(c[(c[b >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2] | 0) + 20 >> 2] | 0 ? bz(c[(c[(c[b >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2] | 0, 50610, 0) | 0 : 0) c[e >> 2] = 1; c[d >> 2] = (c[d >> 2] | 0) + 1 } l = f; return c[e >> 2] | 0 } function hz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; j = l; l = l + 32 | 0; h = j + 20 | 0; m = j + 16 | 0; k = j + 12 | 0; g = j + 8 | 0; i = j + 4 | 0; f = j; c[m >> 2] = a; c[k >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; c[f >> 2] = fz(c[m >> 2] | 0, c[k >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { c[h >> 2] = 1; m = c[h >> 2] | 0; l = j; return m | 0 } if (!(c[i >> 2] | 0)) c[i >> 2] = 59585; c[h >> 2] = bz(c[f >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0) | 0; m = c[h >> 2] | 0; l = j; return m | 0 } function iz(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, m = 0, n = 0; n = l; l = l + 80 | 0; i = n + 32 | 0; f = n + 28 | 0; j = n + 24 | 0; h = n + 20 | 0; d = n + 40 | 0; e = n + 16 | 0; g = n + 12 | 0; k = n + 8 | 0; m = n; c[f >> 2] = a; c[j >> 2] = b; if (Dy(c[f >> 2] | 0, d, 0, 0, 23, 0) | 0) { c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } if (nQ(d, 46246, 7) | 0) { c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } c[e >> 2] = yy(d, 15) | 0; c[g >> 2] = yy(d, 7) | 0; c[k >> 2] = yy(d, 11) | 0; b = m; c[b >> 2] = yy(d, 19) | 0; c[b + 4 >> 2] = 0; b = m; a = c[b + 4 >> 2] | 0; if (a >>> 0 < 0 | (a | 0) == 0 & (c[b >> 2] | 0) >>> 0 < 23) { c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } c[h >> 2] = HQ(80) | 0; if (!(c[h >> 2] | 0)) { c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } else { Iy(c[h >> 2] | 0, c[h >> 2] | 0, 0, c[e >> 2] | 0, c[g >> 2] | 0, c[k >> 2] | 0); My(c[h >> 2] | 0, 4); Oy(c[h >> 2] | 0, c[j >> 2] | 0); c[(c[h >> 2] | 0) + 4 >> 2] = 238; c[(c[h >> 2] | 0) + 8 >> 2] = 18; c[(c[h >> 2] | 0) + 12 >> 2] = 19; j = m; k = c[j + 4 >> 2] | 0; m = (c[h >> 2] | 0) + 72 | 0; c[m >> 2] = c[j >> 2]; c[m + 4 >> 2] = k; c[(c[h >> 2] | 0) + 68 >> 2] = c[f >> 2]; c[i >> 2] = c[h >> 2]; m = c[i >> 2] | 0; l = n; return m | 0 } return 0 } function jz(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; UP(c[(c[d >> 2] | 0) + 68 >> 2] | 0) | 0; IQ(c[d >> 2] | 0); l = b; return } function kz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; n = o + 36 | 0; h = o + 32 | 0; f = o + 28 | 0; i = o + 24 | 0; k = o + 20 | 0; j = o + 16 | 0; m = o + 8 | 0; g = o; c[h >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; c[k >> 2] = e; if (((c[i >> 2] | 0) + (c[k >> 2] | 0) | 0) >>> 0 > (c[(c[h >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } c[j >> 2] = c[(c[h >> 2] | 0) + 64 >> 2]; e = (c[j >> 2] | 0) + 72 | 0; d = c[e >> 2] | 0; e = c[e + 4 >> 2] | 0; i = $Q(512, 0, c[i >> 2] | 0, 0) | 0; i = OQ(d | 0, e | 0, i | 0, D | 0) | 0; e = m; c[e >> 2] = i; c[e + 4 >> 2] = D; e = $Q(512, 0, c[k >> 2] | 0, 0) | 0; k = g; c[k >> 2] = e; c[k + 4 >> 2] = D; k = m; m = g; if (Dy(c[(c[j >> 2] | 0) + 68 >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[k + 4 >> 2] | 0, c[m >> 2] | 0, c[m + 4 >> 2] | 0) | 0) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } else { c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } return 0 } function lz(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 36 | 0; i = p + 32 | 0; g = p + 28 | 0; j = p + 24 | 0; m = p + 20 | 0; k = p + 16 | 0; n = p + 8 | 0; h = p; c[i >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[m >> 2] = f; if (a[(c[i >> 2] | 0) + 56 >> 0] | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } if (((c[j >> 2] | 0) + (c[m >> 2] | 0) | 0) >>> 0 > (c[(c[i >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } c[k >> 2] = c[(c[i >> 2] | 0) + 64 >> 2]; f = (c[k >> 2] | 0) + 72 | 0; e = c[f >> 2] | 0; f = c[f + 4 >> 2] | 0; j = $Q(512, 0, c[j >> 2] | 0, 0) | 0; j = OQ(e | 0, f | 0, j | 0, D | 0) | 0; f = n; c[f >> 2] = j; c[f + 4 >> 2] = D; f = $Q(512, 0, c[m >> 2] | 0, 0) | 0; m = h; c[m >> 2] = f; c[m + 4 >> 2] = D; m = n; n = h; if (Ey(c[(c[k >> 2] | 0) + 68 >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[m + 4 >> 2] | 0, c[n >> 2] | 0, c[n + 4 >> 2] | 0) | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else { XP(c[(c[k >> 2] | 0) + 68 >> 2] | 0) | 0; c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function mz(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; g = i + 16 | 0; e = i + 12 | 0; h = i + 8 | 0; d = i + 4 | 0; f = i; c[e >> 2] = a; c[h >> 2] = b; a = c[e >> 2] | 0; if (!(c[h >> 2] | 0)) { c[f >> 2] = dQ(a, 50617) | 0; if (!(c[f >> 2] | 0)) { c[f >> 2] = dQ(c[e >> 2] | 0, 50621) | 0; c[h >> 2] = 1 } } else c[f >> 2] = dQ(a, 50621) | 0; if (!(c[f >> 2] | 0)) { c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } c[d >> 2] = iz(c[f >> 2] | 0, c[h >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { UP(c[f >> 2] | 0) | 0; c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } else { Py(c[d >> 2] | 0, c[e >> 2] | 0); c[g >> 2] = c[d >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function nz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; b = e + 8 | 0; c[f >> 2] = a; do if (!(Dy(c[f >> 2] | 0, b, 0, 0, 8, 0) | 0)) if (nQ(b, 46246, 7) | 0) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function oz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; g = f + 8 | 0; d = f + 4 | 0; b = f; c[g >> 2] = a; c[b >> 2] = dQ(c[g >> 2] | 0, 50621) | 0; if (!(c[b >> 2] | 0)) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = f; return g | 0 } else { c[d >> 2] = nz(c[b >> 2] | 0) | 0; UP(c[b >> 2] | 0) | 0; c[e >> 2] = c[d >> 2]; g = c[e >> 2] | 0; l = f; return g | 0 } return 0 } function pz(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, m = 0, n = 0; n = l; l = l + 64 | 0; j = n + 28 | 0; f = n + 24 | 0; k = n + 20 | 0; h = n + 16 | 0; e = n + 12 | 0; g = n + 8 | 0; m = n + 4 | 0; i = n; d = n + 32 | 0; c[f >> 2] = a; c[k >> 2] = b; if ((AQ(d, 1, 32, c[f >> 2] | 0) | 0) != 32) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if ((vy(d, 0) | 0) != 1346981191) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if (vy(d, 4) | 0) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } if ((vy(d, 28) | 0) != 512) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } c[i >> 2] = vy(d, 12) | 0; c[e >> 2] = vy(d, 16) | 0; c[g >> 2] = vy(d, 20) | 0; c[m >> 2] = vy(d, 24) | 0; c[h >> 2] = HQ(80) | 0; if (!(c[h >> 2] | 0)) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } else { Iy(c[h >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0); My(c[h >> 2] | 0, 3); Oy(c[h >> 2] | 0, c[k >> 2] | 0); c[(c[h >> 2] | 0) + 68 >> 2] = c[f >> 2]; c[(c[h >> 2] | 0) + 4 >> 2] = 239; c[(c[h >> 2] | 0) + 8 >> 2] = 20; c[(c[h >> 2] | 0) + 12 >> 2] = 21; c[(c[h >> 2] | 0) + 16 >> 2] = 22; c[(c[h >> 2] | 0) + 20 >> 2] = 35; m = vy(d, 8) | 0; c[(c[h >> 2] | 0) + 72 >> 2] = m; m = vy(d, 28) | 0; c[(c[h >> 2] | 0) + 76 >> 2] = m; c[j >> 2] = c[h >> 2]; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function qz(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[e >> 2] = a; c[b >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; if (!(c[(c[b >> 2] | 0) + 68 >> 2] | 0)) { e = c[b >> 2] | 0; IQ(e); l = d; return } UP(c[(c[b >> 2] | 0) + 68 >> 2] | 0) | 0; e = c[b >> 2] | 0; IQ(e); l = d; return } function rz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 48 | 0; m = n + 36 | 0; o = n + 32 | 0; f = n + 28 | 0; h = n + 24 | 0; j = n + 20 | 0; i = n + 16 | 0; k = n + 8 | 0; g = n; c[o >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[j >> 2] = e; c[i >> 2] = c[(c[o >> 2] | 0) + 64 >> 2]; if (((c[h >> 2] | 0) + (c[j >> 2] | 0) | 0) >>> 0 > (c[(c[i >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = n; return o | 0 } o = c[(c[i >> 2] | 0) + 72 >> 2] | 0; e = $Q(512, 0, c[h >> 2] | 0, 0) | 0; e = OQ(o | 0, 0, e | 0, D | 0) | 0; o = k; c[o >> 2] = e; c[o + 4 >> 2] = D; j = $Q(512, 0, c[j >> 2] | 0, 0) | 0; o = g; c[o >> 2] = j; c[o + 4 >> 2] = D; o = g; if (Dy(c[(c[i >> 2] | 0) + 68 >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[k + 4 >> 2] | 0, c[o >> 2] | 0, c[o + 4 >> 2] | 0) | 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = n; return o | 0 } else { c[m >> 2] = 0; o = c[m >> 2] | 0; l = n; return o | 0 } return 0 } function sz(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 36 | 0; i = p + 32 | 0; g = p + 28 | 0; j = p + 24 | 0; m = p + 20 | 0; k = p + 16 | 0; n = p + 8 | 0; h = p; c[i >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[m >> 2] = f; c[k >> 2] = c[(c[i >> 2] | 0) + 64 >> 2]; if (a[(c[i >> 2] | 0) + 56 >> 0] | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } if (((c[j >> 2] | 0) + (c[m >> 2] | 0) | 0) >>> 0 > (c[(c[i >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } f = c[(c[k >> 2] | 0) + 72 >> 2] | 0; j = $Q(512, 0, c[j >> 2] | 0, 0) | 0; j = OQ(f | 0, 0, j | 0, D | 0) | 0; f = n; c[f >> 2] = j; c[f + 4 >> 2] = D; f = $Q(512, 0, c[m >> 2] | 0, 0) | 0; m = h; c[m >> 2] = f; c[m + 4 >> 2] = D; m = n; n = h; if (Ey(c[(c[k >> 2] | 0) + 68 >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[m + 4 >> 2] | 0, c[n >> 2] | 0, c[n + 4 >> 2] | 0) | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else { XP(c[(c[k >> 2] | 0) + 68 >> 2] | 0) | 0; c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function tz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0; f = l; l = l + 16 | 0; c[f + 12 >> 2] = a; c[f + 8 >> 2] = b; c[f + 4 >> 2] = d; c[f >> 2] = e; l = f; return 1 } function uz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; g = f + 4 | 0; c[f + 8 >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; if (!(fP(c[g >> 2] | 0, 50610) | 0)) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = f; return g | 0 } else { c[e >> 2] = 1; g = c[e >> 2] | 0; l = f; return g | 0 } return 0 } function vz(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; g = i + 16 | 0; e = i + 12 | 0; h = i + 8 | 0; d = i + 4 | 0; f = i; c[e >> 2] = a; c[h >> 2] = b; a = c[e >> 2] | 0; if (!(c[h >> 2] | 0)) { c[f >> 2] = dQ(a, 50617) | 0; if (!(c[f >> 2] | 0)) { c[f >> 2] = dQ(c[e >> 2] | 0, 50621) | 0; c[h >> 2] = 1 } } else c[f >> 2] = dQ(a, 50621) | 0; if (!(c[f >> 2] | 0)) { c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } c[d >> 2] = pz(c[f >> 2] | 0, c[h >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { UP(c[f >> 2] | 0) | 0; c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } else { Py(c[d >> 2] | 0, c[e >> 2] | 0); c[g >> 2] = c[d >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function wz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; b = e + 8 | 0; c[f >> 2] = a; do if (!(Dy(c[f >> 2] | 0, b, 0, 0, 4, 0) | 0)) if ((vy(b, 0) | 0) != 1346981191) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function xz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; g = f + 8 | 0; d = f + 4 | 0; b = f; c[g >> 2] = a; c[b >> 2] = dQ(c[g >> 2] | 0, 50621) | 0; if (!(c[b >> 2] | 0)) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = f; return g | 0 } else { c[d >> 2] = wz(c[b >> 2] | 0) | 0; UP(c[b >> 2] | 0) | 0; c[e >> 2] = c[d >> 2]; g = c[e >> 2] | 0; l = f; return g | 0 } return 0 } function yz(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; g = i; c[e >> 2] = b; c[f >> 2] = d; c[g >> 2] = HQ(4280) | 0; if (!(c[g >> 2] | 0)) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } c[(c[g >> 2] | 0) + 4276 >> 2] = c[e >> 2]; c[(c[g >> 2] | 0) + 68 >> 2] = 0; c[(c[g >> 2] | 0) + 4264 >> 2] = 0; c[(c[g >> 2] | 0) + 4268 >> 2] = 0; c[(c[g >> 2] | 0) + 4272 >> 2] = 0; d = (zz(c[g >> 2] | 0) | 0) != 0; b = c[g >> 2] | 0; if (d) { IQ(b); c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } if ((a[b + 4248 >> 0] | 0) != 0 & (c[f >> 2] | 0) == 0 ? Az(c[g >> 2] | 0) | 0 : 0) { IQ(c[g >> 2] | 0); c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } e = c[g >> 2] | 0; d = c[g >> 2] | 0; b = (c[g >> 2] | 0) + 120 | 0; b = ZQ(c[b >> 2] | 0, c[b + 4 >> 2] | 0, 512, 0) | 0; Iy(e, d, b, 0, 0, 0); My(c[g >> 2] | 0, 7); Oy(c[g >> 2] | 0, c[f >> 2] | 0); c[(c[g >> 2] | 0) + 4 >> 2] = 240; c[(c[g >> 2] | 0) + 8 >> 2] = 23; c[(c[g >> 2] | 0) + 12 >> 2] = 24; f = (Ez(c[g >> 2] | 0) | 0) != 0; b = c[g >> 2] | 0; if (f) { Bz(b); c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } f = (Fz(b) | 0) != 0; b = c[g >> 2] | 0; if (f) { Bz(b); c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } else { Uy(b) | 0; c[h >> 2] = c[g >> 2]; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function zz(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; g = h + 8 | 0; f = h + 20 | 0; e = h + 16 | 0; d = h; c[e >> 2] = b; if (Mz(c[e >> 2] | 0) | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } if ((yy((c[e >> 2] | 0) + 152 | 0, 0) | 0) != 4474193) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } a[(c[e >> 2] | 0) + 4248 >> 0] = 0; b = yy((c[e >> 2] | 0) + 152 | 0, 4) | 0; c[(c[e >> 2] | 0) + 72 >> 2] = b; b = yy((c[e >> 2] | 0) + 152 | 0, 8) | 0; c[(c[e >> 2] | 0) + 76 >> 2] = b; b = yy((c[e >> 2] | 0) + 152 | 0, 12) | 0; c[(c[e >> 2] | 0) + 80 >> 2] = b; if (c[(c[e >> 2] | 0) + 72 >> 2] & (c[(c[e >> 2] | 0) + 72 >> 2] | 0) - 1 | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } if (c[(c[e >> 2] | 0) + 76 >> 2] & (c[(c[e >> 2] | 0) + 76 >> 2] | 0) - 1 | 0) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } if ((c[(c[e >> 2] | 0) + 80 >> 2] | 0) >>> 0 < 1) { c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } i = S(c[(c[e >> 2] | 0) + 76 >> 2] | 0, c[(c[e >> 2] | 0) + 72 >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 128 >> 2] = i; i = (c[e >> 2] | 0) + 136 | 0; c[i >> 2] = (c[(c[e >> 2] | 0) + 72 >> 2] | 0) - 1; c[i + 4 >> 2] = 0; i = zy((c[e >> 2] | 0) + 152 | 0, 16) | 0; j = (c[e >> 2] | 0) + 88 | 0; c[j >> 2] = i; c[j + 4 >> 2] = D; j = zy((c[e >> 2] | 0) + 152 | 0, 24) | 0; i = (c[e >> 2] | 0) + 96 | 0; c[i >> 2] = j; c[i + 4 >> 2] = D; i = zy((c[e >> 2] | 0) + 152 | 0, 32) | 0; j = (c[e >> 2] | 0) + 104 | 0; c[j >> 2] = i; c[j + 4 >> 2] = D; j = (c[e >> 2] | 0) + 88 | 0; i = c[j + 4 >> 2] | 0; b = d; c[b >> 2] = c[j >> 2]; c[b + 4 >> 2] = i; b = d; i = c[b + 4 >> 2] | 0; j = d; c[j >> 2] = c[b >> 2] & -2; c[j + 4 >> 2] = i; j = d; i = c[j + 4 >> 2] | 0; b = d; c[b >> 2] = c[j >> 2] & -5; c[b + 4 >> 2] = i; b = d; if ((c[b >> 2] | 0) != 0 | (c[b + 4 >> 2] | 0) != 0) { j = c[7422] | 0; b = d; e = c[b + 4 >> 2] | 0; i = g; c[i >> 2] = c[b >> 2]; c[i + 4 >> 2] = e; kQ(j, 46254, g) | 0; c[f >> 2] = 1; j = c[f >> 2] | 0; l = h; return j | 0 } j = (c[e >> 2] | 0) + 104 | 0; if ((c[j >> 2] | 0) != 0 | (c[j + 4 >> 2] | 0) != 0) { a[(c[e >> 2] | 0) + 4248 >> 0] = 1; j = (c[e >> 2] | 0) + 104 | 0; c[j >> 2] = 0; c[j + 4 >> 2] = 0; j = (c[e >> 2] | 0) + 104 | 0; By((c[e >> 2] | 0) + 152 | 0, 32, c[j >> 2] | 0, c[j + 4 >> 2] | 0) } i = zy((c[e >> 2] | 0) + 152 | 0, 40) | 0; j = (c[e >> 2] | 0) + 112 | 0; c[j >> 2] = i; c[j + 4 >> 2] = D; j = (c[e >> 2] | 0) + 4256 | 0; c[j >> 2] = 0; c[j + 4 >> 2] = 0; j = zy((c[e >> 2] | 0) + 152 | 0, 48) | 0; i = (c[e >> 2] | 0) + 120 | 0; c[i >> 2] = j; c[i + 4 >> 2] = D; i = (c[e >> 2] | 0) + 112 | 0; j = (c[e >> 2] | 0) + 136 | 0; if (c[i >> 2] & c[j >> 2] | 0 ? 1 : (c[i + 4 >> 2] & c[j + 4 >> 2] | 0) != 0) { c[f >> 2] = 1; j = c[f >> 2] | 0; l = h; return j | 0 } if (0 ? 1 : (c[(c[e >> 2] | 0) + 120 >> 2] & 511 | 0) != 0) { c[f >> 2] = 1; j = c[f >> 2] | 0; l = h; return j | 0 } if (Fy(c[(c[e >> 2] | 0) + 4276 >> 2] | 0, (c[e >> 2] | 0) + 144 | 0) | 0) { c[f >> 2] = 1; j = c[f >> 2] | 0; l = h; return j | 0 } else { b = (c[e >> 2] | 0) + 144 | 0; b = OQ(c[b >> 2] | 0, c[b + 4 >> 2] | 0, c[(c[e >> 2] | 0) + 72 >> 2] | 0, 0) | 0; b = NQ(b | 0, D | 0, 1, 0) | 0; g = (c[e >> 2] | 0) + 136 | 0; i = D & ~c[g + 4 >> 2]; j = (c[e >> 2] | 0) + 144 | 0; c[j >> 2] = b & ~c[g >> 2]; c[j + 4 >> 2] = i; c[f >> 2] = 0; j = c[f >> 2] | 0; l = h; return j | 0 } return 0 } function Az(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; if (Ey(c[(c[b >> 2] | 0) + 4276 >> 2] | 0, (c[b >> 2] | 0) + 152 | 0, 0, 0, 4096, 0) | 0) { c[d >> 2] = 1; d = c[d >> 2] | 0; l = e; return d | 0 } else { XP(c[(c[b >> 2] | 0) + 4276 >> 2] | 0) | 0; c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } return 0 } function Bz(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[e >> 2] = a; c[b >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; if (c[(c[b >> 2] | 0) + 68 >> 2] | 0) Jy(c[(c[b >> 2] | 0) + 68 >> 2] | 0); IQ(c[(c[b >> 2] | 0) + 4272 >> 2] | 0); IQ(c[(c[b >> 2] | 0) + 4268 >> 2] | 0); IQ(c[(c[b >> 2] | 0) + 4264 >> 2] | 0); UP(c[(c[b >> 2] | 0) + 4276 >> 2] | 0) | 0; IQ(c[b >> 2] | 0); l = d; return } function Cz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 36 | 0; f = p + 32 | 0; g = p + 28 | 0; h = p + 24 | 0; k = p + 20 | 0; i = p + 16 | 0; j = p + 12 | 0; m = p; n = p + 8 | 0; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; c[k >> 2] = e; if (((c[h >> 2] | 0) + (c[k >> 2] | 0) | 0) >>> 0 > (c[(c[f >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } c[n >> 2] = c[(c[f >> 2] | 0) + 64 >> 2]; a: while (1) { if ((c[k >> 2] | 0) >>> 0 <= 0) { b = 17; break } c[i >> 2] = ((c[h >> 2] | 0) >>> 0) % ((((c[(c[n >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 512 | 0) >>> 0) | 0; c[j >> 2] = (((c[(c[n >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 512 | 0) - (c[i >> 2] | 0); if ((c[j >> 2] | 0) >>> 0 > (c[k >> 2] | 0) >>> 0) c[j >> 2] = c[k >> 2]; d = $Q(512, 0, c[h >> 2] | 0, 0) | 0; e = m; c[e >> 2] = d; c[e + 4 >> 2] = D; if (Gz(c[n >> 2] | 0, m, 0) | 0) { b = 8; break } e = m; b = c[n >> 2] | 0; do if ((c[e >> 2] | 0) == 0 & (c[e + 4 >> 2] | 0) == 0) if (c[b + 68 >> 2] | 0) if (Zy(c[(c[n >> 2] | 0) + 68 >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0, c[j >> 2] | 0) | 0) { b = 12; break a } else break; else { TQ(c[g >> 2] | 0, 0, c[j >> 2] << 9 | 0) | 0; break } else { e = m; if (Dy(c[b + 4276 >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0, c[e + 4 >> 2] | 0, c[j >> 2] << 9, 0) | 0) { b = 15; break a } } while (0); c[g >> 2] = (c[g >> 2] | 0) + (c[j >> 2] << 9); c[h >> 2] = (c[h >> 2] | 0) + (c[j >> 2] | 0); c[k >> 2] = (c[k >> 2] | 0) - (c[j >> 2] | 0) } if ((b | 0) == 8) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 12) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 15) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 17) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function Dz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 36 | 0; g = p + 32 | 0; f = p + 28 | 0; h = p + 24 | 0; k = p + 20 | 0; i = p + 16 | 0; j = p + 12 | 0; m = p; n = p + 8 | 0; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[k >> 2] = e; if (((c[h >> 2] | 0) + (c[k >> 2] | 0) | 0) >>> 0 > (c[(c[g >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } c[n >> 2] = c[(c[g >> 2] | 0) + 64 >> 2]; while (1) { if ((c[k >> 2] | 0) >>> 0 <= 0) { b = 12; break } c[i >> 2] = ((c[h >> 2] | 0) >>> 0) % ((((c[(c[n >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 512 | 0) >>> 0) | 0; c[j >> 2] = (((c[(c[n >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 512 | 0) - (c[i >> 2] | 0); if ((c[j >> 2] | 0) >>> 0 > (c[k >> 2] | 0) >>> 0) c[j >> 2] = c[k >> 2]; d = $Q(512, 0, c[h >> 2] | 0, 0) | 0; e = m; c[e >> 2] = d; c[e + 4 >> 2] = D; if (Gz(c[n >> 2] | 0, m, 1) | 0) { b = 8; break } e = m; if (Ey(c[(c[n >> 2] | 0) + 4276 >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0, c[e + 4 >> 2] | 0, c[j >> 2] << 9, 0) | 0) { b = 10; break } c[f >> 2] = (c[f >> 2] | 0) + (c[j >> 2] << 9); c[h >> 2] = (c[h >> 2] | 0) + (c[j >> 2] | 0); c[k >> 2] = (c[k >> 2] | 0) - (c[j >> 2] | 0) } if ((b | 0) == 8) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 10) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((b | 0) == 12) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function Ez(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; a = HQ(c[(c[b >> 2] | 0) + 128 >> 2] | 0) | 0; c[(c[b >> 2] | 0) + 4264 >> 2] = a; if (!(c[(c[b >> 2] | 0) + 4264 >> 2] | 0)) { c[d >> 2] = 1; d = c[d >> 2] | 0; l = e; return d | 0 } a = HQ(c[(c[b >> 2] | 0) + 128 >> 2] | 0) | 0; c[(c[b >> 2] | 0) + 4268 >> 2] = a; if (!(c[(c[b >> 2] | 0) + 4268 >> 2] | 0)) { c[d >> 2] = 1; d = c[d >> 2] | 0; l = e; return d | 0 } a = HQ(c[(c[b >> 2] | 0) + 72 >> 2] | 0) | 0; c[(c[b >> 2] | 0) + 4272 >> 2] = a; if (!(c[(c[b >> 2] | 0) + 4272 >> 2] | 0)) { c[d >> 2] = 1; d = c[d >> 2] | 0; l = e; return d | 0 } else { c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } return 0 } function Fz(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; e = d; c[e >> 2] = a; a = (c[e >> 2] | 0) + 112 | 0; if (Dy(c[(c[e >> 2] | 0) + 4276 >> 2] | 0, c[(c[e >> 2] | 0) + 4264 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[e >> 2] | 0) + 128 >> 2] | 0, 0) | 0) { c[b >> 2] = 1; e = c[b >> 2] | 0; l = d; return e | 0 } else { c[b >> 2] = 0; e = c[b >> 2] | 0; l = d; return e | 0 } return 0 } function Gz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; p = l; l = l + 64 | 0; j = p + 52 | 0; i = p + 48 | 0; h = p + 44 | 0; e = p + 40 | 0; q = p + 36 | 0; k = p + 32 | 0; n = p + 28 | 0; m = p + 16 | 0; o = p + 8 | 0; g = p; f = p + 24 | 0; c[i >> 2] = a; c[h >> 2] = b; c[e >> 2] = d; c[q >> 2] = S(c[(c[i >> 2] | 0) + 76 >> 2] | 0, ((c[(c[i >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 8 | 0) | 0; a = c[h >> 2] | 0; a = ZQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[i >> 2] | 0) + 72 >> 2] | 0, 0) | 0; a = ZQ(a | 0, D | 0, c[q >> 2] | 0, 0) | 0; c[k >> 2] = a; a = c[h >> 2] | 0; a = ZQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[i >> 2] | 0) + 72 >> 2] | 0, 0) | 0; a = WQ(a | 0, D | 0, c[q >> 2] | 0, 0) | 0; c[n >> 2] = a; a = zy((c[(c[i >> 2] | 0) + 4264 >> 2] | 0) + (c[k >> 2] << 3) | 0, 0) | 0; b = m; c[b >> 2] = a; c[b + 4 >> 2] = D; b = c[h >> 2] | 0; a = (c[i >> 2] | 0) + 136 | 0; c[f >> 2] = c[b >> 2] & c[a >> 2]; if ((c[k >> 2] | 0) >>> 0 >= (c[q >> 2] | 0) >>> 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } q = m; if ((c[q >> 2] | 0) == 0 & (c[q + 4 >> 2] | 0) == 0) { if (!(c[e >> 2] | 0)) { q = c[h >> 2] | 0; c[q >> 2] = 0; c[q + 4 >> 2] = 0; c[j >> 2] = 0; q = c[j >> 2] | 0; l = p; return q | 0 } o = (c[i >> 2] | 0) + 144 | 0; o = OQ(c[o >> 2] | 0, c[o + 4 >> 2] | 0, c[(c[i >> 2] | 0) + 128 >> 2] | 0, 0) | 0; q = g; c[q >> 2] = o; c[q + 4 >> 2] = D; q = c[h >> 2] | 0; if (Hz(c[i >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } q = g; if (Iz(c[i >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } TQ(c[(c[i >> 2] | 0) + 4268 >> 2] | 0, 0, c[(c[i >> 2] | 0) + 128 >> 2] | 0) | 0; q = g; By((c[(c[i >> 2] | 0) + 4268 >> 2] | 0) + (c[n >> 2] << 3) | 0, 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0); q = (c[i >> 2] | 0) + 144 | 0; if (Jz(c[i >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } q = (c[i >> 2] | 0) + 144 | 0; By((c[(c[i >> 2] | 0) + 4264 >> 2] | 0) + (c[k >> 2] << 3) | 0, 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0); if (Kz(c[i >> 2] | 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } else { q = g; q = OQ(c[q >> 2] | 0, c[q + 4 >> 2] | 0, c[f >> 2] | 0, 0) | 0; o = c[h >> 2] | 0; c[o >> 2] = q; c[o + 4 >> 2] = D; o = g; o = OQ(c[o >> 2] | 0, c[o + 4 >> 2] | 0, c[(c[i >> 2] | 0) + 72 >> 2] | 0, 0) | 0; q = (c[i >> 2] | 0) + 144 | 0; c[q >> 2] = o; c[q + 4 >> 2] = D; c[j >> 2] = 0; q = c[j >> 2] | 0; l = p; return q | 0 } } a = (c[i >> 2] | 0) + 136 | 0; b = m; k = c[b + 4 >> 2] & ~c[a + 4 >> 2]; q = m; c[q >> 2] = c[b >> 2] & ~c[a >> 2]; c[q + 4 >> 2] = k; q = m; if (Lz(c[i >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } k = zy((c[(c[i >> 2] | 0) + 4268 >> 2] | 0) + (c[n >> 2] << 3) | 0, 0) | 0; q = o; c[q >> 2] = k; c[q + 4 >> 2] = D; q = o; if (!((c[q >> 2] | 0) == 0 & (c[q + 4 >> 2] | 0) == 0)) { m = (c[i >> 2] | 0) + 136 | 0; k = o; n = c[k + 4 >> 2] & ~c[m + 4 >> 2]; q = o; c[q >> 2] = c[k >> 2] & ~c[m >> 2]; c[q + 4 >> 2] = n; o = OQ(c[o >> 2] | 0, c[o + 4 >> 2] | 0, c[f >> 2] | 0, 0) | 0; q = c[h >> 2] | 0; c[q >> 2] = o; c[q + 4 >> 2] = D; c[j >> 2] = 0; q = c[j >> 2] | 0; l = p; return q | 0 } if (!(c[e >> 2] | 0)) { q = c[h >> 2] | 0; c[q >> 2] = 0; c[q + 4 >> 2] = 0; c[j >> 2] = 0; q = c[j >> 2] | 0; l = p; return q | 0 } q = c[h >> 2] | 0; if (Hz(c[i >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } q = (c[i >> 2] | 0) + 144 | 0; if (Ey(c[(c[i >> 2] | 0) + 4276 >> 2] | 0, c[(c[i >> 2] | 0) + 4272 >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0, c[(c[i >> 2] | 0) + 72 >> 2] | 0, 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } q = (c[i >> 2] | 0) + 144 | 0; By((c[(c[i >> 2] | 0) + 4268 >> 2] | 0) + (c[n >> 2] << 3) | 0, 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0); q = m; if (Jz(c[i >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0) { c[j >> 2] = 1; q = c[j >> 2] | 0; l = p; return q | 0 } else { o = (c[i >> 2] | 0) + 144 | 0; o = OQ(c[o >> 2] | 0, c[o + 4 >> 2] | 0, c[f >> 2] | 0, 0) | 0; q = c[h >> 2] | 0; c[q >> 2] = o; c[q + 4 >> 2] = D; q = (c[i >> 2] | 0) + 144 | 0; o = q; o = OQ(c[o >> 2] | 0, c[o + 4 >> 2] | 0, c[(c[i >> 2] | 0) + 72 >> 2] | 0, 0) | 0; c[q >> 2] = o; c[q + 4 >> 2] = D; c[j >> 2] = 0; q = c[j >> 2] | 0; l = p; return q | 0 } return 0 } function Hz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; h = j + 16 | 0; g = j; e = j + 12 | 0; f = j + 8 | 0; c[h >> 2] = a; a = g; c[a >> 2] = b; c[a + 4 >> 2] = d; b = c[h >> 2] | 0; if (!(c[(c[h >> 2] | 0) + 68 >> 2] | 0)) { TQ(c[b + 4272 >> 2] | 0, 0, c[(c[h >> 2] | 0) + 72 >> 2] | 0) | 0; c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } b = b + 136 | 0; k = g; d = c[k + 4 >> 2] & ~c[b + 4 >> 2]; a = g; c[a >> 2] = c[k >> 2] & ~c[b >> 2]; c[a + 4 >> 2] = d; g = ZQ(c[g >> 2] | 0, c[g + 4 >> 2] | 0, 512, 0) | 0; c[e >> 2] = g; c[f >> 2] = ((c[(c[h >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 512 | 0; if (((c[e >> 2] | 0) + (c[f >> 2] | 0) | 0) >>> 0 > (c[(c[(c[h >> 2] | 0) + 68 >> 2] | 0) + 28 >> 2] | 0) >>> 0) { TQ(c[(c[h >> 2] | 0) + 4272 >> 2] | 0, 0, c[(c[h >> 2] | 0) + 72 >> 2] | 0) | 0; c[f >> 2] = (c[(c[(c[h >> 2] | 0) + 68 >> 2] | 0) + 28 >> 2] | 0) - (c[e >> 2] | 0) } if (Zy(c[(c[h >> 2] | 0) + 68 >> 2] | 0, c[(c[h >> 2] | 0) + 4272 >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function Iz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; g = f + 8 | 0; h = f; c[g >> 2] = a; a = h; c[a >> 2] = b; c[a + 4 >> 2] = d; a = h; if (Ey(c[(c[g >> 2] | 0) + 4276 >> 2] | 0, c[(c[g >> 2] | 0) + 4272 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[g >> 2] | 0) + 72 >> 2] | 0, 0) | 0) { c[e >> 2] = 1; h = c[e >> 2] | 0; l = f; return h | 0 } else { c[e >> 2] = 0; h = c[e >> 2] | 0; l = f; return h | 0 } return 0 } function Jz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; f = h + 8 | 0; e = h; c[f >> 2] = a; a = e; c[a >> 2] = b; c[a + 4 >> 2] = d; a = e; if (Ey(c[(c[f >> 2] | 0) + 4276 >> 2] | 0, c[(c[f >> 2] | 0) + 4268 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[f >> 2] | 0) + 128 >> 2] | 0, 0) | 0) { c[g >> 2] = 1; g = c[g >> 2] | 0; l = h; return g | 0 } else { XP(c[(c[f >> 2] | 0) + 4276 >> 2] | 0) | 0; a = c[e + 4 >> 2] | 0; f = (c[f >> 2] | 0) + 4256 | 0; c[f >> 2] = c[e >> 2]; c[f + 4 >> 2] = a; c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function Kz(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; a = (c[b >> 2] | 0) + 112 | 0; if (Ey(c[(c[b >> 2] | 0) + 4276 >> 2] | 0, c[(c[b >> 2] | 0) + 4264 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[b >> 2] | 0) + 128 >> 2] | 0, 0) | 0) { c[d >> 2] = 1; d = c[d >> 2] | 0; l = e; return d | 0 } else { XP(c[(c[b >> 2] | 0) + 4276 >> 2] | 0) | 0; c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } return 0 } function Lz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; f = h + 8 | 0; e = h; c[f >> 2] = a; a = e; c[a >> 2] = b; c[a + 4 >> 2] = d; d = (c[f >> 2] | 0) + 4256 | 0; a = e; if ((c[d >> 2] | 0) == (c[a >> 2] | 0) ? (c[d + 4 >> 2] | 0) == (c[a + 4 >> 2] | 0) : 0) { c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } a = e; if (Dy(c[(c[f >> 2] | 0) + 4276 >> 2] | 0, c[(c[f >> 2] | 0) + 4268 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[f >> 2] | 0) + 128 >> 2] | 0, 0) | 0) { c[g >> 2] = 1; g = c[g >> 2] | 0; l = h; return g | 0 } else { a = c[e + 4 >> 2] | 0; f = (c[f >> 2] | 0) + 4256 | 0; c[f >> 2] = c[e >> 2]; c[f + 4 >> 2] = a; c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function Mz(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; e = d; c[e >> 2] = a; if (Dy(c[(c[e >> 2] | 0) + 4276 >> 2] | 0, (c[e >> 2] | 0) + 152 | 0, 0, 0, 4096, 0) | 0) { c[b >> 2] = 1; e = c[b >> 2] | 0; l = d; return e | 0 } else { c[b >> 2] = 0; e = c[b >> 2] | 0; l = d; return e | 0 } return 0 } function Nz(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; g = i + 16 | 0; e = i + 12 | 0; h = i + 8 | 0; d = i + 4 | 0; f = i; c[e >> 2] = a; c[h >> 2] = b; a = c[e >> 2] | 0; if (!(c[h >> 2] | 0)) { c[f >> 2] = dQ(a, 50617) | 0; if (!(c[f >> 2] | 0)) { c[f >> 2] = dQ(c[e >> 2] | 0, 50621) | 0; c[h >> 2] = 1 } } else c[f >> 2] = dQ(a, 50621) | 0; if (!(c[f >> 2] | 0)) { c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } c[d >> 2] = yz(c[f >> 2] | 0, c[h >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { UP(c[f >> 2] | 0) | 0; c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } else { Py(c[d >> 2] | 0, c[e >> 2] | 0); c[g >> 2] = c[d >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function Oz(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, m = 0, n = 0; n = l; l = l + 48 | 0; m = n + 36 | 0; h = n + 32 | 0; i = n + 28 | 0; g = n + 24 | 0; k = n + 20 | 0; e = n + 16 | 0; f = n + 12 | 0; j = n + 8 | 0; d = n; c[h >> 2] = a; c[i >> 2] = b; c[e >> 2] = dQ(c[i >> 2] | 0, 50617) | 0; if (!(c[e >> 2] | 0)) { c[f >> 2] = 0; if ((c[c[h >> 2] >> 2] | 0) == 7) { c[k >> 2] = c[(c[h >> 2] | 0) + 64 >> 2]; c[f >> 2] = c[(c[k >> 2] | 0) + 72 >> 2] } if (Pz(c[i >> 2] | 0, c[(c[h >> 2] | 0) + 28 >> 2] | 0, c[f >> 2] | 0) | 0) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } } else UP(c[e >> 2] | 0) | 0; c[g >> 2] = Nz(c[i >> 2] | 0, 0) | 0; if (!(c[g >> 2] | 0)) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } c[k >> 2] = c[(c[g >> 2] | 0) + 64 >> 2]; c[(c[k >> 2] | 0) + 68 >> 2] = c[h >> 2]; c[(c[g >> 2] | 0) + 16 >> 2] = 25; c[(c[g >> 2] | 0) + 20 >> 2] = 36; c[(c[g >> 2] | 0) + 24 >> 2] = c[(c[h >> 2] | 0) + 24 >> 2]; e = zy((c[k >> 2] | 0) + 152 | 0, 16) | 0; b = d; c[b >> 2] = e; c[b + 4 >> 2] = D; b = d; e = c[b + 4 >> 2] | 0; f = d; c[f >> 2] = c[b >> 2] | 1; c[f + 4 >> 2] = e; if ((c[c[h >> 2] >> 2] | 0) == 1) { b = d; e = c[b + 4 >> 2] | 0; f = d; c[f >> 2] = c[b >> 2] | 4; c[f + 4 >> 2] = e } f = d; By((c[k >> 2] | 0) + 152 | 0, 16, c[f >> 2] | 0, c[f + 4 >> 2] | 0); if (c[(c[h >> 2] | 0) + 60 >> 2] | 0) a = cP(c[(c[h >> 2] | 0) + 60 >> 2] | 0) | 0; else a = 0; c[j >> 2] = a; c[j >> 2] = (c[j >> 2] | 0) >>> 0 > 1024 ? 0 : a; Ay((c[k >> 2] | 0) + 152 | 0, 56, 64); Ay((c[k >> 2] | 0) + 152 | 0, 60, c[j >> 2] | 0); if ((c[j >> 2] | 0) >>> 0 > 0) QQ((c[k >> 2] | 0) + 152 + 64 | 0, c[(c[h >> 2] | 0) + 60 >> 2] | 0, c[j >> 2] | 0) | 0; Az(c[k >> 2] | 0) | 0; Qy(c[g >> 2] | 0, c[(c[h >> 2] | 0) + 28 >> 2] | 0, c[(c[h >> 2] | 0) + 32 >> 2] | 0, c[(c[h >> 2] | 0) + 36 >> 2] | 0, c[(c[h >> 2] | 0) + 40 >> 2] | 0) | 0; Ry(c[g >> 2] | 0, c[(c[h >> 2] | 0) + 44 >> 2] | 0, c[(c[h >> 2] | 0) + 48 >> 2] | 0, c[(c[h >> 2] | 0) + 52 >> 2] | 0); Py(c[g >> 2] | 0, c[i >> 2] | 0); c[m >> 2] = c[g >> 2]; m = c[m >> 2] | 0; l = n; return m | 0 } function Pz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; k = j + 16 | 0; g = j + 12 | 0; f = j + 8 | 0; h = j + 4 | 0; e = j; c[k >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; c[e >> 2] = dQ(c[k >> 2] | 0, 51391) | 0; if (!(c[e >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[h >> 2] = Uz(c[e >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0) | 0; UP(c[e >> 2] | 0) | 0; c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function Qz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0; f = l; l = l + 16 | 0; c[f + 12 >> 2] = a; c[f + 8 >> 2] = b; c[f + 4 >> 2] = d; c[f >> 2] = e; l = f; return 1 } function Rz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; e = g + 8 | 0; h = g + 4 | 0; c[e >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; if (!(fP(c[h >> 2] | 0, 50610) | 0)) { c[f >> 2] = Sz(c[(c[e >> 2] | 0) + 64 >> 2] | 0) | 0; h = c[f >> 2] | 0; l = g; return h | 0 } else { c[f >> 2] = 1; h = c[f >> 2] | 0; l = g; return h | 0 } return 0 } function Sz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; n = l; l = l + 48 | 0; m = n + 36 | 0; k = n + 32 | 0; g = n + 28 | 0; h = n + 24 | 0; d = n + 20 | 0; f = n + 16 | 0; e = n + 12 | 0; j = n + 8 | 0; i = n; c[k >> 2] = a; if (!(c[(c[k >> 2] | 0) + 68 >> 2] | 0)) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } c[j >> 2] = ((c[(c[k >> 2] | 0) + 128 >> 2] | 0) >>> 0) / 8 | 0; c[d >> 2] = 0; c[f >> 2] = ((c[(c[k >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 512 | 0; c[g >> 2] = 0; a: while (1) { b = c[k >> 2] | 0; if ((c[g >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) { a = 22; break } a = zy(c[b + 4264 >> 2] | 0, c[g >> 2] << 3) | 0; b = i; c[b >> 2] = a; c[b + 4 >> 2] = D; b = i; if ((c[b >> 2] | 0) == 0 & (c[b + 4 >> 2] | 0) == 0) { b = S(c[j >> 2] | 0, c[f >> 2] | 0) | 0; c[d >> 2] = (c[d >> 2] | 0) + b } else { o = (c[k >> 2] | 0) + 136 | 0; p = i; a = c[p + 4 >> 2] & ~c[o + 4 >> 2]; b = i; c[b >> 2] = c[p >> 2] & ~c[o >> 2]; c[b + 4 >> 2] = a; b = i; if (Lz(c[k >> 2] | 0, c[b >> 2] | 0, c[b + 4 >> 2] | 0) | 0) { a = 8; break } c[h >> 2] = 0; while (1) { a = c[k >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; o = zy(c[a + 4268 >> 2] | 0, c[h >> 2] << 3) | 0; p = i; c[p >> 2] = o; c[p + 4 >> 2] = D; p = i; if ((c[p >> 2] | 0) != 0 | (c[p + 4 >> 2] | 0) != 0) { b = (c[k >> 2] | 0) + 136 | 0; a = i; o = c[a + 4 >> 2] & ~c[b + 4 >> 2]; p = i; c[p >> 2] = c[a >> 2] & ~c[b >> 2]; c[p + 4 >> 2] = o; p = i; if (Tz(c[k >> 2] | 0, c[p >> 2] | 0, c[p + 4 >> 2] | 0) | 0) { a = 13; break a } if (((c[d >> 2] | 0) + (c[f >> 2] | 0) | 0) >>> 0 > (c[(c[(c[k >> 2] | 0) + 68 >> 2] | 0) + 28 >> 2] | 0) >>> 0) c[e >> 2] = (c[(c[(c[k >> 2] | 0) + 68 >> 2] | 0) + 28 >> 2] | 0) - (c[d >> 2] | 0); else c[e >> 2] = c[f >> 2]; if (az(c[(c[k >> 2] | 0) + 68 >> 2] | 0, c[(c[k >> 2] | 0) + 4272 >> 2] | 0, c[d >> 2] | 0, c[e >> 2] | 0) | 0) { a = 18; break a } } c[d >> 2] = (c[d >> 2] | 0) + (c[f >> 2] | 0); c[h >> 2] = (c[h >> 2] | 0) + 1 } By(c[a + 4264 >> 2] | 0, c[g >> 2] << 3, 0, 0) } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((a | 0) == 8) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = n; return p | 0 } else if ((a | 0) == 13) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = n; return p | 0 } else if ((a | 0) == 18) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = n; return p | 0 } else if ((a | 0) == 22) if (Kz(b) | 0) { c[m >> 2] = 1; p = c[m >> 2] | 0; l = n; return p | 0 } else { o = (c[k >> 2] | 0) + 112 | 0; o = OQ(c[o >> 2] | 0, c[o + 4 >> 2] | 0, c[(c[k >> 2] | 0) + 128 >> 2] | 0, 0) | 0; p = (c[k >> 2] | 0) + 144 | 0; c[p >> 2] = o; c[p + 4 >> 2] = D; p = (c[k >> 2] | 0) + 144 | 0; Gy(c[(c[k >> 2] | 0) + 4276 >> 2] | 0, c[p >> 2] | 0, c[p + 4 >> 2] | 0) | 0; c[m >> 2] = 0; p = c[m >> 2] | 0; l = n; return p | 0 } return 0 } function Tz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; g = f + 8 | 0; h = f; c[g >> 2] = a; a = h; c[a >> 2] = b; c[a + 4 >> 2] = d; a = h; if (Dy(c[(c[g >> 2] | 0) + 4276 >> 2] | 0, c[(c[g >> 2] | 0) + 4272 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[g >> 2] | 0) + 72 >> 2] | 0, 0) | 0) { c[e >> 2] = 1; h = c[e >> 2] | 0; l = f; return h | 0 } else { c[e >> 2] = 0; h = c[e >> 2] | 0; l = f; return h | 0 } return 0 } function Uz(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; p = l; l = l + 64 | 0; o = p + 56 | 0; i = p + 52 | 0; r = p + 48 | 0; q = p + 44 | 0; k = p + 40 | 0; h = p + 36 | 0; m = p + 32 | 0; j = p + 28 | 0; e = p + 16 | 0; f = p + 8 | 0; g = p; n = p + 24 | 0; c[i >> 2] = a; c[r >> 2] = b; c[q >> 2] = d; b = $Q(512, 0, c[r >> 2] | 0, 0) | 0; d = e; c[d >> 2] = b; c[d + 4 >> 2] = D; c[h >> 2] = Vz(c[q >> 2] | 0) | 0; c[m >> 2] = 2; c[j >> 2] = 1; d = $Q(((c[h >> 2] | 0) >>> 0) / 8 | 0 | 0, 0, c[m >> 2] | 0, 0) | 0; b = g; c[b >> 2] = d; c[b + 4 >> 2] = D; b = g; d = g; d = $Q(c[b >> 2] | 0, c[b + 4 >> 2] | 0, c[d >> 2] | 0, c[d + 4 >> 2] | 0) | 0; d = $Q(d | 0, D | 0, c[h >> 2] | 0, 0) | 0; b = f; c[b >> 2] = d; c[b + 4 >> 2] = D; while (1) { q = f; d = c[q + 4 >> 2] | 0; r = e; b = c[r + 4 >> 2] | 0; if (!(d >>> 0 < b >>> 0 | ((d | 0) == (b | 0) ? (c[q >> 2] | 0) >>> 0 < (c[r >> 2] | 0) >>> 0 : 0) ? (c[m >> 2] | 0) >>> 0 < 16 : 0)) break; c[m >> 2] = c[m >> 2] << 1; q = $Q(((c[h >> 2] | 0) >>> 0) / 8 | 0 | 0, 0, c[m >> 2] | 0, 0) | 0; r = g; c[r >> 2] = q; c[r + 4 >> 2] = D; r = g; q = g; q = $Q(c[r >> 2] | 0, c[r + 4 >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0; q = $Q(q | 0, D | 0, c[h >> 2] | 0, 0) | 0; r = f; c[r >> 2] = q; c[r + 4 >> 2] = D } while (1) { q = f; d = c[q + 4 >> 2] | 0; r = e; b = c[r + 4 >> 2] | 0; if (!(d >>> 0 < b >>> 0 | ((d | 0) == (b | 0) ? (c[q >> 2] | 0) >>> 0 < (c[r >> 2] | 0) >>> 0 : 0) ? (c[h >> 2] | 0) >>> 0 < 134217728 : 0)) break; c[h >> 2] = c[h >> 2] << 1; q = $Q(((c[h >> 2] | 0) >>> 0) / 8 | 0 | 0, 0, c[m >> 2] | 0, 0) | 0; r = g; c[r >> 2] = q; c[r + 4 >> 2] = D; r = g; q = g; q = $Q(c[r >> 2] | 0, c[r + 4 >> 2] | 0, c[q >> 2] | 0, c[q + 4 >> 2] | 0) | 0; q = $Q(q | 0, D | 0, c[h >> 2] | 0, 0) | 0; r = f; c[r >> 2] = q; c[r + 4 >> 2] = D } q = f; b = c[q + 4 >> 2] | 0; r = e; g = c[r + 4 >> 2] | 0; if (b >>> 0 < g >>> 0 | ((b | 0) == (g | 0) ? (c[q >> 2] | 0) >>> 0 < (c[r >> 2] | 0) >>> 0 : 0)) { c[o >> 2] = 1; r = c[o >> 2] | 0; l = p; return r | 0 } c[n >> 2] = HQ(c[h >> 2] | 0) | 0; if (!(c[n >> 2] | 0)) { c[o >> 2] = 1; r = c[o >> 2] | 0; l = p; return r | 0 } TQ(c[n >> 2] | 0, 0, c[h >> 2] | 0) | 0; Ay(c[n >> 2] | 0, 0, 4474193); Ay(c[n >> 2] | 0, 4, c[h >> 2] | 0); Ay(c[n >> 2] | 0, 8, c[m >> 2] | 0); Ay(c[n >> 2] | 0, 12, c[j >> 2] | 0); By(c[n >> 2] | 0, 16, 0, 0); By(c[n >> 2] | 0, 24, 0, 0); By(c[n >> 2] | 0, 32, 0, 0); a = c[n >> 2] | 0; r = $Q(c[h >> 2] | 0, 0, c[j >> 2] | 0, 0) | 0; By(a, 40, r, D); r = e; By(c[n >> 2] | 0, 48, c[r >> 2] | 0, c[r + 4 >> 2] | 0); r = (Ey(c[i >> 2] | 0, c[n >> 2] | 0, 0, 0, c[h >> 2] | 0, 0) | 0) != 0; a = c[n >> 2] | 0; if (r) { IQ(a); c[o >> 2] = 1; r = c[o >> 2] | 0; l = p; return r | 0 } TQ(a | 0, 0, c[h >> 2] | 0) | 0; c[k >> 2] = 1; while (1) { if ((c[k >> 2] | 0) >>> 0 >= ((c[j >> 2] | 0) + (c[m >> 2] | 0) | 0) >>> 0) { a = 17; break } g = c[i >> 2] | 0; q = c[n >> 2] | 0; r = $Q(c[k >> 2] | 0, 0, c[h >> 2] | 0, 0) | 0; if (Ey(g, q, r, D, c[h >> 2] | 0, 0) | 0) { a = 15; break } c[k >> 2] = (c[k >> 2] | 0) + 1 } if ((a | 0) == 15) { IQ(c[n >> 2] | 0); c[o >> 2] = 1; r = c[o >> 2] | 0; l = p; return r | 0 } else if ((a | 0) == 17) { IQ(c[n >> 2] | 0); c[o >> 2] = 0; r = c[o >> 2] | 0; l = p; return r | 0 } return 0 } function Vz(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; if ((c[b >> 2] | 0) >>> 0 <= 4096) { c[d >> 2] = 4096; d = c[d >> 2] | 0; l = e; return d | 0 } if ((c[b >> 2] | 0) >>> 0 >= 134217728) { c[d >> 2] = 134217728; d = c[d >> 2] | 0; l = e; return d | 0 } c[b >> 2] = (c[b >> 2] | 0) + ((c[b >> 2] | 0) - 1); while (1) { a = c[b >> 2] | 0; if (!(c[b >> 2] & (c[b >> 2] | 0) - 1)) break; c[b >> 2] = c[b >> 2] & a - 1 } c[d >> 2] = a; d = c[d >> 2] | 0; l = e; return d | 0 } function Wz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; b = e + 8 | 0; c[f >> 2] = a; do if (!(Dy(c[f >> 2] | 0, b, 0, 0, 4, 0) | 0)) if ((yy(b, 0) | 0) != 4474193) { c[d >> 2] = 0; break } else { c[d >> 2] = 1; break } else c[d >> 2] = 0; while (0); l = e; return c[d >> 2] | 0 } function Xz(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; g = f + 8 | 0; d = f + 4 | 0; b = f; c[g >> 2] = a; c[b >> 2] = dQ(c[g >> 2] | 0, 50621) | 0; if (!(c[b >> 2] | 0)) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = f; return g | 0 } else { c[d >> 2] = Wz(c[b >> 2] | 0) | 0; UP(c[b >> 2] | 0) | 0; c[e >> 2] = c[d >> 2]; g = c[e >> 2] | 0; l = f; return g | 0 } return 0 } function Yz(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 28 | 0; h = m + 24 | 0; i = m + 8 | 0; k = m + 20 | 0; f = m; g = m + 16 | 0; c[h >> 2] = a; a = i; c[a >> 2] = b; c[a + 4 >> 2] = d; c[k >> 2] = e; if (Fy(c[h >> 2] | 0, f) | 0) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } a = f; b = c[a + 4 >> 2] | 0; e = i; d = c[e + 4 >> 2] | 0; if (b >>> 0 < d >>> 0 | ((b | 0) == (d | 0) ? (c[a >> 2] | 0) >>> 0 <= (c[e >> 2] | 0) >>> 0 : 0)) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } e = f; a = i; a = NQ(c[e >> 2] | 0, c[e + 4 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0) | 0; a = ZQ(a | 0, D | 0, 512, 0) | 0; e = f; c[e >> 2] = a; c[e + 4 >> 2] = D; e = f; if ((c[e >> 2] | 0) == 0 & (c[e + 4 >> 2] | 0) == 0) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } e = i; c[g >> 2] = Zz(c[h >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0, c[e + 4 >> 2] | 0, c[k >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else { Uy(c[g >> 2] | 0) | 0; c[j >> 2] = c[g >> 2]; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function Zz(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, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 24 | 0; g = n + 20 | 0; i = n + 16 | 0; j = n; m = n + 12 | 0; h = n + 8 | 0; c[g >> 2] = a; c[i >> 2] = b; b = j; c[b >> 2] = d; c[b + 4 >> 2] = e; c[m >> 2] = f; c[h >> 2] = HQ(80) | 0; if (!(c[h >> 2] | 0)) { c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } else { Iy(c[h >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0, 0, 0, 0); My(c[h >> 2] | 0, 1); Oy(c[h >> 2] | 0, c[m >> 2] | 0); c[(c[h >> 2] | 0) + 4 >> 2] = 241; c[(c[h >> 2] | 0) + 8 >> 2] = 26; c[(c[h >> 2] | 0) + 12 >> 2] = 27; f = c[j + 4 >> 2] | 0; m = (c[h >> 2] | 0) + 72 | 0; c[m >> 2] = c[j >> 2]; c[m + 4 >> 2] = f; c[(c[h >> 2] | 0) + 68 >> 2] = c[g >> 2]; c[k >> 2] = c[h >> 2]; m = c[k >> 2] | 0; l = n; return m | 0 } return 0 } function _z(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; UP(c[(c[d >> 2] | 0) + 68 >> 2] | 0) | 0; IQ(c[d >> 2] | 0); l = b; return } function $z(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; n = o + 36 | 0; h = o + 32 | 0; f = o + 28 | 0; i = o + 24 | 0; k = o + 20 | 0; j = o + 16 | 0; m = o + 8 | 0; g = o; c[h >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; c[k >> 2] = e; if (((c[i >> 2] | 0) + (c[k >> 2] | 0) | 0) >>> 0 > (c[(c[h >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } c[j >> 2] = c[(c[h >> 2] | 0) + 64 >> 2]; e = (c[j >> 2] | 0) + 72 | 0; d = c[e >> 2] | 0; e = c[e + 4 >> 2] | 0; i = $Q(512, 0, c[i >> 2] | 0, 0) | 0; i = OQ(d | 0, e | 0, i | 0, D | 0) | 0; e = m; c[e >> 2] = i; c[e + 4 >> 2] = D; e = $Q(512, 0, c[k >> 2] | 0, 0) | 0; k = g; c[k >> 2] = e; c[k + 4 >> 2] = D; k = m; m = g; if (Dy(c[(c[j >> 2] | 0) + 68 >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[k + 4 >> 2] | 0, c[m >> 2] | 0, c[m + 4 >> 2] | 0) | 0) { c[n >> 2] = 1; n = c[n >> 2] | 0; l = o; return n | 0 } else { c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } return 0 } function aA(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 36 | 0; i = p + 32 | 0; g = p + 28 | 0; j = p + 24 | 0; m = p + 20 | 0; k = p + 16 | 0; n = p + 8 | 0; h = p; c[i >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[m >> 2] = f; if (a[(c[i >> 2] | 0) + 56 >> 0] | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } if (((c[j >> 2] | 0) + (c[m >> 2] | 0) | 0) >>> 0 > (c[(c[i >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } c[k >> 2] = c[(c[i >> 2] | 0) + 64 >> 2]; f = (c[k >> 2] | 0) + 72 | 0; e = c[f >> 2] | 0; f = c[f + 4 >> 2] | 0; j = $Q(512, 0, c[j >> 2] | 0, 0) | 0; j = OQ(e | 0, f | 0, j | 0, D | 0) | 0; f = n; c[f >> 2] = j; c[f + 4 >> 2] = D; f = $Q(512, 0, c[m >> 2] | 0, 0) | 0; m = h; c[m >> 2] = f; c[m + 4 >> 2] = D; m = n; n = h; if (Ey(c[(c[k >> 2] | 0) + 68 >> 2] | 0, c[g >> 2] | 0, c[m >> 2] | 0, c[m + 4 >> 2] | 0, c[n >> 2] | 0, c[n + 4 >> 2] | 0) | 0) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else { XP(c[(c[k >> 2] | 0) + 68 >> 2] | 0) | 0; c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function bA(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 24 | 0; g = m + 20 | 0; i = m; k = m + 16 | 0; f = m + 12 | 0; h = m + 8 | 0; c[g >> 2] = a; a = i; c[a >> 2] = b; c[a + 4 >> 2] = d; c[k >> 2] = e; b = c[g >> 2] | 0; if (!(c[k >> 2] | 0)) { c[h >> 2] = dQ(b, 50617) | 0; if (!(c[h >> 2] | 0)) { c[h >> 2] = dQ(c[g >> 2] | 0, 50621) | 0; c[k >> 2] = 1 } } else c[h >> 2] = dQ(b, 50621) | 0; if (!(c[h >> 2] | 0)) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } c[f >> 2] = Yz(c[h >> 2] | 0, c[i >> 2] | 0, c[i + 4 >> 2] | 0, c[k >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { UP(c[h >> 2] | 0) | 0; c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else { Py(c[f >> 2] | 0, c[g >> 2] | 0); c[j >> 2] = c[f >> 2]; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function cA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[c[e >> 2] >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 4 >> 2] = 0; c[(c[e >> 2] | 0) + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 12 >> 2] = 0; c[(c[e >> 2] | 0) + 16 >> 2] = 0; c[(c[e >> 2] | 0) + 20 >> 2] = 0; c[(c[e >> 2] | 0) + 24 >> 2] = 0; c[(c[e >> 2] | 0) + 28 >> 2] = 0; c[(c[e >> 2] | 0) + 48 >> 2] = 0; c[(c[e >> 2] | 0) + 52 >> 2] = 0; c[(c[e >> 2] | 0) + 56 >> 2] = 0; c[(c[e >> 2] | 0) + 60 >> 2] = 0; c[(c[e >> 2] | 0) + 64 >> 2] = 0; c[(c[e >> 2] | 0) + 68 >> 2] = 0; c[(c[e >> 2] | 0) + 72 >> 2] = 0; c[(c[e >> 2] | 0) + 76 >> 2] = 0; l = d; return } function dA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; if (!(c[13636] | 0)) eA() | 0; c[d >> 2] = c[13636]; while (1) { if (!(c[d >> 2] | 0)) { a = 8; break } a = (fA(c[d >> 2] | 0, c[e >> 2] | 0) | 0) != 0; b = c[d >> 2] | 0; if (a) { a = 6; break } c[d >> 2] = c[b >> 2] } if ((a | 0) == 6) { d = Rb[c[b + 8 >> 2] & 15](c[e >> 2] | 0) | 0; c[f >> 2] = gA(d, c[e >> 2] | 0) | 0; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((a | 0) == 8) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function eA() { var a = 0, b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; a = e + 4 | 0; b = e; c[d >> 2] = 0; c[b >> 2] = 5; c[a >> 2] = 0; while (1) { if ((c[a >> 2] | 0) >>> 0 >= (c[b >> 2] | 0) >>> 0) break; f = kA(c[25812 + (c[a >> 2] << 3) >> 2] | 0, c[25812 + (c[a >> 2] << 3) + 4 >> 2] | 0) | 0; c[d >> 2] = c[d >> 2] | f; c[a >> 2] = (c[a >> 2] | 0) + 1 } l = e; return c[d >> 2] | 0 } function fA(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; f = h + 16 | 0; i = h + 12 | 0; j = h + 8 | 0; g = h + 4 | 0; e = h; c[i >> 2] = b; c[j >> 2] = d; c[g >> 2] = c[j >> 2]; c[e >> 2] = c[(c[i >> 2] | 0) + 4 >> 2]; while (1) { if (a[c[e >> 2] >> 0] | 0) b = (a[c[e >> 2] >> 0] | 0) == (a[c[g >> 2] >> 0] | 0); else b = 0; d = c[e >> 2] | 0; if (!b) break; c[e >> 2] = d + 1; c[g >> 2] = (c[g >> 2] | 0) + 1 } do if (!(a[d >> 0] | 0)) { if ((a[c[g >> 2] >> 0] | 0) != 58 ? a[c[g >> 2] >> 0] | 0 : 0) break; c[f >> 2] = 1; j = c[f >> 2] | 0; l = h; return j | 0 } while (0); c[f >> 2] = 0; j = c[f >> 2] | 0; l = h; return j | 0 } function gA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; d = h + 8 | 0; e = h + 4 | 0; g = h; c[d >> 2] = a; c[e >> 2] = b; if (!(c[d >> 2] | 0)) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } c[g >> 2] = rI(c[e >> 2] | 0, 46288) | 0; if (c[g >> 2] | 0) { hA(c[d >> 2] | 0, c[g >> 2] | 0) | 0; IQ(c[g >> 2] | 0) } c[f >> 2] = c[d >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } function hA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[d >> 2] = a; c[e >> 2] = b; if (c[(c[d >> 2] | 0) + 52 >> 2] | 0) { iA(c[d >> 2] | 0); UP(c[(c[d >> 2] | 0) + 52 >> 2] | 0) | 0 } e = dQ(c[e >> 2] | 0, 50755) | 0; c[(c[d >> 2] | 0) + 52 >> 2] = e; if (!(c[(c[d >> 2] | 0) + 52 >> 2] | 0)) { c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function iA(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if ((c[(c[b >> 2] | 0) + 28 >> 2] | 0) >>> 0 > 0) jA(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 48 >> 2] | 0, (c[b >> 2] | 0) + 32 | 0, c[(c[b >> 2] | 0) + 28 >> 2] | 0); c[(c[b >> 2] | 0) + 28 >> 2] = 0; c[(c[b >> 2] | 0) + 48 >> 2] = 0; l = d; return } function jA(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; p = q + 8 | 0; o = q; i = q + 36 | 0; n = q + 32 | 0; g = q + 28 | 0; j = q + 24 | 0; h = q + 20 | 0; k = q + 16 | 0; m = q + 12 | 0; c[i >> 2] = a; c[n >> 2] = b; c[g >> 2] = e; c[j >> 2] = f; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; c[m >> 2] = (c[j >> 2] | 0) >>> 0 < 16 ? c[j >> 2] | 0 : 16; b = c[(c[i >> 2] | 0) + 52 >> 2] | 0; f = d[c[g >> 2] >> 0] | 0; c[o >> 2] = c[n >> 2] | 0 ? 46292 : 46295; c[o + 4 >> 2] = f; kQ(b, 46298, o) | 0; c[k >> 2] = 1; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; b = c[(c[i >> 2] | 0) + 52 >> 2] | 0; c[p >> 2] = d[(c[g >> 2] | 0) + (c[k >> 2] | 0) >> 0]; kQ(b, 47056, p) | 0; c[k >> 2] = (c[k >> 2] | 0) + 1 } c[k >> 2] = c[m >> 2]; while (1) { e = c[(c[i >> 2] | 0) + 52 >> 2] | 0; if ((c[k >> 2] | 0) >>> 0 >= 16) break; PP(46306, e) | 0; c[k >> 2] = (c[k >> 2] | 0) + 1 } PP(48623, e) | 0; c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; b = d[(c[g >> 2] | 0) + (c[k >> 2] | 0) >> 0] | 0; c[h >> 2] = b; c[h >> 2] = (c[h >> 2] | 0) < 32 | (c[h >> 2] | 0) > 126 ? 46 : b; uQ(c[h >> 2] | 0, c[(c[i >> 2] | 0) + 52 >> 2] | 0) | 0; c[k >> 2] = (c[k >> 2] | 0) + 1 } PP(50466, c[(c[i >> 2] | 0) + 52 >> 2] | 0) | 0; c[g >> 2] = (c[g >> 2] | 0) + (c[m >> 2] | 0); c[j >> 2] = (c[j >> 2] | 0) - (c[m >> 2] | 0) } XP(c[(c[i >> 2] | 0) + 52 >> 2] | 0) | 0; l = q; return } function kA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; e = h + 8 | 0; f = h + 4 | 0; d = h; c[e >> 2] = a; c[f >> 2] = b; b = HQ(12) | 0; c[d >> 2] = b; if (!b) { c[g >> 2] = 1; g = c[g >> 2] | 0; l = h; return g | 0 } else { c[c[d >> 2] >> 2] = c[13636]; c[(c[d >> 2] | 0) + 4 >> 2] = c[e >> 2]; c[(c[d >> 2] | 0) + 8 >> 2] = c[f >> 2]; c[13636] = c[d >> 2]; c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function lA(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } if (c[(c[b >> 2] | 0) + 52 >> 2] | 0) { iA(c[b >> 2] | 0); UP(c[(c[b >> 2] | 0) + 52 >> 2] | 0) | 0 } if (!(c[(c[b >> 2] | 0) + 56 >> 2] | 0)) { l = d; return } Pb[c[(c[b >> 2] | 0) + 56 >> 2] & 511](c[b >> 2] | 0); l = d; return } function mA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; f = j + 12 | 0; e = j + 8 | 0; g = j + 4 | 0; h = j; c[f >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; if (c[f >> 2] | 0 ? c[(c[f >> 2] | 0) + 60 >> 2] | 0 : 0) { c[h >> 2] = Nb[c[(c[f >> 2] | 0) + 60 >> 2] & 63](c[f >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0) | 0; nA(c[f >> 2] | 0, 0, c[e >> 2] | 0, c[h >> 2] | 0); c[i >> 2] = c[h >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } function nA(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; j = k + 12 | 0; f = k + 8 | 0; h = k + 4 | 0; i = k; c[g >> 2] = a; c[j >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; if ((c[h >> 2] | 0) == 0 ? 1 : (c[(c[g >> 2] | 0) + 52 >> 2] | 0) == 0) { l = k; return } if ((c[(c[g >> 2] | 0) + 28 >> 2] | 0) >>> 0 > 0 ? (c[(c[g >> 2] | 0) + 48 >> 2] | 0) != (c[j >> 2] | 0) : 0) iA(c[g >> 2] | 0); while (1) { if ((c[h >> 2] | 0) >>> 0 <= 0) break; c[i >> 2] = 16 - (c[(c[g >> 2] | 0) + 28 >> 2] | 0); if ((c[h >> 2] | 0) >>> 0 < (c[i >> 2] | 0) >>> 0) c[i >> 2] = c[h >> 2]; QQ((c[g >> 2] | 0) + 32 + (c[(c[g >> 2] | 0) + 28 >> 2] | 0) | 0, c[f >> 2] | 0, c[i >> 2] | 0) | 0; b = (c[g >> 2] | 0) + 28 | 0; c[b >> 2] = (c[b >> 2] | 0) + (c[i >> 2] | 0); c[(c[g >> 2] | 0) + 48 >> 2] = c[j >> 2]; if ((c[(c[g >> 2] | 0) + 28 >> 2] | 0) >>> 0 >= 16) iA(c[g >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + (c[i >> 2] | 0); c[h >> 2] = (c[h >> 2] | 0) - (c[i >> 2] | 0) } l = k; return } function oA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; f = j + 12 | 0; e = j + 8 | 0; g = j + 4 | 0; h = j; c[f >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; if (c[f >> 2] | 0 ? c[(c[f >> 2] | 0) + 64 >> 2] | 0 : 0) { c[h >> 2] = Nb[c[(c[f >> 2] | 0) + 64 >> 2] & 63](c[f >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0) | 0; nA(c[f >> 2] | 0, 1, c[e >> 2] | 0, c[h >> 2] | 0); c[i >> 2] = c[h >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } c[i >> 2] = c[g >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } function pA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 8 | 0; g = h + 4 | 0; f = h; c[e >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; if (!(c[(c[e >> 2] | 0) + 52 >> 2] | 0)) { l = h; return } if ((c[g >> 2] | 0) == (c[f >> 2] | 0)) { l = h; return } iA(c[e >> 2] | 0); qA(c[e >> 2] | 0, 46328, 512, c[g >> 2] | 0, c[f >> 2] | 0); qA(c[e >> 2] | 0, 46332, 1, c[g >> 2] | 0, c[f >> 2] | 0); qA(c[e >> 2] | 0, 46336, 2, c[g >> 2] | 0, c[f >> 2] | 0); qA(c[e >> 2] | 0, 46340, 256, c[g >> 2] | 0, c[f >> 2] | 0); qA(c[e >> 2] | 0, 46344, 1024, c[g >> 2] | 0, c[f >> 2] | 0); qA(c[e >> 2] | 0, 46347, 2048, c[g >> 2] | 0, c[f >> 2] | 0); l = h; return } function qA(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, m = 0, n = 0; m = l; l = l + 32 | 0; k = m; g = m + 24 | 0; i = m + 20 | 0; h = m + 16 | 0; n = m + 12 | 0; j = m + 8 | 0; c[g >> 2] = a; c[i >> 2] = b; c[h >> 2] = d; c[n >> 2] = e; c[j >> 2] = f; if (!((c[n >> 2] ^ c[j >> 2]) & c[h >> 2])) { l = m; return } n = c[(c[g >> 2] | 0) + 52 >> 2] | 0; e = (c[j >> 2] & c[h >> 2] | 0) != 0 & 1; c[k >> 2] = c[i >> 2]; c[k + 4 >> 2] = e; kQ(n, 46350, k) | 0; l = m; return } function rA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[d >> 2] = a; c[e >> 2] = b; if (!(c[d >> 2] | 0)) { c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } if ((c[(c[d >> 2] | 0) + 24 >> 2] | 0) == (c[e >> 2] | 0)) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } pA(c[d >> 2] | 0, c[(c[d >> 2] | 0) + 24 >> 2] | 0, c[e >> 2] | 0); c[(c[d >> 2] | 0) + 24 >> 2] = c[e >> 2]; if (!(c[(c[d >> 2] | 0) + 72 >> 2] | 0)) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } else { c[f >> 2] = Vb[c[(c[d >> 2] | 0) + 72 >> 2] & 31](c[d >> 2] | 0, c[e >> 2] | 0) | 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function sA(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, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 20 | 0; i = n + 16 | 0; h = n + 12 | 0; g = n + 8 | 0; j = n + 4 | 0; m = n; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[m >> 2] = f; if (!(c[i >> 2] | 0)) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } if (tA(c[i >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0, c[m >> 2] | 0) | 0) { c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } c[(c[i >> 2] | 0) + 4 >> 2] = c[h >> 2]; c[(c[i >> 2] | 0) + 8 >> 2] = c[g >> 2]; c[(c[i >> 2] | 0) + 12 >> 2] = c[j >> 2]; c[(c[i >> 2] | 0) + 16 >> 2] = c[m >> 2]; uA(c[i >> 2] | 0); if (!(c[(c[i >> 2] | 0) + 76 >> 2] | 0)) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } else { c[k >> 2] = Wb[c[(c[i >> 2] | 0) + 76 >> 2] & 3](c[i >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0, c[m >> 2] | 0) | 0; m = c[k >> 2] | 0; l = n; return m | 0 } return 0 } function tA(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, m = 0, n = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; h = m + 16 | 0; n = m + 12 | 0; g = m + 8 | 0; i = m + 4 | 0; k = m; c[h >> 2] = a; c[n >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; c[k >> 2] = f; do if ((c[(c[h >> 2] | 0) + 4 >> 2] | 0) == (c[n >> 2] | 0)) { if ((c[(c[h >> 2] | 0) + 8 >> 2] | 0) != (c[g >> 2] | 0)) { c[j >> 2] = 0; break } if ((c[(c[h >> 2] | 0) + 12 >> 2] | 0) != (c[i >> 2] | 0)) { c[j >> 2] = 0; break } if ((c[(c[h >> 2] | 0) + 16 >> 2] | 0) != (c[k >> 2] | 0)) { c[j >> 2] = 0; break } else { c[j >> 2] = 1; break } } else c[j >> 2] = 0; while (0); l = m; return c[j >> 2] | 0 } function uA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0; f = l; l = l + 32 | 0; e = f; b = f + 20 | 0; d = f + 16 | 0; c[b >> 2] = a; if (!(c[(c[b >> 2] | 0) + 52 >> 2] | 0)) { l = f; return } iA(c[b >> 2] | 0); switch (c[(c[b >> 2] | 0) + 12 >> 2] | 0) { case 0: { c[d >> 2] = 46360; break } case 1: { c[d >> 2] = 46362; break } case 2: { c[d >> 2] = 46364; break } default: c[d >> 2] = 50524 } a = c[(c[b >> 2] | 0) + 52 >> 2] | 0; h = c[(c[b >> 2] | 0) + 8 >> 2] | 0; g = c[d >> 2] | 0; d = c[(c[b >> 2] | 0) + 16 >> 2] | 0; c[e >> 2] = c[(c[b >> 2] | 0) + 4 >> 2]; c[e + 4 >> 2] = h; c[e + 8 >> 2] = g; c[e + 12 >> 2] = d; kQ(a, 46366, e) | 0; XP(c[(c[b >> 2] | 0) + 52 >> 2] | 0) | 0; l = f; return } function vA(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch (c[(c[b >> 2] | 0) + 80 >> 2] | 0) { case 0: { wA(c[b >> 2] | 0);l = d; return } case 1: { xA(c[b >> 2] | 0);l = d; return } default: { l = d; return } } } function wA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 12 | 0; e = g + 8 | 0; f = g + 4 | 0; d = g; c[b >> 2] = a; if ((yA(c[b >> 2] | 0) | 0) >>> 0 < 3) { l = g; return } c[e >> 2] = AA((c[b >> 2] | 0) + 352 | 0, -127, 127) | 0; c[f >> 2] = AA((c[b >> 2] | 0) + 356 | 0, -127, 127) | 0; c[d >> 2] = 64; c[d >> 2] = c[d >> 2] | (c[(c[b >> 2] | 0) + 360 >> 2] & 1 | 0 ? 32 : 0); c[d >> 2] = c[d >> 2] | (c[(c[b >> 2] | 0) + 360 >> 2] & 2 | 0 ? 16 : 0); c[d >> 2] = c[d >> 2] | (c[f >> 2] | 0) >>> 4 & 12; c[d >> 2] = c[d >> 2] | (c[e >> 2] | 0) >>> 6 & 3; zA(c[b >> 2] | 0, c[d >> 2] & 255); zA(c[b >> 2] | 0, c[e >> 2] & 63); zA(c[b >> 2] | 0, c[f >> 2] & 63); l = g; return } function xA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; d = f + 4 | 0; e = f; c[b >> 2] = a; if ((yA(c[b >> 2] | 0) | 0) >>> 0 < 5) { l = f; return } c[e >> 2] = 128; c[e >> 2] = c[e >> 2] | (c[(c[b >> 2] | 0) + 360 >> 2] & 1 | 0 ? 0 : 4); c[e >> 2] = c[e >> 2] | (c[(c[b >> 2] | 0) + 360 >> 2] & 2 | 0 ? 0 : 1); c[e >> 2] = c[e >> 2] | (c[(c[b >> 2] | 0) + 360 >> 2] & 4 | 0 ? 0 : 2); zA(c[b >> 2] | 0, c[e >> 2] & 255); c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= 2) break; c[e >> 2] = AA((c[b >> 2] | 0) + 352 | 0, -127, 127) | 0; zA(c[b >> 2] | 0, c[e >> 2] & 255); c[e >> 2] = AA((c[b >> 2] | 0) + 356 | 0, -127, 127) | 0; zA(c[b >> 2] | 0, ~c[e >> 2] + 1 & 255); c[d >> 2] = (c[d >> 2] | 0) + 1 } l = f; return } function yA(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[e >> 2] = a; c[b >> 2] = ((256 + (c[(c[e >> 2] | 0) + 84 >> 2] | 0) - (c[(c[e >> 2] | 0) + 88 >> 2] | 0) | 0) >>> 0) % 256 | 0; l = d; return 256 - (c[b >> 2] | 0) | 0 } function zA(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 92 + (c[(c[f >> 2] | 0) + 84 >> 2] | 0) >> 0] = a[g >> 0] | 0; c[(c[f >> 2] | 0) + 84 >> 2] = (((c[(c[f >> 2] | 0) + 84 >> 2] | 0) + 1 | 0) >>> 0) % 256 | 0; l = e; return } function AA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; f = j + 12 | 0; e = j + 8 | 0; h = j + 4 | 0; i = j; c[g >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; c[i >> 2] = c[c[g >> 2] >> 2]; if ((c[i >> 2] | 0) >= (c[f >> 2] | 0)) { if ((c[i >> 2] | 0) > (c[e >> 2] | 0)) c[i >> 2] = c[e >> 2] } else c[i >> 2] = c[f >> 2]; d = c[g >> 2] | 0; c[d >> 2] = (c[d >> 2] | 0) - (c[i >> 2] | 0); d = c[i >> 2] | 0; if ((c[i >> 2] | 0) < 0) { c[h >> 2] = 0 - d; c[h >> 2] = ~c[h >> 2] + 1; i = c[h >> 2] | 0; l = j; return i | 0 } else { c[h >> 2] = d; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function BA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = HQ(388) | 0; do if (c[b >> 2] | 0) { d = (CA(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[b >> 2] | 0; if (d) { IQ(b); c[e >> 2] = 0; break } else { c[e >> 2] = b; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function CA(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; g = i; c[e >> 2] = b; c[f >> 2] = d; cA(c[e >> 2] | 0, c[e >> 2] | 0); c[(c[e >> 2] | 0) + 56 >> 2] = 242; c[(c[e >> 2] | 0) + 60 >> 2] = 37; c[(c[e >> 2] | 0) + 64 >> 2] = 38; c[(c[e >> 2] | 0) + 68 >> 2] = 18; c[(c[e >> 2] | 0) + 72 >> 2] = 19; c[(c[e >> 2] | 0) + 76 >> 2] = 1; c[(c[e >> 2] | 0) + 80 >> 2] = 0; c[(c[e >> 2] | 0) + 84 >> 2] = 0; c[(c[e >> 2] | 0) + 88 >> 2] = 0; a[(c[e >> 2] | 0) + 348 >> 0] = 0; a[(c[e >> 2] | 0) + 349 >> 0] = 0; c[(c[e >> 2] | 0) + 352 >> 2] = 0; c[(c[e >> 2] | 0) + 356 >> 2] = 0; c[(c[e >> 2] | 0) + 360 >> 2] = 0; c[g >> 2] = rI(c[f >> 2] | 0, 46381) | 0; if (c[g >> 2] | 0) { do if (!(fP(c[g >> 2] | 0, 46390) | 0)) { b = 0; d = c[e >> 2] | 0 } else { if (!(fP(c[g >> 2] | 0, 46400) | 0)) { b = 1; d = c[e >> 2] | 0; break } IQ(c[g >> 2] | 0); c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } while (0); c[d + 80 >> 2] = b; IQ(c[g >> 2] | 0) } g = yI(c[f >> 2] | 0, 46405, 1) | 0; c[(c[e >> 2] | 0) + 364 >> 2] = g; g = yI(c[f >> 2] | 0, 46410, 1) | 0; c[(c[e >> 2] | 0) + 364 + 4 >> 2] = g; c[(c[e >> 2] | 0) + 364 + 8 >> 2] = 0; if (!(c[(c[e >> 2] | 0) + 364 + 4 >> 2] | 0)) c[(c[e >> 2] | 0) + 364 + 4 >> 2] = 1; g = yI(c[f >> 2] | 0, 46415, 1) | 0; c[(c[e >> 2] | 0) + 376 >> 2] = g; g = yI(c[f >> 2] | 0, 46420, 1) | 0; c[(c[e >> 2] | 0) + 376 + 4 >> 2] = g; c[(c[e >> 2] | 0) + 376 + 8 >> 2] = 0; if (!(c[(c[e >> 2] | 0) + 376 + 4 >> 2] | 0)) c[(c[e >> 2] | 0) + 376 + 4 >> 2] = 1; if (((c[13637] | 0) + 1 | 0) >>> 0 < 8) { f = c[e >> 2] | 0; g = c[13637] | 0; c[13637] = g + 1; c[54552 + (g << 2) >> 2] = f } c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } function DA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; g = f + 12 | 0; d = f + 8 | 0; e = f + 4 | 0; b = f; c[g >> 2] = a; c[b >> 2] = c[c[g >> 2] >> 2]; c[e >> 2] = 0; c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[13637] | 0) >>> 0) break; if ((c[54552 + (c[d >> 2] << 2) >> 2] | 0) != (c[b >> 2] | 0)) { a = c[54552 + (c[d >> 2] << 2) >> 2] | 0; g = c[e >> 2] | 0; c[e >> 2] = g + 1; c[54552 + (g << 2) >> 2] = a } c[d >> 2] = (c[d >> 2] | 0) + 1 } c[13637] = c[e >> 2]; IQ(c[b >> 2] | 0); l = f; return } function EA(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, m = 0, n = 0, o = 0; m = l; l = l + 32 | 0; j = m + 28 | 0; o = m + 24 | 0; n = m + 20 | 0; f = m + 16 | 0; h = m + 12 | 0; i = m + 8 | 0; k = m + 4 | 0; g = m; c[o >> 2] = b; c[n >> 2] = d; c[f >> 2] = e; c[g >> 2] = c[c[o >> 2] >> 2]; c[k >> 2] = c[n >> 2]; do if ((c[(c[g >> 2] | 0) + 84 >> 2] | 0) == (c[(c[g >> 2] | 0) + 88 >> 2] | 0)) { if ((c[(c[g >> 2] | 0) + 352 >> 2] | 0) == 0 ? (c[(c[g >> 2] | 0) + 356 >> 2] | 0) == 0 : 0) break; vA(c[g >> 2] | 0) } while (0); if ((c[(c[g >> 2] | 0) + 84 >> 2] | 0) == (c[(c[g >> 2] | 0) + 88 >> 2] | 0)) { c[j >> 2] = 0; o = c[j >> 2] | 0; l = m; return o | 0 } c[i >> 2] = (((c[(c[g >> 2] | 0) + 84 >> 2] | 0) - (c[(c[g >> 2] | 0) + 88 >> 2] | 0) + 256 | 0) >>> 0) % 256 | 0; if ((c[i >> 2] | 0) >>> 0 > (c[f >> 2] | 0) >>> 0) c[i >> 2] = c[f >> 2]; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) break; a[(c[k >> 2] | 0) + (c[h >> 2] | 0) >> 0] = a[(c[g >> 2] | 0) + 92 + (c[(c[g >> 2] | 0) + 88 >> 2] | 0) >> 0] | 0; c[(c[g >> 2] | 0) + 88 >> 2] = (((c[(c[g >> 2] | 0) + 88 >> 2] | 0) + 1 | 0) >>> 0) % 256 | 0; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[j >> 2] = c[i >> 2]; o = c[j >> 2] | 0; l = m; return o | 0 } function FA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; f = l; l = l + 16 | 0; e = f; c[f + 8 >> 2] = a; c[f + 4 >> 2] = b; c[e >> 2] = d; l = f; return c[e >> 2] | 0 } function GA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[d + 4 >> 2] = a; c[e >> 2] = b; c[c[e >> 2] >> 2] = 1792; l = d; return 0 } function HA(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 32 | 0; j = h + 16 | 0; i = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; e = h; c[j >> 2] = b; c[i >> 2] = d; c[e >> 2] = c[c[j >> 2] >> 2]; c[f >> 2] = (c[i >> 2] & 1 | 0) != 0 & 1; c[g >> 2] = (c[i >> 2] & 2 | 0) != 0 & 1; do if ((c[(c[e >> 2] | 0) + 80 >> 2] | 0) == 0 ? (c[g >> 2] | 0) != 0 & (c[f >> 2] | 0) != 0 : 0) { if (a[(c[e >> 2] | 0) + 348 >> 0] | 0 ? a[(c[e >> 2] | 0) + 349 >> 0] | 0 : 0) break; c[(c[e >> 2] | 0) + 352 >> 2] = 0; c[(c[e >> 2] | 0) + 356 >> 2] = 0; c[(c[e >> 2] | 0) + 364 + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 376 + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 84 >> 2] = 1; c[(c[e >> 2] | 0) + 88 >> 2] = 0; a[(c[e >> 2] | 0) + 92 >> 0] = 77 } while (0); a[(c[e >> 2] | 0) + 348 >> 0] = c[f >> 2]; a[(c[e >> 2] | 0) + 349 >> 0] = c[g >> 2]; l = h; return 0 } function IA(a, b, d, e, f) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0; g = l; l = l + 32 | 0; c[g + 16 >> 2] = a; c[g + 12 >> 2] = b; c[g + 8 >> 2] = d; c[g + 4 >> 2] = e; c[g >> 2] = f; l = g; return 0 } function JA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = HQ(80) | 0; do if (c[b >> 2] | 0) { d = (KA(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[b >> 2] | 0; if (d) { IQ(b); c[e >> 2] = 0; break } else { c[e >> 2] = b; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function KA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; c[e >> 2] = a; c[d >> 2] = b; cA(c[e >> 2] | 0, c[e >> 2] | 0); c[(c[e >> 2] | 0) + 56 >> 2] = 243; c[(c[e >> 2] | 0) + 60 >> 2] = 39; c[(c[e >> 2] | 0) + 64 >> 2] = 40; c[(c[e >> 2] | 0) + 68 >> 2] = 20; c[(c[e >> 2] | 0) + 72 >> 2] = 21; c[(c[e >> 2] | 0) + 76 >> 2] = 2; l = d; return 0 } function LA(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[c[e >> 2] >> 2]; IQ(c[d >> 2] | 0); l = b; return } function MA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = l; l = l + 16 | 0; c[e + 8 >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; l = e; return 0 } function NA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; f = l; l = l + 16 | 0; e = f; c[f + 8 >> 2] = a; c[f + 4 >> 2] = b; c[e >> 2] = d; l = f; return c[e >> 2] | 0 } function OA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[d + 4 >> 2] = a; c[e >> 2] = b; c[c[e >> 2] >> 2] = 1792; l = d; return 0 } function PA(a, b) { a = a | 0; b = b | 0; var d = 0; d = l; l = l + 16 | 0; c[d + 4 >> 2] = a; c[d >> 2] = b; l = d; return 0 } function QA(a, b, d, e, f) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0; g = l; l = l + 32 | 0; c[g + 16 >> 2] = a; c[g + 12 >> 2] = b; c[g + 8 >> 2] = d; c[g + 4 >> 2] = e; c[g >> 2] = f; l = g; return 0 } function RA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = HQ(92) | 0; do if (c[b >> 2] | 0) { d = (SA(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[b >> 2] | 0; if (d) { TA(b); c[e >> 2] = 0; break } else { c[e >> 2] = b; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function SA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; g = f; c[d >> 2] = a; c[g >> 2] = b; cA(c[d >> 2] | 0, c[d >> 2] | 0); c[(c[d >> 2] | 0) + 56 >> 2] = 244; c[(c[d >> 2] | 0) + 60 >> 2] = 41; c[(c[d >> 2] | 0) + 64 >> 2] = 42; c[(c[d >> 2] | 0) + 88 >> 2] = 0; b = rI(c[g >> 2] | 0, 49843) | 0; c[(c[d >> 2] | 0) + 80 >> 2] = b; b = wI(c[g >> 2] | 0, 46425, 1) | 0; c[(c[d >> 2] | 0) + 84 >> 2] = b; do if (c[(c[d >> 2] | 0) + 80 >> 2] | 0) { if (!(fP(c[(c[d >> 2] | 0) + 80 >> 2] | 0, 50729) | 0)) { c[(c[d >> 2] | 0) + 88 >> 2] = c[7547]; break } g = dQ(c[(c[d >> 2] | 0) + 80 >> 2] | 0, 51391) | 0; c[(c[d >> 2] | 0) + 88 >> 2] = g; if (!(c[(c[d >> 2] | 0) + 88 >> 2] | 0)) { c[e >> 2] = 1; g = c[e >> 2] | 0; l = f; return g | 0 } } while (0); c[e >> 2] = 0; g = c[e >> 2] | 0; l = f; return g | 0 } function TA(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[e >> 2] = a; c[b >> 2] = c[c[e >> 2] >> 2]; if (c[(c[b >> 2] | 0) + 80 >> 2] | 0) IQ(c[(c[b >> 2] | 0) + 80 >> 2] | 0); if (((c[(c[b >> 2] | 0) + 88 >> 2] | 0 ? (c[(c[b >> 2] | 0) + 88 >> 2] | 0) != (c[7515] | 0) : 0) ? (c[(c[b >> 2] | 0) + 88 >> 2] | 0) != (c[7547] | 0) : 0) ? (c[(c[b >> 2] | 0) + 88 >> 2] | 0) != (c[7422] | 0) : 0) UP(c[(c[b >> 2] | 0) + 88 >> 2] | 0) | 0; IQ(c[b >> 2] | 0); l = d; return } function UA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = l; l = l + 16 | 0; c[e + 8 >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; l = e; return 0 } function VA(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 = l; l = l + 32 | 0; h = i + 16 | 0; j = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; g = i; c[j >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; c[g >> 2] = c[c[j >> 2] >> 2]; if (!(c[(c[g >> 2] | 0) + 88 >> 2] | 0)) { c[h >> 2] = c[f >> 2]; j = c[h >> 2] | 0; l = i; return j | 0 } c[f >> 2] = QP(c[e >> 2] | 0, 1, c[f >> 2] | 0, c[(c[g >> 2] | 0) + 88 >> 2] | 0) | 0; if (c[(c[g >> 2] | 0) + 84 >> 2] | 0) XP(c[(c[g >> 2] | 0) + 88 >> 2] | 0) | 0; c[h >> 2] = c[f >> 2]; j = c[h >> 2] | 0; l = i; return j | 0 } function WA(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = HQ(100) | 0; do if (c[b >> 2] | 0) { d = (XA(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[b >> 2] | 0; if (d) { YA(b); c[e >> 2] = 0; break } else { c[e >> 2] = b; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function XA(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; e = j + 8 | 0; f = j; i = j + 28 | 0; h = j + 24 | 0; d = j + 20 | 0; c[h >> 2] = a; c[d >> 2] = b; cA(c[h >> 2] | 0, c[h >> 2] | 0); c[(c[h >> 2] | 0) + 56 >> 2] = 245; c[(c[h >> 2] | 0) + 60 >> 2] = 43; c[(c[h >> 2] | 0) + 64 >> 2] = 44; c[(c[h >> 2] | 0) + 80 >> 2] = 0; c[(c[h >> 2] | 0) + 84 >> 2] = 0; c[(c[h >> 2] | 0) + 88 >> 2] = 0; c[(c[h >> 2] | 0) + 92 >> 2] = -1; c[(c[h >> 2] | 0) + 96 >> 2] = -1; b = rI(c[d >> 2] | 0, 49843) | 0; c[(c[h >> 2] | 0) + 80 >> 2] = b; if (!(c[(c[h >> 2] | 0) + 80 >> 2] | 0)) { b = rI(c[d >> 2] | 0, 46431) | 0; c[(c[h >> 2] | 0) + 84 >> 2] = b; b = rI(c[d >> 2] | 0, 46436) | 0; c[(c[h >> 2] | 0) + 88 >> 2] = b } a = c[h >> 2] | 0; do if (!(c[(c[h >> 2] | 0) + 80 >> 2] | 0)) { if ((c[a + 84 >> 2] | 0) == 0 ? (c[(c[h >> 2] | 0) + 88 >> 2] | 0) == 0 : 0) { if (dP(c[d >> 2] | 0, 46445, 6) | 0) break; c[(c[h >> 2] | 0) + 92 >> 2] = 0; c[(c[h >> 2] | 0) + 96 >> 2] = 1; break } do if (c[(c[h >> 2] | 0) + 84 >> 2] | 0) { f = (fP(c[(c[h >> 2] | 0) + 84 >> 2] | 0, 50729) | 0) == 0; a = c[h >> 2] | 0; if (f) { c[a + 92 >> 2] = 0; break } f = c[a + 84 >> 2] | 0; c[e >> 2] = 0; f = hP(f, 256, e) | 0; c[(c[h >> 2] | 0) + 92 >> 2] = f; if ((c[(c[h >> 2] | 0) + 92 >> 2] | 0) < 0) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } } while (0); if (c[(c[h >> 2] | 0) + 88 >> 2] | 0) { f = (fP(c[(c[h >> 2] | 0) + 88 >> 2] | 0, 50729) | 0) == 0; a = c[h >> 2] | 0; if (f) { c[a + 96 >> 2] = 1; break } f = (fP(c[a + 88 >> 2] | 0, 46442) | 0) == 0; a = c[h >> 2] | 0; if (f) { c[a + 96 >> 2] = 2; break } f = c[a + 88 >> 2] | 0; c[g >> 2] = 420; g = hP(f, 833, g) | 0; c[(c[h >> 2] | 0) + 96 >> 2] = g; if ((c[(c[h >> 2] | 0) + 96 >> 2] | 0) < 0) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } } } else { g = (fP(c[a + 80 >> 2] | 0, 50729) | 0) == 0; a = c[h >> 2] | 0; do if (g) { c[a + 92 >> 2] = 0; b = 1; a = c[h >> 2] | 0 } else { g = (fP(c[a + 80 >> 2] | 0, 46442) | 0) == 0; a = c[h >> 2] | 0; if (g) { c[a + 92 >> 2] = 0; b = 2; a = c[h >> 2] | 0; break } g = c[a + 80 >> 2] | 0; c[f >> 2] = 420; g = hP(g, 834, f) | 0; c[(c[h >> 2] | 0) + 92 >> 2] = g; if ((c[(c[h >> 2] | 0) + 92 >> 2] | 0) >= 0) { b = c[(c[h >> 2] | 0) + 92 >> 2] | 0; a = c[h >> 2] | 0; break } c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } while (0); c[a + 96 >> 2] = b } while (0); c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } function YA(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[e >> 2] = a; c[b >> 2] = c[c[e >> 2] >> 2]; if ((c[(c[b >> 2] | 0) + 96 >> 2] | 0) > 2) iP(c[(c[b >> 2] | 0) + 96 >> 2] | 0) | 0; if ((c[(c[b >> 2] | 0) + 92 >> 2] | 0) > 2 ? (c[(c[b >> 2] | 0) + 92 >> 2] | 0) != (c[(c[b >> 2] | 0) + 96 >> 2] | 0) : 0) iP(c[(c[b >> 2] | 0) + 92 >> 2] | 0) | 0; if (c[(c[b >> 2] | 0) + 88 >> 2] | 0) IQ(c[(c[b >> 2] | 0) + 88 >> 2] | 0); if (c[(c[b >> 2] | 0) + 84 >> 2] | 0) IQ(c[(c[b >> 2] | 0) + 84 >> 2] | 0); if (!(c[(c[b >> 2] | 0) + 80 >> 2] | 0)) { e = c[b >> 2] | 0; IQ(e); l = d; return } IQ(c[(c[b >> 2] | 0) + 80 >> 2] | 0); e = c[b >> 2] | 0; IQ(e); l = d; return } function ZA(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; k = j + 16 | 0; e = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[k >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; c[g >> 2] = c[c[k >> 2] >> 2]; if ((c[(c[g >> 2] | 0) + 92 >> 2] | 0) < 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } if ($A(c[(c[g >> 2] | 0) + 92 >> 2] | 0, 1, 0) | 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } if ((c[f >> 2] | 0) >>> 0 > 2147483647) c[f >> 2] = 2147483647; c[h >> 2] = cQ(c[(c[g >> 2] | 0) + 92 >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; if ((c[h >> 2] | 0) <= 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function _A(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; k = j + 16 | 0; e = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[k >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; c[g >> 2] = c[c[k >> 2] >> 2]; if ((c[(c[g >> 2] | 0) + 96 >> 2] | 0) < 0) { c[i >> 2] = c[f >> 2]; k = c[i >> 2] | 0; l = j; return k | 0 } if ($A(c[(c[g >> 2] | 0) + 96 >> 2] | 0, 0, 1) | 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } if ((c[f >> 2] | 0) >>> 0 > 2147483647) c[f >> 2] = 2147483647; c[h >> 2] = bQ(c[(c[g >> 2] | 0) + 96 >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; if ((c[h >> 2] | 0) <= 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function $A(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 24 | 0; f = m + 20 | 0; i = m + 16 | 0; k = m + 12 | 0; h = m + 8 | 0; g = m; c[f >> 2] = a; c[i >> 2] = d; c[k >> 2] = e; if ((c[f >> 2] | 0) < 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } c[g >> 2] = c[f >> 2]; b[g + 4 >> 1] = (c[i >> 2] | 0 ? 1 : 0) | (c[k >> 2] | 0 ? 4 : 0); c[h >> 2] = EQ(g, 1, 0) | 0; if ((c[h >> 2] | 0) < 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } if (!(b[g + 6 >> 1] & 5)) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function aB(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; b = g; c[d >> 2] = a; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= (e[c[d >> 2] >> 1] | 0) >>> 0) { b = 6; break } if ((e[(c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2] | 0) + 2 >> 1] | 0 | 0) > 1) { b = 4; break } c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((b | 0) == 4) { c[f >> 2] = 34; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((b | 0) == 6) { c[f >> 2] = 2; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function bB(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 32 | 0; i = n + 20 | 0; k = n + 16 | 0; o = n + 12 | 0; h = n + 8 | 0; m = n + 27 | 0; f = n + 24 | 0; j = n + 4 | 0; g = n; c[k >> 2] = b; c[o >> 2] = e; c[g >> 2] = mD(c[o >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = 0; o = c[i >> 2] | 0; l = n; return o | 0 } MB(c[k >> 2] | 0, 0); a[f >> 0] = 0; a[f + 1 >> 0] = 0; a[f + 2 >> 0] = 0; while (1) { if (a[(c[k >> 2] | 0) + 24 >> 0] | 0) break; a[f >> 0] = a[f + 1 >> 0] | 0; a[f + 1 >> 0] = a[f + 2 >> 0] | 0; a[f + 2 >> 0] = cB(c[k >> 2] | 0, 0) | 0; c[h >> 2] = c[(c[k >> 2] | 0) + 16 >> 2]; a[m >> 0] = a[(c[k >> 2] | 0) + 24 >> 0] | 0; if ((d[f >> 0] | 0) != 213) continue; if ((d[f + 1 >> 0] | 0) != 170) continue; if ((d[f + 2 >> 0] | 0) != 150) continue; c[j >> 2] = dB(c[k >> 2] | 0) | 0; if (c[j >> 2] | 0) pD(c[g >> 2] | 0, c[j >> 2] | 0) | 0; c[(c[k >> 2] | 0) + 16 >> 2] = c[h >> 2]; a[(c[k >> 2] | 0) + 24 >> 0] = a[m >> 0] | 0 } c[i >> 2] = c[g >> 2]; o = c[i >> 2] | 0; l = n; return o | 0 } function cB(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; i = j + 12 | 0; h = j + 8 | 0; f = j + 4 | 0; e = j; c[g >> 2] = a; c[i >> 2] = b; NB(c[g >> 2] | 0, e, 8) | 0; c[h >> 2] = c[e >> 2]; c[f >> 2] = 8; while (1) { if (!((c[h >> 2] & 128 | 0) == 0 ? (c[f >> 2] | 0) >>> 0 < 64 : 0)) break; NB(c[g >> 2] | 0, e, 1) | 0; c[h >> 2] = c[h >> 2] << 1 | c[e >> 2] & 1; c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((c[f >> 2] | 0) >>> 0 >= 64) c[h >> 2] = 0; if (!(c[i >> 2] | 0)) { i = c[h >> 2] | 0; l = j; return i | 0 } c[h >> 2] = d[46484 + (c[h >> 2] & 255) >> 0]; i = c[h >> 2] | 0; l = j; return i | 0 } function dB(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 576 | 0; q = r; n = r + 44 | 0; p = r + 40 | 0; i = r + 36 | 0; j = r + 32 | 0; k = r + 28 | 0; m = r + 24 | 0; f = r + 20 | 0; e = r + 16 | 0; h = r + 48 | 0; o = r + 12 | 0; c[p >> 2] = b; c[j >> 2] = cB(c[p >> 2] | 0, 1) | 0; c[m >> 2] = cB(c[p >> 2] | 0, 1) | 0; c[k >> 2] = cB(c[p >> 2] | 0, 1) | 0; c[f >> 2] = cB(c[p >> 2] | 0, 1) | 0; c[e >> 2] = cB(c[p >> 2] | 0, 1) | 0; c[e >> 2] = c[e >> 2] ^ (c[j >> 2] ^ c[m >> 2] ^ c[k >> 2] ^ c[f >> 2]); c[j >> 2] = c[j >> 2] & 63 | (c[k >> 2] & 31) << 6; c[k >> 2] = (c[k >> 2] | 0) >>> 5 & 3; c[o >> 2] = UC(c[j >> 2] | 0, c[k >> 2] | 0, c[m >> 2] | 0, 512) | 0; if (!(c[o >> 2] | 0)) { c[n >> 2] = 0; q = c[n >> 2] | 0; l = r; return q | 0 } bD(c[o >> 2] | 0, 3); aD(c[o >> 2] | 0, 8, 1); iD(c[o >> 2] | 0, c[f >> 2] & 255); if (c[e >> 2] | 0) aD(c[o >> 2] | 0, 1, 1); a[h >> 0] = 0; a[h + 1 >> 0] = 0; a[h + 2 >> 0] = 0; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= 64) break; a[h >> 0] = a[h + 1 >> 0] | 0; a[h + 1 >> 0] = a[h + 2 >> 0] | 0; a[h + 2 >> 0] = cB(c[p >> 2] | 0, 0) | 0; if ((d[h >> 0] | 0 | 0) == 213 ? (d[h + 1 >> 0] | 0 | 0) == 170 : 0) { g = 9; break } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((g | 0) == 9) { if ((d[h + 2 >> 0] | 0 | 0) != 173) { c[n >> 2] = c[o >> 2]; q = c[n >> 2] | 0; l = r; return q | 0 } a[h + 2 >> 0] = cB(c[p >> 2] | 0, 1) | 0; if ((d[h + 2 >> 0] | 0 | 0) != (c[m >> 2] | 0)) { c[n >> 2] = c[o >> 2]; q = c[n >> 2] | 0; l = r; return q | 0 } } e = c[o >> 2] | 0; if ((c[i >> 2] | 0) >>> 0 >= 64) { c[n >> 2] = e; q = c[n >> 2] | 0; l = r; return q | 0 } aD(e, 8, 0); if (eB(c[p >> 2] | 0, h) | 0) { p = c[7422] | 0; k = c[k >> 2] | 0; m = c[m >> 2] | 0; c[q >> 2] = c[j >> 2]; c[q + 4 >> 2] = k; c[q + 8 >> 2] = m; kQ(p, 46452, q) | 0; aD(c[o >> 2] | 0, 2, 1) } QQ(c[(c[o >> 2] | 0) + 24 >> 2] | 0, h + 12 | 0, 512) | 0; kD(c[o >> 2] | 0, h, 12) | 0; c[n >> 2] = c[o >> 2]; q = c[n >> 2] | 0; l = r; return q | 0 } function eB(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 560 | 0; j = n + 16 | 0; k = n + 12 | 0; g = n + 8 | 0; i = n + 4 | 0; m = n; f = n + 21 | 0; h = n + 20 | 0; c[k >> 2] = b; c[g >> 2] = e; a[h >> 0] = 0; c[i >> 2] = 0; while (1) { if ((c[i >> 2] | 0) >>> 0 >= 524) break; if (!(((c[i >> 2] | 0) >>> 0) % 3 | 0)) a[h >> 0] = (cB(c[k >> 2] | 0, 1) | 0) << 2; c[m >> 2] = cB(c[k >> 2] | 0, 1) | 0; c[m >> 2] = c[m >> 2] & 63 | (d[h >> 0] | 0) & 192; a[h >> 0] = (d[h >> 0] | 0) << 2; a[f + (c[i >> 2] | 0) >> 0] = c[m >> 2]; c[i >> 2] = (c[i >> 2] | 0) + 1 } a[h >> 0] = (cB(c[k >> 2] | 0, 1) | 0) << 2; m = (cB(c[k >> 2] | 0, 1) | 0) & 63; a[f + 524 >> 0] = m | (d[h >> 0] | 0) & 192; m = (cB(c[k >> 2] | 0, 1) | 0) & 63; a[f + 525 >> 0] = m | (d[h >> 0] | 0) << 2 & 192; m = (cB(c[k >> 2] | 0, 1) | 0) & 63; a[f + 526 >> 0] = m | (d[h >> 0] | 0) << 4 & 192; if (fB(c[g >> 2] | 0, f, 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function fB(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; k = p + 36 | 0; h = p + 32 | 0; m = p + 28 | 0; i = p + 24 | 0; j = p + 20 | 0; g = p + 8 | 0; n = p + 4 | 0; o = p; c[h >> 2] = b; c[m >> 2] = e; c[i >> 2] = f; c[g >> 2] = 0; c[g + 4 >> 2] = 0; c[g + 8 >> 2] = 0; c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= 524) break; if (!(((c[j >> 2] | 0) >>> 0) % 3 | 0)) c[g >> 2] = c[g >> 2] << 1 & 510 | (c[g >> 2] | 0) >>> 7 & 1; c[o >> 2] = d[(c[m >> 2] | 0) + (c[j >> 2] | 0) >> 0]; if (!(c[i >> 2] | 0)) c[o >> 2] = c[o >> 2] ^ c[g >> 2]; e = g + 8 | 0; c[e >> 2] = (c[e >> 2] | 0) + ((c[o >> 2] & 255) + ((c[g >> 2] | 0) >>> 8 & 1)); c[g >> 2] = c[g >> 2] & 255; if (c[i >> 2] | 0) c[o >> 2] = c[o >> 2] ^ c[g >> 2]; a[(c[h >> 2] | 0) + (c[j >> 2] | 0) >> 0] = c[o >> 2]; c[n >> 2] = c[g + 8 >> 2]; c[g + 8 >> 2] = c[g + 4 >> 2]; c[g + 4 >> 2] = c[g >> 2]; c[g >> 2] = c[n >> 2]; c[j >> 2] = (c[j >> 2] | 0) + 1 } c[g >> 2] = c[g >> 2] & 255; do if (c[i >> 2] | 0) { a[(c[h >> 2] | 0) + 524 >> 0] = c[g + 4 >> 2]; a[(c[h >> 2] | 0) + 525 >> 0] = c[g >> 2]; a[(c[h >> 2] | 0) + 526 >> 0] = c[g + 8 >> 2] } else { if (((d[(c[m >> 2] | 0) + 524 >> 0] | 0 | 0) == (c[g + 4 >> 2] | 0) ? (d[(c[m >> 2] | 0) + 525 >> 0] | 0 | 0) == (c[g >> 2] | 0) : 0) ? (d[(c[m >> 2] | 0) + 526 >> 0] | 0 | 0) == (c[g + 8 >> 2] | 0) : 0) break; c[k >> 2] = 1; o = c[k >> 2] | 0; l = p; return o | 0 } while (0); c[k >> 2] = 0; o = c[k >> 2] | 0; l = p; return o | 0 } function gB(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; m = n + 28 | 0; i = n + 24 | 0; d = n + 20 | 0; h = n + 16 | 0; f = n + 12 | 0; j = n + 8 | 0; k = n + 4 | 0; g = n; c[i >> 2] = a; c[k >> 2] = xD() | 0; if (!(c[k >> 2] | 0)) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[c[i >> 2] >> 2] | 0) >>> 0) { a = 19; break } c[f >> 2] = c[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; b: do if (c[f >> 2] | 0) { c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[c[f >> 2] >> 2] | 0) >>> 0) break b; c[j >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[h >> 2] << 2) >> 2]; if (!(c[j >> 2] | 0)) c[g >> 2] = mD(c[h >> 2] | 0) | 0; else c[g >> 2] = bB(c[j >> 2] | 0, c[h >> 2] | 0) | 0; if ((e[(c[g >> 2] | 0) + 2 >> 1] | 0 | 0) == 0 ? ((c[h >> 2] | 0) + 1 | 0) == (c[c[f >> 2] >> 2] | 0) : 0) oD(c[g >> 2] | 0); else { b = c[k >> 2] | 0; if (!(c[g >> 2] | 0)) { a = 15; break a } CD(b, c[g >> 2] | 0, c[d >> 2] | 0) | 0 } c[h >> 2] = (c[h >> 2] | 0) + 1 } } while (0); c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((a | 0) == 15) { zD(b); c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((a | 0) == 19) { c[m >> 2] = c[k >> 2]; m = c[m >> 2] | 0; l = n; return m | 0 } return 0 } function hB(b, d, f) { b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 560 | 0; m = p + 24 | 0; h = p + 20 | 0; o = p + 16 | 0; j = p + 12 | 0; k = p + 8 | 0; i = p + 4 | 0; g = p + 28 | 0; n = p; c[h >> 2] = b; c[o >> 2] = d; c[j >> 2] = f; MB(c[h >> 2] | 0, 0); c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= 32) break; OB(c[h >> 2] | 0, 255, 10) | 0; c[k >> 2] = (c[k >> 2] | 0) + 1 } c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (e[(c[o >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[o >> 2] | 0) + 4 >> 2] | 0) + (c[k >> 2] << 2) >> 2]; f = g + 12 | 0; b = c[(c[n >> 2] | 0) + 24 >> 2] | 0; if ((e[(c[n >> 2] | 0) + 10 >> 1] | 0) < 512) QQ(f | 0, b | 0, e[(c[n >> 2] | 0) + 10 >> 1] | 0) | 0; else QQ(f | 0, b | 0, 512) | 0; c[i >> 2] = jD(c[n >> 2] | 0) | 0; if (!(c[i >> 2] | 0)) c[i >> 2] = c[j >> 2]; lD(c[n >> 2] | 0, g, 12) | 0; iB(c[h >> 2] | 0, g, e[(c[n >> 2] | 0) + 4 >> 1] | 0, e[(c[n >> 2] | 0) + 6 >> 1] | 0, e[(c[n >> 2] | 0) + 8 >> 1] | 0, c[i >> 2] | 0); c[k >> 2] = (c[k >> 2] | 0) + 1 } if (a[(c[h >> 2] | 0) + 24 >> 0] | 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } else { jB(c[h >> 2] | 0); c[m >> 2] = 0; o = c[m >> 2] | 0; l = p; return o | 0 } return 0 } function iB(a, b, e, f, g, h) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 576 | 0; r = t + 32 | 0; o = t + 28 | 0; i = t + 24 | 0; k = t + 20 | 0; n = t + 16 | 0; j = t + 12 | 0; p = t + 8 | 0; s = t + 4 | 0; m = t + 36 | 0; q = t; c[r >> 2] = a; c[o >> 2] = b; c[i >> 2] = e; c[k >> 2] = f; c[n >> 2] = g; c[j >> 2] = h; c[k >> 2] = c[k >> 2] << 5 | (c[i >> 2] | 0) >>> 6 & 31; c[p >> 2] = 0; while (1) { e = c[r >> 2] | 0; if ((c[p >> 2] | 0) >>> 0 >= 38) break; OB(e, 255, 10) | 0; c[p >> 2] = (c[p >> 2] | 0) + 1 } OB(e, 14002838, 24) | 0; OB(c[r >> 2] | 0, d[46740 + (c[i >> 2] & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + (c[n >> 2] & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + (c[k >> 2] & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + (c[j >> 2] & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((c[i >> 2] ^ c[k >> 2] ^ c[n >> 2] ^ c[j >> 2]) & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, 57002, 16) | 0; c[p >> 2] = 0; while (1) { e = c[r >> 2] | 0; if ((c[p >> 2] | 0) >>> 0 >= 8) break; OB(e, 255, 10) | 0; c[p >> 2] = (c[p >> 2] | 0) + 1 } OB(e, 14002861, 24) | 0; OB(c[r >> 2] | 0, d[46740 + (c[n >> 2] & 63) >> 0] | 0, 8) | 0; fB(m, c[o >> 2] | 0, 1) | 0; c[q >> 2] = m; c[p >> 2] = 0; while (1) { e = ((d[c[q >> 2] >> 0] | 0) & 192) >> 2 | ((d[(c[q >> 2] | 0) + 1 >> 0] | 0) & 192) >> 4; if ((c[p >> 2] | 0) >>> 0 >= 522) break; c[s >> 2] = e | ((d[(c[q >> 2] | 0) + 2 >> 0] | 0) & 192) >> 6; OB(c[r >> 2] | 0, d[46740 + (c[s >> 2] & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[c[q >> 2] >> 0] | 0) & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[(c[q >> 2] | 0) + 1 >> 0] | 0) & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[(c[q >> 2] | 0) + 2 >> 0] | 0) & 63) >> 0] | 0, 8) | 0; c[q >> 2] = (c[q >> 2] | 0) + 3; c[p >> 2] = (c[p >> 2] | 0) + 3 } c[s >> 2] = e; OB(c[r >> 2] | 0, d[46740 + (c[s >> 2] & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[c[q >> 2] >> 0] | 0) & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[(c[q >> 2] | 0) + 1 >> 0] | 0) & 63) >> 0] | 0, 8) | 0; c[s >> 2] = ((d[(c[q >> 2] | 0) + 2 >> 0] | 0) & 192) >> 2 | ((d[(c[q >> 2] | 0) + 3 >> 0] | 0) & 192) >> 4 | ((d[(c[q >> 2] | 0) + 4 >> 0] | 0) & 192) >> 6; OB(c[r >> 2] | 0, d[46740 + (c[s >> 2] & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[(c[q >> 2] | 0) + 2 >> 0] | 0) & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[(c[q >> 2] | 0) + 3 >> 0] | 0) & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, d[46740 + ((d[(c[q >> 2] | 0) + 4 >> 0] | 0) & 63) >> 0] | 0, 8) | 0; OB(c[r >> 2] | 0, 57002, 16) | 0; l = t; return } function jB(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[e >> 2] = a; c[b >> 2] = (c[(c[e >> 2] | 0) + 4 >> 2] | 0) - (c[(c[e >> 2] | 0) + 16 >> 2] | 0); while (1) { if ((c[b >> 2] | 0) >>> 0 <= 0) break; c[d >> 2] = (c[b >> 2] | 0) >>> 0 < 10 ? c[b >> 2] | 0 : 10; OB(c[e >> 2] | 0, 255 >> 10 - (c[d >> 2] | 0), c[d >> 2] | 0) | 0; c[b >> 2] = (c[b >> 2] | 0) - (c[d >> 2] | 0) } l = f; return } function kB(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 36 | 0; g = p + 32 | 0; k = p + 28 | 0; d = p + 24 | 0; j = p + 20 | 0; m = p + 16 | 0; i = p + 12 | 0; f = p + 8 | 0; n = p + 4 | 0; h = p; c[g >> 2] = a; c[k >> 2] = b; c[i >> 2] = aB(c[k >> 2] | 0) | 0; c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (e[c[k >> 2] >> 1] | 0) >>> 0) { d = 13; break } c[f >> 2] = c[(c[(c[k >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; c[m >> 2] = lB(c[d >> 2] | 0) | 0; c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (e[(c[f >> 2] | 0) + 2 >> 1] | 0) >>> 0) break; c[n >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[j >> 2] << 2) >> 2]; c[h >> 2] = _B(c[g >> 2] | 0, c[d >> 2] | 0, c[j >> 2] | 0, 1) | 0; if (!(c[h >> 2] | 0)) { d = 6; break a } if (LB(c[h >> 2] | 0, c[m >> 2] | 0) | 0) { d = 8; break a } JB(c[h >> 2] | 0, 5e5); if (hB(c[h >> 2] | 0, c[n >> 2] | 0, c[i >> 2] | 0) | 0) { d = 10; break a } c[j >> 2] = (c[j >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((d | 0) == 6) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 8) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 10) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((d | 0) == 13) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function lB(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; if ((c[b >> 2] | 0) >>> 0 < 80) { c[d >> 2] = c[25852 + ((((c[b >> 2] | 0) >>> 0) / 16 | 0) << 2) >> 2]; d = c[d >> 2] | 0; l = e; return d | 0 } else { c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } return 0 } function mB(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = VB() | 0; do if (c[b >> 2] | 0) { d = (kB(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; b = c[b >> 2] | 0; if (d) { WB(b); c[e >> 2] = 0; break } else { c[e >> 2] = b; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function nB(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[c[g >> 2] >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function oB(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[c[g >> 2] >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function pB(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 12 | 0; h = f + 8 | 0; e = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = (c[i >> 2] | 0) + (c[h >> 2] | 0); c[e >> 2] = (d[c[g >> 2] >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 2 >> 0] | 0) & 255; c[e >> 2] = c[e >> 2] << 8 | (d[(c[g >> 2] | 0) + 3 >> 0] | 0) & 255; l = f; return c[e >> 2] | 0 } function qB(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 1 >> 0] = c[h >> 2]; l = f; return } function rB(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = c[h >> 2]; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 8; l = f; return } function sB(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[g >> 2] | 0) + 2 >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 3 >> 0] = c[h >> 2]; l = f; return } function tB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; i = f + 4 | 0; g = f; c[h >> 2] = a; c[i >> 2] = b; c[g >> 2] = d; a = AQ(c[i >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((a | 0) != (c[g >> 2] | 0)) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function uB(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; h = j + 12 | 0; k = j + 8 | 0; f = j + 4 | 0; g = j; c[h >> 2] = a; c[k >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; if (jQ(c[h >> 2] | 0, c[k >> 2] | 0, 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } k = AQ(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((k | 0) != (c[g >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function vB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; i = f + 4 | 0; g = f; c[h >> 2] = a; c[i >> 2] = b; c[g >> 2] = d; a = QP(c[i >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((a | 0) != (c[g >> 2] | 0)) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function wB(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; h = j + 12 | 0; k = j + 8 | 0; f = j + 4 | 0; g = j; c[h >> 2] = a; c[k >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; if (jQ(c[h >> 2] | 0, c[k >> 2] | 0, 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } k = QP(c[f >> 2] | 0, 1, c[g >> 2] | 0, c[h >> 2] | 0) | 0; if ((k | 0) != (c[g >> 2] | 0)) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function xB(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; g = f + 4 | 0; e = f; c[d >> 2] = a; c[g >> 2] = b; c[e >> 2] = 0; switch (c[g >> 2] | 0) { case 1: { c[e >> 2] = aC(c[d >> 2] | 0) | 0; break } case 2: { c[e >> 2] = nC(c[d >> 2] | 0) | 0; break } case 3: { c[e >> 2] = IC(c[d >> 2] | 0) | 0; break } default: {} } l = f; return c[e >> 2] | 0 } function yB(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; f = h + 16 | 0; i = h + 12 | 0; g = h + 8 | 0; d = h + 4 | 0; e = h; c[i >> 2] = a; c[g >> 2] = b; c[g >> 2] = zB(c[g >> 2] | 0, c[i >> 2] | 0) | 0; b = dQ(c[i >> 2] | 0, 50621) | 0; c[d >> 2] = b; if (!b) { c[f >> 2] = 0; i = c[f >> 2] | 0; l = h; return i | 0 } else { c[e >> 2] = xB(c[d >> 2] | 0, c[g >> 2] | 0) | 0; UP(c[d >> 2] | 0) | 0; c[f >> 2] = c[e >> 2]; i = c[f >> 2] | 0; l = h; return i | 0 } return 0 } function zB(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; e = j; c[i >> 2] = b; c[f >> 2] = d; if (c[i >> 2] | 0) { c[h >> 2] = c[i >> 2]; i = c[h >> 2] | 0; l = j; return i | 0 } c[e >> 2] = 59585; c[g >> 2] = 0; while (1) { if (!(a[(c[f >> 2] | 0) + (c[g >> 2] | 0) >> 0] | 0)) break; if ((a[(c[f >> 2] | 0) + (c[g >> 2] | 0) >> 0] | 0) == 46) c[e >> 2] = (c[f >> 2] | 0) + (c[g >> 2] | 0); c[g >> 2] = (c[g >> 2] | 0) + 1 } if (!(sQ(c[e >> 2] | 0, 46804) | 0)) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } if (!(sQ(c[e >> 2] | 0, 46810) | 0)) { c[h >> 2] = 2; i = c[h >> 2] | 0; l = j; return i | 0 } if (!(sQ(c[e >> 2] | 0, 46981) | 0)) { c[h >> 2] = 3; i = c[h >> 2] | 0; l = j; return i | 0 } else { c[h >> 2] = 2; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function AB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; e = h + 8 | 0; f = h + 4 | 0; i = h; c[e >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; switch (c[i >> 2] | 0) { case 1: { c[g >> 2] = iC(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 2: { c[g >> 2] = yC(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } case 3: { c[g >> 2] = MC(c[e >> 2] | 0, c[f >> 2] | 0) | 0; break } default: c[g >> 2] = 1 } l = h; return c[g >> 2] | 0 } function BB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; h = j + 20 | 0; k = j + 16 | 0; f = j + 12 | 0; i = j + 8 | 0; g = j + 4 | 0; e = j; c[k >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; c[i >> 2] = zB(c[i >> 2] | 0, c[k >> 2] | 0) | 0; d = dQ(c[k >> 2] | 0, 51391) | 0; c[e >> 2] = d; if (!d) { c[h >> 2] = 1; k = c[h >> 2] | 0; l = j; return k | 0 } else { c[g >> 2] = AB(c[e >> 2] | 0, c[f >> 2] | 0, c[i >> 2] | 0) | 0; UP(c[e >> 2] | 0) | 0; c[h >> 2] = c[g >> 2]; k = c[h >> 2] | 0; l = j; return k | 0 } return 0 } function CB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; g = j + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; i = j + 4 | 0; e = j; c[h >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; d = HQ(16) | 0; c[e >> 2] = d; if (!d) { c[g >> 2] = 0; i = c[g >> 2] | 0; l = j; return i | 0 } else { c[c[e >> 2] >> 2] = 0; c[(c[e >> 2] | 0) + 4 >> 2] = c[h >> 2]; c[(c[e >> 2] | 0) + 8 >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 12 >> 2] = c[i >> 2]; c[g >> 2] = c[e >> 2]; i = c[g >> 2] | 0; l = j; return i | 0 } return 0 } function DB(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; e = i + 4 | 0; h = i; c[g >> 2] = b; c[e >> 2] = d; c[h >> 2] = HQ(28) | 0; if (!(c[h >> 2] | 0)) { c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } c[c[h >> 2] >> 2] = c[e >> 2]; c[(c[h >> 2] | 0) + 4 >> 2] = c[g >> 2]; c[(c[h >> 2] | 0) + 8 >> 2] = 0; if ((c[g >> 2] | 0) >>> 0 > 0 ? (g = HQ((((c[g >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0) | 0, c[(c[h >> 2] | 0) + 8 >> 2] = g, (c[(c[h >> 2] | 0) + 8 >> 2] | 0) == 0) : 0) { IQ(c[h >> 2] | 0); c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } c[(c[h >> 2] | 0) + 12 >> 2] = 0; c[(c[h >> 2] | 0) + 16 >> 2] = 0; c[(c[h >> 2] | 0) + 20 >> 2] = 0; a[(c[h >> 2] | 0) + 24 >> 0] = 0; c[f >> 2] = c[h >> 2]; h = c[f >> 2] | 0; l = i; return h | 0 } function EB(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; if (!(c[d >> 2] | 0)) { l = e; return } while (1) { a = c[d >> 2] | 0; if (!(c[(c[d >> 2] | 0) + 12 >> 2] | 0)) break; c[b >> 2] = c[a + 12 >> 2]; c[(c[d >> 2] | 0) + 12 >> 2] = c[c[b >> 2] >> 2]; IQ(c[b >> 2] | 0) } IQ(c[a + 8 >> 2] | 0); IQ(c[d >> 2] | 0); l = e; return } function FB(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 32 | 0; g = i + 20 | 0; h = i + 16 | 0; m = i + 12 | 0; k = i + 8 | 0; j = i + 4 | 0; f = i; c[h >> 2] = a; c[m >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; e = CB(c[m >> 2] | 0, c[k >> 2] | 0, c[j >> 2] | 0) | 0; c[f >> 2] = e; if (!e) { c[g >> 2] = 0; m = c[g >> 2] | 0; l = i; return m | 0 } else { GB(c[h >> 2] | 0, c[f >> 2] | 0); c[g >> 2] = c[f >> 2]; m = c[g >> 2] | 0; l = i; return m | 0 } return 0 } function GB(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; e = g + 4 | 0; f = g; c[d >> 2] = a; c[e >> 2] = b; c[c[e >> 2] >> 2] = 0; a = c[e >> 2] | 0; if (!(c[(c[d >> 2] | 0) + 12 >> 2] | 0)) { c[(c[d >> 2] | 0) + 12 >> 2] = a; l = g; return } b = c[(c[d >> 2] | 0) + 12 >> 2] | 0; if ((c[a + 8 >> 2] | 0) >>> 0 < (c[(c[(c[d >> 2] | 0) + 12 >> 2] | 0) + 8 >> 2] | 0) >>> 0) { c[c[e >> 2] >> 2] = b; c[(c[d >> 2] | 0) + 12 >> 2] = c[e >> 2]; l = g; return } c[f >> 2] = b; while (1) { if (c[c[f >> 2] >> 2] | 0) a = (c[(c[e >> 2] | 0) + 8 >> 2] | 0) >>> 0 >= (c[(c[c[f >> 2] >> 2] | 0) + 8 >> 2] | 0) >>> 0; else a = 0; b = c[c[f >> 2] >> 2] | 0; if (!a) break; c[f >> 2] = b } c[c[e >> 2] >> 2] = b; c[c[f >> 2] >> 2] = c[e >> 2]; l = g; return } function HB(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; h = g + 12 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[h >> 2] = a; c[f >> 2] = b; c[d >> 2] = 0; c[e >> 2] = c[(c[h >> 2] | 0) + 12 >> 2]; while (1) { if (!(c[e >> 2] | 0)) break; if (!((c[f >> 2] | 0) != -1 ? (c[(c[e >> 2] | 0) + 4 >> 2] | 0) != (c[f >> 2] | 0) : 0)) c[d >> 2] = (c[d >> 2] | 0) + 1; c[e >> 2] = c[c[e >> 2] >> 2] } l = g; return c[d >> 2] | 0 } function IB(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; h = m + 8 | 0; i = m + 4 | 0; j = m; g = m + 13 | 0; k = m + 12 | 0; c[h >> 2] = b; c[i >> 2] = e; c[j >> 2] = f; if ((c[j >> 2] | 0) >>> 0 < (c[i >> 2] | 0) >>> 0) { l = m; return } a[g >> 0] = ~(255 >> (c[i >> 2] & 7)); a[k >> 0] = ~(255 << (~c[j >> 2] & 7)); c[i >> 2] = (c[i >> 2] | 0) >>> 3; c[j >> 2] = (c[j >> 2] | 0) >>> 3; b = d[g >> 0] | 0; if ((c[i >> 2] | 0) == (c[j >> 2] | 0)) { e = (c[h >> 2] | 0) + (c[i >> 2] | 0) | 0; b = b | (d[k >> 0] | 0) } else { f = c[h >> 2] | 0; g = c[i >> 2] | 0; c[i >> 2] = g + 1; g = f + g | 0; a[g >> 0] = (d[g >> 0] | 0) & b; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; f = c[h >> 2] | 0; g = c[i >> 2] | 0; c[i >> 2] = g + 1; a[f + g >> 0] = 0 } e = (c[h >> 2] | 0) + (c[j >> 2] | 0) | 0; b = d[k >> 0] | 0 } a[e >> 0] = (d[e >> 0] | 0) & b; l = m; return } function JB(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[c[e >> 2] >> 2] = c[f >> 2]; l = d; return } function KB(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 4 >> 2] | 0 } function LB(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; f = j + 16 | 0; i = j + 12 | 0; g = j + 8 | 0; e = j + 4 | 0; h = j; c[i >> 2] = b; c[g >> 2] = d; if ((c[(c[i >> 2] | 0) + 4 >> 2] | 0) == (c[g >> 2] | 0)) { c[f >> 2] = 0; i = c[f >> 2] | 0; l = j; return i | 0 } c[(c[i >> 2] | 0) + 16 >> 2] = 0; c[(c[i >> 2] | 0) + 20 >> 2] = c[(c[i >> 2] | 0) + 12 >> 2]; a[(c[i >> 2] | 0) + 24 >> 0] = 0; d = c[(c[i >> 2] | 0) + 8 >> 2] | 0; if (!(c[g >> 2] | 0)) { IQ(d); c[(c[i >> 2] | 0) + 4 >> 2] = 0; c[(c[i >> 2] | 0) + 8 >> 2] = 0; c[f >> 2] = 0; i = c[f >> 2] | 0; l = j; return i | 0 } b = JQ(d, (((c[g >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0) | 0; c[h >> 2] = b; if (!b) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = j; return i | 0 } if ((c[g >> 2] | 0) >>> 0 < (c[(c[i >> 2] | 0) + 4 >> 2] | 0) >>> 0) d = c[g >> 2] | 0; else d = c[(c[i >> 2] | 0) + 4 >> 2] | 0; c[e >> 2] = d; IB(c[h >> 2] | 0, c[e >> 2] | 0, (c[g >> 2] | 0) - 1 | 7); c[(c[i >> 2] | 0) + 4 >> 2] = c[g >> 2]; c[(c[i >> 2] | 0) + 8 >> 2] = c[h >> 2]; c[f >> 2] = 0; i = c[f >> 2] | 0; l = j; return i | 0 } function MB(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[f >> 2] = b; c[e >> 2] = d; if (!(c[(c[f >> 2] | 0) + 4 >> 2] | 0)) { l = g; return } c[(c[f >> 2] | 0) + 16 >> 2] = ((c[e >> 2] | 0) >>> 0) % ((c[(c[f >> 2] | 0) + 4 >> 2] | 0) >>> 0) | 0; a[(c[f >> 2] | 0) + 24 >> 0] = 0; d = c[(c[f >> 2] | 0) + 12 >> 2] | 0; e = c[f >> 2] | 0; while (1) { c[e + 20 >> 2] = d; if (!(c[(c[f >> 2] | 0) + 20 >> 2] | 0)) { d = 6; break } if ((c[(c[(c[f >> 2] | 0) + 20 >> 2] | 0) + 8 >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 16 >> 2] | 0) >>> 0) { d = 6; break } d = c[c[(c[f >> 2] | 0) + 20 >> 2] >> 2] | 0; e = c[f >> 2] | 0 } if ((d | 0) == 6) { l = g; return } } function NB(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; j = o + 20 | 0; k = o + 16 | 0; n = o + 12 | 0; g = o + 8 | 0; m = o + 4 | 0; h = o + 24 | 0; i = o; c[k >> 2] = b; c[n >> 2] = e; c[g >> 2] = f; if (!(c[(c[k >> 2] | 0) + 4 >> 2] | 0)) { c[c[n >> 2] >> 2] = 0; c[j >> 2] = 1; n = c[j >> 2] | 0; l = o; return n | 0 } c[i >> 2] = (c[(c[k >> 2] | 0) + 8 >> 2] | 0) + (((c[(c[k >> 2] | 0) + 16 >> 2] | 0) >>> 0) / 8 | 0); a[h >> 0] = 128 >> (c[(c[k >> 2] | 0) + 16 >> 2] & 7); c[m >> 2] = 0; while (1) { f = c[m >> 2] | 0; if ((c[g >> 2] | 0) >>> 0 <= 0) break; c[m >> 2] = f << 1 | (d[c[i >> 2] >> 0] & d[h >> 0] | 0) != 0; a[h >> 0] = d[h >> 0] >> 1; e = (c[k >> 2] | 0) + 16 | 0; c[e >> 2] = (c[e >> 2] | 0) + 1; if ((c[(c[k >> 2] | 0) + 16 >> 2] | 0) >>> 0 < (c[(c[k >> 2] | 0) + 4 >> 2] | 0) >>> 0) { if (!(d[h >> 0] | 0)) { c[i >> 2] = (c[i >> 2] | 0) + 1; a[h >> 0] = -128 } } else { c[i >> 2] = c[(c[k >> 2] | 0) + 8 >> 2]; a[h >> 0] = -128; c[(c[k >> 2] | 0) + 16 >> 2] = 0; a[(c[k >> 2] | 0) + 24 >> 0] = 1 } c[g >> 2] = (c[g >> 2] | 0) - 1 } c[c[n >> 2] >> 2] = f; c[j >> 2] = a[(c[k >> 2] | 0) + 24 >> 0]; n = c[j >> 2] | 0; l = o; return n | 0 } function OB(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 16 | 0; k = n + 12 | 0; m = n + 8 | 0; g = n + 4 | 0; h = n + 20 | 0; i = n; c[k >> 2] = b; c[m >> 2] = e; c[g >> 2] = f; if (!(c[(c[k >> 2] | 0) + 4 >> 2] | 0)) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } c[i >> 2] = (c[(c[k >> 2] | 0) + 8 >> 2] | 0) + (((c[(c[k >> 2] | 0) + 16 >> 2] | 0) >>> 0) / 8 | 0); a[h >> 0] = 128 >> (c[(c[k >> 2] | 0) + 16 >> 2] & 7); while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) break; c[g >> 2] = (c[g >> 2] | 0) - 1; f = d[h >> 0] | 0; if ((c[m >> 2] | 0) >>> (c[g >> 2] | 0) & 1 | 0) { e = c[i >> 2] | 0; b = e; f = d[e >> 0] | f } else { e = c[i >> 2] | 0; b = e; f = d[e >> 0] & ~f } a[b >> 0] = f; a[h >> 0] = d[h >> 0] >> 1; e = (c[k >> 2] | 0) + 16 | 0; c[e >> 2] = (c[e >> 2] | 0) + 1; if ((c[(c[k >> 2] | 0) + 16 >> 2] | 0) >>> 0 >= (c[(c[k >> 2] | 0) + 4 >> 2] | 0) >>> 0) { c[i >> 2] = c[(c[k >> 2] | 0) + 8 >> 2]; a[h >> 0] = -128; c[(c[k >> 2] | 0) + 16 >> 2] = 0; a[(c[k >> 2] | 0) + 24 >> 0] = 1; continue } if (d[h >> 0] | 0) continue; c[i >> 2] = (c[i >> 2] | 0) + 1; a[h >> 0] = -128 } c[j >> 2] = a[(c[k >> 2] | 0) + 24 >> 0]; m = c[j >> 2] | 0; l = n; return m | 0 } function PB(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 32 | 0; j = p + 24 | 0; o = p + 20 | 0; i = p + 16 | 0; h = p + 12 | 0; f = p + 29 | 0; k = p + 28 | 0; m = p + 8 | 0; g = p + 4 | 0; n = p; c[o >> 2] = b; c[i >> 2] = e; if ((c[i >> 2] | 0) >>> 0 >= (c[(c[o >> 2] | 0) + 4 >> 2] | 0) >>> 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = p; return o | 0 } if (!(c[i >> 2] | 0)) { c[j >> 2] = 0; o = c[j >> 2] | 0; l = p; return o | 0 } c[n >> 2] = HQ((((c[(c[o >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0) | 0; if (!(c[n >> 2] | 0)) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = p; return o | 0 } TQ(c[n >> 2] | 0, 0, (((c[(c[o >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0 | 0) | 0; c[m >> 2] = (c[(c[o >> 2] | 0) + 8 >> 2] | 0) + ((c[i >> 2] | 0) >>> 3); a[k >> 0] = 128 >> (c[i >> 2] & 7); c[g >> 2] = c[n >> 2]; a[f >> 0] = -128; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[(c[o >> 2] | 0) + 4 >> 2] | 0) >>> 0) break; if ((d[c[m >> 2] >> 0] | 0) & (d[k >> 0] | 0) | 0) { b = c[g >> 2] | 0; a[b >> 0] = d[b >> 0] | 0 | (d[f >> 0] | 0) } a[f >> 0] = (d[f >> 0] | 0) >> 1; if (!(d[f >> 0] | 0)) { c[g >> 2] = (c[g >> 2] | 0) + 1; a[f >> 0] = -128 } c[i >> 2] = (c[i >> 2] | 0) + 1; if ((c[i >> 2] | 0) >>> 0 < (c[(c[o >> 2] | 0) + 4 >> 2] | 0) >>> 0) { a[k >> 0] = (d[k >> 0] | 0) >> 1; if (!(d[k >> 0] | 0)) { c[m >> 2] = (c[m >> 2] | 0) + 1; a[k >> 0] = -128 } } else { c[i >> 2] = 0; c[m >> 2] = c[(c[o >> 2] | 0) + 8 >> 2]; a[k >> 0] = -128 } c[h >> 2] = (c[h >> 2] | 0) + 1 } IQ(c[(c[o >> 2] | 0) + 8 >> 2] | 0); c[(c[o >> 2] | 0) + 8 >> 2] = c[n >> 2]; QB(c[o >> 2] | 0, (c[(c[o >> 2] | 0) + 4 >> 2] | 0) - (c[i >> 2] | 0) | 0); c[j >> 2] = 0; o = c[j >> 2] | 0; l = p; return o | 0 } function QB(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; e = h + 8 | 0; d = h + 4 | 0; f = h; c[g >> 2] = a; c[e >> 2] = b; c[d >> 2] = c[(c[g >> 2] | 0) + 12 >> 2]; c[(c[g >> 2] | 0) + 12 >> 2] = 0; while (1) { if (!(c[d >> 2] | 0)) break; a: do if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 4 >> 2] | 0) >>> 0) { a = (c[d >> 2] | 0) + 8 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[e >> 2] | 0); while (1) { if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 4 >> 2] | 0) >>> 0) break a; a = (c[d >> 2] | 0) + 8 | 0; c[a >> 2] = (c[a >> 2] | 0) - (c[(c[g >> 2] | 0) + 4 >> 2] | 0) } } while (0); c[f >> 2] = c[d >> 2]; c[d >> 2] = c[c[d >> 2] >> 2]; GB(c[g >> 2] | 0, c[f >> 2] | 0) } l = h; return } function RB() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(8) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { c[c[a >> 2] >> 2] = 0; c[(c[a >> 2] | 0) + 4 >> 2] = 0; c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function SB(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = e; return } c[d >> 2] = 0; while (1) { a = c[(c[b >> 2] | 0) + 4 >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= (c[c[b >> 2] >> 2] | 0) >>> 0) break; EB(c[a + (c[d >> 2] << 2) >> 2] | 0); c[d >> 2] = (c[d >> 2] | 0) + 1 } IQ(a); IQ(c[b >> 2] | 0); l = e; return } function TB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; e = k + 16 | 0; j = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; i = k; c[e >> 2] = a; c[j >> 2] = b; c[f >> 2] = d; a = c[(c[e >> 2] | 0) + 4 >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 < (c[c[e >> 2] >> 2] | 0) >>> 0) { EB(c[a + (c[f >> 2] << 2) >> 2] | 0); c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] = c[j >> 2]; c[h >> 2] = 0; j = c[h >> 2] | 0; l = k; return j | 0 } c[i >> 2] = JQ(a, (c[f >> 2] | 0) + 1 << 2) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = k; return j | 0 } c[g >> 2] = c[c[e >> 2] >> 2]; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) break; c[(c[i >> 2] | 0) + (c[g >> 2] << 2) >> 2] = 0; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[(c[i >> 2] | 0) + (c[f >> 2] << 2) >> 2] = c[j >> 2]; c[(c[e >> 2] | 0) + 4 >> 2] = c[i >> 2]; c[c[e >> 2] >> 2] = (c[f >> 2] | 0) + 1; c[h >> 2] = 0; j = c[h >> 2] | 0; l = k; return j | 0 } function UB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; f = j + 12 | 0; g = j + 8 | 0; e = j + 4 | 0; h = j; c[f >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; if ((c[g >> 2] | 0) >>> 0 < (c[c[f >> 2] >> 2] | 0) >>> 0 ? c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2] | 0 : 0) { c[i >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } if (!(c[e >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } c[h >> 2] = DB(0, 0) | 0; if (!(c[h >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } g = (TB(c[f >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0) | 0) != 0; d = c[h >> 2] | 0; if (g) { EB(d); c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[i >> 2] = d; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function VB() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(16) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { c[c[a >> 2] >> 2] = 0; c[(c[a >> 2] | 0) + 4 >> 2] = 0; c[(c[a >> 2] | 0) + 8 >> 2] = 0; c[(c[a >> 2] | 0) + 12 >> 2] = 0; c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function WB(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; if (!(c[d >> 2] | 0)) { l = e; return } c[b >> 2] = 0; while (1) { a = c[d >> 2] | 0; if ((c[b >> 2] | 0) >>> 0 >= (c[c[d >> 2] >> 2] | 0) >>> 0) break; SB(c[(c[a + 4 >> 2] | 0) + (c[b >> 2] << 2) >> 2] | 0); c[b >> 2] = (c[b >> 2] | 0) + 1 } IQ(c[a + 12 >> 2] | 0); IQ(c[(c[d >> 2] | 0) + 4 >> 2] | 0); IQ(c[d >> 2] | 0); l = e; return } function XB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; e = j + 4 | 0; g = j; c[h >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; if ((c[f >> 2] | 0) >>> 0 < (c[c[h >> 2] >> 2] | 0) >>> 0 ? c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0 : 0) { c[i >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 2) >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } if (!(c[e >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } c[g >> 2] = RB() | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } h = (YB(c[h >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0) | 0) != 0; d = c[g >> 2] | 0; if (h) { SB(d); c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[i >> 2] = d; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function YB(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 20 | 0; h = k + 16 | 0; f = k + 12 | 0; e = k + 8 | 0; g = k + 4 | 0; j = k; c[h >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; d = c[(c[h >> 2] | 0) + 4 >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < (c[c[h >> 2] >> 2] | 0) >>> 0) { SB(c[d + (c[e >> 2] << 2) >> 2] | 0); c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[e >> 2] << 2) >> 2] = c[f >> 2]; ZB(c[h >> 2] | 0); c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } c[j >> 2] = JQ(d, (c[e >> 2] | 0) + 1 << 2) | 0; if (!(c[j >> 2] | 0)) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } c[g >> 2] = c[c[h >> 2] >> 2]; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[e >> 2] | 0) >>> 0) break; c[(c[j >> 2] | 0) + (c[g >> 2] << 2) >> 2] = 0; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[(c[j >> 2] | 0) + (c[e >> 2] << 2) >> 2] = c[f >> 2]; c[(c[h >> 2] | 0) + 4 >> 2] = c[j >> 2]; c[c[h >> 2] >> 2] = (c[e >> 2] | 0) + 1; ZB(c[h >> 2] | 0); c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } function ZB(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; while (1) { if ((c[c[b >> 2] >> 2] | 0) >>> 0 <= 0) { a = 5; break } if (c[(c[(c[b >> 2] | 0) + 4 >> 2] | 0) + ((c[c[b >> 2] >> 2] | 0) - 1 << 2) >> 2] | 0) { a = 5; break } a = c[b >> 2] | 0; c[a >> 2] = (c[a >> 2] | 0) - 1 } if ((a | 0) == 5) { l = d; return } } function _B(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; k = l; l = l + 32 | 0; i = k + 24 | 0; n = k + 20 | 0; m = k + 16 | 0; h = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; j = k; c[n >> 2] = a; c[m >> 2] = b; c[h >> 2] = d; c[f >> 2] = e; c[g >> 2] = XB(c[n >> 2] | 0, c[m >> 2] | 0, c[f >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = 0; n = c[i >> 2] | 0; l = k; return n | 0 } c[j >> 2] = UB(c[g >> 2] | 0, c[h >> 2] | 0, c[f >> 2] | 0) | 0; if (!(c[j >> 2] | 0)) { c[i >> 2] = 0; n = c[i >> 2] | 0; l = k; return n | 0 } else { c[i >> 2] = c[j >> 2]; n = c[i >> 2] | 0; l = k; return n | 0 } return 0 } function $B(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; g = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; i = j; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; c[i >> 2] = JQ(c[(c[g >> 2] | 0) + 12 >> 2] | 0, (c[(c[g >> 2] | 0) + 8 >> 2] | 0) + (c[f >> 2] | 0) | 0) | 0; if (!(c[i >> 2] | 0)) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } else { QQ((c[i >> 2] | 0) + (c[(c[g >> 2] | 0) + 8 >> 2] | 0) | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; a = (c[g >> 2] | 0) + 8 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[f >> 2] | 0); c[(c[g >> 2] | 0) + 12 >> 2] = c[i >> 2]; c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function aC(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = VB() | 0; do if (c[d >> 2] | 0) { b = (bC(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { WB(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function bC(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, m = 0; m = l; l = l + 48 | 0; j = m + 24 | 0; i = m + 20 | 0; e = m + 16 | 0; g = m + 12 | 0; k = m + 8 | 0; h = m + 4 | 0; f = m; d = m + 32 | 0; c[i >> 2] = a; c[e >> 2] = b; do if (!(tB(c[i >> 2] | 0, d, 4) | 0)) { c[g >> 2] = pB(d, 0) | 0; if ((c[g >> 2] | 0) != 1346521428) { c[j >> 2] = 1; break } if (tB(c[i >> 2] | 0, d + 4 | 0, 4) | 0) { c[j >> 2] = 1; break } c[k >> 2] = pB(d, 4) | 0; c[h >> 2] = cC(0, d, 8) | 0; if (dC(c[i >> 2] | 0, c[e >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; break } c[f >> 2] = 0; while (1) { if (tB(c[i >> 2] | 0, d, 8) | 0) { d = 11; break } c[g >> 2] = pB(d, 0) | 0; c[k >> 2] = pB(d, 4) | 0; c[h >> 2] = cC(0, d, 8) | 0; if ((c[g >> 2] | 0) == 1162757152) { d = 13; break } if ((c[g >> 2] | 0) == 1413830740) if (fC(c[i >> 2] | 0, c[e >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { d = 18; break } else continue; if ((c[g >> 2] | 0) == 1414676811) { c[f >> 2] = gC(c[i >> 2] | 0, c[e >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { d = 21; break } else continue } if ((c[g >> 2] | 0) != 1145132097) if (eC(c[i >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { d = 28; break } else continue; if (!(c[f >> 2] | 0)) { d = 24; break } if (hC(c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { d = 26; break } } if ((d | 0) == 11) { c[j >> 2] = 1; break } else if ((d | 0) == 13) if (eC(c[i >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; break } else { c[j >> 2] = 0; break } else if ((d | 0) == 18) { c[j >> 2] = 1; break } else if ((d | 0) == 21) { c[j >> 2] = 1; break } else if ((d | 0) == 24) { c[j >> 2] = 1; break } else if ((d | 0) == 26) { c[j >> 2] = 1; break } else if ((d | 0) == 28) { c[j >> 2] = 1; break } } else c[j >> 2] = 0; while (0); l = m; return c[j >> 2] | 0 } function cC(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; k = o + 28 | 0; f = o + 24 | 0; j = o + 20 | 0; g = o + 16 | 0; h = o + 12 | 0; n = o + 8 | 0; i = o + 4 | 0; m = o; c[k >> 2] = a; c[f >> 2] = b; c[j >> 2] = e; if (!(c[13646] | 0)) { c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 256) break; c[i >> 2] = c[g >> 2] << 24; c[h >> 2] = 0; while (1) { b = c[i >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 >= 8) break; e = c[i >> 2] << 1; if (b & -2147483648 | 0) c[i >> 2] = e ^ 517762881; else c[i >> 2] = e; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[54588 + (c[g >> 2] << 2) >> 2] = b; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[13646] = 1 } c[m >> 2] = c[f >> 2]; while (1) { b = c[k >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 <= 0) break; i = c[m >> 2] | 0; c[m >> 2] = i + 1; c[n >> 2] = b >>> 24 ^ (d[i >> 0] | 0); c[k >> 2] = c[k >> 2] << 8 ^ c[54588 + ((c[n >> 2] & 255) << 2) >> 2]; c[j >> 2] = (c[j >> 2] | 0) - 1 } l = o; return b | 0 } function dC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 48 | 0; k = n; i = n + 24 | 0; h = n + 20 | 0; j = n + 12 | 0; g = n + 8 | 0; f = n + 32 | 0; m = n + 4 | 0; c[h >> 2] = a; c[n + 16 >> 2] = b; c[j >> 2] = d; c[g >> 2] = e; do if ((c[j >> 2] | 0) >>> 0 >= 8) { if (tB(c[h >> 2] | 0, f, 8) | 0) { c[i >> 2] = 1; break } c[g >> 2] = cC(c[g >> 2] | 0, f, 8) | 0; c[m >> 2] = pB(f, 0) | 0; if (c[m >> 2] | 0) { j = c[7422] | 0; c[k >> 2] = c[m >> 2]; kQ(j, 46815, k) | 0; c[i >> 2] = 1; break } if (eC(c[h >> 2] | 0, (c[j >> 2] | 0) - 8 | 0, c[g >> 2] | 0) | 0) { c[i >> 2] = 1; break } else { c[i >> 2] = 0; break } } else c[i >> 2] = 1; while (0); l = n; return c[i >> 2] | 0 } function eC(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 288 | 0; k = n; i = n + 20 | 0; h = n + 16 | 0; j = n + 12 | 0; g = n + 8 | 0; f = n + 4 | 0; e = n + 24 | 0; c[h >> 2] = a; c[j >> 2] = b; c[g >> 2] = d; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; c[f >> 2] = (c[j >> 2] | 0) >>> 0 < 256 ? c[j >> 2] | 0 : 256; if (tB(c[h >> 2] | 0, e, c[f >> 2] | 0) | 0) { m = 4; break } c[g >> 2] = cC(c[g >> 2] | 0, e, c[f >> 2] | 0) | 0; c[j >> 2] = (c[j >> 2] | 0) - (c[f >> 2] | 0) } if ((m | 0) == 4) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } if (tB(c[h >> 2] | 0, e, 4) | 0) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } m = pB(e, 0) | 0; if ((m | 0) != (c[g >> 2] | 0)) { kQ(c[7422] | 0, 46850, k) | 0; c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } else { c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } return 0 } function fC(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 48 | 0; r = t + 36 | 0; m = t + 32 | 0; o = t + 28 | 0; s = t + 24 | 0; j = t + 20 | 0; n = t + 16 | 0; p = t + 12 | 0; q = t + 8 | 0; k = t + 4 | 0; h = t; i = t + 40 | 0; c[m >> 2] = b; c[o >> 2] = e; c[s >> 2] = f; c[j >> 2] = g; if (!(c[s >> 2] | 0)) { c[r >> 2] = eC(c[m >> 2] | 0, c[s >> 2] | 0, c[j >> 2] | 0) | 0; s = c[r >> 2] | 0; l = t; return s | 0 } c[h >> 2] = HQ(c[s >> 2] | 0) | 0; if (!(c[h >> 2] | 0)) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } if (tB(c[m >> 2] | 0, c[h >> 2] | 0, c[s >> 2] | 0) | 0) { IQ(c[h >> 2] | 0); c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } c[j >> 2] = cC(c[j >> 2] | 0, c[h >> 2] | 0, c[s >> 2] | 0) | 0; c[n >> 2] = 0; c[p >> 2] = c[s >> 2]; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (c[p >> 2] | 0) >>> 0) break; if ((d[(c[h >> 2] | 0) + (c[n >> 2] | 0) >> 0] | 0 | 0) != 13 ? (d[(c[h >> 2] | 0) + (c[n >> 2] | 0) >> 0] | 0 | 0) != 10 : 0) { if (d[(c[h >> 2] | 0) + (c[n >> 2] | 0) >> 0] | 0 | 0) break; c[n >> 2] = (c[n >> 2] | 0) + 1; continue } c[n >> 2] = (c[n >> 2] | 0) + 1 } while (1) { if ((c[p >> 2] | 0) >>> 0 <= (c[n >> 2] | 0) >>> 0) break; if ((d[(c[h >> 2] | 0) + ((c[p >> 2] | 0) - 1) >> 0] | 0 | 0) != 13 ? (d[(c[h >> 2] | 0) + ((c[p >> 2] | 0) - 1) >> 0] | 0 | 0) != 10 : 0) { if (d[(c[h >> 2] | 0) + ((c[p >> 2] | 0) - 1) >> 0] | 0 | 0) break; c[p >> 2] = (c[p >> 2] | 0) + 1; continue } c[p >> 2] = (c[p >> 2] | 0) - 1 } if ((c[n >> 2] | 0) == (c[p >> 2] | 0)) { c[r >> 2] = eC(c[m >> 2] | 0, 0, c[j >> 2] | 0) | 0; s = c[r >> 2] | 0; l = t; return s | 0 } c[q >> 2] = c[n >> 2]; c[k >> 2] = c[n >> 2]; while (1) { if ((c[q >> 2] | 0) >>> 0 >= (c[p >> 2] | 0) >>> 0) break; do if ((d[(c[h >> 2] | 0) + (c[q >> 2] | 0) >> 0] | 0 | 0) == 13) { if (((c[q >> 2] | 0) + 1 | 0) >>> 0 < (c[p >> 2] | 0) >>> 0 ? (d[(c[h >> 2] | 0) + ((c[q >> 2] | 0) + 1) >> 0] | 0 | 0) == 10 : 0) { c[q >> 2] = (c[q >> 2] | 0) + 1; break } f = c[h >> 2] | 0; s = c[k >> 2] | 0; c[k >> 2] = s + 1; a[f + s >> 0] = 10 } else { e = a[(c[h >> 2] | 0) + (c[q >> 2] | 0) >> 0] | 0; f = c[h >> 2] | 0; s = c[k >> 2] | 0; c[k >> 2] = s + 1; a[f + s >> 0] = e } while (0); c[q >> 2] = (c[q >> 2] | 0) + 1 } c[p >> 2] = c[k >> 2]; if ((c[(c[o >> 2] | 0) + 8 >> 2] | 0) >>> 0 > 0 ? (a[i >> 0] = 10, $B(c[o >> 2] | 0, i, 1) | 0) : 0) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } s = ($B(c[o >> 2] | 0, (c[h >> 2] | 0) + (c[n >> 2] | 0) | 0, (c[p >> 2] | 0) - (c[n >> 2] | 0) | 0) | 0) != 0; IQ(c[h >> 2] | 0); if (s) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } if (eC(c[m >> 2] | 0, 0, c[j >> 2] | 0) | 0) { c[r >> 2] = 1; s = c[r >> 2] | 0; l = t; return s | 0 } else { c[r >> 2] = 0; s = c[r >> 2] | 0; l = t; return s | 0 } return 0 } function gC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 64 | 0; o = r + 36 | 0; j = r + 32 | 0; m = r + 28 | 0; p = r + 24 | 0; i = r + 20 | 0; f = r + 40 | 0; g = r + 16 | 0; k = r + 12 | 0; n = r + 8 | 0; h = r + 4 | 0; q = r; c[j >> 2] = a; c[m >> 2] = b; c[p >> 2] = d; c[i >> 2] = e; if ((c[p >> 2] | 0) >>> 0 < 20) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } if (tB(c[j >> 2] | 0, f, 20) | 0) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } c[i >> 2] = cC(c[i >> 2] | 0, f, 20) | 0; c[p >> 2] = (c[p >> 2] | 0) - 20; c[g >> 2] = pB(f, 0) | 0; c[k >> 2] = pB(f, 4) | 0; c[n >> 2] = pB(f, 8) | 0; c[h >> 2] = pB(f, 12) | 0; c[q >> 2] = _B(c[m >> 2] | 0, c[g >> 2] | 0, c[k >> 2] | 0, 1) | 0; if (!(c[q >> 2] | 0)) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } if (LB(c[q >> 2] | 0, c[n >> 2] | 0) | 0) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } JB(c[q >> 2] | 0, c[h >> 2] | 0); if (eC(c[j >> 2] | 0, c[p >> 2] | 0, c[i >> 2] | 0) | 0) { c[o >> 2] = 0; q = c[o >> 2] | 0; l = r; return q | 0 } else { c[o >> 2] = c[q >> 2]; q = c[o >> 2] | 0; l = r; return q | 0 } return 0 } function hC(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, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 24 | 0; i = n + 20 | 0; m = n + 12 | 0; k = n + 8 | 0; h = n + 4 | 0; g = n; c[i >> 2] = a; c[n + 16 >> 2] = b; c[m >> 2] = d; c[k >> 2] = e; c[h >> 2] = f; c[g >> 2] = (((c[(c[m >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0; if ((c[g >> 2] | 0) >>> 0 < (c[k >> 2] | 0) >>> 0) c[g >> 2] = c[k >> 2]; if (tB(c[i >> 2] | 0, c[(c[m >> 2] | 0) + 8 >> 2] | 0, c[g >> 2] | 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } c[h >> 2] = cC(c[h >> 2] | 0, c[(c[m >> 2] | 0) + 8 >> 2] | 0, c[g >> 2] | 0) | 0; if (eC(c[i >> 2] | 0, (c[k >> 2] | 0) - (c[g >> 2] | 0) | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function iC(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, m = 0; m = l; l = l + 32 | 0; i = m + 24 | 0; f = m + 20 | 0; h = m + 16 | 0; d = m + 12 | 0; g = m + 8 | 0; e = m + 4 | 0; j = m; c[f >> 2] = a; c[h >> 2] = b; if (jC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } if (kC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[c[h >> 2] >> 2] | 0) >>> 0) break; c[e >> 2] = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2]; b: do if (c[e >> 2] | 0) { c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) break b; c[j >> 2] = c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2]; if (c[j >> 2] | 0 ? lC(c[f >> 2] | 0, c[j >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0) | 0 : 0) { k = 12; break a } c[g >> 2] = (c[g >> 2] | 0) + 1 } } while (0); c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((k | 0) == 12) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } if (mC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function jC(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 48 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e + 16 | 0; c[g >> 2] = a; c[e >> 2] = b; sB(f, 0, 1346521428); sB(f, 4, 8); sB(f, 8, 0); sB(f, 12, 0); sB(f, 16, cC(0, f, 16) | 0); if (vB(c[g >> 2] | 0, f, 20) | 0) { c[d >> 2] = 1; g = c[d >> 2] | 0; l = e; return g | 0 } else { c[d >> 2] = 0; g = c[d >> 2] | 0; l = e; return g | 0 } return 0 } function kC(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; p = l; l = l + 48 | 0; o = p + 28 | 0; k = p + 24 | 0; g = p + 20 | 0; f = p + 16 | 0; n = p + 12 | 0; j = p + 8 | 0; h = p + 4 | 0; i = p; m = p + 32 | 0; c[k >> 2] = b; c[g >> 2] = e; if (!(c[(c[g >> 2] | 0) + 8 >> 2] | 0)) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } c[i >> 2] = HQ((c[(c[g >> 2] | 0) + 8 >> 2] | 0) + 2 | 0) | 0; if (!(c[i >> 2] | 0)) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } c[h >> 2] = c[(c[g >> 2] | 0) + 12 >> 2]; a[c[i >> 2] >> 0] = 10; c[f >> 2] = 0; c[n >> 2] = 1; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[(c[g >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; if ((d[(c[h >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0 | 0) != 13 ? (d[(c[h >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0 | 0) != 10 : 0) { if (d[(c[h >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0 | 0) break; c[f >> 2] = (c[f >> 2] | 0) + 1; continue } c[f >> 2] = (c[f >> 2] | 0) + 1 } while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[(c[g >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; do if ((d[(c[h >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0 | 0) == 13) { if (((c[f >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 8 >> 2] | 0) >>> 0 ? (d[(c[h >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] | 0 | 0) == 10 : 0) { c[f >> 2] = (c[f >> 2] | 0) + 1; break } b = c[i >> 2] | 0; e = c[n >> 2] | 0; c[n >> 2] = e + 1; a[b + e >> 0] = 10 } else { q = a[(c[h >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0; b = c[i >> 2] | 0; e = c[n >> 2] | 0; c[n >> 2] = e + 1; a[b + e >> 0] = q } while (0); c[f >> 2] = (c[f >> 2] | 0) + 1 } while (1) { if ((c[n >> 2] | 0) >>> 0 <= 1) break; if ((d[(c[i >> 2] | 0) + ((c[n >> 2] | 0) - 1) >> 0] | 0 | 0) != 10 ? d[(c[i >> 2] | 0) + ((c[n >> 2] | 0) - 1) >> 0] | 0 | 0 : 0) break; c[n >> 2] = (c[n >> 2] | 0) - 1 } b = c[i >> 2] | 0; if ((c[n >> 2] | 0) == 1) { IQ(b); c[o >> 2] = 0; q = c[o >> 2] | 0; l = p; return q | 0 } q = c[n >> 2] | 0; c[n >> 2] = q + 1; a[b + q >> 0] = 10; sB(m, 0, 1413830740); sB(m, 4, c[n >> 2] | 0); c[j >> 2] = cC(0, m, 8) | 0; if (vB(c[k >> 2] | 0, m, 8) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = p; return q | 0 } c[j >> 2] = cC(c[j >> 2] | 0, c[i >> 2] | 0, c[n >> 2] | 0) | 0; if (vB(c[k >> 2] | 0, c[i >> 2] | 0, c[n >> 2] | 0) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = p; return q | 0 } sB(m, 0, c[j >> 2] | 0); if (vB(c[k >> 2] | 0, m, 4) | 0) { c[o >> 2] = 1; q = c[o >> 2] | 0; l = p; return q | 0 } else { c[o >> 2] = 0; q = c[o >> 2] | 0; l = p; return q | 0 } return 0 } function lC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; m = l; l = l + 64 | 0; j = m + 24 | 0; i = m + 20 | 0; k = m + 16 | 0; o = m + 12 | 0; n = m + 8 | 0; g = m + 4 | 0; f = m + 32 | 0; h = m; c[i >> 2] = a; c[k >> 2] = b; c[o >> 2] = d; c[n >> 2] = e; sB(f, 0, 1414676811); sB(f, 4, 20); sB(f, 8, c[o >> 2] | 0); sB(f, 12, c[n >> 2] | 0); sB(f, 16, c[(c[k >> 2] | 0) + 4 >> 2] | 0); sB(f, 20, c[c[k >> 2] >> 2] | 0); sB(f, 24, 0); sB(f, 28, cC(0, f, 28) | 0); if (vB(c[i >> 2] | 0, f, 32) | 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = m; return o | 0 } if (!(c[(c[k >> 2] | 0) + 4 >> 2] | 0)) { c[j >> 2] = 0; o = c[j >> 2] | 0; l = m; return o | 0 } c[g >> 2] = (((c[(c[k >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0; sB(f, 0, 1145132097); sB(f, 4, c[g >> 2] | 0); c[h >> 2] = cC(0, f, 8) | 0; if (vB(c[i >> 2] | 0, f, 8) | 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = m; return o | 0 } c[h >> 2] = cC(c[h >> 2] | 0, c[(c[k >> 2] | 0) + 8 >> 2] | 0, c[g >> 2] | 0) | 0; if (vB(c[i >> 2] | 0, c[(c[k >> 2] | 0) + 8 >> 2] | 0, c[g >> 2] | 0) | 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = m; return o | 0 } sB(f, 0, c[h >> 2] | 0); if (vB(c[i >> 2] | 0, f, 4) | 0) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = m; return o | 0 } else { c[j >> 2] = 0; o = c[j >> 2] | 0; l = m; return o | 0 } return 0 } function mC(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 32 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e + 16 | 0; c[g >> 2] = a; c[e >> 2] = b; sB(f, 0, 1162757152); sB(f, 4, 0); sB(f, 8, cC(0, f, 8) | 0); if (vB(c[g >> 2] | 0, f, 12) | 0) { c[d >> 2] = 1; g = c[d >> 2] | 0; l = e; return g | 0 } else { c[d >> 2] = 0; g = c[d >> 2] | 0; l = e; return g | 0 } return 0 } function nC(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; a = VB() | 0; c[d >> 2] = a; do if (a) { b = (oC(c[b >> 2] | 0, c[d >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (b) { WB(a); c[e >> 2] = 0; break } else { c[e >> 2] = a; break } } else c[e >> 2] = 0; while (0); l = f; return c[e >> 2] | 0 } function oC(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, m = 0; m = l; l = l + 48 | 0; j = m + 24 | 0; i = m + 20 | 0; e = m + 16 | 0; g = m + 12 | 0; k = m + 8 | 0; h = m + 4 | 0; f = m; d = m + 32 | 0; c[i >> 2] = a; c[e >> 2] = b; c[h >> 2] = 0; do if (!(pC(c[i >> 2] | 0, d, 4, h) | 0)) { c[g >> 2] = pB(d, 0) | 0; if ((c[g >> 2] | 0) != 1347569952) { c[j >> 2] = 1; break } if (pC(c[i >> 2] | 0, d + 4 | 0, 4, h) | 0) { c[j >> 2] = 1; break } c[k >> 2] = pB(d, 4) | 0; if (qC(c[i >> 2] | 0, c[e >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; break } c[f >> 2] = 0; a: while (1) { c[h >> 2] = 0; if (pC(c[i >> 2] | 0, d, 8, h) | 0) { a = 11; break } c[g >> 2] = pB(d, 0) | 0; c[k >> 2] = pB(d, 4) | 0; a = c[g >> 2] | 0; b: do if ((a | 0) < 1179998810) { if ((a | 0) < 1145132097) { switch (a | 0) { case 1111706699: break; default: break b } if (wC(c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { a = 25; break a } else continue a } if ((a | 0) >= 1162757152) switch (a | 0) { case 1162757152: { a = 13; break a } default: break b } switch (a | 0) { case 1145132097: break; default: break b } if (uC(c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { a = 21; break a } else continue a } else { if ((a | 0) < 1413830740) { switch (a | 0) { case 1179998810: break; default: break b } if (vC(c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { a = 23; break a } else continue a } if ((a | 0) < 1414676811) { switch (a | 0) { case 1413830740: break; default: break b } if (sC(c[i >> 2] | 0, c[e >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { a = 17; break a } else continue a } else { switch (a | 0) { case 1414676811: break; default: break b } if (tC(c[i >> 2] | 0, c[e >> 2] | 0, f, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { a = 19; break a } else continue a } } while (0); if (rC(c[i >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { a = 27; break } } if ((a | 0) == 11) { c[j >> 2] = 1; break } else if ((a | 0) == 13) if (rC(c[i >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; break } else { c[j >> 2] = 0; break } else if ((a | 0) == 17) { c[j >> 2] = 1; break } else if ((a | 0) == 19) { c[j >> 2] = 1; break } else if ((a | 0) == 21) { c[j >> 2] = 1; break } else if ((a | 0) == 23) { c[j >> 2] = 1; break } else if ((a | 0) == 25) { c[j >> 2] = 1; break } else if ((a | 0) == 27) { c[j >> 2] = 1; break } } else c[j >> 2] = 0; while (0); l = m; return c[j >> 2] | 0 } function pC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; k = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[k >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if (tB(c[k >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } if (c[h >> 2] | 0) { k = xC(c[c[h >> 2] >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[c[h >> 2] >> 2] = k } c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } function qC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; k = n; i = n + 24 | 0; h = n + 20 | 0; j = n + 12 | 0; g = n + 8 | 0; f = n + 28 | 0; m = n + 4 | 0; c[h >> 2] = a; c[n + 16 >> 2] = b; c[j >> 2] = d; c[g >> 2] = e; do if ((c[j >> 2] | 0) >>> 0 >= 4) { if (pC(c[h >> 2] | 0, f, 4, g) | 0) { c[i >> 2] = 1; break } c[m >> 2] = nB(f, 0) | 0; if (c[m >> 2] | 0) { j = c[7422] | 0; c[k >> 2] = c[m >> 2]; kQ(j, 46866, k) | 0; c[i >> 2] = 1; break } if (rC(c[h >> 2] | 0, (c[j >> 2] | 0) - 4 | 0, c[g >> 2] | 0) | 0) { c[i >> 2] = 1; break } else { c[i >> 2] = 0; break } } else c[i >> 2] = 1; while (0); l = n; return c[i >> 2] | 0 } function rC(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 288 | 0; k = n; i = n + 20 | 0; h = n + 16 | 0; j = n + 12 | 0; g = n + 8 | 0; f = n + 4 | 0; e = n + 24 | 0; c[h >> 2] = a; c[j >> 2] = b; c[g >> 2] = d; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; c[f >> 2] = (c[j >> 2] | 0) >>> 0 < 256 ? c[j >> 2] | 0 : 256; if (pC(c[h >> 2] | 0, e, c[f >> 2] | 0, g) | 0) { m = 4; break } c[j >> 2] = (c[j >> 2] | 0) - (c[f >> 2] | 0) } if ((m | 0) == 4) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } if (tB(c[h >> 2] | 0, e, 4) | 0) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } m = pB(e, 0) | 0; if ((m | 0) != (c[g >> 2] | 0)) { kQ(c[7422] | 0, 46850, k) | 0; c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } else { c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } return 0 } function sC(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; o = q + 32 | 0; i = q + 28 | 0; k = q + 24 | 0; p = q + 20 | 0; h = q + 16 | 0; n = q + 12 | 0; j = q + 8 | 0; m = q + 4 | 0; g = q; c[i >> 2] = a; c[k >> 2] = b; c[p >> 2] = e; c[h >> 2] = f; if (!(c[p >> 2] | 0)) { c[o >> 2] = rC(c[i >> 2] | 0, c[p >> 2] | 0, c[h >> 2] | 0) | 0; p = c[o >> 2] | 0; l = q; return p | 0 } e = HQ(c[p >> 2] | 0) | 0; c[g >> 2] = e; if (!e) { c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } if (pC(c[i >> 2] | 0, c[g >> 2] | 0, c[p >> 2] | 0, h) | 0) { IQ(c[g >> 2] | 0); c[o >> 2] = 1; p = c[o >> 2] | 0; l = q; return p | 0 } c[j >> 2] = 0; c[m >> 2] = c[p >> 2]; if ((d[c[g >> 2] >> 0] | 0 | 0) == 10) { c[j >> 2] = 1; c[m >> 2] = (c[m >> 2] | 0) - 1 } if ((c[m >> 2] | 0) >>> 0 > 0 ? (d[(c[g >> 2] | 0) + ((c[j >> 2] | 0) + (c[m >> 2] | 0) - 1) >> 0] | 0 | 0) == 10 : 0) c[m >> 2] = (c[m >> 2] | 0) - 1; c[n >> 2] = $B(c[k >> 2] | 0, (c[g >> 2] | 0) + (c[j >> 2] | 0) | 0, c[m >> 2] | 0) | 0; IQ(c[g >> 2] | 0); p = rC(c[i >> 2] | 0, 0, c[h >> 2] | 0) | 0; c[n >> 2] = c[n >> 2] | p; c[o >> 2] = c[n >> 2]; p = c[o >> 2] | 0; l = q; return p | 0 } function tC(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 64 | 0; p = s + 36 | 0; k = s + 32 | 0; n = s + 28 | 0; r = s + 24 | 0; q = s + 20 | 0; j = s + 16 | 0; h = s + 12 | 0; m = s + 8 | 0; o = s + 4 | 0; i = s; g = s + 40 | 0; c[k >> 2] = a; c[n >> 2] = b; c[r >> 2] = d; c[q >> 2] = e; c[j >> 2] = f; if ((c[q >> 2] | 0) >>> 0 < 16) { c[p >> 2] = 1; r = c[p >> 2] | 0; l = s; return r | 0 } if (pC(c[k >> 2] | 0, g, 16, j) | 0) { c[p >> 2] = 1; r = c[p >> 2] | 0; l = s; return r | 0 } c[h >> 2] = pB(g, 0) | 0; c[m >> 2] = pB(g, 4) | 0; c[o >> 2] = pB(g, 8) | 0; c[i >> 2] = pB(g, 12) | 0; d = _B(c[n >> 2] | 0, c[h >> 2] | 0, c[m >> 2] | 0, 1) | 0; c[c[r >> 2] >> 2] = d; if (!d) { c[p >> 2] = 1; r = c[p >> 2] | 0; l = s; return r | 0 } if (LB(c[c[r >> 2] >> 2] | 0, c[o >> 2] | 0) | 0) { c[p >> 2] = 1; r = c[p >> 2] | 0; l = s; return r | 0 } JB(c[c[r >> 2] >> 2] | 0, c[i >> 2] | 0); if (rC(c[k >> 2] | 0, (c[q >> 2] | 0) - 16 | 0, c[j >> 2] | 0) | 0) { c[p >> 2] = 1; r = c[p >> 2] | 0; l = s; return r | 0 } else { c[p >> 2] = 0; r = c[p >> 2] | 0; l = s; return r | 0 } return 0 } function uC(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, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 24 | 0; i = n + 20 | 0; m = n + 12 | 0; k = n + 8 | 0; h = n + 4 | 0; g = n; c[i >> 2] = a; c[n + 16 >> 2] = b; c[m >> 2] = d; c[k >> 2] = e; c[h >> 2] = f; if (!(c[m >> 2] | 0)) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } c[g >> 2] = (((c[(c[m >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0; if ((c[g >> 2] | 0) >>> 0 > (c[k >> 2] | 0) >>> 0) c[g >> 2] = c[k >> 2]; if (pC(c[i >> 2] | 0, c[(c[m >> 2] | 0) + 8 >> 2] | 0, c[g >> 2] | 0, h) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } if (rC(c[i >> 2] | 0, (c[k >> 2] | 0) - (c[g >> 2] | 0) | 0, c[h >> 2] | 0) | 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function vC(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 48 | 0; p = r + 36 | 0; h = r + 32 | 0; m = r + 24 | 0; q = r + 20 | 0; o = r + 16 | 0; i = r + 12 | 0; j = r + 8 | 0; k = r + 4 | 0; n = r; g = r + 40 | 0; c[h >> 2] = a; c[r + 28 >> 2] = b; c[m >> 2] = d; c[q >> 2] = e; c[o >> 2] = f; if (!(c[m >> 2] | 0)) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } c[j >> 2] = ((c[q >> 2] | 0) >>> 0) / 8 | 0; c[i >> 2] = 0; while (1) { a = c[h >> 2] | 0; if ((c[i >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) { f = 10; break } if (pC(a, g, 8, o) | 0) { f = 6; break } c[q >> 2] = (c[q >> 2] | 0) - 8; c[k >> 2] = pB(g, 0) | 0; c[n >> 2] = pB(g, 4) | 0; if (!(FB(c[m >> 2] | 0, 1, c[k >> 2] | 0, c[n >> 2] | 0) | 0)) { f = 8; break } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((f | 0) == 6) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 8) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 10) if (rC(a, c[q >> 2] | 0, c[o >> 2] | 0) | 0) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } else { c[p >> 2] = 0; q = c[p >> 2] | 0; l = r; return q | 0 } return 0 } function wC(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 48 | 0; p = r + 36 | 0; h = r + 32 | 0; m = r + 24 | 0; q = r + 20 | 0; o = r + 16 | 0; i = r + 12 | 0; j = r + 8 | 0; k = r + 4 | 0; n = r; g = r + 40 | 0; c[h >> 2] = a; c[r + 28 >> 2] = b; c[m >> 2] = d; c[q >> 2] = e; c[o >> 2] = f; if (!(c[m >> 2] | 0)) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } c[j >> 2] = ((c[q >> 2] | 0) >>> 0) / 8 | 0; c[i >> 2] = 0; while (1) { a = c[h >> 2] | 0; if ((c[i >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) { f = 10; break } if (pC(a, g, 8, o) | 0) { f = 6; break } c[q >> 2] = (c[q >> 2] | 0) - 8; c[k >> 2] = pB(g, 0) | 0; c[n >> 2] = pB(g, 4) | 0; if (!(FB(c[m >> 2] | 0, 2, c[k >> 2] | 0, c[n >> 2] | 0) | 0)) { f = 8; break } c[i >> 2] = (c[i >> 2] | 0) + 1 } if ((f | 0) == 6) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 8) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } else if ((f | 0) == 10) if (rC(a, c[q >> 2] | 0, c[o >> 2] | 0) | 0) { c[p >> 2] = 1; q = c[p >> 2] | 0; l = r; return q | 0 } else { c[p >> 2] = 0; q = c[p >> 2] | 0; l = r; return q | 0 } return 0 } function xC(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; k = o + 28 | 0; f = o + 24 | 0; j = o + 20 | 0; g = o + 16 | 0; h = o + 12 | 0; n = o + 8 | 0; i = o + 4 | 0; m = o; c[k >> 2] = a; c[f >> 2] = b; c[j >> 2] = e; if (!(c[13903] | 0)) { c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 256) break; c[i >> 2] = c[g >> 2] << 24; c[h >> 2] = 0; while (1) { b = c[i >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 >= 8) break; e = c[i >> 2] << 1; if (b & -2147483648 | 0) c[i >> 2] = e ^ 517762881; else c[i >> 2] = e; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[55616 + (c[g >> 2] << 2) >> 2] = b; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[13903] = 1 } c[m >> 2] = c[f >> 2]; while (1) { b = c[k >> 2] | 0; if ((c[j >> 2] | 0) >>> 0 <= 0) break; i = c[m >> 2] | 0; c[m >> 2] = i + 1; c[n >> 2] = b >>> 24 ^ (d[i >> 0] | 0); c[k >> 2] = c[k >> 2] << 8 ^ c[55616 + ((c[n >> 2] & 255) << 2) >> 2]; c[j >> 2] = (c[j >> 2] | 0) - 1 } l = o; return b | 0 } function yC(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, m = 0; m = l; l = l + 32 | 0; i = m + 24 | 0; f = m + 20 | 0; h = m + 16 | 0; d = m + 12 | 0; g = m + 8 | 0; e = m + 4 | 0; j = m; c[f >> 2] = a; c[h >> 2] = b; if (zC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } if (AC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[c[h >> 2] >> 2] | 0) >>> 0) break; b = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[d >> 2] << 2) >> 2] | 0; c[e >> 2] = b; b: do if (b | 0) { c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[c[e >> 2] >> 2] | 0) >>> 0) break b; b = c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + (c[g >> 2] << 2) >> 2] | 0; c[j >> 2] = b; if (b | 0 ? BC(c[f >> 2] | 0, c[j >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0) | 0 : 0) { k = 12; break a } c[g >> 2] = (c[g >> 2] | 0) + 1 } } while (0); c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((k | 0) == 12) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } if (CC(c[f >> 2] | 0, 1162757152, 0, 0) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function zC(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; d = e + 8 | 0; g = e + 4 | 0; f = e + 12 | 0; c[g >> 2] = a; c[e >> 2] = b; sB(f, 0, 0); if (CC(c[g >> 2] | 0, 1347569952, 4, f) | 0) { c[d >> 2] = 1; g = c[d >> 2] | 0; l = e; return g | 0 } else { c[d >> 2] = 0; g = c[d >> 2] | 0; l = e; return g | 0 } return 0 } function AC(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; j = k + 16 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 4 | 0; f = k; e = k + 24 | 0; c[g >> 2] = b; c[h >> 2] = d; if (!(c[(c[h >> 2] | 0) + 8 >> 2] | 0)) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } else { sB(e, 0, 1413830740); sB(e, 4, (c[(c[h >> 2] | 0) + 8 >> 2] | 0) + 2 | 0); a[e + 8 >> 0] = 10; c[f >> 2] = 0; c[i >> 2] = DC(c[g >> 2] | 0, e, 9, f) | 0; h = DC(c[g >> 2] | 0, c[(c[h >> 2] | 0) + 12 >> 2] | 0, c[(c[h >> 2] | 0) + 8 >> 2] | 0, f) | 0; c[i >> 2] = c[i >> 2] | h; h = DC(c[g >> 2] | 0, e + 8 | 0, 1, f) | 0; c[i >> 2] = c[i >> 2] | h; sB(e, 0, c[f >> 2] | 0); h = vB(c[g >> 2] | 0, e, 4) | 0; c[i >> 2] = c[i >> 2] | h; c[j >> 2] = c[i >> 2]; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function BC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 32 | 0; g = i + 16 | 0; f = i + 12 | 0; h = i + 8 | 0; k = i + 4 | 0; j = i; c[f >> 2] = a; c[h >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; do if (!(EC(c[f >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0, c[j >> 2] | 0) | 0)) { if (FC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[g >> 2] = 1; break } if (GC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[g >> 2] = 1; break } if (HC(c[f >> 2] | 0, c[h >> 2] | 0) | 0) { c[g >> 2] = 1; break } else { c[g >> 2] = 0; break } } else c[g >> 2] = 1; while (0); l = i; return c[g >> 2] | 0 } function CC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; i = m + 16 | 0; n = m + 12 | 0; k = m + 8 | 0; h = m + 4 | 0; g = m; f = m + 24 | 0; c[i >> 2] = a; c[n >> 2] = b; c[k >> 2] = d; c[h >> 2] = e; sB(f, 0, c[n >> 2] | 0); sB(f, 4, c[k >> 2] | 0); c[g >> 2] = 0; if (DC(c[i >> 2] | 0, f, 8, g) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } if ((c[k >> 2] | 0) >>> 0 > 0 ? DC(c[i >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0, g) | 0 : 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } sB(f, 0, c[g >> 2] | 0); if (DC(c[i >> 2] | 0, f, 4, 0) | 0) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = m; return n | 0 } else { c[j >> 2] = 0; n = c[j >> 2] | 0; l = m; return n | 0 } return 0 } function DC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; i = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; h = k; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if (c[h >> 2] | 0) { a = xC(c[c[h >> 2] >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0; c[c[h >> 2] >> 2] = a } if (vB(c[i >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function EC(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; g = l; l = l + 48 | 0; f = g + 16 | 0; i = g + 12 | 0; j = g + 8 | 0; m = g + 4 | 0; k = g; h = g + 24 | 0; c[i >> 2] = a; c[j >> 2] = b; c[m >> 2] = d; c[k >> 2] = e; sB(h, 0, c[m >> 2] | 0); sB(h, 4, c[k >> 2] | 0); sB(h, 8, c[(c[j >> 2] | 0) + 4 >> 2] | 0); sB(h, 12, c[c[j >> 2] >> 2] | 0); if (CC(c[i >> 2] | 0, 1414676811, 16, h) | 0) { c[f >> 2] = 1; m = c[f >> 2] | 0; l = g; return m | 0 } else { c[f >> 2] = 0; m = c[f >> 2] | 0; l = g; return m | 0 } return 0 } function FC(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; g = j + 12 | 0; i = j + 8 | 0; e = j + 4 | 0; f = j; d = j + 24 | 0; c[g >> 2] = a; c[i >> 2] = b; if (!(c[(c[i >> 2] | 0) + 4 >> 2] | 0)) { c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } c[f >> 2] = 0; c[e >> 2] = (((c[(c[i >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0; sB(d, 0, 1145132097); sB(d, 4, c[e >> 2] | 0); if (DC(c[g >> 2] | 0, d, 8, f) | 0) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } if (DC(c[g >> 2] | 0, c[(c[i >> 2] | 0) + 8 >> 2] | 0, c[e >> 2] | 0, f) | 0) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } sB(d, 0, c[f >> 2] | 0); if (vB(c[g >> 2] | 0, d, 4) | 0) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } else { c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function GC(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, m = 0; m = l; l = l + 32 | 0; i = m + 20 | 0; h = m + 16 | 0; j = m + 12 | 0; e = m + 8 | 0; f = m + 4 | 0; g = m; d = m + 24 | 0; c[h >> 2] = a; c[j >> 2] = b; c[e >> 2] = HB(c[j >> 2] | 0, 1) | 0; if (!(c[e >> 2] | 0)) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } c[f >> 2] = 0; sB(d, 0, 1179998810); sB(d, 4, c[e >> 2] << 3); if (DC(c[h >> 2] | 0, d, 8, f) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } c[g >> 2] = c[(c[j >> 2] | 0) + 12 >> 2]; while (1) { if (!(c[g >> 2] | 0)) break; if ((c[(c[g >> 2] | 0) + 4 >> 2] | 0) == 1 ? (sB(d, 0, c[(c[g >> 2] | 0) + 8 >> 2] | 0), sB(d, 4, c[(c[g >> 2] | 0) + 12 >> 2] | 0), DC(c[h >> 2] | 0, d, 8, f) | 0) : 0) { k = 9; break } c[g >> 2] = c[c[g >> 2] >> 2] } if ((k | 0) == 9) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } sB(d, 0, c[f >> 2] | 0); if (vB(c[h >> 2] | 0, d, 4) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function HC(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, m = 0; m = l; l = l + 32 | 0; i = m + 20 | 0; h = m + 16 | 0; j = m + 12 | 0; e = m + 8 | 0; f = m + 4 | 0; g = m; d = m + 24 | 0; c[h >> 2] = a; c[j >> 2] = b; c[e >> 2] = HB(c[j >> 2] | 0, 2) | 0; if (!(c[e >> 2] | 0)) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } c[f >> 2] = 0; sB(d, 0, 1111706699); sB(d, 4, c[e >> 2] << 3); if (DC(c[h >> 2] | 0, d, 8, f) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } c[g >> 2] = c[(c[j >> 2] | 0) + 12 >> 2]; while (1) { if (!(c[g >> 2] | 0)) break; if ((c[(c[g >> 2] | 0) + 4 >> 2] | 0) == 2 ? (sB(d, 0, c[(c[g >> 2] | 0) + 8 >> 2] | 0), sB(d, 4, c[(c[g >> 2] | 0) + 12 >> 2] | 0), DC(c[h >> 2] | 0, d, 8, f) | 0) : 0) { k = 9; break } c[g >> 2] = c[c[g >> 2] >> 2] } if ((k | 0) == 9) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } sB(d, 0, c[f >> 2] | 0); if (vB(c[h >> 2] | 0, d, 4) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } else { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function IC(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 1584 | 0; n = o + 1056 | 0; d = o + 1052 | 0; b = o + 1048 | 0; f = o + 1044 | 0; h = o + 1040 | 0; i = o + 1036 | 0; k = o + 1032 | 0; j = o + 8 | 0; g = o + 1064 | 0; m = o; c[d >> 2] = a; c[m >> 2] = VB() | 0; if (!(c[m >> 2] | 0)) { c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } if (JC(c[d >> 2] | 0, c[m >> 2] | 0, j, g, h, i) | 0) { WB(c[m >> 2] | 0); c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } if ((c[h >> 2] | 0) >>> 0 > 99 | (c[i >> 2] | 0) >>> 0 > 2) { WB(c[m >> 2] | 0); c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } c[b >> 2] = 0; a: while (1) { if ((c[b >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) { b = 21; break } c[k >> 2] = c[b >> 2] << 1; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) break; if ((c[k >> 2] | 0) >>> 0 > 255) { b = 12; break a } if ((c[j + (c[k >> 2] << 2) >> 2] | 0) != 0 ? (e[g + (c[k >> 2] << 1) >> 1] | 0 | 0) != 0 : 0) { if (KC(c[d >> 2] | 0, c[m >> 2] | 0, c[b >> 2] | 0, c[f >> 2] | 0, c[j + (c[k >> 2] << 2) >> 2] | 0, e[g + (c[k >> 2] << 1) >> 1] | 0) | 0) { b = 17; break a } c[k >> 2] = (c[k >> 2] | 0) + 1 } else c[k >> 2] = (c[k >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) + 1 } c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((b | 0) == 12) { WB(c[m >> 2] | 0); c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } else if ((b | 0) == 17) { WB(c[m >> 2] | 0); c[n >> 2] = 0; n = c[n >> 2] | 0; l = o; return n | 0 } else if ((b | 0) == 21) { c[n >> 2] = c[m >> 2]; n = c[n >> 2] | 0; l = o; return n | 0 } return 0 } function JC(a, e, f, g, h, i) { a = a | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 560 | 0; s = u + 36 | 0; m = u + 32 | 0; p = u + 28 | 0; r = u + 24 | 0; q = u + 20 | 0; k = u + 16 | 0; n = u + 12 | 0; o = u + 8 | 0; t = u + 4 | 0; j = u + 40 | 0; c[m >> 2] = a; c[p >> 2] = e; c[r >> 2] = f; c[q >> 2] = g; c[k >> 2] = h; c[n >> 2] = i; if (uB(c[m >> 2] | 0, 0, j, 512) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } if ((nB(j, 0) | 0) != 23205) { kQ(c[7422] | 0, 46900, u) | 0; c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } c[c[k >> 2] >> 2] = (d[j + 258 >> 0] | 0) + 1; c[c[n >> 2] >> 2] = d[j + 259 >> 0]; if (LC(c[p >> 2] | 0, j + 2 | 0, 32) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } if (LC(c[p >> 2] | 0, j + 34 | 0, 32) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } if (uB(c[m >> 2] | 0, 773, j, 512) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } c[o >> 2] = 0; while (1) { if ((c[o >> 2] | 0) >>> 0 >= 256) break; c[t >> 2] = nB(j, c[o >> 2] << 1) | 0; c[(c[r >> 2] | 0) + (c[o >> 2] << 2) >> 2] = c[t >> 2] << 8; c[o >> 2] = (c[o >> 2] | 0) + 1 } if (uB(c[m >> 2] | 0, 1285, j, 512) | 0) { c[s >> 2] = 1; t = c[s >> 2] | 0; l = u; return t | 0 } c[o >> 2] = 0; while (1) { if ((c[o >> 2] | 0) >>> 0 >= 256) break; c[t >> 2] = oB(j, c[o >> 2] << 1) | 0; b[(c[q >> 2] | 0) + (c[o >> 2] << 1) >> 1] = c[t >> 2]; c[o >> 2] = (c[o >> 2] | 0) + 1 } c[s >> 2] = 0; t = c[s >> 2] | 0; l = u; return t | 0 } function KC(a, b, d, e, f, g) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; o = l; l = l + 48 | 0; m = o + 32 | 0; i = o + 28 | 0; r = o + 24 | 0; q = o + 20 | 0; p = o + 16 | 0; k = o + 12 | 0; j = o + 8 | 0; h = o + 4 | 0; n = o; c[i >> 2] = a; c[r >> 2] = b; c[q >> 2] = d; c[p >> 2] = e; c[k >> 2] = f; c[j >> 2] = g; c[n >> 2] = _B(c[r >> 2] | 0, c[q >> 2] | 0, c[p >> 2] | 0, 1) | 0; if (!(c[n >> 2] | 0)) { c[m >> 2] = 1; r = c[m >> 2] | 0; l = o; return r | 0 } if (LB(c[n >> 2] | 0, c[j >> 2] << 3) | 0) { c[m >> 2] = 1; r = c[m >> 2] | 0; l = o; return r | 0 } JB(c[n >> 2] | 0, (c[j >> 2] | 0) >>> 0 < 8e3 ? 25e4 : 5e5); c[h >> 2] = (((c[(c[n >> 2] | 0) + 4 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0; if (uB(c[i >> 2] | 0, c[k >> 2] | 0, c[(c[n >> 2] | 0) + 8 >> 2] | 0, c[h >> 2] | 0) | 0) { c[m >> 2] = 1; r = c[m >> 2] | 0; l = o; return r | 0 } else { c[m >> 2] = 0; r = c[m >> 2] | 0; l = o; return r | 0 } return 0 } function LC(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; h = k + 12 | 0; f = k + 8 | 0; i = k + 4 | 0; g = k; c[h >> 2] = a; c[f >> 2] = b; c[i >> 2] = e; if (!(d[c[f >> 2] >> 0] | 0)) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) break; if (!(d[(c[f >> 2] | 0) + (c[g >> 2] | 0) >> 0] | 0)) break; c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((c[(c[h >> 2] | 0) + 8 >> 2] | 0) >>> 0 > 0 ? $B(c[h >> 2] | 0, 50466, 1) | 0 : 0) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } if ($B(c[h >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0) | 0) { c[j >> 2] = 1; j = c[j >> 2] | 0; l = k; return j | 0 } else { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function Yb(a) { a = a | 0; var b = 0; b = l; l = l + a | 0; l = l + 15 & -16; return b | 0 } function Zb() { return l | 0 } function _b(a) { a = a | 0; l = a } function $b(a, b) { a = a | 0; b = b | 0; l = a; m = b } function ac(a, b) { a = a | 0; b = b | 0; if (!o) { o = a; p = b } } function bc(a) { a = a | 0; D = a } function cc() { return D | 0 } function dc(b) { b = b | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; a[(c[f >> 2] | 0) + 4 >> 0] = a[(c[f >> 2] | 0) + 5 >> 0] | 0; a[(c[f >> 2] | 0) + 7 >> 0] = 0; c[(c[f >> 2] | 0) + 8 >> 2] = 0; c[(c[f >> 2] | 0) + 8 + 4 >> 2] = 0; c[(c[f >> 2] | 0) + 8 + 8 >> 2] = 0; c[(c[f >> 2] | 0) + 8 + 12 >> 2] = 24576; b = (c[f >> 2] | 0) + 8 + 12 | 0; c[b >> 2] = c[b >> 2] | ((d[(c[f >> 2] | 0) + 5 >> 0] | 0) & 15) << 8; b = (c[f >> 2] | 0) + 8 + 12 | 0; c[b >> 2] = c[b >> 2] | (d[(c[f >> 2] | 0) + 6 >> 0] | 0) & 255; l = e; return } function ec(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; a[(c[e >> 2] | 0) + 7 >> 0] = 0; l = d; return } function fc(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; g = j + 12 | 0; k = j + 8 | 0; f = j + 4 | 0; i = j; c[g >> 2] = b; c[k >> 2] = d; c[f >> 2] = e; if ((c[k >> 2] | 0) != 3) { c[h >> 2] = 0; k = c[h >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = c[f >> 2]; a[(c[i >> 2] | 0) + 1 >> 0] = c[(c[g >> 2] | 0) + 8 + 12 >> 2]; a[c[i >> 2] >> 0] = (c[(c[g >> 2] | 0) + 8 + 12 >> 2] | 0) >>> 8; c[h >> 2] = 2; k = c[h >> 2] | 0; l = j; return k | 0 } return 0 } function gc(a, b) { a = a | 0; b = b | 0; var d = 0; d = l; l = l + 16 | 0; c[d + 4 >> 2] = a; c[d >> 2] = b; l = d; return } function hc(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; o = m + 16 | 0; i = m + 12 | 0; n = m + 8 | 0; h = m + 4 | 0; k = m; c[j >> 2] = b; c[o >> 2] = e; c[i >> 2] = f; c[n >> 2] = g; if ((c[o >> 2] | 0) != 3 | (c[n >> 2] | 0) >>> 0 < 2) { l = m; return } c[k >> 2] = c[i >> 2]; if ((d[(c[k >> 2] | 0) + 1 >> 0] | 0 | 0) != 254) { l = m; return } c[h >> 2] = (d[c[k >> 2] >> 0] | 0) & 15; a[(c[j >> 2] | 0) + 4 >> 0] = c[h >> 2]; o = (c[j >> 2] | 0) + 8 + 12 | 0; c[o >> 2] = c[o >> 2] & 61695; o = (c[j >> 2] | 0) + 8 + 12 | 0; c[o >> 2] = c[o >> 2] | c[h >> 2] << 8; l = m; return } function ic(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; h = g + 8 | 0; j = g + 4 | 0; i = g; c[h >> 2] = b; c[j >> 2] = e; c[i >> 2] = f; c[c[h >> 2] >> 2] = 0; a[(c[h >> 2] | 0) + 4 >> 0] = c[j >> 2]; a[(c[h >> 2] | 0) + 5 >> 0] = c[j >> 2]; a[(c[h >> 2] | 0) + 6 >> 0] = c[i >> 2]; a[(c[h >> 2] | 0) + 7 >> 0] = 0; c[(c[h >> 2] | 0) + 8 >> 2] = 0; c[(c[h >> 2] | 0) + 8 + 4 >> 2] = 0; c[(c[h >> 2] | 0) + 8 + 8 >> 2] = 0; c[(c[h >> 2] | 0) + 8 + 12 >> 2] = 24576; f = (c[h >> 2] | 0) + 8 + 12 | 0; c[f >> 2] = c[f >> 2] | ((d[(c[h >> 2] | 0) + 5 >> 0] | 0) & 15) << 8; f = (c[h >> 2] | 0) + 8 + 12 | 0; c[f >> 2] = c[f >> 2] | (d[(c[h >> 2] | 0) + 6 >> 0] | 0) & 255; c[(c[h >> 2] | 0) + 24 >> 2] = 0; c[(c[h >> 2] | 0) + 28 >> 2] = 209; c[(c[h >> 2] | 0) + 32 >> 2] = 210; c[(c[h >> 2] | 0) + 36 >> 2] = 28; c[(c[h >> 2] | 0) + 40 >> 2] = 145; c[(c[h >> 2] | 0) + 44 >> 2] = 1; l = g; return } function jc(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; a[c[e >> 2] >> 0] = 3; a[(c[e >> 2] | 0) + 1 >> 0] = 0; a[(c[e >> 2] | 0) + 2 >> 0] = 0; a[(c[e >> 2] | 0) + 3 >> 0] = 0; a[(c[e >> 2] | 0) + 4 >> 0] = 0; a[(c[e >> 2] | 0) + 5 >> 0] = 0; a[(c[e >> 2] | 0) + 14 >> 0] = 0; a[(c[e >> 2] | 0) + 15 >> 0] = 0; c[(c[e >> 2] | 0) + 16 >> 2] = 0; c[(c[e >> 2] | 0) + 20 >> 2] = 0; c[(c[e >> 2] | 0) + 24 >> 2] = 0; c[(c[e >> 2] | 0) + 92 >> 2] = 0; c[(c[e >> 2] | 0) + 96 >> 2] = 0; c[(c[e >> 2] | 0) + 100 >> 2] = 0; c[(c[e >> 2] | 0) + 104 >> 2] = 0; a[(c[e >> 2] | 0) + 108 >> 0] = 0; c[(c[e >> 2] | 0) + 112 >> 2] = 0; c[(c[e >> 2] | 0) + 116 >> 2] = 0; l = d; return } function kc() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(120) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { jc(c[a >> 2] | 0); c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function lc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 92 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 96 >> 2] = c[g >> 2]; l = e; return } function mc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 100 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 104 >> 2] = c[g >> 2]; l = e; return } function nc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 112 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 116 >> 2] = c[g >> 2]; l = e; return } function oc(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; d = i + 8 | 0; e = i + 4 | 0; f = i; c[d >> 2] = a; c[e >> 2] = b; c[f >> 2] = 0; while (1) { a = c[d >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 >= (c[(c[d >> 2] | 0) + 24 >> 2] | 0) >>> 0) break; if ((c[a + 28 + (c[f >> 2] << 2) >> 2] | 0) == (c[e >> 2] | 0)) { h = 4; break } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((h | 0) == 4) { c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } if ((c[a + 24 >> 2] | 0) >>> 0 >= 16) { c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } else { e = c[e >> 2] | 0; f = (c[d >> 2] | 0) + 28 | 0; d = (c[d >> 2] | 0) + 24 | 0; h = c[d >> 2] | 0; c[d >> 2] = h + 1; c[f + (h << 2) >> 2] = e; c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function pc(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = b; c[e >> 2] = 0; while (1) { b = c[d >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= (c[(c[d >> 2] | 0) + 24 >> 2] | 0) >>> 0) break; Pb[c[(c[b + 28 + (c[e >> 2] << 2) >> 2] | 0) + 28 >> 2] & 511](c[(c[d >> 2] | 0) + 28 + (c[e >> 2] << 2) >> 2] | 0); c[e >> 2] = (c[e >> 2] | 0) + 1 } a[b >> 0] = 3; a[(c[d >> 2] | 0) + 1 >> 0] = 1; a[(c[d >> 2] | 0) + 2 >> 0] = 0; a[(c[d >> 2] | 0) + 3 >> 0] = 0; a[(c[d >> 2] | 0) + 4 >> 0] = 0; a[(c[d >> 2] | 0) + 5 >> 0] = 0; a[(c[d >> 2] | 0) + 14 >> 0] = 0; a[(c[d >> 2] | 0) + 15 >> 0] = 0; c[(c[d >> 2] | 0) + 16 >> 2] = 0; c[(c[d >> 2] | 0) + 20 >> 2] = 0; qc(c[d >> 2] | 0, 0); l = f; return } function qc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; g = h; c[f >> 2] = b; c[g >> 2] = e; c[g >> 2] = (c[g >> 2] | 0) != 0 & 1; if ((d[(c[f >> 2] | 0) + 108 >> 0] | 0 | 0) == (c[g >> 2] | 0)) { l = h; return } a[(c[f >> 2] | 0) + 108 >> 0] = c[g >> 2]; if (!(c[(c[f >> 2] | 0) + 116 >> 2] | 0)) { l = h; return } Qb[c[(c[f >> 2] | 0) + 116 >> 2] & 255](c[(c[f >> 2] | 0) + 112 >> 2] | 0, c[g >> 2] & 255); l = h; return } function rc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h; f = h + 4 | 0; c[g >> 2] = b; a[f >> 0] = e; a[f >> 0] = d[f >> 0] & 3; if ((d[c[g >> 2] >> 0] | 0) == (d[f >> 0] | 0)) { l = h; return } e = (c[g >> 2] | 0) + 16 | 0; c[e >> 2] = (c[e >> 2] | 0) + 783; if (!((d[f >> 0] | 0) != 0 ? (d[f >> 0] | 0) != 3 : 0)) sc(c[g >> 2] | 0); a[c[g >> 2] >> 0] = a[f >> 0] | 0; qc(c[g >> 2] | 0, 0); if (!(d[f >> 0] | 0)) { a[(c[g >> 2] | 0) + 1 >> 0] = 0; a[(c[g >> 2] | 0) + 4 >> 0] = 0; a[(c[g >> 2] | 0) + 5 >> 0] = 0; a[(c[g >> 2] | 0) + 14 >> 0] = 8; a[(c[g >> 2] | 0) + 15 >> 0] = 0; l = h; return } if ((d[f >> 0] | 0) != 1 ? (d[f >> 0] | 0) != 2 : 0) { if ((d[f >> 0] | 0) != 3) { l = h; return } a[(c[g >> 2] | 0) + 1 >> 0] = 1; a[(c[g >> 2] | 0) + 4 >> 0] = 0; a[(c[g >> 2] | 0) + 5 >> 0] = 0; a[(c[g >> 2] | 0) + 14 >> 0] = 0; a[(c[g >> 2] | 0) + 15 >> 0] = 0; c[(c[g >> 2] | 0) + 20 >> 2] = 0; l = h; return } b = c[g >> 2] | 0; if (!(a[(c[g >> 2] | 0) + 1 >> 0] | 0)) { a[b + 14 >> 0] = 8; a[(c[g >> 2] | 0) + 15 >> 0] = 0; l = h; return } f = (d[b + 4 >> 0] | 0) < (d[(c[g >> 2] | 0) + 5 >> 0] | 0); a[(c[g >> 2] | 0) + 14 >> 0] = 8; b = c[g >> 2] | 0; if (!f) { a[b + 15 >> 0] = -86; qc(c[g >> 2] | 0, 1); l = h; return } e = (c[g >> 2] | 0) + 4 | 0; f = a[e >> 0] | 0; a[e >> 0] = f + 1 << 24 >> 24; a[(c[g >> 2] | 0) + 15 >> 0] = a[b + 6 + (f & 255) >> 0] | 0; if ((d[(c[g >> 2] | 0) + 4 >> 0] | 0) < (d[(c[g >> 2] | 0) + 5 >> 0] | 0)) { l = h; return } tc(c[g >> 2] | 0, a[(c[g >> 2] | 0) + 2 >> 0] | 0); l = h; return } function sc(b) { b = b | 0; var e = 0, f = 0; f = l; l = l + 16 | 0; e = f; c[e >> 2] = b; if ((d[(c[e >> 2] | 0) + 4 >> 0] | 0 | 0) >= (d[(c[e >> 2] | 0) + 5 >> 0] | 0 | 0)) { l = f; return } if (((d[(c[e >> 2] | 0) + 2 >> 0] | 0) & 12 | 0) != 8) { l = f; return } vc(c[e >> 2] | 0, a[(c[e >> 2] | 0) + 2 >> 0] | 0); l = f; return } function tc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; i = h + 4 | 0; f = h + 8 | 0; g = h; c[i >> 2] = b; a[f >> 0] = e; c[g >> 2] = uc(c[i >> 2] | 0, (d[f >> 0] | 0) >> 4 & 15) | 0; if (!(c[g >> 2] | 0)) { l = h; return } Qb[c[(c[g >> 2] | 0) + 40 >> 2] & 255](c[g >> 2] | 0, (d[f >> 0] | 0) & 3); l = h; return } function uc(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; g = i; c[f >> 2] = a; c[e >> 2] = b; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 24 >> 2] | 0) >>> 0) { a = 6; break } if ((d[(c[(c[f >> 2] | 0) + 28 + (c[g >> 2] << 2) >> 2] | 0) + 4 >> 0] | 0 | 0) == (c[e >> 2] | 0)) { a = 4; break } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((a | 0) == 4) { c[h >> 2] = c[(c[f >> 2] | 0) + 28 + (c[g >> 2] << 2) >> 2]; h = c[h >> 2] | 0; l = i; return h | 0 } else if ((a | 0) == 6) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function vc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 32 | 0; f = i + 12 | 0; k = i + 16 | 0; j = i + 8 | 0; h = i + 4 | 0; g = i; c[f >> 2] = b; a[k >> 0] = e; a[(c[f >> 2] | 0) + 1 >> 0] = 0; c[j >> 2] = (d[k >> 0] | 0) >> 4 & 15; c[h >> 2] = (d[k >> 0] | 0) & 3; c[g >> 2] = uc(c[f >> 2] | 0, c[j >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { l = i; return } Xb[c[(c[g >> 2] | 0) + 44 >> 2] & 3](c[g >> 2] | 0, c[h >> 2] | 0, (c[f >> 2] | 0) + 6 | 0, d[(c[f >> 2] | 0) + 5 >> 0] | 0); l = i; return } function wc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; f = h; c[g >> 2] = b; c[f >> 2] = e; b = c[g >> 2] | 0; if (!(d[(c[g >> 2] | 0) + 14 >> 0] | 0)) { if ((d[b >> 0] | 0) != 3) { l = h; return } xc(c[g >> 2] | 0, c[f >> 2] | 0); l = h; return } c[b + 20 >> 2] = 0; if ((c[f >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 16 >> 2] | 0) >>> 0) { g = (c[g >> 2] | 0) + 16 | 0; c[g >> 2] = (c[g >> 2] | 0) - (c[f >> 2] | 0); l = h; return } c[(c[g >> 2] | 0) + 16 >> 2] = 0; b = c[g >> 2] | 0; do if (!(a[(c[g >> 2] | 0) + 1 >> 0] | 0)) { f = b + 15 | 0; a[f >> 0] = d[f >> 0] << 1; f = (c[g >> 2] | 0) + 14 | 0; a[f >> 0] = (d[f >> 0] | 0) - 1; if (c[(c[g >> 2] | 0) + 104 >> 2] | 0 ? (Rb[c[(c[g >> 2] | 0) + 104 >> 2] & 15](c[(c[g >> 2] | 0) + 100 >> 2] | 0) | 0) << 24 >> 24 : 0) { f = (c[g >> 2] | 0) + 15 | 0; a[f >> 0] = d[f >> 0] | 1 } if (!(d[(c[g >> 2] | 0) + 14 >> 0] | 0)) { b = c[g >> 2] | 0; if (!(d[c[g >> 2] >> 0] | 0)) { yc(b, a[(c[g >> 2] | 0) + 15 >> 0] | 0, 0); break } if ((d[b + 5 >> 0] | 0) < 8) { b = a[(c[g >> 2] | 0) + 15 >> 0] | 0; e = (c[g >> 2] | 0) + 6 | 0; i = (c[g >> 2] | 0) + 5 | 0; f = a[i >> 0] | 0; a[i >> 0] = f + 1 << 24 >> 24; a[e + (f & 255) >> 0] = b } } } else { if (c[b + 96 >> 2] | 0) Qb[c[(c[g >> 2] | 0) + 96 >> 2] & 255](c[(c[g >> 2] | 0) + 92 >> 2] | 0, d[(c[g >> 2] | 0) + 15 >> 0] >> 7 & 1); i = (c[g >> 2] | 0) + 15 | 0; a[i >> 0] = d[i >> 0] << 1; i = (c[g >> 2] | 0) + 14 | 0; a[i >> 0] = (d[i >> 0] | 0) - 1 } while (0); i = (c[g >> 2] | 0) + 16 | 0; c[i >> 2] = (c[i >> 2] | 0) + 783; l = h; return } function xc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; h = g; c[f >> 2] = b; c[h >> 2] = e; e = (c[f >> 2] | 0) + 20 | 0; c[e >> 2] = (c[e >> 2] | 0) + (c[h >> 2] | 0); if ((c[(c[f >> 2] | 0) + 20 >> 2] | 0) >>> 0 < 86170) { l = g; return } c[(c[f >> 2] | 0) + 20 >> 2] = 0; if (!(d[(c[f >> 2] | 0) + 3 >> 0] | 0)) { l = g; return } yc(c[f >> 2] | 0, a[(c[f >> 2] | 0) + 3 >> 0] | 0, 1); b = c[f >> 2] | 0; if ((d[(c[f >> 2] | 0) + 4 >> 0] | 0) < (d[(c[f >> 2] | 0) + 5 >> 0] | 0)) { a[b + 14 >> 0] = 8; a[(c[f >> 2] | 0) + 15 >> 0] = -86; l = g; return } if (!(a[b + 108 >> 0] | 0)) { l = g; return } a[(c[f >> 2] | 0) + 14 >> 0] = 8; a[(c[f >> 2] | 0) + 15 >> 0] = -86; l = g; return } function yc(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; j = k; g = k + 8 | 0; h = k + 12 | 0; i = k + 4 | 0; c[g >> 2] = b; a[h >> 0] = e; c[i >> 2] = f; qc(c[g >> 2] | 0, 0); a[(c[g >> 2] | 0) + 2 >> 0] = a[h >> 0] | 0; a[(c[g >> 2] | 0) + 4 >> 0] = 0; a[(c[g >> 2] | 0) + 5 >> 0] = 0; do if ((d[h >> 0] | 0) & 15) { if (((d[h >> 0] | 0) & 12 | 0) == 12) { Ac(c[g >> 2] | 0, a[h >> 0] | 0); break } if (((d[h >> 0] | 0) & 12 | 0) != 8) if (((d[h >> 0] | 0) & 15 | 0) == 1) { Bc(c[g >> 2] | 0, a[h >> 0] | 0); break } else { c[j >> 2] = d[h >> 0]; cg(30444, j); break } } else zc(c[g >> 2] | 0, a[h >> 0] | 0); while (0); if (!(c[i >> 2] | 0)) { l = k; return } Cc(c[g >> 2] | 0, (d[h >> 0] | 0) >> 4 & 15); l = k; return } function zc(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = b; a[e + 4 >> 0] = d; pc(c[f >> 2] | 0); a[(c[f >> 2] | 0) + 1 >> 0] = 1; l = e; return } function Ac(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; f = j + 12 | 0; g = j + 16 | 0; k = j + 8 | 0; i = j + 4 | 0; h = j; c[f >> 2] = b; a[g >> 0] = e; a[(c[f >> 2] | 0) + 1 >> 0] = 1; c[k >> 2] = (d[g >> 0] | 0) >> 4 & 15; c[i >> 2] = (d[g >> 0] | 0) & 3; c[h >> 2] = uc(c[f >> 2] | 0, c[k >> 2] | 0) | 0; if (!(c[h >> 2] | 0)) { l = j; return } k = (Nb[c[(c[h >> 2] | 0) + 36 >> 2] & 63](c[h >> 2] | 0, c[i >> 2] | 0, (c[f >> 2] | 0) + 6 | 0) | 0) & 255; a[(c[f >> 2] | 0) + 5 >> 0] = k; a[(c[f >> 2] | 0) + 3 >> 0] = a[g >> 0] | 0; l = j; return } function Bc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; i = g + 8 | 0; j = g + 12 | 0; h = g + 4 | 0; f = g; c[i >> 2] = b; a[j >> 0] = e; a[(c[i >> 2] | 0) + 1 >> 0] = 1; c[h >> 2] = (d[j >> 0] | 0) >> 4; c[f >> 2] = uc(c[i >> 2] | 0, c[h >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { l = g; return } Pb[c[(c[f >> 2] | 0) + 32 >> 2] & 511](c[f >> 2] | 0); l = g; return } function Cc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 8 | 0; g = i + 4 | 0; h = i; c[f >> 2] = b; c[g >> 2] = e; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 24 >> 2] | 0) >>> 0) break; if ((a[(c[(c[f >> 2] | 0) + 28 + (c[h >> 2] << 2) >> 2] | 0) + 7 >> 0] | 0 ? (d[(c[(c[f >> 2] | 0) + 28 + (c[h >> 2] << 2) >> 2] | 0) + 4 >> 0] | 0) != (c[g >> 2] | 0) : 0) ? c[(c[(c[f >> 2] | 0) + 28 + (c[h >> 2] << 2) >> 2] | 0) + 8 + 12 >> 2] & 8192 | 0 : 0) qc(c[f >> 2] | 0, 1); c[h >> 2] = (c[h >> 2] | 0) + 1 } l = i; return } function Dc(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; g = f; c[e >> 2] = b; c[g >> 2] = d; b = c[(c[e >> 2] | 0) + 320 >> 2] | 0; if (c[g >> 2] | 0) { Ec(b, 8); d = 1; b = c[e >> 2] | 0 } else { Ec(b, 112); d = 0; b = c[e >> 2] | 0 } a[b + 316 >> 0] = d; l = f; return } function Ec(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; e = g + 4 | 0; f = g; c[d >> 2] = a; c[e >> 2] = b; while (1) { if (!(c[c[e >> 2] >> 2] | 0)) break; c[f >> 2] = c[d >> 2]; while (1) { if (!(c[c[f >> 2] >> 2] | 0)) break; if ((c[c[f >> 2] >> 2] | 0) == (c[c[e >> 2] >> 2] | 0)) { b = c[f >> 2] | 0; a = c[e >> 2] | 0; c[b >> 2] = c[a >> 2]; c[b + 4 >> 2] = c[a + 4 >> 2] } c[f >> 2] = (c[f >> 2] | 0) + 8 } c[e >> 2] = (c[e >> 2] | 0) + 8 } l = g; return } function Fc(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return a[(c[d >> 2] | 0) + 316 >> 0] | 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, m = 0, n = 0; n = l; l = l + 32 | 0; m = n; h = n + 24 | 0; g = n + 20 | 0; i = n + 16 | 0; j = n + 12 | 0; k = n + 8 | 0; c[h >> 2] = b; c[g >> 2] = e; c[i >> 2] = f; c[j >> 2] = c[(c[h >> 2] | 0) + 320 >> 2]; while (1) { if (!(c[c[j >> 2] >> 2] | 0)) break; if ((c[c[j >> 2] >> 2] | 0) == (c[i >> 2] | 0)) break; c[j >> 2] = (c[j >> 2] | 0) + 8 } if (!(c[c[j >> 2] >> 2] | 0)) { c[k >> 2] = PN(c[i >> 2] | 0) | 0; k = c[k >> 2] | 0 ? c[k >> 2] | 0 : 50434; c[m >> 2] = c[i >> 2]; c[m + 4 >> 2] = k; DK(2, 30469, m); l = n; return } switch (c[g >> 2] | 0) { case 1: { Hc(c[h >> 2] | 0, a[(c[j >> 2] | 0) + 4 >> 0] | 0); break } case 2: { Hc(c[h >> 2] | 0, (d[(c[j >> 2] | 0) + 4 >> 0] | 0 | 128) & 255); break } default: {} } Ic(c[h >> 2] | 0); l = n; return } function Hc(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; e = h + 8 | 0; f = h; c[g >> 2] = b; a[e >> 0] = d; c[f >> 2] = (c[(c[g >> 2] | 0) + 56 >> 2] | 0) + 1 & 255; if ((c[f >> 2] | 0) == (c[(c[g >> 2] | 0) + 52 >> 2] | 0)) { l = h; return } a[(c[g >> 2] | 0) + 60 + (c[(c[g >> 2] | 0) + 56 >> 2] | 0) >> 0] = a[e >> 0] | 0; c[(c[g >> 2] | 0) + 56 >> 2] = c[f >> 2]; l = h; return } function Ic(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; a[(c[e >> 2] | 0) + 7 >> 0] = (c[(c[e >> 2] | 0) + 52 >> 2] | 0) != (c[(c[e >> 2] | 0) + 56 >> 2] | 0); l = d; return } function Jc(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; ic(c[e >> 2] | 0, 2, 2); c[c[e >> 2] >> 2] = c[e >> 2]; c[(c[e >> 2] | 0) + 24 >> 2] = 211; c[(c[e >> 2] | 0) + 28 >> 2] = 212; c[(c[e >> 2] | 0) + 32 >> 2] = 213; c[(c[e >> 2] | 0) + 36 >> 2] = 29; c[(c[e >> 2] | 0) + 40 >> 2] = 146; c[(c[e >> 2] | 0) + 44 >> 2] = 2; c[(c[e >> 2] | 0) + 52 >> 2] = 0; c[(c[e >> 2] | 0) + 56 >> 2] = 0; a[(c[e >> 2] | 0) + 316 >> 0] = 0; b = Qc(216) | 0; c[(c[e >> 2] | 0) + 320 >> 2] = b; l = d; return } function Kc(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[c[e >> 2] >> 2]; IQ(c[(c[d >> 2] | 0) + 320 >> 2] | 0); IQ(c[d >> 2] | 0); l = b; return } function Lc(b) { b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = b; c[e >> 2] = c[c[f >> 2] >> 2]; dc(c[f >> 2] | 0); a[(c[e >> 2] | 0) + 48 >> 0] = 0; c[(c[e >> 2] | 0) + 52 >> 2] = 0; c[(c[e >> 2] | 0) + 56 >> 2] = 0; l = d; return } function Mc(b) { b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = b; c[e >> 2] = c[c[f >> 2] >> 2]; ec(c[f >> 2] | 0); a[(c[e >> 2] | 0) + 48 >> 0] = 0; c[(c[e >> 2] | 0) + 52 >> 2] = 0; c[(c[e >> 2] | 0) + 56 >> 2] = 0; l = d; return } function Nc(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j; h = j + 16 | 0; f = j + 12 | 0; g = j + 8 | 0; e = j + 4 | 0; c[f >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; if (!(c[g >> 2] | 0)) { c[h >> 2] = Rc(c[f >> 2] | 0, c[e >> 2] | 0) | 0; i = c[h >> 2] | 0; l = j; return i | 0 } if ((c[g >> 2] | 0) == 2) { c[h >> 2] = Sc(c[f >> 2] | 0, c[e >> 2] | 0) | 0; i = c[h >> 2] | 0; l = j; return i | 0 } if ((c[g >> 2] | 0) != 3) { c[i >> 2] = c[g >> 2]; cg(30520, i) } c[h >> 2] = fc(c[f >> 2] | 0, c[g >> 2] | 0, c[e >> 2] | 0) | 0; i = c[h >> 2] | 0; l = j; return i | 0 } function Oc(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; h = f + 8 | 0; g = f + 4 | 0; e = f; c[h >> 2] = b; c[g >> 2] = d; c[e >> 2] = c[c[h >> 2] >> 2]; if (c[g >> 2] | 0) { l = f; return } a[(c[e >> 2] | 0) + 48 >> 0] = 0; Ic(c[e >> 2] | 0); l = f; return } function Pc(a, b, e, f) { a = a | 0; b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; m = n; i = n + 20 | 0; j = n + 16 | 0; g = n + 12 | 0; h = n + 8 | 0; k = n + 4 | 0; c[i >> 2] = a; c[j >> 2] = b; c[g >> 2] = e; c[h >> 2] = f; c[k >> 2] = c[g >> 2]; if ((c[j >> 2] | 0) != 3) { c[m >> 2] = c[j >> 2]; cg(30500, m) } if ((c[j >> 2] | 0) == 2 & (c[h >> 2] | 0) == 2) { c[(c[i >> 2] | 0) + 8 + 8 >> 2] = (d[c[k >> 2] >> 0] | 0) << 8 | (d[(c[k >> 2] | 0) + 1 >> 0] | 0); l = n; return } else { hc(c[i >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0); l = n; return } } function Qc(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; f = g + 8 | 0; d = g + 4 | 0; b = g; c[f >> 2] = a; c[d >> 2] = 0; do { a = (c[(c[f >> 2] | 0) + (c[d >> 2] << 3) >> 2] | 0) != 0; c[d >> 2] = (c[d >> 2] | 0) + 1 } while (a); c[b >> 2] = HQ(c[d >> 2] << 3) | 0; if (!(c[b >> 2] | 0)) { c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { QQ(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] << 3 | 0) | 0; c[e >> 2] = c[b >> 2]; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function Rc(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 32 | 0; k = m + 16 | 0; h = m + 12 | 0; n = m + 8 | 0; f = m + 21 | 0; g = m + 20 | 0; i = m + 4 | 0; j = m; c[h >> 2] = b; c[n >> 2] = e; c[j >> 2] = c[c[h >> 2] >> 2]; c[i >> 2] = c[n >> 2]; if (!(a[(c[j >> 2] | 0) + 48 >> 0] | 0)) { if (Tc(c[j >> 2] | 0, f) | 0) { c[k >> 2] = 0; n = c[k >> 2] | 0; l = m; return n | 0 } if (Tc(c[j >> 2] | 0, g) | 0) a[g >> 0] = -1; c[(c[h >> 2] | 0) + 8 >> 2] = d[f >> 0] << 8 | d[g >> 0] } a[(c[j >> 2] | 0) + 48 >> 0] = 1; a[c[i >> 2] >> 0] = (c[(c[h >> 2] | 0) + 8 >> 2] | 0) >>> 8; a[(c[i >> 2] | 0) + 1 >> 0] = c[(c[h >> 2] | 0) + 8 >> 2]; c[k >> 2] = 2; n = c[k >> 2] | 0; l = m; return n | 0 } function Sc(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; c[e + 12 >> 2] = b; c[g >> 2] = d; c[f >> 2] = c[g >> 2]; a[c[f >> 2] >> 0] = -1; a[(c[f >> 2] | 0) + 1 >> 0] = -1; cg(30538, e); l = e; return 2 } function Tc(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = b; c[e >> 2] = d; if ((c[(c[f >> 2] | 0) + 52 >> 2] | 0) == (c[(c[f >> 2] | 0) + 56 >> 2] | 0)) { a[c[e >> 2] >> 0] = 0; c[g >> 2] = 1; g = c[g >> 2] | 0; l = h; return g | 0 } else { a[c[e >> 2] >> 0] = a[(c[f >> 2] | 0) + 60 + (c[(c[f >> 2] | 0) + 52 >> 2] | 0) >> 0] | 0; c[(c[f >> 2] | 0) + 52 >> 2] = (c[(c[f >> 2] | 0) + 52 >> 2] | 0) + 1 & 255; c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function Uc() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(324) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { Jc(c[a >> 2] | 0); c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function Vc(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; k = l; l = l + 16 | 0; j = k + 12 | 0; g = k + 8 | 0; h = k + 4 | 0; i = k; c[j >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; c[i >> 2] = f; if ((c[(c[j >> 2] | 0) + 56 >> 2] ^ c[g >> 2]) & 1 | 0) c[(c[j >> 2] | 0) + 52 >> 2] = 1; c[(c[j >> 2] | 0) + 56 >> 2] = c[g >> 2]; b = (c[j >> 2] | 0) + 60 | 0; c[b >> 2] = (c[b >> 2] | 0) + (c[h >> 2] | 0); b = (c[j >> 2] | 0) + 64 | 0; c[b >> 2] = (c[b >> 2] | 0) + (c[i >> 2] | 0); if ((c[(c[j >> 2] | 0) + 60 >> 2] | 0) == 0 ? (c[(c[j >> 2] | 0) + 64 >> 2] | 0) == 0 : 0) { b = c[j >> 2] | 0; b = b + 52 | 0; b = c[b >> 2] | 0; b = b & 255; j = c[j >> 2] | 0; j = j + 7 | 0; a[j >> 0] = b; l = k; return } c[(c[j >> 2] | 0) + 52 >> 2] = 1; b = c[j >> 2] | 0; b = b + 52 | 0; b = c[b >> 2] | 0; b = b & 255; j = c[j >> 2] | 0; j = j + 7 | 0; a[j >> 0] = b; l = k; return } function Wc(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; ic(c[d >> 2] | 0, 3, 1); c[c[d >> 2] >> 2] = c[d >> 2]; c[(c[d >> 2] | 0) + 24 >> 2] = 214; c[(c[d >> 2] | 0) + 28 >> 2] = 215; c[(c[d >> 2] | 0) + 32 >> 2] = 216; c[(c[d >> 2] | 0) + 36 >> 2] = 30; c[(c[d >> 2] | 0) + 40 >> 2] = 147; c[(c[d >> 2] | 0) + 52 >> 2] = 0; c[(c[d >> 2] | 0) + 56 >> 2] = 0; c[(c[d >> 2] | 0) + 60 >> 2] = 0; c[(c[d >> 2] | 0) + 64 >> 2] = 0; c[(c[d >> 2] | 0) + 68 >> 2] = 0; c[(c[d >> 2] | 0) + 72 >> 2] = 0; c[(c[d >> 2] | 0) + 76 >> 2] = 0; l = b; return } function Xc(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; IQ(c[c[d >> 2] >> 2] | 0); l = b; return } function Yc(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; d = b + 4 | 0; e = b; c[d >> 2] = a; c[e >> 2] = c[c[d >> 2] >> 2]; dc(c[d >> 2] | 0); c[(c[e >> 2] | 0) + 52 >> 2] = 0; c[(c[e >> 2] | 0) + 56 >> 2] = 0; c[(c[e >> 2] | 0) + 60 >> 2] = 0; c[(c[e >> 2] | 0) + 64 >> 2] = 0; c[(c[e >> 2] | 0) + 68 >> 2] = 0; c[(c[e >> 2] | 0) + 72 >> 2] = 0; c[(c[e >> 2] | 0) + 76 >> 2] = 0; c[(c[d >> 2] | 0) + 8 >> 2] = 32896; l = b; return } function Zc(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[c[e >> 2] >> 2]; ec(c[e >> 2] | 0); c[(c[d >> 2] | 0) + 52 >> 2] = 0; c[(c[d >> 2] | 0) + 56 >> 2] = 0; c[(c[d >> 2] | 0) + 60 >> 2] = 0; c[(c[d >> 2] | 0) + 64 >> 2] = 0; c[(c[d >> 2] | 0) + 68 >> 2] = 0; c[(c[d >> 2] | 0) + 72 >> 2] = 0; c[(c[d >> 2] | 0) + 76 >> 2] = 0; l = b; return } function _c(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; i = h + 8 | 0; f = h + 4 | 0; e = h; c[i >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; d = c[i >> 2] | 0; if (!(c[f >> 2] | 0)) { c[g >> 2] = ad(d, c[e >> 2] | 0) | 0; i = c[g >> 2] | 0; l = h; return i | 0 } else { c[g >> 2] = fc(d, c[f >> 2] | 0, c[e >> 2] | 0) | 0; i = c[g >> 2] | 0; l = h; return i | 0 } return 0 } function $c(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; h = g + 4 | 0; f = g; c[e >> 2] = b; c[h >> 2] = d; c[f >> 2] = c[c[e >> 2] >> 2]; if (c[h >> 2] | 0) { l = g; return } if (!(a[(c[f >> 2] | 0) + 48 >> 0] | 0)) { l = g; return } a[(c[f >> 2] | 0) + 48 >> 0] = 0; c[(c[f >> 2] | 0) + 52 >> 2] = 0; if ((c[(c[f >> 2] | 0) + 68 >> 2] | 0) != (c[(c[f >> 2] | 0) + 56 >> 2] | 0)) c[(c[f >> 2] | 0) + 52 >> 2] = 1; h = (c[f >> 2] | 0) + 60 | 0; c[h >> 2] = (c[h >> 2] | 0) - (c[(c[f >> 2] | 0) + 72 >> 2] | 0); h = (c[f >> 2] | 0) + 64 | 0; c[h >> 2] = (c[h >> 2] | 0) - (c[(c[f >> 2] | 0) + 76 >> 2] | 0); if (!(!(c[(c[f >> 2] | 0) + 60 >> 2] | 0) ? !(c[(c[f >> 2] | 0) + 64 >> 2] | 0) : 0)) c[(c[f >> 2] | 0) + 52 >> 2] = 1; a[(c[e >> 2] | 0) + 7 >> 0] = c[(c[f >> 2] | 0) + 52 >> 2]; l = g; return } function ad(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; h = j + 20 | 0; e = j + 16 | 0; k = j + 12 | 0; i = j + 8 | 0; g = j + 4 | 0; f = j; c[e >> 2] = b; c[k >> 2] = d; c[g >> 2] = c[c[e >> 2] >> 2]; c[f >> 2] = c[k >> 2]; if (!(c[(c[g >> 2] | 0) + 52 >> 2] | 0)) { c[h >> 2] = 0; k = c[h >> 2] | 0; l = j; return k | 0 } a[(c[g >> 2] | 0) + 48 >> 0] = 1; c[(c[g >> 2] | 0) + 68 >> 2] = c[(c[g >> 2] | 0) + 56 >> 2]; c[(c[g >> 2] | 0) + 72 >> 2] = c[(c[g >> 2] | 0) + 60 >> 2]; c[(c[g >> 2] | 0) + 76 >> 2] = c[(c[g >> 2] | 0) + 64 >> 2]; c[(c[e >> 2] | 0) + 8 >> 2] = 32896; if (c[(c[g >> 2] | 0) + 68 >> 2] & 1 | 0) { k = (c[e >> 2] | 0) + 8 | 0; c[k >> 2] = c[k >> 2] & 32767 } c[i >> 2] = bd(c[(c[g >> 2] | 0) + 72 >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 8 >> 2] = c[(c[e >> 2] | 0) + 8 >> 2] & 65408 | c[i >> 2]; c[i >> 2] = bd(c[(c[g >> 2] | 0) + 76 >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 8 >> 2] = c[(c[e >> 2] | 0) + 8 >> 2] & 33023 | c[i >> 2] << 8; a[c[f >> 2] >> 0] = (c[(c[e >> 2] | 0) + 8 >> 2] | 0) >>> 8; a[(c[f >> 2] | 0) + 1 >> 0] = c[(c[e >> 2] | 0) + 8 >> 2]; c[h >> 2] = 2; k = c[h >> 2] | 0; l = j; return k | 0 } function bd(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; a = c[d >> 2] | 0; if ((c[d >> 2] | 0) < 0) { if ((a | 0) < -63) c[d >> 2] = -63; c[b >> 2] = 0 - (c[d >> 2] | 0); c[b >> 2] = ~c[b >> 2] + 1 & 127; d = c[b >> 2] | 0; l = e; return d | 0 } else { if ((a | 0) > 63) c[d >> 2] = 63; c[b >> 2] = c[d >> 2]; d = c[b >> 2] | 0; l = e; return d | 0 } return 0 } function cd() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(80) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { Wc(c[a >> 2] | 0); c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function dd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 272 | 0; f = h; e = h + 268 | 0; i = h + 264 | 0; d = h + 4 | 0; c[e >> 2] = a; c[i >> 2] = b; eJ(d, c[i >> 2] | 0); if (oJ(d) | 0) { l = h; return } while (1) { if (!((oJ(d) | 0) != 0 ^ 1)) { g = 12; break } if (qJ(d, 33616) | 0) { ed(c[(c[e >> 2] | 0) + 4 >> 2] | 0); continue } if (qJ(d, 30871) | 0) { fd(c[e >> 2] | 0); continue } if (qJ(d, 33195) | 0) { gd(c[e >> 2] | 0); continue } if (!(qJ(d, 33204) | 0)) break; hd(c[e >> 2] | 0) } if ((g | 0) == 12) { l = h; return } c[f >> 2] = fJ(d) | 0; OJ(30875, f); l = h; return } function ed(b) { b = b | 0; var d = 0.0, f = 0, g = 0, i = 0, j = 0, k = 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; v = l; l = l + 816 | 0; u = v + 176 | 0; t = v + 152 | 0; r = v + 128 | 0; q = v + 104 | 0; p = v + 80 | 0; s = v + 24 | 0; o = v; j = v + 548 | 0; i = v + 544 | 0; k = v + 540 | 0; g = v + 536 | 0; m = v + 184 | 0; n = v + 552 | 0; c[j >> 2] = b; PJ(33299); c[i >> 2] = Zm(c[j >> 2] | 0) | 0; c[k >> 2] = _m(c[j >> 2] | 0) | 0; c[g >> 2] = $m(c[j >> 2] | 0) | 0; b = c[i >> 2] | 0; f = c[g >> 2] | 0; if ((c[i >> 2] | 0) >>> 0 > 0) d = +(((c[k >> 2] | 0) + (c[g >> 2] | 0) | 0) >>> 0) / +((c[i >> 2] | 0) >>> 0); else d = 1.0; c[o >> 2] = c[k >> 2]; c[o + 4 >> 2] = b; c[o + 8 >> 2] = f; h[o + 16 >> 3] = d; OJ(31211, o); D = e[(c[j >> 2] | 0) + 166 >> 1] & 65535; C = e[(c[j >> 2] | 0) + 166 >> 1] & 32768 | 0 ? 84 : 45; B = e[(c[j >> 2] | 0) + 166 >> 1] & 8192 | 0 ? 83 : 45; A = e[(c[j >> 2] | 0) + 166 >> 1] & 255; z = e[(c[j >> 2] | 0) + 166 >> 1] & 1 | 0 ? 67 : 45; y = e[(c[j >> 2] | 0) + 166 >> 1] & 2 | 0 ? 86 : 45; x = e[(c[j >> 2] | 0) + 166 >> 1] & 4 | 0 ? 90 : 45; w = e[(c[j >> 2] | 0) + 166 >> 1] & 8 | 0 ? 78 : 45; b = e[(c[j >> 2] | 0) + 166 >> 1] & 16 | 0 ? 88 : 45; f = cn(c[j >> 2] | 0) | 0; g = dn(c[j >> 2] | 0) | 0; i = (fn(c[j >> 2] | 0) | 0) & 65535; k = e[(c[j >> 2] | 0) + 166 >> 1] >> 8 & 7; o = c[(c[j >> 2] | 0) + 364 >> 2] | 0; c[s >> 2] = D; c[s + 4 >> 2] = C; c[s + 8 >> 2] = B; c[s + 12 >> 2] = A; c[s + 16 >> 2] = z; c[s + 20 >> 2] = y; c[s + 24 >> 2] = x; c[s + 28 >> 2] = w; c[s + 32 >> 2] = b; c[s + 36 >> 2] = f; c[s + 40 >> 2] = g; c[s + 44 >> 2] = i; c[s + 48 >> 2] = k; c[s + 52 >> 2] = o; OJ(31247, s); o = c[(c[j >> 2] | 0) + 88 + 16 >> 2] | 0; s = c[(c[j >> 2] | 0) + 120 >> 2] | 0; k = c[(c[j >> 2] | 0) + 120 + 16 >> 2] | 0; i = c[(c[j >> 2] | 0) + 152 >> 2] | 0; c[p >> 2] = c[(c[j >> 2] | 0) + 88 >> 2]; c[p + 4 >> 2] = o; c[p + 8 >> 2] = s; c[p + 12 >> 2] = k; c[p + 16 >> 2] = i; OJ(31321, p); i = c[(c[j >> 2] | 0) + 88 + 4 >> 2] | 0; k = c[(c[j >> 2] | 0) + 88 + 20 >> 2] | 0; p = c[(c[j >> 2] | 0) + 120 + 4 >> 2] | 0; s = c[(c[j >> 2] | 0) + 120 + 20 >> 2] | 0; o = en(c[j >> 2] | 0, 0) | 0; c[q >> 2] = i; c[q + 4 >> 2] = k; c[q + 8 >> 2] = p; c[q + 12 >> 2] = s; c[q + 16 >> 2] = o; OJ(31373, q); o = c[(c[j >> 2] | 0) + 88 + 24 >> 2] | 0; s = c[(c[j >> 2] | 0) + 120 + 8 >> 2] | 0; q = c[(c[j >> 2] | 0) + 120 + 24 >> 2] | 0; p = c[j >> 2] | 0; p = c[(a[(c[j >> 2] | 0) + 334 >> 0] | 0 ? p + 168 | 0 : p + 120 + 28 | 0) >> 2] | 0; c[r >> 2] = c[(c[j >> 2] | 0) + 88 + 8 >> 2]; c[r + 4 >> 2] = o; c[r + 8 >> 2] = s; c[r + 12 >> 2] = q; c[r + 16 >> 2] = p; OJ(31425, r); p = c[(c[j >> 2] | 0) + 88 + 28 >> 2] | 0; q = c[(c[j >> 2] | 0) + 120 + 12 >> 2] | 0; r = c[(c[j >> 2] | 0) + 120 + 28 >> 2] | 0; s = c[j >> 2] | 0; s = c[(a[(c[j >> 2] | 0) + 334 >> 0] | 0 ? s + 120 + 28 | 0 : s + 172 | 0) >> 2] | 0; c[t >> 2] = c[(c[j >> 2] | 0) + 88 + 12 >> 2]; c[t + 4 >> 2] = p; c[t + 8 >> 2] = q; c[t + 12 >> 2] = r; c[t + 16 >> 2] = s; OJ(31477, t); Jm(c[j >> 2] | 0, m, c[(c[j >> 2] | 0) + 152 >> 2] | 0); id(n, m); c[u >> 2] = c[(c[j >> 2] | 0) + 152 >> 2]; c[u + 4 >> 2] = n; OJ(31529, u); l = v; return } function fd(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; PJ(31207); Ux(c[(c[d >> 2] | 0) + 8 >> 2] | 0, c[7547] | 0); l = b; return } function gd(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; g = l; l = l + 64 | 0; f = g + 8 | 0; h = g; i = g + 48 | 0; b = g + 44 | 0; e = g + 40 | 0; c[i >> 2] = a; c[e >> 2] = (c[i >> 2] | 0) + 128; PJ(31132); c[h >> 2] = d[(c[e >> 2] | 0) + 2728 >> 0]; OJ(31141, h); c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= 16) break; n = d[(c[e >> 2] | 0) + 4 + (c[b >> 2] | 0) >> 0] | 0; m = c[b >> 2] | 0; k = d[(c[e >> 2] | 0) + 4 + 16 + (c[b >> 2] | 0) >> 0] | 0; j = c[b >> 2] | 0; a = d[(c[e >> 2] | 0) + 4 + 1356 + (c[b >> 2] | 0) >> 0] | 0; h = c[b >> 2] | 0; i = d[(c[e >> 2] | 0) + 4 + 1356 + 16 + (c[b >> 2] | 0) >> 0] | 0; c[f >> 2] = c[b >> 2]; c[f + 4 >> 2] = n; c[f + 8 >> 2] = m; c[f + 12 >> 2] = k; c[f + 16 >> 2] = j; c[f + 20 >> 2] = a; c[f + 24 >> 2] = h; c[f + 28 >> 2] = i; OJ(31151, f); c[b >> 2] = (c[b >> 2] | 0) + 1 } l = g; return } function hd(a) { a = a | 0; var b = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; b = l; l = l + 128 | 0; f = b + 88 | 0; h = b + 72 | 0; g = b + 48 | 0; n = b + 24 | 0; p = b; i = b + 112 | 0; j = b + 108 | 0; c[i >> 2] = a; c[j >> 2] = (c[i >> 2] | 0) + 36; PJ(30899); m = d[(c[j >> 2] | 0) + 12 >> 0] | 0; k = d[(c[j >> 2] | 0) + 14 >> 0] | 0; a = d[(c[j >> 2] | 0) + 15 >> 0] | 0; o = d[(c[j >> 2] | 0) + 88 >> 0] | 0; c[p >> 2] = d[(c[j >> 2] | 0) + 13 >> 0]; c[p + 4 >> 2] = m; c[p + 8 >> 2] = k; c[p + 12 >> 2] = a; c[p + 16 >> 2] = o; OJ(30908, p); p = d[(c[j >> 2] | 0) + 9 >> 0] | 0; o = d[(c[j >> 2] | 0) + 32 >> 0] | 0; a = e[(c[j >> 2] | 0) + 16 >> 1] | 0; k = d[(c[j >> 2] | 0) + 10 >> 0] | 0; m = d[(c[j >> 2] | 0) + 11 >> 0] | 0; c[n >> 2] = d[(c[j >> 2] | 0) + 8 >> 0]; c[n + 4 >> 2] = p; c[n + 8 >> 2] = o; c[n + 12 >> 2] = a; c[n + 16 >> 2] = k; c[n + 20 >> 2] = m; OJ(30957, n); n = d[(c[j >> 2] | 0) + 7 >> 0] | 0; m = d[(c[j >> 2] | 0) + 33 >> 0] | 0; k = c[(c[j >> 2] | 0) + 20 >> 2] | 0 ? 42 : 32; a = e[(c[j >> 2] | 0) + 18 >> 1] | 0; c[g >> 2] = d[(c[j >> 2] | 0) + 6 >> 0]; c[g + 4 >> 2] = n; c[g + 8 >> 2] = m; c[g + 12 >> 2] = k; c[g + 16 >> 2] = a; OJ(31010, g); a = d[(c[j >> 2] | 0) + 5 >> 0] | 0; g = e[(c[j >> 2] | 0) + 24 >> 1] | 0; c[h >> 2] = d[(c[j >> 2] | 0) + 4 >> 0]; c[h + 4 >> 2] = a; c[h + 8 >> 2] = 0; c[h + 12 >> 2] = g; OJ(31051, h); h = d[(c[i >> 2] | 0) + 6069 >> 0] | 0; g = c[(c[j >> 2] | 0) + 28 >> 2] | 0 ? 42 : 32; a = e[(c[j >> 2] | 0) + 26 >> 1] | 0; c[f >> 2] = d[(c[i >> 2] | 0) + 6068 >> 0]; c[f + 4 >> 2] = h; c[f + 8 >> 2] = 0; c[f + 12 >> 2] = g; c[f + 16 >> 2] = a; OJ(31091, f); l = b; return } function id(b, d) { b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 336 | 0; k = r + 40 | 0; n = r + 24 | 0; m = r + 16 | 0; j = r + 8 | 0; g = r; o = r + 72 | 0; q = r + 68 | 0; f = r + 64 | 0; p = r + 60 | 0; i = r + 80 | 0; h = r + 56 | 0; c[o >> 2] = b; c[q >> 2] = d; NP(c[o >> 2] | 0, 59585) | 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[(c[q >> 2] | 0) + 8 >> 2] | 0) >>> 0) break; c[g >> 2] = e[(c[q >> 2] | 0) + 12 + (c[f >> 2] << 1) >> 1]; BQ(i, 31540, g) | 0; FQ(c[o >> 2] | 0, i) | 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } c[f >> 2] = c[(c[q >> 2] | 0) + 8 >> 2]; while (1) { if ((c[f >> 2] | 0) >>> 0 >= 4) break; FQ(c[o >> 2] | 0, 31546) | 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } do if (!(c[c[q >> 2] >> 2] & 1 | 0)) { if (c[c[q >> 2] >> 2] & 4 | 0) { FQ(c[o >> 2] | 0, 50555) | 0; break } b = c[o >> 2] | 0; if (c[c[q >> 2] >> 2] & 16 | 0) { FQ(b, 50900) | 0; break } else { FQ(b, 47054) | 0; break } } else FQ(c[o >> 2] | 0, 50569) | 0; while (0); c[h >> 2] = zj(e[(c[q >> 2] | 0) + 12 >> 1] | 0) | 0; if (!(c[h >> 2] | 0)) c[h >> 2] = (c[q >> 2] | 0) + 32; switch (c[(c[q >> 2] | 0) + 28 >> 2] | 0) { case 0: { c[j >> 2] = c[h >> 2];BQ(i, 31552, j) | 0; break } case 1: { n = (c[q >> 2] | 0) + 96 | 0;c[m >> 2] = c[h >> 2];c[m + 4 >> 2] = n;BQ(i, 31555, m) | 0; break } case 2: { k = (c[q >> 2] | 0) + 96 | 0;m = (c[q >> 2] | 0) + 160 | 0;c[n >> 2] = c[h >> 2];c[n + 4 >> 2] = k;c[n + 8 >> 2] = m;BQ(i, 31563, n) | 0; break } case 3: { j = (c[q >> 2] | 0) + 96 | 0;m = (c[q >> 2] | 0) + 160 | 0;n = (c[q >> 2] | 0) + 224 | 0;c[k >> 2] = c[h >> 2];c[k + 4 >> 2] = j;c[k + 8 >> 2] = m;c[k + 12 >> 2] = n;BQ(i, 31575, k) | 0; break } default: NP(i, 31591) | 0 } FQ(c[o >> 2] | 0, i) | 0; if (!(a[(c[q >> 2] | 0) + 288 >> 0] | 0)) { l = r; return } c[p >> 2] = cP(c[o >> 2] | 0) | 0; c[o >> 2] = (c[o >> 2] | 0) + (c[p >> 2] | 0); while (1) { b = c[o >> 2] | 0; if ((c[p >> 2] | 0) >>> 0 >= 50) break; c[o >> 2] = b + 1; a[b >> 0] = 32; c[p >> 2] = (c[p >> 2] | 0) + 1 } NP(b, 31595) | 0; FQ(c[o >> 2] | 0, (c[q >> 2] | 0) + 288 | 0) | 0; l = r; return } function jd(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; lL((c[d >> 2] | 0) + 6124 | 0); Af(c[d >> 2] | 0); a: while (1) { Yf(c[13609] | 0, 0) | 0; Yf(c[13609] | 0, 0) | 0; if (c[(c[d >> 2] | 0) + 6124 >> 2] | 0) break; while (1) { if (!(a[(c[d >> 2] | 0) + 6120 >> 0] | 0)) continue a; iL(5e4) | 0; nO(c[(c[d >> 2] | 0) + 4924 >> 2] | 0) } } mL(); l = e; return } function kd() { return c[13605] | 0 } function ld(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b + 4 | 0; c[d >> 2] = a; c[13605] = c[d >> 2]; c[b >> 2] = 0; lL((c[d >> 2] | 0) + 6124 | 0); Af(c[d >> 2] | 0); ib(1, 0, 1); Ia(1, 1) | 0; l = b; return } function md() { var b = 0, d = 0, e = 0, f = 0, g = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 304 | 0; d = n; b = n + 296 | 0; j = n + 292 | 0; k = n + 288 | 0; m = n + 284 | 0; g = n + 276 | 0; f = n + 272 | 0; i = n + 268 | 0; e = n + 8 | 0; if (a[(c[13605] | 0) + 6120 >> 0] | 0) { nO(c[(c[13605] | 0) + 4924 >> 2] | 0); l = n; return } h[d >> 3] = .016666666666666666; c[b >> 2] = 7833600; c[j >> 2] = ~~(+h[d >> 3] * +(c[b >> 2] | 0)); c[n + 280 >> 2] = 0; c[g >> 2] = Ca() | 0; c[f >> 2] = c[(c[g >> 2] | 0) + 12 >> 2]; c[i >> 2] = c[(c[g >> 2] | 0) + 16 >> 2]; if ((cb(e | 0) | 0) == 0 ? (c[e >> 2] | 0) == 0 : 0) { ab(k | 0, m | 0) | 0; if ((c[k >> 2] | 0) > (c[f >> 2] | 0)) b = c[f >> 2] | 0; else b = (c[k >> 2] | 0) < 0 ? 0 : c[k >> 2] | 0; c[k >> 2] = b; if ((c[m >> 2] | 0) > (c[i >> 2] | 0)) b = c[i >> 2] | 0; else b = (c[m >> 2] | 0) < 0 ? 0 : c[m >> 2] | 0; c[m >> 2] = b; nd(c[(c[13605] | 0) + 4 >> 2] | 0, 2088, c[m >> 2] & 65535); nd(c[(c[13605] | 0) + 4 >> 2] | 0, 2090, c[k >> 2] & 65535); nd(c[(c[13605] | 0) + 4 >> 2] | 0, 2092, c[m >> 2] & 65535); nd(c[(c[13605] | 0) + 4 >> 2] | 0, 2094, c[k >> 2] & 65535); nd(c[(c[13605] | 0) + 4 >> 2] | 0, 2096, c[m >> 2] & 65535); nd(c[(c[13605] | 0) + 4 >> 2] | 0, 2098, c[k >> 2] & 65535) } while (1) { if ((c[j >> 2] | 0) <= 0) { b = 17; break } m = Yf(c[13609] | 0, 0) | 0; c[j >> 2] = (c[j >> 2] | 0) - m; if (c[(c[13605] | 0) + 6124 >> 2] | 0) { b = 14; break } if (a[(c[13605] | 0) + 6120 >> 0] | 0) { b = 16; break } } if ((b | 0) == 14) { mL(); zb(); l = n; return } else if ((b | 0) == 16) { nO(c[(c[13605] | 0) + 4924 >> 2] | 0); l = n; return } else if ((b | 0) == 17) { l = n; return } } function nd(d, f, g) { d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 4 | 0; h = k; j = k + 8 | 0; c[i >> 2] = d; c[h >> 2] = f; b[j >> 1] = g; c[h >> 2] = c[h >> 2] & 16777215; if (((c[h >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[i >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + (c[h >> 2] | 0) >> 0] = (e[j >> 1] | 0) >> 8; a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] = e[j >> 1] | 0; l = k; return } else { Sb[c[(c[i >> 2] | 0) + 24 >> 2] & 31](c[(c[i >> 2] | 0) + 4 >> 2] | 0, c[h >> 2] | 0, b[j >> 1] | 0); l = k; return } } function od(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = l; l = l + 16 | 0; c[e + 8 >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; l = e; return } function pd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; c[d >> 2] = b; if (c[(c[f >> 2] | 0) + 4924 >> 2] | 0) nO(c[(c[f >> 2] | 0) + 4924 >> 2] | 0); a = (qJ(c[d >> 2] | 0, 50910) | 0) != 0; b = c[d >> 2] | 0; do if (a) ZI(b, (c[f >> 2] | 0) + 28 | 0); else { a = (qJ(b, 50906) | 0) != 0; b = c[d >> 2] | 0; if (a) { qd(b, c[f >> 2] | 0); break } a = (qJ(b, 50826) | 0) != 0; b = c[d >> 2] | 0; if (a) { rd(b, c[f >> 2] | 0); break } a = (qJ(b, 30643) | 0) != 0; b = c[d >> 2] | 0; if (a) { sd(b, c[f >> 2] | 0); break } a = (qJ(b, 50771) | 0) != 0; b = c[d >> 2] | 0; if (a) { td(b, c[f >> 2] | 0); break } a = (qJ(b, 30714) | 0) != 0; b = c[d >> 2] | 0; if (a) { ud(b, c[f >> 2] | 0); break } a = (qJ(b, 30720) | 0) != 0; b = c[d >> 2] | 0; if (a) { vd(b, c[f >> 2] | 0); break } a = (qJ(b, 50759) | 0) != 0; b = c[d >> 2] | 0; if (a) { wd(b, c[f >> 2] | 0); break } a = (qJ(b, 50820) | 0) != 0; b = c[d >> 2] | 0; if (a) { xd(b, c[f >> 2] | 0); break } a = (qJ(b, 50761) | 0) != 0; b = c[d >> 2] | 0; if (a) { yd(b, c[f >> 2] | 0); break } if (qJ(b, 50765) | 0) { zd(c[d >> 2] | 0, c[f >> 2] | 0); break } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } while (0); if (c[(c[f >> 2] | 0) + 4924 >> 2] | 0) eO(c[(c[f >> 2] | 0) + 4924 >> 2] | 0, 51620, 51563) | 0; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } function qd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; g = f + 8 | 0; e = f + 4 | 0; d = f; c[g >> 2] = a; c[e >> 2] = b; c[d >> 2] = 1; LJ(c[g >> 2] | 0, d) | 0; if (!(pJ(c[g >> 2] | 0) | 0)) { l = f; return } while (1) { a = c[e >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 <= 0) break; Yf(a, 1) | 0; c[d >> 2] = (c[d >> 2] | 0) - 1 } ed(c[a + 4 >> 2] | 0); l = f; return } function rd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; b = (qJ(c[d >> 2] | 0, 50910) | 0) != 0; a = c[d >> 2] | 0; if (b) { Ed(a, c[e >> 2] | 0); l = f; return } b = (qJ(a, 50757) | 0) != 0; a = c[d >> 2] | 0; if (b) { Fd(a, c[e >> 2] | 0); l = f; return } if (!(pJ(a) | 0)) { l = f; return } jd(c[e >> 2] | 0); l = f; return } function sd(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 4 | 0; g = i; h = i + 8 | 0; c[f >> 2] = a; c[g >> 2] = d; if (!(JJ(c[f >> 2] | 0, h) | 0)) b[h >> 1] = 2; if (!(pJ(c[f >> 2] | 0) | 0)) { l = i; return } an(c[(c[g >> 2] | 0) + 4 >> 2] | 0, e[h >> 1] | 0); ed(c[(c[g >> 2] | 0) + 4 >> 2] | 0); l = i; return } function td(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 368 | 0; d = i + 364 | 0; h = i + 360 | 0; g = i + 356 | 0; e = i + 352 | 0; f = i; c[d >> 2] = a; c[h >> 2] = b; c[e >> 2] = 1; while (1) { if (!(qJ(c[d >> 2] | 0, 50771) | 0)) break; c[e >> 2] = (c[e >> 2] | 0) + 1 } LJ(c[d >> 2] | 0, e) | 0; if (!(pJ(c[d >> 2] | 0) | 0)) { l = i; return } c[g >> 2] = bn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; lL((c[h >> 2] | 0) + 6124 | 0); while (1) { if ((c[e >> 2] | 0) >>> 0 <= 0) break; Jm(c[(c[h >> 2] | 0) + 4 >> 2] | 0, f, c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2] | 0); a = c[h >> 2] | 0; if (c[f >> 2] & 4 | 0) { if (Dd(a, (c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2] | 0) + (c[f + 8 >> 2] << 1) | 0) | 0) break } else { if (Bd(a) | 0) break; b = bn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; if ((b | 0) != (c[g >> 2] | 0) ? Dd(c[h >> 2] | 0, c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + 380 >> 2] | 0) | 0 : 0) break } c[e >> 2] = (c[e >> 2] | 0) - 1 } mL(); ed(c[(c[h >> 2] | 0) + 4 >> 2] | 0); l = i; return } function ud(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = a; c[d >> 2] = b; if (!(pJ(c[f >> 2] | 0) | 0)) { l = e; return } Vf(c[d >> 2] | 0); ed(c[(c[d >> 2] | 0) + 4 >> 2] | 0); l = e; return } function vd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 368 | 0; h = g + 356 | 0; e = g + 352 | 0; d = g; c[h >> 2] = a; c[e >> 2] = b; if (!(pJ(c[h >> 2] | 0) | 0)) { l = g; return } lL((c[e >> 2] | 0) + 6124 | 0); while (1) { Bd(c[e >> 2] | 0) | 0; if (Cd(c[e >> 2] | 0) | 0) break; Jm(c[(c[e >> 2] | 0) + 4 >> 2] | 0, d, c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2] | 0); if (c[d >> 2] & 8 | 0) { f = 5; break } } if ((f | 0) == 5) ed(c[(c[e >> 2] | 0) + 4 >> 2] | 0); mL(); l = g; return } function wd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 288 | 0; f = j + 8 | 0; e = j; d = j + 20 | 0; g = j + 16 | 0; i = j + 12 | 0; h = j + 24 | 0; c[d >> 2] = a; c[g >> 2] = b; if (oJ(c[d >> 2] | 0) | 0) { ed(c[(c[g >> 2] | 0) + 4 >> 2] | 0); l = j; return } if (!(lJ(c[d >> 2] | 0, h, 256) | 0)) { jJ(c[d >> 2] | 0, 31598); l = j; return } if (gn(c[(c[g >> 2] | 0) + 4 >> 2] | 0, h, i) | 0) { c[e >> 2] = h; OJ(31616, e); l = j; return } if (oJ(c[d >> 2] | 0) | 0) { c[f >> 2] = c[i >> 2]; OJ(31635, f); l = j; return } f = (LJ(c[d >> 2] | 0, i) | 0) != 0; a = c[d >> 2] | 0; if (!f) { jJ(a, 31642); l = j; return } if (!(pJ(a) | 0)) { l = j; return } jn(c[(c[g >> 2] | 0) + 4 >> 2] | 0, h, c[i >> 2] | 0) | 0; ed(c[(c[g >> 2] | 0) + 4 >> 2] | 0); l = j; return } function xd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; c[d >> 2] = a; c[f >> 2] = b; b = (oJ(c[d >> 2] | 0) | 0) != 0; a = c[f >> 2] | 0; if (b) { ed(c[a + 4 >> 2] | 0); l = e; return } else { dd(a, fJ(c[d >> 2] | 0) | 0); l = e; return } } function yd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h + 12 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[d >> 2] = a; c[g >> 2] = b; c[f >> 2] = 1; while (1) { if (!(qJ(c[d >> 2] | 0, 50761) | 0)) break; c[f >> 2] = (c[f >> 2] | 0) + 1 } LJ(c[d >> 2] | 0, f) | 0; if (!(pJ(c[d >> 2] | 0) | 0)) { l = h; return } lL((c[g >> 2] | 0) + 6124 | 0); c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) break; Bd(c[g >> 2] | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } mL(); ed(c[(c[g >> 2] | 0) + 4 >> 2] | 0); l = h; return } function zd(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, m = 0; m = l; l = l + 640 | 0; k = m; e = m + 376 | 0; i = m + 372 | 0; g = m + 368 | 0; d = m + 364 | 0; f = m + 360 | 0; h = m + 8 | 0; j = m + 384 | 0; c[e >> 2] = a; c[i >> 2] = b; if (c[294] | 0) { c[294] = 0; c[13606] = c[(c[(c[i >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2] } c[d >> 2] = c[13606]; c[f >> 2] = 16; b = (qJ(c[e >> 2] | 0, 50729) | 0) != 0; a = c[e >> 2] | 0; if (b) { Ad(a, c[i >> 2] | 0, c[d >> 2] | 0); l = m; return } if (LJ(a, d) | 0) LJ(c[e >> 2] | 0, f) | 0; if (!(pJ(c[e >> 2] | 0) | 0)) { l = m; return } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[f >> 2] | 0) >>> 0) break; Jm(c[(c[i >> 2] | 0) + 4 >> 2] | 0, h, c[d >> 2] | 0); id(j, h); c[k >> 2] = c[d >> 2]; c[k + 4 >> 2] = j; OJ(31529, k); c[d >> 2] = (c[d >> 2] | 0) + (c[h + 8 >> 2] << 1); c[g >> 2] = (c[g >> 2] | 0) + 1 } c[13606] = c[d >> 2]; l = m; return } function Ad(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 1680 | 0; r = s; f = s + 1416 | 0; o = s + 1412 | 0; e = s + 1408 | 0; g = s + 1404 | 0; h = s + 1400 | 0; i = s + 1396 | 0; j = s + 1392 | 0; q = s + 1388 | 0; n = s + 1384 | 0; k = s + 360 | 0; m = s + 8 | 0; p = s + 1424 | 0; c[f >> 2] = a; c[o >> 2] = b; c[e >> 2] = d; c[g >> 2] = 16; if (LJ(c[f >> 2] | 0, e) | 0) LJ(c[f >> 2] | 0, g) | 0; if (!(pJ(c[f >> 2] | 0) | 0)) { l = s; return } if ((c[g >> 2] | 0) >>> 0 > 256) c[g >> 2] = 256; c[h >> 2] = 0; c[i >> 2] = 0; c[j >> 2] = 0; c[q >> 2] = 5; c[n >> 2] = (c[e >> 2] | 0) - ((c[g >> 2] | 0) * 12 | 0) & -2; while (1) { if ((c[n >> 2] | 0) >>> 0 > (c[e >> 2] | 0) >>> 0) break; do if (!(c[q >> 2] | 0)) { c[k + (c[i >> 2] << 2) >> 2] = c[n >> 2]; c[i >> 2] = (((c[i >> 2] | 0) + 1 | 0) >>> 0) % 256 | 0; if ((c[i >> 2] | 0) == (c[h >> 2] | 0)) { c[h >> 2] = (((c[h >> 2] | 0) + 1 | 0) >>> 0) % 256 | 0; break } else { c[j >> 2] = (c[j >> 2] | 0) + 1; break } } else c[q >> 2] = (c[q >> 2] | 0) - 1; while (0); Jm(c[(c[o >> 2] | 0) + 4 >> 2] | 0, m, c[n >> 2] | 0); c[n >> 2] = (c[n >> 2] | 0) + (c[m + 8 >> 2] << 1) } if ((c[j >> 2] | 0) >>> 0 > (c[g >> 2] | 0) >>> 0) c[h >> 2] = (((c[h >> 2] | 0) + ((c[j >> 2] | 0) - (c[g >> 2] | 0)) | 0) >>> 0) % 256 | 0; while (1) { if ((c[h >> 2] | 0) == (c[i >> 2] | 0)) break; c[n >> 2] = c[k + (c[h >> 2] << 2) >> 2]; Jm(c[(c[o >> 2] | 0) + 4 >> 2] | 0, m, c[n >> 2] | 0); id(p, m); c[r >> 2] = c[n >> 2]; c[r + 4 >> 2] = p; OJ(31529, r); c[h >> 2] = (((c[h >> 2] | 0) + 1 | 0) >>> 0) % 256 | 0 } l = s; return } function Bd(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; c[b >> 2] = Zm(c[(c[d >> 2] | 0) + 4 >> 2] | 0) | 0; while (1) { a = Zm(c[(c[d >> 2] | 0) + 4 >> 2] | 0) | 0; if ((a | 0) != (c[b >> 2] | 0)) { b = 5; break } Yf(c[d >> 2] | 0, 0) | 0; if (Cd(c[d >> 2] | 0) | 0) { b = 4; break } } if ((b | 0) == 4) { c[e >> 2] = 1; e = c[e >> 2] | 0; l = f; return e | 0 } else if ((b | 0) == 5) { c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function Cd(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; b = e + 8 | 0; d = e + 4 | 0; f = e; c[d >> 2] = a; c[f >> 2] = c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2] & 16777215; if (YI((c[d >> 2] | 0) + 28 | 0, 0, c[f >> 2] | 0, c[7547] | 0) | 0) { c[b >> 2] = 1; f = c[b >> 2] | 0; l = e; return f | 0 } if (c[(c[d >> 2] | 0) + 6124 >> 2] | 0) { c[b >> 2] = 1; f = c[b >> 2] | 0; l = e; return f | 0 } else { c[b >> 2] = 0; f = c[b >> 2] | 0; l = e; return f | 0 } return 0 } function Dd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = b; while (1) { if ((c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2] | 0) == (c[d >> 2] | 0)) { b = 5; break } Yf(c[e >> 2] | 0, 0) | 0; if (Cd(c[e >> 2] | 0) | 0) { b = 4; break } } if ((b | 0) == 4) { c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((b | 0) == 5) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function Ed(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; g = h + 8 | 0; d = h + 4 | 0; e = h; c[f >> 2] = a; c[g >> 2] = b; while (1) { if (!(LJ(c[f >> 2] | 0, d) | 0)) break; c[e >> 2] = FI(c[d >> 2] | 0) | 0; SI((c[g >> 2] | 0) + 28 | 0, c[e >> 2] | 0) | 0 } if (!(pJ(c[f >> 2] | 0) | 0)) { l = h; return } lL((c[g >> 2] | 0) + 6124 | 0); Af(c[g >> 2] | 0); do {} while (!(Bd(c[g >> 2] | 0) | 0)); mL(); l = h; return } function Fd(a, d) { a = a | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 8 | 0; j = n; f = n + 24 | 0; h = n + 20 | 0; g = n + 16 | 0; i = n + 28 | 0; c[f >> 2] = a; c[h >> 2] = d; if (!(JJ(c[f >> 2] | 0, i) | 0)) b[i >> 1] = -1; if (!(pJ(c[f >> 2] | 0) | 0)) { l = n; return } c[g >> 2] = bn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; lL((c[h >> 2] | 0) + 6124 | 0); Af(c[h >> 2] | 0); while (1) { Bd(c[h >> 2] | 0) | 0; if (Cd(c[h >> 2] | 0) | 0) break; d = bn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; if ((d | 0) == (c[g >> 2] | 0)) continue; d = (e[i >> 1] | 0 | 0) == 65535; a = cn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; if (d) { m = 8; break } if ((a | 0) == (e[i >> 1] | 0 | 0)) { m = 10; break } } if ((m | 0) == 8) { m = dn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; c[j >> 2] = a; c[j + 4 >> 2] = m; OJ(31657, j) } else if ((m | 0) == 10) { j = cn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; m = dn(c[(c[h >> 2] | 0) + 4 >> 2] | 0) | 0; c[k >> 2] = j; c[k + 4 >> 2] = m; OJ(31657, k) } mL(); l = n; return } function Gd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; HK(c[f >> 2] | 0, 1032, 12) | 0; OK(c[f >> 2] | 0) | 0; c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + 68 >> 2] = c[e >> 2]; c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + 72 >> 2] = 0; c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + 76 >> 2] = 148; c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + 80 >> 2] = 149; c[(c[(c[e >> 2] | 0) + 4 >> 2] | 0) + 84 >> 2] = 1; l = d; return } function Hd(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, m = 0; d = l; l = l + 48 | 0; e = d; j = d + 40 | 0; i = d + 36 | 0; k = d + 32 | 0; m = d + 28 | 0; c[j >> 2] = a; c[i >> 2] = b; c[m >> 2] = c[j >> 2]; c[k >> 2] = en(c[(c[m >> 2] | 0) + 4 >> 2] | 0, 0) | 0; j = c[k >> 2] | 0; i = c[i >> 2] | 0; h = (Jd(c[(c[m >> 2] | 0) + 4 >> 2] | 0, c[k >> 2] | 0) | 0) & 65535; g = (Jd(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[k >> 2] | 0) + 2 | 0) | 0) & 65535; f = (Jd(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[k >> 2] | 0) + 4 | 0) | 0) & 65535; a = (Jd(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[k >> 2] | 0) + 6 | 0) | 0) & 65535; b = (Jd(c[(c[m >> 2] | 0) + 4 >> 2] | 0, (c[k >> 2] | 0) + 8 | 0) | 0) & 65535; c[e >> 2] = j; c[e + 4 >> 2] = i; c[e + 8 >> 2] = h; c[e + 12 >> 2] = g; c[e + 16 >> 2] = f; c[e + 20 >> 2] = a; c[e + 24 >> 2] = b; DK(3, 31714, e); l = d; return } function Id(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; g = h; i = h + 28 | 0; f = h + 24 | 0; d = h + 20 | 0; e = h + 16 | 0; c[i >> 2] = a; c[f >> 2] = b; c[e >> 2] = c[i >> 2]; b = c[(c[e >> 2] | 0) + 4 >> 2] | 0; c[d >> 2] = (Jd(b, en(c[(c[e >> 2] | 0) + 4 >> 2] | 0, 0) | 0) | 0) & 65535; switch (c[f >> 2] | 0) { case 0: { Vf(c[e >> 2] | 0);l = h; return } case 10: { Ei((c[e >> 2] | 0) + 3868 | 0);l = h; return } case 46: case 44: case 43: case 42: case 41: case 40: case 39: case 32: case 26: case 25: { l = h; return } default: { a = en(c[(c[e >> 2] | 0) + 4 >> 2] | 0, 0) | 0;b = c[f >> 2] | 0;f = dn(c[(c[e >> 2] | 0) + 4 >> 2] | 0) | 0;i = c[d >> 2] | 0;c[g >> 2] = a;c[g + 4 >> 2] = b;c[g + 8 >> 2] = f;c[g + 12 >> 2] = i;DK(3, 31678, g);l = h; return } } } function Jd(a, e) { a = a | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[g >> 2] = a; c[f >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; e = c[g >> 2] | 0; if (((c[f >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { b[h >> 1] = (d[(c[e + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) << 8 | (d[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] | 0); h = b[h >> 1] | 0; l = i; return h | 0 } else { b[h >> 1] = Vb[c[e + 12 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0; h = b[h >> 1] | 0; l = i; return h | 0 } return 0 } function Kd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 8 | 0; h = j; e = j + 28 | 0; k = j + 24 | 0; g = j + 20 | 0; d = j + 16 | 0; f = j + 12 | 0; c[k >> 2] = a; c[g >> 2] = b; c[f >> 2] = c[k >> 2]; switch (c[g >> 2] | 0) { case 0: { c[e >> 2] = 0;k = c[e >> 2] | 0;l = j; return k | 0 } case 1: { tg(c[f >> 2] | 0, 51565, 51563) | 0;c[e >> 2] = 0;k = c[e >> 2] | 0;l = j; return k | 0 } case 2: { tg(c[f >> 2] | 0, 51554, 51563) | 0;c[e >> 2] = 0;k = c[e >> 2] | 0;l = j; return k | 0 } case 3: { c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= 4) break; Ji((c[f >> 2] | 0) + 3868 | 0, (c[d >> 2] | 0) + 1 | 0); c[d >> 2] = (c[d >> 2] | 0) + 1 } c[e >> 2] = 0;k = c[e >> 2] | 0;l = j; return k | 0 } case 4: { c[h >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2];DK(2, 31776, h);c[e >> 2] = 0;k = c[e >> 2] | 0;l = j; return k | 0 } default: { c[(c[f >> 2] | 0) + 3868 + 204 >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + 88 >> 2];c[(c[f >> 2] | 0) + 3868 + 208 >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + 120 >> 2];c[(c[f >> 2] | 0) + 3868 + 212 >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + 120 + 4 >> 2];c[(c[f >> 2] | 0) + 3868 + 216 >> 2] = c[(c[(c[f >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2]; if (!(Mi((c[f >> 2] | 0) + 3868 | 0, c[g >> 2] | 0) | 0)) { Ld(c[(c[f >> 2] | 0) + 4 >> 2] | 0, 0, c[(c[f >> 2] | 0) + 3868 + 204 >> 2] | 0); Md(c[(c[f >> 2] | 0) + 4 >> 2] | 0, 0, c[(c[f >> 2] | 0) + 3868 + 208 >> 2] | 0); Md(c[(c[f >> 2] | 0) + 4 >> 2] | 0, 1, c[(c[f >> 2] | 0) + 3868 + 212 >> 2] | 0); kn(c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[(c[f >> 2] | 0) + 3868 + 216 >> 2] | 0); c[e >> 2] = 0; k = c[e >> 2] | 0; l = j; return k | 0 } else { c[i >> 2] = c[g >> 2]; cg(31792, i); c[e >> 2] = 1; k = c[e >> 2] | 0; l = j; return k | 0 } } } return 0 } function Ld(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function Md(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function Nd(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; k = m + 32 | 0; j = m + 24 | 0; i = m + 16 | 0; h = m + 8 | 0; g = m; f = m + 40 | 0; e = m + 36 | 0; c[f >> 2] = b; c[e >> 2] = d; switch (c[e >> 2] | 0) { case 2: { tg(c[f >> 2] | 0, 34875, 51563) | 0;l = m; return 0 } case 3: { tg(c[f >> 2] | 0, 34875, 51451) | 0;l = m; return 0 } case 4: { tg(c[f >> 2] | 0, 34875, 51453) | 0;l = m; return 0 } case 5: { tg(c[f >> 2] | 0, 34875, 51455) | 0;l = m; return 0 } case 91: case 53: { do if (c[(c[f >> 2] | 0) + 3176 >> 2] | 0) if (a[(c[(c[f >> 2] | 0) + 3176 >> 2] | 0) + 280 >> 0] | 0) { cg(31815, g); Ve(c[(c[f >> 2] | 0) + 3176 >> 2] | 0, 1); break } else { cg(31836, h); Ve(c[(c[f >> 2] | 0) + 3176 >> 2] | 0, 0); break } while (0); if (!(c[(c[f >> 2] | 0) + 3184 >> 2] | 0)) { l = m; return 0 } if (Fc(c[(c[f >> 2] | 0) + 3184 >> 2] | 0) | 0) { cg(31836, i); Dc(c[(c[f >> 2] | 0) + 3184 >> 2] | 0, 0); l = m; return 0 } else { cg(31815, j); Dc(c[(c[f >> 2] | 0) + 3184 >> 2] | 0, 1); l = m; return 0 } } case 39: { cf(c[f >> 2] | 0, 7, 1);cf(c[f >> 2] | 0, 7, 0);l = m; return 0 } default: { c[k >> 2] = c[e >> 2];DK(2, 31857, k);l = m; return 0 } } return 0 } function Od(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; e = j + 8 | 0; d = j; h = j + 28 | 0; f = j + 24 | 0; g = j + 20 | 0; c[f >> 2] = b; c[g >> 2] = 0; a[(c[f >> 2] | 0) + 20 >> 0] = 0; if (c[(c[f >> 2] | 0) + 4 >> 2] | 0 ? (c[g >> 2] = Pd(c[f >> 2] | 0) | 0, c[g >> 2] | 0) : 0) { a[(c[f >> 2] | 0) + 20 >> 0] = 1; c[d >> 2] = (c[c[f >> 2] >> 2] | 0) + 1; cg(31883, d) } if ((c[g >> 2] | 0) == 0 ? (c[g >> 2] = Qd(c[f >> 2] | 0) | 0, c[g >> 2] | 0) : 0) { c[e >> 2] = (c[c[f >> 2] >> 2] | 0) + 1; cg(31912, e) } b = c[f >> 2] | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = (c[b >> 2] | 0) + 1; cg(31942, i); c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } else { WB(c[b + 16 >> 2] | 0); c[(c[f >> 2] | 0) + 16 >> 2] = c[g >> 2]; a[(c[f >> 2] | 0) + 92 >> 0] = 0; c[(c[f >> 2] | 0) + 48 >> 2] = 0; c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } return 0 } function Pd(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; if (!(c[(c[b >> 2] | 0) + 4 >> 2] | 0)) { c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } else { c[d >> 2] = yB(c[(c[b >> 2] | 0) + 4 >> 2] | 0, 0) | 0; c[e >> 2] = c[d >> 2]; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function Qd(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 24 | 0; d = j + 20 | 0; e = j + 16 | 0; g = j + 12 | 0; f = j + 8 | 0; b = j + 4 | 0; h = j; c[d >> 2] = a; c[e >> 2] = fz(c[(c[d >> 2] | 0) + 8 >> 2] | 0, c[(c[d >> 2] | 0) + 12 >> 2] | 0) | 0; if (!(c[e >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } if ((Ly(c[e >> 2] | 0) | 0) == 6) { c[g >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; c[f >> 2] = c[(c[g >> 2] | 0) + 68 >> 2]; c[b >> 2] = 0 } else { c[f >> 2] = Rd(c[d >> 2] | 0, c[e >> 2] | 0) | 0; c[b >> 2] = c[f >> 2] } if (!(c[f >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[h >> 2] = mB(c[f >> 2] | 0) | 0; zD(c[b >> 2] | 0); c[i >> 2] = c[h >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function Rd(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; o = p + 44 | 0; f = p + 36 | 0; d = p + 32 | 0; g = p + 28 | 0; j = p + 24 | 0; e = p + 20 | 0; h = p + 16 | 0; m = p + 12 | 0; i = p + 8 | 0; k = p + 4 | 0; n = p; c[p + 40 >> 2] = a; c[f >> 2] = b; if (Sd(c[f >> 2] | 0, e, h) | 0) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } c[n >> 2] = xD() | 0; if (!(c[n >> 2] | 0)) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } c[i >> 2] = 0; c[d >> 2] = 0; a: while (1) { if ((c[d >> 2] | 0) >>> 0 >= (c[e >> 2] | 0) >>> 0) { a = 18; break } c[m >> 2] = 12 - (((c[d >> 2] | 0) >>> 0) / 16 | 0); c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; c[k >> 2] = UC(c[d >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0, 512) | 0; b = c[n >> 2] | 0; if (!(c[k >> 2] | 0)) { a = 12; break a } ED(b, c[k >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0) | 0; if (Zy(c[f >> 2] | 0, c[(c[k >> 2] | 0) + 24 >> 2] | 0, c[i >> 2] | 0, 1) | 0) { a = 14; break a } c[i >> 2] = (c[i >> 2] | 0) + 1; c[j >> 2] = (c[j >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) + 1 } if ((a | 0) == 12) { zD(b); c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((a | 0) == 14) { zD(c[n >> 2] | 0); c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((a | 0) == 18) { c[o >> 2] = c[n >> 2]; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function Sd(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 = l; l = l + 32 | 0; h = i + 16 | 0; j = i + 12 | 0; e = i + 8 | 0; g = i + 4 | 0; f = i; c[j >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; c[f >> 2] = Ty(c[j >> 2] | 0) | 0; do if ((c[f >> 2] | 0) == 800) c[c[g >> 2] >> 2] = 1; else { if ((c[f >> 2] | 0) == 1600) { c[c[g >> 2] >> 2] = 2; break } c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } while (0); c[c[e >> 2] >> 2] = 80; c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } function Td(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; g = i + 8 | 0; d = i; f = i + 24 | 0; e = i + 20 | 0; c[e >> 2] = b; if (!(c[(c[e >> 2] | 0) + 16 >> 2] | 0)) { c[f >> 2] = 1; h = c[f >> 2] | 0; l = i; return h | 0 } c[d >> 2] = (c[c[e >> 2] >> 2] | 0) + 1; cg(31972, d); b = c[e >> 2] | 0; if (a[(c[e >> 2] | 0) + 20 >> 0] | 0) { if (Ud(b) | 0) { c[g >> 2] = (c[c[e >> 2] >> 2] | 0) + 1; cg(31994, g); c[f >> 2] = 1; h = c[f >> 2] | 0; l = i; return h | 0 } } else if (Vd(b) | 0) { c[h >> 2] = (c[c[e >> 2] >> 2] | 0) + 1; cg(32029, h); c[f >> 2] = 1; h = c[f >> 2] | 0; l = i; return h | 0 } a[(c[e >> 2] | 0) + 92 >> 0] = 0; c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } function Ud(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; do if (c[(c[b >> 2] | 0) + 4 >> 2] | 0) if (BB(c[(c[b >> 2] | 0) + 4 >> 2] | 0, c[(c[b >> 2] | 0) + 16 >> 2] | 0, 0) | 0) { c[d >> 2] = 1; break } else { c[d >> 2] = 0; break } else c[d >> 2] = 1; while (0); l = e; return c[d >> 2] | 0 } function Vd(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; d = j + 16 | 0; h = j + 12 | 0; e = j + 8 | 0; g = j + 4 | 0; f = j; c[d >> 2] = b; c[e >> 2] = fz(c[(c[d >> 2] | 0) + 8 >> 2] | 0, c[(c[d >> 2] | 0) + 12 >> 2] | 0) | 0; if (!(c[e >> 2] | 0)) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } c[f >> 2] = gB(c[(c[d >> 2] | 0) + 16 >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } if ((Ly(c[e >> 2] | 0) | 0) != 6) { c[h >> 2] = Wd(c[d >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; zD(c[f >> 2] | 0); if (c[h >> 2] | 0) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } } else { c[g >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; zD(c[(c[g >> 2] | 0) + 68 >> 2] | 0); c[(c[g >> 2] | 0) + 68 >> 2] = c[f >> 2]; a[(c[g >> 2] | 0) + 72 >> 0] = 1 } c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } function Wd(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 576 | 0; s = t + 48 | 0; j = t + 40 | 0; n = t + 36 | 0; g = t + 32 | 0; k = t + 28 | 0; p = t + 24 | 0; h = t + 20 | 0; m = t + 16 | 0; r = t + 12 | 0; i = t + 8 | 0; o = t + 4 | 0; f = t + 56 | 0; q = t; c[t + 44 >> 2] = a; c[j >> 2] = b; c[n >> 2] = d; if (Sd(c[j >> 2] | 0, h, m) | 0) { c[s >> 2] = 1; s = c[s >> 2] | 0; l = t; return s | 0 } c[o >> 2] = 0; c[g >> 2] = 0; a: while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) { f = 19; break } c[r >> 2] = 12 - (((c[g >> 2] | 0) >>> 0) / 16 | 0); c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; c[p >> 2] = 0; while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[r >> 2] | 0) >>> 0) break; c[q >> 2] = HD(c[n >> 2] | 0, c[g >> 2] | 0, c[k >> 2] | 0, c[p >> 2] | 0, 0) | 0; if (!(c[q >> 2] | 0)) TQ(f | 0, 0, 512) | 0; else { c[i >> 2] = 512; if ((e[(c[q >> 2] | 0) + 10 >> 1] | 0 | 0) < 512) { c[i >> 2] = e[(c[q >> 2] | 0) + 10 >> 1]; TQ(f + (c[i >> 2] | 0) | 0, 0, 512 - (c[i >> 2] | 0) | 0) | 0 } QQ(f | 0, c[(c[q >> 2] | 0) + 24 >> 2] | 0, c[i >> 2] | 0) | 0 } if (az(c[j >> 2] | 0, f, (c[o >> 2] | 0) + (c[p >> 2] | 0) | 0, 1) | 0) { f = 15; break a } c[p >> 2] = (c[p >> 2] | 0) + 1 } c[o >> 2] = (c[o >> 2] | 0) + (c[r >> 2] | 0); c[k >> 2] = (c[k >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((f | 0) == 15) { c[s >> 2] = 1; s = c[s >> 2] | 0; l = t; return s | 0 } else if ((f | 0) == 19) { c[s >> 2] = 0; s = c[s >> 2] | 0; l = t; return s | 0 } return 0 } function Xd(d) { d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[f >> 2] = d; a[c[f >> 2] >> 0] = 0; a[(c[f >> 2] | 0) + 1 >> 0] = 0; a[(c[f >> 2] | 0) + 3 >> 0] = 0; a[(c[f >> 2] | 0) + 4 >> 0] = 0; a[(c[f >> 2] | 0) + 5 >> 0] = 127; a[(c[f >> 2] | 0) + 6 >> 0] = 0; c[(c[f >> 2] | 0) + 8 >> 2] = 0; a[(c[f >> 2] | 0) + 12 >> 0] = 0; a[(c[f >> 2] | 0) + 13 >> 0] = 0; b[(c[f >> 2] | 0) + 14 >> 1] = 0; c[(c[f >> 2] | 0) + 16 >> 2] = 0; c[(c[f >> 2] | 0) + 20 >> 2] = 0; c[e >> 2] = 0; while (1) { d = (c[f >> 2] | 0) + 24 | 0; if ((c[e >> 2] | 0) >>> 0 >= 3) break; Yd(d + ((c[e >> 2] | 0) * 96 | 0) | 0, c[e >> 2] | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } c[(c[f >> 2] | 0) + 312 >> 2] = d; a[(c[f >> 2] | 0) + 316 >> 0] = 0; c[(c[f >> 2] | 0) + 320 >> 2] = 0; c[(c[f >> 2] | 0) + 324 >> 2] = 0; l = g; return } function Yd(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; c[c[f >> 2] >> 2] = c[g >> 2]; c[(c[f >> 2] | 0) + 4 >> 2] = 0; c[(c[f >> 2] | 0) + 8 >> 2] = 0; c[(c[f >> 2] | 0) + 12 >> 2] = c[g >> 2]; c[(c[f >> 2] | 0) + 16 >> 2] = 0; a[(c[f >> 2] | 0) + 20 >> 0] = 0; a[(c[f >> 2] | 0) + 21 >> 0] = 0; a[(c[f >> 2] | 0) + 22 >> 0] = 0; c[(c[f >> 2] | 0) + 24 >> 2] = 80; c[(c[f >> 2] | 0) + 28 >> 2] = 1; a[(c[f >> 2] | 0) + 32 >> 0] = 0; a[(c[f >> 2] | 0) + 33 >> 0] = 0; a[(c[f >> 2] | 0) + 34 >> 0] = 0; a[(c[f >> 2] | 0) + 35 >> 0] = 0; a[(c[f >> 2] | 0) + 36 >> 0] = 0; c[(c[f >> 2] | 0) + 40 >> 2] = 0; c[(c[f >> 2] | 0) + 44 >> 2] = 0; c[(c[f >> 2] | 0) + 48 >> 2] = 0; c[(c[f >> 2] | 0) + 52 >> 2] = 0; c[(c[f >> 2] | 0) + 56 >> 2] = 0; c[(c[f >> 2] | 0) + 60 >> 2] = 0; c[(c[f >> 2] | 0) + 64 >> 2] = 65e3; c[(c[f >> 2] | 0) + 68 >> 2] = 0; c[(c[f >> 2] | 0) + 72 >> 2] = 0; c[(c[f >> 2] | 0) + 76 >> 2] = 0; c[(c[f >> 2] | 0) + 80 >> 2] = 783360; c[(c[f >> 2] | 0) + 84 >> 2] = 0; a[(c[f >> 2] | 0) + 92 >> 0] = 0; l = e; return 0 } function Zd(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 320 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 324 >> 2] = c[g >> 2]; l = e; return } function _d(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; h = j + 12 | 0; e = j + 8 | 0; g = j + 4 | 0; f = j; c[h >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; if ((c[e >> 2] | 0) >>> 0 >= 3) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } if ((c[g >> 2] | 0) >>> 0 > 2) { c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } c[f >> 2] = (c[h >> 2] | 0) + 24 + ((c[e >> 2] | 0) * 96 | 0); c[(c[f >> 2] | 0) + 28 >> 2] = c[g >> 2]; if ((c[(c[f >> 2] | 0) + 44 >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 28 >> 2] | 0) >>> 0) $d(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 40 >> 2] | 0, 0); c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } function $d(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; e = i + 8 | 0; g = i + 4 | 0; h = i; c[f >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; if ((c[e >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 24 >> 2] | 0) >>> 0) { l = i; return } if ((c[g >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 28 >> 2] | 0) >>> 0) { l = i; return } if (!(c[(c[f >> 2] | 0) + 16 >> 2] | 0)) { d = VB() | 0; c[(c[f >> 2] | 0) + 16 >> 2] = d } c[h >> 2] = _B(c[(c[f >> 2] | 0) + 16 >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0, 1) | 0; if (!(c[h >> 2] | 0)) { l = i; return } if ((c[(c[h >> 2] | 0) + 4 >> 2] | 0) == 0 ? (d = c[h >> 2] | 0, LB(d, ae(c[e >> 2] | 0) | 0) | 0) : 0) { l = i; return } if (!(c[c[h >> 2] >> 2] | 0)) JB(c[h >> 2] | 0, 5e5); c[(c[f >> 2] | 0) + 40 >> 2] = c[e >> 2]; c[(c[f >> 2] | 0) + 44 >> 2] = c[g >> 2]; c[(c[f >> 2] | 0) + 48 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 56 >> 2] = c[(c[h >> 2] | 0) + 4 >> 2]; if ((c[(c[f >> 2] | 0) + 52 >> 2] | 0) >>> 0 < (c[(c[f >> 2] | 0) + 56 >> 2] | 0) >>> 0) { l = i; return } c[(c[f >> 2] | 0) + 52 >> 2] = 0; l = i; return } function ae(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; c[b >> 2] = (c[b >> 2] | 0) >>> 0 > 79 ? 79 : a; l = d; return c[1180 + ((((c[b >> 2] | 0) >>> 0) / 16 | 0) << 2) >> 2] | 0 } function be(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[f >> 2] = a; c[d >> 2] = b; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= 3) break; c[(c[f >> 2] | 0) + 24 + ((c[e >> 2] | 0) * 96 | 0) + 8 >> 2] = c[d >> 2]; c[e >> 2] = (c[e >> 2] | 0) + 1 } l = g; return } function ce(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; if ((c[e >> 2] | 0) >>> 0 >= 3) { l = h; return } c[(c[g >> 2] | 0) + 24 + ((c[e >> 2] | 0) * 96 | 0) + 12 >> 2] = c[f >> 2]; l = h; return } function de(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 16 | 0; f = k + 12 | 0; g = k + 8 | 0; i = k + 4 | 0; j = k; c[h >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; if ((c[f >> 2] | 0) >>> 0 >= 3) { l = k; return } IQ(c[(c[h >> 2] | 0) + 24 + ((c[f >> 2] | 0) * 96 | 0) + 4 >> 2] | 0); c[(c[h >> 2] | 0) + 24 + ((c[f >> 2] | 0) * 96 | 0) + 4 >> 2] = 0; a[(c[h >> 2] | 0) + 24 + ((c[f >> 2] | 0) * 96 | 0) + 20 >> 0] = 0; if (!(c[g >> 2] | 0)) { l = k; return } c[i >> 2] = cP(c[g >> 2] | 0) | 0; c[j >> 2] = HQ((c[i >> 2] | 0) + 1 | 0) | 0; if (!(c[j >> 2] | 0)) { l = k; return } QQ(c[j >> 2] | 0, c[g >> 2] | 0, (c[i >> 2] | 0) + 1 | 0) | 0; c[(c[h >> 2] | 0) + 24 + ((c[f >> 2] | 0) * 96 | 0) + 4 >> 2] = c[j >> 2]; l = k; return } function ee(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = b; c[e >> 2] = d; if ((c[e >> 2] | 0) >>> 0 >= 3) { c[g >> 2] = 1; g = c[g >> 2] | 0; l = h; return g | 0 } else { c[g >> 2] = (a[(c[f >> 2] | 0) + 24 + ((c[e >> 2] | 0) * 96 | 0) + 21 >> 0] | 0) != 0 & 1; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function fe(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[g >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; if ((c[f >> 2] | 0) >>> 0 >= 3) { l = i; return } a[(c[g >> 2] | 0) + 24 + ((c[f >> 2] | 0) * 96 | 0) + 21 >> 0] = (c[h >> 2] | 0) != 0; l = i; return } function ge(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[g >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; if ((c[f >> 2] | 0) >>> 0 >= 3) { l = i; return } a[(c[g >> 2] | 0) + 24 + ((c[f >> 2] | 0) * 96 | 0) + 22 >> 0] = (c[h >> 2] | 0) != 0; l = i; return } function he(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = b; a[g >> 0] = e; a[g >> 0] = (d[g >> 0] | 0 | 0) != 0; if ((d[(c[f >> 2] | 0) + 2 >> 0] | 0 | 0) == (d[g >> 0] | 0 | 0)) { l = h; return } a[(c[f >> 2] | 0) + 2 >> 0] = a[g >> 0] | 0; if ((d[c[f >> 2] >> 0] | 0) & 32 | 0) { l = h; return } ie(c[f >> 2] | 0, d[(c[f >> 2] | 0) + 2 >> 0] | 0 | 0 ? 2 : 0); l = h; return } function ie(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = a; c[g >> 2] = b; c[g >> 2] = (c[g >> 2] | 0) >>> 0 >= 3 ? 0 : b; c[(c[f >> 2] | 0) + 312 >> 2] = (c[f >> 2] | 0) + 24 + ((c[g >> 2] | 0) * 96 | 0); $d(c[(c[f >> 2] | 0) + 312 >> 2] | 0, c[(c[(c[f >> 2] | 0) + 312 >> 2] | 0) + 40 >> 2] | 0, d[(c[f >> 2] | 0) + 1 >> 0] | 0); l = e; return } function je(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = b; a[g >> 0] = e; a[g >> 0] = (d[g >> 0] | 0 | 0) != 0; if ((d[(c[f >> 2] | 0) + 1 >> 0] | 0 | 0) == (d[g >> 0] | 0 | 0)) { l = h; return } a[(c[f >> 2] | 0) + 1 >> 0] = a[g >> 0] | 0; ke(c[(c[f >> 2] | 0) + 312 >> 2] | 0, d[g >> 0] | 0); l = h; return } function ke(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; if ((c[(c[d >> 2] | 0) + 44 >> 2] | 0) == (c[e >> 2] | 0)) { l = f; return } $d(c[d >> 2] | 0, c[(c[d >> 2] | 0) + 40 >> 2] | 0, c[e >> 2] | 0); l = f; return } function le(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 16 | 0; f = k + 12 | 0; g = k + 8 | 0; i = k + 4 | 0; j = k; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = e; c[i >> 2] = c[(c[h >> 2] | 0) + 20 >> 2]; while (1) { if ((c[g >> 2] | 0) >>> 0 <= 0) break; a = c[f >> 2] | 0; c[f >> 2] = a + 1; c[j >> 2] = (d[32065 + ((d[a >> 0] | 0) & 63) >> 0] | 0) << 10; c[i >> 2] = ((((c[i >> 2] | 0) * 31 | 0) + (c[j >> 2] | 0) | 0) >>> 0) / 32 | 0; c[g >> 2] = (c[g >> 2] | 0) - 1 } c[(c[h >> 2] | 0) + 20 >> 2] = c[i >> 2]; c[(c[(c[h >> 2] | 0) + 312 >> 2] | 0) + 88 >> 2] = c[i >> 2]; l = k; return } function me(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[g >> 2] = b; c[e >> 2] = d; if ((c[e >> 2] | 0) >>> 0 >= 3) { l = h; return } c[f >> 2] = (c[g >> 2] | 0) + 24 + ((c[e >> 2] | 0) * 96 | 0); if (a[(c[f >> 2] | 0) + 34 >> 0] | 0) { l = h; return } if (Od(c[f >> 2] | 0) | 0) { l = h; return } a[(c[f >> 2] | 0) + 34 >> 0] = 1; $d(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 40 >> 2] | 0, c[(c[f >> 2] | 0) + 44 >> 2] | 0); l = h; return } function ne(b, f) { b = b | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 9 | 0; h = k + 4 | 0; g = k; j = k + 8 | 0; c[h >> 2] = b; c[g >> 2] = f; if (!(c[g >> 2] & 1)) { a[i >> 0] = 0; j = a[i >> 0] | 0; l = k; return j | 0 } c[g >> 2] = (c[g >> 2] | 0) >>> 9 & 15; oe(c[h >> 2] | 0, c[g >> 2] | 0); a[j >> 0] = 0; b = ((d[c[h >> 2] >> 0] | 0) & 192) - 0 | 0; a: do switch (b >>> 6 | b << 26 | 0) { case 0: if ((d[c[h >> 2] >> 0] | 0) & 16 | 0) { a[j >> 0] = a[(c[h >> 2] | 0) + 13 >> 0] | 0; a[(c[h >> 2] | 0) + 13 >> 0] = 0; break a } else { a[j >> 0] = -1; break a } case 1: { a[j >> 0] = (d[(c[h >> 2] | 0) + 3 >> 0] | 0) & 96 | (d[(c[h >> 2] | 0) + 4 >> 0] | 0) & 31; if (pe(c[h >> 2] | 0) | 0) a[j >> 0] = d[j >> 0] | 0 | 128; break } case 2: { a[j >> 0] = (d[(c[h >> 2] | 0) + 5 >> 0] | 0) & 127; if (!((e[(c[h >> 2] | 0) + 14 >> 1] | 0) & 65280)) a[j >> 0] = d[j >> 0] | 0 | 128; break } case 3: break; default: {} } while (0); a[i >> 0] = a[j >> 0] | 0; j = a[i >> 0] | 0; l = k; return j | 0 } function oe(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; h = g; c[f >> 2] = b; c[h >> 2] = e; do switch (c[h >> 2] & 15 | 0) { case 0: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -2; break } case 1: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 1; break } case 2: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -3; break } case 3: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 2; break } case 4: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -5; break } case 5: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 4; break } case 6: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -9; break } case 7: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 8; break } case 8: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -17;h = (c[f >> 2] | 0) + 3 | 0;a[h >> 0] = d[h >> 0] & -33; break } case 9: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 16;h = (c[f >> 2] | 0) + 3 | 0;a[h >> 0] = d[h >> 0] | 32; break } case 10: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -33;ie(c[f >> 2] | 0, d[(c[f >> 2] | 0) + 2 >> 0] | 0 ? 2 : 0); break } case 11: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 32;ie(c[f >> 2] | 0, 1); break } case 12: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -65; break } case 13: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 64; break } case 14: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] & -129; break } case 15: { h = c[f >> 2] | 0;a[h >> 0] = d[h >> 0] | 128; break } default: {} } while (0); if (d[c[f >> 2] >> 0] & 8 | 0) Ee(c[f >> 2] | 0); if (d[c[f >> 2] >> 0] & 128 | 0) { l = g; return } h = (c[f >> 2] | 0) + 5 | 0; a[h >> 0] = d[h >> 0] | 64; if (!(a[(c[f >> 2] | 0) + 6 >> 0] | 0)) { l = g; return } a[(c[f >> 2] | 0) + 6 >> 0] = 0; Fe(c[(c[f >> 2] | 0) + 312 >> 2] | 0); l = g; return } function pe(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; g = f + 4 | 0; b = f; c[h >> 2] = a; c[g >> 2] = (d[c[h >> 2] >> 0] | 0) & 7 | (d[(c[h >> 2] | 0) + 1 >> 0] | 0 | 0 ? 8 : 0); c[b >> 2] = c[(c[h >> 2] | 0) + 312 >> 2]; do switch (c[g >> 2] | 0) { case 0: { c[e >> 2] = (qe(c[b >> 2] | 0) | 0) == 0 & 1; break } case 1: { c[e >> 2] = (re(c[b >> 2] | 0) | 0) == 0 & 1; break } case 2: { c[e >> 2] = (se(c[b >> 2] | 0) | 0) == 0 & 1; break } case 3: { c[e >> 2] = (te(c[b >> 2] | 0) | 0) != 0 & 1; break } case 4: { c[e >> 2] = (ue(c[b >> 2] | 0, 0) | 0) == 0 & 1; break } case 5: { c[e >> 2] = ve(c[b >> 2] | 0) | 0; break } case 6: { c[e >> 2] = we(c[b >> 2] | 0) | 0; break } case 7: { c[e >> 2] = (xe(c[b >> 2] | 0) | 0) == 0 & 1; break } case 8: { c[e >> 2] = (ye(c[b >> 2] | 0) | 0) == 0 & 1; break } case 9: { c[e >> 2] = (ze(c[b >> 2] | 0) | 0) == 0 & 1; break } case 10: { c[e >> 2] = (Ae(c[b >> 2] | 0) | 0) == 0 & 1; break } case 11: { c[e >> 2] = (Be(c[b >> 2] | 0) | 0) == 0 & 1; break } case 12: { c[e >> 2] = (ue(c[b >> 2] | 0, 1) | 0) == 0 & 1; break } case 13: { c[e >> 2] = 1; break } case 14: { c[e >> 2] = (Ce(c[b >> 2] | 0) | 0) == 0 & 1; break } case 15: { c[e >> 2] = De(c[b >> 2] | 0) | 0; break } default: c[e >> 2] = 1 } while (0); l = f; return c[e >> 2] | 0 } function qe(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = b; c[d >> 2] = (a[(c[f >> 2] | 0) + 32 >> 0] | 0) != 0 & 1; l = e; return c[d >> 2] | 0 } function re(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = b; c[d >> 2] = (a[(c[f >> 2] | 0) + 33 >> 0] | 0) != 0 & 1; a[(c[f >> 2] | 0) + 33 >> 0] = 0; l = e; return c[d >> 2] | 0 } function se(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = b; c[d >> 2] = (a[(c[f >> 2] | 0) + 36 >> 0] | 0) != 0 & 1; l = e; return c[d >> 2] | 0 } function te(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = b; c[d >> 2] = (a[(c[f >> 2] | 0) + 35 >> 0] | 0) != 0 & 1; l = e; return c[d >> 2] | 0 } function ue(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[e + 8 >> 2] = a; c[e + 4 >> 2] = b; c[d >> 2] = 1; l = e; return c[d >> 2] | 0 } function ve(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[d + 4 >> 2] = a; c[b >> 2] = 0; l = d; return c[b >> 2] | 0 } function we(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[e >> 2] = a; c[b >> 2] = (c[(c[e >> 2] | 0) + 28 >> 2] | 0) >>> 0 > 1 & 1; l = d; return c[b >> 2] | 0 } function xe(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[d + 4 >> 2] = a; c[b >> 2] = 1; l = d; return c[b >> 2] | 0 } function ye(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; d = e; c[f >> 2] = b; c[d >> 2] = (a[(c[f >> 2] | 0) + 34 >> 0] | 0) != 0 & 1; l = e; return c[d >> 2] | 0 } function ze(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; f = g + 4 | 0; e = g; c[d >> 2] = b; c[f >> 2] = a[(c[d >> 2] | 0) + 21 >> 0]; if (((a[(c[d >> 2] | 0) + 20 >> 0] | 0) == 0 ? (c[e >> 2] = fz(c[(c[d >> 2] | 0) + 8 >> 2] | 0, c[(c[d >> 2] | 0) + 12 >> 2] | 0) | 0, c[e >> 2] | 0) : 0) ? Ny(c[e >> 2] | 0) | 0 : 0) c[f >> 2] = 1; l = g; return c[f >> 2] | 0 } function Ae(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[e >> 2] = a; c[b >> 2] = (c[(c[e >> 2] | 0) + 40 >> 2] | 0) == 0 & 1; l = d; return c[b >> 2] | 0 } function Be(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; e = f + 4 | 0; d = f; c[b >> 2] = a; a = c[b >> 2] | 0; if ((c[(c[b >> 2] | 0) + 28 >> 2] | 0) == 1) { c[d >> 2] = 65536 - (c[a + 88 >> 2] | 0); d = S((((c[d >> 2] | 0) * 120 | 0) >>> 0) / 32768 | 0, c[(c[b >> 2] | 0) + 60 >> 2] | 0) | 0; c[e >> 2] = ((d >>> 0) / ((c[(c[b >> 2] | 0) + 64 >> 2] | 0) >>> 0) | 0) & 1; e = c[e >> 2] | 0; l = f; return e | 0 } else { c[e >> 2] = ((((c[a + 52 >> 2] | 0) * 120 | 0) >>> 0) / ((c[(c[b >> 2] | 0) + 56 >> 2] | 0) >>> 0) | 0) & 1; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function Ce(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[d + 4 >> 2] = a; c[b >> 2] = 1; l = d; return c[b >> 2] | 0 } function De(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[d + 4 >> 2] = a; c[b >> 2] = 1; l = d; return c[b >> 2] | 0 } function Ee(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; f = g + 8 | 0; h = g + 4 | 0; b = g; c[e >> 2] = a; c[h >> 2] = (d[c[e >> 2] >> 0] | 0) & 3 | (d[(c[e >> 2] | 0) + 1 >> 0] | 0 | 0 ? 4 : 0); c[f >> 2] = ((d[c[e >> 2] >> 0] | 0) & 4 | 0) != 0 & 1; c[b >> 2] = c[(c[e >> 2] | 0) + 312 >> 2]; switch (c[h >> 2] | 0) { case 0: { Ge(c[b >> 2] | 0, (c[f >> 2] | 0) == 0 & 1);l = g; return } case 1: { if (c[f >> 2] | 0) { l = g; return } He(c[b >> 2] | 0);l = g; return } case 2: { Ie(c[b >> 2] | 0, (c[f >> 2] | 0) == 0 & 1);Je(c[e >> 2] | 0);l = g; return } case 3: { if (!(c[f >> 2] | 0)) { l = g; return } Ke(c[b >> 2] | 0);l = g; return } case 4: { if (!(c[f >> 2] | 0)) { l = g; return } Le(c[b >> 2] | 0);l = g; return } default: { l = g; return } } } function Fe(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; if ((c[(c[d >> 2] | 0) + 76 >> 2] | 0) >>> 0 > (c[(c[d >> 2] | 0) + 56 >> 2] | 0) >>> 0 ? a[(c[d >> 2] | 0) + 22 >> 0] | 0 : 0) { PB(c[(c[d >> 2] | 0) + 48 >> 2] | 0, c[(c[d >> 2] | 0) + 52 >> 2] | 0) | 0; c[(c[d >> 2] | 0) + 52 >> 2] = 0 } c[(c[d >> 2] | 0) + 76 >> 2] = 0; l = e; return } function Ge(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; a[(c[f >> 2] | 0) + 32 >> 0] = (c[g >> 2] | 0) != 0; l = e; return } function He(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f; d = f + 8 | 0; c[d >> 2] = b; b = c[(c[d >> 2] | 0) + 40 >> 2] | 0; if (!(a[(c[d >> 2] | 0) + 32 >> 0] | 0)) { if (b >>> 0 > 0) { b = (c[d >> 2] | 0) + 40 | 0; c[b >> 2] = (c[b >> 2] | 0) - 1 } } else if ((b + 1 | 0) >>> 0 < (c[(c[d >> 2] | 0) + 24 >> 2] | 0) >>> 0) { b = (c[d >> 2] | 0) + 40 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1 } a[(c[d >> 2] | 0) + 33 >> 0] = 1; $d(c[d >> 2] | 0, c[(c[d >> 2] | 0) + 40 >> 2] | 0, c[(c[d >> 2] | 0) + 44 >> 2] | 0); b = c[(c[d >> 2] | 0) + 40 >> 2] | 0; c[e >> 2] = (c[c[d >> 2] >> 2] | 0) + 1; c[e + 4 >> 2] = b; OJ(32150, e); l = f; return } function Ie(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; c[e >> 2] = b; c[f >> 2] = d; if ((a[(c[e >> 2] | 0) + 36 >> 0] | 0) == ((c[f >> 2] | 0) != 0 | 0)) { l = g; return } a[(c[e >> 2] | 0) + 36 >> 0] = (c[f >> 2] | 0) != 0; l = g; return } function Je(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 4 | 0; e = i; g = i + 8 | 0; c[f >> 2] = b; a[g >> 0] = 0; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= 3) break; if (a[(c[f >> 2] | 0) + 24 + ((c[e >> 2] | 0) * 96 | 0) + 36 >> 0] | 0) { h = 4; break } c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((h | 0) == 4) a[g >> 0] = 1; if ((d[(c[f >> 2] | 0) + 316 >> 0] | 0) == (d[g >> 0] | 0)) { l = i; return } a[(c[f >> 2] | 0) + 316 >> 0] = a[g >> 0] | 0; if (!(c[(c[f >> 2] | 0) + 324 >> 2] | 0)) { l = i; return } Qb[c[(c[f >> 2] | 0) + 324 >> 2] & 255](c[(c[f >> 2] | 0) + 320 >> 2] | 0, a[g >> 0] | 0); l = i; return } function Ke(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e; d = e + 4 | 0; c[d >> 2] = b; a[(c[d >> 2] | 0) + 34 >> 0] = 0; c[f >> 2] = (c[c[d >> 2] >> 2] | 0) + 1; cg(32129, f); if (!(a[(c[d >> 2] | 0) + 92 >> 0] | 0)) { l = e; return } Td(c[d >> 2] | 0) | 0; l = e; return } function Le(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; a[(c[e >> 2] | 0) + 35 >> 0] = 0; l = d; return } function Me(e, f, g) { e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 4 | 0; h = k; j = k + 8 | 0; c[i >> 2] = e; c[h >> 2] = f; a[j >> 0] = g; if (!(c[h >> 2] & 1)) { l = k; return } c[h >> 2] = (c[h >> 2] | 0) >>> 9 & 15; oe(c[i >> 2] | 0, c[h >> 2] | 0); if ((d[c[i >> 2] >> 0] & 192 | 0) != 192) { l = k; return } if (!(d[c[i >> 2] >> 0] & 16)) { a[(c[i >> 2] | 0) + 4 >> 0] = a[j >> 0] | 0; l = k; return } if (!(a[(c[i >> 2] | 0) + 6 >> 0] | 0)) { a[(c[i >> 2] | 0) + 6 >> 0] = 1; c[(c[i >> 2] | 0) + 8 >> 2] = 0; c[(c[(c[i >> 2] | 0) + 312 >> 2] | 0) + 76 >> 2] = 0 } b[(c[i >> 2] | 0) + 14 >> 1] = d[j >> 0] | 65280; l = k; return } function Ne(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; h = k + 12 | 0; g = k + 8 | 0; f = k + 4 | 0; i = k; c[j >> 2] = b; c[h >> 2] = e; c[i >> 2] = c[(c[j >> 2] | 0) + 312 >> 2]; if (!(a[(c[i >> 2] | 0) + 36 >> 0] | 0)) { l = k; return } c[g >> 2] = (c[(c[i >> 2] | 0) + 84 >> 2] | 0) + ((c[h >> 2] | 0) * 5e5 | 0); c[f >> 2] = ((c[g >> 2] | 0) >>> 0) / ((c[(c[i >> 2] | 0) + 80 >> 2] | 0) >>> 0) | 0; c[g >> 2] = ((c[g >> 2] | 0) >>> 0) % ((c[(c[i >> 2] | 0) + 80 >> 2] | 0) >>> 0) | 0; c[(c[i >> 2] | 0) + 84 >> 2] = c[g >> 2]; a: do if ((c[(c[i >> 2] | 0) + 56 >> 2] | 0) >>> 0 > 0) { b = (c[i >> 2] | 0) + 52 | 0; c[b >> 2] = (c[b >> 2] | 0) + (c[f >> 2] | 0); while (1) { if ((c[(c[i >> 2] | 0) + 52 >> 2] | 0) >>> 0 < (c[(c[i >> 2] | 0) + 56 >> 2] | 0) >>> 0) break a; b = (c[i >> 2] | 0) + 52 | 0; c[b >> 2] = (c[b >> 2] | 0) - (c[(c[i >> 2] | 0) + 56 >> 2] | 0) } } while (0); if ((c[(c[i >> 2] | 0) + 64 >> 2] | 0) >>> 0 > 0 ? (b = (c[i >> 2] | 0) + 60 | 0, c[b >> 2] = (c[b >> 2] | 0) + (c[f >> 2] | 0), (c[(c[i >> 2] | 0) + 60 >> 2] | 0) >>> 0 >= (c[(c[i >> 2] | 0) + 64 >> 2] | 0) >>> 0) : 0) { b = (c[i >> 2] | 0) + 60 | 0; c[b >> 2] = (c[b >> 2] | 0) - (c[(c[i >> 2] | 0) + 64 >> 2] | 0) } f = c[j >> 2] | 0; if (!(a[(c[j >> 2] | 0) + 6 >> 0] | 0)) { if (!(d[f >> 0] & 192)) Pe(c[j >> 2] | 0, c[i >> 2] | 0) } else Oe(f, c[i >> 2] | 0); c[(c[i >> 2] | 0) + 68 >> 2] = c[(c[i >> 2] | 0) + 52 >> 2]; c[(c[i >> 2] | 0) + 72 >> 2] = c[(c[i >> 2] | 0) + 52 >> 2]; l = k; return } function Oe(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; j = o + 12 | 0; i = o + 8 | 0; m = o + 4 | 0; k = o + 16 | 0; h = o; c[j >> 2] = f; c[i >> 2] = g; if (!(c[(c[i >> 2] | 0) + 48 >> 2] | 0)) { l = o; return } if (!(c[(c[i >> 2] | 0) + 56 >> 2] | 0)) { l = o; return } c[m >> 2] = ((c[(c[i >> 2] | 0) + 72 >> 2] | 0) >>> 0) / 8 | 0; a[k >> 0] = 128 >> (c[(c[i >> 2] | 0) + 72 >> 2] & 7); c[h >> 2] = c[(c[(c[i >> 2] | 0) + 48 >> 2] | 0) + 8 >> 2]; while (1) { if ((c[(c[i >> 2] | 0) + 72 >> 2] | 0) == (c[(c[i >> 2] | 0) + 52 >> 2] | 0)) { n = 17; break } if (!(c[(c[j >> 2] | 0) + 8 >> 2] | 0)) { g = c[j >> 2] | 0; if (!((e[(c[j >> 2] | 0) + 14 >> 1] | 0) & 65280)) break; a[(c[j >> 2] | 0) + 12 >> 0] = e[g + 14 >> 1] | 0; c[(c[j >> 2] | 0) + 8 >> 2] = 8; b[(c[j >> 2] | 0) + 14 >> 1] = 0 } g = d[k >> 0] | 0; if ((d[(c[j >> 2] | 0) + 12 >> 0] | 0) & 128 | 0) { f = (c[h >> 2] | 0) + (c[m >> 2] | 0) | 0; g = d[f >> 0] | 0 | g } else { f = (c[h >> 2] | 0) + (c[m >> 2] | 0) | 0; g = (d[f >> 0] | 0) & ~g } a[f >> 0] = g; a[(c[i >> 2] | 0) + 92 >> 0] = 1; a[(c[j >> 2] | 0) + 12 >> 0] = (d[(c[j >> 2] | 0) + 12 >> 0] | 0) << 1; f = (c[j >> 2] | 0) + 8 | 0; c[f >> 2] = (c[f >> 2] | 0) - 1; f = (c[i >> 2] | 0) + 72 | 0; c[f >> 2] = (c[f >> 2] | 0) + 1; f = (c[i >> 2] | 0) + 76 | 0; c[f >> 2] = (c[f >> 2] | 0) + 1; if ((c[(c[i >> 2] | 0) + 72 >> 2] | 0) >>> 0 >= (c[(c[i >> 2] | 0) + 56 >> 2] | 0) >>> 0) { c[(c[i >> 2] | 0) + 72 >> 2] = 0; c[m >> 2] = 0; a[k >> 0] = -128; continue } if ((d[k >> 0] | 0 | 0) == 1) { a[k >> 0] = -128; c[m >> 2] = (c[m >> 2] | 0) + 1; continue } else { a[k >> 0] = (d[k >> 0] | 0) >> 1; continue } } if ((n | 0) == 17) { l = o; return } n = g + 5 | 0; a[n >> 0] = (d[n >> 0] | 0) & -65; c[(c[j >> 2] | 0) + 8 >> 2] = 0; a[(c[j >> 2] | 0) + 6 >> 0] = 0; Fe(c[i >> 2] | 0); l = o; return } function Pe(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 12 | 0; g = k + 8 | 0; j = k + 4 | 0; i = k + 16 | 0; f = k; c[h >> 2] = b; c[g >> 2] = e; if (!(c[(c[g >> 2] | 0) + 48 >> 2] | 0)) { l = k; return } if (!(c[(c[g >> 2] | 0) + 56 >> 2] | 0)) { l = k; return } c[j >> 2] = ((c[(c[g >> 2] | 0) + 68 >> 2] | 0) >>> 0) / 8 | 0; a[i >> 0] = 128 >> (c[(c[g >> 2] | 0) + 68 >> 2] & 7); c[f >> 2] = c[(c[(c[g >> 2] | 0) + 48 >> 2] | 0) + 8 >> 2]; while (1) { if ((c[(c[g >> 2] | 0) + 68 >> 2] | 0) == (c[(c[g >> 2] | 0) + 52 >> 2] | 0)) break; a[(c[h >> 2] | 0) + 12 >> 0] = (d[(c[h >> 2] | 0) + 12 >> 0] | 0) << 1 | ((d[(c[f >> 2] | 0) + (c[j >> 2] | 0) >> 0] | 0) & (d[i >> 0] | 0) | 0) != 0; e = (c[h >> 2] | 0) + 16 | 0; if (!((d[(c[h >> 2] | 0) + 12 >> 0] | 0) & 1 | 0)) { c[e >> 2] = (c[e >> 2] | 0) + 1; if ((c[(c[h >> 2] | 0) + 16 >> 2] | 0) >>> 0 >= 8) { c[(c[h >> 2] | 0) + 16 >> 2] = 0; b = (c[h >> 2] | 0) + 12 | 0; a[b >> 0] = d[b >> 0] | 0 | 1 } } else c[e >> 2] = 0; b = (c[g >> 2] | 0) + 68 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; do if ((c[(c[g >> 2] | 0) + 68 >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 56 >> 2] | 0) >>> 0) if ((d[i >> 0] | 0 | 0) == 1) { a[i >> 0] = -128; c[j >> 2] = (c[j >> 2] | 0) + 1; break } else { a[i >> 0] = (d[i >> 0] | 0) >> 1; break } else { c[(c[g >> 2] | 0) + 68 >> 2] = 0; c[j >> 2] = 0; a[i >> 0] = -128 } while (0); if (!((d[(c[h >> 2] | 0) + 12 >> 0] | 0) & 128)) continue; a[(c[h >> 2] | 0) + 13 >> 0] = a[(c[h >> 2] | 0) + 12 >> 0] | 0; a[(c[h >> 2] | 0) + 12 >> 0] = 0 } l = k; return } function Qe(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; c[(c[e >> 2] | 0) + 288 >> 2] = 0; c[(c[e >> 2] | 0) + 292 >> 2] = 0; c[(c[e >> 2] | 0) + 296 >> 2] = 0; c[(c[e >> 2] | 0) + 300 >> 2] = 0; a[(c[e >> 2] | 0) + 264 >> 0] = 0; c[(c[e >> 2] | 0) + 268 >> 2] = 0; c[(c[e >> 2] | 0) + 272 >> 2] = 0; c[c[e >> 2] >> 2] = 0; c[(c[e >> 2] | 0) + 4 >> 2] = 0; c[(c[e >> 2] | 0) + 276 >> 2] = 0; a[(c[e >> 2] | 0) + 280 >> 0] = 0; c[(c[e >> 2] | 0) + 284 >> 2] = 1200; l = d; return } function Re() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(304) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { Qe(c[a >> 2] | 0); c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function Se(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 288 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 292 >> 2] = c[g >> 2]; l = e; return } function Te(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 296 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 300 >> 2] = c[g >> 2]; l = e; return } function Ue(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 276 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 284 >> 2] = c[g >> 2] | 0 ? 3264 : 1200; l = e; return 0 } function Ve(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; g = f; c[e >> 2] = b; c[g >> 2] = d; b = c[(c[e >> 2] | 0) + 284 >> 2] | 0; if (c[g >> 2] | 0) { We(b, 5352); d = 0; b = c[e >> 2] | 0 } else { We(b, 5904); d = 1; b = c[e >> 2] | 0 } a[b + 280 >> 0] = d; l = f; return } function We(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h + 8 | 0; e = h + 4 | 0; f = h; c[d >> 2] = a; c[e >> 2] = b; while (1) { if (!(c[c[e >> 2] >> 2] | 0)) break; c[f >> 2] = c[d >> 2]; while (1) { if (!(c[c[f >> 2] >> 2] | 0)) break; a = c[f >> 2] | 0; if ((c[c[f >> 2] >> 2] | 0) == (c[c[e >> 2] >> 2] | 0)) { g = 6; break } c[f >> 2] = a + 24 } if ((g | 0) == 6) { g = 0; b = c[e >> 2] | 0; c[a >> 2] = c[b >> 2]; c[a + 4 >> 2] = c[b + 4 >> 2]; c[a + 8 >> 2] = c[b + 8 >> 2]; c[a + 12 >> 2] = c[b + 12 >> 2]; c[a + 16 >> 2] = c[b + 16 >> 2]; c[a + 20 >> 2] = c[b + 20 >> 2] } c[e >> 2] = (c[e >> 2] | 0) + 24 } l = h; return } function Xe(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m; g = m + 24 | 0; f = m + 20 | 0; h = m + 16 | 0; i = m + 12 | 0; j = m + 8 | 0; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; if ((c[h >> 2] | 0) != 2) { if ((c[h >> 2] | 0) == 3) c[h >> 2] = 75 } else c[h >> 2] = 71; c[i >> 2] = c[(c[g >> 2] | 0) + 284 >> 2]; while (1) { if (!(c[c[i >> 2] >> 2] | 0)) break; if ((c[c[i >> 2] >> 2] | 0) == (c[h >> 2] | 0)) break; c[i >> 2] = (c[i >> 2] | 0) + 24 } if (!(c[c[i >> 2] >> 2] | 0)) { c[j >> 2] = PN(c[h >> 2] | 0) | 0; j = c[j >> 2] | 0 ? c[j >> 2] | 0 : 50434; c[k >> 2] = c[h >> 2]; c[k + 4 >> 2] = j; DK(2, 32173, k); l = m; return } switch (c[f >> 2] | 0) { case 1: { Ye(c[g >> 2] | 0, (c[i >> 2] | 0) + 6 | 0, e[(c[i >> 2] | 0) + 4 >> 1] | 0);l = m; return } case 2: { Ye(c[g >> 2] | 0, (c[i >> 2] | 0) + 16 | 0, e[(c[i >> 2] | 0) + 14 >> 1] | 0);l = m; return } default: { l = m; return } } } function Ye(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[i >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) break; Ze(c[i >> 2] | 0, a[(c[f >> 2] | 0) + (c[h >> 2] | 0) >> 0] | 0); c[h >> 2] = (c[h >> 2] | 0) + 1 } l = j; return } function Ze(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; g = h + 8 | 0; e = h; c[f >> 2] = b; a[g >> 0] = d; if ((c[(c[f >> 2] | 0) + 4 >> 2] | 0) >>> 0 >= 256) { l = h; return } c[e >> 2] = (((c[c[f >> 2] >> 2] | 0) + (c[(c[f >> 2] | 0) + 4 >> 2] | 0) | 0) >>> 0) % 256 | 0; a[(c[f >> 2] | 0) + 8 + (c[e >> 2] | 0) >> 0] = a[g >> 0] | 0; g = (c[f >> 2] | 0) + 4 | 0; c[g >> 2] = (c[g >> 2] | 0) + 1; l = h; return } function _e(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i; f = i + 4 | 0; g = i + 8 | 0; c[f >> 2] = b; a[g >> 0] = e; switch (d[g >> 0] | 0 | 0) { case 16: { c[(c[f >> 2] | 0) + 268 >> 2] = 1958400;c[(c[f >> 2] | 0) + 272 >> 2] = 1;l = i; return } case 20: { c[(c[f >> 2] | 0) + 268 >> 2] = 0;c[(c[f >> 2] | 0) + 272 >> 2] = 1;l = i; return } case 22: { c[c[f >> 2] >> 2] = 0;c[(c[f >> 2] | 0) + 4 >> 2] = 1;a[(c[f >> 2] | 0) + 8 >> 0] = (c[(c[f >> 2] | 0) + 276 >> 2] & 7) << 1 | 1;c[(c[f >> 2] | 0) + 268 >> 2] = 0;c[(c[f >> 2] | 0) + 272 >> 2] = 1;l = i; return } default: { c[h >> 2] = d[g >> 0];cg(32202, h);l = i; return } } } function $e(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 264 >> 0] = a[g >> 0] | 0; l = e; return } function af(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 4 | 0; f = i; h = i + 8 | 0; c[g >> 2] = b; c[f >> 2] = e; if (!(d[(c[g >> 2] | 0) + 264 >> 0] | 0)) { l = i; return } if (!(c[(c[g >> 2] | 0) + 272 >> 2] | 0)) { l = i; return } if ((c[(c[g >> 2] | 0) + 4 >> 2] | 0) >>> 0 > 0) { a[h >> 0] = a[(c[g >> 2] | 0) + 8 + (c[c[g >> 2] >> 2] | 0) >> 0] | 0; bf(c[g >> 2] | 0, a[h >> 0] | 0); c[c[g >> 2] >> 2] = (((c[c[g >> 2] >> 2] | 0) + 1 | 0) >>> 0) % 256 | 0; h = (c[g >> 2] | 0) + 4 | 0; c[h >> 2] = (c[h >> 2] | 0) - 1; c[(c[g >> 2] | 0) + 272 >> 2] = 0; c[(c[g >> 2] | 0) + 268 >> 2] = 0; l = i; return } if ((c[f >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 268 >> 2] | 0) >>> 0) { h = (c[g >> 2] | 0) + 268 | 0; c[h >> 2] = (c[h >> 2] | 0) - (c[f >> 2] | 0); l = i; return } else { bf(c[g >> 2] | 0, 123); c[(c[g >> 2] | 0) + 272 >> 2] = 0; l = i; return } } function bf(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g; f = g + 4 | 0; c[e >> 2] = b; a[f >> 0] = d; if (!(c[(c[e >> 2] | 0) + 292 >> 2] | 0)) { l = g; return } Qb[c[(c[e >> 2] | 0) + 292 >> 2] & 255](c[(c[e >> 2] | 0) + 288 >> 2] | 0, a[f >> 0] | 0); l = g; return } function cf(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; j = h + 4 | 0; i = h; c[g >> 2] = b; c[j >> 2] = e; c[i >> 2] = f; e = 1 << c[j >> 2]; if (c[i >> 2] | 0) { b = (c[g >> 2] | 0) + 6096 | 0; e = d[b >> 0] | 0 | e } else { b = (c[g >> 2] | 0) + 6096 | 0; e = (d[b >> 0] | 0) & ~e } a[b >> 0] = e; df(c[g >> 2] | 0); l = h; return } function df(a) { a = a | 0; var b = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; b = g + 4 | 0; f = g; c[e >> 2] = a; c[f >> 2] = (d[(c[e >> 2] | 0) + 6096 >> 0] | 0) >> 1; c[b >> 2] = 0; while (1) { if (!(c[f >> 2] | 0)) break; c[b >> 2] = (c[b >> 2] | 0) + 1; c[f >> 2] = (c[f >> 2] | 0) >>> 1 } Mn(c[(c[e >> 2] | 0) + 4 >> 2] | 0, c[b >> 2] | 0); l = g; return } function ef(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f + 8 | 0; e = f; c[h >> 2] = b; a[g >> 0] = d; c[e >> 2] = c[h >> 2]; if (!(a[g >> 0] | 0)) { l = f; return } if (Li((c[e >> 2] | 0) + 3868 | 0) | 0) ff(c[e >> 2] | 0); zv((c[e >> 2] | 0) + 36 | 0, 0); zv((c[e >> 2] | 0) + 36 | 0, 1); l = f; return } function ff(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; if (((e[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + 166 >> 1] | 0) >> 8 & 7 | 0) == 7) { l = f; return } c[b >> 2] = c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + 120 + 28 >> 2]; gf(c[(c[d >> 2] | 0) + 4 >> 2] | 0, (c[b >> 2] | 0) - 4 | 0, c[(c[(c[d >> 2] | 0) + 4 >> 2] | 0) + 152 >> 2] | 0); hf(c[(c[d >> 2] | 0) + 4 >> 2] | 0, 7, (c[b >> 2] | 0) - 4 | 0); kn(c[(c[d >> 2] | 0) + 4 >> 2] | 0, c[(c[d >> 2] | 0) + 3868 + 44 >> 2] | 0); l = f; return } function gf(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[g >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; if (((c[f >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 2) >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 3) >> 0] = c[h >> 2]; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 28 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0); l = i; return } } function hf(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function jf(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[g >> 2] = b; c[f >> 2] = d; c[(c[g >> 2] | 0) + 4924 >> 2] = 0; c[(c[g >> 2] | 0) + 4920 >> 2] = 0; c[(c[g >> 2] | 0) + 6076 >> 2] = 0; a[(c[g >> 2] | 0) + 6112 >> 0] = 0; a[(c[g >> 2] | 0) + 6113 >> 0] = 0; c[(c[g >> 2] | 0) + 6100 >> 2] = 0; c[(c[g >> 2] | 0) + 6104 >> 2] = 0; c[(c[g >> 2] | 0) + 6108 >> 2] = 0; a[(c[g >> 2] | 0) + 6096 >> 0] = 0; a[(c[g >> 2] | 0) + 6120 >> 0] = 0; c[(c[g >> 2] | 0) + 6124 >> 2] = 0; c[(c[g >> 2] | 0) + 6128 >> 2] = 1; c[(c[g >> 2] | 0) + 6132 >> 2] = 1; c[(c[g >> 2] | 0) + 6140 >> 2] = 0; c[e >> 2] = 1; while (1) { d = c[g >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 2) break; c[d + 6132 + (c[e >> 2] << 2) >> 2] = 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } b = d + 6160 | 0; c[b >> 2] = 0; c[b + 4 >> 2] = 0; c[e >> 2] = 0; while (1) { d = c[g >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 4) break; c[d + 6168 + (c[e >> 2] << 2) >> 2] = 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } RI(d + 28 | 0); kf(c[g >> 2] | 0, c[f >> 2] | 0); lf(c[g >> 2] | 0, c[f >> 2] | 0); mf(c[g >> 2] | 0, c[f >> 2] | 0); nf(c[g >> 2] | 0, c[f >> 2] | 0); of (c[g >> 2] | 0, c[f >> 2] | 0); pf(c[g >> 2] | 0, c[f >> 2] | 0); qf(c[g >> 2] | 0, c[f >> 2] | 0); rf(c[g >> 2] | 0, c[f >> 2] | 0); sf(c[g >> 2] | 0, c[f >> 2] | 0); tf(c[g >> 2] | 0, c[f >> 2] | 0); uf(c[g >> 2] | 0, c[f >> 2] | 0); vf(c[g >> 2] | 0, c[f >> 2] | 0); wf(c[g >> 2] | 0, c[f >> 2] | 0); xf(c[g >> 2] | 0, c[f >> 2] | 0); yf(c[g >> 2] | 0, c[f >> 2] | 0); zf(c[g >> 2] | 0, c[f >> 2] | 0); yK(c[(c[g >> 2] | 0) + 8 >> 2] | 0, c[f >> 2] | 0) | 0; eO(c[(c[g >> 2] | 0) + 4924 >> 2] | 0, 51633, 32231) | 0; Af(c[g >> 2] | 0); l = h; return } function kf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 8 | 0; h = j; g = j + 24 | 0; d = j + 20 | 0; e = j + 16 | 0; f = j + 12 | 0; c[g >> 2] = a; c[d >> 2] = b; c[f >> 2] = WL(c[d >> 2] | 0, 0, 33470) | 0; if (!(c[f >> 2] | 0)) c[f >> 2] = c[d >> 2]; kM(c[f >> 2] | 0, 32904, e, 33477) | 0; c[h >> 2] = c[e >> 2]; FK(2, 33486, 33494, h); if (!(fP(c[e >> 2] | 0, 33477) | 0)) { h = 1; i = c[g >> 2] | 0; c[i >> 2] = h; l = j; return } if (!(fP(c[e >> 2] | 0, 33504) | 0)) { h = 2; i = c[g >> 2] | 0; c[i >> 2] = h; l = j; return } if (!(fP(c[e >> 2] | 0, 33511) | 0)) { h = 4; i = c[g >> 2] | 0; c[i >> 2] = h; l = j; return } else { c[i >> 2] = c[e >> 2]; DK(0, 33523, i); h = 1; i = c[g >> 2] | 0; c[i >> 2] = h; l = j; return } } function lf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 32 | 0; f = g + 28 | 0; d = g + 24 | 0; e = g + 20 | 0; c[f >> 2] = a; c[d >> 2] = b; a = Sx() | 0; c[(c[f >> 2] | 0) + 8 >> 2] = a; Tx(c[(c[f >> 2] | 0) + 8 >> 2] | 0, c[f >> 2] | 0, 1, 2, 3, 2, 3, 4); eK(c[(c[f >> 2] | 0) + 8 >> 2] | 0, c[d >> 2] | 0, (c[f >> 2] | 0) + 12 | 0) | 0; fK(c[(c[f >> 2] | 0) + 8 >> 2] | 0, c[d >> 2] | 0) | 0; a = Xx(c[(c[f >> 2] | 0) + 8 >> 2] | 0, 0) | 0; c[(c[f >> 2] | 0) + 12 >> 2] = a; a = Xx(c[(c[f >> 2] | 0) + 8 >> 2] | 0, 4194304) | 0; c[(c[f >> 2] | 0) + 16 >> 2] = a; c[(c[f >> 2] | 0) + 20 >> 2] = 0; c[(c[f >> 2] | 0) + 24 >> 2] = 0; if (!(c[(c[f >> 2] | 0) + 12 >> 2] | 0)) { DK(0, 33381, g); l = g; return } if (!(c[(c[f >> 2] | 0) + 16 >> 2] | 0)) { DK(0, 33410, g + 8 | 0); l = g; return } a = xx(c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 20 >> 2] = a; Kx(c[(c[f >> 2] | 0) + 20 >> 2] | 0, 6291456); if ((Lx(c[(c[f >> 2] | 0) + 20 >> 2] | 0) | 0) >>> 0 > 2097152) Mx(c[(c[f >> 2] | 0) + 20 >> 2] | 0, 2097152); a = xx(c[(c[f >> 2] | 0) + 16 >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 24 >> 2] = a; Kx(c[(c[f >> 2] | 0) + 24 >> 2] | 0, 0); c[(c[f >> 2] | 0) + 6072 >> 2] = 0; jM(c[d >> 2] | 0, 33439, e, 1) | 0; if (c[e >> 2] | 0) { l = g; return } FK(2, 49214, 33447, g + 16 | 0); b = c[f >> 2] | 0; if (c[c[f >> 2] >> 2] & 1 | 0) { dy(c[b + 8 >> 2] | 0, 686, 4194304); l = g; return } if (!(c[b >> 2] & 6)) { l = g; return } dy(c[(c[f >> 2] | 0) + 8 >> 2] | 0, 3324, 1464619843); l = g; return } function mf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; h = l; l = l + 32 | 0; g = h + 8 | 0; i = h; e = h + 28 | 0; k = h + 24 | 0; j = h + 20 | 0; d = h + 16 | 0; f = h + 12 | 0; c[e >> 2] = a; c[k >> 2] = b; c[j >> 2] = WL(c[k >> 2] | 0, 0, 33616) | 0; kM(c[j >> 2] | 0, 32904, d, 33299) | 0; hM(c[j >> 2] | 0, 34527, f, 0) | 0; a = c[f >> 2] | 0; c[i >> 2] = c[d >> 2]; c[i + 4 >> 2] = a; FK(2, 33305, 33310, i); a = Qm() | 0; c[(c[e >> 2] | 0) + 4 >> 2] = a; if (!(c[(c[e >> 2] | 0) + 4 >> 2] | 0)) { l = h; return } if (Tf(c[e >> 2] | 0, c[d >> 2] | 0) | 0) { c[g >> 2] = c[d >> 2]; DK(0, 33329, g) } Rm(c[(c[e >> 2] | 0) + 4 >> 2] | 0, c[(c[e >> 2] | 0) + 8 >> 2] | 0, 4, 5, 6, 5, 6, 7); Tm(c[(c[e >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0, 150); Um(c[(c[e >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0, 7); Vm(c[(c[e >> 2] | 0) + 4 >> 2] | 0, 0); c[(c[e >> 2] | 0) + 6128 >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 6132 >> 2] = c[f >> 2]; l = h; return } function nf(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; f = l; l = l + 32 | 0; i = f; e = f + 28 | 0; k = f + 24 | 0; j = f + 20 | 0; d = f + 16 | 0; h = f + 12 | 0; g = f + 8 | 0; c[e >> 2] = a; c[k >> 2] = b; c[j >> 2] = WL(c[k >> 2] | 0, 0, 33204) | 0; gM(c[j >> 2] | 0, 49848, h, 15720448) | 0; gM(c[j >> 2] | 0, 49201, g, 8192) | 0; a = c[g >> 2] | 0; c[i >> 2] = c[h >> 2]; c[i + 4 >> 2] = a; FK(2, 33208, 32562, i); iv((c[e >> 2] | 0) + 36 | 0, 9); nv((c[e >> 2] | 0) + 36 | 0, c[e >> 2] | 0, 151); jv((c[e >> 2] | 0) + 36 | 0, c[e >> 2] | 0, 152); kv((c[e >> 2] | 0) + 36 | 0, c[e >> 2] | 0, 153); c[d >> 2] = wx(c[h >> 2] | 0, c[g >> 2] | 0, 0) | 0; if (!(c[d >> 2] | 0)) { l = f; return } Fx(c[d >> 2] | 0, (c[e >> 2] | 0) + 36 | 0, 8, 9, 10, 8, 9, 10); Vx(c[(c[e >> 2] | 0) + 8 >> 2] | 0, c[d >> 2] | 0, 1); l = f; return } function of (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; f = l; l = l + 32 | 0; i = f; e = f + 28 | 0; k = f + 24 | 0; j = f + 20 | 0; d = f + 16 | 0; h = f + 12 | 0; g = f + 8 | 0; c[e >> 2] = a; c[k >> 2] = b; c[j >> 2] = WL(c[k >> 2] | 0, 0, 33195) | 0; gM(c[j >> 2] | 0, 49848, h, 8388608) | 0; gM(c[j >> 2] | 0, 49201, g, 4194304) | 0; a = c[g >> 2] | 0; c[i >> 2] = c[h >> 2]; c[i + 4 >> 2] = a; FK(2, 33199, 32562, i); iw((c[e >> 2] | 0) + 128 | 0); kw((c[e >> 2] | 0) + 128 | 0, c[e >> 2] | 0, 154); qw((c[e >> 2] | 0) + 128 | 0, 3672e3, 3672e3, 3672e3); c[d >> 2] = wx(c[h >> 2] | 0, c[g >> 2] | 0, 0) | 0; if (!(c[d >> 2] | 0)) { l = f; return } Fx(c[d >> 2] | 0, c[e >> 2] | 0, 11, 0, 0, 11, 0, 0); Vx(c[(c[e >> 2] | 0) + 8 >> 2] | 0, c[d >> 2] | 0, 1); l = f; return } function pf(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, m = 0, n = 0; n = l; l = l + 64 | 0; m = n + 24 | 0; k = n + 16 | 0; j = n; i = n + 48 | 0; e = n + 44 | 0; h = n + 40 | 0; g = n + 36 | 0; f = n + 32 | 0; d = n + 28 | 0; c[i >> 2] = a; c[e >> 2] = b; ni((c[i >> 2] | 0) + 4932 | 0); qi((c[i >> 2] | 0) + 4932 | 0, (c[i >> 2] | 0) + 128 | 0, 0); ni((c[i >> 2] | 0) + 4932 + 568 | 0); qi((c[i >> 2] | 0) + 4932 + 568 | 0, (c[i >> 2] | 0) + 128 | 0, 1); c[h >> 2] = WL(c[e >> 2] | 0, 0, 33079) | 0; while (1) { if (!(c[h >> 2] | 0)) break; hM(c[h >> 2] | 0, 33086, g, 0) | 0; hM(c[h >> 2] | 0, 33091, f, 1) | 0; kM(c[h >> 2] | 0, 49360, d, 0) | 0; b = c[f >> 2] | 0; a = c[d >> 2] | 0 ? c[d >> 2] | 0 : 50434; c[j >> 2] = c[g >> 2]; c[j + 4 >> 2] = b; c[j + 8 >> 2] = a; FK(2, 33101, 33109, j); c[h >> 2] = WL(c[e >> 2] | 0, c[h >> 2] | 0, 33079) | 0; if ((c[g >> 2] | 0) >>> 0 > 1) { c[k >> 2] = c[g >> 2]; DK(0, 33141, k); continue } pw((c[i >> 2] | 0) + 128 | 0, c[g >> 2] | 0, c[f >> 2] | 0, c[f >> 2] | 0); if (!(c[d >> 2] | 0)) continue; if (!(oi((c[i >> 2] | 0) + 4932 + ((c[g >> 2] | 0) * 568 | 0) | 0, c[d >> 2] | 0) | 0)) continue; c[m >> 2] = c[d >> 2]; DK(0, 33167, m) } l = n; return } function qf(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; h = l; l = l + 48 | 0; k = h; f = h + 44 | 0; n = h + 40 | 0; m = h + 36 | 0; i = h + 32 | 0; g = h + 28 | 0; j = h + 24 | 0; e = h + 20 | 0; c[f >> 2] = b; c[n >> 2] = d; c[m >> 2] = WL(c[n >> 2] | 0, 0, 32962) | 0; kM(c[m >> 2] | 0, 49843, i, 32966) | 0; jM(c[m >> 2] | 0, 32975, j, 1) | 0; jM(c[m >> 2] | 0, 32984, e, 0) | 0; kM(c[m >> 2] | 0, 32992, g, 0) | 0; m = c[j >> 2] | 0; d = c[g >> 2] | 0 ? c[g >> 2] | 0 : 32998; b = c[e >> 2] | 0; c[k >> 2] = c[i >> 2]; c[k + 4 >> 2] = m; c[k + 8 >> 2] = d; c[k + 12 >> 2] = b; FK(2, 33004, 33009, k); b = gP(c[i >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 6116 >> 2] = b; Ug((c[f >> 2] | 0) + 2860 | 0); Wg((c[f >> 2] | 0) + 2860 | 0, c[f >> 2] | 0, 155); Xg((c[f >> 2] | 0) + 2860 | 0, c[f >> 2] | 0, 156); Yg((c[f >> 2] | 0) + 2860 | 0, c[j >> 2] | 0); if (Zg((c[f >> 2] | 0) + 2860 | 0, c[i >> 2] | 0) | 0) DK(0, 33050, h + 16 | 0); if (c[e >> 2] | 0) { a[(c[f >> 2] | 0) + 2860 + 120 >> 0] = 0; a[(c[f >> 2] | 0) + 2860 + 121 >> 0] = 6; a[(c[f >> 2] | 0) + 2860 + 122 >> 0] = -1; a[(c[f >> 2] | 0) + 2860 + 123 >> 0] = -53 } d = (c[f >> 2] | 0) + 2860 | 0; if (c[g >> 2] | 0) { bh(d, c[g >> 2] | 0); l = h; return } else { _g(d, 0, 1); l = h; return } } function rf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; j = k; i = k + 32 | 0; d = k + 28 | 0; h = k + 24 | 0; f = k + 20 | 0; e = k + 16 | 0; g = k + 12 | 0; c[i >> 2] = a; c[d >> 2] = b; c[(c[i >> 2] | 0) + 3176 >> 2] = 0; if (!(c[c[i >> 2] >> 2] & 1)) { l = k; return } c[h >> 2] = WL(c[d >> 2] | 0, 0, 32799) | 0; hM(c[h >> 2] | 0, 32904, f, 1) | 0; jM(c[h >> 2] | 0, 32910, e, 0) | 0; jM(c[h >> 2] | 0, 32808, g, 0) | 0; h = c[e >> 2] | 0; a = c[g >> 2] | 0 ? 32865 : 32872; c[j >> 2] = c[f >> 2]; c[j + 4 >> 2] = h; c[j + 8 >> 2] = a; FK(2, 32915, 32925, j); j = Re() | 0; c[(c[i >> 2] | 0) + 3176 >> 2] = j; if (!(c[(c[i >> 2] | 0) + 3176 >> 2] | 0)) { l = k; return } Ue(c[(c[i >> 2] | 0) + 3176 >> 2] | 0, c[f >> 2] | 0, c[e >> 2] | 0) | 0; Ve(c[(c[i >> 2] | 0) + 3176 >> 2] | 0, c[g >> 2] | 0); Se(c[(c[i >> 2] | 0) + 3176 >> 2] | 0, (c[i >> 2] | 0) + 36 | 0, 157); Te(c[(c[i >> 2] | 0) + 3176 >> 2] | 0, c[i >> 2] | 0, 12); mv((c[i >> 2] | 0) + 36 | 0, c[(c[i >> 2] | 0) + 3176 >> 2] | 0, 158); lv((c[i >> 2] | 0) + 36 | 0, c[(c[i >> 2] | 0) + 3176 >> 2] | 0, 159); l = k; return } function sf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 64 | 0; j = k + 24 | 0; i = k + 48 | 0; d = k + 44 | 0; h = k + 40 | 0; g = k + 36 | 0; e = k + 32 | 0; f = k + 28 | 0; c[i >> 2] = a; c[d >> 2] = b; c[(c[i >> 2] | 0) + 3180 >> 2] = 0; c[(c[i >> 2] | 0) + 3188 >> 2] = 0; c[(c[i >> 2] | 0) + 3184 >> 2] = 0; if (!(c[c[i >> 2] >> 2] & 6)) { l = k; return } c[h >> 2] = WL(c[d >> 2] | 0, 0, 32795) | 0; jM(c[h >> 2] | 0, 46322, g, 1) | 0; jM(c[h >> 2] | 0, 32799, e, 1) | 0; jM(c[h >> 2] | 0, 32808, f, 0) | 0; FK(2, 32822, 32827, k); a = kc() | 0; c[(c[i >> 2] | 0) + 3180 >> 2] = a; if (!(c[(c[i >> 2] | 0) + 3180 >> 2] | 0)) { DK(0, 32836, k + 8 | 0); l = k; return } lc(c[(c[i >> 2] | 0) + 3180 >> 2] | 0, (c[i >> 2] | 0) + 36 | 0, 160); mc(c[(c[i >> 2] | 0) + 3180 >> 2] | 0, (c[i >> 2] | 0) + 36 | 0, 8); nc(c[(c[i >> 2] | 0) + 3180 >> 2] | 0, c[i >> 2] | 0, 161); if (c[g >> 2] | 0 ? (FK(2, 32822, 32858, k + 16 | 0), a = cd() | 0, c[(c[i >> 2] | 0) + 3188 >> 2] = a, c[(c[i >> 2] | 0) + 3188 >> 2] | 0) : 0) oc(c[(c[i >> 2] | 0) + 3180 >> 2] | 0, c[(c[i >> 2] | 0) + 3188 >> 2] | 0) | 0; if (!(c[e >> 2] | 0)) { l = k; return } c[j >> 2] = c[f >> 2] | 0 ? 32865 : 32872; FK(2, 32822, 32879, j); j = Uc() | 0; c[(c[i >> 2] | 0) + 3184 >> 2] = j; if (!(c[(c[i >> 2] | 0) + 3184 >> 2] | 0)) { l = k; return } Dc(c[(c[i >> 2] | 0) + 3184 >> 2] | 0, c[f >> 2] | 0); oc(c[(c[i >> 2] | 0) + 3180 >> 2] | 0, c[(c[i >> 2] | 0) + 3184 >> 2] | 0) | 0; l = k; return } function tf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; a = dK(c[f >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 4928 >> 2] = a; l = d; return } function uf(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; q = l; l = l + 80 | 0; p = q + 8 | 0; r = q; n = q + 76 | 0; s = q + 72 | 0; i = q + 68 | 0; o = q + 64 | 0; h = q + 60 | 0; j = q + 56 | 0; g = q + 52 | 0; e = q + 48 | 0; d = q + 44 | 0; f = q + 40 | 0; k = q + 36 | 0; m = q + 32 | 0; c[n >> 2] = a; c[s >> 2] = b; c[k >> 2] = WL(c[s >> 2] | 0, 0, 32665) | 0; Xd((c[n >> 2] | 0) + 3192 | 0); Zd((c[n >> 2] | 0) + 3192 | 0, c[n >> 2] | 0, 162); be((c[n >> 2] | 0) + 3192 | 0, c[(c[n >> 2] | 0) + 4928 >> 2] | 0); c[r >> 2] = 13631488; FK(2, 32669, 32674, r); c[m >> 2] = WL(c[k >> 2] | 0, 0, 48827) | 0; c[i >> 2] = 0; while (1) { if (!(c[m >> 2] | 0)) break; hM(c[m >> 2] | 0, 48827, e, c[i >> 2] | 0) | 0; hM(c[m >> 2] | 0, 49180, d, c[e >> 2] | 0) | 0; kM(c[m >> 2] | 0, 49843, f, 0) | 0; jM(c[m >> 2] | 0, 32688, o, 0) | 0; jM(c[m >> 2] | 0, 32701, h, 0) | 0; jM(c[m >> 2] | 0, 32708, g, 0) | 0; jM(c[m >> 2] | 0, 32717, j, 0) | 0; t = c[o >> 2] | 0 ? 400 : 800; b = c[h >> 2] | 0; a = c[j >> 2] | 0; r = c[d >> 2] | 0; s = c[f >> 2] | 0 ? c[f >> 2] | 0 : 50434; c[p >> 2] = c[e >> 2]; c[p + 4 >> 2] = t; c[p + 8 >> 2] = b; c[p + 12 >> 2] = a; c[p + 16 >> 2] = r; c[p + 20 >> 2] = s; FK(2, 32669, 32729, p); _d((c[n >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0, c[o >> 2] | 0 ? 1 : 2) | 0; ce((c[n >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0, c[d >> 2] | 0); de((c[n >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0, c[f >> 2] | 0); fe((c[n >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0, c[h >> 2] | 0); ge((c[n >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0, c[j >> 2] | 0); if (c[g >> 2] | 0) me((c[n >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0); c[i >> 2] = (c[e >> 2] | 0) + 1; c[m >> 2] = WL(c[k >> 2] | 0, c[m >> 2] | 0, 48827) | 0 } l = q; return } function vf(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; q = l; l = l + 80 | 0; o = q + 8 | 0; n = q; k = q + 64 | 0; r = q + 60 | 0; i = q + 56 | 0; j = q + 52 | 0; e = q + 48 | 0; d = q + 44 | 0; m = q + 40 | 0; g = q + 36 | 0; f = q + 32 | 0; p = q + 28 | 0; h = q + 24 | 0; c[k >> 2] = a; c[r >> 2] = b; c[i >> 2] = WL(c[r >> 2] | 0, 0, 32551) | 0; if (!(c[i >> 2] | 0)) { l = q; return } gM(c[i >> 2] | 0, 49848, d, 5767168) | 0; gM(c[i >> 2] | 0, 49201, m, 524288) | 0; r = c[m >> 2] | 0; c[n >> 2] = c[d >> 2]; c[n + 4 >> 2] = r; FK(2, 32556, 32562, n); kh((c[k >> 2] | 0) + 3520 | 0); if (c[c[k >> 2] >> 2] & 2 | 0) lh((c[k >> 2] | 0) + 3520 | 0, c[k >> 2] | 0, 163); mh((c[k >> 2] | 0) + 3520 | 0, c[(c[k >> 2] | 0) + 4928 >> 2] | 0); c[e >> 2] = wx(c[d >> 2] | 0, c[m >> 2] | 0, 0) | 0; if (!(c[e >> 2] | 0)) { l = q; return } Fx(c[e >> 2] | 0, (c[k >> 2] | 0) + 3520 | 0, 12, 13, 0, 13, 14, 0); Vx(c[(c[k >> 2] | 0) + 8 >> 2] | 0, c[e >> 2] | 0, 1); c[j >> 2] = WL(c[i >> 2] | 0, 0, 32587) | 0; while (1) { if (!(c[j >> 2] | 0)) break; hM(c[j >> 2] | 0, 32594, g, 0) | 0; hM(c[j >> 2] | 0, 48827, f, 0) | 0; kM(c[j >> 2] | 0, 32597, p, 32604) | 0; kM(c[j >> 2] | 0, 32608, h, 32616) | 0; m = c[f >> 2] | 0; n = c[p >> 2] | 0; r = c[h >> 2] | 0; c[o >> 2] = c[g >> 2]; c[o + 4 >> 2] = m; c[o + 8 >> 2] = n; c[o + 12 >> 2] = r; FK(2, 32556, 32624, o); nh((c[k >> 2] | 0) + 3520 | 0, c[g >> 2] | 0, c[f >> 2] | 0); oh((c[k >> 2] | 0) + 3520 | 0, c[g >> 2] | 0, c[p >> 2] | 0); ph((c[k >> 2] | 0) + 3520 | 0, c[g >> 2] | 0, c[h >> 2] | 0); c[j >> 2] = WL(c[i >> 2] | 0, c[j >> 2] | 0, 32587) | 0 } l = q; return } function wf(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; n = l; l = l + 80 | 0; m = n + 8 | 0; k = n; h = n + 40 | 0; p = n + 36 | 0; f = n + 32 | 0; o = n + 28 | 0; j = n + 48 | 0; e = n + 24 | 0; i = n + 20 | 0; g = n + 16 | 0; c[h >> 2] = b; c[p >> 2] = d; c[g >> 2] = WL(c[p >> 2] | 0, 0, 32481) | 0; hM(c[g >> 2] | 0, 32486, e, 30) | 0; jM(c[g >> 2] | 0, 32499, o, 0) | 0; Bi((c[h >> 2] | 0) + 3868 | 0, (c[g >> 2] | 0) != 0 & 1); Ci((c[h >> 2] | 0) + 3868 | 0, c[(c[h >> 2] | 0) + 8 >> 2] | 0); Di((c[h >> 2] | 0) + 3868 | 0, c[(c[h >> 2] | 0) + 4928 >> 2] | 0); a[(c[h >> 2] | 0) + 3868 + 60 >> 0] = c[o >> 2]; if (!(c[g >> 2] | 0)) { l = n; return } c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= 4) break; if (c[13608] & 1 << c[f >> 2] | 0) c[i >> 2] = c[54448 + (c[f >> 2] << 2) >> 2]; else { c[k >> 2] = (c[f >> 2] | 0) + 1; BQ(j, 32515, k) | 0; hM(c[g >> 2] | 0, j, i, c[e >> 2] | 0) | 0 } Ii((c[h >> 2] | 0) + 3868 | 0, c[f >> 2] | 0, c[i >> 2] | 0); p = c[i >> 2] | 0; c[m >> 2] = (c[f >> 2] | 0) + 1; c[m + 4 >> 2] = p; FK(2, 35803, 32531, m); c[f >> 2] = (c[f >> 2] | 0) + 1 } l = n; return } function xf(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, m = 0; m = l; l = l + 48 | 0; k = m + 16 | 0; j = m; i = m + 40 | 0; g = m + 36 | 0; d = m + 32 | 0; f = m + 28 | 0; e = m + 24 | 0; h = m + 20 | 0; c[i >> 2] = a; c[g >> 2] = b; nj((c[i >> 2] | 0) + 4088 | 0); if (!(c[(c[i >> 2] | 0) + 12 >> 2] | 0)) { l = m; return } c[h >> 2] = WL(c[g >> 2] | 0, 0, 32394) | 0; c[d >> 2] = Lx(c[(c[i >> 2] | 0) + 12 >> 2] | 0) | 0; c[d >> 2] = (c[d >> 2] | 0) >>> 0 < 768 ? 0 : (c[d >> 2] | 0) - 768 | 0; gM(c[h >> 2] | 0, 49848, d, c[d >> 2] | 0) | 0; gM(c[h >> 2] | 0, 48219, f, 6e3) | 0; kM(c[h >> 2] | 0, 49360, e, 0) | 0; h = c[f >> 2] | 0; a = c[e >> 2] | 0 ? c[e >> 2] | 0 : 50434; c[j >> 2] = c[d >> 2]; c[j + 4 >> 2] = h; c[j + 8 >> 2] = a; FK(2, 32400, 32407, j); c[(c[i >> 2] | 0) + 6088 >> 2] = c[d >> 2]; c[(c[i >> 2] | 0) + 6092 >> 2] = (c[d >> 2] | 0) - 23552; a = (c[i >> 2] | 0) + 4088 | 0; j = Hx(c[(c[i >> 2] | 0) + 12 >> 2] | 0) | 0; oj(a, j + (c[(c[i >> 2] | 0) + 6088 >> 2] | 0) | 0); pj((c[i >> 2] | 0) + 4088 | 0, c[f >> 2] | 0); if (!(c[e >> 2] | 0)) { l = m; return } if (!(sj((c[i >> 2] | 0) + 4088 | 0, c[e >> 2] | 0) | 0)) { l = m; return } c[k >> 2] = c[e >> 2]; DK(0, 32443, k); l = m; return } function yf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; f = e; c[d >> 2] = a; c[f >> 2] = b; a = gK(c[f >> 2] | 0, c[13607] | 0) | 0; c[(c[d >> 2] | 0) + 4924 >> 2] = a; if (!(c[(c[d >> 2] | 0) + 4924 >> 2] | 0)) { l = e; return } aO(c[(c[d >> 2] | 0) + 4924 >> 2] | 0, c[d >> 2] | 0, 31); bO(c[(c[d >> 2] | 0) + 4924 >> 2] | 0, c[d >> 2] | 0, 15); cO(c[(c[d >> 2] | 0) + 4924 >> 2] | 0, c[d >> 2] | 0, 3); l = e; return } function zf(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, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 64 | 0; o = q; n = q + 56 | 0; k = q + 52 | 0; d = q + 48 | 0; e = q + 44 | 0; p = q + 40 | 0; i = q + 36 | 0; j = q + 32 | 0; f = q + 28 | 0; g = q + 24 | 0; h = q + 20 | 0; m = q + 16 | 0; c[n >> 2] = a; c[k >> 2] = b; if (!(c[(c[n >> 2] | 0) + 12 >> 2] | 0)) { l = q; return } c[m >> 2] = WL(c[k >> 2] | 0, 0, 32243) | 0; c[d >> 2] = Lx(c[(c[n >> 2] | 0) + 12 >> 2] | 0) | 0; c[d >> 2] = (c[d >> 2] | 0) >>> 0 < 22784 ? 0 : (c[d >> 2] | 0) - 22784 | 0; gM(c[m >> 2] | 0, 49848, e, c[d >> 2] | 0) | 0; hM(c[m >> 2] | 0, 32249, p, 512) | 0; hM(c[m >> 2] | 0, 32255, i, 342) | 0; gM(c[m >> 2] | 0, 32262, g, 0) | 0; gM(c[m >> 2] | 0, 32269, h, 16777215) | 0; hM(c[m >> 2] | 0, 32276, f, 1e3) | 0; k = c[p >> 2] | 0; m = c[i >> 2] | 0; a = ((c[f >> 2] | 0) >>> 0) / 10 | 0; c[o >> 2] = c[e >> 2]; c[o + 4 >> 2] = k; c[o + 8 >> 2] = m; c[o + 12 >> 2] = a; FK(2, 32287, 32294, o); c[(c[n >> 2] | 0) + 6080 >> 2] = c[e >> 2]; o = (c[e >> 2] | 0) >>> 0 >= 32768 ? (c[d >> 2] | 0) == (c[e >> 2] | 0) : 0; a = c[e >> 2] | 0; c[(o ? c[n >> 2] | 0 : c[n >> 2] | 0) + 6084 >> 2] = o ? a - 32768 | 0 : a; o = Bj(c[p >> 2] | 0, c[i >> 2] | 0) | 0; c[(c[n >> 2] | 0) + 4920 >> 2] = o; if (!(c[(c[n >> 2] | 0) + 4920 >> 2] | 0)) { l = q; return } Cj(c[(c[n >> 2] | 0) + 4920 >> 2] | 0, c[n >> 2] | 0, 164); Cf(c[n >> 2] | 0, c[(c[n >> 2] | 0) + 6080 >> 2] | 0); if (c[(c[n >> 2] | 0) + 4924 >> 2] | 0) { Ej(c[(c[n >> 2] | 0) + 4920 >> 2] | 0, c[(c[n >> 2] | 0) + 4924 >> 2] | 0); $N(c[(c[n >> 2] | 0) + 4924 >> 2] | 0, 512, 342) | 0 } Fj(c[(c[n >> 2] | 0) + 4920 >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0); Gj(c[(c[n >> 2] | 0) + 4920 >> 2] | 0, ((((c[f >> 2] | 0) * 255 | 0) + 500 | 0) >>> 0) / 1e3 | 0); c[j >> 2] = 0; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (S(((c[p >> 2] | 0) >>> 0) / 8 | 0, c[i >> 2] | 0) | 0) >>> 0) break; by(c[(c[n >> 2] | 0) + 8 >> 2] | 0, (c[(c[n >> 2] | 0) + 6080 >> 2] | 0) + (c[j >> 2] | 0) | 0, -1); c[j >> 2] = (c[j >> 2] | 0) + 1 } l = q; return } function Af(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[(c[d >> 2] | 0) + 6144 >> 2] = 0; c[(c[d >> 2] | 0) + 6148 >> 2] = 0; jL((c[d >> 2] | 0) + 6148 | 0) | 0; c[(c[d >> 2] | 0) + 6140 >> 2] = 0; l = b; return } function Bf(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 384 | 0; j = h + 8 | 0; i = h + 382 | 0; e = h + 4 | 0; g = h + 12 | 0; f = h; c[j >> 2] = b; a[i >> 0] = d; c[f >> 2] = c[j >> 2]; if (!(a[i >> 0] | 0)) { l = h; return } yv((c[f >> 2] | 0) + 36 | 0, 0); yv((c[f >> 2] | 0) + 36 | 0, 1); tj((c[f >> 2] | 0) + 4088 | 0); c[e >> 2] = 0; while (1) { d = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 370) break; j = Zx(c[d + 8 >> 2] | 0, (c[(c[f >> 2] | 0) + 6088 >> 2] | 0) + (c[e >> 2] | 0) + 1 | 0) | 0; a[g + (c[e >> 2] | 0) >> 0] = j; c[e >> 2] = (c[e >> 2] | 0) + 1 } b = c[f >> 2] | 0; if (c[d >> 2] & 4 | 0) { Df(b, g, 370); l = h; return } else { le(b + 3192 | 0, g, 370); l = h; return } } function Cf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; d = h + 8 | 0; g = h + 4 | 0; e = h; c[f >> 2] = a; c[d >> 2] = b; a = c[d >> 2] | 0; a = a >>> 0 < (Lx(c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0) >>> 0; b = c[f >> 2] | 0; do if (a) { e = Hx(c[b + 12 >> 2] | 0) | 0; c[g >> 2] = e + (c[d >> 2] | 0) } else { c[e >> 2] = Xx(c[b + 8 >> 2] | 0, c[d >> 2] | 0) | 0; if (c[e >> 2] | 0) { c[g >> 2] = Hx(c[e >> 2] | 0) | 0; e = Jx(c[e >> 2] | 0) | 0; c[g >> 2] = (c[g >> 2] | 0) + (e - (c[(c[f >> 2] | 0) + 6080 >> 2] | 0)); break } Dj(c[(c[f >> 2] | 0) + 4920 >> 2] | 0, 0); l = h; return } while (0); Dj(c[(c[f >> 2] | 0) + 4920 >> 2] | 0, c[g >> 2] | 0); l = h; return } function Df(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 16 | 0; f = k + 12 | 0; g = k + 8 | 0; h = k + 4 | 0; j = k; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = e; c[j >> 2] = 0; c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) break; c[j >> 2] = (c[j >> 2] | 0) + (d[32330 + ((d[c[f >> 2] >> 0] | 0) & 63) >> 0] | 0); c[h >> 2] = (c[h >> 2] | 0) + 1 } c[j >> 2] = ((c[j >> 2] | 0) >>> 0) / ((c[g >> 2] | 0) >>> 0) | 0; if ((c[j >> 2] | 0) >>> 0 >= 1) { if ((c[j >> 2] | 0) >>> 0 > 31) c[j >> 2] = 31 } else c[j >> 2] = 1; c[j >> 2] = 32 + (((((30 - ((c[j >> 2] | 0) - 1) | 0) * 223 | 0) + 15 | 0) >>> 0) / 30 | 0); if (!(c[(c[i >> 2] | 0) + 4920 >> 2] | 0)) { l = k; return } if ((c[(c[(c[i >> 2] | 0) + 4920 >> 2] | 0) + 28 >> 2] | 0) == (c[j >> 2] | 0)) { l = k; return } Gj(c[(c[i >> 2] | 0) + 4920 >> 2] | 0, c[j >> 2] | 0); l = k; return } function Ef(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; i = h + 12 | 0; e = h + 8 | 0; f = h + 4 | 0; g = h; c[i >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; c[g >> 2] = c[i >> 2]; b = c[g >> 2] | 0; if ((c[e >> 2] | 0) == 3) { Nd(b, c[f >> 2] | 0) | 0; l = h; return } if (c[b + 3176 >> 2] | 0) Xe(c[(c[g >> 2] | 0) + 3176 >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0); if (!(c[(c[g >> 2] | 0) + 3184 >> 2] | 0)) { l = h; return } Gc(c[(c[g >> 2] | 0) + 3184 >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0); l = h; return } function Ff(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 32 | 0; o = n + 16 | 0; i = n + 12 | 0; j = n + 8 | 0; h = n + 4 | 0; m = n; k = n + 20 | 0; c[o >> 2] = b; c[i >> 2] = e; c[j >> 2] = f; c[h >> 2] = g; c[m >> 2] = c[o >> 2]; if (a[(c[m >> 2] | 0) + 6120 >> 0] | 0) { if (!(c[h >> 2] | 0)) { l = n; return } Gf(c[m >> 2] | 0, 0); l = n; return } g = c[m >> 2] | 0; if (c[(c[m >> 2] | 0) + 3188 >> 2] | 0) { Vc(c[g + 3188 >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0, c[j >> 2] | 0); l = n; return } if ((c[g + 6108 >> 2] ^ c[h >> 2]) & ~c[h >> 2] & 2 | 0) eO(c[(c[m >> 2] | 0) + 4924 >> 2] | 0, 51620, 51563) | 0; a[k >> 0] = a[(c[m >> 2] | 0) + 6069 >> 0] | 0; o = (c[m >> 2] | 0) + 6069 | 0; b = d[o >> 0] | 0; a[o >> 0] = c[h >> 2] & 1 | 0 ? b & 247 : b | 8; if ((d[(c[m >> 2] | 0) + 6069 >> 0] | 0) != (d[k >> 0] | 0)) Bv((c[m >> 2] | 0) + 36 | 0, a[(c[m >> 2] | 0) + 6069 >> 0] | 0); o = (c[m >> 2] | 0) + 6100 | 0; c[o >> 2] = (c[o >> 2] | 0) + (c[i >> 2] | 0); o = (c[m >> 2] | 0) + 6104 | 0; c[o >> 2] = (c[o >> 2] | 0) + (c[j >> 2] | 0); c[(c[m >> 2] | 0) + 6108 >> 2] = c[h >> 2]; l = n; return } function Gf(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; g = f; c[e >> 2] = b; c[g >> 2] = d; a[(c[e >> 2] | 0) + 6120 >> 0] = (c[g >> 2] | 0) != 0; if (a[(c[e >> 2] | 0) + 6120 >> 0] | 0) { l = f; return } Af(c[e >> 2] | 0); l = f; return } function Hf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; i = h + 4 | 0; g = h + 8 | 0; f = h; c[i >> 2] = b; a[g >> 0] = e; c[f >> 2] = c[i >> 2]; if (d[(c[f >> 2] | 0) + 6069 >> 0] & 64 | 0) a[g >> 0] = 0; else a[g >> 0] = (d[g >> 0] | 0) != 0; i = (c[f >> 2] | 0) + 6097 | 0; e = d[i >> 0] | 0; a[i >> 0] = a[g >> 0] | 0 ? e | 2 : e & -3; cf(c[f >> 2] | 0, 1, d[(c[f >> 2] | 0) + 6097 >> 0] | 0); l = h; return } function If(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 4 | 0; g = f + 8 | 0; h = f; c[i >> 2] = b; a[g >> 0] = e; c[h >> 2] = c[i >> 2]; Jf(c[h >> 2] | 0, 1, d[g >> 0] | 0 | 0 ? 4 : 0); l = f; return } function Jf(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[g >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; if ((c[f >> 2] | 0) >>> 0 >= 2) { l = h; return } c[(c[g >> 2] | 0) + 6132 + (c[f >> 2] << 2) >> 2] = c[e >> 2]; Kf(c[g >> 2] | 0); l = h; return } function Kf(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; d = g + 12 | 0; b = g + 8 | 0; e = g + 4 | 0; c[d >> 2] = a; c[e >> 2] = 0; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= 2) break; do if ((c[(c[d >> 2] | 0) + 6132 + (c[b >> 2] << 2) >> 2] | 0) >>> 0 > 0) { if (c[e >> 2] | 0 ? (c[(c[d >> 2] | 0) + 6132 + (c[b >> 2] << 2) >> 2] | 0) >>> 0 >= (c[e >> 2] | 0) >>> 0 : 0) break; c[e >> 2] = c[(c[d >> 2] | 0) + 6132 + (c[b >> 2] << 2) >> 2] } while (0); c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((c[e >> 2] | 0) == (c[(c[d >> 2] | 0) + 6128 >> 2] | 0)) { l = g; return } c[f >> 2] = c[e >> 2]; cg(32784, f); Yg((c[d >> 2] | 0) + 2860 | 0, (c[e >> 2] | 0) != 1 & 1); c[(c[d >> 2] | 0) + 6128 >> 2] = c[e >> 2]; c[(c[d >> 2] | 0) + 6140 >> 2] = 0; Af(c[d >> 2] | 0); l = g; return } function Lf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 4 | 0; h = f + 8 | 0; g = f; c[i >> 2] = b; a[h >> 0] = e; c[g >> 2] = c[i >> 2]; e = (c[g >> 2] | 0) + 6069 | 0; b = d[e >> 0] | 0; a[e >> 0] = a[h >> 0] | 0 ? b & -9 : b | 8; Bv((c[g >> 2] | 0) + 36 | 0, a[(c[g >> 2] | 0) + 6069 >> 0] | 0); l = f; return } function Mf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 4 | 0; h = f + 8 | 0; g = f; c[i >> 2] = b; a[h >> 0] = e; c[g >> 2] = c[i >> 2]; e = (c[g >> 2] | 0) + 6069 | 0; b = d[e >> 0] | 0; a[e >> 0] = a[h >> 0] | 0 ? b | 1 : b & -2; Bv((c[g >> 2] | 0) + 36 | 0, a[(c[g >> 2] | 0) + 6069 >> 0] | 0); l = f; return } function Nf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; h = f; g = f + 4 | 0; c[h >> 2] = b; a[g >> 0] = e; cf(c[h >> 2] | 0, 2, d[g >> 0] | 0); l = f; return } function Of(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; i = g + 8 | 0; h = g + 4 | 0; f = g + 12 | 0; e = g; c[i >> 2] = b; c[h >> 2] = d; c[e >> 2] = c[i >> 2]; a[f >> 0] = -1; switch (c[h >> 2] | 0) { case 2097144: { a[f >> 0] = cx((c[e >> 2] | 0) + 128 | 0) | 0; break } case 2097146: { a[f >> 0] = bx((c[e >> 2] | 0) + 128 | 0) | 0; break } case 2097148: { a[f >> 0] = gx((c[e >> 2] | 0) + 128 | 0) | 0; break } case 2097150: { a[f >> 0] = fx((c[e >> 2] | 0) + 128 | 0) | 0; break } default: {} } l = g; return a[f >> 0] | 0 } function Pf(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; h = l; l = l + 16 | 0; j = h + 8 | 0; i = h + 4 | 0; g = h + 12 | 0; f = h; c[j >> 2] = b; c[i >> 2] = d; a[g >> 0] = e; c[f >> 2] = c[j >> 2]; switch (c[i >> 2] | 0) { case 4194297: { ex((c[f >> 2] | 0) + 128 | 0, a[g >> 0] | 0);l = h; return } case 4194299: { dx((c[f >> 2] | 0) + 128 | 0, a[g >> 0] | 0);l = h; return } case 4194301: { ix((c[f >> 2] | 0) + 128 | 0, a[g >> 0] | 0);l = h; return } case 4194303: { hx((c[f >> 2] | 0) + 128 | 0, a[g >> 0] | 0);l = h; return } default: { l = h; return } } } function Qf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; i = f + 8 | 0; g = f; c[h >> 2] = b; a[i >> 0] = e; c[g >> 2] = c[h >> 2]; e = (c[g >> 2] | 0) + 6097 | 0; b = d[e >> 0] | 0; a[e >> 0] = a[i >> 0] | 0 ? b | 1 : b & -2; cf(c[h >> 2] | 0, 1, d[(c[g >> 2] | 0) + 6097 >> 0] | 0); l = f; return } function Rf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; p = l; l = l + 48 | 0; o = p + 24 | 0; n = p + 16 | 0; m = p + 8 | 0; k = p; q = p + 40 | 0; j = p + 45 | 0; i = p + 36 | 0; g = p + 44 | 0; f = p + 32 | 0; h = p + 28 | 0; c[q >> 2] = b; a[j >> 0] = e; c[i >> 2] = c[q >> 2]; if ((d[(c[i >> 2] | 0) + 6068 >> 0] | 0 | 0) == (d[j >> 0] | 0 | 0)) { l = p; return } a[g >> 0] = a[(c[i >> 2] | 0) + 6068 >> 0] | 0; a[(c[i >> 2] | 0) + 6068 >> 0] = a[j >> 0] | 0; do if (((d[g >> 0] | 0) ^ (d[j >> 0] | 0)) & 16 | 0) { b = c[i >> 2] | 0; if (c[c[i >> 2] >> 2] & 1 | 0) { lg(b, ((d[j >> 0] | 0) & 16 | 0) != 0 & 1); break } if (c[b >> 2] & 6 | 0) he((c[i >> 2] | 0) + 3192 | 0, ((d[j >> 0] | 0) & 16 | 0) != 0 & 255) } while (0); if (((d[g >> 0] | 0) ^ (d[j >> 0] | 0)) & 32 | 0) je((c[i >> 2] | 0) + 3192 | 0, ((d[j >> 0] | 0) & 32 | 0) != 0 & 255); if (((d[g >> 0] | 0) ^ (d[j >> 0] | 0)) & 64 | 0) { if ((d[j >> 0] | 0) & 64 | 0) { cg(33213, k); c[f >> 2] = c[(c[i >> 2] | 0) + 6080 >> 2] } else { cg(33232, m); c[f >> 2] = c[(c[i >> 2] | 0) + 6084 >> 2] } Cf(c[i >> 2] | 0, c[f >> 2] | 0) } if (((d[g >> 0] | 0) ^ (d[j >> 0] | 0)) & 8 | 0 ? c[c[i >> 2] >> 2] & 1 | 0 : 0) { c[h >> 2] = Hx(c[(c[i >> 2] | 0) + 12 >> 2] | 0) | 0; if ((d[j >> 0] | 0) & 8 | 0) { cg(33256, n); c[h >> 2] = (c[h >> 2] | 0) + (c[(c[i >> 2] | 0) + 6088 >> 2] | 0) } else { cg(33275, o); c[h >> 2] = (c[h >> 2] | 0) + (c[(c[i >> 2] | 0) + 6092 >> 2] | 0) } oj((c[i >> 2] | 0) + 4088 | 0, c[h >> 2] | 0) } if (!(((d[g >> 0] | 0) ^ (d[j >> 0] | 0)) & 7)) { l = p; return } qj((c[i >> 2] | 0) + 4088 | 0, (d[j >> 0] | 0) & 7); l = p; return } function Sf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; j = i + 4 | 0; h = i + 9 | 0; g = i; f = i + 8 | 0; c[j >> 2] = b; a[h >> 0] = e; c[g >> 2] = c[j >> 2]; if ((d[(c[g >> 2] | 0) + 6069 >> 0] | 0 | 0) == (d[h >> 0] | 0 | 0)) { l = i; return } a[f >> 0] = a[(c[g >> 2] | 0) + 6069 >> 0] | 0; a[(c[g >> 2] | 0) + 6069 >> 0] = a[h >> 0] | 0; ch((c[g >> 2] | 0) + 2860 | 0, a[h >> 0] | 0); if (((d[f >> 0] | 0) ^ (d[h >> 0] | 0)) & 128 | 0) rj((c[g >> 2] | 0) + 4088 | 0, ((d[h >> 0] | 0) & 128 | 0) == 0 & 1); if (!(c[(c[g >> 2] | 0) + 3180 >> 2] | 0)) { l = i; return } rc(c[(c[g >> 2] | 0) + 3180 >> 2] | 0, (d[h >> 0] | 0) >> 4 & 3); l = i; return } function Tf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; c[d >> 2] = b; do if (!(fP(c[d >> 2] | 0, 33299) | 0)) Wm(c[(c[f >> 2] | 0) + 4 >> 2] | 0); else { if (!(fP(c[d >> 2] | 0, 33369) | 0)) { Xm(c[(c[f >> 2] | 0) + 4 >> 2] | 0); break } if (!(fP(c[d >> 2] | 0, 33375) | 0)) { Ym(c[(c[f >> 2] | 0) + 4 >> 2] | 0); break } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } while (0); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } function Uf(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g; h = g + 4 | 0; c[f >> 2] = b; a[h >> 0] = e; if (!(d[h >> 0] | 0)) { l = g; return } Vf(c[f >> 2] | 0); l = g; return } function Vf(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; c[d >> 2] = b; if (c[(c[d >> 2] | 0) + 6076 >> 2] | 0) { l = e; return } c[(c[d >> 2] | 0) + 6076 >> 2] = 1; cg(33357, e); a[(c[d >> 2] | 0) + 6112 >> 0] = 0; a[(c[d >> 2] | 0) + 6113 >> 0] = 0; c[(c[d >> 2] | 0) + 6100 >> 2] = 0; c[(c[d >> 2] | 0) + 6104 >> 2] = 0; c[(c[d >> 2] | 0) + 6108 >> 2] = 0; a[(c[d >> 2] | 0) + 6096 >> 0] = 0; a[(c[d >> 2] | 0) + 6097 >> 0] = 0; b = c[d >> 2] | 0; if (!(c[c[d >> 2] >> 2] & 1 | 0)) { lg(b, 0); if (c[(c[d >> 2] | 0) + 16 >> 2] | 0 ? (c[(c[(c[d >> 2] | 0) + 16 >> 2] | 0) + 40 >> 2] | 0) >>> 0 >= 8 : 0) { b = c[(c[d >> 2] | 0) + 4 >> 2] | 0; gf(b, 0, Px(c[(c[d >> 2] | 0) + 16 >> 2] | 0, 0) | 0); b = c[(c[d >> 2] | 0) + 4 >> 2] | 0; gf(b, 4, Px(c[(c[d >> 2] | 0) + 16 >> 2] | 0, 4) | 0) } } else lg(b, 1); ew((c[d >> 2] | 0) + 36 | 0); a[(c[d >> 2] | 0) + 6068 >> 0] = -9; a[(c[d >> 2] | 0) + 6069 >> 0] = -1; Av((c[d >> 2] | 0) + 36 | 0, a[(c[d >> 2] | 0) + 6068 >> 0] | 0); Bv((c[d >> 2] | 0) + 36 | 0, a[(c[d >> 2] | 0) + 6069 >> 0] | 0); lj((c[d >> 2] | 0) + 3868 | 0); mi((c[d >> 2] | 0) + 3520 | 0); rx((c[d >> 2] | 0) + 128 | 0); if (c[(c[d >> 2] | 0) + 3180 >> 2] | 0) pc(c[(c[d >> 2] | 0) + 3180 >> 2] | 0); Nn(c[(c[d >> 2] | 0) + 4 >> 2] | 0); Af(c[d >> 2] | 0); c[(c[d >> 2] | 0) + 6076 >> 2] = 0; l = e; return } function Wf(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; b = f + 4 | 0; e = f; c[b >> 2] = a; c[e >> 2] = HQ(6184) | 0; if (!(c[e >> 2] | 0)) { c[d >> 2] = 0; e = c[d >> 2] | 0; l = f; return e | 0 } else { jf(c[e >> 2] | 0, c[b >> 2] | 0); c[d >> 2] = c[e >> 2]; e = c[d >> 2] | 0; l = f; return e | 0 } return 0 } function Xf(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; e = i + 4 | 0; h = i; c[g >> 2] = a; c[e >> 2] = b; c[h >> 2] = d; if (!(c[(c[g >> 2] | 0) + 4924 >> 2] | 0)) { c[f >> 2] = 1; h = c[f >> 2] | 0; l = i; return h | 0 } else { c[f >> 2] = eO(c[(c[g >> 2] | 0) + 4924 >> 2] | 0, c[e >> 2] | 0, c[h >> 2] | 0) | 0; h = c[f >> 2] | 0; l = i; return h | 0 } return 0 } function Yf(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; g = j + 20 | 0; h = j + 16 | 0; f = j + 12 | 0; i = j + 8 | 0; e = j + 4 | 0; d = j; c[h >> 2] = a; c[f >> 2] = b; if (!(c[f >> 2] | 0)) { a = c[(c[(c[h >> 2] | 0) + 4 >> 2] | 0) + 372 >> 2] | 0; c[f >> 2] = a; c[f >> 2] = (c[f >> 2] | 0) == 0 ? 1 : a } b = c[f >> 2] | 0; if (!(c[(c[h >> 2] | 0) + 6128 >> 2] | 0)) { c[d >> 2] = b + (c[(c[h >> 2] | 0) + 6140 >> 2] | 0); c[e >> 2] = 1 } else { c[d >> 2] = b; c[e >> 2] = c[(c[h >> 2] | 0) + 6128 >> 2] } Qn(c[(c[h >> 2] | 0) + 4 >> 2] | 0, c[d >> 2] | 0); yj((c[h >> 2] | 0) + 4088 | 0, c[d >> 2] | 0); d = (c[h >> 2] | 0) + 6160 | 0; a = d; a = OQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[f >> 2] | 0, 0) | 0; c[d >> 2] = a; c[d + 4 >> 2] = D; d = (c[h >> 2] | 0) + 6168 | 0; c[d >> 2] = (c[d >> 2] | 0) + (c[f >> 2] | 0); while (1) { a = (c[h >> 2] | 0) + 6168 + 4 | 0; b = c[a >> 2] | 0; if ((c[(c[h >> 2] | 0) + 6168 >> 2] | 0) >>> 0 < (c[e >> 2] | 0) >>> 0) break; c[a >> 2] = b + 1; d = (c[h >> 2] | 0) + 6168 | 0; c[d >> 2] = (c[d >> 2] | 0) - (c[e >> 2] | 0) } if (b >>> 0 < 10) { c[g >> 2] = c[f >> 2]; i = c[g >> 2] | 0; l = j; return i | 0 } c[i >> 2] = ((c[(c[h >> 2] | 0) + 6168 + 4 >> 2] | 0) >>> 0) / 10 | 0; fw((c[h >> 2] | 0) + 36 | 0, c[i >> 2] | 0); if (c[(c[h >> 2] | 0) + 3180 >> 2] | 0) wc(c[(c[h >> 2] | 0) + 3180 >> 2] | 0, (c[i >> 2] | 0) * 10 | 0); Ne((c[h >> 2] | 0) + 3192 | 0, c[i >> 2] | 0); e = (c[h >> 2] | 0) + 6168 + 4 | 0; c[e >> 2] = (c[e >> 2] | 0) - ((c[i >> 2] | 0) * 10 | 0); e = (c[h >> 2] | 0) + 6168 + 8 | 0; c[e >> 2] = (c[e >> 2] | 0) + ((c[i >> 2] | 0) * 10 | 0); if ((c[(c[h >> 2] | 0) + 6168 + 8 >> 2] | 0) >>> 0 < 256) { c[g >> 2] = c[f >> 2]; i = c[g >> 2] | 0; l = j; return i | 0 } Ij(c[(c[h >> 2] | 0) + 4920 >> 2] | 0, c[(c[h >> 2] | 0) + 6168 + 8 >> 2] | 0); zi((c[h >> 2] | 0) + 4932 | 0, c[(c[h >> 2] | 0) + 6168 + 8 >> 2] | 0); zi((c[h >> 2] | 0) + 4932 + 568 | 0, c[(c[h >> 2] | 0) + 6168 + 8 >> 2] | 0); if (c[(c[h >> 2] | 0) + 3176 >> 2] | 0) af(c[(c[h >> 2] | 0) + 3176 >> 2] | 0, c[(c[h >> 2] | 0) + 6168 + 8 >> 2] | 0); i = (c[h >> 2] | 0) + 6168 + 12 | 0; c[i >> 2] = (c[i >> 2] | 0) + (c[(c[h >> 2] | 0) + 6168 + 8 >> 2] | 0); c[(c[h >> 2] | 0) + 6168 + 8 >> 2] = 0; if ((c[(c[h >> 2] | 0) + 6168 + 12 >> 2] | 0) >>> 0 < 8192) { c[g >> 2] = c[f >> 2]; i = c[g >> 2] | 0; l = j; return i | 0 } if (c[(c[h >> 2] | 0) + 4924 >> 2] | 0) nO(c[(c[h >> 2] | 0) + 4924 >> 2] | 0); Zf(c[h >> 2] | 0); ih((c[h >> 2] | 0) + 2860 | 0, c[(c[h >> 2] | 0) + 6168 + 12 >> 2] | 0); _f(c[h >> 2] | 0, c[(c[h >> 2] | 0) + 6168 + 12 >> 2] | 0); c[(c[h >> 2] | 0) + 6168 + 12 >> 2] = 0; c[g >> 2] = c[f >> 2]; i = c[g >> 2] | 0; l = j; return i | 0 } function Zf(b) { b = b | 0; var e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f; c[e >> 2] = b; if (c[(c[e >> 2] | 0) + 3180 >> 2] | 0) { l = f; return } if (!((c[(c[e >> 2] | 0) + 6100 >> 2] | 0) > -2 ? (c[(c[e >> 2] | 0) + 6100 >> 2] | 0) < 2 : 0)) { b = (c[e >> 2] | 0) + 6069 | 0; g = d[b >> 0] | 0; a[b >> 0] = a[(c[e >> 2] | 0) + 6112 >> 0] | 0 ? g & -17 : g | 16; b = c[e >> 2] | 0; if ((c[(c[e >> 2] | 0) + 6100 >> 2] | 0) > 0) { g = b + 6069 | 0; a[g >> 0] = d[g >> 0] ^ 16; g = (c[e >> 2] | 0) + 6100 | 0; c[g >> 2] = (c[g >> 2] | 0) - 2 } else { g = b + 6100 | 0; c[g >> 2] = (c[g >> 2] | 0) + 2 } Bv((c[e >> 2] | 0) + 36 | 0, a[(c[e >> 2] | 0) + 6069 >> 0] | 0); kx((c[e >> 2] | 0) + 128 | 0, a[(c[e >> 2] | 0) + 6112 >> 0] | 0); a[(c[e >> 2] | 0) + 6112 >> 0] = ((a[(c[e >> 2] | 0) + 6112 >> 0] | 0) != 0 ^ 1) & 1 } if ((c[(c[e >> 2] | 0) + 6104 >> 2] | 0) > -2 ? (c[(c[e >> 2] | 0) + 6104 >> 2] | 0) < 2 : 0) { l = f; return } b = (c[e >> 2] | 0) + 6069 | 0; g = d[b >> 0] | 0; a[b >> 0] = a[(c[e >> 2] | 0) + 6113 >> 0] | 0 ? g & -33 : g | 32; b = c[e >> 2] | 0; if ((c[(c[e >> 2] | 0) + 6104 >> 2] | 0) > 0) { g = b + 6104 | 0; c[g >> 2] = (c[g >> 2] | 0) - 2 } else { g = b + 6069 | 0; a[g >> 0] = d[g >> 0] ^ 32; g = (c[e >> 2] | 0) + 6104 | 0; c[g >> 2] = (c[g >> 2] | 0) + 2 } Bv((c[e >> 2] | 0) + 36 | 0, a[(c[e >> 2] | 0) + 6069 >> 0] | 0); lx((c[e >> 2] | 0) + 128 | 0, a[(c[e >> 2] | 0) + 6113 >> 0] | 0); a[(c[e >> 2] | 0) + 6113 >> 0] = ((a[(c[e >> 2] | 0) + 6113 >> 0] | 0) != 0 ^ 1) & 1; l = f; return } function _f(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; g = h; d = h + 16 | 0; i = h + 12 | 0; e = h + 8 | 0; f = h + 4 | 0; c[d >> 2] = a; c[i >> 2] = b; a = (c[d >> 2] | 0) + 6144 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[i >> 2] | 0); if ((c[(c[d >> 2] | 0) + 6144 >> 2] | 0) >>> 0 < 31334) { l = h; return } i = (c[d >> 2] | 0) + 6144 | 0; c[i >> 2] = (c[i >> 2] | 0) - 31334; c[e >> 2] = jL((c[d >> 2] | 0) + 6148 | 0) | 0; c[f >> 2] = 4e3; if ((c[e >> 2] | 0) >>> 0 < (c[f >> 2] | 0) >>> 0) { i = (c[d >> 2] | 0) + 6152 | 0; c[i >> 2] = (c[i >> 2] | 0) + ((c[f >> 2] | 0) - (c[e >> 2] | 0)); if ((c[(c[d >> 2] | 0) + 6152 >> 2] | 0) > 0) { i = (c[d >> 2] | 0) + 6140 | 0; c[i >> 2] = (c[i >> 2] | 0) + 1 } } else { i = (c[d >> 2] | 0) + 6152 | 0; c[i >> 2] = (c[i >> 2] | 0) - ((c[e >> 2] | 0) - (c[f >> 2] | 0)); if ((c[(c[d >> 2] | 0) + 6152 >> 2] | 0) < 0 ? (c[(c[d >> 2] | 0) + 6140 >> 2] | 0) >>> 0 > 0 : 0) { i = (c[d >> 2] | 0) + 6140 | 0; c[i >> 2] = (c[i >> 2] | 0) - 1 } } if ((c[(c[d >> 2] | 0) + 6152 >> 2] | 0) >= -1e6) { l = h; return } cg(33547, g); i = (c[d >> 2] | 0) + 6152 | 0; c[i >> 2] = (c[i >> 2] | 0) + 1e6; l = h; return } function $f(a) { a = a | 0; var b = 0; b = l; l = l + 16 | 0; c[b >> 2] = a; c[13610] = 1; l = b; return } function ag(a) { a = a | 0; var b = 0; b = l; l = l + 16 | 0; c[b + 4 >> 2] = a; kL(0, 1); kQ(c[7422] | 0, 33583, b) | 0; XP(c[7422] | 0) | 0; if (!(c[13609] | 0)) jb(1); if (!(c[(c[13609] | 0) + 4 >> 2] | 0)) jb(1); dd(c[13609] | 0, 33616); jb(1) } function bg(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; d = d + 4 | 0; c[d >> 2] = a; kL(0, 1); a = c[7422] | 0; c[b >> 2] = c[d >> 2]; kQ(a, 33620, b) | 0; XP(c[7422] | 0) | 0; jb(1) } function cg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 32 | 0; g = h; d = h + 24 | 0; f = h + 8 | 0; e = h + 4 | 0; c[d >> 2] = a; if (c[13609] | 0) c[e >> 2] = en(c[(c[13609] | 0) + 4 >> 2] | 0, 0) | 0; else c[e >> 2] = 0; c[g >> 2] = c[e >> 2] & 16777215; DK(3, 33644, g); c[f >> 2] = b; EK(3, c[d >> 2] | 0, f); l = h; return } function dg(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 64 | 0; q = r + 16 | 0; p = r + 8 | 0; o = r; m = r + 60 | 0; d = r + 56 | 0; h = r + 52 | 0; f = r + 48 | 0; k = r + 44 | 0; g = r + 40 | 0; e = r + 36 | 0; j = r + 32 | 0; i = r + 28 | 0; n = r + 24 | 0; c[m >> 2] = 0; c[d >> 2] = a; c[h >> 2] = b; c[i >> 2] = 0; c[g >> 2] = 0; c[e >> 2] = 0; zK(); AK(c[7422] | 0, 0, 2) | 0; c[13611] = UL(0) | 0; if (!(c[13611] | 0)) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } lM(54528); a: while (1) { c[f >> 2] = XJ(c[d >> 2] | 0, c[h >> 2] | 0, k, 6456) | 0; if ((c[f >> 2] | 0) == -1) { a = 29; break } if ((c[f >> 2] | 0) < 0) { a = 6; break } do switch (c[f >> 2] | 0) { case 63: { a = 8; break a } case 86: { a = 9; break a } case 0: { a = 27; break a } case 98: { c[13608] = c[13608] | 1;c[13612] = qQ(c[c[k >> 2] >> 2] | 0, 0, 0) | 0; continue a } case 66: { c[j >> 2] = qQ(c[c[k >> 2] >> 2] | 0, 0, 0) | 0; if ((c[j >> 2] | 0) >>> 0 < 1 | (c[j >> 2] | 0) >>> 0 >= 4) { a = 12; break a } c[j >> 2] = (c[j >> 2] | 0) - 1;c[13608] = c[13608] | 1 << c[j >> 2];b = qQ(c[(c[k >> 2] | 0) + 4 >> 2] | 0, 0, 0) | 0;c[54448 + (c[j >> 2] << 2) >> 2] = b; continue a } case 99: { c[i >> 2] = c[c[k >> 2] >> 2]; continue a } case 100: { ZK(c[c[k >> 2] >> 2] | 0) | 0; continue a } case 105: if (nL(c[13611] | 0, c[c[k >> 2] >> 2] | 0) | 0) { a = 17; break a } else continue a; case 73: { nM(54528, c[c[k >> 2] >> 2] | 0, 50466, 0) | 0; continue a } case 108: { BK(c[c[k >> 2] >> 2] | 0, 3) | 0; continue a } case 112: { nM(54528, 33715, c[c[k >> 2] >> 2] | 0, 33729) | 0; continue a } case 113: { CK(c[7422] | 0, 0); continue a } case 114: { c[g >> 2] = 1; continue a } case 82: { c[e >> 2] = 1; continue a } case 115: { nM(54528, 33732, c[c[k >> 2] >> 2] | 0, 50466) | 0; continue a } case 116: { c[13607] = c[c[k >> 2] >> 2]; continue a } case 118: { CK(c[7422] | 0, 3); continue a } default: { a = 28; break a } } while (0) } if ((a | 0) == 6) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } else if ((a | 0) == 8) { eg(); c[m >> 2] = 0; q = c[m >> 2] | 0; l = r; return q | 0 } else if ((a | 0) == 9) { fg(); c[m >> 2] = 0; q = c[m >> 2] | 0; l = r; return q | 0 } else if ((a | 0) == 12) { q = c[7422] | 0; p = c[j >> 2] | 0; c[o >> 2] = c[c[h >> 2] >> 2]; c[o + 4 >> 2] = p; kQ(q, 33653, o) | 0; c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } else if ((a | 0) == 17) { q = c[7422] | 0; o = c[c[k >> 2] >> 2] | 0; c[p >> 2] = c[c[h >> 2] >> 2]; c[p + 4 >> 2] = o; kQ(q, 33680, p) | 0; c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } else if ((a | 0) == 27) { p = c[7422] | 0; o = c[c[k >> 2] >> 2] | 0; c[q >> 2] = c[c[h >> 2] >> 2]; c[q + 4 >> 2] = o; kQ(p, 48635, q) | 0; c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } else if ((a | 0) == 28) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } else if ((a | 0) == 29) { gg(); if (hg(c[13611] | 0, c[i >> 2] | 0) | 0) { c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } c[n >> 2] = WL(c[13611] | 0, 0, 33745) | 0; if (!(c[n >> 2] | 0)) c[n >> 2] = c[13611]; if (!(oM(54528, c[n >> 2] | 0, 1) | 0)) { _a(2) | 0; Ka(0) | 0; cL(c[n >> 2] | 0) | 0; Ga(2, 217) | 0; Ga(11, 218) | 0; Ga(15, 219) | 0; QJ(c[7515] | 0, c[7547] | 0); c[13609] = Wf(c[n >> 2] | 0) | 0; GK(54464); IK(54464, 14, c[13609] | 0); JK(54464, 31, c[13609] | 0); KK(54464, c[(c[13609] | 0) + 8 >> 2] | 0, 4); LK(54464, c[(c[13609] | 0) + 8 >> 2] | 0, 5); MK(54464, 0); MJ(c[13609] | 0, 32, 33); Gd(c[13609] | 0, 54464); Vf(c[13609] | 0); ld(c[13609] | 0); jb(1) } c[m >> 2] = 1; q = c[m >> 2] | 0; l = r; return q | 0 } return 0 } function eg() { RJ(33991, 34028, 6456); XP(c[7547] | 0) | 0; return } function fg() { PP(33897, c[7547] | 0) | 0; XP(c[7547] | 0) | 0; return } function gg() { var a = 0; a = l; l = l + 16 | 0; DK(2, 33804, a); l = a; return } function hg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 32 | 0; f = g; e = g + 20 | 0; d = g + 12 | 0; c[g + 16 >> 2] = a; c[d >> 2] = b; if (!(c[d >> 2] | 0)) { c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[f >> 2] = c[d >> 2]; FK(2, 33753, 33761, f); if (vL(c[13611] | 0, c[d >> 2] | 0) | 0) { DK(0, 33772, g + 8 | 0); c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function ig() { kL(0, 1); return } function jg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; if (!(gn(c[(c[i >> 2] | 0) + 4 >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0) | 0)) { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function kg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; if (!(jn(c[(c[i >> 2] | 0) + 4 >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0) | 0)) { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function lg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = a; c[d >> 2] = b; if ((c[(c[e >> 2] | 0) + 6072 >> 2] | 0) == ((c[d >> 2] | 0) != 0 | 0)) { l = f; return } b = c[(c[e >> 2] | 0) + 8 >> 2] | 0; a = c[e >> 2] | 0; if (c[d >> 2] | 0) { Wx(b, c[a + 12 >> 2] | 0); Vx(c[(c[e >> 2] | 0) + 8 >> 2] | 0, c[(c[e >> 2] | 0) + 24 >> 2] | 0, 0); Vx(c[(c[e >> 2] | 0) + 8 >> 2] | 0, c[(c[e >> 2] | 0) + 20 >> 2] | 0, 0); Sm(c[(c[e >> 2] | 0) + 4 >> 2] | 0, 0, 0); a = 1; b = c[e >> 2] | 0 } else { Wx(b, c[a + 24 >> 2] | 0); Wx(c[(c[e >> 2] | 0) + 8 >> 2] | 0, c[(c[e >> 2] | 0) + 20 >> 2] | 0); Vx(c[(c[e >> 2] | 0) + 8 >> 2] | 0, c[(c[e >> 2] | 0) + 12 >> 2] | 0, 0); b = c[(c[e >> 2] | 0) + 4 >> 2] | 0; a = Hx(c[(c[e >> 2] | 0) + 12 >> 2] | 0) | 0; Sm(b, a, Lx(c[(c[e >> 2] | 0) + 12 >> 2] | 0) | 0); a = 0; b = c[e >> 2] | 0 } c[b + 6072 >> 2] = a; l = f; return } function mg(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; i = h + 8 | 0; e = h + 4 | 0; g = h; c[i >> 2] = b; c[e >> 2] = d; c[g >> 2] = c[i >> 2]; do if (!(ng(c[g >> 2] | 0, e) | 0)) { if ((c[e >> 2] | 0) >>> 0 >= 5767168 & (c[e >> 2] | 0) >>> 0 < 6291456) { a[f >> 0] = 0; break } if ((c[e >> 2] | 0) >>> 0 >= 12582912 & (c[e >> 2] | 0) >>> 0 < 14680064) { a[f >> 0] = ne((c[g >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 12582912 | 0) | 0; break } if ((c[e >> 2] & 15728640 | 0) == 13631488) { a[f >> 0] = -86; break } else { a[f >> 0] = 0; break } } else a[f >> 0] = Zx(c[(c[g >> 2] | 0) + 8 >> 2] | 0, c[e >> 2] | 0) | 0; while (0); l = h; return a[f >> 0] | 0 } function ng(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 12 | 0; f = h + 8 | 0; d = h + 4 | 0; g = h; c[f >> 2] = a; c[d >> 2] = b; do if ((c[c[d >> 2] >> 2] | 0) >>> 0 < 4194304) { if (!(c[(c[f >> 2] | 0) + 12 >> 2] | 0)) { c[e >> 2] = 0; break } c[g >> 2] = Lx(c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[e >> 2] = 0; break } c[g >> 2] = ((c[c[d >> 2] >> 2] | 0) >>> 0) % ((c[g >> 2] | 0) >>> 0) | 0; if ((c[c[d >> 2] >> 2] | 0) == (c[g >> 2] | 0)) { c[e >> 2] = 0; break } else { c[c[d >> 2] >> 2] = c[g >> 2]; c[e >> 2] = 1; break } } else { if ((c[c[d >> 2] >> 2] | 0) >>> 0 >= 4194304 ? (c[c[d >> 2] >> 2] | 0) >>> 0 < 5767168 : 0) { if (!(c[(c[f >> 2] | 0) + 16 >> 2] | 0)) { c[e >> 2] = 0; break } c[g >> 2] = Lx(c[(c[f >> 2] | 0) + 16 >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { c[e >> 2] = 0; break } c[g >> 2] = 4194304 + (((c[c[d >> 2] >> 2] | 0) >>> 0) % ((c[g >> 2] | 0) >>> 0) | 0); if ((c[c[d >> 2] >> 2] | 0) == (c[g >> 2] | 0)) { c[e >> 2] = 0; break } else { c[c[d >> 2] >> 2] = c[g >> 2]; c[e >> 2] = 1; break } } c[e >> 2] = 0 } while (0); l = h; return c[e >> 2] | 0 } function og(a, d) { a = a | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; i = h + 8 | 0; e = h + 4 | 0; g = h; c[i >> 2] = a; c[e >> 2] = d; c[g >> 2] = c[i >> 2]; if (ng(c[g >> 2] | 0, e) | 0) { b[f >> 1] = _x(c[(c[g >> 2] | 0) + 8 >> 2] | 0, c[e >> 2] | 0) | 0; i = b[f >> 1] | 0; l = h; return i | 0 } else { b[f >> 1] = 0; i = b[f >> 1] | 0; l = h; return i | 0 } return 0 } function pg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; h = g + 8 | 0; d = g + 4 | 0; f = g; c[h >> 2] = a; c[d >> 2] = b; c[f >> 2] = c[h >> 2]; if (ng(c[f >> 2] | 0, d) | 0) { c[e >> 2] = $x(c[(c[f >> 2] | 0) + 8 >> 2] | 0, c[d >> 2] | 0) | 0; h = c[e >> 2] | 0; l = g; return h | 0 } else { c[e >> 2] = 0; h = c[e >> 2] | 0; l = g; return h | 0 } return 0 } function qg(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; j = i + 8 | 0; f = i + 4 | 0; h = i + 12 | 0; g = i; c[j >> 2] = b; c[f >> 2] = d; a[h >> 0] = e; c[g >> 2] = c[j >> 2]; if (ng(c[g >> 2] | 0, f) | 0) by(c[(c[g >> 2] | 0) + 8 >> 2] | 0, c[f >> 2] | 0, a[h >> 0] | 0); if (!(((c[f >> 2] | 0) >>> 0 >= 5767168 & (c[f >> 2] | 0) >>> 0 < 6291456 ^ 1) & (c[f >> 2] | 0) >>> 0 >= 12582912 & (c[f >> 2] | 0) >>> 0 < 14680064)) { l = i; return } Me((c[g >> 2] | 0) + 3192 | 0, (c[f >> 2] | 0) - 12582912 | 0, a[h >> 0] | 0); l = i; return } function rg(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; j = i + 8 | 0; f = i + 4 | 0; h = i + 12 | 0; g = i; c[j >> 2] = a; c[f >> 2] = d; b[h >> 1] = e; c[g >> 2] = c[j >> 2]; if (!(ng(c[g >> 2] | 0, f) | 0)) { l = i; return } cy(c[(c[g >> 2] | 0) + 8 >> 2] | 0, c[f >> 2] | 0, b[h >> 1] | 0); l = i; return } function sg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; i = h + 12 | 0; e = h + 8 | 0; g = h + 4 | 0; f = h; c[i >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; c[f >> 2] = c[i >> 2]; if (!(ng(c[f >> 2] | 0, e) | 0)) { l = h; return } dy(c[(c[f >> 2] | 0) + 8 >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0); l = h; return } function tg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; h = m + 20 | 0; i = m + 16 | 0; f = m + 12 | 0; j = m + 8 | 0; g = m + 4 | 0; e = m; c[i >> 2] = a; c[f >> 2] = b; c[j >> 2] = d; if (!(c[i >> 2] | 0)) c[i >> 2] = c[13609]; if (!(c[f >> 2] | 0)) { c[h >> 2] = 1; k = c[h >> 2] | 0; l = m; return k | 0 } if (!(c[j >> 2] | 0)) c[j >> 2] = 59585; c[e >> 2] = 6728; while (1) { if (!(c[c[e >> 2] >> 2] | 0)) break; d = (PK(c[c[e >> 2] >> 2] | 0, c[f >> 2] | 0) | 0) != 0; b = c[e >> 2] | 0; if (d) { k = 10; break } c[e >> 2] = b + 8 } if ((k | 0) == 10) { c[h >> 2] = Nb[c[b + 4 >> 2] & 63](c[i >> 2] | 0, c[f >> 2] | 0, c[j >> 2] | 0) | 0; k = c[h >> 2] | 0; l = m; return k | 0 } if (c[(c[i >> 2] | 0) + 4924 >> 2] | 0 ? (c[g >> 2] = eO(c[(c[i >> 2] | 0) + 4924 >> 2] | 0, c[f >> 2] | 0, c[j >> 2] | 0) | 0, (c[g >> 2] | 0) >= 0) : 0) { c[h >> 2] = c[g >> 2]; k = c[h >> 2] | 0; l = m; return k | 0 } c[h >> 2] = 1; k = c[h >> 2] | 0; l = m; return k | 0 } function ug(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; g = h; e = h + 16 | 0; i = h + 12 | 0; f = h + 4 | 0; c[i >> 2] = a; c[h + 8 >> 2] = b; c[f >> 2] = d; if (Tf(c[i >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = c[f >> 2]; DK(0, 35369, g); c[e >> 2] = 1; i = c[e >> 2] | 0; l = h; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = h; return i | 0 } return 0 } function vg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; f = h + 16 | 0; g = h + 12 | 0; i = h + 4 | 0; e = h; c[g >> 2] = a; c[h + 8 >> 2] = b; c[i >> 2] = d; if (SK(c[i >> 2] | 0, e) | 0) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = h; return i | 0 } else { Jf(c[g >> 2] | 0, 0, c[e >> 2] | 0); c[f >> 2] = 0; i = c[f >> 2] | 0; l = h; return i | 0 } return 0 } function wg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; e = h + 16 | 0; f = h + 12 | 0; i = h + 4 | 0; g = h; c[f >> 2] = a; c[h + 8 >> 2] = b; c[i >> 2] = d; if (TK(c[i >> 2] | 0, g) | 0) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = h; return i | 0 } else { i = (c[g >> 2] | 0) + (c[(c[f >> 2] | 0) + 6128 >> 2] | 0) | 0; c[g >> 2] = i; c[g >> 2] = (c[g >> 2] | 0) <= 0 ? 1 : i; Jf(c[f >> 2] | 0, 0, c[g >> 2] | 0); c[e >> 2] = 0; i = c[e >> 2] | 0; l = h; return i | 0 } return 0 } function xg(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 64 | 0; j = p + 32 | 0; i = p + 24 | 0; o = p + 16 | 0; h = p + 8 | 0; m = p + 56 | 0; g = p + 52 | 0; n = p + 44 | 0; k = p + 40 | 0; f = p + 36 | 0; c[g >> 2] = b; c[p + 48 >> 2] = d; c[n >> 2] = e; if (!(fP(c[n >> 2] | 0, 35217) | 0)) { DK(2, 35221, p); if (gz(c[(c[g >> 2] | 0) + 4928 >> 2] | 0) | 0) { DK(0, 35243, h); c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } else { c[m >> 2] = 0; o = c[m >> 2] | 0; l = p; return o | 0 } } c[k >> 2] = 0; while (1) { if (!(a[c[n >> 2] >> 0] | 0)) { f = 11; break } if (WK(n, f, 50526, 50407) | 0) { f = 8; break } c[i >> 2] = c[f >> 2]; DK(2, 35318, i); if (!(hz(c[(c[g >> 2] | 0) + 4928 >> 2] | 0, c[f >> 2] | 0, 50610, 0) | 0)) continue; c[j >> 2] = c[f >> 2]; DK(0, 35338, j); c[k >> 2] = 1 } if ((f | 0) == 8) { c[o >> 2] = c[n >> 2]; DK(0, 35284, o); c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } else if ((f | 0) == 11) { c[m >> 2] = c[k >> 2]; o = c[m >> 2] | 0; l = p; return o | 0 } return 0 } function yg(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, m = 0, n = 0, o = 0; o = l; l = l + 48 | 0; j = o + 16 | 0; i = o + 8 | 0; n = o; k = o + 40 | 0; h = o + 36 | 0; m = o + 28 | 0; f = o + 24 | 0; g = o + 20 | 0; c[h >> 2] = b; c[o + 32 >> 2] = d; c[m >> 2] = e; while (1) { if (!(a[c[m >> 2] >> 0] | 0)) { d = 8; break } if (WK(m, f, 50526, 50407) | 0) { d = 4; break } c[g >> 2] = fz(c[(c[h >> 2] | 0) + 4928 >> 2] | 0, c[f >> 2] | 0) | 0; d = c[f >> 2] | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = d; DK(0, 35155, i); continue } else { c[j >> 2] = d; DK(2, 35197, j); ez(c[(c[h >> 2] | 0) + 4928 >> 2] | 0, c[g >> 2] | 0) | 0; Jy(c[g >> 2] | 0); continue } } if ((d | 0) == 4) { c[n >> 2] = c[m >> 2]; DK(0, 35117, n); c[k >> 2] = 1; n = c[k >> 2] | 0; l = o; return n | 0 } else if ((d | 0) == 8) { c[k >> 2] = 0; n = c[k >> 2] | 0; l = o; return n | 0 } return 0 } function zg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; h = f + 8 | 0; g = f; c[h >> 2] = a; c[f + 4 >> 2] = b; c[g >> 2] = d; if (_J(c[(c[h >> 2] | 0) + 4928 >> 2] | 0, c[g >> 2] | 0, 1) | 0) { c[e >> 2] = 1; h = c[e >> 2] | 0; l = f; return h | 0 } else { c[e >> 2] = 0; h = c[e >> 2] | 0; l = f; return h | 0 } return 0 } function Ag(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j; g = j + 24 | 0; h = j + 20 | 0; k = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; c[h >> 2] = a; c[j + 16 >> 2] = b; c[k >> 2] = d; if (SK(c[k >> 2] | 0, e) | 0) { c[g >> 2] = 1; k = c[g >> 2] | 0; l = j; return k | 0 } c[f >> 2] = fz(c[(c[h >> 2] | 0) + 4928 >> 2] | 0, c[e >> 2] | 0) | 0; if (c[f >> 2] | 0) { c[i >> 2] = c[e >> 2]; DK(2, 35089, i); Oy(c[f >> 2] | 0, 1) } c[g >> 2] = 0; k = c[g >> 2] | 0; l = j; return k | 0 } function Bg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j; g = j + 24 | 0; h = j + 20 | 0; k = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; c[h >> 2] = a; c[j + 16 >> 2] = b; c[k >> 2] = d; if (SK(c[k >> 2] | 0, e) | 0) { c[g >> 2] = 1; k = c[g >> 2] | 0; l = j; return k | 0 } c[f >> 2] = fz(c[(c[h >> 2] | 0) + 4928 >> 2] | 0, c[e >> 2] | 0) | 0; if (c[f >> 2] | 0) { c[i >> 2] = c[e >> 2]; DK(2, 35059, i); Oy(c[f >> 2] | 0, 0) } c[g >> 2] = 0; k = c[g >> 2] | 0; l = j; return k | 0 } function Cg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; h = i + 8 | 0; f = i + 28 | 0; g = i + 24 | 0; j = i + 16 | 0; e = i + 12 | 0; c[g >> 2] = a; c[i + 20 >> 2] = b; c[j >> 2] = d; if (SK(c[j >> 2] | 0, e) | 0) { c[f >> 2] = 1; j = c[f >> 2] | 0; l = i; return j | 0 } if (!(c[e >> 2] | 0)) { DK(2, 34986, i); fe((c[g >> 2] | 0) + 3192 | 0, 0, 1); fe((c[g >> 2] | 0) + 3192 | 0, 1, 1); fe((c[g >> 2] | 0) + 3192 | 0, 2, 1) } else { c[h >> 2] = c[e >> 2]; DK(2, 35023, h); fe((c[g >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0, 1) } c[f >> 2] = 0; j = c[f >> 2] | 0; l = i; return j | 0 } function Dg(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 = l; l = l + 32 | 0; h = i + 8 | 0; f = i + 28 | 0; g = i + 24 | 0; j = i + 16 | 0; e = i + 12 | 0; c[g >> 2] = a; c[i + 20 >> 2] = b; c[j >> 2] = d; if (SK(c[j >> 2] | 0, e) | 0) { c[f >> 2] = 1; j = c[f >> 2] | 0; l = i; return j | 0 } if (!(c[e >> 2] | 0)) { DK(2, 34911, i); fe((c[g >> 2] | 0) + 3192 | 0, 0, 0); fe((c[g >> 2] | 0) + 3192 | 0, 1, 0); fe((c[g >> 2] | 0) + 3192 | 0, 2, 0) } else { c[h >> 2] = c[e >> 2]; DK(2, 34949, h); fe((c[g >> 2] | 0) + 3192 | 0, (c[e >> 2] | 0) - 1 | 0, 0) } c[f >> 2] = 0; j = c[f >> 2] | 0; l = i; return j | 0 } function Eg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 32 | 0; g = h; f = h + 20 | 0; e = h + 8 | 0; c[f >> 2] = a; c[h + 16 >> 2] = b; c[h + 12 >> 2] = d; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= 3) break; a = (c[e >> 2] | 0) + 1 | 0; d = ee((c[f >> 2] | 0) + 3192 | 0, c[e >> 2] | 0) | 0; c[g >> 2] = a; c[g + 4 >> 2] = d; OJ(34886, g); c[e >> 2] = (c[e >> 2] | 0) + 1 } l = h; return 0 } function Fg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; c[f >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; c[(c[f >> 2] | 0) + 6124 >> 2] = 2; NK(54464, 1); l = e; return 0 } function Gg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; e = h + 16 | 0; f = h + 12 | 0; i = h + 4 | 0; g = h; c[f >> 2] = a; c[h + 8 >> 2] = b; c[i >> 2] = d; if (UK(c[i >> 2] | 0, g) | 0) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = h; return i | 0 } else { Gf(c[f >> 2] | 0, c[g >> 2] | 0); c[e >> 2] = 0; i = c[e >> 2] | 0; l = h; return i | 0 } return 0 } function Hg(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; f = l; l = l + 16 | 0; g = f + 8 | 0; c[g >> 2] = b; c[f + 4 >> 2] = d; c[f >> 2] = e; Gf(c[g >> 2] | 0, ((a[(c[g >> 2] | 0) + 6120 >> 0] | 0) != 0 ^ 1) & 1); l = f; return 0 } function Ig(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; e = h + 16 | 0; f = h + 12 | 0; i = h + 4 | 0; g = h; c[f >> 2] = a; c[h + 8 >> 2] = b; c[i >> 2] = d; if (UK(c[i >> 2] | 0, g) | 0) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = h; return i | 0 } else { Jf(c[f >> 2] | 0, 0, c[g >> 2] | 0 ? 1 : 0); c[e >> 2] = 0; i = c[e >> 2] | 0; l = h; return i | 0 } return 0 } function Jg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; c[f >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; b = c[f >> 2] | 0; if ((c[(c[f >> 2] | 0) + 6132 >> 2] | 0) >>> 0 > 0) { Jf(b, 0, 0); l = e; return 0 } else { Jf(b, 0, 1); l = e; return 0 } return 0 } function Kg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; c[f >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; Vf(c[f >> 2] | 0); l = e; return 0 } function Lg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; f = i + 16 | 0; g = i + 12 | 0; h = i + 4 | 0; e = i; c[g >> 2] = a; c[i + 8 >> 2] = b; c[h >> 2] = d; do if (!(WK(h, e, 50526, 50407) | 0)) { if ((c[e >> 2] | 0) >>> 0 > 1) { c[f >> 2] = 1; break } if (oi((c[g >> 2] | 0) + 4932 + ((c[e >> 2] | 0) * 568 | 0) | 0, c[h >> 2] | 0) | 0) { c[f >> 2] = 1; break } else { c[f >> 2] = 0; break } } else c[f >> 2] = 1; while (0); l = i; return c[f >> 2] | 0 } function Mg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; f = i + 16 | 0; g = i + 12 | 0; h = i + 4 | 0; e = i; c[g >> 2] = a; c[i + 8 >> 2] = b; c[h >> 2] = d; do if (!(WK(h, e, 50526, 50407) | 0)) { if ((c[e >> 2] | 0) >>> 0 > 1) { c[f >> 2] = 1; break } if (pi((c[g >> 2] | 0) + 4932 + ((c[e >> 2] | 0) * 568 | 0) | 0, c[h >> 2] | 0) | 0) { c[f >> 2] = 1; break } else { c[f >> 2] = 0; break } } else c[f >> 2] = 1; while (0); l = i; return c[f >> 2] | 0 } function Ng(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; c[f >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; Xf(c[f >> 2] | 0, 51620, 51563) | 0; c[(c[f >> 2] | 0) + 6124 >> 2] = 1; l = e; return 0 } function Og(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; f = h + 16 | 0; g = h + 12 | 0; i = h + 4 | 0; e = h; c[g >> 2] = a; c[h + 8 >> 2] = b; c[i >> 2] = d; if (SK(c[i >> 2] | 0, e) | 0) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = h; return i | 0 } if ((c[e >> 2] | 0) >>> 0 >= 1e3) c[e >> 2] = 255; else c[e >> 2] = (c[e >> 2] << 8 >>> 0) / 1e3 | 0; Gj(c[(c[g >> 2] | 0) + 4920 >> 2] | 0, c[e >> 2] | 0); c[f >> 2] = 0; i = c[f >> 2] | 0; l = h; return i | 0 } function Pg(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; i = j + 12 | 0; f = j + 4 | 0; g = j; c[i >> 2] = b; c[j + 8 >> 2] = d; c[f >> 2] = e; do if (!(fP(c[f >> 2] | 0, 59585) | 0)) { if (a[(c[i >> 2] | 0) + 3868 + 2 >> 0] | 0) { Ji((c[i >> 2] | 0) + 3868 | 0, 1); Ji((c[i >> 2] | 0) + 3868 | 0, 2); Ji((c[i >> 2] | 0) + 3868 | 0, 3) } } else { if (SK(c[f >> 2] | 0, g) | 0) { c[h >> 2] = 1; i = c[h >> 2] | 0; l = j; return i | 0 } d = c[i >> 2] | 0; if (a[(c[i >> 2] | 0) + 3868 + 2 >> 0] | 0) { Ji(d + 3868 | 0, c[g >> 2] | 0); break } else { me(d + 3192 | 0, (c[g >> 2] | 0) >>> 0 > 0 ? (c[g >> 2] | 0) - 1 | 0 : 0); break } } while (0); c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } function Qg(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 48 | 0; e = g + 36 | 0; b = g + 32 | 0; f = g + 8 | 0; d = g; c[e >> 2] = a; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= 6) break; Rg(e, f + (c[b >> 2] << 2) | 0); c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((c[f + 4 >> 2] | 0) >>> 0 > 0) { e = f + 4 | 0; c[e >> 2] = (c[e >> 2] | 0) - 1 } if ((c[f + 8 >> 2] | 0) >>> 0 > 0) { e = f + 8 | 0; c[e >> 2] = (c[e >> 2] | 0) - 1 } c[d >> 2] = Sg(c[f >> 2] | 0, c[f + 4 >> 2] | 0, c[f + 8 >> 2] | 0) | 0; f = Tg(c[f + 12 >> 2] | 0, c[f + 16 >> 2] | 0, c[f + 20 >> 2] | 0) | 0; c[d >> 2] = (c[d >> 2] | 0) + f; l = g; return c[d >> 2] | 0 } function Rg(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j + 12 | 0; h = j + 8 | 0; e = j + 4 | 0; g = j; c[f >> 2] = b; c[h >> 2] = d; c[e >> 2] = c[c[f >> 2] >> 2]; c[g >> 2] = 0; while (1) { if ((a[c[e >> 2] >> 0] | 0) >= 48 ? (a[c[e >> 2] >> 0] | 0) <= 57 : 0) break; b = c[e >> 2] | 0; if (!(a[c[e >> 2] >> 0] | 0)) { i = 5; break } c[e >> 2] = b + 1 } if ((i | 0) == 5) { c[c[f >> 2] >> 2] = b; c[c[h >> 2] >> 2] = 0; l = j; return } while (1) { if ((a[c[e >> 2] >> 0] | 0) < 48) break; if ((a[c[e >> 2] >> 0] | 0) > 57) break; c[g >> 2] = ((c[g >> 2] | 0) * 10 | 0) + ((a[c[e >> 2] >> 0] | 0) - 48); c[e >> 2] = (c[e >> 2] | 0) + 1 } c[c[f >> 2] >> 2] = c[e >> 2]; c[c[h >> 2] >> 2] = c[g >> 2]; l = j; return } function Sg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; i = m + 24 | 0; k = m + 20 | 0; g = m + 16 | 0; e = m + 12 | 0; j = m + 8 | 0; f = m + 4 | 0; h = m; c[k >> 2] = a; c[g >> 2] = b; c[e >> 2] = d; if ((c[k >> 2] | 0) >>> 0 < 1904 | (c[g >> 2] | 0) >>> 0 > 11) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } c[k >> 2] = (c[k >> 2] | 0) - 1904; c[j >> 2] = (((c[k >> 2] | 0) >>> 0) / 4 | 0) * 1461; c[k >> 2] = ((c[k >> 2] | 0) >>> 0) % 4 | 0; c[j >> 2] = (c[j >> 2] | 0) + (((c[k >> 2] | 0) * 365 | 0) + ((c[k >> 2] | 0) >>> 0 > 0 & 1)); c[h >> 2] = (c[k >> 2] | 0) == 0 ? 6960 : 6912; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) break; c[j >> 2] = (c[j >> 2] | 0) + (c[(c[h >> 2] | 0) + (c[f >> 2] << 2) >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((c[e >> 2] | 0) >>> 0 >= (c[(c[h >> 2] | 0) + (c[g >> 2] << 2) >> 2] | 0) >>> 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } else { c[j >> 2] = (c[j >> 2] | 0) + (c[e >> 2] | 0); c[j >> 2] = (c[j >> 2] | 0) * 86400; c[i >> 2] = c[j >> 2]; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function Tg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; h = i; c[e >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; if ((c[e >> 2] | 0) >>> 0 > 23 | (c[f >> 2] | 0) >>> 0 > 59 | (c[h >> 2] | 0) >>> 0 > 59) { c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[g >> 2] = ((((c[e >> 2] | 0) * 60 | 0) + (c[f >> 2] | 0) | 0) * 60 | 0) + (c[h >> 2] | 0); h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function Ug(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; c[(c[e >> 2] | 0) + 292 >> 2] = 0; c[(c[e >> 2] | 0) + 296 >> 2] = 0; a[(c[e >> 2] | 0) + 300 >> 0] = 0; c[(c[e >> 2] | 0) + 304 >> 2] = 0; c[(c[e >> 2] | 0) + 308 >> 2] = 0; a[(c[e >> 2] | 0) + 312 >> 0] = 0; c[(c[e >> 2] | 0) + 268 >> 2] = 0; c[(c[e >> 2] | 0) + 272 >> 2] = 0; c[(c[e >> 2] | 0) + 276 >> 2] = 0; a[(c[e >> 2] | 0) + 283 >> 0] = 0; c[(c[e >> 2] | 0) + 284 >> 2] = 0; c[(c[e >> 2] | 0) + 288 >> 2] = 0; a[(c[e >> 2] | 0) + 256 >> 0] = 0; a[(c[e >> 2] | 0) + 257 >> 0] = 0; c[(c[e >> 2] | 0) + 260 >> 2] = 0; c[(c[e >> 2] | 0) + 264 >> 2] = 0; Vg(c[e >> 2] | 0); l = d; return } function Vg(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = b; c[d >> 2] = 0; while (1) { b = c[e >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= 256) break; a[b + (c[d >> 2] | 0) >> 0] = 0; c[d >> 2] = (c[d >> 2] | 0) + 1 } a[b + 16 >> 0] = -88; a[(c[e >> 2] | 0) + 19 >> 0] = 34; a[(c[e >> 2] | 0) + 30 >> 0] = 100; a[(c[e >> 2] | 0) + 8 >> 0] = 24; a[(c[e >> 2] | 0) + 9 >> 0] = -120; a[(c[e >> 2] | 0) + 11 >> 0] = 32; l = f; return } function Wg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 292 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 296 >> 2] = c[g >> 2]; l = e; return } function Xg(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 304 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 308 >> 2] = c[g >> 2]; l = e; return } function Yg(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 284 >> 2] = (c[f >> 2] | 0) != 0 & 1; l = d; return } function Zg(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; g = h + 8 | 0; i = h + 4 | 0; e = h; c[g >> 2] = b; c[i >> 2] = d; c[e >> 2] = dQ(c[i >> 2] | 0, 50621) | 0; if (!(c[e >> 2] | 0)) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = h; return i | 0 } i = (AQ(c[g >> 2] | 0, 1, 256, c[e >> 2] | 0) | 0) != 256; UP(c[e >> 2] | 0) | 0; if (i) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = h; return i | 0 } else { a[(c[g >> 2] | 0) + 256 >> 0] = -128; a[(c[g >> 2] | 0) + 257 >> 0] = 0; c[f >> 2] = 0; i = c[f >> 2] | 0; l = h; return i | 0 } return 0 } function _g(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; h = f + 4 | 0; g = f; c[e >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; d = $g(c[e >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 260 >> 2] = d; d = c[h >> 2] | 0; a = c[e >> 2] | 0; if (c[g >> 2] | 0) { h = a; g = d; h = h + 264 | 0; c[h >> 2] = g; l = f; return } g = d - (c[a + 260 >> 2] | 0) | 0; g = g - (ah(c[e >> 2] | 0) | 0) | 0; h = c[e >> 2] | 0; h = h + 264 | 0; c[h >> 2] = g; l = f; return } function $g(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; b = d; c[d + 8 >> 2] = a; c[e >> 2] = xb(0) | 0; c[b >> 2] = c[e >> 2]; c[b >> 2] = (c[b >> 2] | 0) + 2082844800; l = d; return c[b >> 2] | 0 } function ah(a) { a = a | 0; var b = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; b = e; c[f >> 2] = a; c[b >> 2] = d[(c[f >> 2] | 0) + 237 >> 0]; c[b >> 2] = c[b >> 2] << 8 | (d[(c[f >> 2] | 0) + 238 >> 0] | 0); c[b >> 2] = c[b >> 2] << 8 | (d[(c[f >> 2] | 0) + 239 >> 0] | 0); if (!(c[b >> 2] & 8388608)) { f = c[b >> 2] | 0; l = e; return f | 0 } c[b >> 2] = c[b >> 2] | -16777216; f = c[b >> 2] | 0; l = e; return f | 0 } function bh(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; e = g + 4 | 0; f = g; c[d >> 2] = a; c[e >> 2] = b; if (!(c[e >> 2] | 0)) { _g(c[d >> 2] | 0, 0, 1); l = g; return } else { c[f >> 2] = Qg(c[e >> 2] | 0) | 0; _g(c[d >> 2] | 0, c[f >> 2] | 0, 0); l = g; return } } function ch(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i; g = i + 5 | 0; f = i + 4 | 0; c[h >> 2] = b; a[g >> 0] = e; a[f >> 0] = (d[(c[h >> 2] | 0) + 283 >> 0] | 0) ^ (d[g >> 0] | 0); a[(c[h >> 2] | 0) + 283 >> 0] = a[g >> 0] | 0; if ((d[g >> 0] | 0) & 4 | 0) { c[(c[h >> 2] | 0) + 272 >> 2] = 0; c[(c[h >> 2] | 0) + 268 >> 2] = 0; c[(c[h >> 2] | 0) + 276 >> 2] = 0; l = i; return } if (!((d[f >> 0] | 0) & ~(d[g >> 0] | 0) & 2)) { l = i; return } f = c[h >> 2] | 0; if (c[(c[h >> 2] | 0) + 268 >> 2] | 0) { dh(f, (d[(c[h >> 2] | 0) + 282 >> 0] | 0) & 128); a[(c[h >> 2] | 0) + 282 >> 0] = (d[(c[h >> 2] | 0) + 282 >> 0] | 0) << 1 | (d[(c[h >> 2] | 0) + 282 >> 0] | 0) >> 7 & 1; g = (c[h >> 2] | 0) + 276 | 0; c[g >> 2] = (c[g >> 2] | 0) + 1; if ((c[(c[h >> 2] | 0) + 276 >> 2] | 0) >>> 0 < 8) { l = i; return } c[(c[h >> 2] | 0) + 276 >> 2] = 0; c[(c[h >> 2] | 0) + 268 >> 2] = 0; c[(c[h >> 2] | 0) + 272 >> 2] = 0; l = i; return } a[(c[h >> 2] | 0) + 282 >> 0] = (d[f + 282 >> 0] | 0) << 1 | (d[g >> 0] | 0) & 1; g = (c[h >> 2] | 0) + 276 | 0; c[g >> 2] = (c[g >> 2] | 0) + 1; if ((c[(c[h >> 2] | 0) + 276 >> 2] | 0) >>> 0 < 8) { l = i; return } f = c[h >> 2] | 0; do if (c[(c[h >> 2] | 0) + 272 >> 2] | 0) { b = c[h >> 2] | 0; if ((c[f + 272 >> 2] | 0) == 1) { fh(b); c[(c[h >> 2] | 0) + 272 >> 2] = 0; break } f = c[h >> 2] | 0; if ((c[b + 272 >> 2] | 0) != 2) { if ((c[f + 272 >> 2] | 0) != 3) break; hh(c[h >> 2] | 0); c[(c[h >> 2] | 0) + 272 >> 2] = 0; break } a[(c[h >> 2] | 0) + 281 >> 0] = a[f + 282 >> 0] | 0; f = c[h >> 2] | 0; if ((d[(c[h >> 2] | 0) + 280 >> 0] | 0) & 128 | 0) { gh(f); c[(c[h >> 2] | 0) + 272 >> 2] = 0; c[(c[h >> 2] | 0) + 268 >> 2] = 1; break } else { c[f + 272 >> 2] = 3; break } } else { a[(c[h >> 2] | 0) + 280 >> 0] = a[f + 282 >> 0] | 0; f = c[h >> 2] | 0; if (((d[(c[h >> 2] | 0) + 280 >> 0] | 0) & 120 | 0) == 56) { c[f + 272 >> 2] = 2; break } b = c[h >> 2] | 0; if ((d[f + 280 >> 0] | 0) & 128 | 0) { eh(b); c[(c[h >> 2] | 0) + 272 >> 2] = 0; f = (c[h >> 2] | 0) + 268 | 0 } else f = b + 272 | 0; c[f >> 2] = 1 } while (0); c[(c[h >> 2] | 0) + 276 >> 2] = 0; l = i; return } function dh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g; h = g + 4 | 0; c[f >> 2] = b; a[h >> 0] = e; a[(c[f >> 2] | 0) + 300 >> 0] = (d[h >> 0] | 0 | 0) != 0; if (!(c[(c[f >> 2] | 0) + 296 >> 2] | 0)) { l = g; return } Qb[c[(c[f >> 2] | 0) + 296 >> 2] & 255](c[(c[f >> 2] | 0) + 292 >> 2] | 0, a[(c[f >> 2] | 0) + 300 >> 0] | 0); l = g; return } function eh(b) { b = b | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 4 | 0; c[f >> 2] = b; a[e >> 0] = (d[(c[f >> 2] | 0) + 280 >> 0] | 0) >> 2 & 31; b = c[f >> 2] | 0; if (((d[(c[f >> 2] | 0) + 280 >> 0] | 0) & 227 | 0) == 129) { e = (c[b + 260 >> 2] | 0) >>> (((d[e >> 0] | 0) & 3) << 3) & 255; f = c[f >> 2] | 0; f = f + 282 | 0; a[f >> 0] = e; l = g; return } e = c[f >> 2] | 0; if (((d[b + 280 >> 0] | 0) & 243 | 0) == 161) { e = a[e + (8 + ((d[(c[f >> 2] | 0) + 280 >> 0] | 0) >> 2 & 3)) >> 0] | 0; f = c[f >> 2] | 0; f = f + 282 | 0; a[f >> 0] = e; l = g; return } b = c[f >> 2] | 0; if (((d[e + 280 >> 0] | 0) & 195 | 0) != 193) { e = 0; f = b; f = f + 282 | 0; a[f >> 0] = e; l = g; return } e = a[b + (16 + ((d[(c[f >> 2] | 0) + 280 >> 0] | 0) >> 2 & 15)) >> 0] | 0; f = c[f >> 2] | 0; f = f + 282 | 0; a[f >> 0] = e; l = g; return } function fh(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[g >> 2] = b; b = c[g >> 2] | 0; if ((d[(c[g >> 2] | 0) + 280 >> 0] | 0 | 0) == 53) { a[(c[g >> 2] | 0) + 256 >> 0] = (d[b + 282 >> 0] | 0) & 128; l = h; return } if ((d[b + 256 >> 0] | 0) & 128 | 0) { l = h; return } b = d[(c[g >> 2] | 0) + 280 >> 0] | 0; if (((d[(c[g >> 2] | 0) + 280 >> 0] | 0) & 227 | 0) == 1) { c[e >> 2] = (b >> 2 & 3) << 3; c[f >> 2] = (d[(c[g >> 2] | 0) + 282 >> 0] | 0) & 255; b = (c[g >> 2] | 0) + 260 | 0; c[b >> 2] = c[b >> 2] & ~(255 << c[e >> 2]); g = (c[g >> 2] | 0) + 260 | 0; c[g >> 2] = c[g >> 2] | c[f >> 2] << c[e >> 2]; l = h; return } e = c[g >> 2] | 0; if ((b & 243 | 0) == 33) { a[(c[g >> 2] | 0) + (8 + ((d[(c[g >> 2] | 0) + 280 >> 0] | 0) >> 2 & 3)) >> 0] = a[e + 282 >> 0] | 0; l = h; return } b = c[g >> 2] | 0; if ((d[e + 280 >> 0] | 0 | 0) == 49) { a[(c[g >> 2] | 0) + 257 >> 0] = a[b + 282 >> 0] | 0; l = h; return } if (((d[b + 280 >> 0] | 0) & 195 | 0) != 65) { l = h; return } a[(c[g >> 2] | 0) + (16 + ((d[(c[g >> 2] | 0) + 280 >> 0] | 0) >> 2 & 15)) >> 0] = a[(c[g >> 2] | 0) + 282 >> 0] | 0; l = h; return } function gh(b) { b = b | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[f >> 2] = b; c[e >> 2] = ((d[(c[f >> 2] | 0) + 280 >> 0] | 0) & 7) << 5 | (d[(c[f >> 2] | 0) + 281 >> 0] | 0) >> 2 & 31; b = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= 256) { e = 0; f = b; f = f + 282 | 0; a[f >> 0] = e; l = g; return } e = a[b + (c[e >> 2] | 0) >> 0] | 0; f = c[f >> 2] | 0; f = f + 282 | 0; a[f >> 0] = e; l = g; return } function hh(b) { b = b | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[f >> 2] = b; if ((d[(c[f >> 2] | 0) + 256 >> 0] | 0) & 128 | 0) { l = g; return } c[e >> 2] = ((d[(c[f >> 2] | 0) + 280 >> 0] | 0) & 7) << 5 | (d[(c[f >> 2] | 0) + 281 >> 0] | 0) >> 2 & 31; if ((c[e >> 2] | 0) >>> 0 >= 256) { l = g; return } a[(c[f >> 2] | 0) + (c[e >> 2] | 0) >> 0] = a[(c[f >> 2] | 0) + 282 >> 0] | 0; l = g; return } function ih(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[f >> 2] = a; c[d >> 2] = b; c[e >> 2] = c[(c[f >> 2] | 0) + 260 >> 2]; if (c[(c[f >> 2] | 0) + 284 >> 2] | 0) { d = $g(c[f >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 260 >> 2] = d; d = ah(c[f >> 2] | 0) | 0; a = (c[f >> 2] | 0) + 260 | 0; c[a >> 2] = (c[a >> 2] | 0) + d; a = (c[f >> 2] | 0) + 260 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[(c[f >> 2] | 0) + 264 >> 2] | 0) } else { a = (c[f >> 2] | 0) + 288 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[d >> 2] | 0); if ((c[(c[f >> 2] | 0) + 288 >> 2] | 0) >>> 0 > 7833600) { a = (c[f >> 2] | 0) + 288 | 0; c[a >> 2] = (c[a >> 2] | 0) - 7833600; a = (c[f >> 2] | 0) + 260 | 0; c[a >> 2] = (c[a >> 2] | 0) + 1 } a = (c[f >> 2] | 0) + 260 | 0; c[a >> 2] = (c[a >> 2] | 0) + (c[(c[f >> 2] | 0) + 264 >> 2] | 0); c[(c[f >> 2] | 0) + 264 >> 2] = 0 } a = (c[f >> 2] | 0) + 260 | 0; c[a >> 2] = c[a >> 2]; if ((c[(c[f >> 2] | 0) + 260 >> 2] | 0) == (c[e >> 2] | 0)) { l = g; return } jh(c[f >> 2] | 0, 1); jh(c[f >> 2] | 0, 0); l = g; return } function jh(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = b; a[g >> 0] = e; a[g >> 0] = (d[g >> 0] | 0 | 0) != 0; if ((d[(c[f >> 2] | 0) + 312 >> 0] | 0 | 0) == (d[g >> 0] | 0 | 0)) { l = h; return } a[(c[f >> 2] | 0) + 312 >> 0] = a[g >> 0] | 0; if (!(c[(c[f >> 2] | 0) + 308 >> 2] | 0)) { l = h; return } Qb[c[(c[f >> 2] | 0) + 308 >> 2] & 255](c[(c[f >> 2] | 0) + 304 >> 2] | 0, a[g >> 0] | 0); l = h; return } function kh(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = b; c[c[e >> 2] >> 2] = 0; a[(c[e >> 2] | 0) + 4 >> 0] = 0; a[(c[e >> 2] | 0) + 5 >> 0] = 0; a[(c[e >> 2] | 0) + 6 >> 0] = 0; a[(c[e >> 2] | 0) + 7 >> 0] = 0; a[(c[e >> 2] | 0) + 9 >> 0] = 0; a[(c[e >> 2] | 0) + 10 >> 0] = 0; a[(c[e >> 2] | 0) + 11 >> 0] = 0; c[(c[e >> 2] | 0) + 16 >> 2] = 0; c[(c[e >> 2] | 0) + 20 >> 2] = 0; c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = 0; c[(c[e >> 2] | 0) + 48 >> 2] = 4096; b = HQ(c[(c[e >> 2] | 0) + 48 >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 52 >> 2] = b; c[(c[e >> 2] | 0) + 60 >> 2] = 4080; c[(c[e >> 2] | 0) + 64 >> 2] = 4; c[(c[e >> 2] | 0) + 68 >> 2] = 0; c[(c[e >> 2] | 0) + 72 >> 2] = 0; a[(c[e >> 2] | 0) + 76 >> 0] = 0; c[(c[e >> 2] | 0) + 80 >> 2] = 0; c[(c[e >> 2] | 0) + 84 >> 2] = 0; c[d >> 2] = 0; while (1) { b = c[e >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= 8) break; c[b + 88 + (c[d >> 2] << 5) >> 2] = 0; c[d >> 2] = (c[d >> 2] | 0) + 1 } c[b + 344 >> 2] = 0; l = f; return } function lh(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 80 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 84 >> 2] = c[g >> 2]; l = e; return } function mh(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 344 >> 2] = c[f >> 2]; l = d; return } function nh(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 8 | 0; g = f + 4 | 0; i = f; c[h >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; c[g >> 2] = c[g >> 2] & 7; c[(c[h >> 2] | 0) + 88 + (c[g >> 2] << 5) >> 2] = 1; c[(c[h >> 2] | 0) + 88 + (c[g >> 2] << 5) + 4 >> 2] = c[i >> 2]; e = (c[h >> 2] | 0) + 88 + (c[g >> 2] << 5) + 8 | 0; a[e >> 0] = a[35393] | 0; a[e + 1 >> 0] = a[35394] | 0; a[e + 2 >> 0] = a[35395] | 0; a[e + 3 >> 0] = a[35396] | 0; a[e + 4 >> 0] = a[35397] | 0; a[e + 5 >> 0] = a[35398] | 0; a[e + 6 >> 0] = a[35399] | 0; a[e + 7 >> 0] = a[35400] | 0; e = (c[h >> 2] | 0) + 88 + (c[g >> 2] << 5) + 16 | 0; d = 35402; b = e + 16 | 0; do { a[e >> 0] = a[d >> 0] | 0; e = e + 1 | 0; d = d + 1 | 0 } while ((e | 0) < (b | 0)); l = f; return } function oh(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 32 | 0; k = i + 16 | 0; j = i + 12 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[k >> 2] = b; c[j >> 2] = d; c[h >> 2] = e; c[f >> 2] = (c[k >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 5) + 8; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 8) break; if (!(a[c[h >> 2] >> 0] | 0)) { d = 32; b = (c[f >> 2] | 0) + (c[g >> 2] | 0) | 0 } else { d = c[h >> 2] | 0; c[h >> 2] = d + 1; d = a[d >> 0] | 0; b = (c[f >> 2] | 0) + (c[g >> 2] | 0) | 0 } a[b >> 0] = d; c[g >> 2] = (c[g >> 2] | 0) + 1 } l = i; return } function ph(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 32 | 0; k = i + 16 | 0; j = i + 12 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[k >> 2] = b; c[j >> 2] = d; c[h >> 2] = e; c[f >> 2] = (c[k >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 5) + 16; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 16) break; if (!(a[c[h >> 2] >> 0] | 0)) { d = 32; e = (c[f >> 2] | 0) + (c[g >> 2] | 0) | 0 } else { d = c[h >> 2] | 0; c[h >> 2] = d + 1; d = a[d >> 0] | 0; e = (c[f >> 2] | 0) + (c[g >> 2] | 0) | 0 } a[e >> 0] = d; c[g >> 2] = (c[g >> 2] | 0) + 1 } l = i; return } function Bs(d) { d = d | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = d; d = c[f >> 2] | 0; if (!(a[(c[f >> 2] | 0) + 334 >> 0] | 0)) { Dn(d); l = h; return } if (Sn(d) | 0) { l = h; return } b[g >> 1] = b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; d = (c[f >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 20; if (Sn(c[f >> 2] | 0) | 0) { l = h; return } ln(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 166 >> 1] & 65535 ^ e[g >> 1]) & 42783); l = h; return } function Cs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; d = k + 20 | 0; g = k + 16 | 0; i = k + 12 | 0; j = k + 8 | 0; f = k + 4 | 0; h = k; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = k; return } c[g >> 2] = (e[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0) & 31; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[j >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = 1 << c[g >> 2]; c[f >> 2] = c[j >> 2] | c[h >> 2]; g = (c[d >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 12; g = (c[d >> 2] | 0) + 166 | 0; a = e[g >> 1] | 0; b[g >> 1] = (c[j >> 2] & c[h >> 2] | 0) == 0 ? a | 4 : a & -5; if (Sn(c[d >> 2] | 0) | 0) { l = k; return } er(c[d >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0); l = k; return } function Ds(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; d = k + 20 | 0; g = k + 16 | 0; i = k + 12 | 0; j = k + 8 | 0; f = k + 4 | 0; h = k; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = k; return } c[g >> 2] = (e[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0) & 31; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[j >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = 1 << c[g >> 2]; c[f >> 2] = c[j >> 2] & ~c[h >> 2]; g = (c[d >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 14; g = (c[d >> 2] | 0) + 166 | 0; a = e[g >> 1] | 0; b[g >> 1] = (c[j >> 2] & c[h >> 2] | 0) == 0 ? a | 4 : a & -5; if (Sn(c[d >> 2] | 0) | 0) { l = k; return } er(c[d >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0); l = k; return } function Es(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; d = k + 20 | 0; g = k + 16 | 0; i = k + 12 | 0; j = k + 8 | 0; f = k + 4 | 0; h = k; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = k; return } c[g >> 2] = (e[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0) & 31; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[j >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = 1 << c[g >> 2]; c[f >> 2] = c[j >> 2] ^ c[h >> 2]; g = (c[d >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 12; g = (c[d >> 2] | 0) + 166 | 0; a = e[g >> 1] | 0; b[g >> 1] = (c[j >> 2] & c[h >> 2] | 0) == 0 ? a | 4 : a & -5; if (Sn(c[d >> 2] | 0) | 0) { l = k; return } er(c[d >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0); l = k; return } function Fs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i + 8 | 0; g = i + 12 | 0; h = i + 4 | 0; f = i; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = i; return } else { b[g >> 1] = (e[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0) & 255; c[h >> 2] = c[(c[d >> 2] | 0) + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2]; c[f >> 2] = c[h >> 2] & 1 << ((e[g >> 1] | 0) & 31); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 10; h = (c[d >> 2] | 0) + 166 | 0; g = e[h >> 1] | 0; b[h >> 1] = (c[f >> 2] | 0) == 0 ? g | 4 : g & -5; Sn(c[d >> 2] | 0) | 0; l = i; return } } function Gs(d) { d = d | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = d; d = c[f >> 2] | 0; if (!(a[(c[f >> 2] | 0) + 334 >> 0] | 0)) { Dn(d); l = h; return } if (Sn(d) | 0) { l = h; return } b[g >> 1] = b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; d = (c[f >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 20; if (Sn(c[f >> 2] | 0) | 0) { l = h; return } ln(c[f >> 2] | 0, e[(c[f >> 2] | 0) + 166 >> 1] & 65535 & e[g >> 1] & 65535); l = h; return } function Hs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; d = l; l = l + 32 | 0; f = d + 20 | 0; i = d + 16 | 0; h = d + 12 | 0; k = d + 8 | 0; g = d + 4 | 0; j = d; c[f >> 2] = a; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[k >> 2] = c[(c[f >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2]; c[i >> 2] = c[(c[f >> 2] | 0) + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 31; c[j >> 2] = 1 << c[i >> 2]; c[g >> 2] = c[k >> 2] | c[j >> 2]; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; a = (c[f >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (c[k >> 2] & c[j >> 2] | 0) == 0 ? i | 4 : i & -5; er(c[f >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0); Sn(c[f >> 2] | 0) | 0; l = d; return } function Is(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; b = g + 4 | 0; f = g; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = g; return } else { a = c[(c[d >> 2] | 0) + 120 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2] | 0; c[b >> 2] = a + (Tn(e[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0) | 0); c[f >> 2] = c[(c[d >> 2] | 0) + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; Js(c[d >> 2] | 0, (c[b >> 2] | 0) + 0 | 0, (c[f >> 2] | 0) >>> 24 & 255); Js(c[d >> 2] | 0, (c[b >> 2] | 0) + 2 | 0, (c[f >> 2] | 0) >>> 16 & 255); Js(c[d >> 2] | 0, (c[b >> 2] | 0) + 4 | 0, (c[f >> 2] | 0) >>> 8 & 255); Js(c[d >> 2] | 0, (c[b >> 2] | 0) + 6 | 0, c[f >> 2] & 255); f = (c[d >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 24; Sn(c[d >> 2] | 0) | 0; l = g; return } } function Js(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 4 | 0; f = i; h = i + 8 | 0; c[g >> 2] = b; c[f >> 2] = d; a[h >> 0] = e; c[f >> 2] = c[f >> 2] & 16777215; if ((c[f >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = a[h >> 0] | 0; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 20 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, a[h >> 0] | 0); l = i; return } } function Ks(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; d = l; l = l + 32 | 0; f = d + 20 | 0; i = d + 16 | 0; h = d + 12 | 0; k = d + 8 | 0; g = d + 4 | 0; j = d; c[f >> 2] = a; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[k >> 2] = c[(c[f >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2]; c[i >> 2] = c[(c[f >> 2] | 0) + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 31; c[j >> 2] = 1 << c[i >> 2]; c[g >> 2] = c[k >> 2] & ~c[j >> 2]; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 10; a = (c[f >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (c[k >> 2] & c[j >> 2] | 0) == 0 ? i | 4 : i & -5; er(c[f >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0); Sn(c[f >> 2] | 0) | 0; l = d; return } function Ls(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; d = h; g = h + 8 | 0; c[f >> 2] = a; if (Sn(c[f >> 2] | 0) | 0) { l = h; return } else { a = c[(c[f >> 2] | 0) + 120 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2] | 0; c[d >> 2] = a + (Tn(e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0) | 0); b[g >> 1] = c[(c[f >> 2] | 0) + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; Js(c[f >> 2] | 0, (c[d >> 2] | 0) + 0 | 0, (e[g >> 1] | 0) >> 8 & 255); Js(c[f >> 2] | 0, (c[d >> 2] | 0) + 2 | 0, (e[g >> 1] | 0) & 255); g = (c[f >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 16; Sn(c[f >> 2] | 0) | 0; l = h; return } } function Ms(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; d = l; l = l + 32 | 0; f = d + 20 | 0; k = d + 16 | 0; j = d + 12 | 0; i = d + 8 | 0; g = d + 4 | 0; h = d; c[f >> 2] = a; c[j >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[i >> 2] = c[(c[f >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[k >> 2] = c[(c[f >> 2] | 0) + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 31; c[h >> 2] = 1 << c[k >> 2]; c[g >> 2] = c[i >> 2] ^ c[h >> 2]; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; er(c[f >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0); a = (c[f >> 2] | 0) + 166 | 0; g = e[a >> 1] | 0; b[a >> 1] = (c[i >> 2] & c[h >> 2] | 0) == 0 ? g | 4 : g & -5; Sn(c[f >> 2] | 0) | 0; l = d; return } function Ns(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; b = g + 4 | 0; f = g; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = g; return } else { a = c[(c[d >> 2] | 0) + 120 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2] | 0; c[b >> 2] = a + (Tn(e[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0) | 0); c[f >> 2] = (Os(c[d >> 2] | 0, c[b >> 2] | 0) | 0) & 255; a = c[f >> 2] << 8; c[f >> 2] = a | (Os(c[d >> 2] | 0, (c[b >> 2] | 0) + 2 | 0) | 0) & 255; a = c[f >> 2] << 8; c[f >> 2] = a | (Os(c[d >> 2] | 0, (c[b >> 2] | 0) + 4 | 0) | 0) & 255; a = c[f >> 2] << 8; c[f >> 2] = a | (Os(c[d >> 2] | 0, (c[b >> 2] | 0) + 6 | 0) | 0) & 255; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 24; er(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, c[f >> 2] | 0); Sn(c[d >> 2] | 0) | 0; l = g; return } } function Os(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = b; c[e >> 2] = d; c[e >> 2] = c[e >> 2] & 16777215; d = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[g >> 0] = a[(c[d + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0] | 0; g = a[g >> 0] | 0; l = h; return g | 0 } else { a[g >> 0] = Vb[c[d + 8 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] & 16777215) | 0; g = a[g >> 0] | 0; l = h; return g | 0 } return 0 } function Ps(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; d = l; l = l + 16 | 0; f = d + 12 | 0; g = d + 8 | 0; i = d + 4 | 0; h = d; c[f >> 2] = a; c[i >> 2] = c[(c[f >> 2] | 0) + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2]; c[g >> 2] = c[(c[f >> 2] | 0) + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 31; c[h >> 2] = 1 << c[g >> 2]; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 6; a = (c[f >> 2] | 0) + 166 | 0; g = e[a >> 1] | 0; b[a >> 1] = (c[i >> 2] & c[h >> 2] | 0) == 0 ? g | 4 : g & -5; Sn(c[f >> 2] | 0) | 0; l = d; return } function Qs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; d = h; g = h + 8 | 0; c[f >> 2] = a; if (Sn(c[f >> 2] | 0) | 0) { l = h; return } else { a = c[(c[f >> 2] | 0) + 120 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2] | 0; c[d >> 2] = a + (Tn(e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0) | 0); b[g >> 1] = (Os(c[f >> 2] | 0, c[d >> 2] | 0) | 0) & 255; a = (e[g >> 1] | 0) << 8; b[g >> 1] = a | (Os(c[f >> 2] | 0, (c[d >> 2] | 0) + 2 | 0) | 0) & 255; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 16; Un(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, b[g >> 1] | 0); Sn(c[f >> 2] | 0) | 0; l = h; return } } function Rs(d) { d = d | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = d; d = c[f >> 2] | 0; if (!(a[(c[f >> 2] | 0) + 334 >> 0] | 0)) { Dn(d); l = h; return } if (Sn(d) | 0) { l = h; return } b[g >> 1] = b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; d = (c[f >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 20; if (Sn(c[f >> 2] | 0) | 0) { l = h; return } ln(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 166 >> 1] & 65535 | e[g >> 1]) & 42783); l = h; return } function Ss(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; switch ((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7 | 0) { case 2: { if (Ts(c[d >> 2] | 0) | 0) { l = g; return } break } case 3: { if (Ts(c[d >> 2] | 0) | 0) { l = g; return } if (Ts(c[d >> 2] | 0) | 0) { l = g; return } break } case 4: break; default: { Us(c[d >> 2] | 0);l = g; return } } if (Ts(c[d >> 2] | 0) | 0) { l = g; return } a = c[d >> 2] | 0; if (c[f >> 2] | 0) { Cn(a); l = g; return } else { f = a + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 4; l = g; return } } function Ts(d) { d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[e >> 2] = d; d = c[e >> 2] | 0; if (c[(c[e >> 2] | 0) + 156 >> 2] & 1 | 0) { pn(d, c[(c[e >> 2] | 0) + 156 >> 2] | 0, 0, 0); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } b[(c[e >> 2] | 0) + 160 + 2 >> 1] = b[d + 160 + 4 >> 1] | 0; d = Vs(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 156 >> 2] | 0) | 0; b[(c[e >> 2] | 0) + 160 + 4 >> 1] = d; d = c[e >> 2] | 0; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(d); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else { d = d + 156 | 0; c[d >> 2] = (c[d >> 2] | 0) + 2; e = (c[e >> 2] | 0) + 152 | 0; c[e >> 2] = (c[e >> 2] | 0) + 2; c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function Us(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 2; zn(c[d >> 2] | 0); l = b; return } function Vs(a, e) { a = a | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[g >> 2] = a; c[f >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; e = c[g >> 2] | 0; if (((c[f >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { b[h >> 1] = (d[(c[e + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) << 8 | (d[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] | 0); h = b[h >> 1] | 0; l = i; return h | 0 } else { b[h >> 1] = Vb[c[e + 12 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0; h = b[h >> 1] | 0; l = i; return h | 0 } return 0 } function Ws(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; Yn(c[b >> 2] | 0); c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= 1024) break; if (c[21428 + (c[d >> 2] << 2) >> 2] | 0) c[(c[b >> 2] | 0) + 400 + (c[d >> 2] << 2) >> 2] = c[21428 + (c[d >> 2] << 2) >> 2]; c[d >> 2] = (c[d >> 2] | 0) + 1 } c[d >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 >= 8) break; if (c[25524 + (c[d >> 2] << 2) >> 2] | 0) c[(c[b >> 2] | 0) + 4496 + (c[d >> 2] << 2) >> 2] = c[25524 + (c[d >> 2] << 2) >> 2]; c[d >> 2] = (c[d >> 2] | 0) + 1 } l = e; return } function Xs(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; b = g + 12 | 0; f = g + 8 | 0; h = g + 4 | 0; d = g; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[h >> 2] = c[(c[b >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2] & 255; a = c[h >> 2] | 0; c[d >> 2] = c[h >> 2] & 128 | 0 ? a | -256 : a; a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Ts(c[b >> 2] | 0) | 0) { l = g; return } Ys(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = g; return } function Ys(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function Zs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 20 | 0; k = m + 16 | 0; f = m + 12 | 0; g = m + 8 | 0; h = m + 4 | 0; i = m; c[j >> 2] = a; c[f >> 2] = (e[(c[j >> 2] | 0) + 160 >> 1] | 0) >> 9 & 3; if (Ts(c[j >> 2] | 0) | 0) { l = m; return } a = c[j >> 2] | 0; if ((e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) & 2047 | 0) { Us(a); l = m; return } if (Wt(a, (e[(c[j >> 2] | 0) + 160 >> 1] | 0) & 63, 2020, 8) | 0) { l = m; return } if ((c[(c[j >> 2] | 0) + 340 >> 2] | 0) != 2) { Us(c[j >> 2] | 0); l = m; return } do if (c[f >> 2] | 0) { a = c[j >> 2] | 0; d = c[(c[j >> 2] | 0) + 344 >> 2] | 0; if ((c[f >> 2] | 0) == 1) { c[g >> 2] = au((Vs(a, d) | 0) & 65535) | 0; c[h >> 2] = au((Vs(c[j >> 2] | 0, (c[(c[j >> 2] | 0) + 344 >> 2] | 0) + 2 | 0) | 0) & 65535) | 0; break } else { c[g >> 2] = fu(a, d) | 0; c[h >> 2] = fu(c[j >> 2] | 0, (c[(c[j >> 2] | 0) + 344 >> 2] | 0) + 4 | 0) | 0; break } } else { c[g >> 2] = $t((Zt(c[j >> 2] | 0, c[(c[j >> 2] | 0) + 344 >> 2] | 0) | 0) & 255) | 0; c[h >> 2] = $t((Zt(c[j >> 2] | 0, (c[(c[j >> 2] | 0) + 344 >> 2] | 0) + 1 | 0) | 0) & 255) | 0 } while (0); a = c[j >> 2] | 0; do if (!((e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) & 32768 | 0)) { c[i >> 2] = c[a + 88 + (((e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 7) << 2) >> 2]; if (!(c[f >> 2] | 0)) { c[i >> 2] = $t(c[i >> 2] | 0) | 0; break } if ((c[f >> 2] | 0) == 1) c[i >> 2] = au(c[i >> 2] | 0) | 0 } else c[i >> 2] = c[a + 120 + (((e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 7) << 2) >> 2]; while (0); c[g >> 2] = c[g >> 2] ^ -2147483648; c[h >> 2] = c[h >> 2] ^ -2147483648; c[i >> 2] = c[i >> 2] ^ -2147483648; if ((c[i >> 2] | 0) >>> 0 < (c[g >> 2] | 0) >>> 0) a = 1; else a = (c[i >> 2] | 0) >>> 0 > (c[h >> 2] | 0) >>> 0; c[k >> 2] = a & 1; if ((c[i >> 2] | 0) != (c[g >> 2] | 0) ? (c[i >> 2] | 0) != (c[h >> 2] | 0) : 0) { d = (c[j >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -5 } else { d = (c[j >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 4 } b[d >> 1] = a; a = (c[j >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = c[k >> 2] | 0 ? i | 1 : i & -2; a = (c[j >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 14; a = c[j >> 2] | 0; if (!(c[k >> 2] | 0 ? ((e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) & 2048 | 0) != 0 : 0)) { Ts(a) | 0; l = m; return } Bn(a); l = m; return } function _s(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; h = i + 8 | 0; d = i + 4 | 0; f = i; c[g >> 2] = a; if (Wt(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 32) | 0) { l = i; return } if (Zu(c[g >> 2] | 0, d) | 0) { l = i; return } c[f >> 2] = c[(c[g >> 2] | 0) + 88 + (((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; do if (c[f >> 2] & -2147483648 | 0) { c[h >> 2] = 1; f = (c[g >> 2] | 0) + 166 | 0; b[f >> 1] = e[f >> 1] | 0 | 8 } else { if ((c[d >> 2] & -2147483648 | 0) == 0 ? (c[f >> 2] | 0) >>> 0 <= (c[d >> 2] | 0) >>> 0 : 0) { c[h >> 2] = 0; break } c[h >> 2] = 1; f = (c[g >> 2] | 0) + 166 | 0; b[f >> 1] = (e[f >> 1] | 0) & -9 } while (0); a = c[g >> 2] | 0; if (!(c[h >> 2] | 0)) { h = a + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 14; Ts(c[g >> 2] | 0) | 0; l = i; return } Bn(a); l = i; return } function $s(b) { b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = b; if (Wt(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 8) | 0) { l = g; return } if (Wu(c[d >> 2] | 0, f) | 0) { l = g; return } else { b = (c[d >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; gu(c[d >> 2] | 0, 15, a[f >> 0] | 0); Ts(c[d >> 2] | 0) | 0; l = g; return } } function at(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = a; if (Wt(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = g; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = g; return } else { a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); Ts(c[d >> 2] | 0) | 0; l = g; return } } function bt(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; if (Wt(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = f; return } if (Zu(c[b >> 2] | 0, d) | 0) { l = f; return } else { a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); Ts(c[b >> 2] | 0) | 0; l = f; return } } function ct(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 64 | 0; d = q + 48 | 0; o = q + 44 | 0; k = q + 40 | 0; j = q + 36 | 0; i = q + 52 | 0; g = q + 32 | 0; h = q + 28 | 0; p = q + 24 | 0; m = q + 16 | 0; n = q + 8 | 0; f = q; c[d >> 2] = a; if (Ts(c[d >> 2] | 0) | 0) { l = q; return } b[i >> 1] = b[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0; if ((e[i >> 1] | 0) & 33544 | 0) { Us(c[d >> 2] | 0); l = q; return } c[o >> 2] = ((e[i >> 1] | 0) & 2048 | 0) != 0 & 1; c[k >> 2] = (e[i >> 1] | 0) >> 12 & 7; c[j >> 2] = (e[i >> 1] | 0) & 7; if (Wt(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 32) | 0) { l = q; return } if (Zu(c[d >> 2] | 0, p) | 0) { l = q; return } a = m; c[a >> 2] = c[p >> 2]; c[a + 4 >> 2] = 0; p = n; c[p >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[k >> 2] & 7) << 2) >> 2]; c[p + 4 >> 2] = 0; if (c[o >> 2] | 0) { if ((c[m >> 2] & -2147483648 | 0) != 0 | 0 != 0) { p = m; c[p >> 2] = c[m >> 2]; c[p + 4 >> 2] = -1 } if ((c[n >> 2] & -2147483648 | 0) != 0 | 0 != 0) { p = n; c[p >> 2] = c[n >> 2]; c[p + 4 >> 2] = -1 } } p = m; n = $Q(c[p >> 2] | 0, c[p + 4 >> 2] | 0, c[n >> 2] | 0, c[n + 4 >> 2] | 0) | 0; p = f; c[p >> 2] = n; c[p + 4 >> 2] = D; c[h >> 2] = c[f >> 2]; c[g >> 2] = c[f + 4 >> 2]; Ys(c[d >> 2] | 0, c[k >> 2] | 0, c[h >> 2] | 0); if ((e[i >> 1] | 0) & 1024 | 0) { Ys(c[d >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0); p = (c[d >> 2] | 0) + 166 | 0; o = e[p >> 1] | 0; b[p >> 1] = c[g >> 2] & -2147483648 | 0 ? o | 8 : o & -9; p = (c[d >> 2] | 0) + 166 | 0; o = e[p >> 1] | 0; b[p >> 1] = (c[g >> 2] | c[h >> 2] | 0) == 0 ? o | 4 : o & -5; p = (c[d >> 2] | 0) + 166 | 0; o = (e[p >> 1] | 0) & -3; o = o & 65535; b[p >> 1] = o; p = c[d >> 2] | 0; p = p + 372 | 0; o = c[p >> 2] | 0; o = o + 74 | 0; c[p >> 2] = o; p = c[d >> 2] | 0; p = p + 166 | 0; o = b[p >> 1] | 0; o = o & 65535; o = o & -2; o = o & 65535; b[p >> 1] = o; p = c[d >> 2] | 0; Ts(p) | 0; l = q; return } p = (c[d >> 2] | 0) + 166 | 0; n = e[p >> 1] | 0; b[p >> 1] = c[g >> 2] & -2147483648 | 0 ? n | 8 : n & -9; p = (c[d >> 2] | 0) + 166 | 0; n = e[p >> 1] | 0; b[p >> 1] = (c[g >> 2] | c[h >> 2] | 0) == 0 ? n | 4 : n & -5; if (c[o >> 2] | 0 ? c[h >> 2] & -2147483648 | 0 : 0) c[g >> 2] = ~c[g >> 2]; p = (c[d >> 2] | 0) + 166 | 0; o = e[p >> 1] | 0; o = c[g >> 2] | 0 ? o | 2 : o & -3; o = o & 65535; b[p >> 1] = o; p = c[d >> 2] | 0; p = p + 372 | 0; o = c[p >> 2] | 0; o = o + 74 | 0; c[p >> 2] = o; p = c[d >> 2] | 0; p = p + 166 | 0; o = b[p >> 1] | 0; o = o & 65535; o = o & -2; o = o & 65535; b[p >> 1] = o; p = c[d >> 2] | 0; Ts(p) | 0; l = q; return } function dt(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 80 | 0; j = u + 60 | 0; s = u + 56 | 0; o = u + 52 | 0; p = u + 48 | 0; t = u + 44 | 0; d = u + 64 | 0; q = u + 40 | 0; r = u + 36 | 0; f = u + 32 | 0; g = u + 28 | 0; h = u + 24 | 0; k = u + 20 | 0; m = u + 16 | 0; i = u + 8 | 0; n = u; c[j >> 2] = a; if (Ts(c[j >> 2] | 0) | 0) { l = u; return } b[d >> 1] = b[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0; if ((e[d >> 1] | 0) & 33544 | 0) { Us(c[j >> 2] | 0); l = u; return } c[s >> 2] = ((e[d >> 1] | 0) & 2048 | 0) != 0 & 1; c[q >> 2] = (e[d >> 1] | 0) >> 12 & 7; c[r >> 2] = (e[d >> 1] | 0) & 7; if (Wt(c[j >> 2] | 0, (e[(c[j >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 32) | 0) { l = u; return } if (Zu(c[j >> 2] | 0, f) | 0) { l = u; return } c[g >> 2] = c[(c[j >> 2] | 0) + 88 + ((c[q >> 2] & 7) << 2) >> 2]; if (!(c[f >> 2] | 0)) { An(c[j >> 2] | 0); l = u; return } if (c[s >> 2] | 0) { c[o >> 2] = (c[f >> 2] & -2147483648 | 0) != 0 & 1; c[p >> 2] = (c[g >> 2] & -2147483648 | 0) != 0 & 1; if (c[o >> 2] | 0) c[f >> 2] = ~c[f >> 2] + 1; if (c[p >> 2] | 0) c[g >> 2] = ~c[g >> 2] + 1 } else { c[o >> 2] = 0; c[p >> 2] = 0 } c[t >> 2] = 0; do if ((e[d >> 1] | 0) & 1024 | 0) { c[g >> 2] = c[(c[j >> 2] | 0) + 88 + ((c[q >> 2] & 7) << 2) >> 2]; c[h >> 2] = c[(c[j >> 2] | 0) + 88 + ((c[r >> 2] & 7) << 2) >> 2]; if (c[s >> 2] | 0 ? (c[p >> 2] = (c[h >> 2] & -2147483648 | 0) != 0 & 1, c[p >> 2] | 0) : 0) { c[g >> 2] = ~c[g >> 2] + 1; c[h >> 2] = ~c[h >> 2] + ((c[g >> 2] | 0) == 0 & 1) } d = c[h >> 2] | 0; a = i; c[a >> 2] = c[g >> 2]; c[a + 4 >> 2] = d; a = i; a = ZQ(c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[f >> 2] | 0, 0) | 0; d = n; c[d >> 2] = a; c[d + 4 >> 2] = D; c[k >> 2] = c[n >> 2]; d = i; d = WQ(c[d >> 2] | 0, c[d + 4 >> 2] | 0, c[f >> 2] | 0, 0) | 0; c[m >> 2] = d; d = n; a = c[d >> 2] | 0; d = c[d + 4 >> 2] | 0; if (!(c[s >> 2] | 0)) { if (!(d >>> 0 > 0 | (d | 0) == 0 & a >>> 0 > 4294967295)) break; c[t >> 2] = 1; break } if (!(d >>> 0 > 0 | (d | 0) == 0 & a >>> 0 > 2147483648)) { s = n; if (!((c[s >> 2] | 0) == -2147483648 & (c[s + 4 >> 2] | 0) == 0)) break; if ((c[o >> 2] | 0) != (c[p >> 2] | 0)) break } c[t >> 2] = 1 } else { c[k >> 2] = ((c[g >> 2] | 0) >>> 0) / ((c[f >> 2] | 0) >>> 0) | 0; c[m >> 2] = ((c[g >> 2] | 0) >>> 0) % ((c[f >> 2] | 0) >>> 0) | 0 } while (0); if (c[t >> 2] | 0) { t = (c[j >> 2] | 0) + 166 | 0; b[t >> 1] = e[t >> 1] | 0 | 2; t = c[j >> 2] | 0; t = t + 372 | 0; s = c[t >> 2] | 0; s = s + 144 | 0; c[t >> 2] = s; t = c[j >> 2] | 0; Ts(t) | 0; l = u; return } if ((c[o >> 2] | 0) != (c[p >> 2] | 0)) c[k >> 2] = ~c[k >> 2] + 1; Ys(c[j >> 2] | 0, c[q >> 2] | 0, c[k >> 2] | 0); if ((c[r >> 2] | 0) != (c[q >> 2] | 0)) { if (c[p >> 2] | 0) c[m >> 2] = ~c[m >> 2] + 1; Ys(c[j >> 2] | 0, c[r >> 2] | 0, c[m >> 2] | 0) } iu(c[j >> 2] | 0, 15, c[k >> 2] | 0); t = c[j >> 2] | 0; t = t + 372 | 0; s = c[t >> 2] | 0; s = s + 144 | 0; c[t >> 2] = s; t = c[j >> 2] | 0; Ts(t) | 0; l = u; return } function et(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, 1); l = b; return } function ft(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, 0); l = b; return } function gt(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) { b = 0; b = b & 1; eu(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; b = b & 1; eu(a, b); l = d; return } function ht(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) { b = 1; b = b & 1; eu(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; b = b & 1; eu(a, b); l = d; return } function it(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 ^ 1) & 1); l = b; return } function jt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 & 1); l = b; return } function kt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1) & 1); l = b; return } function lt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 & 1); l = b; return } function mt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 ^ 1) & 1); l = b; return } function nt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 & 1); l = b; return } function ot(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 ^ 1) & 1); l = b; return } function pt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 & 1); l = b; return } function qt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) == (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1); l = b; return } function rt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; eu(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1); l = b; return } function st(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) { b = 0; b = b & 1; eu(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; b = b & 1; eu(a, b); l = d; return } function tt(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) { b = 1; b = b & 1; eu(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; b = b & 1; eu(a, b); l = d; return } function ut(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, 1); l = b; return } function vt(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; switch ((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 255 | 0) { case 0: { c[b >> 2] = (c[(c[d >> 2] | 0) + 152 >> 2] | 0) + 4; break } case 255: { c[b >> 2] = (c[(c[d >> 2] | 0) + 152 >> 2] | 0) + 6; break } default: c[b >> 2] = (c[(c[d >> 2] | 0) + 152 >> 2] | 0) + 2 } bu(c[d >> 2] | 0, c[b >> 2] | 0); _t(c[d >> 2] | 0, 1); l = f; return } function wt(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) { b = 0; b = b & 1; _t(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; b = b & 1; _t(a, b); l = d; return } function xt(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) { b = 1; b = b & 1; _t(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; b = b & 1; _t(a, b); l = d; return } function yt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 ^ 1) & 1); l = b; return } function zt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 & 1); l = b; return } function At(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1) & 1); l = b; return } function Bt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 & 1); l = b; return } function Ct(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 ^ 1) & 1); l = b; return } function Dt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 & 1); l = b; return } function Et(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 ^ 1) & 1); l = b; return } function Ft(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 & 1); l = b; return } function Gt(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) == (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1); l = b; return } function Ht(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; _t(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1); l = b; return } function It(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) { b = 0; b = b & 1; _t(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; b = b & 1; _t(a, b); l = d; return } function Jt(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) { b = 1; b = b & 1; _t(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; b = b & 1; _t(a, b); l = d; return } function Kt(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; f = (Rt(c[b >> 2] | 0, d, 2021) | 0) != 0; a = c[b >> 2] | 0; if (f) { Us(a); l = e; return } else { iu(a, 15, c[d >> 2] << 32 - (c[(c[b >> 2] | 0) + 352 >> 2] | 0)); Ts(c[b >> 2] | 0) | 0; l = e; return } } function Lt(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; i = (Rt(c[b >> 2] | 0, g, 2021) | 0) != 0; a = c[b >> 2] | 0; if (i) { Us(a); l = h; return } else { c[f >> 2] = (e[a + 160 + 2 >> 1] | 0) >> 12 & 7; c[d >> 2] = -1 >>> (32 - (c[(c[b >> 2] | 0) + 352 >> 2] | 0) | 0); c[g >> 2] = c[g >> 2] & c[d >> 2]; iu(c[b >> 2] | 0, 15, c[g >> 2] << 32 - (c[(c[b >> 2] | 0) + 352 >> 2] | 0)); Ys(c[b >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0); Ts(c[b >> 2] | 0) | 0; l = h; return } } function Mt(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; f = (Rt(c[b >> 2] | 0, d, 485) | 0) != 0; a = c[b >> 2] | 0; if (f) { Us(a); l = e; return } f = (St(a, ~c[d >> 2]) | 0) != 0; a = c[b >> 2] | 0; if (!f) { iu(a, 15, c[d >> 2] << 32 - (c[(c[b >> 2] | 0) + 352 >> 2] | 0)); Ts(c[b >> 2] | 0) | 0; l = e; return } Us(a); l = e; return } function Nt(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; d = i + 16 | 0; f = i + 12 | 0; h = i + 8 | 0; b = i + 4 | 0; g = i; c[d >> 2] = a; j = (Rt(c[d >> 2] | 0, h, 2021) | 0) != 0; a = c[d >> 2] | 0; if (j) { Us(a); l = i; return } c[f >> 2] = (e[a + 160 + 2 >> 1] | 0) >> 12 & 7; c[b >> 2] = -1 >>> (32 - (c[(c[d >> 2] | 0) + 352 >> 2] | 0) | 0); c[g >> 2] = -2147483648 >>> (32 - (c[(c[d >> 2] | 0) + 352 >> 2] | 0) | 0); a = c[b >> 2] | 0; if (c[h >> 2] & c[g >> 2] | 0) c[h >> 2] = c[h >> 2] | ~a; else c[h >> 2] = c[h >> 2] & a; iu(c[d >> 2] | 0, 15, c[h >> 2] << 32 - (c[(c[d >> 2] | 0) + 352 >> 2] | 0)); Ys(c[d >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0); Ts(c[d >> 2] | 0) | 0; l = i; return } function Ot(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; f = (Rt(c[b >> 2] | 0, d, 485) | 0) != 0; a = c[b >> 2] | 0; if (f) { Us(a); l = e; return } f = (St(a, 0) | 0) != 0; a = c[b >> 2] | 0; if (!f) { iu(a, 15, c[d >> 2] << 32 - (c[(c[b >> 2] | 0) + 352 >> 2] | 0)); Ts(c[b >> 2] | 0) | 0; l = e; return } Us(a); l = e; return } function Pt(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; f = (Rt(c[b >> 2] | 0, d, 485) | 0) != 0; a = c[b >> 2] | 0; if (f) { Us(a); l = e; return } f = (St(a, -1) | 0) != 0; a = c[b >> 2] | 0; if (!f) { iu(a, 15, c[d >> 2] << 32 - (c[(c[b >> 2] | 0) + 352 >> 2] | 0)); Ts(c[b >> 2] | 0) | 0; l = e; return } Us(a); l = e; return } function Qt(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; b = g + 4 | 0; f = g; c[d >> 2] = a; h = (Rt(c[d >> 2] | 0, f, 2021) | 0) != 0; a = c[d >> 2] | 0; if (h) { Us(a); l = g; return } c[b >> 2] = (e[a + 160 + 2 >> 1] | 0) >> 12 & 7; c[f >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[b >> 2] & 7) << 2) >> 2]; h = (St(c[d >> 2] | 0, c[f >> 2] | 0) | 0) != 0; a = c[d >> 2] | 0; if (!h) { iu(a, 15, c[f >> 2] << 32 - (c[(c[d >> 2] | 0) + 352 >> 2] | 0)); Ts(c[d >> 2] | 0) | 0; l = g; return } Us(a); l = g; return } function Rt(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; k = m + 20 | 0; j = m + 16 | 0; i = m + 12 | 0; f = m + 8 | 0; g = m + 4 | 0; h = m; c[j >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; if (Ts(c[j >> 2] | 0) | 0) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } c[g >> 2] = (e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) >> 6 & 31; c[h >> 2] = (e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) & 31; if ((e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) >> 11 & 1 | 0) c[g >> 2] = c[(c[j >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; if ((e[(c[j >> 2] | 0) + 160 + 2 >> 1] | 0) >> 5 & 1 | 0) c[h >> 2] = c[(c[j >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2] & 31; if (!(c[h >> 2] | 0)) c[h >> 2] = 32; if (Wt(c[j >> 2] | 0, (e[(c[j >> 2] | 0) + 160 >> 1] | 0) & 63, c[f >> 2] | 0, 8) | 0) { c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } c[(c[j >> 2] | 0) + 348 >> 2] = c[g >> 2]; c[(c[j >> 2] | 0) + 352 >> 2] = c[h >> 2]; b = c[j >> 2] | 0; do if ((c[(c[j >> 2] | 0) + 340 >> 2] | 0) == 1) Xt(b, c[i >> 2] | 0); else { if ((c[b + 340 >> 2] | 0) == 2) { Yt(c[j >> 2] | 0, c[i >> 2] | 0); break } c[k >> 2] = 1; k = c[k >> 2] | 0; l = m; return k | 0 } while (0); j = (c[j >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 18; c[k >> 2] = 0; k = c[k >> 2] | 0; l = m; return k | 0 } function St(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = b; b = c[e >> 2] | 0; do if ((c[(c[e >> 2] | 0) + 340 >> 2] | 0) == 1) Tt(b, c[d >> 2] | 0); else { if ((c[b + 340 >> 2] | 0) == 2) { Ut(c[e >> 2] | 0, c[d >> 2] | 0); break } c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } while (0); c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } function Tt(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; e = i + 16 | 0; d = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; f = i; c[e >> 2] = a; c[d >> 2] = b; c[h >> 2] = c[(c[e >> 2] | 0) + 88 + ((c[(c[e >> 2] | 0) + 344 >> 2] & 7) << 2) >> 2]; c[f >> 2] = -1 >>> (32 - (c[(c[e >> 2] | 0) + 352 >> 2] | 0) | 0); c[g >> 2] = 32 - (c[(c[e >> 2] | 0) + 348 >> 2] | 0) - (c[(c[e >> 2] | 0) + 352 >> 2] | 0) & 31; if ((c[g >> 2] | 0) >>> 0 > 0) { c[d >> 2] = c[d >> 2] << c[g >> 2] | (c[d >> 2] | 0) >>> (32 - (c[g >> 2] | 0) | 0); c[f >> 2] = c[f >> 2] << c[g >> 2] | (c[f >> 2] | 0) >>> (32 - (c[g >> 2] | 0) | 0) } c[h >> 2] = c[h >> 2] & ~c[f >> 2] | c[d >> 2] & c[f >> 2]; Ys(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 344 >> 2] | 0, c[h >> 2] | 0); l = i; return } function Ut(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; i = q + 28 | 0; g = q + 24 | 0; j = q + 20 | 0; m = q + 16 | 0; n = q + 12 | 0; o = q + 8 | 0; k = q + 33 | 0; p = q + 32 | 0; h = q + 4 | 0; f = q; c[i >> 2] = b; c[g >> 2] = e; e = c[(c[i >> 2] | 0) + 344 >> 2] | 0; b = (c[(c[i >> 2] | 0) + 348 >> 2] | 0) >>> 3; if (c[(c[i >> 2] | 0) + 348 >> 2] & -2147483648 | 0) c[f >> 2] = e + (b | -536870912); else c[f >> 2] = e + b; c[m >> 2] = c[(c[i >> 2] | 0) + 348 >> 2] & 7; c[j >> 2] = c[(c[i >> 2] | 0) + 352 >> 2]; c[h >> 2] = (c[i >> 2] | 0) + 356; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; c[n >> 2] = 8 - (c[m >> 2] | 0); if ((c[n >> 2] | 0) >>> 0 > (c[j >> 2] | 0) >>> 0) c[n >> 2] = c[j >> 2]; c[o >> 2] = 8 - (c[m >> 2] | 0) - (c[n >> 2] | 0); a[k >> 0] = 255 >> c[m >> 2] & 255 << c[o >> 2]; b = c[h >> 2] | 0; c[h >> 2] = b + 1; a[p >> 0] = a[b >> 0] | 0; a[p >> 0] = (d[p >> 0] | 0) & ~(d[k >> 0] | 0) | (c[g >> 2] | 0) >>> ((c[j >> 2] | 0) - (c[n >> 2] | 0) - (c[o >> 2] | 0) | 0) & (d[k >> 0] | 0); Vt(c[i >> 2] | 0, c[f >> 2] | 0, a[p >> 0] | 0); c[m >> 2] = (c[m >> 2] | 0) + (c[n >> 2] | 0) & 7; c[j >> 2] = (c[j >> 2] | 0) - (c[n >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } l = q; return } function Vt(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 4 | 0; f = i; h = i + 8 | 0; c[g >> 2] = b; c[f >> 2] = d; a[h >> 0] = e; c[f >> 2] = c[f >> 2] & 16777215; if ((c[f >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = a[h >> 0] | 0; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 20 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, a[h >> 0] | 0); l = i; return } } function Wt(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = a; c[i >> 2] = b; c[h >> 2] = d; c[g >> 2] = e; e = Ub[c[25556 + (c[i >> 2] << 2) >> 2] & 63](c[j >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0) | 0; l = f; return e | 0 } function Xt(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; h = g + 12 | 0; d = g + 8 | 0; e = g + 4 | 0; f = g; c[h >> 2] = a; c[d >> 2] = b; c[f >> 2] = c[(c[h >> 2] | 0) + 88 + ((c[(c[h >> 2] | 0) + 344 >> 2] & 7) << 2) >> 2]; c[e >> 2] = (c[(c[h >> 2] | 0) + 348 >> 2] | 0) + (c[(c[h >> 2] | 0) + 352 >> 2] | 0) & 31; if ((c[e >> 2] | 0) >>> 0 <= 0) { f = c[f >> 2] | 0; h = c[d >> 2] | 0; c[h >> 2] = f; l = g; return } c[f >> 2] = c[f >> 2] << c[e >> 2] | (c[f >> 2] | 0) >>> (32 - (c[e >> 2] | 0) | 0); f = c[f >> 2] | 0; h = c[d >> 2] | 0; c[h >> 2] = f; l = g; return } function Yt(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; i = q + 28 | 0; g = q + 24 | 0; j = q + 20 | 0; m = q + 16 | 0; n = q + 12 | 0; o = q + 8 | 0; k = q + 33 | 0; p = q + 32 | 0; h = q + 4 | 0; f = q; c[i >> 2] = b; c[g >> 2] = e; e = c[(c[i >> 2] | 0) + 344 >> 2] | 0; b = (c[(c[i >> 2] | 0) + 348 >> 2] | 0) >>> 3; if (c[(c[i >> 2] | 0) + 348 >> 2] & -2147483648 | 0) c[f >> 2] = e + (b | -536870912); else c[f >> 2] = e + b; c[c[g >> 2] >> 2] = 0; c[m >> 2] = c[(c[i >> 2] | 0) + 348 >> 2] & 7; c[j >> 2] = c[(c[i >> 2] | 0) + 352 >> 2]; c[h >> 2] = (c[i >> 2] | 0) + 356; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; c[n >> 2] = 8 - (c[m >> 2] | 0); if ((c[n >> 2] | 0) >>> 0 > (c[j >> 2] | 0) >>> 0) c[n >> 2] = c[j >> 2]; c[o >> 2] = 8 - (c[m >> 2] | 0) - (c[n >> 2] | 0); a[k >> 0] = 255 >> c[m >> 2] & 255 << c[o >> 2]; a[p >> 0] = Zt(c[i >> 2] | 0, c[f >> 2] | 0) | 0; e = a[p >> 0] | 0; b = c[h >> 2] | 0; c[h >> 2] = b + 1; a[b >> 0] = e; c[c[g >> 2] >> 2] = c[c[g >> 2] >> 2] << c[n >> 2] | ((d[p >> 0] | 0) & (d[k >> 0] | 0)) >> c[o >> 2]; c[m >> 2] = (c[m >> 2] | 0) + (c[n >> 2] | 0) & 7; c[j >> 2] = (c[j >> 2] | 0) - (c[n >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 1 } l = q; return } function Zt(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = b; c[e >> 2] = d; c[e >> 2] = c[e >> 2] & 16777215; d = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[g >> 0] = a[(c[d + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0] | 0; g = a[g >> 0] | 0; l = h; return g | 0 } else { a[g >> 0] = Vb[c[d + 8 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] & 16777215) | 0; g = a[g >> 0] | 0; l = h; return g | 0 } return 0 } function _t(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; d = i + 4 | 0; h = i; c[f >> 2] = a; c[g >> 2] = b; c[d >> 2] = (c[(c[f >> 2] | 0) + 152 >> 2] | 0) + 2; c[h >> 2] = $t(e[(c[f >> 2] | 0) + 160 >> 1] | 0) | 0; do if (!(c[h >> 2] | 0)) if (Ts(c[f >> 2] | 0) | 0) { l = i; return } else { c[h >> 2] = au(e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; break } else if ((c[h >> 2] & 255 | 0) == 255) { if (Ts(c[f >> 2] | 0) | 0) { l = i; return } c[h >> 2] = e[(c[f >> 2] | 0) + 160 + 2 >> 1]; if (Ts(c[f >> 2] | 0) | 0) { l = i; return } else { c[h >> 2] = c[h >> 2] << 16 | (e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0); break } } while (0); a = c[f >> 2] | 0; if (c[g >> 2] | 0) { g = a + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 10; c[(c[f >> 2] | 0) + 156 >> 2] = (c[d >> 2] | 0) + (c[h >> 2] | 0); if (Ts(c[f >> 2] | 0) | 0) { l = i; return } } else { h = (c[f >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + (((e[a + 160 >> 1] | 0) & 255 | 0) == 0 ? 12 : 8) } if (Ts(c[f >> 2] | 0) | 0) { l = i; return } c[(c[f >> 2] | 0) + 152 >> 2] = (c[(c[f >> 2] | 0) + 156 >> 2] | 0) - 4; l = i; return } function $t(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 128 | 0 ? a | -256 : a & 255) | 0 } function au(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 32768 | 0 ? a | -65536 : a & 65535) | 0 } function bu(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 8 | 0; g = d + 4 | 0; e = d; c[f >> 2] = a; c[g >> 2] = b; c[e >> 2] = (c[(c[f >> 2] | 0) + 120 + 28 >> 2] | 0) - 4; cu(c[f >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0); du(c[f >> 2] | 0, 7, c[e >> 2] | 0); l = d; return } function cu(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[g >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; if (((c[f >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 2) >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 3) >> 0] = c[h >> 2]; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 28 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0); l = i; return } } function du(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function eu(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h + 8 | 0; f = h + 4 | 0; g = h; c[d >> 2] = a; c[f >> 2] = b; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63; if ((c[g >> 2] | 0) == 58 | (c[g >> 2] | 0) == 59 | (c[g >> 2] | 0) == 60) { Ss(c[d >> 2] | 0, c[f >> 2] | 0); l = h; return } d = c[d >> 2] | 0; a = c[f >> 2] | 0; if ((c[g >> 2] & 56 | 0) == 8) { Rn(d, a); l = h; return } else { Wn(d, a); l = h; return } } function fu(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; h = i; c[f >> 2] = a; c[e >> 2] = b; c[e >> 2] = c[e >> 2] & 16777215; b = c[f >> 2] | 0; if (((c[e >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { c[h >> 2] = d[(c[b + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0]; c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 1) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 2) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 3) >> 0] | 0); c[g >> 2] = c[h >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[g >> 2] = Vb[c[b + 16 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0) | 0; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function gu(f, g, h) { f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 16 | 0; i = n; j = n + 7 | 0; m = n + 6 | 0; k = n + 4 | 0; c[i >> 2] = f; a[j >> 0] = g; a[m >> 0] = h; b[k >> 1] = 0; if ((d[m >> 0] | 0) & 255) { if ((d[m >> 0] | 0) & 128 | 0) b[k >> 1] = e[k >> 1] | 0 | 8 } else b[k >> 1] = e[k >> 1] | 0 | 4; m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & (65280 | ~(d[j >> 0] | 0)); m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | (e[k >> 1] | 0) & (d[j >> 0] | 0); l = n; return } function hu(f, g, h) { f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 16 | 0; i = n; j = n + 8 | 0; m = n + 6 | 0; k = n + 4 | 0; c[i >> 2] = f; a[j >> 0] = g; b[m >> 1] = h; b[k >> 1] = 0; if ((e[m >> 1] | 0) & 65535) { if ((e[m >> 1] | 0) & 32768 | 0) b[k >> 1] = e[k >> 1] | 0 | 8 } else b[k >> 1] = e[k >> 1] | 0 | 4; m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & (65280 | ~(d[j >> 0] | 0)); m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | (e[k >> 1] | 0) & (d[j >> 0] | 0); l = n; return } function iu(f, g, h) { f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 16 | 0; i = n + 4 | 0; j = n + 10 | 0; m = n; k = n + 8 | 0; c[i >> 2] = f; a[j >> 0] = g; c[m >> 2] = h; b[k >> 1] = 0; if (c[m >> 2] | 0) { if (c[m >> 2] & -2147483648 | 0) b[k >> 1] = e[k >> 1] | 0 | 8 } else b[k >> 1] = e[k >> 1] | 0 | 4; m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & (65280 | ~(d[j >> 0] | 0)); m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | (e[k >> 1] | 0) & (d[j >> 0] | 0); l = n; return } function ju(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0; j = l; l = l + 16 | 0; o = j; n = j + 6 | 0; m = j + 5 | 0; k = j + 4 | 0; c[o >> 2] = f; a[n >> 0] = g; a[m >> 0] = h; a[k >> 0] = i; i = (c[o >> 2] | 0) + 166 | 0; h = e[i >> 1] | 0; b[i >> 1] = ((d[n >> 0] | 0) & 255 | 0) == 0 ? h | 4 : h & -5; ku(c[o >> 2] | 0, (d[n >> 0] | 0) >> 7, (d[m >> 0] | 0) >> 7, (d[k >> 0] | 0) >> 7); l = j; return } function ku(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 32 | 0; h = m + 12 | 0; n = m + 8 | 0; i = m + 4 | 0; j = m; k = m + 16 | 0; c[h >> 2] = a; c[n >> 2] = d; c[i >> 2] = f; c[j >> 2] = g; b[k >> 1] = 0; c[n >> 2] = c[n >> 2] & 1; c[i >> 2] = c[i >> 2] & 1; c[j >> 2] = c[j >> 2] & 1; if (c[n >> 2] | 0) { b[k >> 1] = e[k >> 1] | 0 | 8; if ((c[i >> 2] | 0) != 0 & (c[j >> 2] | 0) != 0) b[k >> 1] = e[k >> 1] | 0 | 17; if (!((c[i >> 2] | 0) != 0 | (c[j >> 2] | 0) != 0)) b[k >> 1] = e[k >> 1] | 0 | 2 } else { if ((c[i >> 2] | 0) != 0 | (c[j >> 2] | 0) != 0) b[k >> 1] = e[k >> 1] | 0 | 17; if ((c[i >> 2] | 0) != 0 & (c[j >> 2] | 0) != 0) b[k >> 1] = e[k >> 1] | 0 | 2 } n = (c[h >> 2] | 0) + 166 | 0; b[n >> 1] = (e[n >> 1] | 0) & -28; n = (c[h >> 2] | 0) + 166 | 0; b[n >> 1] = e[n >> 1] | 0 | (e[k >> 1] | 0); l = m; return } function lu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; h = l; l = l + 16 | 0; m = h; k = h + 8 | 0; j = h + 6 | 0; i = h + 4 | 0; c[m >> 2] = a; b[k >> 1] = d; b[j >> 1] = f; b[i >> 1] = g; g = (c[m >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0; b[g >> 1] = ((e[k >> 1] | 0) & 65535 | 0) == 0 ? f | 4 : f & -5; ku(c[m >> 2] | 0, (e[k >> 1] | 0) >> 15, (e[j >> 1] | 0) >> 15, (e[i >> 1] | 0) >> 15); l = h; return } function mu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; h = l; l = l + 16 | 0; m = h + 12 | 0; k = h + 8 | 0; j = h + 4 | 0; i = h; c[m >> 2] = a; c[k >> 2] = d; c[j >> 2] = f; c[i >> 2] = g; g = (c[m >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0; b[g >> 1] = (c[k >> 2] | 0) == 0 ? f | 4 : f & -5; ku(c[m >> 2] | 0, (c[k >> 2] | 0) >>> 31, (c[j >> 2] | 0) >>> 31, (c[i >> 2] | 0) >>> 31); l = h; return } function nu(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0; k = l; l = l + 16 | 0; j = k; m = k + 6 | 0; o = k + 5 | 0; n = k + 4 | 0; c[j >> 2] = f; a[m >> 0] = g; a[o >> 0] = h; a[n >> 0] = i; ku(c[j >> 2] | 0, (d[m >> 0] | 0) >> 7, (d[o >> 0] | 0) >> 7, (d[n >> 0] | 0) >> 7); if (!((d[m >> 0] | 0) & 255)) { l = k; return } o = (c[j >> 2] | 0) + 166 | 0; b[o >> 1] = (e[o >> 1] | 0) & -5; l = k; return } function ou(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i; j = i + 8 | 0; m = i + 6 | 0; k = i + 4 | 0; c[h >> 2] = a; b[j >> 1] = d; b[m >> 1] = f; b[k >> 1] = g; ku(c[h >> 2] | 0, (e[j >> 1] | 0) >> 15, (e[m >> 1] | 0) >> 15, (e[k >> 1] | 0) >> 15); if (!((e[j >> 1] | 0) & 65535)) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & -5; l = i; return } function pu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; j = i + 8 | 0; m = i + 4 | 0; k = i; c[h >> 2] = a; c[j >> 2] = d; c[m >> 2] = f; c[k >> 2] = g; ku(c[h >> 2] | 0, (c[j >> 2] | 0) >>> 31, (c[m >> 2] | 0) >>> 31, (c[k >> 2] | 0) >>> 31); if (!(c[j >> 2] | 0)) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & -5; l = i; return } function qu(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0; k = l; l = l + 16 | 0; j = k; m = k + 6 | 0; o = k + 5 | 0; n = k + 4 | 0; c[j >> 2] = f; a[m >> 0] = g; a[o >> 0] = h; a[n >> 0] = i; ru(c[j >> 2] | 0, 15, (d[m >> 0] | 0) >> 7, (d[o >> 0] | 0) >> 7, (d[n >> 0] | 0) >> 7); if ((d[m >> 0] | 0) & 255 | 0) { l = k; return } o = (c[j >> 2] | 0) + 166 | 0; b[o >> 1] = e[o >> 1] | 0 | 4; l = k; return } function ru(a, d, f, g, h) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; o = l; l = l + 32 | 0; i = o + 12 | 0; j = o + 18 | 0; p = o + 8 | 0; k = o + 4 | 0; m = o; n = o + 16 | 0; c[i >> 2] = a; b[j >> 1] = d; c[p >> 2] = f; c[k >> 2] = g; c[m >> 2] = h; b[n >> 1] = 0; c[p >> 2] = c[p >> 2] & 1; c[k >> 2] = c[k >> 2] & 1; c[m >> 2] = c[m >> 2] & 1; if (c[p >> 2] | 0) { b[n >> 1] = e[n >> 1] | 0 | 8; if (!((c[k >> 2] | 0) == 0 & (c[m >> 2] | 0) != 0)) b[n >> 1] = e[n >> 1] | 0 | 17; if (!((c[k >> 2] | 0) == 0 | (c[m >> 2] | 0) != 0)) b[n >> 1] = e[n >> 1] | 0 | 2 } else { if (!((c[k >> 2] | 0) == 0 | (c[m >> 2] | 0) != 0)) b[n >> 1] = e[n >> 1] | 0 | 17; if ((c[k >> 2] | 0) == 0 & (c[m >> 2] | 0) != 0) b[n >> 1] = e[n >> 1] | 0 | 2 } p = (c[i >> 2] | 0) + 166 | 0; b[p >> 1] = (e[p >> 1] | 0) & ~(e[j >> 1] | 0); p = (c[i >> 2] | 0) + 166 | 0; b[p >> 1] = e[p >> 1] | 0 | (e[n >> 1] | 0) & (e[j >> 1] | 0); l = o; return } function su(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i; j = i + 8 | 0; m = i + 6 | 0; k = i + 4 | 0; c[h >> 2] = a; b[j >> 1] = d; b[m >> 1] = f; b[k >> 1] = g; ru(c[h >> 2] | 0, 15, (e[j >> 1] | 0) >> 15, (e[m >> 1] | 0) >> 15, (e[k >> 1] | 0) >> 15); if ((e[j >> 1] | 0) & 65535 | 0) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | 4; l = i; return } function tu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; j = i + 8 | 0; m = i + 4 | 0; k = i; c[h >> 2] = a; c[j >> 2] = d; c[m >> 2] = f; c[k >> 2] = g; ru(c[h >> 2] | 0, 15, (c[j >> 2] | 0) >>> 31, (c[m >> 2] | 0) >>> 31, (c[k >> 2] | 0) >>> 31); if (c[j >> 2] | 0) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | 4; l = i; return } function uu(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0; k = l; l = l + 16 | 0; j = k; m = k + 6 | 0; o = k + 5 | 0; n = k + 4 | 0; c[j >> 2] = f; a[m >> 0] = g; a[o >> 0] = h; a[n >> 0] = i; ru(c[j >> 2] | 0, 31, (d[m >> 0] | 0) >> 7, (d[o >> 0] | 0) >> 7, (d[n >> 0] | 0) >> 7); if ((d[m >> 0] | 0) & 255 | 0) { l = k; return } o = (c[j >> 2] | 0) + 166 | 0; b[o >> 1] = e[o >> 1] | 0 | 4; l = k; return } function vu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i; j = i + 8 | 0; m = i + 6 | 0; k = i + 4 | 0; c[h >> 2] = a; b[j >> 1] = d; b[m >> 1] = f; b[k >> 1] = g; ru(c[h >> 2] | 0, 31, (e[j >> 1] | 0) >> 15, (e[m >> 1] | 0) >> 15, (e[k >> 1] | 0) >> 15); if ((e[j >> 1] | 0) & 65535 | 0) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | 4; l = i; return } function wu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; j = i + 8 | 0; m = i + 4 | 0; k = i; c[h >> 2] = a; c[j >> 2] = d; c[m >> 2] = f; c[k >> 2] = g; ru(c[h >> 2] | 0, 31, (c[j >> 2] | 0) >>> 31, (c[m >> 2] | 0) >>> 31, (c[k >> 2] | 0) >>> 31); if (c[j >> 2] | 0) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | 4; l = i; return } function xu(f, g, h, i) { f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0; k = l; l = l + 16 | 0; j = k; m = k + 6 | 0; o = k + 5 | 0; n = k + 4 | 0; c[j >> 2] = f; a[m >> 0] = g; a[o >> 0] = h; a[n >> 0] = i; ru(c[j >> 2] | 0, 27, (d[m >> 0] | 0) >> 7, (d[o >> 0] | 0) >> 7, (d[n >> 0] | 0) >> 7); if (!((d[m >> 0] | 0) & 255)) { l = k; return } o = (c[j >> 2] | 0) + 166 | 0; b[o >> 1] = (e[o >> 1] | 0) & -5; l = k; return } function yu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i; j = i + 8 | 0; m = i + 6 | 0; k = i + 4 | 0; c[h >> 2] = a; b[j >> 1] = d; b[m >> 1] = f; b[k >> 1] = g; ru(c[h >> 2] | 0, 27, (e[j >> 1] | 0) >> 15, (e[m >> 1] | 0) >> 15, (e[k >> 1] | 0) >> 15); if (!((e[j >> 1] | 0) & 65535)) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & -5; l = i; return } function zu(a, d, f, g) { a = a | 0; d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; j = i + 8 | 0; m = i + 4 | 0; k = i; c[h >> 2] = a; c[j >> 2] = d; c[m >> 2] = f; c[k >> 2] = g; ru(c[h >> 2] | 0, 27, (c[j >> 2] | 0) >>> 31, (c[m >> 2] | 0) >>> 31, (c[k >> 2] | 0) >>> 31); if (!(c[j >> 2] | 0)) { l = i; return } m = (c[h >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & -5; l = i; return } function Au(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; j = i + 4 | 0; c[f >> 2] = a; c[g >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; a = c[f >> 2] | 0; if (!(c[j >> 2] & 1)) { zn(a); c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else { c[a + 340 >> 2] = 1; c[(c[f >> 2] | 0) + 344 >> 2] = c[g >> 2] & 7; c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } return 0 } function Bu(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; j = i + 4 | 0; c[f >> 2] = a; c[g >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; a = c[f >> 2] | 0; if (!(c[j >> 2] & 2)) { zn(a); c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else { c[a + 340 >> 2] = 1; c[(c[f >> 2] | 0) + 344 >> 2] = (c[g >> 2] & 7) + 8; c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } return 0 } function Cu(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; j = i + 4 | 0; c[f >> 2] = a; c[g >> 2] = b; c[j >> 2] = d; c[i >> 2] = e; a = c[f >> 2] | 0; if (!(c[j >> 2] & 4)) { zn(a); c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else { c[a + 340 >> 2] = 2; c[(c[f >> 2] | 0) + 344 >> 2] = c[(c[f >> 2] | 0) + 120 + ((c[g >> 2] & 7) << 2) >> 2]; c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } return 0 } function Du(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; i = k + 20 | 0; f = k + 16 | 0; g = k + 12 | 0; m = k + 8 | 0; j = k + 4 | 0; h = k; c[f >> 2] = a; c[g >> 2] = b; c[m >> 2] = d; c[j >> 2] = e; if (!(c[m >> 2] & 8)) { zn(c[f >> 2] | 0); c[i >> 2] = 1; m = c[i >> 2] | 0; l = k; return m | 0 } else { c[h >> 2] = c[g >> 2] & 7; c[(c[f >> 2] | 0) + 340 >> 2] = 2; c[(c[f >> 2] | 0) + 344 >> 2] = c[(c[f >> 2] | 0) + 120 + ((c[h >> 2] & 7) << 2) >> 2]; Vu(c[f >> 2] | 0, c[h >> 2] | 0, (c[(c[f >> 2] | 0) + 344 >> 2] | 0) + ((c[j >> 2] | 0) >>> 3) | 0); c[i >> 2] = 0; m = c[i >> 2] | 0; l = k; return m | 0 } return 0 } function Eu(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; g = i + 16 | 0; f = i + 12 | 0; j = i + 4 | 0; h = i; c[f >> 2] = a; c[i + 8 >> 2] = b; c[j >> 2] = d; c[h >> 2] = e; if (!(c[j >> 2] & 8)) { zn(c[f >> 2] | 0); c[g >> 2] = 1; j = c[g >> 2] | 0; l = i; return j | 0 } if ((c[h >> 2] | 0) == 8) c[h >> 2] = 16; c[(c[f >> 2] | 0) + 340 >> 2] = 2; c[(c[f >> 2] | 0) + 344 >> 2] = c[(c[f >> 2] | 0) + 120 + 28 >> 2]; Vu(c[f >> 2] | 0, 7, (c[(c[f >> 2] | 0) + 344 >> 2] | 0) + ((c[h >> 2] | 0) >>> 3) | 0); c[g >> 2] = 0; j = c[g >> 2] | 0; l = i; return j | 0 } function Fu(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; i = k + 20 | 0; f = k + 16 | 0; g = k + 12 | 0; m = k + 8 | 0; j = k + 4 | 0; h = k; c[f >> 2] = a; c[g >> 2] = b; c[m >> 2] = d; c[j >> 2] = e; if (!(c[m >> 2] & 16)) { zn(c[f >> 2] | 0); c[i >> 2] = 1; m = c[i >> 2] | 0; l = k; return m | 0 } else { c[h >> 2] = c[g >> 2] & 7; c[(c[f >> 2] | 0) + 340 >> 2] = 2; c[(c[f >> 2] | 0) + 344 >> 2] = (c[(c[f >> 2] | 0) + 120 + ((c[h >> 2] & 7) << 2) >> 2] | 0) - ((c[j >> 2] | 0) >>> 3); Vu(c[f >> 2] | 0, c[h >> 2] | 0, c[(c[f >> 2] | 0) + 344 >> 2] | 0); m = (c[f >> 2] | 0) + 372 | 0; c[m >> 2] = (c[m >> 2] | 0) + 2; c[i >> 2] = 0; m = c[i >> 2] | 0; l = k; return m | 0 } return 0 } function Gu(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; g = i + 16 | 0; f = i + 12 | 0; j = i + 4 | 0; h = i; c[f >> 2] = a; c[i + 8 >> 2] = b; c[j >> 2] = d; c[h >> 2] = e; if (!(c[j >> 2] & 16)) { zn(c[f >> 2] | 0); c[g >> 2] = 1; j = c[g >> 2] | 0; l = i; return j | 0 } if ((c[h >> 2] | 0) == 8) c[h >> 2] = 16; c[(c[f >> 2] | 0) + 340 >> 2] = 2; c[(c[f >> 2] | 0) + 344 >> 2] = (c[(c[f >> 2] | 0) + 120 + 28 >> 2] | 0) - ((c[h >> 2] | 0) >>> 3); Vu(c[f >> 2] | 0, 7, c[(c[f >> 2] | 0) + 344 >> 2] | 0); j = (c[f >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 2; c[g >> 2] = 0; j = c[g >> 2] | 0; l = i; return j | 0 } function Hu(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; g = j + 12 | 0; h = j + 8 | 0; k = j + 4 | 0; c[g >> 2] = a; c[h >> 2] = b; c[k >> 2] = d; c[j >> 2] = f; a = c[g >> 2] | 0; if (!(c[k >> 2] & 32)) { zn(a); c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } if (Pu(a) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } else { c[(c[g >> 2] | 0) + 340 >> 2] = 2; k = c[(c[g >> 2] | 0) + 120 + ((c[h >> 2] & 7) << 2) >> 2] | 0; k = k + (Tu(e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) | 0) | 0; c[(c[g >> 2] | 0) + 344 >> 2] = k; k = (c[g >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + 4; c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } return 0 } function Iu(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; k = n + 24 | 0; i = n + 20 | 0; g = n + 16 | 0; h = n + 12 | 0; j = n + 4 | 0; m = n; c[i >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; c[n + 8 >> 2] = f; a = c[i >> 2] | 0; if (!(c[h >> 2] & 64)) { zn(a); c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } if (Pu(a) | 0) { c[k >> 2] = 1; m = c[k >> 2] | 0; l = n; return m | 0 } c[(c[i >> 2] | 0) + 340 >> 2] = 2; c[(c[i >> 2] | 0) + 344 >> 2] = c[(c[i >> 2] | 0) + 120 + ((c[g >> 2] & 7) << 2) >> 2]; do if (c[c[i >> 2] >> 2] & 4 | 0) { a = c[i >> 2] | 0; if (!((e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0) & 256)) { c[m >> 2] = (e[a + 160 + 2 >> 1] | 0) >> 9 & 3; break } c[k >> 2] = Ru(a, e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0, c[h >> 2] | 0) | 0; m = c[k >> 2] | 0; l = n; return m | 0 } else c[m >> 2] = 0; while (0); h = Su(e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; a = (c[i >> 2] | 0) + 344 | 0; c[a >> 2] = (c[a >> 2] | 0) + h; a = c[i >> 2] | 0; if ((e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0) & 32768 | 0) c[j >> 2] = c[a + 120 + (((e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 7) << 2) >> 2]; else c[j >> 2] = c[a + 88 + (((e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 7) << 2) >> 2]; if (!((e[(c[i >> 2] | 0) + 160 + 2 >> 1] | 0) & 2048)) c[j >> 2] = Tu(c[j >> 2] | 0) | 0; h = (c[i >> 2] | 0) + 344 | 0; c[h >> 2] = (c[h >> 2] | 0) + (c[j >> 2] << c[m >> 2]); m = (c[i >> 2] | 0) + 372 | 0; c[m >> 2] = (c[m >> 2] | 0) + 6; c[k >> 2] = 0; m = c[k >> 2] | 0; l = n; return m | 0 } function Ju(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; g = i + 12 | 0; j = i + 4 | 0; c[g >> 2] = a; c[i + 8 >> 2] = b; c[j >> 2] = d; c[i >> 2] = f; a = c[g >> 2] | 0; if (!(c[j >> 2] & 128)) { zn(a); c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } if (Pu(a) | 0) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else { c[(c[g >> 2] | 0) + 340 >> 2] = 2; j = Tu(e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; c[(c[g >> 2] | 0) + 344 >> 2] = j; j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 4; c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } return 0 } function Ku(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; g = i + 12 | 0; j = i + 4 | 0; c[g >> 2] = a; c[i + 8 >> 2] = b; c[j >> 2] = d; c[i >> 2] = f; a = c[g >> 2] | 0; if (!(c[j >> 2] & 256)) { zn(a); c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } if (Pu(a) | 0) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } c[(c[g >> 2] | 0) + 340 >> 2] = 2; c[(c[g >> 2] | 0) + 344 >> 2] = e[(c[g >> 2] | 0) + 160 + 2 >> 1]; if (Pu(c[g >> 2] | 0) | 0) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else { c[(c[g >> 2] | 0) + 344 >> 2] = c[(c[g >> 2] | 0) + 344 >> 2] << 16 | (e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0); j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 8; c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } return 0 } function Lu(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; g = i + 12 | 0; j = i + 4 | 0; c[g >> 2] = a; c[i + 8 >> 2] = b; c[j >> 2] = d; c[i >> 2] = f; a = c[g >> 2] | 0; if (!(c[j >> 2] & 512)) { zn(a); c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } c[a + 340 >> 2] = 2; c[(c[g >> 2] | 0) + 344 >> 2] = (c[(c[g >> 2] | 0) + 156 >> 2] | 0) - 2; if (Pu(c[g >> 2] | 0) | 0) { c[h >> 2] = 1; j = c[h >> 2] | 0; l = i; return j | 0 } else { f = Tu(e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; j = (c[g >> 2] | 0) + 344 | 0; c[j >> 2] = (c[j >> 2] | 0) + f; j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 4; c[h >> 2] = 0; j = c[h >> 2] | 0; l = i; return j | 0 } return 0 } function Mu(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 24 | 0; h = m + 20 | 0; g = m + 12 | 0; i = m + 4 | 0; k = m; c[h >> 2] = a; c[m + 16 >> 2] = b; c[g >> 2] = d; c[m + 8 >> 2] = f; a = c[h >> 2] | 0; if (!(c[g >> 2] & 1024)) { zn(a); c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } c[a + 340 >> 2] = 2; c[(c[h >> 2] | 0) + 344 >> 2] = (c[(c[h >> 2] | 0) + 156 >> 2] | 0) - 2; if (Pu(c[h >> 2] | 0) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } do if (c[c[h >> 2] >> 2] & 4 | 0) { a = c[h >> 2] | 0; if (!((e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) & 256)) { c[k >> 2] = (e[a + 160 + 2 >> 1] | 0) >> 9 & 3; break } c[j >> 2] = Ru(a, e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0, c[g >> 2] | 0) | 0; k = c[j >> 2] | 0; l = m; return k | 0 } else c[k >> 2] = 0; while (0); g = Su(e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; a = (c[h >> 2] | 0) + 344 | 0; c[a >> 2] = (c[a >> 2] | 0) + g; a = c[h >> 2] | 0; if ((e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) & 32768 | 0) c[i >> 2] = c[a + 120 + (((e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 7) << 2) >> 2]; else c[i >> 2] = c[a + 88 + (((e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 7) << 2) >> 2]; if (!((e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) & 2048)) c[i >> 2] = Tu(c[i >> 2] | 0) | 0; g = (c[h >> 2] | 0) + 344 | 0; c[g >> 2] = (c[g >> 2] | 0) + (c[i >> 2] << c[k >> 2]); k = (c[h >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + 6; c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } function Nu(a, b, d, f) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; g = j + 12 | 0; k = j + 4 | 0; h = j; c[g >> 2] = a; c[j + 8 >> 2] = b; c[k >> 2] = d; c[h >> 2] = f; a = c[g >> 2] | 0; if (!(c[k >> 2] & 2048)) { zn(a); c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } if (Pu(a) | 0) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } c[(c[g >> 2] | 0) + 340 >> 2] = 0; c[(c[g >> 2] | 0) + 344 >> 2] = e[(c[g >> 2] | 0) + 160 + 2 >> 1]; do if ((c[h >> 2] | 0) != 32) { a = c[g >> 2] | 0; if ((c[h >> 2] | 0) == 16) b = 4; else { a = a + 344 | 0; c[a >> 2] = c[a >> 2] & 255; a = c[g >> 2] | 0; b = 4 } } else { if (!(Pu(c[g >> 2] | 0) | 0)) { c[(c[g >> 2] | 0) + 344 >> 2] = c[(c[g >> 2] | 0) + 344 >> 2] << 16 | (e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0); a = c[g >> 2] | 0; b = 8; break } c[i >> 2] = 1; k = c[i >> 2] | 0; l = j; return k | 0 } while (0); k = a + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + b; c[i >> 2] = 0; k = c[i >> 2] | 0; l = j; return k | 0 } function Ou(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; f = l; l = l + 16 | 0; g = f + 12 | 0; c[g >> 2] = a; c[f + 8 >> 2] = b; c[f + 4 >> 2] = d; c[f >> 2] = e; zn(c[g >> 2] | 0); l = f; return 1 } function Pu(d) { d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[e >> 2] = d; d = c[e >> 2] | 0; if (c[(c[e >> 2] | 0) + 156 >> 2] & 1 | 0) { pn(d, c[(c[e >> 2] | 0) + 156 >> 2] | 0, 0, 0); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } b[(c[e >> 2] | 0) + 160 + 2 >> 1] = b[d + 160 + 4 >> 1] | 0; d = Qu(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 156 >> 2] | 0) | 0; b[(c[e >> 2] | 0) + 160 + 4 >> 1] = d; d = c[e >> 2] | 0; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(d); c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } else { d = d + 156 | 0; c[d >> 2] = (c[d >> 2] | 0) + 2; e = (c[e >> 2] | 0) + 152 | 0; c[e >> 2] = (c[e >> 2] | 0) + 2; c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function Qu(a, e) { a = a | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[g >> 2] = a; c[f >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; e = c[g >> 2] | 0; if (((c[f >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { b[h >> 1] = (d[(c[e + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) << 8 | (d[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] | 0); h = b[h >> 1] | 0; l = i; return h | 0 } else { b[h >> 1] = Vb[c[e + 12 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0; h = b[h >> 1] | 0; l = i; return h | 0 } return 0 } function Ru(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; o = l; l = l + 48 | 0; n = o + 36 | 0; h = o + 32 | 0; f = o + 28 | 0; j = o + 20 | 0; g = o + 16 | 0; k = o + 12 | 0; m = o + 8 | 0; p = o + 4 | 0; i = o; c[h >> 2] = a; c[f >> 2] = b; c[o + 24 >> 2] = d; c[p >> 2] = (c[f >> 2] & 128 | 0) != 0 & 1; c[i >> 2] = (c[f >> 2] & 64 | 0) != 0 & 1; if (c[p >> 2] | 0) c[(c[h >> 2] | 0) + 344 >> 2] = 0; c[m >> 2] = (c[f >> 2] | 0) >>> 9 & 3; if (!(c[i >> 2] | 0)) { a = c[h >> 2] | 0; if (c[f >> 2] & 32768 | 0) c[j >> 2] = c[a + 120 + (((c[f >> 2] | 0) >>> 12 & 7) << 2) >> 2]; else c[j >> 2] = c[a + 88 + (((c[f >> 2] | 0) >>> 12 & 7) << 2) >> 2]; if (!(c[f >> 2] & 2048)) c[j >> 2] = Tu(c[j >> 2] | 0) | 0 } else c[j >> 2] = 0; c[g >> 2] = 0; a: do switch ((c[f >> 2] | 0) >>> 4 & 3 | 0) { case 0: { zn(c[h >> 2] | 0);c[n >> 2] = 1;p = c[n >> 2] | 0;l = o; return p | 0 } case 1: { c[g >> 2] = 0; break } case 2: { if (!(Pu(c[h >> 2] | 0) | 0)) { c[g >> 2] = Tu(e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; break a } c[n >> 2] = 1;p = c[n >> 2] | 0;l = o; return p | 0 } case 3: { if (Pu(c[h >> 2] | 0) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = o; return p | 0 } c[g >> 2] = e[(c[h >> 2] | 0) + 160 + 2 >> 1]; if (!(Pu(c[h >> 2] | 0) | 0)) { c[g >> 2] = c[g >> 2] << 16 | (e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0); break a } c[n >> 2] = 1;p = c[n >> 2] | 0;l = o; return p | 0 } default: {} } while (0); if (!(c[f >> 2] & 7)) { p = (c[h >> 2] | 0) + 344 | 0; c[p >> 2] = (c[p >> 2] | 0) + ((c[j >> 2] << c[m >> 2]) + (c[g >> 2] | 0)); c[n >> 2] = 0; p = c[n >> 2] | 0; l = o; return p | 0 } c[k >> 2] = 0; b: do switch (c[f >> 2] & 3 | 0) { case 0: { zn(c[h >> 2] | 0);c[n >> 2] = 1;p = c[n >> 2] | 0;l = o; return p | 0 } case 1: { c[k >> 2] = 0; break } case 2: { if (!(Pu(c[h >> 2] | 0) | 0)) { c[k >> 2] = Tu(e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; break b } c[n >> 2] = 1;p = c[n >> 2] | 0;l = o; return p | 0 } case 3: { if (Pu(c[h >> 2] | 0) | 0) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = o; return p | 0 } c[k >> 2] = e[(c[h >> 2] | 0) + 160 + 2 >> 1]; if (!(Pu(c[h >> 2] | 0) | 0)) { c[k >> 2] = c[k >> 2] << 16 | (e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0); break b } c[n >> 2] = 1;p = c[n >> 2] | 0;l = o; return p | 0 } default: {} } while (0); do if (c[f >> 2] & 4 | 0) { a = c[h >> 2] | 0; if (!(c[i >> 2] | 0)) { b = Uu(a, (c[(c[h >> 2] | 0) + 344 >> 2] | 0) + (c[g >> 2] | 0) | 0) | 0; c[(c[h >> 2] | 0) + 344 >> 2] = b; b = c[h >> 2] | 0; a = (c[j >> 2] << c[m >> 2]) + (c[k >> 2] | 0) | 0; break } zn(a); c[n >> 2] = 1; p = c[n >> 2] | 0; l = o; return p | 0 } else { b = Uu(c[h >> 2] | 0, (c[(c[h >> 2] | 0) + 344 >> 2] | 0) + (c[g >> 2] | 0) + (c[j >> 2] << c[m >> 2]) | 0) | 0; c[(c[h >> 2] | 0) + 344 >> 2] = b; b = c[h >> 2] | 0; a = c[k >> 2] | 0 } while (0); p = b + 344 | 0; c[p >> 2] = (c[p >> 2] | 0) + a; c[n >> 2] = 0; p = c[n >> 2] | 0; l = o; return p | 0 } function Su(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 128 | 0 ? a | -256 : a & 255) | 0 } function Tu(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 32768 | 0 ? a | -65536 : a & 65535) | 0 } function Uu(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; h = i; c[f >> 2] = a; c[e >> 2] = b; c[e >> 2] = c[e >> 2] & 16777215; b = c[f >> 2] | 0; if (((c[e >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { c[h >> 2] = d[(c[b + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0]; c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 1) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 2) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 3) >> 0] | 0); c[g >> 2] = c[h >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[g >> 2] = Vb[c[b + 16 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0) | 0; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function Vu(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function Wu(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 8 | 0; e = h + 4 | 0; g = h; c[e >> 2] = b; c[g >> 2] = d; switch (c[(c[e >> 2] | 0) + 340 >> 2] | 0) { case 0: { a[c[g >> 2] >> 0] = c[(c[e >> 2] | 0) + 344 >> 2];c[f >> 2] = 0;g = c[f >> 2] | 0;l = h; return g | 0 } case 1: { b = c[e >> 2] | 0; if ((c[(c[e >> 2] | 0) + 344 >> 2] | 0) >>> 0 < 8) { a[c[g >> 2] >> 0] = c[b + 88 + ((c[(c[e >> 2] | 0) + 344 >> 2] & 7) << 2) >> 2]; c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } else { zn(b); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } } case 2: { d = Xu(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 344 >> 2] | 0) | 0;a[c[g >> 2] >> 0] = d;g = (c[e >> 2] | 0) + 372 | 0;c[g >> 2] = (c[g >> 2] | 0) + 4; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(c[e >> 2] | 0); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } else { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } } default: { zn(c[e >> 2] | 0);c[f >> 2] = 1;g = c[f >> 2] | 0;l = h; return g | 0 } } return 0 } function Xu(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[f >> 2] = b; c[e >> 2] = d; c[e >> 2] = c[e >> 2] & 16777215; d = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[g >> 0] = a[(c[d + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0] | 0; g = a[g >> 0] | 0; l = h; return g | 0 } else { a[g >> 0] = Vb[c[d + 8 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] & 16777215) | 0; g = a[g >> 0] | 0; l = h; return g | 0 } return 0 } function Yu(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[f >> 2] = d; c[h >> 2] = e; switch (c[(c[f >> 2] | 0) + 340 >> 2] | 0) { case 0: { b[c[h >> 2] >> 1] = c[(c[f >> 2] | 0) + 344 >> 2];c[g >> 2] = 0;h = c[g >> 2] | 0;l = i; return h | 0 } case 1: { e = c[f >> 2] | 0;do if ((c[(c[f >> 2] | 0) + 344 >> 2] | 0) >>> 0 < 8) b[c[h >> 2] >> 1] = c[e + 88 + ((c[(c[f >> 2] | 0) + 344 >> 2] & 7) << 2) >> 2]; else { d = c[f >> 2] | 0; if ((c[e + 344 >> 2] | 0) >>> 0 < 16) { b[c[h >> 2] >> 1] = c[d + 120 + (((c[(c[f >> 2] | 0) + 344 >> 2] | 0) - 8 & 7) << 2) >> 2]; break } zn(d); c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } while (0); c[g >> 2] = 0;h = c[g >> 2] | 0;l = i; return h | 0 } case 2: { if (c[(c[f >> 2] | 0) + 344 >> 2] & 1 | 0 ? (c[c[f >> 2] >> 2] & 1 | 0) == 0 : 0) { pn(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 344 >> 2] | 0, 1, 0); c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } e = Qu(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 344 >> 2] | 0) | 0;b[c[h >> 2] >> 1] = e;h = (c[f >> 2] | 0) + 372 | 0;c[h >> 2] = (c[h >> 2] | 0) + 4; if (a[(c[f >> 2] | 0) + 336 >> 0] | 0) { qn(c[f >> 2] | 0); c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } } default: { zn(c[f >> 2] | 0);c[g >> 2] = 1;h = c[g >> 2] | 0;l = i; return h | 0 } } return 0 } function Zu(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 8 | 0; e = h + 4 | 0; g = h; c[e >> 2] = b; c[g >> 2] = d; switch (c[(c[e >> 2] | 0) + 340 >> 2] | 0) { case 0: { c[c[g >> 2] >> 2] = c[(c[e >> 2] | 0) + 344 >> 2];c[f >> 2] = 0;g = c[f >> 2] | 0;l = h; return g | 0 } case 1: { d = c[e >> 2] | 0;do if ((c[(c[e >> 2] | 0) + 344 >> 2] | 0) >>> 0 < 8) c[c[g >> 2] >> 2] = c[d + 88 + ((c[(c[e >> 2] | 0) + 344 >> 2] & 7) << 2) >> 2]; else { b = c[e >> 2] | 0; if ((c[d + 344 >> 2] | 0) >>> 0 < 16) { c[c[g >> 2] >> 2] = c[b + 120 + (((c[(c[e >> 2] | 0) + 344 >> 2] | 0) - 8 & 7) << 2) >> 2]; break } zn(b); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } while (0); c[f >> 2] = 0;g = c[f >> 2] | 0;l = h; return g | 0 } case 2: { if (c[(c[e >> 2] | 0) + 344 >> 2] & 1 | 0 ? (c[c[e >> 2] >> 2] & 1 | 0) == 0 : 0) { pn(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 344 >> 2] | 0, 1, 0); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } d = Uu(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 344 >> 2] | 0) | 0;c[c[g >> 2] >> 2] = d;g = (c[e >> 2] | 0) + 372 | 0;c[g >> 2] = (c[g >> 2] | 0) + 8; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(c[e >> 2] | 0); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } else { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } } default: { zn(c[e >> 2] | 0);c[f >> 2] = 1;g = c[f >> 2] | 0;l = h; return g | 0 } } return 0 } function _u(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 4 | 0; e = h; g = h + 8 | 0; c[e >> 2] = b; a[g >> 0] = d; a: do switch (c[(c[e >> 2] | 0) + 340 >> 2] | 0) { case 0: { zn(c[e >> 2] | 0);c[f >> 2] = 1; break } case 1: { b = c[e >> 2] | 0; if ((c[(c[e >> 2] | 0) + 344 >> 2] | 0) >>> 0 < 8) { $u(b, c[(c[e >> 2] | 0) + 344 >> 2] | 0, a[g >> 0] | 0); c[f >> 2] = 0; break a } else { zn(b); c[f >> 2] = 1; break a } } case 2: { av(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 344 >> 2] | 0, a[g >> 0] | 0);g = (c[e >> 2] | 0) + 372 | 0;c[g >> 2] = (c[g >> 2] | 0) + 4; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(c[e >> 2] | 0); c[f >> 2] = 1; break a } else { c[f >> 2] = 0; break a } } default: { zn(c[e >> 2] | 0);c[f >> 2] = 1 } } while (0); l = h; return c[f >> 2] | 0 } function $u(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; i = g + 4 | 0; h = g; j = g + 8 | 0; c[i >> 2] = b; c[h >> 2] = e; a[j >> 0] = f; c[h >> 2] = c[h >> 2] & 7; c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] = c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] & -256 | (d[j >> 0] | 0) & 255; l = g; return } function av(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 4 | 0; f = i; h = i + 8 | 0; c[g >> 2] = b; c[f >> 2] = d; a[h >> 0] = e; c[f >> 2] = c[f >> 2] & 16777215; if ((c[f >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = a[h >> 0] | 0; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 20 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, a[h >> 0] | 0); l = i; return } } function bv(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 4 | 0; f = i; h = i + 8 | 0; c[f >> 2] = d; b[h >> 1] = e; switch (c[(c[f >> 2] | 0) + 340 >> 2] | 0) { case 0: { zn(c[f >> 2] | 0);c[g >> 2] = 1;h = c[g >> 2] | 0;l = i; return h | 0 } case 1: { e = c[f >> 2] | 0;do if ((c[(c[f >> 2] | 0) + 344 >> 2] | 0) >>> 0 < 8) cv(e, c[(c[f >> 2] | 0) + 344 >> 2] | 0, b[h >> 1] | 0); else { d = c[f >> 2] | 0; if ((c[e + 344 >> 2] | 0) >>> 0 < 16) { dv(d, (c[(c[f >> 2] | 0) + 344 >> 2] | 0) - 8 | 0, b[h >> 1] | 0); break } zn(d); c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } while (0); c[g >> 2] = 0;h = c[g >> 2] | 0;l = i; return h | 0 } case 2: { if (c[(c[f >> 2] | 0) + 344 >> 2] & 1 | 0 ? (c[c[f >> 2] >> 2] & 1 | 0) == 0 : 0) { pn(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 344 >> 2] | 0, 1, 1); c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } ev(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 344 >> 2] | 0, b[h >> 1] | 0);h = (c[f >> 2] | 0) + 372 | 0;c[h >> 2] = (c[h >> 2] | 0) + 4; if (a[(c[f >> 2] | 0) + 336 >> 0] | 0) { qn(c[f >> 2] | 0); c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[g >> 2] = 0; h = c[g >> 2] | 0; l = i; return h | 0 } } default: { zn(c[f >> 2] | 0);c[g >> 2] = 1;h = c[g >> 2] | 0;l = i; return h | 0 } } return 0 } function cv(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; i = g + 4 | 0; h = g; j = g + 8 | 0; c[i >> 2] = a; c[h >> 2] = d; b[j >> 1] = f; c[h >> 2] = c[h >> 2] & 7; c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] = c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] & -65536 | (e[j >> 1] | 0) & 65535; l = g; return } function dv(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; g = i + 4 | 0; h = i; j = i + 8 | 0; c[g >> 2] = a; c[h >> 2] = d; b[j >> 1] = f; c[h >> 2] = c[h >> 2] & 7; c[(c[g >> 2] | 0) + 120 + (c[h >> 2] << 2) >> 2] = (e[j >> 1] | 0) & 65535; if (!((e[j >> 1] | 0) & 32768)) { l = i; return } j = (c[g >> 2] | 0) + 120 + (c[h >> 2] << 2) | 0; c[j >> 2] = c[j >> 2] | -65536; l = i; return } function ev(d, f, g) { d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 4 | 0; h = k; j = k + 8 | 0; c[i >> 2] = d; c[h >> 2] = f; b[j >> 1] = g; c[h >> 2] = c[h >> 2] & 16777215; if (((c[h >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[i >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + (c[h >> 2] | 0) >> 0] = (e[j >> 1] | 0) >> 8; a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] = e[j >> 1] | 0; l = k; return } else { Sb[c[(c[i >> 2] | 0) + 24 >> 2] & 31](c[(c[i >> 2] | 0) + 4 >> 2] | 0, c[h >> 2] | 0, b[j >> 1] | 0); l = k; return } } function fv(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 8 | 0; e = h + 4 | 0; g = h; c[e >> 2] = b; c[g >> 2] = d; switch (c[(c[e >> 2] | 0) + 340 >> 2] | 0) { case 0: { zn(c[e >> 2] | 0);c[f >> 2] = 1;g = c[f >> 2] | 0;l = h; return g | 0 } case 1: { d = c[e >> 2] | 0;do if ((c[(c[e >> 2] | 0) + 344 >> 2] | 0) >>> 0 < 8) gv(d, c[(c[e >> 2] | 0) + 344 >> 2] | 0, c[g >> 2] | 0); else { b = c[e >> 2] | 0; if ((c[d + 344 >> 2] | 0) >>> 0 < 16) { Vu(b, (c[(c[e >> 2] | 0) + 344 >> 2] | 0) - 8 | 0, c[g >> 2] | 0); break } zn(b); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } while (0); c[f >> 2] = 0;g = c[f >> 2] | 0;l = h; return g | 0 } case 2: { if (c[(c[e >> 2] | 0) + 344 >> 2] & 1 | 0 ? (c[c[e >> 2] >> 2] & 1 | 0) == 0 : 0) { pn(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 344 >> 2] | 0, 1, 1); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } hv(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 344 >> 2] | 0, c[g >> 2] | 0);g = (c[e >> 2] | 0) + 372 | 0;c[g >> 2] = (c[g >> 2] | 0) + 8; if (a[(c[e >> 2] | 0) + 336 >> 0] | 0) { qn(c[e >> 2] | 0); c[f >> 2] = 1; g = c[f >> 2] | 0; l = h; return g | 0 } else { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } } default: { zn(c[e >> 2] | 0);c[f >> 2] = 1;g = c[f >> 2] | 0;l = h; return g | 0 } } return 0 } function gv(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function hv(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[g >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; if (((c[f >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 2) >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 3) >> 0] = c[h >> 2]; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 28 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0); l = i; return } } function iv(d, e) { d = d | 0; e = e | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; g = f + 4 | 0; h = f; c[g >> 2] = d; c[h >> 2] = e; c[c[g >> 2] >> 2] = c[h >> 2]; a[(c[g >> 2] | 0) + 4 >> 0] = 0; a[(c[g >> 2] | 0) + 5 >> 0] = 0; a[(c[g >> 2] | 0) + 6 >> 0] = 0; a[(c[g >> 2] | 0) + 7 >> 0] = 0; a[(c[g >> 2] | 0) + 8 >> 0] = 0; a[(c[g >> 2] | 0) + 9 >> 0] = 0; a[(c[g >> 2] | 0) + 10 >> 0] = 0; a[(c[g >> 2] | 0) + 11 >> 0] = 0; a[(c[g >> 2] | 0) + 12 >> 0] = 0; a[(c[g >> 2] | 0) + 13 >> 0] = 0; a[(c[g >> 2] | 0) + 14 >> 0] = 0; a[(c[g >> 2] | 0) + 15 >> 0] = 0; b[(c[g >> 2] | 0) + 16 >> 1] = 0; b[(c[g >> 2] | 0) + 18 >> 1] = 0; c[(c[g >> 2] | 0) + 20 >> 2] = 0; b[(c[g >> 2] | 0) + 24 >> 1] = 0; b[(c[g >> 2] | 0) + 26 >> 1] = 0; c[(c[g >> 2] | 0) + 28 >> 2] = 0; a[(c[g >> 2] | 0) + 32 >> 0] = 0; a[(c[g >> 2] | 0) + 33 >> 0] = 0; a[(c[g >> 2] | 0) + 34 >> 0] = 0; a[(c[g >> 2] | 0) + 35 >> 0] = 0; c[(c[g >> 2] | 0) + 36 >> 2] = 0; c[(c[g >> 2] | 0) + 40 >> 2] = 0; a[(c[g >> 2] | 0) + 44 >> 0] = 0; c[(c[g >> 2] | 0) + 48 >> 2] = 0; c[(c[g >> 2] | 0) + 52 >> 2] = 0; a[(c[g >> 2] | 0) + 56 >> 0] = 0; c[(c[g >> 2] | 0) + 60 >> 2] = 0; c[(c[g >> 2] | 0) + 64 >> 2] = 0; a[(c[g >> 2] | 0) + 68 >> 0] = 0; c[(c[g >> 2] | 0) + 72 >> 2] = 0; c[(c[g >> 2] | 0) + 76 >> 2] = 0; c[(c[g >> 2] | 0) + 80 >> 2] = 0; c[(c[g >> 2] | 0) + 84 >> 2] = 0; a[(c[g >> 2] | 0) + 88 >> 0] = 0; l = f; return } function jv(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 36 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 40 >> 2] = c[g >> 2]; l = e; return } function kv(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 48 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 52 >> 2] = c[g >> 2]; l = e; return } function lv(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 60 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 64 >> 2] = c[g >> 2]; l = e; return } function mv(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 72 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 76 >> 2] = c[g >> 2]; l = e; return } function nv(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 80 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 84 >> 2] = c[g >> 2]; l = e; return } function ov(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; e = h + 5 | 0; g = h; f = h + 4 | 0; c[g >> 2] = b; if (((d[(c[g >> 2] | 0) + 12 >> 0] | 0) & 28 | 0) != 28) { a[e >> 0] = 0; g = a[e >> 0] | 0; l = h; return g | 0 } a[f >> 0] = (d[(c[g >> 2] | 0) + 10 >> 0] | 0) >> 7 & 1; a[(c[g >> 2] | 0) + 10 >> 0] = (d[(c[g >> 2] | 0) + 10 >> 0] | 0) << 1 | (d[(c[g >> 2] | 0) + 10 >> 0] | 0) >> 7; a[(c[g >> 2] | 0) + 11 >> 0] = (d[(c[g >> 2] | 0) + 11 >> 0] | 0) + 1 & 7; if (!(d[(c[g >> 2] | 0) + 11 >> 0] | 0)) pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0 | 4) & 255); a[e >> 0] = a[f >> 0] | 0; g = a[e >> 0] | 0; l = h; return g | 0 } function pv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h; f = h + 4 | 0; c[g >> 2] = b; a[f >> 0] = e; a[f >> 0] = (d[f >> 0] | 0) & 127; if ((d[f >> 0] | 0) & (d[(c[g >> 2] | 0) + 15 >> 0] | 0) | 0) a[f >> 0] = d[f >> 0] | 0 | 128; a[(c[g >> 2] | 0) + 14 >> 0] = a[f >> 0] | 0; qv(c[g >> 2] | 0, ((d[(c[g >> 2] | 0) + 14 >> 0] | 0) & 128 | 0) != 0 & 255); l = h; return } function qv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h; f = h + 4 | 0; c[g >> 2] = b; a[f >> 0] = e; if ((d[(c[g >> 2] | 0) + 88 >> 0] | 0 | 0) == (d[f >> 0] | 0 | 0)) { l = h; return } a[(c[g >> 2] | 0) + 88 >> 0] = a[f >> 0] | 0; if (!(c[(c[g >> 2] | 0) + 84 >> 2] | 0)) { l = h; return } Qb[c[(c[g >> 2] | 0) + 84 >> 2] & 255](c[(c[g >> 2] | 0) + 80 >> 2] | 0, a[f >> 0] | 0); l = h; return } function rv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h; f = h + 4 | 0; c[g >> 2] = b; a[f >> 0] = e; if (((d[(c[g >> 2] | 0) + 12 >> 0] | 0) & 28 | 0) != 12) { l = h; return } a[(c[g >> 2] | 0) + 10 >> 0] = (d[(c[g >> 2] | 0) + 10 >> 0] | 0) << 1 | (d[f >> 0] | 0 | 0) != 0; a[(c[g >> 2] | 0) + 11 >> 0] = (d[(c[g >> 2] | 0) + 11 >> 0] | 0) + 1 & 7; if (!(d[(c[g >> 2] | 0) + 11 >> 0] | 0)) pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0 | 4) & 255); pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0 | 16) & 255); l = h; return } function sv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; g = f; h = f + 4 | 0; c[g >> 2] = b; a[h >> 0] = e; a[(c[g >> 2] | 0) + 4 >> 0] = a[h >> 0] | 0; tv(c[g >> 2] | 0); pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0) & -4 & 255); l = f; return } function tv(b) { b = b | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 4 | 0; c[f >> 2] = b; a[e >> 0] = (d[(c[f >> 2] | 0) + 4 >> 0] | 0) & (d[(c[f >> 2] | 0) + 8 >> 0] | 0); a[e >> 0] = d[e >> 0] | 0 | (d[(c[f >> 2] | 0) + 6 >> 0] | 0) & ~(d[(c[f >> 2] | 0) + 8 >> 0] | 0); if (!(c[(c[f >> 2] | 0) + 40 >> 2] | 0)) { l = g; return } Qb[c[(c[f >> 2] | 0) + 40 >> 2] & 255](c[(c[f >> 2] | 0) + 36 >> 2] | 0, a[e >> 0] | 0); l = g; return } function uv(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 8 >> 0] = a[g >> 0] | 0; tv(c[f >> 2] | 0); l = e; return } function vv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; g = f; h = f + 4 | 0; c[g >> 2] = b; a[h >> 0] = e; a[(c[g >> 2] | 0) + 5 >> 0] = a[h >> 0] | 0; wv(c[g >> 2] | 0); pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0) & -25 & 255); l = f; return } function wv(b) { b = b | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 4 | 0; c[f >> 2] = b; a[e >> 0] = (d[(c[f >> 2] | 0) + 5 >> 0] | 0) & (d[(c[f >> 2] | 0) + 9 >> 0] | 0); a[e >> 0] = d[e >> 0] | 0 | (d[(c[f >> 2] | 0) + 7 >> 0] | 0) & ~(d[(c[f >> 2] | 0) + 9 >> 0] | 0); if (!(c[(c[f >> 2] | 0) + 52 >> 2] | 0)) { l = g; return } Qb[c[(c[f >> 2] | 0) + 52 >> 2] & 255](c[(c[f >> 2] | 0) + 48 >> 2] | 0, a[e >> 0] | 0); l = g; return } function xv(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 9 >> 0] = a[g >> 0] | 0; wv(c[f >> 2] | 0); l = e; return } function yv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h; f = h + 5 | 0; i = h + 4 | 0; c[g >> 2] = b; a[f >> 0] = e; a[i >> 0] = (d[(c[g >> 2] | 0) + 32 >> 0] | 0 | 0) != 0; a[f >> 0] = (d[f >> 0] | 0 | 0) != 0; a[(c[g >> 2] | 0) + 32 >> 0] = a[f >> 0] | 0; if ((d[i >> 0] | 0 | 0) == (d[f >> 0] | 0 | 0)) { l = h; return } if (((d[f >> 0] | 0 | 0) != 0 | 0) != (((d[(c[g >> 2] | 0) + 13 >> 0] | 0) & 1 | 0) != 0 | 0)) { l = h; return } pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0 | 2) & 255); l = h; return } function zv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i; g = i + 5 | 0; f = i + 4 | 0; c[h >> 2] = b; a[g >> 0] = e; a[f >> 0] = (d[(c[h >> 2] | 0) + 33 >> 0] | 0 | 0) != 0; a[g >> 0] = (d[g >> 0] | 0 | 0) != 0; a[(c[h >> 2] | 0) + 33 >> 0] = a[g >> 0] | 0; if ((d[(c[h >> 2] | 0) + 13 >> 0] | 0) & 8 | 0) { l = i; return } if ((d[f >> 0] | 0 | 0) == (d[g >> 0] | 0 | 0)) { l = i; return } if (((d[g >> 0] | 0 | 0) != 0 | 0) != (((d[(c[h >> 2] | 0) + 13 >> 0] | 0) & 4 | 0) != 0 | 0)) { l = i; return } pv(c[h >> 2] | 0, (d[(c[h >> 2] | 0) + 14 >> 0] | 0 | 1) & 255); l = i; return } function Av(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 6 >> 0] = a[g >> 0] | 0; tv(c[f >> 2] | 0); l = e; return } function Bv(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 7 >> 0] = a[g >> 0] | 0; wv(c[f >> 2] | 0); l = e; return } function Cv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h; f = h + 4 | 0; c[g >> 2] = b; a[f >> 0] = e; if (((d[(c[g >> 2] | 0) + 12 >> 0] | 0) & 28 | 0) != 12) { l = h; return } a[(c[g >> 2] | 0) + 10 >> 0] = a[f >> 0] | 0; a[(c[g >> 2] | 0) + 11 >> 0] = 0; pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0 | 4) & 255); l = h; return } function Dv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; i = h; f = h + 8 | 0; c[g >> 2] = b; c[i >> 2] = e; c[i >> 2] = Ev(c[g >> 2] | 0, c[i >> 2] | 0) | 0; do switch (c[i >> 2] | 0) { case 0: { a[f >> 0] = Fv(c[g >> 2] | 0) | 0; break } case 1: { a[f >> 0] = Gv(c[g >> 2] | 0, 1) | 0; break } case 2: { a[f >> 0] = a[(c[g >> 2] | 0) + 9 >> 0] | 0; break } case 3: { a[f >> 0] = a[(c[g >> 2] | 0) + 8 >> 0] | 0; break } case 4: { a[f >> 0] = Hv(c[g >> 2] | 0) | 0; break } case 5: { a[f >> 0] = Iv(c[g >> 2] | 0) | 0; break } case 6: { a[f >> 0] = Jv(c[g >> 2] | 0) | 0; break } case 7: { a[f >> 0] = Kv(c[g >> 2] | 0) | 0; break } case 8: { a[f >> 0] = Lv(c[g >> 2] | 0) | 0; break } case 9: { a[f >> 0] = Mv(c[g >> 2] | 0) | 0; break } case 10: { a[f >> 0] = Nv(c[g >> 2] | 0) | 0; break } case 11: { a[f >> 0] = Ov(c[g >> 2] | 0) | 0; break } case 12: { a[f >> 0] = Pv(c[g >> 2] | 0) | 0; break } case 13: { a[f >> 0] = a[(c[g >> 2] | 0) + 14 >> 0] | 0; break } case 14: { a[f >> 0] = d[(c[g >> 2] | 0) + 15 >> 0] | 0 | 128; break } case 15: { a[f >> 0] = Gv(c[g >> 2] | 0, 0) | 0; break } default: a[f >> 0] = -86 } while (0); l = h; return a[f >> 0] | 0 } function Ev(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; l = f; return (c[e >> 2] | 0) >>> (c[c[d >> 2] >> 2] | 0) | 0 } function Fv(b) { b = b | 0; var e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; g = f; e = f + 4 | 0; c[g >> 2] = b; pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0) & -25 & 255); a[e >> 0] = (d[(c[g >> 2] | 0) + 5 >> 0] | 0) & (d[(c[g >> 2] | 0) + 9 >> 0] | 0); a[e >> 0] = d[e >> 0] | 0 | (d[(c[g >> 2] | 0) + 7 >> 0] | 0) & ~(d[(c[g >> 2] | 0) + 9 >> 0] | 0); l = f; return a[e >> 0] | 0 } function Gv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; i = h; f = h + 8 | 0; c[g >> 2] = b; c[i >> 2] = e; if (c[i >> 2] | 0) pv(c[g >> 2] | 0, (d[(c[g >> 2] | 0) + 14 >> 0] | 0) & -4 & 255); a[f >> 0] = (d[(c[g >> 2] | 0) + 4 >> 0] | 0) & (d[(c[g >> 2] | 0) + 8 >> 0] | 0); a[f >> 0] = d[f >> 0] | 0 | (d[(c[g >> 2] | 0) + 6 >> 0] | 0) & ~(d[(c[g >> 2] | 0) + 8 >> 0] | 0); l = h; return a[f >> 0] | 0 } function Hv(a) { a = a | 0; var b = 0, f = 0; f = l; l = l + 16 | 0; b = f; c[b >> 2] = a; pv(c[b >> 2] | 0, (d[(c[b >> 2] | 0) + 14 >> 0] | 0) & -65 & 255); l = f; return (e[(c[b >> 2] | 0) + 18 >> 1] | 0) & 255 | 0 } function Iv(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return (e[(c[b >> 2] | 0) + 18 >> 1] | 0) >> 8 & 255 | 0 } function Jv(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return (e[(c[b >> 2] | 0) + 16 >> 1] | 0) & 255 | 0 } function Kv(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return (e[(c[b >> 2] | 0) + 16 >> 1] | 0) >> 8 & 255 | 0 } function Lv(a) { a = a | 0; var b = 0, f = 0; f = l; l = l + 16 | 0; b = f; c[b >> 2] = a; pv(c[b >> 2] | 0, (d[(c[b >> 2] | 0) + 14 >> 0] | 0) & -33 & 255); l = f; return (e[(c[b >> 2] | 0) + 26 >> 1] | 0) & 255 | 0 } function Mv(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return (e[(c[b >> 2] | 0) + 26 >> 1] | 0) >> 8 & 255 | 0 } function Nv(b) { b = b | 0; var e = 0, f = 0; f = l; l = l + 16 | 0; e = f; c[e >> 2] = b; pv(c[e >> 2] | 0, (d[(c[e >> 2] | 0) + 14 >> 0] | 0) & -5 & 255); a[(c[e >> 2] | 0) + 11 >> 0] = 0; l = f; return a[(c[e >> 2] | 0) + 10 >> 0] | 0 } function Ov(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return a[(c[d >> 2] | 0) + 12 >> 0] | 0 } function Pv(b) { b = b | 0; var d = 0, e = 0; e = l; l = l + 16 | 0; d = e; c[d >> 2] = b; l = e; return a[(c[d >> 2] | 0) + 13 >> 0] | 0 } function Qv(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; a = (Dv(c[f >> 2] | 0, c[e >> 2] | 0) | 0) & 255; l = d; return a | 0 } function Rv(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; a = (Dv(c[f >> 2] | 0, c[e >> 2] | 0) | 0) & 255; l = d; return a | 0 } function Sv(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; j = i; g = i + 8 | 0; c[h >> 2] = b; c[j >> 2] = e; a[g >> 0] = f; c[j >> 2] = Ev(c[h >> 2] | 0, c[j >> 2] | 0) | 0; do switch (c[j >> 2] | 0) { case 0: { vv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 1: { sv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 2: { xv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 3: { uv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 4: { Tv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 5: { Uv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 6: { Tv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 7: { Vv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 8: { Wv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 9: { Xv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 10: { Yv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 11: { Zv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 12: { _v(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 13: { pv(c[h >> 2] | 0, (d[(c[h >> 2] | 0) + 14 >> 0] | 0) & ~(d[g >> 0] | 0) & 127);l = i; return } case 14: { $v(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } case 15: { sv(c[h >> 2] | 0, a[g >> 0] | 0);l = i; return } default: { l = i; return } } while (0) } function Tv(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0; h = l; l = l + 16 | 0; j = h; i = h + 4 | 0; c[j >> 2] = f; a[i >> 0] = g; f = (c[j >> 2] | 0) + 16 | 0; b[f >> 1] = (e[f >> 1] | 0) & 65280; f = (c[j >> 2] | 0) + 16 | 0; b[f >> 1] = e[f >> 1] | 0 | (d[i >> 0] | 0) & 255; l = h; return } function Uv(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; h = i; j = i + 4 | 0; c[h >> 2] = f; a[j >> 0] = g; f = (c[h >> 2] | 0) + 16 | 0; b[f >> 1] = (e[f >> 1] | 0) & 255; f = (c[h >> 2] | 0) + 16 | 0; b[f >> 1] = e[f >> 1] | 0 | ((d[j >> 0] | 0) & 255) << 8; b[(c[h >> 2] | 0) + 18 >> 1] = b[(c[h >> 2] | 0) + 16 >> 1] | 0; if ((d[(c[h >> 2] | 0) + 12 >> 0] | 0) & 64 | 0) { f = c[h >> 2] | 0; j = c[h >> 2] | 0; j = j + 14 | 0; j = a[j >> 0] | 0; j = j & 255; j = j & -65; j = j & 255; pv(f, j); l = i; return } c[(c[h >> 2] | 0) + 20 >> 2] = 1; f = c[h >> 2] | 0; j = c[h >> 2] | 0; j = j + 14 | 0; j = a[j >> 0] | 0; j = j & 255; j = j & -65; j = j & 255; pv(f, j); l = i; return } function Vv(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0; h = l; l = l + 16 | 0; j = h; i = h + 4 | 0; c[j >> 2] = f; a[i >> 0] = g; f = (c[j >> 2] | 0) + 16 | 0; b[f >> 1] = (e[f >> 1] | 0) & 255; f = (c[j >> 2] | 0) + 16 | 0; b[f >> 1] = e[f >> 1] | 0 | ((d[i >> 0] | 0) & 255) << 8; l = h; return } function Wv(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0; h = l; l = l + 16 | 0; j = h; i = h + 4 | 0; c[j >> 2] = f; a[i >> 0] = g; f = (c[j >> 2] | 0) + 24 | 0; b[f >> 1] = (e[f >> 1] | 0) & 65280; f = (c[j >> 2] | 0) + 24 | 0; b[f >> 1] = e[f >> 1] | 0 | (d[i >> 0] | 0) & 255; l = h; return } function Xv(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; h = i; j = i + 4 | 0; c[h >> 2] = f; a[j >> 0] = g; f = (c[h >> 2] | 0) + 24 | 0; b[f >> 1] = (e[f >> 1] | 0) & 255; f = (c[h >> 2] | 0) + 24 | 0; b[f >> 1] = e[f >> 1] | 0 | ((d[j >> 0] | 0) & 255) << 8; b[(c[h >> 2] | 0) + 26 >> 1] = b[(c[h >> 2] | 0) + 24 >> 1] | 0; if ((d[(c[h >> 2] | 0) + 12 >> 0] | 0) & 32 | 0) { f = c[h >> 2] | 0; j = c[h >> 2] | 0; j = j + 14 | 0; j = a[j >> 0] | 0; j = j & 255; j = j & -33; j = j & 255; pv(f, j); l = i; return } c[(c[h >> 2] | 0) + 28 >> 2] = 1; f = c[h >> 2] | 0; j = c[h >> 2] | 0; j = j + 14 | 0; j = a[j >> 0] | 0; j = j & 255; j = j & -33; j = j & 255; pv(f, j); l = i; return } function Yv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g; h = g + 4 | 0; c[f >> 2] = b; a[h >> 0] = e; pv(c[f >> 2] | 0, (d[(c[f >> 2] | 0) + 14 >> 0] | 0) & -5 & 255); a[(c[f >> 2] | 0) + 10 >> 0] = a[h >> 0] | 0; a[(c[f >> 2] | 0) + 11 >> 0] = 0; if (((d[(c[f >> 2] | 0) + 12 >> 0] | 0) & 28 | 0) != 28) { l = g; return } if (!(c[(c[f >> 2] | 0) + 76 >> 2] | 0)) { l = g; return } bw(c[f >> 2] | 0, a[(c[f >> 2] | 0) + 10 >> 0] | 0); pv(c[f >> 2] | 0, (d[(c[f >> 2] | 0) + 14 >> 0] | 0 | 4) & 255); l = g; return } function Zv(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g; h = g + 4 | 0; c[f >> 2] = b; a[h >> 0] = e; a[(c[f >> 2] | 0) + 12 >> 0] = a[h >> 0] | 0; if ((d[(c[f >> 2] | 0) + 12 >> 0] | 0) & 28 | 0) { h = c[f >> 2] | 0; aw(h); l = g; return } a[(c[f >> 2] | 0) + 11 >> 0] = 0; h = c[f >> 2] | 0; aw(h); l = g; return } function _v(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 13 >> 0] = a[g >> 0] | 0; aw(c[f >> 2] | 0); l = e; return } function $v(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g; h = g + 4 | 0; c[f >> 2] = b; a[h >> 0] = e; e = d[h >> 0] | 0; if ((d[h >> 0] | 0) & 128 | 0) { b = (c[f >> 2] | 0) + 15 | 0; e = d[b >> 0] | 0 | e & 127 } else { b = (c[f >> 2] | 0) + 15 | 0; e = (d[b >> 0] | 0) & (~e & 127) } a[b >> 0] = e; pv(c[f >> 2] | 0, a[(c[f >> 2] | 0) + 14 >> 0] | 0); l = g; return } function aw(b) { b = b | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 4 | 0; c[f >> 2] = b; b = c[f >> 2] | 0; do if ((d[(c[f >> 2] | 0) + 12 >> 0] | 0) & 28 | 0) if ((d[b + 12 >> 0] | 0) & 16 | 0) { a[e >> 0] = ((d[(c[f >> 2] | 0) + 10 >> 0] | 0) & 1 | 0) != 0; break } else { a[e >> 0] = 1; break } else { if (!((d[b + 13 >> 0] | 0) & 128)) { a[e >> 0] = 1; break } if (((d[(c[f >> 2] | 0) + 13 >> 0] | 0) & 96 | 0) == 96) { a[e >> 0] = 1; break } if (((d[(c[f >> 2] | 0) + 13 >> 0] | 0) & 96 | 0) == 64) { a[e >> 0] = 0; break } else { a[e >> 0] = 1; break } } while (0); if ((d[e >> 0] | 0 | 0) == (d[(c[f >> 2] | 0) + 68 >> 0] | 0 | 0)) { l = g; return } a[(c[f >> 2] | 0) + 68 >> 0] = a[e >> 0] | 0; if (!(c[(c[f >> 2] | 0) + 64 >> 2] | 0)) { l = g; return } Qb[c[(c[f >> 2] | 0) + 64 >> 2] & 255](c[(c[f >> 2] | 0) + 60 >> 2] | 0, a[e >> 0] | 0); l = g; return } function bw(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 4 | 0; c[f >> 2] = b; a[e >> 0] = d; if (!(c[(c[f >> 2] | 0) + 76 >> 2] | 0)) { l = g; return } Qb[c[(c[f >> 2] | 0) + 76 >> 2] & 255](c[(c[f >> 2] | 0) + 72 >> 2] | 0, a[e >> 0] | 0); l = g; return } function cw(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; j = g + 4 | 0; i = g; h = g + 8 | 0; c[j >> 2] = a; c[i >> 2] = d; b[h >> 1] = f; Sv(c[j >> 2] | 0, c[i >> 2] | 0, (e[h >> 1] | 0) & 255); l = g; return } function dw(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; h = e + 8 | 0; g = e + 4 | 0; f = e; c[h >> 2] = a; c[g >> 2] = b; c[f >> 2] = d; Sv(c[h >> 2] | 0, c[g >> 2] | 0, c[f >> 2] & 255); l = e; return } function ew(d) { d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = d; a[(c[f >> 2] | 0) + 4 >> 0] = 0; a[(c[f >> 2] | 0) + 5 >> 0] = 0; a[(c[f >> 2] | 0) + 8 >> 0] = 0; a[(c[f >> 2] | 0) + 9 >> 0] = 0; a[(c[f >> 2] | 0) + 10 >> 0] = 0; a[(c[f >> 2] | 0) + 11 >> 0] = 0; a[(c[f >> 2] | 0) + 13 >> 0] = 0; a[(c[f >> 2] | 0) + 12 >> 0] = 0; a[(c[f >> 2] | 0) + 14 >> 0] = 0; a[(c[f >> 2] | 0) + 15 >> 0] = 0; b[(c[f >> 2] | 0) + 16 >> 1] = 0; b[(c[f >> 2] | 0) + 18 >> 1] = 0; c[(c[f >> 2] | 0) + 20 >> 2] = 0; b[(c[f >> 2] | 0) + 24 >> 1] = 0; b[(c[f >> 2] | 0) + 26 >> 1] = 0; c[(c[f >> 2] | 0) + 28 >> 2] = 0; tv(c[f >> 2] | 0); wv(c[f >> 2] | 0); pv(c[f >> 2] | 0, a[(c[f >> 2] | 0) + 14 >> 0] | 0); l = e; return } function fw(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; gw(c[f >> 2] | 0, c[e >> 2] | 0); hw(c[f >> 2] | 0, c[e >> 2] | 0); l = d; return } function gw(a, f) { a = a | 0; f = f | 0; var g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; g = i; c[h >> 2] = a; c[g >> 2] = f; if ((c[g >> 2] | 0) >>> 0 >= (e[(c[h >> 2] | 0) + 18 >> 1] | 0) >>> 0 ? e[(c[h >> 2] | 0) + 18 >> 1] | 0 | 0 : 0) { a = e[(c[h >> 2] | 0) + 18 >> 1] | 0; f = c[g >> 2] | 0; if (!((d[(c[h >> 2] | 0) + 12 >> 0] | 0) & 64)) { b[(c[h >> 2] | 0) + 18 >> 1] = a - f; if (!(c[(c[h >> 2] | 0) + 20 >> 2] | 0)) { l = i; return } c[(c[h >> 2] | 0) + 20 >> 2] = 0; pv(c[h >> 2] | 0, (d[(c[h >> 2] | 0) + 14 >> 0] | 0 | 64) & 255); l = i; return } c[g >> 2] = f - a; pv(c[h >> 2] | 0, (d[(c[h >> 2] | 0) + 14 >> 0] | 0 | 64) & 255); f = c[g >> 2] | 0; if ((e[(c[h >> 2] | 0) + 16 >> 1] | 0 | 0) > 0) c[g >> 2] = (f >>> 0) % ((e[(c[h >> 2] | 0) + 16 >> 1] | 0) >>> 0) | 0; else c[g >> 2] = f & 65535; b[(c[h >> 2] | 0) + 18 >> 1] = (e[(c[h >> 2] | 0) + 16 >> 1] | 0) - (c[g >> 2] | 0); l = i; return } b[(c[h >> 2] | 0) + 18 >> 1] = (e[(c[h >> 2] | 0) + 18 >> 1] | 0) - (c[g >> 2] | 0); l = i; return } function hw(a, f) { a = a | 0; f = f | 0; var g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; g = i; c[h >> 2] = a; c[g >> 2] = f; if ((c[g >> 2] | 0) >>> 0 >= (e[(c[h >> 2] | 0) + 26 >> 1] | 0) >>> 0 ? e[(c[h >> 2] | 0) + 26 >> 1] | 0 | 0 : 0) { if ((d[(c[h >> 2] | 0) + 12 >> 0] | 0) & 32 | 0) { l = i; return } b[(c[h >> 2] | 0) + 26 >> 1] = (e[(c[h >> 2] | 0) + 26 >> 1] | 0) - (c[g >> 2] | 0); if (!(c[(c[h >> 2] | 0) + 28 >> 2] | 0)) { l = i; return } c[(c[h >> 2] | 0) + 28 >> 2] = 0; pv(c[h >> 2] | 0, (d[(c[h >> 2] | 0) + 14 >> 0] | 0 | 32) & 255); l = i; return } b[(c[h >> 2] | 0) + 26 >> 1] = (e[(c[h >> 2] | 0) + 26 >> 1] | 0) - (c[g >> 2] | 0); l = i; return } function iw(b) { b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; c[c[e >> 2] >> 2] = 0; c[(c[e >> 2] | 0) + 2716 >> 2] = 0; jw(c[e >> 2] | 0, 0); jw(c[e >> 2] | 0, 1); c[(c[e >> 2] | 0) + 2720 >> 2] = 0; c[(c[e >> 2] | 0) + 2724 >> 2] = 0; a[(c[e >> 2] | 0) + 2728 >> 0] = 0; l = d; return } function jw(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; h = e + 8 | 0; g = e + 4 | 0; f = e; c[h >> 2] = b; c[g >> 2] = d; c[f >> 2] = (c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0); a[(c[f >> 2] | 0) + 34 >> 0] = 1; a[(c[f >> 2] | 0) + 35 >> 0] = 1; c[(c[f >> 2] | 0) + 56 >> 2] = 0; c[(c[f >> 2] | 0) + 60 >> 2] = 16384; c[(c[f >> 2] | 0) + 64 >> 2] = 0; c[(c[f >> 2] | 0) + 68 >> 2] = 1; c[(c[f >> 2] | 0) + 72 >> 2] = 0; c[(c[f >> 2] | 0) + 76 >> 2] = 1; c[(c[f >> 2] | 0) + 80 >> 2] = 0; c[(c[f >> 2] | 0) + 84 >> 2] = 0; c[(c[f >> 2] | 0) + 88 >> 2] = 0; c[(c[f >> 2] | 0) + 704 >> 2] = 0; c[(c[f >> 2] | 0) + 708 >> 2] = 0; c[(c[f >> 2] | 0) + 1324 >> 2] = 0; c[(c[f >> 2] | 0) + 1328 >> 2] = 0; c[(c[f >> 2] | 0) + 1332 >> 2] = 0; c[(c[f >> 2] | 0) + 1336 >> 2] = 0; c[(c[f >> 2] | 0) + 1340 >> 2] = 0; c[(c[f >> 2] | 0) + 1344 >> 2] = 0; c[(c[f >> 2] | 0) + 1348 >> 2] = 0; c[(c[f >> 2] | 0) + 1352 >> 2] = 0; l = e; return } function kw(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 2720 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 2724 >> 2] = c[g >> 2]; l = e; return } function lw(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if ((c[f >> 2] | 0) >>> 0 >= 2) { l = j; return } c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1324 >> 2] = c[g >> 2]; c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1328 >> 2] = c[h >> 2]; l = j; return } function mw(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if ((c[f >> 2] | 0) >>> 0 >= 2) { l = j; return } c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1332 >> 2] = c[g >> 2]; c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1336 >> 2] = c[h >> 2]; l = j; return } function nw(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if ((c[f >> 2] | 0) >>> 0 >= 2) { l = j; return } c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1340 >> 2] = c[g >> 2]; c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1344 >> 2] = c[h >> 2]; l = j; return } function ow(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j; c[i >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if ((c[f >> 2] | 0) >>> 0 >= 2) { l = j; return } c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1348 >> 2] = c[g >> 2]; c[(c[i >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 1352 >> 2] = c[h >> 2]; l = j; return } function pw(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; g = j + 4 | 0; i = j; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; if ((c[f >> 2] | 0) >>> 0 > 1) { l = j; return } c[(c[h >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 64 >> 2] = 0; c[(c[h >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 68 >> 2] = (c[g >> 2] | 0) >>> 0 < 1 ? 1 : c[g >> 2] | 0; c[(c[h >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 72 >> 2] = 0; c[(c[h >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 76 >> 2] = (c[i >> 2] | 0) >>> 0 < 1 ? 1 : c[i >> 2] | 0; l = j; return } function qw(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; g = f + 12 | 0; j = f + 8 | 0; i = f + 4 | 0; h = f; c[g >> 2] = a; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[(c[g >> 2] | 0) + 2716 >> 2] = c[j >> 2]; c[(c[g >> 2] | 0) + 4 + 80 >> 2] = c[i >> 2]; c[(c[g >> 2] | 0) + 4 + 1356 + 80 >> 2] = c[h >> 2]; l = f; return } function rw() { c[13635] = 1; return } function sw(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; k = l; l = l + 16 | 0; i = k + 8 | 0; g = k + 4 | 0; h = k; j = k + 12 | 0; c[i >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; a[j >> 0] = f; c[g >> 2] = c[g >> 2] & 1; do switch (c[h >> 2] | 0) { case 0: { tw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 1: { uw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 2: { vw(c[i >> 2] | 0, a[j >> 0] | 0); break } case 3: { ww(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 4: { xw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 5: { yw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 6: { zw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 8: { Aw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 9: { Bw(c[i >> 2] | 0, a[j >> 0] | 0); break } case 10: { Cw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 11: { Dw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 12: { Ew(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 13: { Fw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 14: { Gw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } case 15: { Hw(c[i >> 2] | 0, c[g >> 2] | 0, a[j >> 0] | 0); break } default: a[(c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + (c[h >> 2] & 15) >> 0] = a[j >> 0] | 0 } while (0); if (!(c[h >> 2] | 0)) { l = k; return } c[c[i >> 2] >> 2] = 0; l = k; return } function tw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; i = j; h = j + 8 | 0; g = j + 4 | 0; k = j + 12 | 0; c[h >> 2] = b; c[g >> 2] = e; a[k >> 0] = f; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) >> 0] = a[k >> 0] | 0; c[c[h >> 2] >> 2] = (d[k >> 0] | 0) & 7; switch ((d[k >> 0] | 0) >> 3 & 7 | 0) { case 1: { k = c[h >> 2] | 0;c[k >> 2] = (c[k >> 2] | 0) + 8;l = j; return } case 2: { Pw(c[h >> 2] | 0, c[g >> 2] | 0, 1);l = j; return } case 3: { k = c[7422] | 0;c[i >> 2] = (c[g >> 2] | 0) == 0 ? 65 : 66;kQ(k, 46019, i) | 0;Tw(c[h >> 2] | 0, c[g >> 2] | 0);l = j; return } case 4: { if (((d[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 1 >> 0] | 0) & 24 | 0) != 8) { l = j; return } a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 36 >> 0] = 1;l = j; return } case 5: { Pw(c[h >> 2] | 0, c[g >> 2] | 0, 2);l = j; return } case 6: { k = (c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 + 1 | 0;a[k >> 0] = (d[k >> 0] | 0) & -129;k = (c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 + 1 | 0;a[k >> 0] = (d[k >> 0] | 0) & -33;l = j; return } case 7: case 0: { l = j; return } default: {} } } function uw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; g = i; j = i + 8 | 0; c[h >> 2] = b; c[g >> 2] = e; a[j >> 0] = f; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 1 >> 0] = a[j >> 0] | 0; if (((d[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 1 >> 0] | 0) & 24 | 0) != 8) { f = c[h >> 2] | 0; j = c[g >> 2] | 0; Nw(f, j, 0); l = i; return } a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 36 >> 0] = 1; f = c[h >> 2] | 0; j = c[g >> 2] | 0; Nw(f, j, 0); l = i; return } function vw(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e; g = e + 4 | 0; c[f >> 2] = b; a[g >> 0] = d; a[(c[f >> 2] | 0) + 4 + 2 >> 0] = a[g >> 0] | 0; a[(c[f >> 2] | 0) + 4 + 1356 + 2 >> 0] = a[g >> 0] | 0; a[(c[f >> 2] | 0) + 4 + 16 + 2 >> 0] = a[g >> 0] | 0; a[(c[f >> 2] | 0) + 4 + 1356 + 16 + 2 >> 0] = a[g >> 0] | 0; l = e; return } function ww(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 8 | 0; h = k + 4 | 0; j = k + 12 | 0; g = k; c[i >> 2] = b; c[h >> 2] = e; a[j >> 0] = f; c[g >> 2] = (c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); if ((d[j >> 0] | 0) & 16 | 0) { f = (c[g >> 2] | 0) + 16 | 0; a[f >> 0] = d[f >> 0] | 0 | 16 } if ((((d[(c[g >> 2] | 0) + 4 >> 0] | 0) & 48 | 0) == 32 ? ((d[j >> 0] | 0) ^ (d[(c[g >> 2] | 0) + 3 >> 0] | 0)) & 1 | 0 : 0) ? (f = (c[g >> 2] | 0) + 16 | 0, a[f >> 0] = d[f >> 0] | 0 | 16, ((d[j >> 0] | 0) & 1 | 0) == 0) : 0) { if ((c[(c[g >> 2] | 0) + 708 >> 2] | 0) != (c[(c[g >> 2] | 0) + 704 >> 2] | 0) ? c[(c[g >> 2] | 0) + 708 >> 2] | 0 : 0) { c[(c[g >> 2] | 0) + 708 >> 2] = 0; c[(c[g >> 2] | 0) + 704 >> 2] = 0 } f = (c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 16 + 1 | 0; a[f >> 0] = (d[f >> 0] | 0) & -129 } a[(c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 3 >> 0] = a[j >> 0] | 0; l = k; return } function xw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; g = i; j = i + 8 | 0; c[h >> 2] = b; c[g >> 2] = e; a[j >> 0] = f; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 4 >> 0] = a[j >> 0] | 0; if (((d[j >> 0] | 0) >> 4 & 3 | 0) == 16) { f = c[h >> 2] | 0; j = c[g >> 2] | 0; Iw(f, j); l = i; return } f = (c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 + 1 | 0; a[f >> 0] = (d[f >> 0] | 0) & -129; f = c[h >> 2] | 0; j = c[g >> 2] | 0; Iw(f, j); l = i; return } function yw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; j = m + 8 | 0; h = m + 4 | 0; k = m + 13 | 0; g = m; i = m + 12 | 0; c[j >> 2] = b; c[h >> 2] = e; a[k >> 0] = f; c[g >> 2] = (c[j >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); a[i >> 0] = a[(c[g >> 2] | 0) + 5 >> 0] | 0; a[(c[g >> 2] | 0) + 5 >> 0] = a[k >> 0] | 0; if ((d[i >> 0] ^ d[k >> 0]) & 2 | 0) Rw(c[j >> 2] | 0, c[h >> 2] | 0, (d[k >> 0] & 2 | 0) != 0 & 255); if (((d[i >> 0] ^ d[k >> 0]) & 8 | 0 ? (d[k >> 0] & 8 | 0) == 0 : 0) ? a[(c[g >> 2] | 0) + 37 >> 0] | 0 : 0) Sw(c[j >> 2] | 0, c[h >> 2] | 0); Iw(c[j >> 2] | 0, c[h >> 2] | 0); l = m; return } function zw(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f; i = f + 8 | 0; c[h >> 2] = b; c[g >> 2] = d; a[i >> 0] = e; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 6 >> 0] = a[i >> 0] | 0; l = f; return } function Aw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; g = l; l = l + 16 | 0; i = g + 8 | 0; h = g + 4 | 0; k = g + 12 | 0; j = g; c[i >> 2] = b; c[h >> 2] = e; a[k >> 0] = f; c[j >> 2] = (c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); a[(c[j >> 2] | 0) + 8 >> 0] = a[k >> 0] | 0; f = (c[j >> 2] | 0) + 16 | 0; a[f >> 0] = (d[f >> 0] | 0) & -5; a[(c[j >> 2] | 0) + 34 >> 0] = 0; Pw(c[i >> 2] | 0, c[h >> 2] | 0, 2); Qw(c[i >> 2] | 0, c[h >> 2] | 0); l = g; return } function Bw(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; f = g; h = g + 5 | 0; i = g + 4 | 0; c[f >> 2] = b; a[h >> 0] = e; a[i >> 0] = a[(c[f >> 2] | 0) + 4 + 9 >> 0] | 0; a[(c[f >> 2] | 0) + 4 + 9 >> 0] = a[h >> 0] | 0; a[(c[f >> 2] | 0) + 4 + 1356 + 9 >> 0] = a[h >> 0] | 0; if (!(((d[i >> 0] | 0) ^ (d[h >> 0] | 0)) & (d[h >> 0] | 0) & 8)) { l = g; return } Nw(c[f >> 2] | 0, 0, 0); Nw(c[f >> 2] | 0, 1, 0); l = g; return } function Cw(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f; i = f + 8 | 0; c[h >> 2] = b; c[g >> 2] = d; a[i >> 0] = e; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 10 >> 0] = a[i >> 0] | 0; l = f; return } function Dw(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f; i = f + 8 | 0; c[h >> 2] = b; c[g >> 2] = d; a[i >> 0] = e; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 11 >> 0] = a[i >> 0] | 0; l = f; return } function Ew(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f; i = f + 8 | 0; c[h >> 2] = b; c[g >> 2] = d; a[i >> 0] = e; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 12 >> 0] = a[i >> 0] | 0; Iw(c[h >> 2] | 0, c[g >> 2] | 0); l = f; return } function Fw(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f; i = f + 8 | 0; c[h >> 2] = b; c[g >> 2] = d; a[i >> 0] = e; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 13 >> 0] = a[i >> 0] | 0; Iw(c[h >> 2] | 0, c[g >> 2] | 0); l = f; return } function Gw(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; h = f + 4 | 0; g = f; i = f + 8 | 0; c[h >> 2] = b; c[g >> 2] = d; a[i >> 0] = e; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 14 >> 0] = a[i >> 0] | 0; Iw(c[h >> 2] | 0, c[g >> 2] | 0); l = f; return } function Hw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; j = k + 8 | 0; i = k; m = k + 16 | 0; g = k + 12 | 0; h = k + 20 | 0; c[m >> 2] = b; c[g >> 2] = e; a[h >> 0] = f; a[(c[m >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 15 >> 0] = a[h >> 0] | 0; a[(c[m >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 + 15 >> 0] = a[h >> 0] | 0; if ((d[h >> 0] | 0) & 16 | 0) { m = c[7422] | 0; c[i >> 2] = (c[g >> 2] | 0) == 0 ? 65 : 66; kQ(m, 45851, i) | 0 } if (!((d[h >> 0] | 0) & 64)) { l = k; return } m = c[7422] | 0; c[j >> 2] = (c[g >> 2] | 0) == 0 ? 65 : 66; kQ(m, 45885, j) | 0; l = k; return } function Iw(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; j = k + 24 | 0; m = k + 20 | 0; e = k + 16 | 0; g = k + 12 | 0; i = k + 8 | 0; h = k + 4 | 0; f = k; c[j >> 2] = a; c[m >> 2] = b; c[f >> 2] = (c[j >> 2] | 0) + 4 + ((c[m >> 2] | 0) * 1356 | 0); b = Jw(c[j >> 2] | 0, c[m >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 48 >> 2] = b; b = Kw(c[j >> 2] | 0, c[m >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 44 >> 2] = b; b = Lw(c[j >> 2] | 0, c[m >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 52 >> 2] = b; b = Mw(c[j >> 2] | 0, c[m >> 2] | 0) | 0; c[i >> 2] = b; c[i >> 2] = (c[(c[f >> 2] | 0) + 52 >> 2] | 0) == 0 ? 1 : b; b = c[f >> 2] | 0; if ((d[(c[f >> 2] | 0) + 14 >> 0] | 0) & 1 | 0) { if ((d[b + 14 >> 0] | 0) & 2 | 0) c[g >> 2] = c[(c[j >> 2] | 0) + 2716 >> 2]; else c[g >> 2] = c[(c[f >> 2] | 0) + 80 >> 2]; c[h >> 2] = (d[(c[f >> 2] | 0) + 13 >> 0] | 0) << 8 | (d[(c[f >> 2] | 0) + 12 >> 0] | 0); c[h >> 2] = S(c[i >> 2] << 1, (c[h >> 2] | 0) + 2 | 0) | 0; m = S((c[(c[f >> 2] | 0) + 48 >> 2] | 0) + (c[(c[f >> 2] | 0) + 52 >> 2] | 0) + 1 | 0, c[h >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 60 >> 2] = m; if (c[(c[f >> 2] | 0) + 44 >> 2] | 0) { m = (c[f >> 2] | 0) + 60 | 0; c[m >> 2] = (c[m >> 2] | 0) + (c[h >> 2] | 0) } c[e >> 2] = ((c[g >> 2] | 0) >>> 0) / ((c[h >> 2] | 0) >>> 0) | 0 } else { c[b + 60 >> 2] = 16384; c[e >> 2] = 0 } c[(c[f >> 2] | 0) + 40 >> 2] = c[e >> 2]; if (!(c[(c[f >> 2] | 0) + 1352 >> 2] | 0)) { l = k; return } Ob[c[(c[f >> 2] | 0) + 1352 >> 2] & 1](c[(c[f >> 2] | 0) + 1348 >> 2] | 0, c[(c[f >> 2] | 0) + 40 >> 2] | 0, c[(c[f >> 2] | 0) + 44 >> 2] | 0, c[(c[f >> 2] | 0) + 48 >> 2] | 0, c[(c[f >> 2] | 0) + 52 >> 2] | 0); l = k; return } function Jw(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; h = f + 4 | 0; g = f; c[h >> 2] = a; c[g >> 2] = b; switch ((d[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 5 >> 0] | 0) >> 5 & 3 | 0) { case 0: { c[e >> 2] = 5; break } case 1: { c[e >> 2] = 7; break } case 2: { c[e >> 2] = 6; break } case 3: { c[e >> 2] = 8; break } default: {} } l = f; return c[e >> 2] | 0 } function Kw(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; h = f + 4 | 0; g = f; c[h >> 2] = a; c[g >> 2] = b; switch ((d[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) & 3 | 0) { case 0: { c[e >> 2] = 0; break } case 1: { c[e >> 2] = 1; break } case 2: { c[e >> 2] = 0; break } case 3: { c[e >> 2] = 2; break } default: {} } l = f; return c[e >> 2] | 0 } function Lw(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; h = f + 4 | 0; g = f; c[h >> 2] = a; c[g >> 2] = b; switch ((d[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) >> 2 & 3 | 0) { case 0: { c[e >> 2] = 0; break } case 1: { c[e >> 2] = 2; break } case 2: { c[e >> 2] = 3; break } case 3: { c[e >> 2] = 4; break } default: {} } l = f; return c[e >> 2] | 0 } function Mw(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; h = f + 4 | 0; g = f; c[h >> 2] = a; c[g >> 2] = b; switch ((d[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) >> 6 & 3 | 0) { case 0: { c[e >> 2] = 1; break } case 1: { c[e >> 2] = 16; break } case 2: { c[e >> 2] = 32; break } case 3: { c[e >> 2] = 64; break } default: {} } l = f; return c[e >> 2] | 0 } function Nw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 16 | 0; h = n + 12 | 0; i = n + 20 | 0; m = n + 8 | 0; g = n + 4 | 0; k = n; c[j >> 2] = b; c[h >> 2] = e; a[i >> 0] = f; c[g >> 2] = (c[j >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); c[m >> 2] = (c[j >> 2] | 0) + 4; if ((d[i >> 0] | 0) & 1 | 0 ? (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 1 | 0 : 0) { b = (c[m >> 2] | 0) + 16 + 3 | 0; a[b >> 0] = d[b >> 0] | 0 | ((c[h >> 2] | 0) == 0 ? 8 : 1); a[(c[g >> 2] | 0) + 32 >> 0] = a[(c[g >> 2] | 0) + 15 >> 0] | 0; a[(c[g >> 2] | 0) + 33 >> 0] = a[(c[g >> 2] | 0) + 16 >> 0] | 0 } if ((d[i >> 0] | 0) & 2 | 0 ? (d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 2 | 0 : 0) { b = (c[m >> 2] | 0) + 16 + 3 | 0; a[b >> 0] = d[b >> 0] | 0 | ((c[h >> 2] | 0) == 0 ? 16 : 2) } if ((d[i >> 0] | 0) & 12 | 0) { c[k >> 2] = 0; do if ((((d[(c[g >> 2] | 0) + 1 >> 0] | 0) & 24) >> 3 | 0) == 1) { if ((d[(c[j >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 36 >> 0] | 0 | 0) == 0 ? ((d[i >> 0] | 0) & 8 | 0) == 0 : 0) break; a[(c[j >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 36 >> 0] = 0; c[k >> 2] = 1 } while (0); if (c[k >> 2] | 0) { k = (c[m >> 2] | 0) + 16 + 3 | 0; a[k >> 0] = d[k >> 0] | 0 | ((c[h >> 2] | 0) == 0 ? 32 : 4) } } g = c[j >> 2] | 0; if (!((d[(c[m >> 2] | 0) + 9 >> 0] | 0) & 8)) { Ow(g, 0); l = n; return } else { Ow(g, (d[(c[m >> 2] | 0) + 16 + 3 >> 0] | 0 | 0) != 0 & 255); l = n; return } } function Ow(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = b; a[g >> 0] = e; if ((d[(c[f >> 2] | 0) + 2728 >> 0] | 0 | 0) == (d[g >> 0] | 0 | 0)) { l = h; return } a[(c[f >> 2] | 0) + 2728 >> 0] = a[g >> 0] | 0; if (!(c[(c[f >> 2] | 0) + 2724 >> 2] | 0)) { l = h; return } Qb[c[(c[f >> 2] | 0) + 2724 >> 2] & 255](c[(c[f >> 2] | 0) + 2720 >> 2] | 0, a[g >> 0] | 0); l = h; return } function Pw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; j = m + 12 | 0; h = m + 8 | 0; i = m + 16 | 0; g = m + 4 | 0; k = m; c[j >> 2] = b; c[h >> 2] = e; a[i >> 0] = f; c[g >> 2] = (c[j >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); c[k >> 2] = (c[j >> 2] | 0) + 4; if ((d[i >> 0] | 0) & 1 | 0) { b = (c[k >> 2] | 0) + 16 + 3 | 0; a[b >> 0] = (d[b >> 0] | 0) & ((c[h >> 2] | 0) == 0 ? -9 : -2); a[(c[g >> 2] | 0) + 32 >> 0] = 0 } if ((d[i >> 0] | 0) & 2 | 0) { b = (c[k >> 2] | 0) + 16 + 3 | 0; a[b >> 0] = (d[b >> 0] | 0) & ((c[h >> 2] | 0) == 0 ? -17 : -3) } if ((d[i >> 0] | 0) & 4 | 0) { b = (c[k >> 2] | 0) + 16 + 3 | 0; a[b >> 0] = (d[b >> 0] | 0) & ((c[h >> 2] | 0) == 0 ? -33 : -5) } g = c[j >> 2] | 0; if (!((d[(c[k >> 2] | 0) + 9 >> 0] | 0) & 8)) { Ow(g, 0); l = m; return } else { Ow(g, (d[(c[k >> 2] | 0) + 16 + 3 >> 0] | 0 | 0) != 0 & 255); l = m; return } } function Qw(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 8 | 0; g = j + 4 | 0; f = j; i = j + 12 | 0; c[h >> 2] = b; c[g >> 2] = e; c[f >> 2] = (c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0); if (!(c[(c[f >> 2] | 0) + 72 >> 2] | 0)) { l = j; return } if (((((c[(c[f >> 2] | 0) + 84 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0 | 0) == (c[(c[f >> 2] | 0) + 88 >> 2] | 0)) { l = j; return } e = c[f >> 2] | 0; if (a[(c[f >> 2] | 0) + 34 >> 0] | 0) { i = e + 16 | 0; a[i >> 0] = d[i >> 0] | 64; l = j; return } e = e + 72 | 0; c[e >> 2] = (c[e >> 2] | 0) - 1; a[i >> 0] = a[(c[f >> 2] | 0) + 8 >> 0] | 0; a[(c[f >> 2] | 0) + 92 + (c[(c[f >> 2] | 0) + 84 >> 2] | 0) >> 0] = a[i >> 0] | 0; c[(c[f >> 2] | 0) + 84 >> 2] = (((c[(c[f >> 2] | 0) + 84 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0; e = c[f >> 2] | 0; if ((d[(c[f >> 2] | 0) + 4 >> 0] & 48 | 0) != 32) { if (c[e + 1336 >> 2] | 0) Qb[c[(c[f >> 2] | 0) + 1336 >> 2] & 255](c[(c[f >> 2] | 0) + 1332 >> 2] | 0, a[i >> 0] | 0) } else a[e + 37 >> 0] = 1; i = (c[f >> 2] | 0) + 16 | 0; a[i >> 0] = d[i >> 0] | 4; a[(c[f >> 2] | 0) + 34 >> 0] = 1; Nw(c[h >> 2] | 0, c[g >> 2] | 0, 2); l = j; return } function Rw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 16 | 0; k = i + 8 | 0; j = i + 4 | 0; h = i + 12 | 0; g = i; c[k >> 2] = b; c[j >> 2] = e; a[h >> 0] = f; c[g >> 2] = (c[k >> 2] | 0) + 4 + ((c[j >> 2] | 0) * 1356 | 0); if (!(c[(c[g >> 2] | 0) + 1344 >> 2] | 0)) { l = i; return } Qb[c[(c[g >> 2] | 0) + 1344 >> 2] & 255](c[(c[g >> 2] | 0) + 1340 >> 2] | 0, (d[h >> 0] | 0 | 0) != 0 & 255); l = i; return } function Sw(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; f = h + 4 | 0; e = h; c[g >> 2] = b; c[f >> 2] = d; if ((c[f >> 2] | 0) != 1) { l = h; return } c[e >> 2] = (c[g >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0); rb(0, (c[e >> 2] | 0) + 92 | 0, c[(c[e >> 2] | 0) + 84 >> 2] | 0) | 0; a[(c[e >> 2] | 0) + 37 >> 0] = 0; c[(c[e >> 2] | 0) + 84 >> 2] = 0; c[(c[e >> 2] | 0) + 88 >> 2] = 0; l = h; return } function Tw(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 4 | 0; f = h; c[g >> 2] = b; c[f >> 2] = e; if ((d[(c[g >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 16 >> 0] | 0) & 64 | 0) { l = h; return } e = c[g >> 2] | 0; b = c[f >> 2] | 0; f = (c[g >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 16 | 0; g = (d[f >> 0] | 0 | 64) & 255; a[f >> 0] = g; Uw(e, b, g); l = h; return } function Uw(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 16 | 0; h = i + 4 | 0; g = i; j = i + 9 | 0; k = i + 8 | 0; c[h >> 2] = b; c[g >> 2] = e; a[j >> 0] = f; c[g >> 2] = c[g >> 2] & 1; a[k >> 0] = a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 >> 0] | 0; a[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 >> 0] = a[j >> 0] | 0; if (!(((d[k >> 0] | 0) ^ (d[j >> 0] | 0)) & (d[(c[h >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 15 >> 0] | 0) & 250)) { l = i; return } Nw(c[h >> 2] | 0, c[g >> 2] | 0, 1); l = i; return } function Vw(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 8 | 0; f = j + 4 | 0; g = j; i = j + 12 | 0; c[h >> 2] = b; c[f >> 2] = d; c[g >> 2] = e; c[f >> 2] = c[f >> 2] & 1; switch (c[g >> 2] | 0) { case 0: { a[i >> 0] = Ww(c[h >> 2] | 0, c[f >> 2] | 0) | 0; break } case 1: { a[i >> 0] = Xw(c[h >> 2] | 0, c[f >> 2] | 0) | 0; break } case 2: { a[i >> 0] = Yw(c[h >> 2] | 0, c[f >> 2] | 0) | 0; break } case 3: { a[i >> 0] = Zw(c[h >> 2] | 0, c[f >> 2] | 0) | 0; break } case 8: { a[i >> 0] = _w(c[h >> 2] | 0, c[f >> 2] | 0) | 0; break } default: a[i >> 0] = a[(c[h >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0) + 16 + (c[g >> 2] & 15) >> 0] | 0 } c[c[h >> 2] >> 2] = 0; l = j; return a[i >> 0] | 0 } function Ww(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; i = g + 4 | 0; h = g; f = g + 8 | 0; c[i >> 2] = b; c[h >> 2] = e; a[f >> 0] = (d[(c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 16 >> 0] | 0) & ~(d[(c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 32 >> 0] | 0); a[f >> 0] = d[f >> 0] | 0 | (d[(c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 33 >> 0] | 0) & (d[(c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 32 >> 0] | 0); l = g; return a[f >> 0] | 0 } function Xw(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; c[f >> 2] = b; c[e >> 2] = d; l = g; return a[(c[f >> 2] | 0) + 4 + ((c[e >> 2] | 0) * 1356 | 0) + 16 + 1 >> 0] | 0 } function Yw(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 16 | 0; k = i + 8 | 0; j = i + 4 | 0; h = i + 13 | 0; f = i; g = i + 12 | 0; c[k >> 2] = b; c[j >> 2] = e; c[f >> 2] = (c[k >> 2] | 0) + 4; a[h >> 0] = a[(c[f >> 2] | 0) + 16 + 2 >> 0] | 0; if ((c[j >> 2] | 0) != 1) { k = a[h >> 0] | 0; l = i; return k | 0 } do if (!((d[(c[f >> 2] | 0) + 16 + 3 >> 0] | 0) & 32 | 0)) { if ((d[(c[f >> 2] | 0) + 16 + 3 >> 0] | 0) & 16 | 0) { a[g >> 0] = 12; break } if ((d[(c[f >> 2] | 0) + 16 + 3 >> 0] | 0) & 8 | 0) { a[g >> 0] = 45; break } if ((d[(c[f >> 2] | 0) + 16 + 3 >> 0] | 0) & 4 | 0) { a[g >> 0] = 18; break } if ((d[(c[f >> 2] | 0) + 16 + 3 >> 0] | 0) & 2 | 0) { a[g >> 0] = 0; break } if ((d[(c[f >> 2] | 0) + 16 + 3 >> 0] | 0) & 1 | 0) { a[g >> 0] = 33; break } else { a[g >> 0] = 51; break } } else a[g >> 0] = 30; while (0); e = d[h >> 0] | 0; if ((d[(c[f >> 2] | 0) + 9 >> 0] | 0) & 16 | 0) { a[h >> 0] = e & 112 | ((d[g >> 0] | 0) & 56) << 1; k = a[h >> 0] | 0; l = i; return k | 0 } else { a[h >> 0] = e & 241 | ((d[g >> 0] | 0) & 7) << 1; k = a[h >> 0] | 0; l = i; return k | 0 } return 0 } function Zw(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; f = g + 4 | 0; h = g; c[f >> 2] = b; c[h >> 2] = d; if (c[h >> 2] | 0) { a[e >> 0] = 0; h = a[e >> 0] | 0; l = g; return h | 0 } else { a[e >> 0] = a[(c[f >> 2] | 0) + 4 + 16 + 3 >> 0] | 0; h = a[e >> 0] | 0; l = g; return h | 0 } return 0 } function _w(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; i = g + 8 | 0; h = g + 4 | 0; j = g; f = g + 12 | 0; c[i >> 2] = b; c[h >> 2] = e; c[j >> 2] = (c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); a[f >> 0] = a[(c[j >> 2] | 0) + 16 + 8 >> 0] | 0; b = (c[j >> 2] | 0) + 16 | 0; a[b >> 0] = (d[b >> 0] | 0) & -2; a[(c[j >> 2] | 0) + 35 >> 0] = 1; Pw(c[i >> 2] | 0, c[h >> 2] | 0, 4); $w(c[i >> 2] | 0, c[h >> 2] | 0); l = g; return a[f >> 0] | 0 } function $w(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; g = j + 8 | 0; h = j + 4 | 0; f = j; c[i >> 2] = b; c[g >> 2] = e; c[h >> 2] = 4; c[f >> 2] = (c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0); if (c[13635] | 0) ax(c[i >> 2] | 0, c[g >> 2] | 0) | 0; if ((c[(c[f >> 2] | 0) + 704 >> 2] | 0) == (c[(c[f >> 2] | 0) + 708 >> 2] | 0)) { l = j; return } if (!(c[(c[f >> 2] | 0) + 64 >> 2] | 0)) { l = j; return } if (!(d[(c[f >> 2] | 0) + 35 >> 0] | 0)) { l = j; return } do if (((d[(c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) & 48 | 0) == 32) { e = (c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 | 0; if (((c[(c[f >> 2] | 0) + 708 >> 2] | 0) + 1 | 0) == (c[(c[f >> 2] | 0) + 704 >> 2] | 0)) { b = e + 1 | 0; a[b >> 0] = d[b >> 0] | 0 | 128; c[h >> 2] = c[h >> 2] | 8; break } else { a[e >> 0] = (d[e >> 0] | 0) & -17; b = (c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 + 1 | 0; a[b >> 0] = (d[b >> 0] | 0) & -129; break } } while (0); b = (c[f >> 2] | 0) + 64 | 0; c[b >> 2] = (c[b >> 2] | 0) - 1; a[(c[f >> 2] | 0) + 16 + 8 >> 0] = a[(c[f >> 2] | 0) + 712 + (c[(c[f >> 2] | 0) + 708 >> 2] | 0) >> 0] | 0; c[(c[f >> 2] | 0) + 708 >> 2] = (((c[(c[f >> 2] | 0) + 708 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0; if (c[(c[f >> 2] | 0) + 1328 >> 2] | 0) Qb[c[(c[f >> 2] | 0) + 1328 >> 2] & 255](c[(c[f >> 2] | 0) + 1324 >> 2] | 0, 1); b = (c[f >> 2] | 0) + 16 | 0; a[b >> 0] = d[b >> 0] | 0 | 1; a[(c[f >> 2] | 0) + 35 >> 0] = 0; Nw(c[i >> 2] | 0, c[g >> 2] | 0, c[h >> 2] & 255); l = j; return } function ax(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 16 | 0; j = k + 12 | 0; g = k + 8 | 0; f = k + 4 | 0; h = k; c[j >> 2] = b; c[g >> 2] = e; c[h >> 2] = 0; if (!(c[13635] | 0)) { c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } if ((c[g >> 2] | 0) != 1) { c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } c[f >> 2] = (c[j >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0); if ((d[(c[f >> 2] | 0) + 5 >> 0] | 0) & 8 | 0) { c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } c[13635] = 0; a[(c[f >> 2] | 0) + 35 >> 0] = 1; c[h >> 2] = rb(1, (c[f >> 2] | 0) + 712 | 0, 608) | 0; if (c[h >> 2] | 0) { c[(c[f >> 2] | 0) + 704 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 708 >> 2] = 0; a[(c[f >> 2] | 0) + 712 + (c[(c[f >> 2] | 0) + 704 >> 2] | 0) >> 0] = 0; c[(c[f >> 2] | 0) + 704 >> 2] = (((c[(c[f >> 2] | 0) + 704 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0; a[(c[f >> 2] | 0) + 712 + (c[(c[f >> 2] | 0) + 704 >> 2] | 0) >> 0] = 0; c[(c[f >> 2] | 0) + 704 >> 2] = (((c[(c[f >> 2] | 0) + 704 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0 } else { c[(c[f >> 2] | 0) + 704 >> 2] = 0; c[(c[f >> 2] | 0) + 708 >> 2] = 0 } c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } function bx(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = Vw(c[d >> 2] | 0, 0, c[c[d >> 2] >> 2] | 0) | 0; l = b; return a | 0 } function cx(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = Vw(c[d >> 2] | 0, 1, c[c[d >> 2] >> 2] | 0) | 0; l = b; return a | 0 } function dx(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e; f = e + 4 | 0; c[g >> 2] = b; a[f >> 0] = d; sw(c[g >> 2] | 0, 0, c[c[g >> 2] >> 2] | 0, a[f >> 0] | 0); l = e; return } function ex(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e; f = e + 4 | 0; c[g >> 2] = b; a[f >> 0] = d; sw(c[g >> 2] | 0, 1, c[c[g >> 2] >> 2] | 0, a[f >> 0] | 0); l = e; return } function fx(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = Vw(c[d >> 2] | 0, 0, 8) | 0; l = b; return a | 0 } function gx(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = Vw(c[d >> 2] | 0, 1, 8) | 0; l = b; return a | 0 } function hx(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e; f = e + 4 | 0; c[g >> 2] = b; a[f >> 0] = d; sw(c[g >> 2] | 0, 0, 8, a[f >> 0] | 0); l = e; return } function ix(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e; f = e + 4 | 0; c[g >> 2] = b; a[f >> 0] = d; sw(c[g >> 2] | 0, 1, 8, a[f >> 0] | 0); l = e; return } function jx(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; i = j + 4 | 0; g = j; k = j + 9 | 0; h = j + 8 | 0; c[i >> 2] = b; c[g >> 2] = e; a[k >> 0] = f; c[g >> 2] = c[g >> 2] & 1; a[h >> 0] = a[(c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 >> 0] | 0; e = d[h >> 0] | 0; if (a[k >> 0] | 0) { a[h >> 0] = e & -9; f = c[i >> 2] | 0; i = c[g >> 2] | 0; k = a[h >> 0] | 0; Uw(f, i, k); l = j; return } else { a[h >> 0] = e | 8; f = c[i >> 2] | 0; i = c[g >> 2] | 0; k = a[h >> 0] | 0; Uw(f, i, k); l = j; return } } function kx(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e; f = e + 4 | 0; c[g >> 2] = b; a[f >> 0] = d; jx(c[g >> 2] | 0, 0, a[f >> 0] | 0); l = e; return } function lx(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e; f = e + 4 | 0; c[g >> 2] = b; a[f >> 0] = d; jx(c[g >> 2] | 0, 1, a[f >> 0] | 0); l = e; return } function mx(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; i = j + 4 | 0; g = j; k = j + 9 | 0; h = j + 8 | 0; c[i >> 2] = b; c[g >> 2] = e; a[k >> 0] = f; c[g >> 2] = c[g >> 2] & 1; a[h >> 0] = a[(c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 16 >> 0] | 0; e = d[h >> 0] | 0; if (a[k >> 0] | 0) { a[h >> 0] = e & -33; f = c[i >> 2] | 0; i = c[g >> 2] | 0; k = a[h >> 0] | 0; Uw(f, i, k); l = j; return } else { a[h >> 0] = e | 32; f = c[i >> 2] | 0; i = c[g >> 2] | 0; k = a[h >> 0] | 0; Uw(f, i, k); l = j; return } } function nx(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 16 | 0; k = i + 8 | 0; j = i + 4 | 0; h = i + 12 | 0; g = i; c[k >> 2] = b; c[j >> 2] = e; a[h >> 0] = f; c[j >> 2] = c[j >> 2] & 1; c[g >> 2] = (c[k >> 2] | 0) + 4 + ((c[j >> 2] | 0) * 1356 | 0); if (((d[(c[k >> 2] | 0) + 4 + ((c[j >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) & 48 | 0) == 32) { l = i; return } if (((((c[(c[g >> 2] | 0) + 704 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0 | 0) == (c[(c[g >> 2] | 0) + 708 >> 2] | 0)) { l = i; return } a[(c[g >> 2] | 0) + 712 + (c[(c[g >> 2] | 0) + 704 >> 2] | 0) >> 0] = a[h >> 0] | 0; c[(c[g >> 2] | 0) + 704 >> 2] = (((c[(c[g >> 2] | 0) + 704 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0; l = i; return } function ox(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; h = k + 13 | 0; i = k + 8 | 0; g = k + 4 | 0; j = k + 12 | 0; f = k; c[i >> 2] = b; c[g >> 2] = e; if (((d[(c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) & 48 | 0) == 32) { a[h >> 0] = 0; j = a[h >> 0] | 0; l = k; return j | 0 } c[g >> 2] = c[g >> 2] & 1; c[f >> 2] = (c[i >> 2] | 0) + 4 + ((c[g >> 2] | 0) * 1356 | 0); if ((c[(c[f >> 2] | 0) + 84 >> 2] | 0) == (c[(c[f >> 2] | 0) + 88 >> 2] | 0)) { a[h >> 0] = 0; j = a[h >> 0] | 0; l = k; return j | 0 } else { a[j >> 0] = a[(c[f >> 2] | 0) + 92 + (c[(c[f >> 2] | 0) + 88 >> 2] | 0) >> 0] | 0; c[(c[f >> 2] | 0) + 88 >> 2] = (((c[(c[f >> 2] | 0) + 88 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0; a[h >> 0] = a[j >> 0] | 0; j = a[h >> 0] | 0; l = k; return j | 0 } return 0 } function px(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; i = g + 8 | 0; h = g + 4 | 0; e = g; c[i >> 2] = a; c[h >> 2] = b; c[h >> 2] = c[h >> 2] & 1; c[e >> 2] = (c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); if (((d[(c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) & 48 | 0) == 32) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = g; return i | 0 } if (((((c[(c[e >> 2] | 0) + 704 >> 2] | 0) + 1 | 0) >>> 0) % 610 | 0 | 0) == (c[(c[e >> 2] | 0) + 708 >> 2] | 0)) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = g; return i | 0 } else { c[f >> 2] = 0; i = c[f >> 2] | 0; l = g; return i | 0 } return 0 } function qx(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; i = g + 8 | 0; h = g + 4 | 0; e = g; c[i >> 2] = a; c[h >> 2] = b; c[h >> 2] = c[h >> 2] & 1; c[e >> 2] = (c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); if (((d[(c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0) + 4 >> 0] | 0) & 48 | 0) == 32) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = g; return i | 0 } if ((c[(c[e >> 2] | 0) + 84 >> 2] | 0) == (c[(c[e >> 2] | 0) + 88 >> 2] | 0)) { c[f >> 2] = 1; i = c[f >> 2] | 0; l = g; return i | 0 } else { c[f >> 2] = 0; i = c[f >> 2] | 0; l = g; return i | 0 } return 0 } function rx(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = b; c[c[e >> 2] >> 2] = 0; c[d >> 2] = 0; while (1) { b = c[e >> 2] | 0; if ((c[d >> 2] | 0) >>> 0 >= 16) break; a[b + 4 + 16 + (c[d >> 2] | 0) >> 0] = 0; a[(c[e >> 2] | 0) + 4 + (c[d >> 2] | 0) >> 0] = 0; a[(c[e >> 2] | 0) + 4 + 1356 + 16 + (c[d >> 2] | 0) >> 0] = 0; a[(c[e >> 2] | 0) + 4 + 1356 + (c[d >> 2] | 0) >> 0] = 0; c[d >> 2] = (c[d >> 2] | 0) + 1 } sx(b, 0); sx(c[e >> 2] | 0, 1); Rw(c[e >> 2] | 0, 0, 0); Rw(c[e >> 2] | 0, 1, 0); Ow(c[e >> 2] | 0, 0); l = f; return } function sx(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[i >> 2] = b; c[h >> 2] = e; c[h >> 2] = c[h >> 2] & 1; c[g >> 2] = (c[i >> 2] | 0) + 4 + ((c[h >> 2] | 0) * 1356 | 0); b = (c[g >> 2] | 0) + 16 | 0; a[b >> 0] = d[b >> 0] | 0 | 4; b = (c[g >> 2] | 0) + 16 + 1 | 0; a[b >> 0] = d[b >> 0] | 0 | 1; a[(c[g >> 2] | 0) + 32 >> 0] = 0; c[(c[g >> 2] | 0) + 40 >> 2] = 0; c[(c[g >> 2] | 0) + 44 >> 2] = 0; c[(c[g >> 2] | 0) + 48 >> 2] = 0; c[(c[g >> 2] | 0) + 52 >> 2] = 0; c[(c[g >> 2] | 0) + 84 >> 2] = 0; c[(c[g >> 2] | 0) + 88 >> 2] = 0; c[(c[g >> 2] | 0) + 704 >> 2] = 0; c[(c[g >> 2] | 0) + 708 >> 2] = 0; l = f; return } function tx(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; ux(c[f >> 2] | 0, 0, c[e >> 2] | 0); ux(c[f >> 2] | 0, 1, c[e >> 2] | 0); l = d; return } function ux(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; f = i + 8 | 0; g = i + 4 | 0; e = i; c[h >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[e >> 2] = (c[h >> 2] | 0) + 4 + ((c[f >> 2] | 0) * 1356 | 0); if ((c[g >> 2] | 0) >>> 0 < (c[(c[e >> 2] | 0) + 56 >> 2] | 0) >>> 0) { h = (c[e >> 2] | 0) + 56 | 0; c[h >> 2] = (c[h >> 2] | 0) - (c[g >> 2] | 0); l = i; return } c[g >> 2] = (c[g >> 2] | 0) - (c[(c[e >> 2] | 0) + 56 >> 2] | 0); if ((c[g >> 2] | 0) >>> 0 > (c[(c[e >> 2] | 0) + 60 >> 2] | 0) >>> 0) c[g >> 2] = ((c[g >> 2] | 0) >>> 0) % ((c[(c[e >> 2] | 0) + 60 >> 2] | 0) >>> 0) | 0; c[(c[e >> 2] | 0) + 56 >> 2] = (c[(c[e >> 2] | 0) + 60 >> 2] | 0) - (c[g >> 2] | 0); c[(c[e >> 2] | 0) + 64 >> 2] = c[(c[e >> 2] | 0) + 68 >> 2]; c[(c[e >> 2] | 0) + 72 >> 2] = c[(c[e >> 2] | 0) + 76 >> 2]; $w(c[h >> 2] | 0, c[f >> 2] | 0); Qw(c[h >> 2] | 0, c[f >> 2] | 0); l = i; return } function vx(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, m = 0; k = l; l = l + 32 | 0; i = k + 16 | 0; h = k + 12 | 0; g = k + 8 | 0; j = k + 4 | 0; m = k; c[h >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[m >> 2] = f; if (c[m >> 2] | 0) { m = HQ((c[j >> 2] | 0) + 16 | 0) | 0; c[(c[h >> 2] | 0) + 44 >> 2] = m; if (!(c[(c[h >> 2] | 0) + 44 >> 2] | 0)) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = k; return m | 0 } } else c[(c[h >> 2] | 0) + 44 >> 2] = 0; c[c[h >> 2] >> 2] = 0; c[(c[h >> 2] | 0) + 4 >> 2] = 0; c[(c[h >> 2] | 0) + 8 >> 2] = 0; c[(c[h >> 2] | 0) + 12 >> 2] = 0; c[(c[h >> 2] | 0) + 16 >> 2] = 0; c[(c[h >> 2] | 0) + 20 >> 2] = 0; c[(c[h >> 2] | 0) + 24 >> 2] = c[h >> 2]; a[(c[h >> 2] | 0) + 28 >> 0] = 1; a[(c[h >> 2] | 0) + 29 >> 0] = 0; a[(c[h >> 2] | 0) + 30 >> 0] = (c[(c[h >> 2] | 0) + 44 >> 2] | 0) != 0; c[(c[h >> 2] | 0) + 32 >> 2] = c[g >> 2]; c[(c[h >> 2] | 0) + 36 >> 2] = (c[g >> 2] | 0) + (c[j >> 2] | 0) - 1; c[(c[h >> 2] | 0) + 40 >> 2] = c[j >> 2]; c[i >> 2] = 0; m = c[i >> 2] | 0; l = k; return m | 0 } function wx(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; f = j + 12 | 0; h = j + 8 | 0; e = j + 4 | 0; g = j; c[f >> 2] = a; c[h >> 2] = b; c[e >> 2] = d; c[g >> 2] = HQ(48) | 0; if (!(c[g >> 2] | 0)) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } h = (vx(c[g >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0, c[e >> 2] | 0) | 0) != 0; d = c[g >> 2] | 0; if (h) { IQ(d); c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[i >> 2] = d; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function xx(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; d = h + 4 | 0; f = h; c[d >> 2] = b; c[f >> 2] = HQ(48) | 0; if (!(c[f >> 2] | 0)) { c[g >> 2] = 0; g = c[g >> 2] | 0; l = h; return g | 0 } else { e = c[f >> 2] | 0; b = c[d >> 2] | 0; d = e + 48 | 0; do { c[e >> 2] = c[b >> 2]; e = e + 4 | 0; b = b + 4 | 0 } while ((e | 0) < (d | 0)); a[(c[f >> 2] | 0) + 30 >> 0] = 0; a[(c[f >> 2] | 0) + 28 >> 0] = 1; c[g >> 2] = c[f >> 2]; g = c[g >> 2] | 0; l = h; return g | 0 } return 0 } function yx(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (c[(c[b >> 2] | 0) + 44 >> 2] | 0) { l = d; return } if (!(c[c[b >> 2] >> 2] | 0)) c[c[b >> 2] >> 2] = 15; if (!(c[(c[b >> 2] | 0) + 4 >> 2] | 0)) c[(c[b >> 2] | 0) + 4 >> 2] = 16; if (!(c[(c[b >> 2] | 0) + 8 >> 2] | 0)) c[(c[b >> 2] | 0) + 8 >> 2] = 17; if (!(c[(c[b >> 2] | 0) + 12 >> 2] | 0)) c[(c[b >> 2] | 0) + 12 >> 2] = 16; if (!(c[(c[b >> 2] | 0) + 16 >> 2] | 0)) c[(c[b >> 2] | 0) + 16 >> 2] = 17; if (c[(c[b >> 2] | 0) + 20 >> 2] | 0) { l = d; return } c[(c[b >> 2] | 0) + 20 >> 2] = 18; l = d; return } function zx(a, b) { a = a | 0; b = b | 0; var d = 0; d = l; l = l + 16 | 0; c[d + 4 >> 2] = a; c[d >> 2] = b; l = d; return 0 } function Ax(a, b) { a = a | 0; b = b | 0; var d = 0; d = l; l = l + 16 | 0; c[d + 4 >> 2] = a; c[d >> 2] = b; l = d; return 0 } function Bx(a, b) { a = a | 0; b = b | 0; var d = 0; d = l; l = l + 16 | 0; c[d + 4 >> 2] = a; c[d >> 2] = b; l = d; return 0 } function Cx(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0; f = l; l = l + 16 | 0; c[f + 4 >> 2] = b; c[f >> 2] = d; a[f + 8 >> 0] = e; l = f; return } function Dx(a, d, e) { a = a | 0; d = d | 0; e = e | 0; var f = 0; f = l; l = l + 16 | 0; c[f + 4 >> 2] = a; c[f >> 2] = d; b[f + 8 >> 1] = e; l = f; return } function Ex(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = l; l = l + 16 | 0; c[e + 8 >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; l = e; return } function Fx(a, b, d, e, f, g, h, i) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; j = l; l = l + 32 | 0; k = j + 28 | 0; s = j + 24 | 0; r = j + 20 | 0; q = j + 16 | 0; p = j + 12 | 0; o = j + 8 | 0; n = j + 4 | 0; m = j; c[k >> 2] = a; c[s >> 2] = b; c[r >> 2] = d; c[q >> 2] = e; c[p >> 2] = f; c[o >> 2] = g; c[n >> 2] = h; c[m >> 2] = i; c[(c[k >> 2] | 0) + 24 >> 2] = c[s >> 2]; c[c[k >> 2] >> 2] = c[r >> 2]; c[(c[k >> 2] | 0) + 4 >> 2] = c[q >> 2]; c[(c[k >> 2] | 0) + 8 >> 2] = c[p >> 2]; c[(c[k >> 2] | 0) + 12 >> 2] = c[o >> 2]; c[(c[k >> 2] | 0) + 16 >> 2] = c[n >> 2]; c[(c[k >> 2] | 0) + 20 >> 2] = c[m >> 2]; yx(c[k >> 2] | 0); l = j; return } function Gx(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = b; a[g >> 0] = e; if (!(c[(c[f >> 2] | 0) + 44 >> 2] | 0)) { l = h; return } TQ(c[(c[f >> 2] | 0) + 44 >> 2] | 0, (d[g >> 0] | 0) & 255 | 0, c[(c[f >> 2] | 0) + 40 >> 2] | 0) | 0; l = h; return } function Hx(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 44 >> 2] | 0 } function Ix(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; a[(c[f >> 2] | 0) + 29 >> 0] = (c[g >> 2] | 0) != 0; l = e; return } function Jx(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 32 >> 2] | 0 } function Kx(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 32 >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 36 >> 2] = (c[f >> 2] | 0) + (c[(c[e >> 2] | 0) + 40 >> 2] | 0) - 1; l = d; return } function Lx(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; l = d; return c[(c[b >> 2] | 0) + 40 >> 2] | 0 } function Mx(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 40 >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 36 >> 2] = (c[(c[e >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) - 1; l = d; return } function Nx(d, f, g) { d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; h = l; l = l + 16 | 0; m = h + 8 | 0; k = h + 4 | 0; j = h + 12 | 0; i = h; c[m >> 2] = d; c[k >> 2] = f; b[j >> 1] = g; c[i >> 2] = (c[m >> 2] | 0) + (c[k >> 2] | 0); a[c[i >> 2] >> 0] = (e[j >> 1] | 0) >> 8; a[(c[i >> 2] | 0) + 1 >> 0] = e[j >> 1] | 0; l = h; return } function Ox(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; f = l; l = l + 16 | 0; j = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[j >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[g >> 2] = (c[j >> 2] | 0) + (c[i >> 2] | 0); a[c[g >> 2] >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[g >> 2] | 0) + 1 >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[g >> 2] | 0) + 2 >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[g >> 2] | 0) + 3 >> 0] = c[h >> 2]; l = f; return } function Px(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0; f = l; l = l + 16 | 0; h = f + 8 | 0; g = f + 4 | 0; e = f; c[h >> 2] = a; c[g >> 2] = b; c[e >> 2] = d[(c[(c[h >> 2] | 0) + 44 >> 2] | 0) + (c[g >> 2] | 0) >> 0]; c[e >> 2] = c[e >> 2] << 8 | (d[(c[(c[h >> 2] | 0) + 44 >> 2] | 0) + ((c[g >> 2] | 0) + 1) >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[(c[(c[h >> 2] | 0) + 44 >> 2] | 0) + ((c[g >> 2] | 0) + 2) >> 0] | 0); c[e >> 2] = c[e >> 2] << 8 | (d[(c[(c[h >> 2] | 0) + 44 >> 2] | 0) + ((c[g >> 2] | 0) + 3) >> 0] | 0); l = f; return c[e >> 2] | 0 } function Qx(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 0; c[(c[d >> 2] | 0) + 4 >> 2] = 0; Rx(c[d >> 2] | 0); c[(c[d >> 2] | 0) + 24 >> 2] = 0; c[(c[d >> 2] | 0) + 28 >> 2] = 0; c[(c[d >> 2] | 0) + 32 >> 2] = 0; c[(c[d >> 2] | 0) + 36 >> 2] = 0; c[(c[d >> 2] | 0) + 40 >> 2] = 0; c[(c[d >> 2] | 0) + 44 >> 2] = 0; c[(c[d >> 2] | 0) + 48 >> 2] = 0; c[(c[d >> 2] | 0) + 52 >> 2] = -1; l = b; return } function Rx(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= 4) break; c[(c[d >> 2] | 0) + 8 + (c[b >> 2] << 2) >> 2] = 0; c[b >> 2] = (c[b >> 2] | 0) + 1 } l = e; return } function Sx() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; a = d; c[a >> 2] = HQ(56) | 0; if (!(c[a >> 2] | 0)) { c[b >> 2] = 0; b = c[b >> 2] | 0; l = d; return b | 0 } else { Qx(c[a >> 2] | 0); c[b >> 2] = c[a >> 2]; b = c[b >> 2] | 0; l = d; return b | 0 } return 0 } function Tx(a, b, d, e, f, g, h, i) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; j = l; l = l + 32 | 0; k = j + 28 | 0; s = j + 24 | 0; r = j + 20 | 0; q = j + 16 | 0; p = j + 12 | 0; o = j + 8 | 0; n = j + 4 | 0; m = j; c[k >> 2] = a; c[s >> 2] = b; c[r >> 2] = d; c[q >> 2] = e; c[p >> 2] = f; c[o >> 2] = g; c[n >> 2] = h; c[m >> 2] = i; c[(c[k >> 2] | 0) + 24 >> 2] = c[s >> 2]; c[(c[k >> 2] | 0) + 28 >> 2] = c[r >> 2]; c[(c[k >> 2] | 0) + 32 >> 2] = c[q >> 2]; c[(c[k >> 2] | 0) + 36 >> 2] = c[p >> 2]; c[(c[k >> 2] | 0) + 40 >> 2] = c[o >> 2]; c[(c[k >> 2] | 0) + 44 >> 2] = c[n >> 2]; c[(c[k >> 2] | 0) + 48 >> 2] = c[m >> 2]; l = j; return } function Ux(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; j = l; l = l + 48 | 0; i = j; h = j + 32 | 0; e = j + 28 | 0; f = j + 24 | 0; g = j + 20 | 0; c[h >> 2] = a; c[e >> 2] = b; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[c[h >> 2] >> 2] | 0) >>> 0) break; c[g >> 2] = (c[(c[h >> 2] | 0) + 4 >> 2] | 0) + (c[f >> 2] << 3); a = c[e >> 2] | 0; n = c[(c[c[g >> 2] >> 2] | 0) + 32 >> 2] | 0; m = c[(c[c[g >> 2] >> 2] | 0) + 36 >> 2] | 0; k = c[(c[c[g >> 2] >> 2] | 0) + 40 >> 2] | 0; b = (d[(c[c[g >> 2] >> 2] | 0) + 29 >> 0] | 0 | 0) != 0 & 1; c[i >> 2] = c[f >> 2]; c[i + 4 >> 2] = n; c[i + 8 >> 2] = m; c[i + 12 >> 2] = k; c[i + 16 >> 2] = b; kQ(a, 46140, i) | 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } l = j; return } function Vx(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; g = i; c[h >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; if (!(c[e >> 2] | 0)) { l = i; return } c[g >> 2] = JQ(c[(c[h >> 2] | 0) + 4 >> 2] | 0, (c[c[h >> 2] >> 2] | 0) + 1 << 3) | 0; if (!(c[g >> 2] | 0)) { l = i; return } c[(c[h >> 2] | 0) + 4 >> 2] = c[g >> 2]; c[g >> 2] = (c[g >> 2] | 0) + (c[c[h >> 2] >> 2] << 3); a = c[h >> 2] | 0; c[a >> 2] = (c[a >> 2] | 0) + 1; c[c[g >> 2] >> 2] = c[e >> 2]; c[(c[g >> 2] | 0) + 4 >> 2] = (c[f >> 2] | 0) != 0 & 1; Rx(c[h >> 2] | 0); l = i; return } function Wx(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; h = i + 16 | 0; d = i + 12 | 0; e = i + 8 | 0; f = i + 4 | 0; g = i; c[h >> 2] = a; c[d >> 2] = b; c[e >> 2] = 0; c[f >> 2] = 0; c[g >> 2] = c[(c[h >> 2] | 0) + 4 >> 2]; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[c[h >> 2] >> 2] | 0) >>> 0) break; if ((c[(c[g >> 2] | 0) + (c[e >> 2] << 3) >> 2] | 0) != (c[d >> 2] | 0)) { b = c[g >> 2] | 0; a = c[f >> 2] | 0; c[f >> 2] = a + 1; a = b + (a << 3) | 0; b = (c[g >> 2] | 0) + (c[e >> 2] << 3) | 0; c[a >> 2] = c[b >> 2]; c[a + 4 >> 2] = c[b + 4 >> 2] } c[e >> 2] = (c[e >> 2] | 0) + 1 } c[c[h >> 2] >> 2] = c[f >> 2]; Rx(c[h >> 2] | 0); l = i; return } function Xx(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; e = d; c[f >> 2] = a; c[e >> 2] = b; a = Yx(c[f >> 2] | 0, c[e >> 2] | 0, 0) | 0; l = d; return a | 0 } function Yx(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; m = n + 24 | 0; k = n + 20 | 0; f = n + 16 | 0; i = n + 12 | 0; g = n + 8 | 0; h = n + 4 | 0; j = n; c[k >> 2] = a; c[f >> 2] = b; c[i >> 2] = e; c[i >> 2] = c[i >> 2] & 3; if (((c[(c[k >> 2] | 0) + 8 + (c[i >> 2] << 2) >> 2] | 0 ? (c[h >> 2] = c[c[(c[k >> 2] | 0) + 8 + (c[i >> 2] << 2) >> 2] >> 2], d[(c[h >> 2] | 0) + 28 >> 0] | 0 | 0) : 0) ? (c[f >> 2] | 0) >>> 0 >= (c[(c[h >> 2] | 0) + 32 >> 2] | 0) >>> 0 : 0) ? (c[f >> 2] | 0) >>> 0 <= (c[(c[h >> 2] | 0) + 36 >> 2] | 0) >>> 0 : 0) { c[m >> 2] = c[h >> 2]; m = c[m >> 2] | 0; l = n; return m | 0 } c[j >> 2] = c[(c[k >> 2] | 0) + 4 >> 2]; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[c[k >> 2] >> 2] | 0) >>> 0) { b = 13; break } c[h >> 2] = c[c[j >> 2] >> 2]; if ((d[(c[h >> 2] | 0) + 28 >> 0] | 0 | 0 ? (c[f >> 2] | 0) >>> 0 >= (c[(c[h >> 2] | 0) + 32 >> 2] | 0) >>> 0 : 0) ? (c[f >> 2] | 0) >>> 0 <= (c[(c[h >> 2] | 0) + 36 >> 2] | 0) >>> 0 : 0) { b = 11; break } c[j >> 2] = (c[j >> 2] | 0) + 8; c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((b | 0) == 11) { c[(c[k >> 2] | 0) + 8 + (c[i >> 2] << 2) >> 2] = c[j >> 2]; c[m >> 2] = c[h >> 2]; m = c[m >> 2] | 0; l = n; return m | 0 } else if ((b | 0) == 13) { c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } return 0 } function Zx(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; f = i + 8 | 0; g = i + 4 | 0; e = i; c[f >> 2] = b; c[g >> 2] = d; c[e >> 2] = Yx(c[f >> 2] | 0, c[g >> 2] | 0, 1) | 0; if (c[e >> 2] | 0) { c[g >> 2] = (c[g >> 2] | 0) - (c[(c[e >> 2] | 0) + 32 >> 2] | 0); d = c[e >> 2] | 0; if (c[c[e >> 2] >> 2] | 0) { a[h >> 0] = Vb[c[d >> 2] & 31](c[(c[e >> 2] | 0) + 24 >> 2] | 0, c[g >> 2] | 0) | 0; h = a[h >> 0] | 0; l = i; return h | 0 } else { a[h >> 0] = a[(c[d + 44 >> 2] | 0) + (c[g >> 2] | 0) >> 0] | 0; h = a[h >> 0] | 0; l = i; return h | 0 } } else { d = c[f >> 2] | 0; if (c[(c[f >> 2] | 0) + 28 >> 2] | 0) { a[h >> 0] = Vb[c[d + 28 >> 2] & 31](c[(c[f >> 2] | 0) + 24 >> 2] | 0, c[g >> 2] | 0) | 0; h = a[h >> 0] | 0; l = i; return h | 0 } else { a[h >> 0] = c[d + 52 >> 2]; h = a[h >> 0] | 0; l = i; return h | 0 } } return 0 } function _x(a, f) { a = a | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; k = m + 14 | 0; h = m + 8 | 0; j = m + 4 | 0; i = m + 12 | 0; g = m; c[h >> 2] = a; c[j >> 2] = f; c[g >> 2] = Yx(c[h >> 2] | 0, c[j >> 2] | 0, 1) | 0; if (!(c[g >> 2] | 0)) { f = c[h >> 2] | 0; if (c[(c[h >> 2] | 0) + 32 >> 2] | 0) { b[k >> 1] = Vb[c[f + 32 >> 2] & 31](c[(c[h >> 2] | 0) + 24 >> 2] | 0, c[j >> 2] | 0) | 0; k = b[k >> 1] | 0; l = m; return k | 0 } else { b[k >> 1] = c[f + 52 >> 2]; k = b[k >> 1] | 0; l = m; return k | 0 } } if (((c[j >> 2] | 0) + 1 | 0) >>> 0 > (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { b[i >> 1] = ((Zx(c[h >> 2] | 0, c[j >> 2] | 0) | 0) & 255) << 8; j = (Zx(c[h >> 2] | 0, (c[j >> 2] | 0) + 1 | 0) | 0) & 255; b[i >> 1] = e[i >> 1] | 0 | j; b[k >> 1] = b[i >> 1] | 0; k = b[k >> 1] | 0; l = m; return k | 0 } c[j >> 2] = (c[j >> 2] | 0) - (c[(c[g >> 2] | 0) + 32 >> 2] | 0); f = c[g >> 2] | 0; if (c[(c[g >> 2] | 0) + 4 >> 2] | 0) { b[k >> 1] = Vb[c[f + 4 >> 2] & 31](c[(c[g >> 2] | 0) + 24 >> 2] | 0, c[j >> 2] | 0) | 0; k = b[k >> 1] | 0; l = m; return k | 0 } else { b[i >> 1] = ((d[(c[f + 44 >> 2] | 0) + (c[j >> 2] | 0) >> 0] | 0) & 65535) << 8; b[i >> 1] = e[i >> 1] | 0 | (d[(c[(c[g >> 2] | 0) + 44 >> 2] | 0) + ((c[j >> 2] | 0) + 1) >> 0] | 0); b[k >> 1] = b[i >> 1] | 0; k = b[k >> 1] | 0; l = m; return k | 0 } return 0 } function $x(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; i = j + 16 | 0; f = j + 12 | 0; h = j + 8 | 0; g = j + 4 | 0; e = j; c[f >> 2] = a; c[h >> 2] = b; c[e >> 2] = Yx(c[f >> 2] | 0, c[h >> 2] | 0, 1) | 0; if (!(c[e >> 2] | 0)) { b = c[f >> 2] | 0; if (c[(c[f >> 2] | 0) + 36 >> 2] | 0) { c[i >> 2] = Vb[c[b + 36 >> 2] & 31](c[(c[f >> 2] | 0) + 24 >> 2] | 0, c[h >> 2] | 0) | 0; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[i >> 2] = c[b + 52 >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } } if (((c[h >> 2] | 0) + 3 | 0) >>> 0 > (c[(c[e >> 2] | 0) + 36 >> 2] | 0) >>> 0) { c[g >> 2] = ((Zx(c[f >> 2] | 0, c[h >> 2] | 0) | 0) & 255) << 24; e = ((Zx(c[f >> 2] | 0, (c[h >> 2] | 0) + 1 | 0) | 0) & 255) << 16; c[g >> 2] = c[g >> 2] | e; e = ((Zx(c[f >> 2] | 0, (c[h >> 2] | 0) + 2 | 0) | 0) & 255) << 8; c[g >> 2] = c[g >> 2] | e; h = (Zx(c[f >> 2] | 0, (c[h >> 2] | 0) + 3 | 0) | 0) & 255; c[g >> 2] = c[g >> 2] | h; c[i >> 2] = c[g >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } c[h >> 2] = (c[h >> 2] | 0) - (c[(c[e >> 2] | 0) + 32 >> 2] | 0); b = c[e >> 2] | 0; if (c[(c[e >> 2] | 0) + 8 >> 2] | 0) { c[i >> 2] = Vb[c[b + 8 >> 2] & 31](c[(c[e >> 2] | 0) + 24 >> 2] | 0, c[h >> 2] | 0) | 0; i = c[i >> 2] | 0; l = j; return i | 0 } else { c[g >> 2] = (d[(c[b + 44 >> 2] | 0) + (c[h >> 2] | 0) >> 0] | 0) << 24; c[g >> 2] = c[g >> 2] | (d[(c[(c[e >> 2] | 0) + 44 >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] | 0) << 16; c[g >> 2] = c[g >> 2] | (d[(c[(c[e >> 2] | 0) + 44 >> 2] | 0) + ((c[h >> 2] | 0) + 2) >> 0] | 0) << 8; c[g >> 2] = c[g >> 2] | (d[(c[(c[e >> 2] | 0) + 44 >> 2] | 0) + ((c[h >> 2] | 0) + 3) >> 0] | 0); c[i >> 2] = c[g >> 2]; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function ay(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 8 | 0; f = j + 4 | 0; i = j + 12 | 0; g = j; c[h >> 2] = b; c[f >> 2] = d; a[i >> 0] = e; c[g >> 2] = Xx(c[h >> 2] | 0, c[f >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { if (!(c[(c[h >> 2] | 0) + 40 >> 2] | 0)) { l = j; return } Sb[c[(c[h >> 2] | 0) + 40 >> 2] & 31](c[(c[h >> 2] | 0) + 24 >> 2] | 0, c[f >> 2] | 0, a[i >> 0] | 0); l = j; return } c[f >> 2] = (c[f >> 2] | 0) - (c[(c[g >> 2] | 0) + 32 >> 2] | 0); if (c[(c[g >> 2] | 0) + 12 >> 2] | 0) { Sb[c[(c[g >> 2] | 0) + 12 >> 2] & 31](c[(c[g >> 2] | 0) + 24 >> 2] | 0, c[f >> 2] | 0, a[i >> 0] | 0); l = j; return } else { a[(c[(c[g >> 2] | 0) + 44 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = a[i >> 0] | 0; l = j; return } } function by(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 8 | 0; f = j + 4 | 0; i = j + 12 | 0; g = j; c[h >> 2] = b; c[f >> 2] = d; a[i >> 0] = e; c[g >> 2] = Yx(c[h >> 2] | 0, c[f >> 2] | 0, 2) | 0; if (!(c[g >> 2] | 0)) { if (!(c[(c[h >> 2] | 0) + 40 >> 2] | 0)) { l = j; return } Sb[c[(c[h >> 2] | 0) + 40 >> 2] & 31](c[(c[h >> 2] | 0) + 24 >> 2] | 0, c[f >> 2] | 0, a[i >> 0] | 0); l = j; return } if (a[(c[g >> 2] | 0) + 29 >> 0] | 0) { l = j; return } c[f >> 2] = (c[f >> 2] | 0) - (c[(c[g >> 2] | 0) + 32 >> 2] | 0); if (c[(c[g >> 2] | 0) + 12 >> 2] | 0) { Sb[c[(c[g >> 2] | 0) + 12 >> 2] & 31](c[(c[g >> 2] | 0) + 24 >> 2] | 0, c[f >> 2] | 0, a[i >> 0] | 0); l = j; return } else { a[(c[(c[g >> 2] | 0) + 44 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = a[i >> 0] | 0; l = j; return } } function cy(d, f, g) { d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; j = m + 8 | 0; h = m + 4 | 0; k = m + 12 | 0; i = m; c[j >> 2] = d; c[h >> 2] = f; b[k >> 1] = g; c[i >> 2] = Yx(c[j >> 2] | 0, c[h >> 2] | 0, 2) | 0; if (!(c[i >> 2] | 0)) { if (!(c[(c[j >> 2] | 0) + 44 >> 2] | 0)) { l = m; return } Sb[c[(c[j >> 2] | 0) + 44 >> 2] & 31](c[(c[j >> 2] | 0) + 24 >> 2] | 0, c[h >> 2] | 0, b[k >> 1] | 0); l = m; return } if (((c[h >> 2] | 0) + 1 | 0) >>> 0 > (c[(c[i >> 2] | 0) + 36 >> 2] | 0) >>> 0) { by(c[j >> 2] | 0, c[h >> 2] | 0, e[k >> 1] >> 8 & 255); by(c[j >> 2] | 0, (c[h >> 2] | 0) + 1 | 0, e[k >> 1] & 255); l = m; return } if (a[(c[i >> 2] | 0) + 29 >> 0] | 0) { l = m; return } c[h >> 2] = (c[h >> 2] | 0) - (c[(c[i >> 2] | 0) + 32 >> 2] | 0); if (c[(c[i >> 2] | 0) + 16 >> 2] | 0) { Sb[c[(c[i >> 2] | 0) + 16 >> 2] & 31](c[(c[i >> 2] | 0) + 24 >> 2] | 0, c[h >> 2] | 0, b[k >> 1] | 0); l = m; return } else { a[(c[(c[i >> 2] | 0) + 44 >> 2] | 0) + (c[h >> 2] | 0) >> 0] = e[k >> 1] >> 8; a[(c[(c[i >> 2] | 0) + 44 >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] = e[k >> 1] | 0; l = m; return } } function dy(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; i = j + 4 | 0; g = j; c[h >> 2] = b; c[f >> 2] = d; c[i >> 2] = e; c[g >> 2] = Yx(c[h >> 2] | 0, c[f >> 2] | 0, 2) | 0; if (!(c[g >> 2] | 0)) { if (!(c[(c[h >> 2] | 0) + 48 >> 2] | 0)) { l = j; return } Sb[c[(c[h >> 2] | 0) + 48 >> 2] & 31](c[(c[h >> 2] | 0) + 24 >> 2] | 0, c[f >> 2] | 0, c[i >> 2] | 0); l = j; return } if (((c[f >> 2] | 0) + 3 | 0) >>> 0 > (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { by(c[h >> 2] | 0, c[f >> 2] | 0, (c[i >> 2] | 0) >>> 24 & 255); by(c[h >> 2] | 0, (c[f >> 2] | 0) + 1 | 0, (c[i >> 2] | 0) >>> 16 & 255); by(c[h >> 2] | 0, (c[f >> 2] | 0) + 2 | 0, (c[i >> 2] | 0) >>> 8 & 255); by(c[h >> 2] | 0, (c[f >> 2] | 0) + 3 | 0, c[i >> 2] & 255); l = j; return } if (a[(c[g >> 2] | 0) + 29 >> 0] | 0) { l = j; return } c[f >> 2] = (c[f >> 2] | 0) - (c[(c[g >> 2] | 0) + 32 >> 2] | 0); if (c[(c[g >> 2] | 0) + 20 >> 2] | 0) { Sb[c[(c[g >> 2] | 0) + 20 >> 2] & 31](c[(c[g >> 2] | 0) + 24 >> 2] | 0, c[f >> 2] | 0, c[i >> 2] | 0); l = j; return } else { a[(c[(c[g >> 2] | 0) + 44 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = (c[i >> 2] | 0) >>> 24; a[(c[(c[g >> 2] | 0) + 44 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] = (c[i >> 2] | 0) >>> 16; a[(c[(c[g >> 2] | 0) + 44 >> 2] | 0) + ((c[f >> 2] | 0) + 2) >> 0] = (c[i >> 2] | 0) >>> 8; a[(c[(c[g >> 2] | 0) + 44 >> 2] | 0) + ((c[f >> 2] | 0) + 3) >> 0] = c[i >> 2]; l = j; return } } function ey(a, b, d, f, g, h, i) { a = a | 0; b = b | 0; d = d | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; v = l; l = l + 48 | 0; s = v + 40 | 0; o = v + 36 | 0; k = v + 32 | 0; n = v + 28 | 0; m = v + 24 | 0; p = v + 20 | 0; t = v + 16 | 0; q = v + 12 | 0; r = v + 8 | 0; u = v + 4 | 0; j = v; c[o >> 2] = a; c[k >> 2] = b; c[n >> 2] = d; c[m >> 2] = f; c[p >> 2] = g; c[t >> 2] = h; c[q >> 2] = i; if (!(c[(c[o >> 2] | 0) + 68 >> 2] | 0)) { c[c[n >> 2] >> 2] = 0; c[s >> 2] = 1; u = c[s >> 2] | 0; l = v; return u | 0 } c[r >> 2] = 0; c[u >> 2] = HD(c[(c[o >> 2] | 0) + 68 >> 2] | 0, c[m >> 2] | 0, c[p >> 2] | 0, c[t >> 2] | 0, c[q >> 2] | 0) | 0; if (!(c[u >> 2] | 0)) { c[c[n >> 2] >> 2] = 0; c[s >> 2] = 1; u = c[s >> 2] | 0; l = v; return u | 0 } c[j >> 2] = YC(c[u >> 2] | 0, c[(c[u >> 2] | 0) + 20 >> 2] | 0) | 0; if (!(c[j >> 2] | 0)) { c[(c[u >> 2] | 0) + 20 >> 2] = 0; c[j >> 2] = c[u >> 2] } if ((c[c[n >> 2] >> 2] | 0) >>> 0 > (e[(c[j >> 2] | 0) + 10 >> 1] | 0) >>> 0) { c[c[n >> 2] >> 2] = e[(c[j >> 2] | 0) + 10 >> 1]; c[r >> 2] = c[r >> 2] | 32 } if ((c[c[n >> 2] >> 2] | 0) >>> 0 > 0) QQ(c[k >> 2] | 0, c[(c[j >> 2] | 0) + 24 >> 2] | 0, c[c[n >> 2] >> 2] | 0) | 0; if (c[(c[j >> 2] | 0) + 12 >> 2] & 8 | 0) c[r >> 2] = c[r >> 2] | 2; if (c[(c[j >> 2] | 0) + 12 >> 2] & 1 | 0) c[r >> 2] = c[r >> 2] | 4; if (c[(c[j >> 2] | 0) + 12 >> 2] & 2 | 0) c[r >> 2] = c[r >> 2] | 8; if (c[(c[j >> 2] | 0) + 12 >> 2] & 4 | 0) c[r >> 2] = c[r >> 2] | 16; if (c[c[u >> 2] >> 2] | 0) { u = (c[u >> 2] | 0) + 20 | 0; c[u >> 2] = (c[u >> 2] | 0) + 1 } c[s >> 2] = c[r >> 2]; u = c[s >> 2] | 0; l = v; return u | 0 } function fy(a, b, d, e, f, g, h) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 48 | 0; q = t + 36 | 0; n = t + 32 | 0; j = t + 28 | 0; m = t + 24 | 0; k = t + 20 | 0; o = t + 16 | 0; r = t + 12 | 0; p = t + 8 | 0; s = t + 4 | 0; i = t; c[n >> 2] = a; c[j >> 2] = b; c[m >> 2] = d; c[k >> 2] = e; c[o >> 2] = f; c[r >> 2] = g; c[p >> 2] = h; TQ(c[j >> 2] | 0, 0, c[m >> 2] | 0) | 0; if (!(c[(c[n >> 2] | 0) + 68 >> 2] | 0)) { c[q >> 2] = 0; s = c[q >> 2] | 0; l = t; return s | 0 } c[s >> 2] = HD(c[(c[n >> 2] | 0) + 68 >> 2] | 0, c[k >> 2] | 0, c[o >> 2] | 0, c[r >> 2] | 0, c[p >> 2] | 0) | 0; if (!(c[s >> 2] | 0)) { c[q >> 2] = 0; s = c[q >> 2] | 0; l = t; return s | 0 } c[i >> 2] = YC(c[s >> 2] | 0, c[(c[s >> 2] | 0) + 20 >> 2] | 0) | 0; if (!(c[i >> 2] | 0)) { c[(c[s >> 2] | 0) + 20 >> 2] = 0; c[i >> 2] = c[s >> 2] } c[m >> 2] = lD(c[i >> 2] | 0, c[j >> 2] | 0, c[m >> 2] | 0) | 0; c[q >> 2] = c[m >> 2]; s = c[q >> 2] | 0; l = t; return s | 0 } function gy(b, d, f, g, h, i, j) { b = b | 0; d = d | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; j = j | 0; var k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; v = l; l = l + 48 | 0; s = v + 36 | 0; o = v + 32 | 0; k = v + 28 | 0; n = v + 24 | 0; m = v + 20 | 0; p = v + 16 | 0; t = v + 12 | 0; q = v + 8 | 0; r = v + 4 | 0; u = v; c[o >> 2] = b; c[k >> 2] = d; c[n >> 2] = f; c[m >> 2] = g; c[p >> 2] = h; c[t >> 2] = i; c[q >> 2] = j; if (!(c[(c[o >> 2] | 0) + 68 >> 2] | 0)) { c[c[n >> 2] >> 2] = 0; c[s >> 2] = 1; u = c[s >> 2] | 0; l = v; return u | 0 } if (a[(c[o >> 2] | 0) + 56 >> 0] | 0) { c[s >> 2] = 64; u = c[s >> 2] | 0; l = v; return u | 0 } c[r >> 2] = 0; c[u >> 2] = HD(c[(c[o >> 2] | 0) + 68 >> 2] | 0, c[m >> 2] | 0, c[p >> 2] | 0, c[t >> 2] | 0, c[q >> 2] | 0) | 0; if (!(c[u >> 2] | 0)) { c[c[n >> 2] >> 2] = 0; c[s >> 2] = 1; u = c[s >> 2] | 0; l = v; return u | 0 } if (c[(c[u >> 2] | 0) + 12 >> 2] & 8 | 0) { c[s >> 2] = 2; u = c[s >> 2] | 0; l = v; return u | 0 } a[(c[o >> 2] | 0) + 72 >> 0] = 1; if ((c[c[n >> 2] >> 2] | 0) >>> 0 > (e[(c[u >> 2] | 0) + 10 >> 1] | 0) >>> 0) { c[c[n >> 2] >> 2] = e[(c[u >> 2] | 0) + 10 >> 1]; c[r >> 2] = c[r >> 2] | 32 } if ((c[c[n >> 2] >> 2] | 0) >>> 0 > 0) QQ(c[(c[u >> 2] | 0) + 24 >> 2] | 0, c[k >> 2] | 0, c[c[n >> 2] >> 2] | 0) | 0; t = (c[u >> 2] | 0) + 12 | 0; c[t >> 2] = c[t >> 2] & -3; if (c[c[u >> 2] >> 2] | 0) { VC(c[c[u >> 2] >> 2] | 0); c[c[u >> 2] >> 2] = 0; c[(c[u >> 2] | 0) + 20 >> 2] = 0 } c[s >> 2] = c[r >> 2]; u = c[s >> 2] | 0; l = v; return u | 0 } function hy(b, d, e, f, g, h, i) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0; t = l; l = l + 48 | 0; q = t + 32 | 0; n = t + 28 | 0; j = t + 24 | 0; m = t + 20 | 0; k = t + 16 | 0; o = t + 12 | 0; r = t + 8 | 0; p = t + 4 | 0; s = t; c[n >> 2] = b; c[j >> 2] = d; c[m >> 2] = e; c[k >> 2] = f; c[o >> 2] = g; c[r >> 2] = h; c[p >> 2] = i; if (!(c[(c[n >> 2] | 0) + 68 >> 2] | 0)) { c[q >> 2] = 0; s = c[q >> 2] | 0; l = t; return s | 0 } if (a[(c[n >> 2] | 0) + 56 >> 0] | 0) { c[q >> 2] = 0; s = c[q >> 2] | 0; l = t; return s | 0 } c[s >> 2] = HD(c[(c[n >> 2] | 0) + 68 >> 2] | 0, c[k >> 2] | 0, c[o >> 2] | 0, c[r >> 2] | 0, c[p >> 2] | 0) | 0; if (!(c[s >> 2] | 0)) { c[q >> 2] = 0; s = c[q >> 2] | 0; l = t; return s | 0 } else { a[(c[n >> 2] | 0) + 72 >> 0] = 1; c[m >> 2] = kD(c[s >> 2] | 0, c[j >> 2] | 0, c[m >> 2] | 0) | 0; c[q >> 2] = c[m >> 2]; s = c[q >> 2] | 0; l = t; return s | 0 } return 0 } function iy(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[d >> 2] = b; if (!(c[(c[d >> 2] | 0) + 68 >> 2] | 0)) { c[e >> 2] = 1; e = c[e >> 2] | 0; l = f; return e | 0 } if (a[(c[d >> 2] | 0) + 56 >> 0] | 0) { c[e >> 2] = 1; e = c[e >> 2] | 0; l = f; return e | 0 } else { AD(c[(c[d >> 2] | 0) + 68 >> 2] | 0); c[(c[d >> 2] | 0) + 28 >> 2] = 0; a[(c[d >> 2] | 0) + 72 >> 0] = 1; c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function jy(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 76 >> 2] = c[f >> 2]; l = d; return } function ky(b, d, e, f, g, h, i, j) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; j = j | 0; var k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0; w = l; l = l + 48 | 0; v = w + 40 | 0; u = w + 36 | 0; p = w + 32 | 0; q = w + 28 | 0; k = w + 24 | 0; o = w + 20 | 0; r = w + 16 | 0; m = w + 12 | 0; n = w + 8 | 0; t = w + 4 | 0; s = w; c[u >> 2] = b; c[p >> 2] = d; c[q >> 2] = e; c[k >> 2] = f; c[o >> 2] = g; c[r >> 2] = h; c[m >> 2] = i; c[n >> 2] = j; if (!(c[(c[u >> 2] | 0) + 68 >> 2] | 0)) { c[v >> 2] = 1; v = c[v >> 2] | 0; l = w; return v | 0 } if (a[(c[u >> 2] | 0) + 56 >> 0] | 0) { c[v >> 2] = 1; v = c[v >> 2] | 0; l = w; return v | 0 } c[t >> 2] = FD(c[(c[u >> 2] | 0) + 68 >> 2] | 0, c[p >> 2] | 0, c[q >> 2] | 0, 1) | 0; if (!(c[t >> 2] | 0)) { c[v >> 2] = 1; v = c[v >> 2] | 0; l = w; return v | 0 } a[(c[u >> 2] | 0) + 72 >> 0] = 1; c[s >> 2] = UC(c[k >> 2] | 0, c[o >> 2] | 0, c[r >> 2] | 0, c[m >> 2] | 0) | 0; if (!(c[s >> 2] | 0)) { c[v >> 2] = 1; v = c[v >> 2] | 0; l = w; return v | 0 } _C(c[s >> 2] | 0, c[n >> 2] | 0); t = (pD(c[t >> 2] | 0, c[s >> 2] | 0) | 0) != 0; f = c[s >> 2] | 0; if (t) { VC(f); c[v >> 2] = 1; v = c[v >> 2] | 0; l = w; return v | 0 } else { bD(f, c[(c[u >> 2] | 0) + 76 >> 2] | 0); u = (c[u >> 2] | 0) + 28 | 0; c[u >> 2] = (c[u >> 2] | 0) + 1; c[v >> 2] = 0; v = c[v >> 2] | 0; l = w; return v | 0 } return 0 } function ly(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 16 | 0; f = k + 12 | 0; h = k + 8 | 0; g = k + 4 | 0; i = k; c[f >> 2] = b; c[h >> 2] = d; c[g >> 2] = e; c[i >> 2] = HQ(88) | 0; if (!(c[i >> 2] | 0)) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } Iy(c[i >> 2] | 0, c[i >> 2] | 0, 0, 0, 0, 0); My(c[i >> 2] | 0, 6); Oy(c[i >> 2] | 0, c[g >> 2] | 0); c[(c[i >> 2] | 0) + 4 >> 2] = 237; c[(c[i >> 2] | 0) + 8 >> 2] = 16; c[(c[i >> 2] | 0) + 12 >> 2] = 17; c[(c[i >> 2] | 0) + 20 >> 2] = 34; a[(c[i >> 2] | 0) + 72 >> 0] = 0; c[(c[i >> 2] | 0) + 76 >> 2] = 2; c[(c[i >> 2] | 0) + 80 >> 2] = c[h >> 2]; c[(c[i >> 2] | 0) + 84 >> 2] = 0; b = PC(c[f >> 2] | 0, c[h >> 2] | 0) | 0; c[(c[i >> 2] | 0) + 68 >> 2] = b; b = c[i >> 2] | 0; if (!(c[(c[i >> 2] | 0) + 68 >> 2] | 0)) { my(b); c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } else { qy(b) | 0; c[j >> 2] = c[i >> 2]; j = c[j >> 2] | 0; l = k; return j | 0 } return 0 } function my(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 32 | 0; g = h + 8 | 0; f = h; d = h + 16 | 0; e = h + 12 | 0; c[d >> 2] = b; c[e >> 2] = c[(c[d >> 2] | 0) + 64 >> 2]; if (a[(c[e >> 2] | 0) + 72 >> 0] | 0 ? (b = c[7422] | 0, c[f >> 2] = c[(c[d >> 2] | 0) + 24 >> 2], kQ(b, 46183, f) | 0, ry(c[e >> 2] | 0) | 0) : 0) { f = c[7422] | 0; c[g >> 2] = c[(c[d >> 2] | 0) + 24 >> 2]; kQ(f, 46216, g) | 0 } if (!(c[(c[e >> 2] | 0) + 68 >> 2] | 0)) { g = c[e >> 2] | 0; g = g + 84 | 0; g = c[g >> 2] | 0; IQ(g); g = c[e >> 2] | 0; IQ(g); l = h; return } zD(c[(c[e >> 2] | 0) + 68 >> 2] | 0); g = c[e >> 2] | 0; g = g + 84 | 0; g = c[g >> 2] | 0; IQ(g); g = c[e >> 2] | 0; IQ(g); l = h; return } function ny(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; p = l; l = l + 48 | 0; o = p + 40 | 0; r = p + 36 | 0; q = p + 32 | 0; j = p + 28 | 0; k = p + 24 | 0; h = p + 20 | 0; f = p + 16 | 0; i = p + 12 | 0; m = p + 8 | 0; g = p + 4 | 0; n = p; c[r >> 2] = a; c[q >> 2] = b; c[j >> 2] = d; c[k >> 2] = e; c[h >> 2] = c[(c[r >> 2] | 0) + 64 >> 2]; c[n >> 2] = c[q >> 2]; while (1) { if ((c[k >> 2] | 0) >>> 0 <= 0) { b = 10; break } if (ID(c[(c[h >> 2] | 0) + 68 >> 2] | 0, c[j >> 2] | 0, f, i, m) | 0) { b = 4; break } c[g >> 2] = 512; if (ey(c[h >> 2] | 0, c[n >> 2] | 0, g, c[f >> 2] | 0, c[i >> 2] | 0, c[m >> 2] | 0, 1) | 0) { b = 6; break } if ((c[g >> 2] | 0) != 512) { b = 8; break } c[n >> 2] = (c[n >> 2] | 0) + 512; c[j >> 2] = (c[j >> 2] | 0) + 1; c[k >> 2] = (c[k >> 2] | 0) - 1 } if ((b | 0) == 4) { c[o >> 2] = 1; r = c[o >> 2] | 0; l = p; return r | 0 } else if ((b | 0) == 6) { c[o >> 2] = 1; r = c[o >> 2] | 0; l = p; return r | 0 } else if ((b | 0) == 8) { c[o >> 2] = 1; r = c[o >> 2] | 0; l = p; return r | 0 } else if ((b | 0) == 10) { c[o >> 2] = 0; r = c[o >> 2] | 0; l = p; return r | 0 } return 0 } function oy(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 48 | 0; r = s + 40 | 0; j = s + 36 | 0; g = s + 32 | 0; n = s + 28 | 0; o = s + 24 | 0; k = s + 20 | 0; h = s + 16 | 0; m = s + 12 | 0; p = s + 8 | 0; i = s + 4 | 0; q = s; c[j >> 2] = b; c[g >> 2] = d; c[n >> 2] = e; c[o >> 2] = f; if (a[(c[j >> 2] | 0) + 56 >> 0] | 0) { c[r >> 2] = 1; r = c[r >> 2] | 0; l = s; return r | 0 } c[k >> 2] = c[(c[j >> 2] | 0) + 64 >> 2]; c[q >> 2] = c[g >> 2]; while (1) { if ((c[o >> 2] | 0) >>> 0 <= 0) { d = 12; break } if (ID(c[(c[k >> 2] | 0) + 68 >> 2] | 0, c[n >> 2] | 0, h, m, p) | 0) { d = 6; break } c[i >> 2] = 512; if (gy(c[k >> 2] | 0, c[q >> 2] | 0, i, c[h >> 2] | 0, c[m >> 2] | 0, c[p >> 2] | 0, 1) | 0) { d = 8; break } if ((c[i >> 2] | 0) != 512) { d = 10; break } c[q >> 2] = (c[q >> 2] | 0) + 512; c[n >> 2] = (c[n >> 2] | 0) + 1; c[o >> 2] = (c[o >> 2] | 0) - 1 } if ((d | 0) == 6) { c[r >> 2] = 1; r = c[r >> 2] | 0; l = s; return r | 0 } else if ((d | 0) == 8) { c[r >> 2] = 1; r = c[r >> 2] | 0; l = s; return r | 0 } else if ((d | 0) == 10) { c[r >> 2] = 1; r = c[r >> 2] | 0; l = s; return r | 0 } else if ((d | 0) == 12) { c[r >> 2] = 0; r = c[r >> 2] | 0; l = s; return r | 0 } return 0 } function dL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; i = k + 16 | 0; j = k + 12 | 0; g = k + 8 | 0; e = k + 4 | 0; f = k; c[i >> 2] = b; c[j >> 2] = d; if (!(c[i >> 2] | 0)) b = 0; else b = cP(c[i >> 2] | 0) | 0; c[e >> 2] = b; if (!(c[j >> 2] | 0)) b = 0; else b = cP(c[j >> 2] | 0) | 0; c[f >> 2] = b; c[g >> 2] = HQ((c[e >> 2] | 0) + (c[f >> 2] | 0) + 1 | 0) | 0; if (!(c[g >> 2] | 0)) { c[h >> 2] = 0; j = c[h >> 2] | 0; l = k; return j | 0 } if ((c[e >> 2] | 0) >>> 0 > 0) QQ(c[g >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0) | 0; if ((c[f >> 2] | 0) >>> 0 > 0) QQ((c[g >> 2] | 0) + (c[e >> 2] | 0) | 0, c[j >> 2] | 0, c[f >> 2] | 0) | 0; a[(c[g >> 2] | 0) + ((c[e >> 2] | 0) + (c[f >> 2] | 0)) >> 0] = 0; c[h >> 2] = c[g >> 2]; j = c[h >> 2] | 0; l = k; return j | 0 } function eL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; i = j + 12 | 0; e = j + 8 | 0; f = j + 4 | 0; g = j; c[i >> 2] = b; c[e >> 2] = d; c[g >> 2] = HQ((c[e >> 2] | 0) + 1 | 0) | 0; if (!(c[g >> 2] | 0)) { c[h >> 2] = 0; i = c[h >> 2] | 0; l = j; return i | 0 } c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[e >> 2] | 0) >>> 0) break; if (!(a[(c[i >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0)) break; a[(c[g >> 2] | 0) + (c[f >> 2] | 0) >> 0] = a[(c[i >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } a[(c[g >> 2] | 0) + (c[f >> 2] | 0) >> 0] = 0; c[h >> 2] = c[g >> 2]; i = c[h >> 2] | 0; l = j; return i | 0 } function fL(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 16 | 0; j = k + 12 | 0; g = k + 8 | 0; i = k + 4 | 0; f = k; c[j >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; if (!(c[j >> 2] | 0)) { c[h >> 2] = 0; j = c[h >> 2] | 0; l = k; return j | 0 } a: do if (c[g >> 2] | 0) while (1) { if (!(a[c[j >> 2] >> 0] | 0)) break a; if (!(bP(c[g >> 2] | 0, a[c[j >> 2] >> 0] | 0) | 0)) break a; c[j >> 2] = (c[j >> 2] | 0) + 1 } while (0); if (c[i >> 2] | 0) { c[f >> 2] = cP(c[j >> 2] | 0) | 0; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; if (!(bP(c[i >> 2] | 0, a[(c[j >> 2] | 0) + ((c[f >> 2] | 0) - 1) >> 0] | 0) | 0)) break; c[f >> 2] = (c[f >> 2] | 0) - 1 } a[(c[j >> 2] | 0) + (c[f >> 2] | 0) >> 0] = 0 } c[h >> 2] = c[j >> 2]; j = c[h >> 2] | 0; l = k; return j | 0 } function gL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 8 | 0; g = h + 4 | 0; e = h; c[g >> 2] = b; c[e >> 2] = d; if (!(c[g >> 2] | 0)) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } if (!(c[e >> 2] | 0)) { c[f >> 2] = c[g >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } while (1) { if (a[c[g >> 2] >> 0] | 0) d = (bP(c[e >> 2] | 0, a[c[g >> 2] >> 0] | 0) | 0) != 0; else d = 0; b = c[g >> 2] | 0; if (!d) break; c[g >> 2] = b + 1 } c[f >> 2] = b; g = c[f >> 2] | 0; l = h; return g | 0 } function hL(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, m = 0; m = l; l = l + 32 | 0; i = m + 20 | 0; k = m + 16 | 0; j = m + 12 | 0; g = m + 8 | 0; h = m + 4 | 0; f = m; c[k >> 2] = b; c[j >> 2] = d; c[g >> 2] = e; if (!(c[k >> 2] | 0)) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } c[f >> 2] = 0; while (1) { if (!(a[(c[k >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0)) break; if (bP(c[j >> 2] | 0, a[(c[k >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) | 0) break; c[f >> 2] = (c[f >> 2] | 0) + 1 } c[h >> 2] = eL(c[k >> 2] | 0, c[f >> 2] | 0) | 0; if (c[c[g >> 2] >> 2] | 0) { if (a[(c[k >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) c[f >> 2] = (c[f >> 2] | 0) + 1; c[c[g >> 2] >> 2] = (c[k >> 2] | 0) + (c[f >> 2] | 0) } c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = m; return k | 0 } function iL(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 8 | 0; d = b; c[e >> 2] = a; c[d >> 2] = ((c[e >> 2] | 0) >>> 0) / 1e6 | 0; c[d + 4 >> 2] = (((c[e >> 2] | 0) >>> 0) % 1e6 | 0) * 1e3; a = Wa(d | 0, 0) | 0; l = b; return a | 0 } function jL(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 32 | 0; e = h + 20 | 0; g = h + 16 | 0; b = h + 12 | 0; d = h + 8 | 0; f = h; c[g >> 2] = a; if (Ab(f | 0, 0) | 0) { c[e >> 2] = 0; g = c[e >> 2] | 0; l = h; return g | 0 } else { c[d >> 2] = ((c[f >> 2] | 0) * 1e6 | 0) + (c[f + 4 >> 2] | 0); c[b >> 2] = (c[d >> 2] | 0) - (c[c[g >> 2] >> 2] | 0); c[c[g >> 2] >> 2] = c[d >> 2]; c[e >> 2] = c[b >> 2]; g = c[e >> 2] | 0; l = h; return g | 0 } return 0 } function kL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 80 | 0; e = g + 60 | 0; f = g; c[g + 64 >> 2] = b; c[e >> 2] = d; if (!(c[14737] | 0)) c[14737] = 1; if (c[e >> 2] | 0) { l = g; return } b = f; d = 58952; e = b + 60 | 0; do { c[b >> 2] = c[d >> 2]; b = b + 4 | 0; d = d + 4 | 0 } while ((b | 0) < (e | 0)); c[f >> 2] = c[f >> 2] & -5121; e = f + 12 | 0; c[e >> 2] = c[e >> 2] & -12; a[f + 17 + 6 >> 0] = 1; a[f + 17 + 5 >> 0] = 0; l = g; return } function lL(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (c[b >> 2] | 0) c[c[b >> 2] >> 2] = 0; kL(0, 0); l = d; return } function mL() { kL(0, 1); return } function nL(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; f = l; l = l + 1328 | 0; d = f + 1056 | 0; g = f + 1052 | 0; h = f + 1048 | 0; e = f; c[g >> 2] = a; c[h >> 2] = b; wL(e); zL(e, c[h >> 2] | 0); if (oL(e, c[g >> 2] | 0, f + 1064 | 0) | 0) { pL(e, 50415, 1); xL(e); c[d >> 2] = 1; h = c[d >> 2] | 0; l = f; return h | 0 } if ((DL(e, 0) | 0) << 24 >> 24 | 0) { pL(e, 50415, 1); xL(e); c[d >> 2] = 1; h = c[d >> 2] | 0; l = f; return h | 0 } else { xL(e); c[d >> 2] = 0; h = c[d >> 2] | 0; l = f; return h | 0 } return 0 } function oL(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 64 | 0; m = o + 48 | 0; n = o + 44 | 0; g = o + 40 | 0; k = o + 36 | 0; f = o + 32 | 0; h = o + 28 | 0; j = o + 24 | 0; i = o + 8 | 0; e = o; c[n >> 2] = a; c[g >> 2] = b; c[k >> 2] = d; a: while (1) { if (!(ML(c[n >> 2] | 0, c[k >> 2] | 0, 256) | 0)) { d = 3; break } if ((fP(c[k >> 2] | 0, 50468) | 0) == 0 ? (ML(c[n >> 2] | 0, c[k >> 2] | 0, 256) | 0) == 0 : 0) { d = 6; break } do if (TL(c[n >> 2] | 0, 50476) | 0) { c[h >> 2] = YL(c[g >> 2] | 0, c[k >> 2] | 0, 1) | 0; if (!(c[h >> 2] | 0)) { d = 9; break a } if (oL(c[n >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0) | 0) { d = 11; break a } if (!(TL(c[n >> 2] | 0, 50478) | 0)) { d = 13; break a } } else { if (TL(c[n >> 2] | 0, 50480) | 0) { pM(i, 0); c[f >> 2] = qL(c[n >> 2] | 0, c[g >> 2] | 0, i, c[k >> 2] | 0) | 0; qM(i); if (c[f >> 2] | 0) { d = 16; break a } else break } if (TL(c[n >> 2] | 0, 50737) | 0) { c[j >> 2] = cM(c[g >> 2] | 0, c[k >> 2] | 0, 1) | 0; if (!(c[j >> 2] | 0)) { d = 19; break a } if (DM(c[n >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0) | 0) { d = 21; break a } if (!(c[(c[j >> 2] | 0) + 8 >> 2] | 0)) { d = 23; break a } else break } if (!(fP(c[k >> 2] | 0, 50483) | 0)) if (rL(c[n >> 2] | 0, c[g >> 2] | 0, c[k >> 2] | 0) | 0) { d = 26; break a } else break; if (fP(c[k >> 2] | 0, 50486) | 0) { d = 32; break a } c[e >> 2] = (TL(c[n >> 2] | 0, 50524) | 0) != 0 & 1; if (!(PL(c[n >> 2] | 0, c[k >> 2] | 0, 256) | 0)) { d = 29; break a } b = (AL(c[n >> 2] | 0, c[k >> 2] | 0, 0, 1) | 0) != 0; if (b & (c[e >> 2] | 0) == 0) { d = 31; break a } } while (0); TL(c[n >> 2] | 0, 50846) | 0 } switch (d | 0) { case 3: { c[m >> 2] = 0; break } case 6: { c[m >> 2] = 1; break } case 9: { c[m >> 2] = 1; break } case 11: { c[m >> 2] = 1; break } case 13: { c[m >> 2] = 1; break } case 16: { c[m >> 2] = 1; break } case 19: { c[m >> 2] = 1; break } case 21: { c[m >> 2] = 1; break } case 23: { c[m >> 2] = 1; break } case 26: { c[m >> 2] = 1; break } case 29: { c[m >> 2] = 1; break } case 31: { pL(c[n >> 2] | 0, 50494, 0);pL(c[n >> 2] | 0, c[k >> 2] | 0, 0);c[m >> 2] = 1; break } case 32: { c[m >> 2] = 1; break } } l = o; return c[m >> 2] | 0 } function pL(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, m = 0, n = 0; n = l; l = l + 48 | 0; m = n; i = n + 28 | 0; k = n + 24 | 0; j = n + 20 | 0; f = n + 32 | 0; g = n + 16 | 0; h = n + 12 | 0; c[i >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; if (c[(c[i >> 2] | 0) + 1040 >> 2] | 0) c[h >> 2] = c[(c[(c[i >> 2] | 0) + 1040 >> 2] | 0) + 4 >> 2]; else c[h >> 2] = 0; if (!(c[h >> 2] | 0)) c[h >> 2] = 50434; d = c[7422] | 0; e = (c[(c[i >> 2] | 0) + 1028 >> 2] | 0) + 1 | 0; k = c[k >> 2] | 0; c[m >> 2] = c[h >> 2]; c[m + 4 >> 2] = e; c[m + 8 >> 2] = k; kQ(d, 50441, m) | 0; if (!(c[j >> 2] | 0)) { m = c[7422] | 0; PP(50466, m) | 0; l = n; return } PP(50452, c[7422] | 0) | 0; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 64) { f = 15; break } a[f >> 0] = DL(c[i >> 2] | 0, c[g >> 2] | 0) | 0; if (!(a[f >> 0] | 0)) { f = 10; break } if ((a[f >> 0] | 0) == 13) { f = 13; break } if ((a[f >> 0] | 0) == 10) { f = 13; break } uQ(a[f >> 0] | 0, c[7422] | 0) | 0; c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((f | 0) == 10) { PP(50455, c[7422] | 0) | 0; m = c[7422] | 0; PP(50466, m) | 0; l = n; return } else if ((f | 0) == 13) { PP(50461, c[7422] | 0) | 0; m = c[7422] | 0; PP(50466, m) | 0; l = n; return } else if ((f | 0) == 15) { m = c[7422] | 0; PP(50466, m) | 0; l = n; return } } function qL(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; g = k + 20 | 0; m = k + 16 | 0; h = k + 12 | 0; i = k + 8 | 0; f = k + 4 | 0; j = k; c[m >> 2] = a; c[h >> 2] = b; c[i >> 2] = d; c[f >> 2] = e; do if (!(DM(c[m >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0)) { if (!(c[(c[i >> 2] | 0) + 8 >> 2] | 0)) { c[g >> 2] = 1; break } c[j >> 2] = cM(c[h >> 2] | 0, c[f >> 2] | 0, 0) | 0; if (c[j >> 2] | 0) { c[g >> 2] = 0; break } c[j >> 2] = cM(c[h >> 2] | 0, c[f >> 2] | 0, 1) | 0; if (!(c[j >> 2] | 0)) { c[g >> 2] = 1; break } else { uM(c[j >> 2] | 0, c[i >> 2] | 0); c[g >> 2] = 0; break } } else c[g >> 2] = 1; while (0); l = k; return c[g >> 2] | 0 } function rL(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 48 | 0; g = n + 36 | 0; h = n + 32 | 0; i = n + 28 | 0; e = n + 24 | 0; f = n + 20 | 0; j = n + 16 | 0; k = n; c[h >> 2] = a; c[i >> 2] = b; c[e >> 2] = d; pM(k, 0); if (DM(c[h >> 2] | 0, c[i >> 2] | 0, k) | 0) { qM(k); c[g >> 2] = 1; m = c[g >> 2] | 0; l = n; return m | 0 } if ((c[k + 8 >> 2] | 0) == 1 ? c[k + 12 >> 2] | 0 : 0) { c[j >> 2] = 0; c[f >> 2] = 1 } else { c[j >> 2] = 1; c[f >> 2] = 0 } qM(k); if (sL(c[h >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0, c[j >> 2] | 0) | 0) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = n; return m | 0 } while (1) { if (!(SL(c[h >> 2] | 0, 50519) | 0)) break; if (!(SL(c[h >> 2] | 0, 50483) | 0)) { m = 19; break } pM(k, 0); if (DM(c[h >> 2] | 0, c[i >> 2] | 0, k) | 0) { m = 12; break } c[j >> 2] = 1; if (((c[f >> 2] | 0) == 0 ? (c[k + 8 >> 2] | 0) == 1 : 0) ? c[k + 12 >> 2] | 0 : 0) { c[j >> 2] = 0; c[f >> 2] = 1 } qM(k); if (sL(c[h >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0, c[j >> 2] | 0) | 0) { m = 18; break } } if ((m | 0) == 12) { qM(k); c[g >> 2] = 1; m = c[g >> 2] | 0; l = n; return m | 0 } else if ((m | 0) == 18) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = n; return m | 0 } else if ((m | 0) == 19 ? sL(c[h >> 2] | 0, c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0 : 0) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = n; return m | 0 } c[g >> 2] = 0; m = c[g >> 2] | 0; l = n; return m | 0 } function sL(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; h = k + 12 | 0; i = k + 8 | 0; f = k + 4 | 0; j = k; c[h >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; c[j >> 2] = e; do if (TL(c[h >> 2] | 0, 50476) | 0) { d = c[h >> 2] | 0; if (c[j >> 2] | 0) { c[g >> 2] = tL(d) | 0; break } if (oL(d, c[i >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = 1; break } if (!(TL(c[h >> 2] | 0, 50478) | 0)) { c[g >> 2] = 1; break } else { c[g >> 2] = 0; break } } else c[g >> 2] = 1; while (0); l = k; return c[g >> 2] | 0 } function tL(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; e = g + 8 | 0; b = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = 1; while (1) { a = (DL(c[e >> 2] | 0, 0) | 0) << 24 >> 24; c[b >> 2] = a; if (!a) { b = 8; break } GL(c[e >> 2] | 0, 1); if ((c[b >> 2] | 0) == 123) { c[d >> 2] = (c[d >> 2] | 0) + 1; continue } if ((c[b >> 2] | 0) != 125) continue; c[d >> 2] = (c[d >> 2] | 0) - 1; if (!(c[d >> 2] | 0)) { b = 7; break } } if ((b | 0) == 7) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((b | 0) == 8) { c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function uL(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; g = l; l = l + 1328 | 0; e = g + 1060 | 0; h = g + 1056 | 0; i = g + 1052 | 0; j = g + 1048 | 0; f = g; c[h >> 2] = a; c[i >> 2] = b; c[j >> 2] = d; wL(f); a = (AL(f, c[j >> 2] | 0, c[i >> 2] | 0, 0) | 0) != 0; d = c[h >> 2] | 0; do if (!a) { if (oL(f, d, g + 1064 | 0) | 0) { pL(f, 50415, 1); xL(f); c[e >> 2] = 1; break } if ((DL(f, 0) | 0) << 24 >> 24 | 0) { pL(f, 50415, 1); xL(f); c[e >> 2] = 1; break } else { xL(f); c[e >> 2] = 0; break } } else { VL(d); c[e >> 2] = 1 } while (0); l = g; return c[e >> 2] | 0 } function vL(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; g = i + 16 | 0; h = i + 12 | 0; d = i + 8 | 0; f = i + 4 | 0; e = i; c[h >> 2] = a; c[d >> 2] = b; c[e >> 2] = dQ(c[d >> 2] | 0, 50621) | 0; if (!(c[e >> 2] | 0)) { c[g >> 2] = 1; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[f >> 2] = uL(c[h >> 2] | 0, c[e >> 2] | 0, c[d >> 2] | 0) | 0; UP(c[e >> 2] | 0) | 0; c[g >> 2] = c[f >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function wL(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 0; c[(c[d >> 2] | 0) + 1028 >> 2] = 0; c[(c[d >> 2] | 0) + 1032 >> 2] = 0; c[(c[d >> 2] | 0) + 1040 >> 2] = 0; c[(c[d >> 2] | 0) + 1044 >> 2] = 0; l = b; return } function xL(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } yL(c[(c[b >> 2] | 0) + 1040 >> 2] | 0); l = d; return } function yL(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; while (1) { if (!(c[b >> 2] | 0)) break; c[d >> 2] = c[b >> 2]; c[b >> 2] = c[c[b >> 2] >> 2]; if (c[(c[d >> 2] | 0) + 12 >> 2] | 0) UP(c[(c[d >> 2] | 0) + 8 >> 2] | 0) | 0; IQ(c[(c[d >> 2] | 0) + 4 >> 2] | 0); IQ(c[d >> 2] | 0) } l = e; return } function zL(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 1044 >> 2] = c[f >> 2]; l = d; return } function AL(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 24 | 0; m = n + 20 | 0; f = n + 16 | 0; i = n + 12 | 0; h = n + 8 | 0; g = n + 4 | 0; k = n; c[m >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; c[h >> 2] = e; c[k >> 2] = BL() | 0; if (!(c[k >> 2] | 0)) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(c[(c[m >> 2] | 0) + 1040 >> 2] | 0)) c[g >> 2] = CL(0, c[f >> 2] | 0) | 0; else { c[g >> 2] = CL(c[(c[(c[m >> 2] | 0) + 1040 >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0; c[(c[(c[m >> 2] | 0) + 1040 >> 2] | 0) + 16 >> 2] = c[(c[m >> 2] | 0) + 1028 >> 2]; c[(c[(c[m >> 2] | 0) + 1040 >> 2] | 0) + 20 >> 2] = c[(c[m >> 2] | 0) + 1032 >> 2] } if (!(c[g >> 2] | 0)) { yL(c[k >> 2] | 0); c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } c[(c[k >> 2] | 0) + 4 >> 2] = c[g >> 2]; if (c[i >> 2] | 0) { e = c[k >> 2] | 0; b = c[i >> 2] | 0 } else { b = dQ(c[g >> 2] | 0, 50759) | 0; e = c[k >> 2] | 0 } c[e + 8 >> 2] = b; if (!(c[(c[k >> 2] | 0) + 8 >> 2] | 0)) { yL(c[k >> 2] | 0); c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else { c[(c[k >> 2] | 0) + 12 >> 2] = (c[i >> 2] | 0 ? (c[h >> 2] | 0) != 0 : 0) & 1; c[c[k >> 2] >> 2] = c[(c[m >> 2] | 0) + 1040 >> 2]; c[(c[m >> 2] | 0) + 1040 >> 2] = c[k >> 2]; c[(c[m >> 2] | 0) + 1028 >> 2] = 0; c[(c[m >> 2] | 0) + 1032 >> 2] = 0; c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function BL() { var a = 0, b = 0, d = 0; d = l; l = l + 16 | 0; a = d + 4 | 0; b = d; c[b >> 2] = HQ(24) | 0; if (!(c[b >> 2] | 0)) { c[a >> 2] = 0; b = c[a >> 2] | 0; l = d; return b | 0 } else { c[c[b >> 2] >> 2] = 0; c[(c[b >> 2] | 0) + 4 >> 2] = 0; c[(c[b >> 2] | 0) + 8 >> 2] = 0; c[(c[b >> 2] | 0) + 12 >> 2] = 0; c[a >> 2] = c[b >> 2]; b = c[a >> 2] | 0; l = d; return b | 0 } return 0 } function CL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; j = k + 20 | 0; e = k + 16 | 0; h = k + 12 | 0; f = k + 8 | 0; g = k + 4 | 0; i = k; c[e >> 2] = b; c[h >> 2] = d; a: do if ((a[c[h >> 2] >> 0] | 0) == 47) c[f >> 2] = 0; else { if (!(c[e >> 2] | 0)) { c[f >> 2] = 0; break } c[f >> 2] = cP(c[e >> 2] | 0) | 0; while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break; if ((a[(c[e >> 2] | 0) + ((c[f >> 2] | 0) - 1) >> 0] | 0) != 47) break; c[f >> 2] = (c[f >> 2] | 0) - 1 } while (1) { if ((c[f >> 2] | 0) >>> 0 <= 0) break a; if ((a[(c[e >> 2] | 0) + ((c[f >> 2] | 0) - 1) >> 0] | 0) == 47) break a; c[f >> 2] = (c[f >> 2] | 0) - 1 } } while (0); c[g >> 2] = cP(c[h >> 2] | 0) | 0; c[i >> 2] = HQ((c[f >> 2] | 0) + (c[g >> 2] | 0) + 1 | 0) | 0; if (!(c[i >> 2] | 0)) { c[j >> 2] = 0; j = c[j >> 2] | 0; l = k; return j | 0 } if ((c[f >> 2] | 0) >>> 0 > 0) QQ(c[i >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0) | 0; QQ((c[i >> 2] | 0) + (c[f >> 2] | 0) | 0, c[h >> 2] | 0, c[g >> 2] | 0) | 0; a[(c[i >> 2] | 0) + ((c[f >> 2] | 0) + (c[g >> 2] | 0)) >> 0] = 0; c[j >> 2] = c[i >> 2]; j = c[j >> 2] | 0; l = k; return j | 0 } function DL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[e >> 2] = b; c[f >> 2] = d; if ((c[f >> 2] | 0) >>> 0 >= 256) { a[g >> 0] = 0; g = a[g >> 0] | 0; l = h; return g | 0 } while (1) { b = c[e >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 < (c[c[e >> 2] >> 2] | 0) >>> 0) { d = 7; break } b = (EL(b) | 0) << 24 >> 24; c[(c[e >> 2] | 0) + 4 + (c[c[e >> 2] >> 2] << 2) >> 2] = b; if (!(c[(c[e >> 2] | 0) + 4 + (c[c[e >> 2] >> 2] << 2) >> 2] | 0)) { d = 5; break } b = c[e >> 2] | 0; c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((d | 0) == 5) { a[g >> 0] = 0; g = a[g >> 0] | 0; l = h; return g | 0 } else if ((d | 0) == 7) { a[g >> 0] = c[b + 4 + (c[f >> 2] << 2) >> 2]; g = a[g >> 0] | 0; l = h; return g | 0 } return 0 } function EL(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; f = g + 4 | 0; d = g; c[f >> 2] = b; if (c[(c[f >> 2] | 0) + 1040 >> 2] | 0) { while (1) { if (!(c[(c[f >> 2] | 0) + 1040 >> 2] | 0)) { b = 6; break } c[d >> 2] = vQ(c[(c[(c[f >> 2] | 0) + 1040 >> 2] | 0) + 8 >> 2] | 0) | 0; if ((c[d >> 2] | 0) != -1) { b = 4; break } FL(c[f >> 2] | 0) | 0 } if ((b | 0) == 4) { a[e >> 0] = c[d >> 2]; f = a[e >> 0] | 0; l = g; return f | 0 } else if ((b | 0) == 6) { a[e >> 0] = 0; f = a[e >> 0] | 0; l = g; return f | 0 } } if (!(c[(c[f >> 2] | 0) + 1044 >> 2] | 0)) { a[e >> 0] = 0; f = a[e >> 0] | 0; l = g; return f | 0 } if (!(a[c[(c[f >> 2] | 0) + 1044 >> 2] >> 0] | 0)) { a[e >> 0] = 0; f = a[e >> 0] | 0; l = g; return f | 0 } else { c[d >> 2] = a[c[(c[f >> 2] | 0) + 1044 >> 2] >> 0]; f = (c[f >> 2] | 0) + 1044 | 0; c[f >> 2] = (c[f >> 2] | 0) + 1; a[e >> 0] = c[d >> 2]; f = a[e >> 0] | 0; l = g; return f | 0 } return 0 } function FL(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; e = f + 4 | 0; d = f; c[e >> 2] = a; if (!(c[(c[e >> 2] | 0) + 1040 >> 2] | 0)) { c[b >> 2] = 0; e = c[b >> 2] | 0; l = f; return e | 0 } c[d >> 2] = c[(c[e >> 2] | 0) + 1040 >> 2]; c[(c[e >> 2] | 0) + 1040 >> 2] = c[c[(c[e >> 2] | 0) + 1040 >> 2] >> 2]; c[c[d >> 2] >> 2] = 0; yL(c[d >> 2] | 0); if (c[(c[e >> 2] | 0) + 1040 >> 2] | 0) { c[(c[e >> 2] | 0) + 1028 >> 2] = c[(c[(c[e >> 2] | 0) + 1040 >> 2] | 0) + 16 >> 2]; c[(c[e >> 2] | 0) + 1032 >> 2] = c[(c[(c[e >> 2] | 0) + 1040 >> 2] | 0) + 20 >> 2] } c[b >> 2] = 0; e = c[b >> 2] | 0; l = f; return e | 0 } function GL(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[f >> 2] = a; c[d >> 2] = b; a = (c[d >> 2] | 0) >>> 0 < (c[c[f >> 2] >> 2] | 0) >>> 0; c[e >> 2] = 0; if (!a) { while (1) { b = c[f >> 2] | 0; if ((c[e >> 2] | 0) >>> 0 >= (c[c[f >> 2] >> 2] | 0) >>> 0) break; HL(b, c[(c[f >> 2] | 0) + 4 + (c[e >> 2] << 2) >> 2] & 255); c[e >> 2] = (c[e >> 2] | 0) + 1 } c[d >> 2] = (c[d >> 2] | 0) - (c[b >> 2] | 0); c[c[f >> 2] >> 2] = 0; while (1) { if ((c[d >> 2] | 0) >>> 0 <= 0) break; e = c[f >> 2] | 0; HL(e, EL(c[f >> 2] | 0) | 0); c[d >> 2] = (c[d >> 2] | 0) - 1 } l = g; return } while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[d >> 2] | 0) >>> 0) break; HL(c[f >> 2] | 0, c[(c[f >> 2] | 0) + 4 + (c[e >> 2] << 2) >> 2] & 255); c[e >> 2] = (c[e >> 2] | 0) + 1 } c[e >> 2] = c[d >> 2]; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[c[f >> 2] >> 2] | 0) >>> 0) break; c[(c[f >> 2] | 0) + 4 + ((c[e >> 2] | 0) - (c[d >> 2] | 0) << 2) >> 2] = c[(c[f >> 2] | 0) + 4 + (c[e >> 2] << 2) >> 2]; c[e >> 2] = (c[e >> 2] | 0) + 1 } f = c[f >> 2] | 0; c[f >> 2] = (c[f >> 2] | 0) - (c[d >> 2] | 0); l = g; return } function HL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; e = g + 4 | 0; c[f >> 2] = b; a[e >> 0] = d; if (!(a[e >> 0] | 0)) { l = g; return } b = (c[f >> 2] | 0) + 1032 | 0; c[b >> 2] = (c[b >> 2] | 0) + 1; if ((a[e >> 0] | 0) == 13) { e = (c[f >> 2] | 0) + 1028 | 0; c[e >> 2] = (c[e >> 2] | 0) + 1; c[(c[f >> 2] | 0) + 1036 >> 2] = 1; l = g; return } d = (c[f >> 2] | 0) + 1036 | 0; if ((a[e >> 0] | 0) == 10) { if (!(c[d >> 2] | 0)) { e = (c[f >> 2] | 0) + 1028 | 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } d = (c[f >> 2] | 0) + 1036 | 0 } c[d >> 2] = 0; l = g; return } function IL(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; d = g + 8 | 0; c[e >> 2] = b; c[f >> 2] = 0; a: while (1) { a[d >> 0] = DL(c[e >> 2] | 0, 0) | 0; do if (JL(a[d >> 0] | 0) | 0) GL(c[e >> 2] | 0, 1); else { if ((a[d >> 0] | 0) == 35) { KL(c[e >> 2] | 0); break } if ((a[d >> 0] | 0) != 47) { d = 9; break a } if (((DL(c[e >> 2] | 0, 1) | 0) << 24 >> 24 | 0) != 42) { d = 9; break a } GL(c[e >> 2] | 0, 2); LL(c[e >> 2] | 0) } while (0); c[f >> 2] = 1 } if ((d | 0) == 9) { l = g; return c[f >> 2] | 0 } return 0 } function JL(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g; d = g + 4 | 0; a[d >> 0] = b; do if ((a[d >> 0] | 0) != 32 ? (a[d >> 0] | 0) != 9 : 0) { if ((a[d >> 0] | 0) != 13 ? (a[d >> 0] | 0) != 10 : 0) { c[e >> 2] = 0; break } c[e >> 2] = 1 } else f = 3; while (0); if ((f | 0) == 3) c[e >> 2] = 1; l = g; return c[e >> 2] | 0 } function KL(b) { b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f; d = f + 4 | 0; c[e >> 2] = b; while (1) { a[d >> 0] = DL(c[e >> 2] | 0, 0) | 0; if (!(a[d >> 0] | 0)) { d = 7; break } GL(c[e >> 2] | 0, 1); if ((a[d >> 0] | 0) == 13) { d = 4; break } if ((a[d >> 0] | 0) == 10) { d = 7; break } } if ((d | 0) == 4) { if (((DL(c[e >> 2] | 0, 0) | 0) << 24 >> 24 | 0) != 10) { l = f; return } GL(c[e >> 2] | 0, 1); l = f; return } else if ((d | 0) == 7) { l = f; return } } function LL(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; e = g; d = g + 8 | 0; c[f >> 2] = b; c[e >> 2] = 0; a[d >> 0] = 0; a[d + 1 >> 0] = 0; while (1) { a[d >> 0] = a[d + 1 >> 0] | 0; a[d + 1 >> 0] = DL(c[f >> 2] | 0, 0) | 0; if (!(a[d + 1 >> 0] | 0)) { d = 10; break } GL(c[f >> 2] | 0, 1); if ((a[d >> 0] | 0) == 42 ? (a[d + 1 >> 0] | 0) == 47 : 0) { if (!(c[e >> 2] | 0)) { d = 10; break } a[d + 1 >> 0] = 0; c[e >> 2] = (c[e >> 2] | 0) - 1; continue } if ((a[d >> 0] | 0) != 47) continue; if ((a[d + 1 >> 0] | 0) != 42) continue; a[d + 1 >> 0] = 0; c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((d | 0) == 10) { l = g; return } } function ML(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, m = 0; m = l; l = l + 32 | 0; i = m + 16 | 0; j = m + 12 | 0; k = m + 8 | 0; h = m + 4 | 0; g = m; f = m + 20 | 0; c[j >> 2] = b; c[k >> 2] = d; c[h >> 2] = e; IL(c[j >> 2] | 0) | 0; a[f >> 0] = DL(c[j >> 2] | 0, 0) | 0; if ((NL(a[f >> 0] | 0) | 0) == 0 ? (a[f >> 0] | 0) != 36 : 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; e = a[f >> 0] | 0; b = c[k >> 2] | 0; d = c[g >> 2] | 0; c[g >> 2] = d + 1; a[b + d >> 0] = e; a[f >> 0] = DL(c[j >> 2] | 0, c[g >> 2] | 0) | 0; if (NL(a[f >> 0] | 0) | 0) continue; if (OL(a[f >> 0] | 0) | 0) continue; if ((a[f >> 0] | 0) == 46) continue; if ((a[f >> 0] | 0) == 91) continue; if ((a[f >> 0] | 0) == 93) continue; if ((a[f >> 0] | 0) == 43 & (c[g >> 2] | 0) >>> 0 > 0 ? (a[(c[k >> 2] | 0) + ((c[g >> 2] | 0) - 1) >> 0] | 0) == 91 : 0) continue; if (!((a[f >> 0] | 0) == 45 & (c[g >> 2] | 0) >>> 0 > 0)) break; if ((a[(c[k >> 2] | 0) + ((c[g >> 2] | 0) - 1) >> 0] | 0) != 91) break } if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } else { a[(c[k >> 2] | 0) + (c[g >> 2] | 0) >> 0] = 0; GL(c[j >> 2] | 0, c[g >> 2] | 0); c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function NL(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g; d = g + 4 | 0; a[d >> 0] = b; if ((a[d >> 0] | 0) >= 97 ? (a[d >> 0] | 0) <= 122 : 0) c[e >> 2] = 1; else f = 4; do if ((f | 0) == 4) { if ((a[d >> 0] | 0) >= 65 ? (a[d >> 0] | 0) <= 90 : 0) { c[e >> 2] = 1; break } if ((a[d >> 0] | 0) == 95) { c[e >> 2] = 1; break } else { c[e >> 2] = 0; break } } while (0); l = g; return c[e >> 2] | 0 } function OL(b) { b = b | 0; var d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; d = e; f = e + 4 | 0; a[f >> 0] = b; if ((a[f >> 0] | 0) >= 48 ? (a[f >> 0] | 0) <= 57 : 0) { c[d >> 2] = 1; f = c[d >> 2] | 0; l = e; return f | 0 } c[d >> 2] = 0; f = c[d >> 2] | 0; l = e; return f | 0 } function PL(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, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 20 | 0; k = n + 16 | 0; m = n + 12 | 0; i = n + 8 | 0; f = n + 24 | 0; g = n + 4 | 0; h = n; c[k >> 2] = b; c[m >> 2] = d; c[i >> 2] = e; IL(c[k >> 2] | 0) | 0; a[f >> 0] = DL(c[k >> 2] | 0, 0) | 0; if ((a[f >> 0] | 0) != 34) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } c[g >> 2] = 1; c[h >> 2] = 0; a: while (1) { if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { f = 22; break } a[f >> 0] = DL(c[k >> 2] | 0, c[g >> 2] | 0) | 0; if (!(a[f >> 0] | 0)) { f = 6; break } b: do if ((a[f >> 0] | 0) != 92) { if ((a[f >> 0] | 0) == 34) { f = 22; break a } } else switch ((DL(c[k >> 2] | 0, (c[g >> 2] | 0) + 1 | 0) | 0) << 24 >> 24 | 0) { case 97: { a[f >> 0] = 7;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 98: { a[f >> 0] = 8;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 102: { a[f >> 0] = 12;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 110: { a[f >> 0] = 10;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 114: { a[f >> 0] = 13;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 118: { a[f >> 0] = 11;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 92: { a[f >> 0] = 92;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 34: { a[f >> 0] = 34;c[g >> 2] = (c[g >> 2] | 0) + 1; break b } case 120: { if (QL(c[k >> 2] | 0, f, (c[g >> 2] | 0) + 2 | 0) | 0) { f = 18; break a } c[g >> 2] = (c[g >> 2] | 0) + 3; break b } default: break b } while (0); e = a[f >> 0] | 0; b = c[m >> 2] | 0; d = c[h >> 2] | 0; c[h >> 2] = d + 1; a[b + d >> 0] = e; c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((f | 0) == 6) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } else if ((f | 0) == 18) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } else if ((f | 0) == 22) if ((c[h >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } else { a[(c[m >> 2] | 0) + (c[h >> 2] | 0) >> 0] = 0; GL(c[k >> 2] | 0, (c[g >> 2] | 0) + 1 | 0); c[j >> 2] = 1; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function QL(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, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 32 | 0; j = p + 24 | 0; k = p + 20 | 0; n = p + 16 | 0; i = p + 12 | 0; f = p + 28 | 0; h = p + 8 | 0; g = p + 4 | 0; m = p; c[k >> 2] = b; c[n >> 2] = d; c[i >> 2] = e; c[m >> 2] = 0; c[h >> 2] = 0; a: while (1) { if ((c[h >> 2] | 0) >>> 0 >= 2) { o = 14; break } a[f >> 0] = DL(c[k >> 2] | 0, (c[i >> 2] | 0) + (c[h >> 2] | 0) | 0) | 0; if ((a[f >> 0] | 0) >= 48 ? (a[f >> 0] | 0) <= 57 : 0) c[g >> 2] = (a[f >> 0] | 0) - 48; else o = 6; do if ((o | 0) == 6) { o = 0; if ((a[f >> 0] | 0) >= 97 ? (a[f >> 0] | 0) <= 102 : 0) { c[g >> 2] = (a[f >> 0] | 0) - 97 + 10; break } if ((a[f >> 0] | 0) < 65) { o = 12; break a } if ((a[f >> 0] | 0) > 70) { o = 12; break a } c[g >> 2] = (a[f >> 0] | 0) - 65 + 10 } while (0); c[m >> 2] = (c[m >> 2] << 4) + (c[g >> 2] | 0); c[h >> 2] = (c[h >> 2] | 0) + 1 } if ((o | 0) == 12) { c[j >> 2] = 1; o = c[j >> 2] | 0; l = p; return o | 0 } else if ((o | 0) == 14) { a[c[n >> 2] >> 0] = c[m >> 2]; c[j >> 2] = 0; o = c[j >> 2] | 0; l = p; return o | 0 } return 0 } function RL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; f = i + 8 | 0; g = i + 4 | 0; e = i; c[f >> 2] = b; c[g >> 2] = d; IL(c[f >> 2] | 0) | 0; c[e >> 2] = 0; while (1) { if (!(a[(c[g >> 2] | 0) + (c[e >> 2] | 0) >> 0] | 0)) { e = 6; break } d = (DL(c[f >> 2] | 0, c[e >> 2] | 0) | 0) << 24 >> 24; if ((d | 0) != (a[(c[g >> 2] | 0) + (c[e >> 2] | 0) >> 0] | 0)) { e = 4; break } c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((e | 0) == 4) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } else if ((e | 0) == 6) { c[h >> 2] = 1; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function SL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 4 | 0; e = k + 16 | 0; f = k; c[h >> 2] = b; c[i >> 2] = d; IL(c[h >> 2] | 0) | 0; c[f >> 2] = 0; while (1) { d = (a[(c[i >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0) != 0; b = DL(c[h >> 2] | 0, c[f >> 2] | 0) | 0; if (!d) break; if ((b << 24 >> 24 | 0) != (a[(c[i >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0)) { j = 4; break } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((j | 0) == 4) { c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } a[e >> 0] = b; if ((NL(a[e >> 0] | 0) | 0) == 0 ? (OL(a[e >> 0] | 0) | 0) == 0 : 0) { GL(c[h >> 2] | 0, c[f >> 2] | 0); c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } function TL(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; i = j + 12 | 0; g = j + 8 | 0; h = j + 4 | 0; f = j; c[g >> 2] = b; c[h >> 2] = d; IL(c[g >> 2] | 0) | 0; c[f >> 2] = 0; while (1) { d = c[g >> 2] | 0; e = c[f >> 2] | 0; if (!(a[(c[h >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0)) { b = 6; break } e = (DL(d, e) | 0) << 24 >> 24; if ((e | 0) != (a[(c[h >> 2] | 0) + (c[f >> 2] | 0) >> 0] | 0)) { b = 4; break } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((b | 0) == 4) { c[i >> 2] = 0; i = c[i >> 2] | 0; l = j; return i | 0 } else if ((b | 0) == 6) { GL(d, e); c[i >> 2] = 1; i = c[i >> 2] | 0; l = j; return i | 0 } return 0 } function UL(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; b = f + 4 | 0; e = f; c[b >> 2] = a; c[e >> 2] = HQ(28) | 0; if (!(c[e >> 2] | 0)) { c[d >> 2] = 0; e = c[d >> 2] | 0; l = f; return e | 0 } c[c[e >> 2] >> 2] = 0; c[(c[e >> 2] | 0) + 4 >> 2] = 0; if (!(c[b >> 2] | 0)) c[b >> 2] = 59585; if (c[b >> 2] | 0) { a = gP(c[b >> 2] | 0) | 0; b = c[e >> 2] | 0 } else { a = 0; b = c[e >> 2] | 0 } c[b + 8 >> 2] = a; c[(c[e >> 2] | 0) + 12 >> 2] = 0; c[(c[e >> 2] | 0) + 16 >> 2] = 0; c[(c[e >> 2] | 0) + 20 >> 2] = 0; c[(c[e >> 2] | 0) + 24 >> 2] = 0; c[d >> 2] = c[e >> 2]; e = c[d >> 2] | 0; l = f; return e | 0 } function VL(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[b >> 2] = a; while (1) { if (!(c[b >> 2] | 0)) break; c[d >> 2] = c[b >> 2]; c[b >> 2] = c[c[b >> 2] >> 2]; tM(c[(c[d >> 2] | 0) + 20 >> 2] | 0); VL(c[(c[d >> 2] | 0) + 12 >> 2] | 0); IQ(c[(c[d >> 2] | 0) + 8 >> 2] | 0); IQ(c[d >> 2] | 0) } l = e; return } function WL(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; g = j + 12 | 0; e = j + 8 | 0; h = j + 4 | 0; f = j; c[e >> 2] = a; c[h >> 2] = b; c[f >> 2] = d; do if (!(c[h >> 2] | 0)) if (!(c[e >> 2] | 0)) { c[g >> 2] = 0; break } else { c[h >> 2] = c[(c[e >> 2] | 0) + 12 >> 2]; i = 6; break } else { c[h >> 2] = c[c[h >> 2] >> 2]; i = 6 } while (0); do if ((i | 0) == 6) { if (!(c[h >> 2] | 0)) { c[g >> 2] = 0; break } if (!(c[f >> 2] | 0)) { c[g >> 2] = c[h >> 2]; break } while (1) { if (!(c[h >> 2] | 0)) { i = 14; break } i = (fP(c[(c[h >> 2] | 0) + 8 >> 2] | 0, c[f >> 2] | 0) | 0) == 0; d = c[h >> 2] | 0; if (i) { i = 12; break } c[h >> 2] = c[d >> 2] } if ((i | 0) == 12) { c[g >> 2] = d; break } else if ((i | 0) == 14) { c[g >> 2] = 0; break } } while (0); l = j; return c[g >> 2] | 0 } function XL(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; g = j + 12 | 0; e = j + 8 | 0; h = j + 4 | 0; f = j; c[e >> 2] = a; c[h >> 2] = b; c[f >> 2] = d; do if (!(c[h >> 2] | 0)) if (!(c[e >> 2] | 0)) { c[g >> 2] = 0; break } else { c[h >> 2] = c[(c[e >> 2] | 0) + 20 >> 2]; i = 6; break } else { c[h >> 2] = c[c[h >> 2] >> 2]; i = 6 } while (0); do if ((i | 0) == 6) { if (!(c[h >> 2] | 0)) { c[g >> 2] = 0; break } if (!(c[f >> 2] | 0)) { c[g >> 2] = 0; break } while (1) { if (!(c[h >> 2] | 0)) { i = 14; break } i = (fP(c[(c[h >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0) == 0; d = c[h >> 2] | 0; if (i) { i = 12; break } c[h >> 2] = c[d >> 2] } if ((i | 0) == 12) { c[g >> 2] = d; break } else if ((i | 0) == 14) { c[g >> 2] = 0; break } } while (0); l = j; return c[g >> 2] | 0 } function YL(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 304 | 0; n = r + 32 | 0; o = r + 28 | 0; j = r + 24 | 0; f = r + 20 | 0; p = r + 16 | 0; m = r + 12 | 0; g = r + 8 | 0; i = r + 4 | 0; h = r; k = r + 40 | 0; c[o >> 2] = b; c[j >> 2] = d; c[f >> 2] = e; if (!(c[o >> 2] | 0)) { c[n >> 2] = 0; q = c[n >> 2] | 0; l = r; return q | 0 } c[p >> 2] = 1; while (1) { if (!(a[c[j >> 2] >> 0] | 0)) { q = 17; break } if (ZL(j, k, 256, h, m, g, i) | 0) { q = 6; break } if (a[c[j >> 2] >> 0] | 0) c[p >> 2] = 0; do if (!(c[g >> 2] | 0) ? !((c[p >> 2] | 0) != 0 & (c[f >> 2] | 0) != 0 & (c[m >> 2] | 0) != 0) : 0) { e = c[o >> 2] | 0; if (c[i >> 2] | 0) { c[o >> 2] = $L(e, k, c[f >> 2] | 0) | 0; break } else { c[o >> 2] = aM(e, k, c[h >> 2] | 0, c[f >> 2] | 0) | 0; break } } else q = 11; while (0); if ((q | 0) == 11) { q = 0; c[o >> 2] = _L(c[o >> 2] | 0, k) | 0 } if (!(c[o >> 2] | 0)) { q = 16; break } } if ((q | 0) == 6) { c[n >> 2] = 0; q = c[n >> 2] | 0; l = r; return q | 0 } else if ((q | 0) == 16) { c[n >> 2] = 0; q = c[n >> 2] | 0; l = r; return q | 0 } else if ((q | 0) == 17) { c[n >> 2] = c[o >> 2]; q = c[n >> 2] | 0; l = r; return q | 0 } return 0 } function ZL(b, d, e, f, g, h, i) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 48 | 0; r = u + 36 | 0; t = u + 32 | 0; m = u + 28 | 0; k = u + 24 | 0; o = u + 20 | 0; q = u + 16 | 0; n = u + 12 | 0; p = u + 8 | 0; j = u + 4 | 0; s = u; c[t >> 2] = b; c[m >> 2] = d; c[k >> 2] = e; c[o >> 2] = f; c[q >> 2] = g; c[n >> 2] = h; c[p >> 2] = i; c[s >> 2] = c[c[t >> 2] >> 2]; c[c[o >> 2] >> 2] = 0; c[c[q >> 2] >> 2] = 1; c[c[n >> 2] >> 2] = 0; c[c[p >> 2] >> 2] = 0; if (!(bM(a[c[s >> 2] >> 0] | 0, 1, 0) | 0)) { c[r >> 2] = 1; t = c[r >> 2] | 0; l = u; return t | 0 } b = c[s >> 2] | 0; c[s >> 2] = b + 1; a[c[m >> 2] >> 0] = a[b >> 0] | 0; c[j >> 2] = 1; while (1) { if (!(a[c[s >> 2] >> 0] | 0)) break; if ((c[j >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) break; if (!(bM(a[c[s >> 2] >> 0] | 0, 1, 1) | 0)) break; d = c[s >> 2] | 0; c[s >> 2] = d + 1; d = a[d >> 0] | 0; g = c[m >> 2] | 0; b = c[j >> 2] | 0; c[j >> 2] = b + 1; a[g + b >> 0] = d } if ((c[j >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) { c[r >> 2] = 1; t = c[r >> 2] | 0; l = u; return t | 0 } a[(c[m >> 2] | 0) + (c[j >> 2] | 0) >> 0] = 0; h = c[s >> 2] | 0; if (!(a[c[s >> 2] >> 0] | 0)) { c[c[t >> 2] >> 2] = h; c[r >> 2] = 0; t = c[r >> 2] | 0; l = u; return t | 0 } j = c[s >> 2] | 0; if ((a[h >> 0] | 0) == 46) { c[c[t >> 2] >> 2] = j + 1; c[r >> 2] = 0; t = c[r >> 2] | 0; l = u; return t | 0 } if ((a[j >> 0] | 0) != 91) { c[r >> 2] = 1; t = c[r >> 2] | 0; l = u; return t | 0 } c[s >> 2] = (c[s >> 2] | 0) + 1; a: do if ((a[c[s >> 2] >> 0] | 0) != 43) { if ((a[c[s >> 2] >> 0] | 0) == 45) { c[c[p >> 2] >> 2] = 1; c[s >> 2] = (c[s >> 2] | 0) + 1; break } if (!(bM(a[c[s >> 2] >> 0] | 0, 0, 1) | 0)) { c[r >> 2] = 1; t = c[r >> 2] | 0; l = u; return t | 0 } else while (1) { if (!(bM(a[c[s >> 2] >> 0] | 0, 0, 1) | 0)) break a; c[c[o >> 2] >> 2] = ((c[c[o >> 2] >> 2] | 0) * 10 | 0) + ((a[c[s >> 2] >> 0] | 0) - 48); c[s >> 2] = (c[s >> 2] | 0) + 1 } } else { c[c[n >> 2] >> 2] = 1; c[s >> 2] = (c[s >> 2] | 0) + 1 } while (0); if ((a[c[s >> 2] >> 0] | 0) != 93) { c[r >> 2] = 1; t = c[r >> 2] | 0; l = u; return t | 0 } c[s >> 2] = (c[s >> 2] | 0) + 1; if ((a[c[s >> 2] >> 0] | 0) == 46) c[s >> 2] = (c[s >> 2] | 0) + 1; c[c[t >> 2] >> 2] = c[s >> 2]; c[c[q >> 2] >> 2] = 0; c[r >> 2] = 0; t = c[r >> 2] | 0; l = u; return t | 0 } function _L(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; d = g + 12 | 0; e = g + 8 | 0; h = g + 4 | 0; f = g; c[e >> 2] = a; c[h >> 2] = b; c[f >> 2] = UL(c[h >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { c[d >> 2] = 0; h = c[d >> 2] | 0; l = g; return h | 0 } if (c[e >> 2] | 0) { c[(c[f >> 2] | 0) + 4 >> 2] = c[e >> 2]; b = c[e >> 2] | 0; if (!(c[(c[e >> 2] | 0) + 12 >> 2] | 0)) b = b + 12 | 0; else b = c[b + 16 >> 2] | 0; c[b >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 16 >> 2] = c[f >> 2] } c[d >> 2] = c[f >> 2]; h = c[d >> 2] | 0; l = g; return h | 0 } function $L(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; i = k + 16 | 0; f = k + 12 | 0; e = k + 8 | 0; j = k + 4 | 0; g = k; c[i >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[(c[i >> 2] | 0) + 12 >> 2]; c[g >> 2] = 0; while (1) { if (!(c[j >> 2] | 0)) break; if (!(fP(c[(c[j >> 2] | 0) + 8 >> 2] | 0, c[f >> 2] | 0) | 0)) c[g >> 2] = c[j >> 2]; c[j >> 2] = c[c[j >> 2] >> 2] } if ((c[e >> 2] | 0) == 0 | (c[g >> 2] | 0) != 0) { c[h >> 2] = c[g >> 2]; j = c[h >> 2] | 0; l = k; return j | 0 } else { c[h >> 2] = _L(c[i >> 2] | 0, c[f >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } return 0 } function aM(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 20 | 0; k = n + 16 | 0; i = n + 12 | 0; h = n + 8 | 0; f = n + 4 | 0; g = n; c[k >> 2] = a; c[i >> 2] = b; c[h >> 2] = d; c[f >> 2] = e; c[g >> 2] = c[(c[k >> 2] | 0) + 12 >> 2]; while (1) { if (!(c[g >> 2] | 0)) break; if (!(fP(c[(c[g >> 2] | 0) + 8 >> 2] | 0, c[i >> 2] | 0) | 0)) { if (!(c[h >> 2] | 0)) { m = 5; break } c[h >> 2] = (c[h >> 2] | 0) - 1 } c[g >> 2] = c[c[g >> 2] >> 2] } if ((m | 0) == 5) { c[j >> 2] = c[g >> 2]; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(c[f >> 2] | 0)) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } while (1) { m = (c[h >> 2] | 0) >>> 0 > 0; e = _L(c[k >> 2] | 0, c[i >> 2] | 0) | 0; if (!m) { m = 14; break } if (!e) { m = 12; break } c[h >> 2] = (c[h >> 2] | 0) - 1 } if ((m | 0) == 12) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } else if ((m | 0) == 14) { c[j >> 2] = e; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function bM(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; h = j + 8 | 0; f = j + 12 | 0; k = j + 4 | 0; g = j; a[f >> 0] = b; c[k >> 2] = d; c[g >> 2] = e; do if (c[k >> 2] | 0) { if ((a[f >> 0] | 0) >= 97 ? (a[f >> 0] | 0) <= 122 : 0) { c[h >> 2] = 1; break } if ((a[f >> 0] | 0) >= 65 ? (a[f >> 0] | 0) <= 90 : 0) { c[h >> 2] = 1; break } if ((a[f >> 0] | 0) == 95) c[h >> 2] = 1; else i = 10 } else i = 10; while (0); do if ((i | 0) == 10) { if ((c[g >> 2] | 0 ? (a[f >> 0] | 0) >= 48 : 0) ? (a[f >> 0] | 0) <= 57 : 0) { c[h >> 2] = 1; break } c[h >> 2] = 0 } while (0); l = j; return c[h >> 2] | 0 } function cM(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 304 | 0; q = r + 32 | 0; i = r + 28 | 0; g = r + 24 | 0; m = r + 20 | 0; j = r + 16 | 0; h = r + 12 | 0; f = r + 8 | 0; o = r + 4 | 0; n = r; p = r + 40 | 0; c[i >> 2] = b; c[g >> 2] = d; c[m >> 2] = e; if (!(c[i >> 2] | 0)) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } c[j >> 2] = 1; while (1) { if (!(a[c[g >> 2] >> 0] | 0)) { k = 22; break } if (ZL(g, p, 256, n, h, f, o) | 0) { k = 6; break } if (!(a[c[g >> 2] >> 0] | 0)) { k = 8; break } c[j >> 2] = 0; do if (!(c[f >> 2] | 0) ? !((c[j >> 2] | 0) != 0 & (c[m >> 2] | 0) != 0 & (c[h >> 2] | 0) != 0) : 0) { e = c[i >> 2] | 0; if (c[o >> 2] | 0) { c[i >> 2] = $L(e, p, c[m >> 2] | 0) | 0; break } else { c[i >> 2] = aM(e, p, c[n >> 2] | 0, c[m >> 2] | 0) | 0; break } } else k = 16; while (0); if ((k | 0) == 16) { k = 0; c[i >> 2] = _L(c[i >> 2] | 0, p) | 0 } if (!(c[i >> 2] | 0)) { k = 21; break } } if ((k | 0) == 6) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((k | 0) == 8) { if ((c[f >> 2] | 0) == 0 ? !((c[j >> 2] | 0) != 0 & (c[m >> 2] | 0) != 0 & (c[h >> 2] | 0) != 0) : 0) { e = c[i >> 2] | 0; if (c[o >> 2] | 0) { c[q >> 2] = eM(e, p, c[m >> 2] | 0) | 0; q = c[q >> 2] | 0; l = r; return q | 0 } else { c[q >> 2] = fM(e, p, c[n >> 2] | 0, c[m >> 2] | 0) | 0; q = c[q >> 2] | 0; l = r; return q | 0 } } c[q >> 2] = dM(c[i >> 2] | 0, p) | 0; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((k | 0) == 21) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((k | 0) == 22) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } return 0 } function dM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; d = g + 12 | 0; e = g + 8 | 0; h = g + 4 | 0; f = g; c[e >> 2] = a; c[h >> 2] = b; c[f >> 2] = sM(c[h >> 2] | 0) | 0; if (!(c[f >> 2] | 0)) { c[d >> 2] = 0; h = c[d >> 2] | 0; l = g; return h | 0 } if (c[e >> 2] | 0) { b = c[e >> 2] | 0; if (!(c[(c[e >> 2] | 0) + 20 >> 2] | 0)) b = b + 20 | 0; else b = c[b + 24 >> 2] | 0; c[b >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 24 >> 2] = c[f >> 2] } c[d >> 2] = c[f >> 2]; h = c[d >> 2] | 0; l = g; return h | 0 } function eM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; h = k + 20 | 0; i = k + 16 | 0; f = k + 12 | 0; e = k + 8 | 0; j = k + 4 | 0; g = k; c[i >> 2] = a; c[f >> 2] = b; c[e >> 2] = d; c[j >> 2] = c[(c[i >> 2] | 0) + 20 >> 2]; c[g >> 2] = 0; while (1) { if (!(c[j >> 2] | 0)) break; if (!(fP(c[(c[j >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0) | 0)) c[g >> 2] = c[j >> 2]; c[j >> 2] = c[c[j >> 2] >> 2] } if ((c[e >> 2] | 0) == 0 | (c[g >> 2] | 0) != 0) { c[h >> 2] = c[g >> 2]; j = c[h >> 2] | 0; l = k; return j | 0 } else { c[h >> 2] = dM(c[i >> 2] | 0, c[f >> 2] | 0) | 0; j = c[h >> 2] | 0; l = k; return j | 0 } return 0 } function fM(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; j = n + 20 | 0; k = n + 16 | 0; i = n + 12 | 0; h = n + 8 | 0; f = n + 4 | 0; g = n; c[k >> 2] = a; c[i >> 2] = b; c[h >> 2] = d; c[f >> 2] = e; c[g >> 2] = c[(c[k >> 2] | 0) + 20 >> 2]; while (1) { if (!(c[g >> 2] | 0)) break; if (!(fP(c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[i >> 2] | 0) | 0)) { if (!(c[h >> 2] | 0)) { m = 5; break } c[h >> 2] = (c[h >> 2] | 0) - 1 } c[g >> 2] = c[c[g >> 2] >> 2] } if ((m | 0) == 5) { c[j >> 2] = c[g >> 2]; m = c[j >> 2] | 0; l = n; return m | 0 } if (!(c[f >> 2] | 0)) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } while (1) { m = (c[h >> 2] | 0) >>> 0 > 0; e = dM(c[k >> 2] | 0, c[i >> 2] | 0) | 0; if (!m) { m = 14; break } if (!e) { m = 12; break } c[h >> 2] = (c[h >> 2] | 0) - 1 } if ((m | 0) == 12) { c[j >> 2] = 0; m = c[j >> 2] | 0; l = n; return m | 0 } else if ((m | 0) == 14) { c[j >> 2] = e; m = c[j >> 2] | 0; l = n; return m | 0 } return 0 } function gM(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 32 | 0; g = i + 20 | 0; k = i + 16 | 0; j = i + 12 | 0; f = i + 8 | 0; m = i + 4 | 0; h = i; c[k >> 2] = a; c[j >> 2] = b; c[f >> 2] = d; c[m >> 2] = e; c[c[f >> 2] >> 2] = c[m >> 2]; c[h >> 2] = cM(c[k >> 2] | 0, c[j >> 2] | 0, 0) | 0; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } if (xM(c[h >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } else { c[g >> 2] = 0; m = c[g >> 2] | 0; l = i; return m | 0 } return 0 } function hM(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 32 | 0; g = i + 20 | 0; k = i + 16 | 0; j = i + 12 | 0; f = i + 8 | 0; m = i + 4 | 0; h = i; c[k >> 2] = a; c[j >> 2] = b; c[f >> 2] = d; c[m >> 2] = e; c[c[f >> 2] >> 2] = c[m >> 2]; c[h >> 2] = cM(c[k >> 2] | 0, c[j >> 2] | 0, 0) | 0; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } if (zM(c[h >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } else { c[g >> 2] = 0; m = c[g >> 2] | 0; l = i; return m | 0 } return 0 } function iM(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 32 | 0; g = i + 20 | 0; k = i + 16 | 0; j = i + 12 | 0; f = i + 8 | 0; m = i + 4 | 0; h = i; c[k >> 2] = a; c[j >> 2] = b; c[f >> 2] = d; c[m >> 2] = e; c[c[f >> 2] >> 2] = c[m >> 2]; c[h >> 2] = cM(c[k >> 2] | 0, c[j >> 2] | 0, 0) | 0; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } if (AM(c[h >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } else { c[g >> 2] = 0; m = c[g >> 2] | 0; l = i; return m | 0 } return 0 } function jM(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; i = l; l = l + 32 | 0; g = i + 20 | 0; k = i + 16 | 0; j = i + 12 | 0; f = i + 8 | 0; m = i + 4 | 0; h = i; c[k >> 2] = a; c[j >> 2] = b; c[f >> 2] = d; c[m >> 2] = e; c[c[f >> 2] >> 2] = (c[m >> 2] | 0) != 0 & 1; c[h >> 2] = cM(c[k >> 2] | 0, c[j >> 2] | 0, 0) | 0; if (!(c[h >> 2] | 0)) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } if (BM(c[h >> 2] | 0, c[f >> 2] | 0) | 0) { c[g >> 2] = 1; m = c[g >> 2] | 0; l = i; return m | 0 } else { c[g >> 2] = 0; m = c[g >> 2] | 0; l = i; return m | 0 } return 0 } function kM(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; j = l; l = l + 32 | 0; g = j + 24 | 0; m = j + 20 | 0; k = j + 16 | 0; f = j + 12 | 0; n = j + 8 | 0; h = j + 4 | 0; i = j; c[m >> 2] = a; c[k >> 2] = b; c[f >> 2] = d; c[n >> 2] = e; c[c[f >> 2] >> 2] = c[n >> 2]; c[i >> 2] = cM(c[m >> 2] | 0, c[k >> 2] | 0, 0) | 0; if (!(c[i >> 2] | 0)) { c[g >> 2] = 1; n = c[g >> 2] | 0; l = j; return n | 0 } c[h >> 2] = CM(c[i >> 2] | 0) | 0; if (c[h >> 2] | 0) c[c[f >> 2] >> 2] = c[h >> 2]; c[g >> 2] = 0; n = c[g >> 2] | 0; l = j; return n | 0 } function lM(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; c[c[d >> 2] >> 2] = 0; c[(c[d >> 2] | 0) + 4 >> 2] = 0; c[(c[d >> 2] | 0) + 8 >> 2] = 0; l = b; return } function mM(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; IQ(c[(c[d >> 2] | 0) + 8 >> 2] | 0); l = b; return } function nM(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 48 | 0; n = s + 40 | 0; h = s + 36 | 0; o = s + 32 | 0; p = s + 28 | 0; q = s + 24 | 0; j = s + 20 | 0; k = s + 16 | 0; m = s + 12 | 0; g = s + 8 | 0; i = s + 4 | 0; r = s; c[h >> 2] = b; c[o >> 2] = d; c[p >> 2] = e; c[q >> 2] = f; if (c[o >> 2] | 0) b = cP(c[o >> 2] | 0) | 0; else b = 0; c[j >> 2] = b; if (c[p >> 2] | 0) b = cP(c[p >> 2] | 0) | 0; else b = 0; c[k >> 2] = b; if (c[q >> 2] | 0) b = cP(c[q >> 2] | 0) | 0; else b = 0; c[m >> 2] = b; c[g >> 2] = (c[c[h >> 2] >> 2] | 0) + (c[j >> 2] | 0) + (c[k >> 2] | 0) + (c[m >> 2] | 0) + 1; do if ((c[g >> 2] | 0) >>> 0 >= (c[(c[h >> 2] | 0) + 4 >> 2] | 0) >>> 0) { if (!(c[(c[h >> 2] | 0) + 4 >> 2] | 0)) b = 256; else b = c[(c[h >> 2] | 0) + 4 >> 2] | 0; c[i >> 2] = b; while (1) { if ((c[g >> 2] | 0) >>> 0 < (c[i >> 2] | 0) >>> 0) break; c[i >> 2] = c[i >> 2] << 1 } c[r >> 2] = JQ(c[(c[h >> 2] | 0) + 8 >> 2] | 0, c[i >> 2] | 0) | 0; if (c[r >> 2] | 0) { c[(c[h >> 2] | 0) + 4 >> 2] = c[i >> 2]; c[(c[h >> 2] | 0) + 8 >> 2] = c[r >> 2]; break } c[n >> 2] = 1; r = c[n >> 2] | 0; l = s; return r | 0 } while (0); if (c[o >> 2] | 0) QQ((c[(c[h >> 2] | 0) + 8 >> 2] | 0) + (c[c[h >> 2] >> 2] | 0) | 0, c[o >> 2] | 0, c[j >> 2] | 0) | 0; if (c[p >> 2] | 0) QQ((c[(c[h >> 2] | 0) + 8 >> 2] | 0) + (c[c[h >> 2] >> 2] | 0) + (c[j >> 2] | 0) | 0, c[p >> 2] | 0, c[k >> 2] | 0) | 0; if (c[q >> 2] | 0) QQ((c[(c[h >> 2] | 0) + 8 >> 2] | 0) + (c[c[h >> 2] >> 2] | 0) + (c[j >> 2] | 0) + (c[k >> 2] | 0) | 0, c[q >> 2] | 0, c[m >> 2] | 0) | 0; r = c[h >> 2] | 0; c[r >> 2] = (c[r >> 2] | 0) + ((c[j >> 2] | 0) + (c[k >> 2] | 0) + (c[m >> 2] | 0)); a[(c[(c[h >> 2] | 0) + 8 >> 2] | 0) + (c[c[h >> 2] >> 2] | 0) >> 0] = 0; c[n >> 2] = 0; r = c[n >> 2] | 0; l = s; return r | 0 } function oM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; i = g + 8 | 0; h = g + 4 | 0; f = g; c[e >> 2] = a; c[i >> 2] = b; c[h >> 2] = d; c[f >> 2] = nL(c[i >> 2] | 0, c[(c[e >> 2] | 0) + 8 >> 2] | 0) | 0; if (!(c[h >> 2] | 0)) { i = c[f >> 2] | 0; l = g; return i | 0 } mM(c[e >> 2] | 0); i = c[f >> 2] | 0; l = g; return i | 0 } function pM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 4 | 0; d = f; c[e >> 2] = a; c[d >> 2] = b; c[c[e >> 2] >> 2] = 0; c[(c[e >> 2] | 0) + 4 >> 2] = 0; c[(c[e >> 2] | 0) + 8 >> 2] = 0; if (!(c[d >> 2] | 0)) { l = f; return } a = gP(c[d >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 4 >> 2] = a; l = f; return } function qM(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } rM(c[b >> 2] | 0); IQ(c[(c[b >> 2] | 0) + 4 >> 2] | 0); l = d; return } function rM(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if ((c[(c[b >> 2] | 0) + 8 >> 2] | 0) == 2) IQ(c[(c[b >> 2] | 0) + 12 >> 2] | 0); c[(c[b >> 2] | 0) + 8 >> 2] = 0; l = d; return } function sM(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; b = f + 4 | 0; e = f; c[b >> 2] = a; c[e >> 2] = HQ(16) | 0; if (!(c[e >> 2] | 0)) { c[d >> 2] = 0; e = c[d >> 2] | 0; l = f; return e | 0 } else { pM(c[e >> 2] | 0, c[b >> 2] | 0); c[d >> 2] = c[e >> 2]; e = c[d >> 2] | 0; l = f; return e | 0 } return 0 } function tM(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[d >> 2] = a; while (1) { if (!(c[d >> 2] | 0)) break; c[b >> 2] = c[d >> 2]; c[d >> 2] = c[c[d >> 2] >> 2]; qM(c[b >> 2] | 0); IQ(c[b >> 2] | 0) } l = e; return } function uM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = b; switch (c[(c[e >> 2] | 0) + 8 >> 2] | 0) { case 1: { vM(c[d >> 2] | 0, c[(c[e >> 2] | 0) + 12 >> 2] | 0);l = f; return } case 2: { wM(c[d >> 2] | 0, c[(c[e >> 2] | 0) + 12 >> 2] | 0);l = f; return } default: { rM(c[d >> 2] | 0);l = f; return } } } function vM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; rM(c[e >> 2] | 0); c[(c[e >> 2] | 0) + 8 >> 2] = 1; c[(c[e >> 2] | 0) + 12 >> 2] = c[f >> 2]; l = d; return } function wM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; rM(c[e >> 2] | 0); c[(c[e >> 2] | 0) + 8 >> 2] = 2; a = gP(c[f >> 2] | 0) | 0; c[(c[e >> 2] | 0) + 12 >> 2] = a; l = d; return } function xM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; f = g + 4 | 0; e = g; c[f >> 2] = a; c[e >> 2] = b; if ((c[(c[f >> 2] | 0) + 8 >> 2] | 0) == 1) { c[c[e >> 2] >> 2] = c[(c[f >> 2] | 0) + 12 >> 2]; c[d >> 2] = 0; f = c[d >> 2] | 0; l = g; return f | 0 } else { c[d >> 2] = 1; f = c[d >> 2] | 0; l = g; return f | 0 } return 0 } function yM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; f = g + 4 | 0; e = g; c[f >> 2] = a; c[e >> 2] = b; if ((c[(c[f >> 2] | 0) + 8 >> 2] | 0) != 1) { c[d >> 2] = 1; f = c[d >> 2] | 0; l = g; return f | 0 } b = c[(c[f >> 2] | 0) + 12 >> 2] | 0; if (c[(c[f >> 2] | 0) + 12 >> 2] & -2147483648 | 0) c[c[e >> 2] >> 2] = 0 - (~b + 1 & 2147483647); else c[c[e >> 2] >> 2] = b; c[d >> 2] = 0; f = c[d >> 2] | 0; l = g; return f | 0 } function zM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; f = g + 4 | 0; e = g; c[f >> 2] = a; c[e >> 2] = b; if ((c[(c[f >> 2] | 0) + 8 >> 2] | 0) == 1) { c[c[e >> 2] >> 2] = c[(c[f >> 2] | 0) + 12 >> 2] & 65535; c[d >> 2] = 0; f = c[d >> 2] | 0; l = g; return f | 0 } else { c[d >> 2] = 1; f = c[d >> 2] | 0; l = g; return f | 0 } return 0 } function AM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; d = g + 12 | 0; h = g + 8 | 0; f = g + 4 | 0; e = g; c[h >> 2] = a; c[f >> 2] = b; do if (!(yM(c[h >> 2] | 0, e) | 0)) if ((c[e >> 2] | 0) < -32767 | (c[e >> 2] | 0) > 32767) { c[d >> 2] = 1; break } else { c[c[f >> 2] >> 2] = c[e >> 2]; c[d >> 2] = 0; break } else c[d >> 2] = 1; while (0); l = g; return c[d >> 2] | 0 } function BM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; f = g + 4 | 0; e = g; c[f >> 2] = a; c[e >> 2] = b; if ((c[(c[f >> 2] | 0) + 8 >> 2] | 0) == 1) { c[c[e >> 2] >> 2] = (c[(c[f >> 2] | 0) + 12 >> 2] | 0) != 0 & 1; c[d >> 2] = 0; f = c[d >> 2] | 0; l = g; return f | 0 } else { c[d >> 2] = 1; f = c[d >> 2] | 0; l = g; return f | 0 } return 0 } function CM(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[d >> 2] = a; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) != 2) { c[b >> 2] = 0; d = c[b >> 2] | 0; l = e; return d | 0 } else { c[b >> 2] = c[(c[d >> 2] | 0) + 12 >> 2]; d = c[b >> 2] | 0; l = e; return d | 0 } return 0 } function DM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; f = l; l = l + 16 | 0; e = f + 12 | 0; i = f + 8 | 0; h = f + 4 | 0; g = f; c[i >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; if (EM(c[i >> 2] | 0, c[h >> 2] | 0, c[g >> 2] | 0) | 0) { c[e >> 2] = 1; i = c[e >> 2] | 0; l = f; return i | 0 } else { c[e >> 2] = 0; i = c[e >> 2] | 0; l = f; return i | 0 } return 0 } function EM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; e = m + 36 | 0; f = m + 32 | 0; g = m + 28 | 0; j = m + 24 | 0; k = m + 8 | 0; h = m + 4 | 0; i = m; c[f >> 2] = a; c[g >> 2] = b; c[j >> 2] = d; if (FM(c[f >> 2] | 0, c[g >> 2] | 0, c[j >> 2] | 0) | 0) { c[e >> 2] = 1; k = c[e >> 2] | 0; l = m; return k | 0 } if (!(TL(c[f >> 2] | 0, 50524) | 0)) { c[e >> 2] = 0; k = c[e >> 2] | 0; l = m; return k | 0 } pM(k, 0); if ((c[(c[j >> 2] | 0) + 8 >> 2] | 0) == 1 ? c[(c[j >> 2] | 0) + 12 >> 2] | 0 : 0) { c[h >> 2] = c[j >> 2]; c[i >> 2] = k } else { c[h >> 2] = k; c[i >> 2] = c[j >> 2] } if (FM(c[f >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0) { qM(k); c[e >> 2] = 1; k = c[e >> 2] | 0; l = m; return k | 0 } if (!(TL(c[f >> 2] | 0, 50526) | 0)) { qM(k); c[e >> 2] = 1; k = c[e >> 2] | 0; l = m; return k | 0 } j = (FM(c[f >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0) | 0) != 0; qM(k); if (j) { c[e >> 2] = 1; k = c[e >> 2] | 0; l = m; return k | 0 } else { c[e >> 2] = 0; k = c[e >> 2] | 0; l = m; return k | 0 } return 0 } function FM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; i = k + 32 | 0; f = k + 28 | 0; g = k + 24 | 0; h = k + 20 | 0; e = k + 16 | 0; j = k; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; if (GM(c[f >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } while (1) { if (!(TL(c[f >> 2] | 0, 50528) | 0)) { e = 4; break } pM(j, 0); if (GM(c[f >> 2] | 0, c[g >> 2] | 0, j) | 0) { e = 6; break } c[e >> 2] = HM(c[h >> 2] | 0, j) | 0; qM(j); if (c[e >> 2] | 0) { e = 8; break } } if ((e | 0) == 4) { c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } else if ((e | 0) == 6) { qM(j); c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } else if ((e | 0) == 8) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } return 0 } function GM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; i = k + 32 | 0; f = k + 28 | 0; g = k + 24 | 0; h = k + 20 | 0; e = k + 16 | 0; j = k; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; if (IM(c[f >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } while (1) { if (!(TL(c[f >> 2] | 0, 50531) | 0)) { e = 4; break } pM(j, 0); if (IM(c[f >> 2] | 0, c[g >> 2] | 0, j) | 0) { e = 6; break } c[e >> 2] = JM(c[h >> 2] | 0, j) | 0; qM(j); if (c[e >> 2] | 0) { e = 8; break } } if ((e | 0) == 4) { c[i >> 2] = 0; j = c[i >> 2] | 0; l = k; return j | 0 } else if ((e | 0) == 6) { qM(j); c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } else if ((e | 0) == 8) { c[i >> 2] = 1; j = c[i >> 2] | 0; l = k; return j | 0 } return 0 } function HM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = b; if ((c[(c[e >> 2] | 0) + 8 >> 2] | 0) == (c[(c[d >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[e >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { if (c[(c[e >> 2] | 0) + 12 >> 2] | 0) a = 1; else a = (c[(c[d >> 2] | 0) + 12 >> 2] | 0) != 0; c[(c[e >> 2] | 0) + 12 >> 2] = a & 1; c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } function IM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; i = k + 32 | 0; f = k + 28 | 0; g = k + 24 | 0; h = k + 20 | 0; e = k + 16 | 0; j = k; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; do if (!(KM(c[f >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0)) { while (1) { if (RL(c[f >> 2] | 0, 50528) | 0) { e = 4; break } if (!(TL(c[f >> 2] | 0, 50534) | 0)) { e = 6; break } pM(j, 0); if (KM(c[f >> 2] | 0, c[g >> 2] | 0, j) | 0) { e = 8; break } c[e >> 2] = LM(c[h >> 2] | 0, j) | 0; qM(j); if (c[e >> 2] | 0) { e = 10; break } } if ((e | 0) == 4) { c[i >> 2] = 0; break } else if ((e | 0) == 6) { c[i >> 2] = 0; break } else if ((e | 0) == 8) { qM(j); c[i >> 2] = 1; break } else if ((e | 0) == 10) { c[i >> 2] = 1; break } } else c[i >> 2] = 1; while (0); l = k; return c[i >> 2] | 0 } function JM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = b; if ((c[(c[e >> 2] | 0) + 8 >> 2] | 0) == (c[(c[d >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[e >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { if (c[(c[e >> 2] | 0) + 12 >> 2] | 0) a = (c[(c[d >> 2] | 0) + 12 >> 2] | 0) != 0; else a = 0; c[(c[e >> 2] | 0) + 12 >> 2] = a & 1; c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } c[f >> 2] = 1; f = c[f >> 2] | 0; l = g; return f | 0 } function KM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; i = k + 32 | 0; f = k + 28 | 0; g = k + 24 | 0; h = k + 20 | 0; e = k + 16 | 0; j = k; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; do if (!(MM(c[f >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0)) { while (1) { if (RL(c[f >> 2] | 0, 50536) | 0) { e = 4; break } if (!(TL(c[f >> 2] | 0, 50539) | 0)) { e = 6; break } pM(j, 0); if (MM(c[f >> 2] | 0, c[g >> 2] | 0, j) | 0) { e = 8; break } c[e >> 2] = NM(c[h >> 2] | 0, j) | 0; qM(j); if (c[e >> 2] | 0) { e = 10; break } } if ((e | 0) == 4) { c[i >> 2] = 0; break } else if ((e | 0) == 6) { c[i >> 2] = 0; break } else if ((e | 0) == 8) { qM(j); c[i >> 2] = 1; break } else if ((e | 0) == 10) { c[i >> 2] = 1; break } } else c[i >> 2] = 1; while (0); l = k; return c[i >> 2] | 0 } function LM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { c[(c[d >> 2] | 0) + 12 >> 2] = c[(c[d >> 2] | 0) + 12 >> 2] | c[(c[f >> 2] | 0) + 12 >> 2]; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function MM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 48 | 0; i = k + 32 | 0; f = k + 28 | 0; g = k + 24 | 0; h = k + 20 | 0; e = k + 16 | 0; j = k; c[f >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; do if (!(OM(c[f >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0)) { while (1) { if (RL(c[f >> 2] | 0, 50531) | 0) { e = 4; break } if (!(TL(c[f >> 2] | 0, 50541) | 0)) { e = 6; break } pM(j, 0); if (OM(c[f >> 2] | 0, c[g >> 2] | 0, j) | 0) { e = 8; break } c[e >> 2] = PM(c[h >> 2] | 0, j) | 0; qM(j); if (c[e >> 2] | 0) { e = 10; break } } if ((e | 0) == 4) { c[i >> 2] = 0; break } else if ((e | 0) == 6) { c[i >> 2] = 0; break } else if ((e | 0) == 8) { qM(j); c[i >> 2] = 1; break } else if ((e | 0) == 10) { c[i >> 2] = 1; break } } else c[i >> 2] = 1; while (0); l = k; return c[i >> 2] | 0 } function NM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { c[(c[d >> 2] | 0) + 12 >> 2] = c[(c[d >> 2] | 0) + 12 >> 2] ^ c[(c[f >> 2] | 0) + 12 >> 2]; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function OM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; j = m + 36 | 0; g = m + 32 | 0; h = m + 28 | 0; i = m + 24 | 0; f = m + 20 | 0; e = m + 16 | 0; k = m; c[g >> 2] = a; c[h >> 2] = b; c[i >> 2] = d; if (QM(c[g >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } while (1) { if (TL(c[g >> 2] | 0, 50543) | 0) c[e >> 2] = 1; else { if (!(TL(c[g >> 2] | 0, 50546) | 0)) { e = 7; break } c[e >> 2] = 2 } pM(k, 0); if (QM(c[g >> 2] | 0, c[h >> 2] | 0, k) | 0) { e = 9; break } do if ((c[e >> 2] | 0) != 1) if ((c[e >> 2] | 0) == 2) { c[f >> 2] = SM(c[i >> 2] | 0, k) | 0; break } else { c[f >> 2] = 1; break } else c[f >> 2] = RM(c[i >> 2] | 0, k) | 0; while (0); qM(k); if (c[f >> 2] | 0) { e = 16; break } } if ((e | 0) == 7) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 9) { qM(k); c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 16) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function PM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { c[(c[d >> 2] | 0) + 12 >> 2] = c[(c[d >> 2] | 0) + 12 >> 2] & c[(c[f >> 2] | 0) + 12 >> 2]; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function QM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; j = m + 36 | 0; g = m + 32 | 0; h = m + 28 | 0; i = m + 24 | 0; f = m + 20 | 0; e = m + 16 | 0; k = m; c[g >> 2] = a; c[h >> 2] = b; c[i >> 2] = d; if (TM(c[g >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } a: while (1) { do if (TL(c[g >> 2] | 0, 50549) | 0) c[e >> 2] = 2; else { if (TL(c[g >> 2] | 0, 50552) | 0) { c[e >> 2] = 4; break } if (TL(c[g >> 2] | 0, 50900) | 0) { c[e >> 2] = 1; break } if (!(TL(c[g >> 2] | 0, 50555) | 0)) { e = 11; break a } c[e >> 2] = 3 } while (0); pM(k, 0); if (TM(c[g >> 2] | 0, c[h >> 2] | 0, k) | 0) { e = 13; break } do if ((c[e >> 2] | 0) != 1) { if ((c[e >> 2] | 0) == 2) { c[f >> 2] = VM(c[i >> 2] | 0, k) | 0; break } if ((c[e >> 2] | 0) == 3) { c[f >> 2] = WM(c[i >> 2] | 0, k) | 0; break } if ((c[e >> 2] | 0) == 4) { c[f >> 2] = XM(c[i >> 2] | 0, k) | 0; break } else { c[f >> 2] = 1; break } } else c[f >> 2] = UM(c[i >> 2] | 0, k) | 0; while (0); qM(k); if (c[f >> 2] | 0) { e = 24; break } } if ((e | 0) == 11) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 13) { qM(k); c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 24) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function RM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) != (c[(c[f >> 2] | 0) + 8 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[a + 12 >> 2] | 0) == (c[(c[f >> 2] | 0) + 12 >> 2] | 0) & 1; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } if ((c[a + 8 >> 2] | 0) == 2) { b = c[d >> 2] | 0; vM(b, (fP(c[(c[d >> 2] | 0) + 12 >> 2] | 0, c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0) == 0 & 1); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function SM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) != (c[(c[f >> 2] | 0) + 8 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[a + 12 >> 2] | 0) != (c[(c[f >> 2] | 0) + 12 >> 2] | 0) & 1; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } if ((c[a + 8 >> 2] | 0) == 2) { b = c[d >> 2] | 0; vM(b, (fP(c[(c[d >> 2] | 0) + 12 >> 2] | 0, c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0) != 0 & 1); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function TM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; j = m + 36 | 0; g = m + 32 | 0; h = m + 28 | 0; i = m + 24 | 0; f = m + 20 | 0; e = m + 16 | 0; k = m; c[g >> 2] = a; c[h >> 2] = b; c[i >> 2] = d; if (YM(c[g >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } while (1) { if (TL(c[g >> 2] | 0, 50557) | 0) c[e >> 2] = 1; else { if (!(TL(c[g >> 2] | 0, 50560) | 0)) { e = 7; break } c[e >> 2] = 2 } pM(k, 0); if (YM(c[g >> 2] | 0, c[h >> 2] | 0, k) | 0) { e = 9; break } do if ((c[e >> 2] | 0) != 1) if ((c[e >> 2] | 0) == 2) { c[f >> 2] = _M(c[i >> 2] | 0, k) | 0; break } else { c[f >> 2] = 1; break } else c[f >> 2] = ZM(c[i >> 2] | 0, k) | 0; while (0); qM(k); if (c[f >> 2] | 0) { e = 16; break } } if ((e | 0) == 7) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 9) { qM(k); c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 16) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function UM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) != (c[(c[f >> 2] | 0) + 8 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[a + 12 >> 2] | 0) >>> 0 < (c[(c[f >> 2] | 0) + 12 >> 2] | 0) >>> 0 & 1; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } if ((c[a + 8 >> 2] | 0) == 2) { b = c[d >> 2] | 0; vM(b, (fP(c[(c[d >> 2] | 0) + 12 >> 2] | 0, c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0) < 0 & 1); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function VM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) != (c[(c[f >> 2] | 0) + 8 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[a + 12 >> 2] | 0) >>> 0 <= (c[(c[f >> 2] | 0) + 12 >> 2] | 0) >>> 0 & 1; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } if ((c[a + 8 >> 2] | 0) == 2) { b = c[d >> 2] | 0; vM(b, (fP(c[(c[d >> 2] | 0) + 12 >> 2] | 0, c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0) <= 0 & 1); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function WM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) != (c[(c[f >> 2] | 0) + 8 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[a + 12 >> 2] | 0) >>> 0 > (c[(c[f >> 2] | 0) + 12 >> 2] | 0) >>> 0 & 1; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } if ((c[a + 8 >> 2] | 0) == 2) { b = c[d >> 2] | 0; vM(b, (fP(c[(c[d >> 2] | 0) + 12 >> 2] | 0, c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0) > 0 & 1); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function XM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) != (c[(c[f >> 2] | 0) + 8 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[a + 12 >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 12 >> 2] | 0) >>> 0 & 1; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } if ((c[a + 8 >> 2] | 0) == 2) { b = c[d >> 2] | 0; vM(b, (fP(c[(c[d >> 2] | 0) + 12 >> 2] | 0, c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0) >= 0 & 1); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } return 0 } function YM(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; j = m + 36 | 0; g = m + 32 | 0; h = m + 28 | 0; i = m + 24 | 0; f = m + 20 | 0; e = m + 16 | 0; k = m; c[g >> 2] = a; c[h >> 2] = b; c[i >> 2] = d; if ($M(c[g >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } while (1) { if (TL(c[g >> 2] | 0, 50563) | 0) c[e >> 2] = 1; else { if (!(TL(c[g >> 2] | 0, 50729) | 0)) { e = 7; break } c[e >> 2] = 2 } pM(k, 0); if ($M(c[g >> 2] | 0, c[h >> 2] | 0, k) | 0) { e = 9; break } do if ((c[e >> 2] | 0) != 1) if ((c[e >> 2] | 0) == 2) { c[f >> 2] = bN(c[i >> 2] | 0, k) | 0; break } else { c[f >> 2] = 1; break } else c[f >> 2] = aN(c[i >> 2] | 0, k) | 0; while (0); qM(k); if (c[f >> 2] | 0) { e = 16; break } } if ((e | 0) == 7) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 9) { qM(k); c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 16) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function ZM(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { c[(c[d >> 2] | 0) + 12 >> 2] = c[(c[d >> 2] | 0) + 12 >> 2] << (c[(c[f >> 2] | 0) + 12 >> 2] & 31); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function _M(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[(c[d >> 2] | 0) + 12 >> 2] | 0) >>> (c[(c[f >> 2] | 0) + 12 >> 2] & 31); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function $M(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 48 | 0; j = m + 36 | 0; g = m + 32 | 0; h = m + 28 | 0; i = m + 24 | 0; f = m + 20 | 0; e = m + 16 | 0; k = m; c[g >> 2] = a; c[h >> 2] = b; c[i >> 2] = d; if (dN(c[g >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0) | 0) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } a: while (1) { do if (TL(c[g >> 2] | 0, 50569) | 0) c[e >> 2] = 1; else { if (TL(c[g >> 2] | 0, 50937) | 0) { c[e >> 2] = 2; break } if (!(TL(c[g >> 2] | 0, 50571) | 0)) { e = 9; break a } c[e >> 2] = 3 } while (0); pM(k, 0); if (dN(c[g >> 2] | 0, c[h >> 2] | 0, k) | 0) { e = 11; break } do if ((c[e >> 2] | 0) != 1) { if ((c[e >> 2] | 0) == 2) { c[f >> 2] = fN(c[i >> 2] | 0, k) | 0; break } if ((c[e >> 2] | 0) == 3) { c[f >> 2] = gN(c[i >> 2] | 0, k) | 0; break } else { c[f >> 2] = 1; break } } else c[f >> 2] = eN(c[i >> 2] | 0, k) | 0; while (0); qM(k); if (c[f >> 2] | 0) { e = 20; break } } if ((e | 0) == 9) { c[j >> 2] = 0; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 11) { qM(k); c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } else if ((e | 0) == 20) { c[j >> 2] = 1; k = c[j >> 2] | 0; l = m; return k | 0 } return 0 } function aN(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, m = 0; m = l; l = l + 64 | 0; k = m + 8 | 0; j = m; f = m + 28 | 0; e = m + 24 | 0; g = m + 20 | 0; h = m + 16 | 0; i = m + 12 | 0; d = m + 32 | 0; c[e >> 2] = a; c[g >> 2] = b; c[h >> 2] = c[(c[e >> 2] | 0) + 8 >> 2]; c[i >> 2] = c[(c[g >> 2] | 0) + 8 >> 2]; if ((c[h >> 2] | 0) == 1 & (c[i >> 2] | 0) == 1) { c[(c[e >> 2] | 0) + 12 >> 2] = (c[(c[e >> 2] | 0) + 12 >> 2] | 0) + (c[(c[g >> 2] | 0) + 12 >> 2] | 0); c[f >> 2] = 0; k = c[f >> 2] | 0; l = m; return k | 0 } if ((c[h >> 2] | 0) == 2 & (c[i >> 2] | 0) == 2) if (cN(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 12 >> 2] | 0, c[(c[g >> 2] | 0) + 12 >> 2] | 0) | 0) { c[f >> 2] = 1; k = c[f >> 2] | 0; l = m; return k | 0 } else { c[f >> 2] = 0; k = c[f >> 2] | 0; l = m; return k | 0 } if ((c[h >> 2] | 0) == 2 & (c[i >> 2] | 0) == 1) { c[j >> 2] = c[(c[g >> 2] | 0) + 12 >> 2]; BQ(d, 50565, j) | 0; if (cN(c[e >> 2] | 0, c[(c[e >> 2] | 0) + 12 >> 2] | 0, d) | 0) { c[f >> 2] = 1; k = c[f >> 2] | 0; l = m; return k | 0 } else { c[f >> 2] = 0; k = c[f >> 2] | 0; l = m; return k | 0 } } if (!((c[h >> 2] | 0) == 1 & (c[i >> 2] | 0) == 2)) { c[f >> 2] = 1; k = c[f >> 2] | 0; l = m; return k | 0 } c[k >> 2] = c[(c[e >> 2] | 0) + 12 >> 2]; BQ(d, 50565, k) | 0; if (cN(c[e >> 2] | 0, d, c[(c[g >> 2] | 0) + 12 >> 2] | 0) | 0) { c[f >> 2] = 1; k = c[f >> 2] | 0; l = m; return k | 0 } else { c[f >> 2] = 0; k = c[f >> 2] | 0; l = m; return k | 0 } return 0 } function bN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[(c[d >> 2] | 0) + 12 >> 2] | 0) - (c[(c[f >> 2] | 0) + 12 >> 2] | 0); c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function cN(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; i = n + 24 | 0; f = n + 20 | 0; j = n + 16 | 0; k = n + 12 | 0; g = n + 8 | 0; h = n + 4 | 0; m = n; c[f >> 2] = b; c[j >> 2] = d; c[k >> 2] = e; c[g >> 2] = cP(c[j >> 2] | 0) | 0; c[h >> 2] = cP(c[k >> 2] | 0) | 0; c[m >> 2] = HQ((c[g >> 2] | 0) + (c[h >> 2] | 0) + 1 | 0) | 0; if (!(c[m >> 2] | 0)) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = n; return m | 0 } if ((c[g >> 2] | 0) >>> 0 > 0) QQ(c[m >> 2] | 0, c[j >> 2] | 0, c[g >> 2] | 0) | 0; if ((c[h >> 2] | 0) >>> 0 > 0) QQ((c[m >> 2] | 0) + (c[g >> 2] | 0) | 0, c[k >> 2] | 0, c[h >> 2] | 0) | 0; a[(c[m >> 2] | 0) + ((c[g >> 2] | 0) + (c[h >> 2] | 0)) >> 0] = 0; wM(c[f >> 2] | 0, c[m >> 2] | 0); IQ(c[m >> 2] | 0); c[i >> 2] = 0; m = c[i >> 2] | 0; l = n; return m | 0 } function dN(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 20 | 0; h = k + 16 | 0; i = k + 12 | 0; j = k + 8 | 0; f = k + 4 | 0; e = k; c[h >> 2] = a; c[i >> 2] = b; c[j >> 2] = d; do if (!(TL(c[h >> 2] | 0, 50563) | 0)) { if (TL(c[h >> 2] | 0, 50729) | 0) { c[e >> 2] = 2; break } if (TL(c[h >> 2] | 0, 50573) | 0) { c[e >> 2] = 3; break } if (TL(c[h >> 2] | 0, 50575) | 0) { c[e >> 2] = 4; break } else { c[e >> 2] = 0; break } } else c[e >> 2] = 1; while (0); if (hN(c[h >> 2] | 0, c[i >> 2] | 0, c[j >> 2] | 0) | 0) { c[g >> 2] = 1; j = c[g >> 2] | 0; l = k; return j | 0 } do if ((c[e >> 2] | 0) != 1) { if ((c[e >> 2] | 0) == 2) { c[f >> 2] = jN(c[j >> 2] | 0) | 0; break } if ((c[e >> 2] | 0) == 3) { c[f >> 2] = kN(c[j >> 2] | 0) | 0; break } if ((c[e >> 2] | 0) == 4) { c[f >> 2] = lN(c[j >> 2] | 0) | 0; break } else { c[f >> 2] = 0; break } } else c[f >> 2] = iN(c[j >> 2] | 0) | 0; while (0); c[g >> 2] = c[f >> 2]; j = c[g >> 2] | 0; l = k; return j | 0 } function eN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) { f = S(c[(c[d >> 2] | 0) + 12 >> 2] | 0, c[(c[f >> 2] | 0) + 12 >> 2] | 0) | 0; c[(c[d >> 2] | 0) + 12 >> 2] = f; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function fN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) if (!(c[(c[f >> 2] | 0) + 12 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[(c[d >> 2] | 0) + 12 >> 2] = ((c[(c[d >> 2] | 0) + 12 >> 2] | 0) >>> 0) / ((c[(c[f >> 2] | 0) + 12 >> 2] | 0) >>> 0) | 0; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function gN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 8 | 0; d = g + 4 | 0; f = g; c[d >> 2] = a; c[f >> 2] = b; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == (c[(c[f >> 2] | 0) + 8 >> 2] | 0) ? (c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1 : 0) if (!(c[(c[f >> 2] | 0) + 12 >> 2] | 0)) { c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } else { c[(c[d >> 2] | 0) + 12 >> 2] = ((c[(c[d >> 2] | 0) + 12 >> 2] | 0) >>> 0) % ((c[(c[f >> 2] | 0) + 12 >> 2] | 0) >>> 0) | 0; c[e >> 2] = 0; f = c[e >> 2] | 0; l = g; return f | 0 } c[e >> 2] = 1; f = c[e >> 2] | 0; l = g; return f | 0 } function hN(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, m = 0, n = 0, o = 0; o = l; l = l + 288 | 0; m = o + 24 | 0; g = o + 20 | 0; h = o + 16 | 0; k = o + 12 | 0; f = o + 8 | 0; j = o + 4 | 0; n = o; i = o + 32 | 0; c[g >> 2] = b; c[h >> 2] = d; c[k >> 2] = e; e = (TL(c[g >> 2] | 0, 50577) | 0) != 0; b = c[g >> 2] | 0; do if (e) { if (DM(b, c[h >> 2] | 0, c[k >> 2] | 0) | 0) { c[m >> 2] = 1; break } IL(c[g >> 2] | 0) | 0; if (!(TL(c[g >> 2] | 0, 50579) | 0)) { c[m >> 2] = 1; break } else { c[m >> 2] = 0; break } } else { if (PL(b, i, 256) | 0) { wM(c[k >> 2] | 0, i); c[m >> 2] = 0; break } if (!(ML(c[g >> 2] | 0, i, 256) | 0)) if (!(mN(c[g >> 2] | 0, c[k >> 2] | 0) | 0)) { c[m >> 2] = 0; break } else { c[m >> 2] = 1; break } if (!(fP(i, 50581) | 0)) if (hN(c[g >> 2] | 0, c[h >> 2] | 0, c[k >> 2] | 0) | 0) { c[m >> 2] = 1; break } else { vM(c[k >> 2] | 0, (c[(c[k >> 2] | 0) + 8 >> 2] | 0) != 0 & 1); c[m >> 2] = 0; break } if (!(fP(i, 50589) | 0)) { vM(c[k >> 2] | 0, 1); c[m >> 2] = 0; break } if (!(fP(i, 50594) | 0)) { vM(c[k >> 2] | 0, 0); c[m >> 2] = 0; break } c[f >> 2] = (a[i >> 0] | 0) == 36 ? 1 : 0; c[j >> 2] = c[h >> 2]; c[n >> 2] = 0; while (1) { if (!(c[j >> 2] | 0)) break; c[n >> 2] = cM(c[j >> 2] | 0, i + (c[f >> 2] | 0) | 0, 0) | 0; if (c[n >> 2] | 0) break; c[j >> 2] = c[(c[j >> 2] | 0) + 4 >> 2] } b = c[k >> 2] | 0; if (!(c[n >> 2] | 0)) { rM(b); c[m >> 2] = 0; break } else { uM(b, c[n >> 2] | 0); c[m >> 2] = 0; break } } while (0); l = o; return c[m >> 2] | 0 } function iN(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; e = d; c[e >> 2] = a; if ((c[(c[e >> 2] | 0) + 8 >> 2] | 0) == 1) c[b >> 2] = 0; else c[b >> 2] = 1; l = d; return c[b >> 2] | 0 } function jN(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[d >> 2] = a; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = ~c[(c[d >> 2] | 0) + 12 >> 2] + 1; c[b >> 2] = 0; d = c[b >> 2] | 0; l = e; return d | 0 } else { c[b >> 2] = 1; d = c[b >> 2] | 0; l = e; return d | 0 } return 0 } function kN(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[d >> 2] = a; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = ~c[(c[d >> 2] | 0) + 12 >> 2]; c[b >> 2] = 0; d = c[b >> 2] | 0; l = e; return d | 0 } else { c[b >> 2] = 1; d = c[b >> 2] | 0; l = e; return d | 0 } return 0 } function lN(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; b = e + 4 | 0; d = e; c[d >> 2] = a; a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 8 >> 2] | 0) == 1) { c[(c[d >> 2] | 0) + 12 >> 2] = (c[a + 12 >> 2] | 0) == 0 & 1; c[b >> 2] = 0; d = c[b >> 2] | 0; l = e; return d | 0 } if ((c[a + 8 >> 2] | 0) == 2) { a = c[d >> 2] | 0; vM(a, (fP(c[(c[d >> 2] | 0) + 12 >> 2] | 0, 59585) | 0) == 0 & 1); c[b >> 2] = 0; d = c[b >> 2] | 0; l = e; return d | 0 } else { c[b >> 2] = 1; d = c[b >> 2] | 0; l = e; return d | 0 } return 0 } function mN(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; i = o + 24 | 0; j = o + 20 | 0; m = o + 16 | 0; h = o + 12 | 0; f = o + 28 | 0; e = o + 8 | 0; k = o + 4 | 0; g = o; c[j >> 2] = b; c[m >> 2] = d; do if (!(TL(c[j >> 2] | 0, 50600) | 0)) if (TL(c[j >> 2] | 0, 50603) | 0) { c[e >> 2] = 2; break } else { c[e >> 2] = 10; break } else c[e >> 2] = 16; while (0); c[h >> 2] = 1; c[k >> 2] = 0; a: while (1) { a[f >> 0] = DL(c[j >> 2] | 0, 0) | 0; if (!(a[f >> 0] | 0)) break; if ((a[f >> 0] | 0) >= 48 ? (a[f >> 0] | 0) <= 57 : 0) c[g >> 2] = (a[f >> 0] | 0) - 48; else n = 11; do if ((n | 0) == 11) { n = 0; if ((a[f >> 0] | 0) >= 97 ? (a[f >> 0] | 0) <= 102 : 0) { c[g >> 2] = (a[f >> 0] | 0) - 97 + 10; break } if ((a[f >> 0] | 0) < 65) break a; if ((a[f >> 0] | 0) > 70) break a; c[g >> 2] = (a[f >> 0] | 0) - 65 + 10 } while (0); if ((c[g >> 2] | 0) >>> 0 >= (c[e >> 2] | 0) >>> 0) break; d = S(c[e >> 2] | 0, c[k >> 2] | 0) | 0; c[k >> 2] = d + (c[g >> 2] | 0); GL(c[j >> 2] | 0, 1); c[h >> 2] = 0 } if (c[h >> 2] | 0) { c[i >> 2] = 1; n = c[i >> 2] | 0; l = o; return n | 0 } do if ((a[f >> 0] | 0) != 107 ? (a[f >> 0] | 0) != 75 : 0) { if ((a[f >> 0] | 0) != 109 ? (a[f >> 0] | 0) != 77 : 0) { if ((a[f >> 0] | 0) != 103 ? (a[f >> 0] | 0) != 71 : 0) break; GL(c[j >> 2] | 0, 1); c[k >> 2] = c[k >> 2] << 30; break } GL(c[j >> 2] | 0, 1); c[k >> 2] = c[k >> 2] << 20 } else n = 23; while (0); if ((n | 0) == 23) { GL(c[j >> 2] | 0, 1); c[k >> 2] = c[k >> 2] << 10 } vM(c[m >> 2] | 0, c[k >> 2] | 0); c[i >> 2] = 0; n = c[i >> 2] | 0; l = o; return n | 0 } function nN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 12 | 0; e = i + 8 | 0; g = i + 4 | 0; f = i; c[e >> 2] = a; c[g >> 2] = b; c[f >> 2] = HQ(104) | 0; if (!(c[f >> 2] | 0)) { c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } a = c[f >> 2] | 0; b = c[e >> 2] | 0; d = a + 68 | 0; do { c[a >> 2] = c[b >> 2]; a = a + 4 | 0; b = b + 4 | 0 } while ((a | 0) < (d | 0)); My(c[f >> 2] | 0, 5); c[(c[f >> 2] | 0) + 4 >> 2] = 251; c[(c[f >> 2] | 0) + 8 >> 2] = 30; c[(c[f >> 2] | 0) + 12 >> 2] = 31; c[(c[f >> 2] | 0) + 16 >> 2] = 32; c[(c[f >> 2] | 0) + 20 >> 2] = 50; c[(c[f >> 2] | 0) + 60 >> 2] = 0; c[(c[f >> 2] | 0) + 64 >> 2] = c[f >> 2]; c[(c[f >> 2] | 0) + 68 >> 2] = c[e >> 2]; c[(c[f >> 2] | 0) + 100 >> 2] = (((c[(c[f >> 2] | 0) + 28 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0; a = HQ(c[(c[f >> 2] | 0) + 100 >> 2] | 0) | 0; c[(c[f >> 2] | 0) + 96 >> 2] = a; a = c[f >> 2] | 0; if (!(c[(c[f >> 2] | 0) + 96 >> 2] | 0)) { IQ(a); c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } e = (tN(a, c[g >> 2] | 0) | 0) != 0; a = c[f >> 2] | 0; if (e) { IQ(c[a + 96 >> 2] | 0); IQ(c[f >> 2] | 0); c[h >> 2] = 0; h = c[h >> 2] | 0; l = i; return h | 0 } else { Py(a, c[g >> 2] | 0); c[h >> 2] = c[f >> 2]; h = c[h >> 2] | 0; l = i; return h | 0 } return 0 } function oN(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; Jy(c[(c[d >> 2] | 0) + 68 >> 2] | 0); UP(c[(c[d >> 2] | 0) + 72 >> 2] | 0) | 0; IQ(c[(c[d >> 2] | 0) + 96 >> 2] | 0); IQ(c[d >> 2] | 0); l = b; return } function pN(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; o = l; l = l + 48 | 0; n = o + 36 | 0; h = o + 32 | 0; p = o + 28 | 0; i = o + 24 | 0; j = o + 20 | 0; m = o + 16 | 0; f = o + 12 | 0; k = o; g = o + 8 | 0; c[h >> 2] = a; c[p >> 2] = b; c[i >> 2] = d; c[j >> 2] = e; c[g >> 2] = c[(c[h >> 2] | 0) + 64 >> 2]; c[m >> 2] = c[p >> 2]; e = (c[g >> 2] | 0) + 88 | 0; a = c[e >> 2] | 0; e = c[e + 4 >> 2] | 0; d = $Q(512, 0, c[i >> 2] | 0, 0) | 0; d = OQ(a | 0, e | 0, d | 0, D | 0) | 0; e = k; c[e >> 2] = d; c[e + 4 >> 2] = D; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) { b = 11; break } if ((c[i >> 2] | 0) >>> 0 >= (c[(c[h >> 2] | 0) + 28 >> 2] | 0) >>> 0) { b = 4; break } c[f >> 2] = c[j >> 2]; p = (AN(c[g >> 2] | 0, c[i >> 2] | 0, f) | 0) != 0; b = c[g >> 2] | 0; if (p) { p = k; if (Dy(c[b + 72 >> 2] | 0, c[m >> 2] | 0, c[p >> 2] | 0, c[p + 4 >> 2] | 0, c[f >> 2] << 9, 0) | 0) { b = 7; break } } else if (Zy(c[b + 68 >> 2] | 0, c[m >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0) | 0) { b = 9; break } c[i >> 2] = (c[i >> 2] | 0) + (c[f >> 2] | 0); c[j >> 2] = (c[j >> 2] | 0) - (c[f >> 2] | 0); c[m >> 2] = (c[m >> 2] | 0) + (c[f >> 2] << 9); e = k; e = OQ(c[e >> 2] | 0, c[e + 4 >> 2] | 0, c[f >> 2] << 9 | 0, 0) | 0; p = k; c[p >> 2] = e; c[p + 4 >> 2] = D } if ((b | 0) == 4) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = o; return p | 0 } else if ((b | 0) == 7) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = o; return p | 0 } else if ((b | 0) == 9) { c[n >> 2] = 1; p = c[n >> 2] | 0; l = o; return p | 0 } else if ((b | 0) == 11) { c[n >> 2] = 0; p = c[n >> 2] | 0; l = o; return p | 0 } return 0 } function qN(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, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 48 | 0; p = q + 36 | 0; i = q + 32 | 0; g = q + 28 | 0; j = q + 24 | 0; k = q + 20 | 0; n = q + 16 | 0; h = q + 12 | 0; m = q; o = q + 8 | 0; c[i >> 2] = b; c[g >> 2] = d; c[j >> 2] = e; c[k >> 2] = f; if (a[(c[i >> 2] | 0) + 56 >> 0] | 0) { c[p >> 2] = 1; p = c[p >> 2] | 0; l = q; return p | 0 } c[o >> 2] = c[(c[i >> 2] | 0) + 64 >> 2]; c[n >> 2] = c[g >> 2]; f = (c[o >> 2] | 0) + 88 | 0; b = c[f >> 2] | 0; f = c[f + 4 >> 2] | 0; e = $Q(512, 0, c[j >> 2] | 0, 0) | 0; e = OQ(b | 0, f | 0, e | 0, D | 0) | 0; f = m; c[f >> 2] = e; c[f + 4 >> 2] = D; while (1) { if ((c[k >> 2] | 0) >>> 0 <= 0) { d = 12; break } if ((c[j >> 2] | 0) >>> 0 >= (c[(c[i >> 2] | 0) + 28 >> 2] | 0) >>> 0) { d = 6; break } c[h >> 2] = c[k >> 2]; if (!(AN(c[o >> 2] | 0, c[j >> 2] | 0, h) | 0)) BN(c[o >> 2] | 0, c[j >> 2] | 0, c[h >> 2] | 0, 1) | 0; f = m; if (Ey(c[(c[o >> 2] | 0) + 72 >> 2] | 0, c[n >> 2] | 0, c[f >> 2] | 0, c[f + 4 >> 2] | 0, c[h >> 2] << 9, 0) | 0) { d = 10; break } c[j >> 2] = (c[j >> 2] | 0) + (c[h >> 2] | 0); c[k >> 2] = (c[k >> 2] | 0) - (c[h >> 2] | 0); c[n >> 2] = (c[n >> 2] | 0) + (c[h >> 2] << 9); e = m; e = OQ(c[e >> 2] | 0, c[e + 4 >> 2] | 0, c[h >> 2] << 9 | 0, 0) | 0; f = m; c[f >> 2] = e; c[f + 4 >> 2] = D } if ((d | 0) == 6) { c[p >> 2] = 1; p = c[p >> 2] | 0; l = q; return p | 0 } else if ((d | 0) == 10) { c[p >> 2] = 1; p = c[p >> 2] | 0; l = q; return p | 0 } else if ((d | 0) == 12) { XP(c[(c[o >> 2] | 0) + 72 >> 2] | 0) | 0; c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } return 0 } function rN(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0; f = l; l = l + 16 | 0; c[f + 12 >> 2] = a; c[f + 8 >> 2] = b; c[f + 4 >> 2] = d; c[f >> 2] = e; l = f; return 1 } function sN(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; e = g + 8 | 0; h = g + 4 | 0; c[e >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; if (!(fP(c[h >> 2] | 0, 50610) | 0)) { c[f >> 2] = yN(c[e >> 2] | 0) | 0; h = c[f >> 2] | 0; l = g; return h | 0 } else { c[f >> 2] = 1; h = c[f >> 2] | 0; l = g; return h | 0 } return 0 } function tN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; d = g + 4 | 0; e = g; c[d >> 2] = a; c[e >> 2] = b; b = dQ(c[e >> 2] | 0, 50617) | 0; c[(c[d >> 2] | 0) + 72 >> 2] = b; do if (c[(c[d >> 2] | 0) + 72 >> 2] | 0) if (uN(c[d >> 2] | 0) | 0) { UP(c[(c[d >> 2] | 0) + 72 >> 2] | 0) | 0; c[f >> 2] = 1; break } else { c[f >> 2] = 0; break } else { e = dQ(c[e >> 2] | 0, 50606) | 0; c[(c[d >> 2] | 0) + 72 >> 2] = e; if (!(c[(c[d >> 2] | 0) + 72 >> 2] | 0)) { c[f >> 2] = 1; break } if (vN(c[d >> 2] | 0) | 0) { UP(c[(c[d >> 2] | 0) + 72 >> 2] | 0) | 0; c[f >> 2] = 1; break } else { c[f >> 2] = 0; break } } while (0); l = g; return c[f >> 2] | 0 } function uN(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = l; l = l + 48 | 0; e = f + 4 | 0; d = f; b = f + 8 | 0; c[d >> 2] = a; do if (!(Dy(c[(c[d >> 2] | 0) + 72 >> 2] | 0, b, 0, 0, 20, 0) | 0)) { if ((vy(b, 0) | 0) != 1129273120) { c[e >> 2] = 1; break } if (vy(b, 4) | 0) { c[e >> 2] = 1; break } a = vy(b, 8) | 0; if ((a | 0) != (c[(c[d >> 2] | 0) + 28 >> 2] | 0)) { c[e >> 2] = 1; break } g = vy(b, 12) | 0; a = (c[d >> 2] | 0) + 80 | 0; c[a >> 2] = g; c[a + 4 >> 2] = 0; b = vy(b, 16) | 0; a = (c[d >> 2] | 0) + 88 | 0; c[a >> 2] = b; c[a + 4 >> 2] = 0; if (xN(c[d >> 2] | 0) | 0) { c[e >> 2] = 1; break } else { c[e >> 2] = 0; break } } else c[e >> 2] = 1; while (0); l = f; return c[e >> 2] | 0 } function vN(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 48 | 0; d = e + 4 | 0; b = e; f = e + 8 | 0; c[b >> 2] = a; c[(c[b >> 2] | 0) + 100 >> 2] = (((c[(c[b >> 2] | 0) + 28 >> 2] | 0) + 7 | 0) >>> 0) / 8 | 0; a = (c[b >> 2] | 0) + 80 | 0; c[a >> 2] = 20; c[a + 4 >> 2] = 0; a = (c[b >> 2] | 0) + 88 | 0; c[a >> 2] = 20 + (c[(c[b >> 2] | 0) + 100 >> 2] | 0) + 511 & -512; c[a + 4 >> 2] = 0; wy(f, 0, 1129273120); wy(f, 4, 0); wy(f, 8, c[(c[b >> 2] | 0) + 28 >> 2] | 0); wy(f, 12, c[(c[b >> 2] | 0) + 80 >> 2] | 0); wy(f, 16, c[(c[b >> 2] | 0) + 88 >> 2] | 0); if (Ey(c[(c[b >> 2] | 0) + 72 >> 2] | 0, f, 0, 0, 20, 0) | 0) { c[d >> 2] = 1; f = c[d >> 2] | 0; l = e; return f | 0 } TQ(c[(c[b >> 2] | 0) + 96 >> 2] | 0, 0, c[(c[b >> 2] | 0) + 100 >> 2] | 0) | 0; if (wN(c[b >> 2] | 0) | 0) { c[d >> 2] = 1; f = c[d >> 2] | 0; l = e; return f | 0 } else { c[d >> 2] = 0; f = c[d >> 2] | 0; l = e; return f | 0 } return 0 } function wN(a) { a = a | 0; var b = 0, d = 0, e = 0; e = l; l = l + 16 | 0; d = e + 4 | 0; b = e; c[b >> 2] = a; a = (c[b >> 2] | 0) + 80 | 0; if (Ey(c[(c[b >> 2] | 0) + 72 >> 2] | 0, c[(c[b >> 2] | 0) + 96 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[b >> 2] | 0) + 100 >> 2] | 0, 0) | 0) { c[d >> 2] = 1; d = c[d >> 2] | 0; l = e; return d | 0 } else { XP(c[(c[b >> 2] | 0) + 72 >> 2] | 0) | 0; c[d >> 2] = 0; d = c[d >> 2] | 0; l = e; return d | 0 } return 0 } function xN(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; e = d; c[e >> 2] = a; a = (c[e >> 2] | 0) + 80 | 0; if (Dy(c[(c[e >> 2] | 0) + 72 >> 2] | 0, c[(c[e >> 2] | 0) + 96 >> 2] | 0, c[a >> 2] | 0, c[a + 4 >> 2] | 0, c[(c[e >> 2] | 0) + 100 >> 2] | 0, 0) | 0) { c[b >> 2] = 1; e = c[b >> 2] | 0; l = d; return e | 0 } else { c[b >> 2] = 0; e = c[b >> 2] | 0; l = d; return e | 0 } return 0 } function yN(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 48 | 0; m = n + 28 | 0; o = n + 24 | 0; k = n + 20 | 0; h = n + 16 | 0; g = n + 12 | 0; j = n + 8 | 0; e = n + 4 | 0; i = n + 32 | 0; f = n; c[o >> 2] = b; c[f >> 2] = c[(c[o >> 2] | 0) + 64 >> 2]; c[k >> 2] = 0; c[j >> 2] = 0; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[(c[f >> 2] | 0) + 100 >> 2] | 0) >>> 0) break; a[i >> 0] = a[(c[(c[f >> 2] | 0) + 96 >> 2] | 0) + (c[g >> 2] | 0) >> 0] | 0; c[e >> 2] = c[g >> 2] << 3; while (1) { if (!(d[i >> 0] | 0)) break; while (1) { if ((d[i >> 0] | 0) & 128 | 0) break; a[i >> 0] = (d[i >> 0] | 0) << 1; c[e >> 2] = (c[e >> 2] | 0) + 1 } c[h >> 2] = 0; while (1) { if (!((d[i >> 0] | 0) & 128)) break; c[h >> 2] = (c[h >> 2] | 0) + 1; a[i >> 0] = (d[i >> 0] | 0) << 1 } if (!(zN(c[f >> 2] | 0, c[e >> 2] | 0, c[h >> 2] | 0) | 0)) c[j >> 2] = (c[j >> 2] | 0) + (c[h >> 2] | 0); else c[k >> 2] = 1; c[e >> 2] = (c[e >> 2] | 0) + (c[h >> 2] | 0) } c[g >> 2] = (c[g >> 2] | 0) + 1 } if ((c[j >> 2] | 0) >>> 0 > 0 ? wN(c[f >> 2] | 0) | 0 : 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = n; return o | 0 } XP(c[(c[f >> 2] | 0) + 72 >> 2] | 0) | 0; c[m >> 2] = c[k >> 2]; o = c[m >> 2] | 0; l = n; return o | 0 } function zN(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 4128 | 0; o = p + 28 | 0; j = p + 24 | 0; g = p + 20 | 0; i = p + 16 | 0; k = p + 12 | 0; m = p + 8 | 0; n = p; h = p + 32 | 0; c[j >> 2] = b; c[g >> 2] = e; c[i >> 2] = f; b = (c[j >> 2] | 0) + 88 | 0; e = c[b >> 2] | 0; b = c[b + 4 >> 2] | 0; f = $Q(512, 0, c[g >> 2] | 0, 0) | 0; f = OQ(e | 0, b | 0, f | 0, D | 0) | 0; b = n; c[b >> 2] = f; c[b + 4 >> 2] = D; while (1) { if ((c[i >> 2] | 0) >>> 0 <= 0) { e = 13; break } c[m >> 2] = (c[i >> 2] | 0) >>> 0 <= 8 ? c[i >> 2] | 0 : 8; b = n; if (Dy(c[(c[j >> 2] | 0) + 72 >> 2] | 0, h, c[b >> 2] | 0, c[b + 4 >> 2] | 0, c[m >> 2] << 9, 0) | 0) { e = 4; break } if (az(c[(c[j >> 2] | 0) + 68 >> 2] | 0, h, c[g >> 2] | 0, c[m >> 2] | 0) | 0) { e = 6; break } TQ(h | 0, 0, c[m >> 2] << 9 | 0) | 0; b = n; if (Ey(c[(c[j >> 2] | 0) + 72 >> 2] | 0, h, c[b >> 2] | 0, c[b + 4 >> 2] | 0, c[m >> 2] << 9, 0) | 0) { e = 8; break } c[k >> 2] = 0; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; b = (c[(c[j >> 2] | 0) + 96 >> 2] | 0) + (((c[g >> 2] | 0) + (c[k >> 2] | 0) | 0) >>> 3) | 0; a[b >> 0] = (d[b >> 0] | 0) & ~(128 >> ((c[g >> 2] | 0) + (c[k >> 2] | 0) & 7)); c[k >> 2] = (c[k >> 2] | 0) + 1 } c[g >> 2] = (c[g >> 2] | 0) + (c[m >> 2] | 0); f = n; f = OQ(c[f >> 2] | 0, c[f + 4 >> 2] | 0, c[m >> 2] << 9 | 0, 0) | 0; b = n; c[b >> 2] = f; c[b + 4 >> 2] = D; c[i >> 2] = (c[i >> 2] | 0) - (c[m >> 2] | 0) } if ((e | 0) == 4) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((e | 0) == 6) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((e | 0) == 8) { c[o >> 2] = 1; o = c[o >> 2] | 0; l = p; return o | 0 } else if ((e | 0) == 13) { c[o >> 2] = 0; o = c[o >> 2] | 0; l = p; return o | 0 } return 0 } function AN(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; p = l; l = l + 32 | 0; o = p + 24 | 0; h = p + 20 | 0; q = p + 16 | 0; g = p + 12 | 0; n = p + 8 | 0; i = p + 4 | 0; k = p; j = p + 29 | 0; m = p + 28 | 0; c[h >> 2] = b; c[q >> 2] = e; c[g >> 2] = f; c[i >> 2] = ((c[q >> 2] | 0) >>> 0) / 8 | 0; c[k >> 2] = c[c[g >> 2] >> 2]; a[j >> 0] = 128 >> (c[q >> 2] & 7); c[n >> 2] = ((d[(c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[i >> 2] | 0) >> 0] | 0) & (d[j >> 0] | 0) | 0) != 0 & 1; c[c[g >> 2] >> 2] = 1; if ((c[k >> 2] | 0) >>> 0 <= 1) { c[o >> 2] = c[n >> 2]; q = c[o >> 2] | 0; l = p; return q | 0 } c[k >> 2] = (c[k >> 2] | 0) - 1; a[m >> 0] = c[n >> 2] | 0 ? 255 : 0; while (1) { if ((c[k >> 2] | 0) >>> 0 <= 0) { e = 16; break } if ((d[j >> 0] | 0 | 0) == 1) { c[i >> 2] = (c[i >> 2] | 0) + 1; a[j >> 0] = -128; while (1) { if ((c[k >> 2] | 0) >>> 0 < 8) break; if ((d[(c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[i >> 2] | 0) >> 0] | 0 | 0) != (d[m >> 0] | 0 | 0)) break; c[i >> 2] = (c[i >> 2] | 0) + 1; c[k >> 2] = (c[k >> 2] | 0) - 8; q = c[g >> 2] | 0; c[q >> 2] = (c[q >> 2] | 0) + 8 } if (!(c[k >> 2] | 0)) { e = 11; break } } else a[j >> 0] = (d[j >> 0] | 0) >> 1; if ((((d[(c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[i >> 2] | 0) >> 0] | 0) & (d[j >> 0] | 0) | 0) != 0 | 0) != (c[n >> 2] | 0)) { e = 14; break } c[k >> 2] = (c[k >> 2] | 0) - 1; q = c[g >> 2] | 0; c[q >> 2] = (c[q >> 2] | 0) + 1 } if ((e | 0) == 11) { c[o >> 2] = c[n >> 2]; q = c[o >> 2] | 0; l = p; return q | 0 } else if ((e | 0) == 14) { c[o >> 2] = c[n >> 2]; q = c[o >> 2] | 0; l = p; return q | 0 } else if ((e | 0) == 16) { c[o >> 2] = c[n >> 2]; q = c[o >> 2] | 0; l = p; return q | 0 } return 0 } function BN(b, e, f, g) { b = b | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; o = l; l = l + 48 | 0; n = o + 28 | 0; h = o + 24 | 0; s = o + 20 | 0; r = o + 16 | 0; p = o + 12 | 0; i = o + 8 | 0; j = o + 4 | 0; k = o; q = o + 33 | 0; m = o + 32 | 0; c[h >> 2] = b; c[s >> 2] = e; c[r >> 2] = f; c[p >> 2] = g; c[r >> 2] = (c[s >> 2] | 0) + (c[r >> 2] | 0) - 1; c[j >> 2] = ((c[s >> 2] | 0) >>> 0) / 8 | 0; c[k >> 2] = ((c[r >> 2] | 0) >>> 0) / 8 | 0; a[q >> 0] = 128 >> (c[s >> 2] & 7); a[m >> 0] = 128 >> (c[r >> 2] & 7); a[q >> 0] = d[q >> 0] | 0 | (d[q >> 0] | 0) - 1; a[m >> 0] = d[m >> 0] | 0 | (d[m >> 0] | 0) - 1 ^ 255; e = (c[j >> 2] | 0) == (c[k >> 2] | 0); f = d[q >> 0] | 0; a: do if (c[p >> 2] | 0) { if (e) { s = (c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[j >> 2] | 0) | 0; a[s >> 0] = d[s >> 0] | 0 | f & (d[m >> 0] | 0); break } s = (c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[j >> 2] | 0) | 0; a[s >> 0] = d[s >> 0] | 0 | f; s = (c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[k >> 2] | 0) | 0; a[s >> 0] = d[s >> 0] | 0 | (d[m >> 0] | 0); c[i >> 2] = (c[j >> 2] | 0) + 1; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) break a; a[(c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[i >> 2] | 0) >> 0] = -1; c[i >> 2] = (c[i >> 2] | 0) + 1 } } else { if (e) { s = (c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[j >> 2] | 0) | 0; a[s >> 0] = (d[s >> 0] | 0) & ~(f & (d[m >> 0] | 0)); break } s = (c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[j >> 2] | 0) | 0; a[s >> 0] = (d[s >> 0] | 0) & ~f; s = (c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[k >> 2] | 0) | 0; a[s >> 0] = (d[s >> 0] | 0) & ~(d[m >> 0] | 0); c[i >> 2] = (c[j >> 2] | 0) + 1; while (1) { if ((c[i >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) break a; a[(c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[i >> 2] | 0) >> 0] = 0; c[i >> 2] = (c[i >> 2] | 0) + 1 } } while (0); c[k >> 2] = (c[k >> 2] | 0) - (c[j >> 2] | 0) + 1; q = c[(c[h >> 2] | 0) + 72 >> 2] | 0; r = (c[(c[h >> 2] | 0) + 96 >> 2] | 0) + (c[j >> 2] | 0) | 0; s = (c[h >> 2] | 0) + 80 | 0; s = OQ(c[s >> 2] | 0, c[s + 4 >> 2] | 0, c[j >> 2] | 0, 0) | 0; if (Ey(q, r, s, D, c[k >> 2] | 0, 0) | 0) { c[n >> 2] = 1; s = c[n >> 2] | 0; l = o; return s | 0 } else { c[n >> 2] = 0; s = c[n >> 2] | 0; l = o; return s | 0 } return 0 } function CN(a, b, d, e, f, g, h, i) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; j = l; l = l + 48 | 0; s = j + 32 | 0; o = j + 28 | 0; n = j + 24 | 0; p = j; r = j + 20 | 0; q = j + 16 | 0; m = j + 12 | 0; k = j + 8 | 0; c[s >> 2] = a; c[o >> 2] = b; c[n >> 2] = d; a = p; c[a >> 2] = e; c[a + 4 >> 2] = f; c[r >> 2] = g; c[q >> 2] = h; c[m >> 2] = i; c[k >> 2] = c[(c[s >> 2] | 0) + 64 >> 2]; c[(c[k >> 2] | 0) + 72 + (c[(c[k >> 2] | 0) + 68 >> 2] << 5) >> 2] = c[r >> 2]; c[(c[k >> 2] | 0) + 72 + (c[(c[k >> 2] | 0) + 68 >> 2] << 5) + 4 >> 2] = c[q >> 2]; a = p; b = c[a + 4 >> 2] | 0; i = (c[k >> 2] | 0) + 72 + (c[(c[k >> 2] | 0) + 68 >> 2] << 5) + 8 | 0; c[i >> 2] = c[a >> 2]; c[i + 4 >> 2] = b; c[(c[k >> 2] | 0) + 72 + (c[(c[k >> 2] | 0) + 68 >> 2] << 5) + 16 >> 2] = c[o >> 2]; c[(c[k >> 2] | 0) + 72 + (c[(c[k >> 2] | 0) + 68 >> 2] << 5) + 20 >> 2] = (c[n >> 2] | 0) != 0 & 1; c[(c[k >> 2] | 0) + 72 + (c[(c[k >> 2] | 0) + 68 >> 2] << 5) + 24 >> 2] = (c[m >> 2] | 0) != 0 & 1; i = (c[k >> 2] | 0) + 68 | 0; c[i >> 2] = (c[i >> 2] | 0) + 1; l = j; return 0 } function DN(a, b, d, e, f, g, h) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; r = l; l = l + 48 | 0; o = r + 36 | 0; k = r + 32 | 0; s = r + 28 | 0; q = r; i = r + 24 | 0; j = r + 20 | 0; p = r + 16 | 0; n = r + 12 | 0; m = r + 8 | 0; c[k >> 2] = a; c[s >> 2] = b; b = q; c[b >> 2] = d; c[b + 4 >> 2] = e; c[i >> 2] = f; c[j >> 2] = g; c[p >> 2] = h; d = c[s >> 2] | 0; if (c[p >> 2] | 0) c[m >> 2] = dQ(d, 50621) | 0; else c[m >> 2] = dQ(d, 50617) | 0; if (!(c[m >> 2] | 0)) { c[o >> 2] = 1; s = c[o >> 2] | 0; l = r; return s | 0 } s = q; c[n >> 2] = CN(c[k >> 2] | 0, c[m >> 2] | 0, 1, c[s >> 2] | 0, c[s + 4 >> 2] | 0, c[i >> 2] | 0, c[j >> 2] | 0, c[p >> 2] | 0) | 0; if (c[n >> 2] | 0) { UP(c[m >> 2] | 0) | 0; c[o >> 2] = 1; s = c[o >> 2] | 0; l = r; return s | 0 } else { c[o >> 2] = 0; s = c[o >> 2] | 0; l = r; return s | 0 } return 0 } function EN(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; i = m + 20 | 0; f = m + 16 | 0; g = m + 12 | 0; k = m + 8 | 0; j = m + 4 | 0; h = m; c[f >> 2] = a; c[g >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; c[h >> 2] = HQ(584) | 0; if (!(c[h >> 2] | 0)) { c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } else { Iy(c[h >> 2] | 0, c[h >> 2] | 0, 0, c[f >> 2] | 0, c[g >> 2] | 0, c[k >> 2] | 0); Oy(c[h >> 2] | 0, c[j >> 2] | 0); c[(c[h >> 2] | 0) + 4 >> 2] = 252; c[(c[h >> 2] | 0) + 8 >> 2] = 33; c[(c[h >> 2] | 0) + 12 >> 2] = 34; c[(c[h >> 2] | 0) + 68 >> 2] = 0; c[i >> 2] = c[h >> 2]; k = c[i >> 2] | 0; l = m; return k | 0 } return 0 } function FN(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; b = e + 4 | 0; d = e; c[f >> 2] = a; c[d >> 2] = c[(c[f >> 2] | 0) + 64 >> 2]; c[b >> 2] = 0; while (1) { a = c[d >> 2] | 0; if ((c[b >> 2] | 0) >>> 0 >= (c[(c[d >> 2] | 0) + 68 >> 2] | 0) >>> 0) break; if (c[a + 72 + (c[b >> 2] << 5) + 20 >> 2] | 0) UP(c[(c[d >> 2] | 0) + 72 + (c[b >> 2] << 5) + 16 >> 2] | 0) | 0; c[b >> 2] = (c[b >> 2] | 0) + 1 } IQ(a); l = e; return } function GN(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 64 | 0; q = r + 48 | 0; g = r + 44 | 0; o = r + 40 | 0; h = r + 36 | 0; p = r + 32 | 0; n = r + 28 | 0; i = r + 24 | 0; j = r + 20 | 0; k = r + 8 | 0; f = r; m = r + 16 | 0; c[g >> 2] = a; c[o >> 2] = b; c[h >> 2] = d; c[p >> 2] = e; if (((c[h >> 2] | 0) + (c[p >> 2] | 0) | 0) >>> 0 > (c[(c[g >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } c[m >> 2] = c[(c[g >> 2] | 0) + 64 >> 2]; while (1) { if ((c[p >> 2] | 0) >>> 0 <= 0) { b = 16; break } if (IN(c[g >> 2] | 0, c[h >> 2] | 0, n) | 0) { b = 6; break } if ((c[(c[m >> 2] | 0) + 72 + (c[n >> 2] << 5) >> 2] | 0) >>> 0 <= (c[h >> 2] | 0) >>> 0) { c[i >> 2] = (c[h >> 2] | 0) - (c[(c[m >> 2] | 0) + 72 + (c[n >> 2] << 5) >> 2] | 0); c[j >> 2] = (c[(c[m >> 2] | 0) + 72 + (c[n >> 2] << 5) + 4 >> 2] | 0) - (c[i >> 2] | 0); if ((c[j >> 2] | 0) >>> 0 > (c[p >> 2] | 0) >>> 0) c[j >> 2] = c[p >> 2]; e = (c[m >> 2] | 0) + 72 + (c[n >> 2] << 5) + 8 | 0; a = c[e >> 2] | 0; e = c[e + 4 >> 2] | 0; d = $Q(512, 0, c[i >> 2] | 0, 0) | 0; d = OQ(a | 0, e | 0, d | 0, D | 0) | 0; e = k; c[e >> 2] = d; c[e + 4 >> 2] = D; e = $Q(512, 0, c[j >> 2] | 0, 0) | 0; d = f; c[d >> 2] = e; c[d + 4 >> 2] = D; d = k; e = f; if (Dy(c[(c[m >> 2] | 0) + 72 + (c[n >> 2] << 5) + 16 >> 2] | 0, c[o >> 2] | 0, c[d >> 2] | 0, c[d + 4 >> 2] | 0, c[e >> 2] | 0, c[e + 4 >> 2] | 0) | 0) { b = 11; break } } else { c[j >> 2] = (c[(c[m >> 2] | 0) + 72 + (c[n >> 2] << 5) >> 2] | 0) - (c[h >> 2] | 0); if ((c[j >> 2] | 0) >>> 0 > (c[p >> 2] | 0) >>> 0) c[j >> 2] = c[p >> 2]; d = $Q(512, 0, c[j >> 2] | 0, 0) | 0; e = f; c[e >> 2] = d; c[e + 4 >> 2] = D; TQ(c[o >> 2] | 0, -2, c[f >> 2] | 0) | 0 } c[h >> 2] = (c[h >> 2] | 0) + (c[j >> 2] | 0); c[p >> 2] = (c[p >> 2] | 0) - (c[j >> 2] | 0); c[o >> 2] = (c[o >> 2] | 0) + (c[f >> 2] | 0) } if ((b | 0) == 6) { TQ(c[o >> 2] | 0, -2, c[p >> 2] << 9 | 0) | 0; c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((b | 0) == 11) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((b | 0) == 16) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } return 0 } function HN(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 64 | 0; q = r + 48 | 0; h = r + 44 | 0; f = r + 40 | 0; i = r + 36 | 0; m = r + 32 | 0; p = r + 28 | 0; j = r + 24 | 0; k = r + 20 | 0; n = r + 8 | 0; g = r; o = r + 16 | 0; c[h >> 2] = a; c[f >> 2] = b; c[i >> 2] = d; c[m >> 2] = e; if (((c[i >> 2] | 0) + (c[m >> 2] | 0) | 0) >>> 0 > (c[(c[h >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } c[o >> 2] = c[(c[h >> 2] | 0) + 64 >> 2]; while (1) { if ((c[m >> 2] | 0) >>> 0 <= 0) { b = 19; break } if (IN(c[h >> 2] | 0, c[i >> 2] | 0, p) | 0) { b = 6; break } b = (c[o >> 2] | 0) + 72 + (c[p >> 2] << 5) | 0; if ((c[(c[o >> 2] | 0) + 72 + (c[p >> 2] << 5) >> 2] | 0) >>> 0 <= (c[i >> 2] | 0) >>> 0) { if (c[b + 24 >> 2] | 0) { b = 9; break } c[j >> 2] = (c[i >> 2] | 0) - (c[(c[o >> 2] | 0) + 72 + (c[p >> 2] << 5) >> 2] | 0); c[k >> 2] = (c[(c[o >> 2] | 0) + 72 + (c[p >> 2] << 5) + 4 >> 2] | 0) - (c[j >> 2] | 0); if ((c[k >> 2] | 0) >>> 0 > (c[m >> 2] | 0) >>> 0) c[k >> 2] = c[m >> 2]; e = (c[o >> 2] | 0) + 72 + (c[p >> 2] << 5) + 8 | 0; a = c[e >> 2] | 0; e = c[e + 4 >> 2] | 0; d = $Q(512, 0, c[j >> 2] | 0, 0) | 0; d = OQ(a | 0, e | 0, d | 0, D | 0) | 0; e = n; c[e >> 2] = d; c[e + 4 >> 2] = D; e = $Q(512, 0, c[k >> 2] | 0, 0) | 0; d = g; c[d >> 2] = e; c[d + 4 >> 2] = D; d = n; e = g; if (Ey(c[(c[o >> 2] | 0) + 72 + (c[p >> 2] << 5) + 16 >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0, c[d + 4 >> 2] | 0, c[e >> 2] | 0, c[e + 4 >> 2] | 0) | 0) { b = 13; break } XP(c[(c[o >> 2] | 0) + 72 + (c[p >> 2] << 5) + 16 >> 2] | 0) | 0 } else { c[k >> 2] = (c[b >> 2] | 0) - (c[i >> 2] | 0); if ((c[k >> 2] | 0) >>> 0 > (c[m >> 2] | 0) >>> 0) c[k >> 2] = c[m >> 2]; d = $Q(512, 0, c[k >> 2] | 0, 0) | 0; e = g; c[e >> 2] = d; c[e + 4 >> 2] = D } c[i >> 2] = (c[i >> 2] | 0) + (c[k >> 2] | 0); c[m >> 2] = (c[m >> 2] | 0) - (c[k >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + (c[g >> 2] | 0) } if ((b | 0) == 6) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((b | 0) == 9) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((b | 0) == 13) { c[q >> 2] = 1; q = c[q >> 2] | 0; l = r; return q | 0 } else if ((b | 0) == 19) { c[q >> 2] = 0; q = c[q >> 2] | 0; l = r; return q | 0 } return 0 } function IN(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; i = k + 20 | 0; m = k + 16 | 0; e = k + 12 | 0; h = k + 8 | 0; f = k + 4 | 0; g = k; c[m >> 2] = a; c[e >> 2] = b; c[h >> 2] = d; c[g >> 2] = c[(c[m >> 2] | 0) + 64 >> 2]; if (!(c[(c[g >> 2] | 0) + 68 >> 2] | 0)) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = k; return m | 0 } c[c[h >> 2] >> 2] = 0; c[f >> 2] = 0; while (1) { b = (c[g >> 2] | 0) + 72 | 0; if ((c[f >> 2] | 0) >>> 0 >= (c[(c[g >> 2] | 0) + 68 >> 2] | 0) >>> 0) break; if ((c[b + (c[f >> 2] << 5) >> 2] | 0) >>> 0 <= (c[e >> 2] | 0) >>> 0) { if (((c[e >> 2] | 0) - (c[(c[g >> 2] | 0) + 72 + (c[f >> 2] << 5) >> 2] | 0) | 0) >>> 0 < (c[(c[g >> 2] | 0) + 72 + (c[f >> 2] << 5) + 4 >> 2] | 0) >>> 0) { j = 7; break } } else if ((c[(c[g >> 2] | 0) + 72 + (c[f >> 2] << 5) >> 2] | 0) >>> 0 < (c[(c[g >> 2] | 0) + 72 + (c[c[h >> 2] >> 2] << 5) >> 2] | 0) >>> 0) c[c[h >> 2] >> 2] = c[f >> 2]; c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((j | 0) == 7) { c[c[h >> 2] >> 2] = c[f >> 2]; c[i >> 2] = 0; m = c[i >> 2] | 0; l = k; return m | 0 } if ((c[b + (c[c[h >> 2] >> 2] << 5) >> 2] | 0) >>> 0 <= (c[e >> 2] | 0) >>> 0) { c[i >> 2] = 1; m = c[i >> 2] | 0; l = k; return m | 0 } else { c[i >> 2] = 0; m = c[i >> 2] | 0; l = k; return m | 0 } return 0 } function JN(a, b, d, e, f, g) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0; q = l; l = l + 32 | 0; p = q + 28 | 0; n = q + 24 | 0; j = q + 20 | 0; h = q + 16 | 0; i = q + 12 | 0; m = q + 8 | 0; k = q + 4 | 0; o = q; c[n >> 2] = a; c[j >> 2] = b; c[h >> 2] = d; c[i >> 2] = e; c[m >> 2] = f; c[k >> 2] = g; c[o >> 2] = HQ(72) | 0; if (!(c[o >> 2] | 0)) { c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } Iy(c[o >> 2] | 0, c[o >> 2] | 0, c[j >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0, c[m >> 2] | 0); My(c[o >> 2] | 0, 2); Oy(c[o >> 2] | 0, c[k >> 2] | 0); c[(c[o >> 2] | 0) + 4 >> 2] = 253; c[(c[o >> 2] | 0) + 8 >> 2] = 35; c[(c[o >> 2] | 0) + 12 >> 2] = 36; d = HQ(c[(c[o >> 2] | 0) + 28 >> 2] << 9) | 0; c[(c[o >> 2] | 0) + 68 >> 2] = d; d = c[o >> 2] | 0; if (!(c[(c[o >> 2] | 0) + 68 >> 2] | 0)) { IQ(d); c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } TQ(c[d + 68 >> 2] | 0, 0, c[(c[o >> 2] | 0) + 28 >> 2] << 9 | 0) | 0; do if (c[n >> 2] | 0) { m = (NN(c[o >> 2] | 0, c[n >> 2] | 0) | 0) != 0; d = c[o >> 2] | 0; if (!m) { Py(d, c[n >> 2] | 0); break } IQ(c[d + 68 >> 2] | 0); IQ(c[o >> 2] | 0); c[p >> 2] = 0; p = c[p >> 2] | 0; l = q; return p | 0 } while (0); c[p >> 2] = c[o >> 2]; p = c[p >> 2] | 0; l = q; return p | 0 } function KN(a) { a = a | 0; var b = 0, d = 0, e = 0; b = l; l = l + 16 | 0; e = b + 4 | 0; d = b; c[e >> 2] = a; c[d >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; IQ(c[(c[d >> 2] | 0) + 68 >> 2] | 0); IQ(c[d >> 2] | 0); l = b; return } function LN(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; j = k + 20 | 0; m = k + 16 | 0; f = k + 12 | 0; g = k + 8 | 0; h = k + 4 | 0; i = k; c[m >> 2] = a; c[f >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; c[i >> 2] = c[(c[m >> 2] | 0) + 64 >> 2]; if (((c[g >> 2] | 0) + (c[h >> 2] | 0) | 0) >>> 0 > (c[(c[m >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[j >> 2] = 1; m = c[j >> 2] | 0; l = k; return m | 0 } else { QQ(c[f >> 2] | 0, (c[(c[i >> 2] | 0) + 68 >> 2] | 0) + (c[g >> 2] << 9) | 0, c[h >> 2] << 9 | 0) | 0; c[j >> 2] = 0; m = c[j >> 2] | 0; l = k; return m | 0 } return 0 } function MN(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, m = 0, n = 0; n = l; l = l + 32 | 0; m = n + 20 | 0; h = n + 16 | 0; g = n + 12 | 0; i = n + 8 | 0; j = n + 4 | 0; k = n; c[h >> 2] = b; c[g >> 2] = d; c[i >> 2] = e; c[j >> 2] = f; if (a[(c[h >> 2] | 0) + 56 >> 0] | 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } c[k >> 2] = c[(c[h >> 2] | 0) + 64 >> 2]; if (((c[i >> 2] | 0) + (c[j >> 2] | 0) | 0) >>> 0 > (c[(c[h >> 2] | 0) + 28 >> 2] | 0) >>> 0) { c[m >> 2] = 1; m = c[m >> 2] | 0; l = n; return m | 0 } else { QQ((c[(c[k >> 2] | 0) + 68 >> 2] | 0) + (c[i >> 2] << 9) | 0, c[g >> 2] | 0, c[j >> 2] << 9 | 0) | 0; c[m >> 2] = 0; m = c[m >> 2] | 0; l = n; return m | 0 } return 0 } function NN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 32 | 0; g = h + 16 | 0; f = h + 12 | 0; i = h + 8 | 0; e = h + 4 | 0; d = h; c[f >> 2] = a; c[i >> 2] = b; c[d >> 2] = dQ(c[i >> 2] | 0, 50621) | 0; if (!(c[d >> 2] | 0)) { c[g >> 2] = 1; i = c[g >> 2] | 0; l = h; return i | 0 } else { b = c[d >> 2] | 0; a = c[(c[f >> 2] | 0) + 68 >> 2] | 0; i = $Q(512, 0, c[(c[f >> 2] | 0) + 28 >> 2] | 0, 0) | 0; c[e >> 2] = Dy(b, a, 0, 0, i, D) | 0; UP(c[d >> 2] | 0) | 0; c[g >> 2] = c[e >> 2]; i = c[g >> 2] | 0; l = h; return i | 0 } return 0 } function ON(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = 27616; while (1) { if (!(c[(c[d >> 2] | 0) + 4 >> 2] | 0)) { a = 6; break } a = (sQ(c[(c[d >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0) | 0) == 0; b = c[d >> 2] | 0; if (a) { a = 4; break } c[d >> 2] = b + 8 } if ((a | 0) == 4) { c[f >> 2] = c[b >> 2]; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((a | 0) == 6) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function PN(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; e = g + 4 | 0; d = g; c[e >> 2] = a; c[d >> 2] = 27616; while (1) { if (!(c[(c[d >> 2] | 0) + 4 >> 2] | 0)) { a = 6; break } b = c[d >> 2] | 0; if ((c[c[d >> 2] >> 2] | 0) == (c[e >> 2] | 0)) { a = 4; break } c[d >> 2] = b + 8 } if ((a | 0) == 4) { c[f >> 2] = c[b + 4 >> 2]; f = c[f >> 2] | 0; l = g; return f | 0 } else if ((a | 0) == 6) { c[f >> 2] = 0; f = c[f >> 2] | 0; l = g; return f | 0 } return 0 } function QN(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, m = 0; m = l; l = l + 64 | 0; i = m + 16 | 0; h = m + 12 | 0; j = m + 8 | 0; g = m + 4 | 0; f = m; k = m + 24 | 0; c[h >> 2] = b; c[j >> 2] = d; c[g >> 2] = e; while (1) { if ((a[c[h >> 2] >> 0] | 0) != 32 ? (a[c[h >> 2] >> 0] | 0) != 9 : 0) break; c[h >> 2] = (c[h >> 2] | 0) + 1 } c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= 32) break; if (!(a[c[h >> 2] >> 0] | 0)) break; if ((a[c[h >> 2] >> 0] | 0) == 61) break; if ((a[c[h >> 2] >> 0] | 0) == 32) break; b = c[h >> 2] | 0; c[h >> 2] = b + 1; b = a[b >> 0] | 0; d = c[f >> 2] | 0; c[f >> 2] = d + 1; a[k + d >> 0] = b } if ((c[f >> 2] | 0) >>> 0 >= 32) { c[i >> 2] = 1; k = c[i >> 2] | 0; l = m; return k | 0 } a[k + (c[f >> 2] | 0) >> 0] = 0; while (1) { e = c[h >> 2] | 0; if ((a[c[h >> 2] >> 0] | 0) != 32) break; c[h >> 2] = e + 1 } a: do if ((a[e >> 0] | 0) == 61) { c[h >> 2] = (c[h >> 2] | 0) + 1; while (1) { if ((a[c[h >> 2] >> 0] | 0) != 32) break a; c[h >> 2] = (c[h >> 2] | 0) + 1 } } while (0); k = qQ(k, 0, 0) | 0; c[c[j >> 2] >> 2] = k; k = ON(c[h >> 2] | 0) | 0; c[c[g >> 2] >> 2] = k; c[i >> 2] = 0; k = c[i >> 2] | 0; l = m; return k | 0 } function RN(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; c[d >> 2] = HQ(152) | 0; if (!(c[d >> 2] | 0)) { c[e >> 2] = 0; e = c[e >> 2] | 0; l = f; return e | 0 } else { SN(c[d >> 2] | 0, c[b >> 2] | 0); c[e >> 2] = c[d >> 2]; e = c[e >> 2] | 0; l = f; return e | 0 } return 0 } function SN(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; c[e >> 2] = a; c[d >> 2] = b; _N(c[e >> 2] | 0, c[e >> 2] | 0); c[(c[e >> 2] | 0) + 28 >> 2] = 254; c[(c[e >> 2] | 0) + 32 >> 2] = 51; c[(c[e >> 2] | 0) + 36 >> 2] = 9; c[(c[e >> 2] | 0) + 40 >> 2] = 52; c[(c[e >> 2] | 0) + 44 >> 2] = 255; c[(c[e >> 2] | 0) + 48 >> 2] = 256; l = d; return } function TN(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[b >> 2] | 0)) { l = d; return } ZN(c[b >> 2] | 0); IQ(c[b >> 2] | 0); l = d; return } function UN(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; e = l; l = l + 16 | 0; c[e + 8 >> 2] = a; c[e + 4 >> 2] = b; c[e >> 2] = d; l = e; return 0 } function VN(a) { a = a | 0; var b = 0; b = l; l = l + 16 | 0; c[b >> 2] = a; l = b; return 0 } function WN(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 12 | 0; e = g + 4 | 0; c[g + 8 >> 2] = a; c[e >> 2] = b; c[g >> 2] = d; do if (fP(c[e >> 2] | 0, 51610) | 0) { if (!(fP(c[e >> 2] | 0, 51620) | 0)) { c[f >> 2] = 0; break } if (!(fP(c[e >> 2] | 0, 51633) | 0)) { c[f >> 2] = 0; break } if (!(fP(c[e >> 2] | 0, 51680) | 0)) { c[f >> 2] = 0; break } if (!(fP(c[e >> 2] | 0, 51703) | 0)) { c[f >> 2] = 0; break } else { c[f >> 2] = -1; break } } else c[f >> 2] = 0; while (0); l = g; return c[f >> 2] | 0 } function XN(a) { a = a | 0; var b = 0; b = l; l = l + 16 | 0; c[b >> 2] = a; l = b; return } function YN(a) { a = a | 0; var b = 0; b = l; l = l + 16 | 0; c[b >> 2] = a; l = b; return } function ZN(a) { a = a | 0; var b = 0; b = l; l = l + 16 | 0; c[b >> 2] = a; l = b; return } function _N(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[c[e >> 2] >> 2] = c[f >> 2]; c[(c[e >> 2] | 0) + 4 >> 2] = 0; c[(c[e >> 2] | 0) + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 12 >> 2] = 0; c[(c[e >> 2] | 0) + 16 >> 2] = 0; c[(c[e >> 2] | 0) + 20 >> 2] = 0; c[(c[e >> 2] | 0) + 24 >> 2] = 0; c[(c[e >> 2] | 0) + 28 >> 2] = 0; c[(c[e >> 2] | 0) + 40 >> 2] = 0; c[(c[e >> 2] | 0) + 44 >> 2] = 0; c[(c[e >> 2] | 0) + 48 >> 2] = 0; c[(c[e >> 2] | 0) + 52 >> 2] = 0; c[(c[e >> 2] | 0) + 56 >> 2] = 1; c[(c[e >> 2] | 0) + 60 >> 2] = 0; c[(c[e >> 2] | 0) + 64 >> 2] = 0; c[(c[e >> 2] | 0) + 68 >> 2] = 0; c[(c[e >> 2] | 0) + 72 >> 2] = 0; c[(c[e >> 2] | 0) + 76 >> 2] = 0; c[(c[e >> 2] | 0) + 80 >> 2] = 1; c[(c[e >> 2] | 0) + 84 >> 2] = 4; c[(c[e >> 2] | 0) + 88 >> 2] = 3; c[(c[e >> 2] | 0) + 92 >> 2] = 320; c[(c[e >> 2] | 0) + 96 >> 2] = 240; c[(c[e >> 2] | 0) + 100 >> 2] = 1; c[(c[e >> 2] | 0) + 100 + 4 >> 2] = 1; c[(c[e >> 2] | 0) + 100 + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 112 >> 2] = 1; c[(c[e >> 2] | 0) + 112 + 4 >> 2] = 1; c[(c[e >> 2] | 0) + 112 + 8 >> 2] = 0; c[(c[e >> 2] | 0) + 124 >> 2] = 0; c[(c[e >> 2] | 0) + 128 >> 2] = 0; c[(c[e >> 2] | 0) + 132 >> 2] = 0; c[(c[e >> 2] | 0) + 136 >> 2] = 0; c[(c[e >> 2] | 0) + 140 >> 2] = 0; c[(c[e >> 2] | 0) + 144 >> 2] = 0; c[(c[e >> 2] | 0) + 148 >> 2] = 0; l = d; return } function $N(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; e = i; c[g >> 2] = a; c[h >> 2] = b; c[e >> 2] = d; if (c[(c[g >> 2] | 0) + 52 >> 2] | 0) { c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } if (c[(c[g >> 2] | 0) + 32 >> 2] | 0 ? Nb[c[(c[g >> 2] | 0) + 32 >> 2] & 63](c[c[g >> 2] >> 2] | 0, c[h >> 2] | 0, c[e >> 2] | 0) | 0 : 0) { c[f >> 2] = 1; h = c[f >> 2] | 0; l = i; return h | 0 } c[(c[g >> 2] | 0) + 52 >> 2] = 1; c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } function aO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 4 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 8 >> 2] = c[g >> 2]; l = e; return } function bO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 12 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 16 >> 2] = c[g >> 2]; l = e; return } function cO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 20 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 24 >> 2] = c[g >> 2]; l = e; return } function dO(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 304 | 0; m = n + 8 | 0; k = n; h = n + 36 | 0; j = n + 32 | 0; f = n + 28 | 0; g = n + 24 | 0; i = n + 40 | 0; e = n + 20 | 0; c[j >> 2] = b; c[f >> 2] = d; if (!((c[f >> 2] | 0) != 0 ? (a[c[f >> 2] >> 0] | 0) != 0 : 0)) { c[k >> 2] = c[(c[j >> 2] | 0) + 148 >> 2]; BQ(i, 51379, k) | 0; k = (c[j >> 2] | 0) + 148 | 0; c[k >> 2] = (c[k >> 2] | 0) + 1; c[f >> 2] = i } c[g >> 2] = dQ(c[f >> 2] | 0, 51391) | 0; if (!(c[g >> 2] | 0)) { c[h >> 2] = 1; m = c[h >> 2] | 0; l = n; return m | 0 } c[e >> 2] = S((c[(c[j >> 2] | 0) + 64 >> 2] | 0) * 3 | 0, c[(c[j >> 2] | 0) + 68 >> 2] | 0) | 0; k = c[g >> 2] | 0; b = c[(c[j >> 2] | 0) + 68 >> 2] | 0; c[m >> 2] = c[(c[j >> 2] | 0) + 64 >> 2]; c[m + 4 >> 2] = b; c[m + 8 >> 2] = 255; kQ(k, 51394, m) | 0; m = QP(c[(c[j >> 2] | 0) + 76 >> 2] | 0, 1, c[e >> 2] | 0, c[g >> 2] | 0) | 0; m = (m | 0) != (c[e >> 2] | 0); UP(c[g >> 2] | 0) | 0; if (m) { c[h >> 2] = 1; m = c[h >> 2] | 0; l = n; return m | 0 } else { c[h >> 2] = 0; m = c[h >> 2] | 0; l = n; return m | 0 } return 0 } function eO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; e = i + 4 | 0; h = i; c[g >> 2] = a; c[e >> 2] = b; c[h >> 2] = d; if (!(fP(c[e >> 2] | 0, 51407) | 0)) { fO(c[g >> 2] | 0, c[h >> 2] | 0) | 0; c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } d = (fP(c[e >> 2] | 0, 51419) | 0) == 0; b = c[g >> 2] | 0; if (d) { dO(b, c[h >> 2] | 0) | 0; c[f >> 2] = 0; h = c[f >> 2] | 0; l = i; return h | 0 } if (c[b + 40 >> 2] | 0) { c[f >> 2] = Nb[c[(c[g >> 2] | 0) + 40 >> 2] & 63](c[c[g >> 2] >> 2] | 0, c[e >> 2] | 0, c[h >> 2] | 0) | 0; h = c[f >> 2] | 0; l = i; return h | 0 } else { c[f >> 2] = -1; h = c[f >> 2] | 0; l = i; return h | 0 } return 0 } function fO(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; e = g + 12 | 0; f = g + 8 | 0; h = g + 4 | 0; d = g; c[f >> 2] = a; c[h >> 2] = b; c[d >> 2] = ON(c[h >> 2] | 0) | 0; if (!(c[d >> 2] | 0)) { c[e >> 2] = 1; h = c[e >> 2] | 0; l = g; return h | 0 } else { c[(c[f >> 2] | 0) + 56 >> 2] = c[d >> 2]; c[e >> 2] = 0; h = c[e >> 2] | 0; l = g; return h | 0 } return 0 } function gO(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, m = 0; g = l; l = l + 32 | 0; h = g + 16 | 0; m = g + 12 | 0; k = g + 8 | 0; j = g + 4 | 0; i = g; c[h >> 2] = a; c[m >> 2] = b; c[k >> 2] = d; c[j >> 2] = e; c[i >> 2] = f; c[(c[h >> 2] | 0) + 100 >> 2] = c[m >> 2]; c[(c[h >> 2] | 0) + 100 + 4 >> 2] = c[k >> 2]; c[(c[h >> 2] | 0) + 100 + 8 >> 2] = 0; c[(c[h >> 2] | 0) + 112 >> 2] = c[j >> 2]; c[(c[h >> 2] | 0) + 112 + 4 >> 2] = c[i >> 2]; c[(c[h >> 2] | 0) + 112 + 8 >> 2] = 0; l = g; return } function hO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; h = j + 16 | 0; i = j + 12 | 0; f = j + 8 | 0; e = j + 4 | 0; g = j; c[h >> 2] = a; c[i >> 2] = b; c[f >> 2] = d; d = c[h >> 2] | 0; if ((c[i >> 2] | 0) == 0 | (c[f >> 2] | 0) == 0) { IQ(c[d + 76 >> 2] | 0); c[(c[h >> 2] | 0) + 72 >> 2] = 0; c[(c[h >> 2] | 0) + 76 >> 2] = 0; c[(c[h >> 2] | 0) + 64 >> 2] = 0; c[(c[h >> 2] | 0) + 68 >> 2] = 0; l = j; return } if ((c[d + 64 >> 2] | 0) == (c[i >> 2] | 0) ? (c[(c[h >> 2] | 0) + 68 >> 2] | 0) == (c[f >> 2] | 0) : 0) { l = j; return } c[e >> 2] = S((c[i >> 2] | 0) * 3 | 0, c[f >> 2] | 0) | 0; do if ((c[(c[h >> 2] | 0) + 72 >> 2] | 0) != (c[e >> 2] | 0)) { c[g >> 2] = JQ(c[(c[h >> 2] | 0) + 76 >> 2] | 0, c[e >> 2] | 0) | 0; if (!(c[g >> 2] | 0)) { l = j; return } else { c[(c[h >> 2] | 0) + 76 >> 2] = c[g >> 2]; c[(c[h >> 2] | 0) + 72 >> 2] = c[e >> 2]; break } } while (0); c[(c[h >> 2] | 0) + 64 >> 2] = c[i >> 2]; c[(c[h >> 2] | 0) + 68 >> 2] = c[f >> 2]; c[(c[h >> 2] | 0) + 132 >> 2] = 0; c[(c[h >> 2] | 0) + 136 >> 2] = 0; c[(c[h >> 2] | 0) + 140 >> 2] = c[i >> 2]; c[(c[h >> 2] | 0) + 144 >> 2] = c[f >> 2]; l = j; return } function iO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 92 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 96 >> 2] = c[g >> 2]; l = e; return } function jO(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0; d = l; l = l + 16 | 0; e = d + 4 | 0; f = d; c[e >> 2] = a; c[f >> 2] = b; c[(c[e >> 2] | 0) + 80 >> 2] = (c[f >> 2] | 0) >>> 0 < 1 ? 1 : c[f >> 2] | 0; c[(c[e >> 2] | 0) + 132 >> 2] = 0; c[(c[e >> 2] | 0) + 136 >> 2] = 0; c[(c[e >> 2] | 0) + 140 >> 2] = c[(c[e >> 2] | 0) + 64 >> 2]; c[(c[e >> 2] | 0) + 144 >> 2] = c[(c[e >> 2] | 0) + 68 >> 2]; l = d; return } function kO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; f = e + 8 | 0; h = e + 4 | 0; g = e; c[f >> 2] = a; c[h >> 2] = b; c[g >> 2] = d; c[(c[f >> 2] | 0) + 84 >> 2] = c[h >> 2]; c[(c[f >> 2] | 0) + 88 >> 2] = c[g >> 2]; l = e; return } function lO(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 32 | 0; k = n + 28 | 0; o = n + 24 | 0; m = n + 20 | 0; j = n + 16 | 0; i = n + 12 | 0; h = n + 8 | 0; g = n + 4 | 0; f = n; c[k >> 2] = a; c[o >> 2] = b; c[m >> 2] = d; c[j >> 2] = e; c[i >> 2] = (c[(c[k >> 2] | 0) + 64 >> 2] | 0) * 3; c[g >> 2] = c[o >> 2]; c[f >> 2] = (c[(c[k >> 2] | 0) + 76 >> 2] | 0) + (S(c[i >> 2] | 0, c[m >> 2] | 0) | 0); while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; if (nQ(c[f >> 2] | 0, c[g >> 2] | 0, c[i >> 2] | 0) | 0) break; c[g >> 2] = (c[g >> 2] | 0) + (c[i >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + (c[i >> 2] | 0); c[m >> 2] = (c[m >> 2] | 0) + 1; c[j >> 2] = (c[j >> 2] | 0) - 1 } c[h >> 2] = S(c[j >> 2] | 0, c[i >> 2] | 0) | 0; while (1) { if ((c[j >> 2] | 0) >>> 0 <= 0) break; c[h >> 2] = (c[h >> 2] | 0) - (c[i >> 2] | 0); if (nQ((c[f >> 2] | 0) + (c[h >> 2] | 0) | 0, (c[g >> 2] | 0) + (c[h >> 2] | 0) | 0, c[i >> 2] | 0) | 0) break; c[j >> 2] = (c[j >> 2] | 0) - 1 } if (!(c[j >> 2] | 0)) { l = n; return } QQ(c[f >> 2] | 0, c[g >> 2] | 0, S(c[i >> 2] | 0, c[j >> 2] | 0) | 0) | 0; c[(c[k >> 2] | 0) + 132 >> 2] = 0; c[(c[k >> 2] | 0) + 140 >> 2] = c[(c[k >> 2] | 0) + 64 >> 2]; b = c[m >> 2] | 0; e = (c[k >> 2] | 0) + 136 | 0; if (!(c[(c[k >> 2] | 0) + 144 >> 2] | 0)) { c[e >> 2] = b; c[(c[k >> 2] | 0) + 144 >> 2] = c[j >> 2]; l = n; return } if (b >>> 0 < (c[e >> 2] | 0) >>> 0) { o = (c[k >> 2] | 0) + 144 | 0; c[o >> 2] = (c[o >> 2] | 0) + ((c[(c[k >> 2] | 0) + 136 >> 2] | 0) - (c[m >> 2] | 0)); c[(c[k >> 2] | 0) + 136 >> 2] = c[m >> 2] } if (((c[m >> 2] | 0) + (c[j >> 2] | 0) | 0) >>> 0 <= ((c[(c[k >> 2] | 0) + 136 >> 2] | 0) + (c[(c[k >> 2] | 0) + 144 >> 2] | 0) | 0) >>> 0) { l = n; return } c[(c[k >> 2] | 0) + 144 >> 2] = (c[m >> 2] | 0) + (c[j >> 2] | 0) - (c[(c[k >> 2] | 0) + 136 >> 2] | 0); l = n; return } function mO(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[(c[b >> 2] | 0) + 140 >> 2] | 0)) { l = d; return } if (!(c[(c[b >> 2] | 0) + 144 >> 2] | 0)) { l = d; return } if (c[(c[b >> 2] | 0) + 44 >> 2] | 0) Pb[c[(c[b >> 2] | 0) + 44 >> 2] & 511](c[c[b >> 2] >> 2] | 0); c[(c[b >> 2] | 0) + 132 >> 2] = 0; c[(c[b >> 2] | 0) + 136 >> 2] = 0; c[(c[b >> 2] | 0) + 140 >> 2] = 0; c[(c[b >> 2] | 0) + 144 >> 2] = 0; l = d; return } function nO(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (!(c[(c[b >> 2] | 0) + 48 >> 2] | 0)) { l = d; return } Pb[c[(c[b >> 2] | 0) + 48 >> 2] & 511](c[c[b >> 2] >> 2] | 0); l = d; return } function oO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; e = i + 4 | 0; h = i; c[g >> 2] = a; c[e >> 2] = b; c[h >> 2] = d; if (c[(c[g >> 2] | 0) + 8 >> 2] | 0) { c[f >> 2] = Nb[c[(c[g >> 2] | 0) + 8 >> 2] & 63](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0, c[h >> 2] | 0) | 0; h = c[f >> 2] | 0; l = i; return h | 0 } else { c[f >> 2] = 1; h = c[f >> 2] | 0; l = i; return h | 0 } return 0 } function pO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; do if ((c[e >> 2] | 0) == 1) { if ((c[f >> 2] | 0) == (c[(c[g >> 2] | 0) + 56 >> 2] | 0)) { a = (c[g >> 2] | 0) + 60 | 0; c[a >> 2] = c[a >> 2] ^ 1 } if (c[(c[g >> 2] | 0) + 60 >> 2] & 1 | 0) { l = h; return } do if ((c[f >> 2] | 0) != 75) { if ((c[f >> 2] | 0) == 71) { a = (c[g >> 2] | 0) + 60 | 0; c[a >> 2] = c[a >> 2] | 8; break } if ((c[f >> 2] | 0) == 16 ? (c[(c[g >> 2] | 0) + 60 >> 2] & 12 | 0) == 0 : 0) { eO(c[g >> 2] | 0, 51620, 59585) | 0; eO(c[g >> 2] | 0, 51703, 51435) | 0; oO(c[g >> 2] | 0, 51554, 51563) | 0; l = h; return } } else { a = (c[g >> 2] | 0) + 60 | 0; c[a >> 2] = c[a >> 2] | 4 } while (0); if ((c[(c[g >> 2] | 0) + 60 >> 2] & 12 | 0) == 12) { eO(c[g >> 2] | 0, 51620, 59585) | 0; a = (c[g >> 2] | 0) + 60 | 0; c[a >> 2] = c[a >> 2] & -13 } } else if ((c[e >> 2] | 0) == 2) { b = c[f >> 2] | 0; if (c[(c[g >> 2] | 0) + 60 >> 2] & 1 | 0) { if ((b | 0) == (c[(c[g >> 2] | 0) + 56 >> 2] | 0)) { l = h; return } qO(c[g >> 2] | 0, 3, c[f >> 2] | 0); g = (c[g >> 2] | 0) + 60 | 0; c[g >> 2] = c[g >> 2] & -2; l = h; return } if ((b | 0) == 75) { a = (c[g >> 2] | 0) + 60 | 0; c[a >> 2] = c[a >> 2] & -5; break } if ((c[f >> 2] | 0) == 71) { a = (c[g >> 2] | 0) + 60 | 0; c[a >> 2] = c[a >> 2] & -9; break } if ((c[f >> 2] | 0) == 16) { l = h; return } } while (0); qO(c[g >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0); l = h; return } function qO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 8 | 0; e = h + 4 | 0; f = h; c[g >> 2] = a; c[e >> 2] = b; c[f >> 2] = d; if ((c[e >> 2] | 0) == 3 ? (rO(c[g >> 2] | 0, c[f >> 2] | 0) | 0) == 0 : 0) { l = h; return } if (!(c[(c[g >> 2] | 0) + 16 >> 2] | 0)) { l = h; return } Sb[c[(c[g >> 2] | 0) + 16 >> 2] & 31](c[(c[g >> 2] | 0) + 12 >> 2] | 0, c[e >> 2] | 0, c[f >> 2] | 0); l = h; return } function rO(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; d = f + 8 | 0; e = f + 4 | 0; g = f; c[e >> 2] = a; c[g >> 2] = b; do switch (c[g >> 2] | 0) { case 27: { oO(c[e >> 2] | 0, 51437, 51435) | 0;c[d >> 2] = 0; break } case 18: { oO(c[e >> 2] | 0, 51437, 51563) | 0;c[d >> 2] = 0; break } case 19: { oO(c[e >> 2] | 0, 51437, 51451) | 0;c[d >> 2] = 0; break } case 20: { oO(c[e >> 2] | 0, 51437, 51453) | 0;c[d >> 2] = 0; break } case 21: { oO(c[e >> 2] | 0, 51437, 51455) | 0;c[d >> 2] = 0; break } case 22: { oO(c[e >> 2] | 0, 51437, 51457) | 0;c[d >> 2] = 0; break } case 23: { oO(c[e >> 2] | 0, 51437, 51459) | 0;c[d >> 2] = 0; break } case 24: { oO(c[e >> 2] | 0, 51437, 51461) | 0;c[d >> 2] = 0; break } case 25: { oO(c[e >> 2] | 0, 51437, 51463) | 0;c[d >> 2] = 0; break } case 49: { eO(c[e >> 2] | 0, 51680, 59585) | 0;c[d >> 2] = 0; break } case 50: { eO(c[e >> 2] | 0, 51610, 59585) | 0;c[d >> 2] = 0; break } case 65: { eO(c[e >> 2] | 0, 51620, 59585) | 0;eO(c[e >> 2] | 0, 51703, 51435) | 0;oO(c[e >> 2] | 0, 51565, 51563) | 0;c[d >> 2] = 0; break } case 41: { oO(c[e >> 2] | 0, 51465, 59585) | 0;c[d >> 2] = 0; break } case 32: { eO(c[e >> 2] | 0, 51620, 59585) | 0;eO(c[e >> 2] | 0, 51703, 51435) | 0;oO(c[e >> 2] | 0, 51554, 51563) | 0;c[d >> 2] = 0; break } case 35: { oO(c[e >> 2] | 0, 51482, 51563) | 0;c[d >> 2] = 0; break } case 47: { dO(c[e >> 2] | 0, 0) | 0;c[d >> 2] = 0; break } case 87: case 105: { jO(c[e >> 2] | 0, (c[(c[e >> 2] | 0) + 80 >> 2] | 0) + 1 | 0);c[d >> 2] = 0; break } case 94: case 107: { if ((c[(c[e >> 2] | 0) + 80 >> 2] | 0) >>> 0 > 1) jO(c[e >> 2] | 0, (c[(c[e >> 2] | 0) + 80 >> 2] | 0) - 1 | 0);c[d >> 2] = 0; break } case 90: case 106: { oO(c[e >> 2] | 0, 51492, 51511) | 0;c[d >> 2] = 0; break } case 92: case 108: { oO(c[e >> 2] | 0, 51492, 51514) | 0;c[d >> 2] = 0; break } default: c[d >> 2] = 1 } while (0); l = f; return c[d >> 2] | 0 } function sO(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; j = l; l = l + 32 | 0; i = j + 20 | 0; g = j + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; m = j + 4 | 0; k = j; c[i >> 2] = a; c[g >> 2] = b; c[h >> 2] = d; c[f >> 2] = e; a = S(c[(c[i >> 2] | 0) + 100 >> 2] | 0, c[g >> 2] | 0) | 0; c[g >> 2] = a + (c[(c[i >> 2] | 0) + 100 + 8 >> 2] | 0); c[m >> 2] = c[g >> 2]; c[g >> 2] = (c[g >> 2] | 0) / (c[(c[i >> 2] | 0) + 100 + 4 >> 2] | 0) | 0; a = (c[m >> 2] | 0) - (S(c[(c[i >> 2] | 0) + 100 + 4 >> 2] | 0, c[g >> 2] | 0) | 0) | 0; c[(c[i >> 2] | 0) + 100 + 8 >> 2] = a; a = S(c[(c[i >> 2] | 0) + 112 >> 2] | 0, c[h >> 2] | 0) | 0; c[h >> 2] = a + (c[(c[i >> 2] | 0) + 112 + 8 >> 2] | 0); c[k >> 2] = c[h >> 2]; c[h >> 2] = (c[h >> 2] | 0) / (c[(c[i >> 2] | 0) + 112 + 4 >> 2] | 0) | 0; a = (c[k >> 2] | 0) - (S(c[(c[i >> 2] | 0) + 112 + 4 >> 2] | 0, c[h >> 2] | 0) | 0) | 0; c[(c[i >> 2] | 0) + 112 + 8 >> 2] = a; if (!(c[(c[i >> 2] | 0) + 24 >> 2] | 0)) { l = j; return } Xb[c[(c[i >> 2] | 0) + 24 >> 2] & 3](c[(c[i >> 2] | 0) + 20 >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0, c[f >> 2] | 0); l = j; return } function tO(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 48 | 0; o = r + 36 | 0; p = r + 32 | 0; j = r + 28 | 0; h = r + 24 | 0; i = r + 20 | 0; g = r + 16 | 0; q = r + 12 | 0; k = r + 8 | 0; n = r + 4 | 0; m = r; c[o >> 2] = a; c[p >> 2] = b; c[j >> 2] = d; c[h >> 2] = e; c[i >> 2] = f; c[g >> 2] = 1; while (1) { b = S(c[g >> 2] | 0, c[p >> 2] | 0) | 0; if (b >>> 0 >= (c[(c[o >> 2] | 0) + 92 >> 2] | 0) >>> 0) break; b = S(c[g >> 2] | 0, c[j >> 2] | 0) | 0; if (b >>> 0 >= (c[(c[o >> 2] | 0) + 96 >> 2] | 0) >>> 0) break; c[g >> 2] = (c[g >> 2] | 0) + 1 } c[c[h >> 2] >> 2] = (c[(c[o >> 2] | 0) + 80 >> 2] | 0) + (c[g >> 2] | 0) - 1; c[c[i >> 2] >> 2] = (c[(c[o >> 2] | 0) + 80 >> 2] | 0) + (c[g >> 2] | 0) - 1; if ((c[(c[o >> 2] | 0) + 84 >> 2] | 0) >>> 0 <= 0) { l = r; return } if ((c[(c[o >> 2] | 0) + 88 >> 2] | 0) >>> 0 <= 0) { l = r; return } c[q >> 2] = S(c[c[h >> 2] >> 2] | 0, c[p >> 2] | 0) | 0; c[k >> 2] = S(c[c[i >> 2] >> 2] | 0, c[j >> 2] | 0) | 0; b = S(c[(c[o >> 2] | 0) + 84 >> 2] | 0, c[k >> 2] | 0) | 0; c[n >> 2] = (b >>> 0) / ((c[(c[o >> 2] | 0) + 88 >> 2] | 0) >>> 0) | 0; b = S(c[(c[o >> 2] | 0) + 88 >> 2] | 0, c[q >> 2] | 0) | 0; c[m >> 2] = (b >>> 0) / ((c[(c[o >> 2] | 0) + 84 >> 2] | 0) >>> 0) | 0; while (1) { if (((c[k >> 2] | 0) + (c[j >> 2] | 0) | 0) >>> 0 > (c[m >> 2] | 0) >>> 0) break; c[k >> 2] = (c[k >> 2] | 0) + (c[j >> 2] | 0); b = c[i >> 2] | 0; c[b >> 2] = (c[b >> 2] | 0) + 1 } while (1) { if (((c[q >> 2] | 0) + (c[p >> 2] | 0) | 0) >>> 0 > (c[n >> 2] | 0) >>> 0) break; c[q >> 2] = (c[q >> 2] | 0) + (c[p >> 2] | 0); b = c[h >> 2] | 0; c[b >> 2] = (c[b >> 2] | 0) + 1 } if ((c[q >> 2] | 0) >>> 0 >= (c[n >> 2] | 0) >>> 0) { l = r; return } b = S(c[(c[o >> 2] | 0) + 88 >> 2] | 0, (c[q >> 2] | 0) + (c[p >> 2] | 0) - (c[n >> 2] | 0) | 0) | 0; if (b >>> 0 >= (S(c[(c[o >> 2] | 0) + 84 >> 2] | 0, (c[n >> 2] | 0) - (c[q >> 2] | 0) | 0) | 0) >>> 0) { l = r; return } c[q >> 2] = (c[q >> 2] | 0) + (c[p >> 2] | 0); q = c[h >> 2] | 0; c[q >> 2] = (c[q >> 2] | 0) + 1; l = r; return } function uO(a, b, d, e, f, g) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 48 | 0; r = s + 36 | 0; j = s + 32 | 0; k = s + 28 | 0; m = s + 24 | 0; n = s + 20 | 0; p = s + 16 | 0; q = s + 12 | 0; i = s + 8 | 0; h = s + 4 | 0; o = s; c[j >> 2] = a; c[k >> 2] = b; c[m >> 2] = d; c[n >> 2] = e; c[p >> 2] = f; c[q >> 2] = g; if ((c[p >> 2] | 0) == 1 & (c[q >> 2] | 0) == 1) { c[r >> 2] = c[k >> 2]; r = c[r >> 2] | 0; l = s; return r | 0 } c[i >> 2] = S(c[p >> 2] | 0, c[m >> 2] | 0) | 0; c[h >> 2] = S(c[q >> 2] | 0, c[n >> 2] | 0) | 0; c[o >> 2] = vO(c[j >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0) | 0; if (!(c[o >> 2] | 0)) { c[r >> 2] = 0; r = c[r >> 2] | 0; l = s; return r | 0 } do if ((c[p >> 2] | 0) != 1) { g = c[o >> 2] | 0; f = c[k >> 2] | 0; i = c[m >> 2] | 0; h = c[n >> 2] | 0; if ((c[p >> 2] | 0) == 2) { xO(g, f, i, h, c[q >> 2] | 0); break } else { yO(g, f, i, h, c[p >> 2] | 0, c[q >> 2] | 0); break } } else wO(c[o >> 2] | 0, c[k >> 2] | 0, c[m >> 2] | 0, c[n >> 2] | 0, c[q >> 2] | 0); while (0); c[r >> 2] = c[o >> 2]; r = c[r >> 2] | 0; l = s; return r | 0 } function vO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; i = l; l = l + 32 | 0; f = i + 20 | 0; h = i + 16 | 0; k = i + 12 | 0; j = i + 8 | 0; e = i + 4 | 0; g = i; c[h >> 2] = a; c[k >> 2] = b; c[j >> 2] = d; c[e >> 2] = S((c[k >> 2] | 0) * 3 | 0, c[j >> 2] | 0) | 0; do if ((c[e >> 2] | 0) >>> 0 > (c[(c[h >> 2] | 0) + 124 >> 2] | 0) >>> 0) { c[g >> 2] = JQ(c[(c[h >> 2] | 0) + 128 >> 2] | 0, c[e >> 2] | 0) | 0; if (c[g >> 2] | 0) { c[(c[h >> 2] | 0) + 128 >> 2] = c[g >> 2]; c[(c[h >> 2] | 0) + 124 >> 2] = c[e >> 2]; break } c[f >> 2] = 0; k = c[f >> 2] | 0; l = i; return k | 0 } while (0); c[f >> 2] = c[(c[h >> 2] | 0) + 128 >> 2]; k = c[f >> 2] | 0; l = i; return k | 0 } function wO(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, m = 0, n = 0, o = 0, p = 0; o = l; l = l + 32 | 0; g = o + 28 | 0; m = o + 24 | 0; p = o + 20 | 0; i = o + 16 | 0; h = o + 12 | 0; j = o + 8 | 0; k = o + 4 | 0; n = o; c[g >> 2] = a; c[m >> 2] = b; c[p >> 2] = d; c[i >> 2] = e; c[h >> 2] = f; c[k >> 2] = (c[p >> 2] | 0) * 3; c[n >> 2] = 0; while (1) { if ((c[n >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) break; QQ(c[g >> 2] | 0, c[m >> 2] | 0, c[k >> 2] | 0) | 0; c[g >> 2] = (c[g >> 2] | 0) + (c[k >> 2] | 0); c[m >> 2] = (c[m >> 2] | 0) + (c[k >> 2] | 0); c[j >> 2] = 1; while (1) { if ((c[j >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; QQ(c[g >> 2] | 0, (c[g >> 2] | 0) + (0 - (c[k >> 2] | 0)) | 0, c[k >> 2] | 0) | 0; c[g >> 2] = (c[g >> 2] | 0) + (c[k >> 2] | 0); c[j >> 2] = (c[j >> 2] | 0) + 1 } c[n >> 2] = (c[n >> 2] | 0) + 1 } l = o; return } function xO(b, d, e, f, g) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; r = l; l = l + 48 | 0; h = r + 32 | 0; n = r + 28 | 0; o = r + 24 | 0; j = r + 20 | 0; i = r + 16 | 0; k = r + 12 | 0; m = r + 8 | 0; p = r + 4 | 0; q = r; c[h >> 2] = b; c[n >> 2] = d; c[o >> 2] = e; c[j >> 2] = f; c[i >> 2] = g; c[m >> 2] = (c[o >> 2] | 0) * 6; c[q >> 2] = 0; while (1) { if ((c[q >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; c[p >> 2] = 0; while (1) { if ((c[p >> 2] | 0) >>> 0 >= (c[o >> 2] | 0) >>> 0) break; a[c[h >> 2] >> 0] = a[c[n >> 2] >> 0] | 0; a[(c[h >> 2] | 0) + 1 >> 0] = a[(c[n >> 2] | 0) + 1 >> 0] | 0; a[(c[h >> 2] | 0) + 2 >> 0] = a[(c[n >> 2] | 0) + 2 >> 0] | 0; a[(c[h >> 2] | 0) + 3 >> 0] = a[c[n >> 2] >> 0] | 0; a[(c[h >> 2] | 0) + 4 >> 0] = a[(c[n >> 2] | 0) + 1 >> 0] | 0; a[(c[h >> 2] | 0) + 5 >> 0] = a[(c[n >> 2] | 0) + 2 >> 0] | 0; c[h >> 2] = (c[h >> 2] | 0) + 6; c[n >> 2] = (c[n >> 2] | 0) + 3; c[p >> 2] = (c[p >> 2] | 0) + 1 } c[k >> 2] = 1; while (1) { if ((c[k >> 2] | 0) >>> 0 >= (c[i >> 2] | 0) >>> 0) break; QQ(c[h >> 2] | 0, (c[h >> 2] | 0) + (0 - (c[m >> 2] | 0)) | 0, c[m >> 2] | 0) | 0; c[h >> 2] = (c[h >> 2] | 0) + (c[m >> 2] | 0); c[k >> 2] = (c[k >> 2] | 0) + 1 } c[q >> 2] = (c[q >> 2] | 0) + 1 } l = r; return } function yO(b, d, e, f, g, h) { b = b | 0; d = d | 0; e = e | 0; f = f | 0; g = g | 0; h = h | 0; var i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0; u = l; l = l + 48 | 0; i = u + 40 | 0; q = u + 36 | 0; r = u + 32 | 0; m = u + 28 | 0; j = u + 24 | 0; k = u + 20 | 0; n = u + 16 | 0; o = u + 12 | 0; p = u + 8 | 0; s = u + 4 | 0; t = u; c[i >> 2] = b; c[q >> 2] = d; c[r >> 2] = e; c[m >> 2] = f; c[j >> 2] = g; c[k >> 2] = h; c[p >> 2] = S((c[j >> 2] | 0) * 3 | 0, c[r >> 2] | 0) | 0; c[t >> 2] = 0; while (1) { if ((c[t >> 2] | 0) >>> 0 >= (c[m >> 2] | 0) >>> 0) break; c[s >> 2] = 0; while (1) { if ((c[s >> 2] | 0) >>> 0 >= (c[r >> 2] | 0) >>> 0) break; c[n >> 2] = 0; while (1) { b = c[q >> 2] | 0; if ((c[n >> 2] | 0) >>> 0 >= (c[j >> 2] | 0) >>> 0) break; a[c[i >> 2] >> 0] = a[b >> 0] | 0; a[(c[i >> 2] | 0) + 1 >> 0] = a[(c[q >> 2] | 0) + 1 >> 0] | 0; a[(c[i >> 2] | 0) + 2 >> 0] = a[(c[q >> 2] | 0) + 2 >> 0] | 0; c[i >> 2] = (c[i >> 2] | 0) + 3; c[n >> 2] = (c[n >> 2] | 0) + 1 } c[q >> 2] = b + 3; c[s >> 2] = (c[s >> 2] | 0) + 1 } c[o >> 2] = 1; while (1) { if ((c[o >> 2] | 0) >>> 0 >= (c[k >> 2] | 0) >>> 0) break; QQ(c[i >> 2] | 0, (c[i >> 2] | 0) + (0 - (c[p >> 2] | 0)) | 0, c[p >> 2] | 0) | 0; c[i >> 2] = (c[i >> 2] | 0) + (c[p >> 2] | 0); c[o >> 2] = (c[o >> 2] | 0) + 1 } c[t >> 2] = (c[t >> 2] | 0) + 1 } l = u; return } function zO(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0; f = l; l = l + 16 | 0; b = f + 8 | 0; d = f + 4 | 0; e = f; c[d >> 2] = a; c[e >> 2] = HQ(208) | 0; if (!(c[e >> 2] | 0)) { c[b >> 2] = 0; e = c[b >> 2] | 0; l = f; return e | 0 } else { AO(c[e >> 2] | 0, c[d >> 2] | 0); c[b >> 2] = c[e >> 2]; e = c[b >> 2] | 0; l = f; return e | 0 } return 0 } function AO(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; e = l; l = l + 16 | 0; g = e + 12 | 0; f = e + 8 | 0; i = e + 4 | 0; h = e; c[g >> 2] = b; c[f >> 2] = d; _N(c[g >> 2] | 0, c[g >> 2] | 0); c[(c[g >> 2] | 0) + 28 >> 2] = 257; c[(c[g >> 2] | 0) + 32 >> 2] = 53; c[(c[g >> 2] | 0) + 36 >> 2] = 10; c[(c[g >> 2] | 0) + 40 >> 2] = 54; c[(c[g >> 2] | 0) + 44 >> 2] = 258; c[(c[g >> 2] | 0) + 48 >> 2] = 259; c[(c[g >> 2] | 0) + 152 >> 2] = 0; c[(c[g >> 2] | 0) + 156 >> 2] = 0; c[(c[g >> 2] | 0) + 160 >> 2] = 0; c[(c[g >> 2] | 0) + 164 >> 2] = 0; jM(c[f >> 2] | 0, 51517, i, 0) | 0; a[(c[g >> 2] | 0) + 168 >> 0] = (c[i >> 2] | 0) != 0; hM(c[f >> 2] | 0, 51528, (c[g >> 2] | 0) + 180 | 0, 0) | 0; c[(c[g >> 2] | 0) + 180 + 4 >> 2] = c[(c[g >> 2] | 0) + 180 >> 2]; c[(c[g >> 2] | 0) + 180 + 8 >> 2] = c[(c[g >> 2] | 0) + 180 >> 2]; c[(c[g >> 2] | 0) + 180 + 12 >> 2] = c[(c[g >> 2] | 0) + 180 >> 2]; a[(c[g >> 2] | 0) + 196 >> 0] = 0; c[(c[g >> 2] | 0) + 172 >> 2] = 0; c[(c[g >> 2] | 0) + 176 >> 2] = 0; jM(c[f >> 2] | 0, 51535, h, 0) | 0; a[(c[g >> 2] | 0) + 197 >> 0] = (c[h >> 2] | 0) != 0; HO(c[g >> 2] | 0); IO(c[g >> 2] | 0, c[f >> 2] | 0); l = e; return } function BO(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; IQ(c[d >> 2] | 0); l = b; return } function CO(a, b, e) { a = a | 0; b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; p = l; l = l + 48 | 0; m = p + 32 | 0; n = p + 28 | 0; o = p + 24 | 0; j = p + 20 | 0; h = p + 16 | 0; i = p + 12 | 0; f = p + 8 | 0; g = p + 4 | 0; k = p; c[n >> 2] = a; c[o >> 2] = b; c[j >> 2] = e; if ((c[o >> 2] | 0) == 0 | (c[j >> 2] | 0) == 0) { c[o >> 2] = 640; c[j >> 2] = 480 } tO(c[n >> 2] | 0, c[o >> 2] | 0, c[j >> 2] | 0, h, i); c[f >> 2] = (c[(c[n >> 2] | 0) + 180 >> 2] | 0) + (c[(c[n >> 2] | 0) + 180 + 8 >> 2] | 0); c[g >> 2] = (c[(c[n >> 2] | 0) + 180 + 4 >> 2] | 0) + (c[(c[n >> 2] | 0) + 180 + 12 >> 2] | 0); if ((Gb(32) | 0) == 0 ? (Ua(32) | 0) < 0 : 0) { c[m >> 2] = 1; o = c[m >> 2] | 0; l = p; return o | 0 } c[k >> 2] = Ca() | 0; c[(c[n >> 2] | 0) + 172 >> 2] = d[(c[(c[k >> 2] | 0) + 8 >> 2] | 0) + 9 >> 0]; c[(c[n >> 2] | 0) + 176 >> 2] = 0; Ra(51719, 51719); Ib(500, 30) | 0; b = S(c[h >> 2] | 0, c[o >> 2] | 0) | 0; o = S(c[i >> 2] | 0, c[j >> 2] | 0) | 0; RO(c[n >> 2] | 0, b + (c[f >> 2] | 0) | 0, o + (c[g >> 2] | 0) | 0, 0) | 0; c[m >> 2] = 0; o = c[m >> 2] | 0; l = p; return o | 0 } function DO(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; OO(c[b >> 2] | 0, 0); if (!(c[(c[b >> 2] | 0) + 152 >> 2] | 0)) { l = d; return 0 } Ma(c[(c[b >> 2] | 0) + 152 >> 2] | 0); c[(c[b >> 2] | 0) + 152 >> 2] = 0; l = d; return 0 } function EO(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; h = k + 12 | 0; f = k + 8 | 0; j = k + 4 | 0; i = k; c[h >> 2] = b; c[f >> 2] = d; c[j >> 2] = e; c[j >> 2] = (c[j >> 2] | 0) == 0 ? 59585 : e; if (!(fP(c[f >> 2] | 0, 51610) | 0)) { OO(c[h >> 2] | 0, 1); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } if (!(fP(c[f >> 2] | 0, 51620) | 0)) { OO(c[h >> 2] | 0, 0); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } if (!(fP(c[f >> 2] | 0, 51633) | 0)) { Ra(c[j >> 2] | 0, c[j >> 2] | 0); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } if (!(fP(c[f >> 2] | 0, 51644) | 0)) { j = qQ(c[j >> 2] | 0, 0, 0) | 0; c[(c[h >> 2] | 0) + 180 >> 2] = j; c[(c[h >> 2] | 0) + 180 + 8 >> 2] = c[(c[h >> 2] | 0) + 180 >> 2]; FO(c[h >> 2] | 0); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } if (!(fP(c[f >> 2] | 0, 51662) | 0)) { j = qQ(c[j >> 2] | 0, 0, 0) | 0; c[(c[h >> 2] | 0) + 180 + 4 >> 2] = j; c[(c[h >> 2] | 0) + 180 + 12 >> 2] = c[(c[h >> 2] | 0) + 180 >> 2]; FO(c[h >> 2] | 0); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } if (!(fP(c[f >> 2] | 0, 51680) | 0)) { QO(c[h >> 2] | 0, ((a[(c[h >> 2] | 0) + 168 >> 0] | 0) != 0 ^ 1) & 1); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } if (!(fP(c[f >> 2] | 0, 51703) | 0)) { c[i >> 2] = GQ(c[j >> 2] | 0, 0, 0) | 0; QO(c[h >> 2] | 0, (c[i >> 2] | 0) != 0 & 1); c[g >> 2] = 0; j = c[g >> 2] | 0; l = k; return j | 0 } else { c[g >> 2] = -1; j = c[g >> 2] | 0; l = k; return j | 0 } return 0 } function FO(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0; s = l; l = l + 96 | 0; m = s + 84 | 0; k = s + 80 | 0; j = s + 76 | 0; i = s + 72 | 0; b = s + 68 | 0; n = s + 64 | 0; e = s + 48 | 0; d = s + 44 | 0; f = s + 40 | 0; u = s + 36 | 0; q = s + 32 | 0; r = s + 28 | 0; p = s + 24 | 0; o = s + 20 | 0; g = s + 16 | 0; h = s + 12 | 0; v = s + 8 | 0; t = s + 4 | 0; c[m >> 2] = a; c[n >> 2] = c[m >> 2]; tO(c[m >> 2] | 0, c[(c[n >> 2] | 0) + 64 >> 2] | 0, c[(c[n >> 2] | 0) + 68 >> 2] | 0, g, h); c[f >> 2] = S(c[g >> 2] | 0, c[(c[n >> 2] | 0) + 64 >> 2] | 0) | 0; c[u >> 2] = S(c[h >> 2] | 0, c[(c[n >> 2] | 0) + 68 >> 2] | 0) | 0; c[v >> 2] = (c[(c[m >> 2] | 0) + 180 >> 2] | 0) + (c[(c[m >> 2] | 0) + 180 + 8 >> 2] | 0); c[t >> 2] = (c[(c[m >> 2] | 0) + 180 + 4 >> 2] | 0) + (c[(c[m >> 2] | 0) + 180 + 12 >> 2] | 0); if (RO(c[m >> 2] | 0, (c[f >> 2] | 0) + (c[v >> 2] | 0) | 0, (c[u >> 2] | 0) + (c[t >> 2] | 0) | 0, 0) | 0) { l = s; return } c[j >> 2] = 255; c[i >> 2] = 65280; c[b >> 2] = 16711680; c[d >> 2] = uO(c[n >> 2] | 0, c[(c[n >> 2] | 0) + 76 >> 2] | 0, c[(c[n >> 2] | 0) + 64 >> 2] | 0, c[(c[n >> 2] | 0) + 68 >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0) | 0; c[q >> 2] = S(c[g >> 2] | 0, c[(c[n >> 2] | 0) + 132 >> 2] | 0) | 0; c[r >> 2] = S(c[h >> 2] | 0, c[(c[n >> 2] | 0) + 136 >> 2] | 0) | 0; c[p >> 2] = S(c[g >> 2] | 0, c[(c[n >> 2] | 0) + 140 >> 2] | 0) | 0; c[o >> 2] = S(c[h >> 2] | 0, c[(c[n >> 2] | 0) + 144 >> 2] | 0) | 0; v = S(c[f >> 2] | 0, c[r >> 2] | 0) | 0; c[k >> 2] = ra((c[d >> 2] | 0) + ((v + (c[q >> 2] | 0) | 0) * 3 | 0) | 0, c[p >> 2] | 0, c[o >> 2] | 0, 24, (c[f >> 2] | 0) * 3 | 0, c[j >> 2] | 0, c[i >> 2] | 0, c[b >> 2] | 0, 0) | 0; c[e >> 2] = (c[q >> 2] | 0) + (c[(c[m >> 2] | 0) + 180 >> 2] | 0); c[e + 4 >> 2] = (c[r >> 2] | 0) + (c[(c[m >> 2] | 0) + 180 + 4 >> 2] | 0); if (!(c[k >> 2] | 0)) { l = s; return } if (lb(c[k >> 2] | 0, 0, c[(c[m >> 2] | 0) + 152 >> 2] | 0, e | 0) | 0) kQ(c[7422] | 0, 51593, s) | 0; Ma(c[k >> 2] | 0); Bb(c[(c[m >> 2] | 0) + 152 >> 2] | 0) | 0; l = s; return } function GO(a) { a = a | 0; var b = 0, f = 0, g = 0, h = 0; h = l; l = l + 64 | 0; g = h + 52 | 0; f = h + 48 | 0; b = h; c[g >> 2] = a; c[f >> 2] = 0; while (1) { a = (Ja(b | 0) | 0) != 0; if (!(a ? (c[f >> 2] | 0) >>> 0 < 8 : 0)) break; switch (c[b >> 2] | 0) { case 768: { KO(c[g >> 2] | 0, c[b + 12 + 4 >> 2] | 0, e[b + 12 + 8 >> 1] | 0); break } case 769: { LO(c[g >> 2] | 0, c[b + 12 + 4 >> 2] | 0, e[b + 12 + 8 >> 1] | 0); break } case 1025: { MO(c[g >> 2] | 0, 1, d[b + 16 >> 0] | 0); break } case 1026: { MO(c[g >> 2] | 0, 0, d[b + 16 >> 0] | 0); break } case 1024: { NO(c[g >> 2] | 0, c[b + 28 >> 2] | 0, c[b + 32 >> 2] | 0); break } case 256: { OO(c[g >> 2] | 0, 0);oO(c[g >> 2] | 0, 51554, 51563) | 0; break } default: {} } c[f >> 2] = (c[f >> 2] | 0) + 1 } l = h; return } function HO(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; f = l; l = l + 16 | 0; e = f + 8 | 0; b = f + 4 | 0; d = f; c[e >> 2] = a; c[(c[e >> 2] | 0) + 200 >> 2] = 0; c[(c[e >> 2] | 0) + 204 >> 2] = 0; c[d >> 2] = 0; while (1) { a = c[d >> 2] | 0; if (!(c[28792 + (c[d >> 2] << 3) + 4 >> 2] | 0)) break; c[d >> 2] = a + 1 } a = HQ(a << 3) | 0; c[(c[e >> 2] | 0) + 204 >> 2] = a; if (!(c[(c[e >> 2] | 0) + 204 >> 2] | 0)) { l = f; return } c[b >> 2] = 0; while (1) { if ((c[b >> 2] | 0) >>> 0 >= (c[d >> 2] | 0) >>> 0) break; a = (c[(c[e >> 2] | 0) + 204 >> 2] | 0) + (c[b >> 2] << 3) | 0; g = 28792 + (c[b >> 2] << 3) | 0; c[a >> 2] = c[g >> 2]; c[a + 4 >> 2] = c[g + 4 >> 2]; c[b >> 2] = (c[b >> 2] | 0) + 1 } c[(c[e >> 2] | 0) + 200 >> 2] = c[d >> 2]; l = f; return } function IO(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; f = j + 20 | 0; e = j + 16 | 0; h = j + 12 | 0; i = j + 8 | 0; g = j + 4 | 0; d = j; c[f >> 2] = a; c[e >> 2] = b; c[i >> 2] = 0; while (1) { c[i >> 2] = XL(c[e >> 2] | 0, c[i >> 2] | 0, 51547) | 0; if (!(c[i >> 2] | 0)) break; c[h >> 2] = CM(c[i >> 2] | 0) | 0; if (!(c[h >> 2] | 0)) continue; if (QN(c[h >> 2] | 0, g, d) | 0) continue; JO(c[f >> 2] | 0, c[g >> 2] | 0, c[d >> 2] | 0) } l = j; return } function JO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; h = k + 12 | 0; e = k + 8 | 0; f = k + 4 | 0; i = k; c[g >> 2] = a; c[h >> 2] = b; c[e >> 2] = d; c[f >> 2] = 0; while (1) { d = c[(c[g >> 2] | 0) + 204 >> 2] | 0; if ((c[f >> 2] | 0) >>> 0 >= (c[(c[g >> 2] | 0) + 200 >> 2] | 0) >>> 0) break; if ((c[d + (c[f >> 2] << 3) >> 2] | 0) == (c[h >> 2] | 0)) { j = 4; break } c[f >> 2] = (c[f >> 2] | 0) + 1 } if ((j | 0) == 4) { c[(c[(c[g >> 2] | 0) + 204 >> 2] | 0) + (c[f >> 2] << 3) + 4 >> 2] = c[e >> 2]; l = k; return } c[i >> 2] = JQ(d, (c[(c[g >> 2] | 0) + 200 >> 2] | 0) + 1 << 3) | 0; if (!(c[i >> 2] | 0)) { l = k; return } c[(c[i >> 2] | 0) + (c[(c[g >> 2] | 0) + 200 >> 2] << 3) >> 2] = c[h >> 2]; c[(c[i >> 2] | 0) + (c[(c[g >> 2] | 0) + 200 >> 2] << 3) + 4 >> 2] = c[e >> 2]; c[(c[g >> 2] | 0) + 204 >> 2] = c[i >> 2]; j = (c[g >> 2] | 0) + 200 | 0; c[j >> 2] = (c[j >> 2] | 0) + 1; l = k; return } function KO(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; i = j; h = j + 16 | 0; f = j + 12 | 0; k = j + 8 | 0; g = j + 4 | 0; c[h >> 2] = b; c[f >> 2] = d; c[k >> 2] = e; if ((c[f >> 2] | 0) == 96 ? c[k >> 2] & 64 | 0 : 0) { OO(c[h >> 2] | 0, 0); QO(c[h >> 2] | 0, 0); oO(c[h >> 2] | 0, 51565, 51563) | 0; l = j; return } d = c[h >> 2] | 0; if ((c[f >> 2] | 0) == 1094) { dO(d, 0) | 0; l = j; return } c[g >> 2] = PO(d, c[f >> 2] | 0) | 0; if ((c[g >> 2] | 0) == 0 ? 1 : (a[(c[h >> 2] | 0) + 197 >> 0] | 0) != 0) { k = c[7422] | 0; c[i >> 2] = c[f >> 2]; kQ(k, 51574, i) | 0 } if (!(c[g >> 2] | 0)) { l = j; return } pO(c[h >> 2] | 0, 1, c[g >> 2] | 0); if ((c[f >> 2] | 0) != 1107) { l = j; return } pO(c[h >> 2] | 0, 2, c[g >> 2] | 0); l = j; return } function LO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; g = h + 12 | 0; e = h + 8 | 0; f = h; c[g >> 2] = a; c[e >> 2] = b; c[h + 4 >> 2] = d; c[f >> 2] = PO(c[g >> 2] | 0, c[e >> 2] | 0) | 0; if (!((c[e >> 2] | 0) != 1094 & (c[f >> 2] | 0) != 0)) { l = h; return } if ((c[e >> 2] | 0) == 1107) pO(c[g >> 2] | 0, 1, c[f >> 2] | 0); pO(c[g >> 2] | 0, 2, c[f >> 2] | 0); l = h; return } function MO(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; h = i + 8 | 0; g = i + 4 | 0; f = i; c[h >> 2] = b; c[g >> 2] = d; c[f >> 2] = e; if (!(c[f >> 2] | 0)) { l = i; return } if ((c[f >> 2] | 0) != 2) { if ((c[f >> 2] | 0) == 3) c[f >> 2] = 2 } else c[f >> 2] = 3; c[f >> 2] = (c[f >> 2] | 0) - 1; e = 1 << c[f >> 2]; if (c[g >> 2] | 0) { b = (c[h >> 2] | 0) + 164 | 0; c[b >> 2] = c[b >> 2] | e } else { b = (c[h >> 2] | 0) + 164 | 0; c[b >> 2] = c[b >> 2] & ~e } if (!(a[(c[h >> 2] | 0) + 196 >> 0] | 0)) { if (c[g >> 2] | 0) { l = i; return } OO(c[h >> 2] | 0, 1); l = i; return } else { if (!(c[(c[h >> 2] | 0) + 24 >> 2] | 0)) { l = i; return } sO(c[h >> 2] | 0, 0, 0, c[(c[h >> 2] | 0) + 164 >> 2] | 0); l = i; return } } function NO(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; i = k + 16 | 0; g = k + 12 | 0; h = k + 8 | 0; f = k + 4 | 0; j = k; c[i >> 2] = b; c[g >> 2] = d; c[h >> 2] = e; if (!(a[(c[i >> 2] | 0) + 196 >> 0] | 0)) { l = k; return } if (!(c[(c[i >> 2] | 0) + 24 >> 2] | 0)) { l = k; return } c[j >> 2] = 0; c[f >> 2] = (ab(0, 0) | 0) & 255; if (c[f >> 2] & 1 | 0) c[j >> 2] = c[j >> 2] | 1; if (c[f >> 2] & 4 | 0) c[j >> 2] = c[j >> 2] | 2; sO(c[i >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0, c[j >> 2] | 0); l = k; return } function OO(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; g = e + 4 | 0; f = e; c[g >> 2] = b; c[f >> 2] = d; d = (c[g >> 2] | 0) + 196 | 0; if (c[f >> 2] | 0) { a[d >> 0] = 1; na(0) | 0; fb(1) | 0; l = e; return } else { a[d >> 0] = 0; na(1) | 0; fb(0) | 0; l = e; return } } function PO(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h + 12 | 0; g = h + 8 | 0; d = h + 4 | 0; e = h; c[g >> 2] = a; c[d >> 2] = b; c[e >> 2] = 0; while (1) { if ((c[e >> 2] | 0) >>> 0 >= (c[(c[g >> 2] | 0) + 200 >> 2] | 0) >>> 0) { b = 6; break } if ((c[(c[(c[g >> 2] | 0) + 204 >> 2] | 0) + (c[e >> 2] << 3) >> 2] | 0) == (c[d >> 2] | 0)) { b = 4; break } c[e >> 2] = (c[e >> 2] | 0) + 1 } if ((b | 0) == 4) { c[f >> 2] = c[(c[(c[g >> 2] | 0) + 204 >> 2] | 0) + (c[e >> 2] << 3) + 4 >> 2]; g = c[f >> 2] | 0; l = h; return g | 0 } else if ((b | 0) == 6) { c[f >> 2] = 0; g = c[f >> 2] | 0; l = h; return g | 0 } return 0 } function QO(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; e = g + 4 | 0; f = g; c[e >> 2] = b; c[f >> 2] = d; if (((c[f >> 2] | 0) != 0 | 0) == ((a[(c[e >> 2] | 0) + 168 >> 0] | 0) != 0 | 0)) { l = g; return } if (c[(c[e >> 2] | 0) + 152 >> 2] | 0) Db(c[(c[e >> 2] | 0) + 152 >> 2] | 0) | 0; a[(c[e >> 2] | 0) + 168 >> 0] = (c[f >> 2] | 0) != 0; l = g; return } function RO(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, m = 0, n = 0, o = 0; o = l; l = l + 32 | 0; j = o + 20 | 0; k = o + 16 | 0; m = o + 12 | 0; i = o + 8 | 0; g = o + 4 | 0; h = o; c[k >> 2] = b; c[m >> 2] = d; c[i >> 2] = e; c[g >> 2] = f; if (c[(c[k >> 2] | 0) + 152 >> 2] | 0) { if (((c[g >> 2] | 0) == 0 ? (c[(c[k >> 2] | 0) + 156 >> 2] | 0) == (c[m >> 2] | 0) : 0) ? (c[(c[k >> 2] | 0) + 160 >> 2] | 0) == (c[i >> 2] | 0) : 0) { c[j >> 2] = 0; n = c[j >> 2] | 0; l = o; return n | 0 } Ma(c[(c[k >> 2] | 0) + 152 >> 2] | 0) } c[(c[k >> 2] | 0) + 152 >> 2] = 0; c[h >> 2] = 134217729; if (a[(c[k >> 2] | 0) + 168 >> 0] | 0) c[h >> 2] = c[h >> 2] | 8388608; if ((c[(c[k >> 2] | 0) + 172 >> 2] | 0) != 2) { if ((c[(c[k >> 2] | 0) + 172 >> 2] | 0) == 4) { f = ma(c[m >> 2] | 0, c[i >> 2] | 0, 32, c[h >> 2] | 0) | 0; c[(c[k >> 2] | 0) + 152 >> 2] = f; f = 4; g = c[k >> 2] | 0; n = 13 } } else { f = ma(c[m >> 2] | 0, c[i >> 2] | 0, 16, c[h >> 2] | 0) | 0; c[(c[k >> 2] | 0) + 152 >> 2] = f; f = 2; g = c[k >> 2] | 0; n = 13 } if ((n | 0) == 13) c[g + 176 >> 2] = f; if (!(c[(c[k >> 2] | 0) + 152 >> 2] | 0)) { n = ma(c[m >> 2] | 0, c[i >> 2] | 0, 16, c[h >> 2] | 0) | 0; c[(c[k >> 2] | 0) + 152 >> 2] = n; c[(c[k >> 2] | 0) + 176 >> 2] = 2 } if (!(c[(c[k >> 2] | 0) + 152 >> 2] | 0)) { c[j >> 2] = 1; n = c[j >> 2] | 0; l = o; return n | 0 } else { c[(c[k >> 2] | 0) + 156 >> 2] = c[m >> 2]; c[(c[k >> 2] | 0) + 160 >> 2] = c[i >> 2]; c[j >> 2] = 0; n = c[j >> 2] | 0; l = o; return n | 0 } return 0 } function SO() { return 59012 } function TO(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = _O(c[a + 60 >> 2] | 0) | 0; a = WO(ub(6, d | 0) | 0) | 0; l = b; return a | 0 } function UO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0, p = 0; n = l; l = l + 48 | 0; i = n + 16 | 0; f = n; e = n + 32 | 0; j = a + 28 | 0; g = c[j >> 2] | 0; c[e >> 2] = g; k = a + 20 | 0; g = (c[k >> 2] | 0) - g | 0; c[e + 4 >> 2] = g; c[e + 8 >> 2] = b; c[e + 12 >> 2] = d; g = g + d | 0; h = a + 60 | 0; c[f >> 2] = c[h >> 2]; c[f + 4 >> 2] = e; c[f + 8 >> 2] = 2; b = WO(Kb(146, f | 0) | 0) | 0; a: do if ((g | 0) != (b | 0)) { f = 2; while (1) { if ((b | 0) < 0) break; g = g - b | 0; p = c[e + 4 >> 2] | 0; o = b >>> 0 > p >>> 0; e = o ? e + 8 | 0 : e; f = (o << 31 >> 31) + f | 0; p = b - (o ? p : 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + p; o = e + 4 | 0; c[o >> 2] = (c[o >> 2] | 0) - p; c[i >> 2] = c[h >> 2]; c[i + 4 >> 2] = e; c[i + 8 >> 2] = f; b = WO(Kb(146, i | 0) | 0) | 0; if ((g | 0) == (b | 0)) { m = 3; break a } } c[a + 16 >> 2] = 0; c[j >> 2] = 0; c[k >> 2] = 0; c[a >> 2] = c[a >> 2] | 32; if ((f | 0) == 2) d = 0; else d = d - (c[e + 4 >> 2] | 0) | 0 } else m = 3; while (0); if ((m | 0) == 3) { p = c[a + 44 >> 2] | 0; c[a + 16 >> 2] = p + (c[a + 48 >> 2] | 0); c[j >> 2] = p; c[k >> 2] = p } l = n; return d | 0 } function VO(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = l; l = l + 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 ((WO(Eb(140, g | 0) | 0) | 0) < 0) { c[e >> 2] = -1; a = -1 } else a = c[e >> 2] | 0; l = f; return a | 0 } function WO(a) { a = a | 0; if (a >>> 0 > 4294963200) { c[(XO() | 0) >> 2] = 0 - a; a = -1 } return a | 0 } function XO() { return (YO() | 0) + 64 | 0 } function YO() { return ZO() | 0 } function ZO() { return 29816 } function _O(a) { a = a | 0; return a | 0 } function $O(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, m = 0; k = l; l = l + 32 | 0; f = k; i = k + 16 | 0; c[i >> 2] = d; g = i + 4 | 0; j = b + 48 | 0; m = c[j >> 2] | 0; c[g >> 2] = e - ((m | 0) != 0 & 1); h = b + 44 | 0; c[i + 8 >> 2] = c[h >> 2]; c[i + 12 >> 2] = m; c[f >> 2] = c[b + 60 >> 2]; c[f + 4 >> 2] = i; c[f + 8 >> 2] = 2; f = WO(Jb(145, f | 0) | 0) | 0; if ((f | 0) >= 1) { i = c[g >> 2] | 0; if (f >>> 0 > i >>> 0) { g = c[h >> 2] | 0; h = b + 4 | 0; c[h >> 2] = g; c[b + 8 >> 2] = g + (f - i); if (!(c[j >> 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; l = k; return f | 0 } function aP(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; g = l; l = l + 32 | 0; f = g; c[b + 36 >> 2] = 23; if ((c[b >> 2] & 64 | 0) == 0 ? (c[f >> 2] = c[b + 60 >> 2], c[f + 4 >> 2] = 21523, c[f + 8 >> 2] = g + 16, qa(54, f | 0) | 0) : 0) a[b + 75 >> 0] = -1; f = UO(b, d, e) | 0; l = g; return f | 0 } function bP(b, c) { b = b | 0; c = c | 0; b = eP(b, c) | 0; return ((a[b >> 0] | 0) == (c & 255) << 24 >> 24 ? b : 0) | 0 } function cP(b) { b = b | 0; var d = 0, e = 0, f = 0; f = b; a: do if (!(f & 3)) { d = b; e = 4 } else { d = f; while (1) { if (!(a[b >> 0] | 0)) break a; b = b + 1 | 0; d = b; if (!(d & 3)) { d = b; e = 4; break } } } while (0); if ((e | 0) == 4) { while (1) { b = c[d >> 2] | 0; if (!((b & -2139062144 ^ -2139062144) & b + -16843009)) d = d + 4 | 0; else break } if ((b & 255) << 24 >> 24) do d = d + 1 | 0; while ((a[d >> 0] | 0) != 0) } return d - f | 0 } function dP(b, c, d) { b = b | 0; c = c | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; if (!d) e = 0; else { h = a[b >> 0] | 0; f = h & 255; g = a[c >> 0] | 0; e = g & 255; a: do if (h << 24 >> 24) do { d = d + -1 | 0; if (!(h << 24 >> 24 == g << 24 >> 24 & ((d | 0) != 0 & g << 24 >> 24 != 0))) break a; b = b + 1 | 0; c = c + 1 | 0; h = a[b >> 0] | 0; f = h & 255; g = a[c >> 0] | 0; e = g & 255 } while (h << 24 >> 24 != 0); while (0); e = f - e | 0 } return e | 0 } function eP(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; f = d & 255; a: do if (!f) b = b + (cP(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 = S(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 fP(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)) 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)); return (d & 255) - (e & 255) | 0 } function gP(a) { a = a | 0; var b = 0, c = 0; c = (cP(a) | 0) + 1 | 0; b = HQ(c) | 0; if (!b) b = 0; else QQ(b | 0, a | 0, c | 0) | 0; return b | 0 } function hP(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 48 | 0; g = h + 16 | 0; f = h; e = h + 32 | 0; if (!(b & 4194368)) e = 0; else { c[e >> 2] = d; i = (c[e >> 2] | 0) + (4 - 1) & ~(4 - 1); d = c[i >> 2] | 0; c[e >> 2] = i + 4; e = d } c[f >> 2] = a; c[f + 4 >> 2] = b | 32768; c[f + 8 >> 2] = e; e = vb(5, f | 0) | 0; if (!((b & 524288 | 0) == 0 | (e | 0) < 0)) { c[g >> 2] = e; c[g + 4 >> 2] = 2; c[g + 8 >> 2] = 1; ka(221, g | 0) | 0 } i = WO(e) | 0; l = h; return i | 0 } function iP(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = _O(a) | 0; a = ub(6, d | 0) | 0; a = WO((a | 0) == -4 ? 0 : a) | 0; l = b; return a | 0 } function jP(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, m = 0, n = 0; n = l; l = l + 128 | 0; g = n + 124 | 0; m = n; h = m; i = 30320; j = h + 124 | 0; do { c[h >> 2] = c[i >> 2]; h = h + 4 | 0; i = i + 4 | 0 } while ((h | 0) < (j | 0)); if ((d + -1 | 0) >>> 0 > 2147483646) if (!d) { d = 1; k = 4 } else { c[(XO() | 0) >> 2] = 75; g = -1 } else { g = b; k = 4 } if ((k | 0) == 4) { k = -2 - g | 0; k = d >>> 0 > k >>> 0 ? k : d; c[m + 48 >> 2] = k; h = m + 20 | 0; c[h >> 2] = g; c[m + 44 >> 2] = g; g = g + k | 0; d = m + 16 | 0; c[d >> 2] = g; c[m + 28 >> 2] = g; g = kP(m, e, f) | 0; if (k) { e = c[h >> 2] | 0; a[e + (((e | 0) == (c[d >> 2] | 0)) << 31 >> 31) >> 0] = 0 } } l = n; return g | 0 } function kP(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, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0; s = l; l = l + 224 | 0; n = s + 120 | 0; r = s + 80 | 0; q = s; p = s + 136 | 0; f = r; 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 ((lP(0, d, n, q, r) | 0) < 0) e = -1; else { if ((c[b + 76 >> 2] | 0) > -1) o = mP(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; h = b + 48 | 0; if (!(c[h >> 2] | 0)) { g = b + 44 | 0; e = c[g >> 2] | 0; c[g >> 2] = p; i = b + 28 | 0; c[i >> 2] = p; k = b + 20 | 0; c[k >> 2] = p; c[h >> 2] = 80; j = b + 16 | 0; c[j >> 2] = p + 80; f = lP(b, d, n, q, r) | 0; if (e) { Nb[c[b + 36 >> 2] & 63](b, 0, 0) | 0; f = (c[k >> 2] | 0) == 0 ? -1 : f; c[g >> 2] = e; c[h >> 2] = 0; c[j >> 2] = 0; c[i >> 2] = 0; c[k >> 2] = 0 } } else f = lP(b, d, n, q, r) | 0; e = c[b >> 2] | 0; c[b >> 2] = e | m; if (o | 0) nP(b); e = (e & 32 | 0) == 0 ? f : -1 } l = s; return e | 0 } function lP(d, e, f, g, i) { d = d | 0; e = e | 0; f = f | 0; g = g | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, E = 0, F = 0, G = 0, H = 0; H = l; l = l + 64 | 0; C = H + 16 | 0; z = H; y = H + 24 | 0; G = H + 8 | 0; B = H + 20 | 0; c[C >> 2] = e; F = (d | 0) != 0; x = y + 40 | 0; E = x; y = y + 39 | 0; A = G + 4 | 0; q = e; e = 0; j = 0; n = 0; a: while (1) { do if ((e | 0) > -1) if ((j | 0) > (2147483647 - e | 0)) { c[(XO() | 0) >> 2] = 75; e = -1; break } else { e = j + e | 0; break } while (0); j = a[q >> 0] | 0; if (!(j << 24 >> 24)) { w = 87; break } else k = q; b: while (1) { switch (j << 24 >> 24) { case 37: { j = k;w = 9; break b } case 0: { j = k; break b } default: {} } v = k + 1 | 0; c[C >> 2] = v; j = a[v >> 0] | 0; k = v } c: do if ((w | 0) == 9) while (1) { w = 0; if ((a[j + 1 >> 0] | 0) != 37) break c; k = k + 1 | 0; j = j + 2 | 0; c[C >> 2] = j; if ((a[j >> 0] | 0) == 37) w = 9; else break } while (0); k = k - q | 0; if (F) oP(d, q, k); if (k | 0) { q = j; j = k; continue } m = j + 1 | 0; k = (a[m >> 0] | 0) + -48 | 0; if (k >>> 0 < 10) { v = (a[j + 2 >> 0] | 0) == 36; s = v ? k : -1; p = v ? 1 : n; m = v ? j + 3 | 0 : m } else { s = -1; p = n } c[C >> 2] = m; j = a[m >> 0] | 0; k = (j << 24 >> 24) + -32 | 0; d: do if (k >>> 0 < 32) { n = 0; while (1) { k = 1 << k; if (!(k & 75913)) { o = n; break d } n = k | n; m = m + 1 | 0; c[C >> 2] = m; j = a[m >> 0] | 0; k = (j << 24 >> 24) + -32 | 0; if (k >>> 0 >= 32) { o = n; break } } } else o = 0; while (0); if (j << 24 >> 24 == 42) { k = m + 1 | 0; j = (a[k >> 0] | 0) + -48 | 0; if (j >>> 0 < 10 ? (a[m + 2 >> 0] | 0) == 36 : 0) { c[i + (j << 2) >> 2] = 10; n = 1; j = m + 3 | 0; k = c[g + ((a[k >> 0] | 0) + -48 << 3) >> 2] | 0 } else { if (p | 0) { e = -1; break } if (F) { n = (c[f >> 2] | 0) + (4 - 1) & ~(4 - 1); v = c[n >> 2] | 0; c[f >> 2] = n + 4; n = 0; j = k; k = v } else { n = 0; j = k; k = 0 } } c[C >> 2] = j; u = (k | 0) < 0; r = u ? o | 8192 : o; v = n; u = u ? 0 - k | 0 : k } else { k = pP(C) | 0; if ((k | 0) < 0) { e = -1; break } j = c[C >> 2] | 0; r = o; v = p; u = k } do if ((a[j >> 0] | 0) == 46) { if ((a[j + 1 >> 0] | 0) != 42) { c[C >> 2] = j + 1; o = pP(C) | 0; j = c[C >> 2] | 0; break } m = j + 2 | 0; k = (a[m >> 0] | 0) + -48 | 0; if (k >>> 0 < 10 ? (a[j + 3 >> 0] | 0) == 36 : 0) { c[i + (k << 2) >> 2] = 10; o = c[g + ((a[m >> 0] | 0) + -48 << 3) >> 2] | 0; j = j + 4 | 0; c[C >> 2] = j; break } if (v | 0) { e = -1; break a } if (F) { t = (c[f >> 2] | 0) + (4 - 1) & ~(4 - 1); k = c[t >> 2] | 0; c[f >> 2] = t + 4 } else k = 0; c[C >> 2] = m; j = m; o = k } else o = -1; while (0); p = 0; while (1) { if (((a[j >> 0] | 0) + -65 | 0) >>> 0 > 57) { e = -1; break a } t = j + 1 | 0; c[C >> 2] = t; k = a[(a[j >> 0] | 0) + -65 + (51723 + (p * 58 | 0)) >> 0] | 0; n = k & 255; if ((n + -1 | 0) >>> 0 < 8) { j = t; p = n } else break } if (!(k << 24 >> 24)) { e = -1; break } m = (s | 0) > -1; do if (k << 24 >> 24 == 19) if (m) { e = -1; break a } else w = 49; else { if (m) { c[i + (s << 2) >> 2] = n; n = g + (s << 3) | 0; s = c[n + 4 >> 2] | 0; w = z; c[w >> 2] = c[n >> 2]; c[w + 4 >> 2] = s; w = 49; break } if (!F) { e = 0; break a } qP(z, n, f) } while (0); if ((w | 0) == 49 ? (w = 0, !F) : 0) { q = t; j = 0; n = v; continue } n = a[j >> 0] | 0; n = (p | 0) != 0 & (n & 15 | 0) == 3 ? n & -33 : n; k = r & -65537; s = (r & 8192 | 0) == 0 ? r : k; e: do switch (n | 0) { case 110: switch ((p & 255) << 24 >> 24) { case 0: { c[c[z >> 2] >> 2] = e;q = t;j = 0;n = v; continue a } case 1: { c[c[z >> 2] >> 2] = e;q = t;j = 0;n = v; continue a } case 2: { q = c[z >> 2] | 0;c[q >> 2] = e;c[q + 4 >> 2] = ((e | 0) < 0) << 31 >> 31;q = t;j = 0;n = v; continue a } case 3: { b[c[z >> 2] >> 1] = e;q = t;j = 0;n = v; continue a } case 4: { a[c[z >> 2] >> 0] = e;q = t;j = 0;n = v; continue a } case 6: { c[c[z >> 2] >> 2] = e;q = t;j = 0;n = v; continue a } case 7: { q = c[z >> 2] | 0;c[q >> 2] = e;c[q + 4 >> 2] = ((e | 0) < 0) << 31 >> 31;q = t;j = 0;n = v; continue a } default: { q = t;j = 0;n = v; continue a } } case 112: { j = s | 8;k = o >>> 0 > 8 ? o : 8;n = 120;w = 61; break } case 88: case 120: { j = s;k = o;w = 61; break } case 111: { r = z;q = c[r >> 2] | 0;r = c[r + 4 >> 2] | 0;p = sP(q, r, x) | 0;k = E - p | 0;j = s;k = (s & 8 | 0) == 0 | (o | 0) > (k | 0) ? o : k + 1 | 0;m = 0;o = 52187;w = 67; break } case 105: case 100: { k = z;j = c[k >> 2] | 0;k = c[k + 4 >> 2] | 0; if ((k | 0) < 0) { j = NQ(0, 0, j | 0, k | 0) | 0; k = D; m = z; c[m >> 2] = j; c[m + 4 >> 2] = k; m = 1; n = 52187; w = 66; break e } else { m = (s & 2049 | 0) != 0 & 1; n = (s & 2048 | 0) == 0 ? ((s & 1 | 0) == 0 ? 52187 : 52189) : 52188; w = 66; break e } } case 117: { k = z;j = c[k >> 2] | 0;k = c[k + 4 >> 2] | 0;m = 0;n = 52187;w = 66; break } case 99: { a[y >> 0] = c[z >> 2];q = y;p = k;n = 1;m = 0;k = 52187;j = x; break } case 109: { j = uP(c[(XO() | 0) >> 2] | 0) | 0;w = 71; break } case 115: { j = c[z >> 2] | 0;j = j | 0 ? j : 52197;w = 71; break } case 67: { c[G >> 2] = c[z >> 2];c[A >> 2] = 0;c[z >> 2] = G;j = G;o = -1;w = 75; break } case 83: { j = c[z >> 2] | 0; if (!o) { wP(d, 32, u, 0, s); j = 0; w = 84 } else w = 75; break } case 65: case 71: case 70: case 69: case 97: case 103: case 102: case 101: { q = t;j = yP(d, +h[z >> 3], u, o, s, n) | 0;n = v; continue a } default: { p = s;n = o;m = 0;k = 52187;j = x } } while (0); f: do if ((w | 0) == 61) { r = z; q = c[r >> 2] | 0; r = c[r + 4 >> 2] | 0; p = rP(q, r, x, n & 32) | 0; o = (j & 8 | 0) == 0 | (q | 0) == 0 & (r | 0) == 0; m = o ? 0 : 2; o = o ? 52187 : 52187 + (n >> 4) | 0; w = 67 } else if ((w | 0) == 66) { q = j; r = k; p = tP(j, k, x) | 0; j = s; k = o; o = n; w = 67 } else if ((w | 0) == 71) { w = 0; s = vP(j, 0, o) | 0; r = (s | 0) == 0; q = j; p = k; n = r ? o : s - j | 0; m = 0; k = 52187; j = r ? j + o | 0 : s } else if ((w | 0) == 75) { w = 0; m = 0; k = 0; p = j; while (1) { n = c[p >> 2] | 0; if (!n) break; k = xP(B, n) | 0; if ((k | 0) < 0 | k >>> 0 > (o - m | 0) >>> 0) break; m = k + m | 0; if (o >>> 0 > m >>> 0) p = p + 4 | 0; else break } if ((k | 0) < 0) { e = -1; break a } wP(d, 32, u, m, s); if (!m) { j = 0; w = 84 } else { n = 0; while (1) { k = c[j >> 2] | 0; if (!k) { j = m; w = 84; break f } k = xP(B, k) | 0; n = k + n | 0; if ((n | 0) > (m | 0)) { j = m; w = 84; break f } oP(d, B, k); if (n >>> 0 >= m >>> 0) { j = m; w = 84; break } else j = j + 4 | 0 } } } while (0); if ((w | 0) == 67) { w = 0; n = (q | 0) != 0 | (r | 0) != 0; s = (k | 0) != 0 | n; n = ((n ^ 1) & 1) + (E - p) | 0; q = s ? p : x; p = (k | 0) > -1 ? j & -65537 : j; n = s ? ((k | 0) > (n | 0) ? k : n) : k; k = o; j = x } else if ((w | 0) == 84) { w = 0; wP(d, 32, u, j, s ^ 8192); q = t; j = (u | 0) > (j | 0) ? u : j; n = v; continue } s = j - q | 0; r = (n | 0) < (s | 0) ? s : n; n = r + m | 0; j = (u | 0) < (n | 0) ? n : u; wP(d, 32, j, n, p); oP(d, k, m); wP(d, 48, j, n, p ^ 65536); wP(d, 48, r, s, 0); oP(d, q, s); wP(d, 32, j, n, p ^ 8192); q = t; n = v } g: do if ((w | 0) == 87) if (!d) if (!n) e = 0; else { e = 1; while (1) { j = c[i + (e << 2) >> 2] | 0; if (!j) break; qP(g + (e << 3) | 0, j, f); e = e + 1 | 0; if ((e | 0) >= 10) { e = 1; break g } } while (1) { if (c[i + (e << 2) >> 2] | 0) { e = -1; break g } e = e + 1 | 0; if ((e | 0) >= 10) { e = 1; break } } } while (0); l = H; return e | 0 } function mP(a) { a = a | 0; return 0 } function nP(a) { a = a | 0; return } function oP(a, b, d) { a = a | 0; b = b | 0; d = d | 0; if (!(c[a >> 2] & 32)) KP(b, d, a) | 0; return } function pP(b) { b = b | 0; var d = 0, e = 0, f = 0; d = c[b >> 2] | 0; e = (a[d >> 0] | 0) + -48 | 0; if (e >>> 0 < 10) { f = d; d = 0; do { d = e + (d * 10 | 0) | 0; f = f + 1 | 0; c[b >> 2] = f; e = (a[f >> 0] | 0) + -48 | 0 } while (e >>> 0 < 10) } else d = 0; return d | 0 } function qP(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 rP(b, c, e, f) { b = b | 0; c = c | 0; e = e | 0; f = f | 0; if (!((b | 0) == 0 & (c | 0) == 0)) do { e = e + -1 | 0; a[e >> 0] = d[52239 + (b & 15) >> 0] | 0 | f; b = PQ(b | 0, c | 0, 4) | 0; c = D } while (!((b | 0) == 0 & (c | 0) == 0)); return e | 0 } function sP(b, c, d) { b = b | 0; c = c | 0; d = d | 0; if (!((b | 0) == 0 & (c | 0) == 0)) do { d = d + -1 | 0; a[d >> 0] = b & 7 | 48; b = PQ(b | 0, c | 0, 3) | 0; c = D } while (!((b | 0) == 0 & (c | 0) == 0)); return d | 0 } function tP(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 = WQ(b | 0, c | 0, 10, 0) | 0; d = d + -1 | 0; a[d >> 0] = e & 255 | 48; e = b; b = ZQ(b | 0, c | 0, 10, 0) | 0; if (!(c >>> 0 > 9 | (c | 0) == 9 & e >>> 0 > 4294967295)) break; else c = D } if (b) while (1) { d = d + -1 | 0; a[d >> 0] = (b >>> 0) % 10 | 0 | 48; if (b >>> 0 < 10) break; else b = (b >>> 0) / 10 | 0 } return d | 0 } function uP(a) { a = a | 0; return FP(a, c[(EP() | 0) + 188 >> 2] | 0) | 0 } function vP(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 = S(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 wP(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; var f = 0, g = 0; g = l; l = l + 256 | 0; f = g; if ((c | 0) > (d | 0) & (e & 73728 | 0) == 0) { e = c - d | 0; TQ(f | 0, b | 0, (e >>> 0 < 256 ? e : 256) | 0) | 0; if (e >>> 0 > 255) { b = c - d | 0; do { oP(a, f, 256); e = e + -256 | 0 } while (e >>> 0 > 255); e = b & 255 } oP(a, f, e) } l = g; return } function xP(a, b) { a = a | 0; b = b | 0; if (!a) a = 0; else a = CP(a, b, 0) | 0; return a | 0 } function _n(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 2020, 32) | 0) { l = d; return } a = c[b >> 2] | 0; if ((c[(c[b >> 2] | 0) + 340 >> 2] | 0) == 2) { a = a + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; $n(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, c[(c[b >> 2] | 0) + 344 >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = d; return } zn(a); l = d; return } function $n(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function ao(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } a[h >> 0] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; b = c[f >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63 | 0) == 60) { i = b + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 20; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } ls(c[f >> 2] | 0, ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 255 | (d[h >> 0] | 0)) & 31); l = j; return } if (Xn(b, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = d[h >> 0] | 0 | (d[i >> 0] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function bo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63 | 0) == 60) { Rs(a); l = i; return } if (Sn(a) | 0) { l = i; return } b[g >> 1] = b[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = e[g >> 1] | 0 | (e[h >> 1] | 0); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function co(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = e[(c[b >> 2] | 0) + 160 + 2 >> 1]; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = c[f >> 2] << 16 | (e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0); if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = c[f >> 2] | c[g >> 2]; g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 16; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function eo(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; g = k + 4 | 0; h = k; j = k + 9 | 0; i = k + 8 | 0; c[g >> 2] = f; switch ((e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) { case 0: { Ps(c[g >> 2] | 0);l = k; return } case 8: { Qs(c[g >> 2] | 0);l = k; return } default: { if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 4092, 8) | 0) { l = k; return } if (Wu(c[g >> 2] | 0, j) | 0) { l = k; return } else { c[h >> 2] = c[(c[g >> 2] | 0) + 88 + (((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 7; a[i >> 0] = 1 << c[h >> 2]; h = (c[g >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 4; h = (c[g >> 2] | 0) + 166 | 0; f = e[h >> 1] | 0; b[h >> 1] = ((d[j >> 0] | 0) & (d[i >> 0] | 0) | 0) == 0 ? f | 4 : f & -5; Sn(c[g >> 2] | 0) | 0; l = k; return } } } } function fo(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; g = m + 4 | 0; i = m; k = m + 10 | 0; h = m + 9 | 0; j = m + 8 | 0; c[g >> 2] = f; switch ((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Ms(c[g >> 2] | 0);l = m; return } case 1: { Ns(c[g >> 2] | 0);l = m; return } default: { if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = m; return } if (Wu(c[g >> 2] | 0, k) | 0) { l = m; return } c[i >> 2] = c[(c[g >> 2] | 0) + 88 + (((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 7;a[j >> 0] = 1 << c[i >> 2];a[h >> 0] = (d[k >> 0] | 0) ^ (d[j >> 0] | 0);i = (c[g >> 2] | 0) + 372 | 0;c[i >> 2] = (c[i >> 2] | 0) + 8;i = (c[g >> 2] | 0) + 166 | 0;f = e[i >> 1] | 0;b[i >> 1] = ((d[k >> 0] | 0) & (d[j >> 0] | 0) | 0) == 0 ? f | 4 : f & -5; if (Sn(c[g >> 2] | 0) | 0) { l = m; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0;l = m; return } } } function go(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; g = m + 4 | 0; i = m; k = m + 10 | 0; h = m + 9 | 0; j = m + 8 | 0; c[g >> 2] = f; switch ((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Ks(c[g >> 2] | 0);l = m; return } case 1: { Ls(c[g >> 2] | 0);l = m; return } default: { if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = m; return } if (Wu(c[g >> 2] | 0, k) | 0) { l = m; return } c[i >> 2] = c[(c[g >> 2] | 0) + 88 + (((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 7;a[j >> 0] = 1 << c[i >> 2];a[h >> 0] = (d[k >> 0] | 0) & ~(d[j >> 0] | 0);i = (c[g >> 2] | 0) + 372 | 0;c[i >> 2] = (c[i >> 2] | 0) + 8;i = (c[g >> 2] | 0) + 166 | 0;f = e[i >> 1] | 0;b[i >> 1] = ((d[k >> 0] | 0) & (d[j >> 0] | 0) | 0) == 0 ? f | 4 : f & -5; if (Sn(c[g >> 2] | 0) | 0) { l = m; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0;l = m; return } } } function ho(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; g = m + 4 | 0; i = m; k = m + 10 | 0; h = m + 9 | 0; j = m + 8 | 0; c[g >> 2] = f; switch ((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Hs(c[g >> 2] | 0);l = m; return } case 1: { Is(c[g >> 2] | 0);l = m; return } default: { if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = m; return } if (Wu(c[g >> 2] | 0, k) | 0) { l = m; return } c[i >> 2] = c[(c[g >> 2] | 0) + 88 + (((e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2] & 7;a[j >> 0] = 1 << c[i >> 2];a[h >> 0] = d[k >> 0] | 0 | (d[j >> 0] | 0);i = (c[g >> 2] | 0) + 372 | 0;c[i >> 2] = (c[i >> 2] | 0) + 8;i = (c[g >> 2] | 0) + 166 | 0;f = e[i >> 1] | 0;b[i >> 1] = ((d[k >> 0] | 0) & (d[j >> 0] | 0) | 0) == 0 ? f | 4 : f & -5; if (Sn(c[g >> 2] | 0) | 0) { l = m; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0;l = m; return } } } function io(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } a[h >> 0] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; b = c[f >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63 | 0) == 60) { i = b + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 20; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } ls(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 255 & (d[h >> 0] | 0) & 31); l = j; return } if (Xn(b, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[h >> 0] | 0) & (d[i >> 0] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function jo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63 | 0) == 60) { Gs(a); l = i; return } if (Sn(a) | 0) { l = i; return } b[g >> 1] = b[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[g >> 1] | 0) & (e[h >> 1] | 0); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function ko(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = e[(c[b >> 2] | 0) + 160 + 2 >> 1]; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = c[f >> 2] << 16 | (e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0); if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = c[f >> 2] & c[g >> 2]; g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 16; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function lo(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } a[h >> 0] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[i >> 0] | 0) - (d[h >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; uu(c[f >> 2] | 0, a[g >> 0] | 0, a[h >> 0] | 0, a[i >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function mo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = i; return } b[g >> 1] = b[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[h >> 1] | 0) - (e[g >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; vu(c[d >> 2] | 0, b[f >> 1] | 0, b[g >> 1] | 0, b[h >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function no(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = e[(c[b >> 2] | 0) + 160 + 2 >> 1]; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = c[f >> 2] << 16 | (e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0); if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = (c[g >> 2] | 0) - (c[f >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 16; wu(c[b >> 2] | 0, c[d >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function oo(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } a[h >> 0] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[h >> 0] | 0) + (d[i >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; ju(c[f >> 2] | 0, a[g >> 0] | 0, a[h >> 0] | 0, a[i >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function po(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = i; return } b[g >> 1] = b[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[g >> 1] | 0) + (e[h >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; lu(c[d >> 2] | 0, b[f >> 1] | 0, b[g >> 1] | 0, b[h >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function qo(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = e[(c[b >> 2] | 0) + 160 + 2 >> 1]; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = c[f >> 2] << 16 | (e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0); if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = (c[f >> 2] | 0) + (c[g >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 16; mu(c[b >> 2] | 0, c[d >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function ro(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; g = k; i = k + 6 | 0; j = k + 5 | 0; h = k + 4 | 0; c[g >> 2] = f; f = c[g >> 2] | 0; if (!((e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 56)) { Fs(f); l = k; return } if (Sn(f) | 0) { l = k; return } a[i >> 0] = e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 2044, 8) | 0) { l = k; return } if (Wu(c[g >> 2] | 0, j) | 0) { l = k; return } else { a[h >> 0] = (d[j >> 0] | 0) & 1 << ((d[i >> 0] | 0) & 7); j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 8; j = (c[g >> 2] | 0) + 166 | 0; i = e[j >> 1] | 0; b[j >> 1] = (d[h >> 0] | 0 | 0) == 0 ? i | 4 : i & -5; Sn(c[g >> 2] | 0) | 0; l = k; return } } function so(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; g = m + 4 | 0; i = m; k = m + 10 | 0; h = m + 9 | 0; j = m + 8 | 0; c[g >> 2] = f; f = c[g >> 2] | 0; if (!((e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 56)) { Es(f); l = m; return } if (Sn(f) | 0) { l = m; return } c[i >> 2] = (e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) & 7; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = m; return } if (Wu(c[g >> 2] | 0, k) | 0) { l = m; return } a[j >> 0] = 1 << c[i >> 2]; a[h >> 0] = (d[k >> 0] | 0) ^ (d[j >> 0] | 0); i = (c[g >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 12; i = (c[g >> 2] | 0) + 166 | 0; f = e[i >> 1] | 0; b[i >> 1] = ((d[k >> 0] | 0) & (d[j >> 0] | 0) | 0) == 0 ? f | 4 : f & -5; if (Sn(c[g >> 2] | 0) | 0) { l = m; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0; l = m; return } function to(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; g = m + 4 | 0; i = m; k = m + 10 | 0; h = m + 9 | 0; j = m + 8 | 0; c[g >> 2] = f; f = c[g >> 2] | 0; if (!((e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 56)) { Ds(f); l = m; return } if (Sn(f) | 0) { l = m; return } c[i >> 2] = (e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) & 7; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = m; return } if (Wu(c[g >> 2] | 0, k) | 0) { l = m; return } a[j >> 0] = 1 << c[i >> 2]; a[h >> 0] = (d[k >> 0] | 0) & ~(d[j >> 0] | 0); i = (c[g >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 12; i = (c[g >> 2] | 0) + 166 | 0; f = e[i >> 1] | 0; b[i >> 1] = ((d[k >> 0] | 0) & (d[j >> 0] | 0) | 0) == 0 ? f | 4 : f & -5; if (Sn(c[g >> 2] | 0) | 0) { l = m; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0; l = m; return } function uo(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; g = m + 4 | 0; i = m; k = m + 10 | 0; h = m + 9 | 0; j = m + 8 | 0; c[g >> 2] = f; f = c[g >> 2] | 0; if (!((e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 56)) { Cs(f); l = m; return } if (Sn(f) | 0) { l = m; return } c[i >> 2] = (e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) & 7; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = m; return } if (Wu(c[g >> 2] | 0, k) | 0) { l = m; return } a[j >> 0] = 1 << c[i >> 2]; a[h >> 0] = d[k >> 0] | 0 | (d[j >> 0] | 0); i = (c[g >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 12; i = (c[g >> 2] | 0) + 166 | 0; f = e[i >> 1] | 0; b[i >> 1] = ((d[k >> 0] | 0) & (d[j >> 0] | 0) | 0) == 0 ? f | 4 : f & -5; if (Sn(c[g >> 2] | 0) | 0) { l = m; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0; l = m; return } function vo(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } a[h >> 0] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; b = c[f >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63 | 0) == 60) { i = b + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 20; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } ls(c[f >> 2] | 0, ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 255 ^ (d[h >> 0] | 0)) & 31); l = j; return } if (Xn(b, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[h >> 0] | 0) ^ (d[i >> 0] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function wo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63 | 0) == 60) { Bs(a); l = i; return } if (Sn(a) | 0) { l = i; return } b[g >> 1] = b[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[g >> 1] | 0) ^ (e[h >> 1] | 0); hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function xo(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = e[(c[b >> 2] | 0) + 160 + 2 >> 1]; if (Sn(c[b >> 2] | 0) | 0) { l = h; return } c[f >> 2] = c[f >> 2] << 16 | (e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0); if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = c[f >> 2] ^ c[g >> 2]; g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 12; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function yo(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i; g = i + 5 | 0; h = i + 4 | 0; c[f >> 2] = b; if (Sn(c[f >> 2] | 0) | 0) { l = i; return } a[g >> 0] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 2045, 8) | 0) { l = i; return } if (Wu(c[f >> 2] | 0, h) | 0) { l = i; return } else { b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; qu(c[f >> 2] | 0, (d[h >> 0] | 0) - (d[g >> 0] | 0) & 255, a[g >> 0] | 0, a[h >> 0] | 0); Sn(c[f >> 2] | 0) | 0; l = i; return } } function zo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h; f = h + 6 | 0; g = h + 4 | 0; c[d >> 2] = a; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } b[f >> 1] = b[(c[d >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 2045, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } else { a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; su(c[d >> 2] | 0, (e[g >> 1] | 0) - (e[f >> 1] | 0) & 65535, b[f >> 1] | 0, b[g >> 1] | 0); Sn(c[d >> 2] | 0) | 0; l = h; return } } function Ao(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 8 | 0; d = g + 4 | 0; f = g; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = g; return } c[d >> 2] = e[(c[b >> 2] | 0) + 160 + 2 >> 1]; if (Sn(c[b >> 2] | 0) | 0) { l = g; return } c[d >> 2] = c[d >> 2] << 16 | (e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0); if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 2045, 32) | 0) { l = g; return } if (Zu(c[b >> 2] | 0, f) | 0) { l = g; return } else { a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; tu(c[b >> 2] | 0, (c[f >> 2] | 0) - (c[d >> 2] | 0) | 0, c[d >> 2] | 0, c[f >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = g; return } } function Bo(b) { b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 4 | 0; i = j; g = j + 8 | 0; c[h >> 2] = b; b = c[h >> 2] | 0; if (!(c[c[h >> 2] >> 2] & 2)) { Zn(b); l = j; return } if (Sn(b) | 0) { l = j; return } c[i >> 2] = (e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 15; if ((e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) & 2048 | 0) { b = c[h >> 2] | 0; if (c[i >> 2] & 8 | 0) a[g >> 0] = c[b + 120 + ((c[i >> 2] & 7) << 2) >> 2]; else a[g >> 0] = c[b + 88 + ((c[i >> 2] & 7) << 2) >> 2]; if (Xn(c[h >> 2] | 0, (e[(c[h >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = j; return } if (_u(c[h >> 2] | 0, a[g >> 0] | 0) | 0) { l = j; return } else { i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 4 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } } if (Xn(c[h >> 2] | 0, (e[(c[h >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = j; return } if (Wu(c[h >> 2] | 0, g) | 0) { l = j; return } d = c[h >> 2] | 0; f = c[i >> 2] & 7; b = a[g >> 0] | 0; if (c[i >> 2] & 8 | 0) { $n(d, f, Or(b & 255) | 0); i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 4 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } else { nr(d, f, b); i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 4 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } } function Co(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 4 | 0; i = j; g = j + 8 | 0; c[h >> 2] = a; a = c[h >> 2] | 0; if (!(c[c[h >> 2] >> 2] & 2)) { Zn(a); l = j; return } if (Sn(a) | 0) { l = j; return } c[i >> 2] = (e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 15; if ((e[(c[h >> 2] | 0) + 160 + 2 >> 1] | 0) & 2048 | 0) { a = c[h >> 2] | 0; if (c[i >> 2] & 8 | 0) b[g >> 1] = c[a + 120 + ((c[i >> 2] & 7) << 2) >> 2]; else b[g >> 1] = c[a + 88 + ((c[i >> 2] & 7) << 2) >> 2]; if (Xn(c[h >> 2] | 0, (e[(c[h >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = j; return } if (bv(c[h >> 2] | 0, b[g >> 1] | 0) | 0) { l = j; return } else { i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 4 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } } if (Xn(c[h >> 2] | 0, (e[(c[h >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = j; return } if (Yu(c[h >> 2] | 0, g) | 0) { l = j; return } d = c[h >> 2] | 0; f = c[i >> 2] & 7; a = b[g >> 1] | 0; if (c[i >> 2] & 8 | 0) { As(d, f, a); i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 4 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } else { Un(d, f, a); i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 4 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } } function Do(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; h = i + 4 | 0; f = i; c[g >> 2] = a; a = c[g >> 2] | 0; if (!(c[c[g >> 2] >> 2] & 2)) { Zn(a); l = i; return } if (Sn(a) | 0) { l = i; return } c[h >> 2] = (e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) >> 12 & 15; if ((e[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0) & 2048 | 0) { a = c[g >> 2] | 0; if (c[h >> 2] & 8 | 0) c[f >> 2] = c[a + 120 + ((c[h >> 2] & 7) << 2) >> 2]; else c[f >> 2] = c[a + 88 + ((c[h >> 2] & 7) << 2) >> 2]; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 32) | 0) { l = i; return } if (fv(c[g >> 2] | 0, c[f >> 2] | 0) | 0) { l = i; return } else { h = c[g >> 2] | 0; h = h + 372 | 0; f = c[h >> 2] | 0; f = f + 4 | 0; c[h >> 2] = f; h = c[g >> 2] | 0; Sn(h) | 0; l = i; return } } if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 32) | 0) { l = i; return } if (Zu(c[g >> 2] | 0, f) | 0) { l = i; return } b = c[g >> 2] | 0; d = c[h >> 2] & 7; a = c[f >> 2] | 0; if (c[h >> 2] & 8 | 0) { $n(b, d, a); h = c[g >> 2] | 0; h = h + 372 | 0; f = c[h >> 2] | 0; f = f + 4 | 0; c[h >> 2] = f; h = c[g >> 2] | 0; Sn(h) | 0; l = i; return } else { er(b, d, a); h = c[g >> 2] | 0; h = h + 372 | 0; f = c[h >> 2] | 0; f = f + 4 | 0; c[h >> 2] = f; h = c[g >> 2] | 0; Sn(h) | 0; l = i; return } } function Eo(b) { b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = b; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 8) | 0) { l = g; return } if (Wu(c[d >> 2] | 0, f) | 0) { l = g; return } if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 3 & 56 | (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, 509, 8) | 0) { l = g; return } if (_u(c[d >> 2] | 0, a[f >> 0] | 0) | 0) { l = g; return } else { b = (c[d >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 4; gu(c[d >> 2] | 0, 15, a[f >> 0] | 0); Sn(c[d >> 2] | 0) | 0; l = g; return } } function Fo(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = f; return } if (Zu(c[b >> 2] | 0, d) | 0) { l = f; return } if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 56 | (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, 509, 32) | 0) { l = f; return } if (fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0) { l = f; return } else { a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = f; return } } function Go(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = f; return } if (Zu(c[b >> 2] | 0, d) | 0) { l = f; return } else { $n(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, c[d >> 2] | 0); d = (c[b >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 4; Sn(c[b >> 2] | 0) | 0; l = f; return } } function Ho(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = g; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = g; return } if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 3 & 56 | (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, 509, 16) | 0) { l = g; return } if (bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0) { l = g; return } else { a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); Sn(c[d >> 2] | 0) | 0; l = g; return } } function Io(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; f = l; l = l + 16 | 0; b = f; d = f + 4 | 0; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = f; return } if (Yu(c[b >> 2] | 0, d) | 0) { l = f; return } else { g = c[b >> 2] | 0; a = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; $n(g, a, Tn(e[d >> 1] | 0) | 0); d = (c[b >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 4; Sn(c[b >> 2] | 0) | 0; l = f; return } } function Jo(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; g = j; i = j + 5 | 0; h = j + 4 | 0; c[g >> 2] = f; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[g >> 2] | 0, i) | 0) { l = j; return } a[h >> 0] = ~(d[i >> 0] | 0) + 1 - (((e[(c[g >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); if (d[h >> 0] | 0 | 0) { f = (c[g >> 2] | 0) + 166 | 0; b[f >> 1] = (e[f >> 1] | 0) & -5 } f = (c[g >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 8; f = (c[g >> 2] | 0) + 166 | 0; k = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0) & 128 | 0 ? k | 8 : k & -9; f = (c[g >> 2] | 0) + 166 | 0; k = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0) & (d[i >> 0] | 0) & 128 | 0 ? k | 2 : k & -3; f = (c[g >> 2] | 0) + 166 | 0; k = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0 | (d[i >> 0] | 0)) & 128 | 0 ? k | 17 : k & -18; if (Sn(c[g >> 2] | 0) | 0) { l = j; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0; l = j; return } function Ko(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = ~(e[g >> 1] | 0) + 1 - (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); if (e[f >> 1] | 0 | 0) { a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = (e[a >> 1] | 0) & -5 } a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0) & 32768 | 0 ? i | 8 : i & -9; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0) & (e[g >> 1] | 0) & 32768 | 0 ? i | 2 : i & -3; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0 | (e[g >> 1] | 0)) & 32768 | 0 ? i | 17 : i & -18; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Lo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h + 8 | 0; g = h + 4 | 0; f = h; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[d >> 2] | 0, g) | 0) { l = h; return } c[f >> 2] = ~c[g >> 2] + 1 - (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); if (c[f >> 2] | 0) { a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = (e[a >> 1] | 0) & -5 } a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 10; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = c[f >> 2] & -2147483648 | 0 ? i | 8 : i & -9; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = c[f >> 2] & c[g >> 2] & -2147483648 | 0 ? i | 2 : i & -3; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (c[f >> 2] | c[g >> 2]) & -2147483648 | 0 ? i | 17 : i & -18; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } fv(c[d >> 2] | 0, c[f >> 2] | 0) | 0; l = h; return } function Mo(d) { d = d | 0; var f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; f = h; g = h + 4 | 0; c[f >> 2] = d; if (c[c[f >> 2] >> 2] & 2 | 0 ? (a[(c[f >> 2] | 0) + 334 >> 0] | 0) == 0 : 0) { Dn(c[f >> 2] | 0); l = h; return } if (Xn(c[f >> 2] | 0, e[(c[f >> 2] | 0) + 160 >> 1] & 63, 509, 16) | 0) { l = h; return } if (Yu(c[f >> 2] | 0, g) | 0) { l = h; return } b[g >> 1] = e[(c[f >> 2] | 0) + 166 >> 1] & 42783; d = (c[f >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 4; if (Sn(c[f >> 2] | 0) | 0) { l = h; return } bv(c[f >> 2] | 0, b[g >> 1] | 0) | 0; l = h; return } function No(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i + 4 | 0; h = i; f = i + 10 | 0; g = i + 8 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = i; return } b[g >> 1] = c[(c[d >> 2] | 0) + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; do if ((e[g >> 1] | 0) & 32768 | 0) { c[h >> 2] = 1; g = (c[d >> 2] | 0) + 166 | 0; b[g >> 1] = e[g >> 1] | 0 | 8 } else { if (((e[f >> 1] | 0) & 32768 | 0) == 0 ? (e[g >> 1] | 0 | 0) <= (e[f >> 1] | 0 | 0) : 0) { c[h >> 2] = 0; break } c[h >> 2] = 1; g = (c[d >> 2] | 0) + 166 | 0; b[g >> 1] = (e[g >> 1] | 0) & -9 } while (0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 14; a = c[d >> 2] | 0; if (c[h >> 2] | 0) { Bn(a); l = i; return } else { Sn(a) | 0; l = i; return } } function Oo(a) { a = a | 0; var d = 0, f = 0; f = l; l = l + 16 | 0; d = f; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = f; return } if (Wu(c[d >> 2] | 0, f + 4 | 0) | 0) { l = f; return } a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = (e[a >> 1] | 0) & -12; a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = e[a >> 1] | 0 | 4; if (Sn(c[d >> 2] | 0) | 0) { l = f; return } _u(c[d >> 2] | 0, 0) | 0; l = f; return } function Po(a) { a = a | 0; var d = 0, f = 0; f = l; l = l + 16 | 0; d = f; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = f; return } if (Yu(c[d >> 2] | 0, f + 4 | 0) | 0) { l = f; return } a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = (e[a >> 1] | 0) & -12; a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = e[a >> 1] | 0 | 4; if (Sn(c[d >> 2] | 0) | 0) { l = f; return } bv(c[d >> 2] | 0, 0) | 0; l = f; return } function Qo(a) { a = a | 0; var d = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = f; return } if (Zu(c[d >> 2] | 0, f) | 0) { l = f; return } a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 6; a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = (e[a >> 1] | 0) & -12; a = (c[d >> 2] | 0) + 166 | 0; b[a >> 1] = e[a >> 1] | 0 | 4; if (Sn(c[d >> 2] | 0) | 0) { l = f; return } fv(c[d >> 2] | 0, 0) | 0; l = f; return } function Ro(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (!(c[c[d >> 2] >> 2] & 2)) { Zn(a); l = g; return } if (Xn(a, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = g; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = g; return } b[f >> 1] = (e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 31; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; if (Sn(c[d >> 2] | 0) | 0) { l = g; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = g; return } function So(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; g = j; i = j + 5 | 0; h = j + 4 | 0; c[g >> 2] = f; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[g >> 2] | 0, i) | 0) { l = j; return } a[h >> 0] = ~(d[i >> 0] | 0) + 1; f = (c[g >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 4; f = (c[g >> 2] | 0) + 166 | 0; k = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0) & 128 | 0 ? k | 8 : k & -9; f = (c[g >> 2] | 0) + 166 | 0; k = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0) & (d[i >> 0] | 0) & 128 | 0 ? k | 2 : k & -3; f = (c[g >> 2] | 0) + 166 | 0; k = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0 | 0) == 0 ? k | 4 : k & -5; f = (c[g >> 2] | 0) + 166 | 0; k = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0 | (d[i >> 0] | 0)) & 128 | 0 ? k | 17 : k & -18; if (Sn(c[g >> 2] | 0) | 0) { l = j; return } _u(c[g >> 2] | 0, a[h >> 0] | 0) | 0; l = j; return } function To(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = ~(e[g >> 1] | 0) + 1; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0) & 32768 | 0 ? i | 8 : i & -9; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0) & (e[g >> 1] | 0) & 32768 | 0 ? i | 2 : i & -3; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0 | 0) == 0 ? i | 4 : i & -5; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0 | (e[g >> 1] | 0)) & 32768 | 0 ? i | 17 : i & -18; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Uo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h + 8 | 0; g = h + 4 | 0; f = h; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[d >> 2] | 0, g) | 0) { l = h; return } c[f >> 2] = ~c[g >> 2] + 1; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 6; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = c[f >> 2] & -2147483648 | 0 ? i | 8 : i & -9; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = c[f >> 2] & c[g >> 2] & -2147483648 | 0 ? i | 2 : i & -3; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (c[f >> 2] | 0) == 0 ? i | 4 : i & -5; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (c[f >> 2] | c[g >> 2]) & -2147483648 | 0 ? i | 17 : i & -18; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } fv(c[d >> 2] | 0, c[f >> 2] | 0) | 0; l = h; return } function Vo(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; b = f; d = f + 4 | 0; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = f; return } if (Yu(c[b >> 2] | 0, d) | 0) { l = f; return } else { a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; ls(c[b >> 2] | 0, (e[d >> 1] | 0) & 31); Sn(c[b >> 2] | 0) | 0; l = f; return } } function Wo(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i; h = i + 5 | 0; g = i + 4 | 0; c[f >> 2] = b; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = i; return } if (Wu(c[f >> 2] | 0, h) | 0) { l = i; return } a[g >> 0] = ~(d[h >> 0] | 0); h = (c[f >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 4; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = i; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = i; return } function Xo(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = ~(e[g >> 1] | 0); g = (c[d >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 4; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Yo(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 8 | 0; f = g + 4 | 0; d = g; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = g; return } if (Zu(c[b >> 2] | 0, f) | 0) { l = g; return } c[d >> 2] = ~c[f >> 2]; f = (c[b >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 6; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = g; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = g; return } function Zo(b) { b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = b; b = c[d >> 2] | 0; if (!(a[(c[d >> 2] | 0) + 334 >> 0] | 0)) { Dn(b); l = g; return } if (Xn(b, e[(c[d >> 2] | 0) + 160 >> 1] & 63, 4093, 16) | 0) { l = g; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = g; return } else { b = (c[d >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 12; ln(c[d >> 2] | 0, e[f >> 1] & 42783); Sn(c[d >> 2] | 0) | 0; l = g; return } } function _o(a) { a = a | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i; h = i + 6 | 0; g = i + 4 | 0; c[f >> 2] = a; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = i; return } if (Wu(c[f >> 2] | 0, h) | 0) { l = i; return } b[g >> 1] = 0 - (d[h >> 0] | 0) - (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); if ((e[g >> 1] | 0) & 15 | 0) b[g >> 1] = (e[g >> 1] | 0) - 6; if ((e[g >> 1] | 0) & 240 | 0) b[g >> 1] = (e[g >> 1] | 0) - 96; h = (c[f >> 2] | 0) + 166 | 0; a = e[h >> 1] | 0; b[h >> 1] = (e[g >> 1] | 0) & 65280 | 0 ? a | 17 : a & -18; if ((e[g >> 1] | 0) & 255 | 0) { h = (c[f >> 2] | 0) + 166 | 0; b[h >> 1] = (e[h >> 1] | 0) & -5 } h = (c[f >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 6; if (Sn(c[f >> 2] | 0) | 0) { l = i; return } _u(c[f >> 2] | 0, (e[g >> 1] | 0) & 255) | 0; l = i; return } function $o(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if (!((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 56)) { zs(a); l = d; return } if (Xn(a, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 2020, 32) | 0) { l = d; return } a = c[b >> 2] | 0; if ((c[(c[b >> 2] | 0) + 340 >> 2] | 0) == 2) { a = a + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; Qr(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 344 >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = d; return } zn(a); l = d; return } function ap(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { vs(c[b >> 2] | 0);l = d; return } case 4: { ws(c[b >> 2] | 0);l = d; return } default: { xs(c[b >> 2] | 0);l = d; return } } } function bp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { ss(c[b >> 2] | 0);l = d; return } case 4: { ts(c[b >> 2] | 0);l = d; return } default: { us(c[b >> 2] | 0);l = d; return } } } function cp(a) { a = a | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = a; Pb[c[(c[e >> 2] | 0) + 4496 + (((b[(c[e >> 2] | 0) + 160 >> 1] & 65535) >> 3 & 7) << 2) >> 2] & 511](c[e >> 2] | 0); l = d; return } function dp(b) { b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = b; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = g; return } if (Wu(c[d >> 2] | 0, f) | 0) { l = g; return } else { b = (c[d >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; gu(c[d >> 2] | 0, 15, a[f >> 0] | 0); Sn(c[d >> 2] | 0) | 0; l = g; return } } function ep(a) { a = a | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g; f = g + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = g; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = g; return } else { a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); Sn(c[d >> 2] | 0) | 0; l = g; return } } function fp(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = f; return } if (Zu(c[b >> 2] | 0, d) | 0) { l = f; return } else { a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = f; return } } function gp(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i; h = i + 5 | 0; g = i + 4 | 0; c[f >> 2] = b; b = c[f >> 2] | 0; if ((e[(c[f >> 2] | 0) + 160 >> 1] | 0 | 0) == 19196) { rs(b); l = i; return } if (Xn(b, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = i; return } if (Wu(c[f >> 2] | 0, h) | 0) { l = i; return } a[g >> 0] = d[h >> 0] | 0 | 128; b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; gu(c[f >> 2] | 0, 15, a[h >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = i; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = i; return } function hp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Zn(c[b >> 2] | 0);l = d; return } case 3: { ps(c[b >> 2] | 0);l = d; return } default: { qs(c[b >> 2] | 0);l = d; return } } } function ip(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Zn(c[b >> 2] | 0);l = d; return } case 3: { ns(c[b >> 2] | 0);l = d; return } default: { os(c[b >> 2] | 0);l = d; return } } } function jp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a: do switch (e[(c[b >> 2] | 0) + 160 >> 1] | 0 | 0) { case 20080: { Wr(c[b >> 2] | 0); break } case 20081: { Xr(c[b >> 2] | 0); break } case 20082: { Yr(c[b >> 2] | 0); break } case 20083: { Zr(c[b >> 2] | 0); break } case 20084: { _r(c[b >> 2] | 0); break } case 20085: { $r(c[b >> 2] | 0); break } case 20086: { as(c[b >> 2] | 0); break } case 20087: { bs(c[b >> 2] | 0); break } case 20090: { cs(c[b >> 2] | 0); break } case 20091: { ds(c[b >> 2] | 0); break } default: switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 1: case 0: { es(c[b >> 2] | 0); break a } case 2: { fs(c[b >> 2] | 0); break a } case 3: { gs(c[b >> 2] | 0); break a } case 4: { hs(c[b >> 2] | 0); break a } case 5: { is(c[b >> 2] | 0); break a } default: { Zn(c[b >> 2] | 0); break a } } } while (0); l = d; return } function kp(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; d = f + 4 | 0; b = f; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 2020, 32) | 0) { l = f; return } a = c[d >> 2] | 0; if ((c[(c[d >> 2] | 0) + 340 >> 2] | 0) != 2) { zn(a); l = f; return } a = a + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 16; c[b >> 2] = (c[(c[d >> 2] | 0) + 156 >> 2] | 0) - 2; c[(c[d >> 2] | 0) + 156 >> 2] = c[(c[d >> 2] | 0) + 344 >> 2]; if (Sn(c[d >> 2] | 0) | 0) { l = f; return } Qr(c[d >> 2] | 0, c[b >> 2] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = f; return } c[(c[d >> 2] | 0) + 152 >> 2] = c[(c[d >> 2] | 0) + 344 >> 2]; l = f; return } function lp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 2020, 32) | 0) { l = d; return } a = c[b >> 2] | 0; if ((c[(c[b >> 2] | 0) + 340 >> 2] | 0) != 2) { zn(a); l = d; return } a = a + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; c[(c[b >> 2] | 0) + 156 >> 2] = c[(c[b >> 2] | 0) + 344 >> 2]; if (Sn(c[b >> 2] | 0) | 0) { l = d; return } if (Sn(c[b >> 2] | 0) | 0) { l = d; return } c[(c[b >> 2] | 0) + 152 >> 2] = c[(c[b >> 2] | 0) + 344 >> 2]; l = d; return } function mp(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; a[h >> 0] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } if (!(d[h >> 0] | 0)) a[h >> 0] = 8; a[g >> 0] = (d[h >> 0] | 0) + (d[i >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; ju(c[f >> 2] | 0, a[g >> 0] | 0, a[h >> 0] | 0, a[i >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function np(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Vr(a); l = i; return } b[g >> 1] = (e[a + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } if (!(e[g >> 1] | 0)) b[g >> 1] = 8; b[f >> 1] = (e[g >> 1] | 0) + (e[h >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; lu(c[d >> 2] | 0, b[f >> 1] | 0, b[g >> 1] | 0, b[h >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function op(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; a = c[b >> 2] | 0; if (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Ur(a); l = h; return } c[f >> 2] = (e[a + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } if (!(c[f >> 2] | 0)) c[f >> 2] = 8; c[d >> 2] = (c[f >> 2] | 0) + (c[g >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; mu(c[b >> 2] | 0, c[d >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function pp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, 1); l = b; return } else { Wn(a, 1); l = b; return } } function qp(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; a[h >> 0] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } if (!(d[h >> 0] | 0)) a[h >> 0] = 8; a[g >> 0] = (d[i >> 0] | 0) - (d[h >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; uu(c[f >> 2] | 0, a[g >> 0] | 0, a[h >> 0] | 0, a[i >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function rp(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Tr(a); l = i; return } b[g >> 1] = (e[a + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } if (!(e[g >> 1] | 0)) b[g >> 1] = 8; b[f >> 1] = (e[h >> 1] | 0) - (e[g >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; vu(c[d >> 2] | 0, b[f >> 1] | 0, b[g >> 1] | 0, b[h >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function sp(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; a = c[b >> 2] | 0; if (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Sr(a); l = h; return } c[f >> 2] = (e[a + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } if (!(c[f >> 2] | 0)) c[f >> 2] = 8; c[d >> 2] = (c[g >> 2] | 0) - (c[f >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; wu(c[b >> 2] | 0, c[d >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function tp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, 0); l = b; return } else { Wn(a, 0); l = b; return } } function up(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; if ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) a = 0; else a = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; c[d >> 2] = a & 1; b = c[f >> 2] | 0; a = c[d >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(b, a); l = g; return } else { Wn(b, a); l = g; return } } function vp(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; if ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) a = 1; else a = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; c[d >> 2] = a & 1; b = c[f >> 2] | 0; a = c[d >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(b, a); l = g; return } else { Wn(b, a); l = g; return } } function wp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 ^ 1) & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function xp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function yp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1) & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function zp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function Ap(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 ^ 1) & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function Bp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function Cp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 ^ 1) & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function Dp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function Ep(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) == (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function Fp(a) { a = a | 0; var b = 0, d = 0, f = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; b = d; c[f >> 2] = a; c[b >> 2] = (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1; a = c[f >> 2] | 0; b = c[b >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(a, b); l = d; return } else { Wn(a, b); l = d; return } } function Gp(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; if ((((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) == (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) a = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; else a = 0; c[d >> 2] = a & 1; b = c[f >> 2] | 0; a = c[d >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(b, a); l = g; return } else { Wn(b, a); l = g; return } } function Hp(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 4 | 0; d = g; c[f >> 2] = a; if ((((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) a = 1; else a = ((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; c[d >> 2] = a & 1; b = c[f >> 2] | 0; a = c[d >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Rn(b, a); l = g; return } else { Wn(b, a); l = g; return } } function Ip(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, 1); l = b; return } function Jp(a) { a = a | 0; var b = 0, d = 0, f = 0; b = l; l = l + 16 | 0; d = b + 4 | 0; f = b; c[d >> 2] = a; c[f >> 2] = (c[(c[d >> 2] | 0) + 152 >> 2] | 0) + ((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 255 | 0 ? 2 : 4); Qr(c[d >> 2] | 0, c[f >> 2] | 0); Pr(c[d >> 2] | 0, 1); l = b; return } function Kp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) { b = 0; b = b & 1; Pr(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; b = b & 1; Pr(a, b); l = d; return } function Lp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) { b = 1; b = b & 1; Pr(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; b = b & 1; Pr(a, b); l = d; return } function Mp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 ^ 1) & 1); l = b; return } function Np(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 1 | 0) != 0 & 1); l = b; return } function Op(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1) & 1); l = b; return } function Pp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 & 1); l = b; return } function Qp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 ^ 1) & 1); l = b; return } function Rp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 & 1); l = b; return } function Sp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 ^ 1) & 1); l = b; return } function Tp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 & 1); l = b; return } function Up(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) == (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1); l = b; return } function Vp(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; Pr(c[d >> 2] | 0, (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0) & 1); l = b; return } function Wp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) { b = 0; b = b & 1; Pr(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0 ^ 1; b = b & 1; Pr(a, b); l = d; return } function Xp(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; if ((((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 8 | 0) != 0 | 0) != (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) != 0 | 0)) { b = 1; b = b & 1; Pr(a, b); l = d; return } b = ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 4 | 0) != 0; b = b & 1; Pr(a, b); l = d; return } function Yp(a) { a = a | 0; var b = 0, d = 0, f = 0; b = l; l = l + 16 | 0; d = b + 4 | 0; f = b; c[d >> 2] = a; c[f >> 2] = Or(e[(c[d >> 2] | 0) + 160 >> 1] | 0) | 0; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; iu(c[d >> 2] | 0, 15, c[f >> 2] | 0); er(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7, c[f >> 2] | 0); Sn(c[d >> 2] | 0) | 0; l = b; return } function Zp(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; f = k + 4 | 0; h = k; i = k + 10 | 0; j = k + 9 | 0; g = k + 8 | 0; c[f >> 2] = b; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 8) | 0) { l = k; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = k; return } a[j >> 0] = c[(c[f >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2]; a[g >> 0] = d[i >> 0] | 0 | (d[j >> 0] | 0); j = (c[f >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 8; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = k; return } nr(c[f >> 2] | 0, c[h >> 2] | 0, a[g >> 0] | 0); l = k; return } function _p(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; d = j + 4 | 0; g = j; h = j + 12 | 0; i = j + 10 | 0; f = j + 8 | 0; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = j; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = j; return } b[i >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; b[f >> 1] = e[h >> 1] | 0 | (e[i >> 1] | 0); i = (c[d >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = j; return } Un(c[d >> 2] | 0, c[g >> 2] | 0, b[f >> 1] | 0); l = j; return } function $p(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 32) | 0) { l = i; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = i; return } c[h >> 2] = c[(c[b >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = c[g >> 2] | c[h >> 2]; h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 10; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = i; return } er(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function aq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; j = k + 12 | 0; f = k + 8 | 0; h = k + 4 | 0; i = k; d = k + 20 | 0; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = k; return } if (Yu(c[g >> 2] | 0, d) | 0) { l = k; return } c[f >> 2] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; if (!(e[d >> 1] | 0)) { if (Sn(c[g >> 2] | 0) | 0) { l = k; return } An(c[g >> 2] | 0); l = k; return } c[h >> 2] = ((c[f >> 2] | 0) >>> 0) / ((e[d >> 1] | 0) >>> 0) | 0; c[i >> 2] = ((c[f >> 2] | 0) >>> 0) % ((e[d >> 1] | 0) >>> 0) | 0; a = c[g >> 2] | 0; if (c[h >> 2] & -65536 | 0) { j = a + 166 | 0; b[j >> 1] = e[j >> 1] | 0 | 2; j = (c[g >> 2] | 0) + 166 | 0; b[j >> 1] = (e[j >> 1] | 0) & -2; j = c[g >> 2] | 0; j = j + 372 | 0; i = c[j >> 2] | 0; i = i + 144 | 0; c[j >> 2] = i; j = c[g >> 2] | 0; Sn(j) | 0; l = k; return } else { er(a, c[j >> 2] | 0, (c[i >> 2] & 65535) << 16 | c[h >> 2] & 65535); hu(c[g >> 2] | 0, 15, c[h >> 2] & 65535); j = c[g >> 2] | 0; j = j + 372 | 0; i = c[j >> 2] | 0; i = i + 144 | 0; c[j >> 2] = i; j = c[g >> 2] | 0; Sn(j) | 0; l = k; return } } function bq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; b = c[f >> 2] | 0; if (!((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 48)) { Nr(b); l = j; return } a[h >> 0] = c[b + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = d[h >> 0] | 0 | (d[i >> 0] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function cq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; b[g >> 1] = c[(c[d >> 2] | 0) + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = e[g >> 1] | 0 | (e[h >> 1] | 0); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function dq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; c[f >> 2] = c[(c[b >> 2] | 0) + 88 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = c[f >> 2] | c[g >> 2]; g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 10; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function eq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; i = n + 24 | 0; m = n + 20 | 0; d = n + 16 | 0; f = n + 12 | 0; h = n + 8 | 0; j = n + 4 | 0; k = n; g = n + 28 | 0; c[i >> 2] = a; c[m >> 2] = (e[(c[i >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[i >> 2] | 0, (e[(c[i >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = n; return } if (Yu(c[i >> 2] | 0, g) | 0) { l = n; return } c[h >> 2] = c[(c[i >> 2] | 0) + 88 + ((c[m >> 2] & 7) << 2) >> 2]; if (!(e[g >> 1] | 0)) { if (Sn(c[i >> 2] | 0) | 0) { l = n; return } An(c[i >> 2] | 0); l = n; return } c[d >> 2] = 0; c[f >> 2] = 0; if (c[h >> 2] & -2147483648 | 0) { c[f >> 2] = 1; c[h >> 2] = ~c[h >> 2] + 1 } if ((e[g >> 1] | 0) & 32768 | 0) { c[d >> 2] = 1; b[g >> 1] = ~(e[g >> 1] | 0) + 1 } c[j >> 2] = ((c[h >> 2] | 0) >>> 0) / ((e[g >> 1] | 0) >>> 0) | 0; c[k >> 2] = ((c[h >> 2] | 0) >>> 0) % ((e[g >> 1] | 0) >>> 0) | 0; if (c[f >> 2] | 0) c[k >> 2] = ~c[k >> 2] + 1 & 65535; if ((c[d >> 2] | 0) != (c[f >> 2] | 0)) c[j >> 2] = ~c[j >> 2] + 1; a = (c[i >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 162; a = c[j >> 2] & -32768; if ((a | 0) < 0) switch (a | 0) { case -32768: { a = 15; break } default: a = 16 } else switch (a | 0) { case 0: { a = 15; break } default: a = 16 } if ((a | 0) == 15) { er(c[i >> 2] | 0, c[m >> 2] | 0, (c[k >> 2] & 65535) << 16 | c[j >> 2] & 65535); hu(c[i >> 2] | 0, 15, c[j >> 2] & 65535); m = c[i >> 2] | 0; Sn(m) | 0; l = n; return } else if ((a | 0) == 16) { m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = e[m >> 1] | 0 | 2; m = (c[i >> 2] | 0) + 166 | 0; b[m >> 1] = (e[m >> 1] | 0) & -2; m = c[i >> 2] | 0; Sn(m) | 0; l = n; return } } function fq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; f = k + 4 | 0; h = k; i = k + 10 | 0; j = k + 9 | 0; g = k + 8 | 0; c[f >> 2] = b; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 8) | 0) { l = k; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = k; return } a[j >> 0] = c[(c[f >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2]; a[g >> 0] = (d[j >> 0] | 0) - (d[i >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; uu(c[f >> 2] | 0, a[g >> 0] | 0, a[i >> 0] | 0, a[j >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = k; return } nr(c[f >> 2] | 0, c[h >> 2] | 0, a[g >> 0] | 0); l = k; return } function gq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; d = j + 4 | 0; g = j; h = j + 12 | 0; i = j + 10 | 0; f = j + 8 | 0; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = j; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = j; return } b[i >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; b[f >> 1] = (e[i >> 1] | 0) - (e[h >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; vu(c[d >> 2] | 0, b[f >> 1] | 0, b[h >> 1] | 0, b[i >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = j; return } Un(c[d >> 2] | 0, c[g >> 2] | 0, b[f >> 1] | 0); l = j; return } function hq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = i; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = i; return } c[h >> 2] = c[(c[b >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = (c[h >> 2] | 0) - (c[g >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 10; wu(c[b >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = i; return } er(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function iq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; b = j + 16 | 0; f = j + 12 | 0; g = j + 8 | 0; h = j + 4 | 0; d = j; i = j + 20 | 0; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = j; return } if (Yu(c[b >> 2] | 0, i) | 0) { l = j; return } c[g >> 2] = Tn(e[i >> 1] | 0) | 0; c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = (c[h >> 2] | 0) - (c[g >> 2] | 0); i = (c[b >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; if (Sn(c[b >> 2] | 0) | 0) { l = j; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = j; return } function jq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; b = c[f >> 2] | 0; if (!((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 48)) { Mr(b); l = j; return } a[h >> 0] = c[b + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[i >> 0] | 0) - (d[h >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; uu(c[f >> 2] | 0, a[g >> 0] | 0, a[h >> 0] | 0, a[i >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function kq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (!((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 48)) { Lr(a); l = i; return } b[g >> 1] = c[a + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[h >> 1] | 0) - (e[g >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; vu(c[d >> 2] | 0, b[f >> 1] | 0, b[g >> 1] | 0, b[h >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function lq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; a = c[b >> 2] | 0; if (!((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 48)) { Kr(a); l = h; return } c[f >> 2] = c[a + 88 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = (c[g >> 2] | 0) - (c[f >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; wu(c[b >> 2] | 0, c[d >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function mq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = i; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = i; return } c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = (c[h >> 2] | 0) - (c[g >> 2] | 0); h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 10; if (Sn(c[b >> 2] | 0) | 0) { l = i; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function nq(a) { a = a | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = a; b[(c[e >> 2] | 0) + 328 >> 1] = b[(c[e >> 2] | 0) + 160 >> 1] | 0; Fn(c[e >> 2] | 0); l = d; return } function oq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i; g = i + 5 | 0; h = i + 4 | 0; c[f >> 2] = b; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 8) | 0) { l = i; return } if (Wu(c[f >> 2] | 0, g) | 0) { l = i; return } else { a[h >> 0] = c[(c[f >> 2] | 0) + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 4; qu(c[f >> 2] | 0, (d[h >> 0] | 0) - (d[g >> 0] | 0) & 255, a[g >> 0] | 0, a[h >> 0] | 0); Sn(c[f >> 2] | 0) | 0; l = i; return } } function pq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h; f = h + 6 | 0; g = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = h; return } else { b[g >> 1] = c[(c[d >> 2] | 0) + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; su(c[d >> 2] | 0, (e[g >> 1] | 0) - (e[f >> 1] | 0) & 65535, b[f >> 1] | 0, b[g >> 1] | 0); Sn(c[d >> 2] | 0) | 0; l = h; return } } function qq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 8 | 0; d = g + 4 | 0; f = g; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = g; return } if (Zu(c[b >> 2] | 0, d) | 0) { l = g; return } else { c[f >> 2] = c[(c[b >> 2] | 0) + 88 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 6; tu(c[b >> 2] | 0, (c[f >> 2] | 0) - (c[d >> 2] | 0) | 0, c[d >> 2] | 0, c[f >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = g; return } } function rq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 8 | 0; d = h + 4 | 0; f = h; g = h + 12 | 0; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = h; return } if (Yu(c[b >> 2] | 0, g) | 0) { l = h; return } else { c[d >> 2] = Tn(e[g >> 1] | 0) | 0; c[f >> 2] = c[(c[b >> 2] | 0) + 120 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 8; tu(c[b >> 2] | 0, (c[f >> 2] | 0) - (c[d >> 2] | 0) | 0, c[d >> 2] | 0, c[f >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = h; return } } function sq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; b = c[f >> 2] | 0; if (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Jr(b); l = j; return } a[h >> 0] = c[b + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[h >> 0] | 0) ^ (d[i >> 0] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function tq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Ir(a); l = i; return } b[g >> 1] = c[a + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[g >> 1] | 0) ^ (e[h >> 1] | 0); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function uq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; a = c[b >> 2] | 0; if (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Hr(a); l = h; return } c[f >> 2] = c[a + 88 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 509, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = c[f >> 2] ^ c[g >> 2]; g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 12; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function vq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 8 | 0; d = g + 4 | 0; f = g; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = g; return } if (Zu(c[b >> 2] | 0, d) | 0) { l = g; return } else { c[f >> 2] = c[(c[b >> 2] | 0) + 120 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; tu(c[b >> 2] | 0, (c[f >> 2] | 0) - (c[d >> 2] | 0) | 0, c[d >> 2] | 0, c[f >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = g; return } } function wq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; f = k + 4 | 0; h = k; i = k + 10 | 0; j = k + 9 | 0; g = k + 8 | 0; c[f >> 2] = b; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 8) | 0) { l = k; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = k; return } a[j >> 0] = c[(c[f >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2]; a[g >> 0] = (d[i >> 0] | 0) & (d[j >> 0] | 0); j = (c[f >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 4; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = k; return } nr(c[f >> 2] | 0, c[h >> 2] | 0, a[g >> 0] | 0); l = k; return } function xq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; d = j + 4 | 0; g = j; h = j + 12 | 0; i = j + 10 | 0; f = j + 8 | 0; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = j; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = j; return } b[i >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; b[f >> 1] = (e[h >> 1] | 0) & (e[i >> 1] | 0); i = (c[d >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 4; hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = j; return } Un(c[d >> 2] | 0, c[g >> 2] | 0, b[f >> 1] | 0); l = j; return } function yq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 32) | 0) { l = i; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = i; return } c[h >> 2] = c[(c[b >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = c[g >> 2] & c[h >> 2]; h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 6; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = i; return } er(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function zq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; d = j + 8 | 0; g = j + 4 | 0; f = j; h = j + 14 | 0; i = j + 12 | 0; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = j; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = j; return } b[i >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; c[f >> 2] = S(e[h >> 1] | 0, e[i >> 1] | 0) | 0; i = (c[d >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 74; iu(c[d >> 2] | 0, 15, c[f >> 2] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = j; return } er(c[d >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0); l = j; return } function Aq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; b = c[f >> 2] | 0; if (!((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 48)) { Gr(b); l = j; return } a[h >> 0] = c[b + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[h >> 0] | 0) & (d[i >> 0] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 4; gu(c[f >> 2] | 0, 15, a[g >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function Bq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; switch ((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 3 & 7 | 0) { case 0: { Er(c[d >> 2] | 0);l = i; return } case 1: { Fr(c[d >> 2] | 0);l = i; return } default: { b[g >> 1] = c[(c[d >> 2] | 0) + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[g >> 1] | 0) & (e[h >> 1] | 0);h = (c[d >> 2] | 0) + 372 | 0;c[h >> 2] = (c[h >> 2] | 0) + 4;hu(c[d >> 2] | 0, 15, b[f >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0;l = i; return } } } function Cq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; a = c[b >> 2] | 0; if (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 56 | 0) == 8) { Dr(a); l = h; return } c[f >> 2] = c[a + 88 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = c[f >> 2] & c[g >> 2]; g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 6; iu(c[b >> 2] | 0, 15, c[d >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function Dq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; d = m + 16 | 0; i = m + 12 | 0; g = m + 8 | 0; h = m + 4 | 0; f = m; j = m + 22 | 0; k = m + 20 | 0; c[d >> 2] = a; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 16) | 0) { l = m; return } if (Yu(c[d >> 2] | 0, j) | 0) { l = m; return } b[k >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[g >> 2] = 0; c[h >> 2] = 0; if ((e[j >> 1] | 0) & 32768 | 0) { c[g >> 2] = 1; b[j >> 1] = ~(e[j >> 1] | 0) + 1 } if ((e[k >> 1] | 0) & 32768 | 0) { c[h >> 2] = 1; b[k >> 1] = ~(e[k >> 1] | 0) + 1 } c[f >> 2] = S(e[j >> 1] | 0, e[k >> 1] | 0) | 0; if ((c[g >> 2] | 0) != (c[h >> 2] | 0)) c[f >> 2] = ~c[f >> 2] + 1; k = (c[d >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + 74; iu(c[d >> 2] | 0, 15, c[f >> 2] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = m; return } er(c[d >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0); l = m; return } function Eq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; f = k + 4 | 0; h = k; i = k + 10 | 0; j = k + 9 | 0; g = k + 8 | 0; c[f >> 2] = b; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 4093, 8) | 0) { l = k; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = k; return } a[j >> 0] = c[(c[f >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2]; a[g >> 0] = (d[i >> 0] | 0) + (d[j >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 4; ju(c[f >> 2] | 0, a[g >> 0] | 0, a[i >> 0] | 0, a[j >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = k; return } nr(c[f >> 2] | 0, c[h >> 2] | 0, a[g >> 0] | 0); l = k; return } function Fq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; d = j + 4 | 0; g = j; h = j + 12 | 0; i = j + 10 | 0; f = j + 8 | 0; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = j; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = j; return } b[i >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; b[f >> 1] = (e[h >> 1] | 0) + (e[i >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; lu(c[d >> 2] | 0, b[f >> 1] | 0, b[h >> 1] | 0, b[i >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = j; return } Un(c[d >> 2] | 0, c[g >> 2] | 0, b[f >> 1] | 0); l = j; return } function Gq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = i; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = i; return } c[h >> 2] = c[(c[b >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = (c[g >> 2] | 0) + (c[h >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 6; mu(c[b >> 2] | 0, c[d >> 2] | 0, c[g >> 2] | 0, c[h >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = i; return } er(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function Hq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; b = j + 16 | 0; f = j + 12 | 0; g = j + 8 | 0; h = j + 4 | 0; d = j; i = j + 20 | 0; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 16) | 0) { l = j; return } if (Yu(c[b >> 2] | 0, i) | 0) { l = j; return } c[g >> 2] = Tn(e[i >> 1] | 0) | 0; c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = (c[g >> 2] | 0) + (c[h >> 2] | 0); i = (c[b >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; if (Sn(c[b >> 2] | 0) | 0) { l = j; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = j; return } function Iq(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j; h = j + 6 | 0; i = j + 5 | 0; g = j + 4 | 0; c[f >> 2] = b; b = c[f >> 2] | 0; if (!((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 48)) { Cr(b); l = j; return } a[h >> 0] = c[b + 88 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 8) | 0) { l = j; return } if (Wu(c[f >> 2] | 0, i) | 0) { l = j; return } a[g >> 0] = (d[h >> 0] | 0) + (d[i >> 0] | 0); b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 8; ju(c[f >> 2] | 0, a[g >> 0] | 0, a[h >> 0] | 0, a[i >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = j; return } function Jq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; h = i + 6 | 0; f = i + 4 | 0; c[d >> 2] = a; a = c[d >> 2] | 0; if (!((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 48)) { Br(a); l = i; return } b[g >> 1] = c[a + 88 + (((e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, h) | 0) { l = i; return } b[f >> 1] = (e[g >> 1] | 0) + (e[h >> 1] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; lu(c[d >> 2] | 0, b[f >> 1] | 0, b[g >> 1] | 0, b[h >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function Kq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; b = h + 12 | 0; f = h + 8 | 0; g = h + 4 | 0; d = h; c[b >> 2] = a; a = c[b >> 2] | 0; if (!((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 48)) { Ar(a); l = h; return } c[f >> 2] = c[a + 88 + (((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7) << 2) >> 2]; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 32) | 0) { l = h; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = h; return } c[d >> 2] = (c[f >> 2] | 0) + (c[g >> 2] | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; mu(c[b >> 2] | 0, c[d >> 2] | 0, c[f >> 2] | 0, c[g >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = h; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = h; return } function Lq(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 63, 4095, 32) | 0) { l = i; return } if (Zu(c[b >> 2] | 0, g) | 0) { l = i; return } c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; c[d >> 2] = (c[g >> 2] | 0) + (c[h >> 2] | 0); h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 6; if (Sn(c[b >> 2] | 0) | 0) { l = i; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function Mq(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 3 | 0) { case 0: { wr(c[b >> 2] | 0);l = d; return } case 1: { xr(c[b >> 2] | 0);l = d; return } case 2: { yr(c[b >> 2] | 0);l = d; return } case 3: { zr(c[b >> 2] | 0);l = d; return } default: {} } } function Nq(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 3 | 0) { case 0: { sr(c[b >> 2] | 0);l = d; return } case 1: { tr(c[b >> 2] | 0);l = d; return } case 2: { ur(c[b >> 2] | 0);l = d; return } case 3: { vr(c[b >> 2] | 0);l = d; return } default: {} } } function Oq(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 3 | 0) { case 0: { or(c[b >> 2] | 0);l = d; return } case 1: { pr(c[b >> 2] | 0);l = d; return } case 2: { qr(c[b >> 2] | 0);l = d; return } case 3: { rr(c[b >> 2] | 0);l = d; return } default: {} } } function Pq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = (e[g >> 1] | 0) >> 1 | (e[g >> 1] | 0) & 32768; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[g >> 1] | 0) & 1 | 0 ? i | 17 : i & -18; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Qq(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 3 | 0) { case 0: { jr(c[b >> 2] | 0);l = d; return } case 1: { kr(c[b >> 2] | 0);l = d; return } case 2: { lr(c[b >> 2] | 0);l = d; return } case 3: { mr(c[b >> 2] | 0);l = d; return } default: {} } } function Rq(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 3 | 0) { case 0: { fr(c[b >> 2] | 0);l = d; return } case 1: { gr(c[b >> 2] | 0);l = d; return } case 2: { hr(c[b >> 2] | 0);l = d; return } case 3: { ir(c[b >> 2] | 0);l = d; return } default: {} } } function Sq(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; switch ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 3 & 3 | 0) { case 0: { $q(c[b >> 2] | 0);l = d; return } case 1: { ar(c[b >> 2] | 0);l = d; return } case 2: { br(c[b >> 2] | 0);l = d; return } case 3: { cr(c[b >> 2] | 0);l = d; return } default: {} } } function Tq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = (e[g >> 1] | 0) << 1; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; hu(c[d >> 2] | 0, 12, b[f >> 1] | 0); a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[g >> 1] | 0) & 32768 | 0 ? i | 17 : i & -18; a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = ((e[g >> 1] | 0) ^ (e[f >> 1] | 0)) & 32768 | 0 ? i | 2 : i & -3; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Uq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = (e[g >> 1] | 0) >> 1; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[g >> 1] | 0) & 1 | 0 ? i | 17 : i & -18; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Vq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = (e[g >> 1] | 0) << 1; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[g >> 1] | 0) & 32768 | 0 ? i | 17 : i & -18; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Wq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; f = i + 6 | 0; h = i + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = i; return } b[h >> 1] = ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0; b[f >> 1] = (e[g >> 1] | 0) >> 1 | (e[h >> 1] | 0) << 15; h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); h = (c[d >> 2] | 0) + 166 | 0; a = e[h >> 1] | 0; b[h >> 1] = (e[g >> 1] | 0) & 1 | 0 ? a | 17 : a & -18; if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function Xq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; d = i; g = i + 8 | 0; f = i + 6 | 0; h = i + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = i; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = i; return } b[h >> 1] = ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0; b[f >> 1] = (e[g >> 1] | 0) << 1 | (e[h >> 1] | 0); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); h = (c[d >> 2] | 0) + 166 | 0; a = e[h >> 1] | 0; b[h >> 1] = (e[g >> 1] | 0) & 32768 | 0 ? a | 17 : a & -18; if (Sn(c[d >> 2] | 0) | 0) { l = i; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = i; return } function Yq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = (e[g >> 1] | 0) >> 1 | (e[g >> 1] | 0) << 15; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8; hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); a = (c[d >> 2] | 0) + 166 | 0; i = e[a >> 1] | 0; b[a >> 1] = (e[g >> 1] | 0) & 1 | 0 ? i | 1 : i & -2; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function Zq(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h; g = h + 6 | 0; f = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 63, 508, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } b[f >> 1] = (e[g >> 1] | 0) << 1 | (e[g >> 1] | 0) >> 15; g = (c[d >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 8; hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); g = (c[d >> 2] | 0) + 166 | 0; a = e[g >> 1] | 0; b[g >> 1] = (e[f >> 1] | 0) & 1 | 0 ? a | 1 : a & -2; if (Sn(c[d >> 2] | 0) | 0) { l = h; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = h; return } function _q(a) { a = a | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = a; b[(c[e >> 2] | 0) + 330 >> 1] = b[(c[e >> 2] | 0) + 160 >> 1] | 0; Gn(c[e >> 2] | 0); l = d; return } function $q(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; g = k + 20 | 0; f = k + 16 | 0; h = k + 12 | 0; d = k + 8 | 0; j = k + 4 | 0; i = k; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[i >> 2] = dr(c[g >> 2] | 0) | 0; do if (!(c[i >> 2] | 0)) { c[h >> 2] = c[f >> 2]; a = (c[g >> 2] | 0) + 166 | 0; d = (e[a >> 1] | 0) & -4 } else { if ((c[i >> 2] | 0) >>> 0 < 32) { c[h >> 2] = c[f >> 2] << c[i >> 2]; c[d >> 2] = -1 << 31 - (c[i >> 2] | 0); a = (c[g >> 2] | 0) + 166 | 0; m = e[a >> 1] | 0; b[a >> 1] = c[f >> 2] & 1 << 32 - (c[i >> 2] | 0) | 0 ? m | 17 : m & -18; if (c[f >> 2] & c[d >> 2] | 0 ? (c[f >> 2] & c[d >> 2] | 0) != (c[d >> 2] | 0) : 0) { a = (c[g >> 2] | 0) + 166 | 0; d = e[a >> 1] | 0 | 2; break } a = (c[g >> 2] | 0) + 166 | 0; d = (e[a >> 1] | 0) & -3; break } c[h >> 2] = 0; if ((c[i >> 2] | 0) == 32 ? c[f >> 2] & 1 | 0 : 0) { a = (c[g >> 2] | 0) + 166 | 0; d = e[a >> 1] | 0 | 17 } else { a = (c[g >> 2] | 0) + 166 | 0; d = (e[a >> 1] | 0) & -18 } b[a >> 1] = d; a = (c[g >> 2] | 0) + 166 | 0; d = e[a >> 1] | 0; d = c[f >> 2] | 0 ? d | 2 : d & -3 } while (0); b[a >> 1] = d; m = (c[g >> 2] | 0) + 372 | 0; c[m >> 2] = (c[m >> 2] | 0) + (8 + (c[i >> 2] << 1)); iu(c[g >> 2] | 0, 12, c[h >> 2] | 0); if (Sn(c[g >> 2] | 0) | 0) { l = k; return } er(c[g >> 2] | 0, c[j >> 2] | 0, c[h >> 2] | 0); l = k; return } function ar(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; f = j + 16 | 0; d = j + 12 | 0; g = j + 8 | 0; i = j + 4 | 0; h = j; c[f >> 2] = a; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[d >> 2] = c[(c[f >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[f >> 2] | 0) | 0; do if (!(c[h >> 2] | 0)) { c[g >> 2] = c[d >> 2]; d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } else { if ((c[h >> 2] | 0) >>> 0 < 32) { c[g >> 2] = c[d >> 2] << c[h >> 2]; k = (c[f >> 2] | 0) + 166 | 0; a = e[k >> 1] | 0; a = c[d >> 2] & 1 << 32 - (c[h >> 2] | 0) | 0 ? a | 17 : a & -18; d = k; break } c[g >> 2] = 0; if ((c[h >> 2] | 0) == 32 ? c[d >> 2] & 1 | 0 : 0) { d = (c[f >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 17; break } d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -18 } while (0); b[d >> 1] = a; k = (c[f >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + (8 + (c[h >> 2] << 1)); iu(c[f >> 2] | 0, 14, c[g >> 2] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } er(c[f >> 2] | 0, c[i >> 2] | 0, c[g >> 2] | 0); l = j; return } function br(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; d = m + 24 | 0; f = m + 20 | 0; k = m + 16 | 0; j = m + 12 | 0; i = m + 8 | 0; g = m + 4 | 0; h = m; c[d >> 2] = a; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[h >> 2] = dr(c[d >> 2] | 0) | 0; c[f >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[k >> 2] = ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; c[j >> 2] = (c[f >> 2] | 0) >>> 31 & 1; c[f >> 2] = c[f >> 2] << 1 | c[k >> 2]; c[k >> 2] = c[j >> 2]; c[g >> 2] = (c[g >> 2] | 0) + 1 } j = (c[d >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + (8 + (c[h >> 2] << 1)); iu(c[d >> 2] | 0, 14, c[f >> 2] | 0); j = (c[d >> 2] | 0) + 166 | 0; h = e[j >> 1] | 0; b[j >> 1] = c[k >> 2] | 0 ? h | 17 : h & -18; if (Sn(c[d >> 2] | 0) | 0) { l = m; return } er(c[d >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0); l = m; return } function cr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 20 | 0; f = k + 16 | 0; h = k + 12 | 0; j = k + 8 | 0; i = k + 4 | 0; d = k; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[i >> 2] = dr(c[g >> 2] | 0) | 0; c[d >> 2] = c[i >> 2] & 31; a = c[f >> 2] | 0; do if ((c[d >> 2] | 0) >>> 0 > 0) { c[h >> 2] = a << c[d >> 2] | (c[f >> 2] | 0) >>> (32 - (c[d >> 2] | 0) | 0); d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0; a = c[h >> 2] & 1 | 0 ? a | 1 : a & -2 } else { c[h >> 2] = a; if (c[i >> 2] | 0 ? c[h >> 2] & 1 | 0 : 0) { d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 1; break } d = (c[g >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } while (0); b[d >> 1] = a; f = (c[g >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + (8 + (c[i >> 2] << 1)); iu(c[g >> 2] | 0, 14, c[h >> 2] | 0); if (Sn(c[g >> 2] | 0) | 0) { l = k; return } er(c[g >> 2] | 0, c[j >> 2] | 0, c[h >> 2] | 0); l = k; return } function dr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g + 8 | 0; b = g + 4 | 0; d = g; c[b >> 2] = a; c[d >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 32 | 0) { c[f >> 2] = c[(c[b >> 2] | 0) + 88 + ((c[d >> 2] & 7) << 2) >> 2] & 63; f = c[f >> 2] | 0; l = g; return f | 0 } if (!(c[d >> 2] | 0)) c[d >> 2] = 8; c[f >> 2] = c[d >> 2]; f = c[f >> 2] | 0; l = g; return f | 0 } function er(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0; e = l; l = l + 16 | 0; g = e + 8 | 0; f = e + 4 | 0; h = e; c[g >> 2] = a; c[f >> 2] = b; c[h >> 2] = d; c[(c[g >> 2] | 0) + 88 + ((c[f >> 2] & 7) << 2) >> 2] = c[h >> 2]; l = e; return } function fr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 32 | 0; g = k + 8 | 0; f = k + 16 | 0; h = k + 14 | 0; d = k + 12 | 0; j = k + 4 | 0; i = k; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7; b[f >> 1] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[i >> 2] = dr(c[g >> 2] | 0) | 0; do if (!(c[i >> 2] | 0)) { b[h >> 1] = b[f >> 1] | 0; a = (c[g >> 2] | 0) + 166 | 0; d = (e[a >> 1] | 0) & -4 } else { if ((c[i >> 2] | 0) >>> 0 < 16) { b[h >> 1] = (e[f >> 1] | 0) << c[i >> 2]; b[d >> 1] = 65535 << 15 - (c[i >> 2] | 0); a = (c[g >> 2] | 0) + 166 | 0; m = e[a >> 1] | 0; b[a >> 1] = (e[f >> 1] | 0) & 1 << 16 - (c[i >> 2] | 0) | 0 ? m | 17 : m & -18; if ((e[f >> 1] | 0) & (e[d >> 1] | 0) | 0 ? ((e[f >> 1] | 0) & (e[d >> 1] | 0) | 0) != (e[d >> 1] | 0 | 0) : 0) { a = (c[g >> 2] | 0) + 166 | 0; d = e[a >> 1] | 0 | 2; break } a = (c[g >> 2] | 0) + 166 | 0; d = (e[a >> 1] | 0) & -3; break } b[h >> 1] = 0; if ((c[i >> 2] | 0) == 16 ? (e[f >> 1] | 0) & 1 | 0 : 0) { a = (c[g >> 2] | 0) + 166 | 0; d = e[a >> 1] | 0 | 17 } else { a = (c[g >> 2] | 0) + 166 | 0; d = (e[a >> 1] | 0) & -18 } b[a >> 1] = d; a = (c[g >> 2] | 0) + 166 | 0; d = e[a >> 1] | 0; d = e[f >> 1] | 0 | 0 ? d | 2 : d & -3 } while (0); b[a >> 1] = d; m = (c[g >> 2] | 0) + 372 | 0; c[m >> 2] = (c[m >> 2] | 0) + (6 + (c[i >> 2] << 1)); hu(c[g >> 2] | 0, 12, b[h >> 1] | 0); if (Sn(c[g >> 2] | 0) | 0) { l = k; return } Un(c[g >> 2] | 0, c[j >> 2] | 0, b[h >> 1] | 0); l = k; return } function gr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; f = j + 8 | 0; d = j + 14 | 0; g = j + 12 | 0; i = j + 4 | 0; h = j; c[f >> 2] = a; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; b[d >> 1] = c[(c[f >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[f >> 2] | 0) | 0; do if (!(c[h >> 2] | 0)) { b[g >> 1] = b[d >> 1] | 0; d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } else { if ((c[h >> 2] | 0) >>> 0 < 16) { b[g >> 1] = (e[d >> 1] | 0) << c[h >> 2]; k = (c[f >> 2] | 0) + 166 | 0; a = e[k >> 1] | 0; a = (e[d >> 1] | 0) & 1 << 16 - (c[h >> 2] | 0) | 0 ? a | 17 : a & -18; d = k; break } b[g >> 1] = 0; if ((c[h >> 2] | 0) == 16 ? (e[d >> 1] | 0) & 1 | 0 : 0) { d = (c[f >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 17; break } d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -18 } while (0); b[d >> 1] = a; k = (c[f >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + (6 + (c[h >> 2] << 1)); hu(c[f >> 2] | 0, 14, b[g >> 1] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } Un(c[f >> 2] | 0, c[i >> 2] | 0, b[g >> 1] | 0); l = j; return } function hr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; d = m + 12 | 0; f = m + 20 | 0; k = m + 18 | 0; j = m + 16 | 0; i = m + 8 | 0; g = m + 4 | 0; h = m; c[d >> 2] = a; c[i >> 2] = e[(c[d >> 2] | 0) + 160 >> 1] & 7; b[f >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[d >> 2] | 0) | 0; b[k >> 1] = (e[(c[d >> 2] | 0) + 166 >> 1] & 16 | 0) != 0; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; b[j >> 1] = e[f >> 1] >> 15 & 1; b[f >> 1] = e[f >> 1] << 1 | e[k >> 1]; b[k >> 1] = b[j >> 1] | 0; c[g >> 2] = (c[g >> 2] | 0) + 1 } j = (c[d >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + (6 + (c[h >> 2] << 1)); hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); j = (c[d >> 2] | 0) + 166 | 0; h = e[j >> 1] | 0; b[j >> 1] = b[k >> 1] | 0 ? h | 17 : h & -18; if (Sn(c[d >> 2] | 0) | 0) { l = m; return } Un(c[d >> 2] | 0, c[i >> 2] | 0, b[f >> 1] | 0); l = m; return } function ir(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 12 | 0; f = k + 18 | 0; h = k + 16 | 0; j = k + 8 | 0; i = k + 4 | 0; d = k; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7; b[f >> 1] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[i >> 2] = dr(c[g >> 2] | 0) | 0; c[d >> 2] = c[i >> 2] & 15; a = b[f >> 1] | 0; do if (c[d >> 2] | 0) { b[h >> 1] = (a & 65535) << c[d >> 2] | (e[f >> 1] | 0) >> 16 - (c[d >> 2] | 0); d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0; a = (e[h >> 1] | 0) & 1 | 0 ? a | 1 : a & -2 } else { b[h >> 1] = a; if (c[i >> 2] | 0 ? (e[h >> 1] | 0) & 1 | 0 : 0) { d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 1; break } d = (c[g >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } while (0); b[d >> 1] = a; f = (c[g >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + (6 + (c[i >> 2] << 1)); hu(c[g >> 2] | 0, 14, b[h >> 1] | 0); if (Sn(c[g >> 2] | 0) | 0) { l = k; return } Un(c[g >> 2] | 0, c[j >> 2] | 0, b[h >> 1] | 0); l = k; return } function jr(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; n = l; l = l + 16 | 0; i = n + 8 | 0; h = n + 14 | 0; j = n + 13 | 0; g = n + 12 | 0; m = n + 4 | 0; k = n; c[i >> 2] = f; c[m >> 2] = (e[(c[i >> 2] | 0) + 160 >> 1] | 0) & 7; a[h >> 0] = c[(c[i >> 2] | 0) + 88 + ((c[m >> 2] & 7) << 2) >> 2]; c[k >> 2] = dr(c[i >> 2] | 0) | 0; do if (!(c[k >> 2] | 0)) { a[j >> 0] = a[h >> 0] | 0; f = (c[i >> 2] | 0) + 166 | 0; g = (e[f >> 1] | 0) & -4 } else { if ((c[k >> 2] | 0) >>> 0 < 8) { a[j >> 0] = (d[h >> 0] | 0) << c[k >> 2]; a[g >> 0] = 255 << 7 - (c[k >> 2] | 0); f = (c[i >> 2] | 0) + 166 | 0; o = e[f >> 1] | 0; b[f >> 1] = (d[h >> 0] | 0) & 1 << 8 - (c[k >> 2] | 0) | 0 ? o | 17 : o & -18; if ((d[h >> 0] | 0) & (d[g >> 0] | 0) | 0 ? ((d[h >> 0] | 0) & (d[g >> 0] | 0) | 0) != (d[g >> 0] | 0 | 0) : 0) { f = (c[i >> 2] | 0) + 166 | 0; g = e[f >> 1] | 0 | 2; break } f = (c[i >> 2] | 0) + 166 | 0; g = (e[f >> 1] | 0) & -3; break } a[j >> 0] = 0; if ((c[k >> 2] | 0) == 8 ? (d[h >> 0] | 0) & 1 | 0 : 0) { f = (c[i >> 2] | 0) + 166 | 0; g = e[f >> 1] | 0 | 17 } else { f = (c[i >> 2] | 0) + 166 | 0; g = (e[f >> 1] | 0) & -18 } b[f >> 1] = g; f = (c[i >> 2] | 0) + 166 | 0; g = e[f >> 1] | 0; g = d[h >> 0] | 0 | 0 ? g | 2 : g & -3 } while (0); b[f >> 1] = g; o = (c[i >> 2] | 0) + 372 | 0; c[o >> 2] = (c[o >> 2] | 0) + (6 + (c[k >> 2] << 1)); gu(c[i >> 2] | 0, 12, a[j >> 0] | 0); if (Sn(c[i >> 2] | 0) | 0) { l = n; return } nr(c[i >> 2] | 0, c[m >> 2] | 0, a[j >> 0] | 0); l = n; return } function kr(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 16 | 0; h = m + 8 | 0; g = m + 13 | 0; i = m + 12 | 0; k = m + 4 | 0; j = m; c[h >> 2] = f; c[k >> 2] = (e[(c[h >> 2] | 0) + 160 >> 1] | 0) & 7; a[g >> 0] = c[(c[h >> 2] | 0) + 88 + ((c[k >> 2] & 7) << 2) >> 2]; c[j >> 2] = dr(c[h >> 2] | 0) | 0; do if (!(c[j >> 2] | 0)) { a[i >> 0] = a[g >> 0] | 0; g = (c[h >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -2 } else { if ((c[j >> 2] | 0) >>> 0 < 8) { a[i >> 0] = (d[g >> 0] | 0) << c[j >> 2]; n = (c[h >> 2] | 0) + 166 | 0; f = e[n >> 1] | 0; f = (d[g >> 0] | 0) & 1 << 8 - (c[j >> 2] | 0) | 0 ? f | 17 : f & -18; g = n; break } a[i >> 0] = 0; if ((c[j >> 2] | 0) == 8 ? (d[g >> 0] | 0) & 1 | 0 : 0) { g = (c[h >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0 | 17; break } g = (c[h >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -18 } while (0); b[g >> 1] = f; n = (c[h >> 2] | 0) + 372 | 0; c[n >> 2] = (c[n >> 2] | 0) + (6 + (c[j >> 2] << 1)); gu(c[h >> 2] | 0, 14, a[i >> 0] | 0); if (Sn(c[h >> 2] | 0) | 0) { l = m; return } nr(c[h >> 2] | 0, c[k >> 2] | 0, a[i >> 0] | 0); l = m; return } function lr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; d = m + 12 | 0; f = m + 20 | 0; k = m + 18 | 0; j = m + 16 | 0; i = m + 8 | 0; g = m + 4 | 0; h = m; c[d >> 2] = a; c[i >> 2] = e[(c[d >> 2] | 0) + 160 >> 1] & 7; b[f >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2] & 255; c[h >> 2] = dr(c[d >> 2] | 0) | 0; b[k >> 1] = (e[(c[d >> 2] | 0) + 166 >> 1] & 16 | 0) != 0; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; b[j >> 1] = e[f >> 1] >> 7 & 1; b[f >> 1] = e[f >> 1] << 1 | e[k >> 1]; b[k >> 1] = b[j >> 1] | 0; c[g >> 2] = (c[g >> 2] | 0) + 1 } j = (c[d >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + (6 + (c[h >> 2] << 1)); gu(c[d >> 2] | 0, 14, b[f >> 1] & 255); j = (c[d >> 2] | 0) + 166 | 0; h = e[j >> 1] | 0; b[j >> 1] = b[k >> 1] | 0 ? h | 17 : h & -18; if (Sn(c[d >> 2] | 0) | 0) { l = m; return } nr(c[d >> 2] | 0, c[i >> 2] | 0, b[f >> 1] & 255); l = m; return } function mr(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; i = n + 12 | 0; h = n + 17 | 0; j = n + 16 | 0; m = n + 8 | 0; k = n + 4 | 0; g = n; c[i >> 2] = f; c[m >> 2] = (e[(c[i >> 2] | 0) + 160 >> 1] | 0) & 7; a[h >> 0] = c[(c[i >> 2] | 0) + 88 + ((c[m >> 2] & 7) << 2) >> 2]; c[k >> 2] = dr(c[i >> 2] | 0) | 0; c[g >> 2] = c[k >> 2] & 7; f = a[h >> 0] | 0; do if (c[g >> 2] | 0) { a[j >> 0] = (f & 255) << c[g >> 2] | (d[h >> 0] | 0) >> 8 - (c[g >> 2] | 0); g = (c[i >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0; f = (d[j >> 0] | 0) & 1 | 0 ? f | 1 : f & -2 } else { a[j >> 0] = f; if (c[k >> 2] | 0 ? (d[j >> 0] | 0) & 1 | 0 : 0) { g = (c[i >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0 | 1; break } g = (c[i >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -2 } while (0); b[g >> 1] = f; h = (c[i >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + (6 + (c[k >> 2] << 1)); gu(c[i >> 2] | 0, 14, a[j >> 0] | 0); if (Sn(c[i >> 2] | 0) | 0) { l = n; return } nr(c[i >> 2] | 0, c[m >> 2] | 0, a[j >> 0] | 0); l = n; return } function nr(b, e, f) { b = b | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; g = l; l = l + 16 | 0; i = g + 4 | 0; h = g; j = g + 8 | 0; c[i >> 2] = b; c[h >> 2] = e; a[j >> 0] = f; c[h >> 2] = c[h >> 2] & 7; c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] = c[(c[i >> 2] | 0) + 88 + (c[h >> 2] << 2) >> 2] & -256 | (d[j >> 0] | 0) & 255; l = g; return } function or(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 16 | 0; f = k + 12 | 0; h = k + 8 | 0; j = k + 4 | 0; i = k; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[i >> 2] = dr(c[g >> 2] | 0) | 0; do if (!(c[i >> 2] | 0)) { c[h >> 2] = c[f >> 2]; d = (c[g >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } else { d = (c[f >> 2] & -2147483648 | 0) != 0; if ((c[i >> 2] | 0) >>> 0 >= 32) if (d) { c[h >> 2] = -1; d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 17; break } else { c[h >> 2] = 0; d = (c[g >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -18; break } a = (c[f >> 2] | 0) >>> (c[i >> 2] | 0); if (d) c[h >> 2] = a | -1 << 32 - (c[i >> 2] | 0); else c[h >> 2] = a; d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0; a = c[f >> 2] & 1 << (c[i >> 2] | 0) - 1 | 0 ? a | 17 : a & -18 } while (0); b[d >> 1] = a; f = (c[g >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + (8 + (c[i >> 2] << 1)); iu(c[g >> 2] | 0, 14, c[h >> 2] | 0); if (Sn(c[g >> 2] | 0) | 0) { l = k; return } er(c[g >> 2] | 0, c[j >> 2] | 0, c[h >> 2] | 0); l = k; return } function pr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; f = j + 16 | 0; d = j + 12 | 0; g = j + 8 | 0; i = j + 4 | 0; h = j; c[f >> 2] = a; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[d >> 2] = c[(c[f >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[f >> 2] | 0) | 0; do if (!(c[h >> 2] | 0)) { c[g >> 2] = c[d >> 2]; d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } else { if ((c[h >> 2] | 0) >>> 0 < 32) { c[g >> 2] = (c[d >> 2] | 0) >>> (c[h >> 2] | 0); k = (c[f >> 2] | 0) + 166 | 0; a = e[k >> 1] | 0; a = c[d >> 2] & 1 << (c[h >> 2] | 0) - 1 | 0 ? a | 17 : a & -18; d = k; break } c[g >> 2] = 0; if ((c[h >> 2] | 0) == 32 ? c[d >> 2] & -2147483648 | 0 : 0) { d = (c[f >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 17; break } d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -18 } while (0); b[d >> 1] = a; k = (c[f >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + (8 + (c[h >> 2] << 1)); iu(c[f >> 2] | 0, 14, c[g >> 2] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } er(c[f >> 2] | 0, c[i >> 2] | 0, c[g >> 2] | 0); l = j; return } function qr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; d = m + 24 | 0; f = m + 20 | 0; k = m + 16 | 0; j = m + 12 | 0; i = m + 8 | 0; g = m + 4 | 0; h = m; c[d >> 2] = a; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[d >> 2] | 0) | 0; c[k >> 2] = ((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; c[j >> 2] = c[f >> 2] & 1; c[f >> 2] = (c[f >> 2] | 0) >>> 1 | c[k >> 2] << 31; c[k >> 2] = c[j >> 2]; c[g >> 2] = (c[g >> 2] | 0) + 1 } j = (c[d >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + (8 + (c[h >> 2] << 1)); iu(c[d >> 2] | 0, 14, c[f >> 2] | 0); j = (c[d >> 2] | 0) + 166 | 0; h = e[j >> 1] | 0; b[j >> 1] = c[k >> 2] | 0 ? h | 17 : h & -18; if (Sn(c[d >> 2] | 0) | 0) { l = m; return } er(c[d >> 2] | 0, c[i >> 2] | 0, c[f >> 2] | 0); l = m; return } function rr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 20 | 0; f = k + 16 | 0; h = k + 12 | 0; j = k + 8 | 0; i = k + 4 | 0; d = k; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[i >> 2] = dr(c[g >> 2] | 0) | 0; c[d >> 2] = c[i >> 2] & 31; a = c[f >> 2] | 0; do if ((c[d >> 2] | 0) >>> 0 > 0) { c[h >> 2] = a >>> (c[d >> 2] | 0) | c[f >> 2] << 32 - (c[d >> 2] | 0); d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0; a = c[h >> 2] & -2147483648 | 0 ? a | 1 : a & -2 } else { c[h >> 2] = a; if (c[i >> 2] | 0 ? c[h >> 2] & -2147483648 | 0 : 0) { d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 1; break } d = (c[g >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } while (0); b[d >> 1] = a; f = (c[g >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + (8 + (c[i >> 2] << 1)); iu(c[g >> 2] | 0, 14, c[h >> 2] | 0); if (Sn(c[g >> 2] | 0) | 0) { l = k; return } er(c[g >> 2] | 0, c[j >> 2] | 0, c[h >> 2] | 0); l = k; return } function sr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; g = k + 8 | 0; f = k + 14 | 0; h = k + 12 | 0; j = k + 4 | 0; i = k; c[g >> 2] = a; c[j >> 2] = (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7; b[f >> 1] = c[(c[g >> 2] | 0) + 88 + ((c[j >> 2] & 7) << 2) >> 2]; c[i >> 2] = dr(c[g >> 2] | 0) | 0; do if (!(c[i >> 2] | 0)) { b[h >> 1] = b[f >> 1] | 0; d = (c[g >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } else { d = ((e[f >> 1] | 0) & 32768 | 0) != 0; if ((c[i >> 2] | 0) >>> 0 >= 16) if (d) { b[h >> 1] = -1; d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 17; break } else { b[h >> 1] = 0; d = (c[g >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -18; break } a = e[f >> 1] | 0; if (d) b[h >> 1] = (a | -65536) >>> (c[i >> 2] | 0); else b[h >> 1] = a >> c[i >> 2]; d = (c[g >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0; a = (e[f >> 1] | 0) & 1 << (c[i >> 2] | 0) - 1 | 0 ? a | 17 : a & -18 } while (0); b[d >> 1] = a; f = (c[g >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + (6 + (c[i >> 2] << 1)); hu(c[g >> 2] | 0, 14, b[h >> 1] | 0); if (Sn(c[g >> 2] | 0) | 0) { l = k; return } Un(c[g >> 2] | 0, c[j >> 2] | 0, b[h >> 1] | 0); l = k; return } function tr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 16 | 0; f = j + 8 | 0; d = j + 14 | 0; g = j + 12 | 0; i = j + 4 | 0; h = j; c[f >> 2] = a; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; b[d >> 1] = c[(c[f >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[f >> 2] | 0) | 0; do if (!(c[h >> 2] | 0)) { b[g >> 1] = b[d >> 1] | 0; d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } else { if ((c[h >> 2] | 0) >>> 0 < 16) { b[g >> 1] = (e[d >> 1] | 0) >> c[h >> 2]; k = (c[f >> 2] | 0) + 166 | 0; a = e[k >> 1] | 0; a = (e[d >> 1] | 0) & 1 << (c[h >> 2] | 0) - 1 | 0 ? a | 17 : a & -18; d = k; break } b[g >> 1] = 0; if ((c[h >> 2] | 0) == 16 ? (e[d >> 1] | 0) & 32768 | 0 : 0) { d = (c[f >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 17; break } d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -18 } while (0); b[d >> 1] = a; k = (c[f >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + (6 + (c[h >> 2] << 1)); hu(c[f >> 2] | 0, 14, b[g >> 1] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } Un(c[f >> 2] | 0, c[i >> 2] | 0, b[g >> 1] | 0); l = j; return } function ur(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; d = m + 12 | 0; f = m + 20 | 0; k = m + 18 | 0; j = m + 16 | 0; i = m + 8 | 0; g = m + 4 | 0; h = m; c[d >> 2] = a; c[i >> 2] = e[(c[d >> 2] | 0) + 160 >> 1] & 7; b[f >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[d >> 2] | 0) | 0; b[k >> 1] = (e[(c[d >> 2] | 0) + 166 >> 1] & 16 | 0) != 0; c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= (c[h >> 2] | 0) >>> 0) break; b[j >> 1] = e[f >> 1] & 1; b[f >> 1] = e[f >> 1] >> 1 | e[k >> 1] << 15; b[k >> 1] = b[j >> 1] | 0; c[g >> 2] = (c[g >> 2] | 0) + 1 } j = (c[d >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + (6 + (c[h >> 2] << 1)); hu(c[d >> 2] | 0, 14, b[f >> 1] | 0); j = (c[d >> 2] | 0) + 166 | 0; h = e[j >> 1] | 0; b[j >> 1] = b[k >> 1] | 0 ? h | 17 : h & -18; if (Sn(c[d >> 2] | 0) | 0) { l = m; return } Un(c[d >> 2] | 0, c[i >> 2] | 0, b[f >> 1] | 0); l = m; return } function vr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; j = l; l = l + 32 | 0; f = j + 12 | 0; d = j + 18 | 0; g = j + 16 | 0; i = j + 8 | 0; h = j + 4 | 0; k = j; c[f >> 2] = a; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; b[d >> 1] = c[(c[f >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = dr(c[f >> 2] | 0) | 0; c[k >> 2] = c[h >> 2] & 15; a = b[d >> 1] | 0; do if ((c[k >> 2] | 0) >>> 0 > 0) { b[g >> 1] = (a & 65535) >> c[h >> 2] | (e[d >> 1] | 0) << 16 - (c[h >> 2] | 0); d = (c[f >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0; a = (e[g >> 1] | 0) & 32768 | 0 ? a | 1 : a & -2 } else { b[g >> 1] = a; if (c[h >> 2] | 0 ? (e[g >> 1] | 0) & 32768 | 0 : 0) { d = (c[f >> 2] | 0) + 166 | 0; a = e[d >> 1] | 0 | 1; break } d = (c[f >> 2] | 0) + 166 | 0; a = (e[d >> 1] | 0) & -2 } while (0); b[d >> 1] = a; k = (c[f >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + (6 + (c[h >> 2] << 1)); hu(c[f >> 2] | 0, 14, b[g >> 1] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = j; return } Un(c[f >> 2] | 0, c[i >> 2] | 0, b[g >> 1] | 0); l = j; return } function wr(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 16 | 0; i = n + 8 | 0; h = n + 13 | 0; j = n + 12 | 0; m = n + 4 | 0; k = n; c[i >> 2] = f; c[m >> 2] = (e[(c[i >> 2] | 0) + 160 >> 1] | 0) & 7; c[k >> 2] = dr(c[i >> 2] | 0) | 0; a[h >> 0] = c[(c[i >> 2] | 0) + 88 + ((c[m >> 2] & 7) << 2) >> 2]; do if (!(c[k >> 2] | 0)) { a[j >> 0] = a[h >> 0] | 0; g = (c[i >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -2 } else { g = ((d[h >> 0] | 0) & 128 | 0) != 0; if ((c[k >> 2] | 0) >>> 0 >= 8) if (g) { a[j >> 0] = -1; g = (c[i >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0 | 17; break } else { a[j >> 0] = 0; g = (c[i >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -18; break } f = d[h >> 0] | 0; if (g) a[j >> 0] = (f | 65280) >> c[k >> 2]; else a[j >> 0] = f >> c[k >> 2]; g = (c[i >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0; f = (d[h >> 0] | 0) & 1 << (c[k >> 2] | 0) - 1 | 0 ? f | 17 : f & -18 } while (0); b[g >> 1] = f; h = (c[i >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + (6 + (c[k >> 2] << 1)); gu(c[i >> 2] | 0, 14, a[j >> 0] | 0); if (Sn(c[i >> 2] | 0) | 0) { l = n; return } nr(c[i >> 2] | 0, c[m >> 2] | 0, a[j >> 0] | 0); l = n; return } function xr(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; m = l; l = l + 16 | 0; h = m + 8 | 0; g = m + 13 | 0; i = m + 12 | 0; k = m + 4 | 0; j = m; c[h >> 2] = f; c[k >> 2] = (e[(c[h >> 2] | 0) + 160 >> 1] | 0) & 7; a[g >> 0] = c[(c[h >> 2] | 0) + 88 + ((c[k >> 2] & 7) << 2) >> 2]; c[j >> 2] = dr(c[h >> 2] | 0) | 0; do if (!(c[j >> 2] | 0)) { a[i >> 0] = a[g >> 0] | 0; g = (c[h >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -2 } else { if ((c[j >> 2] | 0) >>> 0 < 8) { a[i >> 0] = (d[g >> 0] | 0) >> c[j >> 2]; n = (c[h >> 2] | 0) + 166 | 0; f = e[n >> 1] | 0; f = (d[g >> 0] | 0) & 1 << (c[j >> 2] | 0) - 1 | 0 ? f | 17 : f & -18; g = n; break } a[i >> 0] = 0; if ((c[j >> 2] | 0) == 8 ? (d[g >> 0] | 0) & 128 | 0 : 0) { g = (c[h >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0 | 17; break } g = (c[h >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -18 } while (0); b[g >> 1] = f; n = (c[h >> 2] | 0) + 372 | 0; c[n >> 2] = (c[n >> 2] | 0) + (6 + (c[j >> 2] << 1)); gu(c[h >> 2] | 0, 14, a[i >> 0] | 0); if (Sn(c[h >> 2] | 0) | 0) { l = m; return } nr(c[h >> 2] | 0, c[k >> 2] | 0, a[i >> 0] | 0); l = m; return } function yr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 32 | 0; d = m + 12 | 0; j = m + 20 | 0; k = m + 18 | 0; i = m + 16 | 0; h = m + 8 | 0; f = m + 4 | 0; g = m; c[d >> 2] = a; c[h >> 2] = e[(c[d >> 2] | 0) + 160 >> 1] & 7; b[j >> 1] = c[(c[d >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2] & 255; b[k >> 1] = (e[(c[d >> 2] | 0) + 166 >> 1] & 16 | 0) != 0; c[g >> 2] = dr(c[d >> 2] | 0) | 0; c[f >> 2] = 0; while (1) { if ((c[f >> 2] | 0) >>> 0 >= (c[g >> 2] | 0) >>> 0) break; b[i >> 1] = e[j >> 1] & 1; b[j >> 1] = e[j >> 1] >> 1 | e[k >> 1] << 7; b[k >> 1] = b[i >> 1] | 0; c[f >> 2] = (c[f >> 2] | 0) + 1 } i = (c[d >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + (6 + (c[g >> 2] << 1)); gu(c[d >> 2] | 0, 14, e[j >> 1] & 255); i = (c[d >> 2] | 0) + 166 | 0; g = e[i >> 1] | 0; b[i >> 1] = b[k >> 1] | 0 ? g | 17 : g & -18; if (Sn(c[d >> 2] | 0) | 0) { l = m; return } nr(c[d >> 2] | 0, c[h >> 2] | 0, e[j >> 1] & 255); l = m; return } function zr(f) { f = f | 0; var g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0; n = l; l = l + 32 | 0; i = n + 12 | 0; h = n + 17 | 0; j = n + 16 | 0; m = n + 8 | 0; k = n + 4 | 0; g = n; c[i >> 2] = f; c[m >> 2] = (e[(c[i >> 2] | 0) + 160 >> 1] | 0) & 7; a[h >> 0] = c[(c[i >> 2] | 0) + 88 + ((c[m >> 2] & 7) << 2) >> 2]; c[k >> 2] = dr(c[i >> 2] | 0) | 0; c[g >> 2] = c[k >> 2] & 7; f = a[h >> 0] | 0; do if ((c[g >> 2] | 0) >>> 0 > 0) { a[j >> 0] = (f & 255) >> c[g >> 2] | (d[h >> 0] | 0) << 8 - (c[g >> 2] | 0); g = (c[i >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0; f = (d[j >> 0] | 0) & 128 | 0 ? f | 1 : f & -2 } else { a[j >> 0] = f; if (c[k >> 2] | 0 ? (d[j >> 0] | 0) & 128 | 0 : 0) { g = (c[i >> 2] | 0) + 166 | 0; f = e[g >> 1] | 0 | 1; break } g = (c[i >> 2] | 0) + 166 | 0; f = (e[g >> 1] | 0) & -2 } while (0); b[g >> 1] = f; h = (c[i >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + (6 + (c[k >> 2] << 1)); gu(c[i >> 2] | 0, 14, a[j >> 0] | 0); if (Sn(c[i >> 2] | 0) | 0) { l = n; return } nr(c[i >> 2] | 0, c[m >> 2] | 0, a[j >> 0] | 0); l = n; return } function Ar(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; b = j + 20 | 0; h = j + 16 | 0; i = j + 12 | 0; d = j + 8 | 0; f = j + 4 | 0; g = j; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[g >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[f >> 2] = c[f >> 2] | 32; c[g >> 2] = c[g >> 2] | 32 } if (Xn(c[b >> 2] | 0, c[f >> 2] | 0, 17, 32) | 0) { l = j; return } if (Zu(c[b >> 2] | 0, h) | 0) { l = j; return } if (Xn(c[b >> 2] | 0, c[g >> 2] | 0, 17, 32) | 0) { l = j; return } if (Zu(c[b >> 2] | 0, i) | 0) { l = j; return } c[d >> 2] = (c[h >> 2] | 0) + (c[i >> 2] | 0) + (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 12; pu(c[b >> 2] | 0, c[d >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = j; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = j; return } function Br(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; d = k + 8 | 0; i = k + 16 | 0; j = k + 14 | 0; f = k + 12 | 0; g = k + 4 | 0; h = k; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[h >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[g >> 2] = c[g >> 2] | 32; c[h >> 2] = c[h >> 2] | 32 } if (Xn(c[d >> 2] | 0, c[g >> 2] | 0, 17, 16) | 0) { l = k; return } if (Yu(c[d >> 2] | 0, i) | 0) { l = k; return } if (Xn(c[d >> 2] | 0, c[h >> 2] | 0, 17, 16) | 0) { l = k; return } if (Yu(c[d >> 2] | 0, j) | 0) { l = k; return } b[f >> 1] = (e[i >> 1] | 0) + (e[j >> 1] | 0) + (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; ou(c[d >> 2] | 0, b[f >> 1] | 0, b[i >> 1] | 0, b[j >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = k; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = k; return } function Cr(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; f = m + 8 | 0; j = m + 14 | 0; k = m + 13 | 0; g = m + 12 | 0; h = m + 4 | 0; i = m; c[f >> 2] = b; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[h >> 2] = c[h >> 2] | 32; c[i >> 2] = c[i >> 2] | 32 } if (Xn(c[f >> 2] | 0, c[h >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[f >> 2] | 0, j) | 0) { l = m; return } if (Xn(c[f >> 2] | 0, c[i >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[f >> 2] | 0, k) | 0) { l = m; return } a[g >> 0] = (d[j >> 0] | 0) + (d[k >> 0] | 0) + (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; nu(c[f >> 2] | 0, a[g >> 0] | 0, a[j >> 0] | 0, a[k >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = m; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = m; return } function Dr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; b = l; l = l + 32 | 0; d = b + 16 | 0; i = b + 12 | 0; g = b + 8 | 0; f = b + 4 | 0; h = b; c[d >> 2] = a; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = c[(c[d >> 2] | 0) + 120 + ((c[g >> 2] & 7) << 2) >> 2]; er(c[d >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0); $n(c[d >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 10; Sn(c[d >> 2] | 0) | 0; l = b; return } function Er(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; b = l; l = l + 32 | 0; d = b + 16 | 0; i = b + 12 | 0; g = b + 8 | 0; f = b + 4 | 0; h = b; c[d >> 2] = a; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; er(c[d >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0); er(c[d >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 10; Sn(c[d >> 2] | 0) | 0; l = b; return } function Fr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; b = l; l = l + 32 | 0; d = b + 16 | 0; i = b + 12 | 0; g = b + 8 | 0; f = b + 4 | 0; h = b; c[d >> 2] = a; c[i >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[d >> 2] | 0) + 120 + ((c[i >> 2] & 7) << 2) >> 2]; c[h >> 2] = c[(c[d >> 2] | 0) + 120 + ((c[g >> 2] & 7) << 2) >> 2]; $n(c[d >> 2] | 0, c[i >> 2] | 0, c[h >> 2] | 0); $n(c[d >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0); a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 10; Sn(c[d >> 2] | 0) | 0; l = b; return } function Gr(a) { a = a | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; j = m + 8 | 0; h = m + 15 | 0; i = m + 14 | 0; k = m + 12 | 0; f = m + 4 | 0; g = m; c[j >> 2] = a; c[f >> 2] = (e[(c[j >> 2] | 0) + 160 >> 1] | 0) & 7; c[g >> 2] = (e[(c[j >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[j >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[f >> 2] = c[f >> 2] | 32; c[g >> 2] = c[g >> 2] | 32 } if (Xn(c[j >> 2] | 0, c[f >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[j >> 2] | 0, h) | 0) { l = m; return } if (Xn(c[j >> 2] | 0, c[g >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[j >> 2] | 0, i) | 0) { l = m; return } b[k >> 1] = ((d[h >> 0] | 0) & 65535) + ((d[i >> 0] | 0) & 65535) + (((e[(c[j >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); if ((((d[h >> 0] | 0) & 15) + ((d[i >> 0] | 0) & 15) | 0) > 9) b[k >> 1] = (e[k >> 1] | 0) + 6; if ((e[k >> 1] | 0 | 0) >= 160) { b[k >> 1] = (e[k >> 1] | 0) + 96; f = (c[j >> 2] | 0) + 166 | 0; a = e[f >> 1] | 0 | 17 } else { f = (c[j >> 2] | 0) + 166 | 0; a = (e[f >> 1] | 0) & -18 } b[f >> 1] = a; if ((e[k >> 1] | 0) & 255 | 0) { i = (c[j >> 2] | 0) + 166 | 0; b[i >> 1] = (e[i >> 1] | 0) & -5 } i = (c[j >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 6; if (Sn(c[j >> 2] | 0) | 0) { l = m; return } _u(c[j >> 2] | 0, b[k >> 1] & 255) | 0; l = m; return } function Hr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 8 | 0; d = g + 4 | 0; f = g; c[b >> 2] = a; if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7 | 24, 8, 32) | 0) { l = g; return } if (Zu(c[b >> 2] | 0, d) | 0) { l = g; return } if (Xn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7 | 24, 8, 32) | 0) { l = g; return } if (Zu(c[b >> 2] | 0, f) | 0) { l = g; return } else { a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 20; tu(c[b >> 2] | 0, (c[f >> 2] | 0) - (c[d >> 2] | 0) | 0, c[d >> 2] | 0, c[f >> 2] | 0); Sn(c[b >> 2] | 0) | 0; l = g; return } } function Ir(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0; h = l; l = l + 16 | 0; d = h; f = h + 6 | 0; g = h + 4 | 0; c[d >> 2] = a; if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7 | 24, 8, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, f) | 0) { l = h; return } if (Xn(c[d >> 2] | 0, (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7 | 24, 8, 16) | 0) { l = h; return } if (Yu(c[d >> 2] | 0, g) | 0) { l = h; return } else { a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; su(c[d >> 2] | 0, (e[g >> 1] | 0) - (e[f >> 1] | 0) & 65535, b[f >> 1] | 0, b[g >> 1] | 0); Sn(c[d >> 2] | 0) | 0; l = h; return } } function Jr(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i; g = i + 5 | 0; h = i + 4 | 0; c[f >> 2] = b; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7 | 24, 8, 8) | 0) { l = i; return } if (Wu(c[f >> 2] | 0, g) | 0) { l = i; return } if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7 | 24, 8, 8) | 0) { l = i; return } if (Wu(c[f >> 2] | 0, h) | 0) { l = i; return } else { b = (c[f >> 2] | 0) + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 16; qu(c[f >> 2] | 0, (d[h >> 0] | 0) - (d[g >> 0] | 0) & 255, a[g >> 0] | 0, a[h >> 0] | 0); Sn(c[f >> 2] | 0) | 0; l = i; return } } function Kr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; b = j + 20 | 0; h = j + 16 | 0; i = j + 12 | 0; d = j + 8 | 0; f = j + 4 | 0; g = j; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[g >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[f >> 2] = c[f >> 2] | 32; c[g >> 2] = c[g >> 2] | 32 } if (Xn(c[b >> 2] | 0, c[f >> 2] | 0, 17, 32) | 0) { l = j; return } if (Zu(c[b >> 2] | 0, h) | 0) { l = j; return } if (Xn(c[b >> 2] | 0, c[g >> 2] | 0, 17, 32) | 0) { l = j; return } if (Zu(c[b >> 2] | 0, i) | 0) { l = j; return } c[d >> 2] = (c[i >> 2] | 0) - (c[h >> 2] | 0) - (((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); g = (c[b >> 2] | 0) + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 12; zu(c[b >> 2] | 0, c[d >> 2] | 0, c[h >> 2] | 0, c[i >> 2] | 0); if (Sn(c[b >> 2] | 0) | 0) { l = j; return } fv(c[b >> 2] | 0, c[d >> 2] | 0) | 0; l = j; return } function Lr(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; d = k + 8 | 0; i = k + 16 | 0; j = k + 14 | 0; f = k + 12 | 0; g = k + 4 | 0; h = k; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[h >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[g >> 2] = c[g >> 2] | 32; c[h >> 2] = c[h >> 2] | 32 } if (Xn(c[d >> 2] | 0, c[g >> 2] | 0, 17, 16) | 0) { l = k; return } if (Yu(c[d >> 2] | 0, i) | 0) { l = k; return } if (Xn(c[d >> 2] | 0, c[h >> 2] | 0, 17, 16) | 0) { l = k; return } if (Yu(c[d >> 2] | 0, j) | 0) { l = k; return } b[f >> 1] = (e[j >> 1] | 0) - (e[i >> 1] | 0) - (((e[(c[d >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); h = (c[d >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; yu(c[d >> 2] | 0, b[f >> 1] | 0, b[i >> 1] | 0, b[j >> 1] | 0); if (Sn(c[d >> 2] | 0) | 0) { l = k; return } bv(c[d >> 2] | 0, b[f >> 1] | 0) | 0; l = k; return } function Mr(b) { b = b | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; f = m + 8 | 0; j = m + 14 | 0; k = m + 13 | 0; g = m + 12 | 0; h = m + 4 | 0; i = m; c[f >> 2] = b; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[h >> 2] = c[h >> 2] | 32; c[i >> 2] = c[i >> 2] | 32 } if (Xn(c[f >> 2] | 0, c[h >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[f >> 2] | 0, j) | 0) { l = m; return } if (Xn(c[f >> 2] | 0, c[i >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[f >> 2] | 0, k) | 0) { l = m; return } a[g >> 0] = (d[k >> 0] | 0) - (d[j >> 0] | 0) - (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; xu(c[f >> 2] | 0, a[g >> 0] | 0, a[j >> 0] | 0, a[k >> 0] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = m; return } _u(c[f >> 2] | 0, a[g >> 0] | 0) | 0; l = m; return } function Nr(a) { a = a | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; f = m + 8 | 0; j = m + 15 | 0; k = m + 14 | 0; g = m + 12 | 0; h = m + 4 | 0; i = m; c[f >> 2] = a; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; c[i >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; if ((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 8 | 0) { c[h >> 2] = c[h >> 2] | 32; c[i >> 2] = c[i >> 2] | 32 } if (Xn(c[f >> 2] | 0, c[h >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[f >> 2] | 0, j) | 0) { l = m; return } if (Xn(c[f >> 2] | 0, c[i >> 2] | 0, 17, 8) | 0) { l = m; return } if (Wu(c[f >> 2] | 0, k) | 0) { l = m; return } b[g >> 1] = ((d[k >> 0] | 0) & 65535) - ((d[j >> 0] | 0) & 65535) - (((e[(c[f >> 2] | 0) + 166 >> 1] | 0) & 16 | 0) != 0 & 1); if (((d[k >> 0] | 0) & 15 | 0) < ((d[j >> 0] | 0) & 15 | 0)) b[g >> 1] = (e[g >> 1] | 0) - 6; if ((e[g >> 1] | 0 | 0) >= 160) b[g >> 1] = (e[g >> 1] | 0) - 96; k = (c[f >> 2] | 0) + 372 | 0; c[k >> 2] = (c[k >> 2] | 0) + 10; k = (c[f >> 2] | 0) + 166 | 0; j = e[k >> 1] | 0; b[k >> 1] = (e[g >> 1] | 0) & 65280 | 0 ? j | 17 : j & -18; if ((e[g >> 1] | 0) & 255 | 0) { k = (c[f >> 2] | 0) + 166 | 0; b[k >> 1] = (e[k >> 1] | 0) & -5 } if (Sn(c[f >> 2] | 0) | 0) { l = m; return } _u(c[f >> 2] | 0, b[g >> 1] & 255) | 0; l = m; return } function Or(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; a = c[b >> 2] | 0; l = d; return (c[b >> 2] & 128 | 0 ? a | -256 : a & 255) | 0 } function Pr(a, b) { a = a | 0; b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; d = i + 4 | 0; h = i; c[f >> 2] = a; c[g >> 2] = b; c[d >> 2] = (c[(c[f >> 2] | 0) + 152 >> 2] | 0) + 2; c[h >> 2] = Or(e[(c[f >> 2] | 0) + 160 >> 1] | 0) | 0; do if (!(c[h >> 2] | 0)) if (Sn(c[f >> 2] | 0) | 0) { l = i; return } else { c[h >> 2] = Tn(e[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; break } while (0); a = c[f >> 2] | 0; if (c[g >> 2] | 0) { g = a + 372 | 0; c[g >> 2] = (c[g >> 2] | 0) + 10; c[(c[f >> 2] | 0) + 156 >> 2] = (c[d >> 2] | 0) + (c[h >> 2] | 0); if (Sn(c[f >> 2] | 0) | 0) { l = i; return } } else { h = (c[f >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + (((e[a + 160 >> 1] | 0) & 255 | 0) == 0 ? 12 : 8) } if (Sn(c[f >> 2] | 0) | 0) { l = i; return } c[(c[f >> 2] | 0) + 152 >> 2] = (c[(c[f >> 2] | 0) + 156 >> 2] | 0) - 4; l = i; return } function Qr(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0, f = 0, g = 0; d = l; l = l + 16 | 0; f = d + 8 | 0; g = d + 4 | 0; e = d; c[f >> 2] = a; c[g >> 2] = b; c[e >> 2] = (c[(c[f >> 2] | 0) + 120 + 28 >> 2] | 0) - 4; Rr(c[f >> 2] | 0, c[e >> 2] | 0, c[g >> 2] | 0); $n(c[f >> 2] | 0, 7, c[e >> 2] | 0); l = d; return } function Rr(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 8 | 0; f = i + 4 | 0; h = i; c[g >> 2] = b; c[f >> 2] = d; c[h >> 2] = e; c[f >> 2] = c[f >> 2] & 16777215; if (((c[f >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[g >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + (c[f >> 2] | 0) >> 0] = (c[h >> 2] | 0) >>> 24; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 1) >> 0] = (c[h >> 2] | 0) >>> 16; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 2) >> 0] = (c[h >> 2] | 0) >>> 8; a[(c[(c[g >> 2] | 0) + 32 >> 2] | 0) + ((c[f >> 2] | 0) + 3) >> 0] = c[h >> 2]; l = i; return } else { Sb[c[(c[g >> 2] | 0) + 28 >> 2] & 31](c[(c[g >> 2] | 0) + 4 >> 2] | 0, c[f >> 2] | 0, c[h >> 2] | 0); l = i; return } } function Sr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[g >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; if (!(c[g >> 2] | 0)) c[g >> 2] = 8; c[d >> 2] = (c[h >> 2] | 0) - (c[g >> 2] | 0); h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 12; if (Sn(c[b >> 2] | 0) | 0) { l = i; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function Tr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[g >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; if (!(c[g >> 2] | 0)) c[g >> 2] = 8; c[d >> 2] = (c[h >> 2] | 0) - (c[g >> 2] | 0); h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; if (Sn(c[b >> 2] | 0) | 0) { l = i; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function Ur(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[g >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; if (!(c[g >> 2] | 0)) c[g >> 2] = 8; c[d >> 2] = (c[g >> 2] | 0) + (c[h >> 2] | 0); h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 12; if (Sn(c[b >> 2] | 0) | 0) { l = i; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function Vr(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 32 | 0; b = i + 16 | 0; f = i + 12 | 0; g = i + 8 | 0; h = i + 4 | 0; d = i; c[b >> 2] = a; c[f >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[g >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) >> 9 & 7; c[h >> 2] = c[(c[b >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; if (!(c[g >> 2] | 0)) c[g >> 2] = 8; c[d >> 2] = (c[g >> 2] | 0) + (c[h >> 2] | 0); h = (c[b >> 2] | 0) + 372 | 0; c[h >> 2] = (c[h >> 2] | 0) + 8; if (Sn(c[b >> 2] | 0) | 0) { l = i; return } $n(c[b >> 2] | 0, c[f >> 2] | 0, c[d >> 2] | 0); l = i; return } function Wr(b) { b = b | 0; var d = 0, e = 0, f = 0, g = 0; g = l; l = l + 16 | 0; f = g; c[f >> 2] = b; b = c[f >> 2] | 0; if (!(a[(c[f >> 2] | 0) + 334 >> 0] | 0)) { Dn(b); l = g; return } e = (c[f >> 2] | 0) + 372 | 0; d = c[e >> 2] | 0; if (c[b >> 2] & 8 | 0) { c[e >> 2] = d + 4; Sn(c[f >> 2] | 0) | 0; l = g; return } c[e >> 2] = d + 132; Nn(c[f >> 2] | 0); l = g; return } function Xr(a) { a = a | 0; var b = 0, d = 0; b = l; l = l + 16 | 0; d = b; c[d >> 2] = a; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; Sn(c[d >> 2] | 0) | 0; l = b; return } function Yr(e) { e = e | 0; var f = 0, g = 0; g = l; l = l + 16 | 0; f = g; c[f >> 2] = e; e = c[f >> 2] | 0; if (!(a[(c[f >> 2] | 0) + 334 >> 0] | 0)) { Dn(e); l = g; return } if (Sn(e) | 0) { l = g; return } else { ln(c[f >> 2] | 0, b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0); e = (c[f >> 2] | 0) + 372 | 0; c[e >> 2] = (c[e >> 2] | 0) + 4; e = (c[f >> 2] | 0) + 335 | 0; a[e >> 0] = d[e >> 0] | 1; Sn(c[f >> 2] | 0) | 0; l = g; return } } function Zr(d) { d = d | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; k = l; l = l + 16 | 0; i = k + 8 | 0; h = k + 4 | 0; j = k; g = k + 14 | 0; f = k + 12 | 0; c[i >> 2] = d; d = c[i >> 2] | 0; if (!(a[(c[i >> 2] | 0) + 334 >> 0] | 0)) { Dn(d); l = k; return } m = c[i >> 2] | 0; c[h >> 2] = c[(a[d + 334 >> 0] | 0 ? m + 120 + 28 | 0 : m + 172 | 0) >> 2]; b[g >> 1] = Vn(c[i >> 2] | 0, c[h >> 2] | 0) | 0; c[j >> 2] = ks(c[i >> 2] | 0, (c[h >> 2] | 0) + 2 | 0) | 0; a: do if (c[c[i >> 2] >> 2] & 2 | 0) { b[f >> 1] = Vn(c[i >> 2] | 0, (c[h >> 2] | 0) + 6 | 0) | 0; switch (e[f >> 1] >> 12 & 15 | 0) { case 8: case 0: break a; default: {} } Hn(c[i >> 2] | 0); l = k; return } while (0); ln(c[i >> 2] | 0, b[g >> 1] | 0); c[(c[i >> 2] | 0) + 152 >> 2] = c[j >> 2]; c[(c[i >> 2] | 0) + 156 >> 2] = c[j >> 2]; f = c[i >> 2] | 0; d = c[h >> 2] | 0; if (c[c[i >> 2] >> 2] & 2 | 0) ms(f, d + 8 | 0); else ms(f, d + 6 | 0); m = (c[i >> 2] | 0) + 372 | 0; c[m >> 2] = (c[m >> 2] | 0) + 20; if (Sn(c[i >> 2] | 0) | 0) { l = k; return } if (Sn(c[i >> 2] | 0) | 0) { l = k; return } c[(c[i >> 2] | 0) + 152 >> 2] = c[j >> 2]; l = k; return } function _r(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 8 | 0; f = g + 4 | 0; d = g; c[b >> 2] = a; a = c[b >> 2] | 0; if (!(c[c[b >> 2] >> 2] & 2)) { Zn(a); l = g; return } if (Sn(a) | 0) { l = g; return } c[d >> 2] = Tn(e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; c[f >> 2] = c[(c[b >> 2] | 0) + 120 + 28 >> 2]; a = ks(c[b >> 2] | 0, c[f >> 2] | 0) | 0; c[(c[b >> 2] | 0) + 156 >> 2] = a; $n(c[b >> 2] | 0, 7, (c[f >> 2] | 0) + 4 + (c[d >> 2] | 0) | 0); f = (c[b >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 16; if (Sn(c[b >> 2] | 0) | 0) { l = g; return } if (Sn(c[b >> 2] | 0) | 0) { l = g; return } c[(c[b >> 2] | 0) + 152 >> 2] = (c[(c[b >> 2] | 0) + 156 >> 2] | 0) - 4; l = g; return } function $r(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; e = d; c[b >> 2] = a; c[e >> 2] = c[(c[b >> 2] | 0) + 120 + 28 >> 2]; a = ks(c[b >> 2] | 0, c[e >> 2] | 0) | 0; c[(c[b >> 2] | 0) + 156 >> 2] = a; $n(c[b >> 2] | 0, 7, (c[e >> 2] | 0) + 4 | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 16; if (Sn(c[b >> 2] | 0) | 0) { l = d; return } if (Sn(c[b >> 2] | 0) | 0) { l = d; return } c[(c[b >> 2] | 0) + 152 >> 2] = (c[(c[b >> 2] | 0) + 156 >> 2] | 0) - 4; l = d; return } function as(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = d; return } a = c[b >> 2] | 0; if ((e[(c[b >> 2] | 0) + 166 >> 1] | 0) & 2 | 0) { Cn(a); l = d; return } else { b = a + 372 | 0; c[b >> 2] = (c[b >> 2] | 0) + 4; l = d; return } } function bs(a) { a = a | 0; var b = 0, d = 0, e = 0; d = l; l = l + 16 | 0; b = d + 4 | 0; e = d; c[b >> 2] = a; c[e >> 2] = c[(c[b >> 2] | 0) + 120 + 28 >> 2]; a = c[b >> 2] | 0; ls(a, (Vn(c[b >> 2] | 0, c[e >> 2] | 0) | 0) & 31); a = ks(c[b >> 2] | 0, (c[e >> 2] | 0) + 2 | 0) | 0; c[(c[b >> 2] | 0) + 156 >> 2] = a; $n(c[b >> 2] | 0, 7, (c[e >> 2] | 0) + 6 | 0); a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 20; if (Sn(c[b >> 2] | 0) | 0) { l = d; return } if (Sn(c[b >> 2] | 0) | 0) { l = d; return } c[(c[b >> 2] | 0) + 152 >> 2] = (c[(c[b >> 2] | 0) + 156 >> 2] | 0) - 4; l = d; return } function cs(b) { b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; h = j + 12 | 0; f = j + 8 | 0; i = j + 4 | 0; g = j; c[h >> 2] = b; b = c[h >> 2] | 0; if (!(c[c[h >> 2] >> 2] & 2)) { Zn(b); l = j; return } d = c[h >> 2] | 0; if (!(a[b + 334 >> 0] | 0)) { Dn(d); l = j; return } if (Sn(d) | 0) { l = j; return } c[f >> 2] = e[(c[h >> 2] | 0) + 160 + 2 >> 1] & 4095; c[i >> 2] = e[(c[h >> 2] | 0) + 160 + 2 >> 1] >> 12 & 15; a: do switch (c[f >> 2] | 0) { case 0: { c[g >> 2] = c[(c[h >> 2] | 0) + 180 >> 2] & 3; break } case 1: { c[g >> 2] = c[(c[h >> 2] | 0) + 184 >> 2] & 3; break } case 2: { b = c[h >> 2] | 0; if (c[c[h >> 2] >> 2] & 4 | 0) { c[g >> 2] = c[b + 176 >> 2]; break a } Zn(b);l = j; return } case 2048: { f = c[h >> 2] | 0;c[g >> 2] = c[(a[(c[h >> 2] | 0) + 334 >> 0] | 0 ? f + 168 | 0 : f + 120 + 28 | 0) >> 2]; break } case 2049: { c[g >> 2] = c[(c[h >> 2] | 0) + 176 >> 2]; break } case 2050: { b = c[h >> 2] | 0; if (c[c[h >> 2] >> 2] & 4 | 0) { c[g >> 2] = c[b + 176 >> 2]; break a } Zn(b);l = j; return } default: { zn(c[h >> 2] | 0);l = j; return } } while (0); d = c[h >> 2] | 0; f = c[i >> 2] & 7; b = c[g >> 2] | 0; if (c[i >> 2] & 8 | 0) { $n(d, f, b); i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 12 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } else { er(d, f, b); i = c[h >> 2] | 0; i = i + 372 | 0; g = c[i >> 2] | 0; g = g + 12 | 0; c[i >> 2] = g; i = c[h >> 2] | 0; Sn(i) | 0; l = j; return } } function ds(b) { b = b | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j + 12 | 0; g = j + 8 | 0; h = j + 4 | 0; i = j; c[f >> 2] = b; b = c[f >> 2] | 0; if (!(c[c[f >> 2] >> 2] & 2)) { Zn(b); l = j; return } d = c[f >> 2] | 0; if (!(a[b + 334 >> 0] | 0)) { Dn(d); l = j; return } if (Sn(d) | 0) { l = j; return } c[g >> 2] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] & 4095; c[h >> 2] = e[(c[f >> 2] | 0) + 160 + 2 >> 1] >> 12 & 15; b = c[f >> 2] | 0; if (c[h >> 2] & 8 | 0) c[i >> 2] = c[b + 120 + ((c[h >> 2] & 7) << 2) >> 2]; else c[i >> 2] = c[b + 88 + ((c[h >> 2] & 7) << 2) >> 2]; a: do switch (c[g >> 2] | 0) { case 0: { c[(c[f >> 2] | 0) + 180 >> 2] = c[i >> 2] & 3; break } case 1: { c[(c[f >> 2] | 0) + 184 >> 2] = c[i >> 2] & 3; break } case 2: { if (c[c[f >> 2] >> 2] & 4 | 0) { c[(c[f >> 2] | 0) + 188 >> 2] = c[i >> 2]; break a } Zn(c[f >> 2] | 0);l = j; return } case 2048: { js(c[f >> 2] | 0, c[i >> 2] | 0); break } case 2049: { c[(c[f >> 2] | 0) + 176 >> 2] = c[i >> 2]; break } case 2050: { if (c[c[f >> 2] >> 2] & 4 | 0) { c[(c[f >> 2] | 0) + 188 >> 2] = c[i >> 2]; break a } Zn(c[f >> 2] | 0);l = j; return } default: { zn(c[f >> 2] | 0);l = j; return } } while (0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 10; Sn(c[f >> 2] | 0) | 0; l = j; return } function es(a) { a = a | 0; var b = 0, d = 0; d = l; l = l + 16 | 0; b = d; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = d; return } Kn(c[b >> 2] | 0, (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 15); l = d; return } function fs(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; b = g + 8 | 0; d = g + 4 | 0; f = g; c[b >> 2] = a; if (Sn(c[b >> 2] | 0) | 0) { l = g; return } else { c[d >> 2] = (e[(c[b >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = Tn(e[(c[b >> 2] | 0) + 160 + 2 >> 1] | 0) | 0; a = (c[b >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 16; $n(c[b >> 2] | 0, 7, (c[(c[b >> 2] | 0) + 120 + 28 >> 2] | 0) - 4 | 0); Rr(c[b >> 2] | 0, c[(c[b >> 2] | 0) + 120 + 28 >> 2] | 0, c[(c[b >> 2] | 0) + 120 + ((c[d >> 2] & 7) << 2) >> 2] | 0); $n(c[b >> 2] | 0, c[d >> 2] | 0, c[(c[b >> 2] | 0) + 120 + 28 >> 2] | 0); $n(c[b >> 2] | 0, 7, (c[(c[b >> 2] | 0) + 120 + 28 >> 2] | 0) + (c[f >> 2] | 0) | 0); Sn(c[b >> 2] | 0) | 0; l = g; return } } function gs(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 8 | 0; f = g + 4 | 0; b = g; c[d >> 2] = a; c[f >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[b >> 2] = c[(c[d >> 2] | 0) + 120 + ((c[f >> 2] & 7) << 2) >> 2]; if ((c[c[d >> 2] >> 2] & 1 | 0) == 0 ? c[b >> 2] & 1 | 0 : 0) { pn(c[d >> 2] | 0, c[b >> 2] | 0, 1, 0); l = g; return } a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 12; $n(c[d >> 2] | 0, 7, c[b >> 2] | 0); a = c[d >> 2] | 0; f = c[f >> 2] | 0; $n(a, f, ks(c[d >> 2] | 0, c[b >> 2] | 0) | 0); $n(c[d >> 2] | 0, 7, (c[(c[d >> 2] | 0) + 120 + 28 >> 2] | 0) + 4 | 0); Sn(c[d >> 2] | 0) | 0; l = g; return } function hs(b) { b = b | 0; var d = 0, f = 0, g = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = b; b = c[d >> 2] | 0; if (!(a[(c[d >> 2] | 0) + 334 >> 0] | 0)) { Dn(b); l = g; return } else { c[f >> 2] = c[b + 120 + ((e[(c[d >> 2] | 0) + 160 >> 1] & 7) << 2) >> 2]; js(c[d >> 2] | 0, c[f >> 2] | 0); f = (c[d >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 4; Sn(c[d >> 2] | 0) | 0; l = g; return } } function is(b) { b = b | 0; var d = 0, f = 0, g = 0, h = 0; g = l; l = l + 16 | 0; d = g + 4 | 0; f = g; c[d >> 2] = b; b = c[d >> 2] | 0; if (!(a[(c[d >> 2] | 0) + 334 >> 0] | 0)) { Dn(b); l = g; return } else { h = c[d >> 2] | 0; c[f >> 2] = c[(a[b + 334 >> 0] | 0 ? h + 168 | 0 : h + 120 + 28 | 0) >> 2]; $n(c[d >> 2] | 0, e[(c[d >> 2] | 0) + 160 >> 1] & 7, c[f >> 2] | 0); f = (c[d >> 2] | 0) + 372 | 0; c[f >> 2] = (c[f >> 2] | 0) + 4; Sn(c[d >> 2] | 0) | 0; l = g; return } } function js(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; d = c[f >> 2] | 0; c[(a[(c[f >> 2] | 0) + 334 >> 0] | 0 ? d + 168 | 0 : d + 120 + 28 | 0) >> 2] = c[g >> 2]; l = e; return } function ks(a, b) { a = a | 0; b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 16 | 0; g = i + 12 | 0; f = i + 8 | 0; e = i + 4 | 0; h = i; c[f >> 2] = a; c[e >> 2] = b; c[e >> 2] = c[e >> 2] & 16777215; b = c[f >> 2] | 0; if (((c[e >> 2] | 0) + 3 | 0) >>> 0 < (c[(c[f >> 2] | 0) + 36 >> 2] | 0) >>> 0) { c[h >> 2] = d[(c[b + 32 >> 2] | 0) + (c[e >> 2] | 0) >> 0]; c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 1) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 2) >> 0] | 0); c[h >> 2] = c[h >> 2] << 8 | (d[(c[(c[f >> 2] | 0) + 32 >> 2] | 0) + ((c[e >> 2] | 0) + 3) >> 0] | 0); c[g >> 2] = c[h >> 2]; h = c[g >> 2] | 0; l = i; return h | 0 } else { c[g >> 2] = Vb[c[b + 16 >> 2] & 31](c[(c[f >> 2] | 0) + 4 >> 2] | 0, c[e >> 2] | 0) | 0; h = c[g >> 2] | 0; l = i; return h | 0 } return 0 } function ls(f, g) { f = f | 0; g = g | 0; var h = 0, i = 0, j = 0; h = l; l = l + 16 | 0; i = h; j = h + 4 | 0; c[i >> 2] = f; a[j >> 0] = g; b[(c[i >> 2] | 0) + 166 >> 1] = (e[(c[i >> 2] | 0) + 166 >> 1] | 0) & 65280 | (d[j >> 0] | 0) & 255; l = h; return } function ms(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0; e = l; l = l + 16 | 0; f = e + 4 | 0; g = e; c[f >> 2] = b; c[g >> 2] = d; d = c[f >> 2] | 0; c[(a[(c[f >> 2] | 0) + 334 >> 0] | 0 ? d + 120 + 28 | 0 : d + 172 | 0) >> 2] = c[g >> 2]; l = e; return } function ns(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 16 | 0; f = k + 4 | 0; j = k; c[g >> 2] = a; if (Sn(c[g >> 2] | 0) | 0) { l = k; return } b[i >> 1] = b[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0; c[f >> 2] = c[(c[g >> 2] | 0) + 120 + (((e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2]; if ((e[i >> 1] | 0 | 0 ? (c[c[g >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[f >> 2] & 1 | 0 : 0) { pn(c[g >> 2] | 0, c[f >> 2] | 0, 1, 0); l = k; return } c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 16) break; if ((e[i >> 1] | 0) & 1 | 0) { c[j >> 2] = ks(c[g >> 2] | 0, c[f >> 2] | 0) | 0; a = c[g >> 2] | 0; d = c[h >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 < 8) er(a, d, c[j >> 2] | 0); else $n(a, d - 8 | 0, c[j >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 4; d = (c[g >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 8 } b[i >> 1] = (e[i >> 1] | 0) >> 1; c[h >> 2] = (c[h >> 2] | 0) + 1 } $n(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7, c[f >> 2] | 0); j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 12; Sn(c[g >> 2] | 0) | 0; l = k; return } function os(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 16 | 0; f = k + 4 | 0; j = k; c[g >> 2] = a; if (Sn(c[g >> 2] | 0) | 0) { l = k; return } b[i >> 1] = b[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 2028, 32) | 0) { l = k; return } a = c[g >> 2] | 0; if ((c[(c[g >> 2] | 0) + 340 >> 2] | 0) != 2) { zn(a); l = k; return } c[f >> 2] = c[a + 344 >> 2]; if ((e[i >> 1] | 0 | 0 ? (c[c[g >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[f >> 2] & 1 | 0 : 0) { pn(c[g >> 2] | 0, c[f >> 2] | 0, 1, 0); l = k; return } c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 16) break; if ((e[i >> 1] | 0) & 1 | 0) { c[j >> 2] = ks(c[g >> 2] | 0, c[f >> 2] | 0) | 0; a = c[g >> 2] | 0; d = c[h >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 < 8) er(a, d, c[j >> 2] | 0); else $n(a, d - 8 | 0, c[j >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 4; d = (c[g >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 8 } b[i >> 1] = (e[i >> 1] | 0) >> 1; c[h >> 2] = (c[h >> 2] | 0) + 1 } j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 12; Sn(c[g >> 2] | 0) | 0; l = k; return } function ps(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 16 | 0; f = k + 4 | 0; j = k; c[g >> 2] = a; if (Sn(c[g >> 2] | 0) | 0) { l = k; return } b[i >> 1] = b[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0; c[f >> 2] = c[(c[g >> 2] | 0) + 120 + (((e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2]; if ((e[i >> 1] | 0 | 0 ? (c[c[g >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[f >> 2] & 1 | 0 : 0) { pn(c[g >> 2] | 0, c[f >> 2] | 0, 1, 0); l = k; return } c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 16) break; if ((e[i >> 1] | 0) & 1 | 0) { c[j >> 2] = (Vn(c[g >> 2] | 0, c[f >> 2] | 0) | 0) & 65535; c[j >> 2] = Tn(c[j >> 2] | 0) | 0; a = c[g >> 2] | 0; d = c[h >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 < 8) er(a, d, c[j >> 2] | 0); else $n(a, d - 8 | 0, c[j >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 2; d = (c[g >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 4 } b[i >> 1] = (e[i >> 1] | 0) >> 1; c[h >> 2] = (c[h >> 2] | 0) + 1 } $n(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 7, c[f >> 2] | 0); j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 12; Sn(c[g >> 2] | 0) | 0; l = k; return } function qs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; k = l; l = l + 32 | 0; g = k + 12 | 0; h = k + 8 | 0; i = k + 16 | 0; f = k + 4 | 0; j = k; c[g >> 2] = a; if (Sn(c[g >> 2] | 0) | 0) { l = k; return } b[i >> 1] = b[(c[g >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[g >> 2] | 0, (e[(c[g >> 2] | 0) + 160 >> 1] | 0) & 63, 2028, 16) | 0) { l = k; return } a = c[g >> 2] | 0; if ((c[(c[g >> 2] | 0) + 340 >> 2] | 0) != 2) { zn(a); l = k; return } c[f >> 2] = c[a + 344 >> 2]; if ((e[i >> 1] | 0 | 0 ? (c[c[g >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[f >> 2] & 1 | 0 : 0) { pn(c[g >> 2] | 0, c[f >> 2] | 0, 1, 0); l = k; return } c[h >> 2] = 0; while (1) { if ((c[h >> 2] | 0) >>> 0 >= 16) break; if ((e[i >> 1] | 0) & 1 | 0) { c[j >> 2] = (Vn(c[g >> 2] | 0, c[f >> 2] | 0) | 0) & 65535; c[j >> 2] = Tn(c[j >> 2] | 0) | 0; a = c[g >> 2] | 0; d = c[h >> 2] | 0; if ((c[h >> 2] | 0) >>> 0 < 8) er(a, d, c[j >> 2] | 0); else $n(a, d - 8 | 0, c[j >> 2] | 0); c[f >> 2] = (c[f >> 2] | 0) + 2; d = (c[g >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 4 } b[i >> 1] = (e[i >> 1] | 0) >> 1; c[h >> 2] = (c[h >> 2] | 0) + 1 } j = (c[g >> 2] | 0) + 372 | 0; c[j >> 2] = (c[j >> 2] | 0) + 12; Sn(c[g >> 2] | 0) | 0; l = k; return } function rs(a) { a = a | 0; var b = 0, d = 0, f = 0; f = l; l = l + 16 | 0; b = f + 4 | 0; d = f; c[b >> 2] = a; if (c[(c[b >> 2] | 0) + 64 >> 2] | 0 ? (c[d >> 2] = c[(c[b >> 2] | 0) + 152 >> 2], (Vb[c[(c[b >> 2] | 0) + 64 >> 2] & 31](c[(c[b >> 2] | 0) + 60 >> 2] | 0, e[(c[b >> 2] | 0) + 160 + 4 >> 1] | 0) | 0) == 0) : 0) { if ((c[(c[b >> 2] | 0) + 152 >> 2] | 0) == (c[d >> 2] | 0)) { if (Sn(c[b >> 2] | 0) | 0) { l = f; return } if (Sn(c[b >> 2] | 0) | 0) { l = f; return } } d = (c[b >> 2] | 0) + 372 | 0; c[d >> 2] = (c[d >> 2] | 0) + 8; l = f; return } zn(c[b >> 2] | 0); l = f; return } function ss(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0, h = 0; b = l; l = l + 16 | 0; d = b + 12 | 0; g = b + 8 | 0; h = b + 4 | 0; f = b; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[h >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2] & 65535; a = c[h >> 2] | 0; c[f >> 2] = c[h >> 2] & 32768 | 0 ? a | -65536 : a; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; iu(c[d >> 2] | 0, 15, c[f >> 2] | 0); er(c[d >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0); Sn(c[d >> 2] | 0) | 0; l = b; return } function ts(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; f = j + 12 | 0; g = j + 8 | 0; h = j + 16 | 0; d = j + 4 | 0; i = j; c[f >> 2] = a; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } b[h >> 1] = b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; c[d >> 2] = c[(c[f >> 2] | 0) + 120 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2]; if ((e[h >> 1] | 0 | 0 ? (c[c[f >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[d >> 2] & 1 | 0 : 0) { pn(c[f >> 2] | 0, c[d >> 2] | 0, 1, 1); l = j; return } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 16) break; if ((e[h >> 1] | 0) & 1 | 0) { c[d >> 2] = (c[d >> 2] | 0) - 4; a = c[f >> 2] | 0; if ((c[g >> 2] | 0) >>> 0 < 8) c[i >> 2] = c[a + 120 + ((7 - (c[g >> 2] | 0) & 7) << 2) >> 2]; else c[i >> 2] = c[a + 88 + ((15 - (c[g >> 2] | 0) & 7) << 2) >> 2]; Rr(c[f >> 2] | 0, c[d >> 2] | 0, c[i >> 2] | 0); a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8 } b[h >> 1] = (e[h >> 1] | 0) >> 1; c[g >> 2] = (c[g >> 2] | 0) + 1 } $n(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7, c[d >> 2] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; Sn(c[f >> 2] | 0) | 0; l = j; return } function us(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 32 | 0; f = j + 12 | 0; g = j + 8 | 0; h = j + 16 | 0; d = j + 4 | 0; i = j; c[f >> 2] = a; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } b[h >> 1] = b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 484, 32) | 0) { l = j; return } a = c[f >> 2] | 0; if ((c[(c[f >> 2] | 0) + 340 >> 2] | 0) != 2) { zn(a); l = j; return } c[d >> 2] = c[a + 344 >> 2]; if ((e[h >> 1] | 0 | 0 ? (c[c[f >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[d >> 2] & 1 | 0 : 0) { pn(c[f >> 2] | 0, c[d >> 2] | 0, 1, 1); l = j; return } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 16) break; if ((e[h >> 1] | 0) & 1 | 0) { a = c[f >> 2] | 0; if ((c[g >> 2] | 0) >>> 0 < 8) c[i >> 2] = c[a + 88 + ((c[g >> 2] & 7) << 2) >> 2]; else c[i >> 2] = c[a + 120 + (((c[g >> 2] | 0) - 8 & 7) << 2) >> 2]; Rr(c[f >> 2] | 0, c[d >> 2] | 0, c[i >> 2] | 0); c[d >> 2] = (c[d >> 2] | 0) + 4; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 8 } b[h >> 1] = (e[h >> 1] | 0) >> 1; c[g >> 2] = (c[g >> 2] | 0) + 1 } i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; Sn(c[f >> 2] | 0) | 0; l = j; return } function vs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0; d = l; l = l + 16 | 0; f = d + 4 | 0; h = d; i = d + 10 | 0; g = d + 8 | 0; c[f >> 2] = a; c[h >> 2] = (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7; b[i >> 1] = c[(c[f >> 2] | 0) + 88 + ((c[h >> 2] & 7) << 2) >> 2] & 255; a = e[i >> 1] | 0; b[g >> 1] = (e[i >> 1] | 0) & 128 | 0 ? a | 65280 : a; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; hu(c[f >> 2] | 0, 15, b[g >> 1] | 0); Un(c[f >> 2] | 0, c[h >> 2] | 0, b[g >> 1] | 0); Sn(c[f >> 2] | 0) | 0; l = d; return } function ws(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j + 14 | 0; i = j + 12 | 0; d = j; c[f >> 2] = a; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } b[h >> 1] = b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; c[d >> 2] = c[(c[f >> 2] | 0) + 120 + (((e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7) << 2) >> 2]; if ((e[h >> 1] | 0 | 0 ? (c[c[f >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[d >> 2] & 1 | 0 : 0) { pn(c[f >> 2] | 0, c[d >> 2] | 0, 1, 1); l = j; return } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 16) break; if ((e[h >> 1] | 0) & 1 | 0) { c[d >> 2] = (c[d >> 2] | 0) - 2; a = c[f >> 2] | 0; if ((c[g >> 2] | 0) >>> 0 < 8) b[i >> 1] = c[a + 120 + ((7 - (c[g >> 2] | 0) & 7) << 2) >> 2]; else b[i >> 1] = c[a + 88 + ((15 - (c[g >> 2] | 0) & 7) << 2) >> 2]; ys(c[f >> 2] | 0, c[d >> 2] | 0, b[i >> 1] | 0); a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4 } b[h >> 1] = (e[h >> 1] | 0) >> 1; c[g >> 2] = (c[g >> 2] | 0) + 1 } $n(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 7, c[d >> 2] | 0); i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; Sn(c[f >> 2] | 0) | 0; l = j; return } function xs(a) { a = a | 0; var d = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = l; l = l + 16 | 0; f = j + 8 | 0; g = j + 4 | 0; h = j + 14 | 0; i = j + 12 | 0; d = j; c[f >> 2] = a; if (Sn(c[f >> 2] | 0) | 0) { l = j; return } b[h >> 1] = b[(c[f >> 2] | 0) + 160 + 2 >> 1] | 0; if (Xn(c[f >> 2] | 0, (e[(c[f >> 2] | 0) + 160 >> 1] | 0) & 63, 484, 16) | 0) { l = j; return } a = c[f >> 2] | 0; if ((c[(c[f >> 2] | 0) + 340 >> 2] | 0) != 2) { zn(a); l = j; return } c[d >> 2] = c[a + 344 >> 2]; if ((e[h >> 1] | 0 | 0 ? (c[c[f >> 2] >> 2] & 1 | 0) == 0 : 0) ? c[d >> 2] & 1 | 0 : 0) { pn(c[f >> 2] | 0, c[d >> 2] | 0, 1, 1); l = j; return } c[g >> 2] = 0; while (1) { if ((c[g >> 2] | 0) >>> 0 >= 16) break; if ((e[h >> 1] | 0) & 1 | 0) { a = c[f >> 2] | 0; if ((c[g >> 2] | 0) >>> 0 < 8) b[i >> 1] = c[a + 88 + ((c[g >> 2] & 7) << 2) >> 2]; else b[i >> 1] = c[a + 120 + (((c[g >> 2] | 0) - 8 & 7) << 2) >> 2]; ys(c[f >> 2] | 0, c[d >> 2] | 0, b[i >> 1] | 0); c[d >> 2] = (c[d >> 2] | 0) + 2; a = (c[f >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4 } b[h >> 1] = (e[h >> 1] | 0) >> 1; c[g >> 2] = (c[g >> 2] | 0) + 1 } i = (c[f >> 2] | 0) + 372 | 0; c[i >> 2] = (c[i >> 2] | 0) + 8; Sn(c[f >> 2] | 0) | 0; l = j; return } function ys(d, f, g) { d = d | 0; f = f | 0; g = g | 0; var h = 0, i = 0, j = 0, k = 0; k = l; l = l + 16 | 0; i = k + 4 | 0; h = k; j = k + 8 | 0; c[i >> 2] = d; c[h >> 2] = f; b[j >> 1] = g; c[h >> 2] = c[h >> 2] & 16777215; if (((c[h >> 2] | 0) + 1 | 0) >>> 0 < (c[(c[i >> 2] | 0) + 36 >> 2] | 0) >>> 0) { a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + (c[h >> 2] | 0) >> 0] = (e[j >> 1] | 0) >> 8; a[(c[(c[i >> 2] | 0) + 32 >> 2] | 0) + ((c[h >> 2] | 0) + 1) >> 0] = e[j >> 1] | 0; l = k; return } else { Sb[c[(c[i >> 2] | 0) + 24 >> 2] & 31](c[(c[i >> 2] | 0) + 4 >> 2] | 0, c[h >> 2] | 0, b[j >> 1] | 0); l = k; return } } function zs(a) { a = a | 0; var b = 0, d = 0, f = 0, g = 0; b = l; l = l + 16 | 0; d = b + 8 | 0; g = b + 4 | 0; f = b; c[d >> 2] = a; c[g >> 2] = (e[(c[d >> 2] | 0) + 160 >> 1] | 0) & 7; c[f >> 2] = c[(c[d >> 2] | 0) + 88 + ((c[g >> 2] & 7) << 2) >> 2]; c[f >> 2] = c[f >> 2] << 16 | (c[f >> 2] | 0) >>> 16; a = (c[d >> 2] | 0) + 372 | 0; c[a >> 2] = (c[a >> 2] | 0) + 4; iu(c[d >> 2] | 0, 15, c[f >> 2] | 0); er(c[d >> 2] | 0, c[g >> 2] | 0, c[f >> 2] | 0); Sn(c[d >> 2] | 0) | 0; l = b; return } function As(a, d, f) { a = a | 0; d = d | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; i = l; l = l + 16 | 0; g = i + 4 | 0; h = i; j = i + 8 | 0; c[g >> 2] = a; c[h >> 2] = d; b[j >> 1] = f; c[h >> 2] = c[h >> 2] & 7; c[(c[g >> 2] | 0) + 120 + (c[h >> 2] << 2) >> 2] = (e[j >> 1] | 0) & 65535; if (!((e[j >> 1] | 0) & 32768)) { l = i; return } j = (c[g >> 2] | 0) + 120 + (c[h >> 2] << 2) | 0; c[j >> 2] = c[j >> 2] | -65536; l = i; return } function yP(b, e, f, g, h, i) { b = b | 0; e = +e; f = f | 0; g = g | 0; h = h | 0; i = i | 0; var j = 0, k = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0.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, G = 0, H = 0; H = l; l = l + 560 | 0; m = H + 8 | 0; u = H; G = H + 524 | 0; F = G; n = H + 512 | 0; c[u >> 2] = 0; E = n + 12 | 0; zP(e) | 0; if ((D | 0) < 0) { C = 1; A = 52204; e = -e } else { C = (h & 2049 | 0) != 0 & 1; A = (h & 2048 | 0) == 0 ? ((h & 1 | 0) == 0 ? 52205 : 52210) : 52207 } zP(e) | 0; B = D & 2146435072; do if (B >>> 0 < 2146435072 | (B | 0) == 2146435072 & 0 < 0) { r = +AP(e, u) * 2.0; j = r != 0.0; if (j) c[u >> 2] = (c[u >> 2] | 0) + -1; w = i | 32; if ((w | 0) == 97) { s = i & 32; q = (s | 0) == 0 ? A : A + 9 | 0; p = C | 2; j = 12 - g | 0; do if (!(g >>> 0 > 11 | (j | 0) == 0)) { e = 8.0; do { j = j + -1 | 0; e = e * 16.0 } while ((j | 0) != 0); if ((a[q >> 0] | 0) == 45) { e = -(e + (-r - e)); break } else { e = r + e - e; break } } else e = r; while (0); k = c[u >> 2] | 0; j = (k | 0) < 0 ? 0 - k | 0 : k; j = tP(j, ((j | 0) < 0) << 31 >> 31, E) | 0; if ((j | 0) == (E | 0)) { j = n + 11 | 0; a[j >> 0] = 48 } a[j + -1 >> 0] = (k >> 31 & 2) + 43; o = j + -2 | 0; a[o >> 0] = i + 15; m = (g | 0) < 1; n = (h & 8 | 0) == 0; k = G; while (1) { C = ~~e; j = k + 1 | 0; a[k >> 0] = d[52239 + C >> 0] | s; e = (e - +(C | 0)) * 16.0; if ((j - F | 0) == 1 ? !(n & (m & e == 0.0)) : 0) { a[j >> 0] = 46; j = k + 2 | 0 } if (!(e != 0.0)) break; else k = j } C = j - F | 0; F = E - o | 0; E = (g | 0) != 0 & (C + -2 | 0) < (g | 0) ? g + 2 | 0 : C; j = F + p + E | 0; wP(b, 32, f, j, h); oP(b, q, p); wP(b, 48, f, j, h ^ 65536); oP(b, G, C); wP(b, 48, E - C | 0, 0, 0); oP(b, o, F); wP(b, 32, f, j, h ^ 8192); break } k = (g | 0) < 0 ? 6 : g; if (j) { j = (c[u >> 2] | 0) + -28 | 0; c[u >> 2] = j; e = r * 268435456.0 } else { j = c[u >> 2] | 0; e = r } B = (j | 0) < 0 ? m : m + 288 | 0; m = B; do { y = ~~e >>> 0; c[m >> 2] = y; m = m + 4 | 0; e = (e - +(y >>> 0)) * 1.0e9 } while (e != 0.0); if ((j | 0) > 0) { n = B; o = m; while (1) { p = (j | 0) < 29 ? j : 29; j = o + -4 | 0; if (j >>> 0 >= n >>> 0) { m = 0; do { x = SQ(c[j >> 2] | 0, 0, p | 0) | 0; x = OQ(x | 0, D | 0, m | 0, 0) | 0; y = D; v = WQ(x | 0, y | 0, 1e9, 0) | 0; c[j >> 2] = v; m = ZQ(x | 0, y | 0, 1e9, 0) | 0; j = j + -4 | 0 } while (j >>> 0 >= n >>> 0); if (m) { n = n + -4 | 0; c[n >> 2] = m } } m = o; while (1) { if (m >>> 0 <= n >>> 0) break; j = m + -4 | 0; if (!(c[j >> 2] | 0)) m = j; else break } j = (c[u >> 2] | 0) - p | 0; c[u >> 2] = j; if ((j | 0) > 0) o = m; else break } } else n = B; if ((j | 0) < 0) { g = ((k + 25 | 0) / 9 | 0) + 1 | 0; t = (w | 0) == 102; do { s = 0 - j | 0; s = (s | 0) < 9 ? s : 9; if (n >>> 0 < m >>> 0) { p = (1 << s) + -1 | 0; o = 1e9 >>> s; q = 0; j = n; do { y = c[j >> 2] | 0; c[j >> 2] = (y >>> s) + q; q = S(y & p, o) | 0; j = j + 4 | 0 } while (j >>> 0 < m >>> 0); j = (c[n >> 2] | 0) == 0 ? n + 4 | 0 : n; if (!q) { n = j; j = m } else { c[m >> 2] = q; n = j; j = m + 4 | 0 } } else { n = (c[n >> 2] | 0) == 0 ? n + 4 | 0 : n; j = m } m = t ? B : n; m = (j - m >> 2 | 0) > (g | 0) ? m + (g << 2) | 0 : j; j = (c[u >> 2] | 0) + s | 0; c[u >> 2] = j } while ((j | 0) < 0); j = n; g = m } else { j = n; g = m } y = B; if (j >>> 0 < g >>> 0) { m = (y - j >> 2) * 9 | 0; o = c[j >> 2] | 0; if (o >>> 0 >= 10) { n = 10; do { n = n * 10 | 0; m = m + 1 | 0 } while (o >>> 0 >= n >>> 0) } } else m = 0; t = (w | 0) == 103; v = (k | 0) != 0; n = k - ((w | 0) != 102 ? m : 0) + ((v & t) << 31 >> 31) | 0; if ((n | 0) < (((g - y >> 2) * 9 | 0) + -9 | 0)) { o = n + 9216 | 0; n = B + 4 + (((o | 0) / 9 | 0) + -1024 << 2) | 0; o = ((o | 0) % 9 | 0) + 1 | 0; if ((o | 0) < 9) { p = 10; do { p = p * 10 | 0; o = o + 1 | 0 } while ((o | 0) != 9) } else p = 10; q = c[n >> 2] | 0; s = (q >>> 0) % (p >>> 0) | 0; o = (n + 4 | 0) == (g | 0); if (!(o & (s | 0) == 0)) { r = (((q >>> 0) / (p >>> 0) | 0) & 1 | 0) == 0 ? 9007199254740992.0 : 9007199254740994.0; x = (p | 0) / 2 | 0; e = s >>> 0 < x >>> 0 ? .5 : o & (s | 0) == (x | 0) ? 1.0 : 1.5; if (C) { x = (a[A >> 0] | 0) == 45; r = x ? -r : r; e = x ? -e : e } o = q - s | 0; c[n >> 2] = o; if (r + e != r) { x = o + p | 0; c[n >> 2] = x; if (x >>> 0 > 999999999) { m = n; while (1) { n = m + -4 | 0; c[m >> 2] = 0; if (n >>> 0 < j >>> 0) { j = j + -4 | 0; c[j >> 2] = 0 } x = (c[n >> 2] | 0) + 1 | 0; c[n >> 2] = x; if (x >>> 0 > 999999999) m = n; else break } } m = (y - j >> 2) * 9 | 0; p = c[j >> 2] | 0; if (p >>> 0 >= 10) { o = 10; do { o = o * 10 | 0; m = m + 1 | 0 } while (p >>> 0 >= o >>> 0) } } } w = n + 4 | 0; x = j; j = g >>> 0 > w >>> 0 ? w : g } else { x = j; j = g } w = j; while (1) { if (w >>> 0 <= x >>> 0) { u = 0; break } j = w + -4 | 0; if (!(c[j >> 2] | 0)) w = j; else { u = 1; break } } g = 0 - m | 0; do if (t) { j = ((v ^ 1) & 1) + k | 0; if ((j | 0) > (m | 0) & (m | 0) > -5) { k = j + -1 - m | 0; o = i + -1 | 0 } else { k = j + -1 | 0; o = i + -2 | 0 } j = h & 8; if (!j) { if (u ? (z = c[w + -4 >> 2] | 0, (z | 0) != 0) : 0) if (!((z >>> 0) % 10 | 0)) { j = 10; n = 0; do { j = j * 10 | 0; n = n + 1 | 0 } while (!((z >>> 0) % (j >>> 0) | 0 | 0)) } else n = 0; else n = 9; j = ((w - y >> 2) * 9 | 0) + -9 | 0; if ((o | 32 | 0) == 102) { i = j - n | 0; i = (i | 0) > 0 ? i : 0; s = 0; k = (k | 0) < (i | 0) ? k : i; break } else { i = j + m - n | 0; i = (i | 0) > 0 ? i : 0; s = 0; k = (k | 0) < (i | 0) ? k : i; break } } else s = j } else { s = h & 8; o = i } while (0); t = k | s; p = (t | 0) != 0 & 1; q = (o | 32 | 0) == 102; if (q) { v = 0; j = (m | 0) > 0 ? m : 0 } else { j = (m | 0) < 0 ? g : m; j = tP(j, ((j | 0) < 0) << 31 >> 31, E) | 0; n = E; if ((n - j | 0) < 2) do { j = j + -1 | 0; a[j >> 0] = 48 } while ((n - j | 0) < 2); a[j + -1 >> 0] = (m >> 31 & 2) + 43; j = j + -2 | 0; a[j >> 0] = o; v = j; j = n - j | 0 } j = C + 1 + k + p + j | 0; wP(b, 32, f, j, h); oP(b, A, C); wP(b, 48, f, j, h ^ 65536); if (q) { p = x >>> 0 > B >>> 0 ? B : x; s = G + 9 | 0; q = s; o = G + 8 | 0; n = p; do { m = tP(c[n >> 2] | 0, 0, s) | 0; if ((n | 0) == (p | 0)) { if ((m | 0) == (s | 0)) { a[o >> 0] = 48; m = o } } else if (m >>> 0 > G >>> 0) { TQ(G | 0, 48, m - F | 0) | 0; do m = m + -1 | 0; while (m >>> 0 > G >>> 0) } oP(b, m, q - m | 0); n = n + 4 | 0 } while (n >>> 0 <= B >>> 0); if (t | 0) oP(b, 52255, 1); if (n >>> 0 < w >>> 0 & (k | 0) > 0) while (1) { m = tP(c[n >> 2] | 0, 0, s) | 0; if (m >>> 0 > G >>> 0) { TQ(G | 0, 48, m - F | 0) | 0; do m = m + -1 | 0; while (m >>> 0 > G >>> 0) } oP(b, m, (k | 0) < 9 ? k : 9); n = n + 4 | 0; m = k + -9 | 0; if (!(n >>> 0 < w >>> 0 & (k | 0) > 9)) { k = m; break } else k = m } wP(b, 48, k + 9 | 0, 9, 0) } else { u = u ? w : x + 4 | 0; if ((k | 0) > -1) { t = G + 9 | 0; g = (s | 0) == 0; s = t; o = 0 - F | 0; q = G + 8 | 0; p = x; do { m = tP(c[p >> 2] | 0, 0, t) | 0; if ((m | 0) == (t | 0)) { a[q >> 0] = 48; m = q } do if ((p | 0) == (x | 0)) { n = m + 1 | 0; oP(b, m, 1); if (g & (k | 0) < 1) { m = n; break } oP(b, 52255, 1); m = n } else { if (m >>> 0 <= G >>> 0) break; TQ(G | 0, 48, m + o | 0) | 0; do m = m + -1 | 0; while (m >>> 0 > G >>> 0) } while (0); F = s - m | 0; oP(b, m, (k | 0) > (F | 0) ? F : k); k = k - F | 0; p = p + 4 | 0 } while (p >>> 0 < u >>> 0 & (k | 0) > -1) } wP(b, 48, k + 18 | 0, 18, 0); oP(b, v, E - v | 0) } wP(b, 32, f, j, h ^ 8192) } else { G = (i & 32 | 0) != 0; j = C + 3 | 0; wP(b, 32, f, j, h & -65537); oP(b, A, C); oP(b, e != e | 0.0 != 0.0 ? (G ? 52231 : 52235) : G ? 52223 : 52227, 3); wP(b, 32, f, j, h ^ 8192) } while (0); l = H; return ((j | 0) < (f | 0) ? f : j) | 0 } function zP(a) { a = +a; var b = 0; h[j >> 3] = a; b = c[j >> 2] | 0; D = c[j + 4 >> 2] | 0; return b | 0 } function AP(a, b) { a = +a; b = b | 0; return +(+BP(a, b)) } function BP(a, b) { a = +a; b = b | 0; var d = 0, e = 0, f = 0; h[j >> 3] = a; d = c[j >> 2] | 0; e = c[j + 4 >> 2] | 0; f = PQ(d | 0, e | 0, 52) | 0; switch (f & 2047) { case 0: { if (a != 0.0) { a = +BP(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[j >> 2] = d;c[j + 4 >> 2] = e & -2146435073 | 1071644672;a = +h[j >> 3] } } return +a } function CP(b, d, e) { b = b | 0; d = d | 0; e = e | 0; do if (b) { if (d >>> 0 < 128) { a[b >> 0] = d; b = 1; break } if (!(c[c[(DP() | 0) + 188 >> 2] >> 2] | 0)) if ((d & -128 | 0) == 57216) { a[b >> 0] = d; b = 1; break } else { c[(XO() | 0) >> 2] = 84; b = -1; break } if (d >>> 0 < 2048) { a[b >> 0] = d >>> 6 | 192; a[b + 1 >> 0] = d & 63 | 128; b = 2; break } if (d >>> 0 < 55296 | (d & -8192 | 0) == 57344) { a[b >> 0] = d >>> 12 | 224; a[b + 1 >> 0] = d >>> 6 & 63 | 128; a[b + 2 >> 0] = d & 63 | 128; b = 3; break } if ((d + -65536 | 0) >>> 0 < 1048576) { a[b >> 0] = d >>> 18 | 240; a[b + 1 >> 0] = d >>> 12 & 63 | 128; a[b + 2 >> 0] = d >>> 6 & 63 | 128; a[b + 3 >> 0] = d & 63 | 128; b = 4; break } else { c[(XO() | 0) >> 2] = 84; b = -1; break } } else b = 1; while (0); return b | 0 } function DP() { return ZO() | 0 } function EP() { return ZO() | 0 } function FP(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0; f = 0; while (1) { if ((d[52257 + f >> 0] | 0) == (b | 0)) { g = 2; break } f = f + 1 | 0; if ((f | 0) == 87) { f = 87; b = 52345; g = 5; break } } if ((g | 0) == 2) if (!f) f = 52345; else { b = 52345; g = 5 } if ((g | 0) == 5) while (1) { do { g = b; b = b + 1 | 0 } while ((a[g >> 0] | 0) != 0); f = f + -1 | 0; if (!f) { f = b; break } else g = 5 } return GP(f, c[e + 20 >> 2] | 0) | 0 } function GP(a, b) { a = a | 0; b = b | 0; return HP(a, b) | 0 } function HP(a, b) { a = a | 0; b = b | 0; if (!b) b = 0; else b = IP(c[b >> 2] | 0, c[b + 4 >> 2] | 0, a) | 0; return (b | 0 ? b : a) | 0 } function IP(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0; o = (c[b >> 2] | 0) + 1794895138 | 0; h = JP(c[b + 8 >> 2] | 0, o) | 0; f = JP(c[b + 12 >> 2] | 0, o) | 0; g = JP(c[b + 16 >> 2] | 0, o) | 0; a: do if ((h >>> 0 < d >>> 2 >>> 0 ? (n = d - (h << 2) | 0, f >>> 0 < n >>> 0 & g >>> 0 < n >>> 0) : 0) ? ((g | f) & 3 | 0) == 0 : 0) { n = f >>> 2; m = g >>> 2; l = 0; while (1) { k = h >>> 1; j = l + k | 0; i = j << 1; g = i + n | 0; f = JP(c[b + (g << 2) >> 2] | 0, o) | 0; g = JP(c[b + (g + 1 << 2) >> 2] | 0, o) | 0; if (!(g >>> 0 < d >>> 0 & f >>> 0 < (d - g | 0) >>> 0)) { f = 0; break a } if (a[b + (g + f) >> 0] | 0) { f = 0; break a } f = fP(e, b + g | 0) | 0; if (!f) break; f = (f | 0) < 0; if ((h | 0) == 1) { f = 0; break a } else { l = f ? l : j; h = f ? k : h - k | 0 } } f = i + m | 0; g = JP(c[b + (f << 2) >> 2] | 0, o) | 0; f = JP(c[b + (f + 1 << 2) >> 2] | 0, o) | 0; if (f >>> 0 < d >>> 0 & g >>> 0 < (d - f | 0) >>> 0) f = (a[b + (f + g) >> 0] | 0) == 0 ? b + f | 0 : 0; else f = 0 } else f = 0; while (0); return f | 0 } function JP(a, b) { a = a | 0; b = b | 0; var c = 0; c = YQ(a | 0) | 0; return ((b | 0) == 0 ? a : c) | 0 } function KP(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0; g = e + 16 | 0; f = c[g >> 2] | 0; if (!f) if (!(LP(e) | 0)) { f = c[g >> 2] | 0; h = 5 } else f = 0; else h = 5; a: do if ((h | 0) == 5) { j = e + 20 | 0; i = c[j >> 2] | 0; g = i; if ((f - i | 0) >>> 0 < d >>> 0) { f = Nb[c[e + 36 >> 2] & 63](e, b, d) | 0; break } b: do if ((a[e + 75 >> 0] | 0) > -1) { i = d; while (1) { if (!i) { h = g; e = 0; g = d; f = b; break b } f = i + -1 | 0; if ((a[b + f >> 0] | 0) == 10) break; else i = f } f = Nb[c[e + 36 >> 2] & 63](e, b, i) | 0; if (f >>> 0 < i >>> 0) break a; h = c[j >> 2] | 0; e = i; g = d - i | 0; f = b + i | 0 } else { h = g; e = 0; g = d; f = b } while (0); QQ(h | 0, f | 0, g | 0) | 0; c[j >> 2] = (c[j >> 2] | 0) + g; f = e + g | 0 } while (0); return f | 0 } function LP(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; d = c[b + 44 >> 2] | 0; c[b + 28 >> 2] = d; c[b + 20 >> 2] = d; c[b + 16 >> 2] = d + (c[b + 48 >> 2] | 0); d = 0 } else { c[b >> 2] = d | 32; d = -1 } return d | 0 } function MP(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; QQ(f | 0, b | 0, a | 0) | 0; c[e >> 2] = (c[e >> 2] | 0) + a; return d | 0 } function NP(a, b) { a = a | 0; b = b | 0; OP(a, b) | 0; return a | 0 } function OP(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0; e = d; a: do if (!((e ^ b) & 3)) { if (!(e & 3)) e = d; else while (1) { e = a[d >> 0] | 0; a[b >> 0] = e; if (!(e << 24 >> 24)) break a; d = d + 1 | 0; b = b + 1 | 0; if (!(d & 3)) { e = d; break } } d = c[e >> 2] | 0; if (!((d & -2139062144 ^ -2139062144) & d + -16843009)) { f = b; b = e; while (1) { e = b + 4 | 0; b = f + 4 | 0; c[f >> 2] = d; d = c[e >> 2] | 0; if ((d & -2139062144 ^ -2139062144) & d + -16843009 | 0) { d = e; break } else { f = b; b = e } } } else d = e; f = 8 } else f = 8; while (0); if ((f | 0) == 8) { f = a[d >> 0] | 0; a[b >> 0] = f; if (f << 24 >> 24) do { d = d + 1 | 0; b = b + 1 | 0; f = a[d >> 0] | 0; a[b >> 0] = f } while (f << 24 >> 24 != 0) } return b | 0 } function PP(a, b) { a = a | 0; b = b | 0; var c = 0; c = cP(a) | 0; return ((QP(a, 1, c, b) | 0) != (c | 0)) << 31 >> 31 | 0 } function QP(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; f = S(d, b) | 0; d = (b | 0) == 0 ? 0 : d; if ((c[e + 76 >> 2] | 0) > -1) { g = (mP(e) | 0) == 0; a = KP(a, f, e) | 0; if (!g) nP(e) } else a = KP(a, f, e) | 0; if ((a | 0) != (f | 0)) d = (a >>> 0) / (b >>> 0) | 0; return d | 0 } function RP(a) { a = a | 0; var b = 0; if (c[a + 68 >> 2] | 0) { b = c[a + 116 >> 2] | 0; a = a + 112 | 0; if (b | 0) c[b + 112 >> 2] = c[a >> 2]; a = c[a >> 2] | 0; if (!a) a = (SP() | 0) + 232 | 0; else a = a + 116 | 0; c[a >> 2] = b } return } function SP() { return ZO() | 0 } function TP(b, e) { b = b | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0; m = l; l = l + 16 | 0; j = m; k = e & 255; a[j >> 0] = k; h = b + 16 | 0; g = c[h >> 2] | 0; if (!g) if (!(LP(b) | 0)) { g = c[h >> 2] | 0; i = 4 } else f = -1; else i = 4; do if ((i | 0) == 4) { i = b + 20 | 0; h = c[i >> 2] | 0; if (h >>> 0 < g >>> 0 ? (f = e & 255, (f | 0) != (a[b + 75 >> 0] | 0)) : 0) { c[i >> 2] = h + 1; a[h >> 0] = k; break } if ((Nb[c[b + 36 >> 2] & 63](b, j, 1) | 0) == 1) f = d[j >> 0] | 0; else f = -1 } while (0); l = m; return f | 0 } function UP(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0; if ((c[a + 76 >> 2] | 0) > -1) f = mP(a) | 0; else f = 0; RP(a); g = (c[a >> 2] & 1 | 0) != 0; if (!g) { e = VP() | 0; 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[e >> 2] | 0) == (a | 0)) c[e >> 2] = b; WP() } d = XP(a) | 0; d = Rb[c[a + 12 >> 2] & 15](a) | 0 | d; b = c[a + 92 >> 2] | 0; if (b | 0) IQ(b); if (g) { if (f | 0) nP(a) } else IQ(a); return d | 0 } function VP() { sb(59076); return 59084 } function WP() { hb(59076); return } function XP(a) { a = a | 0; var b = 0, d = 0; do if (a) { if ((c[a + 76 >> 2] | 0) <= -1) { b = YP(a) | 0; break } d = (mP(a) | 0) == 0; b = YP(a) | 0; if (!d) nP(a) } else { if (!(c[7579] | 0)) b = 0; else b = XP(c[7579] | 0) | 0; a = c[(VP() | 0) >> 2] | 0; if (a) do { if ((c[a + 76 >> 2] | 0) > -1) d = mP(a) | 0; else d = 0; if ((c[a + 20 >> 2] | 0) >>> 0 > (c[a + 28 >> 2] | 0) >>> 0) b = YP(a) | 0 | b; if (d | 0) nP(a); a = c[a + 56 >> 2] | 0 } while ((a | 0) != 0); WP() } while (0); return b | 0 } function YP(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0; h = a + 20 | 0; g = a + 28 | 0; if ((c[h >> 2] | 0) >>> 0 > (c[g >> 2] | 0) >>> 0 ? (Nb[c[a + 36 >> 2] & 63](a, 0, 0) | 0, (c[h >> 2] | 0) == 0) : 0) b = -1; else { f = a + 4 | 0; b = c[f >> 2] | 0; e = a + 8 | 0; d = c[e >> 2] | 0; if (b >>> 0 < d >>> 0) Nb[c[a + 40 >> 2] & 63](a, b - d | 0, 1) | 0; c[a + 16 >> 2] = 0; c[g >> 2] = 0; c[h >> 2] = 0; c[e >> 2] = 0; c[f >> 2] = 0; b = 0 } return b | 0 } function ZP(a) { a = a | 0; var b = 0, e = 0; e = l; l = l + 16 | 0; b = e; if ((_P(a) | 0) == 0 ? (Nb[c[a + 32 >> 2] & 63](a, b, 1) | 0) == 1 : 0) b = d[b >> 0] | 0; else b = -1; l = e; return b | 0 } function _P(b) { b = b | 0; var d = 0, e = 0; e = b + 74 | 0; d = a[e >> 0] | 0; a[e >> 0] = d + 255 | d; e = b + 20 | 0; d = b + 28 | 0; if ((c[e >> 2] | 0) >>> 0 > (c[d >> 2] | 0) >>> 0) Nb[c[b + 36 >> 2] & 63](b, 0, 0) | 0; c[b + 16 >> 2] = 0; c[d >> 2] = 0; c[e >> 2] = 0; d = c[b >> 2] | 0; if (!(d & 4)) { e = (c[b + 44 >> 2] | 0) + (c[b + 48 >> 2] | 0) | 0; c[b + 8 >> 2] = e; c[b + 4 >> 2] = e; d = d << 27 >> 31 } else { c[b >> 2] = d | 32; d = -1 } return d | 0 } function $P(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, m = 0, n = 0, o = 0; o = l; l = l + 64 | 0; m = o + 40 | 0; k = o + 24 | 0; j = o + 16 | 0; g = o; n = o + 56 | 0; f = a[d >> 0] | 0; if (vP(54149, f << 24 >> 24, 4) | 0) { e = HQ(1156) | 0; if (!e) e = 0; else { h = e; i = h + 124 | 0; do { c[h >> 2] = 0; h = h + 4 | 0 } while ((h | 0) < (i | 0)); if (!(bP(d, 43) | 0)) c[e >> 2] = f << 24 >> 24 == 114 ? 8 : 4; if (bP(d, 101) | 0) { c[g >> 2] = b; c[g + 4 >> 2] = 2; c[g + 8 >> 2] = 1; ka(221, g | 0) | 0; f = a[d >> 0] | 0 } if (f << 24 >> 24 == 97) { c[j >> 2] = b; c[j + 4 >> 2] = 3; f = ka(221, j | 0) | 0; if (!(f & 1024)) { c[k >> 2] = b; c[k + 4 >> 2] = 4; c[k + 8 >> 2] = f | 1024; ka(221, k | 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 + 132; c[e + 48 >> 2] = 1024; f = e + 75 | 0; a[f >> 0] = -1; if ((d & 8 | 0) == 0 ? (c[m >> 2] = b, c[m + 4 >> 2] = 21523, c[m + 8 >> 2] = n, (qa(54, m | 0) | 0) == 0) : 0) a[f >> 0] = 10; c[e + 32 >> 2] = 25; c[e + 36 >> 2] = 23; c[e + 40 >> 2] = 24; c[e + 12 >> 2] = 7; if (!(c[14754] | 0)) c[e + 76 >> 2] = -1; aQ(e) | 0 } } else { c[(XO() | 0) >> 2] = 22; e = 0 } l = o; return e | 0 } function aQ(a) { a = a | 0; var b = 0, d = 0; d = VP() | 0; c[a + 56 >> 2] = c[d >> 2]; b = c[d >> 2] | 0; if (b | 0) c[b + 52 >> 2] = a; c[d >> 2] = a; WP(); return a | 0 } function bQ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = a; c[f + 4 >> 2] = b; c[f + 8 >> 2] = d; a = WO(wb(4, f | 0) | 0) | 0; l = e; return a | 0 } function cQ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = a; c[f + 4 >> 2] = b; c[f + 8 >> 2] = d; a = WO(pb(3, f | 0) | 0) | 0; l = e; return a | 0 } function dQ(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0; i = l; l = l + 48 | 0; h = i + 32 | 0; g = i + 16 | 0; e = i; if (vP(54149, a[d >> 0] | 0, 4) | 0) { f = eQ(d) | 0; c[e >> 2] = b; c[e + 4 >> 2] = f | 32768; c[e + 8 >> 2] = 438; e = WO(vb(5, e | 0) | 0) | 0; if ((e | 0) >= 0) { if (f & 524288 | 0) { c[g >> 2] = e; c[g + 4 >> 2] = 2; c[g + 8 >> 2] = 1; ka(221, g | 0) | 0 } b = $P(e, d) | 0; if (!b) { c[h >> 2] = e; ub(6, h | 0) | 0; b = 0 } } else b = 0 } else { c[(XO() | 0) >> 2] = 22; b = 0 } l = i; return b | 0 } function eQ(b) { b = b | 0; var c = 0, d = 0, e = 0; d = (bP(b, 43) | 0) == 0; c = a[b >> 0] | 0; d = d ? c << 24 >> 24 != 114 & 1 : 2; e = (bP(b, 120) | 0) == 0; d = e ? d : d | 128; b = (bP(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 fQ(a) { a = a | 0; return ((a | 0) == 32 | (a + -9 | 0) >>> 0 < 5) & 1 | 0 } function gQ(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; c[a + 100 >> 2] = (b | 0) != 0 & (f | 0) > (b | 0) ? e + b | 0 : d; return } function hQ(b) { b = b | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; f = b + 104 | 0; j = c[f >> 2] | 0; if ((j | 0) != 0 ? (c[b + 108 >> 2] | 0) >= (j | 0) : 0) k = 4; else { e = ZP(b) | 0; if ((e | 0) >= 0) { g = c[f >> 2] | 0; f = b + 8 | 0; if (g) { i = c[f >> 2] | 0; j = c[b + 4 >> 2] | 0; f = b + 108 | 0; g = g - (c[f >> 2] | 0) | 0; h = i; if ((i - j | 0) < (g | 0)) { i = h; g = j } else { i = j + (g + -1) | 0; g = j } } else { h = c[f >> 2] | 0; i = h; g = c[b + 4 >> 2] | 0; f = b + 108 | 0 } c[b + 100 >> 2] = i; if (h | 0) c[f >> 2] = h + 1 - g + (c[f >> 2] | 0); f = g + -1 | 0; if ((d[f >> 0] | 0 | 0) != (e | 0)) a[f >> 0] = e } else k = 4 } if ((k | 0) == 4) { c[b + 100 >> 2] = 0; e = -1 } return e | 0 } function iQ(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[(XO() | 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 = hQ(b) | 0 } while ((fQ(i) | 0) != 0); b: do switch (i | 0) { case 43: case 45: { j = ((i | 0) == 45) << 31 >> 31;i = c[r >> 2] | 0; if (i >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = i + 1; i = d[i >> 0] | 0; p = j; break b } else { i = hQ(b) | 0; p = j; 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 = hQ(b) | 0; if ((i | 32 | 0) != 120) if (j) { e = 8; n = 46; break } else { n = 32; break } e = c[r >> 2] | 0; if (e >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = e + 1; i = d[e >> 0] | 0 } else i = hQ(b) | 0; if ((d[54154 + i >> 0] | 0) > 15) { g = (c[q >> 2] | 0) != 0; if (g) c[r >> 2] = (c[r >> 2] | 0) + -1; if (!f) { gQ(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[54154 + i >> 0] | 0) >>> 0 < e >>> 0) n = 32; else { if (c[q >> 2] | 0) c[r >> 2] = (c[r >> 2] | 0) + -1; gQ(b, 0); c[(XO() | 0) >> 2] = 22; h = 0; g = 0; break a } } while (0); c: do if ((n | 0) == 32) if ((e | 0) == 10) { e = i + -48 | 0; if (e >>> 0 < 10) { j = 0; do { j = (j * 10 | 0) + e | 0; e = c[r >> 2] | 0; if (e >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = e + 1; i = d[e >> 0] | 0 } else i = hQ(b) | 0; e = i + -48 | 0 } while (e >>> 0 < 10 & j >>> 0 < 429496729); f = 0 } else { j = 0; f = 0 } e = i + -48 | 0; if (e >>> 0 < 10) { m = e; do { e = $Q(j | 0, f | 0, 10, 0) | 0; k = D; l = ((m | 0) < 0) << 31 >> 31; o = ~l; if (k >>> 0 > o >>> 0 | (k | 0) == (o | 0) & e >>> 0 > ~m >>> 0) { e = 10; n = 72; break c } j = OQ(e | 0, k | 0, m | 0, l | 0) | 0; f = D; e = c[r >> 2] | 0; if (e >>> 0 < (c[q >> 2] | 0) >>> 0) { c[r >> 2] = e + 1; i = d[e >> 0] | 0 } else i = hQ(b) | 0; m = i + -48 | 0 } while (m >>> 0 < 10 & (f >>> 0 < 429496729 | (f | 0) == 429496729 & j >>> 0 < 2576980378)); if (m >>> 0 > 9) { i = j; e = p } else { e = 10; n = 72 } } else { i = j; e = p } } else n = 46; while (0); d: do if ((n | 0) == 46) { if (!(e + -1 & e)) { n = a[54410 + ((e * 23 | 0) >>> 5 & 7) >> 0] | 0; j = a[54154 + i >> 0] | 0; f = j & 255; if (f >>> 0 < e >>> 0) { k = 0; do { k = f | k << n; 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 = hQ(b) | 0; j = a[54154 + i >> 0] | 0; f = j & 255 } while (k >>> 0 < 134217728 & f >>> 0 < e >>> 0); f = 0 } else { f = 0; k = 0 } l = PQ(-1, -1, n | 0) | 0; m = D; if ((j & 255) >>> 0 >= e >>> 0 | (f >>> 0 > m >>> 0 | (f | 0) == (m | 0) & k >>> 0 > l >>> 0)) { j = k; n = 72; break } while (1) { k = SQ(k | 0, f | 0, n | 0) | 0; f = D; k = j & 255 | k; 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 = hQ(b) | 0; j = a[54154 + i >> 0] | 0; if ((j & 255) >>> 0 >= e >>> 0 | (f >>> 0 > m >>> 0 | (f | 0) == (m | 0) & k >>> 0 > l >>> 0)) { j = k; n = 72; break d } } } k = a[54154 + i >> 0] | 0; j = k & 255; if (j >>> 0 < e >>> 0) { f = 0; do { f = j + (S(f, e) | 0) | 0; 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 = hQ(b) | 0; k = a[54154 + i >> 0] | 0; j = k & 255 } while (f >>> 0 < 119304647 & j >>> 0 < e >>> 0); j = f; f = 0 } else { j = 0; f = 0 } if ((k & 255) >>> 0 < e >>> 0) { n = ZQ(-1, -1, e | 0, 0) | 0; o = D; while (1) { if (f >>> 0 > o >>> 0 | (f | 0) == (o | 0) & j >>> 0 > n >>> 0) { n = 72; break d } m = $Q(j | 0, f | 0, e | 0, 0) | 0; l = D; k = k & 255; if (l >>> 0 > 4294967295 | (l | 0) == -1 & m >>> 0 > ~k >>> 0) { n = 72; break d } j = OQ(k | 0, 0, m | 0, l | 0) | 0; f = D; 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 = hQ(b) | 0; k = a[54154 + i >> 0] | 0; if ((k & 255) >>> 0 >= e >>> 0) { n = 72; break } } } else n = 72 } while (0); if ((n | 0) == 72) if ((d[54154 + i >> 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 = hQ(b) | 0 } while ((d[54154 + i >> 0] | 0) >>> 0 < e >>> 0); c[(XO() | 0) >> 2] = 34; f = h; i = g; e = (g & 1 | 0) == 0 & 0 == 0 ? p : 0 } else { i = j; e = p } if (c[q >> 2] | 0) c[r >> 2] = (c[r >> 2] | 0) + -1; if (!(f >>> 0 < h >>> 0 | (f | 0) == (h | 0) & i >>> 0 < g >>> 0)) { if (!((g & 1 | 0) != 0 | 0 != 0 | (e | 0) != 0)) { c[(XO() | 0) >> 2] = 34; g = OQ(g | 0, h | 0, -1, -1) | 0; h = D; break } if (f >>> 0 > h >>> 0 | (f | 0) == (h | 0) & i >>> 0 > g >>> 0) { c[(XO() | 0) >> 2] = 34; break } } g = ((e | 0) < 0) << 31 >> 31; g = NQ(i ^ e | 0, f ^ g | 0, e | 0, g | 0) | 0; h = D } while (0); D = h; return g | 0 } function jQ(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return lQ(a, b, c) | 0 } function kQ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = d; d = kP(a, b, f) | 0; l = e; return d | 0 } function lQ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0; if ((c[a + 76 >> 2] | 0) > -1) { e = (mP(a) | 0) == 0; b = mQ(a, b, d) | 0; if (!e) nP(a) } else b = mQ(a, b, d) | 0; return b | 0 } function mQ(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; f = a + 20 | 0; e = a + 28 | 0; if ((c[f >> 2] | 0) >>> 0 > (c[e >> 2] | 0) >>> 0 ? (Nb[c[a + 36 >> 2] & 63](a, 0, 0) | 0, (c[f >> 2] | 0) == 0) : 0) b = -1; else { c[a + 16 >> 2] = 0; c[e >> 2] = 0; c[f >> 2] = 0; if ((Nb[c[a + 40 >> 2] & 63](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 nQ(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 oQ(a) { a = a | 0; var b = 0; b = (pQ(a) | 0) == 0; return (b ? a : a | 32) | 0 } function pQ(a) { a = a | 0; return (a + -65 | 0) >>> 0 < 26 | 0 } function qQ(a, b, c) { a = a | 0; b = b | 0; c = c | 0; a = rQ(a, b, c, -1, 0) | 0; return a | 0 } function rQ(a, b, d, e, f) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; f = f | 0; var g = 0, h = 0, i = 0, j = 0; j = l; l = l + 128 | 0; g = j; c[g >> 2] = 0; i = g + 4 | 0; c[i >> 2] = a; c[g + 44 >> 2] = a; h = g + 8 | 0; c[h >> 2] = (a | 0) < 0 ? -1 : a + 2147483647 | 0; c[g + 76 >> 2] = -1; gQ(g, 0); e = iQ(g, d, 1, e, f) | 0; if (b | 0) c[b >> 2] = a + ((c[i >> 2] | 0) + (c[g + 108 >> 2] | 0) - (c[h >> 2] | 0)); l = j; return e | 0 } function sQ(b, c) { b = b | 0; c = c | 0; var e = 0, f = 0, g = 0; e = a[b >> 0] | 0; f = e & 255; a: do if (e << 24 >> 24) { g = b; do { b = a[c >> 0] | 0; if (!(b << 24 >> 24)) break a; if (e << 24 >> 24 != b << 24 >> 24 ? (e = oQ(f) | 0, (e | 0) != (oQ(b & 255) | 0)) : 0) break a; g = g + 1 | 0; c = c + 1 | 0; e = a[g >> 0] | 0; f = e & 255 } while (e << 24 >> 24 != 0) } while (0); g = oQ(f) | 0; return g - (oQ(d[c >> 0] | 0) | 0) | 0 } function tQ(a) { a = a | 0; if ((c[a + 76 >> 2] | 0) > -1 ? mP(a) | 0 : 0) nP(a); return c[a + 60 >> 2] | 0 } function uQ(b, d) { b = b | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0; h = b & 255; e = b & 255; if ((c[d + 76 >> 2] | 0) >= 0 ? (mP(d) | 0) != 0 : 0) { if ((e | 0) != (a[d + 75 >> 0] | 0) ? (j = d + 20 | 0, g = c[j >> 2] | 0, g >>> 0 < (c[d + 16 >> 2] | 0) >>> 0) : 0) { c[j >> 2] = g + 1; a[g >> 0] = h } else e = TP(d, b) | 0; nP(d) } else k = 3; do if ((k | 0) == 3) { if ((e | 0) != (a[d + 75 >> 0] | 0) ? (i = d + 20 | 0, f = c[i >> 2] | 0, f >>> 0 < (c[d + 16 >> 2] | 0) >>> 0) : 0) { c[i >> 2] = f + 1; a[f >> 0] = h; break } e = TP(d, b) | 0 } while (0); return e | 0 } function vQ(a) { a = a | 0; var b = 0, e = 0, f = 0; if ((c[a + 76 >> 2] | 0) >= 0 ? (mP(a) | 0) != 0 : 0) { e = a + 4 | 0; b = c[e >> 2] | 0; if (b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0) { c[e >> 2] = b + 1; b = d[b >> 0] | 0 } else b = ZP(a) | 0 } else f = 3; do if ((f | 0) == 3) { e = a + 4 | 0; b = c[e >> 2] | 0; if (b >>> 0 < (c[a + 8 >> 2] | 0) >>> 0) { c[e >> 2] = b + 1; b = d[b >> 0] | 0; break } else { b = ZP(a) | 0; break } } while (0); return b | 0 } function wQ(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return jP(a, 2147483647, b, c) | 0 } function xQ(a) { a = a | 0; var b = 0, d = 0; if ((c[a + 76 >> 2] | 0) > -1) { d = (mP(a) | 0) == 0; b = yQ(a) | 0; if (!d) nP(a) } else b = yQ(a) | 0; return b | 0 } function yQ(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 = Nb[c[a + 40 >> 2] & 63](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 zQ(a) { a = a | 0; return xQ(a) | 0 } function AQ(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; k = S(e, d) | 0; e = (d | 0) == 0 ? 0 : e; if ((c[f + 76 >> 2] | 0) > -1) j = mP(f) | 0; else j = 0; h = f + 74 | 0; g = a[h >> 0] | 0; a[h >> 0] = g + 255 | g; h = f + 4 | 0; g = c[h >> 2] | 0; m = (c[f + 8 >> 2] | 0) - g | 0; i = m >>> 0 < k >>> 0 ? m : k; if ((m | 0) > 0) { QQ(b | 0, g | 0, i | 0) | 0; c[h >> 2] = g + i; g = b + i | 0; h = k - i | 0 } else { g = b; h = k } a: do if (!h) l = 13; else { i = f + 32 | 0; while (1) { if (_P(f) | 0) break; b = Nb[c[i >> 2] & 63](f, g, h) | 0; if ((b + 1 | 0) >>> 0 < 2) break; h = h - b | 0; if (!h) { l = 13; break a } else g = g + b | 0 } if (j | 0) nP(f); e = ((k - h | 0) >>> 0) / (d >>> 0) | 0 } while (0); if ((l | 0) == 13) if (j) nP(f); return e | 0 } function BQ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = d; d = wQ(a, b, f) | 0; l = e; return d | 0 } function CQ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = b; b = kP(c[7547] | 0, a, e) | 0; l = d; return b | 0 } function DQ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; d = l; l = l + 16 | 0; e = d; c[e >> 2] = a; c[e + 4 >> 2] = 0; c[e + 8 >> 2] = b; c[e + 12 >> 2] = ((b | 0) < 0) << 31 >> 31; b = WO(Pa(194, e | 0) | 0) | 0; l = d; return b | 0 } function EQ(a, b, d) { a = a | 0; b = b | 0; d = d | 0; var e = 0, f = 0; e = l; l = l + 16 | 0; f = e; c[f >> 2] = a; c[f + 4 >> 2] = b; c[f + 8 >> 2] = d; d = WO(pa(168, f | 0) | 0) | 0; l = e; return d | 0 } function FQ(a, b) { a = a | 0; b = b | 0; NP(a + (cP(a) | 0) | 0, b) | 0; return a | 0 } function GQ(a, b, c) { a = a | 0; b = b | 0; c = c | 0; a = rQ(a, b, c, -2147483648, 0) | 0; return a | 0 } function HQ(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 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 = l; l = l + 16 | 0; o = K; do if (a >>> 0 < 245) { p = a >>> 0 < 11 ? 16 : a + 11 & -8; a = p >>> 3; t = c[14772] | 0; d = t >>> a; if (d & 3 | 0) { f = (d & 1 ^ 1) + a | 0; g = 59128 + (f << 1 << 2) | 0; a = g + 8 | 0; d = c[a >> 2] | 0; h = d + 8 | 0; e = c[h >> 2] | 0; do if ((g | 0) != (e | 0)) { if (e >>> 0 < (c[14776] | 0) >>> 0) sa(); b = e + 12 | 0; if ((c[b >> 2] | 0) == (d | 0)) { c[b >> 2] = g; c[a >> 2] = e; break } else sa() } else c[14772] = t & ~(1 << f); while (0); J = f << 3; c[d + 4 >> 2] = J | 3; J = d + J + 4 | 0; c[J >> 2] = c[J >> 2] | 1; J = h; l = K; return J | 0 } s = c[14774] | 0; if (p >>> 0 > s >>> 0) { if (d | 0) { e = 2 << a; e = d << a & (e | 0 - e); e = (e & 0 - e) + -1 | 0; i = e >>> 12 & 16; e = e >>> i; b = e >>> 5 & 8; e = e >>> b; g = e >>> 2 & 4; e = e >>> g; a = e >>> 1 & 2; e = e >>> a; d = e >>> 1 & 1; d = (b | i | g | a | d) + (e >>> d) | 0; e = 59128 + (d << 1 << 2) | 0; a = e + 8 | 0; g = c[a >> 2] | 0; i = g + 8 | 0; b = c[i >> 2] | 0; do if ((e | 0) != (b | 0)) { if (b >>> 0 < (c[14776] | 0) >>> 0) sa(); f = b + 12 | 0; if ((c[f >> 2] | 0) == (g | 0)) { c[f >> 2] = e; c[a >> 2] = b; j = t; break } else sa() } else { j = t & ~(1 << d); c[14772] = j } while (0); h = (d << 3) - p | 0; c[g + 4 >> 2] = p | 3; f = g + p | 0; c[f + 4 >> 2] = h | 1; c[f + h >> 2] = h; if (s | 0) { e = c[14777] | 0; b = s >>> 3; d = 59128 + (b << 1 << 2) | 0; b = 1 << b; if (j & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { k = b; m = a } } else { c[14772] = j | b; k = d + 8 | 0; m = d } c[k >> 2] = e; c[m + 12 >> 2] = e; c[e + 8 >> 2] = m; c[e + 12 >> 2] = d } c[14774] = h; c[14777] = f; J = i; l = K; return J | 0 } k = c[14773] | 0; if (k) { a = (k & 0 - k) + -1 | 0; I = a >>> 12 & 16; a = a >>> I; H = a >>> 5 & 8; a = a >>> H; J = a >>> 2 & 4; a = a >>> J; b = a >>> 1 & 2; a = a >>> b; d = a >>> 1 & 1; d = c[59392 + ((H | I | J | b | d) + (a >>> d) << 2) >> 2] | 0; a = (c[d + 4 >> 2] & -8) - p | 0; b = c[d + 16 + (((c[d + 16 >> 2] | 0) == 0 & 1) << 2) >> 2] | 0; if (!b) { j = a; i = d } else { do { I = (c[b + 4 >> 2] & -8) - p | 0; J = I >>> 0 < a >>> 0; a = J ? I : a; d = J ? b : d; b = c[b + 16 + (((c[b + 16 >> 2] | 0) == 0 & 1) << 2) >> 2] | 0 } while ((b | 0) != 0); j = a; i = d } f = c[14776] | 0; if (i >>> 0 < f >>> 0) sa(); h = i + p | 0; if (i >>> 0 >= h >>> 0) sa(); g = c[i + 24 >> 2] | 0; d = c[i + 12 >> 2] | 0; do if ((d | 0) == (i | 0)) { a = i + 20 | 0; b = c[a >> 2] | 0; if (!b) { a = i + 16 | 0; b = c[a >> 2] | 0; if (!b) { n = 0; break } } while (1) { e = b + 20 | 0; d = c[e >> 2] | 0; if (d | 0) { b = d; a = e; continue } e = b + 16 | 0; d = c[e >> 2] | 0; if (!d) break; else { b = d; a = e } } if (a >>> 0 < f >>> 0) sa(); else { c[a >> 2] = 0; n = b; break } } else { e = c[i + 8 >> 2] | 0; if (e >>> 0 < f >>> 0) sa(); b = e + 12 | 0; if ((c[b >> 2] | 0) != (i | 0)) sa(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (i | 0)) { c[b >> 2] = d; c[a >> 2] = e; n = d; break } else sa() } while (0); a: do if (g | 0) { b = c[i + 28 >> 2] | 0; a = 59392 + (b << 2) | 0; do if ((i | 0) == (c[a >> 2] | 0)) { c[a >> 2] = n; if (!n) { c[14773] = k & ~(1 << b); break a } } else if (g >>> 0 >= (c[14776] | 0) >>> 0) { c[g + 16 + (((c[g + 16 >> 2] | 0) != (i | 0) & 1) << 2) >> 2] = n; if (!n) break a; else break } else sa(); while (0); a = c[14776] | 0; if (n >>> 0 < a >>> 0) sa(); c[n + 24 >> 2] = g; b = c[i + 16 >> 2] | 0; do if (b | 0) if (b >>> 0 < a >>> 0) sa(); else { c[n + 16 >> 2] = b; c[b + 24 >> 2] = n; break } while (0); b = c[i + 20 >> 2] | 0; if (b | 0) if (b >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[n + 20 >> 2] = b; c[b + 24 >> 2] = n; break } } while (0); if (j >>> 0 < 16) { J = j + p | 0; c[i + 4 >> 2] = J | 3; J = i + J + 4 | 0; c[J >> 2] = c[J >> 2] | 1 } else { c[i + 4 >> 2] = p | 3; c[h + 4 >> 2] = j | 1; c[h + j >> 2] = j; if (s | 0) { e = c[14777] | 0; b = s >>> 3; d = 59128 + (b << 1 << 2) | 0; b = 1 << b; if (t & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { q = b; r = a } } else { c[14772] = t | b; q = d + 8 | 0; r = d } c[q >> 2] = e; c[r + 12 >> 2] = e; c[e + 8 >> 2] = r; c[e + 12 >> 2] = d } c[14774] = j; c[14777] = h } J = i + 8 | 0; l = K; return J | 0 } } } else if (a >>> 0 <= 4294967231) { a = a + 11 | 0; p = a & -8; k = c[14773] | 0; if (k) { d = 0 - p | 0; a = a >>> 8; if (a) if (p >>> 0 > 16777215) i = 31; else { r = (a + 1048320 | 0) >>> 16 & 8; C = a << r; q = (C + 520192 | 0) >>> 16 & 4; C = C << q; i = (C + 245760 | 0) >>> 16 & 2; i = 14 - (q | r | i) + (C << i >>> 15) | 0; i = p >>> (i + 7 | 0) & 1 | i << 1 } else i = 0; a = c[59392 + (i << 2) >> 2] | 0; b: do if (!a) { e = 0; a = 0; C = 81 } else { e = 0; g = p << ((i | 0) == 31 ? 0 : 25 - (i >>> 1) | 0); h = a; a = 0; while (1) { f = (c[h + 4 >> 2] & -8) - p | 0; if (f >>> 0 < d >>> 0) if (!f) { d = 0; e = h; a = h; C = 85; break b } else { d = f; a = h } f = c[h + 20 >> 2] | 0; h = c[h + 16 + (g >>> 31 << 2) >> 2] | 0; e = (f | 0) == 0 | (f | 0) == (h | 0) ? e : f; f = (h | 0) == 0; if (f) { C = 81; break } else g = g << ((f ^ 1) & 1) } } while (0); if ((C | 0) == 81) { if ((e | 0) == 0 & (a | 0) == 0) { a = 2 << i; a = k & (a | 0 - a); if (!a) break; a = (a & 0 - a) + -1 | 0; n = a >>> 12 & 16; a = a >>> n; m = a >>> 5 & 8; a = a >>> m; q = a >>> 2 & 4; a = a >>> q; r = a >>> 1 & 2; a = a >>> r; e = a >>> 1 & 1; e = c[59392 + ((m | n | q | r | e) + (a >>> e) << 2) >> 2] | 0; a = 0 } if (!e) { i = d; j = a } else C = 85 } if ((C | 0) == 85) while (1) { C = 0; q = (c[e + 4 >> 2] & -8) - p | 0; r = q >>> 0 < d >>> 0; d = r ? q : d; a = r ? e : a; e = c[e + 16 + (((c[e + 16 >> 2] | 0) == 0 & 1) << 2) >> 2] | 0; if (!e) { i = d; j = a; break } else C = 85 } if ((j | 0) != 0 ? i >>> 0 < ((c[14774] | 0) - p | 0) >>> 0 : 0) { f = c[14776] | 0; if (j >>> 0 < f >>> 0) sa(); h = j + p | 0; if (j >>> 0 >= h >>> 0) sa(); 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) { s = 0; break } } while (1) { e = b + 20 | 0; d = c[e >> 2] | 0; if (d | 0) { b = d; a = e; continue } e = b + 16 | 0; d = c[e >> 2] | 0; if (!d) break; else { b = d; a = e } } if (a >>> 0 < f >>> 0) sa(); else { c[a >> 2] = 0; s = b; break } } else { e = c[j + 8 >> 2] | 0; if (e >>> 0 < f >>> 0) sa(); b = e + 12 | 0; if ((c[b >> 2] | 0) != (j | 0)) sa(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (j | 0)) { c[b >> 2] = d; c[a >> 2] = e; s = d; break } else sa() } while (0); c: do if (g) { b = c[j + 28 >> 2] | 0; a = 59392 + (b << 2) | 0; do if ((j | 0) == (c[a >> 2] | 0)) { c[a >> 2] = s; if (!s) { t = k & ~(1 << b); c[14773] = t; break c } } else if (g >>> 0 >= (c[14776] | 0) >>> 0) { c[g + 16 + (((c[g + 16 >> 2] | 0) != (j | 0) & 1) << 2) >> 2] = s; if (!s) { t = k; break c } else break } else sa(); while (0); a = c[14776] | 0; if (s >>> 0 < a >>> 0) sa(); c[s + 24 >> 2] = g; b = c[j + 16 >> 2] | 0; do if (b | 0) if (b >>> 0 < a >>> 0) sa(); else { c[s + 16 >> 2] = b; c[b + 24 >> 2] = s; break } while (0); b = c[j + 20 >> 2] | 0; if (b) if (b >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[s + 20 >> 2] = b; c[b + 24 >> 2] = s; t = k; break } else t = k } else t = k; while (0); do if (i >>> 0 >= 16) { c[j + 4 >> 2] = p | 3; c[h + 4 >> 2] = i | 1; c[h + i >> 2] = i; b = i >>> 3; if (i >>> 0 < 256) { d = 59128 + (b << 1 << 2) | 0; a = c[14772] | 0; b = 1 << b; if (a & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { x = b; y = a } } else { c[14772] = a | b; x = d + 8 | 0; y = d } c[x >> 2] = h; c[y + 12 >> 2] = h; c[h + 8 >> 2] = y; c[h + 12 >> 2] = d; break } b = i >>> 8; if (b) if (i >>> 0 > 16777215) b = 31; else { I = (b + 1048320 | 0) >>> 16 & 8; J = b << I; H = (J + 520192 | 0) >>> 16 & 4; J = J << H; b = (J + 245760 | 0) >>> 16 & 2; b = 14 - (H | I | b) + (J << b >>> 15) | 0; b = i >>> (b + 7 | 0) & 1 | b << 1 } else b = 0; d = 59392 + (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[14773] = t | a; c[d >> 2] = h; c[h + 24 >> 2] = d; c[h + 12 >> 2] = h; c[h + 8 >> 2] = h; break } a = i << ((b | 0) == 31 ? 0 : 25 - (b >>> 1) | 0); e = c[d >> 2] | 0; while (1) { if ((c[e + 4 >> 2] & -8 | 0) == (i | 0)) { C = 139; break } d = e + 16 + (a >>> 31 << 2) | 0; b = c[d >> 2] | 0; if (!b) { C = 136; break } else { a = a << 1; e = b } } if ((C | 0) == 136) if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[d >> 2] = h; c[h + 24 >> 2] = e; c[h + 12 >> 2] = h; c[h + 8 >> 2] = h; break } else if ((C | 0) == 139) { a = e + 8 | 0; b = c[a >> 2] | 0; J = c[14776] | 0; if (b >>> 0 >= J >>> 0 & e >>> 0 >= J >>> 0) { c[b + 12 >> 2] = h; c[a >> 2] = h; c[h + 8 >> 2] = b; c[h + 12 >> 2] = e; c[h + 24 >> 2] = 0; break } else sa() } } else { J = i + p | 0; c[j + 4 >> 2] = J | 3; J = j + J + 4 | 0; c[J >> 2] = c[J >> 2] | 1 } while (0); J = j + 8 | 0; l = K; return J | 0 } } } else p = -1; while (0); d = c[14774] | 0; if (d >>> 0 >= p >>> 0) { a = d - p | 0; b = c[14777] | 0; if (a >>> 0 > 15) { J = b + p | 0; c[14777] = J; c[14774] = a; c[J + 4 >> 2] = a | 1; c[J + a >> 2] = a; c[b + 4 >> 2] = p | 3 } else { c[14774] = 0; c[14777] = 0; c[b + 4 >> 2] = d | 3; J = b + d + 4 | 0; c[J >> 2] = c[J >> 2] | 1 } J = b + 8 | 0; l = K; return J | 0 } h = c[14775] | 0; if (h >>> 0 > p >>> 0) { H = h - p | 0; c[14775] = H; J = c[14778] | 0; I = J + p | 0; c[14778] = I; c[I + 4 >> 2] = H | 1; c[J + 4 >> 2] = p | 3; J = J + 8 | 0; l = K; return J | 0 } if (!(c[14890] | 0)) { c[14892] = 4096; c[14891] = 4096; c[14893] = -1; c[14894] = -1; c[14895] = 0; c[14883] = 0; a = o & -16 ^ 1431655768; c[o >> 2] = a; c[14890] = a; a = 4096 } else a = c[14892] | 0; i = p + 48 | 0; j = p + 47 | 0; g = a + j | 0; e = 0 - a | 0; k = g & e; if (k >>> 0 <= p >>> 0) { J = 0; l = K; return J | 0 } a = c[14882] | 0; if (a | 0 ? (x = c[14880] | 0, y = x + k | 0, y >>> 0 <= x >>> 0 | y >>> 0 > a >>> 0) : 0) { J = 0; l = K; return J | 0 } d: do if (!(c[14883] & 4)) { d = c[14778] | 0; e: do if (d) { f = 59536; while (1) { a = c[f >> 2] | 0; if (a >>> 0 <= d >>> 0 ? (w = f + 4 | 0, (a + (c[w >> 2] | 0) | 0) >>> 0 > d >>> 0) : 0) break; a = c[f + 8 >> 2] | 0; if (!a) { C = 163; break e } else f = a } b = g - h & e; if (b >>> 0 < 2147483647) { a = RQ(b | 0) | 0; if ((a | 0) == ((c[f >> 2] | 0) + (c[w >> 2] | 0) | 0)) { if ((a | 0) != (-1 | 0)) { h = a; g = b; C = 180; break d } } else { e = a; C = 171 } } else b = 0 } else C = 163; while (0); do if ((C | 0) == 163) { d = RQ(0) | 0; if ((d | 0) != (-1 | 0) ? (b = d, u = c[14891] | 0, v = u + -1 | 0, b = ((v & b | 0) == 0 ? 0 : (v + b & 0 - u) - b | 0) + k | 0, u = c[14880] | 0, v = b + u | 0, b >>> 0 > p >>> 0 & b >>> 0 < 2147483647) : 0) { y = c[14882] | 0; if (y | 0 ? v >>> 0 <= u >>> 0 | v >>> 0 > y >>> 0 : 0) { b = 0; break } a = RQ(b | 0) | 0; if ((a | 0) == (d | 0)) { h = d; g = b; C = 180; break d } else { e = a; C = 171 } } else b = 0 } while (0); do if ((C | 0) == 171) { d = 0 - b | 0; if (!(i >>> 0 > b >>> 0 & (b >>> 0 < 2147483647 & (e | 0) != (-1 | 0)))) if ((e | 0) == (-1 | 0)) { b = 0; break } else { h = e; g = b; C = 180; break d } a = c[14892] | 0; a = j - b + a & 0 - a; if (a >>> 0 >= 2147483647) { h = e; g = b; C = 180; break d } if ((RQ(a | 0) | 0) == (-1 | 0)) { RQ(d | 0) | 0; b = 0; break } else { h = e; g = a + b | 0; C = 180; break d } } while (0); c[14883] = c[14883] | 4; C = 178 } else { b = 0; C = 178 } while (0); if (((C | 0) == 178 ? k >>> 0 < 2147483647 : 0) ? (z = RQ(k | 0) | 0, y = RQ(0) | 0, B = y - z | 0, A = B >>> 0 > (p + 40 | 0) >>> 0, !((z | 0) == (-1 | 0) | A ^ 1 | z >>> 0 < y >>> 0 & ((z | 0) != (-1 | 0) & (y | 0) != (-1 | 0)) ^ 1)) : 0) { h = z; g = A ? B : b; C = 180 } if ((C | 0) == 180) { b = (c[14880] | 0) + g | 0; c[14880] = b; if (b >>> 0 > (c[14881] | 0) >>> 0) c[14881] = b; k = c[14778] | 0; do if (k) { f = 59536; while (1) { b = c[f >> 2] | 0; e = f + 4 | 0; a = c[e >> 2] | 0; if ((h | 0) == (b + a | 0)) { C = 190; break } d = c[f + 8 >> 2] | 0; if (!d) break; else f = d } if (((C | 0) == 190 ? (c[f + 12 >> 2] & 8 | 0) == 0 : 0) ? k >>> 0 < h >>> 0 & k >>> 0 >= b >>> 0 : 0) { c[e >> 2] = a + g; J = k + 8 | 0; J = (J & 7 | 0) == 0 ? 0 : 0 - J & 7; I = k + J | 0; J = (c[14775] | 0) + (g - J) | 0; c[14778] = I; c[14775] = J; c[I + 4 >> 2] = J | 1; c[I + J + 4 >> 2] = 40; c[14779] = c[14894]; break } b = c[14776] | 0; if (h >>> 0 < b >>> 0) { c[14776] = h; i = h } else i = b; d = h + g | 0; a = 59536; while (1) { if ((c[a >> 2] | 0) == (d | 0)) { C = 198; break } b = c[a + 8 >> 2] | 0; if (!b) break; else a = b } if ((C | 0) == 198 ? (c[a + 12 >> 2] & 8 | 0) == 0 : 0) { c[a >> 2] = h; n = a + 4 | 0; c[n >> 2] = (c[n >> 2] | 0) + g; n = h + 8 | 0; n = h + ((n & 7 | 0) == 0 ? 0 : 0 - n & 7) | 0; b = d + 8 | 0; b = d + ((b & 7 | 0) == 0 ? 0 : 0 - b & 7) | 0; m = n + p | 0; j = b - n - p | 0; c[n + 4 >> 2] = p | 3; do if ((b | 0) != (k | 0)) { if ((b | 0) == (c[14777] | 0)) { J = (c[14774] | 0) + j | 0; c[14774] = J; c[14777] = m; c[m + 4 >> 2] = J | 1; c[m + J >> 2] = J; break } a = c[b + 4 >> 2] | 0; if ((a & 3 | 0) == 1) { h = a & -8; f = a >>> 3; f: 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) { H = 0; break } else f = e } else f = d; while (1) { e = a + 20 | 0; d = c[e >> 2] | 0; if (d | 0) { a = d; f = e; continue } e = a + 16 | 0; d = c[e >> 2] | 0; if (!d) break; else { a = d; f = e } } if (f >>> 0 < i >>> 0) sa(); else { c[f >> 2] = 0; H = a; break } } else { f = c[b + 8 >> 2] | 0; if (f >>> 0 < i >>> 0) sa(); a = f + 12 | 0; if ((c[a >> 2] | 0) != (b | 0)) sa(); d = e + 8 | 0; if ((c[d >> 2] | 0) == (b | 0)) { c[a >> 2] = e; c[d >> 2] = f; H = e; break } else sa() } while (0); if (!g) break; a = c[b + 28 >> 2] | 0; d = 59392 + (a << 2) | 0; do if ((b | 0) != (c[d >> 2] | 0)) if (g >>> 0 >= (c[14776] | 0) >>> 0) { c[g + 16 + (((c[g + 16 >> 2] | 0) != (b | 0) & 1) << 2) >> 2] = H; if (!H) break f; else break } else sa(); else { c[d >> 2] = H; if (H | 0) break; c[14773] = c[14773] & ~(1 << a); break f } while (0); e = c[14776] | 0; if (H >>> 0 < e >>> 0) sa(); c[H + 24 >> 2] = g; d = b + 16 | 0; a = c[d >> 2] | 0; do if (a | 0) if (a >>> 0 < e >>> 0) sa(); else { c[H + 16 >> 2] = a; c[a + 24 >> 2] = H; break } while (0); a = c[d + 4 >> 2] | 0; if (!a) break; if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[H + 20 >> 2] = a; c[a + 24 >> 2] = H; break } } else { d = c[b + 8 >> 2] | 0; e = c[b + 12 >> 2] | 0; a = 59128 + (f << 1 << 2) | 0; do if ((d | 0) != (a | 0)) { if (d >>> 0 < i >>> 0) sa(); if ((c[d + 12 >> 2] | 0) == (b | 0)) break; sa() } while (0); if ((e | 0) == (d | 0)) { c[14772] = c[14772] & ~(1 << f); break } do if ((e | 0) == (a | 0)) E = e + 8 | 0; else { if (e >>> 0 < i >>> 0) sa(); a = e + 8 | 0; if ((c[a >> 2] | 0) == (b | 0)) { E = a; break } sa() } while (0); c[d + 12 >> 2] = e; c[E >> 2] = d } while (0); b = b + h | 0; f = h + j | 0 } else f = j; 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 = 59128 + (b << 1 << 2) | 0; a = c[14772] | 0; b = 1 << b; do if (!(a & b)) { c[14772] = a | b; I = d + 8 | 0; J = d } else { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 >= (c[14776] | 0) >>> 0) { I = b; J = a; break } sa() } while (0); c[I >> 2] = m; c[J + 12 >> 2] = m; c[m + 8 >> 2] = J; c[m + 12 >> 2] = d; break } b = f >>> 8; do if (!b) a = 0; else { if (f >>> 0 > 16777215) { a = 31; break } I = (b + 1048320 | 0) >>> 16 & 8; J = b << I; H = (J + 520192 | 0) >>> 16 & 4; J = J << H; a = (J + 245760 | 0) >>> 16 & 2; a = 14 - (H | I | a) + (J << a >>> 15) | 0; a = f >>> (a + 7 | 0) & 1 | a << 1 } while (0); e = 59392 + (a << 2) | 0; c[m + 28 >> 2] = a; b = m + 16 | 0; c[b + 4 >> 2] = 0; c[b >> 2] = 0; b = c[14773] | 0; d = 1 << a; if (!(b & d)) { c[14773] = b | d; c[e >> 2] = m; c[m + 24 >> 2] = e; c[m + 12 >> 2] = m; c[m + 8 >> 2] = m; break } a = 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)) { C = 265; break } d = e + 16 + (a >>> 31 << 2) | 0; b = c[d >> 2] | 0; if (!b) { C = 262; break } else { a = a << 1; e = b } } if ((C | 0) == 262) if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[d >> 2] = m; c[m + 24 >> 2] = e; c[m + 12 >> 2] = m; c[m + 8 >> 2] = m; break } else if ((C | 0) == 265) { a = e + 8 | 0; b = c[a >> 2] | 0; J = c[14776] | 0; if (b >>> 0 >= J >>> 0 & e >>> 0 >= J >>> 0) { c[b + 12 >> 2] = m; c[a >> 2] = m; c[m + 8 >> 2] = b; c[m + 12 >> 2] = e; c[m + 24 >> 2] = 0; break } else sa() } } else { J = (c[14775] | 0) + j | 0; c[14775] = J; c[14778] = m; c[m + 4 >> 2] = J | 1 } while (0); J = n + 8 | 0; l = K; return J | 0 } a = 59536; while (1) { b = c[a >> 2] | 0; if (b >>> 0 <= k >>> 0 ? (D = b + (c[a + 4 >> 2] | 0) | 0, D >>> 0 > k >>> 0) : 0) break; a = c[a + 8 >> 2] | 0 } f = D + -47 | 0; a = f + 8 | 0; a = f + ((a & 7 | 0) == 0 ? 0 : 0 - a & 7) | 0; f = k + 16 | 0; a = a >>> 0 < f >>> 0 ? k : a; b = a + 8 | 0; d = h + 8 | 0; d = (d & 7 | 0) == 0 ? 0 : 0 - d & 7; J = h + d | 0; d = g + -40 - d | 0; c[14778] = J; c[14775] = d; c[J + 4 >> 2] = d | 1; c[J + d + 4 >> 2] = 40; c[14779] = c[14894]; d = a + 4 | 0; c[d >> 2] = 27; c[b >> 2] = c[14884]; c[b + 4 >> 2] = c[14885]; c[b + 8 >> 2] = c[14886]; c[b + 12 >> 2] = c[14887]; c[14884] = h; c[14885] = g; c[14887] = 0; c[14886] = b; b = a + 24 | 0; do { J = b; b = b + 4 | 0; c[b >> 2] = 7 } while ((J + 8 | 0) >>> 0 < D >>> 0); if ((a | 0) != (k | 0)) { g = a - k | 0; c[d >> 2] = c[d >> 2] & -2; c[k + 4 >> 2] = g | 1; c[a >> 2] = g; b = g >>> 3; if (g >>> 0 < 256) { d = 59128 + (b << 1 << 2) | 0; a = c[14772] | 0; b = 1 << b; if (a & b) { b = d + 8 | 0; a = c[b >> 2] | 0; if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { F = b; G = a } } else { c[14772] = a | b; F = d + 8 | 0; G = d } c[F >> 2] = k; c[G + 12 >> 2] = k; c[k + 8 >> 2] = G; c[k + 12 >> 2] = d; break } b = g >>> 8; if (b) if (g >>> 0 > 16777215) d = 31; else { I = (b + 1048320 | 0) >>> 16 & 8; J = b << I; H = (J + 520192 | 0) >>> 16 & 4; J = J << H; d = (J + 245760 | 0) >>> 16 & 2; d = 14 - (H | I | d) + (J << d >>> 15) | 0; d = g >>> (d + 7 | 0) & 1 | d << 1 } else d = 0; e = 59392 + (d << 2) | 0; c[k + 28 >> 2] = d; c[k + 20 >> 2] = 0; c[f >> 2] = 0; b = c[14773] | 0; a = 1 << d; if (!(b & a)) { c[14773] = b | a; c[e >> 2] = k; c[k + 24 >> 2] = e; c[k + 12 >> 2] = k; c[k + 8 >> 2] = k; 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)) { C = 292; break } d = e + 16 + (a >>> 31 << 2) | 0; b = c[d >> 2] | 0; if (!b) { C = 289; break } else { a = a << 1; e = b } } if ((C | 0) == 289) if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[d >> 2] = k; c[k + 24 >> 2] = e; c[k + 12 >> 2] = k; c[k + 8 >> 2] = k; break } else if ((C | 0) == 292) { a = e + 8 | 0; b = c[a >> 2] | 0; J = c[14776] | 0; if (b >>> 0 >= J >>> 0 & e >>> 0 >= J >>> 0) { c[b + 12 >> 2] = k; c[a >> 2] = k; c[k + 8 >> 2] = b; c[k + 12 >> 2] = e; c[k + 24 >> 2] = 0; break } else sa() } } } else { J = c[14776] | 0; if ((J | 0) == 0 | h >>> 0 < J >>> 0) c[14776] = h; c[14884] = h; c[14885] = g; c[14887] = 0; c[14781] = c[14890]; c[14780] = -1; b = 0; do { J = 59128 + (b << 1 << 2) | 0; c[J + 12 >> 2] = J; c[J + 8 >> 2] = J; b = b + 1 | 0 } while ((b | 0) != 32); J = h + 8 | 0; J = (J & 7 | 0) == 0 ? 0 : 0 - J & 7; I = h + J | 0; J = g + -40 - J | 0; c[14778] = I; c[14775] = J; c[I + 4 >> 2] = J | 1; c[I + J + 4 >> 2] = 40; c[14779] = c[14894] } while (0); b = c[14775] | 0; if (b >>> 0 > p >>> 0) { H = b - p | 0; c[14775] = H; J = c[14778] | 0; I = J + p | 0; c[14778] = I; c[I + 4 >> 2] = H | 1; c[J + 4 >> 2] = p | 3; J = J + 8 | 0; l = K; return J | 0 } } c[(XO() | 0) >> 2] = 12; J = 0; l = K; return J | 0 } function IQ(a) { a = a | 0; var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0; if (!a) return; d = a + -8 | 0; h = c[14776] | 0; if (d >>> 0 < h >>> 0) sa(); a = c[a + -4 >> 2] | 0; b = a & 3; if ((b | 0) == 1) sa(); e = a & -8; o = d + e | 0; a: 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) sa(); if ((k | 0) == (c[14777] | 0)) { b = o + 4 | 0; a = c[b >> 2] | 0; if ((a & 3 | 0) != 3) { m = k; r = k; f = j; break } c[14774] = j; c[b >> 2] = a & -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 = 59128 + (e << 1 << 2) | 0; if ((b | 0) != (a | 0)) { if (b >>> 0 < h >>> 0) sa(); if ((c[b + 12 >> 2] | 0) != (k | 0)) sa() } if ((d | 0) == (b | 0)) { c[14772] = c[14772] & ~(1 << e); m = k; r = k; f = j; break } if ((d | 0) != (a | 0)) { if (d >>> 0 < h >>> 0) sa(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (k | 0)) g = a; else sa() } else g = d + 8 | 0; c[b + 12 >> 2] = d; c[g >> 2] = b; m = k; r = 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 e = d } else e = b; while (1) { d = a + 20 | 0; b = c[d >> 2] | 0; if (b | 0) { a = b; e = d; continue } d = a + 16 | 0; b = c[d >> 2] | 0; if (!b) break; else { a = b; e = d } } if (e >>> 0 < h >>> 0) sa(); else { c[e >> 2] = 0; i = a; break } } else { e = c[k + 8 >> 2] | 0; if (e >>> 0 < h >>> 0) sa(); a = e + 12 | 0; if ((c[a >> 2] | 0) != (k | 0)) sa(); b = d + 8 | 0; if ((c[b >> 2] | 0) == (k | 0)) { c[a >> 2] = d; c[b >> 2] = e; i = d; break } else sa() } while (0); if (g) { a = c[k + 28 >> 2] | 0; b = 59392 + (a << 2) | 0; do if ((k | 0) == (c[b >> 2] | 0)) { c[b >> 2] = i; if (!i) { c[14773] = c[14773] & ~(1 << a); m = k; r = k; f = j; break a } } else if (g >>> 0 >= (c[14776] | 0) >>> 0) { c[g + 16 + (((c[g + 16 >> 2] | 0) != (k | 0) & 1) << 2) >> 2] = i; if (!i) { m = k; r = k; f = j; break a } else break } else sa(); while (0); d = c[14776] | 0; if (i >>> 0 < d >>> 0) sa(); c[i + 24 >> 2] = g; b = k + 16 | 0; a = c[b >> 2] | 0; do if (a | 0) if (a >>> 0 < d >>> 0) sa(); else { c[i + 16 >> 2] = a; c[a + 24 >> 2] = i; break } while (0); a = c[b + 4 >> 2] | 0; if (a) if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[i + 20 >> 2] = a; c[a + 24 >> 2] = i; m = k; r = k; f = j; break } else { m = k; r = k; f = j } } else { m = k; r = k; f = j } } else { m = d; r = d; f = e } while (0); if (m >>> 0 >= o >>> 0) sa(); a = o + 4 | 0; b = c[a >> 2] | 0; if (!(b & 1)) sa(); if (!(b & 2)) { a = c[14777] | 0; if ((o | 0) == (c[14778] | 0)) { q = (c[14775] | 0) + f | 0; c[14775] = q; c[14778] = r; c[r + 4 >> 2] = q | 1; if ((r | 0) != (a | 0)) return; c[14777] = 0; c[14774] = 0; return } if ((o | 0) == (a | 0)) { q = (c[14774] | 0) + f | 0; c[14774] = q; c[14777] = m; c[r + 4 >> 2] = q | 1; c[m + q >> 2] = q; return } f = (b & -8) + f | 0; e = b >>> 3; b: do if (b >>> 0 >= 256) { g = c[o + 24 >> 2] | 0; a = c[o + 12 >> 2] | 0; do if ((a | 0) == (o | 0)) { d = o + 16 | 0; b = d + 4 | 0; a = c[b >> 2] | 0; if (!a) { a = c[d >> 2] | 0; if (!a) { n = 0; break } else e = d } else e = b; while (1) { d = a + 20 | 0; b = c[d >> 2] | 0; if (b | 0) { a = b; e = d; continue } d = a + 16 | 0; b = c[d >> 2] | 0; if (!b) break; else { a = b; e = d } } if (e >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[e >> 2] = 0; n = a; break } } else { b = c[o + 8 >> 2] | 0; if (b >>> 0 < (c[14776] | 0) >>> 0) sa(); d = b + 12 | 0; if ((c[d >> 2] | 0) != (o | 0)) sa(); e = a + 8 | 0; if ((c[e >> 2] | 0) == (o | 0)) { c[d >> 2] = a; c[e >> 2] = b; n = a; break } else sa() } while (0); if (g | 0) { a = c[o + 28 >> 2] | 0; b = 59392 + (a << 2) | 0; do if ((o | 0) == (c[b >> 2] | 0)) { c[b >> 2] = n; if (!n) { c[14773] = c[14773] & ~(1 << a); break b } } else if (g >>> 0 >= (c[14776] | 0) >>> 0) { c[g + 16 + (((c[g + 16 >> 2] | 0) != (o | 0) & 1) << 2) >> 2] = n; if (!n) break b; else break } else sa(); while (0); d = c[14776] | 0; if (n >>> 0 < d >>> 0) sa(); c[n + 24 >> 2] = g; b = o + 16 | 0; a = c[b >> 2] | 0; do if (a | 0) if (a >>> 0 < d >>> 0) sa(); else { c[n + 16 >> 2] = a; c[a + 24 >> 2] = n; break } while (0); a = c[b + 4 >> 2] | 0; if (a | 0) if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[n + 20 >> 2] = a; c[a + 24 >> 2] = n; break } } } else { b = c[o + 8 >> 2] | 0; d = c[o + 12 >> 2] | 0; a = 59128 + (e << 1 << 2) | 0; if ((b | 0) != (a | 0)) { if (b >>> 0 < (c[14776] | 0) >>> 0) sa(); if ((c[b + 12 >> 2] | 0) != (o | 0)) sa() } if ((d | 0) == (b | 0)) { c[14772] = c[14772] & ~(1 << e); break } if ((d | 0) != (a | 0)) { if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); a = d + 8 | 0; if ((c[a >> 2] | 0) == (o | 0)) l = a; else sa() } else l = d + 8 | 0; c[b + 12 >> 2] = d; c[l >> 2] = b } while (0); c[r + 4 >> 2] = f | 1; c[m + f >> 2] = f; if ((r | 0) == (c[14777] | 0)) { c[14774] = f; return } } else { c[a >> 2] = b & -2; c[r + 4 >> 2] = f | 1; c[m + f >> 2] = f } a = f >>> 3; if (f >>> 0 < 256) { d = 59128 + (a << 1 << 2) | 0; b = c[14772] | 0; a = 1 << a; if (b & a) { a = d + 8 | 0; b = c[a >> 2] | 0; if (b >>> 0 < (c[14776] | 0) >>> 0) sa(); else { p = a; q = b } } else { c[14772] = b | a; p = d + 8 | 0; q = d } c[p >> 2] = r; c[q + 12 >> 2] = r; c[r + 8 >> 2] = q; c[r + 12 >> 2] = d; return } a = f >>> 8; if (a) if (f >>> 0 > 16777215) b = 31; else { p = (a + 1048320 | 0) >>> 16 & 8; q = a << p; o = (q + 520192 | 0) >>> 16 & 4; q = q << o; b = (q + 245760 | 0) >>> 16 & 2; b = 14 - (o | p | b) + (q << b >>> 15) | 0; b = f >>> (b + 7 | 0) & 1 | b << 1 } else b = 0; e = 59392 + (b << 2) | 0; c[r + 28 >> 2] = b; c[r + 20 >> 2] = 0; c[r + 16 >> 2] = 0; a = c[14773] | 0; d = 1 << b; do if (a & d) { b = 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)) { a = 124; break } d = e + 16 + (b >>> 31 << 2) | 0; a = c[d >> 2] | 0; if (!a) { a = 121; break } else { b = b << 1; e = a } } if ((a | 0) == 121) if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[d >> 2] = r; c[r + 24 >> 2] = e; c[r + 12 >> 2] = r; c[r + 8 >> 2] = r; break } else if ((a | 0) == 124) { b = e + 8 | 0; a = c[b >> 2] | 0; q = c[14776] | 0; if (a >>> 0 >= q >>> 0 & e >>> 0 >= q >>> 0) { c[a + 12 >> 2] = r; c[b >> 2] = r; c[r + 8 >> 2] = a; c[r + 12 >> 2] = e; c[r + 24 >> 2] = 0; break } else sa() } } else { c[14773] = a | d; c[e >> 2] = r; c[r + 24 >> 2] = e; c[r + 12 >> 2] = r; c[r + 8 >> 2] = r } while (0); r = (c[14780] | 0) + -1 | 0; c[14780] = r; if (!r) a = 59544; else return; while (1) { a = c[a >> 2] | 0; if (!a) break; else a = a + 8 | 0 } c[14780] = -1; return } function JQ(a, b) { a = a | 0; b = b | 0; var d = 0, e = 0; if (!a) { a = HQ(b) | 0; return a | 0 } if (b >>> 0 > 4294967231) { c[(XO() | 0) >> 2] = 12; a = 0; return a | 0 } d = KQ(a + -8 | 0, b >>> 0 < 11 ? 16 : b + 11 & -8) | 0; if (d | 0) { a = d + 8 | 0; return a | 0 } d = HQ(b) | 0; if (!d) { a = 0; return a | 0 } e = c[a + -4 >> 2] | 0; e = (e & -8) - ((e & 3 | 0) == 0 ? 8 : 4) | 0; QQ(d | 0, a | 0, (e >>> 0 < b >>> 0 ? e : b) | 0) | 0; IQ(a); a = d; return a | 0 } function KQ(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; o = a + 4 | 0; n = c[o >> 2] | 0; d = n & -8; k = a + d | 0; i = c[14776] | 0; e = n & 3; if (!((e | 0) != 1 & a >>> 0 >= i >>> 0 & a >>> 0 < k >>> 0)) sa(); f = c[k + 4 >> 2] | 0; if (!(f & 1)) sa(); if (!e) { if (b >>> 0 < 256) { a = 0; return a | 0 } if (d >>> 0 >= (b + 4 | 0) >>> 0 ? (d - b | 0) >>> 0 <= c[14892] << 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[o >> 2] = n & 1 | b | 2; c[m + 4 >> 2] = d | 3; b = m + d + 4 | 0; c[b >> 2] = c[b >> 2] | 1; LQ(m, d); return a | 0 } if ((k | 0) == (c[14778] | 0)) { m = (c[14775] | 0) + d | 0; e = m - b | 0; d = a + b | 0; if (m >>> 0 <= b >>> 0) { a = 0; return a | 0 } c[o >> 2] = n & 1 | b | 2; c[d + 4 >> 2] = e | 1; c[14778] = d; c[14775] = e; return a | 0 } if ((k | 0) == (c[14777] | 0)) { f = (c[14774] | 0) + d | 0; if (f >>> 0 < b >>> 0) { a = 0; return a | 0 } d = f - b | 0; e = n & 1; if (d >>> 0 > 15) { n = a + b | 0; m = n + d | 0; c[o >> 2] = e | b | 2; c[n + 4 >> 2] = d | 1; c[m >> 2] = d; e = m + 4 | 0; c[e >> 2] = c[e >> 2] & -2; e = n } else { c[o >> 2] = e | f | 2; e = a + f + 4 | 0; c[e >> 2] = c[e >> 2] | 1; e = 0; d = 0 } c[14774] = d; c[14777] = 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; a: 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 g = f } else g = e; while (1) { f = d + 20 | 0; e = c[f >> 2] | 0; if (e | 0) { d = e; g = f; continue } f = d + 16 | 0; e = c[f >> 2] | 0; if (!e) break; else { d = e; g = f } } if (g >>> 0 < i >>> 0) sa(); else { c[g >> 2] = 0; j = d; break } } else { g = c[k + 8 >> 2] | 0; if (g >>> 0 < i >>> 0) sa(); d = g + 12 | 0; if ((c[d >> 2] | 0) != (k | 0)) sa(); e = f + 8 | 0; if ((c[e >> 2] | 0) == (k | 0)) { c[d >> 2] = f; c[e >> 2] = g; j = f; break } else sa() } while (0); if (h | 0) { d = c[k + 28 >> 2] | 0; e = 59392 + (d << 2) | 0; do if ((k | 0) == (c[e >> 2] | 0)) { c[e >> 2] = j; if (!j) { c[14773] = c[14773] & ~(1 << d); break a } } else if (h >>> 0 >= (c[14776] | 0) >>> 0) { c[h + 16 + (((c[h + 16 >> 2] | 0) != (k | 0) & 1) << 2) >> 2] = j; if (!j) break a; else break } else sa(); while (0); f = c[14776] | 0; if (j >>> 0 < f >>> 0) sa(); c[j + 24 >> 2] = h; e = k + 16 | 0; d = c[e >> 2] | 0; do if (d | 0) if (d >>> 0 < f >>> 0) sa(); else { c[j + 16 >> 2] = d; c[d + 24 >> 2] = j; break } while (0); d = c[e + 4 >> 2] | 0; if (d | 0) if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); 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 = 59128 + (g << 1 << 2) | 0; if ((e | 0) != (d | 0)) { if (e >>> 0 < i >>> 0) sa(); if ((c[e + 12 >> 2] | 0) != (k | 0)) sa() } if ((f | 0) == (e | 0)) { c[14772] = c[14772] & ~(1 << g); break } if ((f | 0) != (d | 0)) { if (f >>> 0 < i >>> 0) sa(); d = f + 8 | 0; if ((c[d >> 2] | 0) == (k | 0)) h = d; else sa() } else h = f + 8 | 0; c[e + 12 >> 2] = f; c[h >> 2] = e } while (0); d = n & 1; if (m >>> 0 < 16) { c[o >> 2] = l | d | 2; b = a + l + 4 | 0; c[b >> 2] = c[b >> 2] | 1; return a | 0 } else { n = a + b | 0; c[o >> 2] = d | b | 2; c[n + 4 >> 2] = m | 3; b = n + m + 4 | 0; c[b >> 2] = c[b >> 2] | 1; LQ(n, m); return a | 0 } return 0 } function LQ(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; a: do if (!(d & 1)) { e = c[a >> 2] | 0; if (!(d & 3)) return; l = a + (0 - e) | 0; k = e + b | 0; i = c[14776] | 0; if (l >>> 0 < i >>> 0) sa(); if ((l | 0) == (c[14777] | 0)) { a = o + 4 | 0; d = c[a >> 2] | 0; if ((d & 3 | 0) != 3) { r = l; f = k; break } c[14774] = k; c[a >> 2] = d & -2; c[l + 4 >> 2] = k | 1; c[l + k >> 2] = k; return } g = e >>> 3; if (e >>> 0 < 256) { a = c[l + 8 >> 2] | 0; b = c[l + 12 >> 2] | 0; d = 59128 + (g << 1 << 2) | 0; if ((a | 0) != (d | 0)) { if (a >>> 0 < i >>> 0) sa(); if ((c[a + 12 >> 2] | 0) != (l | 0)) sa() } if ((b | 0) == (a | 0)) { c[14772] = c[14772] & ~(1 << g); r = l; f = k; break } if ((b | 0) != (d | 0)) { if (b >>> 0 < i >>> 0) sa(); d = b + 8 | 0; if ((c[d >> 2] | 0) == (l | 0)) h = d; else sa() } else h = b + 8 | 0; c[a + 12 >> 2] = b; c[h >> 2] = a; 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; a = b + 4 | 0; d = c[a >> 2] | 0; if (!d) { d = c[b >> 2] | 0; if (!d) { j = 0; break } else e = b } else e = a; while (1) { b = d + 20 | 0; a = c[b >> 2] | 0; if (a | 0) { d = a; e = b; continue } b = d + 16 | 0; a = c[b >> 2] | 0; if (!a) break; else { d = a; e = b } } if (e >>> 0 < i >>> 0) sa(); else { c[e >> 2] = 0; j = d; break } } else { e = c[l + 8 >> 2] | 0; if (e >>> 0 < i >>> 0) sa(); d = e + 12 | 0; if ((c[d >> 2] | 0) != (l | 0)) sa(); a = b + 8 | 0; if ((c[a >> 2] | 0) == (l | 0)) { c[d >> 2] = b; c[a >> 2] = e; j = b; break } else sa() } while (0); if (g) { d = c[l + 28 >> 2] | 0; a = 59392 + (d << 2) | 0; do if ((l | 0) == (c[a >> 2] | 0)) { c[a >> 2] = j; if (!j) { c[14773] = c[14773] & ~(1 << d); r = l; f = k; break a } } else if (g >>> 0 >= (c[14776] | 0) >>> 0) { c[g + 16 + (((c[g + 16 >> 2] | 0) != (l | 0) & 1) << 2) >> 2] = j; if (!j) { r = l; f = k; break a } else break } else sa(); while (0); b = c[14776] | 0; if (j >>> 0 < b >>> 0) sa(); c[j + 24 >> 2] = g; a = l + 16 | 0; d = c[a >> 2] | 0; do if (d | 0) if (d >>> 0 < b >>> 0) sa(); else { c[j + 16 >> 2] = d; c[d + 24 >> 2] = j; break } while (0); d = c[a + 4 >> 2] | 0; if (d) if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[j + 20 >> 2] = d; c[d + 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[14776] | 0; if (o >>> 0 < h >>> 0) sa(); d = o + 4 | 0; a = c[d >> 2] | 0; if (!(a & 2)) { d = c[14777] | 0; if ((o | 0) == (c[14778] | 0)) { q = (c[14775] | 0) + f | 0; c[14775] = q; c[14778] = r; c[r + 4 >> 2] = q | 1; if ((r | 0) != (d | 0)) return; c[14777] = 0; c[14774] = 0; return } if ((o | 0) == (d | 0)) { q = (c[14774] | 0) + f | 0; c[14774] = q; c[14777] = r; c[r + 4 >> 2] = q | 1; c[r + q >> 2] = q; return } f = (a & -8) + f | 0; e = a >>> 3; b: do if (a >>> 0 >= 256) { g = c[o + 24 >> 2] | 0; b = c[o + 12 >> 2] | 0; do if ((b | 0) == (o | 0)) { b = o + 16 | 0; a = b + 4 | 0; d = c[a >> 2] | 0; if (!d) { d = c[b >> 2] | 0; if (!d) { n = 0; break } else e = b } else e = a; while (1) { b = d + 20 | 0; a = c[b >> 2] | 0; if (a | 0) { d = a; e = b; continue } b = d + 16 | 0; a = c[b >> 2] | 0; if (!a) break; else { d = a; e = b } } if (e >>> 0 < h >>> 0) sa(); else { c[e >> 2] = 0; n = d; break } } else { e = c[o + 8 >> 2] | 0; if (e >>> 0 < h >>> 0) sa(); d = e + 12 | 0; if ((c[d >> 2] | 0) != (o | 0)) sa(); a = b + 8 | 0; if ((c[a >> 2] | 0) == (o | 0)) { c[d >> 2] = b; c[a >> 2] = e; n = b; break } else sa() } while (0); if (g | 0) { d = c[o + 28 >> 2] | 0; a = 59392 + (d << 2) | 0; do if ((o | 0) == (c[a >> 2] | 0)) { c[a >> 2] = n; if (!n) { c[14773] = c[14773] & ~(1 << d); break b } } else if (g >>> 0 >= (c[14776] | 0) >>> 0) { c[g + 16 + (((c[g + 16 >> 2] | 0) != (o | 0) & 1) << 2) >> 2] = n; if (!n) break b; else break } else sa(); while (0); b = c[14776] | 0; if (n >>> 0 < b >>> 0) sa(); c[n + 24 >> 2] = g; a = o + 16 | 0; d = c[a >> 2] | 0; do if (d | 0) if (d >>> 0 < b >>> 0) sa(); else { c[n + 16 >> 2] = d; c[d + 24 >> 2] = n; break } while (0); d = c[a + 4 >> 2] | 0; if (d | 0) if (d >>> 0 < (c[14776] | 0) >>> 0) sa(); else { c[n + 20 >> 2] = d; c[d + 24 >> 2] = n; break } } } else { a = c[o + 8 >> 2] | 0; b = c[o + 12 >> 2] | 0; d = 59128 + (e << 1 << 2) | 0; if ((a | 0) != (d | 0)) { if (a >>> 0 < h >>> 0) sa(); if ((c[a + 12 >> 2] | 0) != (o | 0)) sa() } if ((b | 0) == (a | 0)) { c[14772] = c[14772] & ~(1 << e); break } if ((b | 0) != (d | 0)) { if (b >>> 0 < h >>> 0) sa(); d = b + 8 | 0; if ((c[d >> 2] | 0) == (o | 0)) m = d; else sa() } else m = b + 8 | 0; c[a + 12 >> 2] = b; c[m >> 2] = a } while (0); c[r + 4 >> 2] = f | 1; c[r + f >> 2] = f; if ((r | 0) == (c[14777] | 0)) { c[14774] = f; return } } else { c[d >> 2] = a & -2; c[r + 4 >> 2] = f | 1; c[r + f >> 2] = f } d = f >>> 3; if (f >>> 0 < 256) { b = 59128 + (d << 1 << 2) | 0; a = c[14772] | 0; d = 1 << d; if (a & d) { d = b + 8 | 0; a = c[d >> 2] | 0; if (a >>> 0 < (c[14776] | 0) >>> 0) sa(); else { p = d; q = a } } else { c[14772] = a | d; p = b + 8 | 0; q = b } c[p >> 2] = r; c[q + 12 >> 2] = r; c[r + 8 >> 2] = q; c[r + 12 >> 2] = b; return } d = f >>> 8; if (d) if (f >>> 0 > 16777215) a = 31; else { p = (d + 1048320 | 0) >>> 16 & 8; q = d << 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 = 59392 + (a << 2) | 0; c[r + 28 >> 2] = a; c[r + 20 >> 2] = 0; c[r + 16 >> 2] = 0; d = c[14773] | 0; b = 1 << a; if (!(d & b)) { c[14773] = d | b; c[e >> 2] = r; c[r + 24 >> 2] = e; c[r + 12 >> 2] = r; c[r + 8 >> 2] = r; return } a = 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)) { d = 121; break } b = e + 16 + (a >>> 31 << 2) | 0; d = c[b >> 2] | 0; if (!d) { d = 118; break } else { a = a << 1; e = d } } if ((d | 0) == 118) { if (b >>> 0 < (c[14776] | 0) >>> 0) sa(); c[b >> 2] = r; c[r + 24 >> 2] = e; c[r + 12 >> 2] = r; c[r + 8 >> 2] = r; return } else if ((d | 0) == 121) { a = e + 8 | 0; d = c[a >> 2] | 0; q = c[14776] | 0; if (!(d >>> 0 >= q >>> 0 & e >>> 0 >= q >>> 0)) sa(); 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 MQ() {} function NQ(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 (D = d, a - c >>> 0 | 0) | 0 } function OQ(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; c = a + c >>> 0; return (D = b + d + (c >>> 0 < a >>> 0 | 0) >>> 0, c | 0) | 0 } function PQ(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if ((c | 0) < 32) { D = b >>> c; return a >>> c | (b & (1 << c) - 1) << 32 - c } D = 0; return b >>> c - 32 | 0 } function QQ(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0; if ((e | 0) >= 8192) return Xa(b | 0, d | 0, e | 0) | 0; h = b | 0; g = b + e | 0; if ((b & 3) == (d & 3)) { while (b & 3) { if (!e) return h | 0; a[b >> 0] = a[d >> 0] | 0; b = b + 1 | 0; d = d + 1 | 0; e = e - 1 | 0 } e = g & -4 | 0; f = e - 64 | 0; while ((b | 0) <= (f | 0)) { c[b >> 2] = c[d >> 2]; c[b + 4 >> 2] = c[d + 4 >> 2]; c[b + 8 >> 2] = c[d + 8 >> 2]; c[b + 12 >> 2] = c[d + 12 >> 2]; c[b + 16 >> 2] = c[d + 16 >> 2]; c[b + 20 >> 2] = c[d + 20 >> 2]; c[b + 24 >> 2] = c[d + 24 >> 2]; c[b + 28 >> 2] = c[d + 28 >> 2]; c[b + 32 >> 2] = c[d + 32 >> 2]; c[b + 36 >> 2] = c[d + 36 >> 2]; c[b + 40 >> 2] = c[d + 40 >> 2]; c[b + 44 >> 2] = c[d + 44 >> 2]; c[b + 48 >> 2] = c[d + 48 >> 2]; c[b + 52 >> 2] = c[d + 52 >> 2]; c[b + 56 >> 2] = c[d + 56 >> 2]; c[b + 60 >> 2] = c[d + 60 >> 2]; b = b + 64 | 0; d = d + 64 | 0 } while ((b | 0) < (e | 0)) { c[b >> 2] = c[d >> 2]; b = b + 4 | 0; d = d + 4 | 0 } } else { e = g - 4 | 0; while ((b | 0) < (e | 0)) { a[b >> 0] = a[d >> 0] | 0; a[b + 1 >> 0] = a[d + 1 >> 0] | 0; a[b + 2 >> 0] = a[d + 2 >> 0] | 0; a[b + 3 >> 0] = a[d + 3 >> 0] | 0; b = b + 4 | 0; d = d + 4 | 0 } } while ((b | 0) < (g | 0)) { a[b >> 0] = a[d >> 0] | 0; b = b + 1 | 0; d = d + 1 | 0 } return h | 0 } function RQ(a) { a = a | 0; var b = 0, d = 0; d = a + 15 & -16 | 0; b = c[i >> 2] | 0; a = b + d | 0; if ((d | 0) > 0 & (a | 0) < (b | 0) | (a | 0) < 0) { _() | 0; $a(12); return -1 } c[i >> 2] = a; if ((a | 0) > (Z() | 0) ? (Y() | 0) == 0 : 0) { $a(12); c[i >> 2] = b; return -1 } return b | 0 } function SQ(a, b, c) { a = a | 0; b = b | 0; c = c | 0; if ((c | 0) < 32) { D = b << c | (a & (1 << c) - 1 << 32 - c) >>> 32 - c; return a << c } D = a << c - 32; return 0 } function TQ(b, d, e) { b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0, h = 0, i = 0; h = b + e | 0; d = d & 255; if ((e | 0) >= 67) { while (b & 3) { a[b >> 0] = d; b = b + 1 | 0 } f = h & -4 | 0; g = f - 64 | 0; i = d | d << 8 | d << 16 | d << 24; while ((b | 0) <= (g | 0)) { c[b >> 2] = i; c[b + 4 >> 2] = i; c[b + 8 >> 2] = i; c[b + 12 >> 2] = i; c[b + 16 >> 2] = i; c[b + 20 >> 2] = i; c[b + 24 >> 2] = i; c[b + 28 >> 2] = i; c[b + 32 >> 2] = i; c[b + 36 >> 2] = i; c[b + 40 >> 2] = i; c[b + 44 >> 2] = i; c[b + 48 >> 2] = i; c[b + 52 >> 2] = i; c[b + 56 >> 2] = i; c[b + 60 >> 2] = i; b = b + 64 | 0 } while ((b | 0) < (f | 0)) { c[b >> 2] = i; b = b + 4 | 0 } } while ((b | 0) < (h | 0)) { a[b >> 0] = d; b = b + 1 | 0 } return h - e | 0 } function UQ(b) { b = b | 0; var c = 0; c = a[n + (b & 255) >> 0] | 0; if ((c | 0) < 8) return c | 0; c = a[n + (b >> 8 & 255) >> 0] | 0; if ((c | 0) < 8) return c + 8 | 0; c = a[n + (b >> 16 & 255) >> 0] | 0; if ((c | 0) < 8) return c + 16 | 0; return (a[n + (b >>> 24) >> 0] | 0) + 24 | 0 } function VQ(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 (D = n, f) | 0 } else { if (!g) { n = 0; f = 0; return (D = n, f) | 0 } c[f >> 2] = a | 0; c[f + 4 >> 2] = b & 0; n = 0; f = 0; return (D = n, f) | 0 } } g = (i | 0) == 0; do if (h) { if (!g) { g = (V(i | 0) | 0) - (V(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 (D = n, f) | 0 } c[f >> 2] = a | 0; c[f + 4 >> 2] = j | b & 0; n = 0; f = 0; return (D = n, f) | 0 } g = h - 1 | 0; if (g & h | 0) { i = (V(h | 0) | 0) + 33 - (V(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 (D = o, p) | 0 } else { p = UQ(h | 0) | 0; o = k >>> (p >>> 0) | 0; p = k << 32 - p | l >>> (p >>> 0) | 0; return (D = 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 (D = 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 (D = 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 >>> ((UQ(i | 0) | 0) >>> 0); return (D = o, p) | 0 } g = (V(i | 0) | 0) - (V(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 (D = o, p) | 0 } c[f >> 2] = a | 0; c[f + 4 >> 2] = j | b & 0; o = 0; p = 0; return (D = o, p) | 0 } while (0); if (!h) { k = i; j = 0; i = 0 } else { m = d | 0 | 0; l = n | e & 0; k = OQ(m | 0, l | 0, -1, -1) | 0; d = D; 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; NQ(k | 0, d | 0, e | 0, n | 0) | 0; p = D; o = p >> 31 | ((p | 0) < 0 ? -1 : 0) << 1; i = o & 1; a = NQ(e | 0, n | 0, o & m | 0, (((p | 0) < 0 ? -1 : 0) >> 31 | ((p | 0) < 0 ? -1 : 0) << 1) & l | 0) | 0; b = D; 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 (D = o, p) | 0 } function WQ(a, b, d, e) { a = a | 0; b = b | 0; d = d | 0; e = e | 0; var f = 0, g = 0; g = l; l = l + 16 | 0; f = g | 0; VQ(a, b, d, e, f) | 0; l = g; return (D = c[f + 4 >> 2] | 0, c[f >> 2] | 0) | 0 } function XQ(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0; j = b >> 31 | ((b | 0) < 0 ? -1 : 0) << 1; i = ((b | 0) < 0 ? -1 : 0) >> 31 | ((b | 0) < 0 ? -1 : 0) << 1; f = d >> 31 | ((d | 0) < 0 ? -1 : 0) << 1; e = ((d | 0) < 0 ? -1 : 0) >> 31 | ((d | 0) < 0 ? -1 : 0) << 1; h = NQ(j ^ a | 0, i ^ b | 0, j | 0, i | 0) | 0; g = D; a = f ^ j; b = e ^ i; return NQ((VQ(h, g, NQ(f ^ c | 0, e ^ d | 0, f | 0, e | 0) | 0, D, 0) | 0) ^ a | 0, D ^ b | 0, a | 0, b | 0) | 0 } function YQ(a) { a = a | 0; return (a & 255) << 24 | (a >> 8 & 255) << 16 | (a >> 16 & 255) << 8 | a >>> 24 | 0 } function ZQ(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return VQ(a, b, c, d, 0) | 0 } function _Q(a, b) { a = a | 0; b = b | 0; var c = 0, d = 0, e = 0, f = 0; f = a & 65535; e = b & 65535; c = S(e, f) | 0; d = a >>> 16; a = (c >>> 16) + (S(e, d) | 0) | 0; e = b >>> 16; b = S(e, f) | 0; return (D = (a >>> 16) + (S(e, d) | 0) + (((a & 65535) + b | 0) >>> 16) | 0, a + b << 16 | c & 65535 | 0) | 0 } function $Q(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 = _Q(e, f) | 0; a = D; return (D = (S(b, f) | 0) + (S(d, e) | 0) + a | a & 0, c | 0 | 0) | 0 } function aR(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; return Nb[a & 63](b | 0, c | 0, d | 0) | 0 } function bR(a, b, c, d, e, f) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; f = f | 0; Ob[a & 1](b | 0, c | 0, d | 0, e | 0, f | 0) } function cR(a, b) { a = a | 0; b = b | 0; Pb[a & 511](b | 0) } function dR(a, b, c) { a = a | 0; b = b | 0; c = c | 0; Qb[a & 255](b | 0, c | 0) } function eR(a, b) { a = a | 0; b = b | 0; return Rb[a & 15](b | 0) | 0 } function fR(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; Sb[a & 31](b | 0, c | 0, d | 0) } function gR(a) { a = a | 0; Tb[a & 3]() } function hR(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; return Ub[a & 63](b | 0, c | 0, d | 0, e | 0) | 0 } function iR(a, b, c) { a = a | 0; b = b | 0; c = c | 0; return Vb[a & 31](b | 0, c | 0) | 0 } function jR(a, b, c, d, e, f) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; f = f | 0; return Wb[a & 3](b | 0, c | 0, d | 0, e | 0, f | 0) | 0 } function kR(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; Xb[a & 3](b | 0, c | 0, d | 0, e | 0) } function lR(a, b, c) { a = a | 0; b = b | 0; c = c | 0; W(0); return 0 } function mR(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; W(1) } function nR(a) { a = a | 0; W(2) } function oR(a, b) { a = a | 0; b = b | 0; W(3) } function pR(a) { a = a | 0; W(4); return 0 } function qR(a, b, c) { a = a | 0; b = b | 0; c = c | 0; W(5) } function rR() { W(6) } function sR(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; W(7); return 0 } function tR(a, b) { a = a | 0; b = b | 0; W(8); return 0 } function uR(a, b, c, d, e) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; e = e | 0; W(9); return 0 } function vR(a, b, c, d) { a = a | 0; b = b | 0; c = c | 0; d = d | 0; W(10) } // EMSCRIPTEN_END_FUNCS var Nb = [lR, ug, vg, wg, xg, yg, zg, Ag, Bg, Cg, Dg, Eg, Fg, Gg, Hg, Ig, Jg, Kg, Lg, Mg, Ng, Og, Pg, UO, VO, $O, aP, MP, fc, Nc, _c, tg, jg, kg, py, uz, Rz, EA, FA, MA, NA, UA, VA, ZA, _A, ZH, nI, HI, LI, PI, sN, UN, WN, CO, EO, lR, lR, lR, lR, lR, lR, lR, lR, lR]; var Ob = [mR, ui]; var Pb = [nR, ao, bo, co, eo, fo, go, ho, io, jo, ko, lo, mo, no, oo, po, qo, ro, so, to, uo, vo, wo, xo, yo, zo, Ao, Bo, Co, Do, Eo, Fo, Go, Ho, Io, Jo, Ko, Lo, Mo, No, _n, Oo, Po, Qo, Ro, So, To, Uo, Vo, Wo, Xo, Yo, Zo, _o, $o, ap, bp, cp, dp, ep, fp, gp, hp, ip, jp, kp, lp, mp, np, op, pp, qp, rp, sp, tp, up, vp, wp, xp, yp, zp, Ap, Bp, Cp, Dp, Ep, Fp, Gp, Hp, Ip, Jp, Kp, Lp, Mp, Np, Op, Pp, Qp, Rp, Sp, Tp, Up, Vp, Wp, Xp, Yp, Zp, _p, $p, aq, bq, cq, dq, eq, fq, gq, hq, iq, jq, kq, lq, mq, nq, oq, pq, qq, rq, sq, tq, uq, vq, wq, xq, yq, zq, Aq, Bq, Cq, Dq, Eq, Fq, Gq, Hq, Iq, Jq, Kq, Lq, Mq, Nq, Oq, Pq, Qq, Rq, Sq, Tq, Uq, Vq, Wq, Xq, Yq, Zq, _q, Zs, _s, $s, at, bt, ct, dt, et, ft, gt, ht, it, jt, kt, lt, mt, nt, ot, pt, qt, rt, st, tt, ut, vt, wt, xt, yt, zt, At, Bt, Ct, Dt, Et, Ft, Gt, Ht, It, Jt, Kt, Lt, Mt, Nt, Ot, Pt, Qt, Xs, dc, ec, Kc, Lc, Mc, Xc, Yc, Zc, $f, ag, bg, Qh, Sh, Th, Uh, Vh, Wh, Xh, Yh, Zh, _h, $h, ai, bi, ci, ki, fi, Zn, my, jz, qz, Bz, _z, DA, LA, TA, YA, YH, lI, GI, KI, OI, oN, FN, KN, TN, XN, YN, BO, FO, GO, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR, nR]; var Qb = [oR, Mj, Nj, Oj, Pj, Qj, Rj, Sj, Tj, Uj, Vj, Wj, Xj, Yj, Zj, _j, $j, ak, bk, ck, dk, ek, fk, gk, hk, ik, jk, kk, lk, mk, nk, ok, pk, qk, rk, sk, tk, uk, vk, wk, xk, yk, zk, Ak, Bk, Ck, Dk, Ek, Fk, Gk, Hk, Ik, Jk, Kk, Lk, Mk, Nk, Ok, Pk, Qk, Rk, Sk, Tk, Uk, Vk, Wk, Xk, Yk, Zk, _k, $k, al, bl, cl, dl, el, fl, gl, hl, il, jl, kl, ll, ml, nl, ol, pl, ql, rl, sl, tl, ul, vl, wl, xl, yl, zl, Al, Bl, Cl, Dl, El, Fl, Gl, Hl, Il, Jl, Kl, Ll, Ml, Nl, Ol, Pl, Ql, Rl, Sl, Tl, Ul, Vl, Wl, Xl, Yl, Zl, _l, $l, am, bm, cm, dm, em, fm, gm, hm, im, jm, km, lm, mm, nm, om, pm, qm, rm, sm, tm, gc, Oc, $c, Hd, Id, Uf, Qf, Rf, Sf, Nf, Mf, ef, Cv, _e, $e, rv, Lf, If, Hf, Bf, ri, si, ti, II, MI, QI, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR, oR]; var Rb = [pR, WA, RA, BA, JA, WH, jI, TO, ov, VN, DO, pR, pR, pR, pR, pR]; var Sb = [qR, od, qg, rg, sg, by, cy, dy, Sv, cw, dw, Pf, cf, Bh, li, Ef, Cx, Dx, Ex, hI, ay, qR, qR, qR, qR, qR, qR, qR, qR, qR, qR, qR]; var Tb = [rR, md, ig, rR]; var Ub = [sR, Au, Bu, Cu, Du, Eu, Fu, Gu, Hu, Iu, Ju, Ku, Lu, Mu, Nu, Ou, ny, oy, kz, lz, rz, sz, tz, Cz, Dz, Qz, $z, aA, _H, oI, pN, qN, rN, GN, HN, LN, MN, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR, sR]; var Vb = [tR, mg, og, pg, Zx, _x, $x, Kd, Dv, Qv, Rv, Of, qh, Ah, pd, zx, Ax, Bx, GA, HA, OA, PA, tR, tR, tR, tR, tR, tR, tR, tR, tR, tR]; var Wb = [uR, IA, QA, uR]; var Xb = [vR, hc, Pc, Ff]; return { _mac_get_sim: kd, _strlen: cP, _main: dg, ___udivdi3: ZQ, _bitshift64Lshr: PQ, ___udivmoddi4: VQ, _fflush: XP, _llvm_cttz_i32: UQ, _sbrk: RQ, _memcpy: QQ, _llvm_bswap_i32: YQ, ___muldi3: $Q, _bitshift64Shl: SQ, ___uremdi3: WQ, ___divdi3: XQ, _i64Subtract: NQ, _memset: TQ, _i64Add: OQ, _emscripten_get_global_libc: SO, _e8530_sdlc_frame_available: rw, _mac_set_msg: tg, ___errno_location: XO, ___muldsi3: _Q, _free: IQ, _malloc: HQ, runPostSets: MQ, stackAlloc: Yb, stackSave: Zb, stackRestore: _b, establishStackSpace: $b, setTempRet0: bc, getTempRet0: cc, setThrew: ac, stackAlloc: Yb, stackSave: Zb, stackRestore: _b, establishStackSpace: $b, setThrew: ac, setTempRet0: bc, getTempRet0: cc, dynCall_iiii: aR, dynCall_viiiii: bR, dynCall_vi: cR, dynCall_vii: dR, dynCall_ii: eR, dynCall_viii: fR, dynCall_v: gR, dynCall_iiiii: hR, dynCall_iii: iR, dynCall_iiiiii: jR, dynCall_viiii: kR } }) // EMSCRIPTEN_END_ASM (Module.asmGlobalArg, Module.asmLibraryArg, buffer); var _mac_get_sim = Module["_mac_get_sim"] = asm["_mac_get_sim"]; var _strlen = Module["_strlen"] = asm["_strlen"]; var _main = Module["_main"] = asm["_main"]; var stackSave = Module["stackSave"] = asm["stackSave"]; var getTempRet0 = Module["getTempRet0"] = asm["getTempRet0"]; var _llvm_cttz_i32 = Module["_llvm_cttz_i32"] = asm["_llvm_cttz_i32"]; var setThrew = Module["setThrew"] = asm["setThrew"]; var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"]; var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"]; var _mac_set_msg = Module["_mac_set_msg"] = asm["_mac_set_msg"]; var _fflush = Module["_fflush"] = asm["_fflush"]; var _memset = Module["_memset"] = asm["_memset"]; var _sbrk = Module["_sbrk"] = asm["_sbrk"]; var _memcpy = Module["_memcpy"] = asm["_memcpy"]; var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = asm["_llvm_bswap_i32"]; var ___muldi3 = Module["___muldi3"] = asm["___muldi3"]; var ___uremdi3 = Module["___uremdi3"] = asm["___uremdi3"]; var ___divdi3 = Module["___divdi3"] = asm["___divdi3"]; var stackAlloc = Module["stackAlloc"] = asm["stackAlloc"]; var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"]; var ___udivmoddi4 = Module["___udivmoddi4"] = asm["___udivmoddi4"]; var setTempRet0 = Module["setTempRet0"] = asm["setTempRet0"]; var _i64Add = Module["_i64Add"] = asm["_i64Add"]; var _emscripten_get_global_libc = Module["_emscripten_get_global_libc"] = asm["_emscripten_get_global_libc"]; var _e8530_sdlc_frame_available = Module["_e8530_sdlc_frame_available"] = asm["_e8530_sdlc_frame_available"]; var ___udivdi3 = Module["___udivdi3"] = asm["___udivdi3"]; var ___errno_location = Module["___errno_location"] = asm["___errno_location"]; var ___muldsi3 = Module["___muldsi3"] = asm["___muldsi3"]; var _free = Module["_free"] = asm["_free"]; var runPostSets = Module["runPostSets"] = asm["runPostSets"]; var establishStackSpace = Module["establishStackSpace"] = asm["establishStackSpace"]; var stackRestore = Module["stackRestore"] = asm["stackRestore"]; var _malloc = Module["_malloc"] = asm["_malloc"]; var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"]; var dynCall_viiiii = Module["dynCall_viiiii"] = asm["dynCall_viiiii"]; 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_viii = Module["dynCall_viii"] = asm["dynCall_viii"]; var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"]; var dynCall_iiiii = Module["dynCall_iiiii"] = asm["dynCall_iiiii"]; var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"]; var dynCall_iiiiii = Module["dynCall_iiiiii"] = asm["dynCall_iiiiii"]; var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"]; Runtime.stackAlloc = Module["stackAlloc"]; Runtime.stackSave = Module["stackSave"]; Runtime.stackRestore = Module["stackRestore"]; Runtime.establishStackSpace = Module["establishStackSpace"]; Runtime.setTempRet0 = Module["setTempRet0"]; Runtime.getTempRet0 = Module["getTempRet0"]; Module["asm"] = asm; 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 { var toLog = e; if (e && typeof e === "object" && e.stack) { toLog = [e, e.stack] } Module.printErr("exception thrown: " + toLog); Module["quit"](1, 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) } Module["quit"](status, 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 = true; if (Module["noInitialRun"]) { shouldRunNow = false } run()