@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
|
@@ -1,991 +0,0 @@
|
|
|
1
|
-
var Module = (() => {
|
|
2
|
-
var _scriptDir = import.meta.url;
|
|
3
|
-
return (function (moduleArg = {}) {
|
|
4
|
-
var Module = moduleArg;
|
|
5
|
-
var readyPromiseResolve, readyPromiseReject;
|
|
6
|
-
Module["ready"] = new Promise((resolve, reject) => { readyPromiseResolve = resolve; readyPromiseReject = reject; });
|
|
7
|
-
var moduleOverrides = Object.assign({}, Module);
|
|
8
|
-
var arguments_ = [];
|
|
9
|
-
var thisProgram = "./this.program";
|
|
10
|
-
var quit_ = (status, toThrow) => { throw toThrow; };
|
|
11
|
-
var ENVIRONMENT_IS_WEB = true;
|
|
12
|
-
var ENVIRONMENT_IS_WORKER = false;
|
|
13
|
-
var scriptDirectory = "";
|
|
14
|
-
function locateFile(path) { if (Module["locateFile"]) {
|
|
15
|
-
return Module["locateFile"](path, scriptDirectory);
|
|
16
|
-
} return scriptDirectory + path; }
|
|
17
|
-
var read_, readAsync, readBinary, setWindowTitle;
|
|
18
|
-
if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
|
|
19
|
-
if (ENVIRONMENT_IS_WORKER) {
|
|
20
|
-
scriptDirectory = self.location.href;
|
|
21
|
-
}
|
|
22
|
-
else if (typeof document != "undefined" && document.currentScript) {
|
|
23
|
-
scriptDirectory = document.currentScript.src;
|
|
24
|
-
}
|
|
25
|
-
if (_scriptDir) {
|
|
26
|
-
scriptDirectory = _scriptDir;
|
|
27
|
-
}
|
|
28
|
-
if (scriptDirectory.indexOf("blob:") !== 0) {
|
|
29
|
-
scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf("/") + 1);
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
scriptDirectory = "";
|
|
33
|
-
}
|
|
34
|
-
{
|
|
35
|
-
read_ = url => { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.send(null); return xhr.responseText; };
|
|
36
|
-
if (ENVIRONMENT_IS_WORKER) {
|
|
37
|
-
readBinary = url => { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.responseType = "arraybuffer"; xhr.send(null); return new Uint8Array(xhr.response); };
|
|
38
|
-
}
|
|
39
|
-
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) {
|
|
40
|
-
onload(xhr.response);
|
|
41
|
-
return;
|
|
42
|
-
} onerror(); }; xhr.onerror = onerror; xhr.send(null); };
|
|
43
|
-
}
|
|
44
|
-
setWindowTitle = title => document.title = title;
|
|
45
|
-
}
|
|
46
|
-
else { }
|
|
47
|
-
var out = Module["print"] || console.log.bind(console);
|
|
48
|
-
var err = Module["printErr"] || console.error.bind(console);
|
|
49
|
-
Object.assign(Module, moduleOverrides);
|
|
50
|
-
moduleOverrides = null;
|
|
51
|
-
if (Module["arguments"])
|
|
52
|
-
arguments_ = Module["arguments"];
|
|
53
|
-
if (Module["thisProgram"])
|
|
54
|
-
thisProgram = Module["thisProgram"];
|
|
55
|
-
if (Module["quit"])
|
|
56
|
-
quit_ = Module["quit"];
|
|
57
|
-
var wasmBinary;
|
|
58
|
-
if (Module["wasmBinary"])
|
|
59
|
-
wasmBinary = Module["wasmBinary"];
|
|
60
|
-
var noExitRuntime = Module["noExitRuntime"] || true;
|
|
61
|
-
if (typeof WebAssembly != "object") {
|
|
62
|
-
abort("no native wasm support detected");
|
|
63
|
-
}
|
|
64
|
-
var wasmMemory;
|
|
65
|
-
var ABORT = false;
|
|
66
|
-
var EXITSTATUS;
|
|
67
|
-
var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAP64, HEAPU64, HEAPF64;
|
|
68
|
-
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); }
|
|
69
|
-
var wasmTable;
|
|
70
|
-
var __ATPRERUN__ = [];
|
|
71
|
-
var __ATINIT__ = [];
|
|
72
|
-
var __ATPOSTRUN__ = [];
|
|
73
|
-
var runtimeInitialized = false;
|
|
74
|
-
function preRun() { if (Module["preRun"]) {
|
|
75
|
-
if (typeof Module["preRun"] == "function")
|
|
76
|
-
Module["preRun"] = [Module["preRun"]];
|
|
77
|
-
while (Module["preRun"].length) {
|
|
78
|
-
addOnPreRun(Module["preRun"].shift());
|
|
79
|
-
}
|
|
80
|
-
} callRuntimeCallbacks(__ATPRERUN__); }
|
|
81
|
-
function initRuntime() { runtimeInitialized = true; callRuntimeCallbacks(__ATINIT__); }
|
|
82
|
-
function postRun() { if (Module["postRun"]) {
|
|
83
|
-
if (typeof Module["postRun"] == "function")
|
|
84
|
-
Module["postRun"] = [Module["postRun"]];
|
|
85
|
-
while (Module["postRun"].length) {
|
|
86
|
-
addOnPostRun(Module["postRun"].shift());
|
|
87
|
-
}
|
|
88
|
-
} callRuntimeCallbacks(__ATPOSTRUN__); }
|
|
89
|
-
function addOnPreRun(cb) { __ATPRERUN__.unshift(cb); }
|
|
90
|
-
function addOnInit(cb) { __ATINIT__.unshift(cb); }
|
|
91
|
-
function addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb); }
|
|
92
|
-
var runDependencies = 0;
|
|
93
|
-
var runDependencyWatcher = null;
|
|
94
|
-
var dependenciesFulfilled = null;
|
|
95
|
-
function addRunDependency(id) { runDependencies++; if (Module["monitorRunDependencies"]) {
|
|
96
|
-
Module["monitorRunDependencies"](runDependencies);
|
|
97
|
-
} }
|
|
98
|
-
function removeRunDependency(id) { runDependencies--; if (Module["monitorRunDependencies"]) {
|
|
99
|
-
Module["monitorRunDependencies"](runDependencies);
|
|
100
|
-
} if (runDependencies == 0) {
|
|
101
|
-
if (runDependencyWatcher !== null) {
|
|
102
|
-
clearInterval(runDependencyWatcher);
|
|
103
|
-
runDependencyWatcher = null;
|
|
104
|
-
}
|
|
105
|
-
if (dependenciesFulfilled) {
|
|
106
|
-
var callback = dependenciesFulfilled;
|
|
107
|
-
dependenciesFulfilled = null;
|
|
108
|
-
callback();
|
|
109
|
-
}
|
|
110
|
-
} }
|
|
111
|
-
function abort(what) { if (Module["onAbort"]) {
|
|
112
|
-
Module["onAbort"](what);
|
|
113
|
-
} 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; }
|
|
114
|
-
var dataURIPrefix = "data:application/octet-stream;base64,";
|
|
115
|
-
function isDataURI(filename) { return filename.startsWith(dataURIPrefix); }
|
|
116
|
-
var wasmBinaryFile;
|
|
117
|
-
wasmBinaryFile = "data:application/octet-stream;base64,AGFzbQEAAAABvAEaYAF/AX9gAn9/AGADf39/AGABfwBgBH9/f38AYAJ/fwF/YAAAYAN/f38Bf2AFf39/f38AYAZ/f39/f38AYAABf2ACf34AYAV/fn5+fgBgBH9+fn8AYAJ+fgF+YAN/fn4AYAR/f39/AX9gCX9/f39/f39/fwBgB39/f39/f38AYA1/f39/f39/f39/f39/AGAFf39/fn4AYAJ/fgF/YAZ/f39/f38Bf2AEf39/fgF/YAR/f39+AGADf39+AAKLARcBYQFhAAIBYQFiABEBYQFjAAgBYQFkAAIBYQFlABIBYQFmAAUBYQFnAAIBYQFoAAUBYQFpAAQBYQFqAAkBYQFrABMBYQFsAAMBYQFtAAEBYQFuAAIBYQFvABQBYQFwAAYBYQFxAAABYQFyAAIBYQFzAAMBYQF0AAEBYQF1AAQBYQF2AAEBYQF3AAoDzwHNAQAAAAMABwwAAQUDAQ0AAQEAAwIOAAMAAAABBQANAAAAAwICAAEAAgAABQIAAQcDAgACBQYFAgUCAQEAAAICAgEBBAEAAQEGBQIDAgEDAgADAQQFAwgKAQMBAwMBAwEIAAEDAQIAAwAAAwMAAwQFAgMDAAEGAQEBAgIBAAELDgwBAwAPAgIPBwYFBQICAwIBAQIBAwIAAwEEBQcFAwABABUIFhAHAgMAAAIBBwIDAAACAQYLBAQJBAQAAAAACQkICAcEBAcHBgAXGBkQBAIEBQFwAUxMBQYBAYACgAIGCAF/AUGw8QQLByQIAXgCAAF5AF0BegAuAUEBAAFCACgBQwDdAQFEANwBAUUA0gEJiAEBAEEBC0s7UDlOgQF9yAHOAc0BzAHLAcoByQHHAcYBxQHEAcMBbMIBwQHAAb8BvgG9AbwBbLsBugG5AbgBtwG2AbMB4wHiAbEBsAHhAbMB4AHfAbEBsAHeAYgBngGIASyHAYcB2wEs2gHTAdUB2QEs1AHWAdgBLNcBLNABLM8BLNEBf358fn98CqSTBM0BKQECfyMAQRBrIgEkACABIAA2AgwgASgCDEEIahAZIQIgAUEQaiQAIAILNgECfyMAQRBrIgEkACABIAA2AgwjAEEQayIAIAEoAgwoAgA2AgwgACgCDCECIAFBEGokACACCzMBAn8jAEEQayIBJAAgASAANgIMIwBBEGsiACABKAIMNgIMIAAoAgwhAiABQRBqJAAgAgsfACAAEEIEQCAAEFIgABAZKAIIQf////8HcUEBEEgLC34BBX8jAEEQayIDJAAgAyAANgIMIAMoAgwhASMAQRBrIgAkACAAIAE2AgwCfyAAKAIMIgIQQkEBcQRAIAIQewwBCyMAQRBrIgEkACABIAI2AgwgASgCDBAZLQALQf8AcSEEIAFBEGokACAECyEFIABBEGokACADQRBqJAAgBQt0AQF/IAJFBEAgACgCBCABKAIERg8LIAAgAUYEQEEBDwsgASgCBCICLQAAIQECQCAAKAIEIgMtAAAiAEUNACAAIAFHDQADQCACLQABIQEgAy0AASIARQ0BIAJBAWohAiADQQFqIQMgACABRg0ACwsgACABRgt1AQF+IAAgASAEfiACIAN+fCADQiCIIgIgAUIgiCIEfnwgA0L/////D4MiAyABQv////8PgyIBfiIFQiCIIAMgBH58IgNCIIh8IAEgAn4gA0L/////D4N8IgFCIIh8NwMIIAAgBUL/////D4MgAUIghoQ3AwALDgAgAEHQAGoQLkHQAGoLUwEBfyMAQRBrIgIkACACIAA2AgwgAiABNgIIIAIoAgghASACKAIMIgBBwOoANgIAIABBsOsANgIAIABBBGogARCSASAAQfTrADYCACACQRBqJAALugIBA38jAEFAaiICJAAgACgCACIDQQRrKAIAIQQgA0EIaygCACEDIAJCADcCICACQgA3AiggAkIANwIwIAJCADcANyACQgA3AhggAkEANgIUIAJB1OQANgIQIAIgADYCDCACIAE2AgggACADaiEAQQAhAwJAIAQgAUEAEBwEQCACQQE2AjggBCACQQhqIAAgAEEBQQAgBCgCACgCFBEJACAAQQAgAigCIEEBRhshAwwBCyAEIAJBCGogAEEBQQAgBCgCACgCGBEIAAJAAkAgAigCLA4CAAECCyACKAIcQQAgAigCKEEBRhtBACACKAIkQQFGG0EAIAIoAjBBAUYbIQMMAQsgAigCIEEBRwRAIAIoAjANASACKAIkQQFHDQEgAigCKEEBRw0BCyACKAIYIQMLIAJBQGskACADCyUBAX8jAEEQayIBJAAgASAANgIMIAEoAgwoAgAQEiABQRBqJAALuQMBBX8jAEEQayIDJAAgAyAANgIIIAMgATYCBCADIAMoAggiADYCDCADKAIE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IAAoAgAiAU8EQCABIAAoAgRqIgQgA0sNAwsgACgCCCEADAALAAsgACACNgIAIAAgACgCBCAGajYCBCACQXggAmtBB3FqIgcgBUEDcjYCBCABQXggAWtBB3FqIgYgBSAHaiIFayEAIAMgBkYEQEHM7QAgBTYCAEHA7QBBwO0AKAIAIABqIgA2AgAgBSAAQQFyNgIEDAgLQcjtACgCACAGRgRAQcjtACAFNgIAQbztAEG87QAoAgAgAGoiADYCACAFIABBAXI2AgQgACAFaiAANgIADAgLIAYoAgQiA0EDcUEBRw0GIANBeHEhCSADQf8BTQRAIAYoAgwiASAGKAIIIgJGBEBBtO0AQbTtACgCAEF+IANBA3Z3cTYCAAwHCyACIAE2AgwgASACNgIIDAYLIAYoAhghCCAGIAYoAgwiAkcEQCAGKAIIIgEgAjYCDCACIAE2AggMBQsgBkEUaiIBKAIAIgNFBEAgBigCECIDRQ0EIAZBEGohAQsDQCABIQQgAyICQRRqIgEoAgAiAw0AIAJBEGohASACKAIQIgMNAAsgBEEANgIADAQLQcDtACAGQShrIgBBeCACa0EHcSIBayIINgIAQcztACABIAJqIgE2AgAgASAIQQFyNgIEIAAgAmpBKDYCBEHQ7QBBnPEAKAIANgIAIAMgBEEnIARrQQdxakEvayIAIAAgA0EQakkbIgFBGzYCBCABQfzwACkCADcCECABQfTwACkCADcCCEH88AAgAUEIajYCAEH48AAgBjYCAEH08AAgAjYCAEGA8QBBADYCACABQRhqIQADQCAAQQc2AgQgAEEIaiEMIABBBGohACAMIARJDQALIAEgA0YNACABIAEoAgRBfnE2AgQgAyABIANrIgJBAXI2AgQgASACNgIAIAJB/wFNBEAgAkF4cUHc7QBqIQACf0G07QAoAgAiAUEBIAJBA3Z0IgJxRQRAQbTtACABIAJyNgIAIAAMAQsgACgCCAshASAAIAM2AgggASADNgIMIAMgADYCDCADIAE2AggMAQtBHyEAIAJB////B00EQCACQSYgAkEIdmciAGt2QQFxIABBAXRrQT5qIQALIAMgADYCHCADQgA3AhAgAEECdEHk7wBqIQECQAJAQbjtACgCACIEQQEgAHQiBnFFBEBBuO0AIAQgBnI2AgAgASADNgIADAELIAJBGSAA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IAgQlgELAkAgACgCBCICQQNxRQ0AIAJBeHEiASAHQRBqTQ0AIAAgByACQQFxckECcjYCBCAAIAdqIgUgASAHayICQQNyNgIEIAAgAWoiASABKAIEQQFyNgIEIAUgAhCWAQsgAEEIagsLIgBFDQEaIAogADYCDEEAIQELIAELIQBBACAKKAIMIAAbIQELIApBEGokACABDQBBpPEAKAIAIgBFDQAgABEGAAwBCwsgBkEQaiQAIAMgATYCDAwBCyADKAIIIQAjAEEQayIBJAAgASAANgIMIAEoAgwQLSEAIAFBEGokACADIAA2AgwLIAMoAgwhDCADQRBqJAAgDAtNAQF/IwBBEGsiAyAANgIMIAMgATYCCCADIAI2AgQgAygCDCIAIAMoAgg2AgAgACADKAIIKAIENgIEIAAgAygCCCgCBCADKAIEajYCCAssAQJ/IwBBEGsiASQAIAEgADYCDCABKAIMEBktAAtBB3YhAiABQRBqJAAgAgtYAQF/IwBBEGsiAiQAIAIgADYCDCACIAE2AgggAiACKAIINgIEIwBBEGsiASACKAIENgIMIAEgADYCCCABKAIIIgAgASgCDDYCACAAQQA6AAQgAkEQaiQAC4AEAQN/IAJBgARPBEAgACABIAIQESAADwsgACACaiEDAkAgACABc0EDcUUEQAJAIABBA3FFBEAgACECDAELIAJFBEAgACECDAELIAAhAgNAIAIgAS0AADoAACABQQFqIQEgAkEBaiICQQNxRQ0BIAIgA0kNAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgACADQQRrIgRLBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAtMAQN/IwBBEGsiASQAIAEgADYCDCABKAIMIQIjAEEQayIAIAFBCGoiAzYCDCAAIAI2AgggACgCDCAAKAIINgIAIAMQggEgAUEQaiQAC1ABAX8jAEEQayIDIAA2AgwgAyABNgIIIAMgAjYCBCADKAIMIgAgAygCCDYCACAAIAMoAggoAgQ2AgQgACADKAIIKAIEIAMoAgRBA3RqNgIICzwBAn8jAEEQayIBJAAgASAANgIMQQQQLSIAIAEoAgwoAgA2AgAgASAANgIIIAEoAgghAiABQRBqJAAgAguBAgECfyMAQRBrIgMkACADIAA2AgwgAyABNgIIIAMgAjYCBCMAQRBrIgAgAygCBDYCDAJAIAAoAgxBCEsEQCADIAMoAgQ2AgAgAygCDCEBIAMoAgghAiADKAIAIQQjAEEQayIAJAAgACABNgIMIAAgAjYCCCAAIAQ2AgQgACgCDCECIAAoAgQhBCMAQRBrIgEkACABIAI2AgwgASAENgIIIAEoAggaDAELIAMoAgwhASADKAIIIQIjAEEQayIAJAAgACABNgIMIAAgAjYCCCAAKAIMIQIjAEEQayIBJAAgASACNgIMCyABKAIMECggAUEQaiQAIABBEGokACADQRBqJAALcAECfyMAQSBrIgIkACACIAA2AhggAiABNgIUIAIgAigCGDYCECACIAIoAhQ2AgwgAigCDCEBIwBBEGsiACACKAIQNgIIIAAgATYCBCAAIAAoAgQ2AgwgAiAAKAIMNgIcIAIoAhwhAyACQSBqJAAgAwsuAQF/QQQQHiIAQcDqADYCACAAQZjqADYCACAAQazqADYCACAAQZzrAEEuEAMAC6ABAQR/IwBBEGsiAiQAIAIgADYCDCACIAE2AgggAigCDCEBIAIoAgghAyMAQRBrIgAkACAAIAE2AgggACADNgIEAn8gACgCBCEDIAAoAgghBCMAQRBrIgEgAEEPajYCDCABIAM2AgggASAENgIEIAEoAggoAgAgASgCBCgCAEkEQCAAKAIEDAELIAAoAggLIQUgAEEQaiQAIAJBEGokACAFC3wBAX8jAEEQayIDJAAgAyAANgIM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GBA7IAJBADYCFCACQTg2AhADQCACKAIUIAIoAhBPRQRAIAJBADYCDANAIAIoAgwiAEEET0UEQCACIAIoAhggACACKAIUakECdGooAgA2AgggAigCGCACKAIUIAIoAgxqQQJ0aiACKAIYIAIoAhAgAigCDGpBAnRqKAIANgIAIAIoAhggAigCECACKAIMakECdGogAigCCDYCACACIAIoAgxBAWo2AgwMAQsLIAIgAigCFEEEajYCFCACIAIoAhBBBGs2AhAMAQsLIAJBBDYCFANAIAIoAhRBOE9FBEAgAkEANgIQA0AgAigCECIAQQRPRQRAIAIoAhggACACKAIUakECdGoiACAAKAIAIgBBGHZBAnRBsBJqKAIAQf8BcUECdEGwCmooAgAgAEEQdkH/AXFBAnRBsBJqKAIAQf8BcUECdEGwGmooAgBzIABBCHZB/wFxQQJ0QbASaigCAEH/AXFBAnRBsCJqKAIAcyAAQf8BcUECdEGwEmooAgBB/wFxQQJ0QbAqaigCAHM2AgAgAiACKAIQQQFqNgIQDAELCyACIAIoAhRBBGo2AhQMAQsLIAJBIGokAAszAQJ/IwBBEGsiASQAIAEgADYCDCABQQA2AgggASgCDBB2IAEoAghqIQIgAUEQaiQAIAILKQECfyMAQRBrIgEkACABIAA2AgwgASgCDBAZKAIAIQIgAUEQaiQAIAILLwECfiAAIAEpAwgiAyACKQMIIgR9NwMIIAAgASkDACACKQMAfSADIARUrX03AwALrgECAX8DfiMAQUBqIgMkACADQTBqIAEpAwAiBCACKQMAIgUQmQEgBCACKQMIECohBCABKQMIIAUQKiEFIAMgAykDODcDGCADIAMpAzA3AxAgAyAEIAMpAxgiBnwiBDcDKCADIAMpAxAgBCAGVK18NwMgIAMgAykDKDcDCCADIAMpAyA3AwAgACAFIAMpAwgiBHwiBTcDCCAAIAMpAwAgBCAFVq18NwMAIANBQGskAAtXAQF/IwBBEGsiAyQAIAMgADYCDCADIAE2AgggAyACNgIEIAMoAgghASMAQRBrIgAgAygCDCICNgIMIAAgATYCCCAAKAIMQQA2AgAgAhCyASADQRBqJAALVQECfyMAQRBrIgIkACACIAA2AgwgAiABNgIIIAIoAgwhASACKAIIIQMjAEEQayIAJAAgACAB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KAIcIgUgACgCGBBBIAAgACgCFDYCCCAAIAAoAhA2AgQDQCAAKAIEIAAoAghHBEAgBRAXIQMjAEEQayIBIAAoAgQ2AgwgASgCDCEEIAEkACABIAM2AgwgASAENgIIIAEoAgghBCMAQRBrIgMgASgCDDYCDCADIAQ2AgggAygCCEEAOgAAIAFBEGokACAAIAAoAgRBAWoiATYCBCAAIAE2AhAMAQsLIwBBEGsiASAAQQxqNgIMIAEoAgwiASgCACABKAIENgIEIABBIGokAAsjAEEQayIAIAJBBGoiATYCDCAAKAIMQQE6AAQgARCGASACKAIcGiACQSBqJAALowEBA38jAEEQayICJAAgAkGM7QA2AgwgAigCDCEBIwBBEGsiACQAIAAgATYCDCAAQQc2AgggACgCDCIBIAAoAgg2AgAgAUEANgIEIAAoAggRBgAgAUGk7QAoAgA2AgRBpO0AIAE2AgAgAEEQaiQAIAJBEGokAEGo7QBBLzYCAEGs7QBBADYCABCeAUGs7QBBpO0AKAIANgIAQaTtAEGo7QA2AgALUAECfyMAQSBrIgIkACACIAA2AhggAiABNgIUIAIgAigCGDYCECACIAIoAhQ2AgwgAiACKAIQIAIoAgwQSTYCHCACKAIcIQMgAkEgaiQAIAMLXAEBfyMAQSBrIgMkACADIAE2AhwgAyACNgIYIAMgAygCHDYCECADIAMoAhAQPzYCFCADIAMoAhg2AgggAyADKAIIED82AgwgACADQRRqIANBDGoQKSADQSBqJAALLAEBfyMAQRBrIgEkACABIAA2AgxBCBAeIgAgASgCDBAfIABBlOwAQQUQAwALcQECfyMAQRBrIgMkACADIAA2AgwgAyABNgIIIAMgAjYCBCADKAIMIQEgAygCCCECIAMoAgQhBCMAQRBrIgAkACAAIAE2AgwgACACNgIIIAAgBDYCBCAAKAIIIAAoAgRBARBIIABBEGokACADQRBqJAALdwEFfyMAQRBrIgIkACACIAA2AgwgAiABNgIIIAIoAgwiABAYIQMgABAYIAAQK2ohBCAAEBggABAraiEFIAAQGCACKAIIaiEGIwBBIGsiASAANgIcIAEgAzYCGCABIAQ2AhQgASAFNgIQIAEgBjYCDCACQRBqJAALiwEBB38jAEEQayICJAAgAiAANgIMIAIoAgwiABAY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A0AgAigCDCIDIAIoAtgCSQRAIAIgAyACKALcAmoiAykAADcAkAIgAiADKQAINwCYAiACQQA2AggDQCACKAIIIgNBEEkEQCACQYACaiADaiACKALcAiADIAIoAgxqai0AACACQbACaiADai0AAHM6AAAgAiACKAIIQQFqNgIIDAELCyACQYACaiELIAIoAsgCIAIoAgxqIQwgAkEQaiENIAItAM8CBEAgCyAMIA0QOQUgCyAMIA0QTgsgAkEANgIIA0AgAigCCCIDQRBJBEAgAigCyAIgAyACKAIMamoiBCACQaACaiADai0AACAELQAAczoAACACIAIoAghBAWo2AggMAQsLIAIgAigCyAIgAigCDGoiAykAADcAsAIgAiADKQAINwC4AiACIAIpA5ACNwOgAiACIAIpA5gCNwOoAiACIAIoAgxBEGo2AgwMAQsLIAIoAsgCIQMgAkHgAmokACAFIAM2AhggBUEMaiICIAEQGxBcIAIQGCAFKAIYIAEQGxBEGiAFKAIYECggACACEFsgAhBFIAVBMGokAA8LIABBlOwAQQUQAwALDgEBf0EMEC0iABB4IAALdwEDfyMAQSBrIgIkACACIAA2AhggAiABNgIUIAJBIDYCDCACKAIYIQQjAEEQayIAIAJBE2oiAzYCDCAAJAAgACADNgIMIABBEGokACACIAIoAgw2AhwgBEEFQbDbAEHE2wAgAigCDCACKAIUQQAQBCACQSBqJAALdwEEfyMAQSBrIgEkACABIAA2AhggAUEKNgIUIAFBHzYCDCABKAIYIQQjAEEQayIAIAFBE2oiAzYCDCAAJAAgACADNgIMIABBEGokACABIAEoAgw2AhwgBEEGQZDbAEGo2wAgASgCDCABKAIUQQAQBCABQSBqJAALdwEDfyMAQSBrIgIkACACIAA2AhggAiABNgIUIAJBHjYCDCACKAIYIQQjAEEQayIAIAJBE2oiAzYCDCAAJAAgACADNgIMIABBEGokACACIAIoAgw2AhwgBEEEQbDaAEGw2AAgAigCDCACKAIUQQAQBCACQSBqJAALhgEBA38jAEEQayIBJAAgASAANgIMIAEoAgwiACgCABCpASMAQRBrIAAoAgA2AgwgACgCACgCAARAIAAoAgAhAiMAQRBrIgMkACADIAI2AgwgAygCDCICIAIoAgAQpgEgA0EQ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IAFCP4ciAoUgAn0iAkIAIAJ5pyIEQTFqECMgAykDCEKAgICAgIDAAIVBvoABIARrrUIwhnwgAUKAgICAgICAgIB/g4QhAiADKQMACzcDACAAIAI3AwggA0EQaiQAC4cBAgJ/AX4jAEEQayICJAACfkIAIAFCMIinQf//AXEiA0H//wBJDQAaIAFCP4dC////////////AIUgA0G/gAFrQb9/TQ0AGiACIAAgAUL///////8/g0KAgICAgIDAAIRB74ABIANrEDMgAikDACIAQgAgAH0gAUIAWRsLIQQgAkEQaiQAIAQLxQkCBH8GfiMAQfAAayIGJAAgBEL///////////8AgyEJAkACQCABUCIFIAJC////////////AIMiCkKAgICAgIDA//8AfUKAgICAgIDAgIB/VCAKUBtFBEAgA0IAUiAJQoCAgICAgMD//wB9IgtCgICAgICAwICAf1YgC0KAgICAgIDAgIB/URsNAQsgBSAKQoCAgICAgMD//wBUIApCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhBCABIQMMAgsgA1AgCUKAgICAgIDA//8AVCAJQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQQMAgsgASAKQoCAgICAgMD//wCFhFAEQEKAgICAgIDg//8AIAIgASADhSACIASFQoCAgICAgICAgH+FhFAiBRshBEIAIAEgBRshAwwCCyADIAlCgICAgICAwP//AIWEUA0BIAEgCoRQBEAgAyAJhEIAUg0CIAEgA4MhAyACIASDIQQMAgsgAyAJhEIAUg0AIAEhAyACIQQMAQsgAyABIAEgA1QgCSAKViAJIApRGyIIGyEKIAQgAiAIGyILQv///////z+DIQkgAiAEIAgbIgJCMIinQf//AXEhByALQjCIp0H//wFxIgVFBEAgBkHgAGogCiAJIAogCSAJUCIFG3kgBUEGdK18pyIFQQ9rECMgBikDaCEJIAYpA2AhCkEQIAVrIQULIAEgAyAIGyEDIAJC////////P4MhBCAHRQRAIAZB0ABqIAMgBCADIAQgBFAiBxt5IAdBBnStfKciB0EPaxAjQRAgB2shByAGKQNYIQQgBikDUCEDCyAEQgOGIANCPYiEQoCAgICAgIAEhCEBIAlCA4YgCkI9iIQhDiACIAuFIQ0CfiADQgOG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Aq0iBIY3AwggASABKQMAIASGIANBwAAgAmutiIQ3AwALIAAgASkDADcDACAAIAEpAwg3AwgLpCMCBX8SfiMAQZAFayIDJAAgAyABNwOIBSADIAI3A4AFAkAgAykDgAUiCUIwiCIKQv//AX1CgYB+WARAIAlCgICAgICAwP//AFIgCUL///////////8Ag0IAUnFFBEAgAykDiAVQDQILIAlCgICAgICAwP//AFoEQCMAQSBrIgUkACMAQRBrIgQkACAEIAEgAiABIAJCgICAgICAgICAf4UQlQEgBCkDACEBIAUgBCkDCDcDGCAFIAE3AxAgBEEQaiQAIAUpAxAiCiEBIAUpAxghAiMAQdACayIEJAAgAkL///////8/gyIJIQgCQAJAIAJCMIinQf//AXEiB0H//wFrQYGAfksgB0H//wFrQYKAfk9xDQAgAVAgAkL///////////8AgyINQoCAgICAgMD//wBUIA1CgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhDAwCCyAKUCACQv///////////wCDIgtCgICAgICAwP//AFQgC0KAgICAgIDA//8AURtFBEAgAkKAgICAgIAghCEMDAILIAEgDUKAgICAgIDA//8AhYRQBEAgCiALQoCAgICAgMD//wCFhFAEQEIAIQFCgICAgICA4P//ACEMDAMLQoCAgICAgMD//wAhDEIAIQEMAgsgCiALQoCAgICAgMD//wCFhFAEQEIAIQEMAgsgASANhFAEQEKAgICAgIDg//8AQgAgCiALhFAbIQxCACEBDAILIAogC4RQBEBCgICAgICAwP//ACEMQgAhAQwCCyANQv///////z9YBEAgBEHAAmogASAJIAEgCSAJUCIGG3kgBkEGdK18pyIGQQ9rECNBECAGayEGIAQpA8gCIQkgBCkDwAIhAQsgC0L///////8/Vg0AIARBsAJqIAogCCAKIAggCFAiBxt5IAdBBnStfKciB0EPaxAjIAYgB2pBEGshBiAEKQO4AiEIIAQpA7ACIQoLIARBoAJqIAhCgICAgICAwACEIg1CD4YgCkIxiIQiAkIAQoCAgICw5ryC9QAgAn0iCEIAEB0gBEGQAmpCACAEKQOoAn1CACAIQgAQHSAEQYACaiAEKQOYAkIBhiAEKQOQAkI/iIQiCEIAIAJCABAdIARB8AFqIAhCAEIAIAQpA4gCfUIAEB0gBEHgAWogBCkD+AFCAYYgBCkD8AFCP4iEIghCACACQgAQHSAEQdABaiAIQgBCACAEKQPoAX1CABAdIARBwAFqIAQpA9gBQgGGIAQpA9ABQj+IhCIIQgAgAkIAEB0gBEGwAWogCEIAQgAgBCkDyAF9QgAQHSAEQaABaiACQgAgBCkDuAFCAYYgBCkDsAFCP4iEQgF9IgJCABAdIARBkAFqIApCD4ZCACACQgAQHSAEQfAAaiACQgBCACAEKQOoASAEKQOgASILIAQpA5gBfCIIIAtUrXwgCEIBVq18fUIAEB0gBEGAAWpCASAIfUIAIAJCABAdAn8gBCkDcCISQgGGIg4gBCkDiAEiEUIBhiAEKQOAAUI/iIR8IhBC5+wAfSIUQiCIIgggCUKAgICAgIDAAIQiFUIBhiIXQiCIIgt+IhMgAUIBhiICQiCIIg8gECAUVq0gDiAQVq0gBCkDeEIBhiASQj+IhCARQj+IfHx8QgF9IhJCIIgiEH58Ig4gE1StIA4gDiASQv////8PgyISIAFCP4giGCAJQgGGhEL/////D4MiCX58IhFWrXwgCyAQfnwgCyASfiITIAkgEH58Ig4gE1StQiCGIA5CIIiEfCARIBEgDkIghnwiDlatfCAOIA4gFEL/////D4MiFCAJfiITIAggD358IhEgE1StIBEgESASIAJC/v///w+DIhN+fCIWVq18fCIRVq18IBEgCyAUfiIOIBAgE358IgsgCCAJfnwiCSAPIBJ+fCIQQiCIIAkgEFatIAsgDlStIAkgC1StfHxCIIaEfCIJIBFUrXwgCSAWIAggE34iCCAPIBR+fCILQiCIIAggC1atQiCGhHwiCCAWVK0gCCAQQiCGfCAIVK18fCILIAlUrXwiD0L/////////AFgEQCAXIBiEIRUgBEHQAGogCyAPIAogDRAdIAFCMYYgBCkDWH0gBCkDUCIBQgBSrX0hCUIAIAF9IQggBkH+/wBqDAELIARB4ABqIA9CP4YgC0IBiIQiCyAPQgGIIg8gCiANEB0gAUIwhiAEKQNofSAEKQNgIgJCAFKtfSEJQgAgAn0hCCABIQIgBkH//wBqCyIGQf//AU4EQEKAgICAgIDA//8AIQxCACEBDAELAn4gBkEASgRAIAlCAYYgCEI/iIQhCSAPQv///////z+DIAatQjCGhCECIAhCAYYMAQsgBkGPf0wEQEIAIQEMAgsgBEFAayALIA9BASAGaxAzIARBMGogAiAVIAZB8ABqECMgBEEgaiAKIA0gBCkDQCILIAQpA0giAhAdIAQpAzggBCkDKEIBhiAEKQMgIgFCP4iEfSAEKQMwIgggAUIBhiIBVK19IQkgCCABfQshASAEQRBqIAogDUIDQgAQHSAEIAogDUIFQgAQHSACIAsgCyAKIAEgC0IBgyIMfCIIVCAJIAggDFStfCIBIA1WIAEgDVEbrXwiClatfCICIAogCiACQoCAgICAgMD//wBUIAggBCkDEFYgASAEKQMYIgJWIAEgAlEbca18IgJWrXwiCiACIApCgICAgICAwP//AFQgCCAEKQMAViABIAQpAwgiClYgASAKURtxrXwiASACVK18IQwLIAUgATcDACAFIAw3AwggBEHQAmokACADIAUpAwg3AwggAyAFKQMANwMAIAVBIGokACADKQMIIQIgAykDACEBDAILIwBB4ABrIgQkACACQoCAgICAgMC3wACFQoCAgICAgICAgH+DIQkgAkL///////8/gyIKQiCIIQwCQCACQjCIp0H//wFxIgZB//8Ba0GCgH5JBEAgAVAgAkL///////////8AgyIIQoCAgICAgMD//wBUIAhCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhCQwCCyABIAhCgICAgICAwP//AIWEUARAIAlCgICAgICAwP//AIQhCUIAIQEMAgsgASAIhFAEQEIAIQEMAgsgCEL///////8/WAR+IARB0ABqIAEgCiABIAogClAiBRt5IAVBBnStfKciBUEPaxAjQRAgBWshBSAEKQNYIgpCIIghDCAEKQNQBSABCyEBCyABQiCIIgJCAH4iCyABQv////8PgyINQgB+fCIBQiCGIgggCFStIApC/////w+DIg9CAH4iECABIAtUrUIghiABQiCIhHwiCiAMQoCABIQiC0IAfiISIA1CH4Z8IgxCIIZ8Ig18IQEgBSAGakHwAGohBQJAIAJCH4YiAiACVK0gC0IfhnwgAiACIgtWrXwgD0IfhiICQgBUrUIghiACQiCIhHwgCyALIAJCIIZ8IgJWrXwgAiACIAwgElStQiCGIAxCIIiEfCIMVq18IAwgDCAKIBBUrSAKIA1WrXx8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NgIAIwBBEGsgAUEHaiIDNgIMIwBBEGsiAiQAIAIgAzYCDCACQRBqJAAgASABKAIANgIMQdzYAEEBQdTZAEGg1wAgASgCACABKAIIEAkgAUEQaiQAIAAoAkghASAAIAAoAkw2AjAgACABNgIsIAAgACkCLDcDeCAAKAJ4IQEgACgCfCECIAAgBDYClAEgAEHEzgA2ApABIAAgAjYCjAEgACABNgKIASAAKAKUASEEIAAoApABIQIgACgCiAEhASAAIAAoAowBNgKEASAAIAE2AoABIAAgACkCgAE3AwgjAEEgayIBJAAgACgCCCEDIAAoAgwhBSABIAI2AhggASAFNgIUIAEgAzYCECABQSk2AgwgASgCGCEDIwBBEGsiAiABQQtqIgU2AgwgAiQAIAIgBTYCDCACQRBqJAAgASABKAIMNgIcQdzYACADQQNB2NkAQbjXACABKAIMIAFBEGoQNkEAQQAQASABQSBqJAAgACgCQCEBIAAgACgCRDYCKCAAIAE2AiQgACAAKQIkNwOYASAAKAKYASEBIAAoApwBIQIgACAENgK0ASAAQbrPADYCsAEgACACNgKsASAAIAE2AqgBIAAoArQBIQQgACgCsAEhAiAAKAKoASEBIAAgACgCrAE2AqQBIAAgATYCoAEgACAAKQKgATcDACMAQSBrIgEkACAAKAIAIQMgACgCBCEFIAEgAjYCGCABIAU2AhQgASADNgIQIAFBKjYCDCABKAIYIQMjAEEQayICIAFBC2oiBTYCDCACJAAgAiAFNgIMIAJBEGokACABIAEoAgw2AhxB3NgAIANBBEHw2QBB0NcAIAEoAgwgAUEQahA2QQBBABABIAFBIGokACAAKAI4IQEgACAAKAI8NgIgIAAgATYCHCAAIAApAhw3A7gBIAAoArgBIQEgACgCvAEhAiAAIAQ2AtQBIABBvM8ANgLQASAAIAI2AswBIAAgATYCyAEgACgC1AEhBCAAKALQASECIAAoAsgBIQEgACAAKALMATYCxAEgACABNgLAASAAIAApAsABNwMQIwBBIGsiASQAIAAoAhAhAyAAKAIUIQUgASACNgIYIAEgBTYCFCABIAM2AhAgAUErNgIMIAEoAhghAyMAQRBrIgIgAUELaiIFNgIMIAIkACACIAU2AgwgAkEQaiQAIAEgASgCDDYCHEHc2AAgA0EC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T2fc6pfyz87wtOZzlqx0IuetNYXi+TfoHHXfbkfxGnEdKcWJb7diDqoYvhv8Vj5LxtJ5IJrbwP54zVr0H92oM4gHxzGxEhBZJ4DsX2BRf6kZtUoNLeV6n5PJnO+g4DtNrir1sMjruzyDU5lhFysEfrp31ibhaRRjVSEMfWRhdGEgbXVzdCBub3QgYmUgZW1wdHkAdW5zaWduZWQgc2hvcnQAY3RyMjU2RW5jcnlwdABpZ2UyNTZFbmNyeXB0AGNiYzI1NkVuY3J5cHQAY3RyMjU2RGVjcnlwdABpZ2UyNTZEZWNyeXB0AGNiYzI1NkRlY3J5cHQAdW5zaWduZWQgaW50AHNldABnZXQAZmxvYXQAdWludDY0X3QAaXYgbXVzdCBiZSAxNiBieXRlcwBrZXkgbXVzdCBiZSAzMiBieXRlcwBpdiBtdXN0IGJlIDMyIGJ5dGVzAHZlY3RvcgB1bnNpZ25lZCBjaGFyAHN0ZDo6ZXhjZXB0aW9uAGJvb2wAZW1zY3JpcHRlbjo6dmFsAHB1c2hfYmFjawBiYWRfYXJyYXlfbmV3X2xlbmd0aABwdXNoAHVuc2lnbmVkIGxvbmcAc3RkOjp3c3RyaW5nAGJhc2ljX3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwByZXNpemUAZmFjdG9yaXplAHN0YXRlIG11c3QgYmUgMSBieXRlAGRvdWJsZQB2b2lkAHN0ZDo6YmFkX2FsbG9jAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgB2ZWN0b3I8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDY0X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDY0X3Q+AHZlY3RvcjxpbnQ2NF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AZGF0YSBzaXplIG11c3QgYmUgZGl2aXNpYmxlIGJ5IDE2AHN0YXRlIG11c3QgYmUgaW4gdGhlIHJhbmdlIDAuLjE1AE5TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAAAAAHg0AAABKwAAUE5TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAAAAAPw0AAAwKwAAAAAAACgrAABQS05TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAAAA/DQAAGgrAAABAAAAKCsAAGlpAHYAdmkAWCsAALQzAABYKwAA5DMAAHZpaWkAAAAAtDMAAFgrAAA4NAAA5DMAAHZpaWlpAAAAODQAAJArAABpaWkABCwAACgrAAA4NAAATjEwZW1zY3JpcHRlbjN2YWxFAAB4NAAA8CsAAGlpaWkAQaDYAAvCAcwzAAAoKwAAODQAAOQzAABpaWlpaQBOU3QzX18yNnZlY3Rvckl4TlNfOWFsbG9jYXRvckl4RUVFRQAAAHg0AAA2LAAAUE5TdDNfXzI2dmVjdG9ySXhOU185YWxsb2NhdG9ySXhFRUVFAAAAAPw0AABkLAAAAAAAAFwsAABQS05TdDNfXzI2dmVjdG9ySXhOU185YWxsb2NhdG9ySXhFRUVFAAAA/DQAAJwsAAABAAAAXCwAAIwsAAC0MwAAjCwAAEQ0AEHw2QALIrQzAACMLAAAODQAAEQ0AAA4NAAAxCwAAAQsAABcLAAAODQAQaDaAAtmzDMAAFwsAAA4NAAARDQAAAQsAACALQAAgC0AAIAtAABOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAAeDQAAEAtAEGQ2wALggcELAAAgC0AAAQsAACALQAAgC0AAIAtAABpaWlpaWlpALQzAACALQAABCwAAIAtAACALQAAdmlpaWlpAAAELAAARDQAALQzAAD8LQAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAAB4NAAA3C0AALQzAAAELAAATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAAHg0AAAMLgAATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUAAHg0AABULgAATlN0M19fMjEyYmFzaWNfc3RyaW5nSURzTlNfMTFjaGFyX3RyYWl0c0lEc0VFTlNfOWFsbG9jYXRvcklEc0VFRUUAAAB4NAAAnC4AAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0lEaU5TXzExY2hhcl90cmFpdHNJRGlFRU5TXzlhbGxvY2F0b3JJRGlFRUVFAAAAeDQAAOguAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAAHg0AAA0LwAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAAB4NAAAXC8AAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQAAeDQAAIQvAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUAAHg0AACsLwAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaUVFAAB4NAAA1C8AAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQAAeDQAAPwvAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUAAHg0AAAkMAAATjEwZW1zY3JpcHRl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";
|
|
118
|
-
if (!isDataURI(wasmBinaryFile)) {
|
|
119
|
-
wasmBinaryFile = locateFile(wasmBinaryFile);
|
|
120
|
-
}
|
|
121
|
-
function getBinarySync(file) { if (file == wasmBinaryFile && wasmBinary) {
|
|
122
|
-
return new Uint8Array(wasmBinary);
|
|
123
|
-
} var binary = tryParseAsDataURI(file); if (binary) {
|
|
124
|
-
return binary;
|
|
125
|
-
} if (readBinary) {
|
|
126
|
-
return readBinary(file);
|
|
127
|
-
} throw "both async and sync fetching of the wasm failed"; }
|
|
128
|
-
function getBinaryPromise(binaryFile) { return Promise.resolve().then(() => getBinarySync(binaryFile)); }
|
|
129
|
-
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); }); }
|
|
130
|
-
function instantiateAsync(binary, binaryFile, imports, callback) { return instantiateArrayBuffer(binaryFile, imports, callback); }
|
|
131
|
-
function createWasm() { var info = { "a": wasmImports }; function receiveInstance(instance, module) { var exports = instance.exports; wasmExports = exports; wasmMemory = wasmExports["x"]; updateMemoryViews(); wasmTable = wasmExports["A"]; addOnInit(wasmExports["y"]); removeRunDependency("wasm-instantiate"); return exports; } addRunDependency("wasm-instantiate"); function receiveInstantiationResult(result) { receiveInstance(result["instance"]); } if (Module["instantiateWasm"]) {
|
|
132
|
-
try {
|
|
133
|
-
return Module["instantiateWasm"](info, receiveInstance);
|
|
134
|
-
}
|
|
135
|
-
catch (e) {
|
|
136
|
-
err(`Module.instantiateWasm callback failed with error: ${e}`);
|
|
137
|
-
readyPromiseReject(e);
|
|
138
|
-
}
|
|
139
|
-
} instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject); return {}; }
|
|
140
|
-
var callRuntimeCallbacks = callbacks => { while (callbacks.length > 0) {
|
|
141
|
-
callbacks.shift()(Module);
|
|
142
|
-
} };
|
|
143
|
-
function ExceptionInfo(excPtr) { this.excPtr = excPtr; this.ptr = excPtr - 24; this.set_type = function (type) { HEAPU32[this.ptr + 4 >> 2] = type; }; this.get_type = function () { return HEAPU32[this.ptr + 4 >> 2]; }; this.set_destructor = function (destructor) { HEAPU32[this.ptr + 8 >> 2] = destructor; }; this.get_destructor = function () { return HEAPU32[this.ptr + 8 >> 2]; }; this.set_caught = function (caught) { caught = caught ? 1 : 0; HEAP8[this.ptr + 12 >> 0] = caught; }; this.get_caught = function () { return HEAP8[this.ptr + 12 >> 0] != 0; }; this.set_rethrown = function (rethrown) { rethrown = rethrown ? 1 : 0; HEAP8[this.ptr + 13 >> 0] = rethrown; }; this.get_rethrown = function () { return HEAP8[this.ptr + 13 >> 0] != 0; }; this.init = function (type, destructor) { this.set_adjusted_ptr(0); this.set_type(type); this.set_destructor(destructor); }; this.set_adjusted_ptr = function (adjustedPtr) { HEAPU32[this.ptr + 16 >> 2] = adjustedPtr; }; this.get_adjusted_ptr = function () { return HEAPU32[this.ptr + 16 >> 2]; }; this.get_exception_ptr = function () { var isPointer = ___cxa_is_pointer_type(this.get_type()); if (isPointer) {
|
|
144
|
-
return HEAPU32[this.excPtr >> 2];
|
|
145
|
-
} var adjusted = this.get_adjusted_ptr(); if (adjusted !== 0)
|
|
146
|
-
return adjusted; return this.excPtr; }; }
|
|
147
|
-
var exceptionLast = 0;
|
|
148
|
-
var uncaughtExceptionCount = 0;
|
|
149
|
-
var ___cxa_throw = (ptr, type, destructor) => { var info = new ExceptionInfo(ptr); info.init(type, destructor); exceptionLast = ptr; uncaughtExceptionCount++; throw exceptionLast; };
|
|
150
|
-
var embindRepr = v => { if (v === null) {
|
|
151
|
-
return "null";
|
|
152
|
-
} var t = typeof v; if (t === "object" || t === "array" || t === "function") {
|
|
153
|
-
return v.toString();
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
return "" + v;
|
|
157
|
-
} };
|
|
158
|
-
var embind_init_charCodes = () => { var codes = new Array(256); for (var i = 0; i < 256; ++i) {
|
|
159
|
-
codes[i] = String.fromCharCode(i);
|
|
160
|
-
} embind_charCodes = codes; };
|
|
161
|
-
var embind_charCodes = undefined;
|
|
162
|
-
var readLatin1String = ptr => { var ret = ""; var c = ptr; while (HEAPU8[c]) {
|
|
163
|
-
ret += embind_charCodes[HEAPU8[c++]];
|
|
164
|
-
} return ret; };
|
|
165
|
-
var awaitingDependencies = {};
|
|
166
|
-
var registeredTypes = {};
|
|
167
|
-
var typeDependencies = {};
|
|
168
|
-
var BindingError = undefined;
|
|
169
|
-
var throwBindingError = message => { throw new BindingError(message); };
|
|
170
|
-
var InternalError = undefined;
|
|
171
|
-
var throwInternalError = message => { throw new InternalError(message); };
|
|
172
|
-
var whenDependentTypesAreResolved = (myTypes, dependentTypes, getTypeConverters) => { myTypes.forEach(function (type) { typeDependencies[type] = dependentTypes; }); function onComplete(typeConverters) { var myTypeConverters = getTypeConverters(typeConverters); if (myTypeConverters.length !== myTypes.length) {
|
|
173
|
-
throwInternalError("Mismatched type converter count");
|
|
174
|
-
} for (var i = 0; i < myTypes.length; ++i) {
|
|
175
|
-
registerType(myTypes[i], myTypeConverters[i]);
|
|
176
|
-
} } var typeConverters = new Array(dependentTypes.length); var unregisteredTypes = []; var registered = 0; dependentTypes.forEach((dt, i) => { if (registeredTypes.hasOwnProperty(dt)) {
|
|
177
|
-
typeConverters[i] = registeredTypes[dt];
|
|
178
|
-
}
|
|
179
|
-
else {
|
|
180
|
-
unregisteredTypes.push(dt);
|
|
181
|
-
if (!awaitingDependencies.hasOwnProperty(dt)) {
|
|
182
|
-
awaitingDependencies[dt] = [];
|
|
183
|
-
}
|
|
184
|
-
awaitingDependencies[dt].push(() => { typeConverters[i] = registeredTypes[dt]; ++registered; if (registered === unregisteredTypes.length) {
|
|
185
|
-
onComplete(typeConverters);
|
|
186
|
-
} });
|
|
187
|
-
} }); if (0 === unregisteredTypes.length) {
|
|
188
|
-
onComplete(typeConverters);
|
|
189
|
-
} };
|
|
190
|
-
function sharedRegisterType(rawType, registeredInstance, options = {}) { var name = registeredInstance.name; if (!rawType) {
|
|
191
|
-
throwBindingError(`type "${name}" must have a positive integer typeid pointer`);
|
|
192
|
-
} if (registeredTypes.hasOwnProperty(rawType)) {
|
|
193
|
-
if (options.ignoreDuplicateRegistrations) {
|
|
194
|
-
return;
|
|
195
|
-
}
|
|
196
|
-
else {
|
|
197
|
-
throwBindingError(`Cannot register type '${name}' twice`);
|
|
198
|
-
}
|
|
199
|
-
} registeredTypes[rawType] = registeredInstance; delete typeDependencies[rawType]; if (awaitingDependencies.hasOwnProperty(rawType)) {
|
|
200
|
-
var callbacks = awaitingDependencies[rawType];
|
|
201
|
-
delete awaitingDependencies[rawType];
|
|
202
|
-
callbacks.forEach(cb => cb());
|
|
203
|
-
} }
|
|
204
|
-
function registerType(rawType, registeredInstance, options = {}) { if (!("argPackAdvance" in registeredInstance)) {
|
|
205
|
-
throw new TypeError("registerType registeredInstance requires argPackAdvance");
|
|
206
|
-
} return sharedRegisterType(rawType, registeredInstance, options); }
|
|
207
|
-
var integerReadValueFromPointer = (name, width, signed) => { switch (width) {
|
|
208
|
-
case 1: return signed ? pointer => HEAP8[pointer >> 0] : pointer => HEAPU8[pointer >> 0];
|
|
209
|
-
case 2: return signed ? pointer => HEAP16[pointer >> 1] : pointer => HEAPU16[pointer >> 1];
|
|
210
|
-
case 4: return signed ? pointer => HEAP32[pointer >> 2] : pointer => HEAPU32[pointer >> 2];
|
|
211
|
-
case 8: return signed ? pointer => HEAP64[pointer >> 3] : pointer => HEAPU64[pointer >> 3];
|
|
212
|
-
default: throw new TypeError(`invalid integer width (${width}): ${name}`);
|
|
213
|
-
} };
|
|
214
|
-
var __embind_register_bigint = (primitiveType, name, size, minRange, maxRange) => { name = readLatin1String(name); var isUnsignedType = name.indexOf("u") != -1; if (isUnsignedType) {
|
|
215
|
-
maxRange = (1n << 64n) - 1n;
|
|
216
|
-
} registerType(primitiveType, { name: name, "fromWireType": value => value, "toWireType": function (destructors, value) { if (typeof value != "bigint" && typeof value != "number") {
|
|
217
|
-
throw new TypeError(`Cannot convert "${embindRepr(value)}" to ${this.name}`);
|
|
218
|
-
} if (value < minRange || value > maxRange) {
|
|
219
|
-
throw new TypeError(`Passing a number "${embindRepr(value)}" from JS side to C/C++ side to an argument of type "${name}", which is outside the valid range [${minRange}, ${maxRange}]!`);
|
|
220
|
-
} return value; }, "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": integerReadValueFromPointer(name, size, !isUnsignedType), destructorFunction: null }); };
|
|
221
|
-
var GenericWireTypeSize = 8;
|
|
222
|
-
var __embind_register_bool = (rawType, name, trueValue, falseValue) => { name = readLatin1String(name); registerType(rawType, { name: name, "fromWireType": function (wt) { return !!wt; }, "toWireType": function (destructors, o) { return o ? trueValue : falseValue; }, "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": function (pointer) { return this["fromWireType"](HEAPU8[pointer]); }, destructorFunction: null }); };
|
|
223
|
-
function ClassHandle_isAliasOf(other) { if (!(this instanceof ClassHandle)) {
|
|
224
|
-
return false;
|
|
225
|
-
} if (!(other instanceof ClassHandle)) {
|
|
226
|
-
return false;
|
|
227
|
-
} var leftClass = this.$$.ptrType.registeredClass; var left = this.$$.ptr; var rightClass = other.$$.ptrType.registeredClass; var right = other.$$.ptr; while (leftClass.baseClass) {
|
|
228
|
-
left = leftClass.upcast(left);
|
|
229
|
-
leftClass = leftClass.baseClass;
|
|
230
|
-
} while (rightClass.baseClass) {
|
|
231
|
-
right = rightClass.upcast(right);
|
|
232
|
-
rightClass = rightClass.baseClass;
|
|
233
|
-
} return leftClass === rightClass && left === right; }
|
|
234
|
-
var shallowCopyInternalPointer = o => ({ count: o.count, deleteScheduled: o.deleteScheduled, preservePointerOnDelete: o.preservePointerOnDelete, ptr: o.ptr, ptrType: o.ptrType, smartPtr: o.smartPtr, smartPtrType: o.smartPtrType });
|
|
235
|
-
var throwInstanceAlreadyDeleted = obj => { function getInstanceTypeName(handle) { return handle.$$.ptrType.registeredClass.name; } throwBindingError(getInstanceTypeName(obj) + " instance already deleted"); };
|
|
236
|
-
var finalizationRegistry = false;
|
|
237
|
-
var detachFinalizer = handle => { };
|
|
238
|
-
var runDestructor = $$ => { if ($$.smartPtr) {
|
|
239
|
-
$$.smartPtrType.rawDestructor($$.smartPtr);
|
|
240
|
-
}
|
|
241
|
-
else {
|
|
242
|
-
$$.ptrType.registeredClass.rawDestructor($$.ptr);
|
|
243
|
-
} };
|
|
244
|
-
var releaseClassHandle = $$ => { $$.count.value -= 1; var toDelete = 0 === $$.count.value; if (toDelete) {
|
|
245
|
-
runDestructor($$);
|
|
246
|
-
} };
|
|
247
|
-
var downcastPointer = (ptr, ptrClass, desiredClass) => { if (ptrClass === desiredClass) {
|
|
248
|
-
return ptr;
|
|
249
|
-
} if (undefined === desiredClass.baseClass) {
|
|
250
|
-
return null;
|
|
251
|
-
} var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass); if (rv === null) {
|
|
252
|
-
return null;
|
|
253
|
-
} return desiredClass.downcast(rv); };
|
|
254
|
-
var registeredPointers = {};
|
|
255
|
-
var getInheritedInstanceCount = () => Object.keys(registeredInstances).length;
|
|
256
|
-
var getLiveInheritedInstances = () => { var rv = []; for (var k in registeredInstances) {
|
|
257
|
-
if (registeredInstances.hasOwnProperty(k)) {
|
|
258
|
-
rv.push(registeredInstances[k]);
|
|
259
|
-
}
|
|
260
|
-
} return rv; };
|
|
261
|
-
var deletionQueue = [];
|
|
262
|
-
var flushPendingDeletes = () => { while (deletionQueue.length) {
|
|
263
|
-
var obj = deletionQueue.pop();
|
|
264
|
-
obj.$$.deleteScheduled = false;
|
|
265
|
-
obj["delete"]();
|
|
266
|
-
} };
|
|
267
|
-
var delayFunction = undefined;
|
|
268
|
-
var setDelayFunction = fn => { delayFunction = fn; if (deletionQueue.length && delayFunction) {
|
|
269
|
-
delayFunction(flushPendingDeletes);
|
|
270
|
-
} };
|
|
271
|
-
var init_embind = () => { Module["getInheritedInstanceCount"] = getInheritedInstanceCount; Module["getLiveInheritedInstances"] = getLiveInheritedInstances; Module["flushPendingDeletes"] = flushPendingDeletes; Module["setDelayFunction"] = setDelayFunction; };
|
|
272
|
-
var registeredInstances = {};
|
|
273
|
-
var getBasestPointer = (class_, ptr) => { if (ptr === undefined) {
|
|
274
|
-
throwBindingError("ptr should not be undefined");
|
|
275
|
-
} while (class_.baseClass) {
|
|
276
|
-
ptr = class_.upcast(ptr);
|
|
277
|
-
class_ = class_.baseClass;
|
|
278
|
-
} return ptr; };
|
|
279
|
-
var getInheritedInstance = (class_, ptr) => { ptr = getBasestPointer(class_, ptr); return registeredInstances[ptr]; };
|
|
280
|
-
var makeClassHandle = (prototype, record) => { if (!record.ptrType || !record.ptr) {
|
|
281
|
-
throwInternalError("makeClassHandle requires ptr and ptrType");
|
|
282
|
-
} var hasSmartPtrType = !!record.smartPtrType; var hasSmartPtr = !!record.smartPtr; if (hasSmartPtrType !== hasSmartPtr) {
|
|
283
|
-
throwInternalError("Both smartPtrType and smartPtr must be specified");
|
|
284
|
-
} record.count = { value: 1 }; return attachFinalizer(Object.create(prototype, { $$: { value: record } })); };
|
|
285
|
-
function RegisteredPointer_fromWireType(ptr) { var rawPointer = this.getPointee(ptr); if (!rawPointer) {
|
|
286
|
-
this.destructor(ptr);
|
|
287
|
-
return null;
|
|
288
|
-
} var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer); if (undefined !== registeredInstance) {
|
|
289
|
-
if (0 === registeredInstance.$$.count.value) {
|
|
290
|
-
registeredInstance.$$.ptr = rawPointer;
|
|
291
|
-
registeredInstance.$$.smartPtr = ptr;
|
|
292
|
-
return registeredInstance["clone"]();
|
|
293
|
-
}
|
|
294
|
-
else {
|
|
295
|
-
var rv = registeredInstance["clone"]();
|
|
296
|
-
this.destructor(ptr);
|
|
297
|
-
return rv;
|
|
298
|
-
}
|
|
299
|
-
} function makeDefaultHandle() { if (this.isSmartPointer) {
|
|
300
|
-
return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this.pointeeType, ptr: rawPointer, smartPtrType: this, smartPtr: ptr });
|
|
301
|
-
}
|
|
302
|
-
else {
|
|
303
|
-
return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this, ptr: ptr });
|
|
304
|
-
} } var actualType = this.registeredClass.getActualType(rawPointer); var registeredPointerRecord = registeredPointers[actualType]; if (!registeredPointerRecord) {
|
|
305
|
-
return makeDefaultHandle.call(this);
|
|
306
|
-
} var toType; if (this.isConst) {
|
|
307
|
-
toType = registeredPointerRecord.constPointerType;
|
|
308
|
-
}
|
|
309
|
-
else {
|
|
310
|
-
toType = registeredPointerRecord.pointerType;
|
|
311
|
-
} var dp = downcastPointer(rawPointer, this.registeredClass, toType.registeredClass); if (dp === null) {
|
|
312
|
-
return makeDefaultHandle.call(this);
|
|
313
|
-
} if (this.isSmartPointer) {
|
|
314
|
-
return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp, smartPtrType: this, smartPtr: ptr });
|
|
315
|
-
}
|
|
316
|
-
else {
|
|
317
|
-
return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp });
|
|
318
|
-
} }
|
|
319
|
-
var attachFinalizer = handle => { if ("undefined" === typeof FinalizationRegistry) {
|
|
320
|
-
attachFinalizer = handle => handle;
|
|
321
|
-
return handle;
|
|
322
|
-
} finalizationRegistry = new FinalizationRegistry(info => { releaseClassHandle(info.$$); }); attachFinalizer = handle => { var $$ = handle.$$; var hasSmartPtr = !!$$.smartPtr; if (hasSmartPtr) {
|
|
323
|
-
var info = { $$: $$ };
|
|
324
|
-
finalizationRegistry.register(handle, info, handle);
|
|
325
|
-
} return handle; }; detachFinalizer = handle => finalizationRegistry.unregister(handle); return attachFinalizer(handle); };
|
|
326
|
-
function ClassHandle_clone() { if (!this.$$.ptr) {
|
|
327
|
-
throwInstanceAlreadyDeleted(this);
|
|
328
|
-
} if (this.$$.preservePointerOnDelete) {
|
|
329
|
-
this.$$.count.value += 1;
|
|
330
|
-
return this;
|
|
331
|
-
}
|
|
332
|
-
else {
|
|
333
|
-
var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), { $$: { value: shallowCopyInternalPointer(this.$$) } }));
|
|
334
|
-
clone.$$.count.value += 1;
|
|
335
|
-
clone.$$.deleteScheduled = false;
|
|
336
|
-
return clone;
|
|
337
|
-
} }
|
|
338
|
-
function ClassHandle_delete() { if (!this.$$.ptr) {
|
|
339
|
-
throwInstanceAlreadyDeleted(this);
|
|
340
|
-
} if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {
|
|
341
|
-
throwBindingError("Object already scheduled for deletion");
|
|
342
|
-
} detachFinalizer(this); releaseClassHandle(this.$$); if (!this.$$.preservePointerOnDelete) {
|
|
343
|
-
this.$$.smartPtr = undefined;
|
|
344
|
-
this.$$.ptr = undefined;
|
|
345
|
-
} }
|
|
346
|
-
function ClassHandle_isDeleted() { return !this.$$.ptr; }
|
|
347
|
-
function ClassHandle_deleteLater() { if (!this.$$.ptr) {
|
|
348
|
-
throwInstanceAlreadyDeleted(this);
|
|
349
|
-
} if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {
|
|
350
|
-
throwBindingError("Object already scheduled for deletion");
|
|
351
|
-
} deletionQueue.push(this); if (deletionQueue.length === 1 && delayFunction) {
|
|
352
|
-
delayFunction(flushPendingDeletes);
|
|
353
|
-
} this.$$.deleteScheduled = true; return this; }
|
|
354
|
-
var init_ClassHandle = () => { ClassHandle.prototype["isAliasOf"] = ClassHandle_isAliasOf; ClassHandle.prototype["clone"] = ClassHandle_clone; ClassHandle.prototype["delete"] = ClassHandle_delete; ClassHandle.prototype["isDeleted"] = ClassHandle_isDeleted; ClassHandle.prototype["deleteLater"] = ClassHandle_deleteLater; };
|
|
355
|
-
function ClassHandle() { }
|
|
356
|
-
var char_0 = 48;
|
|
357
|
-
var char_9 = 57;
|
|
358
|
-
var makeLegalFunctionName = name => { if (undefined === name) {
|
|
359
|
-
return "_unknown";
|
|
360
|
-
} name = name.replace(/[^a-zA-Z0-9_]/g, "$"); var f = name.charCodeAt(0); if (f >= char_0 && f <= char_9) {
|
|
361
|
-
return `_${name}`;
|
|
362
|
-
} return name; };
|
|
363
|
-
function createNamedFunction(name, body) { name = makeLegalFunctionName(name); return { [name]: function () { return body.apply(this, arguments); } }[name]; }
|
|
364
|
-
var ensureOverloadTable = (proto, methodName, humanName) => { if (undefined === proto[methodName].overloadTable) {
|
|
365
|
-
var prevFunc = proto[methodName];
|
|
366
|
-
proto[methodName] = function () { if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {
|
|
367
|
-
throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`);
|
|
368
|
-
} return proto[methodName].overloadTable[arguments.length].apply(this, arguments); };
|
|
369
|
-
proto[methodName].overloadTable = [];
|
|
370
|
-
proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;
|
|
371
|
-
} };
|
|
372
|
-
var exposePublicSymbol = (name, value, numArguments) => { if (Module.hasOwnProperty(name)) {
|
|
373
|
-
if (undefined === numArguments || undefined !== Module[name].overloadTable && undefined !== Module[name].overloadTable[numArguments]) {
|
|
374
|
-
throwBindingError(`Cannot register public name '${name}' twice`);
|
|
375
|
-
}
|
|
376
|
-
ensureOverloadTable(Module, name, name);
|
|
377
|
-
if (Module.hasOwnProperty(numArguments)) {
|
|
378
|
-
throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);
|
|
379
|
-
}
|
|
380
|
-
Module[name].overloadTable[numArguments] = value;
|
|
381
|
-
}
|
|
382
|
-
else {
|
|
383
|
-
Module[name] = value;
|
|
384
|
-
if (undefined !== numArguments) {
|
|
385
|
-
Module[name].numArguments = numArguments;
|
|
386
|
-
}
|
|
387
|
-
} };
|
|
388
|
-
function RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast) { this.name = name; this.constructor = constructor; this.instancePrototype = instancePrototype; this.rawDestructor = rawDestructor; this.baseClass = baseClass; this.getActualType = getActualType; this.upcast = upcast; this.downcast = downcast; this.pureVirtualFunctions = []; }
|
|
389
|
-
var upcastPointer = (ptr, ptrClass, desiredClass) => { while (ptrClass !== desiredClass) {
|
|
390
|
-
if (!ptrClass.upcast) {
|
|
391
|
-
throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`);
|
|
392
|
-
}
|
|
393
|
-
ptr = ptrClass.upcast(ptr);
|
|
394
|
-
ptrClass = ptrClass.baseClass;
|
|
395
|
-
} return ptr; };
|
|
396
|
-
function constNoSmartPtrRawPointerToWireType(destructors, handle) { if (handle === null) {
|
|
397
|
-
if (this.isReference) {
|
|
398
|
-
throwBindingError(`null is not a valid ${this.name}`);
|
|
399
|
-
}
|
|
400
|
-
return 0;
|
|
401
|
-
} if (!handle.$$) {
|
|
402
|
-
throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);
|
|
403
|
-
} if (!handle.$$.ptr) {
|
|
404
|
-
throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);
|
|
405
|
-
} var handleClass = handle.$$.ptrType.registeredClass; var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass); return ptr; }
|
|
406
|
-
function genericPointerToWireType(destructors, handle) { var ptr; if (handle === null) {
|
|
407
|
-
if (this.isReference) {
|
|
408
|
-
throwBindingError(`null is not a valid ${this.name}`);
|
|
409
|
-
}
|
|
410
|
-
if (this.isSmartPointer) {
|
|
411
|
-
ptr = this.rawConstructor();
|
|
412
|
-
if (destructors !== null) {
|
|
413
|
-
destructors.push(this.rawDestructor, ptr);
|
|
414
|
-
}
|
|
415
|
-
return ptr;
|
|
416
|
-
}
|
|
417
|
-
else {
|
|
418
|
-
return 0;
|
|
419
|
-
}
|
|
420
|
-
} if (!handle.$$) {
|
|
421
|
-
throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);
|
|
422
|
-
} if (!handle.$$.ptr) {
|
|
423
|
-
throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);
|
|
424
|
-
} if (!this.isConst && handle.$$.ptrType.isConst) {
|
|
425
|
-
throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);
|
|
426
|
-
} var handleClass = handle.$$.ptrType.registeredClass; ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass); if (this.isSmartPointer) {
|
|
427
|
-
if (undefined === handle.$$.smartPtr) {
|
|
428
|
-
throwBindingError("Passing raw pointer to smart pointer is illegal");
|
|
429
|
-
}
|
|
430
|
-
switch (this.sharingPolicy) {
|
|
431
|
-
case 0:
|
|
432
|
-
if (handle.$$.smartPtrType === this) {
|
|
433
|
-
ptr = handle.$$.smartPtr;
|
|
434
|
-
}
|
|
435
|
-
else {
|
|
436
|
-
throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);
|
|
437
|
-
}
|
|
438
|
-
break;
|
|
439
|
-
case 1:
|
|
440
|
-
ptr = handle.$$.smartPtr;
|
|
441
|
-
break;
|
|
442
|
-
case 2:
|
|
443
|
-
if (handle.$$.smartPtrType === this) {
|
|
444
|
-
ptr = handle.$$.smartPtr;
|
|
445
|
-
}
|
|
446
|
-
else {
|
|
447
|
-
var clonedHandle = handle["clone"]();
|
|
448
|
-
ptr = this.rawShare(ptr, Emval.toHandle(() => clonedHandle["delete"]()));
|
|
449
|
-
if (destructors !== null) {
|
|
450
|
-
destructors.push(this.rawDestructor, ptr);
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
break;
|
|
454
|
-
default: throwBindingError("Unsupporting sharing policy");
|
|
455
|
-
}
|
|
456
|
-
} return ptr; }
|
|
457
|
-
function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) { if (handle === null) {
|
|
458
|
-
if (this.isReference) {
|
|
459
|
-
throwBindingError(`null is not a valid ${this.name}`);
|
|
460
|
-
}
|
|
461
|
-
return 0;
|
|
462
|
-
} if (!handle.$$) {
|
|
463
|
-
throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);
|
|
464
|
-
} if (!handle.$$.ptr) {
|
|
465
|
-
throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);
|
|
466
|
-
} if (handle.$$.ptrType.isConst) {
|
|
467
|
-
throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`);
|
|
468
|
-
} var handleClass = handle.$$.ptrType.registeredClass; var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass); return ptr; }
|
|
469
|
-
function readPointer(pointer) { return this["fromWireType"](HEAPU32[pointer >> 2]); }
|
|
470
|
-
function RegisteredPointer_getPointee(ptr) { if (this.rawGetPointee) {
|
|
471
|
-
ptr = this.rawGetPointee(ptr);
|
|
472
|
-
} return ptr; }
|
|
473
|
-
function RegisteredPointer_destructor(ptr) { if (this.rawDestructor) {
|
|
474
|
-
this.rawDestructor(ptr);
|
|
475
|
-
} }
|
|
476
|
-
var RegisteredPointer_deleteObject = handle => { if (handle !== null) {
|
|
477
|
-
handle["delete"]();
|
|
478
|
-
} };
|
|
479
|
-
var init_RegisteredPointer = () => { RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee; RegisteredPointer.prototype.destructor = RegisteredPointer_destructor; RegisteredPointer.prototype["argPackAdvance"] = GenericWireTypeSize; RegisteredPointer.prototype["readValueFromPointer"] = readPointer; RegisteredPointer.prototype["deleteObject"] = RegisteredPointer_deleteObject; RegisteredPointer.prototype["fromWireType"] = RegisteredPointer_fromWireType; };
|
|
480
|
-
function RegisteredPointer(name, registeredClass, isReference, isConst, isSmartPointer, pointeeType, sharingPolicy, rawGetPointee, rawConstructor, rawShare, rawDestructor) { this.name = name; this.registeredClass = registeredClass; this.isReference = isReference; this.isConst = isConst; this.isSmartPointer = isSmartPointer; this.pointeeType = pointeeType; this.sharingPolicy = sharingPolicy; this.rawGetPointee = rawGetPointee; this.rawConstructor = rawConstructor; this.rawShare = rawShare; this.rawDestructor = rawDestructor; if (!isSmartPointer && registeredClass.baseClass === undefined) {
|
|
481
|
-
if (isConst) {
|
|
482
|
-
this["toWireType"] = constNoSmartPtrRawPointerToWireType;
|
|
483
|
-
this.destructorFunction = null;
|
|
484
|
-
}
|
|
485
|
-
else {
|
|
486
|
-
this["toWireType"] = nonConstNoSmartPtrRawPointerToWireType;
|
|
487
|
-
this.destructorFunction = null;
|
|
488
|
-
}
|
|
489
|
-
}
|
|
490
|
-
else {
|
|
491
|
-
this["toWireType"] = genericPointerToWireType;
|
|
492
|
-
} }
|
|
493
|
-
var replacePublicSymbol = (name, value, numArguments) => { if (!Module.hasOwnProperty(name)) {
|
|
494
|
-
throwInternalError("Replacing nonexistant public symbol");
|
|
495
|
-
} if (undefined !== Module[name].overloadTable && undefined !== numArguments) {
|
|
496
|
-
Module[name].overloadTable[numArguments] = value;
|
|
497
|
-
}
|
|
498
|
-
else {
|
|
499
|
-
Module[name] = value;
|
|
500
|
-
Module[name].argCount = numArguments;
|
|
501
|
-
} };
|
|
502
|
-
var wasmTableMirror = [];
|
|
503
|
-
var getWasmTableEntry = funcPtr => { var func = wasmTableMirror[funcPtr]; if (!func) {
|
|
504
|
-
if (funcPtr >= wasmTableMirror.length)
|
|
505
|
-
wasmTableMirror.length = funcPtr + 1;
|
|
506
|
-
wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);
|
|
507
|
-
} return func; };
|
|
508
|
-
var embind__requireFunction = (signature, rawFunction) => { signature = readLatin1String(signature); function makeDynCaller() { return getWasmTableEntry(rawFunction); } var fp = makeDynCaller(); if (typeof fp != "function") {
|
|
509
|
-
throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`);
|
|
510
|
-
} return fp; };
|
|
511
|
-
var extendError = (baseErrorType, errorName) => { var errorClass = createNamedFunction(errorName, function (message) { this.name = errorName; this.message = message; var stack = new Error(message).stack; if (stack !== undefined) {
|
|
512
|
-
this.stack = this.toString() + "\n" + stack.replace(/^Error(:[^\n]*)?\n/, "");
|
|
513
|
-
} }); errorClass.prototype = Object.create(baseErrorType.prototype); errorClass.prototype.constructor = errorClass; errorClass.prototype.toString = function () { if (this.message === undefined) {
|
|
514
|
-
return this.name;
|
|
515
|
-
}
|
|
516
|
-
else {
|
|
517
|
-
return `${this.name}: ${this.message}`;
|
|
518
|
-
} }; return errorClass; };
|
|
519
|
-
var UnboundTypeError = undefined;
|
|
520
|
-
var getTypeName = type => { var ptr = ___getTypeName(type); var rv = readLatin1String(ptr); _free(ptr); return rv; };
|
|
521
|
-
var throwUnboundTypeError = (message, types) => { var unboundTypes = []; var seen = {}; function visit(type) { if (seen[type]) {
|
|
522
|
-
return;
|
|
523
|
-
} if (registeredTypes[type]) {
|
|
524
|
-
return;
|
|
525
|
-
} if (typeDependencies[type]) {
|
|
526
|
-
typeDependencies[type].forEach(visit);
|
|
527
|
-
return;
|
|
528
|
-
} unboundTypes.push(type); seen[type] = true; } types.forEach(visit); throw new UnboundTypeError(`${message}: ` + unboundTypes.map(getTypeName).join([", "])); };
|
|
529
|
-
var __embind_register_class = (rawType, rawPointerType, rawConstPointerType, baseClassRawType, getActualTypeSignature, getActualType, upcastSignature, upcast, downcastSignature, downcast, name, destructorSignature, rawDestructor) => { name = readLatin1String(name); getActualType = embind__requireFunction(getActualTypeSignature, getActualType); if (upcast) {
|
|
530
|
-
upcast = embind__requireFunction(upcastSignature, upcast);
|
|
531
|
-
} if (downcast) {
|
|
532
|
-
downcast = embind__requireFunction(downcastSignature, downcast);
|
|
533
|
-
} rawDestructor = embind__requireFunction(destructorSignature, rawDestructor); var legalFunctionName = makeLegalFunctionName(name); exposePublicSymbol(legalFunctionName, function () { throwUnboundTypeError(`Cannot construct ${name} due to unbound types`, [baseClassRawType]); }); whenDependentTypesAreResolved([rawType, rawPointerType, rawConstPointerType], baseClassRawType ? [baseClassRawType] : [], function (base) { base = base[0]; var baseClass; var basePrototype; if (baseClassRawType) {
|
|
534
|
-
baseClass = base.registeredClass;
|
|
535
|
-
basePrototype = baseClass.instancePrototype;
|
|
536
|
-
}
|
|
537
|
-
else {
|
|
538
|
-
basePrototype = ClassHandle.prototype;
|
|
539
|
-
} var constructor = createNamedFunction(legalFunctionName, function () { if (Object.getPrototypeOf(this) !== instancePrototype) {
|
|
540
|
-
throw new BindingError("Use 'new' to construct " + name);
|
|
541
|
-
} if (undefined === registeredClass.constructor_body) {
|
|
542
|
-
throw new BindingError(name + " has no accessible constructor");
|
|
543
|
-
} var body = registeredClass.constructor_body[arguments.length]; if (undefined === body) {
|
|
544
|
-
throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`);
|
|
545
|
-
} return body.apply(this, arguments); }); var instancePrototype = Object.create(basePrototype, { constructor: { value: constructor } }); constructor.prototype = instancePrototype; var registeredClass = new RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast); if (registeredClass.baseClass) {
|
|
546
|
-
if (registeredClass.baseClass.__derivedClasses === undefined) {
|
|
547
|
-
registeredClass.baseClass.__derivedClasses = [];
|
|
548
|
-
}
|
|
549
|
-
registeredClass.baseClass.__derivedClasses.push(registeredClass);
|
|
550
|
-
} var referenceConverter = new RegisteredPointer(name, registeredClass, true, false, false); var pointerConverter = new RegisteredPointer(name + "*", registeredClass, false, false, false); var constPointerConverter = new RegisteredPointer(name + " const*", registeredClass, false, true, false); registeredPointers[rawType] = { pointerType: pointerConverter, constPointerType: constPointerConverter }; replacePublicSymbol(legalFunctionName, constructor); return [referenceConverter, pointerConverter, constPointerConverter]; }); };
|
|
551
|
-
var heap32VectorToArray = (count, firstElement) => { var array = []; for (var i = 0; i < count; i++) {
|
|
552
|
-
array.push(HEAPU32[firstElement + i * 4 >> 2]);
|
|
553
|
-
} return array; };
|
|
554
|
-
var runDestructors = destructors => { while (destructors.length) {
|
|
555
|
-
var ptr = destructors.pop();
|
|
556
|
-
var del = destructors.pop();
|
|
557
|
-
del(ptr);
|
|
558
|
-
} };
|
|
559
|
-
function newFunc(constructor, argumentList) { if (!(constructor instanceof Function)) {
|
|
560
|
-
throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`);
|
|
561
|
-
} var dummy = createNamedFunction(constructor.name || "unknownFunctionName", function () { }); dummy.prototype = constructor.prototype; var obj = new dummy; var r = constructor.apply(obj, argumentList); return r instanceof Object ? r : obj; }
|
|
562
|
-
function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc, isAsync) { var argCount = argTypes.length; if (argCount < 2) {
|
|
563
|
-
throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!");
|
|
564
|
-
} var isClassMethodFunc = argTypes[1] !== null && classType !== null; var needsDestructorStack = false; for (var i = 1; i < argTypes.length; ++i) {
|
|
565
|
-
if (argTypes[i] !== null && argTypes[i].destructorFunction === undefined) {
|
|
566
|
-
needsDestructorStack = true;
|
|
567
|
-
break;
|
|
568
|
-
}
|
|
569
|
-
} var returns = argTypes[0].name !== "void"; var argsList = ""; var argsListWired = ""; for (var i = 0; i < argCount - 2; ++i) {
|
|
570
|
-
argsList += (i !== 0 ? ", " : "") + "arg" + i;
|
|
571
|
-
argsListWired += (i !== 0 ? ", " : "") + "arg" + i + "Wired";
|
|
572
|
-
} var invokerFnBody = `\n return function ${makeLegalFunctionName(humanName)}(${argsList}) {\n if (arguments.length !== ${argCount - 2}) {\n throwBindingError('function ${humanName} called with ' + arguments.length + ' arguments, expected ${argCount - 2}');\n }`; if (needsDestructorStack) {
|
|
573
|
-
invokerFnBody += "var destructors = [];\n";
|
|
574
|
-
} var dtorStack = needsDestructorStack ? "destructors" : "null"; var args1 = ["throwBindingError", "invoker", "fn", "runDestructors", "retType", "classParam"]; var args2 = [throwBindingError, cppInvokerFunc, cppTargetFunc, runDestructors, argTypes[0], argTypes[1]]; if (isClassMethodFunc) {
|
|
575
|
-
invokerFnBody += "var thisWired = classParam.toWireType(" + dtorStack + ", this);\n";
|
|
576
|
-
} for (var i = 0; i < argCount - 2; ++i) {
|
|
577
|
-
invokerFnBody += "var arg" + i + "Wired = argType" + i + ".toWireType(" + dtorStack + ", arg" + i + "); // " + argTypes[i + 2].name + "\n";
|
|
578
|
-
args1.push("argType" + i);
|
|
579
|
-
args2.push(argTypes[i + 2]);
|
|
580
|
-
} if (isClassMethodFunc) {
|
|
581
|
-
argsListWired = "thisWired" + (argsListWired.length > 0 ? ", " : "") + argsListWired;
|
|
582
|
-
} invokerFnBody += (returns || isAsync ? "var rv = " : "") + "invoker(fn" + (argsListWired.length > 0 ? ", " : "") + argsListWired + ");\n"; if (needsDestructorStack) {
|
|
583
|
-
invokerFnBody += "runDestructors(destructors);\n";
|
|
584
|
-
}
|
|
585
|
-
else {
|
|
586
|
-
for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {
|
|
587
|
-
var paramName = i === 1 ? "thisWired" : "arg" + (i - 2) + "Wired";
|
|
588
|
-
if (argTypes[i].destructorFunction !== null) {
|
|
589
|
-
invokerFnBody += paramName + "_dtor(" + paramName + "); // " + argTypes[i].name + "\n";
|
|
590
|
-
args1.push(paramName + "_dtor");
|
|
591
|
-
args2.push(argTypes[i].destructorFunction);
|
|
592
|
-
}
|
|
593
|
-
}
|
|
594
|
-
} if (returns) {
|
|
595
|
-
invokerFnBody += "var ret = retType.fromWireType(rv);\n" + "return ret;\n";
|
|
596
|
-
}
|
|
597
|
-
else { } invokerFnBody += "}\n"; args1.push(invokerFnBody); return newFunc(Function, args1).apply(null, args2); }
|
|
598
|
-
var __embind_register_class_constructor = (rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) => { var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr); invoker = embind__requireFunction(invokerSignature, invoker); whenDependentTypesAreResolved([], [rawClassType], function (classType) { classType = classType[0]; var humanName = `constructor ${classType.name}`; if (undefined === classType.registeredClass.constructor_body) {
|
|
599
|
-
classType.registeredClass.constructor_body = [];
|
|
600
|
-
} if (undefined !== classType.registeredClass.constructor_body[argCount - 1]) {
|
|
601
|
-
throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount - 1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);
|
|
602
|
-
} classType.registeredClass.constructor_body[argCount - 1] = () => { throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`, rawArgTypes); }; whenDependentTypesAreResolved([], rawArgTypes, argTypes => { argTypes.splice(1, 0, null); classType.registeredClass.constructor_body[argCount - 1] = craftInvokerFunction(humanName, argTypes, null, invoker, rawConstructor); return []; }); return []; }); };
|
|
603
|
-
var __embind_register_class_function = (rawClassType, methodName, argCount, rawArgTypesAddr, invokerSignature, rawInvoker, context, isPureVirtual, isAsync) => { var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr); methodName = readLatin1String(methodName); rawInvoker = embind__requireFunction(invokerSignature, rawInvoker); whenDependentTypesAreResolved([], [rawClassType], function (classType) { classType = classType[0]; var humanName = `${classType.name}.${methodName}`; if (methodName.startsWith("@@")) {
|
|
604
|
-
methodName = Symbol[methodName.substring(2)];
|
|
605
|
-
} if (isPureVirtual) {
|
|
606
|
-
classType.registeredClass.pureVirtualFunctions.push(methodName);
|
|
607
|
-
} function unboundTypesHandler() { throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`, rawArgTypes); } var proto = classType.registeredClass.instancePrototype; var method = proto[methodName]; if (undefined === method || undefined === method.overloadTable && method.className !== classType.name && method.argCount === argCount - 2) {
|
|
608
|
-
unboundTypesHandler.argCount = argCount - 2;
|
|
609
|
-
unboundTypesHandler.className = classType.name;
|
|
610
|
-
proto[methodName] = unboundTypesHandler;
|
|
611
|
-
}
|
|
612
|
-
else {
|
|
613
|
-
ensureOverloadTable(proto, methodName, humanName);
|
|
614
|
-
proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;
|
|
615
|
-
} whenDependentTypesAreResolved([], rawArgTypes, function (argTypes) { var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context, isAsync); if (undefined === proto[methodName].overloadTable) {
|
|
616
|
-
memberFunction.argCount = argCount - 2;
|
|
617
|
-
proto[methodName] = memberFunction;
|
|
618
|
-
}
|
|
619
|
-
else {
|
|
620
|
-
proto[methodName].overloadTable[argCount - 2] = memberFunction;
|
|
621
|
-
} return []; }); return []; }); };
|
|
622
|
-
function handleAllocatorInit() { Object.assign(HandleAllocator.prototype, { get(id) { return this.allocated[id]; }, has(id) { return this.allocated[id] !== undefined; }, allocate(handle) { var id = this.freelist.pop() || this.allocated.length; this.allocated[id] = handle; return id; }, free(id) { this.allocated[id] = undefined; this.freelist.push(id); } }); }
|
|
623
|
-
function HandleAllocator() { this.allocated = [undefined]; this.freelist = []; }
|
|
624
|
-
var emval_handles = new HandleAllocator;
|
|
625
|
-
var __emval_decref = handle => { if (handle >= emval_handles.reserved && 0 === --emval_handles.get(handle).refcount) {
|
|
626
|
-
emval_handles.free(handle);
|
|
627
|
-
} };
|
|
628
|
-
var count_emval_handles = () => { var count = 0; for (var i = emval_handles.reserved; i < emval_handles.allocated.length; ++i) {
|
|
629
|
-
if (emval_handles.allocated[i] !== undefined) {
|
|
630
|
-
++count;
|
|
631
|
-
}
|
|
632
|
-
} return count; };
|
|
633
|
-
var init_emval = () => { emval_handles.allocated.push({ value: undefined }, { value: null }, { value: true }, { value: false }); emval_handles.reserved = emval_handles.allocated.length; Module["count_emval_handles"] = count_emval_handles; };
|
|
634
|
-
var Emval = { toValue: handle => { if (!handle) {
|
|
635
|
-
throwBindingError("Cannot use deleted val. handle = " + handle);
|
|
636
|
-
} return emval_handles.get(handle).value; }, toHandle: value => { switch (value) {
|
|
637
|
-
case undefined: return 1;
|
|
638
|
-
case null: return 2;
|
|
639
|
-
case true: return 3;
|
|
640
|
-
case false: return 4;
|
|
641
|
-
default: {
|
|
642
|
-
return emval_handles.allocate({ refcount: 1, value: value });
|
|
643
|
-
}
|
|
644
|
-
} } };
|
|
645
|
-
function simpleReadValueFromPointer(pointer) { return this["fromWireType"](HEAP32[pointer >> 2]); }
|
|
646
|
-
var __embind_register_emval = (rawType, name) => { name = readLatin1String(name); registerType(rawType, { name: name, "fromWireType": handle => { var rv = Emval.toValue(handle); __emval_decref(handle); return rv; }, "toWireType": (destructors, value) => Emval.toHandle(value), "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": simpleReadValueFromPointer, destructorFunction: null }); };
|
|
647
|
-
var floatReadValueFromPointer = (name, width) => { switch (width) {
|
|
648
|
-
case 4: return function (pointer) { return this["fromWireType"](HEAPF32[pointer >> 2]); };
|
|
649
|
-
case 8: return function (pointer) { return this["fromWireType"](HEAPF64[pointer >> 3]); };
|
|
650
|
-
default: throw new TypeError(`invalid float width (${width}): ${name}`);
|
|
651
|
-
} };
|
|
652
|
-
var __embind_register_float = (rawType, name, size) => { name = readLatin1String(name); registerType(rawType, { name: name, "fromWireType": value => value, "toWireType": (destructors, value) => value, "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": floatReadValueFromPointer(name, size), destructorFunction: null }); };
|
|
653
|
-
var __embind_register_function = (name, argCount, rawArgTypesAddr, signature, rawInvoker, fn, isAsync) => { var argTypes = heap32VectorToArray(argCount, rawArgTypesAddr); name = readLatin1String(name); rawInvoker = embind__requireFunction(signature, rawInvoker); exposePublicSymbol(name, function () { throwUnboundTypeError(`Cannot call ${name} due to unbound types`, argTypes); }, argCount - 1); whenDependentTypesAreResolved([], argTypes, function (argTypes) { var invokerArgsArray = [argTypes[0], null].concat(argTypes.slice(1)); replacePublicSymbol(name, craftInvokerFunction(name, invokerArgsArray, null, rawInvoker, fn, isAsync), argCount - 1); return []; }); };
|
|
654
|
-
var __embind_register_integer = (primitiveType, name, size, minRange, maxRange) => { name = readLatin1String(name); if (maxRange === -1) {
|
|
655
|
-
maxRange = 4294967295;
|
|
656
|
-
} var fromWireType = value => value; if (minRange === 0) {
|
|
657
|
-
var bitshift = 32 - 8 * size;
|
|
658
|
-
fromWireType = value => value << bitshift >>> bitshift;
|
|
659
|
-
} var isUnsignedType = name.includes("unsigned"); var checkAssertions = (value, toTypeName) => { }; var toWireType; if (isUnsignedType) {
|
|
660
|
-
toWireType = function (destructors, value) { checkAssertions(value, this.name); return value >>> 0; };
|
|
661
|
-
}
|
|
662
|
-
else {
|
|
663
|
-
toWireType = function (destructors, value) { checkAssertions(value, this.name); return value; };
|
|
664
|
-
} registerType(primitiveType, { name: name, "fromWireType": fromWireType, "toWireType": toWireType, "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": integerReadValueFromPointer(name, size, minRange !== 0), destructorFunction: null }); };
|
|
665
|
-
var __embind_register_memory_view = (rawType, dataTypeIndex, name) => { var typeMapping = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array, BigInt64Array, BigUint64Array]; var TA = typeMapping[dataTypeIndex]; function decodeMemoryView(handle) { var size = HEAPU32[handle >> 2]; var data = HEAPU32[handle + 4 >> 2]; return new TA(HEAP8.buffer, data, size); } name = readLatin1String(name); registerType(rawType, { name: name, "fromWireType": decodeMemoryView, "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": decodeMemoryView }, { ignoreDuplicateRegistrations: true }); };
|
|
666
|
-
var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => { if (!(maxBytesToWrite > 0))
|
|
667
|
-
return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; for (var i = 0; i < str.length; ++i) {
|
|
668
|
-
var u = str.charCodeAt(i);
|
|
669
|
-
if (u >= 55296 && u <= 57343) {
|
|
670
|
-
var u1 = str.charCodeAt(++i);
|
|
671
|
-
u = 65536 + ((u & 1023) << 10) | u1 & 1023;
|
|
672
|
-
}
|
|
673
|
-
if (u <= 127) {
|
|
674
|
-
if (outIdx >= endIdx)
|
|
675
|
-
break;
|
|
676
|
-
heap[outIdx++] = u;
|
|
677
|
-
}
|
|
678
|
-
else if (u <= 2047) {
|
|
679
|
-
if (outIdx + 1 >= endIdx)
|
|
680
|
-
break;
|
|
681
|
-
heap[outIdx++] = 192 | u >> 6;
|
|
682
|
-
heap[outIdx++] = 128 | u & 63;
|
|
683
|
-
}
|
|
684
|
-
else if (u <= 65535) {
|
|
685
|
-
if (outIdx + 2 >= endIdx)
|
|
686
|
-
break;
|
|
687
|
-
heap[outIdx++] = 224 | u >> 12;
|
|
688
|
-
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
689
|
-
heap[outIdx++] = 128 | u & 63;
|
|
690
|
-
}
|
|
691
|
-
else {
|
|
692
|
-
if (outIdx + 3 >= endIdx)
|
|
693
|
-
break;
|
|
694
|
-
heap[outIdx++] = 240 | u >> 18;
|
|
695
|
-
heap[outIdx++] = 128 | u >> 12 & 63;
|
|
696
|
-
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
697
|
-
heap[outIdx++] = 128 | u & 63;
|
|
698
|
-
}
|
|
699
|
-
} heap[outIdx] = 0; return outIdx - startIdx; };
|
|
700
|
-
var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
|
|
701
|
-
var lengthBytesUTF8 = str => { var len = 0; for (var i = 0; i < str.length; ++i) {
|
|
702
|
-
var c = str.charCodeAt(i);
|
|
703
|
-
if (c <= 127) {
|
|
704
|
-
len++;
|
|
705
|
-
}
|
|
706
|
-
else if (c <= 2047) {
|
|
707
|
-
len += 2;
|
|
708
|
-
}
|
|
709
|
-
else if (c >= 55296 && c <= 57343) {
|
|
710
|
-
len += 4;
|
|
711
|
-
++i;
|
|
712
|
-
}
|
|
713
|
-
else {
|
|
714
|
-
len += 3;
|
|
715
|
-
}
|
|
716
|
-
} return len; };
|
|
717
|
-
var UTF8Decoder = typeof TextDecoder != "undefined" ? new TextDecoder("utf8") : undefined;
|
|
718
|
-
var UTF8ArrayToString = (heapOrArray, idx, maxBytesToRead) => { var endIdx = idx + maxBytesToRead; var endPtr = idx; while (heapOrArray[endPtr] && !(endPtr >= endIdx))
|
|
719
|
-
++endPtr; if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {
|
|
720
|
-
return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));
|
|
721
|
-
} var str = ""; while (idx < endPtr) {
|
|
722
|
-
var u0 = heapOrArray[idx++];
|
|
723
|
-
if (!(u0 & 128)) {
|
|
724
|
-
str += String.fromCharCode(u0);
|
|
725
|
-
continue;
|
|
726
|
-
}
|
|
727
|
-
var u1 = heapOrArray[idx++] & 63;
|
|
728
|
-
if ((u0 & 224) == 192) {
|
|
729
|
-
str += String.fromCharCode((u0 & 31) << 6 | u1);
|
|
730
|
-
continue;
|
|
731
|
-
}
|
|
732
|
-
var u2 = heapOrArray[idx++] & 63;
|
|
733
|
-
if ((u0 & 240) == 224) {
|
|
734
|
-
u0 = (u0 & 15) << 12 | u1 << 6 | u2;
|
|
735
|
-
}
|
|
736
|
-
else {
|
|
737
|
-
u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;
|
|
738
|
-
}
|
|
739
|
-
if (u0 < 65536) {
|
|
740
|
-
str += String.fromCharCode(u0);
|
|
741
|
-
}
|
|
742
|
-
else {
|
|
743
|
-
var ch = u0 - 65536;
|
|
744
|
-
str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
|
|
745
|
-
}
|
|
746
|
-
} return str; };
|
|
747
|
-
var UTF8ToString = (ptr, maxBytesToRead) => ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "";
|
|
748
|
-
var __embind_register_std_string = (rawType, name) => { name = readLatin1String(name); var stdStringIsUTF8 = name === "std::string"; registerType(rawType, { name: name, "fromWireType": value => { var length = HEAPU32[value >> 2]; var payload = value + 4; var str; if (stdStringIsUTF8) {
|
|
749
|
-
var decodeStartPtr = payload;
|
|
750
|
-
for (var i = 0; i <= length; ++i) {
|
|
751
|
-
var currentBytePtr = payload + i;
|
|
752
|
-
if (i == length || HEAPU8[currentBytePtr] == 0) {
|
|
753
|
-
var maxRead = currentBytePtr - decodeStartPtr;
|
|
754
|
-
var stringSegment = UTF8ToString(decodeStartPtr, maxRead);
|
|
755
|
-
if (str === undefined) {
|
|
756
|
-
str = stringSegment;
|
|
757
|
-
}
|
|
758
|
-
else {
|
|
759
|
-
str += String.fromCharCode(0);
|
|
760
|
-
str += stringSegment;
|
|
761
|
-
}
|
|
762
|
-
decodeStartPtr = currentBytePtr + 1;
|
|
763
|
-
}
|
|
764
|
-
}
|
|
765
|
-
}
|
|
766
|
-
else {
|
|
767
|
-
var a = new Array(length);
|
|
768
|
-
for (var i = 0; i < length; ++i) {
|
|
769
|
-
a[i] = String.fromCharCode(HEAPU8[payload + i]);
|
|
770
|
-
}
|
|
771
|
-
str = a.join("");
|
|
772
|
-
} _free(value); return str; }, "toWireType": (destructors, value) => { if (value instanceof ArrayBuffer) {
|
|
773
|
-
value = new Uint8Array(value);
|
|
774
|
-
} var length; var valueIsOfTypeString = typeof value == "string"; if (!(valueIsOfTypeString || value instanceof Uint8Array || value instanceof Uint8ClampedArray || value instanceof Int8Array)) {
|
|
775
|
-
throwBindingError("Cannot pass non-string to std::string");
|
|
776
|
-
} if (stdStringIsUTF8 && valueIsOfTypeString) {
|
|
777
|
-
length = lengthBytesUTF8(value);
|
|
778
|
-
}
|
|
779
|
-
else {
|
|
780
|
-
length = value.length;
|
|
781
|
-
} var base = _malloc(4 + length + 1); var ptr = base + 4; HEAPU32[base >> 2] = length; if (stdStringIsUTF8 && valueIsOfTypeString) {
|
|
782
|
-
stringToUTF8(value, ptr, length + 1);
|
|
783
|
-
}
|
|
784
|
-
else {
|
|
785
|
-
if (valueIsOfTypeString) {
|
|
786
|
-
for (var i = 0; i < length; ++i) {
|
|
787
|
-
var charCode = value.charCodeAt(i);
|
|
788
|
-
if (charCode > 255) {
|
|
789
|
-
_free(ptr);
|
|
790
|
-
throwBindingError("String has UTF-16 code units that do not fit in 8 bits");
|
|
791
|
-
}
|
|
792
|
-
HEAPU8[ptr + i] = charCode;
|
|
793
|
-
}
|
|
794
|
-
}
|
|
795
|
-
else {
|
|
796
|
-
for (var i = 0; i < length; ++i) {
|
|
797
|
-
HEAPU8[ptr + i] = value[i];
|
|
798
|
-
}
|
|
799
|
-
}
|
|
800
|
-
} if (destructors !== null) {
|
|
801
|
-
destructors.push(_free, base);
|
|
802
|
-
} return base; }, "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": readPointer, destructorFunction: ptr => _free(ptr) }); };
|
|
803
|
-
var UTF16Decoder = typeof TextDecoder != "undefined" ? new TextDecoder("utf-16le") : undefined;
|
|
804
|
-
var UTF16ToString = (ptr, maxBytesToRead) => { var endPtr = ptr; var idx = endPtr >> 1; var maxIdx = idx + maxBytesToRead / 2; while (!(idx >= maxIdx) && HEAPU16[idx])
|
|
805
|
-
++idx; endPtr = idx << 1; if (endPtr - ptr > 32 && UTF16Decoder)
|
|
806
|
-
return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr)); var str = ""; for (var i = 0; !(i >= maxBytesToRead / 2); ++i) {
|
|
807
|
-
var codeUnit = HEAP16[ptr + i * 2 >> 1];
|
|
808
|
-
if (codeUnit == 0)
|
|
809
|
-
break;
|
|
810
|
-
str += String.fromCharCode(codeUnit);
|
|
811
|
-
} return str; };
|
|
812
|
-
var stringToUTF16 = (str, outPtr, maxBytesToWrite) => { if (maxBytesToWrite === undefined) {
|
|
813
|
-
maxBytesToWrite = 2147483647;
|
|
814
|
-
} if (maxBytesToWrite < 2)
|
|
815
|
-
return 0; maxBytesToWrite -= 2; var startPtr = outPtr; var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length; for (var i = 0; i < numCharsToWrite; ++i) {
|
|
816
|
-
var codeUnit = str.charCodeAt(i);
|
|
817
|
-
HEAP16[outPtr >> 1] = codeUnit;
|
|
818
|
-
outPtr += 2;
|
|
819
|
-
} HEAP16[outPtr >> 1] = 0; return outPtr - startPtr; };
|
|
820
|
-
var lengthBytesUTF16 = str => str.length * 2;
|
|
821
|
-
var UTF32ToString = (ptr, maxBytesToRead) => { var i = 0; var str = ""; while (!(i >= maxBytesToRead / 4)) {
|
|
822
|
-
var utf32 = HEAP32[ptr + i * 4 >> 2];
|
|
823
|
-
if (utf32 == 0)
|
|
824
|
-
break;
|
|
825
|
-
++i;
|
|
826
|
-
if (utf32 >= 65536) {
|
|
827
|
-
var ch = utf32 - 65536;
|
|
828
|
-
str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
|
|
829
|
-
}
|
|
830
|
-
else {
|
|
831
|
-
str += String.fromCharCode(utf32);
|
|
832
|
-
}
|
|
833
|
-
} return str; };
|
|
834
|
-
var stringToUTF32 = (str, outPtr, maxBytesToWrite) => { if (maxBytesToWrite === undefined) {
|
|
835
|
-
maxBytesToWrite = 2147483647;
|
|
836
|
-
} if (maxBytesToWrite < 4)
|
|
837
|
-
return 0; var startPtr = outPtr; var endPtr = startPtr + maxBytesToWrite - 4; for (var i = 0; i < str.length; ++i) {
|
|
838
|
-
var codeUnit = str.charCodeAt(i);
|
|
839
|
-
if (codeUnit >= 55296 && codeUnit <= 57343) {
|
|
840
|
-
var trailSurrogate = str.charCodeAt(++i);
|
|
841
|
-
codeUnit = 65536 + ((codeUnit & 1023) << 10) | trailSurrogate & 1023;
|
|
842
|
-
}
|
|
843
|
-
HEAP32[outPtr >> 2] = codeUnit;
|
|
844
|
-
outPtr += 4;
|
|
845
|
-
if (outPtr + 4 > endPtr)
|
|
846
|
-
break;
|
|
847
|
-
} HEAP32[outPtr >> 2] = 0; return outPtr - startPtr; };
|
|
848
|
-
var lengthBytesUTF32 = str => { var len = 0; for (var i = 0; i < str.length; ++i) {
|
|
849
|
-
var codeUnit = str.charCodeAt(i);
|
|
850
|
-
if (codeUnit >= 55296 && codeUnit <= 57343)
|
|
851
|
-
++i;
|
|
852
|
-
len += 4;
|
|
853
|
-
} return len; };
|
|
854
|
-
var __embind_register_std_wstring = (rawType, charSize, name) => { name = readLatin1String(name); var decodeString, encodeString, getHeap, lengthBytesUTF, shift; if (charSize === 2) {
|
|
855
|
-
decodeString = UTF16ToString;
|
|
856
|
-
encodeString = stringToUTF16;
|
|
857
|
-
lengthBytesUTF = lengthBytesUTF16;
|
|
858
|
-
getHeap = () => HEAPU16;
|
|
859
|
-
shift = 1;
|
|
860
|
-
}
|
|
861
|
-
else if (charSize === 4) {
|
|
862
|
-
decodeString = UTF32ToString;
|
|
863
|
-
encodeString = stringToUTF32;
|
|
864
|
-
lengthBytesUTF = lengthBytesUTF32;
|
|
865
|
-
getHeap = () => HEAPU32;
|
|
866
|
-
shift = 2;
|
|
867
|
-
} registerType(rawType, { name: name, "fromWireType": value => { var length = HEAPU32[value >> 2]; var HEAP = getHeap(); var str; var decodeStartPtr = value + 4; for (var i = 0; i <= length; ++i) {
|
|
868
|
-
var currentBytePtr = value + 4 + i * charSize;
|
|
869
|
-
if (i == length || HEAP[currentBytePtr >> shift] == 0) {
|
|
870
|
-
var maxReadBytes = currentBytePtr - decodeStartPtr;
|
|
871
|
-
var stringSegment = decodeString(decodeStartPtr, maxReadBytes);
|
|
872
|
-
if (str === undefined) {
|
|
873
|
-
str = stringSegment;
|
|
874
|
-
}
|
|
875
|
-
else {
|
|
876
|
-
str += String.fromCharCode(0);
|
|
877
|
-
str += stringSegment;
|
|
878
|
-
}
|
|
879
|
-
decodeStartPtr = currentBytePtr + charSize;
|
|
880
|
-
}
|
|
881
|
-
} _free(value); return str; }, "toWireType": (destructors, value) => { if (!(typeof value == "string")) {
|
|
882
|
-
throwBindingError(`Cannot pass non-string to C++ string type ${name}`);
|
|
883
|
-
} var length = lengthBytesUTF(value); var ptr = _malloc(4 + length + charSize); HEAPU32[ptr >> 2] = length >> shift; encodeString(value, ptr + 4, length + charSize); if (destructors !== null) {
|
|
884
|
-
destructors.push(_free, ptr);
|
|
885
|
-
} return ptr; }, "argPackAdvance": GenericWireTypeSize, "readValueFromPointer": simpleReadValueFromPointer, destructorFunction: ptr => _free(ptr) }); };
|
|
886
|
-
var __embind_register_void = (rawType, name) => { name = readLatin1String(name); registerType(rawType, { isVoid: true, name: name, "argPackAdvance": 0, "fromWireType": () => undefined, "toWireType": (destructors, o) => undefined }); };
|
|
887
|
-
var emval_symbols = {};
|
|
888
|
-
var getStringOrSymbol = address => { var symbol = emval_symbols[address]; if (symbol === undefined) {
|
|
889
|
-
return readLatin1String(address);
|
|
890
|
-
} return symbol; };
|
|
891
|
-
var emval_methodCallers = [];
|
|
892
|
-
var __emval_call_void_method = (caller, handle, methodName, args) => { caller = emval_methodCallers[caller]; handle = Emval.toValue(handle); methodName = getStringOrSymbol(methodName); caller(handle, methodName, null, args); };
|
|
893
|
-
var emval_addMethodCaller = caller => { var id = emval_methodCallers.length; emval_methodCallers.push(caller); return id; };
|
|
894
|
-
var requireRegisteredType = (rawType, humanName) => { var impl = registeredTypes[rawType]; if (undefined === impl) {
|
|
895
|
-
throwBindingError(humanName + " has unknown type " + getTypeName(rawType));
|
|
896
|
-
} return impl; };
|
|
897
|
-
var emval_lookupTypes = (argCount, argTypes) => { var a = new Array(argCount); for (var i = 0; i < argCount; ++i) {
|
|
898
|
-
a[i] = requireRegisteredType(HEAPU32[argTypes + i * 4 >> 2], "parameter " + i);
|
|
899
|
-
} return a; };
|
|
900
|
-
var emval_registeredMethods = [];
|
|
901
|
-
var __emval_get_method_caller = (argCount, argTypes) => { var types = emval_lookupTypes(argCount, argTypes); var retType = types[0]; var signatureName = retType.name + "_$" + types.slice(1).map(function (t) { return t.name; }).join("_") + "$"; var returnId = emval_registeredMethods[signatureName]; if (returnId !== undefined) {
|
|
902
|
-
return returnId;
|
|
903
|
-
} var params = ["retType"]; var args = [retType]; var argsList = ""; for (var i = 0; i < argCount - 1; ++i) {
|
|
904
|
-
argsList += (i !== 0 ? ", " : "") + "arg" + i;
|
|
905
|
-
params.push("argType" + i);
|
|
906
|
-
args.push(types[1 + i]);
|
|
907
|
-
} var functionName = makeLegalFunctionName("methodCaller_" + signatureName); var functionBody = "return function " + functionName + "(handle, name, destructors, args) {\n"; var offset = 0; for (var i = 0; i < argCount - 1; ++i) {
|
|
908
|
-
functionBody += " var arg" + i + " = argType" + i + ".readValueFromPointer(args" + (offset ? "+" + offset : "") + ");\n";
|
|
909
|
-
offset += types[i + 1]["argPackAdvance"];
|
|
910
|
-
} functionBody += " var rv = handle[name](" + argsList + ");\n"; for (var i = 0; i < argCount - 1; ++i) {
|
|
911
|
-
if (types[i + 1]["deleteObject"]) {
|
|
912
|
-
functionBody += " argType" + i + ".deleteObject(arg" + i + ");\n";
|
|
913
|
-
}
|
|
914
|
-
} if (!retType.isVoid) {
|
|
915
|
-
functionBody += " return retType.toWireType(destructors, rv);\n";
|
|
916
|
-
} functionBody += "};\n"; params.push(functionBody); var invokerFunction = newFunc(Function, params).apply(null, args); returnId = emval_addMethodCaller(invokerFunction); emval_registeredMethods[signatureName] = returnId; return returnId; };
|
|
917
|
-
var __emval_incref = handle => { if (handle > 4) {
|
|
918
|
-
emval_handles.get(handle).refcount += 1;
|
|
919
|
-
} };
|
|
920
|
-
var __emval_new_array = () => Emval.toHandle([]);
|
|
921
|
-
var __emval_take_value = (type, arg) => { type = requireRegisteredType(type, "_emval_take_value"); var v = type["readValueFromPointer"](arg); return Emval.toHandle(v); };
|
|
922
|
-
var _abort = () => { abort(""); };
|
|
923
|
-
var _emscripten_memcpy_big = (dest, src, num) => HEAPU8.copyWithin(dest, src, src + num);
|
|
924
|
-
var abortOnCannotGrowMemory = requestedSize => { abort("OOM"); };
|
|
925
|
-
var _emscripten_resize_heap = requestedSize => { var oldSize = HEAPU8.length; requestedSize >>>= 0; abortOnCannotGrowMemory(requestedSize); };
|
|
926
|
-
embind_init_charCodes();
|
|
927
|
-
BindingError = Module["BindingError"] = class BindingError extends Error {
|
|
928
|
-
constructor(message) { super(message); this.name = "BindingError"; }
|
|
929
|
-
};
|
|
930
|
-
InternalError = Module["InternalError"] = class InternalError extends Error {
|
|
931
|
-
constructor(message) { super(message); this.name = "InternalError"; }
|
|
932
|
-
};
|
|
933
|
-
init_ClassHandle();
|
|
934
|
-
init_embind();
|
|
935
|
-
init_RegisteredPointer();
|
|
936
|
-
UnboundTypeError = Module["UnboundTypeError"] = extendError(Error, "UnboundTypeError");
|
|
937
|
-
handleAllocatorInit();
|
|
938
|
-
init_emval();
|
|
939
|
-
var wasmImports = { d: ___cxa_throw, o: __embind_register_bigint, u: __embind_register_bool, k: __embind_register_class, j: __embind_register_class_constructor, b: __embind_register_class_function, t: __embind_register_emval, n: __embind_register_float, e: __embind_register_function, c: __embind_register_integer, a: __embind_register_memory_view, m: __embind_register_std_string, g: __embind_register_std_wstring, v: __embind_register_void, i: __emval_call_void_method, s: __emval_decref, h: __emval_get_method_caller, l: __emval_incref, w: __emval_new_array, f: __emval_take_value, p: _abort, r: _emscripten_memcpy_big, q: _emscripten_resize_heap };
|
|
940
|
-
var wasmExports = createWasm();
|
|
941
|
-
var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports["y"])();
|
|
942
|
-
var _malloc = a0 => (_malloc = wasmExports["z"])(a0);
|
|
943
|
-
var _free = a0 => (_free = wasmExports["B"])(a0);
|
|
944
|
-
var ___getTypeName = a0 => (___getTypeName = wasmExports["C"])(a0);
|
|
945
|
-
var __embind_initialize_bindings = Module["__embind_initialize_bindings"] = () => (__embind_initialize_bindings = Module["__embind_initialize_bindings"] = wasmExports["D"])();
|
|
946
|
-
var ___errno_location = () => (___errno_location = wasmExports["__errno_location"])();
|
|
947
|
-
var ___cxa_is_pointer_type = a0 => (___cxa_is_pointer_type = wasmExports["E"])(a0);
|
|
948
|
-
function intArrayFromBase64(s) { try {
|
|
949
|
-
var decoded = atob(s);
|
|
950
|
-
var bytes = new Uint8Array(decoded.length);
|
|
951
|
-
for (var i = 0; i < decoded.length; ++i) {
|
|
952
|
-
bytes[i] = decoded.charCodeAt(i);
|
|
953
|
-
}
|
|
954
|
-
return bytes;
|
|
955
|
-
}
|
|
956
|
-
catch (_) {
|
|
957
|
-
throw new Error("Converting base64 string to bytes failed.");
|
|
958
|
-
} }
|
|
959
|
-
function tryParseAsDataURI(filename) { if (!isDataURI(filename)) {
|
|
960
|
-
return;
|
|
961
|
-
} return intArrayFromBase64(filename.slice(dataURIPrefix.length)); }
|
|
962
|
-
var calledRun;
|
|
963
|
-
dependenciesFulfilled = function runCaller() { if (!calledRun)
|
|
964
|
-
run(); if (!calledRun)
|
|
965
|
-
dependenciesFulfilled = runCaller; };
|
|
966
|
-
function run() { if (runDependencies > 0) {
|
|
967
|
-
return;
|
|
968
|
-
} preRun(); if (runDependencies > 0) {
|
|
969
|
-
return;
|
|
970
|
-
} function doRun() { if (calledRun)
|
|
971
|
-
return; calledRun = true; Module["calledRun"] = true; if (ABORT)
|
|
972
|
-
return; initRuntime(); readyPromiseResolve(Module); if (Module["onRuntimeInitialized"])
|
|
973
|
-
Module["onRuntimeInitialized"](); postRun(); } if (Module["setStatus"]) {
|
|
974
|
-
Module["setStatus"]("Running...");
|
|
975
|
-
setTimeout(function () { setTimeout(function () { Module["setStatus"](""); }, 1); doRun(); }, 1);
|
|
976
|
-
}
|
|
977
|
-
else {
|
|
978
|
-
doRun();
|
|
979
|
-
} }
|
|
980
|
-
if (Module["preInit"]) {
|
|
981
|
-
if (typeof Module["preInit"] == "function")
|
|
982
|
-
Module["preInit"] = [Module["preInit"]];
|
|
983
|
-
while (Module["preInit"].length > 0) {
|
|
984
|
-
Module["preInit"].pop()();
|
|
985
|
-
}
|
|
986
|
-
}
|
|
987
|
-
run();
|
|
988
|
-
return moduleArg.ready;
|
|
989
|
-
});
|
|
990
|
-
})();
|
|
991
|
-
export default Module;
|