@mlightcad/libredwg-web 0.0.1

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.
@@ -0,0 +1,2969 @@
1
+ var Ka = Object.defineProperty;
2
+ var Xa = (U, E, m) => E in U ? Ka(U, E, { enumerable: !0, configurable: !0, writable: !0, value: m }) : U[E] = m;
3
+ var $ = (U, E, m) => Xa(U, typeof E != "symbol" ? E + "" : E, m);
4
+ var za = (() => {
5
+ var U = import.meta.url;
6
+ return async function(E = {}) {
7
+ var m, u = E, S, k, K = new Promise((e, r) => {
8
+ S = e, k = r;
9
+ }), Q = typeof window == "object", j = typeof WorkerGlobalScope < "u", Ee = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string" && process.type != "renderer";
10
+ if (Ee) {
11
+ const { createRequire: e } = await Promise.resolve().then(() => Ja);
12
+ var we = e(import.meta.url);
13
+ }
14
+ var dr = Object.assign({}, u), je = "./this.program", He = (e, r) => {
15
+ throw r;
16
+ }, B = "";
17
+ function ot(e) {
18
+ return u.locateFile ? u.locateFile(e, B) : B + e;
19
+ }
20
+ var ye, de;
21
+ if (Ee) {
22
+ var Ve = we("fs"), it = we("path");
23
+ import.meta.url.startsWith("data:") || (B = it.dirname(we("url").fileURLToPath(import.meta.url)) + "/"), de = (e) => {
24
+ e = Re(e) ? new URL(e) : e;
25
+ var r = Ve.readFileSync(e);
26
+ return r;
27
+ }, ye = async (e, r = !0) => {
28
+ e = Re(e) ? new URL(e) : e;
29
+ var t = Ve.readFileSync(e, r ? void 0 : "utf8");
30
+ return t;
31
+ }, !u.thisProgram && process.argv.length > 1 && (je = process.argv[1].replace(/\\/g, "/")), process.argv.slice(2), He = (e, r) => {
32
+ throw process.exitCode = e, r;
33
+ };
34
+ } else (Q || j) && (j ? B = self.location.href : typeof document < "u" && document.currentScript && (B = document.currentScript.src), U && (B = U), B.startsWith("blob:") ? B = "" : B = B.slice(0, B.replace(/[?#].*/, "").lastIndexOf("/") + 1), j && (de = (e) => {
35
+ var r = new XMLHttpRequest();
36
+ return r.open("GET", e, !1), r.responseType = "arraybuffer", r.send(null), new Uint8Array(r.response);
37
+ }), ye = async (e) => {
38
+ if (Re(e))
39
+ return new Promise((t, n) => {
40
+ var o = new XMLHttpRequest();
41
+ o.open("GET", e, !0), o.responseType = "arraybuffer", o.onload = () => {
42
+ if (o.status == 200 || o.status == 0 && o.response) {
43
+ t(o.response);
44
+ return;
45
+ }
46
+ n(o.status);
47
+ }, o.onerror = n, o.send(null);
48
+ });
49
+ var r = await fetch(e, { credentials: "same-origin" });
50
+ if (r.ok)
51
+ return r.arrayBuffer();
52
+ throw new Error(r.status + " : " + r.url);
53
+ });
54
+ var Ke = u.print || console.log.bind(console), ee = u.printErr || console.error.bind(console);
55
+ Object.assign(u, dr), dr = null, u.arguments && u.arguments, u.thisProgram && (je = u.thisProgram);
56
+ var Ae = u.wasmBinary, Oe, Ce = !1, Ye, R, L, H, ve, T, g, Xe, X, vr, ze, Re = (e) => e.startsWith("file://");
57
+ function Tr() {
58
+ var e = Oe.buffer;
59
+ u.HEAP8 = R = new Int8Array(e), u.HEAP16 = H = new Int16Array(e), u.HEAPU8 = L = new Uint8Array(e), u.HEAPU16 = ve = new Uint16Array(e), u.HEAP32 = T = new Int32Array(e), u.HEAPU32 = g = new Uint32Array(e), u.HEAPF32 = Xe = new Float32Array(e), u.HEAPF64 = ze = new Float64Array(e), u.HEAP64 = X = new BigInt64Array(e), u.HEAPU64 = vr = new BigUint64Array(e);
60
+ }
61
+ function st() {
62
+ if (u.preRun)
63
+ for (typeof u.preRun == "function" && (u.preRun = [u.preRun]); u.preRun.length; )
64
+ pt(u.preRun.shift());
65
+ mr(Pr);
66
+ }
67
+ function _t() {
68
+ !u.noFSInit && !a.initialized && a.init(), w.__wasm_call_ctors(), a.ignorePermissions = !1;
69
+ }
70
+ function lt() {
71
+ if (u.postRun)
72
+ for (typeof u.postRun == "function" && (u.postRun = [u.postRun]); u.postRun.length; )
73
+ ht(u.postRun.shift());
74
+ mr(Dr);
75
+ }
76
+ var re = 0, Te = null;
77
+ function hr(e) {
78
+ var r;
79
+ re++, (r = u.monitorRunDependencies) == null || r.call(u, re);
80
+ }
81
+ function Je(e) {
82
+ var t;
83
+ if (re--, (t = u.monitorRunDependencies) == null || t.call(u, re), re == 0 && Te) {
84
+ var r = Te;
85
+ Te = null, r();
86
+ }
87
+ }
88
+ function he(e) {
89
+ var t;
90
+ (t = u.onAbort) == null || t.call(u, e), e = "Aborted(" + e + ")", ee(e), Ce = !0, e += ". Build with -sASSERTIONS for more info.";
91
+ var r = new WebAssembly.RuntimeError(e);
92
+ throw k(r), r;
93
+ }
94
+ var qe;
95
+ function ut() {
96
+ return u.locateFile ? ot("libredwg-web.wasm") : new URL("libredwg-web.wasm", import.meta.url).href;
97
+ }
98
+ function ct(e) {
99
+ if (e == qe && Ae)
100
+ return new Uint8Array(Ae);
101
+ if (de)
102
+ return de(e);
103
+ throw "both async and sync fetching of the wasm failed";
104
+ }
105
+ async function ft(e) {
106
+ if (!Ae)
107
+ try {
108
+ var r = await ye(e);
109
+ return new Uint8Array(r);
110
+ } catch {
111
+ }
112
+ return ct(e);
113
+ }
114
+ async function Et(e, r) {
115
+ try {
116
+ var t = await ft(e), n = await WebAssembly.instantiate(t, r);
117
+ return n;
118
+ } catch (o) {
119
+ ee(`failed to asynchronously prepare wasm: ${o}`), he(o);
120
+ }
121
+ }
122
+ async function dt(e, r, t) {
123
+ if (!e && typeof WebAssembly.instantiateStreaming == "function" && !Re(r) && !Ee)
124
+ try {
125
+ var n = fetch(r, { credentials: "same-origin" }), o = await WebAssembly.instantiateStreaming(n, t);
126
+ return o;
127
+ } catch (i) {
128
+ ee(`wasm streaming compile failed: ${i}`), ee("falling back to ArrayBuffer instantiation");
129
+ }
130
+ return Et(r, t);
131
+ }
132
+ function vt() {
133
+ return { env: rt, wasi_snapshot_preview1: rt };
134
+ }
135
+ async function Tt() {
136
+ function e(i, s) {
137
+ return w = i.exports, Oe = w.memory, Tr(), yr = w.__indirect_function_table, Je(), w;
138
+ }
139
+ hr();
140
+ function r(i) {
141
+ return e(i.instance);
142
+ }
143
+ var t = vt();
144
+ if (u.instantiateWasm)
145
+ return new Promise((i, s) => {
146
+ u.instantiateWasm(t, (_, l) => {
147
+ e(_), i(_.exports);
148
+ });
149
+ });
150
+ qe ?? (qe = ut());
151
+ try {
152
+ var n = await dt(Ae, qe, t), o = r(n);
153
+ return o;
154
+ } catch (i) {
155
+ return k(i), Promise.reject(i);
156
+ }
157
+ }
158
+ class pr {
159
+ constructor(r) {
160
+ $(this, "name", "ExitStatus");
161
+ this.message = `Program terminated with exit(${r})`, this.status = r;
162
+ }
163
+ }
164
+ var mr = (e) => {
165
+ for (; e.length > 0; )
166
+ e.shift()(u);
167
+ }, Dr = [], ht = (e) => Dr.unshift(e), Pr = [], pt = (e) => Pr.unshift(e), gr = u.noExitRuntime || !0;
168
+ function mt(e, r, t = "i8") {
169
+ switch (t.endsWith("*") && (t = "*"), t) {
170
+ case "i1":
171
+ R[e] = r;
172
+ break;
173
+ case "i8":
174
+ R[e] = r;
175
+ break;
176
+ case "i16":
177
+ H[e >> 1] = r;
178
+ break;
179
+ case "i32":
180
+ T[e >> 2] = r;
181
+ break;
182
+ case "i64":
183
+ X[e >> 3] = BigInt(r);
184
+ break;
185
+ case "float":
186
+ Xe[e >> 2] = r;
187
+ break;
188
+ case "double":
189
+ ze[e >> 3] = r;
190
+ break;
191
+ case "*":
192
+ g[e >> 2] = r;
193
+ break;
194
+ default:
195
+ he(`invalid type for setValue: ${t}`);
196
+ }
197
+ }
198
+ var Dt = (e) => Ua(e), Pt = () => Ha(), wr = typeof TextDecoder < "u" ? new TextDecoder() : void 0, se = (e, r = 0, t = NaN) => {
199
+ for (var n = r + t, o = r; e[o] && !(o >= n); ) ++o;
200
+ if (o - r > 16 && e.buffer && wr)
201
+ return wr.decode(e.subarray(r, o));
202
+ for (var i = ""; r < o; ) {
203
+ var s = e[r++];
204
+ if (!(s & 128)) {
205
+ i += String.fromCharCode(s);
206
+ continue;
207
+ }
208
+ var _ = e[r++] & 63;
209
+ if ((s & 224) == 192) {
210
+ i += String.fromCharCode((s & 31) << 6 | _);
211
+ continue;
212
+ }
213
+ var l = e[r++] & 63;
214
+ if ((s & 240) == 224 ? s = (s & 15) << 12 | _ << 6 | l : s = (s & 7) << 18 | _ << 12 | l << 6 | e[r++] & 63, s < 65536)
215
+ i += String.fromCharCode(s);
216
+ else {
217
+ var c = s - 65536;
218
+ i += String.fromCharCode(55296 | c >> 10, 56320 | c & 1023);
219
+ }
220
+ }
221
+ return i;
222
+ }, te = (e, r) => e ? se(L, e, r) : "", gt = (e, r, t, n) => he(`Assertion failed: ${te(e)}, at: ` + [r ? te(r) : "unknown filename", t, n ? te(n) : "unknown function"]), Se = [], yr, Ar = (e) => {
223
+ var r = Se[e];
224
+ return r || (e >= Se.length && (Se.length = e + 1), Se[e] = r = yr.get(e)), r;
225
+ }, wt = (e, r) => Ar(e)(r);
226
+ class Or {
227
+ constructor(r) {
228
+ this.excPtr = r, this.ptr = r - 24;
229
+ }
230
+ set_type(r) {
231
+ g[this.ptr + 4 >> 2] = r;
232
+ }
233
+ get_type() {
234
+ return g[this.ptr + 4 >> 2];
235
+ }
236
+ set_destructor(r) {
237
+ g[this.ptr + 8 >> 2] = r;
238
+ }
239
+ get_destructor() {
240
+ return g[this.ptr + 8 >> 2];
241
+ }
242
+ set_caught(r) {
243
+ r = r ? 1 : 0, R[this.ptr + 12] = r;
244
+ }
245
+ get_caught() {
246
+ return R[this.ptr + 12] != 0;
247
+ }
248
+ set_rethrown(r) {
249
+ r = r ? 1 : 0, R[this.ptr + 13] = r;
250
+ }
251
+ get_rethrown() {
252
+ return R[this.ptr + 13] != 0;
253
+ }
254
+ init(r, t) {
255
+ this.set_adjusted_ptr(0), this.set_type(r), this.set_destructor(t);
256
+ }
257
+ set_adjusted_ptr(r) {
258
+ g[this.ptr + 16 >> 2] = r;
259
+ }
260
+ get_adjusted_ptr() {
261
+ return g[this.ptr + 16 >> 2];
262
+ }
263
+ }
264
+ var Ge = 0, Ze = 0, yt = (e, r, t) => {
265
+ var n = new Or(e);
266
+ throw n.init(r, t), Ge = e, Ze++, Ge;
267
+ }, We = () => {
268
+ var e = T[+C.varargs >> 2];
269
+ return C.varargs += 4, e;
270
+ }, _e = We, A = { isAbs: (e) => e.charAt(0) === "/", splitPath: (e) => {
271
+ var r = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
272
+ return r.exec(e).slice(1);
273
+ }, normalizeArray: (e, r) => {
274
+ for (var t = 0, n = e.length - 1; n >= 0; n--) {
275
+ var o = e[n];
276
+ o === "." ? e.splice(n, 1) : o === ".." ? (e.splice(n, 1), t++) : t && (e.splice(n, 1), t--);
277
+ }
278
+ if (r)
279
+ for (; t; t--)
280
+ e.unshift("..");
281
+ return e;
282
+ }, normalize: (e) => {
283
+ var r = A.isAbs(e), t = e.slice(-1) === "/";
284
+ return e = A.normalizeArray(e.split("/").filter((n) => !!n), !r).join("/"), !e && !r && (e = "."), e && t && (e += "/"), (r ? "/" : "") + e;
285
+ }, dirname: (e) => {
286
+ var r = A.splitPath(e), t = r[0], n = r[1];
287
+ return !t && !n ? "." : (n && (n = n.slice(0, -1)), t + n);
288
+ }, basename: (e) => e && e.match(/([^\/]+|\/)\/*$/)[1], join: (...e) => A.normalize(e.join("/")), join2: (e, r) => A.normalize(e + "/" + r) }, At = () => {
289
+ if (Ee) {
290
+ var e = we("crypto");
291
+ return (r) => e.randomFillSync(r);
292
+ }
293
+ return (r) => crypto.getRandomValues(r);
294
+ }, Cr = (e) => {
295
+ (Cr = At())(e);
296
+ }, le = { resolve: (...e) => {
297
+ for (var r = "", t = !1, n = e.length - 1; n >= -1 && !t; n--) {
298
+ var o = n >= 0 ? e[n] : a.cwd();
299
+ if (typeof o != "string")
300
+ throw new TypeError("Arguments to path.resolve must be strings");
301
+ if (!o)
302
+ return "";
303
+ r = o + "/" + r, t = A.isAbs(o);
304
+ }
305
+ return r = A.normalizeArray(r.split("/").filter((i) => !!i), !t).join("/"), (t ? "/" : "") + r || ".";
306
+ }, relative: (e, r) => {
307
+ e = le.resolve(e).slice(1), r = le.resolve(r).slice(1);
308
+ function t(c) {
309
+ for (var f = 0; f < c.length && c[f] === ""; f++)
310
+ ;
311
+ for (var d = c.length - 1; d >= 0 && c[d] === ""; d--)
312
+ ;
313
+ return f > d ? [] : c.slice(f, d - f + 1);
314
+ }
315
+ for (var n = t(e.split("/")), o = t(r.split("/")), i = Math.min(n.length, o.length), s = i, _ = 0; _ < i; _++)
316
+ if (n[_] !== o[_]) {
317
+ s = _;
318
+ break;
319
+ }
320
+ for (var l = [], _ = s; _ < n.length; _++)
321
+ l.push("..");
322
+ return l = l.concat(o.slice(s)), l.join("/");
323
+ } }, Qe = [], pe = (e) => {
324
+ for (var r = 0, t = 0; t < e.length; ++t) {
325
+ var n = e.charCodeAt(t);
326
+ n <= 127 ? r++ : n <= 2047 ? r += 2 : n >= 55296 && n <= 57343 ? (r += 4, ++t) : r += 3;
327
+ }
328
+ return r;
329
+ }, er = (e, r, t, n) => {
330
+ if (!(n > 0)) return 0;
331
+ for (var o = t, i = t + n - 1, s = 0; s < e.length; ++s) {
332
+ var _ = e.charCodeAt(s);
333
+ if (_ >= 55296 && _ <= 57343) {
334
+ var l = e.charCodeAt(++s);
335
+ _ = 65536 + ((_ & 1023) << 10) | l & 1023;
336
+ }
337
+ if (_ <= 127) {
338
+ if (t >= i) break;
339
+ r[t++] = _;
340
+ } else if (_ <= 2047) {
341
+ if (t + 1 >= i) break;
342
+ r[t++] = 192 | _ >> 6, r[t++] = 128 | _ & 63;
343
+ } else if (_ <= 65535) {
344
+ if (t + 2 >= i) break;
345
+ r[t++] = 224 | _ >> 12, r[t++] = 128 | _ >> 6 & 63, r[t++] = 128 | _ & 63;
346
+ } else {
347
+ if (t + 3 >= i) break;
348
+ r[t++] = 240 | _ >> 18, r[t++] = 128 | _ >> 12 & 63, r[t++] = 128 | _ >> 6 & 63, r[t++] = 128 | _ & 63;
349
+ }
350
+ }
351
+ return r[t] = 0, t - o;
352
+ }, Yr = (e, r, t) => {
353
+ var n = pe(e) + 1, o = new Array(n), i = er(e, o, 0, o.length);
354
+ return o.length = i, o;
355
+ }, Ot = () => {
356
+ if (!Qe.length) {
357
+ var e = null;
358
+ if (Ee) {
359
+ var r = 256, t = Buffer.alloc(r), n = 0, o = process.stdin.fd;
360
+ try {
361
+ n = Ve.readSync(o, t, 0, r);
362
+ } catch (i) {
363
+ if (i.toString().includes("EOF")) n = 0;
364
+ else throw i;
365
+ }
366
+ n > 0 && (e = t.slice(0, n).toString("utf-8"));
367
+ } else typeof window < "u" && typeof window.prompt == "function" && (e = window.prompt("Input: "), e !== null && (e += `
368
+ `));
369
+ if (!e)
370
+ return null;
371
+ Qe = Yr(e);
372
+ }
373
+ return Qe.shift();
374
+ }, ne = { ttys: [], init() {
375
+ }, shutdown() {
376
+ }, register(e, r) {
377
+ ne.ttys[e] = { input: [], output: [], ops: r }, a.registerDevice(e, ne.stream_ops);
378
+ }, stream_ops: { open(e) {
379
+ var r = ne.ttys[e.node.rdev];
380
+ if (!r)
381
+ throw new a.ErrnoError(43);
382
+ e.tty = r, e.seekable = !1;
383
+ }, close(e) {
384
+ e.tty.ops.fsync(e.tty);
385
+ }, fsync(e) {
386
+ e.tty.ops.fsync(e.tty);
387
+ }, read(e, r, t, n, o) {
388
+ if (!e.tty || !e.tty.ops.get_char)
389
+ throw new a.ErrnoError(60);
390
+ for (var i = 0, s = 0; s < n; s++) {
391
+ var _;
392
+ try {
393
+ _ = e.tty.ops.get_char(e.tty);
394
+ } catch {
395
+ throw new a.ErrnoError(29);
396
+ }
397
+ if (_ === void 0 && i === 0)
398
+ throw new a.ErrnoError(6);
399
+ if (_ == null) break;
400
+ i++, r[t + s] = _;
401
+ }
402
+ return i && (e.node.atime = Date.now()), i;
403
+ }, write(e, r, t, n, o) {
404
+ if (!e.tty || !e.tty.ops.put_char)
405
+ throw new a.ErrnoError(60);
406
+ try {
407
+ for (var i = 0; i < n; i++)
408
+ e.tty.ops.put_char(e.tty, r[t + i]);
409
+ } catch {
410
+ throw new a.ErrnoError(29);
411
+ }
412
+ return n && (e.node.mtime = e.node.ctime = Date.now()), i;
413
+ } }, default_tty_ops: { get_char(e) {
414
+ return Ot();
415
+ }, put_char(e, r) {
416
+ r === null || r === 10 ? (Ke(se(e.output)), e.output = []) : r != 0 && e.output.push(r);
417
+ }, fsync(e) {
418
+ var r;
419
+ ((r = e.output) == null ? void 0 : r.length) > 0 && (Ke(se(e.output)), e.output = []);
420
+ }, ioctl_tcgets(e) {
421
+ return { c_iflag: 25856, c_oflag: 5, c_cflag: 191, c_lflag: 35387, c_cc: [3, 28, 127, 21, 4, 0, 1, 0, 17, 19, 26, 0, 18, 15, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] };
422
+ }, ioctl_tcsets(e, r, t) {
423
+ return 0;
424
+ }, ioctl_tiocgwinsz(e) {
425
+ return [24, 80];
426
+ } }, default_tty1_ops: { put_char(e, r) {
427
+ r === null || r === 10 ? (ee(se(e.output)), e.output = []) : r != 0 && e.output.push(r);
428
+ }, fsync(e) {
429
+ var r;
430
+ ((r = e.output) == null ? void 0 : r.length) > 0 && (ee(se(e.output)), e.output = []);
431
+ } } }, Ct = (e, r) => {
432
+ L.fill(0, e, e + r);
433
+ }, Rr = (e, r) => Math.ceil(e / r) * r, Sr = (e) => {
434
+ e = Rr(e, 65536);
435
+ var r = $a(65536, e);
436
+ return r && Ct(r, e), r;
437
+ }, D = { ops_table: null, mount(e) {
438
+ return D.createNode(null, "/", 16895, 0);
439
+ }, createNode(e, r, t, n) {
440
+ if (a.isBlkdev(t) || a.isFIFO(t))
441
+ throw new a.ErrnoError(63);
442
+ D.ops_table || (D.ops_table = { dir: { node: { getattr: D.node_ops.getattr, setattr: D.node_ops.setattr, lookup: D.node_ops.lookup, mknod: D.node_ops.mknod, rename: D.node_ops.rename, unlink: D.node_ops.unlink, rmdir: D.node_ops.rmdir, readdir: D.node_ops.readdir, symlink: D.node_ops.symlink }, stream: { llseek: D.stream_ops.llseek } }, file: { node: { getattr: D.node_ops.getattr, setattr: D.node_ops.setattr }, stream: { llseek: D.stream_ops.llseek, read: D.stream_ops.read, write: D.stream_ops.write, allocate: D.stream_ops.allocate, mmap: D.stream_ops.mmap, msync: D.stream_ops.msync } }, link: { node: { getattr: D.node_ops.getattr, setattr: D.node_ops.setattr, readlink: D.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: D.node_ops.getattr, setattr: D.node_ops.setattr }, stream: a.chrdev_stream_ops } });
443
+ var o = a.createNode(e, r, t, n);
444
+ return a.isDir(o.mode) ? (o.node_ops = D.ops_table.dir.node, o.stream_ops = D.ops_table.dir.stream, o.contents = {}) : a.isFile(o.mode) ? (o.node_ops = D.ops_table.file.node, o.stream_ops = D.ops_table.file.stream, o.usedBytes = 0, o.contents = null) : a.isLink(o.mode) ? (o.node_ops = D.ops_table.link.node, o.stream_ops = D.ops_table.link.stream) : a.isChrdev(o.mode) && (o.node_ops = D.ops_table.chrdev.node, o.stream_ops = D.ops_table.chrdev.stream), o.atime = o.mtime = o.ctime = Date.now(), e && (e.contents[r] = o, e.atime = e.mtime = e.ctime = o.atime), o;
445
+ }, getFileDataAsTypedArray(e) {
446
+ return e.contents ? e.contents.subarray ? e.contents.subarray(0, e.usedBytes) : new Uint8Array(e.contents) : new Uint8Array(0);
447
+ }, expandFileStorage(e, r) {
448
+ var t = e.contents ? e.contents.length : 0;
449
+ if (!(t >= r)) {
450
+ var n = 1024 * 1024;
451
+ r = Math.max(r, t * (t < n ? 2 : 1.125) >>> 0), t != 0 && (r = Math.max(r, 256));
452
+ var o = e.contents;
453
+ e.contents = new Uint8Array(r), e.usedBytes > 0 && e.contents.set(o.subarray(0, e.usedBytes), 0);
454
+ }
455
+ }, resizeFileStorage(e, r) {
456
+ if (e.usedBytes != r)
457
+ if (r == 0)
458
+ e.contents = null, e.usedBytes = 0;
459
+ else {
460
+ var t = e.contents;
461
+ e.contents = new Uint8Array(r), t && e.contents.set(t.subarray(0, Math.min(r, e.usedBytes))), e.usedBytes = r;
462
+ }
463
+ }, node_ops: { getattr(e) {
464
+ var r = {};
465
+ return r.dev = a.isChrdev(e.mode) ? e.id : 1, r.ino = e.id, r.mode = e.mode, r.nlink = 1, r.uid = 0, r.gid = 0, r.rdev = e.rdev, a.isDir(e.mode) ? r.size = 4096 : a.isFile(e.mode) ? r.size = e.usedBytes : a.isLink(e.mode) ? r.size = e.link.length : r.size = 0, r.atime = new Date(e.atime), r.mtime = new Date(e.mtime), r.ctime = new Date(e.ctime), r.blksize = 4096, r.blocks = Math.ceil(r.size / r.blksize), r;
466
+ }, setattr(e, r) {
467
+ for (const t of ["mode", "atime", "mtime", "ctime"])
468
+ r[t] != null && (e[t] = r[t]);
469
+ r.size !== void 0 && D.resizeFileStorage(e, r.size);
470
+ }, lookup(e, r) {
471
+ throw D.doesNotExistError;
472
+ }, mknod(e, r, t, n) {
473
+ return D.createNode(e, r, t, n);
474
+ }, rename(e, r, t) {
475
+ var n;
476
+ try {
477
+ n = a.lookupNode(r, t);
478
+ } catch {
479
+ }
480
+ if (n) {
481
+ if (a.isDir(e.mode))
482
+ for (var o in n.contents)
483
+ throw new a.ErrnoError(55);
484
+ a.hashRemoveNode(n);
485
+ }
486
+ delete e.parent.contents[e.name], r.contents[t] = e, e.name = t, r.ctime = r.mtime = e.parent.ctime = e.parent.mtime = Date.now();
487
+ }, unlink(e, r) {
488
+ delete e.contents[r], e.ctime = e.mtime = Date.now();
489
+ }, rmdir(e, r) {
490
+ var t = a.lookupNode(e, r);
491
+ for (var n in t.contents)
492
+ throw new a.ErrnoError(55);
493
+ delete e.contents[r], e.ctime = e.mtime = Date.now();
494
+ }, readdir(e) {
495
+ return [".", "..", ...Object.keys(e.contents)];
496
+ }, symlink(e, r, t) {
497
+ var n = D.createNode(e, r, 41471, 0);
498
+ return n.link = t, n;
499
+ }, readlink(e) {
500
+ if (!a.isLink(e.mode))
501
+ throw new a.ErrnoError(28);
502
+ return e.link;
503
+ } }, stream_ops: { read(e, r, t, n, o) {
504
+ var i = e.node.contents;
505
+ if (o >= e.node.usedBytes) return 0;
506
+ var s = Math.min(e.node.usedBytes - o, n);
507
+ if (s > 8 && i.subarray)
508
+ r.set(i.subarray(o, o + s), t);
509
+ else
510
+ for (var _ = 0; _ < s; _++) r[t + _] = i[o + _];
511
+ return s;
512
+ }, write(e, r, t, n, o, i) {
513
+ if (r.buffer === R.buffer && (i = !1), !n) return 0;
514
+ var s = e.node;
515
+ if (s.mtime = s.ctime = Date.now(), r.subarray && (!s.contents || s.contents.subarray)) {
516
+ if (i)
517
+ return s.contents = r.subarray(t, t + n), s.usedBytes = n, n;
518
+ if (s.usedBytes === 0 && o === 0)
519
+ return s.contents = r.slice(t, t + n), s.usedBytes = n, n;
520
+ if (o + n <= s.usedBytes)
521
+ return s.contents.set(r.subarray(t, t + n), o), n;
522
+ }
523
+ if (D.expandFileStorage(s, o + n), s.contents.subarray && r.subarray)
524
+ s.contents.set(r.subarray(t, t + n), o);
525
+ else
526
+ for (var _ = 0; _ < n; _++)
527
+ s.contents[o + _] = r[t + _];
528
+ return s.usedBytes = Math.max(s.usedBytes, o + n), n;
529
+ }, llseek(e, r, t) {
530
+ var n = r;
531
+ if (t === 1 ? n += e.position : t === 2 && a.isFile(e.node.mode) && (n += e.node.usedBytes), n < 0)
532
+ throw new a.ErrnoError(28);
533
+ return n;
534
+ }, allocate(e, r, t) {
535
+ D.expandFileStorage(e.node, r + t), e.node.usedBytes = Math.max(e.node.usedBytes, r + t);
536
+ }, mmap(e, r, t, n, o) {
537
+ if (!a.isFile(e.node.mode))
538
+ throw new a.ErrnoError(43);
539
+ var i, s, _ = e.node.contents;
540
+ if (!(o & 2) && _ && _.buffer === R.buffer)
541
+ s = !1, i = _.byteOffset;
542
+ else {
543
+ if (s = !0, i = Sr(r), !i)
544
+ throw new a.ErrnoError(48);
545
+ _ && ((t > 0 || t + r < _.length) && (_.subarray ? _ = _.subarray(t, t + r) : _ = Array.prototype.slice.call(_, t, t + r)), R.set(_, i));
546
+ }
547
+ return { ptr: i, allocated: s };
548
+ }, msync(e, r, t, n, o) {
549
+ return D.stream_ops.write(e, r, 0, n, t, !1), 0;
550
+ } } }, Yt = async (e) => {
551
+ var r = await ye(e);
552
+ return new Uint8Array(r);
553
+ }, Rt = (e, r, t, n, o, i) => {
554
+ a.createDataFile(e, r, t, n, o, i);
555
+ }, St = u.preloadPlugins || [], Gt = (e, r, t, n) => {
556
+ typeof Browser < "u" && Browser.init();
557
+ var o = !1;
558
+ return St.forEach((i) => {
559
+ o || i.canHandle(r) && (i.handle(e, r, t, n), o = !0);
560
+ }), o;
561
+ }, Wt = (e, r, t, n, o, i, s, _, l, c) => {
562
+ var f = r ? le.resolve(A.join2(e, r)) : e;
563
+ function d(p) {
564
+ function v(h) {
565
+ c == null || c(), _ || Rt(e, r, h, n, o, l), i == null || i(), Je();
566
+ }
567
+ Gt(p, f, v, () => {
568
+ s == null || s(), Je();
569
+ }) || v(p);
570
+ }
571
+ hr(), typeof t == "string" ? Yt(t).then(d, s) : d(t);
572
+ }, It = (e) => {
573
+ var r = { r: 0, "r+": 2, w: 577, "w+": 578, a: 1089, "a+": 1090 }, t = r[e];
574
+ if (typeof t > "u")
575
+ throw new Error(`Unknown file open mode: ${e}`);
576
+ return t;
577
+ }, rr = (e, r) => {
578
+ var t = 0;
579
+ return e && (t |= 365), r && (t |= 146), t;
580
+ }, a = { root: null, mounts: [], devices: {}, streams: [], nextInode: 1, nameTable: null, currentPath: "/", initialized: !1, ignorePermissions: !0, ErrnoError: class {
581
+ constructor(e) {
582
+ $(this, "name", "ErrnoError");
583
+ this.errno = e;
584
+ }
585
+ }, filesystems: null, syncFSRequests: 0, readFiles: {}, FSStream: class {
586
+ constructor() {
587
+ $(this, "shared", {});
588
+ }
589
+ get object() {
590
+ return this.node;
591
+ }
592
+ set object(e) {
593
+ this.node = e;
594
+ }
595
+ get isRead() {
596
+ return (this.flags & 2097155) !== 1;
597
+ }
598
+ get isWrite() {
599
+ return (this.flags & 2097155) !== 0;
600
+ }
601
+ get isAppend() {
602
+ return this.flags & 1024;
603
+ }
604
+ get flags() {
605
+ return this.shared.flags;
606
+ }
607
+ set flags(e) {
608
+ this.shared.flags = e;
609
+ }
610
+ get position() {
611
+ return this.shared.position;
612
+ }
613
+ set position(e) {
614
+ this.shared.position = e;
615
+ }
616
+ }, FSNode: class {
617
+ constructor(e, r, t, n) {
618
+ $(this, "node_ops", {});
619
+ $(this, "stream_ops", {});
620
+ $(this, "readMode", 365);
621
+ $(this, "writeMode", 146);
622
+ $(this, "mounted", null);
623
+ e || (e = this), this.parent = e, this.mount = e.mount, this.id = a.nextInode++, this.name = r, this.mode = t, this.rdev = n, this.atime = this.mtime = this.ctime = Date.now();
624
+ }
625
+ get read() {
626
+ return (this.mode & this.readMode) === this.readMode;
627
+ }
628
+ set read(e) {
629
+ e ? this.mode |= this.readMode : this.mode &= ~this.readMode;
630
+ }
631
+ get write() {
632
+ return (this.mode & this.writeMode) === this.writeMode;
633
+ }
634
+ set write(e) {
635
+ e ? this.mode |= this.writeMode : this.mode &= ~this.writeMode;
636
+ }
637
+ get isFolder() {
638
+ return a.isDir(this.mode);
639
+ }
640
+ get isDevice() {
641
+ return a.isChrdev(this.mode);
642
+ }
643
+ }, lookupPath(e, r = {}) {
644
+ if (!e)
645
+ throw new a.ErrnoError(44);
646
+ r.follow_mount ?? (r.follow_mount = !0), A.isAbs(e) || (e = a.cwd() + "/" + e);
647
+ e: for (var t = 0; t < 40; t++) {
648
+ for (var n = e.split("/").filter((c) => !!c), o = a.root, i = "/", s = 0; s < n.length; s++) {
649
+ var _ = s === n.length - 1;
650
+ if (_ && r.parent)
651
+ break;
652
+ if (n[s] !== ".") {
653
+ if (n[s] === "..") {
654
+ i = A.dirname(i), o = o.parent;
655
+ continue;
656
+ }
657
+ i = A.join2(i, n[s]);
658
+ try {
659
+ o = a.lookupNode(o, n[s]);
660
+ } catch (c) {
661
+ if ((c == null ? void 0 : c.errno) === 44 && _ && r.noent_okay)
662
+ return { path: i };
663
+ throw c;
664
+ }
665
+ if (a.isMountpoint(o) && (!_ || r.follow_mount) && (o = o.mounted.root), a.isLink(o.mode) && (!_ || r.follow)) {
666
+ if (!o.node_ops.readlink)
667
+ throw new a.ErrnoError(52);
668
+ var l = o.node_ops.readlink(o);
669
+ A.isAbs(l) || (l = A.dirname(i) + "/" + l), e = l + "/" + n.slice(s + 1).join("/");
670
+ continue e;
671
+ }
672
+ }
673
+ }
674
+ return { path: i, node: o };
675
+ }
676
+ throw new a.ErrnoError(32);
677
+ }, getPath(e) {
678
+ for (var r; ; ) {
679
+ if (a.isRoot(e)) {
680
+ var t = e.mount.mountpoint;
681
+ return r ? t[t.length - 1] !== "/" ? `${t}/${r}` : t + r : t;
682
+ }
683
+ r = r ? `${e.name}/${r}` : e.name, e = e.parent;
684
+ }
685
+ }, hashName(e, r) {
686
+ for (var t = 0, n = 0; n < r.length; n++)
687
+ t = (t << 5) - t + r.charCodeAt(n) | 0;
688
+ return (e + t >>> 0) % a.nameTable.length;
689
+ }, hashAddNode(e) {
690
+ var r = a.hashName(e.parent.id, e.name);
691
+ e.name_next = a.nameTable[r], a.nameTable[r] = e;
692
+ }, hashRemoveNode(e) {
693
+ var r = a.hashName(e.parent.id, e.name);
694
+ if (a.nameTable[r] === e)
695
+ a.nameTable[r] = e.name_next;
696
+ else
697
+ for (var t = a.nameTable[r]; t; ) {
698
+ if (t.name_next === e) {
699
+ t.name_next = e.name_next;
700
+ break;
701
+ }
702
+ t = t.name_next;
703
+ }
704
+ }, lookupNode(e, r) {
705
+ var t = a.mayLookup(e);
706
+ if (t)
707
+ throw new a.ErrnoError(t);
708
+ for (var n = a.hashName(e.id, r), o = a.nameTable[n]; o; o = o.name_next) {
709
+ var i = o.name;
710
+ if (o.parent.id === e.id && i === r)
711
+ return o;
712
+ }
713
+ return a.lookup(e, r);
714
+ }, createNode(e, r, t, n) {
715
+ var o = new a.FSNode(e, r, t, n);
716
+ return a.hashAddNode(o), o;
717
+ }, destroyNode(e) {
718
+ a.hashRemoveNode(e);
719
+ }, isRoot(e) {
720
+ return e === e.parent;
721
+ }, isMountpoint(e) {
722
+ return !!e.mounted;
723
+ }, isFile(e) {
724
+ return (e & 61440) === 32768;
725
+ }, isDir(e) {
726
+ return (e & 61440) === 16384;
727
+ }, isLink(e) {
728
+ return (e & 61440) === 40960;
729
+ }, isChrdev(e) {
730
+ return (e & 61440) === 8192;
731
+ }, isBlkdev(e) {
732
+ return (e & 61440) === 24576;
733
+ }, isFIFO(e) {
734
+ return (e & 61440) === 4096;
735
+ }, isSocket(e) {
736
+ return (e & 49152) === 49152;
737
+ }, flagsToPermissionString(e) {
738
+ var r = ["r", "w", "rw"][e & 3];
739
+ return e & 512 && (r += "w"), r;
740
+ }, nodePermissions(e, r) {
741
+ return a.ignorePermissions ? 0 : r.includes("r") && !(e.mode & 292) || r.includes("w") && !(e.mode & 146) || r.includes("x") && !(e.mode & 73) ? 2 : 0;
742
+ }, mayLookup(e) {
743
+ if (!a.isDir(e.mode)) return 54;
744
+ var r = a.nodePermissions(e, "x");
745
+ return r || (e.node_ops.lookup ? 0 : 2);
746
+ }, mayCreate(e, r) {
747
+ if (!a.isDir(e.mode))
748
+ return 54;
749
+ try {
750
+ var t = a.lookupNode(e, r);
751
+ return 20;
752
+ } catch {
753
+ }
754
+ return a.nodePermissions(e, "wx");
755
+ }, mayDelete(e, r, t) {
756
+ var n;
757
+ try {
758
+ n = a.lookupNode(e, r);
759
+ } catch (i) {
760
+ return i.errno;
761
+ }
762
+ var o = a.nodePermissions(e, "wx");
763
+ if (o)
764
+ return o;
765
+ if (t) {
766
+ if (!a.isDir(n.mode))
767
+ return 54;
768
+ if (a.isRoot(n) || a.getPath(n) === a.cwd())
769
+ return 10;
770
+ } else if (a.isDir(n.mode))
771
+ return 31;
772
+ return 0;
773
+ }, mayOpen(e, r) {
774
+ return e ? a.isLink(e.mode) ? 32 : a.isDir(e.mode) && (a.flagsToPermissionString(r) !== "r" || r & 576) ? 31 : a.nodePermissions(e, a.flagsToPermissionString(r)) : 44;
775
+ }, checkOpExists(e, r) {
776
+ if (!e)
777
+ throw new a.ErrnoError(r);
778
+ return e;
779
+ }, MAX_OPEN_FDS: 4096, nextfd() {
780
+ for (var e = 0; e <= a.MAX_OPEN_FDS; e++)
781
+ if (!a.streams[e])
782
+ return e;
783
+ throw new a.ErrnoError(33);
784
+ }, getStreamChecked(e) {
785
+ var r = a.getStream(e);
786
+ if (!r)
787
+ throw new a.ErrnoError(8);
788
+ return r;
789
+ }, getStream: (e) => a.streams[e], createStream(e, r = -1) {
790
+ return e = Object.assign(new a.FSStream(), e), r == -1 && (r = a.nextfd()), e.fd = r, a.streams[r] = e, e;
791
+ }, closeStream(e) {
792
+ a.streams[e] = null;
793
+ }, dupStream(e, r = -1) {
794
+ var n, o;
795
+ var t = a.createStream(e, r);
796
+ return (o = (n = t.stream_ops) == null ? void 0 : n.dup) == null || o.call(n, t), t;
797
+ }, doSetAttr(e, r, t) {
798
+ var n = e == null ? void 0 : e.stream_ops.setattr, o = n ? e : r;
799
+ n ?? (n = r.node_ops.setattr), a.checkOpExists(n, 63), n(o, t);
800
+ }, chrdev_stream_ops: { open(e) {
801
+ var t, n;
802
+ var r = a.getDevice(e.node.rdev);
803
+ e.stream_ops = r.stream_ops, (n = (t = e.stream_ops).open) == null || n.call(t, e);
804
+ }, llseek() {
805
+ throw new a.ErrnoError(70);
806
+ } }, major: (e) => e >> 8, minor: (e) => e & 255, makedev: (e, r) => e << 8 | r, registerDevice(e, r) {
807
+ a.devices[e] = { stream_ops: r };
808
+ }, getDevice: (e) => a.devices[e], getMounts(e) {
809
+ for (var r = [], t = [e]; t.length; ) {
810
+ var n = t.pop();
811
+ r.push(n), t.push(...n.mounts);
812
+ }
813
+ return r;
814
+ }, syncfs(e, r) {
815
+ typeof e == "function" && (r = e, e = !1), a.syncFSRequests++, a.syncFSRequests > 1 && ee(`warning: ${a.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);
816
+ var t = a.getMounts(a.root.mount), n = 0;
817
+ function o(s) {
818
+ return a.syncFSRequests--, r(s);
819
+ }
820
+ function i(s) {
821
+ if (s)
822
+ return i.errored ? void 0 : (i.errored = !0, o(s));
823
+ ++n >= t.length && o(null);
824
+ }
825
+ t.forEach((s) => {
826
+ if (!s.type.syncfs)
827
+ return i(null);
828
+ s.type.syncfs(s, e, i);
829
+ });
830
+ }, mount(e, r, t) {
831
+ var n = t === "/", o = !t, i;
832
+ if (n && a.root)
833
+ throw new a.ErrnoError(10);
834
+ if (!n && !o) {
835
+ var s = a.lookupPath(t, { follow_mount: !1 });
836
+ if (t = s.path, i = s.node, a.isMountpoint(i))
837
+ throw new a.ErrnoError(10);
838
+ if (!a.isDir(i.mode))
839
+ throw new a.ErrnoError(54);
840
+ }
841
+ var _ = { type: e, opts: r, mountpoint: t, mounts: [] }, l = e.mount(_);
842
+ return l.mount = _, _.root = l, n ? a.root = l : i && (i.mounted = _, i.mount && i.mount.mounts.push(_)), l;
843
+ }, unmount(e) {
844
+ var r = a.lookupPath(e, { follow_mount: !1 });
845
+ if (!a.isMountpoint(r.node))
846
+ throw new a.ErrnoError(28);
847
+ var t = r.node, n = t.mounted, o = a.getMounts(n);
848
+ Object.keys(a.nameTable).forEach((s) => {
849
+ for (var _ = a.nameTable[s]; _; ) {
850
+ var l = _.name_next;
851
+ o.includes(_.mount) && a.destroyNode(_), _ = l;
852
+ }
853
+ }), t.mounted = null;
854
+ var i = t.mount.mounts.indexOf(n);
855
+ t.mount.mounts.splice(i, 1);
856
+ }, lookup(e, r) {
857
+ return e.node_ops.lookup(e, r);
858
+ }, mknod(e, r, t) {
859
+ var n = a.lookupPath(e, { parent: !0 }), o = n.node, i = A.basename(e);
860
+ if (!i)
861
+ throw new a.ErrnoError(28);
862
+ if (i === "." || i === "..")
863
+ throw new a.ErrnoError(20);
864
+ var s = a.mayCreate(o, i);
865
+ if (s)
866
+ throw new a.ErrnoError(s);
867
+ if (!o.node_ops.mknod)
868
+ throw new a.ErrnoError(63);
869
+ return o.node_ops.mknod(o, i, r, t);
870
+ }, statfs(e) {
871
+ return a.statfsNode(a.lookupPath(e, { follow: !0 }).node);
872
+ }, statfsStream(e) {
873
+ return a.statfsNode(e.node);
874
+ }, statfsNode(e) {
875
+ var r = { bsize: 4096, frsize: 4096, blocks: 1e6, bfree: 5e5, bavail: 5e5, files: a.nextInode, ffree: a.nextInode - 1, fsid: 42, flags: 2, namelen: 255 };
876
+ return e.node_ops.statfs && Object.assign(r, e.node_ops.statfs(e.mount.opts.root)), r;
877
+ }, create(e, r = 438) {
878
+ return r &= 4095, r |= 32768, a.mknod(e, r, 0);
879
+ }, mkdir(e, r = 511) {
880
+ return r &= 1023, r |= 16384, a.mknod(e, r, 0);
881
+ }, mkdirTree(e, r) {
882
+ for (var t = e.split("/"), n = "", o = 0; o < t.length; ++o)
883
+ if (t[o]) {
884
+ n += "/" + t[o];
885
+ try {
886
+ a.mkdir(n, r);
887
+ } catch (i) {
888
+ if (i.errno != 20) throw i;
889
+ }
890
+ }
891
+ }, mkdev(e, r, t) {
892
+ return typeof t > "u" && (t = r, r = 438), r |= 8192, a.mknod(e, r, t);
893
+ }, symlink(e, r) {
894
+ if (!le.resolve(e))
895
+ throw new a.ErrnoError(44);
896
+ var t = a.lookupPath(r, { parent: !0 }), n = t.node;
897
+ if (!n)
898
+ throw new a.ErrnoError(44);
899
+ var o = A.basename(r), i = a.mayCreate(n, o);
900
+ if (i)
901
+ throw new a.ErrnoError(i);
902
+ if (!n.node_ops.symlink)
903
+ throw new a.ErrnoError(63);
904
+ return n.node_ops.symlink(n, o, e);
905
+ }, rename(e, r) {
906
+ var t = A.dirname(e), n = A.dirname(r), o = A.basename(e), i = A.basename(r), s, _, l;
907
+ if (s = a.lookupPath(e, { parent: !0 }), _ = s.node, s = a.lookupPath(r, { parent: !0 }), l = s.node, !_ || !l) throw new a.ErrnoError(44);
908
+ if (_.mount !== l.mount)
909
+ throw new a.ErrnoError(75);
910
+ var c = a.lookupNode(_, o), f = le.relative(e, n);
911
+ if (f.charAt(0) !== ".")
912
+ throw new a.ErrnoError(28);
913
+ if (f = le.relative(r, t), f.charAt(0) !== ".")
914
+ throw new a.ErrnoError(55);
915
+ var d;
916
+ try {
917
+ d = a.lookupNode(l, i);
918
+ } catch {
919
+ }
920
+ if (c !== d) {
921
+ var p = a.isDir(c.mode), v = a.mayDelete(_, o, p);
922
+ if (v)
923
+ throw new a.ErrnoError(v);
924
+ if (v = d ? a.mayDelete(l, i, p) : a.mayCreate(l, i), v)
925
+ throw new a.ErrnoError(v);
926
+ if (!_.node_ops.rename)
927
+ throw new a.ErrnoError(63);
928
+ if (a.isMountpoint(c) || d && a.isMountpoint(d))
929
+ throw new a.ErrnoError(10);
930
+ if (l !== _ && (v = a.nodePermissions(_, "w"), v))
931
+ throw new a.ErrnoError(v);
932
+ a.hashRemoveNode(c);
933
+ try {
934
+ _.node_ops.rename(c, l, i), c.parent = l;
935
+ } catch (h) {
936
+ throw h;
937
+ } finally {
938
+ a.hashAddNode(c);
939
+ }
940
+ }
941
+ }, rmdir(e) {
942
+ var r = a.lookupPath(e, { parent: !0 }), t = r.node, n = A.basename(e), o = a.lookupNode(t, n), i = a.mayDelete(t, n, !0);
943
+ if (i)
944
+ throw new a.ErrnoError(i);
945
+ if (!t.node_ops.rmdir)
946
+ throw new a.ErrnoError(63);
947
+ if (a.isMountpoint(o))
948
+ throw new a.ErrnoError(10);
949
+ t.node_ops.rmdir(t, n), a.destroyNode(o);
950
+ }, readdir(e) {
951
+ var r = a.lookupPath(e, { follow: !0 }), t = r.node, n = a.checkOpExists(t.node_ops.readdir, 54);
952
+ return n(t);
953
+ }, unlink(e) {
954
+ var r = a.lookupPath(e, { parent: !0 }), t = r.node;
955
+ if (!t)
956
+ throw new a.ErrnoError(44);
957
+ var n = A.basename(e), o = a.lookupNode(t, n), i = a.mayDelete(t, n, !1);
958
+ if (i)
959
+ throw new a.ErrnoError(i);
960
+ if (!t.node_ops.unlink)
961
+ throw new a.ErrnoError(63);
962
+ if (a.isMountpoint(o))
963
+ throw new a.ErrnoError(10);
964
+ t.node_ops.unlink(t, n), a.destroyNode(o);
965
+ }, readlink(e) {
966
+ var r = a.lookupPath(e), t = r.node;
967
+ if (!t)
968
+ throw new a.ErrnoError(44);
969
+ if (!t.node_ops.readlink)
970
+ throw new a.ErrnoError(28);
971
+ return t.node_ops.readlink(t);
972
+ }, stat(e, r) {
973
+ var t = a.lookupPath(e, { follow: !r }), n = t.node, o = a.checkOpExists(n.node_ops.getattr, 63);
974
+ return o(n);
975
+ }, fstat(e) {
976
+ var r = a.getStreamChecked(e), t = r.node, n = r.stream_ops.getattr, o = n ? r : t;
977
+ return n ?? (n = t.node_ops.getattr), a.checkOpExists(n, 63), n(o);
978
+ }, lstat(e) {
979
+ return a.stat(e, !0);
980
+ }, doChmod(e, r, t, n) {
981
+ a.doSetAttr(e, r, { mode: t & 4095 | r.mode & -4096, ctime: Date.now(), dontFollow: n });
982
+ }, chmod(e, r, t) {
983
+ var n;
984
+ if (typeof e == "string") {
985
+ var o = a.lookupPath(e, { follow: !t });
986
+ n = o.node;
987
+ } else
988
+ n = e;
989
+ a.doChmod(null, n, r, t);
990
+ }, lchmod(e, r) {
991
+ a.chmod(e, r, !0);
992
+ }, fchmod(e, r) {
993
+ var t = a.getStreamChecked(e);
994
+ a.doChmod(t, t.node, r, !1);
995
+ }, doChown(e, r, t) {
996
+ a.doSetAttr(e, r, { timestamp: Date.now(), dontFollow: t });
997
+ }, chown(e, r, t, n) {
998
+ var o;
999
+ if (typeof e == "string") {
1000
+ var i = a.lookupPath(e, { follow: !n });
1001
+ o = i.node;
1002
+ } else
1003
+ o = e;
1004
+ a.doChown(null, o, n);
1005
+ }, lchown(e, r, t) {
1006
+ a.chown(e, r, t, !0);
1007
+ }, fchown(e, r, t) {
1008
+ var n = a.getStreamChecked(e);
1009
+ a.doChown(n, n.node, !1);
1010
+ }, doTruncate(e, r, t) {
1011
+ if (a.isDir(r.mode))
1012
+ throw new a.ErrnoError(31);
1013
+ if (!a.isFile(r.mode))
1014
+ throw new a.ErrnoError(28);
1015
+ var n = a.nodePermissions(r, "w");
1016
+ if (n)
1017
+ throw new a.ErrnoError(n);
1018
+ a.doSetAttr(e, r, { size: t, timestamp: Date.now() });
1019
+ }, truncate(e, r) {
1020
+ if (r < 0)
1021
+ throw new a.ErrnoError(28);
1022
+ var t;
1023
+ if (typeof e == "string") {
1024
+ var n = a.lookupPath(e, { follow: !0 });
1025
+ t = n.node;
1026
+ } else
1027
+ t = e;
1028
+ a.doTruncate(null, t, r);
1029
+ }, ftruncate(e, r) {
1030
+ var t = a.getStreamChecked(e);
1031
+ if (r < 0 || !(t.flags & 2097155))
1032
+ throw new a.ErrnoError(28);
1033
+ a.doTruncate(t, t.node, r);
1034
+ }, utime(e, r, t) {
1035
+ var n = a.lookupPath(e, { follow: !0 }), o = n.node, i = a.checkOpExists(o.node_ops.setattr, 63);
1036
+ i(o, { atime: r, mtime: t });
1037
+ }, open(e, r, t = 438) {
1038
+ if (e === "")
1039
+ throw new a.ErrnoError(44);
1040
+ r = typeof r == "string" ? It(r) : r, r & 64 ? t = t & 4095 | 32768 : t = 0;
1041
+ var n, o;
1042
+ if (typeof e == "object")
1043
+ n = e;
1044
+ else {
1045
+ o = e.endsWith("/");
1046
+ var i = a.lookupPath(e, { follow: !(r & 131072), noent_okay: !0 });
1047
+ n = i.node, e = i.path;
1048
+ }
1049
+ var s = !1;
1050
+ if (r & 64)
1051
+ if (n) {
1052
+ if (r & 128)
1053
+ throw new a.ErrnoError(20);
1054
+ } else {
1055
+ if (o)
1056
+ throw new a.ErrnoError(31);
1057
+ n = a.mknod(e, t | 511, 0), s = !0;
1058
+ }
1059
+ if (!n)
1060
+ throw new a.ErrnoError(44);
1061
+ if (a.isChrdev(n.mode) && (r &= -513), r & 65536 && !a.isDir(n.mode))
1062
+ throw new a.ErrnoError(54);
1063
+ if (!s) {
1064
+ var _ = a.mayOpen(n, r);
1065
+ if (_)
1066
+ throw new a.ErrnoError(_);
1067
+ }
1068
+ r & 512 && !s && a.truncate(n, 0), r &= -131713;
1069
+ var l = a.createStream({ node: n, path: a.getPath(n), flags: r, seekable: !0, position: 0, stream_ops: n.stream_ops, ungotten: [], error: !1 });
1070
+ return l.stream_ops.open && l.stream_ops.open(l), s && a.chmod(n, t & 511), u.logReadFiles && !(r & 1) && (e in a.readFiles || (a.readFiles[e] = 1)), l;
1071
+ }, close(e) {
1072
+ if (a.isClosed(e))
1073
+ throw new a.ErrnoError(8);
1074
+ e.getdents && (e.getdents = null);
1075
+ try {
1076
+ e.stream_ops.close && e.stream_ops.close(e);
1077
+ } catch (r) {
1078
+ throw r;
1079
+ } finally {
1080
+ a.closeStream(e.fd);
1081
+ }
1082
+ e.fd = null;
1083
+ }, isClosed(e) {
1084
+ return e.fd === null;
1085
+ }, llseek(e, r, t) {
1086
+ if (a.isClosed(e))
1087
+ throw new a.ErrnoError(8);
1088
+ if (!e.seekable || !e.stream_ops.llseek)
1089
+ throw new a.ErrnoError(70);
1090
+ if (t != 0 && t != 1 && t != 2)
1091
+ throw new a.ErrnoError(28);
1092
+ return e.position = e.stream_ops.llseek(e, r, t), e.ungotten = [], e.position;
1093
+ }, read(e, r, t, n, o) {
1094
+ if (n < 0 || o < 0)
1095
+ throw new a.ErrnoError(28);
1096
+ if (a.isClosed(e))
1097
+ throw new a.ErrnoError(8);
1098
+ if ((e.flags & 2097155) === 1)
1099
+ throw new a.ErrnoError(8);
1100
+ if (a.isDir(e.node.mode))
1101
+ throw new a.ErrnoError(31);
1102
+ if (!e.stream_ops.read)
1103
+ throw new a.ErrnoError(28);
1104
+ var i = typeof o < "u";
1105
+ if (!i)
1106
+ o = e.position;
1107
+ else if (!e.seekable)
1108
+ throw new a.ErrnoError(70);
1109
+ var s = e.stream_ops.read(e, r, t, n, o);
1110
+ return i || (e.position += s), s;
1111
+ }, write(e, r, t, n, o, i) {
1112
+ if (n < 0 || o < 0)
1113
+ throw new a.ErrnoError(28);
1114
+ if (a.isClosed(e))
1115
+ throw new a.ErrnoError(8);
1116
+ if (!(e.flags & 2097155))
1117
+ throw new a.ErrnoError(8);
1118
+ if (a.isDir(e.node.mode))
1119
+ throw new a.ErrnoError(31);
1120
+ if (!e.stream_ops.write)
1121
+ throw new a.ErrnoError(28);
1122
+ e.seekable && e.flags & 1024 && a.llseek(e, 0, 2);
1123
+ var s = typeof o < "u";
1124
+ if (!s)
1125
+ o = e.position;
1126
+ else if (!e.seekable)
1127
+ throw new a.ErrnoError(70);
1128
+ var _ = e.stream_ops.write(e, r, t, n, o, i);
1129
+ return s || (e.position += _), _;
1130
+ }, allocate(e, r, t) {
1131
+ if (a.isClosed(e))
1132
+ throw new a.ErrnoError(8);
1133
+ if (r < 0 || t <= 0)
1134
+ throw new a.ErrnoError(28);
1135
+ if (!(e.flags & 2097155))
1136
+ throw new a.ErrnoError(8);
1137
+ if (!a.isFile(e.node.mode) && !a.isDir(e.node.mode))
1138
+ throw new a.ErrnoError(43);
1139
+ if (!e.stream_ops.allocate)
1140
+ throw new a.ErrnoError(138);
1141
+ e.stream_ops.allocate(e, r, t);
1142
+ }, mmap(e, r, t, n, o) {
1143
+ if (n & 2 && !(o & 2) && (e.flags & 2097155) !== 2)
1144
+ throw new a.ErrnoError(2);
1145
+ if ((e.flags & 2097155) === 1)
1146
+ throw new a.ErrnoError(2);
1147
+ if (!e.stream_ops.mmap)
1148
+ throw new a.ErrnoError(43);
1149
+ if (!r)
1150
+ throw new a.ErrnoError(28);
1151
+ return e.stream_ops.mmap(e, r, t, n, o);
1152
+ }, msync(e, r, t, n, o) {
1153
+ return e.stream_ops.msync ? e.stream_ops.msync(e, r, t, n, o) : 0;
1154
+ }, ioctl(e, r, t) {
1155
+ if (!e.stream_ops.ioctl)
1156
+ throw new a.ErrnoError(59);
1157
+ return e.stream_ops.ioctl(e, r, t);
1158
+ }, readFile(e, r = {}) {
1159
+ if (r.flags = r.flags || 0, r.encoding = r.encoding || "binary", r.encoding !== "utf8" && r.encoding !== "binary")
1160
+ throw new Error(`Invalid encoding type "${r.encoding}"`);
1161
+ var t, n = a.open(e, r.flags), o = a.stat(e), i = o.size, s = new Uint8Array(i);
1162
+ return a.read(n, s, 0, i, 0), r.encoding === "utf8" ? t = se(s) : r.encoding === "binary" && (t = s), a.close(n), t;
1163
+ }, writeFile(e, r, t = {}) {
1164
+ t.flags = t.flags || 577;
1165
+ var n = a.open(e, t.flags, t.mode);
1166
+ if (typeof r == "string") {
1167
+ var o = new Uint8Array(pe(r) + 1), i = er(r, o, 0, o.length);
1168
+ a.write(n, o, 0, i, void 0, t.canOwn);
1169
+ } else if (ArrayBuffer.isView(r))
1170
+ a.write(n, r, 0, r.byteLength, void 0, t.canOwn);
1171
+ else
1172
+ throw new Error("Unsupported data type");
1173
+ a.close(n);
1174
+ }, cwd: () => a.currentPath, chdir(e) {
1175
+ var r = a.lookupPath(e, { follow: !0 });
1176
+ if (r.node === null)
1177
+ throw new a.ErrnoError(44);
1178
+ if (!a.isDir(r.node.mode))
1179
+ throw new a.ErrnoError(54);
1180
+ var t = a.nodePermissions(r.node, "x");
1181
+ if (t)
1182
+ throw new a.ErrnoError(t);
1183
+ a.currentPath = r.path;
1184
+ }, createDefaultDirectories() {
1185
+ a.mkdir("/tmp"), a.mkdir("/home"), a.mkdir("/home/web_user");
1186
+ }, createDefaultDevices() {
1187
+ a.mkdir("/dev"), a.registerDevice(a.makedev(1, 3), { read: () => 0, write: (n, o, i, s, _) => s, llseek: () => 0 }), a.mkdev("/dev/null", a.makedev(1, 3)), ne.register(a.makedev(5, 0), ne.default_tty_ops), ne.register(a.makedev(6, 0), ne.default_tty1_ops), a.mkdev("/dev/tty", a.makedev(5, 0)), a.mkdev("/dev/tty1", a.makedev(6, 0));
1188
+ var e = new Uint8Array(1024), r = 0, t = () => (r === 0 && (Cr(e), r = e.byteLength), e[--r]);
1189
+ a.createDevice("/dev", "random", t), a.createDevice("/dev", "urandom", t), a.mkdir("/dev/shm"), a.mkdir("/dev/shm/tmp");
1190
+ }, createSpecialDirectories() {
1191
+ a.mkdir("/proc");
1192
+ var e = a.mkdir("/proc/self");
1193
+ a.mkdir("/proc/self/fd"), a.mount({ mount() {
1194
+ var r = a.createNode(e, "fd", 16895, 73);
1195
+ return r.stream_ops = { llseek: D.stream_ops.llseek }, r.node_ops = { lookup(t, n) {
1196
+ var o = +n, i = a.getStreamChecked(o), s = { parent: null, mount: { mountpoint: "fake" }, node_ops: { readlink: () => i.path }, id: o + 1 };
1197
+ return s.parent = s, s;
1198
+ }, readdir() {
1199
+ return Array.from(a.streams.entries()).filter(([t, n]) => n).map(([t, n]) => t.toString());
1200
+ } }, r;
1201
+ } }, {}, "/proc/self/fd");
1202
+ }, createStandardStreams(e, r, t) {
1203
+ e ? a.createDevice("/dev", "stdin", e) : a.symlink("/dev/tty", "/dev/stdin"), r ? a.createDevice("/dev", "stdout", null, r) : a.symlink("/dev/tty", "/dev/stdout"), t ? a.createDevice("/dev", "stderr", null, t) : a.symlink("/dev/tty1", "/dev/stderr"), a.open("/dev/stdin", 0), a.open("/dev/stdout", 1), a.open("/dev/stderr", 1);
1204
+ }, staticInit() {
1205
+ a.nameTable = new Array(4096), a.mount(D, {}, "/"), a.createDefaultDirectories(), a.createDefaultDevices(), a.createSpecialDirectories(), a.filesystems = { MEMFS: D };
1206
+ }, init(e, r, t) {
1207
+ a.initialized = !0, e ?? (e = u.stdin), r ?? (r = u.stdout), t ?? (t = u.stderr), a.createStandardStreams(e, r, t);
1208
+ }, quit() {
1209
+ a.initialized = !1;
1210
+ for (var e = 0; e < a.streams.length; e++) {
1211
+ var r = a.streams[e];
1212
+ r && a.close(r);
1213
+ }
1214
+ }, findObject(e, r) {
1215
+ var t = a.analyzePath(e, r);
1216
+ return t.exists ? t.object : null;
1217
+ }, analyzePath(e, r) {
1218
+ try {
1219
+ var t = a.lookupPath(e, { follow: !r });
1220
+ e = t.path;
1221
+ } catch {
1222
+ }
1223
+ var n = { isRoot: !1, exists: !1, error: 0, name: null, path: null, object: null, parentExists: !1, parentPath: null, parentObject: null };
1224
+ try {
1225
+ var t = a.lookupPath(e, { parent: !0 });
1226
+ n.parentExists = !0, n.parentPath = t.path, n.parentObject = t.node, n.name = A.basename(e), t = a.lookupPath(e, { follow: !r }), n.exists = !0, n.path = t.path, n.object = t.node, n.name = t.node.name, n.isRoot = t.path === "/";
1227
+ } catch (o) {
1228
+ n.error = o.errno;
1229
+ }
1230
+ return n;
1231
+ }, createPath(e, r, t, n) {
1232
+ e = typeof e == "string" ? e : a.getPath(e);
1233
+ for (var o = r.split("/").reverse(); o.length; ) {
1234
+ var i = o.pop();
1235
+ if (i) {
1236
+ var s = A.join2(e, i);
1237
+ try {
1238
+ a.mkdir(s);
1239
+ } catch {
1240
+ }
1241
+ e = s;
1242
+ }
1243
+ }
1244
+ return s;
1245
+ }, createFile(e, r, t, n, o) {
1246
+ var i = A.join2(typeof e == "string" ? e : a.getPath(e), r), s = rr(n, o);
1247
+ return a.create(i, s);
1248
+ }, createDataFile(e, r, t, n, o, i) {
1249
+ var s = r;
1250
+ e && (e = typeof e == "string" ? e : a.getPath(e), s = r ? A.join2(e, r) : e);
1251
+ var _ = rr(n, o), l = a.create(s, _);
1252
+ if (t) {
1253
+ if (typeof t == "string") {
1254
+ for (var c = new Array(t.length), f = 0, d = t.length; f < d; ++f) c[f] = t.charCodeAt(f);
1255
+ t = c;
1256
+ }
1257
+ a.chmod(l, _ | 146);
1258
+ var p = a.open(l, 577);
1259
+ a.write(p, t, 0, t.length, 0, i), a.close(p), a.chmod(l, _);
1260
+ }
1261
+ }, createDevice(e, r, t, n) {
1262
+ var _;
1263
+ var o = A.join2(typeof e == "string" ? e : a.getPath(e), r), i = rr(!!t, !!n);
1264
+ (_ = a.createDevice).major ?? (_.major = 64);
1265
+ var s = a.makedev(a.createDevice.major++, 0);
1266
+ return a.registerDevice(s, { open(l) {
1267
+ l.seekable = !1;
1268
+ }, close(l) {
1269
+ var c;
1270
+ (c = n == null ? void 0 : n.buffer) != null && c.length && n(10);
1271
+ }, read(l, c, f, d, p) {
1272
+ for (var v = 0, h = 0; h < d; h++) {
1273
+ var y;
1274
+ try {
1275
+ y = t();
1276
+ } catch {
1277
+ throw new a.ErrnoError(29);
1278
+ }
1279
+ if (y === void 0 && v === 0)
1280
+ throw new a.ErrnoError(6);
1281
+ if (y == null) break;
1282
+ v++, c[f + h] = y;
1283
+ }
1284
+ return v && (l.node.atime = Date.now()), v;
1285
+ }, write(l, c, f, d, p) {
1286
+ for (var v = 0; v < d; v++)
1287
+ try {
1288
+ n(c[f + v]);
1289
+ } catch {
1290
+ throw new a.ErrnoError(29);
1291
+ }
1292
+ return d && (l.node.mtime = l.node.ctime = Date.now()), v;
1293
+ } }), a.mkdev(o, i, s);
1294
+ }, forceLoadFile(e) {
1295
+ if (e.isDevice || e.isFolder || e.link || e.contents) return !0;
1296
+ if (typeof XMLHttpRequest < "u")
1297
+ throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");
1298
+ try {
1299
+ e.contents = de(e.url), e.usedBytes = e.contents.length;
1300
+ } catch {
1301
+ throw new a.ErrnoError(29);
1302
+ }
1303
+ }, createLazyFile(e, r, t, n, o) {
1304
+ class i {
1305
+ constructor() {
1306
+ $(this, "lengthKnown", !1);
1307
+ $(this, "chunks", []);
1308
+ }
1309
+ get(v) {
1310
+ if (!(v > this.length - 1 || v < 0)) {
1311
+ var h = v % this.chunkSize, y = v / this.chunkSize | 0;
1312
+ return this.getter(y)[h];
1313
+ }
1314
+ }
1315
+ setDataGetter(v) {
1316
+ this.getter = v;
1317
+ }
1318
+ cacheLength() {
1319
+ var v = new XMLHttpRequest();
1320
+ if (v.open("HEAD", t, !1), v.send(null), !(v.status >= 200 && v.status < 300 || v.status === 304)) throw new Error("Couldn't load " + t + ". Status: " + v.status);
1321
+ var h = Number(v.getResponseHeader("Content-length")), y, W = (y = v.getResponseHeader("Accept-Ranges")) && y === "bytes", Y = (y = v.getResponseHeader("Content-Encoding")) && y === "gzip", I = 1024 * 1024;
1322
+ W || (I = h);
1323
+ var O = (M, J) => {
1324
+ if (M > J) throw new Error("invalid range (" + M + ", " + J + ") or no bytes requested!");
1325
+ if (J > h - 1) throw new Error("only " + h + " bytes available! programmer error!");
1326
+ var G = new XMLHttpRequest();
1327
+ if (G.open("GET", t, !1), h !== I && G.setRequestHeader("Range", "bytes=" + M + "-" + J), G.responseType = "arraybuffer", G.overrideMimeType && G.overrideMimeType("text/plain; charset=x-user-defined"), G.send(null), !(G.status >= 200 && G.status < 300 || G.status === 304)) throw new Error("Couldn't load " + t + ". Status: " + G.status);
1328
+ return G.response !== void 0 ? new Uint8Array(G.response || []) : Yr(G.responseText || "");
1329
+ }, ie = this;
1330
+ ie.setDataGetter((M) => {
1331
+ var J = M * I, G = (M + 1) * I - 1;
1332
+ if (G = Math.min(G, h - 1), typeof ie.chunks[M] > "u" && (ie.chunks[M] = O(J, G)), typeof ie.chunks[M] > "u") throw new Error("doXHR failed!");
1333
+ return ie.chunks[M];
1334
+ }), (Y || !h) && (I = h = 1, h = this.getter(0).length, I = h, Ke("LazyFiles on gzip forces download of the whole file when length is accessed")), this._length = h, this._chunkSize = I, this.lengthKnown = !0;
1335
+ }
1336
+ get length() {
1337
+ return this.lengthKnown || this.cacheLength(), this._length;
1338
+ }
1339
+ get chunkSize() {
1340
+ return this.lengthKnown || this.cacheLength(), this._chunkSize;
1341
+ }
1342
+ }
1343
+ if (typeof XMLHttpRequest < "u") {
1344
+ if (!j) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";
1345
+ var s = new i(), _ = { isDevice: !1, contents: s };
1346
+ } else
1347
+ var _ = { isDevice: !1, url: t };
1348
+ var l = a.createFile(e, r, _, n, o);
1349
+ _.contents ? l.contents = _.contents : _.url && (l.contents = null, l.url = _.url), Object.defineProperties(l, { usedBytes: { get: function() {
1350
+ return this.contents.length;
1351
+ } } });
1352
+ var c = {}, f = Object.keys(l.stream_ops);
1353
+ f.forEach((p) => {
1354
+ var v = l.stream_ops[p];
1355
+ c[p] = (...h) => (a.forceLoadFile(l), v(...h));
1356
+ });
1357
+ function d(p, v, h, y, W) {
1358
+ var Y = p.node.contents;
1359
+ if (W >= Y.length) return 0;
1360
+ var I = Math.min(Y.length - W, y);
1361
+ if (Y.slice)
1362
+ for (var O = 0; O < I; O++)
1363
+ v[h + O] = Y[W + O];
1364
+ else
1365
+ for (var O = 0; O < I; O++)
1366
+ v[h + O] = Y.get(W + O);
1367
+ return I;
1368
+ }
1369
+ return c.read = (p, v, h, y, W) => (a.forceLoadFile(l), d(p, v, h, y, W)), c.mmap = (p, v, h, y, W) => {
1370
+ a.forceLoadFile(l);
1371
+ var Y = Sr(v);
1372
+ if (!Y)
1373
+ throw new a.ErrnoError(48);
1374
+ return d(p, R, Y, v, h), { ptr: Y, allocated: !0 };
1375
+ }, l.stream_ops = c, l;
1376
+ } }, C = { DEFAULT_POLLMASK: 5, calculateAt(e, r, t) {
1377
+ if (A.isAbs(r))
1378
+ return r;
1379
+ var n;
1380
+ if (e === -100)
1381
+ n = a.cwd();
1382
+ else {
1383
+ var o = C.getStreamFromFD(e);
1384
+ n = o.path;
1385
+ }
1386
+ if (r.length == 0) {
1387
+ if (!t)
1388
+ throw new a.ErrnoError(44);
1389
+ return n;
1390
+ }
1391
+ return n + "/" + r;
1392
+ }, writeStat(e, r) {
1393
+ T[e >> 2] = r.dev, T[e + 4 >> 2] = r.mode, g[e + 8 >> 2] = r.nlink, T[e + 12 >> 2] = r.uid, T[e + 16 >> 2] = r.gid, T[e + 20 >> 2] = r.rdev, X[e + 24 >> 3] = BigInt(r.size), T[e + 32 >> 2] = 4096, T[e + 36 >> 2] = r.blocks;
1394
+ var t = r.atime.getTime(), n = r.mtime.getTime(), o = r.ctime.getTime();
1395
+ return X[e + 40 >> 3] = BigInt(Math.floor(t / 1e3)), g[e + 48 >> 2] = t % 1e3 * 1e3 * 1e3, X[e + 56 >> 3] = BigInt(Math.floor(n / 1e3)), g[e + 64 >> 2] = n % 1e3 * 1e3 * 1e3, X[e + 72 >> 3] = BigInt(Math.floor(o / 1e3)), g[e + 80 >> 2] = o % 1e3 * 1e3 * 1e3, X[e + 88 >> 3] = BigInt(r.ino), 0;
1396
+ }, writeStatFs(e, r) {
1397
+ T[e + 4 >> 2] = r.bsize, T[e + 40 >> 2] = r.bsize, T[e + 8 >> 2] = r.blocks, T[e + 12 >> 2] = r.bfree, T[e + 16 >> 2] = r.bavail, T[e + 20 >> 2] = r.files, T[e + 24 >> 2] = r.ffree, T[e + 28 >> 2] = r.fsid, T[e + 44 >> 2] = r.flags, T[e + 36 >> 2] = r.namelen;
1398
+ }, doMsync(e, r, t, n, o) {
1399
+ if (!a.isFile(r.node.mode))
1400
+ throw new a.ErrnoError(43);
1401
+ if (n & 2)
1402
+ return 0;
1403
+ var i = L.slice(e, e + t);
1404
+ a.msync(r, i, o, t, n);
1405
+ }, getStreamFromFD(e) {
1406
+ var r = a.getStreamChecked(e);
1407
+ return r;
1408
+ }, varargs: void 0, getStr(e) {
1409
+ var r = te(e);
1410
+ return r;
1411
+ } };
1412
+ function Nt(e, r, t) {
1413
+ C.varargs = t;
1414
+ try {
1415
+ var n = C.getStreamFromFD(e);
1416
+ switch (r) {
1417
+ case 0: {
1418
+ var o = We();
1419
+ if (o < 0)
1420
+ return -28;
1421
+ for (; a.streams[o]; )
1422
+ o++;
1423
+ var i;
1424
+ return i = a.dupStream(n, o), i.fd;
1425
+ }
1426
+ case 1:
1427
+ case 2:
1428
+ return 0;
1429
+ case 3:
1430
+ return n.flags;
1431
+ case 4: {
1432
+ var o = We();
1433
+ return n.flags |= o, 0;
1434
+ }
1435
+ case 12: {
1436
+ var o = _e(), s = 0;
1437
+ return H[o + s >> 1] = 2, 0;
1438
+ }
1439
+ case 13:
1440
+ case 14:
1441
+ return 0;
1442
+ }
1443
+ return -28;
1444
+ } catch (_) {
1445
+ if (typeof a > "u" || _.name !== "ErrnoError") throw _;
1446
+ return -_.errno;
1447
+ }
1448
+ }
1449
+ function bt(e, r) {
1450
+ try {
1451
+ return C.writeStat(r, a.fstat(e));
1452
+ } catch (t) {
1453
+ if (typeof a > "u" || t.name !== "ErrnoError") throw t;
1454
+ return -t.errno;
1455
+ }
1456
+ }
1457
+ function Lt(e, r, t) {
1458
+ C.varargs = t;
1459
+ try {
1460
+ var n = C.getStreamFromFD(e);
1461
+ switch (r) {
1462
+ case 21509:
1463
+ return n.tty ? 0 : -59;
1464
+ case 21505: {
1465
+ if (!n.tty) return -59;
1466
+ if (n.tty.ops.ioctl_tcgets) {
1467
+ var o = n.tty.ops.ioctl_tcgets(n), i = _e();
1468
+ T[i >> 2] = o.c_iflag || 0, T[i + 4 >> 2] = o.c_oflag || 0, T[i + 8 >> 2] = o.c_cflag || 0, T[i + 12 >> 2] = o.c_lflag || 0;
1469
+ for (var s = 0; s < 32; s++)
1470
+ R[i + s + 17] = o.c_cc[s] || 0;
1471
+ return 0;
1472
+ }
1473
+ return 0;
1474
+ }
1475
+ case 21510:
1476
+ case 21511:
1477
+ case 21512:
1478
+ return n.tty ? 0 : -59;
1479
+ case 21506:
1480
+ case 21507:
1481
+ case 21508: {
1482
+ if (!n.tty) return -59;
1483
+ if (n.tty.ops.ioctl_tcsets) {
1484
+ for (var i = _e(), _ = T[i >> 2], l = T[i + 4 >> 2], c = T[i + 8 >> 2], f = T[i + 12 >> 2], d = [], s = 0; s < 32; s++)
1485
+ d.push(R[i + s + 17]);
1486
+ return n.tty.ops.ioctl_tcsets(n.tty, r, { c_iflag: _, c_oflag: l, c_cflag: c, c_lflag: f, c_cc: d });
1487
+ }
1488
+ return 0;
1489
+ }
1490
+ case 21519: {
1491
+ if (!n.tty) return -59;
1492
+ var i = _e();
1493
+ return T[i >> 2] = 0, 0;
1494
+ }
1495
+ case 21520:
1496
+ return n.tty ? -28 : -59;
1497
+ case 21531: {
1498
+ var i = _e();
1499
+ return a.ioctl(n, r, i);
1500
+ }
1501
+ case 21523: {
1502
+ if (!n.tty) return -59;
1503
+ if (n.tty.ops.ioctl_tiocgwinsz) {
1504
+ var p = n.tty.ops.ioctl_tiocgwinsz(n.tty), i = _e();
1505
+ H[i >> 1] = p[0], H[i + 2 >> 1] = p[1];
1506
+ }
1507
+ return 0;
1508
+ }
1509
+ case 21524:
1510
+ return n.tty ? 0 : -59;
1511
+ case 21515:
1512
+ return n.tty ? 0 : -59;
1513
+ default:
1514
+ return -28;
1515
+ }
1516
+ } catch (v) {
1517
+ if (typeof a > "u" || v.name !== "ErrnoError") throw v;
1518
+ return -v.errno;
1519
+ }
1520
+ }
1521
+ function kt(e, r) {
1522
+ try {
1523
+ return e = C.getStr(e), C.writeStat(r, a.lstat(e));
1524
+ } catch (t) {
1525
+ if (typeof a > "u" || t.name !== "ErrnoError") throw t;
1526
+ return -t.errno;
1527
+ }
1528
+ }
1529
+ function Ft(e, r, t, n) {
1530
+ try {
1531
+ r = C.getStr(r);
1532
+ var o = n & 256, i = n & 4096;
1533
+ return n = n & -6401, r = C.calculateAt(e, r, i), C.writeStat(t, o ? a.lstat(r) : a.stat(r));
1534
+ } catch (s) {
1535
+ if (typeof a > "u" || s.name !== "ErrnoError") throw s;
1536
+ return -s.errno;
1537
+ }
1538
+ }
1539
+ function Mt(e, r, t, n) {
1540
+ C.varargs = n;
1541
+ try {
1542
+ r = C.getStr(r), r = C.calculateAt(e, r);
1543
+ var o = n ? We() : 0;
1544
+ return a.open(r, t, o).fd;
1545
+ } catch (i) {
1546
+ if (typeof a > "u" || i.name !== "ErrnoError") throw i;
1547
+ return -i.errno;
1548
+ }
1549
+ }
1550
+ function $t(e, r) {
1551
+ try {
1552
+ return e = C.getStr(e), C.writeStat(r, a.stat(e));
1553
+ } catch (t) {
1554
+ if (typeof a > "u" || t.name !== "ErrnoError") throw t;
1555
+ return -t.errno;
1556
+ }
1557
+ }
1558
+ var Bt = () => he(""), Ie = (e) => {
1559
+ if (e === null)
1560
+ return "null";
1561
+ var r = typeof e;
1562
+ return r === "object" || r === "array" || r === "function" ? e.toString() : "" + e;
1563
+ }, xt = () => {
1564
+ for (var e = new Array(256), r = 0; r < 256; ++r)
1565
+ e[r] = String.fromCharCode(r);
1566
+ Gr = e;
1567
+ }, Gr, N = (e) => {
1568
+ for (var r = "", t = e; L[t]; )
1569
+ r += Gr[L[t++]];
1570
+ return r;
1571
+ }, ue = {}, ae = {}, Ne = {}, me, P = (e) => {
1572
+ throw new me(e);
1573
+ }, Wr, be = (e) => {
1574
+ throw new Wr(e);
1575
+ }, Le = (e, r, t) => {
1576
+ e.forEach((_) => Ne[_] = r);
1577
+ function n(_) {
1578
+ var l = t(_);
1579
+ l.length !== e.length && be("Mismatched type converter count");
1580
+ for (var c = 0; c < e.length; ++c)
1581
+ x(e[c], l[c]);
1582
+ }
1583
+ var o = new Array(r.length), i = [], s = 0;
1584
+ r.forEach((_, l) => {
1585
+ ae.hasOwnProperty(_) ? o[l] = ae[_] : (i.push(_), ue.hasOwnProperty(_) || (ue[_] = []), ue[_].push(() => {
1586
+ o[l] = ae[_], ++s, s === i.length && n(o);
1587
+ }));
1588
+ }), i.length === 0 && n(o);
1589
+ };
1590
+ function Ut(e, r, t = {}) {
1591
+ var n = r.name;
1592
+ if (e || P(`type "${n}" must have a positive integer typeid pointer`), ae.hasOwnProperty(e)) {
1593
+ if (t.ignoreDuplicateRegistrations)
1594
+ return;
1595
+ P(`Cannot register type '${n}' twice`);
1596
+ }
1597
+ if (ae[e] = r, delete Ne[e], ue.hasOwnProperty(e)) {
1598
+ var o = ue[e];
1599
+ delete ue[e], o.forEach((i) => i());
1600
+ }
1601
+ }
1602
+ function x(e, r, t = {}) {
1603
+ return Ut(e, r, t);
1604
+ }
1605
+ var Ir = (e, r, t) => {
1606
+ switch (r) {
1607
+ case 1:
1608
+ return t ? (n) => R[n] : (n) => L[n];
1609
+ case 2:
1610
+ return t ? (n) => H[n >> 1] : (n) => ve[n >> 1];
1611
+ case 4:
1612
+ return t ? (n) => T[n >> 2] : (n) => g[n >> 2];
1613
+ case 8:
1614
+ return t ? (n) => X[n >> 3] : (n) => vr[n >> 3];
1615
+ default:
1616
+ throw new TypeError(`invalid integer width (${r}): ${e}`);
1617
+ }
1618
+ }, jt = (e, r, t, n, o) => {
1619
+ r = N(r);
1620
+ var i = r.indexOf("u") != -1;
1621
+ x(e, { name: r, fromWireType: (s) => s, toWireType: function(s, _) {
1622
+ if (typeof _ != "bigint" && typeof _ != "number")
1623
+ throw new TypeError(`Cannot convert "${Ie(_)}" to ${this.name}`);
1624
+ return typeof _ == "number" && (_ = BigInt(_)), _;
1625
+ }, argPackAdvance: V, readValueFromPointer: Ir(r, t, !i), destructorFunction: null });
1626
+ }, V = 8, Ht = (e, r, t, n) => {
1627
+ r = N(r), x(e, { name: r, fromWireType: function(o) {
1628
+ return !!o;
1629
+ }, toWireType: function(o, i) {
1630
+ return i ? t : n;
1631
+ }, argPackAdvance: V, readValueFromPointer: function(o) {
1632
+ return this.fromWireType(L[o]);
1633
+ }, destructorFunction: null });
1634
+ }, Vt = (e) => ({ count: e.count, deleteScheduled: e.deleteScheduled, preservePointerOnDelete: e.preservePointerOnDelete, ptr: e.ptr, ptrType: e.ptrType, smartPtr: e.smartPtr, smartPtrType: e.smartPtrType }), tr = (e) => {
1635
+ function r(t) {
1636
+ return t.$$.ptrType.registeredClass.name;
1637
+ }
1638
+ P(r(e) + " instance already deleted");
1639
+ }, nr = !1, Nr = (e) => {
1640
+ }, Kt = (e) => {
1641
+ e.smartPtr ? e.smartPtrType.rawDestructor(e.smartPtr) : e.ptrType.registeredClass.rawDestructor(e.ptr);
1642
+ }, br = (e) => {
1643
+ e.count.value -= 1;
1644
+ var r = e.count.value === 0;
1645
+ r && Kt(e);
1646
+ }, Lr = (e, r, t) => {
1647
+ if (r === t)
1648
+ return e;
1649
+ if (t.baseClass === void 0)
1650
+ return null;
1651
+ var n = Lr(e, r, t.baseClass);
1652
+ return n === null ? null : t.downcast(n);
1653
+ }, kr = {}, Xt = {}, zt = (e, r) => {
1654
+ for (r === void 0 && P("ptr should not be undefined"); e.baseClass; )
1655
+ r = e.upcast(r), e = e.baseClass;
1656
+ return r;
1657
+ }, Jt = (e, r) => (r = zt(e, r), Xt[r]), ke = (e, r) => {
1658
+ (!r.ptrType || !r.ptr) && be("makeClassHandle requires ptr and ptrType");
1659
+ var t = !!r.smartPtrType, n = !!r.smartPtr;
1660
+ return t !== n && be("Both smartPtrType and smartPtr must be specified"), r.count = { value: 1 }, De(Object.create(e, { $$: { value: r, writable: !0 } }));
1661
+ };
1662
+ function qt(e) {
1663
+ var r = this.getPointee(e);
1664
+ if (!r)
1665
+ return this.destructor(e), null;
1666
+ var t = Jt(this.registeredClass, r);
1667
+ if (t !== void 0) {
1668
+ if (t.$$.count.value === 0)
1669
+ return t.$$.ptr = r, t.$$.smartPtr = e, t.clone();
1670
+ var n = t.clone();
1671
+ return this.destructor(e), n;
1672
+ }
1673
+ function o() {
1674
+ return this.isSmartPointer ? ke(this.registeredClass.instancePrototype, { ptrType: this.pointeeType, ptr: r, smartPtrType: this, smartPtr: e }) : ke(this.registeredClass.instancePrototype, { ptrType: this, ptr: e });
1675
+ }
1676
+ var i = this.registeredClass.getActualType(r), s = kr[i];
1677
+ if (!s)
1678
+ return o.call(this);
1679
+ var _;
1680
+ this.isConst ? _ = s.constPointerType : _ = s.pointerType;
1681
+ var l = Lr(r, this.registeredClass, _.registeredClass);
1682
+ return l === null ? o.call(this) : this.isSmartPointer ? ke(_.registeredClass.instancePrototype, { ptrType: _, ptr: l, smartPtrType: this, smartPtr: e }) : ke(_.registeredClass.instancePrototype, { ptrType: _, ptr: l });
1683
+ }
1684
+ var De = (e) => typeof FinalizationRegistry > "u" ? (De = (r) => r, e) : (nr = new FinalizationRegistry((r) => {
1685
+ br(r.$$);
1686
+ }), De = (r) => {
1687
+ var t = r.$$, n = !!t.smartPtr;
1688
+ if (n) {
1689
+ var o = { $$: t };
1690
+ nr.register(r, o, r);
1691
+ }
1692
+ return r;
1693
+ }, Nr = (r) => nr.unregister(r), De(e)), Zt = () => {
1694
+ Object.assign(Fe.prototype, { isAliasOf(e) {
1695
+ if (!(this instanceof Fe) || !(e instanceof Fe))
1696
+ return !1;
1697
+ var r = this.$$.ptrType.registeredClass, t = this.$$.ptr;
1698
+ e.$$ = e.$$;
1699
+ for (var n = e.$$.ptrType.registeredClass, o = e.$$.ptr; r.baseClass; )
1700
+ t = r.upcast(t), r = r.baseClass;
1701
+ for (; n.baseClass; )
1702
+ o = n.upcast(o), n = n.baseClass;
1703
+ return r === n && t === o;
1704
+ }, clone() {
1705
+ if (this.$$.ptr || tr(this), this.$$.preservePointerOnDelete)
1706
+ return this.$$.count.value += 1, this;
1707
+ var e = De(Object.create(Object.getPrototypeOf(this), { $$: { value: Vt(this.$$) } }));
1708
+ return e.$$.count.value += 1, e.$$.deleteScheduled = !1, e;
1709
+ }, delete() {
1710
+ this.$$.ptr || tr(this), this.$$.deleteScheduled && !this.$$.preservePointerOnDelete && P("Object already scheduled for deletion"), Nr(this), br(this.$$), this.$$.preservePointerOnDelete || (this.$$.smartPtr = void 0, this.$$.ptr = void 0);
1711
+ }, isDeleted() {
1712
+ return !this.$$.ptr;
1713
+ }, deleteLater() {
1714
+ return this.$$.ptr || tr(this), this.$$.deleteScheduled && !this.$$.preservePointerOnDelete && P("Object already scheduled for deletion"), this.$$.deleteScheduled = !0, this;
1715
+ } });
1716
+ };
1717
+ function Fe() {
1718
+ }
1719
+ var ce = (e, r) => Object.defineProperty(r, "name", { value: e }), Qt = (e, r, t) => {
1720
+ if (e[r].overloadTable === void 0) {
1721
+ var n = e[r];
1722
+ e[r] = function(...o) {
1723
+ return e[r].overloadTable.hasOwnProperty(o.length) || P(`Function '${t}' called with an invalid number of arguments (${o.length}) - expects one of (${e[r].overloadTable})!`), e[r].overloadTable[o.length].apply(this, o);
1724
+ }, e[r].overloadTable = [], e[r].overloadTable[n.argCount] = n;
1725
+ }
1726
+ }, ar = (e, r, t) => {
1727
+ u.hasOwnProperty(e) ? ((t === void 0 || u[e].overloadTable !== void 0 && u[e].overloadTable[t] !== void 0) && P(`Cannot register public name '${e}' twice`), Qt(u, e, e), u[e].overloadTable.hasOwnProperty(t) && P(`Cannot register multiple overloads of a function with the same number of arguments (${t})!`), u[e].overloadTable[t] = r) : (u[e] = r, u[e].argCount = t);
1728
+ }, en = 48, rn = 57, tn = (e) => {
1729
+ e = e.replace(/[^a-zA-Z0-9_]/g, "$");
1730
+ var r = e.charCodeAt(0);
1731
+ return r >= en && r <= rn ? `_${e}` : e;
1732
+ };
1733
+ function nn(e, r, t, n, o, i, s, _) {
1734
+ this.name = e, this.constructor = r, this.instancePrototype = t, this.rawDestructor = n, this.baseClass = o, this.getActualType = i, this.upcast = s, this.downcast = _, this.pureVirtualFunctions = [];
1735
+ }
1736
+ var Me = (e, r, t) => {
1737
+ for (; r !== t; )
1738
+ r.upcast || P(`Expected null or instance of ${t.name}, got an instance of ${r.name}`), e = r.upcast(e), r = r.baseClass;
1739
+ return e;
1740
+ };
1741
+ function an(e, r) {
1742
+ if (r === null)
1743
+ return this.isReference && P(`null is not a valid ${this.name}`), 0;
1744
+ r.$$ || P(`Cannot pass "${Ie(r)}" as a ${this.name}`), r.$$.ptr || P(`Cannot pass deleted object as a pointer of type ${this.name}`);
1745
+ var t = r.$$.ptrType.registeredClass, n = Me(r.$$.ptr, t, this.registeredClass);
1746
+ return n;
1747
+ }
1748
+ function on(e, r) {
1749
+ var t;
1750
+ if (r === null)
1751
+ return this.isReference && P(`null is not a valid ${this.name}`), this.isSmartPointer ? (t = this.rawConstructor(), e !== null && e.push(this.rawDestructor, t), t) : 0;
1752
+ (!r || !r.$$) && P(`Cannot pass "${Ie(r)}" as a ${this.name}`), r.$$.ptr || P(`Cannot pass deleted object as a pointer of type ${this.name}`), !this.isConst && r.$$.ptrType.isConst && P(`Cannot convert argument of type ${r.$$.smartPtrType ? r.$$.smartPtrType.name : r.$$.ptrType.name} to parameter type ${this.name}`);
1753
+ var n = r.$$.ptrType.registeredClass;
1754
+ if (t = Me(r.$$.ptr, n, this.registeredClass), this.isSmartPointer)
1755
+ switch (r.$$.smartPtr === void 0 && P("Passing raw pointer to smart pointer is illegal"), this.sharingPolicy) {
1756
+ case 0:
1757
+ r.$$.smartPtrType === this ? t = r.$$.smartPtr : P(`Cannot convert argument of type ${r.$$.smartPtrType ? r.$$.smartPtrType.name : r.$$.ptrType.name} to parameter type ${this.name}`);
1758
+ break;
1759
+ case 1:
1760
+ t = r.$$.smartPtr;
1761
+ break;
1762
+ case 2:
1763
+ if (r.$$.smartPtrType === this)
1764
+ t = r.$$.smartPtr;
1765
+ else {
1766
+ var o = r.clone();
1767
+ t = this.rawShare(t, F.toHandle(() => o.delete())), e !== null && e.push(this.rawDestructor, t);
1768
+ }
1769
+ break;
1770
+ default:
1771
+ P("Unsupporting sharing policy");
1772
+ }
1773
+ return t;
1774
+ }
1775
+ function sn(e, r) {
1776
+ if (r === null)
1777
+ return this.isReference && P(`null is not a valid ${this.name}`), 0;
1778
+ r.$$ || P(`Cannot pass "${Ie(r)}" as a ${this.name}`), r.$$.ptr || P(`Cannot pass deleted object as a pointer of type ${this.name}`), r.$$.ptrType.isConst && P(`Cannot convert argument of type ${r.$$.ptrType.name} to parameter type ${this.name}`);
1779
+ var t = r.$$.ptrType.registeredClass, n = Me(r.$$.ptr, t, this.registeredClass);
1780
+ return n;
1781
+ }
1782
+ function $e(e) {
1783
+ return this.fromWireType(g[e >> 2]);
1784
+ }
1785
+ var _n = () => {
1786
+ Object.assign(Be.prototype, { getPointee(e) {
1787
+ return this.rawGetPointee && (e = this.rawGetPointee(e)), e;
1788
+ }, destructor(e) {
1789
+ var r;
1790
+ (r = this.rawDestructor) == null || r.call(this, e);
1791
+ }, argPackAdvance: V, readValueFromPointer: $e, fromWireType: qt });
1792
+ };
1793
+ function Be(e, r, t, n, o, i, s, _, l, c, f) {
1794
+ this.name = e, this.registeredClass = r, this.isReference = t, this.isConst = n, this.isSmartPointer = o, this.pointeeType = i, this.sharingPolicy = s, this.rawGetPointee = _, this.rawConstructor = l, this.rawShare = c, this.rawDestructor = f, !o && r.baseClass === void 0 ? n ? (this.toWireType = an, this.destructorFunction = null) : (this.toWireType = sn, this.destructorFunction = null) : this.toWireType = on;
1795
+ }
1796
+ var Fr = (e, r, t) => {
1797
+ u.hasOwnProperty(e) || be("Replacing nonexistent public symbol"), u[e].overloadTable !== void 0 && t !== void 0 ? u[e].overloadTable[t] = r : (u[e] = r, u[e].argCount = t);
1798
+ }, oe = (e, r) => {
1799
+ e = N(e);
1800
+ function t() {
1801
+ return Ar(r);
1802
+ }
1803
+ var n = t();
1804
+ return typeof n != "function" && P(`unknown function pointer with signature ${e}: ${r}`), n;
1805
+ }, ln = (e, r) => {
1806
+ var t = ce(r, function(n) {
1807
+ this.name = r, this.message = n;
1808
+ var o = new Error(n).stack;
1809
+ o !== void 0 && (this.stack = this.toString() + `
1810
+ ` + o.replace(/^Error(:[^\n]*)?\n/, ""));
1811
+ });
1812
+ return t.prototype = Object.create(e.prototype), t.prototype.constructor = t, t.prototype.toString = function() {
1813
+ return this.message === void 0 ? this.name : `${this.name}: ${this.message}`;
1814
+ }, t;
1815
+ }, Mr, $r = (e) => {
1816
+ var r = Fa(e), t = N(r);
1817
+ return Z(r), t;
1818
+ }, xe = (e, r) => {
1819
+ var t = [], n = {};
1820
+ function o(i) {
1821
+ if (!n[i] && !ae[i]) {
1822
+ if (Ne[i]) {
1823
+ Ne[i].forEach(o);
1824
+ return;
1825
+ }
1826
+ t.push(i), n[i] = !0;
1827
+ }
1828
+ }
1829
+ throw r.forEach(o), new Mr(`${e}: ` + t.map($r).join([", "]));
1830
+ }, un = (e, r, t, n, o, i, s, _, l, c, f, d, p) => {
1831
+ f = N(f), i = oe(o, i), _ && (_ = oe(s, _)), c && (c = oe(l, c)), p = oe(d, p);
1832
+ var v = tn(f);
1833
+ ar(v, function() {
1834
+ xe(`Cannot construct ${f} due to unbound types`, [n]);
1835
+ }), Le([e, r, t], n ? [n] : [], (h) => {
1836
+ var G;
1837
+ h = h[0];
1838
+ var y, W;
1839
+ n ? (y = h.registeredClass, W = y.instancePrototype) : W = Fe.prototype;
1840
+ var Y = ce(f, function(...Er) {
1841
+ if (Object.getPrototypeOf(this) !== I)
1842
+ throw new me("Use 'new' to construct " + f);
1843
+ if (O.constructor_body === void 0)
1844
+ throw new me(f + " has no accessible constructor");
1845
+ var tt = O.constructor_body[Er.length];
1846
+ if (tt === void 0)
1847
+ throw new me(`Tried to invoke ctor of ${f} with invalid number of parameters (${Er.length}) - expected (${Object.keys(O.constructor_body).toString()}) parameters instead!`);
1848
+ return tt.apply(this, Er);
1849
+ }), I = Object.create(W, { constructor: { value: Y } });
1850
+ Y.prototype = I;
1851
+ var O = new nn(f, Y, I, p, y, i, _, c);
1852
+ O.baseClass && ((G = O.baseClass).__derivedClasses ?? (G.__derivedClasses = []), O.baseClass.__derivedClasses.push(O));
1853
+ var ie = new Be(f, O, !0, !1, !1), M = new Be(f + "*", O, !1, !1, !1), J = new Be(f + " const*", O, !1, !0, !1);
1854
+ return kr[e] = { pointerType: M, constPointerType: J }, Fr(v, Y), [ie, M, J];
1855
+ });
1856
+ }, or = (e) => {
1857
+ for (; e.length; ) {
1858
+ var r = e.pop(), t = e.pop();
1859
+ t(r);
1860
+ }
1861
+ }, Br = (e, r, t) => (e instanceof Object || P(`${t} with invalid "this": ${e}`), e instanceof r.registeredClass.constructor || P(`${t} incompatible with "this" of type ${e.constructor.name}`), e.$$.ptr || P(`cannot call emscripten binding method ${t} on deleted object`), Me(e.$$.ptr, e.$$.ptrType.registeredClass, r.registeredClass)), cn = (e, r, t, n, o, i, s, _, l, c) => {
1862
+ r = N(r), o = oe(n, o), Le([], [e], (f) => {
1863
+ f = f[0];
1864
+ var d = `${f.name}.${r}`, p = { get() {
1865
+ xe(`Cannot access ${d} due to unbound types`, [t, s]);
1866
+ }, enumerable: !0, configurable: !0 };
1867
+ return l ? p.set = () => xe(`Cannot access ${d} due to unbound types`, [t, s]) : p.set = (v) => P(d + " is a read-only property"), Object.defineProperty(f.registeredClass.instancePrototype, r, p), Le([], l ? [t, s] : [t], (v) => {
1868
+ var h = v[0], y = { get() {
1869
+ var Y = Br(this, f, d + " getter");
1870
+ return h.fromWireType(o(i, Y));
1871
+ }, enumerable: !0 };
1872
+ if (l) {
1873
+ l = oe(_, l);
1874
+ var W = v[1];
1875
+ y.set = function(Y) {
1876
+ var I = Br(this, f, d + " setter"), O = [];
1877
+ l(c, I, W.toWireType(O, Y)), or(O);
1878
+ };
1879
+ }
1880
+ return Object.defineProperty(f.registeredClass.instancePrototype, r, y), [];
1881
+ }), [];
1882
+ });
1883
+ }, ir = [], z = [], sr = (e) => {
1884
+ e > 9 && --z[e + 1] === 0 && (z[e] = void 0, ir.push(e));
1885
+ }, fn = () => z.length / 2 - 5 - ir.length, En = () => {
1886
+ z.push(0, 1, void 0, 1, null, 1, !0, 1, !1, 1), u.count_emval_handles = fn;
1887
+ }, F = { toValue: (e) => (e || P("Cannot use deleted val. handle = " + e), z[e]), toHandle: (e) => {
1888
+ switch (e) {
1889
+ case void 0:
1890
+ return 2;
1891
+ case null:
1892
+ return 4;
1893
+ case !0:
1894
+ return 6;
1895
+ case !1:
1896
+ return 8;
1897
+ default: {
1898
+ const r = ir.pop() || z.length;
1899
+ return z[r] = e, z[r + 1] = 1, r;
1900
+ }
1901
+ }
1902
+ } }, dn = { name: "emscripten::val", fromWireType: (e) => {
1903
+ var r = F.toValue(e);
1904
+ return sr(e), r;
1905
+ }, toWireType: (e, r) => F.toHandle(r), argPackAdvance: V, readValueFromPointer: $e, destructorFunction: null }, vn = (e) => x(e, dn), Tn = (e, r, t) => {
1906
+ switch (r) {
1907
+ case 1:
1908
+ return t ? function(n) {
1909
+ return this.fromWireType(R[n]);
1910
+ } : function(n) {
1911
+ return this.fromWireType(L[n]);
1912
+ };
1913
+ case 2:
1914
+ return t ? function(n) {
1915
+ return this.fromWireType(H[n >> 1]);
1916
+ } : function(n) {
1917
+ return this.fromWireType(ve[n >> 1]);
1918
+ };
1919
+ case 4:
1920
+ return t ? function(n) {
1921
+ return this.fromWireType(T[n >> 2]);
1922
+ } : function(n) {
1923
+ return this.fromWireType(g[n >> 2]);
1924
+ };
1925
+ default:
1926
+ throw new TypeError(`invalid integer width (${r}): ${e}`);
1927
+ }
1928
+ }, hn = (e, r, t, n) => {
1929
+ r = N(r);
1930
+ function o() {
1931
+ }
1932
+ o.values = {}, x(e, { name: r, constructor: o, fromWireType: function(i) {
1933
+ return this.constructor.values[i];
1934
+ }, toWireType: (i, s) => s.value, argPackAdvance: V, readValueFromPointer: Tn(r, t, n), destructorFunction: null }), ar(r, o);
1935
+ }, _r = (e, r) => {
1936
+ var t = ae[e];
1937
+ return t === void 0 && P(`${r} has unknown type ${$r(e)}`), t;
1938
+ }, pn = (e, r, t) => {
1939
+ var n = _r(e, "enum");
1940
+ r = N(r);
1941
+ var o = n.constructor, i = Object.create(n.constructor.prototype, { value: { value: t }, constructor: { value: ce(`${n.name}_${r}`, function() {
1942
+ }) } });
1943
+ o.values[t] = i, o[r] = i;
1944
+ }, mn = (e, r) => {
1945
+ switch (r) {
1946
+ case 4:
1947
+ return function(t) {
1948
+ return this.fromWireType(Xe[t >> 2]);
1949
+ };
1950
+ case 8:
1951
+ return function(t) {
1952
+ return this.fromWireType(ze[t >> 3]);
1953
+ };
1954
+ default:
1955
+ throw new TypeError(`invalid float width (${r}): ${e}`);
1956
+ }
1957
+ }, Dn = (e, r, t) => {
1958
+ r = N(r), x(e, { name: r, fromWireType: (n) => n, toWireType: (n, o) => o, argPackAdvance: V, readValueFromPointer: mn(r, t), destructorFunction: null });
1959
+ };
1960
+ function xr(e) {
1961
+ for (var r = 1; r < e.length; ++r)
1962
+ if (e[r] !== null && e[r].destructorFunction === void 0)
1963
+ return !0;
1964
+ return !1;
1965
+ }
1966
+ function Ur(e, r) {
1967
+ if (!(e instanceof Function))
1968
+ throw new TypeError(`new_ called with constructor type ${typeof e} which is not a function`);
1969
+ var t = ce(e.name || "unknownFunctionName", function() {
1970
+ });
1971
+ t.prototype = e.prototype;
1972
+ var n = new t(), o = e.apply(n, r);
1973
+ return o instanceof Object ? o : n;
1974
+ }
1975
+ function Pn(e, r, t, n) {
1976
+ for (var o = xr(e), i = e.length - 2, s = [], _ = ["fn"], l = 0; l < i; ++l)
1977
+ s.push(`arg${l}`), _.push(`arg${l}Wired`);
1978
+ s = s.join(","), _ = _.join(",");
1979
+ var c = `return function (${s}) {
1980
+ `;
1981
+ o && (c += `var destructors = [];
1982
+ `);
1983
+ for (var f = o ? "destructors" : "null", d = ["humanName", "throwBindingError", "invoker", "fn", "runDestructors", "retType", "classParam"], l = 0; l < i; ++l)
1984
+ c += `var arg${l}Wired = argType${l}['toWireType'](${f}, arg${l});
1985
+ `, d.push(`argType${l}`);
1986
+ if (c += (t || n ? "var rv = " : "") + `invoker(${_});
1987
+ `, o)
1988
+ c += `runDestructors(destructors);
1989
+ `;
1990
+ else
1991
+ for (var l = 2; l < e.length; ++l) {
1992
+ var p = l === 1 ? "thisWired" : "arg" + (l - 2) + "Wired";
1993
+ e[l].destructorFunction !== null && (c += `${p}_dtor(${p});
1994
+ `, d.push(`${p}_dtor`));
1995
+ }
1996
+ return t && (c += `var ret = retType['fromWireType'](rv);
1997
+ return ret;
1998
+ `), c += `}
1999
+ `, [d, c];
2000
+ }
2001
+ function gn(e, r, t, n, o, i) {
2002
+ var s = r.length;
2003
+ s < 2 && P("argTypes array size mismatch! Must at least get return value and 'this' types!");
2004
+ for (var _ = r[1] !== null && t !== null, l = xr(r), c = r[0].name !== "void", f = [e, P, n, o, or, r[0], r[1]], d = 0; d < s - 2; ++d)
2005
+ f.push(r[d + 2]);
2006
+ if (!l)
2007
+ for (var d = 2; d < r.length; ++d)
2008
+ r[d].destructorFunction !== null && f.push(r[d].destructorFunction);
2009
+ let [p, v] = Pn(r, _, c, i);
2010
+ p.push(v);
2011
+ var h = Ur(Function, p)(...f);
2012
+ return ce(e, h);
2013
+ }
2014
+ var wn = (e, r) => {
2015
+ for (var t = [], n = 0; n < e; n++)
2016
+ t.push(g[r + n * 4 >> 2]);
2017
+ return t;
2018
+ }, yn = (e) => {
2019
+ e = e.trim();
2020
+ const r = e.indexOf("(");
2021
+ return r === -1 ? e : e.slice(0, r);
2022
+ }, An = (e, r, t, n, o, i, s, _) => {
2023
+ var l = wn(r, t);
2024
+ e = N(e), e = yn(e), o = oe(n, o), ar(e, function() {
2025
+ xe(`Cannot call ${e} due to unbound types`, l);
2026
+ }, r - 1), Le([], l, (c) => {
2027
+ var f = [c[0], null].concat(c.slice(1));
2028
+ return Fr(e, gn(e, f, null, o, i, s), r - 1), [];
2029
+ });
2030
+ }, On = (e, r, t, n, o) => {
2031
+ r = N(r);
2032
+ var i = (f) => f;
2033
+ if (n === 0) {
2034
+ var s = 32 - 8 * t;
2035
+ i = (f) => f << s >>> s;
2036
+ }
2037
+ var _ = r.includes("unsigned"), l = (f, d) => {
2038
+ }, c;
2039
+ _ ? c = function(f, d) {
2040
+ return l(d, this.name), d >>> 0;
2041
+ } : c = function(f, d) {
2042
+ return l(d, this.name), d;
2043
+ }, x(e, { name: r, fromWireType: i, toWireType: c, argPackAdvance: V, readValueFromPointer: Ir(r, t, n !== 0), destructorFunction: null });
2044
+ }, Cn = (e, r, t) => {
2045
+ var n = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array, BigInt64Array, BigUint64Array], o = n[r];
2046
+ function i(s) {
2047
+ var _ = g[s >> 2], l = g[s + 4 >> 2];
2048
+ return new o(R.buffer, l, _);
2049
+ }
2050
+ t = N(t), x(e, { name: t, fromWireType: i, argPackAdvance: V, readValueFromPointer: i }, { ignoreDuplicateRegistrations: !0 });
2051
+ }, q = (e, r, t) => er(e, L, r, t), Yn = (e, r) => {
2052
+ r = N(r), x(e, { name: r, fromWireType(t) {
2053
+ for (var n = g[t >> 2], o = t + 4, i, s, _ = o, s = 0; s <= n; ++s) {
2054
+ var l = o + s;
2055
+ if (s == n || L[l] == 0) {
2056
+ var c = l - _, f = te(_, c);
2057
+ i === void 0 ? i = f : (i += "\0", i += f), _ = l + 1;
2058
+ }
2059
+ }
2060
+ return Z(t), i;
2061
+ }, toWireType(t, n) {
2062
+ n instanceof ArrayBuffer && (n = new Uint8Array(n));
2063
+ var o, i = typeof n == "string";
2064
+ i || n instanceof Uint8Array || n instanceof Uint8ClampedArray || n instanceof Int8Array || P("Cannot pass non-string to std::string"), i ? o = pe(n) : o = n.length;
2065
+ var s = cr(4 + o + 1), _ = s + 4;
2066
+ if (g[s >> 2] = o, i)
2067
+ q(n, _, o + 1);
2068
+ else if (i)
2069
+ for (var l = 0; l < o; ++l) {
2070
+ var c = n.charCodeAt(l);
2071
+ c > 255 && (Z(s), P("String has UTF-16 code units that do not fit in 8 bits")), L[_ + l] = c;
2072
+ }
2073
+ else
2074
+ for (var l = 0; l < o; ++l)
2075
+ L[_ + l] = n[l];
2076
+ return t !== null && t.push(Z, s), s;
2077
+ }, argPackAdvance: V, readValueFromPointer: $e, destructorFunction(t) {
2078
+ Z(t);
2079
+ } });
2080
+ }, jr = typeof TextDecoder < "u" ? new TextDecoder("utf-16le") : void 0, Rn = (e, r) => {
2081
+ for (var t = e, n = t >> 1, o = n + r / 2; !(n >= o) && ve[n]; ) ++n;
2082
+ if (t = n << 1, t - e > 32 && jr) return jr.decode(L.subarray(e, t));
2083
+ for (var i = "", s = 0; !(s >= r / 2); ++s) {
2084
+ var _ = H[e + s * 2 >> 1];
2085
+ if (_ == 0) break;
2086
+ i += String.fromCharCode(_);
2087
+ }
2088
+ return i;
2089
+ }, Sn = (e, r, t) => {
2090
+ if (t ?? (t = 2147483647), t < 2) return 0;
2091
+ t -= 2;
2092
+ for (var n = r, o = t < e.length * 2 ? t / 2 : e.length, i = 0; i < o; ++i) {
2093
+ var s = e.charCodeAt(i);
2094
+ H[r >> 1] = s, r += 2;
2095
+ }
2096
+ return H[r >> 1] = 0, r - n;
2097
+ }, Gn = (e) => e.length * 2, Wn = (e, r) => {
2098
+ for (var t = 0, n = ""; !(t >= r / 4); ) {
2099
+ var o = T[e + t * 4 >> 2];
2100
+ if (o == 0) break;
2101
+ if (++t, o >= 65536) {
2102
+ var i = o - 65536;
2103
+ n += String.fromCharCode(55296 | i >> 10, 56320 | i & 1023);
2104
+ } else
2105
+ n += String.fromCharCode(o);
2106
+ }
2107
+ return n;
2108
+ }, In = (e, r, t) => {
2109
+ if (t ?? (t = 2147483647), t < 4) return 0;
2110
+ for (var n = r, o = n + t - 4, i = 0; i < e.length; ++i) {
2111
+ var s = e.charCodeAt(i);
2112
+ if (s >= 55296 && s <= 57343) {
2113
+ var _ = e.charCodeAt(++i);
2114
+ s = 65536 + ((s & 1023) << 10) | _ & 1023;
2115
+ }
2116
+ if (T[r >> 2] = s, r += 4, r + 4 > o) break;
2117
+ }
2118
+ return T[r >> 2] = 0, r - n;
2119
+ }, Nn = (e) => {
2120
+ for (var r = 0, t = 0; t < e.length; ++t) {
2121
+ var n = e.charCodeAt(t);
2122
+ n >= 55296 && n <= 57343 && ++t, r += 4;
2123
+ }
2124
+ return r;
2125
+ }, bn = (e, r, t) => {
2126
+ t = N(t);
2127
+ var n, o, i, s;
2128
+ r === 2 ? (n = Rn, o = Sn, s = Gn, i = (_) => ve[_ >> 1]) : r === 4 && (n = Wn, o = In, s = Nn, i = (_) => g[_ >> 2]), x(e, { name: t, fromWireType: (_) => {
2129
+ for (var l = g[_ >> 2], c, f = _ + 4, d = 0; d <= l; ++d) {
2130
+ var p = _ + 4 + d * r;
2131
+ if (d == l || i(p) == 0) {
2132
+ var v = p - f, h = n(f, v);
2133
+ c === void 0 ? c = h : (c += "\0", c += h), f = p + r;
2134
+ }
2135
+ }
2136
+ return Z(_), c;
2137
+ }, toWireType: (_, l) => {
2138
+ typeof l != "string" && P(`Cannot pass non-string to C++ string type ${t}`);
2139
+ var c = s(l), f = cr(4 + c + r);
2140
+ return g[f >> 2] = c / r, o(l, f + 4, c + r), _ !== null && _.push(Z, f), f;
2141
+ }, argPackAdvance: V, readValueFromPointer: $e, destructorFunction(_) {
2142
+ Z(_);
2143
+ } });
2144
+ }, Ln = (e, r) => {
2145
+ r = N(r), x(e, { isVoid: !0, name: r, argPackAdvance: 0, fromWireType: () => {
2146
+ }, toWireType: (t, n) => {
2147
+ } });
2148
+ }, Hr = () => je || "./this.program", kn = (e, r) => q(Hr(), e, r), Vr = 0, Fn = () => {
2149
+ gr = !1, Vr = 0;
2150
+ }, Mn = {}, Kr = (e) => {
2151
+ var r = Mn[e];
2152
+ return r === void 0 ? N(e) : r;
2153
+ }, lr = [], $n = (e, r, t, n, o) => (e = lr[e], r = F.toValue(r), t = Kr(t), e(r, r[t], n, o)), Bn = (e) => {
2154
+ var r = lr.length;
2155
+ return lr.push(e), r;
2156
+ }, xn = (e, r) => {
2157
+ for (var t = new Array(e), n = 0; n < e; ++n)
2158
+ t[n] = _r(g[r + n * 4 >> 2], "parameter " + n);
2159
+ return t;
2160
+ }, Un = (e, r, t) => {
2161
+ var n = [], o = e.toWireType(n, t);
2162
+ return n.length && (g[r >> 2] = F.toHandle(n)), o;
2163
+ }, jn = (e, r, t) => {
2164
+ var n = xn(e, r), o = n.shift();
2165
+ e--;
2166
+ var i = `return function (obj, func, destructorsRef, args) {
2167
+ `, s = 0, _ = [];
2168
+ t === 0 && _.push("obj");
2169
+ for (var l = ["retType"], c = [o], f = 0; f < e; ++f)
2170
+ _.push("arg" + f), l.push("argType" + f), c.push(n[f]), i += ` var arg${f} = argType${f}.readValueFromPointer(args${s ? "+" + s : ""});
2171
+ `, s += n[f].argPackAdvance;
2172
+ var d = t === 1 ? "new func" : "func.call";
2173
+ i += ` var rv = ${d}(${_.join(", ")});
2174
+ `, o.isVoid || (l.push("emval_returnValue"), c.push(Un), i += ` return emval_returnValue(retType, destructorsRef, rv);
2175
+ `), i += `};
2176
+ `, l.push(i);
2177
+ var p = Ur(Function, l)(...c), v = `methodCaller<(${n.map((h) => h.name).join(", ")}) => ${o.name}>`;
2178
+ return Bn(ce(v, p));
2179
+ }, Hn = (e) => {
2180
+ e > 9 && (z[e + 1] += 1);
2181
+ }, Vn = () => F.toHandle([]), Kn = (e) => F.toHandle(Kr(e)), Xn = () => F.toHandle({}), zn = (e) => {
2182
+ var r = F.toValue(e);
2183
+ or(r), sr(e);
2184
+ }, Jn = (e, r, t) => {
2185
+ e = F.toValue(e), r = F.toValue(r), t = F.toValue(t), e[r] = t;
2186
+ }, qn = (e, r) => {
2187
+ e = _r(e, "_emval_take_value");
2188
+ var t = e.readValueFromPointer(r);
2189
+ return F.toHandle(t);
2190
+ }, Zn = 9007199254740992, Qn = -9007199254740992, ur = (e) => e < Qn || e > Zn ? NaN : Number(e);
2191
+ function ea(e, r) {
2192
+ e = ur(e);
2193
+ var t = new Date(e * 1e3);
2194
+ T[r >> 2] = t.getUTCSeconds(), T[r + 4 >> 2] = t.getUTCMinutes(), T[r + 8 >> 2] = t.getUTCHours(), T[r + 12 >> 2] = t.getUTCDate(), T[r + 16 >> 2] = t.getUTCMonth(), T[r + 20 >> 2] = t.getUTCFullYear() - 1900, T[r + 24 >> 2] = t.getUTCDay();
2195
+ var n = Date.UTC(t.getUTCFullYear(), 0, 1, 0, 0, 0, 0), o = (t.getTime() - n) / (1e3 * 60 * 60 * 24) | 0;
2196
+ T[r + 28 >> 2] = o;
2197
+ }
2198
+ var ra = (e) => e % 4 === 0 && (e % 100 !== 0 || e % 400 === 0), ta = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335], na = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334], Xr = (e) => {
2199
+ var r = ra(e.getFullYear()), t = r ? ta : na, n = t[e.getMonth()] + e.getDate() - 1;
2200
+ return n;
2201
+ };
2202
+ function aa(e, r) {
2203
+ e = ur(e);
2204
+ var t = new Date(e * 1e3);
2205
+ T[r >> 2] = t.getSeconds(), T[r + 4 >> 2] = t.getMinutes(), T[r + 8 >> 2] = t.getHours(), T[r + 12 >> 2] = t.getDate(), T[r + 16 >> 2] = t.getMonth(), T[r + 20 >> 2] = t.getFullYear() - 1900, T[r + 24 >> 2] = t.getDay();
2206
+ var n = Xr(t) | 0;
2207
+ T[r + 28 >> 2] = n, T[r + 36 >> 2] = -(t.getTimezoneOffset() * 60);
2208
+ var o = new Date(t.getFullYear(), 0, 1), i = new Date(t.getFullYear(), 6, 1).getTimezoneOffset(), s = o.getTimezoneOffset(), _ = (i != s && t.getTimezoneOffset() == Math.min(s, i)) | 0;
2209
+ T[r + 32 >> 2] = _;
2210
+ }
2211
+ var oa = function(e) {
2212
+ var r = (() => {
2213
+ var t = new Date(T[e + 20 >> 2] + 1900, T[e + 16 >> 2], T[e + 12 >> 2], T[e + 8 >> 2], T[e + 4 >> 2], T[e >> 2], 0), n = T[e + 32 >> 2], o = t.getTimezoneOffset(), i = new Date(t.getFullYear(), 0, 1), s = new Date(t.getFullYear(), 6, 1).getTimezoneOffset(), _ = i.getTimezoneOffset(), l = Math.min(_, s);
2214
+ if (n < 0)
2215
+ T[e + 32 >> 2] = +(s != _ && l == o);
2216
+ else if (n > 0 != (l == o)) {
2217
+ var c = Math.max(_, s), f = n > 0 ? l : c;
2218
+ t.setTime(t.getTime() + (f - o) * 6e4);
2219
+ }
2220
+ T[e + 24 >> 2] = t.getDay();
2221
+ var d = Xr(t) | 0;
2222
+ T[e + 28 >> 2] = d, T[e >> 2] = t.getSeconds(), T[e + 4 >> 2] = t.getMinutes(), T[e + 8 >> 2] = t.getHours(), T[e + 12 >> 2] = t.getDate(), T[e + 16 >> 2] = t.getMonth(), T[e + 20 >> 2] = t.getYear();
2223
+ var p = t.getTime();
2224
+ return isNaN(p) ? -1 : p / 1e3;
2225
+ })();
2226
+ return BigInt(r);
2227
+ }, Pe = {}, zr = (e) => {
2228
+ if (e instanceof pr || e == "unwind")
2229
+ return Ye;
2230
+ He(1, e);
2231
+ }, Jr = () => gr || Vr > 0, qr = (e) => {
2232
+ var r;
2233
+ Ye = e, Jr() || ((r = u.onExit) == null || r.call(u, e), Ce = !0), He(e, new pr(e));
2234
+ }, ia = (e, r) => {
2235
+ Ye = e, qr(e);
2236
+ }, sa = ia, _a = () => {
2237
+ if (!Jr())
2238
+ try {
2239
+ sa(Ye);
2240
+ } catch (e) {
2241
+ zr(e);
2242
+ }
2243
+ }, la = (e) => {
2244
+ if (!Ce)
2245
+ try {
2246
+ e(), _a();
2247
+ } catch (r) {
2248
+ zr(r);
2249
+ }
2250
+ }, ua = () => performance.now(), ca = (e, r) => {
2251
+ if (Pe[e] && (clearTimeout(Pe[e].id), delete Pe[e]), !r) return 0;
2252
+ var t = setTimeout(() => {
2253
+ delete Pe[e], la(() => Ma(e, ua()));
2254
+ }, r);
2255
+ return Pe[e] = { id: t, timeout_ms: r }, 0;
2256
+ }, fa = (e, r, t, n) => {
2257
+ var o = (/* @__PURE__ */ new Date()).getFullYear(), i = new Date(o, 0, 1), s = new Date(o, 6, 1), _ = i.getTimezoneOffset(), l = s.getTimezoneOffset(), c = Math.max(_, l);
2258
+ g[e >> 2] = c * 60, T[r >> 2] = +(_ != l);
2259
+ var f = (v) => {
2260
+ var h = v >= 0 ? "-" : "+", y = Math.abs(v), W = String(Math.floor(y / 60)).padStart(2, "0"), Y = String(y % 60).padStart(2, "0");
2261
+ return `UTC${h}${W}${Y}`;
2262
+ }, d = f(_), p = f(l);
2263
+ l < _ ? (q(d, t, 17), q(p, n, 17)) : (q(d, n, 17), q(p, t, 17));
2264
+ }, Ea = () => Date.now(), da = () => 2147483648, va = (e) => {
2265
+ var r = Oe.buffer, t = (e - r.byteLength + 65535) / 65536 | 0;
2266
+ try {
2267
+ return Oe.grow(t), Tr(), 1;
2268
+ } catch {
2269
+ }
2270
+ }, Ta = (e) => {
2271
+ var r = L.length;
2272
+ e >>>= 0;
2273
+ var t = da();
2274
+ if (e > t)
2275
+ return !1;
2276
+ for (var n = 1; n <= 4; n *= 2) {
2277
+ var o = r * (1 + 0.2 / n);
2278
+ o = Math.min(o, e + 100663296);
2279
+ var i = Math.min(t, Rr(Math.max(e, o), 65536)), s = va(i);
2280
+ if (s)
2281
+ return !0;
2282
+ }
2283
+ return !1;
2284
+ }, Ue = {}, ge = () => {
2285
+ if (!ge.strings) {
2286
+ var e = (typeof navigator == "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8", r = { USER: "web_user", LOGNAME: "web_user", PATH: "/", PWD: "/", HOME: "/home/web_user", LANG: e, _: Hr() };
2287
+ for (var t in Ue)
2288
+ Ue[t] === void 0 ? delete r[t] : r[t] = Ue[t];
2289
+ var n = [];
2290
+ for (var t in r)
2291
+ n.push(`${t}=${r[t]}`);
2292
+ ge.strings = n;
2293
+ }
2294
+ return ge.strings;
2295
+ }, ha = (e, r) => {
2296
+ for (var t = 0; t < e.length; ++t)
2297
+ R[r++] = e.charCodeAt(t);
2298
+ R[r] = 0;
2299
+ }, pa = (e, r) => {
2300
+ var t = 0;
2301
+ return ge().forEach((n, o) => {
2302
+ var i = r + t;
2303
+ g[e + o * 4 >> 2] = i, ha(n, i), t += n.length + 1;
2304
+ }), 0;
2305
+ }, ma = (e, r) => {
2306
+ var t = ge();
2307
+ g[e >> 2] = t.length;
2308
+ var n = 0;
2309
+ return t.forEach((o) => n += o.length + 1), g[r >> 2] = n, 0;
2310
+ };
2311
+ function Da(e) {
2312
+ try {
2313
+ var r = C.getStreamFromFD(e);
2314
+ return a.close(r), 0;
2315
+ } catch (t) {
2316
+ if (typeof a > "u" || t.name !== "ErrnoError") throw t;
2317
+ return t.errno;
2318
+ }
2319
+ }
2320
+ var Pa = (e, r, t, n) => {
2321
+ for (var o = 0, i = 0; i < t; i++) {
2322
+ var s = g[r >> 2], _ = g[r + 4 >> 2];
2323
+ r += 8;
2324
+ var l = a.read(e, R, s, _, n);
2325
+ if (l < 0) return -1;
2326
+ if (o += l, l < _) break;
2327
+ }
2328
+ return o;
2329
+ };
2330
+ function ga(e, r, t, n) {
2331
+ try {
2332
+ var o = C.getStreamFromFD(e), i = Pa(o, r, t);
2333
+ return g[n >> 2] = i, 0;
2334
+ } catch (s) {
2335
+ if (typeof a > "u" || s.name !== "ErrnoError") throw s;
2336
+ return s.errno;
2337
+ }
2338
+ }
2339
+ function wa(e, r, t, n) {
2340
+ r = ur(r);
2341
+ try {
2342
+ if (isNaN(r)) return 61;
2343
+ var o = C.getStreamFromFD(e);
2344
+ return a.llseek(o, r, t), X[n >> 3] = BigInt(o.position), o.getdents && r === 0 && t === 0 && (o.getdents = null), 0;
2345
+ } catch (i) {
2346
+ if (typeof a > "u" || i.name !== "ErrnoError") throw i;
2347
+ return i.errno;
2348
+ }
2349
+ }
2350
+ var ya = (e, r, t, n) => {
2351
+ for (var o = 0, i = 0; i < t; i++) {
2352
+ var s = g[r >> 2], _ = g[r + 4 >> 2];
2353
+ r += 8;
2354
+ var l = a.write(e, R, s, _, n);
2355
+ if (l < 0) return -1;
2356
+ if (o += l, l < _)
2357
+ break;
2358
+ }
2359
+ return o;
2360
+ };
2361
+ function Aa(e, r, t, n) {
2362
+ try {
2363
+ var o = C.getStreamFromFD(e), i = ya(o, r, t);
2364
+ return g[n >> 2] = i, 0;
2365
+ } catch (s) {
2366
+ if (typeof a > "u" || s.name !== "ErrnoError") throw s;
2367
+ return s.errno;
2368
+ }
2369
+ }
2370
+ var Zr = (e) => {
2371
+ var r = u["_" + e];
2372
+ return r;
2373
+ }, Oa = (e, r) => {
2374
+ R.set(e, r);
2375
+ }, Qr = (e) => ja(e), Ca = (e) => {
2376
+ var r = pe(e) + 1, t = Qr(r);
2377
+ return q(e, t, r), t;
2378
+ }, et = (e, r, t, n, o) => {
2379
+ var i = { string: (h) => {
2380
+ var y = 0;
2381
+ return h != null && h !== 0 && (y = Ca(h)), y;
2382
+ }, array: (h) => {
2383
+ var y = Qr(h.length);
2384
+ return Oa(h, y), y;
2385
+ } };
2386
+ function s(h) {
2387
+ return r === "string" ? te(h) : r === "boolean" ? !!h : h;
2388
+ }
2389
+ var _ = Zr(e), l = [], c = 0;
2390
+ if (n)
2391
+ for (var f = 0; f < n.length; f++) {
2392
+ var d = i[t[f]];
2393
+ d ? (c === 0 && (c = Pt()), l[f] = d(n[f])) : l[f] = n[f];
2394
+ }
2395
+ var p = _(...l);
2396
+ function v(h) {
2397
+ return c !== 0 && Dt(c), s(h);
2398
+ }
2399
+ return p = v(p), p;
2400
+ }, Ya = (e, r, t, n) => {
2401
+ var o = !t || t.every((s) => s === "number" || s === "boolean"), i = r !== "string";
2402
+ return i && o && !n ? Zr(e) : (...s) => et(e, r, t, s);
2403
+ }, Ra = (e) => {
2404
+ var r = pe(e) + 1, t = cr(r);
2405
+ return t && q(e, t, r), t;
2406
+ }, Sa = (e) => Ba(e), Ga = Sa;
2407
+ u._setTempRet0 = Ga;
2408
+ var Wa = (e) => xa(), Ia = Wa;
2409
+ u._getTempRet0 = Ia;
2410
+ var Na = () => Ze;
2411
+ u.___cxa_uncaught_exceptions = Na;
2412
+ var fe = [], ba = () => {
2413
+ if (!fe.length)
2414
+ return 0;
2415
+ var e = fe[fe.length - 1];
2416
+ return Va(e.excPtr), e.excPtr;
2417
+ };
2418
+ u.___cxa_current_primary_exception = ba;
2419
+ var La = () => {
2420
+ var e = fe.pop();
2421
+ e || he("no exception to throw");
2422
+ var r = e.excPtr;
2423
+ throw e.get_rethrown() || (fe.push(e), e.set_rethrown(!0), e.set_caught(!1), Ze++), Ge = r, Ge;
2424
+ }, ka = (e) => {
2425
+ if (e) {
2426
+ var r = new Or(e);
2427
+ fe.push(r), r.set_rethrown(!0), La();
2428
+ }
2429
+ };
2430
+ u.___cxa_rethrow_primary_exception = ka, a.createPreloadedFile = Wt, a.staticInit(), D.doesNotExistError = new a.ErrnoError(44), D.doesNotExistError.stack = "<generic error, no stack>", xt(), me = u.BindingError = class extends Error {
2431
+ constructor(r) {
2432
+ super(r), this.name = "BindingError";
2433
+ }
2434
+ }, Wr = u.InternalError = class extends Error {
2435
+ constructor(r) {
2436
+ super(r), this.name = "InternalError";
2437
+ }
2438
+ }, Zt(), _n(), Mr = u.UnboundTypeError = ln(Error, "UnboundTypeError"), En();
2439
+ var rt = { __assert_fail: gt, __call_sighandler: wt, __cxa_throw: yt, __syscall_fcntl64: Nt, __syscall_fstat64: bt, __syscall_ioctl: Lt, __syscall_lstat64: kt, __syscall_newfstatat: Ft, __syscall_openat: Mt, __syscall_stat64: $t, _abort_js: Bt, _embind_register_bigint: jt, _embind_register_bool: Ht, _embind_register_class: un, _embind_register_class_property: cn, _embind_register_emval: vn, _embind_register_enum: hn, _embind_register_enum_value: pn, _embind_register_float: Dn, _embind_register_function: An, _embind_register_integer: On, _embind_register_memory_view: Cn, _embind_register_std_string: Yn, _embind_register_std_wstring: bn, _embind_register_void: Ln, _emscripten_get_progname: kn, _emscripten_runtime_keepalive_clear: Fn, _emval_call_method: $n, _emval_decref: sr, _emval_get_method_caller: jn, _emval_incref: Hn, _emval_new_array: Vn, _emval_new_cstring: Kn, _emval_new_object: Xn, _emval_run_destructors: zn, _emval_set_property: Jn, _emval_take_value: qn, _gmtime_js: ea, _localtime_js: aa, _mktime_js: oa, _setitimer_js: ca, _tzset_js: fa, emscripten_date_now: Ea, emscripten_resize_heap: Ta, environ_get: pa, environ_sizes_get: ma, fd_close: Da, fd_read: ga, fd_seek: wa, fd_write: Aa, proc_exit: qr }, w = await Tt();
2440
+ w.__wasm_call_ctors;
2441
+ var cr = w.malloc, Z = w.free;
2442
+ w.memcmp, w.calloc, w.realloc, w.__errno_location, w.fileno;
2443
+ var Fa = w.__getTypeName;
2444
+ w._emval_coro_resume, w.memcpy, w.htonl, w.htons, w.ntohs;
2445
+ var Ma = w._emscripten_timeout;
2446
+ w.strerror;
2447
+ var $a = w.emscripten_builtin_memalign;
2448
+ w.setThrew;
2449
+ var Ba = w._emscripten_tempret_set, xa = w._emscripten_tempret_get, Ua = w._emscripten_stack_restore, ja = w._emscripten_stack_alloc, Ha = w.emscripten_stack_get_current;
2450
+ w.__cxa_decrement_exception_refcount;
2451
+ var Va = w.__cxa_increment_exception_refcount;
2452
+ w.__cxa_demangle, w.__cxa_can_catch, w.__cxa_get_exception_ptr, u.ENV = Ue, u.ccall = et, u.cwrap = Ya, u.setValue = mt, u.UTF8ToString = te, u.stringToNewUTF8 = Ra, u.FS = a;
2453
+ function fr() {
2454
+ if (re > 0) {
2455
+ Te = fr;
2456
+ return;
2457
+ }
2458
+ if (st(), re > 0) {
2459
+ Te = fr;
2460
+ return;
2461
+ }
2462
+ function e() {
2463
+ var r;
2464
+ u.calledRun = !0, !Ce && (_t(), S(u), (r = u.onRuntimeInitialized) == null || r.call(u), lt());
2465
+ }
2466
+ u.setStatus ? (u.setStatus("Running..."), setTimeout(() => {
2467
+ setTimeout(() => u.setStatus(""), 1), e();
2468
+ }, 1)) : e();
2469
+ }
2470
+ if (u.preInit)
2471
+ for (typeof u.preInit == "function" && (u.preInit = [u.preInit]); u.preInit.length > 0; )
2472
+ u.preInit.pop()();
2473
+ return fr(), m = K, m;
2474
+ };
2475
+ })();
2476
+ const eo = Object.freeze({
2477
+ DWG_SUPERTYPE_ENTITY: 0,
2478
+ DWG_SUPERTYPE_OBJECT: 1
2479
+ }), b = Object.freeze({
2480
+ DWG_TYPE_UNUSED: 0,
2481
+ DWG_TYPE_TEXT: 1,
2482
+ DWG_TYPE_ATTRIB: 2,
2483
+ DWG_TYPE_ATTDEF: 3,
2484
+ DWG_TYPE_BLOCK: 4,
2485
+ DWG_TYPE_ENDBLK: 5,
2486
+ DWG_TYPE_SEQEND: 6,
2487
+ DWG_TYPE_INSERT: 7,
2488
+ DWG_TYPE_MINSERT: 8,
2489
+ // DWG_TYPE_TRACE_old: 0x09, /* old TRACE r10-r11 only */
2490
+ DWG_TYPE_VERTEX_2D: 10,
2491
+ DWG_TYPE_VERTEX_3D: 11,
2492
+ DWG_TYPE_VERTEX_MESH: 12,
2493
+ DWG_TYPE_VERTEX_PFACE: 13,
2494
+ DWG_TYPE_VERTEX_PFACE_FACE: 14,
2495
+ DWG_TYPE_POLYLINE_2D: 15,
2496
+ DWG_TYPE_POLYLINE_3D: 16,
2497
+ DWG_TYPE_ARC: 17,
2498
+ DWG_TYPE_CIRCLE: 18,
2499
+ DWG_TYPE_LINE: 19,
2500
+ DWG_TYPE_DIMENSION_ORDINATE: 20,
2501
+ DWG_TYPE_DIMENSION_LINEAR: 21,
2502
+ DWG_TYPE_DIMENSION_ALIGNED: 22,
2503
+ DWG_TYPE_DIMENSION_ANG3PT: 23,
2504
+ DWG_TYPE_DIMENSION_ANG2LN: 24,
2505
+ DWG_TYPE_DIMENSION_RADIUS: 25,
2506
+ DWG_TYPE_DIMENSION_DIAMETER: 26,
2507
+ DWG_TYPE_POINT: 27,
2508
+ DWG_TYPE__3DFACE: 28,
2509
+ DWG_TYPE_POLYLINE_PFACE: 29,
2510
+ DWG_TYPE_POLYLINE_MESH: 30,
2511
+ DWG_TYPE_SOLID: 31,
2512
+ DWG_TYPE_TRACE: 32,
2513
+ DWG_TYPE_SHAPE: 33,
2514
+ DWG_TYPE_VIEWPORT: 34,
2515
+ DWG_TYPE_ELLIPSE: 35,
2516
+ DWG_TYPE_SPLINE: 36,
2517
+ DWG_TYPE_REGION: 37,
2518
+ DWG_TYPE__3DSOLID: 38,
2519
+ DWG_TYPE_BODY: 39,
2520
+ DWG_TYPE_RAY: 40,
2521
+ DWG_TYPE_XLINE: 41,
2522
+ DWG_TYPE_DICTIONARY: 42,
2523
+ DWG_TYPE_OLEFRAME: 43,
2524
+ DWG_TYPE_MTEXT: 44,
2525
+ DWG_TYPE_LEADER: 45,
2526
+ DWG_TYPE_TOLERANCE: 46,
2527
+ DWG_TYPE_MLINE: 47,
2528
+ DWG_TYPE_BLOCK_CONTROL: 48,
2529
+ DWG_TYPE_BLOCK_HEADER: 49,
2530
+ DWG_TYPE_LAYER_CONTROL: 50,
2531
+ DWG_TYPE_LAYER: 51,
2532
+ DWG_TYPE_STYLE_CONTROL: 52,
2533
+ /* 52 SHAPEFILE_CONTROL */
2534
+ DWG_TYPE_STYLE: 53,
2535
+ /* DWG_TYPE_<UNKNOWN>: 0x36, */
2536
+ /* DWG_TYPE_<UNKNOWN>: 0x37, */
2537
+ DWG_TYPE_LTYPE_CONTROL: 56,
2538
+ DWG_TYPE_LTYPE: 57,
2539
+ /* DWG_TYPE_<UNKNOWN>: 0x3a, */
2540
+ /* DWG_TYPE_<UNKNOWN>: 0x3b, */
2541
+ DWG_TYPE_VIEW_CONTROL: 60,
2542
+ DWG_TYPE_VIEW: 61,
2543
+ DWG_TYPE_UCS_CONTROL: 62,
2544
+ DWG_TYPE_UCS: 63,
2545
+ DWG_TYPE_VPORT_CONTROL: 64,
2546
+ DWG_TYPE_VPORT: 65,
2547
+ DWG_TYPE_APPID_CONTROL: 66,
2548
+ DWG_TYPE_APPID: 67,
2549
+ DWG_TYPE_DIMSTYLE_CONTROL: 68,
2550
+ DWG_TYPE_DIMSTYLE: 69,
2551
+ DWG_TYPE_VX_CONTROL: 70,
2552
+ DWG_TYPE_VX_TABLE_RECORD: 71,
2553
+ DWG_TYPE_GROUP: 72,
2554
+ DWG_TYPE_MLINESTYLE: 73,
2555
+ DWG_TYPE_OLE2FRAME: 74,
2556
+ DWG_TYPE_DUMMY: 75,
2557
+ DWG_TYPE_LONG_TRANSACTION: 76,
2558
+ DWG_TYPE_LWPOLYLINE: 77,
2559
+ /* ?? */
2560
+ DWG_TYPE_HATCH: 78,
2561
+ DWG_TYPE_XRECORD: 79,
2562
+ DWG_TYPE_PLACEHOLDER: 80,
2563
+ DWG_TYPE_VBA_PROJECT: 81,
2564
+ DWG_TYPE_LAYOUT: 82,
2565
+ DWG_TYPE_PROXY_ENTITY: 498,
2566
+ /* 498 */
2567
+ DWG_TYPE_PROXY_OBJECT: 499,
2568
+ /* 499 */
2569
+ /* non-fixed types > 500. not stored as type, but as fixedtype */
2570
+ DWG_TYPE_ACDSRECORD: 500,
2571
+ DWG_TYPE_ACDSSCHEMA: 501,
2572
+ DWG_TYPE_ACMECOMMANDHISTORY: 502,
2573
+ DWG_TYPE_ACMESCOPE: 503,
2574
+ DWG_TYPE_ACMESTATEMGR: 504,
2575
+ DWG_TYPE_ACSH_BOOLEAN_CLASS: 505,
2576
+ DWG_TYPE_ACSH_BOX_CLASS: 506,
2577
+ DWG_TYPE_ACSH_BREP_CLASS: 507,
2578
+ DWG_TYPE_ACSH_CHAMFER_CLASS: 508,
2579
+ DWG_TYPE_ACSH_CONE_CLASS: 509,
2580
+ DWG_TYPE_ACSH_CYLINDER_CLASS: 510,
2581
+ DWG_TYPE_ACSH_EXTRUSION_CLASS: 511,
2582
+ DWG_TYPE_ACSH_FILLET_CLASS: 512,
2583
+ DWG_TYPE_ACSH_HISTORY_CLASS: 513,
2584
+ DWG_TYPE_ACSH_LOFT_CLASS: 514,
2585
+ DWG_TYPE_ACSH_PYRAMID_CLASS: 515,
2586
+ DWG_TYPE_ACSH_REVOLVE_CLASS: 516,
2587
+ DWG_TYPE_ACSH_SPHERE_CLASS: 517,
2588
+ DWG_TYPE_ACSH_SWEEP_CLASS: 518,
2589
+ DWG_TYPE_ACSH_TORUS_CLASS: 519,
2590
+ DWG_TYPE_ACSH_WEDGE_CLASS: 520,
2591
+ DWG_TYPE_ALDIMOBJECTCONTEXTDATA: 521,
2592
+ DWG_TYPE_ALIGNMENTPARAMETERENTITY: 522,
2593
+ DWG_TYPE_ANGDIMOBJECTCONTEXTDATA: 523,
2594
+ DWG_TYPE_ANNOTSCALEOBJECTCONTEXTDATA: 524,
2595
+ DWG_TYPE_ARCALIGNEDTEXT: 525,
2596
+ DWG_TYPE_ARC_DIMENSION: 526,
2597
+ DWG_TYPE_ASSOC2DCONSTRAINTGROUP: 527,
2598
+ DWG_TYPE_ASSOC3POINTANGULARDIMACTIONBODY: 528,
2599
+ DWG_TYPE_ASSOCACTION: 529,
2600
+ DWG_TYPE_ASSOCACTIONPARAM: 530,
2601
+ DWG_TYPE_ASSOCALIGNEDDIMACTIONBODY: 531,
2602
+ DWG_TYPE_ASSOCARRAYACTIONBODY: 532,
2603
+ DWG_TYPE_ASSOCARRAYMODIFYACTIONBODY: 533,
2604
+ DWG_TYPE_ASSOCARRAYMODIFYPARAMETERS: 534,
2605
+ DWG_TYPE_ASSOCARRAYPATHPARAMETERS: 535,
2606
+ DWG_TYPE_ASSOCARRAYPOLARPARAMETERS: 536,
2607
+ DWG_TYPE_ASSOCARRAYRECTANGULARPARAMETERS: 537,
2608
+ DWG_TYPE_ASSOCASMBODYACTIONPARAM: 538,
2609
+ DWG_TYPE_ASSOCBLENDSURFACEACTIONBODY: 539,
2610
+ DWG_TYPE_ASSOCCOMPOUNDACTIONPARAM: 540,
2611
+ DWG_TYPE_ASSOCDEPENDENCY: 541,
2612
+ DWG_TYPE_ASSOCDIMDEPENDENCYBODY: 542,
2613
+ DWG_TYPE_ASSOCEDGEACTIONPARAM: 543,
2614
+ DWG_TYPE_ASSOCEDGECHAMFERACTIONBODY: 544,
2615
+ DWG_TYPE_ASSOCEDGEFILLETACTIONBODY: 545,
2616
+ DWG_TYPE_ASSOCEXTENDSURFACEACTIONBODY: 546,
2617
+ DWG_TYPE_ASSOCEXTRUDEDSURFACEACTIONBODY: 547,
2618
+ DWG_TYPE_ASSOCFACEACTIONPARAM: 548,
2619
+ DWG_TYPE_ASSOCFILLETSURFACEACTIONBODY: 549,
2620
+ DWG_TYPE_ASSOCGEOMDEPENDENCY: 550,
2621
+ DWG_TYPE_ASSOCLOFTEDSURFACEACTIONBODY: 551,
2622
+ DWG_TYPE_ASSOCMLEADERACTIONBODY: 552,
2623
+ DWG_TYPE_ASSOCNETWORK: 553,
2624
+ DWG_TYPE_ASSOCNETWORKSURFACEACTIONBODY: 554,
2625
+ DWG_TYPE_ASSOCOBJECTACTIONPARAM: 555,
2626
+ DWG_TYPE_ASSOCOFFSETSURFACEACTIONBODY: 556,
2627
+ DWG_TYPE_ASSOCORDINATEDIMACTIONBODY: 557,
2628
+ DWG_TYPE_ASSOCOSNAPPOINTREFACTIONPARAM: 558,
2629
+ DWG_TYPE_ASSOCPATCHSURFACEACTIONBODY: 559,
2630
+ DWG_TYPE_ASSOCPATHACTIONPARAM: 560,
2631
+ DWG_TYPE_ASSOCPERSSUBENTMANAGER: 561,
2632
+ DWG_TYPE_ASSOCPLANESURFACEACTIONBODY: 562,
2633
+ DWG_TYPE_ASSOCPOINTREFACTIONPARAM: 563,
2634
+ DWG_TYPE_ASSOCRESTOREENTITYSTATEACTIONBODY: 564,
2635
+ DWG_TYPE_ASSOCREVOLVEDSURFACEACTIONBODY: 565,
2636
+ DWG_TYPE_ASSOCROTATEDDIMACTIONBODY: 566,
2637
+ DWG_TYPE_ASSOCSWEPTSURFACEACTIONBODY: 567,
2638
+ DWG_TYPE_ASSOCTRIMSURFACEACTIONBODY: 568,
2639
+ DWG_TYPE_ASSOCVALUEDEPENDENCY: 569,
2640
+ DWG_TYPE_ASSOCVARIABLE: 570,
2641
+ DWG_TYPE_ASSOCVERTEXACTIONPARAM: 571,
2642
+ DWG_TYPE_BASEPOINTPARAMETERENTITY: 572,
2643
+ DWG_TYPE_BLKREFOBJECTCONTEXTDATA: 573,
2644
+ DWG_TYPE_BLOCKALIGNEDCONSTRAINTPARAMETER: 574,
2645
+ DWG_TYPE_BLOCKALIGNMENTGRIP: 575,
2646
+ DWG_TYPE_BLOCKALIGNMENTPARAMETER: 576,
2647
+ DWG_TYPE_BLOCKANGULARCONSTRAINTPARAMETER: 577,
2648
+ DWG_TYPE_BLOCKARRAYACTION: 578,
2649
+ DWG_TYPE_BLOCKBASEPOINTPARAMETER: 579,
2650
+ DWG_TYPE_BLOCKDIAMETRICCONSTRAINTPARAMETER: 580,
2651
+ DWG_TYPE_BLOCKFLIPACTION: 581,
2652
+ DWG_TYPE_BLOCKFLIPGRIP: 582,
2653
+ DWG_TYPE_BLOCKFLIPPARAMETER: 583,
2654
+ DWG_TYPE_BLOCKGRIPLOCATIONCOMPONENT: 584,
2655
+ DWG_TYPE_BLOCKHORIZONTALCONSTRAINTPARAMETER: 585,
2656
+ DWG_TYPE_BLOCKLINEARCONSTRAINTPARAMETER: 586,
2657
+ DWG_TYPE_BLOCKLINEARGRIP: 587,
2658
+ DWG_TYPE_BLOCKLINEARPARAMETER: 588,
2659
+ DWG_TYPE_BLOCKLOOKUPACTION: 589,
2660
+ DWG_TYPE_BLOCKLOOKUPGRIP: 590,
2661
+ DWG_TYPE_BLOCKLOOKUPPARAMETER: 591,
2662
+ DWG_TYPE_BLOCKMOVEACTION: 592,
2663
+ DWG_TYPE_BLOCKPARAMDEPENDENCYBODY: 593,
2664
+ DWG_TYPE_BLOCKPOINTPARAMETER: 594,
2665
+ DWG_TYPE_BLOCKPOLARGRIP: 595,
2666
+ DWG_TYPE_BLOCKPOLARPARAMETER: 596,
2667
+ DWG_TYPE_BLOCKPOLARSTRETCHACTION: 597,
2668
+ DWG_TYPE_BLOCKPROPERTIESTABLE: 598,
2669
+ DWG_TYPE_BLOCKPROPERTIESTABLEGRIP: 599,
2670
+ DWG_TYPE_BLOCKRADIALCONSTRAINTPARAMETER: 600,
2671
+ DWG_TYPE_BLOCKREPRESENTATION: 601,
2672
+ DWG_TYPE_BLOCKROTATEACTION: 602,
2673
+ DWG_TYPE_BLOCKROTATIONGRIP: 603,
2674
+ DWG_TYPE_BLOCKROTATIONPARAMETER: 604,
2675
+ DWG_TYPE_BLOCKSCALEACTION: 605,
2676
+ DWG_TYPE_BLOCKSTRETCHACTION: 606,
2677
+ DWG_TYPE_BLOCKUSERPARAMETER: 607,
2678
+ DWG_TYPE_BLOCKVERTICALCONSTRAINTPARAMETER: 608,
2679
+ DWG_TYPE_BLOCKVISIBILITYGRIP: 609,
2680
+ DWG_TYPE_BLOCKVISIBILITYPARAMETER: 610,
2681
+ DWG_TYPE_BLOCKXYGRIP: 611,
2682
+ DWG_TYPE_BLOCKXYPARAMETER: 612,
2683
+ DWG_TYPE_CAMERA: 613,
2684
+ DWG_TYPE_CELLSTYLEMAP: 614,
2685
+ DWG_TYPE_CONTEXTDATAMANAGER: 615,
2686
+ DWG_TYPE_CSACDOCUMENTOPTIONS: 616,
2687
+ DWG_TYPE_CURVEPATH: 617,
2688
+ DWG_TYPE_DATALINK: 618,
2689
+ DWG_TYPE_DATATABLE: 619,
2690
+ DWG_TYPE_DBCOLOR: 620,
2691
+ DWG_TYPE_DETAILVIEWSTYLE: 621,
2692
+ DWG_TYPE_DGNDEFINITION: 622,
2693
+ DWG_TYPE_DGNUNDERLAY: 623,
2694
+ DWG_TYPE_DICTIONARYVAR: 624,
2695
+ DWG_TYPE_DICTIONARYWDFLT: 625,
2696
+ DWG_TYPE_DIMASSOC: 626,
2697
+ DWG_TYPE_DMDIMOBJECTCONTEXTDATA: 627,
2698
+ DWG_TYPE_DWFDEFINITION: 628,
2699
+ DWG_TYPE_DWFUNDERLAY: 629,
2700
+ DWG_TYPE_DYNAMICBLOCKPROXYNODE: 630,
2701
+ DWG_TYPE_DYNAMICBLOCKPURGEPREVENTER: 631,
2702
+ DWG_TYPE_EVALUATION_GRAPH: 632,
2703
+ DWG_TYPE_EXTRUDEDSURFACE: 633,
2704
+ DWG_TYPE_FCFOBJECTCONTEXTDATA: 634,
2705
+ DWG_TYPE_FIELD: 635,
2706
+ DWG_TYPE_FIELDLIST: 636,
2707
+ DWG_TYPE_FLIPPARAMETERENTITY: 637,
2708
+ DWG_TYPE_GEODATA: 638,
2709
+ DWG_TYPE_GEOMAPIMAGE: 639,
2710
+ DWG_TYPE_GEOPOSITIONMARKER: 640,
2711
+ DWG_TYPE_GRADIENT_BACKGROUND: 641,
2712
+ DWG_TYPE_GROUND_PLANE_BACKGROUND: 642,
2713
+ DWG_TYPE_HELIX: 643,
2714
+ DWG_TYPE_IBL_BACKGROUND: 644,
2715
+ DWG_TYPE_IDBUFFER: 645,
2716
+ DWG_TYPE_IMAGE: 646,
2717
+ DWG_TYPE_IMAGEDEF: 647,
2718
+ DWG_TYPE_IMAGEDEF_REACTOR: 648,
2719
+ DWG_TYPE_IMAGE_BACKGROUND: 649,
2720
+ DWG_TYPE_INDEX: 650,
2721
+ DWG_TYPE_LARGE_RADIAL_DIMENSION: 651,
2722
+ DWG_TYPE_LAYERFILTER: 652,
2723
+ DWG_TYPE_LAYER_INDEX: 653,
2724
+ DWG_TYPE_LAYOUTPRINTCONFIG: 654,
2725
+ DWG_TYPE_LEADEROBJECTCONTEXTDATA: 655,
2726
+ DWG_TYPE_LIGHT: 656,
2727
+ DWG_TYPE_LIGHTLIST: 657,
2728
+ DWG_TYPE_LINEARPARAMETERENTITY: 658,
2729
+ DWG_TYPE_LOFTEDSURFACE: 659,
2730
+ DWG_TYPE_MATERIAL: 660,
2731
+ DWG_TYPE_MENTALRAYRENDERSETTINGS: 661,
2732
+ DWG_TYPE_MESH: 662,
2733
+ DWG_TYPE_MLEADEROBJECTCONTEXTDATA: 663,
2734
+ DWG_TYPE_MLEADERSTYLE: 664,
2735
+ DWG_TYPE_MOTIONPATH: 665,
2736
+ DWG_TYPE_MPOLYGON: 666,
2737
+ DWG_TYPE_MTEXTATTRIBUTEOBJECTCONTEXTDATA: 667,
2738
+ DWG_TYPE_MTEXTOBJECTCONTEXTDATA: 668,
2739
+ DWG_TYPE_MULTILEADER: 669,
2740
+ DWG_TYPE_NAVISWORKSMODEL: 670,
2741
+ DWG_TYPE_NAVISWORKSMODELDEF: 671,
2742
+ DWG_TYPE_NPOCOLLECTION: 672,
2743
+ DWG_TYPE_NURBSURFACE: 673,
2744
+ DWG_TYPE_OBJECT_PTR: 674,
2745
+ DWG_TYPE_ORDDIMOBJECTCONTEXTDATA: 675,
2746
+ DWG_TYPE_PARTIAL_VIEWING_INDEX: 676,
2747
+ //DWG_TYPE_PARTIAL_VIEWING_FILTER,
2748
+ DWG_TYPE_PDFDEFINITION: 677,
2749
+ DWG_TYPE_PDFUNDERLAY: 678,
2750
+ DWG_TYPE_PERSUBENTMGR: 679,
2751
+ DWG_TYPE_PLANESURFACE: 680,
2752
+ DWG_TYPE_PLOTSETTINGS: 681,
2753
+ DWG_TYPE_POINTCLOUD: 682,
2754
+ DWG_TYPE_POINTCLOUDCOLORMAP: 683,
2755
+ DWG_TYPE_POINTCLOUDDEF: 684,
2756
+ DWG_TYPE_POINTCLOUDDEFEX: 685,
2757
+ DWG_TYPE_POINTCLOUDDEF_REACTOR: 686,
2758
+ DWG_TYPE_POINTCLOUDDEF_REACTOR_EX: 687,
2759
+ DWG_TYPE_POINTCLOUDEX: 688,
2760
+ DWG_TYPE_POINTPARAMETERENTITY: 689,
2761
+ DWG_TYPE_POINTPATH: 690,
2762
+ DWG_TYPE_POLARGRIPENTITY: 691,
2763
+ DWG_TYPE_RADIMLGOBJECTCONTEXTDATA: 692,
2764
+ DWG_TYPE_RADIMOBJECTCONTEXTDATA: 693,
2765
+ DWG_TYPE_RAPIDRTRENDERSETTINGS: 694,
2766
+ DWG_TYPE_RASTERVARIABLES: 695,
2767
+ DWG_TYPE_RENDERENTRY: 696,
2768
+ DWG_TYPE_RENDERENVIRONMENT: 697,
2769
+ DWG_TYPE_RENDERGLOBAL: 698,
2770
+ DWG_TYPE_RENDERSETTINGS: 699,
2771
+ DWG_TYPE_REVOLVEDSURFACE: 700,
2772
+ DWG_TYPE_ROTATIONPARAMETERENTITY: 701,
2773
+ DWG_TYPE_RTEXT: 702,
2774
+ DWG_TYPE_SCALE: 703,
2775
+ DWG_TYPE_SECTIONOBJECT: 704,
2776
+ DWG_TYPE_SECTIONVIEWSTYLE: 705,
2777
+ DWG_TYPE_SECTION_MANAGER: 706,
2778
+ DWG_TYPE_SECTION_SETTINGS: 707,
2779
+ DWG_TYPE_SKYLIGHT_BACKGROUND: 708,
2780
+ DWG_TYPE_SOLID_BACKGROUND: 709,
2781
+ DWG_TYPE_SORTENTSTABLE: 710,
2782
+ DWG_TYPE_SPATIAL_FILTER: 711,
2783
+ DWG_TYPE_SPATIAL_INDEX: 712,
2784
+ DWG_TYPE_SUN: 713,
2785
+ DWG_TYPE_SUNSTUDY: 714,
2786
+ DWG_TYPE_SWEPTSURFACE: 715,
2787
+ DWG_TYPE_TABLE: 716,
2788
+ DWG_TYPE_TABLECONTENT: 717,
2789
+ DWG_TYPE_TABLEGEOMETRY: 718,
2790
+ DWG_TYPE_TABLESTYLE: 719,
2791
+ DWG_TYPE_TEXTOBJECTCONTEXTDATA: 720,
2792
+ DWG_TYPE_TVDEVICEPROPERTIES: 721,
2793
+ DWG_TYPE_VISIBILITYGRIPENTITY: 722,
2794
+ DWG_TYPE_VISIBILITYPARAMETERENTITY: 723,
2795
+ DWG_TYPE_VISUALSTYLE: 724,
2796
+ DWG_TYPE_WIPEOUT: 725,
2797
+ DWG_TYPE_WIPEOUTVARIABLES: 726,
2798
+ DWG_TYPE_XREFPANELOBJECT: 727,
2799
+ DWG_TYPE_XYPARAMETERENTITY: 728,
2800
+ DWG_TYPE_BREAKDATA: 729,
2801
+ DWG_TYPE_BREAKPOINTREF: 730,
2802
+ DWG_TYPE_FLIPGRIPENTITY: 731,
2803
+ DWG_TYPE_LINEARGRIPENTITY: 732,
2804
+ DWG_TYPE_ROTATIONGRIPENTITY: 733,
2805
+ DWG_TYPE_XYGRIPENTITY: 734,
2806
+ /* preR13 entities */
2807
+ DWG_TYPE__3DLINE: 735,
2808
+ DWG_TYPE_REPEAT: 736,
2809
+ DWG_TYPE_ENDREP: 737,
2810
+ DWG_TYPE_JUMP: 738,
2811
+ /* pre2.0 entities */
2812
+ DWG_TYPE_LOAD: 739,
2813
+ // after 1.0 add new types here for binary compat
2814
+ DWG_TYPE_FREED: 65533,
2815
+ DWG_TYPE_UNKNOWN_ENT: 65534,
2816
+ DWG_TYPE_UNKNOWN_OBJ: 65535
2817
+ }), ro = Object.fromEntries(
2818
+ Object.entries(b).map(([U, E]) => [E, U])
2819
+ ), nt = Object.freeze({
2820
+ DWG: 0,
2821
+ DXF: 1
2822
+ });
2823
+ class at {
2824
+ constructor(E) {
2825
+ $(this, "wasmInstance");
2826
+ return this.wasmInstance = E, new Proxy(this, {
2827
+ get: (m, u, S) => u in m ? Reflect.get(m, u, S) : Reflect.get(m.wasmInstance, u, S)
2828
+ });
2829
+ }
2830
+ dwg_read_data(E, m) {
2831
+ if (m == nt.DWG) {
2832
+ const u = "tmp.dwg";
2833
+ this.wasmInstance.FS.writeFile(u, new Uint8Array(E));
2834
+ const S = this.wasmInstance.dwg_read_file(u);
2835
+ return S.error != 0 && console.log("Failed to open dwg file with error code: ", S.error), this.wasmInstance.FS.unlink(u), S.data;
2836
+ } else if (m == nt.DXF) {
2837
+ const u = "tmp.dxf";
2838
+ this.wasmInstance.FS.writeFile(u, new Uint8Array(E));
2839
+ const S = this.wasmInstance.dxf_read_file(u);
2840
+ return S.error != 0 && console.log("Failed to open dxf file with error code: ", S.error), this.wasmInstance.FS.unlink(u), S.data;
2841
+ }
2842
+ }
2843
+ /**
2844
+ * Returns all of entities in the model space. Each item in returned array
2845
+ * is one Dwg_Object pointer (Dwg_Object*).
2846
+ */
2847
+ dwg_getall_entitie_in_model_space(E) {
2848
+ const m = this.wasmInstance, u = m.dwg_model_space_object(E), S = [];
2849
+ let k = m.get_first_owned_entity(u);
2850
+ for (; k; )
2851
+ S.push(k), k = m.get_next_owned_entity(u, k);
2852
+ return S;
2853
+ }
2854
+ dwg_getall_object_by_type(E, m) {
2855
+ const u = this.wasmInstance, S = u.dwg_get_num_objects(E), k = [];
2856
+ for (let K = 0; K < S; K++) {
2857
+ const Q = u.dwg_get_object(E, K), j = u.dwg_object_to_object_tio(Q);
2858
+ j && u.dwg_object_get_fixedtype(Q) == m && k.push(j);
2859
+ }
2860
+ return k;
2861
+ }
2862
+ dwg_getall_entity_by_type(E, m) {
2863
+ const u = this.wasmInstance, S = u.dwg_get_num_objects(E), k = [];
2864
+ for (let K = 0; K < S; K++) {
2865
+ const Q = u.dwg_get_object(E, K), j = u.dwg_object_to_entity_tio(Q);
2866
+ j && u.dwg_object_get_fixedtype(Q) == m && k.push(j);
2867
+ }
2868
+ return k;
2869
+ }
2870
+ dwg_getall_LAYER(E) {
2871
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_LAYER);
2872
+ }
2873
+ dwg_getall_LTYPE(E) {
2874
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_LTYPE);
2875
+ }
2876
+ dwg_getall_STYLE(E) {
2877
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_STYLE);
2878
+ }
2879
+ dwg_getall_DIMSTYLE(E) {
2880
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_DIMSTYLE);
2881
+ }
2882
+ dwg_getall_VPORT(E) {
2883
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_VPORT);
2884
+ }
2885
+ dwg_getall_LAYOUT(E) {
2886
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_LAYOUT);
2887
+ }
2888
+ dwg_getall_BLOCK(E) {
2889
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_BLOCK);
2890
+ }
2891
+ dwg_getall_BLOCK_HEADER(E) {
2892
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_BLOCK_HEADER);
2893
+ }
2894
+ dwg_getall_IMAGEDEF(E) {
2895
+ return this.dwg_getall_object_by_type(E, b.DWG_TYPE_IMAGEDEF);
2896
+ }
2897
+ dwg_getall_VERTEX_2D(E) {
2898
+ return this.dwg_getall_entity_by_type(E, b.DWG_TYPE_VERTEX_2D);
2899
+ }
2900
+ dwg_getall_VERTEX_3D(E) {
2901
+ return this.dwg_getall_entity_by_type(E, b.DWG_TYPE_VERTEX_3D);
2902
+ }
2903
+ dwg_getall_POLYLINE_2D(E) {
2904
+ return this.dwg_getall_entity_by_type(E, b.DWG_TYPE_POLYLINE_2D);
2905
+ }
2906
+ dwg_getall_POLYLINE_3D(E) {
2907
+ return this.dwg_getall_entity_by_type(E, b.DWG_TYPE_POLYLINE_3D);
2908
+ }
2909
+ dwg_getall_IMAGE(E) {
2910
+ return this.dwg_getall_entity_by_type(E, b.DWG_TYPE_IMAGE);
2911
+ }
2912
+ dwg_getall_LWPOLYLINE(E) {
2913
+ return this.dwg_getall_entity_by_type(E, b.DWG_TYPE_LWPOLYLINE);
2914
+ }
2915
+ dwg_ptr_to_unsigned_char_array(E, m) {
2916
+ return this.wasmInstance.dwg_ptr_to_unsigned_char_array(E, m);
2917
+ }
2918
+ dwg_ptr_to_signed_char_array(E, m) {
2919
+ return this.wasmInstance.dwg_ptr_to_signed_char_array(E, m);
2920
+ }
2921
+ dwg_ptr_to_uint16_t_array(E, m) {
2922
+ return this.wasmInstance.dwg_ptr_to_uint16_t_array(E, m);
2923
+ }
2924
+ dwg_ptr_to_int16_t_array(E, m) {
2925
+ return this.wasmInstance.dwg_ptr_to_int16_t_array(E, m);
2926
+ }
2927
+ dwg_ptr_to_uint32_t_array(E, m) {
2928
+ return this.wasmInstance.dwg_ptr_to_uint32_t_array(E, m);
2929
+ }
2930
+ dwg_ptr_to_int32_t_array(E, m) {
2931
+ return this.wasmInstance.dwg_ptr_to_int32_t_array(E, m);
2932
+ }
2933
+ dwg_ptr_to_uint64_t_array(E, m) {
2934
+ return this.wasmInstance.dwg_ptr_to_uint64_t_array(E, m);
2935
+ }
2936
+ dwg_ptr_to_int64_t_array(E, m) {
2937
+ return this.wasmInstance.dwg_ptr_to_int64_t_array(E, m);
2938
+ }
2939
+ dwg_ptr_to_double_array(E, m) {
2940
+ return this.wasmInstance.dwg_ptr_to_double_array(E, m);
2941
+ }
2942
+ dwg_ptr_to_point2d_array(E, m) {
2943
+ return this.wasmInstance.dwg_ptr_to_point2d_array(E, m);
2944
+ }
2945
+ dwg_ptr_to_point3d_array(E, m) {
2946
+ return this.wasmInstance.dwg_ptr_to_point3d_array(E, m);
2947
+ }
2948
+ dwg_ptr_to_ltype_dash_array(E, m) {
2949
+ return this.wasmInstance.dwg_ptr_to_ltype_dash_array(E, m);
2950
+ }
2951
+ dwg_dynapi_entity_value(E, m) {
2952
+ return this.wasmInstance.dwg_dynapi_entity_value(E, m);
2953
+ }
2954
+ static async create() {
2955
+ const E = await za();
2956
+ return new at(E);
2957
+ }
2958
+ }
2959
+ const Ja = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2960
+ __proto__: null
2961
+ }, Symbol.toStringTag, { value: "Module" }));
2962
+ export {
2963
+ nt as Dwg_File_Type,
2964
+ eo as Dwg_Object_Supertype,
2965
+ b as Dwg_Object_Type,
2966
+ ro as Dwg_Object_Type_Inverted,
2967
+ at as LibreDwg,
2968
+ za as createModule
2969
+ };