1!(function (e, t) { 2 if ("object" == typeof exports && "object" == typeof module) 3 module.exports = t(); 4 else if ("function" == typeof define && define.amd) define([], t); 5 else { 6 var r = t(); 7 for (var n in r) ("object" == typeof exports ? exports : e)[n] = r[n]; 8 } 9})(this, function () { 10 return (() => { 11 var __webpack_modules__ = { 12 870: (e, t, r) => { 13 "use strict"; 14 r.r(t), 15 r.d(t, { 16 createEndpoint: () => o, 17 expose: () => l, 18 proxy: () => g, 19 proxyMarker: () => n, 20 releaseProxy: () => i, 21 transfer: () => _, 22 transferHandlers: () => u, 23 windowEndpoint: () => v, 24 wrap: () => f, 25 }); 26 const n = Symbol("Comlink.proxy"), 27 o = Symbol("Comlink.endpoint"), 28 i = Symbol("Comlink.releaseProxy"), 29 s = Symbol("Comlink.thrown"), 30 a = (e) => 31 ("object" == typeof e && null !== e) || "function" == typeof e, 32 u = new Map([ 33 [ 34 "proxy", 35 { 36 canHandle: (e) => a(e) && e[n], 37 serialize(e) { 38 const { port1: t, port2: r } = new MessageChannel(); 39 return l(e, t), [r, [r]]; 40 }, 41 deserialize: (e) => (e.start(), f(e)), 42 }, 43 ], 44 [ 45 "throw", 46 { 47 canHandle: (e) => a(e) && s in e, 48 serialize({ value: e }) { 49 let t; 50 return ( 51 (t = 52 e instanceof Error 53 ? { 54 isError: !0, 55 value: { 56 message: e.message, 57 name: e.name, 58 stack: e.stack, 59 }, 60 } 61 : { isError: !1, value: e }), 62 [t, []] 63 ); 64 }, 65 deserialize(e) { 66 if (e.isError) 67 throw Object.assign(new Error(e.value.message), e.value); 68 throw e.value; 69 }, 70 }, 71 ], 72 ]); 73 function l(e, t = self) { 74 t.addEventListener("message", function r(n) { 75 if (!n || !n.data) return; 76 const { 77 id: o, 78 type: i, 79 path: a, 80 } = Object.assign({ path: [] }, n.data), 81 u = (n.data.argumentList || []).map(b); 82 let f; 83 try { 84 const t = a.slice(0, -1).reduce((e, t) => e[t], e), 85 r = a.reduce((e, t) => e[t], e); 86 switch (i) { 87 case 0: 88 f = r; 89 break; 90 case 1: 91 (t[a.slice(-1)[0]] = b(n.data.value)), (f = !0); 92 break; 93 case 2: 94 f = r.apply(t, u); 95 break; 96 case 3: 97 f = g(new r(...u)); 98 break; 99 case 4: 100 { 101 const { port1: t, port2: r } = new MessageChannel(); 102 l(e, r), (f = _(t, [t])); 103 } 104 break; 105 case 5: 106 f = void 0; 107 } 108 } catch (e) { 109 f = { value: e, [s]: 0 }; 110 } 111 Promise.resolve(f) 112 .catch((e) => ({ value: e, [s]: 0 })) 113 .then((e) => { 114 const [n, s] = y(e); 115 t.postMessage( 116 Object.assign(Object.assign({}, n), { id: o }), 117 s 118 ), 119 5 === i && (t.removeEventListener("message", r), c(t)); 120 }); 121 }), 122 t.start && t.start(); 123 } 124 function c(e) { 125 (function (e) { 126 return "MessagePort" === e.constructor.name; 127 })(e) && e.close(); 128 } 129 function f(e, t) { 130 return h(e, [], t); 131 } 132 function d(e) { 133 if (e) 134 throw new Error("Proxy has been released and is not useable"); 135 } 136 function h(e, t = [], r = function () {}) { 137 let n = !1; 138 const s = new Proxy(r, { 139 get(r, o) { 140 if ((d(n), o === i)) 141 return () => 142 w(e, { type: 5, path: t.map((e) => e.toString()) }).then( 143 () => { 144 c(e), (n = !0); 145 } 146 ); 147 if ("then" === o) { 148 if (0 === t.length) return { then: () => s }; 149 const r = w(e, { 150 type: 0, 151 path: t.map((e) => e.toString()), 152 }).then(b); 153 return r.then.bind(r); 154 } 155 return h(e, [...t, o]); 156 }, 157 set(r, o, i) { 158 d(n); 159 const [s, a] = y(i); 160 return w( 161 e, 162 { 163 type: 1, 164 path: [...t, o].map((e) => e.toString()), 165 value: s, 166 }, 167 a 168 ).then(b); 169 }, 170 apply(r, i, s) { 171 d(n); 172 const a = t[t.length - 1]; 173 if (a === o) return w(e, { type: 4 }).then(b); 174 if ("bind" === a) return h(e, t.slice(0, -1)); 175 const [u, l] = p(s); 176 return w( 177 e, 178 { 179 type: 2, 180 path: t.map((e) => e.toString()), 181 argumentList: u, 182 }, 183 l 184 ).then(b); 185 }, 186 construct(r, o) { 187 d(n); 188 const [i, s] = p(o); 189 return w( 190 e, 191 { 192 type: 3, 193 path: t.map((e) => e.toString()), 194 argumentList: i, 195 }, 196 s 197 ).then(b); 198 }, 199 }); 200 return s; 201 } 202 function p(e) { 203 const t = e.map(y); 204 return [ 205 t.map((e) => e[0]), 206 ((r = t.map((e) => e[1])), Array.prototype.concat.apply([], r)), 207 ]; 208 var r; 209 } 210 const m = new WeakMap(); 211 function _(e, t) { 212 return m.set(e, t), e; 213 } 214 function g(e) { 215 return Object.assign(e, { [n]: !0 }); 216 } 217 function v(e, t = self, r = "*") { 218 return { 219 postMessage: (t, n) => e.postMessage(t, r, n), 220 addEventListener: t.addEventListener.bind(t), 221 removeEventListener: t.removeEventListener.bind(t), 222 }; 223 } 224 function y(e) { 225 for (const [t, r] of u) 226 if (r.canHandle(e)) { 227 const [n, o] = r.serialize(e); 228 return [{ type: 3, name: t, value: n }, o]; 229 } 230 return [{ type: 0, value: e }, m.get(e) || []]; 231 } 232 function b(e) { 233 switch (e.type) { 234 case 3:
235 return u.get(e.name).deserialize(e.value); 236 case 0: 237 return e.value; 238 } 239 } 240 function w(e, t, r) { 241 return new Promise((n) => { 242 const o = new Array(4) 243 .fill(0) 244 .map(() => 245 Math.floor(Math.random() * Number.MAX_SAFE_INTEGER).toString( 246 16 247 ) 248 ) 249 .join("-"); 250 e.addEventListener("message", function t(r) { 251 r.data && 252 r.data.id && 253 r.data.id === o && 254 (e.removeEventListener("message", t), n(r.data)); 255 }), 256 e.start && e.start(), 257 e.postMessage(Object.assign({ id: o }, t), r); 258 }); 259 } 260 }, 261 794: (e, t) => { 262 "use strict"; 263 Object.defineProperty(t, "__esModule", { value: !0 }), 264 (t.createLazyFile = t.LazyUint8Array = void 0); 265 class r { 266 constructor(e) { 267 (this.serverChecked = !1), 268 (this.chunks = []), 269 (this.totalFetchedBytes = 0), 270 (this.totalRequests = 0), 271 (this.readPages = []), 272 (this.readHeads = []), 273 (this.lastGet = -1), 274 (this._chunkSize = e.requestChunkSize), 275 (this.maxSpeed = Math.round( 276 (e.maxReadSpeed || 5242880) / this._chunkSize 277 )), 278 (this.maxReadHeads = e.maxReadHeads ?? 3), 279 (this.rangeMapper = e.rangeMapper), 280 (this.logPageReads = e.logPageReads ?? !1), 281 e.fileLength && (this._length = e.fileLength); 282 } 283 copyInto(e, t, r, n) { 284 if (n >= this.length) return 0; 285 const o = n + (r = Math.min(this.length - n, r)); 286 let i = 0; 287 for (; i < r; ) { 288 const r = n + i, 289 s = r % this.chunkSize, 290 a = (r / this.chunkSize) | 0, 291 u = Math.min(this.chunkSize, o - r); 292 let l = this.getChunk(a); 293 (0 === s && u === this.chunkSize) || (l = l.subarray(s, s + u)), 294 e.set(l, t + i), 295 (i += l.length); 296 } 297 return r; 298 } 299 moveReadHead(e) { 300 for (const [t, r] of this.readHeads.entries()) { 301 const n = r.startChunk + r.speed, 302 o = Math.min(this.maxSpeed, 2 * r.speed); 303 if (e >= n && e < n + o) 304 return ( 305 (r.speed = o), 306 (r.startChunk = n), 307 0 !== t && 308 (this.readHeads.splice(t, 1), this.readHeads.unshift(r)), 309 r 310 ); 311 } 312 const t = { startChunk: e, speed: 1 }; 313 for ( 314 this.readHeads.unshift(t); 315 this.readHeads.length > this.maxReadHeads; 316 317 ) 318 this.readHeads.pop(); 319 return t; 320 } 321 getChunk(e) { 322 let t = !0; 323 if (void 0 === this.chunks[e]) { 324 t = !1; 325 const r = this.moveReadHead(e), 326 n = r.speed, 327 o = r.startChunk * this.chunkSize; 328 let i = (r.startChunk + n) * this.chunkSize - 1; 329 i = Math.min(i, this.length - 1); 330 const s = this.doXHR(o, i); 331 for (let e = 0; e < n; e++) { 332 const t = r.startChunk + e; 333 if (e * this.chunkSize >= s.byteLength) break; 334 const n = 335 (e + 1) * this.chunkSize > s.byteLength 336 ? s.byteLength - e * this.chunkSize 337 : this.chunkSize; 338 this.chunks[t] = new Uint8Array(s, e * this.chunkSize, n); 339 } 340 } 341 if (void 0 === this.chunks[e]) 342 throw new Error("doXHR failed (bug)!"); 343 return ( 344 !this.logPageReads || 345 this.lastGet == e || 346 ((this.lastGet = e), 347 this.readPages.push({ 348 pageno: e, 349 wasCached: t, 350 prefetch: t ? 0 : this.readHeads[0].speed - 1, 351 })), 352 this.chunks[e] 353 ); 354 } 355 checkServer() { 356 var e = new XMLHttpRequest(); 357 const t = this.rangeMapper(0, 0).url; 358 if ( 359 (e.open("HEAD", t, !1), 360 e.send(null), 361 !((e.status >= 200 && e.status < 300) || 304 === e.status)) 362 ) 363 throw new Error("Couldn't load " + t + ". Status: " + e.status); 364 var r = Number(e.getResponseHeader("Content-length")), 365 n = "bytes" === e.getResponseHeader("Accept-Ranges"); 366 const o = e.getResponseHeader("Content-Encoding"); 367 var i = o && "identity" !== o; 368 if (!n) { 369 const t = 370 "Warning: The server did not respond with Accept-Ranges=bytes. It either does not support byte serving or does not advertise it (`Accept-Ranges: bytes` header missing), or your database is hosted on CORS and the server doesn't mark the accept-ranges header as exposed. This may lead to incorrect results."; 371 console.warn( 372 t, 373 "(seen response headers:", 374 e.getAllResponseHeaders(), 375 ")" 376 ); 377 } 378 if ( 379 (i && 380 console.warn( 381 `Warning: The server responded with ${o} encoding to a HEAD request. Ignoring since it may not do so for Range HTTP requests, but this will lead to incorrect results otherwise since the ranges will be based on the compressed data instead of the uncompressed data.` 382 ), 383 i && (r = null),
384 !this._length) 385 ) { 386 if (!r) 387 throw ( 388 (console.error( 389 "response headers", 390 e.getAllResponseHeaders() 391 ), 392 Error( 393 "Length of the file not known. It must either be supplied in the config or given by the HTTP server." 394 )) 395 ); 396 this._length = r; 397 } 398 this.serverChecked = !0; 399 } 400 get length() { 401 return this.serverChecked || this.checkServer(), this._length; 402 } 403 get chunkSize() { 404 return this.serverChecked || this.checkServer(), this._chunkSize; 405 } 406 doXHR(e, t) { 407 if ( 408 (console.log( 409 `[xhr of size ${(t + 1 - e) / 1024} KiB @ ${e / 1024} KiB]` 410 ), 411 (this.totalFetchedBytes += t - e), 412 this.totalRequests++, 413 e > t) 414 ) 415 throw new Error( 416 "invalid range (" + e + ", " + t + ") or no bytes requested!" 417 ); 418 if (t > this.length - 1) 419 throw new Error( 420 "only " + this.length + " bytes available! programmer error!" 421 ); 422 const { fromByte: r, toByte: n, url: o } = this.rangeMapper(e, t); 423 var i = new XMLHttpRequest(); 424 if ( 425 (i.open("GET", o, !1), 426 this.length !== this.chunkSize && 427 i.setRequestHeader("Range", "bytes=" + r + "-" + n), 428 (i.responseType = "arraybuffer"), 429 i.overrideMimeType && 430 i.overrideMimeType("text/plain; charset=x-user-defined"), 431 i.send(null), 432 !((i.status >= 200 && i.status < 300) || 304 === i.status)) 433 ) 434 throw new Error("Couldn't load " + o + ". Status: " + i.status); 435 if (void 0 !== i.response) return i.response; 436 throw Error("xhr did not return uint8array"); 437 } 438 } 439 (t.LazyUint8Array = r), 440 (t.createLazyFile = function (e, t, n, o, i, s) { 441 var a = new r(s), 442 u = { isDevice: !1, contents: a }, 443 l = e.createFile(t, n, u, o, i); 444 (l.contents = a), 445 Object.defineProperties(l, { 446 usedBytes: { 447 get: function () { 448 return this.contents.length; 449 }, 450 }, 451 }); 452 var c = {}; 453 return ( 454 Object.keys(l.stream_ops).forEach(function (t) { 455 var r = l.stream_ops[t]; 456 c[t] = function () { 457 return e.forceLoadFile(l), r.apply(null, arguments); 458 }; 459 }), 460 (c.read = function (t, r, n, o, i) { 461 return ( 462 e.forceLoadFile(l), t.node.contents.copyInto(r, n, o, i) 463 ); 464 }), 465 (l.stream_ops = c), 466 l 467 ); 468 }); 469 }, 470 630: function (__unused_webpack_module, exports, __webpack_require__) { 471 "use strict"; 472 var __createBinding = 473 (this && this.__createBinding) || 474 (Object.create 475 ? function (e, t, r, n) { 476 void 0 === n && (n = r), 477 Object.defineProperty(e, n, { 478 enumerable: !0, 479 get: function () { 480 return t[r]; 481 }, 482 }); 483 } 484 : function (e, t, r, n) { 485 void 0 === n && (n = r), (e[n] = t[r]); 486 }), 487 __setModuleDefault = 488 (this && this.__setModuleDefault) || 489 (Object.create 490 ? function (e, t) { 491 Object.defineProperty(e, "default", { 492 enumerable: !0, 493 value: t, 494 }); 495 } 496 : function (e, t) { 497 e.default = t; 498 }), 499 __importStar = 500 (this && this.__importStar) || 501 function (e) {
502 if (e && e.__esModule) return e; 503 var t = {}; 504 if (null != e) 505 for (var r in e) 506 "default" !== r && 507 Object.prototype.hasOwnProperty.call(e, r) && 508 __createBinding(t, e, r); 509 return __setModuleDefault(t, e), t; 510 }, 511 __importDefault = 512 (this && this.__importDefault) || 513 function (e) { 514 return e && e.__esModule ? e : { default: e }; 515 }; 516 Object.defineProperty(exports, "__esModule", { value: !0 }), 517 (exports.toObjects = void 0); 518 const Comlink = __importStar(__webpack_require__(870)), 519 sql_wasm_js_1 = __importDefault(__webpack_require__(365)), 520 sql_wasm_wasm_1 = __importDefault(__webpack_require__(720)), 521 lazyFile_1 = __webpack_require__(794), 522 vtab_1 = __webpack_require__(457); 523 function initTransferHandlers(e) { 524 Comlink.transferHandlers.set("WORKERSQLPROXIES", { 525 canHandle: (t) => { 526 let r = t instanceof e.Database, 527 n = t && t.db && t.db instanceof e.Database; 528 return r || n; 529 }, 530 serialize(e) { 531 const { port1: t, port2: r } = new MessageChannel(); 532 return Comlink.expose(e, t), [r, [r]]; 533 }, 534 deserialize: (e) => {}, 535 }); 536 } 537 async function init(e) { 538 const t = await sql_wasm_js_1.default({ locateFile: (t) => e }); 539 return initTransferHandlers(t), t; 540 } 541 function toObjects(e) { 542 return e.flatMap((e) => 543 e.values.map((t) => { 544 const r = {}; 545 for (let n = 0; n < e.columns.length; n++) 546 r[e.columns[n]] = t[n]; 547 return r; 548 }) 549 ); 550 } 551 async function fetchConfigs(e) { 552 const t = e.map(async (e) => { 553 if ("jsonconfig" === e.from) { 554 const t = new URL(e.configUrl, location.href), 555 r = await fetch(t.toString()); 556 if (!r.ok) 557 throw ( 558 (console.error("httpvfs config error", await r.text()), 559 Error( 560 `Could not load httpvfs config: ${r.status}: ${r.statusText}` 561 )) 562 ); 563 const n = await r.json(); 564 return { 565 from: "inline", 566 config: 567 "chunked" === n.serverMode 568 ? { ...n, urlPrefix: new URL(n.urlPrefix, t).toString() } 569 : { ...n, url: new URL(n.url, t).toString() }, 570 virtualFilename: e.virtualFilename, 571 }; 572 } 573 return e; 574 }); 575 return Promise.all(t); 576 } 577 sql_wasm_wasm_1.default, (exports.toObjects = toObjects); 578 const mod = { 579 db: null, 580 inited: !1, 581 sqljs: null, 582 async SplitFileHttpDatabase(e, t, r) { 583 if (this.inited) 584 throw Error("sorry, only one db is supported right now"); 585 (this.inited = !0), this.sqljs || (this.sqljs = init(e)); 586 const n = await this.sqljs, 587 o = new Map(), 588 i = await fetchConfigs(t); 589 let s; 590 for (const { config: e, virtualFilename: t } of i) { 591 const i = "chunked" === e.serverMode ? e.urlPrefix : e.url; 592 let a; 593 console.log("constructing url database", i), 594 (a = 595 "chunked" == e.serverMode 596 ? (t, r) => { 597 const n = (t / e.serverChunkSize) | 0, 598 o = t % e.serverChunkSize, 599 i = o + (r - t); 600 return { 601 url: e.urlPrefix + String(n).padStart(3, "0"), 602 fromByte: o, 603 toByte: i, 604 }; 605 } 606 : (t, r) => ({ url: e.url, fromByte: t, toByte: r })); 607 const u = t || i.replace(/\//g, "_"); 608 r || ((r = u), (s = e)), 609 console.log("filename", u), 610 console.log("constructing url database", i, "filename", u); 611 const l = lazyFile_1.createLazyFile(n.FS, "/", u, !0, !0, { 612 rangeMapper: a, 613 requestChunkSize: e.requestChunkSize, 614 fileLength: 615 "chunked" === e.serverMode ? e.databaseLengthBytes : void 0, 616 logPageReads: !0, 617 maxReadHeads: 3, 618 }); 619 o.set(u, l); 620 } 621 if (((this.db = new n.CustomDatabase(r)), s)) { 622 const e = ( 623 await this.db.exec("pragma page_size; pragma cache_size=0") 624 )[0].values[0][0]; 625 e !== s.requestChunkSize && 626 console.warn( 627 `Chunk size does not match page size: pragma page_size = ${e} but chunkSize = ${s.requestChunkSize}` 628 ); 629 } 630 return ( 631 (this.db.lazyFiles = o), 632 this.db.create_vtab(vtab_1.SeriesVtab), 633 (this.db.query = (...e) => toObjects(this.db.exec(...e))), 634 this.db 635 ); 636 }, 637 getResetAccessedPages(e) { 638 if (!this.db) return []; 639 const t = this.db.lazyFiles.get(e || this.db.filename); 640 if (!t) throw Error("unknown lazy file"); 641 const r = [...t.contents.readPages]; 642 return (t.contents.readPages = []), r; 643 }, 644 getStats(e) { 645 const t = this.db; 646 if (!t) return null; 647 const r = t.lazyFiles.get(e || t.filename); 648 if (!r) throw Error("unknown lazy file"); 649 return { 650 filename: t.filename, 651 totalBytes: r.contents.length, 652 totalFetchedBytes: r.contents.totalFetchedBytes, 653 totalRequests: r.contents.totalRequests, 654 }; 655 }, 656 async evalCode(code) { 657 return await eval( 658 `(async function (db) {\n ${code}\n })` 659 )(this.db); 660 }, 661 }; 662 Comlink.expose(mod); 663 }, 664 457: (e, t) => { 665 "use strict"; 666 var r; 667 Object.defineProperty(t, "__esModule", { value: !0 }), 668 (t.SeriesVtab = void 0), 669 (function (e) { 670 (e[(e.idx = 0)] = "idx"), 671 (e[(e.id = 1)] = "id"), 672 (e[(e.tagName = 2)] = "tagName"), 673 (e[(e.textContent = 3)] = "textContent"), 674 (e[(e.innerHTML = 4)] = "innerHTML"), 675 (e[(e.outerHTML = 5)] = "outerHTML"), 676 (e[(e.className = 6)] = "className"), 677 (e[(e.parent = 7)] = "parent"), 678 (e[(e.selector = 8)] = "selector"), 679 (e[(e.querySelector = 9)] = "querySelector"); 680 })(r || (r = {})); 681 const n = Object.keys(r) 682 .map((e) => r[e]) 683 .filter((e) => "string" == typeof e); 684 function o(e) { 685 const t = {}; 686 for (let n = 0; n < e.length; n++) t[r[n]] = e[n]; 687 return t; 688 } 689 function i(e) { 690 const t = new SharedArrayBuffer(1048576), 691 r = new Int32Array(t, 0, 2); 692 (r[0] = 1), 693 self.postMessage({ action: "eval", notify: t, request: e }), 694 Atomics.wait(r, 0, 1); 695 const n = r[1], 696 o = new Uint8Array(t, 8, n).slice(), 697 i = new TextDecoder().decode(o), 698 s = JSON.parse(i); 699 if ("err" in s) throw new Error(s.err); 700 return s.ok; 701 } 702 t.SeriesVtab = class { 703 constructor(e, t) { 704 (this.module = e), 705 (this.db = t), 706 (this.name = "dom"), 707 (this.iVersion = 2), 708 (this.cursors = new Map()), 709 console.log("constructed vfs"); 710 } 711 getCursor(e) { 712 const t = this.cursors.get(e); 713 if (!t) throw Error("impl error"); 714 return t; 715 } 716 xConnect(e, t, r, o, i, s) { 717 console.log("xconnect!!"), 718 this.db.handleError( 719 this.module.ccall( 720 "sqlite3_declare_vtab", 721 "number", 722 ["number", "string"], 723 [ 724 e, 725 `create table x(\n ${n 726 .slice(0, -1) 727 .join(", ")} PRIMARY KEY\n ) WITHOUT ROWID`, 728 ] 729 ) 730 ); 731 const a = this.module._malloc(12); 732 return this.module.setValue(i, a, "*"), 0; 733 } 734 xDisconnect(e) { 735 return this.module._free(e), 0; 736 } 737 xOpen(e, t) { 738 const r = this.module._malloc(4); 739 return ( 740 this.cursors.set(r, { 741 elements: [], 742 index: 0, 743 querySelector: "", 744 }), 745 this.module.setValue(t, r, "*"), 746 0 747 ); 748 } 749 xClose(e) { 750 return this.module._free(e), 0; 751 } 752 xBestIndex(e, t) { 753 try { 754 const e = this.module.getValue(t + 0, "i32"), 755 n = this.module.getValue(t + 4, "i32"), 756 o = 64; 757 let i = !1; 758 for (let s = 0; s < e; s++) { 759 const e = n + 12 * s, 760 a = this.module.getValue(e, "i32"), 761 u = this.module.getValue(e + 4, "i8"); 762 if (this.module.getValue(e + 5, "i8")) { 763 if (u === o) { 764 if (a !== r.selector) 765 throw Error( 766 "The match operator can only be applied to the selector column!" 767 ); 768 { 769 i = !0; 770 const e = this.module.getValue(t + 16, "i32"), 771 r = 8; 772 this.module.setValue(e + s * r, 1, "i32"); 773 } 774 } 775 console.log(`constraint ${s}: ${r[a]} (op=${u})`); 776 } 777 } 778 if (!i) 779 throw Error( 780 "You must query the dom using `select ... from dom where selector MATCH <css-selector>`" 781 ); 782 const s = this.module.getValue(t + 64, "i32"); 783 return this.module.setValue(t + 20, s, "i32"), 0; 784 } catch (t) { 785 return ( 786 console.error("xbestindex", t), 787 this.setVtabError(e, String(t)), 788 21 789 ); 790 } 791 } 792 xFilter(e, t, o, s, a) { 793 if ((console.log("xfilter", s), 1 !== s)) 794 return ( 795 console.error("did not get a single argument to xFilter"), 21 796 ); 797 const u = this.module.extract_value(a + 0), 798 l = this.getCursor(e); 799 l.querySelector = u; 800 const c = t, 801 f = n.filter((e) => c & (1 << r[e])); 802 return ( 803 console.log("used columns", f), 804 (l.elements = i({ type: "select", selector: u, columns: f })), 805 0 806 ); 807 } 808 xNext(e) { 809 return this.getCursor(e).index++, 0; 810 } 811 xEof(e) { 812 const t = this.getCursor(e); 813 return +(t.index >= t.elements.length); 814 } 815 xColumn(e, t, n) { 816 const o = this.getCursor(e), 817 i = o.elements[o.index]; 818 if (r[n] in i) this.module.set_return_value(t, i[r[n]]); 819 else 820 switch (n) { 821 case r.idx: 822 this.module.set_return_value(t, o.index); 823 break; 824 case r.querySelector: 825 this.module.set_return_value(t, o.querySelector); 826 break; 827 default: 828 throw Error(`unknown column ${r[n]}`); 829 } 830 return 0; 831 } 832 setVtabError(e, t) { 833 const r = this.module.lengthBytesUTF8(t) + 1, 834 n = this.module.sqlite3_malloc(r); 835 console.log("writing error", t, r), 836 this.module.stringToUTF8(t, n, r), 837 this.module.setValue(e + 8, n, "i32"); 838 }
839 xUpdate(e, t, r, n) { 840 try { 841 const [e, n, ...s] = Array.from({ length: t }, (e, t) => 842 this.module.extract_value(r + 4 * t) 843 ); 844 if (e) 845 if (e && !n) 846 console.log("DELETE", e), 847 i({ type: "delete", selector: e }); 848 else { 849 if (e !== n) throw "The selector row can't be set"; 850 i({ type: "update", value: o(s) }); 851 } 852 else 853 console.assert(null === n), 854 i({ type: "insert", value: o(s) }); 855 return 0; 856 } catch (t) { 857 return this.setVtabError(e, String(t)), 21; 858 } 859 } 860 xRowid(e, t) { 861 throw Error("xRowid not implemented"); 862 } 863 xFindFunction(e, t, r, n, o) { 864 return "match" !== this.module.UTF8ToString(r) 865 ? 0 866 : (this.module.setValue( 867 n, 868 this.module.addFunction((e, t, r) => { 869 this.module.set_return_value(e, !0); 870 }, "viii"), 871 "i32" 872 ), 873 150); 874 } 875 }; 876 }, 877 365: (e, t, r) => { 878 e = r.nmd(e); 879 var n = void 0, 880 o = function (t) { 881 return ( 882 n || 883 (n = new Promise(function (n, o) { 884 var i, 885 s = (i = void 0 !== t ? t : {}).onAbort; 886 (i.onAbort = function (e) { 887 o(new Error(e)), s && s(e); 888 }), 889 (i.postRun = i.postRun || []), 890 i.postRun.push(function () { 891 n(i); 892 }), 893 (e = void 0), 894 ((i = void 0 !== i ? i : {}).onRuntimeInitialized = 895 function () { 896 var e = Ne(4), 897 t = i.cwrap, 898 r = t("sqlite3_open", "number", ["string", "number"]), 899 n = 900 (t("sqlite3_open_v2", "number", [ 901 "string", 902 "number", 903 "number", 904 "string", 905 ]), 906 t("sqlite3_close_v2", "number", ["number"])), 907 o = t("sqlite3_exec", "number", [ 908 "number", 909 "string", 910 "number", 911 "number", 912 "number", 913 ]), 914 s = t("sqlite3_changes", "number", ["number"]), 915 a = t("sqlite3_prepare_v2", "number", [ 916 "number", 917 "string", 918 "number", 919 "number", 920 "number", 921 ]), 922 u = t("sqlite3_sql", "string", ["number"]), 923 l = t("sqlite3_normalized_sql", "string", ["number"]), 924 c = t("sqlite3_prepare_v2", "number", [ 925 "number", 926 "number", 927 "number", 928 "number", 929 "number", 930 ]), 931 f = t("sqlite3_bind_text", "number", [ 932 "number", 933 "number", 934 "number", 935 "number", 936 "number", 937 ]), 938 d = t("sqlite3_bind_blob", "number", [ 939 "number", 940 "number", 941 "number", 942 "number", 943 "number", 944 ]), 945 h = t("sqlite3_bind_double", "number", [ 946 "number", 947 "number", 948 "number", 949 ]), 950 p = t("sqlite3_bind_int", "number", [ 951 "number", 952 "number", 953 "number", 954 ]), 955 m = t("sqlite3_bind_parameter_index", "number", [ 956 "number", 957 "string", 958 ]), 959 _ = t("sqlite3_step", "number", ["number"]), 960 g = t("sqlite3_errmsg", "string", ["number"]), 961 v = t("sqlite3_column_count", "number", ["number"]), 962 y = t("sqlite3_data_count", "number", ["number"]), 963 b = t("sqlite3_column_double", "number", [ 964 "number", 965 "number", 966 ]), 967 w = t("sqlite3_column_text", "string", [ 968 "number", 969 "number", 970 ]), 971 E = t("sqlite3_column_blob", "number", [ 972 "number", 973 "number", 974 ]), 975 k = t("sqlite3_column_bytes", "number", [ 976 "number", 977 "number", 978 ]), 979 S = t("sqlite3_column_type", "number", [ 980 "number", 981 "number", 982 ]), 983 D = t("sqlite3_column_name", "string", [ 984 "number", 985 "number", 986 ]), 987 M = t("sqlite3_reset", "number", ["number"]), 988 A = t("sqlite3_clear_bindings", "number", ["number"]), 989 R = t("sqlite3_finalize", "number", ["number"]), 990 z = t("sqlite3_create_module_v2", "number", [ 991 "number", 992 "string", 993 "number", 994 "number", 995 "number", 996 ]), 997 j = t("sqlite3_create_function_v2", "number", [ 998 "number", 999 "string", 1000 "number", 1001 "number", 1002 "number", 1003 "number", 1004 "number", 1005 "number", 1006 "number", 1007 ]), 1008 B = t("sqlite3_value_type", "number", ["number"]), 1009 L = t("sqlite3_value_bytes", "number", ["number"]), 1010 N = t("sqlite3_value_text", "string", ["number"]), 1011 H = t("sqlite3_value_blob", "number", ["number"]), 1012 I = t("sqlite3_value_double", "number", ["number"]), 1013 U = t("sqlite3_result_double", "", [ 1014 "number", 1015 "number", 1016 ]), 1017 W = t("sqlite3_result_null", "", ["number"]), 1018 K = t("sqlite3_result_text", "", [ 1019 "number", 1020 "string", 1021 "number", 1022 "number", 1023 ]), 1024 Y = t("sqlite3_result_blob", "", [ 1025 "number", 1026 "number", 1027 "number", 1028 "number", 1029 ]), 1030 Q = t("sqlite3_result_int", "", ["number", "number"]), 1031 J = t("sqlite3_result_error", "", [ 1032 "number", 1033 "string", 1034 "number", 1035 ]), 1036 Z = t("sqlite3_malloc", "number", ["number"]); 1037 i.sqlite3_malloc = Z; 1038 var ee = t("RegisterExtensionFunctions", "number", [ 1039 "number", 1040 ]); 1041 function te(e, t) { 1042 (this.stmt = e), 1043 (this.db = t), 1044 (this.pos = 1), 1045 (this.allocatedmem = []); 1046 } 1047 function re(e, t) { 1048 this.db = t; 1049 var r = $(e) + 1; 1050 if (((this.sqlPtr = ze(r)), null === this.sqlPtr)) 1051 throw new Error( 1052 "Unable to allocate memory for the SQL string" 1053 ); 1054 G(e, this.sqlPtr, r), 1055 (this.nextSqlPtr = this.sqlPtr), 1056 (this.nextSqlString = null),
1057 (this.activeStatement = null); 1058 } 1059 function ne(t) { 1060 (this.filename = 1061 "dbfile_" + ((4294967295 * Math.random()) >>> 0)), 1062 null != t && 1063 Ee.createDataFile("/", this.filename, t, !0, !0); 1064 const n = r(this.filename, e); 1065 (this.db = P(e, "i32")), 1066 this.handleError(n), 1067 ee(this.db), 1068 (this.statements = {}), 1069 (this.functions = {}); 1070 } 1071 function oe(t) { 1072 this.filename = t; 1073 const n = r(this.filename, e); 1074 (this.db = P(e, "i32")), 1075 this.handleError(n), 1076 ee(this.db), 1077 (this.statements = {}), 1078 (this.functions = {}); 1079 } 1080 (te.prototype.bind = function (e) { 1081 if (!this.stmt) throw "Statement closed"; 1082 return ( 1083 this.reset(), 1084 Array.isArray(e) 1085 ? this.bindFromArray(e) 1086 : null == e || 1087 "object" != typeof e || 1088 this.bindFromObject(e) 1089 ); 1090 }), 1091 (te.prototype.bind_ = te.prototype.bind), 1092 (te.prototype.step = function () { 1093 if (!this.stmt) throw "Statement closed"; 1094 this.pos = 1; 1095 var e = _(this.stmt); 1096 switch (e) { 1097 case 100: 1098 return !0; 1099 case 101: 1100 return !1; 1101 default: 1102 throw this.db.handleError(e); 1103 } 1104 }), 1105 (te.prototype.getNumber = function (e) { 1106 return ( 1107 null == e && ((e = this.pos), (this.pos += 1)), 1108 b(this.stmt, e) 1109 ); 1110 }), 1111 (te.prototype.getString = function (e) { 1112 return ( 1113 null == e && ((e = this.pos), (this.pos += 1)), 1114 w(this.stmt, e) 1115 ); 1116 }), 1117 (te.prototype.getBlob = function (e) { 1118 null == e && ((e = this.pos), (this.pos += 1)); 1119 for ( 1120 var t = k(this.stmt, e), 1121 r = E(this.stmt, e), 1122 n = new Uint8Array(t), 1123 o = 0; 1124 o < t; 1125 o += 1 1126 ) 1127 n[o] = O[r + o]; 1128 return n; 1129 }), 1130 (te.prototype.get = function (e) { 1131 null != e && this.bind(e) && this.step(); 1132 for ( 1133 var t = [], r = y(this.stmt), n = 0; 1134 n < r; 1135 n += 1 1136 ) 1137 switch (S(this.stmt, n)) { 1138 case 1: 1139 case 2: 1140 t.push(this.getNumber(n)); 1141 break; 1142 case 3: 1143 t.push(this.getString(n)); 1144 break; 1145 case 4: 1146 t.push(this.getBlob(n)); 1147 break; 1148 default: 1149 t.push(null); 1150 } 1151 return t; 1152 }), 1153 (te.prototype.getColumnNames = function () { 1154 for ( 1155 var e = [], t = v(this.stmt), r = 0; 1156 r < t; 1157 r += 1 1158 ) 1159 e.push(D(this.stmt, r)); 1160 return e; 1161 }), 1162 (te.prototype.getAsObject = function (e) { 1163 for ( 1164 var t = this.get(e), 1165 r = this.getColumnNames(), 1166 n = {}, 1167 o = 0; 1168 o < r.length; 1169 o += 1 1170 ) 1171 n[r[o]] = t[o]; 1172 return n; 1173 }), 1174 (te.prototype.getSQL = function () { 1175 return u(this.stmt); 1176 }), 1177 (te.prototype.getNormalizedSQL = function () { 1178 return l(this.stmt); 1179 }), 1180 (te.prototype.run = function (e) { 1181 return ( 1182 null != e && this.bind(e), 1183 this.step(), 1184 this.reset() 1185 ); 1186 }), 1187 (te.prototype.bindString = function (e, t) { 1188 null == t && ((t = this.pos), (this.pos += 1)
1188); 1189 var r = Pe(e), 1190 n = C(r, T); 1191 return ( 1192 this.allocatedmem.push(n), 1193 this.db.handleError( 1194 f(this.stmt, t, n, r.length - 1, 0) 1195 ), 1196 !0 1197 ); 1198 }), 1199 (te.prototype.bindBlob = function (e, t) { 1200 null == t && ((t = this.pos), (this.pos += 1)); 1201 var r = C(e, T); 1202 return ( 1203 this.allocatedmem.push(r), 1204 this.db.handleError( 1205 d(this.stmt, t, r, e.length, 0) 1206 ), 1207 !0 1208 ); 1209 }), 1210 (te.prototype.bindNumber = function (e, t) { 1211 null == t && ((t = this.pos), (this.pos += 1)); 1212 var r = e === (0 | e) ? p : h; 1213 return this.db.handleError(r(this.stmt, t, e)), !0; 1214 }), 1215 (te.prototype.bindNull = function (e) { 1216 return ( 1217 null == e && ((e = this.pos), (this.pos += 1)), 1218 0 === d(this.stmt, e, 0, 0, 0) 1219 ); 1220 }), 1221 (te.prototype.bindValue = function (e, t) { 1222 switch ( 1223 (null == t && ((t = this.pos), (this.pos += 1)), 1224 typeof e) 1225 ) { 1226 case "string": 1227 return this.bindString(e, t); 1228 case "number": 1229 case "boolean": 1230 return this.bindNumber(e + 0, t); 1231 case "object": 1232 if (null === e) return this.bindNull(t); 1233 if (null != e.length) 1234 return this.bindBlob(e, t); 1235 } 1236 throw ( 1237 "Wrong API use : tried to bind a value of an unknown type (" + 1238 e + 1239 ")." 1240 ); 1241 }), 1242 (te.prototype.bindFromObject = function (e) { 1243 var t = this; 1244 return ( 1245 Object.keys(e).forEach(function (r) { 1246 var n = m(t.stmt, r); 1247 0 !== n && t.bindValue(e[r], n); 1248 }), 1249 !0 1250 ); 1251 }), 1252 (te.prototype.bindFromArray = function (e) { 1253 for (var t = 0; t < e.length; t += 1) 1254 this.bindValue(e[t], t + 1); 1255 return !0; 1256 }), 1257 (te.prototype.reset = function () { 1258 return ( 1259 this.freemem(), 1260 0 === A(this.stmt) && 0 === M(this.stmt) 1261 ); 1262 }), 1263 (te.prototype.freemem = function () { 1264 for ( 1265 var e; 1266 void 0 !== (e = this.allocatedmem.pop()); 1267 1268 ) 1269 Te(e); 1270 }), 1271 (te.prototype.free = function () { 1272 var e; 1273 return ( 1274 this.freemem(), 1275 (e = 0 === R(this.stmt)), 1276 delete this.db.statements[this.stmt], 1277 (this.stmt = 0), 1278 e 1279 ); 1280 }), 1281 (re.prototype.next = function () { 1282 if (null === this.sqlPtr) return { done: !0 }; 1283 if ( 1284 (null !== this.activeStatement && 1285 (this.activeStatement.free(), 1286 (this.activeStatement = null)), 1287 !this.db.db) 1288 ) 1289 throw ( 1290 (this.finalize(), new Error("Database closed")) 1291 ); 1292 var t = Be(), 1293 r = Ne(4); 1294 F(e, 0, "i32"), F(r, 0, "i32"); 1295 try { 1296 this.db.handleError( 1297 c(this.db.db, this.nextSqlPtr, -1, e, r) 1298 ), 1299 (this.nextSqlPtr = P(r, "i32")); 1300 var n = P(e, "i32"); 1301 return 0 === n 1302 ? (this.finalize(), { done: !0 }) 1303 : ((this.activeStatement = new te(n, this.db)), 1304 (this.db.statements[n] = 1305 this.activeStatement), 1306 { value: this.activeStatement, done: !1 }); 1307 } catch (e) { 1308 throw ( 1309 ((this.nextSqlString = V(this.nextSqlPtr)), 1310 this.finalize(), 1311 e) 1312 ); 1313 } finally { 1314 Le(t); 1315 } 1316 }), 1317 (re.prototype.finalize = function () { 1318 Te(this.sqlPtr), (this.sqlPtr = null); 1319 }), 1320 (re.prototype.getRemainingSQL = function () { 1321 return null !== this.nextSqlString 1322 ? this.nextSqlString 1323 : V(this.nextSqlPtr); 1324 }), 1325 "function" == typeof Symbol && 1326 "symbol" == typeof Symbol.iterator && 1327 (re.prototype[Symbol.iterator] = function () { 1328 return this; 1329 }), 1330 (ne.prototype.run = function (t, r) { 1331 if (!this.db) throw "Database closed"; 1332 if (r) { 1333 var n = this.prepare(t, r); 1334 try { 1335 n.step(); 1336 } finally {
1337 n.free(); 1338 } 1339 } else this.handleError(o(this.db, t, 0, 0, e)); 1340 return this; 1341 }), 1342 (ne.prototype.exec = function (t, r) { 1343 if (!this.db) throw "Database closed"; 1344 var n, 1345 o, 1346 i, 1347 s = Be(), 1348 a = null; 1349 try { 1350 for ( 1351 var u = 1352 ((o = $((n = t)) + 1), 1353 (i = Ne(o)), 1354 X(n, O, i, o), 1355 i), 1356 l = Ne(4), 1357 f = []; 1358 0 !== P(u, "i8"); 1359 1360 ) { 1361 F(e, 0, "i32"), 1362 F(l, 0, "i32"), 1363 this.handleError(c(this.db, u, -1, e, l)); 1364 var d = P(e, "i32"); 1365 if (((u = P(l, "i32")), 0 !== d)) { 1366 var h = null; 1367 for ( 1368 a = new te(d, this), null != r && a.bind(r); 1369 a.step(); 1370 1371 ) 1372 null === h && 1373 ((h = { 1374 columns: a.getColumnNames(), 1375 values: [], 1376 }), 1377 f.push(h)), 1378 h.values.push(a.get()); 1379 a.free(); 1380 } 1381 } 1382 return f; 1383 } catch (e) { 1384 throw (a && a.free(), e); 1385 } finally { 1386 Le(s); 1387 } 1388 }), 1389 (ne.prototype.each = function (e, t, r, n) { 1390 var o; 1391 "function" == typeof t && 1392 ((n = r), (r = t), (t = void 0)), 1393 (o = this.prepare(e, t)); 1394 try { 1395 for (; o.step(); ) r(o.getAsObject()); 1396 } finally { 1397 o.free(); 1398 } 1399 if ("function" == typeof n) return n(); 1400 }), 1401 (ne.prototype.prepare = function (t, r) { 1402 F(e, 0, "i32"), 1403 this.handleError(a(this.db, t, -1, e, 0)); 1404 var n = P(e, "i32"); 1405 if (0 === n) throw "Nothing to prepare"; 1406 var o = new te(n, this); 1407 return ( 1408 null != r && o.bind(r), 1409 (this.statements[n] = o), 1410 o 1411 ); 1412 }), 1413 (ne.prototype.iterateStatements = function (e) { 1414 return new re(e, this); 1415 }), 1416 (ne.prototype.export = function () { 1417 Object.values(this.statements).forEach(function ( 1418 e 1419 ) { 1420 e.free(); 1421 }), 1422 Object.values(this.functions).forEach(q), 1423 (this.functions = {}), 1424 this.handleError(n(this.db)); 1425 var t = Ee.readFile(this.filename, { 1426 encoding: "binary", 1427 }); 1428 return ( 1429 this.handleError(r(this.filename, e)), 1430 (this.db = P(e, "i32")), 1431 t 1432 ); 1433 }), 1434 (ne.prototype.close = function () { 1435 null !== this.db && 1436 (Object.values(this.statements).forEac
1436h(function ( 1437 e 1438 ) { 1439 e.free(); 1440 }), 1441 Object.values(this.functions).forEach(q), 1442 (this.functions = {}), 1443 this.handleError(n(this.db)), 1444 Ee.unlink("/" + this.filename), 1445 (this.db = null)); 1446 }), 1447 (ne.prototype.handleError = function (e) { 1448 var t; 1449 if (0 === e) return null; 1450 throw ( 1451 ((t = g(this.db)), 1452 new Error("SQLite: " + (t || "Code " + e))) 1453 ); 1454 }), 1455 (ne.prototype.getRowsModified = function () { 1456 return s(this.db); 1457 }), 1458 (ne.prototype.create_function = function (e, t) { 1459 Object.prototype.hasOwnProperty.call( 1460 this.functions, 1461 e 1462 ) && 1463 (q(this.functions[e]), delete this.functions[e]); 1464 var r = x(function (e, r, n) { 1465 for (var o, s = [], a = 0; a < r; a += 1) 1466 s.push(i.extract_value(n + 4 * a)); 1467 try { 1468 o = t.apply(null, s); 1469 } catch (t) { 1470 return void J(e, "JS threw: " + t, -1); 1471 } 1472 i.set_return_value(e, o); 1473 }, "viii"); 1474 return ( 1475 (this.functions[e] = r), 1476 this.handleError( 1477 j(this.db, e, t.length, 1, 0, r, 0, 0, 0) 1478 ), 1479 this 1480 ); 1481 }), 1482 (i.extract_value = function (e) { 1483 var t = P(e, "i32"), 1484 r = B(t); 1485 return 1 === r || 2 === r 1486 ? I(t) 1487 : 3 === r 1488 ? N(t) 1489 : 4 === r 1490 ? (function (e) { 1491 for ( 1492 var t = L(e), 1493 r = H(e), 1494 n = new Uint8Array(t), 1495 o = 0; 1496 o < t; 1497 o += 1 1498 ) 1499 n[o] = O[r + o]; 1500 return n; 1501 })(t) 1502 : null; 1503 }), 1504 (i.set_return_value = function (e, t) { 1505 switch (typeof t) { 1506 case "boolean": 1507 Q(e, t ? 1 : 0); 1508 break; 1509 case "number": 1510 U(e, t); 1511 break; 1512 case "string": 1513 K(e, t, -1, -1); 1514 break; 1515 case "object": 1516 if (null === t) W(e); 1517 else if (null != t.length) { 1518 var r = C(t, T); 1519 Y(e, r, t.length, -1), Te(r); 1520 } else 1521 J( 1522 e, 1523 "Wrong API use : tried to return a value of an unknown type (" + 1524 t + 1525 ").", 1526 -1 1527 ); 1528 break; 1529 default: 1530 console.warn( 1531 "unknown sqlite result type: ", 1532 typeof t, 1533 t 1534 ), 1535 W(e); 1536 } 1537 }), 1538 (ne.prototype.create_vtab = function (e) { 1539 const t = new e(i, this), 1540 r = { 1541 iVersion: null, 1542 xCreate: "ptr", 1543 xConnect: "ptr", 1544 xBestIndex: "ptr", 1545 xDisconnect: "ptr", 1546 xDestroy: "ptr", 1547 xOpen: "ptr", 1548 xClose: "ptr", 1549 xFilter: "ptr", 1550 xNext: "ptr", 1551 xEof: "ptr", 1552 xColumn: "ptr", 1553 xRowid: "ptr",
1554 xUpdate: "ptr", 1555 xBegin: "ptr", 1556 xSync: "ptr", 1557 xCommit: "ptr", 1558 xRollback: "ptr", 1559 xFindFunction: "ptr", 1560 xRename: "ptr", 1561 xSavepoint: "ptr", 1562 xRelease: "ptr", 1563 xRollbackTo: "ptr", 1564 xShadowName: "ptr", 1565 }, 1566 n = ze(4 * Object.keys(r).length); 1567 let o = 0; 1568 for (const e in r) { 1569 let i = t[e] || 0, 1570 s = "i32"; 1571 if (r[e] && t[e]) { 1572 const r = t[e].bind(t); 1573 (i = x( 1574 r, 1575 Array(1 + r.length) 1576 .fill("i") 1577 .join("") 1578 )), 1579 (s = "*"); 1580 } 1581 F(n + 4 * o, i, s), o++; 1582 } 1583 this.handleError(z(this.db, t.name, n, 0, 0)); 1584 }), 1585 (i.Database = ne), 1586 (i.CustomDatabase = oe), 1587 (i.FS = Ee), 1588 (oe.prototype = Object.create(ne.prototype)); 1589 }); 1590 var a, 1591 u = {}; 1592 for (a in i) i.hasOwnProperty(a) && (u[a] = i[a]); 1593 var l, 1594 c, 1595 f, 1596 d, 1597 h, 1598 p = [], 1599 m = "./this.program", 1600 _ = "object" == typeof window, 1601 g = "function" == typeof importScripts, 1602 v = 1603 "object" == typeof process && 1604 "object" == typeof process.versions && 1605 "string" == typeof process.versions.node, 1606 y = ""; 1607 v 1608 ? ((y = g ? r(101).dirname(y) + "/" : "//"), 1609 (l = function (e, t) { 1610 return ( 1611 d || (d = r(905)), 1612 h || (h = r(101)), 1613 (e = h.normalize(e)), 1614 d.readFileSync(e, t ? null : "utf8") 1615 ); 1616 }), 1617 (f = function (e) { 1618 var t = l(e, !0); 1619 return ( 1620 t.buffer || (t = new Uint8Array(t)), A(t.buffer), t 1621 ); 1622 }), 1623 (c = function (e, t, n) { 1624 d || (d = r(905)), 1625 h || (h = r(101)), 1626 (e = h.normalize(e)), 1627 d.readFile(e, function (e, r) { 1628 e ? n(e) : t(r.buffer); 1629 }); 1630 }), 1631 process.argv.length > 1 && 1632 (m = process.argv[1].replace(/\\/g, "/")), 1633 (p = process.argv.slice(2)), 1634 (e.exports = i), 1635 (i.inspect = function () { 1636 return "[Emscripten Module object]"; 1637 })) 1638 : (_ || g) && 1639 (g 1640 ? (y = self.location.href) 1641 : "undefined" != typeof document && 1642 document.currentScript && 1643 (y = document.currentScript.src), 1644 (y = 1645 0 !== y.indexOf("blob:") 1646 ? y.substr(0, y.lastIndexOf("/") + 1) 1647 : ""), 1648 (l = function (e) { 1649 var t = new XMLHttpRequest(); 1650 return ( 1651 t.open("GET", e, !1), t.send(null), t.responseText 1652 ); 1653 }), 1654 g && 1655 (f = function (e) { 1656 var t = new XMLHttpRequest(); 1657 return ( 1658 t.open("GET", e, !1), 1659 (t.responseType = "arraybuffer"), 1660 t.send(null), 1661 new Uint8Array(t.response) 1662 ); 1663 }), 1664 (c = function (e, t, r) { 1665 var n = new XMLHttpRequest(); 1666 n.open("GET", e, !0), 1667 (n.responseType = "arraybuffer"), 1668 (n.onload = function () { 1669 200 == n.status || (0 == n.status && n.response) 1670 ? t(n.response) 1671 : r(); 1672 }), 1673 (n.onerror = r), 1674 n.send(null); 1675 })); 1676 var b = i.print || console.log.bind(console), 1677 w = i.printErr || console.warn.bind(console); 1678 for (a in u) u.hasOwnProperty(a) && (i[a] = u[a]); 1679 (u = null),
1680 i.arguments && (p = i.arguments), 1681 i.thisProgram && (m = i.thisProgram), 1682 i.quit && i.quit; 1683 var E, 1684 k, 1685 S = []; 1686 function q(e) { 1687 E.delete(Q.get(e)), S.push(e); 1688 } 1689 function x(e, t) { 1690 return (function (e, t) { 1691 if (!E) { 1692 E = new WeakMap(); 1693 for (var r = 0; r < Q.length; r++) { 1694 var n = Q.get(r); 1695 n && E.set(n, r); 1696 } 1697 } 1698 if (E.has(e)) return E.get(e); 1699 var o = (function () { 1700 if (S.length) return S.pop(); 1701 try { 1702 Q.grow(1); 1703 } catch (e) { 1704 if (!(e instanceof RangeError)) throw e; 1705 throw "Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."; 1706 } 1707 return Q.length - 1; 1708 })(); 1709 try { 1710 Q.set(o, e); 1711 } catch (r) { 1712 if (!(r instanceof TypeError)) throw r; 1713 var i = (function (e, t) { 1714 if ("function" == typeof WebAssembly.Function) { 1715 for ( 1716 var r = { 1717 i: "i32", 1718 j: "i64", 1719 f: "f32", 1720 d: "f64", 1721 }, 1722 n = { 1723 parameters: [], 1724 results: "v" == t[0] ? [] : [r[t[0]]], 1725 }, 1726 o = 1; 1727 o < t.length; 1728 ++o 1729 ) 1730 n.parameters.push(r[t[o]]); 1731 return new WebAssembly.Function(n, e); 1732 } 1733 var i = [1, 0, 1, 96], 1734 s = t.slice(0, 1), 1735 a = t.slice(1), 1736 u = { i: 127, j: 126, f: 125, d: 124 }; 1737 for (i.push(a.length), o = 0; o < a.length; ++o) 1738 i.push(u[a[o]]); 1739 "v" == s ? i.push(0) : (i = i.concat([1, u[s]])), 1740 (i[1] = i.length - 2); 1741 var l = new Uint8Array( 1742 [0, 97, 115, 109, 1, 0, 0, 0].concat( 1743 i, 1744 [ 1745 2, 7, 1, 1, 101, 1, 102, 0, 0, 7, 5, 1, 1, 1746 102, 0, 0, 1747 ] 1748 ) 1749 ), 1750 c = new WebAssembly.Module(l); 1751 return new WebAssembly.Instance(c, { e: { f: e } }) 1752 .exports.f; 1753 })(e, t); 1754 Q.set(o, i); 1755 } 1756 return E.set(e, o), o; 1757 })(e, t); 1758 } 1759 i.wasmBinary && (k = i.wasmBinary); 1760 var D; 1761 i.noExitRuntime; 1762 function F(e, t, r, n) { 1763 switch ( 1764 ("*" === (r = r || "i8").charAt(r.length - 1) && 1765 (r = "i32"), 1766 r) 1767 ) { 1768 case "i1": 1769 case "i8": 1770 O[e >> 0] = t; 1771 break; 1772 case "i16": 1773 L[e >> 1] = t; 1774 break; 1775 case "i32": 1776 N[e >> 2] = t; 1777 break; 1778 case "i64": 1779 (te = [ 1780 t >>> 0, 1781 ((ee = t), 1782 +Math.abs(ee) >= 1 1783 ? ee > 0 1784 ? (0 | 1785 Math.min( 1786 +Math.floor(ee / 4294967296), 1787 4294967295 1788 )) >>> 1789 0 1790 : ~~+Math.ceil( 1791 (ee - +(~~ee >>> 0)) / 4294967296 1792 ) >>> 0 1793 : 0), 1794 ]), 1795 (N[e >> 2] = te[0]), 1796 (N[(e + 4) >> 2] = te[1]); 1797 break; 1798 case "float": 1799 H[e >> 2] = t; 1800 break; 1801 case "double": 1802 I[e >> 3] = t; 1803 break; 1804 default: 1805 ce("invalid type for setValue: " + r); 1806 } 1807 } 1808 function P(e, t, r) { 1809 switch ( 1810 ("*" === (t = t || "i8").charAt(t.length - 1) && 1811 (t = "i32"), 1812 t) 1813 ) { 1814 case "i1": 1815 case "i8": 1816 return O[e >> 0]; 1817 case "i16": 1818 return L[e >> 1]; 1819 case "i32": 1820 case "i64": 1821 return N[e >> 2]; 1822 case "float": 1823 return H[e >> 2]; 1824 case "double": 1825 return I[e >> 3]; 1826 default: 1827 ce("invalid type for getValue: " + t); 1828 } 1829 return null; 1830 } 1831 "object" != typeof WebAssembly && 1832 ce("no native wasm support detected"); 1833 var M = !1; 1834 function A(e, t) { 1835 e || ce("Assertion failed: " + t); 1836 } 1837 function R(e) { 1838 var t = i["_" + e]; 1839 return ( 1840 A( 1841 t, 1842 "Cannot call unknown function " + 1843 e + 1844 ", make sure it is exported" 1845 ), 1846 t 1847 ); 1848 } 1849 function z(e, t, r, n, o) { 1850 var i = {
1851 string: function (e) { 1852 var t = 0; 1853 if (null != e && 0 !== e) { 1854 var r = 1 + (e.length << 2); 1855 G(e, (t = Ne(r)), r); 1856 } 1857 return t; 1858 }, 1859 array: function (e) { 1860 var t = Ne(e.length); 1861 return ( 1862 (function (e, t) { 1863 O.set(e, t); 1864 })(e, t), 1865 t 1866 ); 1867 }, 1868 }, 1869 s = R(e), 1870 a = [], 1871 u = 0; 1872 if (n) 1873 for (var l = 0; l < n.length; l++) { 1874 var c = i[r[l]]; 1875 c 1876 ? (0 === u && (u = Be()), (a[l] = c(n[l]))) 1877 : (a[l] = n[l]); 1878 } 1879 var f = s.apply(null, a); 1880 return (function (e) { 1881 return ( 1882 0 !== u && Le(u), 1883 (function (e) { 1884 return "string" === t 1885 ? V(e) 1886 : "boolean" === t 1887 ? Boolean(e) 1888 : e; 1889 })(e) 1890 ); 1891 })(f); 1892 } 1893 var T = 0; 1894 function C(e, t) { 1895 var r; 1896 return ( 1897 (r = 1 == t ? Ne(e.length) : ze(e.length)), 1898 e.subarray || e.slice 1899 ? B.set(e, r) 1900 : B.set(new Uint8Array(e), r), 1901 r 1902 ); 1903 } 1904 var j, 1905 O, 1906 B, 1907 L, 1908 N, 1909 H, 1910 I, 1911 U = 1912 "undefined" != typeof TextDecoder 1913 ? new TextDecoder("utf8") 1914 : void 0; 1915 function W(e, t, r) { 1916 for (var n = t + r, o = t; e[o] && !(o >= n); ) ++o; 1917 if (o - t > 16 && e.subarray && U) 1918 return U.decode(e.subarray(t, o)); 1919 for (var i = ""; t < o; ) { 1920 var s = e[t++]; 1921 if (128 & s) { 1922 var a = 63 & e[t++]; 1923 if (192 != (224 & s)) { 1924 var u = 63 & e[t++]; 1925 if ( 1926 (s = 1927 224 == (240 & s) 1928 ? ((15 & s) << 12) | (a << 6) | u 1929 : ((7 & s) << 18) | 1930 (a << 12) | 1931 (u << 6) | 1932 (63 & e[t++])) < 65536 1933 ) 1934 i += String.fromCharCode(s); 1935 else { 1936 var l = s - 65536; 1937 i += String.fromCharCode( 1938 55296 | (l >> 10), 1939 56320 | (1023 & l) 1940 ); 1941 } 1942 } else i += String.fromCharCode(((31 & s) << 6) | a); 1943 } else i += String.fromCharCode(s); 1944 } 1945 return i; 1946 } 1947 function V(e, t) { 1948 return e ? W(B, e, t) : ""; 1949 } 1950 function X(e, t, r, n) { 1951 if (!(n > 0)) return 0; 1952 for (var o = r, i = r + n - 1, s = 0; s < e.length; ++s) { 1953 var a = e.charCodeAt(s); 1954 if ( 1955 (a >= 55296 && 1956 a <= 57343 && 1957 (a = 1958 (65536 + ((1023 & a) << 10)) | 1959 (1023 & e.charCodeAt(++s))), 1960 a <= 127) 1961 ) { 1962 if (r >= i) break; 1963 t[r++] = a; 1964 } else if (a <= 2047) { 1965 if (r + 1 >= i) break; 1966 (t[r++] = 192 | (a >> 6)), (t[r++] = 128 | (63 & a)); 1967 } else if (a <= 65535) { 1968 if (r + 2 >= i) break; 1969 (t[r++] = 224 | (a >> 12)), 1970 (t[r++] = 128 | ((a >> 6) & 63)), 1971 (t[r++] = 128 | (63 & a)); 1972 } else { 1973 if (r + 3 >= i) break; 1974 (t[r++] = 240 | (a >> 18)), 1975 (t[r++] = 128 | ((a >> 12) & 63)), 1976 (t[r++] = 128 | ((a >> 6) & 63)), 1977 (t[r++] = 128 | (63 & a)); 1978 } 1979 } 1980 return (t[r] = 0), r - o; 1981 } 1982 function G(e, t, r) { 1983 return X(e, B, t, r); 1984 } 1985 function $(e) { 1986 for (var t = 0, r = 0; r < e.length; ++r) { 1987 var n = e.charCodeAt(r); 1988 n >= 55296 && 1989 n <= 57343 && 1990 (n = 1991 (65536 + ((1023 & n) << 10)) | 1992 (1023 & e.charCodeAt(++r))), 1993 n <= 127 1994 ? ++t 1995 : (t += n <= 2047 ? 2 : n <= 65535 ? 3 : 4); 1996 } 1997 return t; 1998 } 1999 function K(e) { 2000 var t = $(e) + 1, 2001 r = ze(t); 2002 return r && X(e, O, r, t), r; 2003 } 2004 function Y(e) { 2005 (j = e), 2006 (i.HEAP8 = O = new Int8Array(e)), 2007 (i.HEAP16 = L = new Int16Array(e)), 2008 (i.HEAP32 = N = new Int32Array(e)), 2009 (i.HEAPU8 = B = new Uint8Array(e)), 2010 (i.HEAPU16 = new Uint16Array(e)), 2011 (i.HEAPU32 = new Uint32Array(e)), 2012 (i.HEAPF32 = H = new Float32Array(e)), 2013 (i.HEAPF64 = I = new Float64Array(e)); 2014 } 2015 i.INITIAL_MEMORY; 2016 var Q, 2017 J, 2018 Z, 2019 ee, 2020 te, 2021 re = [], 2022 ne = [], 2023 oe = [], 2024 ie = 0, 2025 se = null, 2026 ae = null; 2027 function ue(e) { 2028 ie++, 2029 i.monitorRunDependencies && i.monitorRunDependencies(ie); 2030 } 2031 function le(e) { 2032 if ( 2033 (ie--, 2034 i.monitorRunDependencies && i.monitorRunDependencies(ie), 2035 0 == ie && 2036 (null !== se && (clearInterval(se), (se = null)), ae)) 2037 ) { 2038 var t = ae; 2039 (ae = null), t(); 2040 } 2041 } 2042 function ce(e) { 2043 throw ( 2044 (i.onAbort && i.onAbort(e), 2045 w((e += "")), 2046 (M = !0), 2047 (e = 2048 "abort(" + 2049 e + 2050 "). Build with -s ASSERTIONS=1 for more info."), 2051 new WebAssembly.RuntimeError(e)) 2052 ); 2053 } 2054 function fe(e) { 2055 return e.startsWith( 2056 "data:application/octet-stream;base64," 2057 ); 2058 } 2059 function de(e) { 2060 return e.startsWith("file://"); 2061 } 2062 function he(e) { 2063 try { 2064 if (e == J && k) return new Uint8Array(k); 2065 if (f) return f(e); 2066 throw "both async and sync fetching of the wasm failed"; 2067 } catch (e) { 2068 ce(e); 2069 } 2070 } 2071 function pe(e) { 2072 for (; e.length > 0; ) { 2073 var t = e.shift(); 2074 if ("function" != typeof t) { 2075 var r = t.func; 2076 "number" == typeof r 2077 ? void 0 === t.arg 2078 ? Q.get(r)() 2079 : Q.get(r)(t.arg) 2080 : r(void 0 === t.arg ? null : t.arg); 2081 } else t(i); 2082 } 2083 } 2084 function me() { 2085 me.called || 2086 ((me.called = !0), 2087 (function () { 2088 var e = new Date().getFullYear(), 2089 t = new Date(e, 0, 1), 2090 r = new Date(e, 6, 1), 2091 n = t.getTimezoneOffset(), 2092 o = r.getTimezoneOffset(), 2093 i = Math.max(n, o); 2094 function s(e) {
2095 var t = e.toTimeString().match(/\(([A-Za-z ]+)\)$/); 2096 return t ? t[1] : "GMT"; 2097 } 2098 (N[Oe() >> 2] = 60 * i), 2099 (N[je() >> 2] = Number(n != o)); 2100 var a = s(t), 2101 u = s(r), 2102 l = K(a), 2103 c = K(u); 2104 o < n 2105 ? ((N[Ce() >> 2] = l), (N[(Ce() + 4) >> 2] = c)) 2106 : ((N[Ce() >> 2] = c), (N[(Ce() + 4) >> 2] = l)); 2107 })()); 2108 } 2109 (i.preloadedImages = {}), 2110 (i.preloadedAudios = {}), 2111 fe((J = "sql-wasm.wasm")) || 2112 ((Z = J), 2113 (J = i.locateFile ? i.locateFile(Z, y) : y + Z)); 2114 var _e = { 2115 splitPath: function (e) { 2116 return /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/ 2117 .exec(e) 2118 .slice(1); 2119 }, 2120 normalizeArray: function (e, t) { 2121 for (var r = 0, n = e.length - 1; n >= 0; n--) { 2122 var o = e[n]; 2123 "." === o 2124 ? e.splice(n, 1) 2125 : ".." === o 2126 ? (e.splice(n, 1), r++) 2127 : r && (e.splice(n, 1), r--); 2128 } 2129 if (t) for (; r; r--) e.unshift(".."); 2130 return e; 2131 }, 2132 normalize: function (e) { 2133 var t = "/" === e.charAt(0), 2134 r = "/" === e.substr(-1); 2135 return ( 2136 (e = _e 2137 .normalizeArray( 2138 e.split("/").filter(function (e) { 2139 return !!e; 2140 }), 2141 !t 2142 ) 2143 .join("/")) || 2144 t || 2145 (e = "."), 2146 e && r && (e += "/"), 2147 (t ? "/" : "") + e 2148 ); 2149 }, 2150 dirname: function (e) { 2151 var t = _e.splitPath(e), 2152 r = t[0], 2153 n = t[1]; 2154 return r || n 2155 ? (n && (n = n.substr(0, n.length - 1)), r + n) 2156 : "."; 2157 }, 2158 basename: function (e) { 2159 if ("/" === e) return "/"; 2160 var t = (e = (e = _e.normalize(e)).replace( 2161 /\/$/, 2162 "" 2163 )).lastIndexOf("/"); 2164 return -1 === t ? e : e.substr(t + 1); 2165 }, 2166 extname: function (e) { 2167 return _e.splitPath(e)[3]; 2168 }, 2169 join: function () { 2170 var e = Array.prototype.slice.call(arguments, 0); 2171 return _e.normalize(e.join("/")); 2172 }, 2173 join2: function (e, t) { 2174 return _e.normalize(e + "/" + t); 2175 }, 2176 }, 2177 ge = { 2178 resolve: function () { 2179 for ( 2180 var e = "", t = !1, r = arguments.length - 1; 2181 r >= -1 && !t; 2182 r-- 2183 ) { 2184 var n = r >= 0 ? arguments[r] : Ee.cwd(); 2185 if ("string" != typeof n) 2186 throw new TypeError( 2187 "Arguments to path.resolve must be strings" 2188 ); 2189 if (!n) return ""; 2190 (e = n + "/" + e), (t = "/" === n.charAt(0)); 2191 } 2192 return ( 2193 (t ? "/" : "") + 2194 (e = _e 2195 .normalizeArray( 2196 e.split("/").filter(function (e) { 2197 return !!e; 2198 }), 2199 !t 2200 ) 2201 .join("/")) || "." 2202 ); 2203 }, 2204 relative: function (e, t) { 2205 function r(e) { 2206 for (var t = 0; t < e.length && "" === e[t]; t++); 2207 for ( 2208 var r = e.length - 1; 2209 r >= 0 && "" === e[r]; 2210 r-- 2211 ); 2212 return t > r ? [] : e.slice(t, r - t + 1); 2213 } 2214 (e = ge.resolve(e).substr(1)), 2215 (t = ge.resolve(t).substr(1)); 2216 for ( 2217 var n = r(e.split("/")), 2218 o = r(t.split("/")), 2219 i = Math.min(n.length, o.length), 2220 s = i, 2221 a = 0; 2222 a < i; 2223 a++ 2224 ) 2225 if (n[a] !== o[a]) { 2226 s = a; 2227 break; 2228 } 2229 var u = []; 2230 for (a = s; a < n.length; a++) u.push(".."); 2231 return (u = u.concat(o.slice(s))).join("/"); 2232 }, 2233 }, 2234 ve = { 2235 ttys: [], 2236 init: function () {}, 2237 shutdown: function () {}, 2238 register: function (e, t) { 2239 (ve.ttys[e] = { input: [], output: [], ops: t }), 2240 Ee.registerDevice(e, ve.stream_ops); 2241 }, 2242 stream_ops: { 2243 open: function (e) { 2244 var t = ve.ttys[e.node.rdev]; 2245 if (!t) throw new Ee.ErrnoError(43); 2246 (e.tty = t), (e.seekable = !1); 2247 }, 2248 close: function (e) { 2249 e.tty.ops.flush(e.tty); 2250 }, 2251 flush: function (e) { 2252 e.tty.ops.flush(e.tty); 2253 }, 2254 read: function (e, t, r, n, o) { 2255 if (!e.tty || !e.tty.ops.get_char) 2256 throw new Ee.ErrnoError(60); 2257 for (var i = 0, s = 0; s < n; s++) { 2258 var a; 2259 try { 2260 a = e.tty.ops.get_char(e.tty); 2261 } catch (e) { 2262 throw new Ee.ErrnoError(29); 2263 } 2264 if (void 0 === a && 0 === i) 2265 throw new Ee.ErrnoError(6); 2266 if (null == a) break; 2267 i++, (t[r + s] = a); 2268 } 2269 return i && (e.node.timestamp = Date.now()), i; 2270 }, 2271 write: function (e, t, r, n, o) { 2272 if (!e.tty || !e.tty.ops.put_char) 2273 throw new Ee.ErrnoError(60); 2274 try { 2275 for (var i = 0; i < n; i++) 2276 e.tty.ops.put_char(e.tty, t[r + i]); 2277 } catch (e) { 2278 throw new Ee.ErrnoError(29); 2279 } 2280 return n && (e.node.timestamp = Date.now()), i; 2281 }, 2282 }, 2283 default_tty_ops: { 2284 get_char: function (e) { 2285 if (!e.input.length) { 2286 var t = null; 2287 if (v) { 2288 var r = Buffer.alloc(256), 2289 n = 0; 2290 try { 2291 n = d.readSync( 2292 process.stdin.fd, 2293 r, 2294 0, 2295 256, 2296 null 2297 ); 2298 } catch (e) { 2299 if (!e.toString().includes("EOF")) throw e; 2300 n = 0; 2301 } 2302 t = 2303 n > 0 ? r.slice(0, n).toString("utf-8") : null; 2304 } else 2305 "undefined" != typeof window && 2306 "function" == typeof window.prompt 2307 ? null !== (t = window.prompt("Input: ")) && 2308 (t += "\n") 2309 : "function" == typeof readline && 2310 null !== (t = readline()) && 2311 (t += "\n"); 2312 if (!t) return null; 2313 e.input = Pe(t, !0); 2314 } 2315 return e.input.shift(); 2316 }, 2317 put_char: function (e, t) { 2318 null === t || 10 === t 2319 ? (b(W(e.output, 0)), (e.output = [])) 2320 : 0 != t && e.output.push(t); 2321 }, 2322 flush: function (e) { 2323 e.output && 2324 e.output.length > 0 && 2325 (b(W(e.output, 0)), (e.output = [])); 2326 }, 2327 }, 2328 default_tty1_ops: { 2329 put_char: function (e, t) { 2330 null === t || 10 === t 2331 ? (w(W(e.output, 0)), (e.output = [])) 2332 : 0 != t && e.output.push(t); 2333 }, 2334 flush: function (e) { 2335 e.output && 2336 e.output.length > 0 && 2337 (w(W(e.output, 0)), (e.output = [])); 2338 }, 2339 }, 2340 }; 2341 function ye(e) { 2342 e = (function (e, t) { 2343 return 65536 * Math.ceil(e / 65536); 2344 })(e); 2345 var t = He(65536, e); 2346 return t 2347 ? ((function (e, t) { 2348 B.fill(0, e, e + t); 2349 })(t, e), 2350 t) 2351 : 0; 2352 } 2353 var be, 2354 we = { 2355 ops_table: null, 2356 mount: function (e) { 2357 return we.createNode(null, "/", 16895, 0); 2358 }, 2359 createNode: function (e, t, r, n) { 2360 if (Ee.isBlkdev(r) || Ee.isFIFO(r)) 2361 throw new Ee.ErrnoError(63); 2362 we.ops_table || 2363 (we.ops_table = { 2364 dir: { 2365 node: { 2366 getattr: we.node_ops.getattr, 2367 setattr: we.node_ops.setattr, 2368 lookup: we.node_ops.lookup, 2369 mknod: we.node_ops.mknod, 2370 rename: we.node_ops.rename, 2371 unlink: we.node_ops.unlink, 2372 rmdir: we.node_ops.rmdir, 2373 readdir: we.node_ops.readdir, 2374 symlink: we.node_ops.symlink, 2375 }, 2376 stream: { llseek: we.stream_ops.llseek }, 2377 }, 2378 file: { 2379 node: { 2380 getattr: we.node_ops.getattr, 2381 setattr: we.node_ops.setattr, 2382 }, 2383 stream: { 2384 llseek: we.stream_ops.llseek, 2385 read: we.stream_ops.read, 2386 write: we.stream_ops.write, 2387 allocate: we.stream_ops.allocate, 2388 mmap: we.stream_ops.mmap, 2389 msync: we.stream_ops.msync, 2390 }, 2391 }, 2392 link: { 2393 node: { 2394 getattr: we.node_ops.getattr, 2395 setattr: we.node_ops.setattr, 2396 readlink: we.node_ops.readlink, 2397 }, 2398 stream: {}, 2399 }, 2400 chrdev: { 2401 node: { 2402 getattr: we.node_ops.getattr, 2403 setattr: we.node_ops.setattr, 2404 }, 2405 stream: Ee.chrdev_stream_ops, 2406 }, 2407 }); 2408 var o = Ee.createNode(e, t, r, n); 2409 return ( 2410 Ee.isDir(o.mode) 2411 ? ((o.node_ops = we.ops_table.dir.node), 2412 (o.stream_ops = we.ops_table.dir.stream), 2413 (o.contents = {})) 2414 : Ee.isFile(o.mode) 2415 ? ((o.node_ops = we.ops_table.file.no
2415de), 2416 (o.stream_ops = we.ops_table.file.stream), 2417 (o.usedBytes = 0), 2418 (o.contents = null)) 2419 : Ee.isLink(o.mode) 2420 ? ((o.node_ops = we.ops_table.link.node), 2421 (o.stream_ops = we.ops_table.link.stream)) 2422 : Ee.isChrdev(o.mode) && 2423 ((o.node_ops = we.ops_table.chrdev.node), 2424 (o.stream_ops = we.ops_table.chrdev.stream)), 2425 (o.timestamp = Date.now()), 2426 e && 2427 ((e.contents[t] = o), (e.timestamp = o.timestamp)), 2428 o 2429 ); 2430 }, 2431 getFileDataAsTypedArray: function (e) { 2432 return e.contents 2433 ? e.contents.subarray 2434 ? e.contents.subarray(0, e.usedBytes) 2435 : new Uint8Array(e.contents) 2436 : new Uint8Array(0); 2437 }, 2438 expandFileStorage: function (e, t) { 2439 var r = e.contents ? e.contents.length : 0; 2440 if (!(r >= t)) { 2441 (t = Math.max( 2442 t, 2443 (r * (r < 1048576 ? 2 : 1.125)) >>> 0 2444 )), 2445 0 != r && (t = Math.max(t, 256)); 2446 var n = e.contents; 2447 (e.contents = new Uint8Array(t)), 2448 e.usedBytes > 0 && 2449 e.contents.set(n.subarray(0, e.usedBytes), 0); 2450 } 2451 }, 2452 resizeFileStorage: function (e, t) { 2453 if (e.usedBytes != t) 2454 if (0 == t) (e.contents = null), (e.usedBytes = 0); 2455 else { 2456 var r = e.contents; 2457 (e.contents = new Uint8Array(t)), 2458 r && 2459 e.contents.set( 2460 r.subarray(0, Math.min(t, e.usedBytes)) 2461 ), 2462 (e.usedBytes = t); 2463 } 2464 }, 2465 node_ops: { 2466 getattr: function (e) { 2467 var t = {}; 2468 return ( 2469 (t.dev = Ee.isChrdev(e.mode) ? e.id : 1), 2470 (t.ino = e.id), 2471 (t.mode = e.mode), 2472 (t.nlink = 1), 2473 (t.uid = 0), 2474 (t.gid = 0), 2475 (t.rdev = e.rdev), 2476 Ee.isDir(e.mode) 2477 ? (t.size = 4096) 2478 : Ee.isFile(e.mode) 2479 ? (t.size = e.usedBytes) 2480 : Ee.isLink(e.mode) 2481 ? (t.size = e.link.length) 2482 : (t.size = 0), 2483 (t.atime = new Date(e.timestamp)), 2484 (t.mtime = new Date(e.timestamp)), 2485 (t.ctime = new Date(e.timestamp)), 2486 (t.blksize = 4096), 2487 (t.blocks = Math.ceil(t.size / t.blksize)), 2488 t 2489 ); 2490 }, 2491 setattr: function (e, t) { 2492 void 0 !== t.mode && (e.mode = t.mode), 2493 void 0 !== t.timestamp && 2494 (e.timestamp = t.timestamp), 2495 void 0 !== t.size && 2496 we.resizeFileStorage(e, t.size); 2497 }, 2498 lookup: function (e, t) { 2499 throw Ee.genericErrors[44]; 2500 }, 2501 mknod: function (e, t, r, n) { 2502 return we.createNode(e, t, r, n); 2503 }, 2504 rename: function (e, t, r) { 2505 if (Ee.isDir(e.mode)) { 2506 var n; 2507 try { 2508 n = Ee.lookupNode(t, r); 2509 } catch (e) {} 2510 if (n) 2511 for (var o in n.contents) 2512 throw new Ee.ErrnoError(55); 2513 } 2514 delete e.parent.contents[e.name], 2515 (e.parent.timestamp = Date.now()), 2516 (e.name = r), 2517 (t.contents[r] = e), 2518 (t.timestamp = e.parent.timestamp), 2519 (e.parent = t); 2520 }, 2521 unlink: function (e, t) { 2522 delete e.contents[t], (e.timestamp = Date.now()); 2523 }, 2524 rmdir: function (e, t) { 2525 var r = Ee.lookupNode(e, t); 2526 for (var n in r.contents) throw new Ee.ErrnoError(55); 2527 delete e.contents[t], (e.timestamp = Date.now()); 2528 }, 2529 readdir: function (e) { 2530 var t = [".", ".."]; 2531 for (var r in e.contents) 2532 e.contents.hasOwnProperty(r) && t.push(r); 2533 return t; 2534 }, 2535 symlink: function (e, t, r) { 2536 var n = we.createNode(e, t, 41471, 0); 2537 return (n.link = r), n; 2538 }, 2539 readlink: function (e) { 2540 if (!Ee.isLink(e.mode)) throw new Ee.ErrnoError(28); 2541 return e.link; 2542 }, 2543 }, 2544 stream_ops: { 2545 read: function (e, t, r, n, o) { 2546 var i = e.node.contents; 2547 if (o >= e.node.usedBytes) return 0; 2548 var s = Math.min(e.node.usedBytes - o, n); 2549 if (s > 8 && i.subarray) 2550 t.set(i.subarray(o, o + s), r); 2551 else for (var a = 0; a < s; a++) t[r + a] = i[o + a]; 2552 return s; 2553 }, 2554 write: function (e, t, r, n, o, i) { 2555 if ((t.buffer === O.buffer && (i = !1), !n)) return 0; 2556 var s = e.node; 2557 if ( 2558 ((s.timestamp = Date.now()), 2559 t.subarray && (!s.contents || s.contents.subarray)) 2560 ) { 2561 if (i) 2562 return ( 2563 (s.contents = t.subarray(r, r + n)), 2564 (s.usedBytes = n), 2565 n 2566 ); 2567 if (0 === s.usedBytes && 0 === o) 2568 return ( 2569 (s.contents = t.slice(r, r + n)), 2570 (s.usedBytes = n), 2571 n 2572 ); 2573 if (o + n <= s.usedBytes) 2574 return s.contents.set(t.subarray(r, r + n), o), n; 2575 } 2576 if ( 2577 (we.expandFileStorage(s, o + n), 2578 s.contents.subarray && t.subarray) 2579 ) 2580 s.contents.set(t.subarray(r, r + n), o); 2581 else 2582 for (var a = 0; a < n; a++) 2583 s.contents[o + a] = t[r + a]; 2584 return ( 2585 (s.usedBytes = Math.max(s.usedBytes, o + n)), n 2586 ); 2587 }, 2588 llseek: function (e, t, r) { 2589 var n = t; 2590 if ( 2591 (1 === r 2592 ? (n += e.position) 2593 : 2 === r && 2594 Ee.isFile(e.node.mode) && 2595 (n += e.node.usedBytes), 2596 n < 0) 2597 ) 2598 throw new Ee.ErrnoError(28); 2599 return n; 2600 }, 2601 allocate: function (e, t, r) { 2602 we.expandFileStorage(e.node, t + r), 2603 (e.node.usedBytes = Math.max( 2604 e.node.usedBytes, 2605 t + r 2606 )); 2607 }, 2608 mmap: function (e, t, r, n, o, i) { 2609 if (0 !== t) throw new Ee.ErrnoError(28); 2610 if (!Ee.isFile(e.node.mode)) 2611 throw new Ee.ErrnoError(43); 2612 var s, 2613 a, 2614 u = e.node.contents;
2615 if (2 & i || u.buffer !== j) { 2616 if ( 2617 ((n > 0 || n + r < u.length) && 2618 (u = u.subarray 2619 ? u.subarray(n, n + r) 2620 : Array.prototype.slice.call(u, n, n + r)), 2621 (a = !0), 2622 !(s = ye(r))) 2623 ) 2624 throw new Ee.ErrnoError(48); 2625 O.set(u, s); 2626 } else (a = !1), (s = u.byteOffset); 2627 return { ptr: s, allocated: a }; 2628 }, 2629 msync: function (e, t, r, n, o) { 2630 if (!Ee.isFile(e.node.mode)) 2631 throw new Ee.ErrnoError(43); 2632 return ( 2633 2 & o || we.stream_ops.write(e, t, 0, n, r, !1), 0 2634 ); 2635 }, 2636 }, 2637 }, 2638 Ee = { 2639 root: null, 2640 mounts: [], 2641 devices: {}, 2642 streams: [], 2643 nextInode: 1, 2644 nameTable: null, 2645 currentPath: "/", 2646 initialized: !1, 2647 ignorePermissions: !0, 2648 trackingDelegate: {}, 2649 tracking: { openFlags: { READ: 1, WRITE: 2 } }, 2650 ErrnoError: null, 2651 genericErrors: {}, 2652 filesystems: null, 2653 syncFSRequests: 0, 2654 lookupPath: function (e, t) { 2655 if (((t = t || {}), !(e = ge.resolve(Ee.cwd(), e)))) 2656 return { path: "", node: null }; 2657 var r = { follow_mount: !0, recurse_count: 0 }; 2658 for (var n in r) void 0 === t[n] && (t[n] = r[n]); 2659 if (t.recurse_count > 8) throw new Ee.ErrnoError(32); 2660 for ( 2661 var o = _e.normalizeArray( 2662 e.split("/").filter(function (e) { 2663 return !!e; 2664 }), 2665 !1 2666 ), 2667 i = Ee.root, 2668 s = "/", 2669 a = 0; 2670 a < o.length; 2671 a++ 2672 ) { 2673 var u = a === o.length - 1; 2674 if (u && t.parent) break; 2675 if ( 2676 ((i = Ee.lookupNode(i, o[a])), 2677 (s = _e.join2(s, o[a])), 2678 Ee.isMountpoint(i) && 2679 (!u || (u && t.follow_mount)) && 2680 (i = i.mounted.root), 2681 !u || t.follow) 2682 ) 2683 for (var l = 0; Ee.isLink(i.mode); ) { 2684 var c = Ee.readlink(s); 2685 if ( 2686 ((s = ge.resolve(_e.dirname(s), c)), 2687 (i = Ee.lookupPath(s, { 2688 recurse_count: t.recurse_count, 2689 }).node), 2690 l++ > 40) 2691 ) 2692 throw new Ee.ErrnoError(32); 2693 } 2694 } 2695 return { path: s, node: i }; 2696 }, 2697 getPath: function (e) { 2698 for (var t; ; ) { 2699 if (Ee.isRoot(e)) { 2700 var r = e.mount.mountpoint; 2701 return t 2702 ? "/" !== r[r.length - 1]
2703 ? r + "/" + t 2704 : r + t 2705 : r; 2706 } 2707 (t = t ? e.name + "/" + t : e.name), (e = e.parent); 2708 } 2709 }, 2710 hashName: function (e, t) { 2711 for (var r = 0, n = 0; n < t.length; n++) 2712 r = ((r << 5) - r + t.charCodeAt(n)) | 0; 2713 return ((e + r) >>> 0) % Ee.nameTable.length; 2714 }, 2715 hashAddNode: function (e) { 2716 var t = Ee.hashName(e.parent.id, e.name); 2717 (e.name_next = Ee.nameTable[t]), (Ee.nameTable[t] = e); 2718 }, 2719 hashRemoveNode: function (e) { 2720 var t = Ee.hashName(e.parent.id, e.name); 2721 if (Ee.nameTable[t] === e) 2722 Ee.nameTable[t] = e.name_next; 2723 else 2724 for (var r = Ee.nameTable[t]; r; ) { 2725 if (r.name_next === e) { 2726 r.name_next = e.name_next; 2727 break; 2728 } 2729 r = r.name_next; 2730 } 2731 }, 2732 lookupNode: function (e, t) { 2733 var r = Ee.mayLookup(e); 2734 if (r) throw new Ee.ErrnoError(r, e); 2735 for ( 2736 var n = Ee.hashName(e.id, t), o = Ee.nameTable[n]; 2737 o; 2738 o = o.name_next 2739 ) { 2740 var i = o.name; 2741 if (o.parent.id === e.id && i === t) return o; 2742 } 2743 return Ee.lookup(e, t); 2744 }, 2745 createNode: function (e, t, r, n) { 2746 var o = new Ee.FSNode(e, t, r, n); 2747 return Ee.hashAddNode(o), o; 2748 }, 2749 destroyNode: function (e) { 2750 Ee.hashRemoveNode(e); 2751 }, 2752 isRoot: function (e) { 2753 return e === e.parent; 2754 }, 2755 isMountpoint: function (e) { 2756 return !!e.mounted; 2757 }, 2758 isFile: function (e) { 2759 return 32768 == (61440 & e); 2760 }, 2761 isDir: function (e) { 2762 return 16384 == (61440 & e); 2763 }, 2764 isLink: function (e) { 2765 return 40960 == (61440 & e); 2766 }, 2767 isChrdev: function (e) { 2768 return 8192 == (61440 & e); 2769 }, 2770 isBlkdev: function (e) { 2771 return 24576 == (61440 & e); 2772 }, 2773 isFIFO: function (e) { 2774 return 4096 == (61440 & e); 2775 }, 2776 isSocket: function (e) { 2777 return 49152 == (49152 & e); 2778 }, 2779 flagModes: { 2780 r: 0, 2781 "r+": 2, 2782 w: 577, 2783 "w+": 578, 2784 a: 1089, 2785 "a+": 1090, 2786 }, 2787 modeStringToFlags: function (e) { 2788 var t = Ee.flagModes[e]; 2789 if (void 0 === t) 2790 throw new Error("Unknown file open mode: " + e); 2791 return t; 2792 }, 2793 flagsToPermissionString: function (e) { 2794 var t = ["r", "w", "rw"][3 & e]; 2795 return 512 & e && (t += "w"), t; 2796 }, 2797 nodePermissions: function (e, t) { 2798 return Ee.ignorePermissions || 2799 ((!t.includes("r") || 292 & e.mode) && 2800 (!t.includes("w") || 146 & e.mode) && 2801 (!t.includes("x") || 73 & e.mode)) 2802 ? 0 2803 : 2; 2804 }, 2805 mayLookup: function (e) { 2806 return ( 2807 Ee.nodePermissions(e, "x") || 2808 (e.node_ops.lookup ? 0 : 2) 2809 ); 2810 }, 2811 mayCreate: function (e, t) { 2812 try { 2813 return Ee.lookupNode(e, t), 20; 2814 } catch (e) {} 2815 return Ee.nodePermissions(e, "wx"); 2816 }, 2817 mayDelete: function (e, t, r) { 2818 var n; 2819 try { 2820 n = Ee.lookupNode(e, t); 2821 } catch (e) { 2822 return e.errno; 2823 } 2824 var o = Ee.nodePermissions(e, "wx"); 2825 if (o) return o; 2826 if (r) { 2827 if (!Ee.isDir(n.mode)) return 54; 2828 if (Ee.isRoot(n) || Ee.getPath(n) === Ee.cwd()) 2829 return 10; 2830 }
2830 else if (Ee.isDir(n.mode)) return 31; 2831 return 0; 2832 }, 2833 mayOpen: function (e, t) { 2834 return e 2835 ? Ee.isLink(e.mode) 2836 ? 32 2837 : Ee.isDir(e.mode) && 2838 ("r" !== Ee.flagsToPermissionString(t) || 512 & t) 2839 ? 31 2840 : Ee.nodePermissions( 2841 e, 2842 Ee.flagsToPermissionString(t) 2843 ) 2844 : 44; 2845 }, 2846 MAX_OPEN_FDS: 4096, 2847 nextfd: function (e, t) { 2848 (e = e || 0), (t = t || Ee.MAX_OPEN_FDS); 2849 for (var r = e; r <= t; r++) 2850 if (!Ee.streams[r]) return r; 2851 throw new Ee.ErrnoError(33); 2852 }, 2853 getStream: function (e) { 2854 return Ee.streams[e]; 2855 }, 2856 createStream: function (e, t, r) { 2857 Ee.FSStream || 2858 ((Ee.FSStream = function () {}), 2859 (Ee.FSStream.prototype = { 2860 object: { 2861 get: function () { 2862 return this.node; 2863 }, 2864 set: function (e) { 2865 this.node = e; 2866 }, 2867 }, 2868 isRead: { 2869 get: function () { 2870 return 1 != (2097155 & this.flags); 2871 }, 2872 }, 2873 isWrite: { 2874 get: function () { 2875 return 0 != (2097155 & this.flags); 2876 }, 2877 }, 2878 isAppend: { 2879 get: function () { 2880 return 1024 & this.flags; 2881 }, 2882 }, 2883 })); 2884 var n = new Ee.FSStream(); 2885 for (var o in e) n[o] = e[o]; 2886 e = n; 2887 var i = Ee.nextfd(t, r); 2888 return (e.fd = i), (Ee.streams[i] = e), e; 2889 }, 2890 closeStream: function (e) { 2891 Ee.streams[e] = null; 2892 }, 2893 chrdev_stream_ops: { 2894 open: function (e) { 2895 var t = Ee.getDevice(e.node.rdev); 2896 (e.stream_ops = t.stream_ops), 2897 e.stream_ops.open && e.stream_ops.open(e); 2898 }, 2899 llseek: function () { 2900 throw new Ee.ErrnoError(70); 2901 }, 2902 }, 2903 major: function (e) { 2904 return e >> 8; 2905 }, 2906 minor: function (e) { 2907 return 255 & e; 2908 }, 2909 makedev: function (e, t) { 2910 return (e << 8) | t; 2911 }, 2912 registerDevice: function (e, t) { 2913 Ee.devices[e] = { stream_ops: t }; 2914 }, 2915 getDevice: function (e) { 2916 return Ee.devices[e]; 2917 }, 2918 getMounts: function (e) { 2919 for (var t = [], r = [e]; r.length; ) { 2920 var n = r.pop();
2921 t.push(n), r.push.apply(r, n.mounts); 2922 } 2923 return t; 2924 }, 2925 syncfs: function (e, t) { 2926 "function" == typeof e && ((t = e), (e = !1)), 2927 Ee.syncFSRequests++, 2928 Ee.syncFSRequests > 1 && 2929 w( 2930 "warning: " + 2931 Ee.syncFSRequests + 2932 " FS.syncfs operations in flight at once, probably just doing extra work" 2933 ); 2934 var r = Ee.getMounts(Ee.root.mount), 2935 n = 0; 2936 function o(e) { 2937 return Ee.syncFSRequests--, t(e); 2938 } 2939 function i(e) { 2940 if (e) 2941 return i.errored 2942 ? void 0 2943 : ((i.errored = !0), o(e)); 2944 ++n >= r.length && o(null); 2945 } 2946 r.forEach(function (t) { 2947 if (!t.type.syncfs) return i(null); 2948 t.type.syncfs(t, e, i); 2949 }); 2950 }, 2951 mount: function (e, t, r) { 2952 var n, 2953 o = "/" === r, 2954 i = !r; 2955 if (o && Ee.root) throw new Ee.ErrnoError(10); 2956 if (!o && !i) { 2957 var s = Ee.lookupPath(r, { follow_mount: !1 }); 2958 if (((r = s.path), (n = s.node), Ee.isMountpoint(n))) 2959 throw new Ee.ErrnoError(10); 2960 if (!Ee.isDir(n.mode)) throw new Ee.ErrnoError(54); 2961 } 2962 var a = { type: e, opts: t, mountpoint: r, mounts: [] }, 2963 u = e.mount(a); 2964 return ( 2965 (u.mount = a), 2966 (a.root = u), 2967 o 2968 ? (Ee.root = u) 2969 : n && 2970 ((n.mounted = a), 2971 n.mount && n.mount.mounts.push(a)), 2972 u 2973 ); 2974 }, 2975 unmount: function (e) { 2976 var t = Ee.lookupPath(e, { follow_mount: !1 }); 2977 if (!Ee.isMountpoint(t.node)) 2978 throw new Ee.ErrnoError(28); 2979 var r = t.node, 2980 n = r.mounted, 2981 o = Ee.getMounts(n); 2982 Object.keys(Ee.nameTable).forEach(function (e) { 2983 for (var t = Ee.nameTable[e]; t; ) { 2984 var r = t.name_next; 2985 o.includes(t.mount) && Ee.destroyNode(t), (t = r); 2986 } 2987 }), 2988 (r.mounted = null); 2989 var i = r.mount.mounts.indexOf(n); 2990 r.mount.mounts.splice(i, 1); 2991 }, 2992 lookup: function (e, t) { 2993 return e.node_ops.lookup(e, t); 2994 }, 2995 mknod: function (e, t, r) { 2996 var n = Ee.lookupPath(e, { parent: !0 }).node, 2997 o = _e.basename(e); 2998 if (!o || "." === o || ".." === o) 2999 throw new Ee.ErrnoError(28); 3000 var i = Ee.mayCreate(n, o); 3001 if (i) throw new Ee.ErrnoError(i); 3002 if (!n.node_ops.mknod) throw new Ee.ErrnoError(63); 3003 return n.node_ops.mknod(n, o, t, r); 3004 }, 3005 create: function (e, t) { 3006 return ( 3007 (t = void 0 !== t ? t : 438), 3008 (t &= 4095), 3009 (t |= 32768), 3010 Ee.mknod(e, t, 0) 3011 ); 3012 }, 3013 mkdir: function (e, t) { 3014 return ( 3015 (t = void 0 !== t ? t : 511), 3016 (t &= 1023), 3017 (t |= 16384), 3018 Ee.mknod(e, t, 0) 3019 ); 3020 }, 3021 mkdirTree: function (e, t) { 3022 for ( 3023 var r = e.split("/"), n = "", o = 0; 3024 o < r.length; 3025 ++o 3026 ) 3027 if (r[o]) { 3028 n += "/" + r[o]; 3029 try { 3030 Ee.mkdir(n, t); 3031 } catch (e) { 3032 if (20 != e.errno) throw e; 3033 } 3034 } 3035 }, 3036 mkdev: function (e, t, r) { 3037 return ( 3038 void 0 === r && ((r = t), (t = 438)), 3039 (t |= 8192), 3040 Ee.mknod(e, t, r) 3041 ); 3042 }, 3043 symlink: function (e, t) { 3044 if (!ge.resolve(e)) throw new Ee.ErrnoError(44); 3045 var r = Ee.lookupPath(t, { parent: !0 }).node; 3046 if (!r) throw new Ee.ErrnoError(44); 3047 var n = _e.basename(t), 3048 o = Ee.mayCreate(r, n); 3049 if (o) throw new Ee.ErrnoError(o); 3050 if (!r.node_ops.symlink) throw new Ee.ErrnoError(63); 3051 return r.node_ops.symlink(r, n, e); 3052 }, 3053 rename: function (e, t) { 3054 var r, 3055 n, 3056 o = _e.dirname(e), 3057 i = _e.dirname(t), 3058 s = _e.basename(e), 3059 a = _e.basename(t); 3060 if ( 3061 ((r = Ee.lookupPath(e, { parent: !0 }).node), 3062 (n = Ee.lookupPath(t, { parent: !0 }).node), 3063 !r || !n) 3064 ) 3065 throw new Ee.ErrnoError(44); 3066 if (r.mount !== n.mount) throw new Ee.ErrnoError(75); 3067 var u, 3068 l = Ee.lookupNode(r, s), 3069 c = ge.relative(e, i); 3070 if ("." !== c.charAt(0)) throw new Ee.ErrnoError(28); 3071 if ("." !== (c = ge.relative(t, o)).charAt(0)) 3072 throw new Ee.ErrnoError(55); 3073 try { 3074 u = Ee.lookupNode(n, a); 3075 } catch (e) {} 3076 if (l !== u) { 3077 var f = Ee.isDir(l.mode), 3078 d = Ee.mayDelete(r, s, f); 3079 if (d) throw new Ee.ErrnoError(d); 3080 if ( 3081 (d = u ? Ee.mayDelete(n, a, f) : Ee.mayCreate(n, a)) 3082 ) 3083 throw new Ee.ErrnoError(d); 3084 if (!r.node_ops.rename) throw new Ee.ErrnoError(63); 3085 if (Ee.isMountpoint(l) || (u && Ee.isMountpoint(u))) 3086 throw new Ee.ErrnoError(10); 3087 if (n !== r && (d = Ee.nodePermissions(r, "w"))) 3088 throw new Ee.ErrnoError(d); 3089 try { 3090 Ee.trackingDelegate.willMovePath && 3091 Ee.trackingDelegate.willMovePath(e, t); 3092 } catch (r) { 3093 w( 3094 "FS.trackingDelegate['willMovePath']('" + 3095 e + 3096 "', '" + 3097 t + 3098 "') threw an exception: " + 3099 r.message 3100 ); 3101 } 3102 Ee.hashRemoveNode(l); 3103 try {
3104 r.node_ops.rename(l, n, a); 3105 } catch (e) { 3106 throw e; 3107 } finally { 3108 Ee.hashAddNode(l); 3109 } 3110 try { 3111 Ee.trackingDelegate.onMovePath && 3112 Ee.trackingDelegate.onMovePath(e, t); 3113 } catch (r) { 3114 w( 3115 "FS.trackingDelegate['onMovePath']('" + 3116 e + 3117 "', '" + 3118 t + 3119 "') threw an exception: " + 3120 r.message 3121 ); 3122 } 3123 } 3124 }, 3125 rmdir: function (e) { 3126 var t = Ee.lookupPath(e, { parent: !0 }).node, 3127 r = _e.basename(e), 3128 n = Ee.lookupNode(t, r), 3129 o = Ee.mayDelete(t, r, !0); 3130 if (o) throw new Ee.ErrnoError(o); 3131 if (!t.node_ops.rmdir) throw new Ee.ErrnoError(63); 3132 if (Ee.isMountpoint(n)) throw new Ee.ErrnoError(10); 3133 try { 3134 Ee.trackingDelegate.willDeletePath && 3135 Ee.trackingDelegate.willDeletePath(e); 3136 } catch (t) { 3137 w( 3138 "FS.trackingDelegate['willDeletePath']('" + 3139 e + 3140 "') threw an exception: " + 3141 t.message 3142 ); 3143 } 3144 t.node_ops.rmdir(t, r), Ee.destroyNode(n); 3145 try { 3146 Ee.trackingDelegate.onDeletePath && 3147 Ee.trackingDelegate.onDeletePath(e); 3148 } catch (t) { 3149 w( 3150 "FS.trackingDelegate['onDeletePath']('" + 3151 e + 3152 "') threw an exception: " + 3153 t.message 3154 ); 3155 } 3156 }, 3157 readdir: function (e) { 3158 var t = Ee.lookupPath(e, { follow: !0 }).node; 3159 if (!t.node_ops.readdir) throw new Ee.ErrnoError(54); 3160 return t.node_ops.readdir(t); 3161 }, 3162 unlink: function (e) { 3163 var t = Ee.lookupPath(e, { parent: !0 }).node, 3164 r = _e.basename(e), 3165 n = Ee.lookupNode(t, r), 3166 o = Ee.mayDelete(t, r, !1); 3167 if (o) throw new Ee.ErrnoError(o); 3168 if (!t.node_ops.unlink) throw new Ee.ErrnoError(63); 3169 if (Ee.isMountpoint(n)) throw new Ee.ErrnoError(10); 3170 try { 3171 Ee.trackingDelegate.willDeletePath && 3172 Ee.trackingDelegate.willDeletePath(e); 3173 } catch (t) { 3174 w( 3175 "FS.trackingDelegate['willDeletePath']('" + 3176 e + 3177 "') threw an exception: " + 3178 t.message 3179 ); 3180 } 3181 t.node_ops.unlink(t, r), Ee.destroyNode(n); 3182 try { 3183 Ee.trackingDelegate.onDeletePath && 3184 Ee.trackingDelegate.onDeletePath(e); 3185 } catch (t) { 3186 w( 3187 "FS.trackingDelegate['onDeletePath']('" + 3188 e + 3189 "') threw an exception: " + 3190 t.message 3191 ); 3192 } 3193 }, 3194 readlink: function (e) { 3195 var t = Ee.lookupPath(e).node; 3196 if (!t) throw new Ee.ErrnoError(44); 3197 if (!t.node_ops.readlink) throw new Ee.ErrnoError(28); 3198 return ge.resolve( 3199 Ee.getPath(t.parent), 3200 t.node_ops.readlink(t) 3201 ); 3202 }, 3203 stat: function (e, t) { 3204 var r = Ee.lookupPath(e, { follow: !t }).node; 3205 if (!r) throw new Ee.ErrnoError(44); 3206 if (!r.node_ops.getattr) throw new Ee.ErrnoError(63); 3207 return r.node_ops.getattr(r); 3208 }, 3209 lstat: function (e) { 3210 return Ee.stat(e, !0); 3211 }, 3212 chmod: function (e, t, r) { 3213 var n; 3214 if ( 3215 !(n = 3216 "string" == typeof e 3217 ? Ee.lookupPath(e, { follow: !r }).node 3218 : e).node_ops.setattr 3219 ) 3220 throw new Ee.ErrnoError(63); 3221 n.node_ops.setattr(n, { 3222 mode: (4095 & t) | (-4096 & n.mode), 3223 timestamp: Date.now(), 3224 }); 3225 }, 3226 lchmod: function (e, t) { 3227 Ee.chmod(e, t, !0); 3228 }, 3229 fchmod: function (e, t) { 3230 var r = Ee.getStream(e); 3231 if (!r) throw new Ee.ErrnoError(8); 3232 Ee.chmod(r.node, t); 3233 }, 3234 chown: function (e, t, r, n) { 3235 var o; 3236 if ( 3237 !(o = 3238 "string" == typeof e 3239 ? Ee.lookupPath(e, { follow: !n }).node 3240 : e).node_ops.setattr 3241 ) 3242 throw new Ee.ErrnoError(63); 3243 o.node_ops.setattr(o, { timestamp: Date.now() }); 3244 }, 3245 lchown: function (e, t, r) { 3246 Ee.chown(e, t, r, !0); 3247 }, 3248 fchown: function (e, t, r) { 3249 var n = Ee.getStream(e); 3250 if (!n) throw new Ee.ErrnoError(8); 3251 Ee.chown(n.node, t, r); 3252 }, 3253 truncate: function (e, t) { 3254 if (t < 0) throw new Ee.ErrnoError(28); 3255 var r; 3256 if ( 3257 !(r = 3258 "string" == typeof e 3259 ? Ee.lookupPath(e, { follow: !0 }).node 3260 : e).node_ops.setattr 3261 ) 3262 throw new Ee.ErrnoError(63); 3263 if (Ee.isDir(r.mode)) throw new Ee.ErrnoError(31); 3264 if (!Ee.isFile(r.mode)) throw new Ee.ErrnoError(28); 3265 var n = Ee.nodePermissions(r, "w"); 3266 if (n) throw new Ee.ErrnoError(n);
3267 r.node_ops.setattr(r, { 3268 size: t, 3269 timestamp: Date.now(), 3270 }); 3271 }, 3272 ftruncate: function (e, t) { 3273 var r = Ee.getStream(e); 3274 if (!r) throw new Ee.ErrnoError(8); 3275 if (0 == (2097155 & r.flags)) 3276 throw new Ee.ErrnoError(28); 3277 Ee.truncate(r.node, t); 3278 }, 3279 utime: function (e, t, r) { 3280 var n = Ee.lookupPath(e, { follow: !0 }).node; 3281 n.node_ops.setattr(n, { timestamp: Math.max(t, r) }); 3282 }, 3283 open: function (e, t, r, n, o) { 3284 if ("" === e) throw new Ee.ErrnoError(44); 3285 var s; 3286 if ( 3287 ((r = void 0 === r ? 438 : r), 3288 (r = 3289 64 & 3290 (t = 3291 "string" == typeof t 3292 ? Ee.modeStringToFlags(t) 3293 : t) 3294 ? (4095 & r) | 32768 3295 : 0), 3296 "object" == typeof e) 3297 ) 3298 s = e; 3299 else { 3300 e = _e.normalize(e); 3301 try { 3302 s = Ee.lookupPath(e, { 3303 follow: !(131072 & t), 3304 }).node; 3305 } catch (e) {} 3306 } 3307 var a = !1; 3308 if (64 & t) 3309 if (s) { 3310 if (128 & t) throw new Ee.ErrnoError(20); 3311 } else (s = Ee.mknod(e, r, 0)), (a = !0); 3312 if (!s) throw new Ee.ErrnoError(44); 3313 if ( 3314 (Ee.isChrdev(s.mode) && (t &= -513), 3315 65536 & t && !Ee.isDir(s.mode)) 3316 ) 3317 throw new Ee.ErrnoError(54); 3318 if (!a) { 3319 var u = Ee.mayOpen(s, t); 3320 if (u) throw new Ee.ErrnoError(u); 3321 } 3322 512 & t && Ee.truncate(s, 0), (t &= -131713); 3323 var l = Ee.createStream( 3324 { 3325 node: s, 3326 path: Ee.getPath(s), 3327 flags: t, 3328 seekable: !0, 3329 position: 0, 3330 stream_ops: s.stream_ops, 3331 ungotten: [], 3332 error: !1, 3333 }, 3334 n, 3335 o 3336 ); 3337 l.stream_ops.open && l.stream_ops.open(l), 3338 !i.logReadFiles || 3339 1 & t || 3340 (Ee.readFiles || (Ee.readFiles = {}), 3341 e in Ee.readFiles || 3342 ((Ee.readFiles[e] = 1), 3343 w( 3344 "FS.trackingDelegate error on read file: " + e 3345 ))); 3346 try { 3347 if (Ee.trackingDelegate.onOpenFile) { 3348 var c = 0; 3349 1 != (2097155 & t) && 3350 (c |= Ee.tracking.openFlags.READ), 3351 0 != (2097155 & t) && 3352 (c |= Ee.tracking.openFlags.WRITE), 3353 Ee.trackingDelegate.onOpenFile(e, c); 3354 } 3355 } catch (t) { 3356 w( 3357 "FS.trackingDelegate['onOpenFile']('" + 3358 e + 3359 "', flags) threw an exception: " + 3360 t.message 3361 ); 3362 } 3363 return l; 3364 }, 3365 close: function (e) { 3366 if (Ee.isClosed(e)) throw new Ee.ErrnoError(8); 3367 e.getdents && (e.getdents = null); 3368 try { 3369 e.stream_ops.close && e.stream_ops.close(e); 3370 } catch (e) { 3371 throw e; 3372 } finally { 3373 Ee.closeStream(e.fd); 3374 } 3375 e.fd = null; 3376 }, 3377 isClosed: function (e) { 3378 return null === e.fd; 3379 }, 3380 llseek: function (e, t, r) { 3381 if (Ee.isClosed(e)) throw new Ee.ErrnoError(8); 3382 if (!e.seekable || !e.stream_ops.llseek) 3383 throw new Ee.ErrnoError(70); 3384 if (0 != r && 1 != r && 2 != r) 3385 throw new Ee.ErrnoError(28); 3386 return ( 3387 (e.position = e.stream_ops.llseek(e, t, r)), 3388 (e.ungotten = []), 3389 e.position 3390 ); 3391 }, 3392 read: function (e, t, r, n, o) { 3393 if (n < 0 || o < 0) throw new Ee.ErrnoError(28); 3394 if (Ee.isClosed(e)) throw new Ee.ErrnoError(8); 3395 if (1 == (2097155 & e.flags)) 3396 throw new Ee.ErrnoError(8); 3397 if (Ee.isDir(e.node.mode)) throw new Ee.ErrnoError(31); 3398 if (!e.stream_ops.read) throw new Ee.ErrnoError(28); 3399 var i = void 0 !== o; 3400 if (i) { 3401 if (!e.seekable) throw new Ee.ErrnoError(70); 3402 } else o = e.position; 3403 var s = e.stream_ops.read(e, t, r, n, o); 3404 return i || (e.position += s), s; 3405 }, 3406 write: function (e, t, r, n, o, i) { 3407 if (n < 0 || o < 0) throw new Ee.ErrnoError(28); 3408 if (Ee.isClosed(e)) throw new Ee.ErrnoError(8); 3409 if (0 == (2097155 & e.flags)) 3410 throw new Ee.ErrnoError(8); 3411 if (Ee.isDir(e.node.mode)) throw new Ee.ErrnoError(31); 3412 if (!e.stream_ops.write) throw new Ee.ErrnoError(28); 3413 e.seekable && 1024 & e.flags && Ee.llseek(e, 0, 2); 3414 var s = void 0 !== o; 3415 if (s) { 3416 if (!e.seekable) throw new Ee.ErrnoError(70); 3417 } else o = e.position; 3418 var a = e.stream_ops.write(e, t, r, n, o, i); 3419 s || (e.position += a); 3420 try { 3421 e.path && 3422 Ee.trackingDelegate.onWriteToFile && 3423 Ee.trackingDelegate.onWriteToFile(e.path); 3424 } catch (t) { 3425 w( 3426 "FS.trackingDelegate['onWriteToFile']('" + 3427 e.path + 3428 "') threw an exception: " + 3429 t.message 3430 ); 3431 } 3432 return a; 3433 }, 3434 allocate: function (e, t, r) { 3435 if (Ee.isClosed(e)) throw new Ee.ErrnoError(8); 3436 if (t < 0 || r <= 0) throw new Ee.ErrnoError(28); 3437 if (0 == (2097155 & e.flags)) 3438 throw new Ee.ErrnoError(8); 3439 if (!Ee.isFile(e.node.mode) && !Ee.isDir(e.node.mode)) 3440 throw new Ee.ErrnoError(43); 3441 if (!e.stream_ops.allocate) 3442 throw new Ee.ErrnoError(138); 3443 e.stream_ops.allocate(e, t, r); 3444 }, 3445 mmap: function (e, t, r, n, o, i) { 3446 if ( 3447 0 != (2 & o) && 3448 0 == (2 & i) && 3449 2 != (2097155 & e.flags) 3450 ) 3451 throw new Ee.ErrnoError(2); 3452 if (1 == (2097155 & e.flags)) 3453 throw new Ee.ErrnoError(2); 3454 if (!e.stream_ops.mmap) throw new Ee.ErrnoError(43); 3455 return e.stream_ops.mmap(e, t, r, n, o, i); 3456 }, 3457 msync: function (e, t, r, n, o) { 3458 return e && e.stream_ops.msync 3459 ? e.stream_ops.msync(e, t, r, n, o) 3460 : 0; 3461 }, 3462 munmap: function (e) { 3463 return 0; 3464 }, 3465 ioctl: function (e, t, r) { 3466 if (!e.stream_ops.ioctl) throw new Ee.ErrnoError(59); 3467 return e.stream_ops.ioctl(e, t, r); 3468 }, 3469 readFile: function (e, t) { 3470 if ( 3471 (((t = t || {}).flags = t.flags || 0), 3472 (t.encoding = t.encoding || "binary"), 3473 "utf8" !== t.encoding && "binary" !== t.encoding) 3474 ) 3475 throw new Error( 3476 'Invalid encoding type "' + t.encoding + '"' 3477 ); 3478 var r, 3479 n = Ee.open(e, t.flags), 3480 o = Ee.stat(e).size, 3481 i = new Uint8Array(o); 3482 return ( 3483 Ee.read(n, i, 0, o, 0), 3484 "utf8" === t.encoding 3485 ? (r = W(i, 0)) 3486 : "binary" === t.encoding && (r = i), 3487 Ee.close(n), 3488 r 3489 ); 3490 }, 3491 writeFile: function (e, t, r) { 3492 (r = r || {}).flags = r.flags || 577; 3493 var n = Ee.open(e, r.flags, r.mode); 3494 if ("string" == typeof t) { 3495 var o = new Uint8Array($(t) + 1), 3496 i = X(t, o, 0, o.length); 3497 Ee.write(n, o, 0, i, void 0, r.canOwn); 3498 } else { 3499 if (!ArrayBuffer.isView(t)) 3500 throw new Error("Unsupported data type"); 3501 Ee.write(n, t, 0, t.byteLength, void 0, r.canOwn); 3502 } 3503 Ee.close(n); 3504 }, 3505 cwd: function () { 3506 return Ee.currentPath; 3507 }, 3508 chdir: function (e) { 3509 var t = Ee.lookupPath(e, { follow: !0 }); 3510 if (null === t.node) throw new Ee.ErrnoError(44); 3511 if (!Ee.isDir(t.node.mode)) throw new Ee.ErrnoError(54); 3512 var r = Ee.nodePermissions(t.node, "x"); 3513 if (r) throw new Ee.ErrnoError(r); 3514 Ee.currentPath = t.path; 3515 }, 3516 createDefaultDirectories: function () { 3517 Ee.mkdir("/tmp"), 3518 Ee.mkdir("/home"), 3519 Ee.mkdir("/home/web_user"); 3520 }, 3521 createDefaultDevices: function () { 3522 Ee.mkdir("/dev"), 3523 Ee.registerDevice(Ee.makedev(1, 3), { 3524 read: function () { 3525 return 0; 3526 }, 3527 write: function (e, t, r, n, o) { 3528 return n; 3529 }, 3530 }), 3531 Ee.mkdev("/dev/null", Ee.makedev(1, 3)), 3532 ve.register(Ee.makedev(5, 0), ve.default_tty_ops), 3533 ve.register(Ee.makedev(6, 0), ve.default_tty1_ops), 3534 Ee.mkdev("/dev/tty", Ee.makedev(5, 0)), 3535 Ee.mkdev("/dev/tty1", Ee.makedev(6, 0)); 3536 var e = (function () { 3537 if ( 3538 "object" == typeof crypto && 3539 "function" == typeof crypto.getRandomValues 3540 ) { 3541 var e = new Uint8Array(1); 3542 return function () { 3543 return crypto.getRandomValues(e), e[0]; 3544 }; 3545 } 3546 if (v) 3547 try { 3548 var t = r(821); 3549 return function () { 3550 return t.randomBytes(1)[0]; 3551 }; 3552 } catch (e) {} 3553 return function () { 3554 ce("randomDevice"); 3555 }; 3556 })(); 3557 Ee.createDevice("/dev", "random", e),
3558 Ee.createDevice("/dev", "urandom", e), 3559 Ee.mkdir("/dev/shm"), 3560 Ee.mkdir("/dev/shm/tmp"); 3561 }, 3562 createSpecialDirectories: function () { 3563 Ee.mkdir("/proc"); 3564 var e = Ee.mkdir("/proc/self"); 3565 Ee.mkdir("/proc/self/fd"), 3566 Ee.mount( 3567 { 3568 mount: function () { 3569 var t = Ee.createNode(e, "fd", 16895, 73); 3570 return ( 3571 (t.node_ops = { 3572 lookup: function (e, t) { 3573 var r = +t, 3574 n = Ee.getStream(r); 3575 if (!n) throw new Ee.ErrnoError(8); 3576 var o = { 3577 parent: null, 3578 mount: { mountpoint: "fake" }, 3579 node_ops: { 3580 readlink: function () { 3581 return n.path; 3582 }, 3583 }, 3584 }; 3585 return (o.parent = o), o; 3586 }, 3587 }), 3588 t 3589 ); 3590 }, 3591 }, 3592 {}, 3593 "/proc/self/fd" 3594 ); 3595 }, 3596 createStandardStreams: function () { 3597 i.stdin 3598 ? Ee.createDevice("/dev", "stdin", i.stdin) 3599 : Ee.symlink("/dev/tty", "/dev/stdin"), 3600 i.stdout 3601 ? Ee.createDevice("/dev", "stdout", null, i.stdout) 3602 : Ee.symlink("/dev/tty", "/dev/stdout"), 3603 i.stderr 3604 ? Ee.createDevice("/dev", "stderr", null, i.stderr) 3605 : Ee.symlink("/dev/tty1", "/dev/stderr"), 3606 Ee.open("/dev/stdin", 0), 3607 Ee.open("/dev/stdout", 1), 3608 Ee.open("/dev/stderr", 1); 3609 }, 3610 ensureErrnoError: function () { 3611 Ee.ErrnoError || 3612 ((Ee.ErrnoError = function (e, t) { 3613 (this.node = t), 3614 (this.setErrno = function (e) { 3615 this.errno = e; 3616 }), 3617 this.setErrno(e), 3618 (this.message = "FS error"); 3619 }), 3620 (Ee.ErrnoError.prototype = new Error()), 3621 (Ee.ErrnoError.prototype.constructor = Ee.ErrnoError), 3622 [44].forEach(function (e) { 3623 (Ee.genericErrors[e] = new Ee.ErrnoError(e)), 3624 (Ee.genericErrors[e].stack = 3625 "<generic error, no stack>"); 3626 })); 3627 }, 3628 staticInit: function () { 3629 Ee.ensureErrnoError(), 3630 (Ee.nameTable = new Array(4096)), 3631 Ee.mount(we, {}, "/"), 3632 Ee.createDefaultDirectories(), 3633 Ee.createDefaultDevices(), 3634 Ee.createSpecialDirectories(), 3635 (Ee.filesystems = { MEMFS: we }); 3636 }, 3637 init: function (e, t, r) { 3638 (Ee.init.initialized = !0), 3639 Ee.ensureErrnoError(), 3640 (i.stdin = e || i.stdin), 3641 (i.stdout = t || i.stdout), 3642 (i.stderr = r || i.stderr),
3643 Ee.createStandardStreams(); 3644 }, 3645 quit: function () { 3646 Ee.init.initialized = !1; 3647 var e = i._fflush; 3648 e && e(0); 3649 for (var t = 0; t < Ee.streams.length; t++) { 3650 var r = Ee.streams[t]; 3651 r && Ee.close(r); 3652 } 3653 }, 3654 getMode: function (e, t) { 3655 var r = 0; 3656 return e && (r |= 365), t && (r |= 146), r; 3657 }, 3658 findObject: function (e, t) { 3659 var r = Ee.analyzePath(e, t); 3660 return r.exists ? r.object : null; 3661 }, 3662 analyzePath: function (e, t) { 3663 try { 3664 e = (n = Ee.lookupPath(e, { follow: !t })).path; 3665 } catch (e) {} 3666 var r = { 3667 isRoot: !1, 3668 exists: !1, 3669 error: 0, 3670 name: null, 3671 path: null, 3672 object: null, 3673 parentExists: !1, 3674 parentPath: null, 3675 parentObject: null, 3676 }; 3677 try { 3678 var n = Ee.lookupPath(e, { parent: !0 }); 3679 (r.parentExists = !0), 3680 (r.parentPath = n.path), 3681 (r.parentObject = n.node), 3682 (r.name = _e.basename(e)), 3683 (n = Ee.lookupPath(e, { follow: !t })), 3684 (r.exists = !0), 3685 (r.path = n.path), 3686 (r.object = n.node), 3687 (r.name = n.node.name), 3688 (r.isRoot = "/" === n.path); 3689 } catch (e) { 3690 r.error = e.errno; 3691 } 3692 return r; 3693 }, 3694 createPath: function (e, t, r, n) { 3695 e = "string" == typeof e ? e : Ee.getPath(e); 3696 for (var o = t.split("/").reverse(); o.length; ) { 3697 var i = o.pop(); 3698 if (i) { 3699 var s = _e.join2(e, i); 3700 try { 3701 Ee.mkdir(s); 3702 } catch (e) {} 3703 e = s; 3704 } 3705 } 3706 return s; 3707 }, 3708 createFile: function (e, t, r, n, o) { 3709 var i = _e.join2( 3710 "string" == typeof e ? e : Ee.getPath(e), 3711 t 3712 ), 3713 s = Ee.getMode(n, o); 3714 return Ee.create(i, s); 3715 }, 3716 createDataFile: function (e, t, r, n, o, i) { 3717 var s = t 3718 ? _e.join2( 3719 "string" == typeof e ? e : Ee.getPath(e), 3720 t 3721 ) 3722 : e, 3723 a = Ee.getMode(n, o), 3724 u = Ee.create(s, a); 3725 if (r) { 3726 if ("string" == typeof r) { 3727 for ( 3728 var l = new Array(r.length), c = 0, f = r.length; 3729 c < f; 3730 ++c 3731 ) 3732 l[c] = r.charCodeAt(c); 3733 r = l; 3734 } 3735 Ee.chmod(u, 146 | a); 3736 var d = Ee.open(u, 577); 3737 Ee.write(d, r, 0, r.length, 0, i), 3738 Ee.close(d), 3739 Ee.chmod(u, a); 3740 } 3741 return u; 3742 }, 3743 createDevice: function (e, t, r, n) { 3744 var o = _e.join2( 3745 "string" == typeof e ? e : Ee.getPath(e), 3746 t 3747 ), 3748 i = Ee.getMode(!!r, !!n); 3749 Ee.createDevice.major || (Ee.createDevice.major = 64); 3750 var s = Ee.makedev(Ee.createDevice.major++, 0); 3751 return ( 3752 Ee.registerDevice(s, { 3753 open: function (e) { 3754 e.seekable = !1; 3755 }, 3756 close: function (e) { 3757 n && n.buffer && n.buffer.length && n(10); 3758 }, 3759 read: function (e, t, n, o, i) { 3760 for (var s = 0, a = 0; a < o; a++) { 3761 var u; 3762 try { 3763 u = r(); 3764 } catch (e) { 3765 throw new Ee.ErrnoError(29); 3766 } 3767 if (void 0 === u && 0 === s) 3768 throw new Ee.ErrnoError(6); 3769 if (null == u) break; 3770 s++, (t[n + a] = u); 3771 } 3772 return s && (e.node.timestamp = Date.now()), s; 3773 }, 3774 write: function (e, t, r, o, i) { 3775 for (var s = 0; s < o; s++) 3776 try { 3777 n(t[r + s]); 3778 } catch (e) { 3779 throw new Ee.ErrnoError(29); 3780 } 3781 return o && (e.node.timestamp = Date.now()), s; 3782 }, 3783 }), 3784 Ee.mkdev(o, i, s) 3785 ); 3786 }, 3787 forceLoadFile: function (e) { 3788 if (e.isDevice || e.isFolder || e.link || e.contents) 3789 return !0; 3790 if ("undefined" != typeof XMLHttpRequest) 3791 throw new Error( 3792 "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." 3793 ); 3794 if (!l) 3795 throw new Error( 3796 "Cannot load without read() or XMLHttpRequest." 3797 ); 3798 try { 3799 (e.contents = Pe(l(e.url), !0)), 3800 (e.usedBytes = e.contents.length); 3801 } catch (e) { 3802 throw new Ee.ErrnoError(29); 3803 } 3804 }, 3805 createLazyFile: function (e, t, r, n, o) { 3806 function i() { 3807 (this.lengthKnown = !1), (this.chunks = []); 3808 } 3809 if ( 3810 ((i.prototype.get = function (e) { 3811 if (!(e > this.length - 1 || e < 0)) { 3812 var t = e % this.chunkSize, 3813 r = (e / this.chunkSize) | 0; 3814 return this.getter(r)[t]; 3815 } 3816 }), 3817 (i.prototype.setDataGetter = function (e) { 3818 this.getter = e; 3819 }), 3820 (i.prototype.cacheLength = function () { 3821 var e = new XMLHttpRequest(); 3822 if ( 3823 (e.open("HEAD", r, !1), 3824 e.send(null), 3825 !( 3826 (e.status >= 200 && e.status < 300) || 3827 304 === e.status 3828 )) 3829 ) 3830 throw new Error( 3831 "Couldn't load " + r + ". Status: " + e.status 3832 ); 3833 var t, 3834 n = Number(e.getResponseHeader("Content-length")), 3835 o = 3836 (t = e.getResponseHeader("Accept-Ranges")) && 3837 "bytes" === t, 3838 i = 3839 (t = e.getResponseHeader("Content-Encoding")) && 3840 "gzip" === t, 3841 s = 1048576; 3842 o || (s = n); 3843 var a = this; 3844 a.setDataGetter(function (e) { 3845 var t = e * s, 3846 o = (e + 1) * s - 1; 3847 if ( 3848 ((o = Math.min(o, n - 1)), 3849 void 0 === a.chunks[e] && 3850 (a.chunks[e] = (function (e, t) { 3851 if (e > t) 3852 throw new Error( 3853 "invalid range (" + 3854 e + 3855 ", " + 3856 t + 3857 ") or no bytes requested!" 3858 ); 3859 if (t > n - 1) 3860 throw new Error( 3861 "only " + 3862 n + 3863 " bytes available! programmer error!" 3864 ); 3865 var o = new XMLHttpRequest(); 3866 if ( 3867 (o.open("GET", r, !1), 3868 n !== s && 3869 o.setRequestHeader( 3870 "Range", 3871 "bytes=" + e + "-" + t 3872 ), 3873 "undefined" != typeof Uint8Array && 3874 (o.responseType = "arraybuffer"), 3875 o.overrideMimeType && 3876 o.overrideMimeType( 3877 "text/plain;
3877 charset=x-user-defined" 3878 ), 3879 o.send(null), 3880 !( 3881 (o.status >= 200 && o.status < 300) || 3882 304 === o.status 3883 )) 3884 ) 3885 throw new Error( 3886 "Couldn't load " + 3887 r + 3888 ". Status: " + 3889 o.status 3890 ); 3891 return void 0 !== o.response 3892 ? new Uint8Array(o.response || []) 3893 : Pe(o.responseText || "", !0); 3894 })(t, o)), 3895 void 0 === a.chunks[e]) 3896 ) 3897 throw new Error("doXHR failed!"); 3898 return a.chunks[e]; 3899 }), 3900 (!i && n) || 3901 ((s = n = 1), 3902 (n = this.getter(0).length), 3903 (s = n), 3904 b( 3905 "LazyFiles on gzip forces download of the whole file when length is accessed" 3906 )), 3907 (this._length = n), 3908 (this._chunkSize = s), 3909 (this.lengthKnown = !0); 3910 }), 3911 "undefined" != typeof XMLHttpRequest) 3912 ) { 3913 if (!g) 3914 throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; 3915 var s = new i(); 3916 Object.defineProperties(s, { 3917 length: { 3918 get: function () { 3919 return ( 3920 this.lengthKnown || this.cacheLength(), 3921 this._length 3922 ); 3923 }, 3924 }, 3925 chunkSize: { 3926 get: function () { 3927 return ( 3928 this.lengthKnown || this.cacheLength(), 3929 this._chunkSize 3930 ); 3931 }, 3932 }, 3933 }); 3934 var a = { isDevice: !1, contents: s }; 3935 } else a = { isDevice: !1, url: r }; 3936 var u = Ee.createFile(e, t, a, n, o); 3937 a.contents 3938 ? (u.contents = a.contents) 3939 : a.url && ((u.contents = null), (u.url = a.url)), 3940 Object.defineProperties(u, { 3941 usedBytes: { 3942 get: function () { 3943 return this.contents.length; 3944 }, 3945 }, 3946 }); 3947 var l = {}; 3948 return ( 3949 Object.keys(u.stream_ops).forEach(function (e) { 3950 var t = u.stream_ops[e]; 3951 l[e] = function () { 3952 return ( 3953 Ee.forceLoadFile(u), t.apply(null, arguments) 3954 ); 3955 }; 3956 }), 3957 (l.read = function (e, t, r, n, o) { 3958 Ee.forceLoadFile(u); 3959 var i = e.node.contents; 3960 if (o >= i.length) return 0; 3961 var s = Math.min(i.length - o, n); 3962 if (i.slice) 3963 for (var a = 0; a < s; a++) t[r + a] = i[o + a]; 3964 else 3965 for (a = 0; a < s; a++) t[r + a] = i.get(o + a); 3966 return s; 3967 }), 3968 (u.stream_ops = l), 3969 u 3970 ); 3971 }, 3972 createPreloadedFile: function ( 3973 e, 3974 t, 3975 r, 3976 n, 3977 o, 3978 s, 3979 a, 3980 u, 3981 l, 3982 f 3983 ) { 3984 Browser.init(); 3985 var d = t ? ge.resolve(_e.join2(e, t)) : e; 3986 function h(r) { 3987 function c(r) { 3988 f && f(), 3989 u || Ee.createDataFile(e, t, r, n, o, l), 3990 s && s(), 3991 le(); 3992 } 3993 var h = !1; 3994 i.preloadPlugins.forEach(function (e) { 3995 h || 3996 (e.canHandle(d) && 3997 (e.handle(r, d, c, function () { 3998 a && a(), le(); 3999 }),
4000 (h = !0))); 4001 }), 4002 h || c(r); 4003 } 4004 ue(), 4005 "string" == typeof r 4006 ? (function (e, t, r, n) { 4007 var o = "al " + e; 4008 c( 4009 e, 4010 function (t) { 4011 A( 4012 t, 4013 'Loading data file "' + 4014 e + 4015 '" failed (no arrayBuffer).' 4016 ), 4017 h(new Uint8Array(t)), 4018 o && le(); 4019 }, 4020 function (t) { 4021 if (!r) 4022 throw ( 4023 'Loading data file "' + e + '" failed.' 4024 ); 4025 r(); 4026 } 4027 ), 4028 o && ue(); 4029 })(r, 0, a) 4030 : h(r); 4031 }, 4032 indexedDB: function () { 4033 return ( 4034 window.indexedDB || 4035 window.mozIndexedDB || 4036 window.webkitIndexedDB || 4037 window.msIndexedDB 4038 ); 4039 }, 4040 DB_NAME: function () { 4041 return "EM_FS_" + window.location.pathname; 4042 }, 4043 DB_VERSION: 20, 4044 DB_STORE_NAME: "FILE_DATA", 4045 saveFilesToDB: function (e, t, r) { 4046 (t = t || function () {}), (r = r || function () {}); 4047 var n = Ee.indexedDB(); 4048 try { 4049 var o = n.open(Ee.DB_NAME(), Ee.DB_VERSION); 4050 } catch (e) { 4051 return r(e); 4052 } 4053 (o.onupgradeneeded = function () { 4054 b("creating db"), 4055 o.result.createObjectStore(Ee.DB_STORE_NAME); 4056 }), 4057 (o.onsuccess = function () { 4058 var n = o.result.transaction( 4059 [Ee.DB_STORE_NAME], 4060 "readwrite" 4061 ), 4062 i = n.objectStore(Ee.DB_STORE_NAME), 4063 s = 0, 4064 a = 0, 4065 u = e.length; 4066 function l() { 4067 0 == a ? t() : r(); 4068 } 4069 e.forEach(function (e) { 4070 var t = i.put( 4071 Ee.analyzePath(e).object.contents, 4072 e 4073 ); 4074 (t.onsuccess = function () { 4075 ++s + a == u && l(); 4076 }), 4077 (t.onerror = function () { 4078 a++, s + a == u && l(); 4079 }); 4080 }), 4081 (n.onerror = r); 4082 }), 4083 (o.onerror = r); 4084 }, 4085 loadFilesFromDB: function (e, t, r) { 4086 (t = t || function () {}), (r = r || function () {}); 4087 var n = Ee.indexedDB(); 4088 try { 4089 var o = n.open(Ee.DB_NAME(), Ee.DB_VERSION); 4090 } catch (e) { 4091 return r(e); 4092 }
4093 (o.onupgradeneeded = r), 4094 (o.onsuccess = function () { 4095 var n = o.result; 4096 try { 4097 var i = n.transaction( 4098 [Ee.DB_STORE_NAME], 4099 "readonly" 4100 ); 4101 } catch (e) { 4102 return void r(e); 4103 } 4104 var s = i.objectStore(Ee.DB_STORE_NAME), 4105 a = 0, 4106 u = 0, 4107 l = e.length; 4108 function c() { 4109 0 == u ? t() : r(); 4110 } 4111 e.forEach(function (e) { 4112 var t = s.get(e); 4113 (t.onsuccess = function () { 4114 Ee.analyzePath(e).exists && Ee.unlink(e), 4115 Ee.createDataFile( 4116 _e.dirname(e), 4117 _e.basename(e), 4118 t.result, 4119 !0, 4120 !0, 4121 !0 4122 ), 4123 ++a + u == l && c(); 4124 }), 4125 (t.onerror = function () { 4126 u++, a + u == l && c(); 4127 }); 4128 }), 4129 (i.onerror = r); 4130 }), 4131 (o.onerror = r); 4132 }, 4133 }, 4134 ke = { 4135 mappings: {}, 4136 DEFAULT_POLLMASK: 5, 4137 umask: 511, 4138 calculateAt: function (e, t, r) { 4139 if ("/" === t[0]) return t; 4140 var n; 4141 if (-100 === e) n = Ee.cwd(); 4142 else { 4143 var o = Ee.getStream(e); 4144 if (!o) throw new Ee.ErrnoError(8); 4145 n = o.path; 4146 } 4147 if (0 == t.length) { 4148 if (!r) throw new Ee.ErrnoError(44); 4149 return n; 4150 } 4151 return _e.join2(n, t); 4152 }, 4153 doStat: function (e, t, r) { 4154 try { 4155 var n = e(t); 4156 } catch (e) { 4157 if ( 4158 e && 4159 e.node && 4160 _e.normalize(t) !== _e.normalize(Ee.getPath(e.node)) 4161 ) 4162 return -54; 4163 throw e; 4164 } 4165 return ( 4166 (N[r >> 2] = n.dev), 4167 (N[(r + 4) >> 2] = 0), 4168 (N[(r + 8) >> 2] = n.ino), 4169 (N[(r + 12) >> 2] = n.mode), 4170 (N[(r + 16) >> 2] = n.nlink), 4171 (N[(r + 20) >> 2] = n.uid), 4172 (N[(r + 24) >> 2] = n.gid), 4173 (N[(r + 28) >> 2] = n.rdev), 4174 (N[(r + 32) >> 2] = 0), 4175 (te = [ 4176 n.size >>> 0, 4177 ((ee = n.size), 4178 +Math.abs(ee) >= 1 4179 ? ee > 0 4180 ? (0 | 4181 Math.min( 4182 +Math.floor(ee / 4294967296), 4183 4294967295 4184 )) >>> 4185 0 4186 : ~~+Math.ceil( 4187 (ee - +(~~ee >>> 0)) / 4294967296 4188 ) >>> 0 4189 : 0), 4190 ]), 4191 (N[(r + 40) >> 2] = te[0]), 4192 (N[(r + 44) >> 2] = te[1]), 4193 (N[(r + 48) >> 2] = 4096), 4194 (N[(r + 52) >> 2] = n.blocks), 4195 (N[(r + 56) >> 2] = (n.atime.getTime() / 1e3) | 0), 4196 (N[(r + 60) >> 2] = 0), 4197 (N[(r + 64) >> 2] = (n.mtime.getTime() / 1e3) | 0), 4198 (N[(r + 68) >> 2] = 0), 4199 (N[(r + 72) >> 2] = (n.ctime.getTime() / 1e3) | 0), 4200 (N[(r + 76) >> 2] = 0), 4201 (te = [ 4202 n.ino >>> 0, 4203 ((ee = n.ino), 4204 +Math.abs(ee) >= 1 4205 ? ee > 0 4206 ? (0 | 4207 Math.min( 4208 +Math.floor(ee / 4294967296), 4209 4294967295 4210 )) >>> 4211 0 4212 : ~~+Math.ceil( 4213 (ee - +(~~ee >>> 0)) / 4294967296 4214 ) >>> 0 4215 : 0), 4216 ]), 4217 (N[(r + 80) >> 2] = te[0]), 4218 (N[(r + 84) >> 2] = te[1]), 4219 0 4220 ); 4221 }, 4222 doMsync: function (e, t, r, n, o) { 4223 var i = B.slice(e, e + r); 4224 Ee.msync(t, i, o, r, n); 4225 }, 4226 doMkdir: function (e, t) { 4227 return ( 4228 "/" === (e = _e.normalize(e))[e.length - 1] && 4229 (e = e.substr(0, e.length - 1)), 4230 Ee.mkdir(e, t, 0), 4231 0 4232 ); 4233 }, 4234 doMknod: function (e, t, r) { 4235 switch (61440 & t) { 4236 case 32768: 4237 case 8192: 4238 case 24576: 4239 case 4096: 4240 case 49152: 4241 break; 4242 default: 4243 return -28; 4244 } 4245 return Ee.mknod(e, t, r), 0; 4246 }, 4247 doReadlink: function (e, t, r) { 4248 if (r <= 0) return -28; 4249 var n = Ee.readlink(e), 4250 o = Math.min(r, $(n)), 4251 i = O[t + o]; 4252 return G(n, t, r + 1), (O[t + o] = i), o; 4253 }, 4254 doAccess: function (e, t) { 4255 if (-8 & t) return -28; 4256 var r; 4257 if (!(r = Ee.lookupPath(e, { follow: !0 }).node)) 4258 return -44; 4259 var n = ""; 4260 return ( 4261 4 & t && (n += "r"), 4262 2 & t && (n += "w"), 4263 1 & t && (n += "x"), 4264 n && Ee.nodePermissions(r, n) ? -2 : 0 4265 ); 4266 }, 4267 doDup: function (e, t, r) { 4268 var n = Ee.getStream(r); 4269 return n && Ee.close(n), Ee.open(e, t, 0, r, r).fd; 4270 }, 4271 doReadv: function (e, t, r, n) { 4272 for (var o = 0, i = 0; i < r; i++) { 4273 var s = N[(t + 8 * i) >> 2], 4274 a = N[(t + (8 * i + 4)) >> 2], 4275 u = Ee.read(e, O, s, a, n); 4276 if (u < 0) return -1; 4277 if (((o += u), u < a)) break; 4278 } 4279 return o; 4280 }, 4281 doWritev: function (e, t, r, n) { 4282 for (var o = 0, i = 0; i < r; i++) { 4283 var s = N[(t + 8 * i) >> 2], 4284 a = N[(t + (8 * i + 4)) >> 2], 4285 u = Ee.write(e, O, s, a, n); 4286 if (u < 0) return -1; 4287 o += u; 4288 } 4289 return o; 4290 }, 4291 varargs: void 0, 4292 get: function () { 4293 return (ke.varargs += 4), N[(ke.varargs - 4) >> 2]; 4294 }, 4295 getStr: function (e) { 4296 return V(e); 4297 }, 4298 getStreamFromFD: function (e) { 4299 var t = Ee.getStream(e); 4300 if (!t) throw new Ee.ErrnoError(8); 4301 return t; 4302 }, 4303 get64: function (e, t) { 4304 return e; 4305 }, 4306 }; 4307 function Se(e) { 4308 return (N[Re() >> 2] = e), e; 4309 } 4310 function qe(e) { 4311 try { 4312 return (
4313 D.grow((e - j.byteLength + 65535) >>> 16), 4314 Y(D.buffer), 4315 1 4316 ); 4317 } catch (e) {} 4318 } 4319 be = v 4320 ? function () { 4321 var e = process.hrtime(); 4322 return 1e3 * e[0] + e[1] / 1e6; 4323 } 4324 : function () { 4325 return performance.now(); 4326 }; 4327 var xe = {}; 4328 function De() { 4329 if (!De.strings) { 4330 var e = { 4331 USER: "web_user", 4332 LOGNAME: "web_user", 4333 PATH: "/", 4334 PWD: "/", 4335 HOME: "/home/web_user", 4336 LANG: 4337 ( 4338 ("object" == typeof navigator && 4339 navigator.languages && 4340 navigator.languages[0]) || 4341 "C" 4342 ).replace("-", "_") + ".UTF-8", 4343 _: m || "./this.program", 4344 }; 4345 for (var t in xe) 4346 void 0 === xe[t] ? delete e[t] : (e[t] = xe[t]); 4347 var r = []; 4348 for (var t in e) r.push(t + "=" + e[t]); 4349 De.strings = r; 4350 } 4351 return De.strings; 4352 } 4353 var Fe = function (e, t, r, n) { 4354 e || (e = this), 4355 (this.parent = e), 4356 (this.mount = e.mount), 4357 (this.mounted = null), 4358 (this.id = Ee.nextInode++), 4359 (this.name = t), 4360 (this.mode = r), 4361 (this.node_ops = {}), 4362 (this.stream_ops = {}), 4363 (this.rdev = n); 4364 }; 4365 function Pe(e, t, r) { 4366 var n = r > 0 ? r : $(e) + 1, 4367 o = new Array(n), 4368 i = X(e, o, 0, o.length); 4369 return t && (o.length = i), o; 4370 } 4371 Object.defineProperties(Fe.prototype, { 4372 read: { 4373 get: function () { 4374 return 365 == (365 & this.mode); 4375 }, 4376 set: function (e) { 4377 e ? (this.mode |= 365) : (this.mode &= -366); 4378 }, 4379 }, 4380 write: { 4381 get: function () { 4382 return 146 == (146 & this.mode); 4383 }, 4384 set: function (e) { 4385 e ? (this.mode |= 146) : (this.mode &= -147); 4386 }, 4387 }, 4388 isFolder: { 4389 get: function () { 4390 return Ee.isDir(this.mode); 4391 }, 4392 }, 4393 isDevice: { 4394 get: function () { 4395 return Ee.isChrdev(this.mode); 4396 }, 4397 }, 4398 }), 4399 (Ee.FSNode = Fe), 4400 Ee.staticInit(); 4401 var Me, 4402 Ae = { 4403 a: function (e, t, r, n) { 4404 ce( 4405 "Assertion failed: " + 4406 V(e) + 4407 ", at: " + 4408 [ 4409 t ? V(t) : "unknown filename", 4410 r, 4411 n ? V(n) : "unknown function", 4412 ] 4413 ); 4414 }, 4415 t: function (e, t) { 4416 return (function (e, t) { 4417 me(); 4418 var r = new Date(1e3 * N[e >> 2]); 4419 (N[t >> 2] = r.getSeconds()), 4420 (N[(t + 4) >> 2] = r.getMinutes()), 4421 (N[(t + 8) >> 2] = r.getHours()), 4422 (N[(t + 12) >> 2] = r.getDate()), 4423 (N[(t + 16) >> 2] = r.getMonth()), 4424 (N[(t + 20) >> 2] = r.getFullYear() - 1900), 4425 (N[(t + 24) >> 2] = r.getDay()); 4426 var n = new Date(r.getFullYear(), 0, 1), 4427 o = ((r.getTime() - n.getTime()) / 864e5) | 0; 4428 (N[(t + 28) >> 2] = o), 4429 (N[(t + 36) >> 2] = -60 * r.getTimezoneOffset()); 4430 var i = new Date( 4431 r.getFullYear(), 4432 6, 4433 1 4434 ).getTimezoneOffset(), 4435 s = n.getTimezoneOffset(), 4436 a = 4437 0 | 4438 (i != s && 4439 r.getTimezoneOffset() == Math.min(s, i)
4439); 4440 N[(t + 32) >> 2] = a; 4441 var u = N[(Ce() + (a ? 4 : 0)) >> 2]; 4442 return (N[(t + 40) >> 2] = u), t; 4443 })(e, t); 4444 }, 4445 G: function (e, t) { 4446 try { 4447 return (e = ke.getStr(e)), ke.doAccess(e, t); 4448 } catch (e) { 4449 return ( 4450 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4451 ce(e), 4452 -e.errno 4453 ); 4454 } 4455 }, 4456 v: function (e, t) { 4457 try { 4458 return (e = ke.getStr(e)), Ee.chmod(e, t), 0; 4459 } catch (e) { 4460 return ( 4461 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4462 ce(e), 4463 -e.errno 4464 ); 4465 } 4466 }, 4467 h: function (e, t, r) { 4468 try { 4469 return (e = ke.getStr(e)), Ee.chown(e, t, r), 0; 4470 } catch (e) { 4471 return ( 4472 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4473 ce(e), 4474 -e.errno 4475 ); 4476 } 4477 }, 4478 w: function (e, t) { 4479 try { 4480 return Ee.fchmod(e, t), 0; 4481 } catch (e) { 4482 return ( 4483 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4484 ce(e), 4485 -e.errno 4486 ); 4487 } 4488 }, 4489 i: function (e, t, r) { 4490 try { 4491 return Ee.fchown(e, t, r), 0; 4492 } catch (e) { 4493 return ( 4494 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4495 ce(e), 4496 -e.errno 4497 ); 4498 } 4499 }, 4500 b: function (e, t, r) { 4501 ke.varargs = r; 4502 try { 4503 var n = ke.getStreamFromFD(e); 4504 switch (t) { 4505 case 0: 4506 return (o = ke.get()) < 0 4507 ? -28 4508 : Ee.open(n.path, n.flags, 0, o).fd; 4509 case 1: 4510 case 2: 4511 return 0; 4512 case 3: 4513 return n.flags; 4514 case 4: 4515 var o = ke.get(); 4516 return (n.flags |= o), 0; 4517 case 12: 4518 return (o = ke.get()), (L[(o + 0) >> 1] = 2), 0; 4519 case 13: 4520 case 14: 4521 return 0; 4522 case 16: 4523 case 8: 4524 return -28; 4525 case 9: 4526 return Se(28), -1; 4527 default: 4528 return -28; 4529 } 4530 } catch (e) { 4531 return ( 4532 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4533 ce(e), 4534 -e.errno 4535 ); 4536 } 4537 }, 4538 y: function (e, t) { 4539 try { 4540 var r = ke.getStreamFromFD(e); 4541 return ke.doStat(Ee.stat, r.path, t); 4542 } catch (e) { 4543 return ( 4544 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4545 ce(e), 4546 -e.errno 4547 ); 4548 } 4549 }, 4550 J: function (e, t, r, n) { 4551 try { 4552 var o = ke.get64(r, n); 4553 return Ee.ftruncate(e, o), 0; 4554 } catch (e) { 4555 return ( 4556 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4557 ce(e), 4558 -e.errno 4559 ); 4560 } 4561 }, 4562 j: function (e, t) { 4563 try { 4564 if (0 === t) return -28; 4565 var r = Ee.cwd(); 4566 return t < $(r) + 1 ? -68 : (G(r, e, t), e); 4567 } catch (e) { 4568 return ( 4569 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4570 ce(e), 4571 -e.errno 4572 ); 4573 } 4574 }, 4575 H: function () { 4576 return 0; 4577 }, 4578 d: function () { 4579 return 42; 4580 }, 4581 x: function (e, t) { 4582 try { 4583 return (e = ke.getStr(e)), ke.doStat(Ee.lstat, e, t); 4584 } catch (e) { 4585 return ( 4586 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4587 ce(e), 4588 -e.errno 4589 ); 4590 } 4591 }, 4592 z: function (e, t) { 4593 try { 4594 return (e = ke.getStr(e)), ke.doMkdir(e, t); 4595 } catch (e) { 4596 return ( 4597 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4598 ce(e), 4599 -e.errno 4600 ); 4601 } 4602 }, 4603 A: function (e, t, r, n, o, i) { 4604 try { 4605 return (function (e, t, r, n, o, i) { 4606 var s; 4607 i <<= 12; 4608 var a = !1; 4609 if (0 != (16 & n) && e % 65536 != 0) return -28; 4610 if (0 != (32 & n)) { 4611 if (!(s = ye(t))) return -48; 4612 a = !0; 4613 } else { 4614 var u = Ee.getStream(o); 4615 if (!u) return -8; 4616 var l = Ee.mmap(u, e, t, i, r, n); 4617 (s = l.ptr), (a = l.allocated); 4618 } 4619 return ( 4620 (ke.mappings[s] = { 4621 malloc: s, 4622 len: t, 4623 allocated: a, 4624 fd: o, 4625 prot: r, 4626 flags: n, 4627 offset: i, 4628 }), 4629 s 4630 ); 4631 })(e, t, r, n, o, i); 4632 } catch (e) { 4633 return ( 4634 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4635 ce(e), 4636 -e.errno 4637 ); 4638 } 4639 }, 4640 B: function (e, t) { 4641 try { 4642 return (function (e, t) { 4643 var r = ke.mappings[e]; 4644 if (0 === t || !r) return -28; 4645 if (t === r.len) { 4646 var n = Ee.getStream(r.fd); 4647 n && 4648 (2 & r.prot && 4649 ke.doMsync(e, n, t, r.flags, r.offset), 4650 Ee.munmap(n)), 4651 (ke.mappings[e] = null),
4652 r.allocated && Te(r.malloc); 4653 } 4654 return 0; 4655 })(e, t); 4656 } catch (e) { 4657 return ( 4658 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4659 ce(e), 4660 -e.errno 4661 ); 4662 } 4663 }, 4664 D: function (e, t, r) { 4665 ke.varargs = r; 4666 try { 4667 var n = ke.getStr(e), 4668 o = r ? ke.get() : 0; 4669 return Ee.open(n, t, o).fd; 4670 } catch (e) { 4671 return ( 4672 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4673 ce(e), 4674 -e.errno 4675 ); 4676 } 4677 }, 4678 I: function (e, t, r) { 4679 try { 4680 return (e = ke.getStr(e)), ke.doReadlink(e, t, r); 4681 } catch (e) { 4682 return ( 4683 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4684 ce(e), 4685 -e.errno 4686 ); 4687 } 4688 }, 4689 F: function (e) { 4690 try { 4691 return (e = ke.getStr(e)), Ee.rmdir(e), 0; 4692 } catch (e) { 4693 return ( 4694 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4695 ce(e), 4696 -e.errno 4697 ); 4698 } 4699 }, 4700 e: function (e, t) { 4701 try { 4702 return (e = ke.getStr(e)), ke.doStat(Ee.stat, e, t); 4703 } catch (e) { 4704 return ( 4705 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4706 ce(e), 4707 -e.errno 4708 ); 4709 } 4710 }, 4711 k: function (e) { 4712 try { 4713 return (e = ke.getStr(e)), Ee.unlink(e), 0; 4714 } catch (e) { 4715 return ( 4716 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4717 ce(e), 4718 -e.errno 4719 ); 4720 } 4721 }, 4722 u: function () { 4723 return 2147483648; 4724 }, 4725 o: function (e, t, r) { 4726 B.copyWithin(e, t, t + r); 4727 }, 4728 c: function (e) { 4729 var t, 4730 r = B.length, 4731 n = 2147483648; 4732 if ((e >>>= 0) > n) return !1; 4733 for (var o = 1; o <= 4; o *= 2) { 4734 var i = r * (1 + 0.2 / o); 4735 if ( 4736 ((i = Math.min(i, e + 100663296)), 4737 qe( 4738 Math.min( 4739 n, 4740 ((t = Math.max(e, i)) % 65536 > 0 && 4741 (t += 65536 - (t % 65536)), 4742 t) 4743 ) 4744 )) 4745 ) 4746 return !0; 4747 } 4748 return !1; 4749 }, 4750 s: function (e) { 4751 for (var t = be(); be() - t < e; ); 4752 }, 4753 q: function (e, t) { 4754 var r = 0; 4755 return (
4756 De().forEach(function (n, o) { 4757 var i = t + r; 4758 (N[(e + 4 * o) >> 2] = i), 4759 (function (e, t, r) { 4760 for (var n = 0; n < e.length; ++n) 4761 O[t++ >> 0] = e.charCodeAt(n); 4762 O[t >> 0] = 0; 4763 })(n, i), 4764 (r += n.length + 1); 4765 }), 4766 0 4767 ); 4768 }, 4769 r: function (e, t) { 4770 var r = De(); 4771 N[e >> 2] = r.length; 4772 var n = 0; 4773 return ( 4774 r.forEach(function (e) { 4775 n += e.length + 1; 4776 }), 4777 (N[t >> 2] = n), 4778 0 4779 ); 4780 }, 4781 f: function (e) { 4782 try { 4783 var t = ke.getStreamFromFD(e); 4784 return Ee.close(t), 0; 4785 } catch (e) { 4786 return ( 4787 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4788 ce(e), 4789 e.errno 4790 ); 4791 } 4792 }, 4793 p: function (e, t) { 4794 try { 4795 var r = ke.getStreamFromFD(e), 4796 n = r.tty 4797 ? 2 4798 : Ee.isDir(r.mode) 4799 ? 3 4800 : Ee.isLink(r.mode) 4801 ? 7 4802 : 4; 4803 return (O[t >> 0] = n), 0; 4804 } catch (e) { 4805 return ( 4806 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4807 ce(e), 4808 e.errno 4809 ); 4810 } 4811 }, 4812 l: function (e, t, r, n) { 4813 try { 4814 var o = ke.getStreamFromFD(e), 4815 i = ke.doReadv(o, t, r); 4816 return (N[n >> 2] = i), 0; 4817 } catch (e) { 4818 return ( 4819 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4820 ce(e), 4821 e.errno 4822 ); 4823 } 4824 }, 4825 n: function (e, t, r, n, o) { 4826 try { 4827 var i = ke.getStreamFromFD(e), 4828 s = 4294967296 * r + (t >>> 0), 4829 a = 9007199254740992; 4830 return s <= -a || s >= a 4831 ? -61 4832 : (Ee.llseek(i, s, n), 4833 (te = [ 4834 i.position >>> 0, 4835 ((ee = i.position), 4836 +Math.abs(ee) >= 1 4837 ? ee > 0 4838 ? (0 | 4839 Math.min( 4840 +Math.floor(ee / 4294967296), 4841 4294967295 4842 )) >>> 4843 0 4844 : ~~+Math.ceil( 4845 (ee - +(~~ee >>> 0)) / 4294967296 4846 ) >>> 0 4847 : 0), 4848 ]), 4849 (N[o >> 2] = te[0]), 4850 (N[(o + 4) >> 2] = te[1]), 4851 i.getdents && 4852 0 === s && 4853 0 === n && 4854 (i.getdents = null),
4855 0); 4856 } catch (e) { 4857 return ( 4858 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4859 ce(e), 4860 e.errno 4861 ); 4862 } 4863 }, 4864 m: function (e) { 4865 try { 4866 var t = ke.getStreamFromFD(e); 4867 return t.stream_ops && t.stream_ops.fsync 4868 ? -t.stream_ops.fsync(t) 4869 : 0; 4870 } catch (e) { 4871 return ( 4872 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4873 ce(e), 4874 e.errno 4875 ); 4876 } 4877 }, 4878 E: function (e, t, r, n) { 4879 try { 4880 var o = ke.getStreamFromFD(e), 4881 i = ke.doWritev(o, t, r); 4882 return (N[n >> 2] = i), 0; 4883 } catch (e) { 4884 return ( 4885 (void 0 !== Ee && e instanceof Ee.ErrnoError) || 4886 ce(e), 4887 e.errno 4888 ); 4889 } 4890 }, 4891 g: function (e) { 4892 var t = Date.now(); 4893 return ( 4894 (N[e >> 2] = (t / 1e3) | 0), 4895 (N[(e + 4) >> 2] = ((t % 1e3) * 1e3) | 0), 4896 0 4897 ); 4898 }, 4899 K: function (e) { 4900 var t = (Date.now() / 1e3) | 0; 4901 return e && (N[e >> 2] = t), t; 4902 }, 4903 C: function (e, t) { 4904 var r; 4905 if (t) { 4906 var n = t + 8; 4907 (r = 1e3 * N[n >> 2]), (r += N[(n + 4) >> 2] / 1e3); 4908 } else r = Date.now(); 4909 return (function (e, t) { 4910 e = V(e); 4911 try { 4912 return Ee.utime(e, t, t), 0; 4913 } catch (e) { 4914 if (!(e instanceof Ee.ErrnoError)) 4915 throw ( 4916 e + 4917 " : " + 4918 ((r = (function () { 4919 var e = new Error(); 4920 if (!e.stack) { 4921 try { 4922 throw new Error(); 4923 } catch (t) { 4924 e = t; 4925 } 4926 if (!e.stack) 4927 return "(no stack trace available)"; 4928 } 4929 return e.stack.toString(); 4930 })()), 4931 i.extraStackTrace && 4932 (r += "\n" + i.extraStackTrace()), 4933 r.replace(/\b_Z[\w\d_]+/g, function (e) { 4934 return e == e ? e : e + " [" + e + "]"; 4935 })) 4936 ); 4937 return Se(e.errno), -1; 4938 } 4939 var r; 4940 })(e, r); 4941 }, 4942 }, 4943 Re = 4944 ((function () { 4945 var e = { a: Ae }; 4946 function t(e, t) { 4947 var r, 4948 n = e.exports; 4949 (i.asm = n), 4950 Y((D = i.asm.L).buffer), 4951 (Q = i.asm.Fa), 4952 (r = i.asm.M), 4953 ne.unshift(r), 4954 le(); 4955 } 4956 function r(e) { 4957 t(e.instance); 4958 } 4959 function n(t) { 4960 return (function () { 4961 if (!k && (_ || g)) { 4962 if ("function" == typeof fetch && !de(J)) 4963 return fetch(J, { credentials: "same-origin" }) 4964 .then(function (e) { 4965 if (!e.ok) 4966 throw ( 4967 "failed to load wasm binary file at '" + 4968 J + 4969 "'" 4970 ); 4971 return e.arrayBuffer(); 4972 }) 4973 .catch(function () { 4974 return he(J); 4975 }); 4976 if (c) 4977 return new Promise(function (e, t) { 4978 c( 4979 J, 4980 function (t) { 4981 e(new Uint8Array(t)); 4982 }, 4983 t 4984 ); 4985 }); 4986 } 4987 return Promise.resolve().then(function () { 4988 return he(J); 4989 }); 4990 })() 4991 .then(function (t) { 4992 return WebAssembly.instantiate(t, e); 4993 }) 4994 .then(function (e) { 4995 return e; 4996 }) 4997 .then(t, function (e) { 4998 w("failed to asynchronously prepare wasm: " + e), 4999 ce(e); 5000 }); 5001 } 5002 if ((ue(), i.instantiateWasm)) 5003 try { 5004 return i.instantiateWasm(e, t); 5005 } catch (e) { 5006 return ( 5007 w( 5008 "Module.instantiateWasm callback failed with error: " + 5009 e 5010 ), 5011 !1 5012 ); 5013 } 5014 k || 5015 "function" != typeof WebAssembly.instantiateStreaming || 5016 fe(J) || 5017 de(J) || 5018 "function" != typeof fetch 5019 ? n(r) 5020 : fetch(J, { credentials: "same-origin" }).then( 5021 function (t) { 5022 return WebAssembly.instantiateStreaming( 5023 t, 5024 e 5025 ).then(r, function (e) { 5026 return ( 5027 w("wasm streaming compile failed: " + e), 5028 w( 5029 "falling back to ArrayBuffer instantiation" 5030 ), 5031 n(r) 5032 ); 5033 }); 5034 } 5035 ); 5036 })(), 5037 (i.___wasm_call_ctors = function () { 5038 return (i.___wasm_call_ctors = i.asm.M).apply( 5039 null, 5040 arguments 5041 ); 5042 }), 5043 (i._sqlite3_malloc = function () { 5044 return (i._sqlite3_malloc = i.asm.N).apply( 5045 null, 5046 arguments 5047 ); 5048 }), 5049 (i._sqlite3_free = function () { 5050 return (i._sqlite3_free = i.asm.O).apply( 5051 null, 5052 arguments 5053 ); 5054 }), 5055 (i.___errno_location = function () { 5056 return (Re = i.___errno_location = i.asm.P).apply( 5057 null, 5058 arguments 5059 ); 5060 })), 5061 ze = 5062 ((i._sqlite3_finalize = function () { 5063 return (i._sqlite3_finalize = i.asm.Q).apply( 5064 null, 5065 arguments 5066 ); 5067 }), 5068 (i._sqlite3_reset = function () { 5069 return (i._sqlite3_reset = i.asm.R).apply( 5070 null, 5071 arguments 5072 ); 5073 }), 5074 (i._sqlite3_clear_bindings = function () { 5075 return (i._sqlite3_clear_bindings = i.asm.S).apply( 5076 null, 5077 arguments 5078 ); 5079 }), 5080 (i._sqlite3_value_blob = function () { 5081 return (i._sqlite3_value_blob = i.asm.T).apply( 5082 null, 5083 arguments 5084 ); 5085 }), 5086 (i._sqlite3_value_text = function () { 5087 return (i._sqlite3_value_text = i.asm.U).apply( 5088 null, 5089 arguments 5090 ); 5091 }), 5092 (i._sqlite3_value_bytes = function () { 5093 return (i._sqlite3_value_bytes = i.asm.V).apply( 5094 null, 5095 arguments 5096 ); 5097 }), 5098 (i._sqlite3_value_double = function () { 5099 return (i._sqlite3_value_double = i.asm.W).apply( 5100 null, 5101 arguments 5102 ); 5103 }), 5104 (i._sqlite3_value_int = function () { 5105 return (i._sqlite3_value_int = i.asm.X).apply( 5106 null, 5107 arguments 5108 ); 5109 }), 5110 (i._sqlite3_value_type = function () { 5111 return (i._sqlite3_value_type = i.asm.Y).apply( 5112 null, 5113 arguments 5114 ); 5115 }), 5116 (i._sqlite3_result_blob = function () { 5117 return (i._sqlite3_result_blob = i.asm.Z).apply( 5118 null, 5119 arguments 5120 ); 5121 }), 5122 (i._sqlite3_result_double = function () { 5123 return (i._sqlite3_result_double = i.asm._).apply( 5124 null, 5125 arguments 5126 ); 5127 }), 5128 (i._sqlite3_result_error = function () { 5129 return (i._sqlite3_result_error = i.asm.$).apply( 5130 null, 5131 arguments 5132 ); 5133 }), 5134 (i._sqlite3_result_int = function () { 5135 return (i._sqlite3_result_int = i.asm.aa).apply( 5136 null, 5137 arguments 5138 ); 5139 }), 5140 (i._sqlite3_result_int64 = function () { 5141 return (i._sqlite3_result_int64 = i.asm.ba).apply( 5142 null, 5143 arguments 5144 ); 5145 }), 5146 (i._sqlite3_result_null = function () { 5147 return (i._sqlite3_result_null = i.asm.ca).apply( 5148 null, 5149 arguments 5150 ); 5151 }), 5152 (i._sqlite3_result_text = function () { 5153 return (i._sqlite3_result_text = i.asm.da).apply( 5154 null, 5155 arguments 5156 ); 5157 }), 5158 (i._sqlite3_step = function () { 5159 return (i._sqlite3_step = i.asm.ea).apply( 5160 null, 5161 arguments 5162 ); 5163 }), 5164 (i._sqlite3_column_count = function () { 5165 return (i._sqlite3_column_count = i.asm.fa).apply( 5166 null, 5167 arguments 5168 ); 5169 }), 5170 (i._sqlite3_data_count = function () { 5171 return (i._sqlite3_data_count = i.asm.ga).apply( 5172 null, 5173 arguments 5174 ); 5175 }), 5176 (i._sqlite3_column_blob = function () { 5177 return (i._sqlite3_column_blob = i.asm.ha).apply( 5178 null, 5179 arguments 5180 ); 5181 }), 5182 (i._sqlite3_column_bytes = function () { 5183 return (i._sqlite3_column_bytes = i.asm.ia).apply( 5184 null, 5185 arguments 5186 ); 5187 }), 5188 (i._sqlite3_column_double = function () { 5189 return (i._sqlite3_column_double = i.asm.ja).apply( 5190 null, 5191 arguments 5192 ); 5193 }), 5194 (i._sqlite3_column_text = function () { 5195 return (i._sqlite3_column_text = i.asm.ka).apply( 5196 null, 5197 arguments 5198 ); 5199 }), 5200 (i._sqlite3_column_type = function () { 5201 return (i._sqlite3_column_type = i.asm.la).apply( 5202 null, 5203 arguments 5204 ); 5205 }), 5206 (i._sqlite3_column_name = function () { 5207 return (i._sqlite3_column_name = i.asm.ma).apply( 5208 null, 5209 arguments 5210 ); 5211 }), 5212 (i._sqlite3_bind_blob = function () { 5213 return (i._sqlite3_bind_blob = i.asm.na).apply( 5214 null, 5215 arguments 5216 ); 5217 }), 5218 (i._sqlite3_bind_double = function () { 5219 return (i._sqlite3_bind_double = i.asm.oa).apply( 5220 null, 5221 arguments 5222 ); 5223 }), 5224 (i._sqlite3_bind_int = function () { 5225 return (i._sqlite3_bind_int = i.asm.pa).apply( 5226 null, 5227 arguments 5228 ); 5229 }), 5230 (i._sqlite3_bind_text = function () { 5231 return (i._sqlite3_bind_text = i.asm.qa).apply( 5232 null, 5233
5233 arguments 5234 ); 5235 }), 5236 (i._sqlite3_bind_parameter_index = function () { 5237 return (i._sqlite3_bind_parameter_index = 5238 i.asm.ra).apply(null, arguments); 5239 }), 5240 (i._sqlite3_sql = function () { 5241 return (i._sqlite3_sql = i.asm.sa).apply( 5242 null, 5243 arguments 5244 ); 5245 }), 5246 (i._sqlite3_normalized_sql = function () { 5247 return (i._sqlite3_normalized_sql = i.asm.ta).apply( 5248 null, 5249 arguments 5250 ); 5251 }), 5252 (i._sqlite3_errmsg = function () { 5253 return (i._sqlite3_errmsg = i.asm.ua).apply( 5254 null, 5255 arguments 5256 ); 5257 }), 5258 (i._sqlite3_exec = function () { 5259 return (i._sqlite3_exec = i.asm.va).apply( 5260 null, 5261 arguments 5262 ); 5263 }), 5264 (i._sqlite3_prepare_v2 = function () {
5265 return (i._sqlite3_prepare_v2 = i.asm.wa).apply( 5266 null, 5267 arguments 5268 ); 5269 }), 5270 (i._sqlite3_create_module_v2 = function () { 5271 return (i._sqlite3_create_module_v2 = i.asm.xa).apply( 5272 null, 5273 arguments 5274 ); 5275 }), 5276 (i._sqlite3_declare_vtab = function () { 5277 return (i._sqlite3_declare_vtab = i.asm.ya).apply( 5278 null, 5279 arguments 5280 ); 5281 }), 5282 (i._sqlite3_changes = function () { 5283 return (i._sqlite3_changes = i.asm.za).apply( 5284 null, 5285 arguments 5286 ); 5287 }), 5288 (i._sqlite3_close_v2 = function () { 5289 return (i._sqlite3_close_v2 = i.asm.Aa).apply( 5290 null, 5291 arguments 5292 ); 5293 }), 5294 (i._sqlite3_create_function_v2 = function () { 5295 return (i._sqlite3_create_function_v2 = i.asm.Ba).apply( 5296 null, 5297 arguments 5298 ); 5299 }), 5300 (i._sqlite3_open = function () { 5301 return (i._sqlite3_open = i.asm.Ca).apply( 5302 null, 5303 arguments 5304 ); 5305 }), 5306 (i._malloc = function () { 5307 return (ze = i._malloc = i.asm.Da).apply( 5308 null, 5309 arguments 5310 ); 5311 })), 5312 Te = (i._free = function () { 5313 return (Te = i._free = i.asm.Ea).apply(null, arguments); 5314 }), 5315 Ce = 5316 ((i._RegisterExtensionFunctions = function () { 5317 return (i._RegisterExtensionFunctions = i.asm.Ga).apply( 5318 null, 5319 arguments 5320 ); 5321 }), 5322 (i.__get_tzname = function () { 5323 return (Ce = i.__get_tzname = i.asm.Ha).apply( 5324 null, 5325 arguments 5326 ); 5327 })), 5328 je = (i.__get_daylight = function () { 5329 return (je = i.__get_daylight = i.asm.Ia).apply( 5330 null, 5331 arguments 5332 ); 5333 }), 5334 Oe = (i.__get_timezone = function () { 5335 return (Oe = i.__get_timezone = i.asm.Ja).apply( 5336 null, 5337 arguments 5338 ); 5339 }), 5340 Be = (i.stackSave = function () { 5341 return (Be = i.stackSave = i.asm.Ka).apply( 5342 null, 5343 arguments 5344 ); 5345 }), 5346 Le = (i.stackRestore = function () { 5347 return (Le = i.stackRestore = i.asm.La).apply( 5348 null, 5349 arguments 5350 ); 5351 }), 5352 Ne = (i.stackAlloc = function () { 5353 return (Ne = i.stackAlloc = i.asm.Ma).apply( 5354 null, 5355 arguments 5356 ); 5357 }), 5358 He = (i._memalign = function () { 5359 return (He = i._memalign = i.asm.Na).apply( 5360 null, 5361 arguments 5362 ); 5363 }); 5364 function Ie(e) { 5365 function t() { 5366 Me || 5367 ((Me = !0), 5368 (i.calledRun = !0), 5369 M || 5370 (i.noFSInit || Ee.init.initialized || Ee.init(), 5371 (Ee.ignorePermissions = !1),
5372 ve.init(), 5373 pe(ne), 5374 i.onRuntimeInitialized && i.onRuntimeInitialized(), 5375 (function () { 5376 if (i.postRun) 5377 for ( 5378 "function" == typeof i.postRun && 5379 (i.postRun = [i.postRun]); 5380 i.postRun.length; 5381 5382 ) 5383 (e = i.postRun.shift()), oe.unshift(e); 5384 var e; 5385 pe(oe); 5386 })())); 5387 } 5388 (e = e || p), 5389 ie > 0 || 5390 ((function () { 5391 if (i.preRun) 5392 for ( 5393 "function" == typeof i.preRun && 5394 (i.preRun = [i.preRun]); 5395 i.preRun.length; 5396 5397 ) 5398 (e = i.preRun.shift()), re.unshift(e); 5399 var e; 5400 pe(re); 5401 })(), 5402 ie > 0 || 5403 (i.setStatus 5404 ? (i.setStatus("Running..."), 5405 setTimeout(function () { 5406 setTimeout(function () { 5407 i.setStatus(""); 5408 }, 1), 5409 t(); 5410 }, 1)) 5411 : t())); 5412 } 5413 if ( 5414 ((i.ccall = z), 5415 (i.cwrap = function (e, t, r, n) { 5416 var o = (r = r || []).every(function (e) { 5417 return "number" === e; 5418 }); 5419 return "string" !== t && o && !n 5420 ? R(e) 5421 : function () { 5422 return z(e, t, r, arguments); 5423 }; 5424 }), 5425 (i.setValue = F), 5426 (i.getValue = P), 5427 (i.UTF8ToString = V), 5428 (i.stringToUTF8 = G), 5429 (i.lengthBytesUTF8 = $), 5430 (i.addFunction = x), 5431 (i.stackSave = Be), 5432 (i.stackRestore = Le), 5433 (i.stackAlloc = Ne), 5434 (ae = function e() { 5435 Me || Ie(), Me || (ae = e); 5436 }), 5437 (i.run = Ie), 5438 i.preInit) 5439 ) 5440 for ( 5441 "function" == typeof i.preInit && 5442 (i.preInit = [i.preInit]); 5443 i.preInit.length > 0; 5444 5445 ) 5446 i.preInit.pop()(); 5447 return Ie(), i; 5448 })) 5449 ); 5450 }; 5451 (e.exports = o), (e.exports.default = o); 5452 }, 5453 720: (e, t, r) => { 5454 "use strict"; 5455 e.exports = r.p + "sql-wasm.wasm"; 5456 }, 5457 821: () => {}, 5458 905: () => {}, 5459 101: () => {}, 5460 }, 5461 __webpack_module_cache__ = {}; 5462 function __webpack_require__(e) { 5463 var t = __webpack_module_cache__[e]; 5464 if (void 0 !== t) return t.exports; 5465 var r = (__webpack_module_cache__[e] = { 5466 id: e, 5467 loaded: !1, 5468 exports: {}, 5469 }); 5470 return ( 5471 __webpack_modules__[e].call( 5472 r.exports, 5473 r, 5474 r.exports, 5475 __webpack_require__ 5476 ), 5477 (r.loaded = !0), 5478 r.exports 5479 ); 5480 } 5481 (__webpack_require__.d = (e, t) => { 5482 for (var r in t) 5483 __webpack_require__.o(t, r) && 5484 !__webpack_require__.o(e, r) && 5485 Object.defineProperty(e, r, { enumerable: !0, get: t[r] }); 5486 }), 5487 (__webpack_require__.o = (e, t) => 5488 Object.prototype.hasOwnProperty.call(e, t)), 5489 (__webpack_require__.r = (e) => { 5490 "undefined" != typeof Symbol && 5491 Symbol.toStringTag && 5492 Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), 5493 Object.defineProperty(e, "__esModule", { value: !0 }); 5494 }), 5495 (__webpack_require__.nmd = (e) => ( 5496 (e.paths = []), e.children || (e.children = []), e 5497 )), 5498 (__webpack_require__.p = ""); 5499 var __webpack_exports__ = __webpack_require__(630); 5500 return __webpack_exports__; 5501 })(); 5502}); 5503//# sourceMappingURL=sqlite.worker.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.