system-7/emularity_engine_v1/pce-macplus.js

102442 lines
3.0 MiB

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 = "<generic error, no stack>"
}))
}),
staticInit: (function () {
FS.ensureErrnoError();
FS.nameTable = new Array(4096);
FS.mount(MEMFS, {}, "/");
FS.createDefaultDirectories();
FS.createDefaultDevices();
FS.createSpecialDirectories();
FS.filesystems = {
"MEMFS": MEMFS,
"IDBFS": IDBFS,
"NODEFS": NODEFS,
"WORKERFS": WORKERFS
}
}),
init: (function (input, output, error) {
assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");
FS.init.initialized = true;
FS.ensureErrnoError();
Module["stdin"] = input || Module["stdin"];
Module["stdout"] = output || Module["stdout"];
Module["stderr"] = error || Module["stderr"];
FS.createStandardStreams()
}),
quit: (function () {
FS.init.initialized = false;
var fflush = Module["_fflush"];
if (fflush) fflush(0);
for (var i = 0; i < FS.streams.length; i++) {
var stream = FS.streams[i];
if (!stream) {
continue
}
FS.close(stream)
}
}),
getMode: (function (canRead, canWrite) {
var mode = 0;
if (canRead) mode |= 292 | 73;
if (canWrite) mode |= 146;
return mode
}),
joinPath: (function (parts, forceRelative) {
var path = PATH.join.apply(null, parts);
if (forceRelative && path[0] == "/") path = path.substr(1);
return path
}),
absolutePath: (function (relative, base) {
return PATH.resolve(base, relative)
}),
standardizePath: (function (path) {
return PATH.normalize(path)
}),
findObject: (function (path, dontResolveLastLink) {
var ret = FS.analyzePath(path, dontResolveLastLink);
if (ret.exists) {
return ret.object
} else {
___setErrNo(ret.error);
return null
}
}),
analyzePath: (function (path, dontResolveLastLink) {
try {
var lookup = FS.lookupPath(path, {
follow: !dontResolveLastLink
});
path = lookup.path
} catch (e) {}
var ret = {
isRoot: false,
exists: false,
error: 0,
name: null,
path: null,
object: null,
parentExists: false,
parentPath: null,
parentObject: null
};
try {
var lookup = FS.lookupPath(path, {
parent: true
});
ret.parentExists = true;
ret.parentPath = lookup.path;
ret.parentObject = lookup.node;
ret.name = PATH.basename(path);
lookup = FS.lookupPath(path, {
follow: !dontResolveLastLink
});
ret.exists = true;
ret.path = lookup.path;
ret.object = lookup.node;
ret.name = lookup.node.name;
ret.isRoot = lookup.path === "/"
} catch (e) {
ret.error = e.errno
}
return ret
}),
createFolder: (function (parent, name, canRead, canWrite) {
var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
var mode = FS.getMode(canRead, canWrite);
return FS.mkdir(path, mode)
}),
createPath: (function (parent, path, canRead, canWrite) {
parent = typeof parent === "string" ? parent : FS.getPath(parent);
var parts = path.split("/").reverse();
while (parts.length) {
var part = parts.pop();
if (!part) continue;
var current = PATH.join2(parent, part);
try {
FS.mkdir(current)
} catch (e) {}
parent = current
}
return current
}),
createFile: (function (parent, name, properties, canRead, canWrite) {
var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
var mode = FS.getMode(canRead, canWrite);
return FS.create(path, mode)
}),
createDataFile: (function (parent, name, data, canRead, canWrite, canOwn) {
var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent;
var mode = FS.getMode(canRead, canWrite);
var node = FS.create(path, mode);
if (data) {
if (typeof data === "string") {
var arr = new Array(data.length);
for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i);
data = arr
}
FS.chmod(node, mode | 146);
var stream = FS.open(node, "w");
FS.write(stream, data, 0, data.length, 0, canOwn);
FS.close(stream);
FS.chmod(node, mode)
}
return node
}),
createDevice: (function (parent, name, input, output) {
var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
var mode = FS.getMode(!!input, !!output);
if (!FS.createDevice.major) FS.createDevice.major = 64;
var dev = FS.makedev(FS.createDevice.major++, 0);
FS.registerDevice(dev, {
open: (function (stream) {
stream.seekable = false
}),
close: (function (stream) {
if (output && output.buffer && output.buffer.length) {
output(10)
}
}),
read: (function (stream, buffer, offset, length, pos) {
var bytesRead = 0;
for (var i = 0; i < length; i++) {
var result;
try {
result = input()
} catch (e) {
throw new FS.ErrnoError(ERRNO_CODES.EIO)
}
if (result === undefined && bytesRead === 0) {
throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)
}
if (result === null || result === undefined) break;
bytesRead++;
buffer[offset + i] = result
}
if (bytesRead) {
stream.node.timestamp = Date.now()
}
return bytesRead
}),
write: (function (stream, buffer, offset, length, pos) {
for (var i = 0; i < length; i++) {
try {
output(buffer[offset + i])
} catch (e) {
throw new FS.ErrnoError(ERRNO_CODES.EIO)
}
}
if (length) {
stream.node.timestamp = Date.now()
}
return i
})
});
return FS.mkdev(path, mode, dev)
}),
createLink: (function (parent, name, target, canRead, canWrite) {
var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
return FS.symlink(target, path)
}),
forceLoadFile: (function (obj) {
if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true;
var success = true;
if (typeof XMLHttpRequest !== "undefined") {
throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")
} else if (Module["read"]) {
try {
obj.contents = intArrayFromString(Module["read"](obj.url), true);
obj.usedBytes = obj.contents.length
} catch (e) {
success = false
}
} else {
throw new Error("Cannot load without read() or XMLHttpRequest.")
}
if (!success) ___setErrNo(ERRNO_CODES.EIO);
return success
}),
createLazyFile: (function (parent, name, url, canRead, canWrite) {
function LazyUint8Array() {
this.lengthKnown = false;
this.chunks = []
}
LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {
if (idx > this.length - 1 || idx < 0) {
return undefined
}
var chunkOffset = idx % this.chunkSize;
var chunkNum = idx / this.chunkSize | 0;
return this.getter(chunkNum)[chunkOffset]
};
LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) {
this.getter = getter
};
LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() {
var xhr = new XMLHttpRequest;
xhr.open("HEAD", url, false);
xhr.send(null);
if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
var datalength = Number(xhr.getResponseHeader("Content-length"));
var header;
var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes";
var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip";
var chunkSize = 1024 * 1024;
if (!hasByteServing) chunkSize = datalength;
var doXHR = (function (from, to) {
if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!");
if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!");
var xhr = new XMLHttpRequest;
xhr.open("GET", url, false);
if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to);
if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer";
if (xhr.overrideMimeType) {
xhr.overrideMimeType("text/plain; charset=x-user-defined")
}
xhr.send(null);
if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
if (xhr.response !== undefined) {
return new Uint8Array(xhr.response || [])
} else {
return intArrayFromString(xhr.responseText || "", true)
}
});
var lazyArray = this;
lazyArray.setDataGetter((function (chunkNum) {
var start = chunkNum * chunkSize;
var end = (chunkNum + 1) * chunkSize - 1;
end = Math.min(end, datalength - 1);
if (typeof lazyArray.chunks[chunkNum] === "undefined") {
lazyArray.chunks[chunkNum] = doXHR(start, end)
}
if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!");
return lazyArray.chunks[chunkNum]
}));
if (usesGzip || !datalength) {
chunkSize = datalength = 1;
datalength = this.getter(0).length;
chunkSize = datalength;
console.log("LazyFiles on gzip forces download of the whole file when length is accessed")
}
this._length = datalength;
this._chunkSize = chunkSize;
this.lengthKnown = true
};
if (typeof XMLHttpRequest !== "undefined") {
if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";
var lazyArray = new LazyUint8Array;
Object.defineProperties(lazyArray, {
length: {
get: (function () {
if (!this.lengthKnown) {
this.cacheLength()
}
return this._length
})
},
chunkSize: {
get: (function () {
if (!this.lengthKnown) {
this.cacheLength()
}
return this._chunkSize
})
}
});
var properties = {
isDevice: false,
contents: lazyArray
}
} else {
var properties = {
isDevice: false,
url: url
}
}
var node = FS.createFile(parent, name, properties, canRead, canWrite);
if (properties.contents) {
node.contents = properties.contents
} else if (properties.url) {
node.contents = null;
node.url = properties.url
}
Object.defineProperties(node, {
usedBytes: {
get: (function () {
return this.contents.length
})
}
});
var stream_ops = {};
var keys = Object.keys(node.stream_ops);
keys.forEach((function (key) {
var fn = node.stream_ops[key];
stream_ops[key] = function forceLoadLazyFile() {
if (!FS.forceLoadFile(node)) {
throw new FS.ErrnoError(ERRNO_CODES.EIO)
}
return fn.apply(null, arguments)
}
}));
stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) {
if (!FS.forceLoadFile(node)) {
throw new FS.ErrnoError(ERRNO_CODES.EIO)
}
var contents = stream.node.contents;
if (position >= contents.length) return 0;
var size = Math.min(contents.length - position, length);
assert(size >= 0);
if (contents.slice) {
for (var i = 0; i < size; i++) {
buffer[offset + i] = contents[position + i]
}
} else {
for (var i = 0; i < size; i++) {
buffer[offset + i] = contents.get(position + i)
}
}
return size
};
node.stream_ops = stream_ops;
return node
}),
createPreloadedFile: (function (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) {
Browser.init();
var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent;
var dep = getUniqueRunDependency("cp " + fullname);
function processData(byteArray) {
function finish(byteArray) {
if (preFinish) preFinish();
if (!dontCreateFile) {
FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn)
}
if (onload) onload();
removeRunDependency(dep)
}
var handled = false;
Module["preloadPlugins"].forEach((function (plugin) {
if (handled) return;
if (plugin["canHandle"](fullname)) {
plugin["handle"](byteArray, fullname, finish, (function () {
if (onerror) onerror();
removeRunDependency(dep)
}));
handled = true
}
}));
if (!handled) finish(byteArray)
}
addRunDependency(dep);
if (typeof url == "string") {
Browser.asyncLoad(url, (function (byteArray) {
processData(byteArray)
}), onerror)
} else {
processData(url)
}
}),
indexedDB: (function () {
return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB
}),
DB_NAME: (function () {
return "EM_FS_" + window.location.pathname
}),
DB_VERSION: 20,
DB_STORE_NAME: "FILE_DATA",
saveFilesToDB: (function (paths, onload, onerror) {
onload = onload || (function () {});
onerror = onerror || (function () {});
var indexedDB = FS.indexedDB();
try {
var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION)
} catch (e) {
return onerror(e)
}
openRequest.onupgradeneeded = function openRequest_onupgradeneeded() {
console.log("creating db");
var db = openRequest.result;
db.createObjectStore(FS.DB_STORE_NAME)
};
openRequest.onsuccess = function openRequest_onsuccess() {
var db = openRequest.result;
var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite");
var files = transaction.objectStore(FS.DB_STORE_NAME);
var ok = 0,
fail = 0,
total = paths.length;
function finish() {
if (fail == 0) onload();
else onerror()
}
paths.forEach((function (path) {
var putRequest = files.put(FS.analyzePath(path).object.contents, path);
putRequest.onsuccess = function putRequest_onsuccess() {
ok++;
if (ok + fail == total) finish()
};
putRequest.onerror = function putRequest_onerror() {
fail++;
if (ok + fail == total) finish()
}
}));
transaction.onerror = onerror
};
openRequest.onerror = onerror
}),
loadFilesFromDB: (function (paths, onload, onerror) {
onload = onload || (function () {});
onerror = onerror || (function () {});
var indexedDB = FS.indexedDB();
try {
var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION)
} catch (e) {
return onerror(e)
}
openRequest.onupgradeneeded = onerror;
openRequest.onsuccess = function openRequest_onsuccess() {
var db = openRequest.result;
try {
var transaction = db.transaction([FS.DB_STORE_NAME], "readonly")
} catch (e) {
onerror(e);
return
}
var files = transaction.objectStore(FS.DB_STORE_NAME);
var ok = 0,
fail = 0,
total = paths.length;
function finish() {
if (fail == 0) onload();
else onerror()
}
paths.forEach((function (path) {
var getRequest = files.get(path);
getRequest.onsuccess = function getRequest_onsuccess() {
if (FS.analyzePath(path).exists) {
FS.unlink(path)
}
FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true);
ok++;
if (ok + fail == total) finish()
};
getRequest.onerror = function getRequest_onerror() {
fail++;
if (ok + fail == total) finish()
}
}));
transaction.onerror = onerror
};
openRequest.onerror = onerror
})
};
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()