@mtkruto/node 0.1.0 → 0.1.100
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/0_deps.d.ts +1 -1
- package/esm/0_deps.js +1 -1
- package/esm/4_constants.d.ts +1 -1
- package/esm/4_constants.js +1 -1
- package/esm/deps/deno.land/x/{tgcrypto@0.2.1 → tgcrypto@0.3.2}/mod.d.ts +2 -6
- package/esm/deps/deno.land/x/tgcrypto@0.3.2/mod.js +158 -0
- package/esm/deps/deno.land/x/tgcrypto@0.3.2/tgcrypto.js +308 -0
- package/esm/transport/0_obfuscation.js +1 -1
- package/esm/transport/0_transport.js +2 -2
- package/esm/utilities/0_crypto.d.ts +1 -2
- package/esm/utilities/0_crypto.js +3 -12
- package/package.json +1 -1
- package/script/0_deps.d.ts +1 -1
- package/script/0_deps.js +3 -4
- package/script/4_constants.d.ts +1 -1
- package/script/4_constants.js +1 -1
- package/script/deps/deno.land/x/{tgcrypto@0.2.1 → tgcrypto@0.3.2}/mod.d.ts +2 -6
- package/script/deps/deno.land/x/tgcrypto@0.3.2/mod.js +171 -0
- package/script/deps/deno.land/x/tgcrypto@0.3.2/tgcrypto.js +310 -0
- package/script/transport/0_obfuscation.js +1 -1
- package/script/transport/0_transport.js +2 -2
- package/script/utilities/0_crypto.d.ts +1 -2
- package/script/utilities/0_crypto.js +2 -11
- package/esm/deps/deno.land/x/tgcrypto@0.2.1/mod.js +0 -81
- package/esm/deps/deno.land/x/tgcrypto@0.2.1/tgcrypto.js +0 -991
- package/script/deps/deno.land/x/tgcrypto@0.2.1/mod.js +0 -95
- package/script/deps/deno.land/x/tgcrypto@0.2.1/tgcrypto.js +0 -993
- /package/esm/deps/deno.land/x/{tgcrypto@0.2.1 → tgcrypto@0.3.2}/tgcrypto.d.ts +0 -0
- /package/script/deps/deno.land/x/{tgcrypto@0.2.1 → tgcrypto@0.3.2}/tgcrypto.d.ts +0 -0
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var Module = (() => {
|
|
4
|
+
var _scriptDir = require("url").pathToFileURL(__filename).href;
|
|
5
|
+
return (function (moduleArg = {}) {
|
|
6
|
+
var Module = moduleArg;
|
|
7
|
+
var readyPromiseResolve, readyPromiseReject;
|
|
8
|
+
Module["ready"] = new Promise((resolve, reject) => { readyPromiseResolve = resolve; readyPromiseReject = reject; });
|
|
9
|
+
var moduleOverrides = Object.assign({}, Module);
|
|
10
|
+
var arguments_ = [];
|
|
11
|
+
var thisProgram = "./this.program";
|
|
12
|
+
var quit_ = (status, toThrow) => { throw toThrow; };
|
|
13
|
+
var ENVIRONMENT_IS_WEB = true;
|
|
14
|
+
var ENVIRONMENT_IS_WORKER = false;
|
|
15
|
+
var scriptDirectory = "";
|
|
16
|
+
function locateFile(path) { if (Module["locateFile"]) {
|
|
17
|
+
return Module["locateFile"](path, scriptDirectory);
|
|
18
|
+
} return scriptDirectory + path; }
|
|
19
|
+
var read_, readAsync, readBinary, setWindowTitle;
|
|
20
|
+
if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
|
|
21
|
+
if (ENVIRONMENT_IS_WORKER) {
|
|
22
|
+
scriptDirectory = self.location.href;
|
|
23
|
+
}
|
|
24
|
+
else if (typeof document != "undefined" && document.currentScript) {
|
|
25
|
+
scriptDirectory = document.currentScript.src;
|
|
26
|
+
}
|
|
27
|
+
if (_scriptDir) {
|
|
28
|
+
scriptDirectory = _scriptDir;
|
|
29
|
+
}
|
|
30
|
+
if (scriptDirectory.indexOf("blob:") !== 0) {
|
|
31
|
+
scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf("/") + 1);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
scriptDirectory = "";
|
|
35
|
+
}
|
|
36
|
+
{
|
|
37
|
+
read_ = url => { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.send(null); return xhr.responseText; };
|
|
38
|
+
if (ENVIRONMENT_IS_WORKER) {
|
|
39
|
+
readBinary = url => { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.responseType = "arraybuffer"; xhr.send(null); return new Uint8Array(xhr.response); };
|
|
40
|
+
}
|
|
41
|
+
readAsync = (url, onload, onerror) => { var xhr = new XMLHttpRequest; xhr.open("GET", url, true); xhr.responseType = "arraybuffer"; xhr.onload = () => { if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
|
|
42
|
+
onload(xhr.response);
|
|
43
|
+
return;
|
|
44
|
+
} onerror(); }; xhr.onerror = onerror; xhr.send(null); };
|
|
45
|
+
}
|
|
46
|
+
setWindowTitle = title => document.title = title;
|
|
47
|
+
}
|
|
48
|
+
else { }
|
|
49
|
+
var out = Module["print"] || console.log.bind(console);
|
|
50
|
+
var err = Module["printErr"] || console.error.bind(console);
|
|
51
|
+
Object.assign(Module, moduleOverrides);
|
|
52
|
+
moduleOverrides = null;
|
|
53
|
+
if (Module["arguments"])
|
|
54
|
+
arguments_ = Module["arguments"];
|
|
55
|
+
if (Module["thisProgram"])
|
|
56
|
+
thisProgram = Module["thisProgram"];
|
|
57
|
+
if (Module["quit"])
|
|
58
|
+
quit_ = Module["quit"];
|
|
59
|
+
var wasmBinary;
|
|
60
|
+
if (Module["wasmBinary"])
|
|
61
|
+
wasmBinary = Module["wasmBinary"];
|
|
62
|
+
var noExitRuntime = Module["noExitRuntime"] || true;
|
|
63
|
+
if (typeof WebAssembly != "object") {
|
|
64
|
+
abort("no native wasm support detected");
|
|
65
|
+
}
|
|
66
|
+
var wasmMemory;
|
|
67
|
+
var ABORT = false;
|
|
68
|
+
var EXITSTATUS;
|
|
69
|
+
var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAP64, HEAPU64, HEAPF64;
|
|
70
|
+
function updateMemoryViews() { var b = wasmMemory.buffer; Module["HEAP8"] = HEAP8 = new Int8Array(b); Module["HEAP16"] = HEAP16 = new Int16Array(b); Module["HEAPU8"] = HEAPU8 = new Uint8Array(b); Module["HEAPU16"] = HEAPU16 = new Uint16Array(b); Module["HEAP32"] = HEAP32 = new Int32Array(b); Module["HEAPU32"] = HEAPU32 = new Uint32Array(b); Module["HEAPF32"] = HEAPF32 = new Float32Array(b); Module["HEAPF64"] = HEAPF64 = new Float64Array(b); Module["HEAP64"] = HEAP64 = new BigInt64Array(b); Module["HEAPU64"] = HEAPU64 = new BigUint64Array(b); }
|
|
71
|
+
var wasmTable;
|
|
72
|
+
var __ATPRERUN__ = [];
|
|
73
|
+
var __ATINIT__ = [];
|
|
74
|
+
var __ATPOSTRUN__ = [];
|
|
75
|
+
var runtimeInitialized = false;
|
|
76
|
+
function preRun() { if (Module["preRun"]) {
|
|
77
|
+
if (typeof Module["preRun"] == "function")
|
|
78
|
+
Module["preRun"] = [Module["preRun"]];
|
|
79
|
+
while (Module["preRun"].length) {
|
|
80
|
+
addOnPreRun(Module["preRun"].shift());
|
|
81
|
+
}
|
|
82
|
+
} callRuntimeCallbacks(__ATPRERUN__); }
|
|
83
|
+
function initRuntime() { runtimeInitialized = true; callRuntimeCallbacks(__ATINIT__); }
|
|
84
|
+
function postRun() { if (Module["postRun"]) {
|
|
85
|
+
if (typeof Module["postRun"] == "function")
|
|
86
|
+
Module["postRun"] = [Module["postRun"]];
|
|
87
|
+
while (Module["postRun"].length) {
|
|
88
|
+
addOnPostRun(Module["postRun"].shift());
|
|
89
|
+
}
|
|
90
|
+
} callRuntimeCallbacks(__ATPOSTRUN__); }
|
|
91
|
+
function addOnPreRun(cb) { __ATPRERUN__.unshift(cb); }
|
|
92
|
+
function addOnInit(cb) { __ATINIT__.unshift(cb); }
|
|
93
|
+
function addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb); }
|
|
94
|
+
var runDependencies = 0;
|
|
95
|
+
var runDependencyWatcher = null;
|
|
96
|
+
var dependenciesFulfilled = null;
|
|
97
|
+
function addRunDependency(id) { runDependencies++; if (Module["monitorRunDependencies"]) {
|
|
98
|
+
Module["monitorRunDependencies"](runDependencies);
|
|
99
|
+
} }
|
|
100
|
+
function removeRunDependency(id) { runDependencies--; if (Module["monitorRunDependencies"]) {
|
|
101
|
+
Module["monitorRunDependencies"](runDependencies);
|
|
102
|
+
} if (runDependencies == 0) {
|
|
103
|
+
if (runDependencyWatcher !== null) {
|
|
104
|
+
clearInterval(runDependencyWatcher);
|
|
105
|
+
runDependencyWatcher = null;
|
|
106
|
+
}
|
|
107
|
+
if (dependenciesFulfilled) {
|
|
108
|
+
var callback = dependenciesFulfilled;
|
|
109
|
+
dependenciesFulfilled = null;
|
|
110
|
+
callback();
|
|
111
|
+
}
|
|
112
|
+
} }
|
|
113
|
+
function abort(what) { if (Module["onAbort"]) {
|
|
114
|
+
Module["onAbort"](what);
|
|
115
|
+
} what = "Aborted(" + what + ")"; err(what); ABORT = true; EXITSTATUS = 1; what += ". Build with -sASSERTIONS for more info."; var e = new WebAssembly.RuntimeError(what); readyPromiseReject(e); throw e; }
|
|
116
|
+
var dataURIPrefix = "data:application/octet-stream;base64,";
|
|
117
|
+
function isDataURI(filename) { return filename.startsWith(dataURIPrefix); }
|
|
118
|
+
var wasmBinaryFile;
|
|
119
|
+
wasmBinaryFile = "data:application/octet-stream;base64,AGFzbQEAAAABWQ9gA39/fwBgAX8Bf2AFf39/f38AYAV/fn5+fgBgBH9+fn8AYAJ+fgF+YAJ/fwBgA39+fgBgAX8AYAR/f39/AGAAAGAGf39/f39/AGACf34AYAABf2ACfn8AAgcBAWEBYQABAyIhAwQFAQQABgAGAAAKCwIMBQMHAAAHAQICCAEBCA0OCQkCBAUBcAEFBQUGAQGAAoACBggBfwFBwNIECwc5DgFiAgABYwAMAWQBAAFlABgBZgAXAWcAIQFoACABaQAfAWoAHgFrABoBbAAZAW0AHQFuABwBbwAbCQoBAEEBCwQHCQYICozkASF1AQF+IAAgASAEfiACIAN+fCADQiCIIgIgAUIgiCIEfnwgA0L/////D4MiAyABQv////8PgyIBfiIFQiCIIAMgBH58IgNCIIh8IAEgAn4gA0L/////D4N8IgFCIIh8NwMIIAAgBUL/////D4MgAUIghoQ3AwALUAEBfgJAIANBwABxBEAgASADQUBqrYYhAkIAIQEMAQsgA0UNACACIAOtIgSGIAFBwAAgA2utiIQhAiABIASGIQELIAAgATcDACAAIAI3AwgLMwEBfiAAQiCIIgIgAUL/////D4N+QiCIIAFCIIgiASACfnwgASAAQv////8Pg35CIIh8C1IBAn9BwM4AKAIAIgEgAEEHakF4cSICaiEAAkAgAkEAIAAgAU0bDQAgAD8AQRB0SwRAIAAQAEUNAQtBwM4AIAA2AgAgAQ8LQcTOAEEwNgIAQX8LUAEBfgJAIANBwABxBEAgAiADQUBqrYghAUIAIQIMAQsgA0UNACACQcAAIANrrYYgASADrSIEiIQhASACIASIIQILIAAgATcDACAAIAI3AwgL9i8BAX8jAEEwayIDIAA2AiwgAyABNgIoIAMgAjYCJCADIAMoAiQoAgAgAygCLCgCACIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCICADIAMoAiQoAgQgAygCLCgCBCIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCHCADIAMoAiQoAgggAygCLCgCCCIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCGCADIAMoAiQoAgwgAygCLCgCDCIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCFCADIAMoAiQoAhAgAygCFEH/AXFBAnRBsMIAaigCACADKAIYQQh2Qf8BcUECdEGwOmooAgAgAygCIEEYdkECdEGwMmooAgAgAygCHEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCECADIAMoAiQoAhQgAygCIEH/AXFBAnRBsMIAaigCACADKAIUQQh2Qf8BcUECdEGwOmooAgAgAygCHEEYdkECdEGwMmooAgAgAygCGEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCDCADIAMoAiQoAhggAygCHEH/AXFBAnRBsMIAaigCACADKAIgQQh2Qf8BcUECdEGwOmooAgAgAygCGEEYdkECdEGwMmooAgAgAygCFEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCCCADIAMoAiQoAhwgAygCGEH/AXFBAnRBsMIAaigCACADKAIcQQh2Qf8BcUECdEGwOmooAgAgAygCFEEYdkECdEGwMmooAgAgAygCIEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCBCADIAMoAiQoAiAgAygCBEH/AXFBAnRBsMIAaigCACADKAIIQQh2Qf8BcUECdEGwOmooAgAgAygCEEEYdkECdEGwMmooAgAgAygCDEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCICADIAMoAiQoAiQgAygCEEH/AXFBAnRBsMIAaigCACADKAIEQQh2Qf8BcUECdEGwOmooAgAgAygCDEEYdkECdEGwMmooAgAgAygCCEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCHCADIAMoAiQoAiggAygCDEH/AXFBAnRBsMIAaigCACADKAIQQQh2Qf8BcUECdEGwOmooAgAgAygCCEEYdkECdEGwMmooAgAgAygCBEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCGCADIAMoAiQoAiwgAygCCEH/AXFBAnRBsMIAaigCACADKAIMQQh2Qf8BcUECdEGwOmooAgAgAygCBEEYdkECdEGwMmooAgAgAygCEEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCFCADIAMoAiQoAjAgAygCFEH/AXFBAnRBsMIAaigCACADKAIYQQh2Qf8BcUECdEGwOmooAgAgAygCIEEYdkECdEGwMmooAgAgAygCHEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCECADIAMoAiQoAjQgAygCIEH/AXFBAnRBsMIAaigCACADKAIUQQh2Qf8BcUECdEGwOmooAgAgAygCHEEYdkECdEGwMmooAgAgAygCGEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCDCADIAMoAiQoAjggAygCHEH/AXFBAnRBsMIAaigCACADKAIgQQh2Qf8BcUECdEGwOmooAgAgAygCGEEYdkECdEGwMmooAgAgAygCFEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCCCADIAMoAiQoAjwgAygCGEH/AXFBAnRBsMIAaigCACADKAIcQQh2Qf8BcUECdEGwOmooAgAgAygCFEEYdkECdEGwMmooAgAgAygCIEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCBCADIAMoAiQoAkAgAygCBEH/AXFBAnRBsMIAaigCACADKAIIQQh2Qf8BcUECdEGwOmooAgAgAygCEEEYdkECdEGwMmooAgAgAygCDEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCICADIAMoAiQoAkQgAygCEEH/AXFBAnRBsMIAaigCACADKAIEQQh2Qf8BcUECdEGwOmooAgAgAygCDEEYdkECdEGwMmooAgAgAygCCEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCHCADIAMoAiQoAkggAygCDEH/AXFBAnRBsMIAaigCACADKAIQQQh2Qf8BcUECdEGwOmooAgAgAygCCEEYdkECdEGwMmooAgAgAygCBEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCGCADIAMoAiQoAkwgAygCCEH/AXFBAnRBsMIAaigCACADKAIMQQh2Qf8BcUECdEGwOmooAgAgAygCBEEYdkECdEGwMmooAgAgAygCEEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCFCADIAMoAiQoAlAgAygCFEH/AXFBAnRBsMIAaigCACADKAIYQQh2Qf8BcUECdEGwOmooAgAgAygCIEEYdkECdEGwMmooAgAgAygCHEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCECADIAMoAiQoAlQgAygCIEH/AXFBAnRBsMIAaigCACADKAIUQQh2Qf8BcUECdEGwOmooAgAgAygCHEEYdkECdEGwMmooAgAgAygCGEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCDCADIAMoAiQoAlggAygCHEH/AXFBAnRBsMIAaigCACADKAIgQQh2Qf8BcUECdEGwOmooAgAgAygCGEEYdkECdEGwMmooAgAgAygCFEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCCCADIAMoAiQoAlwgAygCGEH/AXFBAnRBsMIAaigCACADKAIcQQh2Qf8BcUECdEGwOmooAgAgAygCFEEYdkECdEGwMmooAgAgAygCIEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCBCADIAMoAiQoAmAgAygCBEH/AXFBAnRBsMIAaigCACADKAIIQQh2Qf8BcUECdEGwOmooAgAgAygCEEEYdkECdEGwMmooAgAgAygCDEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCICADIAMoAiQoAmQgAygCEEH/AXFBAnRBsMIAaigCACADKAIEQQh2Qf8BcUECdEGwOmooAgAgAygCDEEYdkECdEGwMmooAgAgAygCCEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCHCADIAMoAiQoAmggAygCDEH/AXFBAnRBsMIAaigCACADKAIQQQh2Qf8BcUECdEGwOmooAgAgAygCCEEYdkECdEGwMmooAgAgAygCBEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCGCADIAMoAiQoAmwgAygCCEH/AXFBAnRBsMIAaigCACADKAIMQQh2Qf8BcUECdEGwOmooAgAgAygCBEEYdkECdEGwMmooAgAgAygCEEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCFCADIAMoAiQoAnAgAygCFEH/AXFBAnRBsMIAaigCACADKAIYQQh2Qf8BcUECdEGwOmooAgAgAygCIEEYdkECdEGwMmooAgAgAygCHEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCECADIAMoAiQoAnQgAygCIEH/AXFBAnRBsMIAaigCACADKAIUQQh2Qf8BcUECdEGwOmooAgAgAygCHEEYdkECdEGwMmooAgAgAygCGEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCDCADIAMoAiQoAnggAygCHEH/AXFBAnRBsMIAaigCACADKAIgQQh2Qf8BcUECdEGwOmooAgAgAygCGEEYdkECdEGwMmooAgAgAygCFEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCCCADIAMoAiQoAnwgAygCGEH/AXFBAnRBsMIAaigCACADKAIcQQh2Qf8BcUECdEGwOmooAgAgAygCFEEYdkECdEGwMmooAgAgAygCIEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCBCADIAMoAiQoAoABIAMoAgRB/wFxQQJ0QbDCAGooAgAgAygCCEEIdkH/AXFBAnRBsDpqKAIAIAMoAhBBGHZBAnRBsDJqKAIAIAMoAgxBEHZB/wFxQQJ0QbASaigCAHNzc3M2AiAgAyADKAIkKAKEASADKAIQQf8BcUECdEGwwgBqKAIAIAMoAgRBCHZB/wFxQQJ0QbA6aigCACADKAIMQRh2QQJ0QbAyaigCACADKAIIQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIcIAMgAygCJCgCiAEgAygCDEH/AXFBAnRBsMIAaigCACADKAIQQQh2Qf8BcUECdEGwOmooAgAgAygCCEEYdkECdEGwMmooAgAgAygCBEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCGCADIAMoAiQoAowBIAMoAghB/wFxQQJ0QbDCAGooAgAgAygCDEEIdkH/AXFBAnRBsDpqKAIAIAMoAgRBGHZBAnRBsDJqKAIAIAMoAhBBEHZB/wFxQQJ0QbASaigCAHNzc3M2AhQgAyADKAIkKAKQASADKAIUQf8BcUECdEGwwgBqKAIAIAMoAhhBCHZB/wFxQQJ0QbA6aigCACADKAIgQRh2QQJ0QbAyaigCACADKAIcQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIQIAMgAygCJCgClAEgAygCIEH/AXFBAnRBsMIAaigCACADKAIUQQh2Qf8BcUECdEGwOmooAgAgAygCHEEYdkECdEGwMmooAgAgAygCGEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCDCADIAMoAiQoApgBIAMoAhxB/wFxQQJ0QbDCAGooAgAgAygCIEEIdkH/AXFBAnRBsDpqKAIAIAMoAhhBGHZBAnRBsDJqKAIAIAMoAhRBEHZB/wFxQQJ0QbASaigCAHNzc3M2AgggAyADKAIkKAKcASADKAIYQf8BcUECdEGwwgBqKAIAIAMoAhxBCHZB/wFxQQJ0QbA6aigCACADKAIUQRh2QQJ0QbAyaigCACADKAIgQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIEIAMgAygCJCgCoAEgAygCBEH/AXFBAnRBsMIAaigCACADKAIIQQh2Qf8BcUECdEGwOmooAgAgAygCEEEYdkECdEGwMmooAgAgAygCDEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCICADIAMoAiQoAqQBIAMoAhBB/wFxQQJ0QbDCAGooAgAgAygCBEEIdkH/AXFBAnRBsDpqKAIAIAMoAgxBGHZBAnRBsDJqKAIAIAMoAghBEHZB/wFxQQJ0QbASaigCAHNzc3M2AhwgAyADKAIkKAKoASADKAIMQf8BcUECdEGwwgBqKAIAIAMoAhBBCHZB/wFxQQJ0QbA6aigCACADKAIIQRh2QQJ0QbAyaigCACADKAIEQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIYIAMgAygCJCgCrAEgAygCCEH/AXFBAnRBsMIAaigCACADKAIMQQh2Qf8BcUECdEGwOmooAgAgAygCBEEYdkECdEGwMmooAgAgAygCEEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCFCADIAMoAiQoArABIAMoAhRB/wFxQQJ0QbDCAGooAgAgAygCGEEIdkH/AXFBAnRBsDpqKAIAIAMoAiBBGHZBAnRBsDJqKAIAIAMoAhxBEHZB/wFxQQJ0QbASaigCAHNzc3M2AhAgAyADKAIkKAK0ASADKAIgQf8BcUECdEGwwgBqKAIAIAMoAhRBCHZB/wFxQQJ0QbA6aigCACADKAIcQRh2QQJ0QbAyaigCACADKAIYQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIMIAMgAygCJCgCuAEgAygCHEH/AXFBAnRBsMIAaigCACADKAIgQQh2Qf8BcUECdEGwOmooAgAgAygCGEEYdkECdEGwMmooAgAgAygCFEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCCCADIAMoAiQoArwBIAMoAhhB/wFxQQJ0QbDCAGooAgAgAygCHEEIdkH/AXFBAnRBsDpqKAIAIAMoAhRBGHZBAnRBsDJqKAIAIAMoAiBBEHZB/wFxQQJ0QbASaigCAHNzc3M2AgQgAyADKAIkKALAASADKAIEQf8BcUECdEGwwgBqKAIAIAMoAghBCHZB/wFxQQJ0QbA6aigCACADKAIQQRh2QQJ0QbAyaigCACADKAIMQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIgIAMgAygCJCgCxAEgAygCEEH/AXFBAnRBsMIAaigCACADKAIEQQh2Qf8BcUECdEGwOmooAgAgAygCDEEYdkECdEGwMmooAgAgAygCCEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCHCADIAMoAiQoAsgBIAMoAgxB/wFxQQJ0QbDCAGooAgAgAygCEEEIdkH/AXFBAnRBsDpqKAIAIAMoAghBGHZBAnRBsDJqKAIAIAMoAgRBEHZB/wFxQQJ0QbASaigCAHNzc3M2AhggAyADKAIkKALMASADKAIIQf8BcUECdEGwwgBqKAIAIAMoAgxBCHZB/wFxQQJ0QbA6aigCACADKAIEQRh2QQJ0QbAyaigCACADKAIQQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIUIAMgAygCJCgC0AEgAygCFEH/AXFBAnRBsMIAaigCACADKAIYQQh2Qf8BcUECdEGwOmooAgAgAygCIEEYdkECdEGwMmooAgAgAygCHEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCECADIAMoAiQoAtQBIAMoAiBB/wFxQQJ0QbDCAGooAgAgAygCFEEIdkH/AXFBAnRBsDpqKAIAIAMoAhxBGHZBAnRBsDJqKAIAIAMoAhhBEHZB/wFxQQJ0QbASaigCAHNzc3M2AgwgAyADKAIkKALYASADKAIcQf8BcUECdEGwwgBqKAIAIAMoAiBBCHZB/wFxQQJ0QbA6aigCACADKAIYQRh2QQJ0QbAyaigCACADKAIUQRB2Qf8BcUECdEGwEmooAgBzc3NzNgIIIAMgAygCJCgC3AEgAygCGEH/AXFBAnRBsMIAaigCACADKAIcQQh2Qf8BcUECdEGwOmooAgAgAygCFEEYdkECdEGwMmooAgAgAygCIEEQdkH/AXFBAnRBsBJqKAIAc3NzczYCBCADIAMoAiQoAuABIAMoAgRB/wFxQQJ0QbASaigCAEH/AXEgAygCCEEIdkH/AXFBAnRBsDJqKAIAQYD+A3EgAygCEEEYdkECdEGwOmooAgBBgICAeHEgAygCDEEQdkH/AXFBAnRBsMIAaigCAEGAgPwHcXNzc3M2AiAgAygCKCADKAIgQQh0IAMoAiBBGHZyQf+B/AdxIAMoAiBBGHQgAygCIEEIdnJBgP6DeHFyNgIAIAMgAygCJCgC5AEgAygCEEH/AXFBAnRBsBJqKAIAQf8BcSADKAIEQQh2Qf8BcUECdEGwMmooAgBBgP4DcSADKAIMQRh2QQJ0QbA6aigCAEGAgIB4cSADKAIIQRB2Qf8BcUECdEGwwgBqKAIAQYCA/Adxc3NzczYCHCADKAIoIAMoAhxBCHQgAygCHEEYdnJB/4H8B3EgAygCHEEYdCADKAIcQQh2ckGA/oN4cXI2AgQgAyADKAIkKALoASADKAIMQf8BcUECdEGwEmooAgBB/wFxIAMoAhBBCHZB/wFxQQJ0QbAyaigCAEGA/gNxIAMoAghBGHZBAnRBsDpqKAIAQYCAgHhxIAMoAgRBEHZB/wFxQQJ0QbDCAGooAgBBgID8B3Fzc3NzNgIYIAMoAiggAygCGEEIdCADKAIYQRh2ckH/gfwHcSADKAIYQRh0IAMoAhhBCHZyQYD+g3hxcjYCCCADIAMoAiQoAuwBIAMoAghB/wFxQQJ0QbASaigCAEH/AXEgAygCDEEIdkH/AXFBAnRBsDJqKAIAQYD+A3EgAygCBEEYdkECdEGwOmooAgBBgICAeHEgAygCEEEQdkH/AXFBAnRBsMIAaigCAEGAgPwHcXNzc3M2AhQgAygCKCADKAIUQQh0IAMoAhRBGHZyQf+B/AdxIAMoAhRBGHQgAygCFEEIdnJBgP6DeHFyNgIMC48DAQF/IwBBIGsiAiQAIAIgADYCHCACIAE2AhggAkEENgIUIAJBDjYCECACQQg2AgwgAkEANgIIA0AgAigCCCIAIAIoAgxPRQRAIABBAnQiACACKAIYaiAAIAIoAhwiAWotAABBGHQgAEEBaiABai0AAEEQdHIgAEECaiABai0AAEEIdHIgAEEDaiABai0AAHI2AgAgAiACKAIIQQFqNgIIDAELCyACIAIoAgw2AggDQCACKAIIIgAgAigCFCACKAIQQQFqbE9FBEAgAiACKAIYIABBAWtBAnRqKAIANgIEAkAgAigCCCACKAIMcEUEQCACIAIoAgQiAEEIdCAAQRh2chAWIAIoAghBAWsgAigCDG5BAnRBgApqKAIAczYCBAwBCwJAIAIoAgwiAEEGTQ0AIAIoAgggAHBBBEcNACACIAIoAgQQFjYCBAsLIAIoAhgiACACKAIIIgFBAnRqIAEgAigCDGtBAnQgAGooAgAgAigCBHM2AgAgAiACKAIIQQFqNgIIDAELCyACQSBqJAALri4BAX8jAEEwayIDIAA2AiwgAyABNgIoIAMgAjYCJCADIAMoAiQoAgAgAygCLCgCACIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCICADIAMoAiQoAgQgAygCLCgCBCIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCHCADIAMoAiQoAgggAygCLCgCCCIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCGCADIAMoAiQoAgwgAygCLCgCDCIAQQh0IABBGHZyQf+B/AdxIABBGHQgAEEIdnJBgP6DeHFyczYCFCADIAMoAiQoAhAgAygCHEH/AXFBAnRBsCpqKAIAIAMoAhhBCHZB/wFxQQJ0QbAiaigCACADKAIgQRh2QQJ0QbAKaigCACADKAIUQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIQIAMgAygCJCgCFCADKAIYQf8BcUECdEGwKmooAgAgAygCFEEIdkH/AXFBAnRBsCJqKAIAIAMoAhxBGHZBAnRBsApqKAIAIAMoAiBBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AgwgAyADKAIkKAIYIAMoAhRB/wFxQQJ0QbAqaigCACADKAIgQQh2Qf8BcUECdEGwImooAgAgAygCGEEYdkECdEGwCmooAgAgAygCHEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCCCADIAMoAiQoAhwgAygCIEH/AXFBAnRBsCpqKAIAIAMoAhxBCHZB/wFxQQJ0QbAiaigCACADKAIUQRh2QQJ0QbAKaigCACADKAIYQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIEIAMgAygCJCgCICADKAIMQf8BcUECdEGwKmooAgAgAygCCEEIdkH/AXFBAnRBsCJqKAIAIAMoAhBBGHZBAnRBsApqKAIAIAMoAgRBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AiAgAyADKAIkKAIkIAMoAghB/wFxQQJ0QbAqaigCACADKAIEQQh2Qf8BcUECdEGwImooAgAgAygCDEEYdkECdEGwCmooAgAgAygCEEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCHCADIAMoAiQoAiggAygCBEH/AXFBAnRBsCpqKAIAIAMoAhBBCHZB/wFxQQJ0QbAiaigCACADKAIIQRh2QQJ0QbAKaigCACADKAIMQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIYIAMgAygCJCgCLCADKAIQQf8BcUECdEGwKmooAgAgAygCDEEIdkH/AXFBAnRBsCJqKAIAIAMoAgRBGHZBAnRBsApqKAIAIAMoAghBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AhQgAyADKAIkKAIwIAMoAhxB/wFxQQJ0QbAqaigCACADKAIYQQh2Qf8BcUECdEGwImooAgAgAygCIEEYdkECdEGwCmooAgAgAygCFEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCECADIAMoAiQoAjQgAygCGEH/AXFBAnRBsCpqKAIAIAMoAhRBCHZB/wFxQQJ0QbAiaigCACADKAIcQRh2QQJ0QbAKaigCACADKAIgQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIMIAMgAygCJCgCOCADKAIUQf8BcUECdEGwKmooAgAgAygCIEEIdkH/AXFBAnRBsCJqKAIAIAMoAhhBGHZBAnRBsApqKAIAIAMoAhxBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AgggAyADKAIkKAI8IAMoAiBB/wFxQQJ0QbAqaigCACADKAIcQQh2Qf8BcUECdEGwImooAgAgAygCFEEYdkECdEGwCmooAgAgAygCGEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCBCADIAMoAiQoAkAgAygCDEH/AXFBAnRBsCpqKAIAIAMoAghBCHZB/wFxQQJ0QbAiaigCACADKAIQQRh2QQJ0QbAKaigCACADKAIEQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIgIAMgAygCJCgCRCADKAIIQf8BcUECdEGwKmooAgAgAygCBEEIdkH/AXFBAnRBsCJqKAIAIAMoAgxBGHZBAnRBsApqKAIAIAMoAhBBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AhwgAyADKAIkKAJIIAMoAgRB/wFxQQJ0QbAqaigCACADKAIQQQh2Qf8BcUECdEGwImooAgAgAygCCEEYdkECdEGwCmooAgAgAygCDEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCGCADIAMoAiQoAkwgAygCEEH/AXFBAnRBsCpqKAIAIAMoAgxBCHZB/wFxQQJ0QbAiaigCACADKAIEQRh2QQJ0QbAKaigCACADKAIIQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIUIAMgAygCJCgCUCADKAIcQf8BcUECdEGwKmooAgAgAygCGEEIdkH/AXFBAnRBsCJqKAIAIAMoAiBBGHZBAnRBsApqKAIAIAMoAhRBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AhAgAyADKAIkKAJUIAMoAhhB/wFxQQJ0QbAqaigCACADKAIUQQh2Qf8BcUECdEGwImooAgAgAygCHEEYdkECdEGwCmooAgAgAygCIEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCDCADIAMoAiQoAlggAygCFEH/AXFBAnRBsCpqKAIAIAMoAiBBCHZB/wFxQQJ0QbAiaigCACADKAIYQRh2QQJ0QbAKaigCACADKAIcQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIIIAMgAygCJCgCXCADKAIgQf8BcUECdEGwKmooAgAgAygCHEEIdkH/AXFBAnRBsCJqKAIAIAMoAhRBGHZBAnRBsApqKAIAIAMoAhhBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AgQgAyADKAIkKAJgIAMoAgxB/wFxQQJ0QbAqaigCACADKAIIQQh2Qf8BcUECdEGwImooAgAgAygCEEEYdkECdEGwCmooAgAgAygCBEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCICADIAMoAiQoAmQgAygCCEH/AXFBAnRBsCpqKAIAIAMoAgRBCHZB/wFxQQJ0QbAiaigCACADKAIMQRh2QQJ0QbAKaigCACADKAIQQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIcIAMgAygCJCgCaCADKAIEQf8BcUECdEGwKmooAgAgAygCEEEIdkH/AXFBAnRBsCJqKAIAIAMoAghBGHZBAnRBsApqKAIAIAMoAgxBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AhggAyADKAIkKAJsIAMoAhBB/wFxQQJ0QbAqaigCACADKAIMQQh2Qf8BcUECdEGwImooAgAgAygCBEEYdkECdEGwCmooAgAgAygCCEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCFCADIAMoAiQoAnAgAygCHEH/AXFBAnRBsCpqKAIAIAMoAhhBCHZB/wFxQQJ0QbAiaigCACADKAIgQRh2QQJ0QbAKaigCACADKAIUQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIQIAMgAygCJCgCdCADKAIYQf8BcUECdEGwKmooAgAgAygCFEEIdkH/AXFBAnRBsCJqKAIAIAMoAhxBGHZBAnRBsApqKAIAIAMoAiBBEHZB/wFxQQJ0QbAaaigCAHNzc3M2AgwgAyADKAIkKAJ4IAMoAhRB/wFxQQJ0QbAqaigCACADKAIgQQh2Qf8BcUECdEGwImooAgAgAygCGEEYdkECdEGwCmooAgAgAygCHEEQdkH/AXFBAnRBsBpqKAIAc3NzczYCCCADIAMoAiQoAnwgAygCIEH/AXFBAnRBsCpqKAIAIAMoAhxBCHZB/wFxQQJ0QbAiaigCACADKAIUQRh2QQJ0QbAKaigCACADKAIYQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIEIAMgAygCJCgCgAEgAygCDEH/AXFBAnRBsCpqKAIAIAMoAghBCHZB/wFxQQJ0QbAiaigCACADKAIQQRh2QQJ0QbAKaigCACADKAIEQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIgIAMgAygCJCgChAEgAygCCEH/AXFBAnRBsCpqKAIAIAMoAgRBCHZB/wFxQQJ0QbAiaigCACADKAIMQRh2QQJ0QbAKaigCACADKAIQQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIcIAMgAygCJCgCiAEgAygCBEH/AXFBAnRBsCpqKAIAIAMoAhBBCHZB/wFxQQJ0QbAiaigCACADKAIIQRh2QQJ0QbAKaigCACADKAIMQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIYIAMgAygCJCgCjAEgAygCEEH/AXFBAnRBsCpqKAIAIAMoAgxBCHZB/wFxQQJ0QbAiaigCACADKAIEQRh2QQJ0QbAKaigCACADKAIIQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIUIAMgAygCJCgCkAEgAygCHEH/AXFBAnRBsCpqKAIAIAMoAhhBCHZB/wFxQQJ0QbAiaigCACADKAIgQRh2QQJ0QbAKaigCACADKAIUQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIQIAMgAygCJCgClAEgAygCGEH/AXFBAnRBsCpqKAIAIAMoAhRBCHZB/wFxQQJ0QbAiaigCACADKAIcQRh2QQJ0QbAKaigCACADKAIgQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIMIAMgAygCJCgCmAEgAygCFEH/AXFBAnRBsCpqKAIAIAMoAiBBCHZB/wFxQQJ0QbAiaigCACADKAIYQRh2QQJ0QbAKaigCACADKAIcQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIIIAMgAygCJCgCnAEgAygCIEH/AXFBAnRBsCpqKAIAIAMoAhxBCHZB/wFxQQJ0QbAiaigCACADKAIUQRh2QQJ0QbAKaigCACADKAIYQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIEIAMgAygCJCgCoAEgAygCDEH/AXFBAnRBsCpqKAIAIAMoAghBCHZB/wFxQQJ0QbAiaigCACADKAIQQRh2QQJ0QbAKaigCACADKAIEQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIgIAMgAygCJCgCpAEgAygCCEH/AXFBAnRBsCpqKAIAIAMoAgRBCHZB/wFxQQJ0QbAiaigCACADKAIMQRh2QQJ0QbAKaigCACADKAIQQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIcIAMgAygCJCgCqAEgAygCBEH/AXFBAnRBsCpqKAIAIAMoAhBBCHZB/wFxQQJ0QbAiaigCACADKAIIQRh2QQJ0QbAKaigCACADKAIMQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIYIAMgAygCJCgCrAEgAygCEEH/AXFBAnRBsCpqKAIAIAMoAgxBCHZB/wFxQQJ0QbAiaigCACADKAIEQRh2QQJ0QbAKaigCACADKAIIQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIUIAMgAygCJCgCsAEgAygCHEH/AXFBAnRBsCpqKAIAIAMoAhhBCHZB/wFxQQJ0QbAiaigCACADKAIgQRh2QQJ0QbAKaigCACADKAIUQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIQIAMgAygCJCgCtAEgAygCGEH/AXFBAnRBsCpqKAIAIAMoAhRBCHZB/wFxQQJ0QbAiaigCACADKAIcQRh2QQJ0QbAKaigCACADKAIgQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIMIAMgAygCJCgCuAEgAygCFEH/AXFBAnRBsCpqKAIAIAMoAiBBCHZB/wFxQQJ0QbAiaigCACADKAIYQRh2QQJ0QbAKaigCACADKAIcQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIIIAMgAygCJCgCvAEgAygCIEH/AXFBAnRBsCpqKAIAIAMoAhxBCHZB/wFxQQJ0QbAiaigCACADKAIUQRh2QQJ0QbAKaigCACADKAIYQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIEIAMgAygCJCgCwAEgAygCDEH/AXFBAnRBsCpqKAIAIAMoAghBCHZB/wFxQQJ0QbAiaigCACADKAIQQRh2QQJ0QbAKaigCACADKAIEQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIgIAMgAygCJCgCxAEgAygCCEH/AXFBAnRBsCpqKAIAIAMoAgRBCHZB/wFxQQJ0QbAiaigCACADKAIMQRh2QQJ0QbAKaigCACADKAIQQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIcIAMgAygCJCgCyAEgAygCBEH/AXFBAnRBsCpqKAIAIAMoAhBBCHZB/wFxQQJ0QbAiaigCACADKAIIQRh2QQJ0QbAKaigCACADKAIMQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIYIAMgAygCJCgCzAEgAygCEEH/AXFBAnRBsCpqKAIAIAMoAgxBCHZB/wFxQQJ0QbAiaigCACADKAIEQRh2QQJ0QbAKaigCACADKAIIQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIUIAMgAygCJCgC0AEgAygCHEH/AXFBAnRBsCpqKAIAIAMoAhhBCHZB/wFxQQJ0QbAiaigCACADKAIgQRh2QQJ0QbAKaigCACADKAIUQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIQIAMgAygCJCgC1AEgAygCGEH/AXFBAnRBsCpqKAIAIAMoAhRBCHZB/wFxQQJ0QbAiaigCACADKAIcQRh2QQJ0QbAKaigCACADKAIgQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIMIAMgAygCJCgC2AEgAygCFEH/AXFBAnRBsCpqKAIAIAMoAiBBCHZB/wFxQQJ0QbAiaigCACADKAIYQRh2QQJ0QbAKaigCACADKAIcQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIIIAMgAygCJCgC3AEgAygCIEH/AXFBAnRBsCpqKAIAIAMoAhxBCHZB/wFxQQJ0QbAiaigCACADKAIUQRh2QQJ0QbAKaigCACADKAIYQRB2Qf8BcUECdEGwGmooAgBzc3NzNgIEIAMgAygCJCgC4AEgAygCDEH/AXEtALBKIAMoAhBBGHYtALBKQRh0IAMoAgRBEHZB/wFxLQCwSkEQdHMgAygCCEEIdkH/AXEtALBKQQh0c3NzNgIgIAMoAiggAygCIEEIdCADKAIgQRh2ckH/gfwHcSADKAIgQRh0IAMoAiBBCHZyQYD+g3hxcjYCACADIAMoAiQoAuQBIAMoAghB/wFxLQCwSiADKAIMQRh2LQCwSkEYdCADKAIQQRB2Qf8BcS0AsEpBEHRzIAMoAgRBCHZB/wFxLQCwSkEIdHNzczYCHCADKAIoIAMoAhxBCHQgAygCHEEYdnJB/4H8B3EgAygCHEEYdCADKAIcQQh2ckGA/oN4cXI2AgQgAyADKAIkKALoASADKAIEQf8BcS0AsEogAygCCEEYdi0AsEpBGHQgAygCDEEQdkH/AXEtALBKQRB0cyADKAIQQQh2Qf8BcS0AsEpBCHRzc3M2AhggAygCKCADKAIYQQh0IAMoAhhBGHZyQf+B/AdxIAMoAhhBGHQgAygCGEEIdnJBgP6DeHFyNgIIIAMgAygCJCgC7AEgAygCEEH/AXEtALBKIAMoAgRBGHYtALBKQRh0IAMoAghBEHZB/wFxLQCwSkEQdHMgAygCDEEIdkH/AXEtALBKQQh0c3NzNgIUIAMoAiggAygCFEEIdCADKAIUQRh2ckH/gfwHcSADKAIUQRh0IAMoAhRBCHZyQYD+g3hxcjYCDAvbAwEBfyMAQSBrIgIkACACIAA2AhwgAiABNgIYIAIoAhwgAigCGBAHIAJBADYCFCACQTg2AhADQCACKAIUIAIoAhBPRQRAIAJBADYCDANAIAIoAgwiAEEET0UEQCACIAIoAhggACACKAIUakECdGooAgA2AgggAigCGCACKAIUIAIoAgxqQQJ0aiACKAIYIAIoAhAgAigCDGpBAnRqKAIANgIAIAIoAhggAigCECACKAIMakECdGogAigCCDYCACACIAIoAgxBAWo2AgwMAQsLIAIgAigCFEEEajYCFCACIAIoAhBBBGs2AhAMAQsLIAJBBDYCFANAIAIoAhRBOE9FBEAgAkEANgIQA0AgAigCECIAQQRPRQRAIAIoAhggACACKAIUakECdGoiACAAKAIAIgBBGHZBAnRBsBJqKAIAQf8BcUECdEGwCmooAgAgAEEQdkH/AXFBAnRBsBJqKAIAQf8BcUECdEGwGmooAgBzIABBCHZB/wFxQQJ0QbASaigCAEH/AXFBAnRBsCJqKAIAcyAAQf8BcUECdEGwEmooAgBB/wFxQQJ0QbAqaigCAHM2AgAgAiACKAIQQQFqNgIQDAELCyACIAIoAhRBBGo2AhQMAQsLIAJBIGokAAsvAQJ+IAAgASkDCCIDIAIpAwgiBH03AwggACABKQMAIAIpAwB9IAMgBFStfTcDAAutAQIBfwN+IwBBQGoiAyQAIANBMGogASkDACIEIAIpAwAiBRASIAQgAikDCBADIQQgASkDCCAFEAMhBSADIAMpAzg3AxggAyADKQMwNwMQIAMgBCADKQMYIgZ8IgQ3AyggAyADKQMQIAQgBlStfDcDICADIAMpAyg3AwggAyADKQMgNwMAIAAgBSADKQMIIgR8IgU3AwggACADKQMAIAQgBVatfDcDACADQUBrJAALAgALtQQBBn8jAEHgAmsiBiQAIAYgADYC3AIgBiABNgLYAiAGIAI2AtQCIAYgAzYC0AIgBiAENgLMAiAGIAU6AMsCIAYtAMsCBH8gBkGwAmoFIAZBoAJqCyIAIAYoAswCIgEpAAA3AAAgACABKQAINwAIIAYtAMsCBH8gBkGgAmoFIAZBsAJqCyIAIAYoAswCIgEpABA3AAAgACABKQAYNwAIIAYoAtACIQcgBkEQaiEIIAYtAMsCBEAgByAIEAcFIAcgCBAJCyAGQQA2AgwDQCAGKAIMIgEgBigC1AJPRQRAIAZBkAJqIgAgASAGKALcAmoiASkAADcAACAAIAEpAAg3AAggBkEANgIIA0AgBigCCCIAQRBPRQRAIAZBgAJqIABqIAYoAtwCIAAgBigCDGpqLQAAIAZBsAJqIABqLQAAczoAACAGIAYoAghBAWo2AggMAQsLIAZBgAJqIQkgBigC2AIgBigCDGohCiAGQRBqIQsgBi0AywIEQCAJIAogCxAGBSAJIAogCxAICyAGQQA2AggDQCAGKAIIIgFBEE9FBEAgBigC2AIgASAGKAIMamoiACAGQaACaiABai0AACAALQAAczoAACAGIAYoAghBAWo2AggMAQsLIAZBsAJqIgAgBigC2AIgBigCDGoiASkAADcAACAAIAEpAAg3AAggBkGgAmoiACAGQZACaiIBKQMANwMAIAAgASkDCDcDCCAGIAYoAgxBEGo2AgwMAQsLIAZB4AJqJAAL/wMBAX8jAEGwAmsiBSQAIAUgADYCrAIgBSABNgKoAiAFIAI2AqQCIAUgAzYCoAIgBSAEOgCfAiAFIAUoAqwCNgKYAgJAIAUtAJ8CBEAgBSgCpAIgBUEQahAHIAVBADYCDANAIAUoAgwgBSgCqAJPRQRAIAVBADYCCANAIAUoAggiAUEQT0UEQCAFKAKYAiABIAUoAgxqaiIAIAEgBSgCoAJqLQAAIAAtAABzOgAAIAUgBSgCCEEBajYCCAwBCwsgBSgCmAIgBSgCDGoiACAAIAVBEGoQBiAFKAKgAiIAIAUoApgCIAUoAgxqIgEpAAA3AAAgACABKQAINwAIIAUgBSgCDEEQajYCDAwBCwsMAQsgBSgCpAIgBUEQahAJIAVBADYCDANAIAUoAgwiASAFKAKoAk9FBEAgBUGAAmoiACABIAUoApgCaiIBKQAANwAAIAAgASkACDcACCAFKAKYAiAFKAIMaiAFKAKYAiAFKAIMaiAFQRBqEAggBUEANgIIA0AgBSgCCCIBQRBPRQRAIAUoApgCIAEgBSgCDGpqIgAgASAFKAKgAmotAAAgAC0AAHM6AAAgBSAFKAIIQQFqNgIIDAELCyAFKAKgAiIAIAVBgAJqIgEpAAA3AAAgACABKQAINwAIIAUgBSgCDEEQajYCDAwBCwsLIAVBsAJqJAALfgIBfgJ/IwBBEGsiAyQAIAACfiABUARAQgAMAQsgAyABIAFCP4ciAoUgAn0iAkIAIAJ5pyIEQTFqEAIgAykDCEKAgICAgIDAAIVBvoABIARrrUIwhnwgAUKAgICAgICAgIB/g4QhAiADKQMACzcDACAAIAI3AwggA0EQaiQAC4cBAgJ/AX4jAEEQayICJAACfkIAIAFCMIinQf//AXEiA0H//wBJDQAaIAFCP4dC////////////AIUgA0G/gAFrQb9/TQ0AGiACIAAgAUL///////8/g0KAgICAgIDAAIRB74ABIANrEAUgAikDACIAQgAgAH0gAUIAWRsLIQQgAkEQaiQAIAQLxQkCBH8GfiMAQfAAayIGJAAgBEL///////////8AgyEJAkACQCABUCIFIAJC////////////AIMiCkKAgICAgIDA//8AfUKAgICAgIDAgIB/VCAKUBtFBEAgA0IAUiAJQoCAgICAgMD//wB9IgtCgICAgICAwICAf1YgC0KAgICAgIDAgIB/URsNAQsgBSAKQoCAgICAgMD//wBUIApCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhBCABIQMMAgsgA1AgCUKAgICAgIDA//8AVCAJQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQQMAgsgASAKQoCAgICAgMD//wCFhFAEQEKAgICAgIDg//8AIAIgASADhSACIASFQoCAgICAgICAgH+FhFAiBRshBEIAIAEgBRshAwwCCyADIAlCgICAgICAwP//AIWEUA0BIAEgCoRQBEAgAyAJhEIAUg0CIAEgA4MhAyACIASDIQQMAgsgAyAJhEIAUg0AIAEhAyACIQQMAQsgAyABIAEgA1QgCSAKViAJIApRGyIIGyEKIAQgAiAIGyILQv///////z+DIQkgAiAEIAgbIgJCMIinQf//AXEhByALQjCIp0H//wFxIgVFBEAgBkHgAGogCiAJIAogCSAJUCIFG3kgBUEGdK18pyIFQQ9rEAIgBikDaCEJIAYpA2AhCkEQIAVrIQULIAEgAyAIGyEDIAJC////////P4MhBCAHRQRAIAZB0ABqIAMgBCADIAQgBFAiBxt5IAdBBnStfKciB0EPaxACQRAgB2shByAGKQNYIQQgBikDUCEDCyAEQgOGIANCPYiEQoCAgICAgIAEhCEBIAlCA4YgCkI9iIQhDiACIAuFIQ0CfiADQgOGIgIgBSAHRg0AGiAFIAdrIgdB/wBLBEBCACEBQgEMAQsgBkFAayACIAFBgAEgB2sQAiAGQTBqIAIgASAHEAUgBikDOCEBIAYpAzAgBikDQCAGKQNIhEIAUq2ECyEJIA5CgICAgICAgASEIQwgCkIDhiEKAkAgDUIAUwRAQgAhA0IAIQQgCSAKhSABIAyFhFANAiAKIAl9IQIgDCABfSAJIApWrX0iBEL/////////A1YNASAGQSBqIAIgBCACIAQgBFAiBxt5IAdBBnStfKdBDGsiBxACIAUgB2shBSAGKQMoIQQgBikDICECDAELIAkgCnwiAiAJVK0gASAMfHwiBEKAgICAgICACINQDQAgCUIBgyAEQj+GIAJCAYiEhCECIAVBAWohBSAEQgGIIQQLIAtCgICAgICAgICAf4MhASAFQf//AU4EQCABQoCAgICAgMD//wCEIQRCACEDDAELQQAhBwJAIAVBAEoEQCAFIQcMAQsgBkEQaiACIAQgBUH/AGoQAiAGIAIgBEEBIAVrEAUgBikDACAGKQMQIAYpAxiEQgBSrYQhAiAGKQMIIQQLIAKnQQdxIgVBBEutIARCPYYgAkIDiIQiAnwiAyACVK0gBEIDiEL///////8/gyAHrUIwhoQgAYR8IQQCQCAFQQRGBEAgBCADQgGDIgEgA3wiAyABVK18IQQMAQsgBUUNAQsLIAAgAzcDACAAIAQ3AwggBkHwAGokAAt4AQR+IAAgAkL/////D4MiAyABQiCIIgR+IgVC/////w+DIAJCIIgiAiABQv////8PgyIBfiIGQv////8Pg3wgASADfiIBQiCIfCIDQiCGIAFC/////w+DhDcDCCAAIAIgBH4gBUIgiHwgBkIgiHwgA0IgiHw3AwALQAEDfiABIAEpAwAiAyACrSIEiCIFNwMAIAEgA0HAACACa62GIAEpAwggBIiEIgM3AwggACADNwMIIAAgBTcDAAtsAQJ+AkAgAkHAAE4EQCABKQMIIQMgAUIANwMIIAEgAyACQUBqrYY3AwAMAQsgASABKQMIIgMgAq0iBIY3AwggASABKQMAIASGIANBwAAgAmutiIQ3AwALIAAgASkDADcDACAAIAEpAwg3AwgLnSMCBX8SfiMAQZAFayIDJAAgAyABNwOIBSADIAI3A4AFAkAgAykDgAUiCUIwiCIKQv//AX1CgYB+WARAIAlCgICAgICAwP//AFIgCUL///////////8Ag0IAUnFFBEAgAykDiAVQDQILIAlCgICAgICAwP//AFoEQCMAQSBrIgUkACMAQRBrIgQkACAEIAEgAiABIAJCgICAgICAgICAf4UQESAEKQMAIQEgBSAEKQMINwMYIAUgATcDECAEQRBqJAAgBSkDECIKIQEgBSkDGCECIwBB0AJrIgQkACACQv///////z+DIgkhCAJAAkAgAkIwiKdB//8BcSIHQf//AWtBgYB+SyAHQf//AWtBgoB+T3ENACABUCACQv///////////wCDIg1CgICAgICAwP//AFQgDUKAgICAgIDA//8AURtFBEAgAkKAgICAgIAghCEMDAILIApQIAJC////////////AIMiC0KAgICAgIDA//8AVCALQoCAgICAgMD//wBRG0UEQCACQoCAgICAgCCEIQwMAgsgASANQoCAgICAgMD//wCFhFAEQCAKIAtCgICAgICAwP//AIWEUARAQgAhAUKAgICAgIDg//8AIQwMAwtCgICAgICAwP//ACEMQgAhAQwCCyAKIAtCgICAgICAwP//AIWEUARAQgAhAQwCCyABIA2EUARAQoCAgICAgOD//wBCACAKIAuEUBshDEIAIQEMAgsgCiALhFAEQEKAgICAgIDA//8AIQxCACEBDAILIA1C////////P1gEQCAEQcACaiABIAkgASAJIAlQIgYbeSAGQQZ0rXynIgZBD2sQAkEQIAZrIQYgBCkDyAIhCSAEKQPAAiEBCyALQv///////z9WDQAgBEGwAmogCiAIIAogCCAIUCIHG3kgB0EGdK18pyIHQQ9rEAIgBiAHakEQayEGIAQpA7gCIQggBCkDsAIhCgsgBEGgAmogCEKAgICAgIDAAIQiDUIPhiAKQjGIhCICQgBCgICAgLDmvIL1ACACfSIIQgAQASAEQZACakIAIAQpA6gCfUIAIAhCABABIARBgAJqIAQpA5gCQgGGIAQpA5ACQj+IhCIIQgAgAkIAEAEgBEHwAWogCEIAQgAgBCkDiAJ9QgAQASAEQeABaiAEKQP4AUIBhiAEKQPwAUI/iIQiCEIAIAJCABABIARB0AFqIAhCAEIAIAQpA+gBfUIAEAEgBEHAAWogBCkD2AFCAYYgBCkD0AFCP4iEIghCACACQgAQASAEQbABaiAIQgBCACAEKQPIAX1CABABIARBoAFqIAJCACAEKQO4AUIBhiAEKQOwAUI/iIRCAX0iAkIAEAEgBEGQAWogCkIPhkIAIAJCABABIARB8ABqIAJCAEIAIAQpA6gBIAQpA6ABIgsgBCkDmAF8IgggC1StfCAIQgFWrXx9QgAQASAEQYABakIBIAh9QgAgAkIAEAECfyAEKQNwIhJCAYYiDiAEKQOIASIRQgGGIAQpA4ABQj+IhHwiEELn7AB9IhRCIIgiCCAJQoCAgICAgMAAhCIVQgGGIhdCIIgiC34iEyABQgGGIgJCIIgiDyAQIBRWrSAOIBBWrSAEKQN4QgGGIBJCP4iEIBFCP4h8fHxCAX0iEkIgiCIQfnwiDiATVK0gDiAOIBJC/////w+DIhIgAUI/iCIYIAlCAYaEQv////8PgyIJfnwiEVatfCALIBB+fCALIBJ+IhMgCSAQfnwiDiATVK1CIIYgDkIgiIR8IBEgESAOQiCGfCIOVq18IA4gDiAUQv////8PgyIUIAl+IhMgCCAPfnwiESATVK0gESARIBIgAkL+////D4MiE358IhZWrXx8IhFWrXwgESALIBR+Ig4gECATfnwiCyAIIAl+fCIJIA8gEn58IhBCIIggCSAQVq0gCyAOVK0gCSALVK18fEIghoR8IgkgEVStfCAJIBYgCCATfiIIIA8gFH58IgtCIIggCCALVq1CIIaEfCIIIBZUrSAIIBBCIIZ8IAhUrXx8IgsgCVStfCIPQv////////8AWARAIBcgGIQhFSAEQdAAaiALIA8gCiANEAEgAUIxhiAEKQNYfSAEKQNQIgFCAFKtfSEJQgAgAX0hCCAGQf7/AGoMAQsgBEHgAGogD0I/hiALQgGIhCILIA9CAYgiDyAKIA0QASABQjCGIAQpA2h9IAQpA2AiAkIAUq19IQlCACACfSEIIAEhAiAGQf//AGoLIgZB//8BTgRAQoCAgICAgMD//wAhDEIAIQEMAQsCfiAGQQBKBEAgCUIBhiAIQj+IhCEJIA9C////////P4MgBq1CMIaEIQIgCEIBhgwBCyAGQY9/TARAQgAhAQwCCyAEQUBrIAsgD0EBIAZrEAUgBEEwaiACIBUgBkHwAGoQAiAEQSBqIAogDSAEKQNAIgsgBCkDSCICEAEgBCkDOCAEKQMoQgGGIAQpAyAiAUI/iIR9IAQpAzAiCCABQgGGIgFUrX0hCSAIIAF9CyEBIARBEGogCiANQgNCABABIAQgCiANQgVCABABIAIgCyALIAogASALQgGDIgx8IghUIAkgCCAMVK18IgEgDVYgASANURutfCIKVq18IgIgCiAKIAJCgICAgICAwP//AFQgCCAEKQMQViABIAQpAxgiAlYgASACURtxrXwiAlatfCIKIAIgCkKAgICAgIDA//8AVCAIIAQpAwBWIAEgBCkDCCIKViABIApRG3GtfCIBIAJUrXwhDAsgBSABNwMAIAUgDDcDCCAEQdACaiQAIAMgBSkDCDcDCCADIAUpAwA3AwAgBUEgaiQAIAMpAwghAiADKQMAIQEMAgsjAEHgAGsiBCQAIAJCgICAgICAwLfAAIVCgICAgICAgICAf4MhCSACQv///////z+DIgpCIIghDAJAIAJCMIinQf//AXEiBkH//wFrQYKAfkkEQCABUCACQv///////////wCDIghCgICAgICAwP//AFQgCEKAgICAgIDA//8AURtFBEAgAkKAgICAgIAghCEJDAILIAEgCEKAgICAgIDA//8AhYRQBEAgCUKAgICAgIDA//8AhCEJQgAhAQwCCyABIAiEUARAQgAhAQwCCyAIQv///////z9YBH4gBEHQAGogASAKIAEgCiAKUCIFG3kgBUEGdK18pyIFQQ9rEAJBECAFayEFIAQpA1giCkIgiCEMIAQpA1AFIAELIQELIAFCIIgiAkIAfiILIAFC/////w+DIg1CAH58IgFCIIYiCCAIVK0gCkL/////D4MiD0IAfiIQIAEgC1StQiCGIAFCIIiEfCIKIAxCgIAEhCILQgB+IhIgDUIfhnwiDEIghnwiDXwhASAFIAZqQfAAaiEFAkAgAkIfhiICIAJUrSALQh+GfCACIAIiC1atfCAPQh+GIgJCAFStQiCGIAJCIIiEfCALIAsgAkIghnwiAlatfCACIAIgDCASVK1CIIYgDEIgiIR8IgxWrXwgDCAMIAogEFStIAogDVatfHwiAlatfCIKQoCAgICAgMAAg0IAUgRAIAVBAWohBQwBCyAIQj+IIRkgCkIBhiACQj+IhCEKIAJCAYYgAUI/iIQhAiAIQgGGIQggGSABQgGGhCEBCyAFQf//AU4EQCAJQoCAgICAgMD//wCEIQlCACEBDAELAn4gBUEATARAQQEgBWsiBkH/AE0EQCAEQTBqIAggASAFQf8AaiIFEAIgBEEgaiACIAogBRACIARBEGogCCABIAYQBSAEIAIgCiAGEAUgBCkDMCAEKQM4hEIAUq0gBCkDICAEKQMQhIQhCCAEKQMoIAQpAxiEIQEgBCkDACECIAQpAwgMAgtCACEBDAILIApC////////P4MgBa1CMIaECyAJhCEJIAhQIAFCAFkgAUKAgICAgICAgIB/URtFBEAgCSACQgF8IgFQrXwhCQwBCyAIIAFCgICAgICAgICAf4WEQgBSBEAgAiEBDAELIAkgAiACQgGDfCIBIAJUrXwhCQsgAyABNwPQAyADIAk3A9gDIARB4ABqJAAgAykD2AMhASADIAMpA9ADNwOIBSADIAE3A4AFIAMzAYYFQvAAfSEKCyADIAMpA4gFNwPIAyADIAMpA4AF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";
|
|
120
|
+
if (!isDataURI(wasmBinaryFile)) {
|
|
121
|
+
wasmBinaryFile = locateFile(wasmBinaryFile);
|
|
122
|
+
}
|
|
123
|
+
function getBinarySync(file) { if (file == wasmBinaryFile && wasmBinary) {
|
|
124
|
+
return new Uint8Array(wasmBinary);
|
|
125
|
+
} var binary = tryParseAsDataURI(file); if (binary) {
|
|
126
|
+
return binary;
|
|
127
|
+
} if (readBinary) {
|
|
128
|
+
return readBinary(file);
|
|
129
|
+
} throw "both async and sync fetching of the wasm failed"; }
|
|
130
|
+
function getBinaryPromise(binaryFile) { return Promise.resolve().then(() => getBinarySync(binaryFile)); }
|
|
131
|
+
function instantiateArrayBuffer(binaryFile, imports, receiver) { return getBinaryPromise(binaryFile).then(binary => WebAssembly.instantiate(binary, imports)).then(instance => instance).then(receiver, reason => { err(`failed to asynchronously prepare wasm: ${reason}`); abort(reason); }); }
|
|
132
|
+
function instantiateAsync(binary, binaryFile, imports, callback) { return instantiateArrayBuffer(binaryFile, imports, callback); }
|
|
133
|
+
function createWasm() { var info = { "a": wasmImports }; function receiveInstance(instance, module) { var exports = instance.exports; wasmExports = exports; wasmMemory = wasmExports["b"]; updateMemoryViews(); wasmTable = wasmExports["d"]; addOnInit(wasmExports["c"]); removeRunDependency("wasm-instantiate"); return exports; } addRunDependency("wasm-instantiate"); function receiveInstantiationResult(result) { receiveInstance(result["instance"]); } if (Module["instantiateWasm"]) {
|
|
134
|
+
try {
|
|
135
|
+
return Module["instantiateWasm"](info, receiveInstance);
|
|
136
|
+
}
|
|
137
|
+
catch (e) {
|
|
138
|
+
err(`Module.instantiateWasm callback failed with error: ${e}`);
|
|
139
|
+
readyPromiseReject(e);
|
|
140
|
+
}
|
|
141
|
+
} instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject); return {}; }
|
|
142
|
+
var callRuntimeCallbacks = callbacks => { while (callbacks.length > 0) {
|
|
143
|
+
callbacks.shift()(Module);
|
|
144
|
+
} };
|
|
145
|
+
var abortOnCannotGrowMemory = requestedSize => { abort("OOM"); };
|
|
146
|
+
var _emscripten_resize_heap = requestedSize => { var oldSize = HEAPU8.length; requestedSize >>>= 0; abortOnCannotGrowMemory(requestedSize); };
|
|
147
|
+
var getCFunc = ident => { var func = Module["_" + ident]; return func; };
|
|
148
|
+
var writeArrayToMemory = (array, buffer) => { HEAP8.set(array, buffer); };
|
|
149
|
+
var lengthBytesUTF8 = str => { var len = 0; for (var i = 0; i < str.length; ++i) {
|
|
150
|
+
var c = str.charCodeAt(i);
|
|
151
|
+
if (c <= 127) {
|
|
152
|
+
len++;
|
|
153
|
+
}
|
|
154
|
+
else if (c <= 2047) {
|
|
155
|
+
len += 2;
|
|
156
|
+
}
|
|
157
|
+
else if (c >= 55296 && c <= 57343) {
|
|
158
|
+
len += 4;
|
|
159
|
+
++i;
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
len += 3;
|
|
163
|
+
}
|
|
164
|
+
} return len; };
|
|
165
|
+
var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => { if (!(maxBytesToWrite > 0))
|
|
166
|
+
return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; for (var i = 0; i < str.length; ++i) {
|
|
167
|
+
var u = str.charCodeAt(i);
|
|
168
|
+
if (u >= 55296 && u <= 57343) {
|
|
169
|
+
var u1 = str.charCodeAt(++i);
|
|
170
|
+
u = 65536 + ((u & 1023) << 10) | u1 & 1023;
|
|
171
|
+
}
|
|
172
|
+
if (u <= 127) {
|
|
173
|
+
if (outIdx >= endIdx)
|
|
174
|
+
break;
|
|
175
|
+
heap[outIdx++] = u;
|
|
176
|
+
}
|
|
177
|
+
else if (u <= 2047) {
|
|
178
|
+
if (outIdx + 1 >= endIdx)
|
|
179
|
+
break;
|
|
180
|
+
heap[outIdx++] = 192 | u >> 6;
|
|
181
|
+
heap[outIdx++] = 128 | u & 63;
|
|
182
|
+
}
|
|
183
|
+
else if (u <= 65535) {
|
|
184
|
+
if (outIdx + 2 >= endIdx)
|
|
185
|
+
break;
|
|
186
|
+
heap[outIdx++] = 224 | u >> 12;
|
|
187
|
+
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
188
|
+
heap[outIdx++] = 128 | u & 63;
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
if (outIdx + 3 >= endIdx)
|
|
192
|
+
break;
|
|
193
|
+
heap[outIdx++] = 240 | u >> 18;
|
|
194
|
+
heap[outIdx++] = 128 | u >> 12 & 63;
|
|
195
|
+
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
196
|
+
heap[outIdx++] = 128 | u & 63;
|
|
197
|
+
}
|
|
198
|
+
} heap[outIdx] = 0; return outIdx - startIdx; };
|
|
199
|
+
var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
|
|
200
|
+
var stringToUTF8OnStack = str => { var size = lengthBytesUTF8(str) + 1; var ret = stackAlloc(size); stringToUTF8(str, ret, size); return ret; };
|
|
201
|
+
var UTF8Decoder = typeof TextDecoder != "undefined" ? new TextDecoder("utf8") : undefined;
|
|
202
|
+
var UTF8ArrayToString = (heapOrArray, idx, maxBytesToRead) => { var endIdx = idx + maxBytesToRead; var endPtr = idx; while (heapOrArray[endPtr] && !(endPtr >= endIdx))
|
|
203
|
+
++endPtr; if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {
|
|
204
|
+
return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));
|
|
205
|
+
} var str = ""; while (idx < endPtr) {
|
|
206
|
+
var u0 = heapOrArray[idx++];
|
|
207
|
+
if (!(u0 & 128)) {
|
|
208
|
+
str += String.fromCharCode(u0);
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
var u1 = heapOrArray[idx++] & 63;
|
|
212
|
+
if ((u0 & 224) == 192) {
|
|
213
|
+
str += String.fromCharCode((u0 & 31) << 6 | u1);
|
|
214
|
+
continue;
|
|
215
|
+
}
|
|
216
|
+
var u2 = heapOrArray[idx++] & 63;
|
|
217
|
+
if ((u0 & 240) == 224) {
|
|
218
|
+
u0 = (u0 & 15) << 12 | u1 << 6 | u2;
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;
|
|
222
|
+
}
|
|
223
|
+
if (u0 < 65536) {
|
|
224
|
+
str += String.fromCharCode(u0);
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
var ch = u0 - 65536;
|
|
228
|
+
str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
|
|
229
|
+
}
|
|
230
|
+
} return str; };
|
|
231
|
+
var UTF8ToString = (ptr, maxBytesToRead) => ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "";
|
|
232
|
+
var ccall = (ident, returnType, argTypes, args, opts) => { var toC = { "string": str => { var ret = 0; if (str !== null && str !== undefined && str !== 0) {
|
|
233
|
+
ret = stringToUTF8OnStack(str);
|
|
234
|
+
} return ret; }, "array": arr => { var ret = stackAlloc(arr.length); writeArrayToMemory(arr, ret); return ret; } }; function convertReturnValue(ret) { if (returnType === "string") {
|
|
235
|
+
return UTF8ToString(ret);
|
|
236
|
+
} if (returnType === "boolean")
|
|
237
|
+
return Boolean(ret); return ret; } var func = getCFunc(ident); var cArgs = []; var stack = 0; if (args) {
|
|
238
|
+
for (var i = 0; i < args.length; i++) {
|
|
239
|
+
var converter = toC[argTypes[i]];
|
|
240
|
+
if (converter) {
|
|
241
|
+
if (stack === 0)
|
|
242
|
+
stack = stackSave();
|
|
243
|
+
cArgs[i] = converter(args[i]);
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
cArgs[i] = args[i];
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
} var ret = func.apply(null, cArgs); function onDone(ret) { if (stack !== 0)
|
|
250
|
+
stackRestore(stack); return convertReturnValue(ret); } ret = onDone(ret); return ret; };
|
|
251
|
+
var wasmImports = { a: _emscripten_resize_heap };
|
|
252
|
+
var wasmExports = createWasm();
|
|
253
|
+
var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports["c"])();
|
|
254
|
+
var _ige256_encrypt = Module["_ige256_encrypt"] = (a0, a1, a2, a3, a4) => (_ige256_encrypt = Module["_ige256_encrypt"] = wasmExports["e"])(a0, a1, a2, a3, a4);
|
|
255
|
+
var _ige256_decrypt = Module["_ige256_decrypt"] = (a0, a1, a2, a3, a4) => (_ige256_decrypt = Module["_ige256_decrypt"] = wasmExports["f"])(a0, a1, a2, a3, a4);
|
|
256
|
+
var _ctr256 = Module["_ctr256"] = (a0, a1, a2, a3, a4) => (_ctr256 = Module["_ctr256"] = wasmExports["g"])(a0, a1, a2, a3, a4);
|
|
257
|
+
var _cbc256_encrypt = Module["_cbc256_encrypt"] = (a0, a1, a2, a3) => (_cbc256_encrypt = Module["_cbc256_encrypt"] = wasmExports["h"])(a0, a1, a2, a3);
|
|
258
|
+
var _cbc256_decrypt = Module["_cbc256_decrypt"] = (a0, a1, a2, a3) => (_cbc256_decrypt = Module["_cbc256_decrypt"] = wasmExports["i"])(a0, a1, a2, a3);
|
|
259
|
+
var _factorize = Module["_factorize"] = (a0, a1) => (_factorize = Module["_factorize"] = wasmExports["j"])(a0, a1);
|
|
260
|
+
var ___errno_location = () => (___errno_location = wasmExports["__errno_location"])();
|
|
261
|
+
var _malloc = Module["_malloc"] = a0 => (_malloc = Module["_malloc"] = wasmExports["k"])(a0);
|
|
262
|
+
var _free = Module["_free"] = a0 => (_free = Module["_free"] = wasmExports["l"])(a0);
|
|
263
|
+
var stackSave = () => (stackSave = wasmExports["m"])();
|
|
264
|
+
var stackRestore = a0 => (stackRestore = wasmExports["n"])(a0);
|
|
265
|
+
var stackAlloc = a0 => (stackAlloc = wasmExports["o"])(a0);
|
|
266
|
+
function intArrayFromBase64(s) { try {
|
|
267
|
+
var decoded = atob(s);
|
|
268
|
+
var bytes = new Uint8Array(decoded.length);
|
|
269
|
+
for (var i = 0; i < decoded.length; ++i) {
|
|
270
|
+
bytes[i] = decoded.charCodeAt(i);
|
|
271
|
+
}
|
|
272
|
+
return bytes;
|
|
273
|
+
}
|
|
274
|
+
catch (_) {
|
|
275
|
+
throw new Error("Converting base64 string to bytes failed.");
|
|
276
|
+
} }
|
|
277
|
+
function tryParseAsDataURI(filename) { if (!isDataURI(filename)) {
|
|
278
|
+
return;
|
|
279
|
+
} return intArrayFromBase64(filename.slice(dataURIPrefix.length)); }
|
|
280
|
+
Module["ccall"] = ccall;
|
|
281
|
+
var calledRun;
|
|
282
|
+
dependenciesFulfilled = function runCaller() { if (!calledRun)
|
|
283
|
+
run(); if (!calledRun)
|
|
284
|
+
dependenciesFulfilled = runCaller; };
|
|
285
|
+
function run() { if (runDependencies > 0) {
|
|
286
|
+
return;
|
|
287
|
+
} preRun(); if (runDependencies > 0) {
|
|
288
|
+
return;
|
|
289
|
+
} function doRun() { if (calledRun)
|
|
290
|
+
return; calledRun = true; Module["calledRun"] = true; if (ABORT)
|
|
291
|
+
return; initRuntime(); readyPromiseResolve(Module); if (Module["onRuntimeInitialized"])
|
|
292
|
+
Module["onRuntimeInitialized"](); postRun(); } if (Module["setStatus"]) {
|
|
293
|
+
Module["setStatus"]("Running...");
|
|
294
|
+
setTimeout(function () { setTimeout(function () { Module["setStatus"](""); }, 1); doRun(); }, 1);
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
doRun();
|
|
298
|
+
} }
|
|
299
|
+
if (Module["preInit"]) {
|
|
300
|
+
if (typeof Module["preInit"] == "function")
|
|
301
|
+
Module["preInit"] = [Module["preInit"]];
|
|
302
|
+
while (Module["preInit"].length > 0) {
|
|
303
|
+
Module["preInit"].pop()();
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
run();
|
|
307
|
+
return moduleArg.ready;
|
|
308
|
+
});
|
|
309
|
+
})();
|
|
310
|
+
exports.default = Module;
|
|
@@ -48,7 +48,7 @@ async function getObfuscationParameters(protocol, connection) {
|
|
|
48
48
|
const encryptKey = init.slice(8, 8 + 32);
|
|
49
49
|
const encryptIv = init.slice(40, 40 + 16);
|
|
50
50
|
const encryptionCTR = new _1_utilities_js_1.CTR(encryptKey, encryptIv);
|
|
51
|
-
const encryptedInit = encryptionCTR.
|
|
51
|
+
const encryptedInit = encryptionCTR.call(init);
|
|
52
52
|
const initRev = new Uint8Array(init).reverse();
|
|
53
53
|
const decryptKey = initRev.slice(8, 8 + 32);
|
|
54
54
|
const decryptIv = initRev.slice(40, 40 + 16);
|
|
@@ -18,7 +18,7 @@ class Transport {
|
|
|
18
18
|
}
|
|
19
19
|
encrypt(buffer) {
|
|
20
20
|
if (this.obfuscationParameters) {
|
|
21
|
-
return this.obfuscationParameters.encryptionCTR.
|
|
21
|
+
return this.obfuscationParameters.encryptionCTR.call(buffer);
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
24
24
|
return buffer;
|
|
@@ -26,7 +26,7 @@ class Transport {
|
|
|
26
26
|
}
|
|
27
27
|
decrypt(buffer) {
|
|
28
28
|
if (this.obfuscationParameters) {
|
|
29
|
-
return this.obfuscationParameters.decryptionCTR.
|
|
29
|
+
return this.obfuscationParameters.decryptionCTR.call(buffer);
|
|
30
30
|
}
|
|
31
31
|
else {
|
|
32
32
|
return buffer;
|
|
@@ -23,18 +23,9 @@ class CTR {
|
|
|
23
23
|
value: new Uint8Array(1)
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
|
-
|
|
26
|
+
call(data) {
|
|
27
27
|
const v = new Uint8Array(data); // TODO: don't copy
|
|
28
|
-
|
|
29
|
-
this.iv = iv;
|
|
30
|
-
this.state = state;
|
|
31
|
-
return v;
|
|
32
|
-
}
|
|
33
|
-
decrypt(data) {
|
|
34
|
-
const v = new Uint8Array(data); // TODO: don't copy
|
|
35
|
-
const [iv, state] = (0, _0_deps_js_1.ctr256Decrypt)(v, this.key, this.iv, this.state);
|
|
36
|
-
this.iv = iv;
|
|
37
|
-
this.state = state;
|
|
28
|
+
(0, _0_deps_js_1.ctr256)(v, this.key, this.iv, this.state);
|
|
38
29
|
return v;
|
|
39
30
|
}
|
|
40
31
|
}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { default as init_ } from "./tgcrypto.js";
|
|
2
|
-
// deno-lint-ignore no-explicit-any
|
|
3
|
-
function collectVector(vector) {
|
|
4
|
-
const p = new Uint8Array(vector.size());
|
|
5
|
-
for (let i = 0; i < vector.size(); i++) {
|
|
6
|
-
p[i] = vector.get(i);
|
|
7
|
-
}
|
|
8
|
-
vector.delete();
|
|
9
|
-
return p;
|
|
10
|
-
}
|
|
11
|
-
// deno-lint-ignore no-explicit-any
|
|
12
|
-
let module_;
|
|
13
|
-
const promise = init_().then((v) => module_ = v);
|
|
14
|
-
export async function init() {
|
|
15
|
-
await promise;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Performs IGE-256 encryption.
|
|
19
|
-
*
|
|
20
|
-
* @param data The unencrypted data, larger than a byte, divisible by 16
|
|
21
|
-
* @param key 32-byte encryption key
|
|
22
|
-
* @param iv 32-byte initialization vector
|
|
23
|
-
*/
|
|
24
|
-
export function ige256Encrypt(data, key, iv) {
|
|
25
|
-
return collectVector(module_.ige256Encrypt(data, key, iv));
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Performs IGE-256 decryption.
|
|
29
|
-
*
|
|
30
|
-
* @param data The encrypted data, larger than a byte, divisible by 16
|
|
31
|
-
* @param key 32-byte encryption key
|
|
32
|
-
* @param iv 32-byte initialization vector
|
|
33
|
-
*/
|
|
34
|
-
export function ige256Decrypt(data, key, iv) {
|
|
35
|
-
return collectVector(module_.ige256Decrypt(data, key, iv));
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Performs CTR-256 encryption.
|
|
39
|
-
*
|
|
40
|
-
* @param data The data, larger than a byte
|
|
41
|
-
* @param key 32-byte encryption key
|
|
42
|
-
* @param iv 16-byte initialization vector
|
|
43
|
-
* @param state 1-byte state
|
|
44
|
-
*/
|
|
45
|
-
export function ctr256Encrypt(data, key, iv, state) {
|
|
46
|
-
const r = module_.ctr256Encrypt(data, data, key, iv, state);
|
|
47
|
-
return r.map(collectVector);
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Alias of `ctr256Encrypt`
|
|
51
|
-
*/
|
|
52
|
-
export function ctr256Decrypt(data, key, iv, state) {
|
|
53
|
-
const r = module_.ctr256Decrypt(data, data, key, iv, state);
|
|
54
|
-
return r.map(collectVector);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Performs CBC-256 encryption.
|
|
58
|
-
*
|
|
59
|
-
* @param data The unencrypted data, larger than a byte, divisible by 16
|
|
60
|
-
* @param key 32-byte encryption key
|
|
61
|
-
* @param iv 16-byte initialization vector
|
|
62
|
-
*/
|
|
63
|
-
export function cbc256Encrypt(data, key, iv) {
|
|
64
|
-
module_.cbc256Encrypt(data, data, key, iv);
|
|
65
|
-
return data;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Performs CBC-256 decryption.
|
|
69
|
-
*
|
|
70
|
-
* @param data The encrypted data, larger than a byte, divisible by 16
|
|
71
|
-
* @param key 32-byte encryption key
|
|
72
|
-
* @param iv 16-byte initialization vector
|
|
73
|
-
*/
|
|
74
|
-
export function cbc256Decrypt(data, key, iv) {
|
|
75
|
-
module_.cbc256Decrypt(data, data, key, iv);
|
|
76
|
-
return data;
|
|
77
|
-
}
|
|
78
|
-
export function factorize(pq) {
|
|
79
|
-
const vector = module_.factorize(pq);
|
|
80
|
-
return [vector.get(0), vector.get(1)];
|
|
81
|
-
}
|