opencv-nodejs
Version:
735 lines (713 loc) • 19 MB
JavaScript
(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(function () {
return (root.cv = factory());
});
} else if (typeof module === 'object' && module.exports) {
// Node. Does not work with strict CommonJS, but
// only CommonJS-like environments that support module.exports,
// like Node.
module.exports = factory();
} else if (typeof window === 'object') {
// Browser globals
root.cv = factory();
} else if (typeof importScripts === 'function') {
// Web worker
root.cv = factory;
} else {
// Other shells, e.g. d8
root.cv = factory();
}
}(this, function () {
var cv = (function() {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(cv) {
cv = cv || {};
var Module = typeof cv !== "undefined" ? cv : {};
var moduleOverrides = {};
var key;
for (key in Module) {
if (Module.hasOwnProperty(key)) {
moduleOverrides[key] = Module[key]
}
}
var arguments_ = [];
var thisProgram = "./this.program";
var quit_ = function (status, toThrow) {
throw toThrow
};
var ENVIRONMENT_IS_WEB = false;
var ENVIRONMENT_IS_WORKER = false;
var ENVIRONMENT_IS_NODE = false;
var ENVIRONMENT_IS_SHELL = false;
ENVIRONMENT_IS_WEB = typeof window === "object";
ENVIRONMENT_IS_WORKER = typeof importScripts === "function";
ENVIRONMENT_IS_NODE = typeof process === "object" && typeof process.versions === "object" && typeof process.versions.node === "string";
ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER;
if (Module["ENVIRONMENT"]) {
throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")
}
var scriptDirectory = "";
function locateFile(path) {
if (Module["locateFile"]) {
return Module["locateFile"](path, scriptDirectory)
}
return scriptDirectory + path
}
var read_, readAsync, readBinary, setWindowTitle;
var nodeFS;
var nodePath;
if (ENVIRONMENT_IS_NODE) {
if (ENVIRONMENT_IS_WORKER) {
scriptDirectory = require("path").dirname(scriptDirectory) + "/"
} else {
scriptDirectory = __dirname + "/"
}
read_ = function shell_read(filename, binary) {
var ret = tryParseAsDataURI(filename);
if (ret) {
return binary ? ret : ret.toString()
}
if (!nodeFS) nodeFS = require("fs");
if (!nodePath) nodePath = require("path");
filename = nodePath["normalize"](filename);
return nodeFS["readFileSync"](filename, binary ? null : "utf8")
};
readBinary = function readBinary(filename) {
var ret = read_(filename, true);
if (!ret.buffer) {
ret = new Uint8Array(ret)
}
assert(ret.buffer);
return ret
};
if (process["argv"].length > 1) {
thisProgram = process["argv"][1].replace(/\\/g, "/")
}
arguments_ = process["argv"].slice(2);
process["on"]("uncaughtException", function (ex) {
if (!(ex instanceof ExitStatus)) {
throw ex
}
});
process["on"]("unhandledRejection", abort);
quit_ = function (status) {
process["exit"](status)
};
Module["inspect"] = function () {
return "[Emscripten Module object]"
}
} else if (ENVIRONMENT_IS_SHELL) {
if (typeof read != "undefined") {
read_ = function shell_read(f) {
var data = tryParseAsDataURI(f);
if (data) {
return intArrayToString(data)
}
return read(f)
}
}
readBinary = function readBinary(f) {
var data;
data = tryParseAsDataURI(f);
if (data) {
return data
}
if (typeof readbuffer === "function") {
return new Uint8Array(readbuffer(f))
}
data = read(f, "binary");
assert(typeof data === "object");
return data
};
if (typeof scriptArgs != "undefined") {
arguments_ = scriptArgs
} else if (typeof arguments != "undefined") {
arguments_ = arguments
}
if (typeof quit === "function") {
quit_ = function (status) {
quit(status)
}
}
if (typeof print !== "undefined") {
if (typeof console === "undefined") console = {};
console.log = print;
console.warn = console.error = typeof printErr !== "undefined" ? printErr : print
}
} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
if (ENVIRONMENT_IS_WORKER) {
scriptDirectory = self.location.href
} else if (document.currentScript) {
scriptDirectory = document.currentScript.src
}
if (_scriptDir) {
scriptDirectory = _scriptDir
}
if (scriptDirectory.indexOf("blob:") !== 0) {
scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1)
} else {
scriptDirectory = ""
}
{
read_ = function shell_read(url) {
try {
var xhr = new XMLHttpRequest;
xhr.open("GET", url, false);
xhr.send(null);
return xhr.responseText
} catch (err) {
var data = tryParseAsDataURI(url);
if (data) {
return intArrayToString(data)
}
throw err
}
};
if (ENVIRONMENT_IS_WORKER) {
readBinary = function readBinary(url) {
try {
var xhr = new XMLHttpRequest;
xhr.open("GET", url, false);
xhr.responseType = "arraybuffer";
xhr.send(null);
return new Uint8Array(xhr.response)
} catch (err) {
var data = tryParseAsDataURI(url);
if (data) {
return data
}
throw err
}
}
}
readAsync = 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);
return
}
var data = tryParseAsDataURI(url);
if (data) {
onload(data.buffer);
return
}
onerror()
};
xhr.onerror = onerror;
xhr.send(null)
}
}
setWindowTitle = function (title) {
document.title = title
}
} else {
throw new Error("environment detection error")
}
var out = Module["print"] || console.log.bind(console);
var err = Module["printErr"] || console.warn.bind(console);
for (key in moduleOverrides) {
if (moduleOverrides.hasOwnProperty(key)) {
Module[key] = moduleOverrides[key]
}
}
moduleOverrides = null;
if (Module["arguments"]) arguments_ = Module["arguments"];
if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", {
configurable: true,
get: function () {
abort("Module.arguments has been replaced with plain arguments_")
}
});
if (Module["thisProgram"]) thisProgram = Module["thisProgram"];
if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", {
configurable: true,
get: function () {
abort("Module.thisProgram has been replaced with plain thisProgram")
}
});
if (Module["quit"]) quit_ = Module["quit"];
if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", {
configurable: true,
get: function () {
abort("Module.quit has been replaced with plain quit_")
}
});
assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");
assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");
assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");
assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead");
assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)");
assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)");
assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)");
assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)");
assert(typeof Module["TOTAL_MEMORY"] === "undefined", "Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");
if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", {
configurable: true,
get: function () {
abort("Module.read has been replaced with plain read_")
}
});
if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", {
configurable: true,
get: function () {
abort("Module.readAsync has been replaced with plain readAsync")
}
});
if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", {
configurable: true,
get: function () {
abort("Module.readBinary has been replaced with plain readBinary")
}
});
if (!Object.getOwnPropertyDescriptor(Module, "setWindowTitle")) Object.defineProperty(Module, "setWindowTitle", {
configurable: true,
get: function () {
abort("Module.setWindowTitle has been replaced with plain setWindowTitle")
}
});
var STACK_ALIGN = 16;
var stackSave;
var stackRestore;
var stackAlloc;
stackSave = stackRestore = stackAlloc = function () {
abort("cannot use the stack before compiled code is ready to run, and has provided stack access")
};
function dynamicAlloc(size) {
assert(DYNAMICTOP_PTR);
var ret = HEAP32[DYNAMICTOP_PTR >> 2];
var end = ret + size + 15 & -16;
assert(end <= HEAP8.length, "failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly");
HEAP32[DYNAMICTOP_PTR >> 2] = end;
return ret
}
function getNativeTypeSize(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 4
} else if (type[0] === "i") {
var bits = Number(type.substr(1));
assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type);
return bits / 8
} else {
return 0
}
}
}
}
function warnOnce(text) {
if (!warnOnce.shown) warnOnce.shown = {};
if (!warnOnce.shown[text]) {
warnOnce.shown[text] = 1;
err(text)
}
}
function convertJsFunctionToWasm(func, sig) {
return func
}
var freeTableIndexes = [];
var functionsInTableMap;
function addFunctionWasm(func, sig) {
var table = wasmTable;
if (!functionsInTableMap) {
functionsInTableMap = new WeakMap;
for (var i = 0; i < table.length; i++) {
var item = table.get(i);
if (item) {
functionsInTableMap.set(item, i)
}
}
}
if (functionsInTableMap.has(func)) {
return functionsInTableMap.get(func)
}
var ret;
if (freeTableIndexes.length) {
ret = freeTableIndexes.pop()
} else {
ret = table.length;
try {
table.grow(1)
} catch (err) {
if (!(err instanceof RangeError)) {
throw err
}
throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."
}
}
try {
table.set(ret, func)
} catch (err) {
if (!(err instanceof TypeError)) {
throw err
}
assert(typeof sig !== "undefined", "Missing signature argument to addFunction");
var wrapped = convertJsFunctionToWasm(func, sig);
table.set(ret, wrapped)
}
functionsInTableMap[func] = ret;
return ret
}
function removeFunctionWasm(index) {
functionsInTableMap.delete(wasmTable.get(index));
freeTableIndexes.push(index)
}
var funcWrappers = {};
function dynCall(sig, ptr, args) {
if (args && args.length) {
assert(args.length === sig.substring(1).replace(/j/g, "--").length);
assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'");
return Module["dynCall_" + sig].apply(null, [ptr].concat(args))
} else {
assert(sig.length == 1);
assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'");
return Module["dynCall_" + sig].call(null, ptr)
}
}
var tempRet0 = 0;
var setTempRet0 = function (value) {
tempRet0 = value
};
var getTempRet0 = function () {
return tempRet0
};
var wasmBinary;
if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"];
if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", {
configurable: true,
get: function () {
abort("Module.wasmBinary has been replaced with plain wasmBinary")
}
});
var noExitRuntime;
if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"];
if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", {
configurable: true,
get: function () {
abort("Module.noExitRuntime has been replaced with plain noExitRuntime")
}
});
var WebAssembly = {
Memory: function (opts) {
return {
buffer: new ArrayBuffer(opts["initial"] * 65536), grow: function (amount) {
var oldBuffer = this.buffer;
var ret = __growWasmMemory(amount);
assert(this.buffer !== oldBuffer);
return ret
}
}
}, Table: function (opts) {
var ret = new Array(opts["initial"]);
ret.grow = function (by) {
if (ret.length >= 11651 + 0) {
abort("Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH.")
}
ret.push(null)
};
ret.set = function (i, func) {
ret[i] = func
};
ret.get = function (i) {
return ret[i]
};
return ret
}, Module: function (binary) {
return {}
}, Instance: function (module, info) {
var exports = (
// EMSCRIPTEN_START_ASM
function a(asmLibraryArg, wasmMemory, wasmTable) {
var scratchBuffer = new ArrayBuffer(8);
var b = new Int32Array(scratchBuffer);
var c = new Float32Array(scratchBuffer);
var d = new Float64Array(scratchBuffer);
function e(index) {
return b[index]
}
function f(index, value) {
b[index] = value
}
function g() {
return d[0]
}
function h(value) {
d[0] = value
}
function i(low, high) {
b[0] = low;
b[1] = high
}
function j(value) {
c[0] = value
}
function k() {
return c[0]
}
function l(global, env, buffer) {
var m = env.memory;
var n = wasmTable;
var o = new global.Int8Array(buffer);
var p = new global.Int16Array(buffer);
var q = new global.Int32Array(buffer);
var r = new global.Uint8Array(buffer);
var s = new global.Uint16Array(buffer);
var t = new global.Uint32Array(buffer);
var u = new global.Float32Array(buffer);
var v = new global.Float64Array(buffer);
var w = global.Math.imul;
var x = global.Math.fround;
var y = global.Math.abs;
var z = global.Math.clz32;
var A = global.Math.min;
var B = global.Math.max;
var C = global.Math.floor;
var D = global.Math.ceil;
var E = global.Math.sqrt;
var F = env.abort;
var G = global.NaN;
var H = global.Infinity;
var I = env.invoke_iiiiiii;
var J = env.__cxa_find_matching_catch_2;
var K = env.getTempRet0;
var L = env.__resumeException;
var M = env.invoke_viiiii;
var N = env.invoke_viiii;
var O = env.invoke_vi;
var P = env.__cxa_find_matching_catch_3;
var Q = env.invoke_viiid;
var R = env._emval_new_array;
var S = env.invoke_viii;
var T = env._emval_decref;
var U = env.invoke_iiiiiiiii;
var V = env._emval_take_value;
var W = env._emval_new_cstring;
var X = env.invoke_ii;
var Y = env._emval_set_property;
var Z = env._emval_incref;
var _ = env.invoke_iiii;
var $ = env._emval_get_method_caller;
var aa = env.invoke_iii;
var ba = env._emval_call_void_method;
var ca = env._embind_register_class;
var da = env._embind_register_class_constructor;
var ea = env._embind_register_class_class_function;
var fa = env._embind_register_class_property;
var ga = env._embind_register_class_function;
var ha = env._embind_register_value_object;
var ia = env._embind_register_value_object_field;
var ja = env.invoke_viiiiiiiiii;
var ka = env._embind_finalize_value_object;
var la = env._embind_register_function;
var ma = env._embind_register_value_array;
var na = env._embind_register_value_array_element;
var oa = env.invoke_viiiiiiiii;
var pa = env._embind_finalize_value_array;
var qa = env._embind_register_constant;
var ra = env.invoke_vii;
var sa = env.invoke_viiiiid;
var ta = env._emval_get_property;
var ua = env._emval_as;
var va = env.invoke_diii;
var wa = env._emval_run_destructors;
var xa = env.invoke_viiiiiii;
var ya = env.invoke_viiidi;
var za = env.invoke_viiiffi;
var Aa = env.invoke_viiiiiffi;
var Ba = env._embind_register_smart_ptr;
var Ca = env.__cxa_begin_catch;
var Da = env.__cxa_allocate_exception;
var Ea = env.__cxa_throw;
var Fa = env.__cxa_free_exception;
var Ga = env.invoke_iiiiiiii;
var Ha = env.invoke_iiiiii;
var Ia = env.invoke_viiiiii;
var Ja = env.invoke_viiiidiiii;
var Ka = env.invoke_viiiidiii;
var La = env.invoke_viiiidii;
var Ma = env.invoke_viiiidi;
var Na = env.invoke_viiiff;
var Oa = env.invoke_viiiiiff;
var Pa = env.invoke_iiiii;
var Qa = env.invoke_viiiiiiii;
var Ra = env.invoke_i;
var Sa = env.invoke_viiidd;
var Ta = env.invoke_iif;
var Ua = env.invoke_iid;
var Va = env.__cxa_end_catch;
var Wa = env.invoke_v;
var Xa = env.invoke_fiii;
var Ya = env.invoke_viid;
var Za = env.invoke_viididii;
var _a = env.invoke_viiiiiiiidf;
var $a = env.invoke_viiiiiiiidd;
var ab = env.invoke_di;
var bb = env.invoke_iiiidd;
var cb = env.invoke_vidi;
var db = env.invoke_viiiifiifiiiiiii;
var eb = env.invoke_viiiidiidiiiiiii;
var fb = env.invoke_vidii;
var gb = env.invoke_dii;
var hb = env.invoke_viiiiiiiiiiddi;
var ib = env.invoke_viiiiiiiddi;
var jb = env.__cxa_rethrow;
var kb = env.invoke_diiiiiii;
var lb = env.invoke_iiiiiiiddi;
var mb = env.invoke_viiiddi;
var nb = env.invoke_viiiid;
var ob = env.invoke_viiiidid;
var pb = env.invoke_viidi;
var qb = env.invoke_vididdii;
var rb = env.invoke_vdiii;
var sb = env.sysconf;
var tb = env.gettimeofday;
var ub = env.llvm_eh_typeid_for;
var vb = env.invoke_iiiiidi;
var wb = env.invoke_iiiiiiiiiii;
var xb = env.invoke_viiiiiiddi;
var yb = env.invoke_viiiiiiiiiii;
var zb = env.invoke_viiiiidi;
var Ab = env.invoke_viiiiiddi;
var Bb = env.invoke_viiiiiidiii;
var Cb = env.invoke_viiiiiidi;
var Db = env.invoke_viiiiddi;
var Eb = env.invoke_diiddi;
var Fb = env.invoke_viiiddiiiid;
var Gb = env.invoke_iiiidii;
var Hb = env.invoke_iiiidiii;
var Ib = env.invoke_viiiiidiii;
var Jb = env.invoke_viiiiiiiiiiiiiiiiiiidii;
var Kb = env.invoke_viiiiiiiiiiiiiiiiiiidi;
var Lb = env.invoke_viidd;
var Mb = env.invoke_viiiiiiiiiiii;
var Nb = env.invoke_diiii;
var Ob = env.invoke_vddi;
var Pb = env.invoke_viiiffiidd;
var Qb = env.invoke_viffiiiii;
var Rb = env.invoke_iiiiiiiiii;
var Sb = env.invoke_viiiiiiiiiiiii;
var Tb = env.invoke_viiif;
var Ub = env.invoke_viiiiiiiiiiiiiiiiiiiiiiiiiiii;
var Vb = env.invoke_viiiiiiiiidd;
var Wb = env.invoke_viiiiiiiiiddi;
var Xb = env.invoke_viiiidd;
var Yb = env.invoke_viiiiiiiiiiiiii;
var Zb = env.invoke_iiiiddi;
var _b = env.invoke_iiifi;
var $b = env.invoke_iiif;
var ac = env.invoke_viiiif;
var bc = env.invoke_vif;
var cc = env.invoke_viifi;
var dc = env.invoke_fiif;
var ec = env.invoke_vifiiiiiii;
var fc = env.invoke_viif;
var gc = env.invoke_viiiifff;
var hc = env.invoke_viidiiiii;
var ic = env.__cxa_find_matching_catch_4;
var jc = env.invoke_fiiiiii;
var kc = env.invoke_viifffiii;
var lc = env.invoke_vifii;
var mc = env.invoke_fii;
var nc = env.invoke_viiiiiiiiiifii;
var oc = env.invoke_viiffifi;
var pc = env.invoke_iiiiffiii;
var qc = env.invoke_iiiff;
var rc = env.invoke_iiffif;
var sc = env.invoke_fiiiiiiii;
var tc = env.invoke_iiiif;
var uc = env.invoke_viiifii;
var vc = env.invoke_viiiifif;
var wc = env.invoke_viiiifiifii;
var xc = env.invoke_fiiiifiiii;
var yc = env.invoke_fi;
var zc = env.invoke_iiiiidii;
var Ac = env.invoke_vddiiii;
var Bc = env.invoke_iiiiidiid;
var Cc = env.invoke_iiidd;
var Dc = env.invoke_viiiiiiiiiiiid;
var Ec = env.invoke_diiiiiiiiiiiiii;
var Fc = env.invoke_viiiidiid;
var Gc = env.invoke_iiid;
var Hc = env.invoke_iiiiiifiididiii;
var Ic = env.invoke_iiiiiiid;
var Jc = env.invoke_iddii;
var Kc = env.invoke_viiiiiiid;
var Lc = env.invoke_iiiiiiiiiiiii;
var Mc = env.invoke_viiiiidiiiii;
var Nc = env.invoke_viidii;
var Oc = env.invoke_iiiidiiiiiii;
var Pc = env.invoke_viiiidiiddi;
var Qc = env.invoke_iiiidiiii;
var Rc = env.invoke_viiiiidii;
var Sc = env.invoke_fiiii;
var Tc = env.invoke_vifi;
var Uc = env.fd_close;
var Vc = env.__sys_open;
var Wc = env.__sys_fcntl64;
var Xc = env.__sys_ioctl;
var Yc = env.fd_read;
var Zc = env.fd_write;
var _c = env.__sys_read;
var $c = env.environ_sizes_get;
var ad = env.environ_get;
var bd = env.__cxa_uncaught_exceptions;
var cd = env.invoke_iiiiid;
var dd = env.__map_file;
var ed = env.__sys_munmap;
var fd = env.strftime_l;
var gd = env.invoke_iiiiiiiiiiii;
var hd = env.invoke_viiiiiiiiiiiiiii;
var id = env.pthread_mutexattr_init;
var jd = env.pthread_mutexattr_settype;
var kd = env.pthread_mutexattr_destroy;
var ld = env.abort;
var md = env._embind_register_void;
var nd = env._embind_register_bool;
var od = env._embind_register_std_string;
var pd = env._embind_register_std_wstring;
var qd = env._embind_register_emval;
var rd = env._embind_register_integer;
var sd = env._embind_register_float;
var td = env._embind_register_memory_view;
var ud = env.emscripten_resize_heap;
var vd = env.emscripten_memcpy_big;
var wd = env.__handle_stack_overflow;
var xd = env.setTempRet0;
var yd = env.invoke_jiii;
var zd = env.invoke_iij;
var Ad = env.invoke_jii;
var Bd = env.invoke_j;
var Cd = env.invoke_ji;
var Dd = env.invoke_jiiii;
var Ed = env.invoke_viiij;
var Fd = env.invoke_vij;
var Gd = env.invoke_iiij;
var Hd = env.invoke_viji;
var Id = env.fd_seek;
var Jd = env.invoke_iiiiij;
var Kd = 6520160;
var Ld = 1277268;
var Md = 0;
var Nd = 0;
// EMSCRIPTEN_START_FUNCS
function lfb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,s=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,Q=0,R=0,T=0,U=0,V=0,W=0,Y=0,Z=0,$=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=x(0),ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Qa=0,Ra=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0;d=Kd-1712|0;c=d;if(d>>>0<Md>>>0){wd()}Kd=c;f=a+40|0;if(!n[q[q[a+40>>2]+48>>2]](f)){teb(a)}peb(a);peb(f);c=f;if(!n[q[q[a+40>>2]+48>>2]](c)){Wdb(a);c=a}seb(c);q[d+1684>>2]=0;q[d+1688>>2]=0;Ra=d+1680|4;q[d+1680>>2]=Ra;c=q[q[f>>2]+48>>2];q[318148]=0;e=X(c|0,f|0)|0;c=q[318148];q[318148]=0;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{if((c|0)!=1){$=e?f:a;Ba=q[$+12>>2];q[d+1668>>2]=0;q[d+1672>>2]=0;ja=d+1664|4;q[d+1664>>2]=ja;if((Ba|0)>=1){h=Ba;while(1){c=h+ -1|0;na=q[(q[$+20>>2]+(c<<2)|0)+4>>2];e=q[na+60>>2];q[318148]=0;ma=aa(18,d+960|0,e|0)|0;e=q[318148];q[318148]=0;n:{o:{p:{q:{if((e|0)!=1){q[318148]=0;j=X(8179,na|0)|0;e=q[318148];q[318148]=0;if((e|0)==1){break d}q[318148]=0;g=VKa(d+1664|0,ma);e=q[318148];q[318148]=0;if((e|0)==1){break d}if((g|0)==(ja|0)){break p}e=q[g+28>>2];if((j|0)==3){j=e;break o}if((e|0)!=3){break q}q[g+28>>2]=j;break o}e=J()|0;K()|0;break c}if((e|0)==(j|0)){break o}j=3;q[g+28>>2]=3;break o}q[d+1376>>2]=ma;q[318148]=0;Ia(6035,d+1536|0,d+1664|0,ma|0,430913,d+1376|0,d+688|0);e=q[318148];q[318148]=0;if((e|0)==1){break d}q[q[d+1536>>2]+28>>2]=j}if(q[na+12>>2]<1){break n}e=0;while(1){i=q[(q[na+20>>2]+(e<<2)|0)+4>>2];g=tjc(i,58);q[318148]=0;Ha(2895,d+1536|0,i|0,0,g|0,i|0)|0;g=q[318148];q[318148]=0;r:{s:{t:{if((g|0)!=1){u:{if(o[d+971|0]>=0){o[d+971|0]=0;o[d+960|0]=0;break u}o[q[d+960>>2]]=0;q[d+964>>2]=0;if(o[d+971|0]>-1){break u}Rrc(q[d+960>>2]);q[d+968>>2]=0}q[d+968>>2]=q[d+1544>>2];g=q[d+1540>>2];q[d+960>>2]=q[d+1536>>2];q[d+964>>2]=g;q[318148]=0;i=VKa(d+1664|0,ma);g=q[318148];q[318148]=0;if((g|0)==1){break d}if((i|0)==(ja|0)){break s}if((j|0)==3){break r}g=q[i+28>>2];if((g|0)!=3){break t}q[i+28>>2]=j;break r}break d}if((g|0)==(j|0)){break r}q[i+28>>2]=3;break r}q[d+1376>>2]=ma;q[318148]=0;Ia(6035,d+1536|0,d+1664|0,ma|0,430913,d+1376|0,d+688|0);g=q[318148];q[318148]=0;if((g|0)==1){break d}q[q[d+1536>>2]+28>>2]=j}e=e+1|0;if((e|0)<q[na+12>>2]){continue}break}break n}if(o[d+971|0]<=-1){Rrc(q[d+960>>2])}e=(h|0)>1;h=c;if(e){continue}break}}q[d+1652>>2]=0;q[d+1656>>2]=0;A=d+1648|4;q[d+1648>>2]=A;q[318148]=0;q[d+1636>>2]=0;q[d+1640>>2]=0;Ta=d+1632|4;q[d+1632>>2]=Ta;S(8180,a|0,d+1648|0,d+1680|0);c=q[318148];q[318148]=0;if((c|0)==1){break j}q[318148]=0;S(8180,f|0,d+1648|0,d+1680|0);c=q[318148];q[318148]=0;if((c|0)==1){break j}q[d+1620>>2]=0;q[d+1624>>2]=0;ka=d+1616|4;q[d+1616>>2]=ka;if((Ba|0)>=1){Lb=a+80|0;Ua=a+92|0;Mb=d+1376|4;E=d+1008|0;l=d+976|0;y=d+968|0;Y=d+1424|0;Nb=d+1400|0;z=d+1392|0;D=d+1384|0;ia=d+984|0;W=d+960|4;Va=d+1312|4;Wa=d+1328|4;Xa=d+1360|4;Q=d+1376|4;Ya=d+1440|4;Za=d+1344|4;_a=d+1224|4;$a=d+1192|4;ab=d+1208|4;T=d+1388|0;bb=d+872|4;Z=d+972|0;db=d+856|4;eb=d+824|4;la=d+996|0;fb=d+840|4;gb=d+808|4;hb=d+776|4;ib=d+792|4;qa=d+736|0;da=d+704|0;jb=d+672|4;kb=d+744|4;lb=d+760|4;mb=d+640|4;nb=d+656|4;ob=d+576|4;pb=d+592|4;R=d+696|0;va=d+688|4;qb=d+608|4;rb=d+624|4;sb=d+528|4;tb=d+544|4;ub=d+560|4;Ca=d+376|0;ba=d+344|0;oa=d+336|0;sa=d+328|4;Da=d+376|0;vb=d+312|4;ma=d+432|0;na=d+488|0;Ea=d+376|0;La=d+384|4;Fa=d+400|4;Ma=d+464|0;pa=d+424|0;Na=d+416|4;Oa=d+520|0;fa=d+480|0;Qa=d+472|4;wb=d+280|4;xb=d+248|4;yb=d+264|4;Ob=d+1544|0;zb=d+296|4;Ab=d+232|4;Pb=d+960|12;Bb=d+216|4;Cb=d+340|0;Db=d+428|0;Eb=d+484|0;Fb=d+700|0;Gb=d+200|4;wa=d+1016|0;V=d+1584|0;Hb=d+72|4;Ib=d+88|4;Jb=d+56|4;U=d+1560|0;Qb=d+1456|4;ea=d+1468|0;Rb=ea+32|0;while(1){j=xa<<2;c=q[(j+q[$+20>>2]|0)+4>>2];q[318148]=0;B=aa(8181,d+1536|0,c|0)|0;c=q[318148];q[318148]=0;if((c|0)==1){break k}q[318148]=0;s=aa(18,d+1520|0,q[d+1596>>2])|0;c=q[318148];q[318148]=0;if((c|0)==1){break l}q[318148]=0;C=aa(18,d+1504|0,q[d+1600>>2])|0;c=q[318148];q[318148]=0;if((c|0)==1){break m}q[d+1460>>2]=0;q[d+1464>>2]=0;q[d+1456>>2]=Qb;q[Rb>>2]=0;q[ea+24>>2]=0;q[ea+28>>2]=0;q[ea+16>>2]=0;q[ea+20>>2]=0;q[ea+8>>2]=0;q[ea+12>>2]=0;q[ea>>2]=0;q[ea+4>>2]=0;q[318148]=0;e=VKa(d+1680|0,s);c=q[318148];q[318148]=0;v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{O:{P:{Q:{R:{S:{T:{U:{V:{W:{X:{Y:{Z:{_:{$:{aa:{ba:{ca:{da:{ea:{fa:{if((c|0)!=1){if((e|0)!=(Ra|0)){break v}q[318148]=0;g=X(8179,B|0)|0;c=q[318148];q[318148]=0;if((c|0)==1){break i}ga:{ha:{ia:{ja:{ka:{la:{ma:{na:{oa:{pa:{qa:{ra:{sa:{ta:{ua:{va:{wa:{xa:{ya:{za:{Aa:{Ba:{Ca:{if((g|0)!=3){break Ca}i=q[d+1548>>2];if((i|0)>=1){e=0;g=3;while(1){f=q[(q[d+1556>>2]+(e<<2)|0)+4>>2];c=tjc(f,58);q[318148]=0;f=Ha(2895,d+960|0,f|0,0,c|0,f|0)|0;c=q[318148];q[318148]=0;Da:{if((c|0)!=1){q[318148]=0;f=VKa(d+1664|0,f);c=q[318148];q[318148]=0;if((c|0)!=1){if(o[d+971|0]<=-1){Rrc(q[d+960>>2])}if((f|0)==(ja|0)){break Da}c=q[f+28>>2];if((g|0)==3){g=c;break Da}if((c|0)==(g|0)|(c|0)==3){break Da}g=3;break Ca}e=J()|0;K()|0;if(o[d+971|0]>-1){break h}Rrc(q[d+960>>2]);break h}e=J()|0;K()|0;break h}e=e+1|0;if((i|0)!=(e|0)){continue}break}if((g|0)!=3){break Ca}}q[318148]=0;e=VKa(d+1664|0,q[d+1596>>2]);c=q[318148];q[318148]=0;if((c|0)==1){break i}if((e|0)==(ja|0)){q[318148]=0;c=X(169,32)|0;a=q[318148];q[318148]=0;if((a|0)==1){break Ba}q[d+960>>2]=c;q[d+964>>2]=24;q[d+968>>2]=-2147483616;o[c+24|0]=0;b=r[431614]|r[431615]<<8|(r[431616]<<16|r[431617]<<24);a=r[431610]|r[431611]<<8|(r[431612]<<16|r[431613]<<24);o[c+16|0]=a;o[c+17|0]=a>>>8;o[c+18|0]=a>>>16;o[c+19|0]=a>>>24;o[c+20|0]=b;o[c+21|0]=b>>>8;o[c+22|0]=b>>>16;o[c+23|0]=b>>>24;b=r[431606]|r[431607]<<8|(r[431608]<<16|r[431609]<<24);a=r[431602]|r[431603]<<8|(r[431604]<<16|r[431605]<<24);o[c+8|0]=a;o[c+9|0]=a>>>8;o[c+10|0]=a>>>16;o[c+11|0]=a>>>24;o[c+12|0]=b;o[c+13|0]=b>>>8;o[c+14|0]=b>>>16;o[c+15|0]=b>>>24;b=r[431598]|r[431599]<<8|(r[431600]<<16|r[431601]<<24);a=r[431594]|r[431595]<<8|(r[431596]<<16|r[431597]<<24);o[c|0]=a;o[c+1|0]=a>>>8;o[c+2|0]=a>>>16;o[c+3|0]=a>>>24;o[c+4|0]=b;o[c+5|0]=b>>>8;o[c+6|0]=b>>>16;o[c+7|0]=b>>>24;q[318148]=0;M(2,-215,d+960|0,431619,426656,710);a=q[318148];q[318148]=0;if((a|0)!=1){break z}e=J()|0;K()|0;if(o[d+971|0]>-1){break h}Rrc(q[d+960>>2]);break h}g=q[e+28>>2]}q[d+1376>>2]=s;q[318148]=0;Ia(6035,d+960|0,d+1664|0,s|0,430913,d+1376|0,d+688|0);c=q[318148];q[318148]=0;if((c|0)==1){break i}q[q[d+960>>2]+28>>2]=g;e=r[d+1515|0];f=e<<24>>24;Ea:{c=q[d+1508>>2];if((((f|0)<0?c:e)|0)==6){q[318148]=0;e=Ha(2802,C|0,0,-1,426747,6)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break Ea}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==14){q[318148]=0;e=Ha(2802,C|0,0,-1,426754,14)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break Ea}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==21){q[318148]=0;e=Ha(2802,C|0,0,-1,426769,21)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break Ea}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==3){q[318148]=0;e=Ha(2802,C|0,0,-1,426791,3)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break Ea}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==9){q[318148]=0;e=Ha(2802,C|0,0,-1,426795,9)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break Ea}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==6){q[318148]=0;e=Ha(2802,C|0,0,-1,426805,6)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break Ea}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==7){q[318148]=0;e=Ha(2802,C|0,0,-1,427001,7)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break va}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==3){q[318148]=0;e=Ha(2802,C|0,0,-1,427098,3)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break va}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==5){q[318148]=0;e=Ha(2802,C|0,0,-1,427102,5)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break va}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==3){q[318148]=0;e=Ha(2802,C|0,0,-1,427108,3)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break va}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==4){q[318148]=0;e=Ha(2802,C|0,0,-1,427112,4)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break va}e=r[d+1515|0];f=e;c=q[d+1508>>2]}if(((f<<24>>24<0?c:e)|0)==6){break ua}break A}c=q[q[d+1556>>2]+4>>2];q[318148]=0;Kb=aa(18,d+416|0,c|0)|0;c=q[318148];q[318148]=0;if((c|0)==1){break Aa}e=r[d+1515|0];f=e<<24>>24;c=q[d+1508>>2];Fa:{Ga:{if((((f|0)<0?c:e)|0)==14){q[318148]=0;e=Ha(2802,C|0,0,-1,426754,14)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(!e){break Ga}e=r[d+1515|0];f=e;c=q[d+1508>>2]}I=0;if(((f<<24>>24<0?c:e)|0)!=3){i=0;break Fa}q[318148]=0;e=Ha(2802,C|0,0,-1,426791,3)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}i=0;if(e){break Fa}}q[D>>2]=0;q[d+1376>>2]=0;q[d+1380>>2]=0;q[318148]=0;o[d+1387|0]=6;q[d+1376>>2]=r[426747]|r[426748]<<8|(r[426749]<<16|r[426750]<<24);p[d+1380>>1]=r[426751]|r[426752]<<8;o[d+1382|0]=0;N(8184,d+960|0,$|0,s|0,d+1376|0);c=q[318148];q[318148]=0;if((c|0)==1){break za}I=q[d+960>>2];i=q[d+964>>2];if((I|0)!=(i|0)){break Fa}q[D>>2]=0;q[318148]=0;q[d+1376>>2]=0;q[d+1380>>2]=0;g=X(169,32)|0;c=q[318148];q[318148]=0;if((c|0)==1){break ya}q[d+1376>>2]=g;q[d+1380>>2]=21;q[d+1384>>2]=-2147483616;o[g+21|0]=0;e=r[426786]|r[426787]<<8|(r[426788]<<16|r[426789]<<24);c=r[426782]|r[426783]<<8|(r[426784]<<16|r[426785]<<24);o[g+13|0]=c;o[g+14|0]=c>>>8;o[g+15|0]=c>>>16;o[g+16|0]=c>>>24;o[g+17|0]=e;o[g+18|0]=e>>>8;o[g+19|0]=e>>>16;o[g+20|0]=e>>>24;e=r[426781]|r[426782]<<8|(r[426783]<<16|r[426784]<<24);c=r[426777]|r[426778]<<8|(r[426779]<<16|r[426780]<<24);o[g+8|0]=c;o[g+9|0]=c>>>8;o[g+10|0]=c>>>16;o[g+11|0]=c>>>24;o[g+12|0]=e;o[g+13|0]=e>>>8;o[g+14|0]=e>>>16;o[g+15|0]=e>>>24;e=r[426773]|r[426774]<<8|(r[426775]<<16|r[426776]<<24);c=r[426769]|r[426770]<<8|(r[426771]<<16|r[426772]<<24);o[g|0]=c;o[g+1|0]=c>>>8;o[g+2|0]=c>>>16;o[g+3|0]=c>>>24;o[g+4|0]=e;o[g+5|0]=e>>>8;o[g+6|0]=e>>>16;o[g+7|0]=e>>>24;q[318148]=0;N(8184,d+960|0,$|0,s|0,d+1376|0);c=q[318148];q[318148]=0;if((c|0)==1){break xa}if(I){Rrc(I)}q[d+968>>2]=0;i=q[d+964>>2];I=q[d+960>>2];q[d+960>>2]=0;q[d+964>>2]=0;Rrc(g)}e=r[d+1515|0];f=e<<24>>24;c=q[d+1508>>2];if((((f|0)<0?c:e)|0)==14){break wa}break S}e=J()|0;K()|0;break h}e=J()|0;K()|0;break h}f=J()|0;K()|0;break B}f=J()|0;K()|0;break C}f=J()|0;K()|0;Rrc(g);break C}q[318148]=0;e=Ha(2802,C|0,0,-1,426754,14)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(e){c=q[d+1508>>2];e=r[d+1515|0];f=e;break S}if(q[d+1548>>2]!=3){q[d+968>>2]=0;q[d+960>>2]=0;q[d+964>>2]=0;q[318148]=0;c=X(169,32)|0;a=q[318148];q[318148]=0;if((a|0)==1){break ta}q[d+960>>2]=c;q[d+964>>2]=23;q[d+968>>2]=-2147483616;o[c+23|0]=0;b=r[426831]|r[426832]<<8|(r[426833]<<16|r[426834]<<24);a=r[426827]|r[426828]<<8|(r[426829]<<16|r[426830]<<24);o[c+15|0]=a;o[c+16|0]=a>>>8;o[c+17|0]=a>>>16;o[c+18|0]=a>>>24;o[c+19|0]=b;o[c+20|0]=b>>>8;o[c+21|0]=b>>>16;o[c+22|0]=b>>>24;b=r[426824]|r[426825]<<8|(r[426826]<<16|r[426827]<<24);a=r[426820]|r[426821]<<8|(r[426822]<<16|r[426823]<<24);o[c+8|0]=a;o[c+9|0]=a>>>8;o[c+10|0]=a>>>16;o[c+11|0]=a>>>24;o[c+12|0]=b;o[c+13|0]=b>>>8;o[c+14|0]=b>>>16;o[c+15|0]=b>>>24;b=r[426816]|r[426817]<<8|(r[426818]<<16|r[426819]<<24);a=r[426812]|r[426813]<<8|(r[426814]<<16|r[426815]<<24);o[c|0]=a;o[c+1|0]=a>>>8;o[c+2|0]=a>>>16;o[c+3|0]=a>>>24;o[c+4|0]=b;o[c+5|0]=b>>>8;o[c+6|0]=b>>>16;o[c+7|0]=b>>>24;q[318148]=0;M(2,-215,d+960|0,426836,426656,827);a=q[318148];q[318148]=0;if((a|0)!=1){break z}f=J()|0;K()|0;if(o[d+971|0]>-1){break C}Rrc(q[d+960>>2]);break C}q[d+1444>>2]=0;q[d+1448>>2]=0;q[d+1440>>2]=Ya;c=q[d+1648>>2];if((A|0)!=(c|0)){while(1){q[318148]=0;e=c+16|0;Pa(8185,d+1440|0,Ya|0,e|0,e|0)|0;e=q[318148];q[318148]=0;if((e|0)==1){break sa}f=c;e=q[c+4>>2];Ha:{if(!e){c=q[f+8>>2];if((f|0)==q[c>>2]){break Ha}f=f+8|0;while(1){e=q[f>>2];f=e+8|0;c=q[e+8>>2];if((e|0)!=q[c>>2]){continue}break}break Ha}while(1){c=e;e=q[c>>2];if(e){continue}break}}if((c|0)!=(A|0)){continue}break}}q[318148]=0;e=Ha(8186,a|0,B|0,d+1440|0,1,0)|0;c=q[318148];q[318148]=0;if((c|0)!=1){q[d+1384>>2]=0;q[d+1376>>2]=0;q[d+1380>>2]=0;q[318148]=0;ra(8187,e|0,d+1376|0);c=q[318148];q[318148]=0;if((c|0)==1){break ra}if(q[e+160>>2]!=3){q[d+968>>2]=0;q[d+960>>2]=0;q[d+964>>2]=0;q[318148]=0;c=X(169,48)|0;a=q[318148];q[318148]=0;if((a|0)==1){break qa}q[d+960>>2]=c;q[d+964>>2]=38;q[d+968>>2]=-2147483600;o[c+38|0]=0;b=r[431677]|r[431678]<<8|(r[431679]<<16|r[431680]<<24);a=r[431673]|r[431674]<<8|(r[431675]<<16|r[431676]<<24);o[c+30|0]=a;o[c+31|0]=a>>>8;o[c+32|0]=a>>>16;o[c+33|0]=a>>>24;o[c+34|0]=b;o[c+35|0]=b>>>8;o[c+36|0]=b>>>16;o[c+37|0]=b>>>24;b=r[431671]|r[431672]<<8|(r[431673]<<16|r[431674]<<24);a=r[431667]|r[431668]<<8|(r[431669]<<16|r[431670]<<24);o[c+24|0]=a;o[c+25|0]=a>>>8;o[c+26|0]=a>>>16;o[c+27|0]=a>>>24;o[c+28|0]=b;o[c+29|0]=b>>>8;o[c+30|0]=b>>>16;o[c+31|0]=b>>>24;b=r[431663]|r[431664]<<8|(r[431665]<<16|r[431666]<<24);a=r[431659]|r[431660]<<8|(r[431661]<<16|r[431662]<<24);o[c+16|0]=a;o[c+17|0]=a>>>8;o[c+18|0]=a>>>16;o[c+19|0]=a>>>24;o[c+20|0]=b;o[c+21|0]=b>>>8;o[c+22|0]=b>>>16;o[c+23|0]=b>>>24;b=r[431655]|r[431656]<<8|(r[431657]<<16|r[431658]<<24);a=r[431651]|r[431652]<<8|(r[431653]<<16|r[431654]<<24);o[c+8|0]=a;o[c+9|0]=a>>>8;o[c+10|0]=a>>>16;o[c+11|0]=a>>>24;o[c+12|0]=b;o[c+13|0]=b>>>8;o[c+14|0]=b>>>16;o[c+15|0]=b>>>24;b=r[431647]|r[431648]<<8|(r[431649]<<16|r[431650]<<24);a=r[431643]|r[431644]<<8|(r[431645]<<16|r[431646]<<24);o[c|0]=a;o[c+1|0]=a>>>8;o[c+2|0]=a>>>16;o[c+3|0]=a>>>24;o[c+4|0]=b;o[c+5|0]=b>>>8;o[c+6|0]=b>>>16;o[c+7|0]=b>>>24;q[318148]=0;M(2,-215,d+960|0,431682,426656,331);a=q[318148];q[318148]=0;if((a|0)!=1){break z}f=J()|0;K()|0;if(o[d+971|0]>-1){break U}Rrc(q[d+960>>2]);break U}if((q[d+1380>>2]-q[d+1376>>2]|0)!=4){a=d+968|0;q[a>>2]=0;o[a|0]=r[431700];q[318148]=0;a=r[431696]|r[431697]<<8|(r[431698]<<16|r[431699]<<24);q[d+960>>2]=r[431692]|r[431693]<<8|(r[431694]<<16|r[431695]<<24);q[d+964>>2]=a;o[d+971|0]=9;o[d+969|0]=0;M(2,-215,d+960|0,431682,426656,332);a=q[318148];q[318148]=0;if((a|0)!=1){break z}f=J()|0;K()|0;if(o[d+971|0]>-1){break U}Rrc(q[d+960>>2]);break U}q[318148]=0;S(8032,d+960|0,e|0,1);c=q[318148];q[318148]=0;if((c|0)!=1){if((q[d+960>>2]&4095)!=4){q[d+696>>2]=0;q[d+688>>2]=0;q[d+692>>2]=0;q[318148]=0;c=X(169,32)|0;a=q[318148];q[318148]=0;if((a|0)==1){break pa}q[d+688>>2]=c;q[d+692>>2]=25;q[d+696>>2]=-2147483616;o[c+25|0]=0;o[c+24|0]=r[431726];b=r[431722]|r[431723]<<8|(r[431724]<<16|r[431725]<<24);a=r[431718]|r[431719]<<8|(r[431720]<<16|r[431721]<<24);o[c+16|0]=a;o[c+17|0]=a>>>8;o[c+18|0]=a>>>16;o[c+19|0]=a>>>24;o[c+20|0]=b;o[c+21|0]=b>>>8;o[c+22|0]=b>>>16;o[c+23|0]=b>>>24;b=r[431714]|r[431715]<<8|(r[431716]<<16|r[431717]<<24);a=r[431710]|r[431711]<<8|(r[431712]<<16|r[431713]<<24);o[c+8|0]=a;o[c+9|0]=a>>>8;o[c+10|0]=a>>>16;o[c+11|0]=a>>>24;o[c+12|0]=b;o[c+13|0]=b>>>8;o[c+14|0]=b>>>16;o[c+15|0]=b>>>24;b=r[431706]|r[431707]<<8|(r[431708]<<16|r[431709]<<24);a=r[431702]|r[431703]<<8|(r[431704]<<16|r[431705]<<24);o[c|0]=a;o[c+1|0]=a>>>8;o[c+2|0]=a>>>16;o[c+3|0]=a>>>24;o[c+4|0]=b;o[c+5|0]=b>>>8;o[c+6|0]=b>>>16;o[c+7|0]=b>>>24;q[318148]=0;M(2,-215,d+688|0,431682,426656,335);a=q[318148];q[318148]=0;if((a|0)!=1){break z}f=J()|0;K()|0;if(o[d+699|0]>-1){break V}Rrc(q[d+688>>2]);break V}e=q[d+976>>2];h=q[d+964>>2];if((h|0)<3){break oa}f=1;c=0;g=q[d+1e3>>2];while(1){f=w(q[g+(c<<2)>>2],f);c=c+1|0;if((h|0)!=(c|0)){continue}break}break W}f=J()|0;K()|0;break U}f=J()|0;K()|0;break T}e=0;c=q[d+1548>>2];Ia:{Ja:{Ka:{La:{while(1){if((e|0)>=(c|0)){break Ia}c=q[(q[d+1556>>2]+(e<<2)|0)+4>>2];q[318148]=0;ra(8188,d+960|0,c|0);c=q[318148];q[318148]=0;if((c|0)==1){break La}q[318148]=0;f=VKa(d+1648|0,d+960|0);c=q[318148];q[318148]=0;if((c|0)==1){break Ka}if(o[d+971|0]<=-1){Rrc(q[d+960>>2])}e=e+1|0;c=q[d+1548>>2];if((f|0)==(A|0)){continue}break}if((c|0)==2){break Ja}q[d+968>>2]=0;q[d+960>>2]=0;q[d+964>>2]=0;q[318148]=0;c=X(169,48)|0;a=q[318148];q[318148]=0;if((a|0)==1){break na}q[d+960>>2]=c;q[d+964>>2]=37;q[d+968>>2]=-2147483600;o[c+37|0]=0;b=r[427150]|r[427151]<<8|(r[427152]<<16|r[427153]<<24);a=r[427146]|r[427147]<<8|(r[427148]<<16|r[427149]<<24);o[c+29|0]=a;o[c+30|0]=a>>>8;o[c+31|0]=a>>>16;o[c+32|0]=a>>>24;o[c+33|0]=b;o[c+34|0]=b>>>8;o[c+35|0]=b>>>16;o[c+36|0]=b>>>24;b=r[427145]|r[427146]<<8|(r[427147]<<16|r[427148]<<24);a=r[427141]|r[427142]<<8|(r[427143]<<16|r[427144]<<24);o[c+24|0]=a;o[c+25|0]=a>>>8;o[c+26|0]=a>>>16;o[c+27|0]=a>>>24;o[c+28|0]=b;o[c+29|0]=b>>>8;o[c+30|0]=b>>>16;o[c+31|0]=b>>>24;b=r[427137]|r[427138]<<8|(r[427139]<<16|r[427140]<<24);a=r[427133]|r[427134]<<8|(r[427135]<<16|r[427136]<<24);o[c+16|0]=a;o[c+17|0]=a>>>8;o[c+18|0]=a>>>16;o[c+19|0]=a>>>24;o[c+20|0]=b;o[c+21|0]=b>>>8;o[c+22|0]=b>>>16;o[c+23|0]=b>>>24;b=r[427129]|r[427130]<<8|(r[427131]<<16|r[427132]<<24);a=r[427125]|r[427126]<<8|(r[427127]<<16|r[427128]<<24);o[c+8|0]=a;o[c+9|0]=a>>>8;o[c+10|0]=a>>>16;o[c+11|0]=a>>>24;o[c+12|0]=b;o[c+13|0]=b>>>8;o[c+14|0]=b>>>16;o[c+15|0]=b>>>24;b=r[427121]|r[427122]<<8|(r[427123]<<16|r[427124]<<24);a=r[427117]|r[427118]<<8|(r[427119]<<16|r[427120]<<24);o[c|0]=a;o[c+1|0]=a>>>8;o[c+2|0]=a>>>16;o[c+3|0]=a>>>24;o[c+4|0]=b;o[c+5|0]=b>>>8;o[c+6|0]=b>>>16;o[c+7|0]=b>>>24;q[318148]=0;M(2,-215,d+960|0,426836,426656,1020);a=q[318148];q[318148]=0;if((a|0)!=1){break z}e=J()|0;K()|0;if(o[d+971|0]<=-1){Rrc(q[d+960>>2])}break h}e=J()|0;K()|0;break h}e=J()|0;K()|0;if(o[d+971|0]<=-1){Rrc(q[d+960>>2])}break h}q[d+1228>>2]=0;q[d+1232>>2]=0;q[d+1224>>2]=_a;Ma:{c=q[d+1648>>2];if((A|0)!=(c|0)){while(1){q[318148]=0;e=c+16|0;Pa(8185,d+1224|0,_a|0,e|0,e|0)|0;e=q[318148];q[318148]=0;if((e|0)==1){break Ma}f=c;e=q[c+4>>2];Na:{if(!e){c=q[f+8>>2];if((f|0)==q[c>>2]){break Na}f=f+8|0;while(1){e=q[f>>2];f=e+8|0;c=q[e+8>>2];if((e|0)!=q[c>>2]){continue}break}break Na}while(1){c=e;e=q[c>>2];if(e){continue}break}}if((c|0)!=(A|0)){continue}break}}q[318148]=0;e=Ha(8186,a|0,B|0,d+1224|0,-1,0)|0;c=q[318148];q[318148]=0;if((c|0)==1){break ma}q[318148]=0;S(8032,d+960|0,e|0,1);c=q[318148];q[318148]=0;if((c|0)==1){break ma}NKa(d+1224|0,q[d+1228>>2]);if((q[d+960>>2]&4095)!=5){q[d+1384>>2]=0;q[d+1376>>2]=0;q[d+1380>>2]=0;q[318148]=0;c=X(169,32)|0;a=q[318148];q[318148]=0;if((a|0)==1){break la}q[d+1376>>2]=c;q[d+1380>>2]=25;q[d+1384>>2]=-2147483616;o[c+25|0]=0;o[c+24|0]=r[427179];b=r[427175]|r[427176]<<8|(r[427177]<<16|r[427178]<<24);a=r[427171]|r[427172]<<8|(r[427173]<<16|r[427174]<<24);o[c+16|0]=a;o[c+17|0]=a>>>8;o[c+18|0]=a>>>16;o[c+19|0]=a>>>24;o[c+20|0]=b;o[c+21|0]=b>>>8;o[c+22|0]=b>>>16;o[c+23|0]=b>>>24;b=r[427167]|r[427168]<<8|(r[427169]<<16|r[427170]<<24);a=r[427163]|r[427164]<<8|(r[427165]<<16|r[427166]<<24);o[c+8|0]=a;o[c+9|0]=a>>>8;o[c+10|0]=a>>>16;o[c+11|0]=a>>>24;o[c+12|0]=b;o[c+13|0]=b>>>8;o[c+14|0]=b>>>16;o[c+15|0]=b>>>24;b=r[427159]|r[427160]<<8|(r[427161]<<16|r[427162]<<24);a=r[427155]|r[427156]<<8|(r[427157]<<16|r[427158]<<24);o[c|0]=a;o[c+1|0]=a>>>8;o[c+2|0]=a>>>16;o[c+3|0]=a>>>24;o[c+4|0]=b;o[c+5|0]=b>>>8;o[c+6|0]=b>>>16;o[c+7|0]=b>>>24;q[318148]=0;M(2,-215,d+1376|0,426836,426656,1025);a=q[318148];q[318148]=0;if((a|0)!=1){break z}e=J()|0;K()|0;if(o[d+1387|0]<=-1){Rrc(q[d+1376>>2])}break X}Oa:{c=r[d+1515|0];if(((c<<24>>24<0?q[d+1508>>2]:c)|0)!=3){break Oa}q[318148]=0;e=Ha(2802,C|0,0,-1,427108,3)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(e){break Oa}q[d+1376>>2]=33619968;q[d+1384>>2]=0;q[d+1388>>2]=0;q[318148]=0;q[d+1380>>2]=d+960;Sa(2016,d+960|0,d+1376|0,-1,-1,0);c=q[318148];q[318148]=0;if((c|0)!=1){break Oa}e=J()|0;K()|0;break X}g=q[d+964>>2];if((g|0)<3){break ka}c=1;e=0;f=q[d+1e3>>2];while(1){c=w(q[f+(e<<2)>>2],c);e=e+1|0;if((g|0)!=(e|0)){continue}break}break Y}e=J()|0;K()|0;NKa(d+1224|0,q[d+1228>>2]);break h}q[y>>2]=0;o[y|0]=r[427207];q[318148]=0;c=r[427203]|r[427204]<<8|(r[427205]<<16|r[427206]<<24);q[d+960>>2]=r[427199]|r[427200]<<8|(r[427201]<<16|r[427202]<<24);q[d+964>>2]=c;o[d+971|0]=9;o[d+969|0]=0;_(7450,d+1456|0,d+960|0,427209)|0;c=q[318148];q[318148]=0;if((c|0)==1){break Z}if(o[d+971|0]<=-1){Rrc(q[d+960>>2])}c=o[d+1515|0];Pa:{if((((c|0)<0?q[d+1508>>2]:c&255)|0)!=3){break Pa}q[318148]=0;e=Ha(2802,C|0,0,-1,427108,3)|0;c=q[318148];q[318148]=0;if((c|0)==1){break a}if(e){break Pa}q[y>>2]=0;q[d+960>>2]=0;q[d+964>>2]=0;q[d+960>>2]=r[427213]|r[427214]<<8|(r[427215]<<16|r[427216]<<24);o[d+964|0]=r[427217];o[d+965|0]=0;o[d+971|0]=5;q[318148]=0;f=X(169,16)|0;c=q[318148];q[318148]=0;if((c|0)==1){break $}q[f+4>>2]=2;q[f>>2]=f+8;q[318148]=0;e=X(1858,16)|0;c=q[318148];q[318148]=0;if((c|0)==1){break ja}q[f>>2]=e;q[d+1380>>2]=f;q[d+1376>>2]=2;q[e+8>>2]=0;q[e+12>>2]=-1074790400;q[e>>2]=0;q[e+4>>2]=1072693248;q[318148]=0;_(6053,d+1456|0,d+960|0,d+1376|0)|0;c=q[318148];q[318148]=0;if((c|0)==1){break aa}iLa(d+1376|0);if(o[d+971|0]>-1){break Pa}Rrc(q[d+960>>2])}q[d+968>>2]=0;o[d+967|0]=0;q[318148]=0;o[d+971|0]=7;q[d+960>>2]=r[427219]|r[427220]<<8|(r[427221]<<16|r[427222]<<24);c=r[427222]|r[427223]<<8|(r[427224]<<16|r[427225]<<24);o[d+963|0]=c;o[d+964|0]=c>>>8;o[d+965|0]=c>>>16