From 649d744d8147547470e21802e6a463e73587c423 Mon Sep 17 00:00:00 2001 From: yflory Date: Fri, 29 May 2020 15:10:35 +0200 Subject: [PATCH] New x2t build --- www/common/onlyoffice/x2t/x2t.js | 17394 +++++++++++++-------------- www/common/onlyoffice/x2t/x2t.wasm | Bin 38122741 -> 38122754 bytes 2 files changed, 8434 insertions(+), 8960 deletions(-) diff --git a/www/common/onlyoffice/x2t/x2t.js b/www/common/onlyoffice/x2t/x2t.js index 1bfa08870..c87f65922 100644 --- a/www/common/onlyoffice/x2t/x2t.js +++ b/www/common/onlyoffice/x2t/x2t.js @@ -1,1581 +1,1180 @@ -// Copyright 2010 The Emscripten Authors. All rights reserved. -// Emscripten is available under two separate licenses, the MIT license and the -// University of Illinois/NCSA Open Source License. Both these licenses can be -// found in the LICENSE file. +// Support for growable heap + pthreads, where the buffer may change, so JS views +// must be updated. +function GROWABLE_HEAP_STORE_I8(ptr, value) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + HEAP8[ptr] = value; +} +function GROWABLE_HEAP_STORE_I16(ptr, value) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + HEAP16[ptr >> 1] = value; +} +function GROWABLE_HEAP_STORE_I32(ptr, value) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + HEAP32[ptr >> 2] = value; +} +function GROWABLE_HEAP_STORE_F32(ptr, value) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + HEAPF32[ptr >> 2] = value; +} +function GROWABLE_HEAP_STORE_F64(ptr, value) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + HEAPF64[ptr >> 3] = value; +} -// The Module object: Our interface to the outside world. We import -// and export values on it. There are various ways Module can be used: -// 1. Not defined. We create it here -// 2. A function parameter, function(Module) { ..generated code.. } -// 3. pre-run appended it, var Module = {}; ..generated code.. -// 4. External script tag defines var Module. -// We need to check if Module already exists (e.g. case 3 above). -// Substitution will be replaced with actual code on later stage of the build, -// this way Closure Compiler will not mangle it (e.g. case 4. above). -// Note that if you want to run closure, and also to use Module -// after the generated code, you will need to define var Module = {}; -// before the code. Then that object will be used in the code, and you -// can continue to use Module afterwards as well. -var Module = typeof Module !== 'undefined' ? Module : {}; +function GROWABLE_HEAP_LOAD_I8(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAP8[ptr]; +} +function GROWABLE_HEAP_LOAD_U8(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAPU8[ptr]; +} +function GROWABLE_HEAP_LOAD_I16(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAP16[ptr >> 1]; +} +function GROWABLE_HEAP_LOAD_U16(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAPU16[ptr >> 1]; +} +function GROWABLE_HEAP_LOAD_I32(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAP32[ptr >> 2]; +} +function GROWABLE_HEAP_LOAD_U32(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAPU32[ptr >> 2]; +} +function GROWABLE_HEAP_LOAD_F32(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAPF32[ptr >> 2]; +} +function GROWABLE_HEAP_LOAD_F64(ptr) { + if (wasmMemory.buffer != buffer) { + updateGlobalBufferAndViews(wasmMemory.buffer); + } + return HEAPF64[ptr >> 3]; +} +function GROWABLE_HEAP_VIEW_I8(start, end) { + return new Int8Array(wasmMemory.buffer, start, end - start); +} +function GROWABLE_HEAP_VIEW_U8(start, end) { + return new Uint8Array(wasmMemory.buffer, start, end - start); +} +function GROWABLE_HEAP_VIEW_I16(start, end) { + return new Int16Array(wasmMemory.buffer, start >> 1, end - start >> 1); +} +function GROWABLE_HEAP_VIEW_U16(start, end) { + return new Uint16Array(wasmMemory.buffer, start >> 1, end - start >> 1); +} +function GROWABLE_HEAP_VIEW_I32(start, end) { + return new Int32Array(wasmMemory.buffer, start >> 2, end - start >> 2); +} +function GROWABLE_HEAP_VIEW_U32(start, end) { + return new Uint32Array(wasmMemory.buffer, start >> 2, end - start >> 2); +} +function GROWABLE_HEAP_VIEW_F32(start, end) { + return new Float32Array(wasmMemory.buffer, start >> 2, end - start >> 2); +} +function GROWABLE_HEAP_VIEW_F64(start, end) { + return new Float64Array(wasmMemory.buffer, start >> 3, end - start >> 3); +} -// --pre-jses are emitted after the Module integration code, so that they can -// refer to Module (if they choose; they can also define Module) -// {{PRE_JSES}} -// Sometimes an existing Module object exists with properties -// meant to overwrite the default module functionality. Here -// we collect those properties and reapply _after_ we configure -// the current environment's defaults to avoid having to be so -// defensive during initialization. +var Module = typeof Module !== "undefined" ? Module : {}; var moduleOverrides = {}; var key; for (key in Module) { - if (Module.hasOwnProperty(key)) { - moduleOverrides[key] = Module[key]; - } + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key]; + } } - var arguments_ = []; -var thisProgram = './this.program'; -var quit_ = function(status, toThrow) { - throw toThrow; -}; - -// Determine the runtime environment we are in. You can customize this by -// setting the ENVIRONMENT setting at compile time (see settings.js). - +var thisProgram = "./this.program"; +var quit_ = (function(status, toThrow) { + throw toThrow; +}); var ENVIRONMENT_IS_WEB = false; var ENVIRONMENT_IS_WORKER = false; var ENVIRONMENT_IS_NODE = false; var ENVIRONMENT_HAS_NODE = false; var ENVIRONMENT_IS_SHELL = false; -ENVIRONMENT_IS_WEB = typeof window === 'object'; -ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; -// A web environment like Electron.js can have Node enabled, so we must -// distinguish between Node-enabled environments and Node environments per se. -// This will allow the former to do things like mount NODEFS. -// Extended check using process.versions fixes issue #8816. -// (Also makes redundant the original check that 'require' is a function.) -ENVIRONMENT_HAS_NODE = typeof process === 'object' && typeof process.versions === 'object' && typeof process.versions.node === 'string'; +ENVIRONMENT_IS_WEB = typeof window === "object"; +ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; +ENVIRONMENT_HAS_NODE = typeof process === "object" && typeof process.versions === "object" && typeof process.versions.node === "string"; ENVIRONMENT_IS_NODE = ENVIRONMENT_HAS_NODE && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; - -if (Module['ENVIRONMENT']) { - throw new Error('Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)'); +if (Module["ENVIRONMENT"]) { + throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)"); } - - -// Three configurations we can be running in: -// 1) We could be the application main() thread running in the main JS UI thread. (ENVIRONMENT_IS_WORKER == false and ENVIRONMENT_IS_PTHREAD == false) -// 2) We could be the application main() thread proxied to worker. (with Emscripten -s PROXY_TO_WORKER=1) (ENVIRONMENT_IS_WORKER == true, ENVIRONMENT_IS_PTHREAD == false) -// 3) We could be an application pthread running in a worker. (ENVIRONMENT_IS_WORKER == true and ENVIRONMENT_IS_PTHREAD == true) - -// ENVIRONMENT_IS_PTHREAD=true will have been preset in worker.js. Make it false in the main runtime thread. -var ENVIRONMENT_IS_PTHREAD = Module['ENVIRONMENT_IS_PTHREAD'] || false; +var ENVIRONMENT_IS_PTHREAD = Module["ENVIRONMENT_IS_PTHREAD"] || false; if (ENVIRONMENT_IS_PTHREAD) { - // Grab imports from the pthread to local scope. - buffer = Module['buffer']; - tempDoublePtr = Module['tempDoublePtr']; - DYNAMIC_BASE = Module['DYNAMIC_BASE']; - DYNAMICTOP_PTR = Module['DYNAMICTOP_PTR']; - // Note that not all runtime fields are imported above. Values for STACK_BASE, STACKTOP and STACK_MAX are not yet known at worker.js load time. - // These will be filled in at pthread startup time (the 'run' message for a pthread - pthread start establishes the stack frame) + buffer = Module["buffer"]; + tempDoublePtr = Module["tempDoublePtr"]; + DYNAMIC_BASE = Module["DYNAMIC_BASE"]; + DYNAMICTOP_PTR = Module["DYNAMICTOP_PTR"]; } - - - - -// In MODULARIZE mode _scriptDir needs to be captured already at the very top of the page immediately when the page is parsed, so it is generated there -// before the page load. In non-MODULARIZE modes generate it here. -var _scriptDir = (typeof document !== 'undefined' && document.currentScript) ? document.currentScript.src : undefined; - +var _scriptDir = typeof document !== "undefined" && document.currentScript ? document.currentScript.src : undefined; if (ENVIRONMENT_IS_NODE) { - _scriptDir = __filename; + _scriptDir = __filename; } - -// `/` should be present at the end if `scriptDirectory` is not empty -var scriptDirectory = ''; +var scriptDirectory = ""; function locateFile(path) { - if (Module['locateFile']) { - return Module['locateFile'](path, scriptDirectory); - } - return scriptDirectory + path; + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory); + } + return scriptDirectory + path; } - -// Hooks that are implemented differently in different runtime environments. -var read_, - readAsync, - readBinary, - setWindowTitle; - +var read_, readAsync, readBinary, setWindowTitle; var nodeFS; var nodePath; - if (ENVIRONMENT_IS_NODE) { - scriptDirectory = __dirname + '/'; - - - read_ = function shell_read(filename, binary) { - if (!nodeFS) nodeFS = require('fs'); - if (!nodePath) nodePath = require('path'); - filename = nodePath['normalize'](filename); - return nodeFS['readFileSync'](filename, binary ? null : 'utf8'); - }; - - readBinary = function readBinary(filename) { - var ret = read_(filename, true); - if (!ret.buffer) { - ret = new Uint8Array(ret); - } - assert(ret.buffer); - return ret; + scriptDirectory = __dirname + "/"; + read_ = function shell_read(filename, binary) { + if (!nodeFS) nodeFS = require("fs"); + if (!nodePath) nodePath = require("path"); + filename = nodePath["normalize"](filename); + return nodeFS["readFileSync"](filename, binary ? null : "utf8"); + }; + readBinary = function readBinary(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret); + } + assert(ret.buffer); + return ret; + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/"); + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module; + } + process["on"]("uncaughtException", (function(ex) { + if (!(ex instanceof ExitStatus)) { + throw ex; + } + })); + process["on"]("unhandledRejection", abort); + quit_ = (function(status) { + process["exit"](status); + }); + Module["inspect"] = (function() { + return "[Emscripten Module object]"; + }); + var nodeWorkerThreads; + try { + nodeWorkerThreads = require("worker_threads"); + } catch (e) { + console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?'); + throw e; + } + Worker = nodeWorkerThreads.Worker; +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f); }; - - - - - if (process['argv'].length > 1) { - thisProgram = process['argv'][1].replace(/\\/g, '/'); - } - - arguments_ = process['argv'].slice(2); - - if (typeof module !== 'undefined') { - module['exports'] = Module; - } - - process['on']('uncaughtException', function(ex) { - // suppress ExitStatus exceptions from showing an error - if (!(ex instanceof ExitStatus)) { - throw ex; - } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)); + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data; + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs; + } else if (typeof arguments != "undefined") { + arguments_ = arguments; + } + if (typeof quit === "function") { + quit_ = (function(status) { + quit(status); }); - - process['on']('unhandledRejection', abort); - - quit_ = function(status) { - process['exit'](status); - }; - - Module['inspect'] = function () { return '[Emscripten Module object]'; }; - - var nodeWorkerThreads; - try { - nodeWorkerThreads = require('worker_threads'); - } catch (e) { - console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?'); - throw e; - } - Worker = nodeWorkerThreads.Worker; - -} else -if (ENVIRONMENT_IS_SHELL) { - - - if (typeof read != 'undefined') { - read_ = function shell_read(f) { - return read(f); - }; - } - - readBinary = function readBinary(f) { - var data; - if (typeof readbuffer === 'function') { - return new Uint8Array(readbuffer(f)); - } - data = read(f, 'binary'); - assert(typeof data === 'object'); - return data; - }; - - if (typeof scriptArgs != 'undefined') { - arguments_ = scriptArgs; - } else if (typeof arguments != 'undefined') { - arguments_ = arguments; - } - - if (typeof quit === 'function') { - quit_ = function(status) { - quit(status); - }; - } - - if (typeof print !== 'undefined') { - // Prefer to use print/printErr where they exist, as they usually work better. - if (typeof console === 'undefined') console = {}; - console.log = print; - console.warn = console.error = typeof printErr !== 'undefined' ? printErr : print; - } -} else - -// Note that this includes Node.js workers when relevant (pthreads is enabled). -// Node.js workers are detected as a combination of ENVIRONMENT_IS_WORKER and -// ENVIRONMENT_HAS_NODE. -if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { - if (ENVIRONMENT_IS_WORKER) { // Check worker, not web, since window could be polyfilled - scriptDirectory = self.location.href; - } else if (document.currentScript) { // web - scriptDirectory = document.currentScript.src; - } - // blob urls look like blob:http://site.com/etc/etc and we cannot infer anything from them. - // otherwise, slice off the final part of the url to find the script directory. - // if scriptDirectory does not contain a slash, lastIndexOf will return -1, - // and scriptDirectory will correctly be replaced with an empty string. - if (scriptDirectory.indexOf('blob:') !== 0) { - scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf('/')+1); - } else { - scriptDirectory = ''; - } - - - // Differentiate the Web Worker from the Node Worker case, as reading must - // be done differently. - if (ENVIRONMENT_HAS_NODE) { - - + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr : print; + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href; + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src; + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1); + } else { + scriptDirectory = ""; + } + if (ENVIRONMENT_HAS_NODE) { read_ = function shell_read(filename, binary) { - if (!nodeFS) nodeFS = require('fs'); - if (!nodePath) nodePath = require('path'); - filename = nodePath['normalize'](filename); - return nodeFS['readFileSync'](filename, binary ? null : 'utf8'); + if (!nodeFS) nodeFS = require("fs"); + if (!nodePath) nodePath = require("path"); + filename = nodePath["normalize"](filename); + return nodeFS["readFileSync"](filename, binary ? null : "utf8"); }; - readBinary = function readBinary(filename) { - var ret = read_(filename, true); - if (!ret.buffer) { - ret = new Uint8Array(ret); - } - assert(ret.buffer); - return ret; + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret); + } + assert(ret.buffer); + return ret; }; - - - - - } else - { - - + } else { read_ = function shell_read(url) { - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, false); - xhr.send(null); - return xhr.responseText; + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText; }; - if (ENVIRONMENT_IS_WORKER) { - readBinary = function readBinary(url) { - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, false); - xhr.responseType = 'arraybuffer'; - xhr.send(null); - return new Uint8Array(xhr.response); - }; + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response); + }; } - readAsync = function readAsync(url, onload, onerror) { - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, true); - xhr.responseType = 'arraybuffer'; - xhr.onload = function xhr_onload() { - if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file URLs can return 0 - onload(xhr.response); - return; - } - onerror(); - }; - xhr.onerror = onerror; - xhr.send(null); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return; + } + onerror(); + }; + xhr.onerror = onerror; + xhr.send(null); }; - - - - - } - - setWindowTitle = function(title) { document.title = title }; -} else -{ - throw new Error('environment detection error'); + } + setWindowTitle = (function(title) { + document.title = title; + }); +} else { + throw new Error("environment detection error"); } - if (ENVIRONMENT_HAS_NODE) { - // Polyfill the performance object, which emscripten pthreads support - // depends on for good timing. - if (typeof performance === 'undefined') { - performance = require('perf_hooks').performance; - } + if (typeof performance === "undefined") { + performance = require("perf_hooks").performance; + } } - -// Set up the out() and err() hooks, which are how we can print to stdout or -// stderr, respectively. -var out = Module['print'] || console.log.bind(console); -var err = Module['printErr'] || console.warn.bind(console); - -// Merge back in the overrides +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); for (key in moduleOverrides) { - if (moduleOverrides.hasOwnProperty(key)) { - Module[key] = moduleOverrides[key]; - } + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key]; + } } -// Free the object hierarchy contained in the overrides, this lets the GC -// reclaim data used e.g. in memoryInitializerRequest, which is a large typed array. moduleOverrides = null; - -// Emit code to handle expected values on the Module object. This applies Module.x -// to the proper local x. This has two benefits: first, we only emit it if it is -// expected to arrive, and second, by using a local everywhere else that can be -// minified. -if (Module['arguments']) arguments_ = Module['arguments'];if (!Object.getOwnPropertyDescriptor(Module, 'arguments')) Object.defineProperty(Module, 'arguments', { configurable: true, get: function() { abort('Module.arguments has been replaced with plain arguments_') } }); -if (Module['thisProgram']) thisProgram = Module['thisProgram'];if (!Object.getOwnPropertyDescriptor(Module, 'thisProgram')) Object.defineProperty(Module, 'thisProgram', { configurable: true, get: function() { abort('Module.thisProgram has been replaced with plain thisProgram') } }); -if (Module['quit']) quit_ = Module['quit'];if (!Object.getOwnPropertyDescriptor(Module, 'quit')) Object.defineProperty(Module, 'quit', { configurable: true, get: function() { abort('Module.quit has been replaced with plain quit_') } }); - -// perform assertions in shell.js after we set up out() and err(), as otherwise if an assertion fails it cannot print the message -// Assertions on removed incoming Module JS APIs. -assert(typeof Module['memoryInitializerPrefixURL'] === 'undefined', 'Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead'); -assert(typeof Module['pthreadMainPrefixURL'] === 'undefined', 'Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead'); -assert(typeof Module['cdInitializerPrefixURL'] === 'undefined', 'Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead'); -assert(typeof Module['filePackagePrefixURL'] === 'undefined', 'Module.filePackagePrefixURL option was removed, use Module.locateFile instead'); -assert(typeof Module['read'] === 'undefined', 'Module.read option was removed (modify read_ in JS)'); -assert(typeof Module['readAsync'] === 'undefined', 'Module.readAsync option was removed (modify readAsync in JS)'); -assert(typeof Module['readBinary'] === 'undefined', 'Module.readBinary option was removed (modify readBinary in JS)'); -assert(typeof Module['setWindowTitle'] === 'undefined', 'Module.setWindowTitle option was removed (modify setWindowTitle in JS)'); -if (!Object.getOwnPropertyDescriptor(Module, 'read')) Object.defineProperty(Module, 'read', { configurable: true, get: function() { abort('Module.read has been replaced with plain read_') } }); -if (!Object.getOwnPropertyDescriptor(Module, 'readAsync')) Object.defineProperty(Module, 'readAsync', { configurable: true, get: function() { abort('Module.readAsync has been replaced with plain readAsync') } }); -if (!Object.getOwnPropertyDescriptor(Module, 'readBinary')) Object.defineProperty(Module, 'readBinary', { configurable: true, get: function() { abort('Module.readBinary has been replaced with plain readBinary') } }); -// TODO: add when SDL2 is fixed if (!Object.getOwnPropertyDescriptor(Module, 'setWindowTitle')) Object.defineProperty(Module, 'setWindowTitle', { configurable: true, get: function() { abort('Module.setWindowTitle has been replaced with plain setWindowTitle') } }); -var IDBFS = 'IDBFS is no longer included by default; build with -lidbfs.js'; -var PROXYFS = 'PROXYFS is no longer included by default; build with -lproxyfs.js'; -var WORKERFS = 'WORKERFS is no longer included by default; build with -lworkerfs.js'; - - -assert(ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER || ENVIRONMENT_IS_NODE, 'Pthreads do not work in this environment yet (need Web Workers, or an alternative to them)'); - -// TODO remove when SDL2 is fixed (also see above) - - - -// Copyright 2017 The Emscripten Authors. All rights reserved. -// Emscripten is available under two separate licenses, the MIT license and the -// University of Illinois/NCSA Open Source License. Both these licenses can be -// found in the LICENSE file. - -// {{PREAMBLE_ADDITIONS}} - +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: (function() { + abort("Module.arguments has been replaced with plain arguments_"); + }) +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: (function() { + abort("Module.thisProgram has been replaced with plain thisProgram"); + }) +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: (function() { + abort("Module.quit has been replaced with plain quit_"); + }) +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: (function() { + abort("Module.read has been replaced with plain read_"); + }) +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: (function() { + abort("Module.readAsync has been replaced with plain readAsync"); + }) +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: (function() { + abort("Module.readBinary has been replaced with plain readBinary"); + }) +}); +var IDBFS = "IDBFS is no longer included by default; build with -lidbfs.js"; +var PROXYFS = "PROXYFS is no longer included by default; build with -lproxyfs.js"; +var WORKERFS = "WORKERFS is no longer included by default; build with -lworkerfs.js"; +assert(ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER || ENVIRONMENT_IS_NODE, "Pthreads do not work in this environment yet (need Web Workers, or an alternative to them)"); var STACK_ALIGN = 16; - -// stack management, and other functionality that is provided by the compiled code, -// should not be used before it is ready -stackSave = stackRestore = stackAlloc = function() { - abort('cannot use the stack before compiled code is ready to run, and has provided stack access'); -}; - +stackSave = stackRestore = stackAlloc = (function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access"); +}); function staticAlloc(size) { - abort('staticAlloc is no longer available at runtime; instead, perform static allocations at compile time (using makeStaticAlloc)'); + abort("staticAlloc is no longer available at runtime; instead, perform static allocations at compile time (using makeStaticAlloc)"); } - function dynamicAlloc(size) { - assert(DYNAMICTOP_PTR); - assert(!ENVIRONMENT_IS_PTHREAD); // this function is not thread-safe - var ret = HEAP32[DYNAMICTOP_PTR>>2]; - var end = (ret + size + 15) & -16; - if (end > _emscripten_get_heap_size()) { - abort('failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly'); - } - HEAP32[DYNAMICTOP_PTR>>2] = end; - return ret; + assert(DYNAMICTOP_PTR); + assert(!ENVIRONMENT_IS_PTHREAD); + var ret = GROWABLE_HEAP_LOAD_I32(DYNAMICTOP_PTR | 0); + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly"); + } + GROWABLE_HEAP_STORE_I32(DYNAMICTOP_PTR | 0, end); + return ret; } - function alignMemory(size, factor) { - if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default - return Math.ceil(size / factor) * factor; + if (!factor) factor = STACK_ALIGN; + return Math.ceil(size / factor) * factor; } - function getNativeTypeSize(type) { - switch (type) { - case 'i1': case 'i8': return 1; - case 'i16': return 2; - case 'i32': return 4; - case 'i64': return 8; - case 'float': return 4; - case 'double': return 8; - default: { - if (type[type.length-1] === '*') { - return 4; // A pointer - } else if (type[0] === 'i') { - var bits = parseInt(type.substr(1)); - assert(bits % 8 === 0, 'getNativeTypeSize invalid bits ' + bits + ', type ' + type); - return bits / 8; - } else { - return 0; - } - } + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: + { + if (type[type.length - 1] === "*") { + return 4; + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8; + } else { + return 0; + } } + } } - function warnOnce(text) { - if (!warnOnce.shown) warnOnce.shown = {}; - if (!warnOnce.shown[text]) { - warnOnce.shown[text] = 1; - err(text); - } + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text); + } } - -var asm2wasmImports = { // special asm2wasm imports - "f64-rem": function(x, y) { - return x % y; - }, - "debugger": function() { - debugger; - } +var asm2wasmImports = { + "f64-rem": (function(x, y) { + return x % y; + }), + "debugger": (function() { + debugger; + }) }; - - - - -// Wraps a JS function as a wasm function with a given signature. function convertJsFunctionToWasm(func, sig) { - - // If the type reflection proposal is available, use the new - // "WebAssembly.Function" constructor. - // Otherwise, construct a minimal wasm module importing the JS function and - // re-exporting it. - if (typeof WebAssembly.Function === "function") { - var typeNames = { - 'i': 'i32', - 'j': 'i64', - 'f': 'f32', - 'd': 'f64' - }; - var type = { - parameters: [], - results: sig[0] == 'v' ? [] : [typeNames[sig[0]]] - }; - for (var i = 1; i < sig.length; ++i) { - type.parameters.push(typeNames[sig[i]]); - } - return new WebAssembly.Function(type, func); - } - - // The module is static, with the exception of the type section, which is - // generated based on the signature passed in. - var typeSection = [ - 0x01, // id: section, - 0x00, // length: 0 (placeholder) - 0x01, // count: 1 - 0x60, // form: func - ]; - var sigRet = sig.slice(0, 1); - var sigParam = sig.slice(1); - var typeCodes = { - 'i': 0x7f, // i32 - 'j': 0x7e, // i64 - 'f': 0x7d, // f32 - 'd': 0x7c, // f64 + if (typeof WebAssembly.Function === "function") { + var typeNames = { + "i": "i32", + "j": "i64", + "f": "f32", + "d": "f64" }; - - // Parameters, length + signatures - typeSection.push(sigParam.length); - for (var i = 0; i < sigParam.length; ++i) { - typeSection.push(typeCodes[sigParam[i]]); - } - - // Return values, length + signatures - // With no multi-return in MVP, either 0 (void) or 1 (anything else) - if (sigRet == 'v') { - typeSection.push(0x00); - } else { - typeSection = typeSection.concat([0x01, typeCodes[sigRet]]); - } - - // Write the overall length of the type section back into the section header - // (excepting the 2 bytes for the section id and length) - typeSection[1] = typeSection.length - 2; - - // Rest of the module is static - var bytes = new Uint8Array([ - 0x00, 0x61, 0x73, 0x6d, // magic ("\0asm") - 0x01, 0x00, 0x00, 0x00, // version: 1 - ].concat(typeSection, [ - 0x02, 0x07, // import section - // (import "e" "f" (func 0 (type 0))) - 0x01, 0x01, 0x65, 0x01, 0x66, 0x00, 0x00, - 0x07, 0x05, // export section - // (export "f" (func 0 (type 0))) - 0x01, 0x01, 0x66, 0x00, 0x00, - ])); - - // We can compile this wasm module synchronously because it is very small. - // This accepts an import (at "e.f"), that it reroutes to an export (at "f") - var module = new WebAssembly.Module(bytes); - var instance = new WebAssembly.Instance(module, { - 'e': { - 'f': func - } - }); - var wrappedFunc = instance.exports['f']; - return wrappedFunc; + var type = { + parameters: [], + results: sig[0] == "v" ? [] : [ typeNames[sig[0]] ] + }; + for (var i = 1; i < sig.length; ++i) { + type.parameters.push(typeNames[sig[i]]); + } + return new WebAssembly.Function(type, func); + } + var typeSection = [ 1, 0, 1, 96 ]; + var sigRet = sig.slice(0, 1); + var sigParam = sig.slice(1); + var typeCodes = { + "i": 127, + "j": 126, + "f": 125, + "d": 124 + }; + typeSection.push(sigParam.length); + for (var i = 0; i < sigParam.length; ++i) { + typeSection.push(typeCodes[sigParam[i]]); + } + if (sigRet == "v") { + typeSection.push(0); + } else { + typeSection = typeSection.concat([ 1, typeCodes[sigRet] ]); + } + typeSection[1] = typeSection.length - 2; + var bytes = new Uint8Array([ 0, 97, 115, 109, 1, 0, 0, 0 ].concat(typeSection, [ 2, 7, 1, 1, 101, 1, 102, 0, 0, 7, 5, 1, 1, 102, 0, 0 ])); + var module = new WebAssembly.Module(bytes); + var instance = new WebAssembly.Instance(module, { + "e": { + "f": func + } + }); + var wrappedFunc = instance.exports["f"]; + return wrappedFunc; } - -// Add a wasm function to the table. function addFunctionWasm(func, sig) { - var table = wasmTable; - var ret = table.length; - - // Grow the table - try { - table.grow(1); - } catch (err) { - if (!err instanceof RangeError) { - throw err; - } - throw 'Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH.'; - } - - // Insert new element - try { - // Attempting to call this with JS function will cause of table.set() to fail - table.set(ret, func); - } catch (err) { - if (!err instanceof TypeError) { - throw err; - } - assert(typeof sig !== 'undefined', 'Missing signature argument to addFunction'); - var wrapped = convertJsFunctionToWasm(func, sig); - table.set(ret, wrapped); - } - - return ret; -} - -function removeFunctionWasm(index) { - // TODO(sbc): Look into implementing this to allow re-using of table slots + var table = wasmTable; + var ret = table.length; + try { + table.grow(1); + } catch (err) { + if (!err instanceof RangeError) { + throw err; + } + throw "Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH."; + } + try { + table.set(ret, func); + } catch (err) { + if (!err instanceof TypeError) { + throw err; + } + assert(typeof sig !== "undefined", "Missing signature argument to addFunction"); + var wrapped = convertJsFunctionToWasm(func, sig); + table.set(ret, wrapped); + } + return ret; } - -// 'sig' parameter is required for the llvm backend but only when func is not -// already a WebAssembly function. +function removeFunctionWasm(index) {} function addFunction(func, sig) { - assert(typeof func !== 'undefined'); - - return addFunctionWasm(func, sig); + assert(typeof func !== "undefined"); + return addFunctionWasm(func, sig); } - function removeFunction(index) { - removeFunctionWasm(index); + removeFunctionWasm(index); } - var funcWrappers = {}; - function getFuncWrapper(func, sig) { - if (!func) return; // on null pointer, return undefined - assert(sig); - if (!funcWrappers[sig]) { - funcWrappers[sig] = {}; - } - var sigCache = funcWrappers[sig]; - if (!sigCache[func]) { - // optimize away arguments usage in common cases - if (sig.length === 1) { - sigCache[func] = function dynCall_wrapper() { - return dynCall(sig, func); - }; - } else if (sig.length === 2) { - sigCache[func] = function dynCall_wrapper(arg) { - return dynCall(sig, func, [arg]); - }; - } else { - // general case - sigCache[func] = function dynCall_wrapper() { - return dynCall(sig, func, Array.prototype.slice.call(arguments)); - }; - } + if (!func) return; + assert(sig); + if (!funcWrappers[sig]) { + funcWrappers[sig] = {}; + } + var sigCache = funcWrappers[sig]; + if (!sigCache[func]) { + if (sig.length === 1) { + sigCache[func] = function dynCall_wrapper() { + return dynCall(sig, func); + }; + } else if (sig.length === 2) { + sigCache[func] = function dynCall_wrapper(arg) { + return dynCall(sig, func, [ arg ]); + }; + } else { + sigCache[func] = function dynCall_wrapper() { + return dynCall(sig, func, Array.prototype.slice.call(arguments)); + }; } - return sigCache[func]; + } + return sigCache[func]; } - - function makeBigInt(low, high, unsigned) { - return unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0)); + return unsigned ? +(low >>> 0) + +(high >>> 0) * 4294967296 : +(low >>> 0) + +(high | 0) * 4294967296; } - function dynCall(sig, ptr, args) { - if (args && args.length) { - assert(args.length == sig.length-1); - assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); - return Module['dynCall_' + sig].apply(null, [ptr].concat(args)); - } else { - assert(sig.length == 1); - assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); - return Module['dynCall_' + sig].call(null, ptr); - } + if (args && args.length) { + assert(args.length == sig.length - 1); + assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'"); + return Module["dynCall_" + sig].apply(null, [ ptr ].concat(args)); + } else { + assert(sig.length == 1); + assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'"); + return Module["dynCall_" + sig].call(null, ptr); + } } - var tempRet0 = 0; - -var setTempRet0 = function(value) { - tempRet0 = value; -}; - -var getTempRet0 = function() { - return tempRet0; -}; - +var setTempRet0 = (function(value) { + tempRet0 = value; +}); +var getTempRet0 = (function() { + return tempRet0; +}); function getCompilerSetting(name) { - throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for getCompilerSetting or emscripten_get_compiler_setting to work'; + throw "You must build with -s RETAIN_COMPILER_SETTINGS=1 for getCompilerSetting or emscripten_get_compiler_setting to work"; } - var Runtime = { - // helpful errors - getTempRet0: function() { abort('getTempRet0() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, - staticAlloc: function() { abort('staticAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, - stackAlloc: function() { abort('stackAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, + getTempRet0: (function() { + abort('getTempRet0() is now a top-level function, after removing the Runtime object. Remove "Runtime."'); + }), + staticAlloc: (function() { + abort('staticAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."'); + }), + stackAlloc: (function() { + abort('stackAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."'); + }) }; - -// The address globals begin at. Very low in memory, for code size and optimization opportunities. -// Above 0 is static memory, starting with globals. -// Then the stack. -// Then 'dynamic' memory for sbrk. var GLOBAL_BASE = 1024; - - -// The wasm backend path does not have a way to set the stack max, so we can -// just implement this function in a trivial way function establishStackSpace(base, max) { - stackRestore(max); + stackRestore(max); } - -// JS library code refers to Atomics in the manner used from asm.js, provide -// the same API here. var Atomics_load = Atomics.load; var Atomics_store = Atomics.store; var Atomics_compareExchange = Atomics.compareExchange; - - -// === Preamble library stuff === - -// Documentation for the public APIs defined in this file must be updated in: -// site/source/docs/api_reference/preamble.js.rst -// A prebuilt local version of the documentation is available at: -// site/build/text/docs/api_reference/preamble.js.txt -// You can also build docs locally as HTML or other formats in site/ -// An online HTML version (which may be of a different version of Emscripten) -// is up at http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html - - -var wasmBinary;if (Module['wasmBinary']) wasmBinary = Module['wasmBinary'];if (!Object.getOwnPropertyDescriptor(Module, 'wasmBinary')) Object.defineProperty(Module, 'wasmBinary', { configurable: true, get: function() { abort('Module.wasmBinary has been replaced with plain wasmBinary') } }); -var noExitRuntime;if (Module['noExitRuntime']) noExitRuntime = Module['noExitRuntime'];if (!Object.getOwnPropertyDescriptor(Module, 'noExitRuntime')) Object.defineProperty(Module, 'noExitRuntime', { configurable: true, get: function() { abort('Module.noExitRuntime has been replaced with plain noExitRuntime') } }); - - -if (typeof WebAssembly !== 'object') { - abort('No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.'); +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: (function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary"); + }) +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: (function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime"); + }) +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead."); } - - -// In MINIMAL_RUNTIME, setValue() and getValue() are only available when building with safe heap enabled, for heap safety checking. -// In traditional runtime, setValue() and getValue() are always available (although their use is highly discouraged due to perf penalties) - -/** @type {function(number, number, string, boolean=)} */ function setValue(ptr, value, type, noSafe) { - type = type || 'i8'; - if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit - switch(type) { - case 'i1': HEAP8[((ptr)>>0)]=value; break; - case 'i8': HEAP8[((ptr)>>0)]=value; break; - case 'i16': HEAP16[((ptr)>>1)]=value; break; - case 'i32': HEAP32[((ptr)>>2)]=value; break; - case 'i64': (tempI64 = [value>>>0,(tempDouble=value,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break; - case 'float': HEAPF32[((ptr)>>2)]=value; break; - case 'double': HEAPF64[((ptr)>>3)]=value; break; - default: abort('invalid type for setValue: ' + type); - } + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + GROWABLE_HEAP_STORE_I8(ptr >> 0 | 0, value); + break; + case "i8": + GROWABLE_HEAP_STORE_I8(ptr >> 0 | 0, value); + break; + case "i16": + GROWABLE_HEAP_STORE_I16(ptr | 0, value); + break; + case "i32": + GROWABLE_HEAP_STORE_I32(ptr | 0, value); + break; + case "i64": + tempI64 = [ value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], GROWABLE_HEAP_STORE_I32(ptr | 0, tempI64[0]), GROWABLE_HEAP_STORE_I32(ptr + 4 | 0, tempI64[1]); + break; + case "float": + GROWABLE_HEAP_STORE_F32(ptr | 0, value); + break; + case "double": + GROWABLE_HEAP_STORE_F64(ptr | 0, value); + break; + default: + abort("invalid type for setValue: " + type); + } } - -/** @type {function(number, string, boolean=)} */ function getValue(ptr, type, noSafe) { - type = type || 'i8'; - if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit - switch(type) { - case 'i1': return HEAP8[((ptr)>>0)]; - case 'i8': return HEAP8[((ptr)>>0)]; - case 'i16': return HEAP16[((ptr)>>1)]; - case 'i32': return HEAP32[((ptr)>>2)]; - case 'i64': return HEAP32[((ptr)>>2)]; - case 'float': return HEAPF32[((ptr)>>2)]; - case 'double': return HEAPF64[((ptr)>>3)]; - default: abort('invalid type for getValue: ' + type); - } - return null; + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + return GROWABLE_HEAP_LOAD_I8(ptr >> 0 | 0); + case "i8": + return GROWABLE_HEAP_LOAD_I8(ptr >> 0 | 0); + case "i16": + return GROWABLE_HEAP_LOAD_I16(ptr | 0); + case "i32": + return GROWABLE_HEAP_LOAD_I32(ptr | 0); + case "i64": + return GROWABLE_HEAP_LOAD_I32(ptr | 0); + case "float": + return GROWABLE_HEAP_LOAD_F32(ptr | 0); + case "double": + return GROWABLE_HEAP_LOAD_F64(ptr | 0); + default: + abort("invalid type for getValue: " + type); + } + return null; } - - - - - -// Wasm globals - var wasmMemory; - -// In fastcomp asm.js, we don't need a wasm Table at all. -// In the wasm backend, we polyfill the WebAssembly object, -// so this creates a (non-native-wasm) table for us. var wasmTable = new WebAssembly.Table({ - 'initial': 63857, - 'maximum': 63857 + 0, - 'element': 'anyfunc' + "initial": 63857, + "maximum": 63857 + 0, + "element": "anyfunc" }); - -// For sending to workers. var wasmModule; -// Only workers actually use these field, but we refer to them from -// library_pthread (which exists on all threads) so this definition is useful -// to avoid accessing the global scope. var threadInfoStruct = 0; var selfThreadId = 0; var __performance_now_clock_drift = 0; var tempDoublePtr = 0; - -//======================================== -// Runtime essentials -//======================================== - -// whether we are quitting the application. no code should run after this. -// set in exit() and abort() var ABORT = false; - -// set by exit() and abort(). Passed to 'onExit' handler. -// NOTE: This is also used as the process return code code in shell environments -// but only when noExitRuntime is false. var EXITSTATUS = 0; - -/** @type {function(*, string=)} */ function assert(condition, text) { - if (!condition) { - abort('Assertion failed: ' + text); - } + if (!condition) { + abort("Assertion failed: " + text); + } } - -// Returns the C function with a specified identifier (for C++, you need to do manual name mangling) function getCFunc(ident) { - var func = Module['_' + ident]; // closure exported function - assert(func, 'Cannot call unknown function ' + ident + ', make sure it is exported'); - return func; + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func; } - -// C calling interface. function ccall(ident, returnType, argTypes, args, opts) { - // For fast lookup of conversion functions - var toC = { - 'string': function(str) { - var ret = 0; - if (str !== null && str !== undefined && str !== 0) { // null string - // at most 4 bytes per UTF-8 code point, +1 for the trailing '\0' - var len = (str.length << 2) + 1; - ret = stackAlloc(len); - stringToUTF8(str, ret, len); - } - return ret; - }, - 'array': function(arr) { - var ret = stackAlloc(arr.length); - writeArrayToMemory(arr, ret); - return ret; - } - }; - - function convertReturnValue(ret) { - if (returnType === 'string') return UTF8ToString(ret); - if (returnType === 'boolean') return Boolean(ret); - return ret; - } - - var func = getCFunc(ident); - var cArgs = []; - var stack = 0; - assert(returnType !== 'array', 'Return type should not be "array".'); - if (args) { - for (var i = 0; i < args.length; i++) { - var converter = toC[argTypes[i]]; - if (converter) { - if (stack === 0) stack = stackSave(); - cArgs[i] = converter(args[i]); - } else { - cArgs[i] = args[i]; - } - } - } - var ret = func.apply(null, cArgs); - - ret = convertReturnValue(ret); - if (stack !== 0) stackRestore(stack); + var toC = { + "string": (function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len); + } + return ret; + }), + "array": (function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret; + }) + }; + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); return ret; + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]); + } else { + cArgs[i] = args[i]; + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret; } - function cwrap(ident, returnType, argTypes, opts) { - return function() { - return ccall(ident, returnType, argTypes, arguments, opts); - } + return (function() { + return ccall(ident, returnType, argTypes, arguments, opts); + }); } - -var ALLOC_NORMAL = 0; // Tries to use _malloc() -var ALLOC_STACK = 1; // Lives for the duration of the current function call -var ALLOC_DYNAMIC = 2; // Cannot be freed except through sbrk -var ALLOC_NONE = 3; // Do not allocate - -// allocate(): This is for internal use. You can use it yourself as well, but the interface -// is a little tricky (see docs right below). The reason is that it is optimized -// for multiple syntaxes to save space in generated code. So you should -// normally not use allocate(), and instead allocate memory using _malloc(), -// initialize it with setValue(), and so forth. -// @slab: An array of data, or a number. If a number, then the size of the block to allocate, -// in *bytes* (note that this is sometimes confusing: the next parameter does not -// affect this!) -// @types: Either an array of types, one for each byte (or 0 if no type at that position), -// or a single type which is used for the entire block. This only matters if there -// is initial data - if @slab is a number, then this does not matter at all and is -// ignored. -// @allocator: How to allocate memory, see ALLOC_* -/** @type {function((TypedArray|Array|number), string, number, number=)} */ +var ALLOC_NORMAL = 0; +var ALLOC_STACK = 1; +var ALLOC_DYNAMIC = 2; +var ALLOC_NONE = 3; function allocate(slab, types, allocator, ptr) { - var zeroinit, size; - if (typeof slab === 'number') { - zeroinit = true; - size = slab; - } else { - zeroinit = false; - size = slab.length; + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab; + } else { + zeroinit = false; + size = slab.length; + } + var singleType = typeof types === "string" ? types : null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr; + } else { + ret = [ _malloc, stackAlloc, dynamicAlloc ][allocator](Math.max(size, singleType ? 1 : types.length)); + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + GROWABLE_HEAP_STORE_I32(ptr | 0, 0); + } + stop = ret + size; + while (ptr < stop) { + GROWABLE_HEAP_STORE_I8(ptr++ >> 0 | 0, 0); } - - var singleType = typeof types === 'string' ? types : null; - - var ret; - if (allocator == ALLOC_NONE) { - ret = ptr; + return ret; + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret); } else { - ret = [_malloc, - stackAlloc, - dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)); - } - - if (zeroinit) { - var stop; - ptr = ret; - assert((ret & 3) == 0); - stop = ret + (size & ~3); - for (; ptr < stop; ptr += 4) { - HEAP32[((ptr)>>2)]=0; - } - stop = ret + size; - while (ptr < stop) { - HEAP8[((ptr++)>>0)]=0; - } - return ret; - } - - if (singleType === 'i8') { - if (slab.subarray || slab.slice) { - HEAPU8.set(/** @type {!Uint8Array} */ (slab), ret); - } else { - HEAPU8.set(new Uint8Array(slab), ret); - } - return ret; - } - - var i = 0, type, typeSize, previousType; - while (i < size) { - var curr = slab[i]; - - type = singleType || types[i]; - if (type === 0) { - i++; - continue; - } - assert(type, 'Must know what type to store in allocate!'); - - if (type == 'i64') type = 'i32'; // special case: we have one i32 here, and one i32 later - - setValue(ret+i, curr, type); - - // no need to look up size unless type changes, so cache it - if (previousType !== type) { - typeSize = getNativeTypeSize(type); - previousType = type; - } - i += typeSize; + HEAPU8.set(new Uint8Array(slab), ret); } - return ret; + } + var i = 0, type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue; + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type; + } + i += typeSize; + } + return ret; } - -// Allocate memory during any stage of startup - static memory early on, dynamic memory later, malloc when ready function getMemory(size) { - if (!runtimeInitialized) return dynamicAlloc(size); - return _malloc(size); + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size); } - - - - -/** @type {function(number, number=)} */ function Pointer_stringify(ptr, length) { - abort("this function has been removed - you should use UTF8ToString(ptr, maxBytesToRead) instead!"); + abort("this function has been removed - you should use UTF8ToString(ptr, maxBytesToRead) instead!"); } - -// Given a pointer 'ptr' to a null-terminated ASCII-encoded string in the emscripten HEAP, returns -// a copy of that string as a Javascript String object. - function AsciiToString(ptr) { - var str = ''; - while (1) { - var ch = HEAPU8[((ptr++)>>0)]; - if (!ch) return str; - str += String.fromCharCode(ch); - } + var str = ""; + while (1) { + var ch = GROWABLE_HEAP_LOAD_U8(ptr++ >> 0 | 0); + if (!ch) return str; + str += String.fromCharCode(ch); + } } - -// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', -// null-terminated and encoded in ASCII form. The copy will require at most str.length+1 bytes of space in the HEAP. - function stringToAscii(str, outPtr) { - return writeAsciiToMemory(str, outPtr, false); + return writeAsciiToMemory(str, outPtr, false); } - - -// Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the given array that contains uint8 values, returns -// a copy of that string as a Javascript String object. - - -/** - * @param {number} idx - * @param {number=} maxBytesToRead - * @return {string} - */ function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { - var endIdx = idx + maxBytesToRead; - - var str = ''; - while (!(idx >= endIdx)) { - // For UTF8 byte structure, see: - // http://en.wikipedia.org/wiki/UTF-8#Description - // https://www.ietf.org/rfc/rfc2279.txt - // https://tools.ietf.org/html/rfc3629 - var u0 = u8Array[idx++]; - // If not building with TextDecoder enabled, we don't know the string length, so scan for \0 byte. - // If building with TextDecoder, we know exactly at what byte index the string ends, so checking for nulls here would be redundant. - if (!u0) return str; - if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; } - var u1 = u8Array[idx++] & 63; - if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; } - var u2 = u8Array[idx++] & 63; - if ((u0 & 0xF0) == 0xE0) { - u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; - } else { - if ((u0 & 0xF8) != 0xF0) warnOnce('Invalid UTF-8 leading byte 0x' + u0.toString(16) + ' encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!'); - u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (u8Array[idx++] & 63); - } - - if (u0 < 0x10000) { - str += String.fromCharCode(u0); - } else { - var ch = u0 - 0x10000; - str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); - } - } - return str; + var endIdx = idx + maxBytesToRead; + var str = ""; + while (!(idx >= endIdx)) { + var u0 = u8Array[idx++]; + if (!u0) return str; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue; + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue; + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2; + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63; + } + if (u0 < 65536) { + str += String.fromCharCode(u0); + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023); + } + } + return str; } - -// Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the emscripten HEAP, returns a -// copy of that string as a Javascript String object. -// maxBytesToRead: an optional length that specifies the maximum number of bytes to read. You can omit -// this parameter to scan the string until the first \0 byte. If maxBytesToRead is -// passed, and the string at [ptr, ptr+maxBytesToReadr[ contains a null byte in the -// middle, then the string will cut short at that byte index (i.e. maxBytesToRead will -// not produce a string of exact length [ptr, ptr+maxBytesToRead[) -// N.B. mixing frequent uses of UTF8ToString() with and without maxBytesToRead may -// throw JS JIT optimizations off, so it is worth to consider consistently using one -// style or the other. -/** - * @param {number} ptr - * @param {number=} maxBytesToRead - * @return {string} - */ function UTF8ToString(ptr, maxBytesToRead) { - return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : ''; + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : ""; } - -// Copies the given Javascript String object 'str' to the given byte array at address 'outIdx', -// encoded in UTF8 form and null-terminated. The copy will require at most str.length*4+1 bytes of space in the HEAP. -// Use the function lengthBytesUTF8 to compute the exact number of bytes (excluding null terminator) that this function will write. -// Parameters: -// str: the Javascript string to copy. -// outU8Array: the array to copy to. Each index in this array is assumed to be one 8-byte element. -// outIdx: The starting offset in the array to begin the copying. -// maxBytesToWrite: The maximum number of bytes this function can write to the array. -// This count should include the null terminator, -// i.e. if maxBytesToWrite=1, only the null terminator will be written and nothing else. -// maxBytesToWrite=0 does not write any bytes to the output, not even the null terminator. -// Returns the number of bytes written, EXCLUDING the null terminator. - function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { - if (!(maxBytesToWrite > 0)) // Parameter maxBytesToWrite is not optional. Negative values, 0, null, undefined and false each don't write out any bytes. - return 0; - - var startIdx = outIdx; - var endIdx = outIdx + maxBytesToWrite - 1; // -1 for string null terminator. - for (var i = 0; i < str.length; ++i) { - // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. - // See http://unicode.org/faq/utf_bom.html#utf16-3 - // For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description and https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629 - var u = str.charCodeAt(i); // possibly a lead surrogate - if (u >= 0xD800 && u <= 0xDFFF) { - var u1 = str.charCodeAt(++i); - u = 0x10000 + ((u & 0x3FF) << 10) | (u1 & 0x3FF); - } - if (u <= 0x7F) { - if (outIdx >= endIdx) break; - outU8Array[outIdx++] = u; - } else if (u <= 0x7FF) { - if (outIdx + 1 >= endIdx) break; - outU8Array[outIdx++] = 0xC0 | (u >> 6); - outU8Array[outIdx++] = 0x80 | (u & 63); - } else if (u <= 0xFFFF) { - if (outIdx + 2 >= endIdx) break; - outU8Array[outIdx++] = 0xE0 | (u >> 12); - outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); - outU8Array[outIdx++] = 0x80 | (u & 63); - } else { - if (outIdx + 3 >= endIdx) break; - if (u >= 0x200000) warnOnce('Invalid Unicode code point 0x' + u.toString(16) + ' encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).'); - outU8Array[outIdx++] = 0xF0 | (u >> 18); - outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); - outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); - outU8Array[outIdx++] = 0x80 | (u & 63); - } - } - // Null-terminate the pointer to the buffer. - outU8Array[outIdx] = 0; - return outIdx - startIdx; + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023; + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u; + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63; + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63; + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63; + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx; } - -// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', -// null-terminated and encoded in UTF8 form. The copy will require at most str.length*4+1 bytes of space in the HEAP. -// Use the function lengthBytesUTF8 to compute the exact number of bytes (excluding null terminator) that this function will write. -// Returns the number of bytes written, EXCLUDING the null terminator. - function stringToUTF8(str, outPtr, maxBytesToWrite) { - assert(typeof maxBytesToWrite == 'number', 'stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); - return stringToUTF8Array(str, HEAPU8,outPtr, maxBytesToWrite); + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite); } - -// Returns the number of bytes the given Javascript string takes if encoded as a UTF8 byte array, EXCLUDING the null terminator byte. function lengthBytesUTF8(str) { - var len = 0; - for (var i = 0; i < str.length; ++i) { - // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. - // See http://unicode.org/faq/utf_bom.html#utf16-3 - var u = str.charCodeAt(i); // possibly a lead surrogate - if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | (str.charCodeAt(++i) & 0x3FF); - if (u <= 0x7F) ++len; - else if (u <= 0x7FF) len += 2; - else if (u <= 0xFFFF) len += 3; - else len += 4; - } - return len; + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) ++len; else if (u <= 2047) len += 2; else if (u <= 65535) len += 3; else len += 4; + } + return len; } - - -// Given a pointer 'ptr' to a null-terminated UTF16LE-encoded string in the emscripten HEAP, returns -// a copy of that string as a Javascript String object. - function UTF16ToString(ptr) { - assert(ptr % 2 == 0, 'Pointer passed to UTF16ToString must be aligned to two bytes!'); - var i = 0; - - var str = ''; - while (1) { - var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; - if (codeUnit == 0) return str; - ++i; - // fromCharCode constructs a character from a UTF-16 code unit, so we can pass the UTF16 string right through. - str += String.fromCharCode(codeUnit); - } + assert(ptr % 2 == 0, "Pointer passed to UTF16ToString must be aligned to two bytes!"); + var i = 0; + var str = ""; + while (1) { + var codeUnit = GROWABLE_HEAP_LOAD_I16(ptr + i * 2 | 0); + if (codeUnit == 0) return str; + ++i; + str += String.fromCharCode(codeUnit); + } } - -// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', -// null-terminated and encoded in UTF16 form. The copy will require at most str.length*4+2 bytes of space in the HEAP. -// Use the function lengthBytesUTF16() to compute the exact number of bytes (excluding null terminator) that this function will write. -// Parameters: -// str: the Javascript string to copy. -// outPtr: Byte address in Emscripten HEAP where to write the string to. -// maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null -// terminator, i.e. if maxBytesToWrite=2, only the null terminator will be written and nothing else. -// maxBytesToWrite<2 does not write any bytes to the output, not even the null terminator. -// Returns the number of bytes written, EXCLUDING the null terminator. - function stringToUTF16(str, outPtr, maxBytesToWrite) { - assert(outPtr % 2 == 0, 'Pointer passed to stringToUTF16 must be aligned to two bytes!'); - assert(typeof maxBytesToWrite == 'number', 'stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); - // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. - if (maxBytesToWrite === undefined) { - maxBytesToWrite = 0x7FFFFFFF; - } - if (maxBytesToWrite < 2) return 0; - maxBytesToWrite -= 2; // Null terminator. - var startPtr = outPtr; - var numCharsToWrite = (maxBytesToWrite < str.length*2) ? (maxBytesToWrite / 2) : str.length; - for (var i = 0; i < numCharsToWrite; ++i) { - // charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP. - var codeUnit = str.charCodeAt(i); // possibly a lead surrogate - HEAP16[((outPtr)>>1)]=codeUnit; - outPtr += 2; - } - // Null-terminate the pointer to the HEAP. - HEAP16[((outPtr)>>1)]=0; - return outPtr - startPtr; + assert(outPtr % 2 == 0, "Pointer passed to stringToUTF16 must be aligned to two bytes!"); + assert(typeof maxBytesToWrite == "number", "stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + if (maxBytesToWrite === undefined) { + maxBytesToWrite = 2147483647; + } + if (maxBytesToWrite < 2) return 0; + maxBytesToWrite -= 2; + var startPtr = outPtr; + var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length; + for (var i = 0; i < numCharsToWrite; ++i) { + var codeUnit = str.charCodeAt(i); + GROWABLE_HEAP_STORE_I16(outPtr | 0, codeUnit); + outPtr += 2; + } + GROWABLE_HEAP_STORE_I16(outPtr | 0, 0); + return outPtr - startPtr; } - -// Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. - function lengthBytesUTF16(str) { - return str.length*2; + return str.length * 2; } - function UTF32ToString(ptr) { - assert(ptr % 4 == 0, 'Pointer passed to UTF32ToString must be aligned to four bytes!'); - var i = 0; - - var str = ''; - while (1) { - var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; - if (utf32 == 0) - return str; - ++i; - // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing. - // See http://unicode.org/faq/utf_bom.html#utf16-3 - if (utf32 >= 0x10000) { - var ch = utf32 - 0x10000; - str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); - } else { - str += String.fromCharCode(utf32); - } + assert(ptr % 4 == 0, "Pointer passed to UTF32ToString must be aligned to four bytes!"); + var i = 0; + var str = ""; + while (1) { + var utf32 = GROWABLE_HEAP_LOAD_I32(ptr + i * 4 | 0); + if (utf32 == 0) return str; + ++i; + if (utf32 >= 65536) { + var ch = utf32 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023); + } else { + str += String.fromCharCode(utf32); } + } } - -// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', -// null-terminated and encoded in UTF32 form. The copy will require at most str.length*4+4 bytes of space in the HEAP. -// Use the function lengthBytesUTF32() to compute the exact number of bytes (excluding null terminator) that this function will write. -// Parameters: -// str: the Javascript string to copy. -// outPtr: Byte address in Emscripten HEAP where to write the string to. -// maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null -// terminator, i.e. if maxBytesToWrite=4, only the null terminator will be written and nothing else. -// maxBytesToWrite<4 does not write any bytes to the output, not even the null terminator. -// Returns the number of bytes written, EXCLUDING the null terminator. - function stringToUTF32(str, outPtr, maxBytesToWrite) { - assert(outPtr % 4 == 0, 'Pointer passed to stringToUTF32 must be aligned to four bytes!'); - assert(typeof maxBytesToWrite == 'number', 'stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); - // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. - if (maxBytesToWrite === undefined) { - maxBytesToWrite = 0x7FFFFFFF; - } - if (maxBytesToWrite < 4) return 0; - var startPtr = outPtr; - var endPtr = startPtr + maxBytesToWrite - 4; - for (var i = 0; i < str.length; ++i) { - // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. - // See http://unicode.org/faq/utf_bom.html#utf16-3 - var codeUnit = str.charCodeAt(i); // possibly a lead surrogate - if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) { - var trailSurrogate = str.charCodeAt(++i); - codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 0x3FF); - } - HEAP32[((outPtr)>>2)]=codeUnit; - outPtr += 4; - if (outPtr + 4 > endPtr) break; - } - // Null-terminate the pointer to the HEAP. - HEAP32[((outPtr)>>2)]=0; - return outPtr - startPtr; + assert(outPtr % 4 == 0, "Pointer passed to stringToUTF32 must be aligned to four bytes!"); + assert(typeof maxBytesToWrite == "number", "stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + if (maxBytesToWrite === undefined) { + maxBytesToWrite = 2147483647; + } + if (maxBytesToWrite < 4) return 0; + var startPtr = outPtr; + var endPtr = startPtr + maxBytesToWrite - 4; + for (var i = 0; i < str.length; ++i) { + var codeUnit = str.charCodeAt(i); + if (codeUnit >= 55296 && codeUnit <= 57343) { + var trailSurrogate = str.charCodeAt(++i); + codeUnit = 65536 + ((codeUnit & 1023) << 10) | trailSurrogate & 1023; + } + GROWABLE_HEAP_STORE_I32(outPtr | 0, codeUnit); + outPtr += 4; + if (outPtr + 4 > endPtr) break; + } + GROWABLE_HEAP_STORE_I32(outPtr | 0, 0); + return outPtr - startPtr; } - -// Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. - function lengthBytesUTF32(str) { - var len = 0; - for (var i = 0; i < str.length; ++i) { - // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. - // See http://unicode.org/faq/utf_bom.html#utf16-3 - var codeUnit = str.charCodeAt(i); - if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) ++i; // possibly a lead surrogate, so skip over the tail surrogate. - len += 4; - } - - return len; + var len = 0; + for (var i = 0; i < str.length; ++i) { + var codeUnit = str.charCodeAt(i); + if (codeUnit >= 55296 && codeUnit <= 57343) ++i; + len += 4; + } + return len; } - -// Allocate heap space for a JS string, and write it there. -// It is the responsibility of the caller to free() that memory. function allocateUTF8(str) { - var size = lengthBytesUTF8(str) + 1; - var ret = _malloc(size); - if (ret) stringToUTF8Array(str, HEAP8, ret, size); - return ret; + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret; } - -// Allocate stack space for a JS string, and write it there. function allocateUTF8OnStack(str) { - var size = lengthBytesUTF8(str) + 1; - var ret = stackAlloc(size); - stringToUTF8Array(str, HEAP8, ret, size); - return ret; + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret; } - -// Deprecated: This function should not be called because it is unsafe and does not provide -// a maximum length limit of how many bytes it is allowed to write. Prefer calling the -// function stringToUTF8Array() instead, which takes in a maximum length that can be used -// to be secure from out of bounds writes. -/** @deprecated */ function writeStringToMemory(string, buffer, dontAddNull) { - warnOnce('writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!'); - - var /** @type {number} */ lastChar, /** @type {number} */ end; - if (dontAddNull) { - // stringToUTF8Array always appends null. If we don't want to do that, remember the - // character that existed at the location where the null will be placed, and restore - // that after the write (below). - end = buffer + lengthBytesUTF8(string); - lastChar = HEAP8[end]; - } - stringToUTF8(string, buffer, Infinity); - if (dontAddNull) HEAP8[end] = lastChar; // Restore the value under the null character. + warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"); + var lastChar, end; + if (dontAddNull) { + end = buffer + lengthBytesUTF8(string); + lastChar = GROWABLE_HEAP_LOAD_I8(end | 0); + } + stringToUTF8(string, buffer, Infinity); + if (dontAddNull) GROWABLE_HEAP_STORE_I8(end | 0, lastChar); } - function writeArrayToMemory(array, buffer) { - assert(array.length >= 0, 'writeArrayToMemory array must have a length (should be an array or typed array)') - HEAP8.set(array, buffer); + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer); } - function writeAsciiToMemory(str, buffer, dontAddNull) { - for (var i = 0; i < str.length; ++i) { - assert(str.charCodeAt(i) === str.charCodeAt(i)&0xff); - HEAP8[((buffer++)>>0)]=str.charCodeAt(i); - } - // Null-terminate the pointer to the HEAP. - if (!dontAddNull) HEAP8[((buffer)>>0)]=0; + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + GROWABLE_HEAP_STORE_I8(buffer++ >> 0 | 0, str.charCodeAt(i)); + } + if (!dontAddNull) GROWABLE_HEAP_STORE_I8(buffer >> 0 | 0, 0); } - - - - -// Memory management - var PAGE_SIZE = 16384; var WASM_PAGE_SIZE = 65536; var ASMJS_PAGE_SIZE = 16777216; - function alignUp(x, multiple) { - if (x % multiple > 0) { - x += multiple - (x % multiple); - } - return x; + if (x % multiple > 0) { + x += multiple - x % multiple; + } + return x; } - -var HEAP, -/** @type {ArrayBuffer} */ - buffer, -/** @type {Int8Array} */ - HEAP8, -/** @type {Uint8Array} */ - HEAPU8, -/** @type {Int16Array} */ - HEAP16, -/** @type {Uint16Array} */ - HEAPU16, -/** @type {Int32Array} */ - HEAP32, -/** @type {Uint32Array} */ - HEAPU32, -/** @type {Float32Array} */ - HEAPF32, -/** @type {Float64Array} */ - HEAPF64; - +var HEAP, buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; function updateGlobalBufferAndViews(buf) { - buffer = buf; - Module['HEAP8'] = HEAP8 = new Int8Array(buf); - Module['HEAP16'] = HEAP16 = new Int16Array(buf); - Module['HEAP32'] = HEAP32 = new Int32Array(buf); - Module['HEAPU8'] = HEAPU8 = new Uint8Array(buf); - Module['HEAPU16'] = HEAPU16 = new Uint16Array(buf); - Module['HEAPU32'] = HEAPU32 = new Uint32Array(buf); - Module['HEAPF32'] = HEAPF32 = new Float32Array(buf); - Module['HEAPF64'] = HEAPF64 = new Float64Array(buf); + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf); } - -var STATIC_BASE = 1024, - STACK_BASE = 17838800, - STACKTOP = STACK_BASE, - STACK_MAX = 12595920, - DYNAMIC_BASE = 17838800, - DYNAMICTOP_PTR = 12594960; - -assert(STACK_BASE % 16 === 0, 'stack must start aligned'); -assert(DYNAMIC_BASE % 16 === 0, 'heap must start aligned'); - +var STATIC_BASE = 1024, STACK_BASE = 17838800, STACKTOP = STACK_BASE, STACK_MAX = 12595920, DYNAMIC_BASE = 17838800, DYNAMICTOP_PTR = 12594960; +assert(STACK_BASE % 16 === 0, "stack must start aligned"); +assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned"); if (ENVIRONMENT_IS_PTHREAD) { - - // At the 'load' stage of Worker startup, we are just loading this script - // but not ready to run yet. At 'run' we receive proper values for the stack - // etc. and can launch a pthread. Set some fake values there meanwhile to - // catch bugs, then set the real values in applyStackValues later. - STACK_MAX = STACKTOP = STACK_MAX = 0x7FFFFFFF; - - Module['applyStackValues'] = function(stackBase, stackTop, stackMax) { - STACK_BASE = stackBase; - STACKTOP = stackTop; - STACK_MAX = stackMax; - }; - - // TODO DYNAMIC_BASE = Module['DYNAMIC_BASE']; - // TODO DYNAMICTOP_PTR = Module['DYNAMICTOP_PTR']; - // TODO tempDoublePtr = Module['tempDoublePtr']; + STACK_MAX = STACKTOP = STACK_MAX = 2147483647; + Module["applyStackValues"] = (function(stackBase, stackTop, stackMax) { + STACK_BASE = stackBase; + STACKTOP = stackTop; + STACK_MAX = stackMax; + }); } - - var TOTAL_STACK = 5242880; -if (Module['TOTAL_STACK']) assert(TOTAL_STACK === Module['TOTAL_STACK'], 'the stack size can no longer be determined at runtime') - -var INITIAL_TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 149880832;if (!Object.getOwnPropertyDescriptor(Module, 'TOTAL_MEMORY')) Object.defineProperty(Module, 'TOTAL_MEMORY', { configurable: true, get: function() { abort('Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY') } }); - -assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, 'TOTAL_MEMORY should be larger than TOTAL_STACK, was ' + INITIAL_TOTAL_MEMORY + '! (TOTAL_STACK=' + TOTAL_STACK + ')'); - -// check for full engine support (use string 'subarray' to avoid closure compiler confusion) -assert(typeof Int32Array !== 'undefined' && typeof Float64Array !== 'undefined' && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, - 'JS engine does not provide full typed array support'); - - - - - - -// In standalone mode, the wasm creates the memory, and the user can't provide it. -// In non-standalone/normal mode, we create the memory here. - -// Create the main memory. (Note: this isn't used in STANDALONE_WASM mode since the wasm -// memory is created in the wasm, not in JS.) +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 268435456; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: (function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY"); + }) +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); if (ENVIRONMENT_IS_PTHREAD) { - wasmMemory = Module['wasmMemory']; - buffer = Module['buffer']; + wasmMemory = Module["wasmMemory"]; + buffer = Module["buffer"]; } else { - - if (Module['wasmMemory']) { - wasmMemory = Module['wasmMemory']; - } else - { - wasmMemory = new WebAssembly.Memory({ - 'initial': INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE - , - 'maximum': INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE - , - 'shared': true - }); - if (!(wasmMemory.buffer instanceof SharedArrayBuffer)) { - err('requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag'); - if (ENVIRONMENT_HAS_NODE) { - console.log('(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)'); - } - throw Error('bad memory'); - } - } - + if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"]; + } else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": 1073741824 / WASM_PAGE_SIZE, + "shared": true + }); + if (!(wasmMemory.buffer instanceof SharedArrayBuffer)) { + err("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"); + if (ENVIRONMENT_HAS_NODE) { + console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)"); + } + throw Error("bad memory"); + } + } } - if (wasmMemory) { - buffer = wasmMemory.buffer; + buffer = wasmMemory.buffer; } - -// If the user provides an incorrect length, just use that length instead rather than providing the user to -// specifically provide the memory length with Module['TOTAL_MEMORY']. INITIAL_TOTAL_MEMORY = buffer.byteLength; assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +assert(65536 % WASM_PAGE_SIZE === 0); updateGlobalBufferAndViews(buffer); - -if (!ENVIRONMENT_IS_PTHREAD) { // Pthreads have already initialized these variables in src/worker.js, where they were passed to the thread worker at startup time -HEAP32[DYNAMICTOP_PTR>>2] = DYNAMIC_BASE; +if (!ENVIRONMENT_IS_PTHREAD) { + GROWABLE_HEAP_STORE_I32(DYNAMICTOP_PTR | 0, DYNAMIC_BASE); } - - - - -// Initializes the stack cookie. Called at the startup of main and at the startup of each thread in pthreads mode. function writeStackCookie() { - assert((STACK_MAX & 3) == 0); - // The stack grows downwards - HEAPU32[(STACK_MAX >> 2)+1] = 0x02135467; - HEAPU32[(STACK_MAX >> 2)+2] = 0x89BACDFE; - // Also test the global address 0 for integrity. - // We don't do this with ASan because ASan does its own checks for this. - HEAP32[0] = 0x63736d65; /* 'emsc' */ + assert((STACK_MAX & 3) == 0); + GROWABLE_HEAP_STORE_I32(((STACK_MAX >> 2) + 1) * 4 | 0, 34821223); + GROWABLE_HEAP_STORE_I32(((STACK_MAX >> 2) + 2) * 4 | 0, 2310721022); + GROWABLE_HEAP_STORE_I32(0 * 4 | 0, 1668509029); } - function checkStackCookie() { - var cookie1 = HEAPU32[(STACK_MAX >> 2)+1]; - var cookie2 = HEAPU32[(STACK_MAX >> 2)+2]; - if (cookie1 != 0x02135467 || cookie2 != 0x89BACDFE) { - abort('Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x' + cookie2.toString(16) + ' ' + cookie1.toString(16)); - } - // Also test the global address 0 for integrity. - // We don't do this with ASan because ASan does its own checks for this. - if (HEAP32[0] !== 0x63736d65 /* 'emsc' */) abort('Runtime error: The application has corrupted its heap memory area (address zero)!'); + var cookie1 = GROWABLE_HEAP_LOAD_U32(((STACK_MAX >> 2) + 1) * 4 | 0); + var cookie2 = GROWABLE_HEAP_LOAD_U32(((STACK_MAX >> 2) + 2) * 4 | 0); + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)); + } + if (GROWABLE_HEAP_LOAD_I32(0 * 4 | 0) !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!"); } - function abortStackOverflow(allocSize) { - abort('Stack overflow! Attempted to allocate ' + allocSize + ' bytes on the stack, but stack has only ' + (STACK_MAX - stackSave() + allocSize) + ' bytes available!'); + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!"); } - - - - -// Endianness check (note: assumes compiler arch was little-endian) -(function() { - var h16 = new Int16Array(1); - var h8 = new Int8Array(h16.buffer); - h16[0] = 0x6373; - if (h8[0] !== 0x73 || h8[1] !== 0x63) throw 'Runtime error: expected the system to be little-endian!'; -})(); - +((function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!"; +}))(); function abortFnPtrError(ptr, sig) { - abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). Build with ASSERTIONS=2 for more info."); + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). Build with ASSERTIONS=2 for more info."); } - - - function callRuntimeCallbacks(callbacks) { - while(callbacks.length > 0) { - var callback = callbacks.shift(); - if (typeof callback == 'function') { - callback(); - continue; - } - var func = callback.func; - if (typeof func === 'number') { - if (callback.arg === undefined) { - Module['dynCall_v'](func); - } else { - Module['dynCall_vi'](func, callback.arg); - } - } else { - func(callback.arg === undefined ? null : callback.arg); - } + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue; + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func); + } else { + Module["dynCall_vi"](func, callback.arg); + } + } else { + func(callback.arg === undefined ? null : callback.arg); } + } } - -var __ATPRERUN__ = []; // functions called before the runtime is initialized -var __ATINIT__ = []; // functions called during startup -var __ATMAIN__ = []; // functions called when main() is to be run -var __ATEXIT__ = []; // functions called during shutdown -var __ATPOSTRUN__ = []; // functions called after the main() is called - +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATEXIT__ = []; +var __ATPOSTRUN__ = []; var runtimeInitialized = false; var runtimeExited = false; - -if (ENVIRONMENT_IS_PTHREAD) runtimeInitialized = true; // The runtime is hosted in the main thread, and bits shared to pthreads via SharedArrayBuffer. No need to init again in pthread. - +if (ENVIRONMENT_IS_PTHREAD) runtimeInitialized = true; function preRun() { - if (ENVIRONMENT_IS_PTHREAD) return; // PThreads reuse the runtime from the main thread. - - if (Module['preRun']) { - if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; - while (Module['preRun'].length) { - addOnPreRun(Module['preRun'].shift()); - } - } - - callRuntimeCallbacks(__ATPRERUN__); + if (ENVIRONMENT_IS_PTHREAD) return; + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [ Module["preRun"] ]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()); + } + } + callRuntimeCallbacks(__ATPRERUN__); } - function initRuntime() { - checkStackCookie(); - assert(!runtimeInitialized); - runtimeInitialized = true; - if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); -TTY.init(); - callRuntimeCallbacks(__ATINIT__); + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__); } - function preMain() { - checkStackCookie(); - if (ENVIRONMENT_IS_PTHREAD) return; // PThreads reuse the runtime from the main thread. - FS.ignorePermissions = false; - callRuntimeCallbacks(__ATMAIN__); + checkStackCookie(); + if (ENVIRONMENT_IS_PTHREAD) return; + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__); } - function exitRuntime() { - checkStackCookie(); - if (ENVIRONMENT_IS_PTHREAD) return; // PThreads reuse the runtime from the main thread. - runtimeExited = true; + checkStackCookie(); + if (ENVIRONMENT_IS_PTHREAD) return; + runtimeExited = true; } - function postRun() { - checkStackCookie(); - if (ENVIRONMENT_IS_PTHREAD) return; // PThreads reuse the runtime from the main thread. - - if (Module['postRun']) { - if (typeof Module['postRun'] == 'function') Module['postRun'] = [Module['postRun']]; - while (Module['postRun'].length) { - addOnPostRun(Module['postRun'].shift()); - } - } - - callRuntimeCallbacks(__ATPOSTRUN__); + checkStackCookie(); + if (ENVIRONMENT_IS_PTHREAD) return; + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [ Module["postRun"] ]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()); + } + } + callRuntimeCallbacks(__ATPOSTRUN__); } - function addOnPreRun(cb) { - __ATPRERUN__.unshift(cb); + __ATPRERUN__.unshift(cb); } - function addOnInit(cb) { - __ATINIT__.unshift(cb); + __ATINIT__.unshift(cb); } - function addOnPreMain(cb) { - __ATMAIN__.unshift(cb); -} - -function addOnExit(cb) { + __ATMAIN__.unshift(cb); } - +function addOnExit(cb) {} function addOnPostRun(cb) { - __ATPOSTRUN__.unshift(cb); + __ATPOSTRUN__.unshift(cb); } - function unSign(value, bits, ignore) { - if (value >= 0) { - return value; - } - return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts - : Math.pow(2, bits) + value; + if (value >= 0) { + return value; + } + return bits <= 32 ? 2 * Math.abs(1 << bits - 1) + value : Math.pow(2, bits) + value; } function reSign(value, bits, ignore) { - if (value <= 0) { - return value; - } - var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 32 - : Math.pow(2, bits-1); - if (value >= half && (bits <= 32 || value > half)) { // for huge values, we can hit the precision limit and always get true here. so don't do that - // but, in general there is no perfect solution here. With 64-bit ints, we get rounding and errors - // TODO: In i64 mode 1, resign the two parts separately and safely - value = -2*half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts - } + if (value <= 0) { return value; + } + var half = bits <= 32 ? Math.abs(1 << bits - 1) : Math.pow(2, bits - 1); + if (value >= half && (bits <= 32 || value > half)) { + value = -2 * half + value; + } + return value; } - - -assert(Math.imul, 'This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill'); -assert(Math.fround, 'This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill'); -assert(Math.clz32, 'This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill'); -assert(Math.trunc, 'This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill'); - +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); var Math_abs = Math.abs; var Math_cos = Math.cos; var Math_sin = Math.sin; @@ -1597,7625 +1196,7562 @@ var Math_min = Math.min; var Math_max = Math.max; var Math_clz32 = Math.clz32; var Math_trunc = Math.trunc; - - - -// A counter of dependencies for calling run(). If we need to -// do asynchronous work before running, increment this and -// decrement it. Incrementing must happen in a place like -// Module.preRun (used by emcc to add file preloading). -// Note that you can add dependencies in preRun, even though -// it happens right before run - run will be postponed until -// the dependencies are met. var runDependencies = 0; var runDependencyWatcher = null; -var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled +var dependenciesFulfilled = null; var runDependencyTracking = {}; - function getUniqueRunDependency(id) { - var orig = id; - while (1) { - if (!runDependencyTracking[id]) return id; - id = orig + Math.random(); - } - return id; + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random(); + } + return id; } - function addRunDependency(id) { - // We should never get here in pthreads (could no-op this out if called in pthreads, but that might indicate a bug in caller side, - // so good to be very explicit) - assert(!ENVIRONMENT_IS_PTHREAD, "addRunDependency cannot be used in a pthread worker"); - runDependencies++; - - if (Module['monitorRunDependencies']) { - Module['monitorRunDependencies'](runDependencies); - } - - if (id) { - assert(!runDependencyTracking[id]); - runDependencyTracking[id] = 1; - if (runDependencyWatcher === null && typeof setInterval !== 'undefined') { - // Check for missing dependencies every few seconds - runDependencyWatcher = setInterval(function() { - if (ABORT) { - clearInterval(runDependencyWatcher); - runDependencyWatcher = null; - return; - } - var shown = false; - for (var dep in runDependencyTracking) { - if (!shown) { - shown = true; - err('still waiting on run dependencies:'); - } - err('dependency: ' + dep); - } - if (shown) { - err('(end of list)'); - } - }, 10000); + assert(!ENVIRONMENT_IS_PTHREAD, "addRunDependency cannot be used in a pthread worker"); + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies); + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval((function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return; } - } else { - err('warning: run dependency added without ID'); - } -} - -function removeRunDependency(id) { - runDependencies--; - - if (Module['monitorRunDependencies']) { - Module['monitorRunDependencies'](runDependencies); - } - - if (id) { - assert(runDependencyTracking[id]); - delete runDependencyTracking[id]; - } else { - err('warning: run dependency removed without ID'); - } - if (runDependencies == 0) { - if (runDependencyWatcher !== null) { - clearInterval(runDependencyWatcher); - runDependencyWatcher = null; + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:"); + } + err("dependency: " + dep); } - if (dependenciesFulfilled) { - var callback = dependenciesFulfilled; - dependenciesFulfilled = null; - callback(); // can add another dependenciesFulfilled + if (shown) { + err("(end of list)"); } + }), 1e4); } + } else { + err("warning: run dependency added without ID"); + } } - -Module["preloadedImages"] = {}; // maps url to image data -Module["preloadedAudios"] = {}; // maps url to audio data - - +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies); + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id]; + } else { + err("warning: run dependency removed without ID"); + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback(); + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; function abort(what) { - if (Module['onAbort']) { - Module['onAbort'](what); - } - - if (ENVIRONMENT_IS_PTHREAD) console.error('Pthread aborting at ' + new Error().stack); - what += ''; - out(what); - err(what); - - ABORT = true; - EXITSTATUS = 1; - - var output = 'abort(' + what + ') at ' + stackTrace(); - what = output; - - // Throw a wasm runtime error, because a JS error might be seen as a foreign - // exception, which means we'd run destructors on it. We need the error to - // simply make the program stop. - throw new WebAssembly.RuntimeError(what); + if (Module["onAbort"]) { + Module["onAbort"](what); + } + if (ENVIRONMENT_IS_PTHREAD) console.error("Pthread aborting at " + (new Error).stack); + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var output = "abort(" + what + ") at " + stackTrace(); + what = output; + throw new WebAssembly.RuntimeError(what); } - - var memoryInitializer = null; - - - - - - - -// Copyright 2017 The Emscripten Authors. All rights reserved. -// Emscripten is available under two separate licenses, the MIT license and the -// University of Illinois/NCSA Open Source License. Both these licenses can be -// found in the LICENSE file. - -// Prefix of data URIs emitted by SINGLE_FILE and related options. -var dataURIPrefix = 'data:application/octet-stream;base64,'; - -// Indicates whether filename is a base64 data URI. +var dataURIPrefix = "data:application/octet-stream;base64,"; function isDataURI(filename) { - return String.prototype.startsWith ? - filename.startsWith(dataURIPrefix) : - filename.indexOf(dataURIPrefix) === 0; + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0; } - - - - -var wasmBinaryFile = 'x2t.wasm'; +var wasmBinaryFile = "x2t.wasm"; if (!isDataURI(wasmBinaryFile)) { - wasmBinaryFile = locateFile(wasmBinaryFile); + wasmBinaryFile = locateFile(wasmBinaryFile); } - function getBinary() { - try { - if (wasmBinary) { - return new Uint8Array(wasmBinary); - } - - if (readBinary) { - return readBinary(wasmBinaryFile); - } else { - throw "both async and sync fetching of the wasm failed"; - } + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary); } - catch (err) { - abort(err); + if (readBinary) { + return readBinary(wasmBinaryFile); + } else { + throw "both async and sync fetching of the wasm failed"; } + } catch (err) { + abort(err); + } } - function getBinaryPromise() { - // if we don't have the binary yet, and have the Fetch api, use that - // in some environments, like Electron's render process, Fetch api may be present, but have a different context than expected, let's only use it on the Web - if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === 'function') { - return fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(function(response) { - if (!response['ok']) { - throw "failed to load wasm binary file at '" + wasmBinaryFile + "'"; - } - return response['arrayBuffer'](); - }).catch(function () { - return getBinary(); - }); - } - // Otherwise, getBinary should be able to get it synchronously - return new Promise(function(resolve, reject) { - resolve(getBinary()); - }); + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then((function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'"; + } + return response["arrayBuffer"](); + })).catch((function() { + return getBinary(); + })); + } + return new Promise((function(resolve, reject) { + resolve(getBinary()); + })); } - - - -// Create the wasm instance. -// Receives the wasm imports, returns the exports. function createWasm() { - // prepare imports - var info = { - 'env': asmLibraryArg, - 'wasi_unstable': asmLibraryArg - }; - // Load the wasm module and create an instance of using native support in the JS engine. - // handle a generated wasm instance, receiving its exports and - // performing other necessary setup - function receiveInstance(instance, module) { - var exports = instance.exports; - Module['asm'] = exports; - // Keep a reference to the compiled module so we can post it to the workers. - wasmModule = module; - // Instantiation is synchronous in pthreads and we assert on run dependencies. - if (!ENVIRONMENT_IS_PTHREAD) removeRunDependency('wasm-instantiate'); - } - // we can't run yet (except in a pthread, where we have a custom sync instantiator) - if (!ENVIRONMENT_IS_PTHREAD) { addRunDependency('wasm-instantiate'); } - - - // Async compilation can be confusing when an error on the page overwrites Module - // (for example, if the order of elements is wrong, and the one defining Module is - // later), so we save Module and check it later. - var trueModule = Module; - function receiveInstantiatedSource(output) { - // 'output' is a WebAssemblyInstantiatedSource object which has both the module and instance. - // receiveInstance() will swap in the exports (to Module.asm) so they can be called - assert(Module === trueModule, 'the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?'); - trueModule = null; - receiveInstance(output['instance'], output['module']); - } - - - function instantiateArrayBuffer(receiver) { - return getBinaryPromise().then(function(binary) { - return WebAssembly.instantiate(binary, info); - }).then(receiver, function(reason) { - err('failed to asynchronously prepare wasm: ' + reason); - abort(reason); - }); - } - - // Prefer streaming instantiation if available. - function instantiateAsync() { - if (!wasmBinary && - typeof WebAssembly.instantiateStreaming === 'function' && - !isDataURI(wasmBinaryFile) && - typeof fetch === 'function') { - fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(function (response) { - var result = WebAssembly.instantiateStreaming(response, info); - return result.then(receiveInstantiatedSource, function(reason) { - // We expect the most common failure cause to be a bad MIME type for the binary, - // in which case falling back to ArrayBuffer instantiation should work. - err('wasm streaming compile failed: ' + reason); - err('falling back to ArrayBuffer instantiation'); - instantiateArrayBuffer(receiveInstantiatedSource); - }); - }); - } else { - return instantiateArrayBuffer(receiveInstantiatedSource); - } + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg + }; + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + wasmModule = module; + if (!ENVIRONMENT_IS_PTHREAD) removeRunDependency("wasm-instantiate"); + } + if (!ENVIRONMENT_IS_PTHREAD) { + addRunDependency("wasm-instantiate"); + } + var trueModule = Module; + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"], output["module"]); + } + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then((function(binary) { + return WebAssembly.instantiate(binary, info); + })).then(receiver, (function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason); + })); + } + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then((function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, (function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource); + })); + })); + } else { + return instantiateArrayBuffer(receiveInstantiatedSource); } - // User shell pages can write their own Module.instantiateWasm = function(imports, successCallback) callback - // to manually instantiate the Wasm module themselves. This allows pages to run the instantiation parallel - // to any other async startup actions they are performing. - if (Module['instantiateWasm']) { - try { - var exports = Module['instantiateWasm'](info, receiveInstance); - return exports; - } catch(e) { - err('Module.instantiateWasm callback failed with error: ' + e); - return false; - } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports; + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false; } - - instantiateAsync(); - return {}; // no exports yet; we'll fill them in later + } + instantiateAsync(); + return {}; } - - -// Globals used by JS i64 conversions var tempDouble; var tempI64; - -// === Body === - var ASM_CONSTS = { - 55680: function() {FS.mkdir('/working'); FS.mount(NODEFS, { root: '.' }, '/working');}, - 10774936: function() {throw 'Canceled!'}, - 10775075: function() {postMessage({cmd : 'processQueuedMainThreadWork'})}, - 10775126: function($0) {if (!ENVIRONMENT_IS_PTHREAD) { if (!PThread.pthreads[$0] || !PThread.pthreads[$0].worker) { return 0; } PThread.pthreads[$0].worker.postMessage({cmd : 'processThreadQueue'}); } else { postMessage({targetThread : $0, cmd : 'processThreadQueue'}); } return 1;}, - 10775494: function() {return !!(Module['canvas'])}, - 10775530: function() {noExitRuntime = true} + 55680: (function() { + FS.mkdir("/working"); + FS.mount(NODEFS, { + root: "." + }, "/working"); + }), + 10774952: (function() { + throw "Canceled!"; + }), + 10775091: (function() { + postMessage({ + cmd: "processQueuedMainThreadWork" + }); + }), + 10775142: (function($0) { + if (!ENVIRONMENT_IS_PTHREAD) { + if (!PThread.pthreads[$0] || !PThread.pthreads[$0].worker) { + return 0; + } + PThread.pthreads[$0].worker.postMessage({ + cmd: "processThreadQueue" + }); + } else { + postMessage({ + targetThread: $0, + cmd: "processThreadQueue" + }); + } + return 1; + }), + 10775510: (function() { + return !!Module["canvas"]; + }), + 10775546: (function() { + noExitRuntime = true; + }) }; - -// Avoid creating a new array var _readAsmConstArgsArray = []; - function readAsmConstArgs(sigPtr, buf) { - var args = _readAsmConstArgsArray; - args.length = 0; - while (1) { - var ch = HEAPU8[sigPtr++]; - if (!ch) return args; - if (ch === 'd'.charCodeAt(0) || ch === 'f'.charCodeAt(0)) { - buf = alignMemory(buf, 8); - args.push(HEAPF64[(buf >> 3)]); - buf += 8; - } else if (ch === 'i'.charCodeAt(0)) { - buf = alignMemory(buf, 4); - args.push(HEAP32[(buf >> 2)]); - buf += 4; - } else abort("unexpected char in asm const signature " + ch); - } + var args = _readAsmConstArgsArray; + args.length = 0; + while (1) { + var ch = GROWABLE_HEAP_LOAD_U8(sigPtr++ | 0); + if (!ch) return args; + if (ch === "d".charCodeAt(0) || ch === "f".charCodeAt(0)) { + buf = alignMemory(buf, 8); + args.push(GROWABLE_HEAP_LOAD_F64(buf | 0)); + buf += 8; + } else if (ch === "i".charCodeAt(0)) { + buf = alignMemory(buf, 4); + args.push(GROWABLE_HEAP_LOAD_I32(buf | 0)); + buf += 4; + } else abort("unexpected char in asm const signature " + ch); + } } - - function _emscripten_asm_const_iii(code, sigPtr, argbuf) { - var args = readAsmConstArgs(sigPtr, argbuf); - return ASM_CONSTS[code].apply(null, args); -}function initPthreadsJS(){ PThread.initRuntime(); } - - - -// STATICTOP = STATIC_BASE + 12594896; -/* global initializers */ if (!ENVIRONMENT_IS_PTHREAD) __ATINIT__.push({ func: function() { ___wasm_call_ctors() } }); - - - -/* no memory initializer */ -// {{PRE_LIBRARY}} - - - function demangle(func) { - warnOnce('warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling'); - return func; + var args = readAsmConstArgs(sigPtr, argbuf); + return ASM_CONSTS[code].apply(null, args); +} +function initPthreadsJS() { + PThread.initRuntime(); +} +if (!ENVIRONMENT_IS_PTHREAD) __ATINIT__.push({ + func: (function() { + ___wasm_call_ctors(); + }) +}); +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func; +} +Module["demangle"] = demangle; +function demangleAll(text) { + var regex = /\b_Z[\w\d_]+/g; + return text.replace(regex, (function(x) { + var y = demangle(x); + return x === y ? x : y + " [" + x + "]"; + })); +} +Module["demangleAll"] = demangleAll; +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0); + } catch (e) { + err = e; + } + if (!err.stack) { + return "(no stack trace available)"; + } + } + return err.stack.toString(); +} +Module["jsStackTrace"] = jsStackTrace; +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js); +} +Module["stackTrace"] = stackTrace; +function __ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE() { + err("missing function: _ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"); + abort(-1); +} +Module["__ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; +function __ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE() { + err("missing function: _ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"); + abort(-1); +} +Module["__ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; +function __ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE() { + err("missing function: _ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"); + abort(-1); +} +Module["__ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; +function __ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE() { + err("missing function: _ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"); + abort(-1); +} +Module["__ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; +function __ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE() { + err("missing function: _ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"); + abort(-1); +} +Module["__ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; +function __ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb() { + err("missing function: _ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb"); + abort(-1); +} +Module["__ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb"] = __ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb; +function __ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb() { + err("missing function: _ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb"); + abort(-1); +} +Module["__ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb"] = __ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb; +function __ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb() { + err("missing function: _ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb"); + abort(-1); +} +Module["__ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb"] = __ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb; +function __ZN12CPdfRendererD1Ev() { + err("missing function: _ZN12CPdfRendererD1Ev"); + abort(-1); +} +Module["__ZN12CPdfRendererD1Ev"] = __ZN12CPdfRendererD1Ev; +function __ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv() { + err("missing function: _ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv"); + abort(-1); +} +Module["__ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv"] = __ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv; +function __ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_() { + err("missing function: _ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_"); + abort(-1); +} +Module["__ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_"] = __ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_; +function __ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE() { + err("missing function: _ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE"); + abort(-1); +} +Module["__ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE"] = __ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE; +function __ZN14NSDoctRenderer13CDoctrendererD1Ev() { + err("missing function: _ZN14NSDoctRenderer13CDoctrendererD1Ev"); + abort(-1); +} +Module["__ZN14NSDoctRenderer13CDoctrendererD1Ev"] = __ZN14NSDoctRenderer13CDoctrendererD1Ev; +function __ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_() { + err("missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_"); + abort(-1); +} +Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_; +function __ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb() { + err("missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb"); + abort(-1); +} +Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb; +function __ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev() { + err("missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev"); + abort(-1); +} +Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev; +function __ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev() { + err("missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev"); + abort(-1); +} +Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev; +function __ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb() { + err("missing function: _ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb"); + abort(-1); +} +Module["__ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb"] = __ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb; +function __ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE() { + err("missing function: _ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE"); + abort(-1); +} +Module["__ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE"] = __ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE; +function __ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE() { + err("missing function: _ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE"); + abort(-1); +} +Module["__ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE"] = __ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE; +function __ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_() { + err("missing function: _ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_"); + abort(-1); +} +Module["__ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_"] = __ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_; +function __ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_() { + err("missing function: _ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_"); + abort(-1); +} +Module["__ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_"] = __ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_; +function __ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_() { + err("missing function: _ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_"); + abort(-1); +} +Module["__ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_"] = __ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_; +function __ZN9CHtmlFileC1Ev() { + err("missing function: _ZN9CHtmlFileC1Ev"); + abort(-1); +} +Module["__ZN9CHtmlFileC1Ev"] = __ZN9CHtmlFileC1Ev; +function __ZN9CHtmlFileD1Ev() { + err("missing function: _ZN9CHtmlFileD1Ev"); + abort(-1); +} +Module["__ZN9CHtmlFileD1Ev"] = __ZN9CHtmlFileD1Ev; +function __ZN9PdfReader10CPdfReader8GetErrorEv() { + err("missing function: _ZN9PdfReader10CPdfReader8GetErrorEv"); + abort(-1); +} +Module["__ZN9PdfReader10CPdfReader8GetErrorEv"] = __ZN9PdfReader10CPdfReader8GetErrorEv; +function __ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE() { + err("missing function: _ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE"); + abort(-1); +} +Module["__ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE"] = __ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE; +function ___assert_fail(condition, filename, line, func) { + abort("Assertion failed: " + UTF8ToString(condition) + ", at: " + [ filename ? UTF8ToString(filename) : "unknown filename", line, func ? UTF8ToString(func) : "unknown function" ]); +} +Module["___assert_fail"] = ___assert_fail; +var PROCINFO = { + ppid: 1, + pid: 42, + sid: 42, + pgid: 42 +}; +Module["PROCINFO"] = PROCINFO; +var __pthread_ptr = 0; +Module["__pthread_ptr"] = __pthread_ptr; +var __pthread_is_main_runtime_thread = 0; +Module["__pthread_is_main_runtime_thread"] = __pthread_is_main_runtime_thread; +var __pthread_is_main_browser_thread = 0; +Module["__pthread_is_main_browser_thread"] = __pthread_is_main_browser_thread; +function __register_pthread_ptr(pthreadPtr, isMainBrowserThread, isMainRuntimeThread) { + pthreadPtr = pthreadPtr | 0; + isMainBrowserThread = isMainBrowserThread | 0; + isMainRuntimeThread = isMainRuntimeThread | 0; + __pthread_ptr = pthreadPtr; + __pthread_is_main_browser_thread = isMainBrowserThread; + __pthread_is_main_runtime_thread = isMainRuntimeThread; +} +Module["__register_pthread_ptr"] = __register_pthread_ptr; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +Module["ERRNO_CODES"] = ERRNO_CODES; +var __main_thread_futex_wait_address = 12595904; +Module["__main_thread_futex_wait_address"] = __main_thread_futex_wait_address; +function _emscripten_futex_wake(addr, count) { + if (addr <= 0 || addr > HEAP8.length || addr & 3 != 0 || count < 0) return -28; + if (count == 0) return 0; + if (count >= 2147483647) count = Infinity; + var mainThreadWaitAddress = Atomics.load(HEAP32, __main_thread_futex_wait_address >> 2); + var mainThreadWoken = 0; + if (mainThreadWaitAddress == addr) { + var loadedAddr = Atomics.compareExchange(HEAP32, __main_thread_futex_wait_address >> 2, mainThreadWaitAddress, 0); + if (loadedAddr == mainThreadWaitAddress) { + --count; + mainThreadWoken = 1; + if (count <= 0) return 1; + } + } + var ret = Atomics.notify(HEAP32, addr >> 2, count); + if (ret >= 0) return ret + mainThreadWoken; + throw "Atomics.notify returned an unexpected value " + ret; +} +Module["_emscripten_futex_wake"] = _emscripten_futex_wake; +function __kill_thread(pthread_ptr) { + if (ENVIRONMENT_IS_PTHREAD) throw "Internal Error! _kill_thread() can only ever be called from main application thread!"; + if (!pthread_ptr) throw "Internal Error! Null pthread_ptr in _kill_thread!"; + GROWABLE_HEAP_STORE_I32(pthread_ptr + 24 | 0, 0); + var pthread = PThread.pthreads[pthread_ptr]; + pthread.worker.terminate(); + PThread.freeThreadData(pthread); + PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(pthread.worker), 1); + pthread.worker.pthread = undefined; +} +Module["__kill_thread"] = __kill_thread; +function __cancel_thread(pthread_ptr) { + if (ENVIRONMENT_IS_PTHREAD) throw "Internal Error! _cancel_thread() can only ever be called from main application thread!"; + if (!pthread_ptr) throw "Internal Error! Null pthread_ptr in _cancel_thread!"; + var pthread = PThread.pthreads[pthread_ptr]; + pthread.worker.postMessage({ + "cmd": "cancel" + }); +} +Module["__cancel_thread"] = __cancel_thread; +function __cleanup_thread(pthread_ptr) { + if (ENVIRONMENT_IS_PTHREAD) throw "Internal Error! _cleanup_thread() can only ever be called from main application thread!"; + if (!pthread_ptr) throw "Internal Error! Null pthread_ptr in _cleanup_thread!"; + GROWABLE_HEAP_STORE_I32(pthread_ptr + 24 | 0, 0); + var pthread = PThread.pthreads[pthread_ptr]; + if (pthread) { + var worker = pthread.worker; + PThread.returnWorkerToPool(worker); + } +} +Module["__cleanup_thread"] = __cleanup_thread; +var PThread = { + MAIN_THREAD_ID: 1, + mainThreadInfo: { + schedPolicy: 0, + schedPrio: 0 + }, + preallocatedWorkers: [], + unusedWorkers: [], + runningWorkers: [], + initRuntime: (function() { + __register_pthread_ptr(PThread.mainThreadBlock, !ENVIRONMENT_IS_WORKER, 1); + _emscripten_register_main_browser_thread_id(PThread.mainThreadBlock); + }), + initMainThreadBlock: (function() { + if (ENVIRONMENT_IS_PTHREAD) return undefined; + PThread.mainThreadBlock = 12595120; + for (var i = 0; i < 244 / 4; ++i) GROWABLE_HEAP_STORE_I32((PThread.mainThreadBlock / 4 + i) * 4 | 0, 0); + GROWABLE_HEAP_STORE_I32(PThread.mainThreadBlock + 24 | 0, PThread.mainThreadBlock); + var headPtr = PThread.mainThreadBlock + 168; + GROWABLE_HEAP_STORE_I32(headPtr | 0, headPtr); + var tlsMemory = 12595376; + for (var i = 0; i < 128; ++i) GROWABLE_HEAP_STORE_I32((tlsMemory / 4 + i) * 4 | 0, 0); + Atomics.store(HEAPU32, PThread.mainThreadBlock + 116 >> 2, tlsMemory); + Atomics.store(HEAPU32, PThread.mainThreadBlock + 52 >> 2, PThread.mainThreadBlock); + Atomics.store(HEAPU32, PThread.mainThreadBlock + 56 >> 2, PROCINFO.pid); + }), + initWorker: (function() {}), + pthreads: {}, + exitHandlers: null, + setThreadStatus: (function() {}), + runExitHandlers: (function() { + if (PThread.exitHandlers !== null) { + while (PThread.exitHandlers.length > 0) { + PThread.exitHandlers.pop()(); + } + PThread.exitHandlers = null; + } + if (ENVIRONMENT_IS_PTHREAD && threadInfoStruct) ___pthread_tsd_run_dtors(); + }), + threadExit: (function(exitCode) { + var tb = _pthread_self(); + if (tb) { + Atomics.store(HEAPU32, tb + 4 >> 2, exitCode); + Atomics.store(HEAPU32, tb + 0 >> 2, 1); + Atomics.store(HEAPU32, tb + 72 >> 2, 1); + Atomics.store(HEAPU32, tb + 76 >> 2, 0); + PThread.runExitHandlers(); + _emscripten_futex_wake(tb + 0, 2147483647); + __register_pthread_ptr(0, 0, 0); + threadInfoStruct = 0; + if (ENVIRONMENT_IS_PTHREAD) { + postMessage({ + "cmd": "exit" + }); + } + } + }), + threadCancel: (function() { + PThread.runExitHandlers(); + Atomics.store(HEAPU32, threadInfoStruct + 4 >> 2, -1); + Atomics.store(HEAPU32, threadInfoStruct + 0 >> 2, 1); + _emscripten_futex_wake(threadInfoStruct + 0, 2147483647); + threadInfoStruct = selfThreadId = 0; + __register_pthread_ptr(0, 0, 0); + postMessage({ + "cmd": "cancelDone" + }); + }), + terminateAllThreads: (function() { + for (var t in PThread.pthreads) { + var pthread = PThread.pthreads[t]; + if (pthread && pthread.worker) { + PThread.returnWorkerToPool(pthread.worker); + } + } + PThread.pthreads = {}; + for (var i = 0; i < PThread.preallocatedWorkers.length; ++i) { + var worker = PThread.preallocatedWorkers[i]; + assert(!worker.pthread); + worker.terminate(); + } + PThread.preallocatedWorkers = []; + for (var i = 0; i < PThread.unusedWorkers.length; ++i) { + var worker = PThread.unusedWorkers[i]; + assert(!worker.pthread); + worker.terminate(); + } + PThread.unusedWorkers = []; + for (var i = 0; i < PThread.runningWorkers.length; ++i) { + var worker = PThread.runningWorkers[i]; + var pthread = worker.pthread; + assert(pthread, "This Worker should have a pthread it is executing"); + PThread.freeThreadData(pthread); + worker.terminate(); + } + PThread.runningWorkers = []; + }), + freeThreadData: (function(pthread) { + if (!pthread) return; + if (pthread.threadInfoStruct) { + var tlsMemory = GROWABLE_HEAP_LOAD_I32(pthread.threadInfoStruct + 116 | 0); + GROWABLE_HEAP_STORE_I32(pthread.threadInfoStruct + 116 | 0, 0); + _free(tlsMemory); + _free(pthread.threadInfoStruct); + } + pthread.threadInfoStruct = 0; + if (pthread.allocatedOwnStack && pthread.stackBase) _free(pthread.stackBase); + pthread.stackBase = 0; + if (pthread.worker) pthread.worker.pthread = null; + }), + returnWorkerToPool: (function(worker) { + delete PThread.pthreads[worker.pthread.thread]; + PThread.unusedWorkers.push(worker); + PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1); + PThread.freeThreadData(worker.pthread); + worker.pthread = undefined; + }), + receiveObjectTransfer: (function(data) {}), + allocateUnusedWorkers: (function(numWorkers, onFinishedLoading) { + if (typeof SharedArrayBuffer === "undefined") return; + var workers = []; + var numWorkersToCreate = numWorkers; + if (PThread.preallocatedWorkers.length > 0) { + var workersUsed = Math.min(PThread.preallocatedWorkers.length, numWorkers); + workers = workers.concat(PThread.preallocatedWorkers.splice(0, workersUsed)); + numWorkersToCreate -= workersUsed; + } + if (numWorkersToCreate > 0) { + workers = workers.concat(PThread.createNewWorkers(numWorkersToCreate)); + } + PThread.attachListenerToWorkers(workers, onFinishedLoading); + for (var i = 0; i < numWorkers; ++i) { + var worker = workers[i]; + worker.postMessage({ + "cmd": "load", + "urlOrBlob": Module["mainScriptUrlOrBlob"] || _scriptDir, + "wasmMemory": wasmMemory, + "wasmModule": wasmModule, + "DYNAMIC_BASE": DYNAMIC_BASE, + "DYNAMICTOP_PTR": DYNAMICTOP_PTR + }); + PThread.unusedWorkers.push(worker); + } + }), + attachListenerToWorkers: (function(workers, onFinishedLoading) { + var numWorkersLoaded = 0; + var numWorkers = workers.length; + for (var i = 0; i < numWorkers; ++i) { + var worker = workers[i]; + ((function(worker) { + worker.onmessage = (function(e) { + var d = e["data"]; + var cmd = d["cmd"]; + if (worker.pthread) PThread.currentProxiedOperationCallerThread = worker.pthread.threadInfoStruct; + if (d["targetThread"] && d["targetThread"] != _pthread_self()) { + var thread = PThread.pthreads[d.targetThread]; + if (thread) { + thread.worker.postMessage(e.data, d["transferList"]); + } else { + console.error('Internal error! Worker sent a message "' + cmd + '" to target pthread ' + d["targetThread"] + ", but that thread no longer exists!"); + } + PThread.currentProxiedOperationCallerThread = undefined; + return; + } + if (cmd === "processQueuedMainThreadWork") { + _emscripten_main_thread_process_queued_calls(); + } else if (cmd === "spawnThread") { + __spawn_thread(e.data); + } else if (cmd === "cleanupThread") { + __cleanup_thread(d["thread"]); + } else if (cmd === "killThread") { + __kill_thread(d["thread"]); + } else if (cmd === "cancelThread") { + __cancel_thread(d["thread"]); + } else if (cmd === "loaded") { + worker.loaded = true; + if (worker.runPthread) { + worker.runPthread(); + delete worker.runPthread; + } + ++numWorkersLoaded; + if (numWorkersLoaded === numWorkers && onFinishedLoading) { + onFinishedLoading(); + } + } else if (cmd === "print") { + out("Thread " + d["threadId"] + ": " + d["text"]); + } else if (cmd === "printErr") { + err("Thread " + d["threadId"] + ": " + d["text"]); + } else if (cmd === "alert") { + alert("Thread " + d["threadId"] + ": " + d["text"]); + } else if (cmd === "exit") { + var detached = worker.pthread && Atomics.load(HEAPU32, worker.pthread.thread + 80 >> 2); + if (detached) { + PThread.returnWorkerToPool(worker); + } + } else if (cmd === "exitProcess") { + noExitRuntime = false; + try { + exit(d["returnCode"]); + } catch (e) { + if (e instanceof ExitStatus) return; + throw e; + } + } else if (cmd === "cancelDone") { + PThread.returnWorkerToPool(worker); + } else if (cmd === "objectTransfer") { + PThread.receiveObjectTransfer(e.data); + } else if (e.data.target === "setimmediate") { + worker.postMessage(e.data); + } else { + err("worker sent an unknown command " + cmd); + } + PThread.currentProxiedOperationCallerThread = undefined; + }); + worker.onerror = (function(e) { + err("pthread sent an error! " + e.filename + ":" + e.lineno + ": " + e.message); + }); + if (ENVIRONMENT_HAS_NODE) { + worker.on("message", (function(data) { + worker.onmessage({ + data: data + }); + })); + worker.on("error", (function(data) { + worker.onerror(data); + })); + worker.on("exit", (function(data) { + console.log("worker exited - TODO: update the worker queue?"); + })); } - Module["demangle"] = demangle; - - function demangleAll(text) { - var regex = - /\b_Z[\w\d_]+/g; - return text.replace(regex, - function(x) { - var y = demangle(x); - return x === y ? x : (y + ' [' + x + ']'); - }); + }))(worker); + } + }), + createNewWorkers: (function(numWorkers) { + if (typeof SharedArrayBuffer === "undefined") return []; + var pthreadMainJs = "x2t.worker.js"; + pthreadMainJs = locateFile(pthreadMainJs); + var newWorkers = []; + for (var i = 0; i < numWorkers; ++i) { + newWorkers.push(new Worker(pthreadMainJs)); + } + return newWorkers; + }), + getNewWorker: (function() { + if (PThread.unusedWorkers.length == 0) PThread.allocateUnusedWorkers(1); + if (PThread.unusedWorkers.length > 0) return PThread.unusedWorkers.pop(); else return null; + }), + busySpinWait: (function(msecs) { + var t = performance.now() + msecs; + while (performance.now() < t) { + } + }) +}; +Module["PThread"] = PThread; +function ___call_main(argc, argv) { + var returnCode = _main(argc, argv); + if (!noExitRuntime) postMessage({ + "cmd": "exitProcess", + "returnCode": returnCode + }); + return returnCode; +} +Module["___call_main"] = ___call_main; +function _emscripten_get_now() { + abort(); +} +Module["_emscripten_get_now"] = _emscripten_get_now; +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function"; +} +Module["_emscripten_get_now_is_monotonic"] = _emscripten_get_now_is_monotonic; +function ___setErrNo(value) { + if (Module["___errno_location"]) GROWABLE_HEAP_STORE_I32(Module["___errno_location"]() | 0, value); else err("failed to set errno from JS"); + return value; +} +Module["___setErrNo"] = ___setErrNo; +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now(); + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now(); + } else { + ___setErrNo(28); + return -1; + } + GROWABLE_HEAP_STORE_I32(tp | 0, now / 1e3 | 0); + GROWABLE_HEAP_STORE_I32(tp + 4 | 0, now % 1e3 * 1e3 * 1e3 | 0); + return 0; +} +Module["_clock_gettime"] = _clock_gettime; +function ___clock_gettime(a0, a1) { + return _clock_gettime(a0, a1); +} +Module["___clock_gettime"] = ___clock_gettime; +function ___cxa_allocate_exception(size) { + return _malloc(size); +} +Module["___cxa_allocate_exception"] = ___cxa_allocate_exception; +function _atexit(func, arg) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(1, 1, func, arg); + warnOnce("atexit() called, but EXIT_RUNTIME is not set, so atexits() will not be called. set EXIT_RUNTIME to 1 (see the FAQ)"); + __ATEXIT__.unshift({ + func: func, + arg: arg + }); +} +Module["_atexit"] = _atexit; +function ___cxa_atexit() { + return _atexit.apply(null, arguments); +} +Module["___cxa_atexit"] = ___cxa_atexit; +var ___exception_caught = []; +Module["___exception_caught"] = ___exception_caught; +var ___exception_infos = {}; +Module["___exception_infos"] = ___exception_infos; +function ___exception_deAdjust(adjusted) { + if (!adjusted || ___exception_infos[adjusted]) return adjusted; + for (var key in ___exception_infos) { + var ptr = +key; + var adj = ___exception_infos[ptr].adjusted; + var len = adj.length; + for (var i = 0; i < len; i++) { + if (adj[i] === adjusted) { + return ptr; + } + } + } + return adjusted; +} +Module["___exception_deAdjust"] = ___exception_deAdjust; +var ___exception_last = 0; +Module["___exception_last"] = ___exception_last; +function ___cxa_rethrow() { + var ptr = ___exception_caught.pop(); + ptr = ___exception_deAdjust(ptr); + if (!___exception_infos[ptr].rethrown) { + ___exception_caught.push(ptr); + ___exception_infos[ptr].rethrown = true; + } + ___exception_last = ptr; + throw ptr + " - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."; +} +Module["___cxa_rethrow"] = ___cxa_rethrow; +function ___cxa_throw(ptr, type, destructor) { + ___exception_infos[ptr] = { + ptr: ptr, + adjusted: [ ptr ], + type: type, + destructor: destructor, + refcount: 0, + caught: false, + rethrown: false + }; + ___exception_last = ptr; + if (!("uncaught_exception" in __ZSt18uncaught_exceptionv)) { + __ZSt18uncaught_exceptionv.uncaught_exceptions = 1; + } else { + __ZSt18uncaught_exceptionv.uncaught_exceptions++; + } + throw ptr + " - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."; +} +Module["___cxa_throw"] = ___cxa_throw; +function ___lock() {} +Module["___lock"] = ___lock; +function ___map_file(pathname, size) { + ___setErrNo(63); + return -1; +} +Module["___map_file"] = ___map_file; +var PATH = { + splitPath: (function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1); + }), + normalizeArray: (function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1); + } else if (last === "..") { + parts.splice(i, 1); + up++; + } else if (up) { + parts.splice(i, 1); + up--; + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift(".."); + } + } + return parts; + }), + normalize: (function(path) { + var isAbsolute = path.charAt(0) === "/", trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter((function(p) { + return !!p; + })), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "."; + } + if (path && trailingSlash) { + path += "/"; + } + return (isAbsolute ? "/" : "") + path; + }), + dirname: (function(path) { + var result = PATH.splitPath(path), root = result[0], dir = result[1]; + if (!root && !dir) { + return "."; + } + if (dir) { + dir = dir.substr(0, dir.length - 1); + } + return root + dir; + }), + basename: (function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1); + }), + extname: (function(path) { + return PATH.splitPath(path)[3]; + }), + join: (function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")); + }), + join2: (function(l, r) { + return PATH.normalize(l + "/" + r); + }) +}; +Module["PATH"] = PATH; +var PATH_FS = { + resolve: (function() { + var resolvedPath = "", resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings"); + } else if (!path) { + return ""; + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/"; + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter((function(p) { + return !!p; + })), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "."; + }), + relative: (function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break; + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break; + } + if (start > end) return []; + return arr.slice(start, end - start + 1); + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break; + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push(".."); + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/"); + }) +}; +Module["PATH_FS"] = PATH_FS; +var TTY = { + ttys: [], + init: (function() {}), + shutdown: (function() {}), + register: (function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops); + }), + stream_ops: { + open: (function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43); + } + stream.tty = tty; + stream.seekable = false; + }), + close: (function(stream) { + stream.tty.ops.flush(stream.tty); + }), + flush: (function(stream) { + stream.tty.ops.flush(stream.tty); + }), + read: (function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60); + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty); + } catch (e) { + throw new FS.ErrnoError(29); } - Module["demangleAll"] = demangleAll; - - function jsStackTrace() { - var err = new Error(); - if (!err.stack) { - // IE10+ special cases: It does have callstack info, but it is only populated if an Error object is thrown, - // so try that as a special-case. - try { - throw new Error(0); - } catch(e) { - err = e; - } - if (!err.stack) { - return '(no stack trace available)'; - } - } - return err.stack.toString(); + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6); } - Module["jsStackTrace"] = jsStackTrace; - - function stackTrace() { - var js = jsStackTrace(); - if (Module['extraStackTrace']) js += '\n' + Module['extraStackTrace'](); - return demangleAll(js); + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result; + } + if (bytesRead) { + stream.node.timestamp = Date.now(); + } + return bytesRead; + }), + write: (function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60); + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]); } - Module["stackTrace"] = stackTrace; - - function __ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE( - ) { - err('missing function: _ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE'); abort(-1); + } catch (e) { + throw new FS.ErrnoError(29); + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + }) + }, + default_tty_ops: { + get_char: (function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = nodeFS.readSync(process.stdin.fd, buf, 0, BUFSIZE, null); + } catch (e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; else throw e; + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8"); + } else { + result = null; + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n"; + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n"; + } + } + if (!result) { + return null; + } + tty.input = intArrayFromString(result, true); + } + return tty.input.shift(); + }), + put_char: (function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) tty.output.push(val); + } + }), + flush: (function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + }) + }, + default_tty1_ops: { + put_char: (function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) tty.output.push(val); + } + }), + flush: (function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + }) + } +}; +Module["TTY"] = TTY; +var MEMFS = { + ops_table: null, + mount: (function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0); + }), + createNode: (function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63); + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + }; + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {}; + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null; + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream; + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream; + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node; + } + return node; + }), + getFileDataAsRegularArray: (function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr; + } + return node.contents; + }), + getFileDataAsTypedArray: (function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents); + }), + expandFileStorage: (function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return; + }), + resizeFileStorage: (function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return; + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))); + } + node.usedBytes = newSize; + return; + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; else while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize; + }), + node_ops: { + getattr: (function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096; + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes; + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length; + } else { + attr.size = 0; + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr; + }), + setattr: (function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp; + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size); + } + }), + lookup: (function(parent, name) { + throw FS.genericErrors[44]; + }), + mknod: (function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev); + }), + rename: (function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55); + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir; + }), + unlink: (function(parent, name) { + delete parent.contents[name]; + }), + rmdir: (function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55); + } + delete parent.contents[name]; + }), + readdir: (function(node) { + var entries = [ ".", ".." ]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue; + } + entries.push(key); + } + return entries; + }), + symlink: (function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node; + }), + readlink: (function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28); + } + return node.link; + }) + }, + stream_ops: { + read: (function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset); + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i]; + } + return size; + }), + write: (function(stream, buffer, offset, length, position, canOwn) { + assert(!(buffer instanceof ArrayBuffer)); + if (buffer.buffer === HEAP8.buffer) { + if (canOwn) { + warnOnce("file packager has copied file data into memory, but in memory growth we are forced to copy it again (see --no-heap-copy)"); + } + canOwn = false; + } + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length; + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length; + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length; + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i]; + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length; + }), + llseek: (function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes; + } + } + if (position < 0) { + throw new FS.ErrnoError(28); + } + return position; + }), + allocate: (function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length); + }), + mmap: (function(stream, buffer, offset, length, position, prot, flags) { + assert(!(buffer instanceof ArrayBuffer)); + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && contents.buffer === buffer.buffer) { + allocated = false; + ptr = contents.byteOffset; + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length); + } else { + contents = Array.prototype.slice.call(contents, position, position + length); + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48); + } + (fromHeap ? HEAP8 : buffer).set(contents, ptr); + } + return { + ptr: ptr, + allocated: allocated + }; + }), + msync: (function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (mmapFlags & 2) { + return 0; + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0; + }) + } +}; +Module["MEMFS"] = MEMFS; +var NODEFS = { + isWindows: false, + staticInit: (function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"]; + } + NODEFS.flagsForNodeMap = { + "1024": flags["O_APPEND"], + "64": flags["O_CREAT"], + "128": flags["O_EXCL"], + "0": flags["O_RDONLY"], + "2": flags["O_RDWR"], + "4096": flags["O_SYNC"], + "512": flags["O_TRUNC"], + "1": flags["O_WRONLY"] + }; + }), + bufferFrom: (function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer); + }), + convertNodeCode: (function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code]; + }), + mount: (function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0); + }), + createNode: (function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28); + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node; + }), + getMode: (function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2; + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + return stat.mode; + }), + realPath: (function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent; + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts); + }), + flagsForNode: (function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k; + } + } + if (!flags) { + return newFlags; + } else { + throw new FS.ErrnoError(28); + } + }), + node_ops: { + getattr: (function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096; + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0; + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + }; + }), + setattr: (function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date); + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + lookup: (function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode); + }), + mknod: (function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode); + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + return node; + }), + rename: (function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + unlink: (function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + rmdir: (function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + readdir: (function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + symlink: (function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + readlink: (function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path; + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }) + }, + stream_ops: { + open: (function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + close: (function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + read: (function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position); + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + write: (function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position); + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }), + llseek: (function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size; + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28); + } + return position; + }) + } +}; +Module["NODEFS"] = NODEFS; +var ERRNO_MESSAGES = { + 0: "Success", + 1: "Arg list too long", + 2: "Permission denied", + 3: "Address already in use", + 4: "Address not available", + 5: "Address family not supported by protocol family", + 6: "No more processes", + 7: "Socket already connected", + 8: "Bad file number", + 9: "Trying to read unreadable message", + 10: "Mount device busy", + 11: "Operation canceled", + 12: "No children", + 13: "Connection aborted", + 14: "Connection refused", + 15: "Connection reset by peer", + 16: "File locking deadlock error", + 17: "Destination address required", + 18: "Math arg out of domain of func", + 19: "Quota exceeded", + 20: "File exists", + 21: "Bad address", + 22: "File too large", + 23: "Host is unreachable", + 24: "Identifier removed", + 25: "Illegal byte sequence", + 26: "Connection already in progress", + 27: "Interrupted system call", + 28: "Invalid argument", + 29: "I/O error", + 30: "Socket is already connected", + 31: "Is a directory", + 32: "Too many symbolic links", + 33: "Too many open files", + 34: "Too many links", + 35: "Message too long", + 36: "Multihop attempted", + 37: "File or path name too long", + 38: "Network interface is not configured", + 39: "Connection reset by network", + 40: "Network is unreachable", + 41: "Too many open files in system", + 42: "No buffer space available", + 43: "No such device", + 44: "No such file or directory", + 45: "Exec format error", + 46: "No record locks available", + 47: "The link has been severed", + 48: "Not enough core", + 49: "No message of desired type", + 50: "Protocol not available", + 51: "No space left on device", + 52: "Function not implemented", + 53: "Socket is not connected", + 54: "Not a directory", + 55: "Directory not empty", + 56: "State not recoverable", + 57: "Socket operation on non-socket", + 59: "Not a typewriter", + 60: "No such device or address", + 61: "Value too large for defined data type", + 62: "Previous owner died", + 63: "Not super-user", + 64: "Broken pipe", + 65: "Protocol error", + 66: "Unknown protocol", + 67: "Protocol wrong type for socket", + 68: "Math result not representable", + 69: "Read only file system", + 70: "Illegal seek", + 71: "No such process", + 72: "Stale file handle", + 73: "Connection timed out", + 74: "Text file busy", + 75: "Cross-device link", + 100: "Device not a stream", + 101: "Bad font file fmt", + 102: "Invalid slot", + 103: "Invalid request code", + 104: "No anode", + 105: "Block device required", + 106: "Channel number out of range", + 107: "Level 3 halted", + 108: "Level 3 reset", + 109: "Link number out of range", + 110: "Protocol driver not attached", + 111: "No CSI structure available", + 112: "Level 2 halted", + 113: "Invalid exchange", + 114: "Invalid request descriptor", + 115: "Exchange full", + 116: "No data (for no delay io)", + 117: "Timer expired", + 118: "Out of streams resources", + 119: "Machine is not on the network", + 120: "Package not installed", + 121: "The object is remote", + 122: "Advertise error", + 123: "Srmount error", + 124: "Communication error on send", + 125: "Cross mount point (not really error)", + 126: "Given log. name not unique", + 127: "f.d. invalid for this operation", + 128: "Remote address changed", + 129: "Can access a needed shared lib", + 130: "Accessing a corrupted shared lib", + 131: ".lib section in a.out corrupted", + 132: "Attempting to link in too many libs", + 133: "Attempting to exec a shared library", + 135: "Streams pipe error", + 136: "Too many users", + 137: "Socket type not supported", + 138: "Not supported", + 139: "Protocol family not supported", + 140: "Can't send after socket shutdown", + 141: "Too many references", + 142: "Host is down", + 148: "No medium (in tape drive)", + 156: "Level 2 not synchronized" +}; +Module["ERRNO_MESSAGES"] = ERRNO_MESSAGES; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: (function(e) { + if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno); + }), + lookupPath: (function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key]; + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32); + } + var parts = PATH.normalizeArray(path.split("/").filter((function(p) { + return !!p; + })), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break; + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root; + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32); + } + } + } } - Module["__ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; - - function __ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE( - ) { - err('missing function: _ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE'); abort(-1); + return { + path: current_path, + node: current + }; + }), + getPath: (function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path; + } + path = path ? node.name + "/" + path : node.name; + node = node.parent; + } + }), + hashName: (function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0; + } + return (parentid + hash >>> 0) % FS.nameTable.length; + }), + hashAddNode: (function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node; + }), + hashRemoveNode: (function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next; + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break; + } + current = current.name_next; + } + } + }), + lookupNode: (function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent); + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node; + } + } + return FS.lookup(parent, name); + }), + createNode: (function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = (function(parent, name, mode, rdev) { + if (!parent) { + parent = this; + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev; + }); + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: (function() { + return (this.mode & readMode) === readMode; + }), + set: (function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode; + }) + }, + write: { + get: (function() { + return (this.mode & writeMode) === writeMode; + }), + set: (function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode; + }) + }, + isFolder: { + get: (function() { + return FS.isDir(this.mode); + }) + }, + isDevice: { + get: (function() { + return FS.isChrdev(this.mode); + }) + } + }); + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node; + }), + destroyNode: (function(node) { + FS.hashRemoveNode(node); + }), + isRoot: (function(node) { + return node === node.parent; + }), + isMountpoint: (function(node) { + return !!node.mounted; + }), + isFile: (function(mode) { + return (mode & 61440) === 32768; + }), + isDir: (function(mode) { + return (mode & 61440) === 16384; + }), + isLink: (function(mode) { + return (mode & 61440) === 40960; + }), + isChrdev: (function(mode) { + return (mode & 61440) === 8192; + }), + isBlkdev: (function(mode) { + return (mode & 61440) === 24576; + }), + isFIFO: (function(mode) { + return (mode & 61440) === 4096; + }), + isSocket: (function(mode) { + return (mode & 49152) === 49152; + }), + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: (function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str); + } + return flags; + }), + flagsToPermissionString: (function(flag) { + var perms = [ "r", "w", "rw" ][flag & 3]; + if (flag & 512) { + perms += "w"; + } + return perms; + }), + nodePermissions: (function(node, perms) { + if (FS.ignorePermissions) { + return 0; + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2; + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2; + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2; + } + return 0; + }), + mayLookup: (function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0; + }), + mayCreate: (function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20; + } catch (e) {} + return FS.nodePermissions(dir, "wx"); + }), + mayDelete: (function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name); + } catch (e) { + return e.errno; + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err; + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54; + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10; + } + } else { + if (FS.isDir(node.mode)) { + return 31; + } + } + return 0; + }), + mayOpen: (function(node, flags) { + if (!node) { + return 44; + } + if (FS.isLink(node.mode)) { + return 32; + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31; + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)); + }), + MAX_OPEN_FDS: 4096, + nextfd: (function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd; + } + } + throw new FS.ErrnoError(33); + }), + getStream: (function(fd) { + return FS.streams[fd]; + }), + createStream: (function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = (function() {}); + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: (function() { + return this.node; + }), + set: (function(val) { + this.node = val; + }) + }, + isRead: { + get: (function() { + return (this.flags & 2097155) !== 1; + }) + }, + isWrite: { + get: (function() { + return (this.flags & 2097155) !== 0; + }) + }, + isAppend: { + get: (function() { + return this.flags & 1024; + }) + } + }); + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p]; + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream; + }), + closeStream: (function(fd) { + FS.streams[fd] = null; + }), + chrdev_stream_ops: { + open: (function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + }), + llseek: (function() { + throw new FS.ErrnoError(70); + }) + }, + major: (function(dev) { + return dev >> 8; + }), + minor: (function(dev) { + return dev & 255; + }), + makedev: (function(ma, mi) { + return ma << 8 | mi; + }), + registerDevice: (function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + }; + }), + getDevice: (function(dev) { + return FS.devices[dev]; + }), + getMounts: (function(mount) { + var mounts = []; + var check = [ mount ]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts); + } + return mounts; + }), + syncfs: (function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false; + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work"); + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err); + } + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err); + } + return; + } + if (++completed >= mounts.length) { + doCallback(null); + } + } + mounts.forEach((function(mount) { + if (!mount.type.syncfs) { + return done(null); + } + mount.type.syncfs(mount, populate, done); + })); + }), + mount: (function(type, opts, mountpoint) { + if (typeof type === "string") { + throw type; + } + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10); + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54); + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot; + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount); + } + } + return mountRoot; + }), + unmount: (function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28); + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach((function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current); + } + current = next; + } + })); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1); + }), + lookup: (function(parent, name) { + return parent.node_ops.lookup(parent, name); + }), + mknod: (function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28); + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63); + } + return parent.node_ops.mknod(parent, name, mode, dev); + }), + create: (function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0); + }), + mkdir: (function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0); + }), + mkdirTree: (function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode); + } catch (e) { + if (e.errno != 20) throw e; + } + } + }), + mkdev: (function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438; + } + mode |= 8192; + return FS.mknod(path, mode, dev); + }), + symlink: (function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44); + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44); + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63); + } + return parent.node_ops.symlink(parent, newname, oldpath); + }), + rename: (function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node; + } catch (e) { + throw new FS.ErrnoError(10); } - Module["__ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; - - function __ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE( - ) { - err('missing function: _ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE'); abort(-1); + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75); } - Module["__ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; - - function __ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE( - ) { - err('missing function: _ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE'); abort(-1); + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28); } - Module["__ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; - - function __ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE( - ) { - err('missing function: _ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE'); abort(-1); + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55); } - Module["__ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE"] = __ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE; - - function __ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb( - ) { - err('missing function: _ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb'); abort(-1); + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) {} + if (old_node === new_node) { + return; } - Module["__ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb"] = __ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb; - - function __ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb( - ) { - err('missing function: _ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb'); abort(-1); + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err); } - Module["__ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb"] = __ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb; - - function __ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb( - ) { - err('missing function: _ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb'); abort(-1); + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err); } - Module["__ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb"] = __ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb; - - function __ZN12CPdfRendererD1Ev( - ) { - err('missing function: _ZN12CPdfRendererD1Ev'); abort(-1); + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63); } - Module["__ZN12CPdfRendererD1Ev"] = __ZN12CPdfRendererD1Ev; - - function __ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv( - ) { - err('missing function: _ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv'); abort(-1); + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10); } - Module["__ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv"] = __ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv; - - function __ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_( - ) { - err('missing function: _ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_'); abort(-1); + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err); + } } - Module["__ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_"] = __ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_; - - function __ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE( - ) { - err('missing function: _ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE'); abort(-1); + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path); + } + } catch (e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message); } - Module["__ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE"] = __ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE; - - function __ZN14NSDoctRenderer13CDoctrendererD1Ev( - ) { - err('missing function: _ZN14NSDoctRenderer13CDoctrendererD1Ev'); abort(-1); + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name); + } catch (e) { + throw e; + } finally { + FS.hashAddNode(old_node); } - Module["__ZN14NSDoctRenderer13CDoctrendererD1Ev"] = __ZN14NSDoctRenderer13CDoctrendererD1Ev; - - function __ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_( - ) { - err('missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_'); abort(-1); + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path); + } catch (e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message); } - Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_; - - function __ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb( - ) { - err('missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb'); abort(-1); + }), + rmdir: (function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err); } - Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb; - - function __ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev( - ) { - err('missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev'); abort(-1); + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63); } - Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev; - - function __ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev( - ) { - err('missing function: _ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev'); abort(-1); + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); } - Module["__ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev"] = __ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev; - - function __ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb( - ) { - err('missing function: _ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb'); abort(-1); + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path); + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message); } - Module["__ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb"] = __ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb; - - function __ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE( - ) { - err('missing function: _ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE'); abort(-1); + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path); + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message); } - Module["__ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE"] = __ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE; - - function __ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE( - ) { - err('missing function: _ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE'); abort(-1); + }), + readdir: (function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54); + } + return node.node_ops.readdir(node); + }), + unlink: (function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err); } - Module["__ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE"] = __ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE; - - function __ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_( - ) { - err('missing function: _ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_'); abort(-1); + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63); } - Module["__ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_"] = __ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_; - - function __ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_( - ) { - err('missing function: _ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_'); abort(-1); + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); } - Module["__ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_"] = __ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_; - - function __ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_( - ) { - err('missing function: _ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_'); abort(-1); + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path); + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message); } - Module["__ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_"] = __ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_; - - function __ZN9CHtmlFileC1Ev( - ) { - err('missing function: _ZN9CHtmlFileC1Ev'); abort(-1); + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path); + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message); + } + }), + readlink: (function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44); + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28); + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)); + }), + stat: (function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44); + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63); + } + return node.node_ops.getattr(node); + }), + lstat: (function(path) { + return FS.stat(path, true); + }), + chmod: (function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node; + } else { + node = path; } - Module["__ZN9CHtmlFileC1Ev"] = __ZN9CHtmlFileC1Ev; - - function __ZN9CHtmlFileD1Ev( - ) { - err('missing function: _ZN9CHtmlFileD1Ev'); abort(-1); + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); } - Module["__ZN9CHtmlFileD1Ev"] = __ZN9CHtmlFileD1Ev; - - function __ZN9PdfReader10CPdfReader8GetErrorEv( - ) { - err('missing function: _ZN9PdfReader10CPdfReader8GetErrorEv'); abort(-1); + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }); + }), + lchmod: (function(path, mode) { + FS.chmod(path, mode, true); + }), + fchmod: (function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + FS.chmod(stream.node, mode); + }), + chown: (function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node; + } else { + node = path; } - Module["__ZN9PdfReader10CPdfReader8GetErrorEv"] = __ZN9PdfReader10CPdfReader8GetErrorEv; - - function __ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE( - ) { - err('missing function: _ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE'); abort(-1); + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); } - Module["__ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE"] = __ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE; - - function ___assert_fail(condition, filename, line, func) { - abort('Assertion failed: ' + UTF8ToString(condition) + ', at: ' + [filename ? UTF8ToString(filename) : 'unknown filename', line, func ? UTF8ToString(func) : 'unknown function']); + node.node_ops.setattr(node, { + timestamp: Date.now() + }); + }), + lchown: (function(path, uid, gid) { + FS.chown(path, uid, gid, true); + }), + fchown: (function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + FS.chown(stream.node, uid, gid); + }), + truncate: (function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28); + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + } else { + node = path; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31); + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28); + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err); + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }); + }), + ftruncate: (function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28); + } + FS.truncate(stream.node, len); + }), + utime: (function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }); + }), + open: (function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44); + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768; + } else { + mode = 0; + } + var node; + if (typeof path === "object") { + node = path; + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node; + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20); } - Module["___assert_fail"] = ___assert_fail; - - - - var PROCINFO={ppid:1,pid:42,sid:42,pgid:42}; - Module["PROCINFO"] = PROCINFO; - - - var __pthread_ptr=0; - Module["__pthread_ptr"] = __pthread_ptr; - - var __pthread_is_main_runtime_thread=0; - Module["__pthread_is_main_runtime_thread"] = __pthread_is_main_runtime_thread; - - var __pthread_is_main_browser_thread=0; - Module["__pthread_is_main_browser_thread"] = __pthread_is_main_browser_thread;function __register_pthread_ptr(pthreadPtr, isMainBrowserThread, isMainRuntimeThread) { - pthreadPtr = pthreadPtr|0; - isMainBrowserThread = isMainBrowserThread|0; - isMainRuntimeThread = isMainRuntimeThread|0; - __pthread_ptr = pthreadPtr; - __pthread_is_main_browser_thread = isMainBrowserThread; - __pthread_is_main_runtime_thread = isMainRuntimeThread; + } else { + node = FS.mknod(path, mode, 0); + created = true; + } + } + if (!node) { + throw new FS.ErrnoError(44); + } + if (FS.isChrdev(node.mode)) { + flags &= ~512; + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54); + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err); + } + } + if (flags & 512) { + FS.truncate(node, 0); + } + flags &= ~(128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path); + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ; } - Module["__register_pthread_ptr"] = __register_pthread_ptr; - - var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135}; - Module["ERRNO_CODES"] = ERRNO_CODES; - - - var __main_thread_futex_wait_address=12595904; - Module["__main_thread_futex_wait_address"] = __main_thread_futex_wait_address;function _emscripten_futex_wake(addr, count) { - if (addr <= 0 || addr > HEAP8.length || addr&3 != 0 || count < 0) return -28; - if (count == 0) return 0; - // Waking (at least) INT_MAX waiters is defined to mean wake all callers. - // For Atomics.notify() API Infinity is to be passed in that case. - if (count >= 2147483647) count = Infinity; - // dump('futex_wake addr:' + addr + ' by thread: ' + _pthread_self() + (ENVIRONMENT_IS_PTHREAD?'(pthread)':'') + '\n'); - - // See if main thread is waiting on this address? If so, wake it up by resetting its wake location to zero. - // Note that this is not a fair procedure, since we always wake main thread first before any workers, so - // this scheme does not adhere to real queue-based waiting. - var mainThreadWaitAddress = Atomics.load(HEAP32, __main_thread_futex_wait_address >> 2); - var mainThreadWoken = 0; - if (mainThreadWaitAddress == addr) { - var loadedAddr = Atomics.compareExchange(HEAP32, __main_thread_futex_wait_address >> 2, mainThreadWaitAddress, 0); - if (loadedAddr == mainThreadWaitAddress) { - --count; - mainThreadWoken = 1; - if (count <= 0) return 1; - } - } - - // Wake any workers waiting on this address. - var ret = Atomics.notify(HEAP32, addr >> 2, count); - if (ret >= 0) return ret + mainThreadWoken; - throw 'Atomics.notify returned an unexpected value ' + ret; - } - Module["_emscripten_futex_wake"] = _emscripten_futex_wake; - - function __kill_thread(pthread_ptr) { - if (ENVIRONMENT_IS_PTHREAD) throw 'Internal Error! _kill_thread() can only ever be called from main application thread!'; - if (!pthread_ptr) throw 'Internal Error! Null pthread_ptr in _kill_thread!'; - HEAP32[(((pthread_ptr)+(24))>>2)]=0; - var pthread = PThread.pthreads[pthread_ptr]; - pthread.worker.terminate(); - PThread.freeThreadData(pthread); - // The worker was completely nuked (not just the pthread execution it was hosting), so remove it from running workers - // but don't put it back to the pool. - PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(pthread.worker), 1); // Not a running Worker anymore. - pthread.worker.pthread = undefined; - } - Module["__kill_thread"] = __kill_thread; - - function __cancel_thread(pthread_ptr) { - if (ENVIRONMENT_IS_PTHREAD) throw 'Internal Error! _cancel_thread() can only ever be called from main application thread!'; - if (!pthread_ptr) throw 'Internal Error! Null pthread_ptr in _cancel_thread!'; - var pthread = PThread.pthreads[pthread_ptr]; - pthread.worker.postMessage({ 'cmd': 'cancel' }); - } - Module["__cancel_thread"] = __cancel_thread; - - function __cleanup_thread(pthread_ptr) { - if (ENVIRONMENT_IS_PTHREAD) throw 'Internal Error! _cleanup_thread() can only ever be called from main application thread!'; - if (!pthread_ptr) throw 'Internal Error! Null pthread_ptr in _cleanup_thread!'; - HEAP32[(((pthread_ptr)+(24))>>2)]=0; - var pthread = PThread.pthreads[pthread_ptr]; - if (pthread) { - var worker = pthread.worker; - PThread.returnWorkerToPool(worker); - } - } - Module["__cleanup_thread"] = __cleanup_thread;var PThread={MAIN_THREAD_ID:1,mainThreadInfo:{schedPolicy:0,schedPrio:0},preallocatedWorkers:[],unusedWorkers:[],runningWorkers:[],initRuntime:function() { - // Pass the thread address inside the asm.js scope to store it for fast access that avoids the need for a FFI out. - // Global constructors trying to access this value will read the wrong value, but that is UB anyway. - __register_pthread_ptr(PThread.mainThreadBlock, /*isMainBrowserThread=*/!ENVIRONMENT_IS_WORKER, /*isMainRuntimeThread=*/1); - _emscripten_register_main_browser_thread_id(PThread.mainThreadBlock); - },initMainThreadBlock:function() { - if (ENVIRONMENT_IS_PTHREAD) return undefined; - - - PThread.mainThreadBlock = 12595120; - - for (var i = 0; i < 244/4; ++i) HEAPU32[PThread.mainThreadBlock/4+i] = 0; - - // The pthread struct has a field that points to itself - this is used as a magic ID to detect whether the pthread_t - // structure is 'alive'. - HEAP32[(((PThread.mainThreadBlock)+(24))>>2)]=PThread.mainThreadBlock; - - // pthread struct robust_list head should point to itself. - var headPtr = PThread.mainThreadBlock + 168; - HEAP32[((headPtr)>>2)]=headPtr; - - // Allocate memory for thread-local storage. - var tlsMemory = 12595376; - for (var i = 0; i < 128; ++i) HEAPU32[tlsMemory/4+i] = 0; - Atomics.store(HEAPU32, (PThread.mainThreadBlock + 116 ) >> 2, tlsMemory); // Init thread-local-storage memory array. - Atomics.store(HEAPU32, (PThread.mainThreadBlock + 52 ) >> 2, PThread.mainThreadBlock); // Main thread ID. - Atomics.store(HEAPU32, (PThread.mainThreadBlock + 56 ) >> 2, PROCINFO.pid); // Process ID. - - },initWorker:function() { - },pthreads:{},exitHandlers:null,setThreadStatus:function() {},runExitHandlers:function() { - if (PThread.exitHandlers !== null) { - while (PThread.exitHandlers.length > 0) { - PThread.exitHandlers.pop()(); - } - PThread.exitHandlers = null; - } - - // Call into the musl function that runs destructors of all thread-specific data. - if (ENVIRONMENT_IS_PTHREAD && threadInfoStruct) ___pthread_tsd_run_dtors(); - },threadExit:function(exitCode) { - var tb = _pthread_self(); - if (tb) { // If we haven't yet exited? - Atomics.store(HEAPU32, (tb + 4 ) >> 2, exitCode); - // When we publish this, the main thread is free to deallocate the thread object and we are done. - // Therefore set threadInfoStruct = 0; above to 'release' the object in this worker thread. - Atomics.store(HEAPU32, (tb + 0 ) >> 2, 1); - - // Disable all cancellation so that executing the cleanup handlers won't trigger another JS - // canceled exception to be thrown. - Atomics.store(HEAPU32, (tb + 72 ) >> 2, 1/*PTHREAD_CANCEL_DISABLE*/); - Atomics.store(HEAPU32, (tb + 76 ) >> 2, 0/*PTHREAD_CANCEL_DEFERRED*/); - PThread.runExitHandlers(); - - _emscripten_futex_wake(tb + 0, 2147483647); - __register_pthread_ptr(0, 0, 0); // Unregister the thread block also inside the asm.js scope. - threadInfoStruct = 0; - if (ENVIRONMENT_IS_PTHREAD) { - // Note: in theory we would like to return any offscreen canvases back to the main thread, - // but if we ever fetched a rendering context for them that would not be valid, so we don't try. - postMessage({ 'cmd': 'exit' }); - } - } - },threadCancel:function() { - PThread.runExitHandlers(); - Atomics.store(HEAPU32, (threadInfoStruct + 4 ) >> 2, -1/*PTHREAD_CANCELED*/); - Atomics.store(HEAPU32, (threadInfoStruct + 0 ) >> 2, 1); // Mark the thread as no longer running. - _emscripten_futex_wake(threadInfoStruct + 0, 2147483647); // wake all threads - threadInfoStruct = selfThreadId = 0; // Not hosting a pthread anymore in this worker, reset the info structures to null. - __register_pthread_ptr(0, 0, 0); // Unregister the thread block also inside the asm.js scope. - postMessage({ 'cmd': 'cancelDone' }); - },terminateAllThreads:function() { - for (var t in PThread.pthreads) { - var pthread = PThread.pthreads[t]; - if (pthread && pthread.worker) { - PThread.returnWorkerToPool(pthread.worker); - } - } - PThread.pthreads = {}; - - for (var i = 0; i < PThread.preallocatedWorkers.length; ++i) { - var worker = PThread.preallocatedWorkers[i]; - assert(!worker.pthread); // This Worker should not be hosting a pthread at this time. - worker.terminate(); - } - PThread.preallocatedWorkers = []; - - for (var i = 0; i < PThread.unusedWorkers.length; ++i) { - var worker = PThread.unusedWorkers[i]; - assert(!worker.pthread); // This Worker should not be hosting a pthread at this time. - worker.terminate(); - } - PThread.unusedWorkers = []; - - for (var i = 0; i < PThread.runningWorkers.length; ++i) { - var worker = PThread.runningWorkers[i]; - var pthread = worker.pthread; - assert(pthread, 'This Worker should have a pthread it is executing'); - PThread.freeThreadData(pthread); - worker.terminate(); - } - PThread.runningWorkers = []; - },freeThreadData:function(pthread) { - if (!pthread) return; - if (pthread.threadInfoStruct) { - var tlsMemory = HEAP32[(((pthread.threadInfoStruct)+(116))>>2)]; - HEAP32[(((pthread.threadInfoStruct)+(116))>>2)]=0; - _free(tlsMemory); - _free(pthread.threadInfoStruct); - } - pthread.threadInfoStruct = 0; - if (pthread.allocatedOwnStack && pthread.stackBase) _free(pthread.stackBase); - pthread.stackBase = 0; - if (pthread.worker) pthread.worker.pthread = null; - },returnWorkerToPool:function(worker) { - delete PThread.pthreads[worker.pthread.thread]; - //Note: worker is intentionally not terminated so the pool can dynamically grow. - PThread.unusedWorkers.push(worker); - PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1); // Not a running Worker anymore - PThread.freeThreadData(worker.pthread); - worker.pthread = undefined; // Detach the worker from the pthread object, and return it to the worker pool as an unused worker. - },receiveObjectTransfer:function(data) { - },allocateUnusedWorkers:function(numWorkers, onFinishedLoading) { - if (typeof SharedArrayBuffer === 'undefined') return; // No multithreading support, no-op. - - var workers = []; - - var numWorkersToCreate = numWorkers; - if (PThread.preallocatedWorkers.length > 0) { - var workersUsed = Math.min(PThread.preallocatedWorkers.length, numWorkers); - workers = workers.concat(PThread.preallocatedWorkers.splice(0, workersUsed)); - numWorkersToCreate -= workersUsed; - } - if (numWorkersToCreate > 0) { - workers = workers.concat(PThread.createNewWorkers(numWorkersToCreate)); - } - - // Add the listeners. - PThread.attachListenerToWorkers(workers, onFinishedLoading); - - // Load the wasm module into the worker. - for (var i = 0; i < numWorkers; ++i) { - var worker = workers[i]; - - - // Ask the new worker to load up the Emscripten-compiled page. This is a heavy operation. - worker.postMessage({ - 'cmd': 'load', - // If the application main .js file was loaded from a Blob, then it is not possible - // to access the URL of the current script that could be passed to a Web Worker so that - // it could load up the same file. In that case, developer must either deliver the Blob - // object in Module['mainScriptUrlOrBlob'], or a URL to it, so that pthread Workers can - // independently load up the same main application file. - 'urlOrBlob': Module['mainScriptUrlOrBlob'] || _scriptDir, - 'wasmMemory': wasmMemory, - 'wasmModule': wasmModule, - 'DYNAMIC_BASE': DYNAMIC_BASE, - 'DYNAMICTOP_PTR': DYNAMICTOP_PTR - }); - PThread.unusedWorkers.push(worker); - } - },attachListenerToWorkers:function(workers, onFinishedLoading) { - var numWorkersLoaded = 0; - var numWorkers = workers.length; - for (var i = 0; i < numWorkers; ++i) { - var worker = workers[i]; - (function(worker) { - worker.onmessage = function(e) { - var d = e['data']; - var cmd = d['cmd']; - // Sometimes we need to backproxy events to the calling thread (e.g. HTML5 DOM events handlers such as emscripten_set_mousemove_callback()), so keep track in a globally accessible variable about the thread that initiated the proxying. - if (worker.pthread) PThread.currentProxiedOperationCallerThread = worker.pthread.threadInfoStruct; - - // If this message is intended to a recipient that is not the main thread, forward it to the target thread. - if (d['targetThread'] && d['targetThread'] != _pthread_self()) { - var thread = PThread.pthreads[d.targetThread]; - if (thread) { - thread.worker.postMessage(e.data, d['transferList']); - } else { - console.error('Internal error! Worker sent a message "' + cmd + '" to target pthread ' + d['targetThread'] + ', but that thread no longer exists!'); - } - PThread.currentProxiedOperationCallerThread = undefined; - return; - } - - if (cmd === 'processQueuedMainThreadWork') { - // TODO: Must post message to main Emscripten thread in PROXY_TO_WORKER mode. - _emscripten_main_thread_process_queued_calls(); - } else if (cmd === 'spawnThread') { - __spawn_thread(e.data); - } else if (cmd === 'cleanupThread') { - __cleanup_thread(d['thread']); - } else if (cmd === 'killThread') { - __kill_thread(d['thread']); - } else if (cmd === 'cancelThread') { - __cancel_thread(d['thread']); - } else if (cmd === 'loaded') { - worker.loaded = true; - // If this Worker is already pending to start running a thread, launch the thread now - if (worker.runPthread) { - worker.runPthread(); - delete worker.runPthread; - } - ++numWorkersLoaded; - if (numWorkersLoaded === numWorkers && onFinishedLoading) { - onFinishedLoading(); - } - } else if (cmd === 'print') { - out('Thread ' + d['threadId'] + ': ' + d['text']); - } else if (cmd === 'printErr') { - err('Thread ' + d['threadId'] + ': ' + d['text']); - } else if (cmd === 'alert') { - alert('Thread ' + d['threadId'] + ': ' + d['text']); - } else if (cmd === 'exit') { - var detached = worker.pthread && Atomics.load(HEAPU32, (worker.pthread.thread + 80) >> 2); - if (detached) { - PThread.returnWorkerToPool(worker); - } - } else if (cmd === 'exitProcess') { - // A pthread has requested to exit the whole application process (runtime). - noExitRuntime = false; - try { - exit(d['returnCode']); - } catch (e) { - if (e instanceof ExitStatus) return; - throw e; - } - } else if (cmd === 'cancelDone') { - PThread.returnWorkerToPool(worker); - } else if (cmd === 'objectTransfer') { - PThread.receiveObjectTransfer(e.data); - } else if (e.data.target === 'setimmediate') { - worker.postMessage(e.data); // Worker wants to postMessage() to itself to implement setImmediate() emulation. - } else { - err("worker sent an unknown command " + cmd); - } - PThread.currentProxiedOperationCallerThread = undefined; - }; - - worker.onerror = function(e) { - err('pthread sent an error! ' + e.filename + ':' + e.lineno + ': ' + e.message); - }; - - if (ENVIRONMENT_HAS_NODE) { - worker.on('message', function(data) { - worker.onmessage({ data: data }); - }); - worker.on('error', function(data) { - worker.onerror(data); - }); - worker.on('exit', function(data) { - console.log('worker exited - TODO: update the worker queue?'); - }); - } - }(worker)); - } // for each worker - },createNewWorkers:function(numWorkers) { - // Creates new workers with the discovered pthread worker file. - if (typeof SharedArrayBuffer === 'undefined') return []; // No multithreading support, no-op. - var pthreadMainJs = "x2t.worker.js"; - // Allow HTML module to configure the location where the 'worker.js' file will be loaded from, - // via Module.locateFile() function. If not specified, then the default URL 'worker.js' relative - // to the main html file is loaded. - pthreadMainJs = locateFile(pthreadMainJs); - var newWorkers = []; - for (var i = 0; i < numWorkers; ++i) { - newWorkers.push(new Worker(pthreadMainJs)); - } - return newWorkers; - },getNewWorker:function() { - if (PThread.unusedWorkers.length == 0) PThread.allocateUnusedWorkers(1); - if (PThread.unusedWorkers.length > 0) return PThread.unusedWorkers.pop(); - else return null; - },busySpinWait:function(msecs) { - var t = performance.now() + msecs; - while(performance.now() < t) { - ; - } - }}; - Module["PThread"] = PThread;function ___call_main(argc, argv) { - var returnCode = _main(argc, argv); - if (!noExitRuntime) postMessage({ 'cmd': 'exitProcess', 'returnCode': returnCode }); - return returnCode; - } - Module["___call_main"] = ___call_main; - - - - function _emscripten_get_now() { abort() } - Module["_emscripten_get_now"] = _emscripten_get_now; - - function _emscripten_get_now_is_monotonic() { - // return whether emscripten_get_now is guaranteed monotonic; the Date.now - // implementation is not :( - return (0 - || ENVIRONMENT_IS_NODE - || (typeof dateNow !== 'undefined') - || (typeof performance === 'object' && performance && typeof performance['now'] === 'function') - ); + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE; } - Module["_emscripten_get_now_is_monotonic"] = _emscripten_get_now_is_monotonic; - - function ___setErrNo(value) { - if (Module['___errno_location']) HEAP32[((Module['___errno_location']())>>2)]=value; - else err('failed to set errno from JS'); - return value; - } - Module["___setErrNo"] = ___setErrNo;function _clock_gettime(clk_id, tp) { - // int clock_gettime(clockid_t clk_id, struct timespec *tp); - var now; - if (clk_id === 0) { - now = Date.now(); - } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { - now = _emscripten_get_now(); - } else { - ___setErrNo(28); - return -1; - } - HEAP32[((tp)>>2)]=(now/1000)|0; // seconds - HEAP32[(((tp)+(4))>>2)]=((now % 1000)*1000*1000)|0; // nanoseconds - return 0; - } - Module["_clock_gettime"] = _clock_gettime;function ___clock_gettime(a0,a1 - ) { - return _clock_gettime(a0,a1); + FS.trackingDelegate["onOpenFile"](path, trackingFlags); + } + } catch (e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message); } - Module["___clock_gettime"] = ___clock_gettime; - - function ___cxa_allocate_exception(size) { - return _malloc(size); - } - Module["___cxa_allocate_exception"] = ___cxa_allocate_exception; - - - function _atexit(func, arg) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(1, 1, func, arg); - - warnOnce('atexit() called, but EXIT_RUNTIME is not set, so atexits() will not be called. set EXIT_RUNTIME to 1 (see the FAQ)'); - __ATEXIT__.unshift({ func: func, arg: arg }); - } - - Module["_atexit"] = _atexit;function ___cxa_atexit( - ) { - return _atexit.apply(null, arguments) + return stream; + }), + close: (function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); } - Module["___cxa_atexit"] = ___cxa_atexit; - - - var ___exception_caught= []; - Module["___exception_caught"] = ___exception_caught; - - - var ___exception_infos={}; - Module["___exception_infos"] = ___exception_infos;function ___exception_deAdjust(adjusted) { - if (!adjusted || ___exception_infos[adjusted]) return adjusted; - for (var key in ___exception_infos) { - var ptr = +key; // the iteration key is a string, and if we throw this, it must be an integer as that is what we look for - var adj = ___exception_infos[ptr].adjusted; - var len = adj.length; - for (var i = 0; i < len; i++) { - if (adj[i] === adjusted) { - return ptr; - } - } - } - return adjusted; - } - Module["___exception_deAdjust"] = ___exception_deAdjust; - - var ___exception_last=0; - Module["___exception_last"] = ___exception_last;function ___cxa_rethrow() { - var ptr = ___exception_caught.pop(); - ptr = ___exception_deAdjust(ptr); - if (!___exception_infos[ptr].rethrown) { - // Only pop if the corresponding push was through rethrow_primary_exception - ___exception_caught.push(ptr); - ___exception_infos[ptr].rethrown = true; - } - ___exception_last = ptr; - throw ptr + " - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."; - } - Module["___cxa_rethrow"] = ___cxa_rethrow; - - function ___cxa_throw(ptr, type, destructor) { - ___exception_infos[ptr] = { - ptr: ptr, - adjusted: [ptr], - type: type, - destructor: destructor, - refcount: 0, - caught: false, - rethrown: false - }; - ___exception_last = ptr; - if (!("uncaught_exception" in __ZSt18uncaught_exceptionv)) { - __ZSt18uncaught_exceptionv.uncaught_exceptions = 1; - } else { - __ZSt18uncaught_exceptionv.uncaught_exceptions++; - } - throw ptr + " - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."; - } - Module["___cxa_throw"] = ___cxa_throw; - - function ___lock() {} - Module["___lock"] = ___lock; - - function ___map_file(pathname, size) { - ___setErrNo(63); - return -1; - } - Module["___map_file"] = ___map_file; - - - - var PATH={splitPath:function(filename) { - var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; - return splitPathRe.exec(filename).slice(1); - },normalizeArray:function(parts, allowAboveRoot) { - // if the path tries to go above the root, `up` ends up > 0 - var up = 0; - for (var i = parts.length - 1; i >= 0; i--) { - var last = parts[i]; - if (last === '.') { - parts.splice(i, 1); - } else if (last === '..') { - parts.splice(i, 1); - up++; - } else if (up) { - parts.splice(i, 1); - up--; - } - } - // if the path is allowed to go above the root, restore leading ..s - if (allowAboveRoot) { - for (; up; up--) { - parts.unshift('..'); - } - } - return parts; - },normalize:function(path) { - var isAbsolute = path.charAt(0) === '/', - trailingSlash = path.substr(-1) === '/'; - // Normalize the path - path = PATH.normalizeArray(path.split('/').filter(function(p) { - return !!p; - }), !isAbsolute).join('/'); - if (!path && !isAbsolute) { - path = '.'; - } - if (path && trailingSlash) { - path += '/'; - } - return (isAbsolute ? '/' : '') + path; - },dirname:function(path) { - var result = PATH.splitPath(path), - root = result[0], - dir = result[1]; - if (!root && !dir) { - // No dirname whatsoever - return '.'; - } - if (dir) { - // It has a dirname, strip trailing slash - dir = dir.substr(0, dir.length - 1); - } - return root + dir; - },basename:function(path) { - // EMSCRIPTEN return '/'' for '/', not an empty string - if (path === '/') return '/'; - var lastSlash = path.lastIndexOf('/'); - if (lastSlash === -1) return path; - return path.substr(lastSlash+1); - },extname:function(path) { - return PATH.splitPath(path)[3]; - },join:function() { - var paths = Array.prototype.slice.call(arguments, 0); - return PATH.normalize(paths.join('/')); - },join2:function(l, r) { - return PATH.normalize(l + '/' + r); - }}; - Module["PATH"] = PATH; - - - var PATH_FS={resolve:function() { - var resolvedPath = '', - resolvedAbsolute = false; - for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { - var path = (i >= 0) ? arguments[i] : FS.cwd(); - // Skip empty and invalid entries - if (typeof path !== 'string') { - throw new TypeError('Arguments to path.resolve must be strings'); - } else if (!path) { - return ''; // an invalid portion invalidates the whole thing - } - resolvedPath = path + '/' + resolvedPath; - resolvedAbsolute = path.charAt(0) === '/'; - } - // At this point the path should be resolved to a full absolute path, but - // handle relative paths to be safe (might happen when process.cwd() fails) - resolvedPath = PATH.normalizeArray(resolvedPath.split('/').filter(function(p) { - return !!p; - }), !resolvedAbsolute).join('/'); - return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; - },relative:function(from, to) { - from = PATH_FS.resolve(from).substr(1); - to = PATH_FS.resolve(to).substr(1); - function trim(arr) { - var start = 0; - for (; start < arr.length; start++) { - if (arr[start] !== '') break; - } - var end = arr.length - 1; - for (; end >= 0; end--) { - if (arr[end] !== '') break; - } - if (start > end) return []; - return arr.slice(start, end - start + 1); - } - var fromParts = trim(from.split('/')); - var toParts = trim(to.split('/')); - var length = Math.min(fromParts.length, toParts.length); - var samePartsLength = length; - for (var i = 0; i < length; i++) { - if (fromParts[i] !== toParts[i]) { - samePartsLength = i; - break; - } - } - var outputParts = []; - for (var i = samePartsLength; i < fromParts.length; i++) { - outputParts.push('..'); - } - outputParts = outputParts.concat(toParts.slice(samePartsLength)); - return outputParts.join('/'); - }}; - Module["PATH_FS"] = PATH_FS; - - var TTY={ttys:[],init:function () { - // https://github.com/emscripten-core/emscripten/pull/1555 - // if (ENVIRONMENT_IS_NODE) { - // // currently, FS.init does not distinguish if process.stdin is a file or TTY - // // device, it always assumes it's a TTY device. because of this, we're forcing - // // process.stdin to UTF8 encoding to at least make stdin reading compatible - // // with text files until FS.init can be refactored. - // process['stdin']['setEncoding']('utf8'); - // } - },shutdown:function() { - // https://github.com/emscripten-core/emscripten/pull/1555 - // if (ENVIRONMENT_IS_NODE) { - // // inolen: any idea as to why node -e 'process.stdin.read()' wouldn't exit immediately (with process.stdin being a tty)? - // // isaacs: because now it's reading from the stream, you've expressed interest in it, so that read() kicks off a _read() which creates a ReadReq operation - // // inolen: I thought read() in that case was a synchronous operation that just grabbed some amount of buffered data if it exists? - // // isaacs: it is. but it also triggers a _read() call, which calls readStart() on the handle - // // isaacs: do process.stdin.pause() and i'd think it'd probably close the pending call - // process['stdin']['pause'](); - // } - },register:function(dev, ops) { - TTY.ttys[dev] = { input: [], output: [], ops: ops }; - FS.registerDevice(dev, TTY.stream_ops); - },stream_ops:{open:function(stream) { - var tty = TTY.ttys[stream.node.rdev]; - if (!tty) { - throw new FS.ErrnoError(43); - } - stream.tty = tty; - stream.seekable = false; - },close:function(stream) { - // flush any pending line data - stream.tty.ops.flush(stream.tty); - },flush:function(stream) { - stream.tty.ops.flush(stream.tty); - },read:function(stream, buffer, offset, length, pos /* ignored */) { - if (!stream.tty || !stream.tty.ops.get_char) { - throw new FS.ErrnoError(60); - } - var bytesRead = 0; - for (var i = 0; i < length; i++) { - var result; - try { - result = stream.tty.ops.get_char(stream.tty); - } catch (e) { - throw new FS.ErrnoError(29); - } - if (result === undefined && bytesRead === 0) { - throw new FS.ErrnoError(6); - } - if (result === null || result === undefined) break; - bytesRead++; - buffer[offset+i] = result; - } - if (bytesRead) { - stream.node.timestamp = Date.now(); - } - return bytesRead; - },write:function(stream, buffer, offset, length, pos) { - if (!stream.tty || !stream.tty.ops.put_char) { - throw new FS.ErrnoError(60); - } - try { - for (var i = 0; i < length; i++) { - stream.tty.ops.put_char(stream.tty, buffer[offset+i]); - } - } catch (e) { - throw new FS.ErrnoError(29); - } - if (length) { - stream.node.timestamp = Date.now(); - } - return i; - }},default_tty_ops:{get_char:function(tty) { - if (!tty.input.length) { - var result = null; - if (ENVIRONMENT_IS_NODE) { - // we will read data by chunks of BUFSIZE - var BUFSIZE = 256; - var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); - var bytesRead = 0; - - try { - bytesRead = nodeFS.readSync(process.stdin.fd, buf, 0, BUFSIZE, null); - } catch(e) { - // Cross-platform differences: on Windows, reading EOF throws an exception, but on other OSes, - // reading EOF returns 0. Uniformize behavior by treating the EOF exception to return 0. - if (e.toString().indexOf('EOF') != -1) bytesRead = 0; - else throw e; - } - - if (bytesRead > 0) { - result = buf.slice(0, bytesRead).toString('utf-8'); - } else { - result = null; - } - } else - if (typeof window != 'undefined' && - typeof window.prompt == 'function') { - // Browser. - result = window.prompt('Input: '); // returns null on cancel - if (result !== null) { - result += '\n'; - } - } else if (typeof readline == 'function') { - // Command line. - result = readline(); - if (result !== null) { - result += '\n'; - } - } - if (!result) { - return null; - } - tty.input = intArrayFromString(result, true); - } - return tty.input.shift(); - },put_char:function(tty, val) { - if (val === null || val === 10) { - out(UTF8ArrayToString(tty.output, 0)); - tty.output = []; - } else { - if (val != 0) tty.output.push(val); // val == 0 would cut text output off in the middle. - } - },flush:function(tty) { - if (tty.output && tty.output.length > 0) { - out(UTF8ArrayToString(tty.output, 0)); - tty.output = []; - } - }},default_tty1_ops:{put_char:function(tty, val) { - if (val === null || val === 10) { - err(UTF8ArrayToString(tty.output, 0)); - tty.output = []; - } else { - if (val != 0) tty.output.push(val); - } - },flush:function(tty) { - if (tty.output && tty.output.length > 0) { - err(UTF8ArrayToString(tty.output, 0)); - tty.output = []; - } - }}}; - Module["TTY"] = TTY; - - var MEMFS={ops_table:null,mount:function(mount) { - return MEMFS.createNode(null, '/', 16384 | 511 /* 0777 */, 0); - },createNode:function(parent, name, mode, dev) { - if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { - // no supported - throw new FS.ErrnoError(63); - } - if (!MEMFS.ops_table) { - MEMFS.ops_table = { - dir: { - node: { - getattr: MEMFS.node_ops.getattr, - setattr: MEMFS.node_ops.setattr, - lookup: MEMFS.node_ops.lookup, - mknod: MEMFS.node_ops.mknod, - rename: MEMFS.node_ops.rename, - unlink: MEMFS.node_ops.unlink, - rmdir: MEMFS.node_ops.rmdir, - readdir: MEMFS.node_ops.readdir, - symlink: MEMFS.node_ops.symlink - }, - stream: { - llseek: MEMFS.stream_ops.llseek - } - }, - file: { - node: { - getattr: MEMFS.node_ops.getattr, - setattr: MEMFS.node_ops.setattr - }, - stream: { - llseek: MEMFS.stream_ops.llseek, - read: MEMFS.stream_ops.read, - write: MEMFS.stream_ops.write, - allocate: MEMFS.stream_ops.allocate, - mmap: MEMFS.stream_ops.mmap, - msync: MEMFS.stream_ops.msync - } - }, - link: { - node: { - getattr: MEMFS.node_ops.getattr, - setattr: MEMFS.node_ops.setattr, - readlink: MEMFS.node_ops.readlink - }, - stream: {} - }, - chrdev: { - node: { - getattr: MEMFS.node_ops.getattr, - setattr: MEMFS.node_ops.setattr - }, - stream: FS.chrdev_stream_ops - } - }; - } - var node = FS.createNode(parent, name, mode, dev); - if (FS.isDir(node.mode)) { - node.node_ops = MEMFS.ops_table.dir.node; - node.stream_ops = MEMFS.ops_table.dir.stream; - node.contents = {}; - } else if (FS.isFile(node.mode)) { - node.node_ops = MEMFS.ops_table.file.node; - node.stream_ops = MEMFS.ops_table.file.stream; - node.usedBytes = 0; // The actual number of bytes used in the typed array, as opposed to contents.length which gives the whole capacity. - // When the byte data of the file is populated, this will point to either a typed array, or a normal JS array. Typed arrays are preferred - // for performance, and used by default. However, typed arrays are not resizable like normal JS arrays are, so there is a small disk size - // penalty involved for appending file writes that continuously grow a file similar to std::vector capacity vs used -scheme. - node.contents = null; - } else if (FS.isLink(node.mode)) { - node.node_ops = MEMFS.ops_table.link.node; - node.stream_ops = MEMFS.ops_table.link.stream; - } else if (FS.isChrdev(node.mode)) { - node.node_ops = MEMFS.ops_table.chrdev.node; - node.stream_ops = MEMFS.ops_table.chrdev.stream; - } - node.timestamp = Date.now(); - // add the new node to the parent - if (parent) { - parent.contents[name] = node; - } - return node; - },getFileDataAsRegularArray:function(node) { - if (node.contents && node.contents.subarray) { - var arr = []; - for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); - return arr; // Returns a copy of the original data. - } - return node.contents; // No-op, the file contents are already in a JS array. Return as-is. - },getFileDataAsTypedArray:function(node) { - if (!node.contents) return new Uint8Array; - if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); // Make sure to not return excess unused bytes. - return new Uint8Array(node.contents); - },expandFileStorage:function(node, newCapacity) { - var prevCapacity = node.contents ? node.contents.length : 0; - if (prevCapacity >= newCapacity) return; // No need to expand, the storage was already large enough. - // Don't expand strictly to the given requested limit if it's only a very small increase, but instead geometrically grow capacity. - // For small filesizes (<1MB), perform size*2 geometric increase, but for large sizes, do a much more conservative size*1.125 increase to - // avoid overshooting the allocation cap by a very large margin. - var CAPACITY_DOUBLING_MAX = 1024 * 1024; - newCapacity = Math.max(newCapacity, (prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2.0 : 1.125)) | 0); - if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); // At minimum allocate 256b for each file when expanding. - var oldContents = node.contents; - node.contents = new Uint8Array(newCapacity); // Allocate new storage. - if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); // Copy old data over to the new storage. - return; - },resizeFileStorage:function(node, newSize) { - if (node.usedBytes == newSize) return; - if (newSize == 0) { - node.contents = null; // Fully decommit when requesting a resize to zero. - node.usedBytes = 0; - return; - } - if (!node.contents || node.contents.subarray) { // Resize a typed array if that is being used as the backing store. - var oldContents = node.contents; - node.contents = new Uint8Array(new ArrayBuffer(newSize)); // Allocate new storage. - if (oldContents) { - node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))); // Copy old data over to the new storage. - } - node.usedBytes = newSize; - return; - } - // Backing with a JS array. - if (!node.contents) node.contents = []; - if (node.contents.length > newSize) node.contents.length = newSize; - else while (node.contents.length < newSize) node.contents.push(0); - node.usedBytes = newSize; - },node_ops:{getattr:function(node) { - var attr = {}; - // device numbers reuse inode numbers. - attr.dev = FS.isChrdev(node.mode) ? node.id : 1; - attr.ino = node.id; - attr.mode = node.mode; - attr.nlink = 1; - attr.uid = 0; - attr.gid = 0; - attr.rdev = node.rdev; - if (FS.isDir(node.mode)) { - attr.size = 4096; - } else if (FS.isFile(node.mode)) { - attr.size = node.usedBytes; - } else if (FS.isLink(node.mode)) { - attr.size = node.link.length; - } else { - attr.size = 0; - } - attr.atime = new Date(node.timestamp); - attr.mtime = new Date(node.timestamp); - attr.ctime = new Date(node.timestamp); - // NOTE: In our implementation, st_blocks = Math.ceil(st_size/st_blksize), - // but this is not required by the standard. - attr.blksize = 4096; - attr.blocks = Math.ceil(attr.size / attr.blksize); - return attr; - },setattr:function(node, attr) { - if (attr.mode !== undefined) { - node.mode = attr.mode; - } - if (attr.timestamp !== undefined) { - node.timestamp = attr.timestamp; - } - if (attr.size !== undefined) { - MEMFS.resizeFileStorage(node, attr.size); - } - },lookup:function(parent, name) { - throw FS.genericErrors[44]; - },mknod:function(parent, name, mode, dev) { - return MEMFS.createNode(parent, name, mode, dev); - },rename:function(old_node, new_dir, new_name) { - // if we're overwriting a directory at new_name, make sure it's empty. - if (FS.isDir(old_node.mode)) { - var new_node; - try { - new_node = FS.lookupNode(new_dir, new_name); - } catch (e) { - } - if (new_node) { - for (var i in new_node.contents) { - throw new FS.ErrnoError(55); - } - } - } - // do the internal rewiring - delete old_node.parent.contents[old_node.name]; - old_node.name = new_name; - new_dir.contents[new_name] = old_node; - old_node.parent = new_dir; - },unlink:function(parent, name) { - delete parent.contents[name]; - },rmdir:function(parent, name) { - var node = FS.lookupNode(parent, name); - for (var i in node.contents) { - throw new FS.ErrnoError(55); - } - delete parent.contents[name]; - },readdir:function(node) { - var entries = ['.', '..']; - for (var key in node.contents) { - if (!node.contents.hasOwnProperty(key)) { - continue; - } - entries.push(key); - } - return entries; - },symlink:function(parent, newname, oldpath) { - var node = MEMFS.createNode(parent, newname, 511 /* 0777 */ | 40960, 0); - node.link = oldpath; - return node; - },readlink:function(node) { - if (!FS.isLink(node.mode)) { - throw new FS.ErrnoError(28); - } - return node.link; - }},stream_ops:{read:function(stream, buffer, offset, length, position) { - var contents = stream.node.contents; - if (position >= stream.node.usedBytes) return 0; - var size = Math.min(stream.node.usedBytes - position, length); - assert(size >= 0); - if (size > 8 && contents.subarray) { // non-trivial, and typed array - buffer.set(contents.subarray(position, position + size), offset); - } else { - for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i]; - } - return size; - },write:function(stream, buffer, offset, length, position, canOwn) { - // The data buffer should be a typed array view - assert(!(buffer instanceof ArrayBuffer)); - - if (!length) return 0; - var node = stream.node; - node.timestamp = Date.now(); - - if (buffer.subarray && (!node.contents || node.contents.subarray)) { // This write is from a typed array to a typed array? - if (canOwn) { - assert(position === 0, 'canOwn must imply no weird position inside the file'); - node.contents = buffer.subarray(offset, offset + length); - node.usedBytes = length; - return length; - } else if (node.usedBytes === 0 && position === 0) { // If this is a simple first write to an empty file, do a fast set since we don't need to care about old data. - node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); - node.usedBytes = length; - return length; - } else if (position + length <= node.usedBytes) { // Writing to an already allocated and used subrange of the file? - node.contents.set(buffer.subarray(offset, offset + length), position); - return length; - } - } - - // Appending to an existing file and we need to reallocate, or source data did not come as a typed array. - MEMFS.expandFileStorage(node, position+length); - if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); // Use typed array write if available. - else { - for (var i = 0; i < length; i++) { - node.contents[position + i] = buffer[offset + i]; // Or fall back to manual write if not. - } - } - node.usedBytes = Math.max(node.usedBytes, position+length); - return length; - },llseek:function(stream, offset, whence) { - var position = offset; - if (whence === 1) { - position += stream.position; - } else if (whence === 2) { - if (FS.isFile(stream.node.mode)) { - position += stream.node.usedBytes; - } - } - if (position < 0) { - throw new FS.ErrnoError(28); - } - return position; - },allocate:function(stream, offset, length) { - MEMFS.expandFileStorage(stream.node, offset + length); - stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length); - },mmap:function(stream, buffer, offset, length, position, prot, flags) { - // The data buffer should be a typed array view - assert(!(buffer instanceof ArrayBuffer)); - if (!FS.isFile(stream.node.mode)) { - throw new FS.ErrnoError(43); - } - var ptr; - var allocated; - var contents = stream.node.contents; - // Only make a new copy when MAP_PRIVATE is specified. - if ( !(flags & 2) && - contents.buffer === buffer.buffer ) { - // We can't emulate MAP_SHARED when the file is not backed by the buffer - // we're mapping to (e.g. the HEAP buffer). - allocated = false; - ptr = contents.byteOffset; - } else { - // Try to avoid unnecessary slices. - if (position > 0 || position + length < stream.node.usedBytes) { - if (contents.subarray) { - contents = contents.subarray(position, position + length); - } else { - contents = Array.prototype.slice.call(contents, position, position + length); - } - } - allocated = true; - // malloc() can lead to growing the heap. If targeting the heap, we need to - // re-acquire the heap buffer object in case growth had occurred. - var fromHeap = (buffer.buffer == HEAP8.buffer); - ptr = _malloc(length); - if (!ptr) { - throw new FS.ErrnoError(48); - } - (fromHeap ? HEAP8 : buffer).set(contents, ptr); - } - return { ptr: ptr, allocated: allocated }; - },msync:function(stream, buffer, offset, length, mmapFlags) { - if (!FS.isFile(stream.node.mode)) { - throw new FS.ErrnoError(43); - } - if (mmapFlags & 2) { - // MAP_PRIVATE calls need not to be synced back to underlying fs - return 0; - } - - var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); - // should we check if bytesWritten and length are the same? - return 0; - }}}; - Module["MEMFS"] = MEMFS; - - var NODEFS={isWindows:false,staticInit:function() { - NODEFS.isWindows = !!process.platform.match(/^win/); - var flags = process["binding"]("constants"); - // Node.js 4 compatibility: it has no namespaces for constants - if (flags["fs"]) { - flags = flags["fs"]; - } - NODEFS.flagsForNodeMap = { - "1024": flags["O_APPEND"], - "64": flags["O_CREAT"], - "128": flags["O_EXCL"], - "0": flags["O_RDONLY"], - "2": flags["O_RDWR"], - "4096": flags["O_SYNC"], - "512": flags["O_TRUNC"], - "1": flags["O_WRONLY"] - }; - },bufferFrom:function (arrayBuffer) { - // Node.js < 4.5 compatibility: Buffer.from does not support ArrayBuffer - // Buffer.from before 4.5 was just a method inherited from Uint8Array - // Buffer.alloc has been added with Buffer.from together, so check it instead - return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer); - },convertNodeCode:function(e) { - var code = e.code; - assert(code in ERRNO_CODES); - return ERRNO_CODES[code]; - },mount:function (mount) { - assert(ENVIRONMENT_HAS_NODE); - return NODEFS.createNode(null, '/', NODEFS.getMode(mount.opts.root), 0); - },createNode:function (parent, name, mode, dev) { - if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { - throw new FS.ErrnoError(28); - } - var node = FS.createNode(parent, name, mode); - node.node_ops = NODEFS.node_ops; - node.stream_ops = NODEFS.stream_ops; - return node; - },getMode:function (path) { - var stat; - try { - stat = fs.lstatSync(path); - if (NODEFS.isWindows) { - // Node.js on Windows never represents permission bit 'x', so - // propagate read bits to execute bits - stat.mode = stat.mode | ((stat.mode & 292) >> 2); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - return stat.mode; - },realPath:function (node) { - var parts = []; - while (node.parent !== node) { - parts.push(node.name); - node = node.parent; - } - parts.push(node.mount.opts.root); - parts.reverse(); - return PATH.join.apply(null, parts); - },flagsForNode:function(flags) { - flags &= ~0x200000 /*O_PATH*/; // Ignore this flag from musl, otherwise node.js fails to open the file. - flags &= ~0x800 /*O_NONBLOCK*/; // Ignore this flag from musl, otherwise node.js fails to open the file. - flags &= ~0x8000 /*O_LARGEFILE*/; // Ignore this flag from musl, otherwise node.js fails to open the file. - flags &= ~0x80000 /*O_CLOEXEC*/; // Some applications may pass it; it makes no sense for a single process. - var newFlags = 0; - for (var k in NODEFS.flagsForNodeMap) { - if (flags & k) { - newFlags |= NODEFS.flagsForNodeMap[k]; - flags ^= k; - } - } - - if (!flags) { - return newFlags; - } else { - throw new FS.ErrnoError(28); - } - },node_ops:{getattr:function(node) { - var path = NODEFS.realPath(node); - var stat; - try { - stat = fs.lstatSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - // node.js v0.10.20 doesn't report blksize and blocks on Windows. Fake them with default blksize of 4096. - // See http://support.microsoft.com/kb/140365 - if (NODEFS.isWindows && !stat.blksize) { - stat.blksize = 4096; - } - if (NODEFS.isWindows && !stat.blocks) { - stat.blocks = (stat.size+stat.blksize-1)/stat.blksize|0; - } - return { - dev: stat.dev, - ino: stat.ino, - mode: stat.mode, - nlink: stat.nlink, - uid: stat.uid, - gid: stat.gid, - rdev: stat.rdev, - size: stat.size, - atime: stat.atime, - mtime: stat.mtime, - ctime: stat.ctime, - blksize: stat.blksize, - blocks: stat.blocks - }; - },setattr:function(node, attr) { - var path = NODEFS.realPath(node); - try { - if (attr.mode !== undefined) { - fs.chmodSync(path, attr.mode); - // update the common node structure mode as well - node.mode = attr.mode; - } - if (attr.timestamp !== undefined) { - var date = new Date(attr.timestamp); - fs.utimesSync(path, date, date); - } - if (attr.size !== undefined) { - fs.truncateSync(path, attr.size); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },lookup:function (parent, name) { - var path = PATH.join2(NODEFS.realPath(parent), name); - var mode = NODEFS.getMode(path); - return NODEFS.createNode(parent, name, mode); - },mknod:function (parent, name, mode, dev) { - var node = NODEFS.createNode(parent, name, mode, dev); - // create the backing node for this in the fs root as well - var path = NODEFS.realPath(node); - try { - if (FS.isDir(node.mode)) { - fs.mkdirSync(path, node.mode); - } else { - fs.writeFileSync(path, '', { mode: node.mode }); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - return node; - },rename:function (oldNode, newDir, newName) { - var oldPath = NODEFS.realPath(oldNode); - var newPath = PATH.join2(NODEFS.realPath(newDir), newName); - try { - fs.renameSync(oldPath, newPath); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },unlink:function(parent, name) { - var path = PATH.join2(NODEFS.realPath(parent), name); - try { - fs.unlinkSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },rmdir:function(parent, name) { - var path = PATH.join2(NODEFS.realPath(parent), name); - try { - fs.rmdirSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },readdir:function(node) { - var path = NODEFS.realPath(node); - try { - return fs.readdirSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },symlink:function(parent, newName, oldPath) { - var newPath = PATH.join2(NODEFS.realPath(parent), newName); - try { - fs.symlinkSync(oldPath, newPath); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },readlink:function(node) { - var path = NODEFS.realPath(node); - try { - path = fs.readlinkSync(path); - path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); - return path; - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - }},stream_ops:{open:function (stream) { - var path = NODEFS.realPath(stream.node); - try { - if (FS.isFile(stream.node.mode)) { - stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },close:function (stream) { - try { - if (FS.isFile(stream.node.mode) && stream.nfd) { - fs.closeSync(stream.nfd); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },read:function (stream, buffer, offset, length, position) { - // Node.js < 6 compatibility: node errors on 0 length reads - if (length === 0) return 0; - try { - return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position); - } catch (e) { - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },write:function (stream, buffer, offset, length, position) { - try { - return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position); - } catch (e) { - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - },llseek:function (stream, offset, whence) { - var position = offset; - if (whence === 1) { - position += stream.position; - } else if (whence === 2) { - if (FS.isFile(stream.node.mode)) { - try { - var stat = fs.fstatSync(stream.nfd); - position += stat.size; - } catch (e) { - throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); - } - } - } - - if (position < 0) { - throw new FS.ErrnoError(28); - } - - return position; - }}}; - Module["NODEFS"] = NODEFS; - - var ERRNO_MESSAGES={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"}; - Module["ERRNO_MESSAGES"] = ERRNO_MESSAGES;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e) { - if (!(e instanceof FS.ErrnoError)) throw e + ' : ' + stackTrace(); - return ___setErrNo(e.errno); - },lookupPath:function(path, opts) { - path = PATH_FS.resolve(FS.cwd(), path); - opts = opts || {}; - - if (!path) return { path: '', node: null }; - - var defaults = { - follow_mount: true, - recurse_count: 0 - }; - for (var key in defaults) { - if (opts[key] === undefined) { - opts[key] = defaults[key]; - } - } - - if (opts.recurse_count > 8) { // max recursive lookup of 8 - throw new FS.ErrnoError(32); - } - - // split the path - var parts = PATH.normalizeArray(path.split('/').filter(function(p) { - return !!p; - }), false); - - // start at the root - var current = FS.root; - var current_path = '/'; - - for (var i = 0; i < parts.length; i++) { - var islast = (i === parts.length-1); - if (islast && opts.parent) { - // stop resolving - break; - } - - current = FS.lookupNode(current, parts[i]); - current_path = PATH.join2(current_path, parts[i]); - - // jump to the mount's root node if this is a mountpoint - if (FS.isMountpoint(current)) { - if (!islast || (islast && opts.follow_mount)) { - current = current.mounted.root; - } - } - - // by default, lookupPath will not follow a symlink if it is the final path component. - // setting opts.follow = true will override this behavior. - if (!islast || opts.follow) { - var count = 0; - while (FS.isLink(current.mode)) { - var link = FS.readlink(current_path); - current_path = PATH_FS.resolve(PATH.dirname(current_path), link); - - var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count }); - current = lookup.node; - - if (count++ > 40) { // limit max consecutive symlinks to 40 (SYMLOOP_MAX). - throw new FS.ErrnoError(32); - } - } - } - } - - return { path: current_path, node: current }; - },getPath:function(node) { - var path; - while (true) { - if (FS.isRoot(node)) { - var mount = node.mount.mountpoint; - if (!path) return mount; - return mount[mount.length-1] !== '/' ? mount + '/' + path : mount + path; - } - path = path ? node.name + '/' + path : node.name; - node = node.parent; - } - },hashName:function(parentid, name) { - var hash = 0; - - - for (var i = 0; i < name.length; i++) { - hash = ((hash << 5) - hash + name.charCodeAt(i)) | 0; - } - return ((parentid + hash) >>> 0) % FS.nameTable.length; - },hashAddNode:function(node) { - var hash = FS.hashName(node.parent.id, node.name); - node.name_next = FS.nameTable[hash]; - FS.nameTable[hash] = node; - },hashRemoveNode:function(node) { - var hash = FS.hashName(node.parent.id, node.name); - if (FS.nameTable[hash] === node) { - FS.nameTable[hash] = node.name_next; - } else { - var current = FS.nameTable[hash]; - while (current) { - if (current.name_next === node) { - current.name_next = node.name_next; - break; - } - current = current.name_next; - } - } - },lookupNode:function(parent, name) { - var err = FS.mayLookup(parent); - if (err) { - throw new FS.ErrnoError(err, parent); - } - var hash = FS.hashName(parent.id, name); - for (var node = FS.nameTable[hash]; node; node = node.name_next) { - var nodeName = node.name; - if (node.parent.id === parent.id && nodeName === name) { - return node; - } - } - // if we failed to find it in the cache, call into the VFS - return FS.lookup(parent, name); - },createNode:function(parent, name, mode, rdev) { - if (!FS.FSNode) { - FS.FSNode = function(parent, name, mode, rdev) { - if (!parent) { - parent = this; // root node sets parent to itself - } - this.parent = parent; - this.mount = parent.mount; - this.mounted = null; - this.id = FS.nextInode++; - this.name = name; - this.mode = mode; - this.node_ops = {}; - this.stream_ops = {}; - this.rdev = rdev; - }; - - FS.FSNode.prototype = {}; - - // compatibility - var readMode = 292 | 73; - var writeMode = 146; - - // NOTE we must use Object.defineProperties instead of individual calls to - // Object.defineProperty in order to make closure compiler happy - Object.defineProperties(FS.FSNode.prototype, { - read: { - get: function() { return (this.mode & readMode) === readMode; }, - set: function(val) { val ? this.mode |= readMode : this.mode &= ~readMode; } - }, - write: { - get: function() { return (this.mode & writeMode) === writeMode; }, - set: function(val) { val ? this.mode |= writeMode : this.mode &= ~writeMode; } - }, - isFolder: { - get: function() { return FS.isDir(this.mode); } - }, - isDevice: { - get: function() { return FS.isChrdev(this.mode); } - } - }); - } - - var node = new FS.FSNode(parent, name, mode, rdev); - - FS.hashAddNode(node); - - return node; - },destroyNode:function(node) { - FS.hashRemoveNode(node); - },isRoot:function(node) { - return node === node.parent; - },isMountpoint:function(node) { - return !!node.mounted; - },isFile:function(mode) { - return (mode & 61440) === 32768; - },isDir:function(mode) { - return (mode & 61440) === 16384; - },isLink:function(mode) { - return (mode & 61440) === 40960; - },isChrdev:function(mode) { - return (mode & 61440) === 8192; - },isBlkdev:function(mode) { - return (mode & 61440) === 24576; - },isFIFO:function(mode) { - return (mode & 61440) === 4096; - },isSocket:function(mode) { - return (mode & 49152) === 49152; - },flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str) { - var flags = FS.flagModes[str]; - if (typeof flags === 'undefined') { - throw new Error('Unknown file open mode: ' + str); - } - return flags; - },flagsToPermissionString:function(flag) { - var perms = ['r', 'w', 'rw'][flag & 3]; - if ((flag & 512)) { - perms += 'w'; - } - return perms; - },nodePermissions:function(node, perms) { - if (FS.ignorePermissions) { - return 0; - } - // return 0 if any user, group or owner bits are set. - if (perms.indexOf('r') !== -1 && !(node.mode & 292)) { - return 2; - } else if (perms.indexOf('w') !== -1 && !(node.mode & 146)) { - return 2; - } else if (perms.indexOf('x') !== -1 && !(node.mode & 73)) { - return 2; - } - return 0; - },mayLookup:function(dir) { - var err = FS.nodePermissions(dir, 'x'); - if (err) return err; - if (!dir.node_ops.lookup) return 2; - return 0; - },mayCreate:function(dir, name) { - try { - var node = FS.lookupNode(dir, name); - return 20; - } catch (e) { - } - return FS.nodePermissions(dir, 'wx'); - },mayDelete:function(dir, name, isdir) { - var node; - try { - node = FS.lookupNode(dir, name); - } catch (e) { - return e.errno; - } - var err = FS.nodePermissions(dir, 'wx'); - if (err) { - return err; - } - if (isdir) { - if (!FS.isDir(node.mode)) { - return 54; - } - if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { - return 10; - } - } else { - if (FS.isDir(node.mode)) { - return 31; - } - } - return 0; - },mayOpen:function(node, flags) { - if (!node) { - return 44; - } - if (FS.isLink(node.mode)) { - return 32; - } else if (FS.isDir(node.mode)) { - if (FS.flagsToPermissionString(flags) !== 'r' || // opening for write - (flags & 512)) { // TODO: check for O_SEARCH? (== search for dir only) - return 31; - } - } - return FS.nodePermissions(node, FS.flagsToPermissionString(flags)); - },MAX_OPEN_FDS:4096,nextfd:function(fd_start, fd_end) { - fd_start = fd_start || 0; - fd_end = fd_end || FS.MAX_OPEN_FDS; - for (var fd = fd_start; fd <= fd_end; fd++) { - if (!FS.streams[fd]) { - return fd; - } - } - throw new FS.ErrnoError(33); - },getStream:function(fd) { - return FS.streams[fd]; - },createStream:function(stream, fd_start, fd_end) { - if (!FS.FSStream) { - FS.FSStream = function(){}; - FS.FSStream.prototype = {}; - // compatibility - Object.defineProperties(FS.FSStream.prototype, { - object: { - get: function() { return this.node; }, - set: function(val) { this.node = val; } - }, - isRead: { - get: function() { return (this.flags & 2097155) !== 1; } - }, - isWrite: { - get: function() { return (this.flags & 2097155) !== 0; } - }, - isAppend: { - get: function() { return (this.flags & 1024); } - } - }); - } - // clone it, so we can return an instance of FSStream - var newStream = new FS.FSStream(); - for (var p in stream) { - newStream[p] = stream[p]; - } - stream = newStream; - var fd = FS.nextfd(fd_start, fd_end); - stream.fd = fd; - FS.streams[fd] = stream; - return stream; - },closeStream:function(fd) { - FS.streams[fd] = null; - },chrdev_stream_ops:{open:function(stream) { - var device = FS.getDevice(stream.node.rdev); - // override node's stream ops with the device's - stream.stream_ops = device.stream_ops; - // forward the open call - if (stream.stream_ops.open) { - stream.stream_ops.open(stream); - } - },llseek:function() { - throw new FS.ErrnoError(70); - }},major:function(dev) { - return ((dev) >> 8); - },minor:function(dev) { - return ((dev) & 0xff); - },makedev:function(ma, mi) { - return ((ma) << 8 | (mi)); - },registerDevice:function(dev, ops) { - FS.devices[dev] = { stream_ops: ops }; - },getDevice:function(dev) { - return FS.devices[dev]; - },getMounts:function(mount) { - var mounts = []; - var check = [mount]; - - while (check.length) { - var m = check.pop(); - - mounts.push(m); - - check.push.apply(check, m.mounts); - } - - return mounts; - },syncfs:function(populate, callback) { - if (typeof(populate) === 'function') { - callback = populate; - populate = false; - } - - FS.syncFSRequests++; - - if (FS.syncFSRequests > 1) { - console.log('warning: ' + FS.syncFSRequests + ' FS.syncfs operations in flight at once, probably just doing extra work'); - } - - var mounts = FS.getMounts(FS.root.mount); - var completed = 0; - - function doCallback(err) { - assert(FS.syncFSRequests > 0); - FS.syncFSRequests--; - return callback(err); - } - - function done(err) { - if (err) { - if (!done.errored) { - done.errored = true; - return doCallback(err); - } - return; - } - if (++completed >= mounts.length) { - doCallback(null); - } - }; - - // sync all mounts - mounts.forEach(function (mount) { - if (!mount.type.syncfs) { - return done(null); - } - mount.type.syncfs(mount, populate, done); - }); - },mount:function(type, opts, mountpoint) { - if (typeof type === 'string') { - // The filesystem was not included, and instead we have an error - // message stored in the variable. - throw type; - } - var root = mountpoint === '/'; - var pseudo = !mountpoint; - var node; - - if (root && FS.root) { - throw new FS.ErrnoError(10); - } else if (!root && !pseudo) { - var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); - - mountpoint = lookup.path; // use the absolute path - node = lookup.node; - - if (FS.isMountpoint(node)) { - throw new FS.ErrnoError(10); - } - - if (!FS.isDir(node.mode)) { - throw new FS.ErrnoError(54); - } - } - - var mount = { - type: type, - opts: opts, - mountpoint: mountpoint, - mounts: [] - }; - - // create a root node for the fs - var mountRoot = type.mount(mount); - mountRoot.mount = mount; - mount.root = mountRoot; - - if (root) { - FS.root = mountRoot; - } else if (node) { - // set as a mountpoint - node.mounted = mount; - - // add the new mount to the current mount's children - if (node.mount) { - node.mount.mounts.push(mount); - } - } - - return mountRoot; - },unmount:function (mountpoint) { - var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); - - if (!FS.isMountpoint(lookup.node)) { - throw new FS.ErrnoError(28); - } - - // destroy the nodes for this mount, and all its child mounts - var node = lookup.node; - var mount = node.mounted; - var mounts = FS.getMounts(mount); - - Object.keys(FS.nameTable).forEach(function (hash) { - var current = FS.nameTable[hash]; - - while (current) { - var next = current.name_next; - - if (mounts.indexOf(current.mount) !== -1) { - FS.destroyNode(current); - } - - current = next; - } - }); - - // no longer a mountpoint - node.mounted = null; - - // remove this mount from the child mounts - var idx = node.mount.mounts.indexOf(mount); - assert(idx !== -1); - node.mount.mounts.splice(idx, 1); - },lookup:function(parent, name) { - return parent.node_ops.lookup(parent, name); - },mknod:function(path, mode, dev) { - var lookup = FS.lookupPath(path, { parent: true }); - var parent = lookup.node; - var name = PATH.basename(path); - if (!name || name === '.' || name === '..') { - throw new FS.ErrnoError(28); - } - var err = FS.mayCreate(parent, name); - if (err) { - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.mknod) { - throw new FS.ErrnoError(63); - } - return parent.node_ops.mknod(parent, name, mode, dev); - },create:function(path, mode) { - mode = mode !== undefined ? mode : 438 /* 0666 */; - mode &= 4095; - mode |= 32768; - return FS.mknod(path, mode, 0); - },mkdir:function(path, mode) { - mode = mode !== undefined ? mode : 511 /* 0777 */; - mode &= 511 | 512; - mode |= 16384; - return FS.mknod(path, mode, 0); - },mkdirTree:function(path, mode) { - var dirs = path.split('/'); - var d = ''; - for (var i = 0; i < dirs.length; ++i) { - if (!dirs[i]) continue; - d += '/' + dirs[i]; - try { - FS.mkdir(d, mode); - } catch(e) { - if (e.errno != 20) throw e; - } - } - },mkdev:function(path, mode, dev) { - if (typeof(dev) === 'undefined') { - dev = mode; - mode = 438 /* 0666 */; - } - mode |= 8192; - return FS.mknod(path, mode, dev); - },symlink:function(oldpath, newpath) { - if (!PATH_FS.resolve(oldpath)) { - throw new FS.ErrnoError(44); - } - var lookup = FS.lookupPath(newpath, { parent: true }); - var parent = lookup.node; - if (!parent) { - throw new FS.ErrnoError(44); - } - var newname = PATH.basename(newpath); - var err = FS.mayCreate(parent, newname); - if (err) { - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.symlink) { - throw new FS.ErrnoError(63); - } - return parent.node_ops.symlink(parent, newname, oldpath); - },rename:function(old_path, new_path) { - var old_dirname = PATH.dirname(old_path); - var new_dirname = PATH.dirname(new_path); - var old_name = PATH.basename(old_path); - var new_name = PATH.basename(new_path); - // parents must exist - var lookup, old_dir, new_dir; - try { - lookup = FS.lookupPath(old_path, { parent: true }); - old_dir = lookup.node; - lookup = FS.lookupPath(new_path, { parent: true }); - new_dir = lookup.node; - } catch (e) { - throw new FS.ErrnoError(10); - } - if (!old_dir || !new_dir) throw new FS.ErrnoError(44); - // need to be part of the same mount - if (old_dir.mount !== new_dir.mount) { - throw new FS.ErrnoError(75); - } - // source must exist - var old_node = FS.lookupNode(old_dir, old_name); - // old path should not be an ancestor of the new path - var relative = PATH_FS.relative(old_path, new_dirname); - if (relative.charAt(0) !== '.') { - throw new FS.ErrnoError(28); - } - // new path should not be an ancestor of the old path - relative = PATH_FS.relative(new_path, old_dirname); - if (relative.charAt(0) !== '.') { - throw new FS.ErrnoError(55); - } - // see if the new path already exists - var new_node; - try { - new_node = FS.lookupNode(new_dir, new_name); - } catch (e) { - // not fatal - } - // early out if nothing needs to change - if (old_node === new_node) { - return; - } - // we'll need to delete the old entry - var isdir = FS.isDir(old_node.mode); - var err = FS.mayDelete(old_dir, old_name, isdir); - if (err) { - throw new FS.ErrnoError(err); - } - // need delete permissions if we'll be overwriting. - // need create permissions if new doesn't already exist. - err = new_node ? - FS.mayDelete(new_dir, new_name, isdir) : - FS.mayCreate(new_dir, new_name); - if (err) { - throw new FS.ErrnoError(err); - } - if (!old_dir.node_ops.rename) { - throw new FS.ErrnoError(63); - } - if (FS.isMountpoint(old_node) || (new_node && FS.isMountpoint(new_node))) { - throw new FS.ErrnoError(10); - } - // if we are going to change the parent, check write permissions - if (new_dir !== old_dir) { - err = FS.nodePermissions(old_dir, 'w'); - if (err) { - throw new FS.ErrnoError(err); - } - } - try { - if (FS.trackingDelegate['willMovePath']) { - FS.trackingDelegate['willMovePath'](old_path, new_path); - } - } catch(e) { - console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); - } - // remove the node from the lookup hash - FS.hashRemoveNode(old_node); - // do the underlying fs rename - try { - old_dir.node_ops.rename(old_node, new_dir, new_name); - } catch (e) { - throw e; - } finally { - // add the node back to the hash (in case node_ops.rename - // changed its name) - FS.hashAddNode(old_node); - } - try { - if (FS.trackingDelegate['onMovePath']) FS.trackingDelegate['onMovePath'](old_path, new_path); - } catch(e) { - console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); - } - },rmdir:function(path) { - var lookup = FS.lookupPath(path, { parent: true }); - var parent = lookup.node; - var name = PATH.basename(path); - var node = FS.lookupNode(parent, name); - var err = FS.mayDelete(parent, name, true); - if (err) { - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.rmdir) { - throw new FS.ErrnoError(63); - } - if (FS.isMountpoint(node)) { - throw new FS.ErrnoError(10); - } - try { - if (FS.trackingDelegate['willDeletePath']) { - FS.trackingDelegate['willDeletePath'](path); - } - } catch(e) { - console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); - } - parent.node_ops.rmdir(parent, name); - FS.destroyNode(node); - try { - if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); - } catch(e) { - console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); - } - },readdir:function(path) { - var lookup = FS.lookupPath(path, { follow: true }); - var node = lookup.node; - if (!node.node_ops.readdir) { - throw new FS.ErrnoError(54); - } - return node.node_ops.readdir(node); - },unlink:function(path) { - var lookup = FS.lookupPath(path, { parent: true }); - var parent = lookup.node; - var name = PATH.basename(path); - var node = FS.lookupNode(parent, name); - var err = FS.mayDelete(parent, name, false); - if (err) { - // According to POSIX, we should map EISDIR to EPERM, but - // we instead do what Linux does (and we must, as we use - // the musl linux libc). - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.unlink) { - throw new FS.ErrnoError(63); - } - if (FS.isMountpoint(node)) { - throw new FS.ErrnoError(10); - } - try { - if (FS.trackingDelegate['willDeletePath']) { - FS.trackingDelegate['willDeletePath'](path); - } - } catch(e) { - console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); - } - parent.node_ops.unlink(parent, name); - FS.destroyNode(node); - try { - if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); - } catch(e) { - console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); - } - },readlink:function(path) { - var lookup = FS.lookupPath(path); - var link = lookup.node; - if (!link) { - throw new FS.ErrnoError(44); - } - if (!link.node_ops.readlink) { - throw new FS.ErrnoError(28); - } - return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)); - },stat:function(path, dontFollow) { - var lookup = FS.lookupPath(path, { follow: !dontFollow }); - var node = lookup.node; - if (!node) { - throw new FS.ErrnoError(44); - } - if (!node.node_ops.getattr) { - throw new FS.ErrnoError(63); - } - return node.node_ops.getattr(node); - },lstat:function(path) { - return FS.stat(path, true); - },chmod:function(path, mode, dontFollow) { - var node; - if (typeof path === 'string') { - var lookup = FS.lookupPath(path, { follow: !dontFollow }); - node = lookup.node; - } else { - node = path; - } - if (!node.node_ops.setattr) { - throw new FS.ErrnoError(63); - } - node.node_ops.setattr(node, { - mode: (mode & 4095) | (node.mode & ~4095), - timestamp: Date.now() - }); - },lchmod:function(path, mode) { - FS.chmod(path, mode, true); - },fchmod:function(fd, mode) { - var stream = FS.getStream(fd); - if (!stream) { - throw new FS.ErrnoError(8); - } - FS.chmod(stream.node, mode); - },chown:function(path, uid, gid, dontFollow) { - var node; - if (typeof path === 'string') { - var lookup = FS.lookupPath(path, { follow: !dontFollow }); - node = lookup.node; - } else { - node = path; - } - if (!node.node_ops.setattr) { - throw new FS.ErrnoError(63); - } - node.node_ops.setattr(node, { - timestamp: Date.now() - // we ignore the uid / gid for now - }); - },lchown:function(path, uid, gid) { - FS.chown(path, uid, gid, true); - },fchown:function(fd, uid, gid) { - var stream = FS.getStream(fd); - if (!stream) { - throw new FS.ErrnoError(8); - } - FS.chown(stream.node, uid, gid); - },truncate:function(path, len) { - if (len < 0) { - throw new FS.ErrnoError(28); - } - var node; - if (typeof path === 'string') { - var lookup = FS.lookupPath(path, { follow: true }); - node = lookup.node; - } else { - node = path; - } - if (!node.node_ops.setattr) { - throw new FS.ErrnoError(63); - } - if (FS.isDir(node.mode)) { - throw new FS.ErrnoError(31); - } - if (!FS.isFile(node.mode)) { - throw new FS.ErrnoError(28); - } - var err = FS.nodePermissions(node, 'w'); - if (err) { - throw new FS.ErrnoError(err); - } - node.node_ops.setattr(node, { - size: len, - timestamp: Date.now() - }); - },ftruncate:function(fd, len) { - var stream = FS.getStream(fd); - if (!stream) { - throw new FS.ErrnoError(8); - } - if ((stream.flags & 2097155) === 0) { - throw new FS.ErrnoError(28); - } - FS.truncate(stream.node, len); - },utime:function(path, atime, mtime) { - var lookup = FS.lookupPath(path, { follow: true }); - var node = lookup.node; - node.node_ops.setattr(node, { - timestamp: Math.max(atime, mtime) - }); - },open:function(path, flags, mode, fd_start, fd_end) { - if (path === "") { - throw new FS.ErrnoError(44); - } - flags = typeof flags === 'string' ? FS.modeStringToFlags(flags) : flags; - mode = typeof mode === 'undefined' ? 438 /* 0666 */ : mode; - if ((flags & 64)) { - mode = (mode & 4095) | 32768; - } else { - mode = 0; - } - var node; - if (typeof path === 'object') { - node = path; - } else { - path = PATH.normalize(path); - try { - var lookup = FS.lookupPath(path, { - follow: !(flags & 131072) - }); - node = lookup.node; - } catch (e) { - // ignore - } - } - // perhaps we need to create the node - var created = false; - if ((flags & 64)) { - if (node) { - // if O_CREAT and O_EXCL are set, error out if the node already exists - if ((flags & 128)) { - throw new FS.ErrnoError(20); - } - } else { - // node doesn't exist, try to create it - node = FS.mknod(path, mode, 0); - created = true; - } - } - if (!node) { - throw new FS.ErrnoError(44); - } - // can't truncate a device - if (FS.isChrdev(node.mode)) { - flags &= ~512; - } - // if asked only for a directory, then this must be one - if ((flags & 65536) && !FS.isDir(node.mode)) { - throw new FS.ErrnoError(54); - } - // check permissions, if this is not a file we just created now (it is ok to - // create and write to a file with read-only permissions; it is read-only - // for later use) - if (!created) { - var err = FS.mayOpen(node, flags); - if (err) { - throw new FS.ErrnoError(err); - } - } - // do truncation if necessary - if ((flags & 512)) { - FS.truncate(node, 0); - } - // we've already handled these, don't pass down to the underlying vfs - flags &= ~(128 | 512); - - // register the stream with the filesystem - var stream = FS.createStream({ - node: node, - path: FS.getPath(node), // we want the absolute path to the node - flags: flags, - seekable: true, - position: 0, - stream_ops: node.stream_ops, - // used by the file family libc calls (fopen, fwrite, ferror, etc.) - ungotten: [], - error: false - }, fd_start, fd_end); - // call the new stream's open function - if (stream.stream_ops.open) { - stream.stream_ops.open(stream); - } - if (Module['logReadFiles'] && !(flags & 1)) { - if (!FS.readFiles) FS.readFiles = {}; - if (!(path in FS.readFiles)) { - FS.readFiles[path] = 1; - console.log("FS.trackingDelegate error on read file: " + path); - } - } - try { - if (FS.trackingDelegate['onOpenFile']) { - var trackingFlags = 0; - if ((flags & 2097155) !== 1) { - trackingFlags |= FS.tracking.openFlags.READ; - } - if ((flags & 2097155) !== 0) { - trackingFlags |= FS.tracking.openFlags.WRITE; - } - FS.trackingDelegate['onOpenFile'](path, trackingFlags); - } - } catch(e) { - console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: " + e.message); - } - return stream; - },close:function(stream) { - if (FS.isClosed(stream)) { - throw new FS.ErrnoError(8); - } - if (stream.getdents) stream.getdents = null; // free readdir state - try { - if (stream.stream_ops.close) { - stream.stream_ops.close(stream); - } - } catch (e) { - throw e; - } finally { - FS.closeStream(stream.fd); - } - stream.fd = null; - },isClosed:function(stream) { - return stream.fd === null; - },llseek:function(stream, offset, whence) { - if (FS.isClosed(stream)) { - throw new FS.ErrnoError(8); - } - if (!stream.seekable || !stream.stream_ops.llseek) { - throw new FS.ErrnoError(70); - } - if (whence != 0 && whence != 1 && whence != 2) { - throw new FS.ErrnoError(28); - } - stream.position = stream.stream_ops.llseek(stream, offset, whence); - stream.ungotten = []; - return stream.position; - },read:function(stream, buffer, offset, length, position) { - if (length < 0 || position < 0) { - throw new FS.ErrnoError(28); - } - if (FS.isClosed(stream)) { - throw new FS.ErrnoError(8); - } - if ((stream.flags & 2097155) === 1) { - throw new FS.ErrnoError(8); - } - if (FS.isDir(stream.node.mode)) { - throw new FS.ErrnoError(31); - } - if (!stream.stream_ops.read) { - throw new FS.ErrnoError(28); - } - var seeking = typeof position !== 'undefined'; - if (!seeking) { - position = stream.position; - } else if (!stream.seekable) { - throw new FS.ErrnoError(70); - } - var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); - if (!seeking) stream.position += bytesRead; - return bytesRead; - },write:function(stream, buffer, offset, length, position, canOwn) { - if (length < 0 || position < 0) { - throw new FS.ErrnoError(28); - } - if (FS.isClosed(stream)) { - throw new FS.ErrnoError(8); - } - if ((stream.flags & 2097155) === 0) { - throw new FS.ErrnoError(8); - } - if (FS.isDir(stream.node.mode)) { - throw new FS.ErrnoError(31); - } - if (!stream.stream_ops.write) { - throw new FS.ErrnoError(28); - } - if (stream.flags & 1024) { - // seek to the end before writing in append mode - FS.llseek(stream, 0, 2); - } - var seeking = typeof position !== 'undefined'; - if (!seeking) { - position = stream.position; - } else if (!stream.seekable) { - throw new FS.ErrnoError(70); - } - var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); - if (!seeking) stream.position += bytesWritten; - try { - if (stream.path && FS.trackingDelegate['onWriteToFile']) FS.trackingDelegate['onWriteToFile'](stream.path); - } catch(e) { - console.log("FS.trackingDelegate['onWriteToFile']('"+stream.path+"') threw an exception: " + e.message); - } - return bytesWritten; - },allocate:function(stream, offset, length) { - if (FS.isClosed(stream)) { - throw new FS.ErrnoError(8); - } - if (offset < 0 || length <= 0) { - throw new FS.ErrnoError(28); - } - if ((stream.flags & 2097155) === 0) { - throw new FS.ErrnoError(8); - } - if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { - throw new FS.ErrnoError(43); - } - if (!stream.stream_ops.allocate) { - throw new FS.ErrnoError(138); - } - stream.stream_ops.allocate(stream, offset, length); - },mmap:function(stream, buffer, offset, length, position, prot, flags) { - // User requests writing to file (prot & PROT_WRITE != 0). - // Checking if we have permissions to write to the file unless - // MAP_PRIVATE flag is set. According to POSIX spec it is possible - // to write to file opened in read-only mode with MAP_PRIVATE flag, - // as all modifications will be visible only in the memory of - // the current process. - if ((prot & 2) !== 0 - && (flags & 2) === 0 - && (stream.flags & 2097155) !== 2) { - throw new FS.ErrnoError(2); - } - if ((stream.flags & 2097155) === 1) { - throw new FS.ErrnoError(2); - } - if (!stream.stream_ops.mmap) { - throw new FS.ErrnoError(43); - } - return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags); - },msync:function(stream, buffer, offset, length, mmapFlags) { - if (!stream || !stream.stream_ops.msync) { - return 0; - } - return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags); - },munmap:function(stream) { - return 0; - },ioctl:function(stream, cmd, arg) { - if (!stream.stream_ops.ioctl) { - throw new FS.ErrnoError(59); - } - return stream.stream_ops.ioctl(stream, cmd, arg); - },readFile:function(path, opts) { - opts = opts || {}; - opts.flags = opts.flags || 'r'; - opts.encoding = opts.encoding || 'binary'; - if (opts.encoding !== 'utf8' && opts.encoding !== 'binary') { - throw new Error('Invalid encoding type "' + opts.encoding + '"'); - } - var ret; - var stream = FS.open(path, opts.flags); - var stat = FS.stat(path); - var length = stat.size; - var buf = new Uint8Array(length); - FS.read(stream, buf, 0, length, 0); - if (opts.encoding === 'utf8') { - ret = UTF8ArrayToString(buf, 0); - } else if (opts.encoding === 'binary') { - ret = buf; - } - FS.close(stream); - return ret; - },writeFile:function(path, data, opts) { - opts = opts || {}; - opts.flags = opts.flags || 'w'; - var stream = FS.open(path, opts.flags, opts.mode); - if (typeof data === 'string') { - var buf = new Uint8Array(lengthBytesUTF8(data)+1); - var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); - FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn); - } else if (ArrayBuffer.isView(data)) { - FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn); - } else { - throw new Error('Unsupported data type'); - } - FS.close(stream); - },cwd:function() { - return FS.currentPath; - },chdir:function(path) { - var lookup = FS.lookupPath(path, { follow: true }); - if (lookup.node === null) { - throw new FS.ErrnoError(44); - } - if (!FS.isDir(lookup.node.mode)) { - throw new FS.ErrnoError(54); - } - var err = FS.nodePermissions(lookup.node, 'x'); - if (err) { - throw new FS.ErrnoError(err); - } - FS.currentPath = lookup.path; - },createDefaultDirectories:function() { - FS.mkdir('/tmp'); - FS.mkdir('/home'); - FS.mkdir('/home/web_user'); - },createDefaultDevices:function() { - // create /dev - FS.mkdir('/dev'); - // setup /dev/null - FS.registerDevice(FS.makedev(1, 3), { - read: function() { return 0; }, - write: function(stream, buffer, offset, length, pos) { return length; } - }); - FS.mkdev('/dev/null', FS.makedev(1, 3)); - // setup /dev/tty and /dev/tty1 - // stderr needs to print output using Module['printErr'] - // so we register a second tty just for it. - TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); - TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); - FS.mkdev('/dev/tty', FS.makedev(5, 0)); - FS.mkdev('/dev/tty1', FS.makedev(6, 0)); - // setup /dev/[u]random - var random_device; - if (typeof crypto === 'object' && typeof crypto['getRandomValues'] === 'function') { - // for modern web browsers - var randomBuffer = new Uint8Array(1); - random_device = function() { crypto.getRandomValues(randomBuffer); return randomBuffer[0]; }; - } else - if (ENVIRONMENT_IS_NODE) { - // for nodejs with or without crypto support included - try { - var crypto_module = require('crypto'); - // nodejs has crypto support - random_device = function() { return crypto_module['randomBytes'](1)[0]; }; - } catch (e) { - // nodejs doesn't have crypto support - } - } else - {} - if (!random_device) { - // we couldn't find a proper implementation, as Math.random() is not suitable for /dev/random, see emscripten-core/emscripten/pull/7096 - random_device = function() { abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };"); }; - } - FS.createDevice('/dev', 'random', random_device); - FS.createDevice('/dev', 'urandom', random_device); - // we're not going to emulate the actual shm device, - // just create the tmp dirs that reside in it commonly - FS.mkdir('/dev/shm'); - FS.mkdir('/dev/shm/tmp'); - },createSpecialDirectories:function() { - // create /proc/self/fd which allows /proc/self/fd/6 => readlink gives the name of the stream for fd 6 (see test_unistd_ttyname) - FS.mkdir('/proc'); - FS.mkdir('/proc/self'); - FS.mkdir('/proc/self/fd'); - FS.mount({ - mount: function() { - var node = FS.createNode('/proc/self', 'fd', 16384 | 511 /* 0777 */, 73); - node.node_ops = { - lookup: function(parent, name) { - var fd = +name; - var stream = FS.getStream(fd); - if (!stream) throw new FS.ErrnoError(8); - var ret = { - parent: null, - mount: { mountpoint: 'fake' }, - node_ops: { readlink: function() { return stream.path } } - }; - ret.parent = ret; // make it look like a simple root node - return ret; - } - }; - return node; - } - }, {}, '/proc/self/fd'); - },createStandardStreams:function() { - // TODO deprecate the old functionality of a single - // input / output callback and that utilizes FS.createDevice - // and instead require a unique set of stream ops - - // by default, we symlink the standard streams to the - // default tty devices. however, if the standard streams - // have been overwritten we create a unique device for - // them instead. - if (Module['stdin']) { - FS.createDevice('/dev', 'stdin', Module['stdin']); - } else { - FS.symlink('/dev/tty', '/dev/stdin'); - } - if (Module['stdout']) { - FS.createDevice('/dev', 'stdout', null, Module['stdout']); - } else { - FS.symlink('/dev/tty', '/dev/stdout'); - } - if (Module['stderr']) { - FS.createDevice('/dev', 'stderr', null, Module['stderr']); - } else { - FS.symlink('/dev/tty1', '/dev/stderr'); - } - - // open default streams for the stdin, stdout and stderr devices - var stdin = FS.open('/dev/stdin', 'r'); - var stdout = FS.open('/dev/stdout', 'w'); - var stderr = FS.open('/dev/stderr', 'w'); - assert(stdin.fd === 0, 'invalid handle for stdin (' + stdin.fd + ')'); - assert(stdout.fd === 1, 'invalid handle for stdout (' + stdout.fd + ')'); - assert(stderr.fd === 2, 'invalid handle for stderr (' + stderr.fd + ')'); - },ensureErrnoError:function() { - if (FS.ErrnoError) return; - FS.ErrnoError = function ErrnoError(errno, node) { - this.node = node; - this.setErrno = function(errno) { - this.errno = errno; - for (var key in ERRNO_CODES) { - if (ERRNO_CODES[key] === errno) { - this.code = key; - break; - } - } - }; - this.setErrno(errno); - this.message = ERRNO_MESSAGES[errno]; - - // Try to get a maximally helpful stack trace. On Node.js, getting Error.stack - // now ensures it shows what we want. - if (this.stack) { - // Define the stack property for Node.js 4, which otherwise errors on the next line. - Object.defineProperty(this, "stack", { value: (new Error).stack, writable: true }); - this.stack = demangleAll(this.stack); - } - }; - FS.ErrnoError.prototype = new Error(); - FS.ErrnoError.prototype.constructor = FS.ErrnoError; - // Some errors may happen quite a bit, to avoid overhead we reuse them (and suffer a lack of stack info) - [44].forEach(function(code) { - FS.genericErrors[code] = new FS.ErrnoError(code); - FS.genericErrors[code].stack = ''; - }); - },staticInit:function() { - FS.ensureErrnoError(); - - FS.nameTable = new Array(4096); - - FS.mount(MEMFS, {}, '/'); - - FS.createDefaultDirectories(); - FS.createDefaultDevices(); - FS.createSpecialDirectories(); - - FS.filesystems = { - 'MEMFS': MEMFS, - 'NODEFS': NODEFS, - }; - },init:function(input, output, error) { - assert(!FS.init.initialized, 'FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)'); - FS.init.initialized = true; - - FS.ensureErrnoError(); - - // Allow Module.stdin etc. to provide defaults, if none explicitly passed to us here - Module['stdin'] = input || Module['stdin']; - Module['stdout'] = output || Module['stdout']; - Module['stderr'] = error || Module['stderr']; - - FS.createStandardStreams(); - },quit:function() { - FS.init.initialized = false; - // force-flush all streams, so we get musl std streams printed out - var fflush = Module['_fflush']; - if (fflush) fflush(0); - // close all of our streams - for (var i = 0; i < FS.streams.length; i++) { - var stream = FS.streams[i]; - if (!stream) { - continue; - } - FS.close(stream); - } - },getMode:function(canRead, canWrite) { - var mode = 0; - if (canRead) mode |= 292 | 73; - if (canWrite) mode |= 146; - return mode; - },joinPath:function(parts, forceRelative) { - var path = PATH.join.apply(null, parts); - if (forceRelative && path[0] == '/') path = path.substr(1); - return path; - },absolutePath:function(relative, base) { - return PATH_FS.resolve(base, relative); - },standardizePath:function(path) { - return PATH.normalize(path); - },findObject:function(path, dontResolveLastLink) { - var ret = FS.analyzePath(path, dontResolveLastLink); - if (ret.exists) { - return ret.object; - } else { - ___setErrNo(ret.error); - return null; - } - },analyzePath:function(path, dontResolveLastLink) { - // operate from within the context of the symlink's target - try { - var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); - path = lookup.path; - } catch (e) { - } - var ret = { - isRoot: false, exists: false, error: 0, name: null, path: null, object: null, - parentExists: false, parentPath: null, parentObject: null - }; - try { - var lookup = FS.lookupPath(path, { parent: true }); - ret.parentExists = true; - ret.parentPath = lookup.path; - ret.parentObject = lookup.node; - ret.name = PATH.basename(path); - lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); - ret.exists = true; - ret.path = lookup.path; - ret.object = lookup.node; - ret.name = lookup.node.name; - ret.isRoot = lookup.path === '/'; - } catch (e) { - ret.error = e.errno; - }; - return ret; - },createFolder:function(parent, name, canRead, canWrite) { - var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); - var mode = FS.getMode(canRead, canWrite); - return FS.mkdir(path, mode); - },createPath:function(parent, path, canRead, canWrite) { - parent = typeof parent === 'string' ? parent : FS.getPath(parent); - var parts = path.split('/').reverse(); - while (parts.length) { - var part = parts.pop(); - if (!part) continue; - var current = PATH.join2(parent, part); - try { - FS.mkdir(current); - } catch (e) { - // ignore EEXIST - } - parent = current; - } - return current; - },createFile:function(parent, name, properties, canRead, canWrite) { - var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); - var mode = FS.getMode(canRead, canWrite); - return FS.create(path, mode); - },createDataFile:function(parent, name, data, canRead, canWrite, canOwn) { - var path = name ? PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name) : parent; - var mode = FS.getMode(canRead, canWrite); - var node = FS.create(path, mode); - if (data) { - if (typeof data === 'string') { - var arr = new Array(data.length); - for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); - data = arr; - } - // make sure we can write to the file - FS.chmod(node, mode | 146); - var stream = FS.open(node, 'w'); - FS.write(stream, data, 0, data.length, 0, canOwn); - FS.close(stream); - FS.chmod(node, mode); - } - return node; - },createDevice:function(parent, name, input, output) { - var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); - var mode = FS.getMode(!!input, !!output); - if (!FS.createDevice.major) FS.createDevice.major = 64; - var dev = FS.makedev(FS.createDevice.major++, 0); - // Create a fake device that a set of stream ops to emulate - // the old behavior. - FS.registerDevice(dev, { - open: function(stream) { - stream.seekable = false; - }, - close: function(stream) { - // flush any pending line data - if (output && output.buffer && output.buffer.length) { - output(10); - } - }, - read: function(stream, buffer, offset, length, pos /* ignored */) { - var bytesRead = 0; - for (var i = 0; i < length; i++) { - var result; - try { - result = input(); - } catch (e) { - throw new FS.ErrnoError(29); - } - if (result === undefined && bytesRead === 0) { - throw new FS.ErrnoError(6); - } - if (result === null || result === undefined) break; - bytesRead++; - buffer[offset+i] = result; - } - if (bytesRead) { - stream.node.timestamp = Date.now(); - } - return bytesRead; - }, - write: function(stream, buffer, offset, length, pos) { - for (var i = 0; i < length; i++) { - try { - output(buffer[offset+i]); - } catch (e) { - throw new FS.ErrnoError(29); - } - } - if (length) { - stream.node.timestamp = Date.now(); - } - return i; - } - }); - return FS.mkdev(path, mode, dev); - },createLink:function(parent, name, target, canRead, canWrite) { - var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); - return FS.symlink(target, path); - },forceLoadFile:function(obj) { - if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; - var success = true; - if (typeof XMLHttpRequest !== 'undefined') { - throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread."); - } else if (read_) { - // Command-line. - try { - // WARNING: Can't read binary files in V8's d8 or tracemonkey's js, as - // read() will try to parse UTF8. - obj.contents = intArrayFromString(read_(obj.url), true); - obj.usedBytes = obj.contents.length; - } catch (e) { - success = false; - } - } else { - throw new Error('Cannot load without read() or XMLHttpRequest.'); - } - if (!success) ___setErrNo(29); - return success; - },createLazyFile:function(parent, name, url, canRead, canWrite) { - // Lazy chunked Uint8Array (implements get and length from Uint8Array). Actual getting is abstracted away for eventual reuse. - function LazyUint8Array() { - this.lengthKnown = false; - this.chunks = []; // Loaded chunks. Index is the chunk number - } - LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { - if (idx > this.length-1 || idx < 0) { - return undefined; - } - var chunkOffset = idx % this.chunkSize; - var chunkNum = (idx / this.chunkSize)|0; - return this.getter(chunkNum)[chunkOffset]; - }; - LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { - this.getter = getter; - }; - LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { - // Find length - var xhr = new XMLHttpRequest(); - xhr.open('HEAD', url, false); - xhr.send(null); - if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); - var datalength = Number(xhr.getResponseHeader("Content-length")); - var header; - var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; - var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; - - var chunkSize = 1024*1024; // Chunk size in bytes - - if (!hasByteServing) chunkSize = datalength; - - // Function to get a range from the remote URL. - var doXHR = (function(from, to) { - if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); - if (to > datalength-1) throw new Error("only " + datalength + " bytes available! programmer error!"); - - // TODO: Use mozResponseArrayBuffer, responseStream, etc. if available. - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, false); - if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); - - // Some hints to the browser that we want binary data. - if (typeof Uint8Array != 'undefined') xhr.responseType = 'arraybuffer'; - if (xhr.overrideMimeType) { - xhr.overrideMimeType('text/plain; charset=x-user-defined'); - } - - xhr.send(null); - if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); - if (xhr.response !== undefined) { - return new Uint8Array(xhr.response || []); - } else { - return intArrayFromString(xhr.responseText || '', true); - } - }); - var lazyArray = this; - lazyArray.setDataGetter(function(chunkNum) { - var start = chunkNum * chunkSize; - var end = (chunkNum+1) * chunkSize - 1; // including this byte - end = Math.min(end, datalength-1); // if datalength-1 is selected, this is the last block - if (typeof(lazyArray.chunks[chunkNum]) === "undefined") { - lazyArray.chunks[chunkNum] = doXHR(start, end); - } - if (typeof(lazyArray.chunks[chunkNum]) === "undefined") throw new Error("doXHR failed!"); - return lazyArray.chunks[chunkNum]; - }); - - if (usesGzip || !datalength) { - // if the server uses gzip or doesn't supply the length, we have to download the whole file to get the (uncompressed) length - chunkSize = datalength = 1; // this will force getter(0)/doXHR do download the whole file - datalength = this.getter(0).length; - chunkSize = datalength; - console.log("LazyFiles on gzip forces download of the whole file when length is accessed"); - } - - this._length = datalength; - this._chunkSize = chunkSize; - this.lengthKnown = true; - }; - if (typeof XMLHttpRequest !== 'undefined') { - if (!ENVIRONMENT_IS_WORKER) throw 'Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc'; - var lazyArray = new LazyUint8Array(); - Object.defineProperties(lazyArray, { - length: { - get: function() { - if(!this.lengthKnown) { - this.cacheLength(); - } - return this._length; - } - }, - chunkSize: { - get: function() { - if(!this.lengthKnown) { - this.cacheLength(); - } - return this._chunkSize; - } - } - }); - - var properties = { isDevice: false, contents: lazyArray }; - } else { - var properties = { isDevice: false, url: url }; - } - - var node = FS.createFile(parent, name, properties, canRead, canWrite); - // This is a total hack, but I want to get this lazy file code out of the - // core of MEMFS. If we want to keep this lazy file concept I feel it should - // be its own thin LAZYFS proxying calls to MEMFS. - if (properties.contents) { - node.contents = properties.contents; - } else if (properties.url) { - node.contents = null; - node.url = properties.url; - } - // Add a function that defers querying the file size until it is asked the first time. - Object.defineProperties(node, { - usedBytes: { - get: function() { return this.contents.length; } - } - }); - // override each stream op with one that tries to force load the lazy file first - var stream_ops = {}; - var keys = Object.keys(node.stream_ops); - keys.forEach(function(key) { - var fn = node.stream_ops[key]; - stream_ops[key] = function forceLoadLazyFile() { - if (!FS.forceLoadFile(node)) { - throw new FS.ErrnoError(29); - } - return fn.apply(null, arguments); - }; - }); - // use a custom read function - stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { - if (!FS.forceLoadFile(node)) { - throw new FS.ErrnoError(29); - } - var contents = stream.node.contents; - if (position >= contents.length) - return 0; - var size = Math.min(contents.length - position, length); - assert(size >= 0); - if (contents.slice) { // normal array - for (var i = 0; i < size; i++) { - buffer[offset + i] = contents[position + i]; - } - } else { - for (var i = 0; i < size; i++) { // LazyUint8Array from sync binary XHR - buffer[offset + i] = contents.get(position + i); - } - } - return size; - }; - node.stream_ops = stream_ops; - return node; - },createPreloadedFile:function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { - Browser.init(); // perhaps this method should move onto Browser? - // TODO we should allow people to just pass in a complete filename instead - // of parent and name being that we just join them anyways - var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; - var dep = getUniqueRunDependency('cp ' + fullname); // might have several active requests for the same fullname - function processData(byteArray) { - function finish(byteArray) { - if (preFinish) preFinish(); - if (!dontCreateFile) { - FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn); - } - if (onload) onload(); - removeRunDependency(dep); - } - var handled = false; - Module['preloadPlugins'].forEach(function(plugin) { - if (handled) return; - if (plugin['canHandle'](fullname)) { - plugin['handle'](byteArray, fullname, finish, function() { - if (onerror) onerror(); - removeRunDependency(dep); - }); - handled = true; - } - }); - if (!handled) finish(byteArray); - } - addRunDependency(dep); - if (typeof url == 'string') { - Browser.asyncLoad(url, function(byteArray) { - processData(byteArray); - }, onerror); - } else { - processData(url); - } - },indexedDB:function() { - return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; - },DB_NAME:function() { - return 'EM_FS_' + window.location.pathname; - },DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function(paths, onload, onerror) { - onload = onload || function(){}; - onerror = onerror || function(){}; - var indexedDB = FS.indexedDB(); - try { - var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); - } catch (e) { - return onerror(e); - } - openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { - console.log('creating db'); - var db = openRequest.result; - db.createObjectStore(FS.DB_STORE_NAME); - }; - openRequest.onsuccess = function openRequest_onsuccess() { - var db = openRequest.result; - var transaction = db.transaction([FS.DB_STORE_NAME], 'readwrite'); - var files = transaction.objectStore(FS.DB_STORE_NAME); - var ok = 0, fail = 0, total = paths.length; - function finish() { - if (fail == 0) onload(); else onerror(); - } - paths.forEach(function(path) { - var putRequest = files.put(FS.analyzePath(path).object.contents, path); - putRequest.onsuccess = function putRequest_onsuccess() { ok++; if (ok + fail == total) finish() }; - putRequest.onerror = function putRequest_onerror() { fail++; if (ok + fail == total) finish() }; - }); - transaction.onerror = onerror; - }; - openRequest.onerror = onerror; - },loadFilesFromDB:function(paths, onload, onerror) { - onload = onload || function(){}; - onerror = onerror || function(){}; - var indexedDB = FS.indexedDB(); - try { - var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); - } catch (e) { - return onerror(e); - } - openRequest.onupgradeneeded = onerror; // no database to load from - openRequest.onsuccess = function openRequest_onsuccess() { - var db = openRequest.result; - try { - var transaction = db.transaction([FS.DB_STORE_NAME], 'readonly'); - } catch(e) { - onerror(e); - return; - } - var files = transaction.objectStore(FS.DB_STORE_NAME); - var ok = 0, fail = 0, total = paths.length; - function finish() { - if (fail == 0) onload(); else onerror(); - } - paths.forEach(function(path) { - var getRequest = files.get(path); - getRequest.onsuccess = function getRequest_onsuccess() { - if (FS.analyzePath(path).exists) { - FS.unlink(path); - } - FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); - ok++; - if (ok + fail == total) finish(); - }; - getRequest.onerror = function getRequest_onerror() { fail++; if (ok + fail == total) finish() }; - }); - transaction.onerror = onerror; - }; - openRequest.onerror = onerror; - }}; - Module["FS"] = FS;var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:function(dirfd, path) { - if (path[0] !== '/') { - // relative path - var dir; - if (dirfd === -100) { - dir = FS.cwd(); - } else { - var dirstream = FS.getStream(dirfd); - if (!dirstream) throw new FS.ErrnoError(8); - dir = dirstream.path; - } - path = PATH.join2(dir, path); - } - return path; - },doStat:function(func, path, buf) { - try { - var stat = func(path); - } catch (e) { - if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { - // an error occurred while trying to look up the path; we should just report ENOTDIR - return -54; - } - throw e; - } - HEAP32[((buf)>>2)]=stat.dev; - HEAP32[(((buf)+(4))>>2)]=0; - HEAP32[(((buf)+(8))>>2)]=stat.ino; - HEAP32[(((buf)+(12))>>2)]=stat.mode; - HEAP32[(((buf)+(16))>>2)]=stat.nlink; - HEAP32[(((buf)+(20))>>2)]=stat.uid; - HEAP32[(((buf)+(24))>>2)]=stat.gid; - HEAP32[(((buf)+(28))>>2)]=stat.rdev; - HEAP32[(((buf)+(32))>>2)]=0; - (tempI64 = [stat.size>>>0,(tempDouble=stat.size,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[(((buf)+(40))>>2)]=tempI64[0],HEAP32[(((buf)+(44))>>2)]=tempI64[1]); - HEAP32[(((buf)+(48))>>2)]=4096; - HEAP32[(((buf)+(52))>>2)]=stat.blocks; - HEAP32[(((buf)+(56))>>2)]=(stat.atime.getTime() / 1000)|0; - HEAP32[(((buf)+(60))>>2)]=0; - HEAP32[(((buf)+(64))>>2)]=(stat.mtime.getTime() / 1000)|0; - HEAP32[(((buf)+(68))>>2)]=0; - HEAP32[(((buf)+(72))>>2)]=(stat.ctime.getTime() / 1000)|0; - HEAP32[(((buf)+(76))>>2)]=0; - (tempI64 = [stat.ino>>>0,(tempDouble=stat.ino,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[(((buf)+(80))>>2)]=tempI64[0],HEAP32[(((buf)+(84))>>2)]=tempI64[1]); - return 0; - },doMsync:function(addr, stream, len, flags) { - var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); - FS.msync(stream, buffer, 0, len, flags); - },doMkdir:function(path, mode) { - // remove a trailing slash, if one - /a/b/ has basename of '', but - // we want to create b in the context of this function - path = PATH.normalize(path); - if (path[path.length-1] === '/') path = path.substr(0, path.length-1); - FS.mkdir(path, mode, 0); - return 0; - },doMknod:function(path, mode, dev) { - // we don't want this in the JS API as it uses mknod to create all nodes. - switch (mode & 61440) { - case 32768: - case 8192: - case 24576: - case 4096: - case 49152: - break; - default: return -28; - } - FS.mknod(path, mode, dev); - return 0; - },doReadlink:function(path, buf, bufsize) { - if (bufsize <= 0) return -28; - var ret = FS.readlink(path); - - var len = Math.min(bufsize, lengthBytesUTF8(ret)); - var endChar = HEAP8[buf+len]; - stringToUTF8(ret, buf, bufsize+1); - // readlink is one of the rare functions that write out a C string, but does never append a null to the output buffer(!) - // stringToUTF8() always appends a null byte, so restore the character under the null byte after the write. - HEAP8[buf+len] = endChar; - - return len; - },doAccess:function(path, amode) { - if (amode & ~7) { - // need a valid mode - return -28; - } - var node; - var lookup = FS.lookupPath(path, { follow: true }); - node = lookup.node; - if (!node) { - return -44; - } - var perms = ''; - if (amode & 4) perms += 'r'; - if (amode & 2) perms += 'w'; - if (amode & 1) perms += 'x'; - if (perms /* otherwise, they've just passed F_OK */ && FS.nodePermissions(node, perms)) { - return -2; - } - return 0; - },doDup:function(path, flags, suggestFD) { - var suggest = FS.getStream(suggestFD); - if (suggest) FS.close(suggest); - return FS.open(path, flags, 0, suggestFD, suggestFD).fd; - },doReadv:function(stream, iov, iovcnt, offset) { - var ret = 0; - for (var i = 0; i < iovcnt; i++) { - var ptr = HEAP32[(((iov)+(i*8))>>2)]; - var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; - var curr = FS.read(stream, HEAP8,ptr, len, offset); - if (curr < 0) return -1; - ret += curr; - if (curr < len) break; // nothing more to read - } - return ret; - },doWritev:function(stream, iov, iovcnt, offset) { - var ret = 0; - for (var i = 0; i < iovcnt; i++) { - var ptr = HEAP32[(((iov)+(i*8))>>2)]; - var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; - var curr = FS.write(stream, HEAP8,ptr, len, offset); - if (curr < 0) return -1; - ret += curr; - } - return ret; - },varargs:0,get:function(varargs) { - SYSCALLS.varargs += 4; - var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)]; - return ret; - },getStr:function() { - var ret = UTF8ToString(SYSCALLS.get()); - return ret; - },getStreamFromFD:function(fd) { - // TODO: when all syscalls use wasi, can remove the next line - if (fd === undefined) fd = SYSCALLS.get(); - var stream = FS.getStream(fd); - if (!stream) throw new FS.ErrnoError(8); - return stream; - },get64:function() { - var low = SYSCALLS.get(), high = SYSCALLS.get(); - if (low >= 0) assert(high === 0); - else assert(high === -1); - return low; - },getZero:function() { - assert(SYSCALLS.get() === 0); - }}; - Module["SYSCALLS"] = SYSCALLS;function ___syscall10(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(2, 1, which, varargs); - SYSCALLS.varargs = varargs; + if (stream.getdents) stream.getdents = null; try { - // unlink - var path = SYSCALLS.getStr(); - FS.unlink(path); - return 0; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall10"] = ___syscall10; - - function ___syscall12(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(3, 1, which, varargs); - SYSCALLS.varargs = varargs; + if (stream.stream_ops.close) { + stream.stream_ops.close(stream); + } + } catch (e) { + throw e; + } finally { + FS.closeStream(stream.fd); + } + stream.fd = null; + }), + isClosed: (function(stream) { + return stream.fd === null; + }), + llseek: (function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70); + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28); + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position; + }), + read: (function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28); + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31); + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28); + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position; + } else if (!stream.seekable) { + throw new FS.ErrnoError(70); + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead; + }), + write: (function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28); + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31); + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28); + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2); + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position; + } else if (!stream.seekable) { + throw new FS.ErrnoError(70); + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; try { - // chdir - var path = SYSCALLS.getStr(); - FS.chdir(path); - return 0; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path); + } catch (e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message); + } + return bytesWritten; + }), + allocate: (function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8); + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138); + } + stream.stream_ops.allocate(stream, offset, length); + }), + mmap: (function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2); + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43); + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags); + }), + msync: (function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0; + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags); + }), + munmap: (function(stream) { + return 0; + }), + ioctl: (function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59); + } + return stream.stream_ops.ioctl(stream, cmd, arg); + }), + readFile: (function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"'); } - - Module["___syscall12"] = ___syscall12; - - function ___syscall183(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(4, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // getcwd - var buf = SYSCALLS.get(), size = SYSCALLS.get(); - if (size === 0) return -28; - var cwd = FS.cwd(); - var cwdLengthInBytes = lengthBytesUTF8(cwd); - if (size < cwdLengthInBytes + 1) return -68; - stringToUTF8(cwd, buf, size); - return buf; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0); + } else if (opts.encoding === "binary") { + ret = buf; + } + FS.close(stream); + return ret; + }), + writeFile: (function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn); + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn); + } else { + throw new Error("Unsupported data type"); + } + FS.close(stream); + }), + cwd: (function() { + return FS.currentPath; + }), + chdir: (function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44); + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54); + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err); + } + FS.currentPath = lookup.path; + }), + createDefaultDirectories: (function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user"); + }), + createDefaultDevices: (function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: (function() { + return 0; + }), + write: (function(stream, buffer, offset, length, pos) { + return length; + }) + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = (function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0]; + }); + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = (function() { + return crypto_module["randomBytes"](1)[0]; + }); + } catch (e) {} + } else {} + if (!random_device) { + random_device = (function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };"); + }); + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp"); + }), + createSpecialDirectories: (function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: (function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: (function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: (function() { + return stream.path; + }) + } + }; + ret.parent = ret; + return ret; + }) + }; + return node; + }) + }, {}, "/proc/self/fd"); + }), + createStandardStreams: (function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]); + } else { + FS.symlink("/dev/tty", "/dev/stdin"); } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]); + } else { + FS.symlink("/dev/tty", "/dev/stdout"); } - - Module["___syscall183"] = ___syscall183; - - - - - function _memset(ptr, value, num) { - ptr = ptr|0; value = value|0; num = num|0; - var end = 0, aligned_end = 0, block_aligned_end = 0, value4 = 0; - end = (ptr + num)|0; - - value = value & 0xff; - if ((num|0) >= 67 /* 64 bytes for an unrolled loop + 3 bytes for unaligned head*/) { - while ((ptr&3) != 0) { - HEAP8[((ptr)>>0)]=value; - ptr = (ptr+1)|0; - } - - aligned_end = (end & -4)|0; - value4 = value | (value << 8) | (value << 16) | (value << 24); - - block_aligned_end = (aligned_end - 64)|0; - - while((ptr|0) <= (block_aligned_end|0)) { - HEAP32[((ptr)>>2)]=value4; - HEAP32[(((ptr)+(4))>>2)]=value4; - HEAP32[(((ptr)+(8))>>2)]=value4; - HEAP32[(((ptr)+(12))>>2)]=value4; - HEAP32[(((ptr)+(16))>>2)]=value4; - HEAP32[(((ptr)+(20))>>2)]=value4; - HEAP32[(((ptr)+(24))>>2)]=value4; - HEAP32[(((ptr)+(28))>>2)]=value4; - HEAP32[(((ptr)+(32))>>2)]=value4; - HEAP32[(((ptr)+(36))>>2)]=value4; - HEAP32[(((ptr)+(40))>>2)]=value4; - HEAP32[(((ptr)+(44))>>2)]=value4; - HEAP32[(((ptr)+(48))>>2)]=value4; - HEAP32[(((ptr)+(52))>>2)]=value4; - HEAP32[(((ptr)+(56))>>2)]=value4; - HEAP32[(((ptr)+(60))>>2)]=value4; - ptr = (ptr + 64)|0; - } - - while ((ptr|0) < (aligned_end|0) ) { - HEAP32[((ptr)>>2)]=value4; - ptr = (ptr+4)|0; - } - } - // The remaining bytes. - while ((ptr|0) < (end|0)) { - HEAP8[((ptr)>>0)]=value; - ptr = (ptr+1)|0; - } - return (end-num)|0; - } - Module["_memset"] = _memset;function __emscripten_syscall_mmap2(addr, len, prot, flags, fd, off) { - off <<= 12; // undo pgoffset - var ptr; - var allocated = false; - - // addr argument must be page aligned if MAP_FIXED flag is set. - if ((flags & 16) !== 0 && (addr % PAGE_SIZE) !== 0) { - return -28; - } - - // MAP_ANONYMOUS (aka MAP_ANON) isn't actually defined by POSIX spec, - // but it is widely used way to allocate memory pages on Linux, BSD and Mac. - // In this case fd argument is ignored. - if ((flags & 32) !== 0) { - ptr = _memalign(PAGE_SIZE, len); - if (!ptr) return -48; - _memset(ptr, 0, len); - allocated = true; - } else { - var info = FS.getStream(fd); - if (!info) return -8; - var res = FS.mmap(info, HEAPU8, addr, len, off, prot, flags); - ptr = res.ptr; - allocated = res.allocated; - } - SYSCALLS.mappings[ptr] = { malloc: ptr, len: len, allocated: allocated, fd: fd, flags: flags }; - return ptr; + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]); + } else { + FS.symlink("/dev/tty1", "/dev/stderr"); + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")"); + }), + ensureErrnoError: (function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = (function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break; + } } - Module["__emscripten_syscall_mmap2"] = __emscripten_syscall_mmap2;function ___syscall192(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(5, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // mmap2 - var addr = SYSCALLS.get(), len = SYSCALLS.get(), prot = SYSCALLS.get(), flags = SYSCALLS.get(), fd = SYSCALLS.get(), off = SYSCALLS.get() - return __emscripten_syscall_mmap2(addr, len, prot, flags, fd, off); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall192"] = ___syscall192; - - function ___syscall195(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(6, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // SYS_stat64 - var path = SYSCALLS.getStr(), buf = SYSCALLS.get(); - return SYSCALLS.doStat(FS.stat, path, buf); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall195"] = ___syscall195; - - function ___syscall196(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(7, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // SYS_lstat64 - var path = SYSCALLS.getStr(), buf = SYSCALLS.get(); - return SYSCALLS.doStat(FS.lstat, path, buf); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall196"] = ___syscall196; - - function ___syscall220(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(8, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // SYS_getdents64 - var stream = SYSCALLS.getStreamFromFD(), dirp = SYSCALLS.get(), count = SYSCALLS.get(); - if (!stream.getdents) { - stream.getdents = FS.readdir(stream.path); - } - - var struct_size = 280; - var pos = 0; - var off = FS.llseek(stream, 0, 1); - - var idx = Math.floor(off / struct_size); - - while (idx < stream.getdents.length && pos + struct_size <= count) { - var id; - var type; - var name = stream.getdents[idx]; - if (name[0] === '.') { - id = 1; - type = 4; // DT_DIR - } else { - var child = FS.lookupNode(stream.node, name); - id = child.id; - type = FS.isChrdev(child.mode) ? 2 : // DT_CHR, character device. - FS.isDir(child.mode) ? 4 : // DT_DIR, directory. - FS.isLink(child.mode) ? 10 : // DT_LNK, symbolic link. - 8; // DT_REG, regular file. - } - (tempI64 = [id>>>0,(tempDouble=id,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((dirp + pos)>>2)]=tempI64[0],HEAP32[(((dirp + pos)+(4))>>2)]=tempI64[1]); - (tempI64 = [(idx + 1) * struct_size>>>0,(tempDouble=(idx + 1) * struct_size,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[(((dirp + pos)+(8))>>2)]=tempI64[0],HEAP32[(((dirp + pos)+(12))>>2)]=tempI64[1]); - HEAP16[(((dirp + pos)+(16))>>1)]=280; - HEAP8[(((dirp + pos)+(18))>>0)]=type; - stringToUTF8(name, dirp + pos + 19, 256); - pos += struct_size; - idx += 1; - } - FS.llseek(stream, idx * struct_size, 0); - return pos; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall220"] = ___syscall220; - - function ___syscall221(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(9, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // fcntl64 - var stream = SYSCALLS.getStreamFromFD(), cmd = SYSCALLS.get(); - switch (cmd) { - case 0: { - var arg = SYSCALLS.get(); - if (arg < 0) { - return -28; - } - var newStream; - newStream = FS.open(stream.path, stream.flags, 0, arg); - return newStream.fd; - } - case 1: - case 2: - return 0; // FD_CLOEXEC makes no sense for a single process. - case 3: - return stream.flags; - case 4: { - var arg = SYSCALLS.get(); - stream.flags |= arg; - return 0; - } - case 12: - /* case 12: Currently in musl F_GETLK64 has same value as F_GETLK, so omitted to avoid duplicate case blocks. If that changes, uncomment this */ { - - var arg = SYSCALLS.get(); - var offset = 0; - // We're always unlocked. - HEAP16[(((arg)+(offset))>>1)]=2; - return 0; - } - case 13: - case 14: - /* case 13: Currently in musl F_SETLK64 has same value as F_SETLK, so omitted to avoid duplicate case blocks. If that changes, uncomment this */ - /* case 14: Currently in musl F_SETLKW64 has same value as F_SETLKW, so omitted to avoid duplicate case blocks. If that changes, uncomment this */ - - - return 0; // Pretend that the locking is successful. - case 16: - case 8: - return -28; // These are for sockets. We don't have them fully implemented yet. - case 9: - // musl trusts getown return values, due to a bug where they must be, as they overlap with errors. just return -1 here, so fnctl() returns that, and we set errno ourselves. - ___setErrNo(28); - return -1; - default: { - return -28; - } - } - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall221"] = ___syscall221; - - function ___syscall3(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(10, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // read - var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); - return FS.read(stream, HEAP8,buf, count); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall3"] = ___syscall3; - - function ___syscall39(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(11, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // mkdir - var path = SYSCALLS.getStr(), mode = SYSCALLS.get(); - return SYSCALLS.doMkdir(path, mode); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall39"] = ___syscall39; - - function ___syscall4(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(12, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // write - var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); - return FS.write(stream, HEAP8,buf, count); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall4"] = ___syscall4; - - function ___syscall40(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(13, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // rmdir - var path = SYSCALLS.getStr(); - FS.rmdir(path); - return 0; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall40"] = ___syscall40; - - function ___syscall5(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(14, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // open - var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = SYSCALLS.get(); // optional TODO - var stream = FS.open(pathname, flags, mode); - return stream.fd; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall5"] = ___syscall5; - - function ___syscall54(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(15, 1, which, varargs); - SYSCALLS.varargs = varargs; - try { - // ioctl - var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get(); - switch (op) { - case 21509: - case 21505: { - if (!stream.tty) return -59; - return 0; - } - case 21510: - case 21511: - case 21512: - case 21506: - case 21507: - case 21508: { - if (!stream.tty) return -59; - return 0; // no-op, not actually adjusting terminal settings - } - case 21519: { - if (!stream.tty) return -59; - var argp = SYSCALLS.get(); - HEAP32[((argp)>>2)]=0; - return 0; - } - case 21520: { - if (!stream.tty) return -59; - return -28; // not supported - } - case 21531: { - var argp = SYSCALLS.get(); - return FS.ioctl(stream, op, argp); - } - case 21523: { - // TODO: in theory we should write to the winsize struct that gets - // passed in, but for now musl doesn't read anything on it - if (!stream.tty) return -59; - return 0; - } - case 21524: { - // TODO: technically, this ioctl call should change the window size. - // but, since emscripten doesn't have any concept of a terminal window - // yet, we'll just silently throw it away as we do TIOCGWINSZ - if (!stream.tty) return -59; - return 0; - } - default: abort('bad ioctl syscall ' + op); - } - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } + }); + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack); + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [ 44 ].forEach((function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = ""; + })); + }), + staticInit: (function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "NODEFS": NODEFS + }; + }), + init: (function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams(); + }), + quit: (function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue; + } + FS.close(stream); + } + }), + getMode: (function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode; + }), + joinPath: (function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path; + }), + absolutePath: (function(relative, base) { + return PATH_FS.resolve(base, relative); + }), + standardizePath: (function(path) { + return PATH.normalize(path); + }), + findObject: (function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object; + } else { + ___setErrNo(ret.error); + return null; } - - Module["___syscall54"] = ___syscall54; - - function ___syscall85(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(16, 1, which, varargs); - SYSCALLS.varargs = varargs; + }), + analyzePath: (function(path, dontResolveLastLink) { try { - // readlink - var path = SYSCALLS.getStr(), buf = SYSCALLS.get(), bufsize = SYSCALLS.get(); - return SYSCALLS.doReadlink(path, buf, bufsize); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } - } - - Module["___syscall85"] = ___syscall85; - - - function __emscripten_syscall_munmap(addr, len) { - if (addr === -1 || len === 0) { - return -28; - } - // TODO: support unmmap'ing parts of allocations - var info = SYSCALLS.mappings[addr]; - if (!info) return 0; - if (len === info.len) { - var stream = FS.getStream(info.fd); - SYSCALLS.doMsync(addr, stream, len, info.flags); - FS.munmap(stream); - SYSCALLS.mappings[addr] = null; - if (info.allocated) { - _free(info.malloc); - } - } - return 0; - } - Module["__emscripten_syscall_munmap"] = __emscripten_syscall_munmap;function ___syscall91(which, varargs) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(17, 1, which, varargs); - SYSCALLS.varargs = varargs; + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path; + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; try { - // munmap - var addr = SYSCALLS.get(), len = SYSCALLS.get(); - return __emscripten_syscall_munmap(addr, len); - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return -e.errno; - } + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/"; + } catch (e) { + ret.error = e.errno; } - - Module["___syscall91"] = ___syscall91; - - function ___unlock() {} - Module["___unlock"] = ___unlock; - - function _abort() { - abort(); - } - Module["_abort"] = _abort; - - - function _emscripten_check_blocking_allowed() { - assert(ENVIRONMENT_IS_WEB); - warnOnce('Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread'); - } - Module["_emscripten_check_blocking_allowed"] = _emscripten_check_blocking_allowed; - - - function _emscripten_conditional_set_current_thread_status_js(expectedStatus, newStatus) { - } - Module["_emscripten_conditional_set_current_thread_status_js"] = _emscripten_conditional_set_current_thread_status_js;function _emscripten_conditional_set_current_thread_status(expectedStatus, newStatus) { - expectedStatus = expectedStatus|0; - newStatus = newStatus|0; - } - Module["_emscripten_conditional_set_current_thread_status"] = _emscripten_conditional_set_current_thread_status; - - function _emscripten_futex_wait(addr, val, timeout) { - if (addr <= 0 || addr > HEAP8.length || addr&3 != 0) return -28; - // dump('futex_wait addr:' + addr + ' by thread: ' + _pthread_self() + (ENVIRONMENT_IS_PTHREAD?'(pthread)':'') + '\n'); - if (ENVIRONMENT_IS_WORKER) { - var ret = Atomics.wait(HEAP32, addr >> 2, val, timeout); - // dump('futex_wait done by thread: ' + _pthread_self() + (ENVIRONMENT_IS_PTHREAD?'(pthread)':'') + '\n'); - if (ret === 'timed-out') return -73; - if (ret === 'not-equal') return -6; - if (ret === 'ok') return 0; - throw 'Atomics.wait returned an unexpected value ' + ret; - } else { - // Atomics.wait is not available in the main browser thread, so simulate it via busy spinning. - var loadedVal = Atomics.load(HEAP32, addr >> 2); - if (val != loadedVal) return -6; - - var tNow = performance.now(); - var tEnd = tNow + timeout; - - - // Register globally which address the main thread is simulating to be waiting on. When zero, main thread is not waiting on anything, - // and on nonzero, the contents of address pointed by __main_thread_futex_wait_address tell which address the main thread is simulating its wait on. - Atomics.store(HEAP32, __main_thread_futex_wait_address >> 2, addr); - var ourWaitAddress = addr; // We may recursively re-enter this function while processing queued calls, in which case we'll do a spurious wakeup of the older wait operation. - while (addr == ourWaitAddress) { - tNow = performance.now(); - if (tNow > tEnd) { - return -73; - } - _emscripten_main_thread_process_queued_calls(); // We are performing a blocking loop here, so must pump any pthreads if they want to perform operations that are proxied. - addr = Atomics.load(HEAP32, __main_thread_futex_wait_address >> 2); // Look for a worker thread waking us up. - } - return 0; - } - } - Module["_emscripten_futex_wait"] = _emscripten_futex_wait; - - - function _emscripten_get_heap_size() { - return HEAP8.length; - } - Module["_emscripten_get_heap_size"] = _emscripten_get_heap_size; - - - function _emscripten_get_sbrk_ptr() { - return 12594960; - } - Module["_emscripten_get_sbrk_ptr"] = _emscripten_get_sbrk_ptr; - - function _emscripten_has_threading_support() { - return typeof SharedArrayBuffer !== 'undefined'; - } - Module["_emscripten_has_threading_support"] = _emscripten_has_threading_support; - - function _emscripten_is_main_browser_thread() { - return __pthread_is_main_browser_thread|0; // Semantically the same as testing "!ENVIRONMENT_IS_WORKER" outside the asm.js scope - } - Module["_emscripten_is_main_browser_thread"] = _emscripten_is_main_browser_thread; - - function _emscripten_is_main_runtime_thread() { - return __pthread_is_main_runtime_thread|0; // Semantically the same as testing "!ENVIRONMENT_IS_PTHREAD" outside the asm.js scope - } - Module["_emscripten_is_main_runtime_thread"] = _emscripten_is_main_runtime_thread; - - - - - var setjmpId=0; - Module["setjmpId"] = setjmpId;function _saveSetjmp(env, label, table, size) { - // Not particularly fast: slow table lookup of setjmpId to label. But setjmp - // prevents relooping anyhow, so slowness is to be expected. And typical case - // is 1 setjmp per invocation, or less. - env = env|0; - label = label|0; - table = table|0; - size = size|0; - var i = 0; - setjmpId = (setjmpId+1)|0; - HEAP32[((env)>>2)]=setjmpId; - while ((i|0) < (size|0)) { - if (((HEAP32[(((table)+((i<<3)))>>2)])|0) == 0) { - HEAP32[(((table)+((i<<3)))>>2)]=setjmpId; - HEAP32[(((table)+((i<<3)+4))>>2)]=label; - // prepare next slot - HEAP32[(((table)+((i<<3)+8))>>2)]=0; - setTempRet0((size) | 0); - return table | 0; - } - i = i+1|0; - } - // grow the table - size = (size*2)|0; - table = _realloc(table|0, 8*(size+1|0)|0) | 0; - table = _saveSetjmp(env|0, label|0, table|0, size|0) | 0; - setTempRet0((size) | 0); - return table | 0; - } - Module["_saveSetjmp"] = _saveSetjmp; - - function _testSetjmp(id, table, size) { - id = id|0; - table = table|0; - size = size|0; - var i = 0, curr = 0; - while ((i|0) < (size|0)) { - curr = ((HEAP32[(((table)+((i<<3)))>>2)])|0); - if ((curr|0) == 0) break; - if ((curr|0) == (id|0)) { - return ((HEAP32[(((table)+((i<<3)+4))>>2)])|0); - } - i = i+1|0; - } - return 0; - } - Module["_testSetjmp"] = _testSetjmp;function _longjmp(env, value) { - _setThrew(env, value || 1); - throw 'longjmp'; - } - Module["_longjmp"] = _longjmp;function _emscripten_longjmp(env, value) { - _longjmp(env, value); - } - Module["_emscripten_longjmp"] = _emscripten_longjmp; - - function _emscripten_memcpy_big(dest, src, num) { - HEAPU8.set(HEAPU8.subarray(src, src+num), dest); - } - Module["_emscripten_memcpy_big"] = _emscripten_memcpy_big; - - - function _emscripten_proxy_to_main_thread_js(index, sync) { - // Additional arguments are passed after those two, which are the actual - // function arguments. - // The serialization buffer contains the number of call params, and then - // all the args here. - // We also pass 'sync' to C separately, since C needs to look at it. - var numCallArgs = arguments.length - 2; - if (numCallArgs > 20-1) throw 'emscripten_proxy_to_main_thread_js: Too many arguments ' + numCallArgs + ' to proxied function idx=' + index + ', maximum supported is ' + (20-1) + '!'; - // Allocate a buffer, which will be copied by the C code. - var stack = stackSave(); - // First passed parameter specifies the number of arguments to the function. - var args = stackAlloc(numCallArgs * 8); - var b = args >> 3; - for (var i = 0; i < numCallArgs; i++) { - HEAPF64[b + i] = arguments[2 + i]; - } - var ret = _emscripten_run_in_main_runtime_thread_js(index, numCallArgs, args, sync); - stackRestore(stack); - return ret; - } - Module["_emscripten_proxy_to_main_thread_js"] = _emscripten_proxy_to_main_thread_js; - - var _emscripten_receive_on_main_thread_js_callArgs=[]; - Module["_emscripten_receive_on_main_thread_js_callArgs"] = _emscripten_receive_on_main_thread_js_callArgs;function _emscripten_receive_on_main_thread_js(index, numCallArgs, args) { - _emscripten_receive_on_main_thread_js_callArgs.length = numCallArgs; - var b = args >> 3; - for (var i = 0; i < numCallArgs; i++) { - _emscripten_receive_on_main_thread_js_callArgs[i] = HEAPF64[b + i]; - } - // Proxied JS library funcs are encoded as positive values, and - // EM_ASMs as negative values (see include_asm_consts) - var isEmAsmConst = index < 0; - var func = !isEmAsmConst ? proxiedFunctionTable[index] : ASM_CONSTS[-index - 1]; - if (isEmAsmConst) { - // EM_ASM arguments are stored in their own buffer in memory, that we need - // to unpack in order to call. The proxied arguments are the code index, - // signature pointer, and vararg buffer pointer, in that order. - var sigPtr = _emscripten_receive_on_main_thread_js_callArgs[1]; - var varargPtr = _emscripten_receive_on_main_thread_js_callArgs[2]; - var constArgs = readAsmConstArgs(sigPtr, varargPtr); - return func.apply(null, constArgs); - } - assert(func.length == numCallArgs, 'Call args mismatch in emscripten_receive_on_main_thread_js'); - return func.apply(null, _emscripten_receive_on_main_thread_js_callArgs); + return ret; + }), + createFolder: (function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode); + }), + createPath: (function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current); + } catch (e) {} + parent = current; + } + return current; + }), + createFile: (function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode); + }), + createDataFile: (function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr; + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode); + } + return node; + }), + createDevice: (function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: (function(stream) { + stream.seekable = false; + }), + close: (function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10); } - Module["_emscripten_receive_on_main_thread_js"] = _emscripten_receive_on_main_thread_js; - - - function abortOnCannotGrowMemory(requestedSize) { - abort('Cannot enlarge memory arrays to size ' + requestedSize + ' bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ' + HEAP8.length + ', (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 '); + }), + read: (function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input(); + } catch (e) { + throw new FS.ErrnoError(29); + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6); + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result; } - Module["abortOnCannotGrowMemory"] = abortOnCannotGrowMemory;function _emscripten_resize_heap(requestedSize) { - abortOnCannotGrowMemory(requestedSize); + if (bytesRead) { + stream.node.timestamp = Date.now(); } - Module["_emscripten_resize_heap"] = _emscripten_resize_heap; - - - var JSEvents={keyEvent:0,mouseEvent:0,wheelEvent:0,uiEvent:0,focusEvent:0,deviceOrientationEvent:0,deviceMotionEvent:0,fullscreenChangeEvent:0,pointerlockChangeEvent:0,visibilityChangeEvent:0,touchEvent:0,previousFullscreenElement:null,previousScreenX:null,previousScreenY:null,removeEventListenersRegistered:false,removeAllEventListeners:function() { - for(var i = JSEvents.eventHandlers.length-1; i >= 0; --i) { - JSEvents._removeHandler(i); - } - JSEvents.eventHandlers = []; - JSEvents.deferredCalls = []; - },registerRemoveEventListeners:function() { - if (!JSEvents.removeEventListenersRegistered) { - __ATEXIT__.push(JSEvents.removeAllEventListeners); - JSEvents.removeEventListenersRegistered = true; - } - },deferredCalls:[],deferCall:function(targetFunction, precedence, argsList) { - function arraysHaveEqualContent(arrA, arrB) { - if (arrA.length != arrB.length) return false; - - for(var i in arrA) { - if (arrA[i] != arrB[i]) return false; - } - return true; - } - // Test if the given call was already queued, and if so, don't add it again. - for(var i in JSEvents.deferredCalls) { - var call = JSEvents.deferredCalls[i]; - if (call.targetFunction == targetFunction && arraysHaveEqualContent(call.argsList, argsList)) { - return; - } - } - JSEvents.deferredCalls.push({ - targetFunction: targetFunction, - precedence: precedence, - argsList: argsList - }); - - JSEvents.deferredCalls.sort(function(x,y) { return x.precedence < y.precedence; }); - },removeDeferredCalls:function(targetFunction) { - for(var i = 0; i < JSEvents.deferredCalls.length; ++i) { - if (JSEvents.deferredCalls[i].targetFunction == targetFunction) { - JSEvents.deferredCalls.splice(i, 1); - --i; - } - } - },canPerformEventHandlerRequests:function() { - return JSEvents.inEventHandler && JSEvents.currentEventHandler.allowsDeferredCalls; - },runDeferredCalls:function() { - if (!JSEvents.canPerformEventHandlerRequests()) { - return; - } - for(var i = 0; i < JSEvents.deferredCalls.length; ++i) { - var call = JSEvents.deferredCalls[i]; - JSEvents.deferredCalls.splice(i, 1); - --i; - call.targetFunction.apply(this, call.argsList); - } - },inEventHandler:0,currentEventHandler:null,eventHandlers:[],isInternetExplorer:function() { return navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0; },removeAllHandlersOnTarget:function(target, eventTypeString) { - for(var i = 0; i < JSEvents.eventHandlers.length; ++i) { - if (JSEvents.eventHandlers[i].target == target && - (!eventTypeString || eventTypeString == JSEvents.eventHandlers[i].eventTypeString)) { - JSEvents._removeHandler(i--); - } - } - },_removeHandler:function(i) { - var h = JSEvents.eventHandlers[i]; - h.target.removeEventListener(h.eventTypeString, h.eventListenerFunc, h.useCapture); - JSEvents.eventHandlers.splice(i, 1); - },registerOrRemoveHandler:function(eventHandler) { - var jsEventHandler = function jsEventHandler(event) { - // Increment nesting count for the event handler. - ++JSEvents.inEventHandler; - JSEvents.currentEventHandler = eventHandler; - // Process any old deferred calls the user has placed. - JSEvents.runDeferredCalls(); - // Process the actual event, calls back to user C code handler. - eventHandler.handlerFunc(event); - // Process any new deferred calls that were placed right now from this event handler. - JSEvents.runDeferredCalls(); - // Out of event handler - restore nesting count. - --JSEvents.inEventHandler; - }; - - if (eventHandler.callbackfunc) { - eventHandler.eventListenerFunc = jsEventHandler; - eventHandler.target.addEventListener(eventHandler.eventTypeString, jsEventHandler, eventHandler.useCapture); - JSEvents.eventHandlers.push(eventHandler); - JSEvents.registerRemoveEventListeners(); - } else { - for(var i = 0; i < JSEvents.eventHandlers.length; ++i) { - if (JSEvents.eventHandlers[i].target == eventHandler.target - && JSEvents.eventHandlers[i].eventTypeString == eventHandler.eventTypeString) { - JSEvents._removeHandler(i--); - } - } - } - },queueEventHandlerOnThread_iiii:function(targetThread, eventHandlerFunc, eventTypeId, eventData, userData) { - var stackTop = stackSave(); - var varargs = stackAlloc(12); - HEAP32[((varargs)>>2)]=eventTypeId; - HEAP32[(((varargs)+(4))>>2)]=eventData; - HEAP32[(((varargs)+(8))>>2)]=userData; - _emscripten_async_queue_on_thread_(targetThread, 637534208, eventHandlerFunc, eventData, varargs); - stackRestore(stackTop); - },getTargetThreadForEventCallback:function(targetThread) { - switch(targetThread) { - case 1: return 0; // The event callback for the current event should be called on the main browser thread. (0 == don't proxy) - case 2: return PThread.currentProxiedOperationCallerThread; // The event callback for the current event should be backproxied to the the thread that is registering the event. - default: return targetThread; // The event callback for the current event should be proxied to the given specific thread. - } - },getBoundingClientRectOrZeros:function(target) { - return target.getBoundingClientRect ? target.getBoundingClientRect() : { left: 0, top: 0 }; - },getNodeNameForTarget:function(target) { - if (!target) return ''; - if (target == window) return '#window'; - if (target == screen) return '#screen'; - return (target && target.nodeName) ? target.nodeName : ''; - },tick:function() { - if (window['performance'] && window['performance']['now']) return window['performance']['now'](); - else return Date.now(); - },fullscreenEnabled:function() { - return document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled; - }}; - Module["JSEvents"] = JSEvents; - - - - - function stringToNewUTF8(jsString) { - var length = lengthBytesUTF8(jsString)+1; - var cString = _malloc(length); - stringToUTF8(jsString, cString, length); - return cString; + return bytesRead; + }), + write: (function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]); + } catch (e) { + throw new FS.ErrnoError(29); + } } - Module["stringToNewUTF8"] = stringToNewUTF8;function _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread, targetCanvas, width, height) { - var stackTop = stackSave(); - var varargs = stackAlloc(12); - var targetCanvasPtr = 0; - if (targetCanvas) { - targetCanvasPtr = stringToNewUTF8(targetCanvas); - } - HEAP32[((varargs)>>2)]=targetCanvasPtr; - HEAP32[(((varargs)+(4))>>2)]=width; - HEAP32[(((varargs)+(8))>>2)]=height; - // Note: If we are also a pthread, the call below could theoretically be done synchronously. However if the target pthread is waiting for a mutex from us, then - // these two threads will deadlock. At the moment, we'd like to consider that this kind of deadlock would be an Emscripten runtime bug, although if - // emscripten_set_canvas_element_size() was documented to require running an event in the queue of thread that owns the OffscreenCanvas, then that might be ok. - // (safer this way however) - _emscripten_async_queue_on_thread_(targetThread, 657457152, 0, targetCanvasPtr /* satellite data */, varargs); - stackRestore(stackTop); + if (length) { + stream.node.timestamp = Date.now(); } - Module["_emscripten_set_offscreencanvas_size_on_target_thread_js"] = _emscripten_set_offscreencanvas_size_on_target_thread_js;function _emscripten_set_offscreencanvas_size_on_target_thread(targetThread, targetCanvas, width, height) { - targetCanvas = targetCanvas ? UTF8ToString(targetCanvas) : ''; - _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread, targetCanvas, width, height); + return i; + }) + }); + return FS.mkdev(path, mode, dev); + }), + createLink: (function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + return FS.symlink(target, path); + }), + forceLoadFile: (function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread."); + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length; + } catch (e) { + success = false; + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest."); + } + if (!success) ___setErrNo(29); + return success; + }), + createLazyFile: (function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = []; + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined; + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset]; + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter; + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = (function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined"); } - Module["_emscripten_set_offscreencanvas_size_on_target_thread"] = _emscripten_set_offscreencanvas_size_on_target_thread; - - - - var __specialEventTargets=[0, typeof document !== 'undefined' ? document : 0, typeof window !== 'undefined' ? window : 0]; - Module["__specialEventTargets"] = __specialEventTargets;function __findEventTarget(target) { - warnOnce('Rules for selecting event targets in HTML5 API are changing: instead of using document.getElementById() that only can refer to elements by their DOM ID, new event target selection mechanism uses the more flexible function document.querySelector() that can look up element names, classes, and complex CSS selectors. Build with -s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1 to change to the new lookup rules. See https://github.com/emscripten-core/emscripten/pull/7977 for more details.'); - try { - // The sensible "default" target varies between events, but use window as the default - // since DOM events mostly can default to that. Specific callback registrations - // override their own defaults. - if (!target) return window; - if (typeof target === "number") target = __specialEventTargets[target] || UTF8ToString(target); - if (target === '#window') return window; - else if (target === '#document') return document; - else if (target === '#screen') return screen; - else if (target === '#canvas') return Module['canvas']; - return (typeof target === 'string') ? document.getElementById(target) : target; - } catch(e) { - // In Web Workers, some objects above, such as '#document' do not exist. Gracefully - // return null for them. - return null; - } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []); + } else { + return intArrayFromString(xhr.responseText || "", true); } - Module["__findEventTarget"] = __findEventTarget;function __findCanvasEventTarget(target) { - if (typeof target === 'number') target = UTF8ToString(target); - if (!target || target === '#canvas') { - if (typeof GL !== 'undefined' && GL.offscreenCanvases['canvas']) return GL.offscreenCanvases['canvas']; // TODO: Remove this line, target '#canvas' should refer only to Module['canvas'], not to GL.offscreenCanvases['canvas'] - but need stricter tests to be able to remove this line. - return Module['canvas']; - } - if (typeof GL !== 'undefined' && GL.offscreenCanvases[target]) return GL.offscreenCanvases[target]; - return __findEventTarget(target); + }); + var lazyArray = this; + lazyArray.setDataGetter((function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end); } - Module["__findCanvasEventTarget"] = __findCanvasEventTarget;function _emscripten_set_canvas_element_size_calling_thread(target, width, height) { - var canvas = __findCanvasEventTarget(target); - if (!canvas) return -4; - - if (canvas.canvasSharedPtr) { - // N.B. We hold the canvasSharedPtr info structure as the authoritative source for specifying the size of a canvas - // since the actual canvas size changes are asynchronous if the canvas is owned by an OffscreenCanvas on another thread. - // Therefore when setting the size, eagerly set the size of the canvas on the calling thread here, though this thread - // might not be the one that actually ends up specifying the size, but the actual size change may be dispatched - // as an asynchronous event below. - HEAP32[((canvas.canvasSharedPtr)>>2)]=width; - HEAP32[(((canvas.canvasSharedPtr)+(4))>>2)]=height; - } - - if (canvas.offscreenCanvas || !canvas.controlTransferredOffscreen) { - if (canvas.offscreenCanvas) canvas = canvas.offscreenCanvas; - var autoResizeViewport = false; - if (canvas.GLctxObject && canvas.GLctxObject.GLctx) { - var prevViewport = canvas.GLctxObject.GLctx.getParameter(canvas.GLctxObject.GLctx.VIEWPORT); - // TODO: Perhaps autoResizeViewport should only be true if FBO 0 is currently active? - autoResizeViewport = (prevViewport[0] === 0 && prevViewport[1] === 0 && prevViewport[2] === canvas.width && prevViewport[3] === canvas.height); - } - canvas.width = width; - canvas.height = height; - if (autoResizeViewport) { - // TODO: Add -s CANVAS_RESIZE_SETS_GL_VIEWPORT=0/1 option (default=1). This is commonly done and several graphics engines depend on this, - // but this can be quite disruptive. - canvas.GLctxObject.GLctx.viewport(0, 0, width, height); - } - } else if (canvas.canvasSharedPtr) { - var targetThread = HEAP32[(((canvas.canvasSharedPtr)+(8))>>2)]; - _emscripten_set_offscreencanvas_size_on_target_thread(targetThread, target, width, height); - return 1; // This will have to be done asynchronously - } else { - return -4; + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum]; + })); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed"); + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true; + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: (function() { + if (!this.lengthKnown) { + this.cacheLength(); } - return 0; - } - Module["_emscripten_set_canvas_element_size_calling_thread"] = _emscripten_set_canvas_element_size_calling_thread; - - function _emscripten_set_canvas_element_size_main_thread(target, width, height) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(18, 1, target, width, height); - return _emscripten_set_canvas_element_size_calling_thread(target, width, height); } - - Module["_emscripten_set_canvas_element_size_main_thread"] = _emscripten_set_canvas_element_size_main_thread;function _emscripten_set_canvas_element_size(target, width, height) { - var canvas = __findCanvasEventTarget(target); - if (canvas) { - return _emscripten_set_canvas_element_size_calling_thread(target, width, height); - } else { - return _emscripten_set_canvas_element_size_main_thread(target, width, height); + return this._length; + }) + }, + chunkSize: { + get: (function() { + if (!this.lengthKnown) { + this.cacheLength(); } + return this._chunkSize; + }) } - Module["_emscripten_set_canvas_element_size"] = _emscripten_set_canvas_element_size; - - - function _emscripten_set_current_thread_status_js(newStatus) { - } - Module["_emscripten_set_current_thread_status_js"] = _emscripten_set_current_thread_status_js;function _emscripten_set_current_thread_status(newStatus) { - newStatus = newStatus|0; - } - Module["_emscripten_set_current_thread_status"] = _emscripten_set_current_thread_status; - - - function _emscripten_set_thread_name_js(threadId, name) { - } - Module["_emscripten_set_thread_name_js"] = _emscripten_set_thread_name_js;function _emscripten_set_thread_name(threadId, name) { - threadId = threadId|0; - name = name|0; - } - Module["_emscripten_set_thread_name"] = _emscripten_set_thread_name; - - function _emscripten_syscall(which, varargs) { - switch (which) { - case 10: return ___syscall10(which, varargs); - case 12: return ___syscall12(which, varargs); - case 183: return ___syscall183(which, varargs); - case 192: return ___syscall192(which, varargs); - case 195: return ___syscall195(which, varargs); - case 196: return ___syscall196(which, varargs); - case 220: return ___syscall220(which, varargs); - case 221: return ___syscall221(which, varargs); - case 3: return ___syscall3(which, varargs); - case 39: return ___syscall39(which, varargs); - case 4: return ___syscall4(which, varargs); - case 40: return ___syscall40(which, varargs); - case 5: return ___syscall5(which, varargs); - case 54: return ___syscall54(which, varargs); - case 85: return ___syscall85(which, varargs); - case 91: return ___syscall91(which, varargs); - default: throw "surprising proxied syscall: " + which; - } - } - Module["_emscripten_syscall"] = _emscripten_syscall; - - - - var __emscripten_webgl_power_preferences=['default', 'low-power', 'high-performance']; - Module["__emscripten_webgl_power_preferences"] = __emscripten_webgl_power_preferences; - - var GL={counter:1,lastError:0,buffers:[],mappedBuffers:{},programs:[],framebuffers:[],renderbuffers:[],textures:[],uniforms:[],shaders:[],vaos:[],contexts:{},currentContext:null,offscreenCanvases:{},timerQueriesEXT:[],programInfos:{},stringCache:{},unpackAlignment:4,init:function() { - GL.miniTempBuffer = new Float32Array(GL.MINI_TEMP_BUFFER_SIZE); - for (var i = 0; i < GL.MINI_TEMP_BUFFER_SIZE; i++) { - GL.miniTempBufferViews[i] = GL.miniTempBuffer.subarray(0, i+1); - } - },recordError:function recordError(errorCode) { - if (!GL.lastError) { - GL.lastError = errorCode; - } - },getNewId:function(table) { - var ret = GL.counter++; - for (var i = table.length; i < ret; i++) { - table[i] = null; - } - return ret; - },MINI_TEMP_BUFFER_SIZE:256,miniTempBuffer:null,miniTempBufferViews:[0],getSource:function(shader, count, string, length) { - var source = ''; - for (var i = 0; i < count; ++i) { - var len = length ? HEAP32[(((length)+(i*4))>>2)] : -1; - source += UTF8ToString(HEAP32[(((string)+(i*4))>>2)], len < 0 ? undefined : len); - } - return source; - },createContext:function(canvas, webGLContextAttributes) { - - - - - var ctx = - (canvas.getContext("webgl", webGLContextAttributes) || canvas.getContext("experimental-webgl", webGLContextAttributes)); - - - if (!ctx) return 0; - - var handle = GL.registerContext(ctx, webGLContextAttributes); - - - - return handle; - },registerContext:function(ctx, webGLContextAttributes) { - var handle = _malloc(8); // Make space on the heap to store GL context attributes that need to be accessible as shared between threads. - HEAP32[(((handle)+(4))>>2)]=_pthread_self(); // the thread pointer of the thread that owns the control of the context - var context = { - handle: handle, - attributes: webGLContextAttributes, - version: webGLContextAttributes.majorVersion, - GLctx: ctx - }; - - - - // Store the created context object so that we can access the context given a canvas without having to pass the parameters again. - if (ctx.canvas) ctx.canvas.GLctxObject = context; - GL.contexts[handle] = context; - if (typeof webGLContextAttributes.enableExtensionsByDefault === 'undefined' || webGLContextAttributes.enableExtensionsByDefault) { - GL.initExtensions(context); - } - - - - - return handle; - },makeContextCurrent:function(contextHandle) { - - GL.currentContext = GL.contexts[contextHandle]; // Active Emscripten GL layer context object. - Module.ctx = GLctx = GL.currentContext && GL.currentContext.GLctx; // Active WebGL context object. - return !(contextHandle && !GLctx); - },getContext:function(contextHandle) { - return GL.contexts[contextHandle]; - },deleteContext:function(contextHandle) { - if (GL.currentContext === GL.contexts[contextHandle]) GL.currentContext = null; - if (typeof JSEvents === 'object') JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas); // Release all JS event handlers on the DOM element that the GL context is associated with since the context is now deleted. - if (GL.contexts[contextHandle] && GL.contexts[contextHandle].GLctx.canvas) GL.contexts[contextHandle].GLctx.canvas.GLctxObject = undefined; // Make sure the canvas object no longer refers to the context object so there are no GC surprises. - _free(GL.contexts[contextHandle]); - GL.contexts[contextHandle] = null; - },acquireInstancedArraysExtension:function(ctx) { - // Extension available in WebGL 1 from Firefox 26 and Google Chrome 30 onwards. Core feature in WebGL 2. - var ext = ctx.getExtension('ANGLE_instanced_arrays'); - if (ext) { - ctx['vertexAttribDivisor'] = function(index, divisor) { ext['vertexAttribDivisorANGLE'](index, divisor); }; - ctx['drawArraysInstanced'] = function(mode, first, count, primcount) { ext['drawArraysInstancedANGLE'](mode, first, count, primcount); }; - ctx['drawElementsInstanced'] = function(mode, count, type, indices, primcount) { ext['drawElementsInstancedANGLE'](mode, count, type, indices, primcount); }; - } - },acquireVertexArrayObjectExtension:function(ctx) { - // Extension available in WebGL 1 from Firefox 25 and WebKit 536.28/desktop Safari 6.0.3 onwards. Core feature in WebGL 2. - var ext = ctx.getExtension('OES_vertex_array_object'); - if (ext) { - ctx['createVertexArray'] = function() { return ext['createVertexArrayOES'](); }; - ctx['deleteVertexArray'] = function(vao) { ext['deleteVertexArrayOES'](vao); }; - ctx['bindVertexArray'] = function(vao) { ext['bindVertexArrayOES'](vao); }; - ctx['isVertexArray'] = function(vao) { return ext['isVertexArrayOES'](vao); }; - } - },acquireDrawBuffersExtension:function(ctx) { - // Extension available in WebGL 1 from Firefox 28 onwards. Core feature in WebGL 2. - var ext = ctx.getExtension('WEBGL_draw_buffers'); - if (ext) { - ctx['drawBuffers'] = function(n, bufs) { ext['drawBuffersWEBGL'](n, bufs); }; - } - },initExtensions:function(context) { - // If this function is called without a specific context object, init the extensions of the currently active context. - if (!context) context = GL.currentContext; - - if (context.initExtensionsDone) return; - context.initExtensionsDone = true; - - var GLctx = context.GLctx; - - // Detect the presence of a few extensions manually, this GL interop layer itself will need to know if they exist. - - if (context.version < 2) { - GL.acquireInstancedArraysExtension(GLctx); - GL.acquireVertexArrayObjectExtension(GLctx); - GL.acquireDrawBuffersExtension(GLctx); - } - - GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query"); - - // These are the 'safe' feature-enabling extensions that don't add any performance impact related to e.g. debugging, and - // should be enabled by default so that client GLES2/GL code will not need to go through extra hoops to get its stuff working. - // As new extensions are ratified at http://www.khronos.org/registry/webgl/extensions/ , feel free to add your new extensions - // here, as long as they don't produce a performance impact for users that might not be using those extensions. - // E.g. debugging-related extensions should probably be off by default. - var automaticallyEnabledExtensions = [ // Khronos ratified WebGL extensions ordered by number (no debug extensions): - "OES_texture_float", "OES_texture_half_float", "OES_standard_derivatives", - "OES_vertex_array_object", "WEBGL_compressed_texture_s3tc", "WEBGL_depth_texture", - "OES_element_index_uint", "EXT_texture_filter_anisotropic", "EXT_frag_depth", - "WEBGL_draw_buffers", "ANGLE_instanced_arrays", "OES_texture_float_linear", - "OES_texture_half_float_linear", "EXT_blend_minmax", "EXT_shader_texture_lod", - // Community approved WebGL extensions ordered by number: - "WEBGL_compressed_texture_pvrtc", "EXT_color_buffer_half_float", "WEBGL_color_buffer_float", - "EXT_sRGB", "WEBGL_compressed_texture_etc1", "EXT_disjoint_timer_query", - "WEBGL_compressed_texture_etc", "WEBGL_compressed_texture_astc", "EXT_color_buffer_float", - "WEBGL_compressed_texture_s3tc_srgb", "EXT_disjoint_timer_query_webgl2", - // Old style prefixed forms of extensions (but still currently used on e.g. iPhone Xs as - // tested on iOS 12.4.1): - "WEBKIT_WEBGL_compressed_texture_pvrtc"]; - - function shouldEnableAutomatically(extension) { - var ret = false; - automaticallyEnabledExtensions.forEach(function(include) { - if (extension.indexOf(include) != -1) { - ret = true; - } - }); - return ret; - } - - var exts = GLctx.getSupportedExtensions() || []; // .getSupportedExtensions() can return null if context is lost, so coerce to empty array. - exts.forEach(function(ext) { - if (automaticallyEnabledExtensions.indexOf(ext) != -1) { - GLctx.getExtension(ext); // Calling .getExtension enables that extension permanently, no need to store the return value to be enabled. - } - }); - },populateUniformTable:function(program) { - var p = GL.programs[program]; - var ptable = GL.programInfos[program] = { - uniforms: {}, - maxUniformLength: 0, // This is eagerly computed below, since we already enumerate all uniforms anyway. - maxAttributeLength: -1, // This is lazily computed and cached, computed when/if first asked, "-1" meaning not computed yet. - maxUniformBlockNameLength: -1 // Lazily computed as well - }; - - var utable = ptable.uniforms; - // A program's uniform table maps the string name of an uniform to an integer location of that uniform. - // The global GL.uniforms map maps integer locations to WebGLUniformLocations. - var numUniforms = GLctx.getProgramParameter(p, 0x8B86/*GL_ACTIVE_UNIFORMS*/); - for (var i = 0; i < numUniforms; ++i) { - var u = GLctx.getActiveUniform(p, i); - - var name = u.name; - ptable.maxUniformLength = Math.max(ptable.maxUniformLength, name.length+1); - - // If we are dealing with an array, e.g. vec4 foo[3], strip off the array index part to canonicalize that "foo", "foo[]", - // and "foo[0]" will mean the same. Loop below will populate foo[1] and foo[2]. - if (name.slice(-1) == ']') { - name = name.slice(0, name.lastIndexOf('[')); - } - - // Optimize memory usage slightly: If we have an array of uniforms, e.g. 'vec3 colors[3];', then - // only store the string 'colors' in utable, and 'colors[0]', 'colors[1]' and 'colors[2]' will be parsed as 'colors'+i. - // Note that for the GL.uniforms table, we still need to fetch the all WebGLUniformLocations for all the indices. - var loc = GLctx.getUniformLocation(p, name); - if (loc) { - var id = GL.getNewId(GL.uniforms); - utable[name] = [u.size, id]; - GL.uniforms[id] = loc; - - for (var j = 1; j < u.size; ++j) { - var n = name + '['+j+']'; - loc = GLctx.getUniformLocation(p, n); - id = GL.getNewId(GL.uniforms); - - GL.uniforms[id] = loc; - } - } - } - }}; - Module["GL"] = GL;function _emscripten_webgl_do_create_context(target, attributes) { - assert(attributes); - var contextAttributes = {}; - var a = attributes >> 2; - contextAttributes['alpha'] = !!HEAP32[a + (0>>2)]; - contextAttributes['depth'] = !!HEAP32[a + (4>>2)]; - contextAttributes['stencil'] = !!HEAP32[a + (8>>2)]; - contextAttributes['antialias'] = !!HEAP32[a + (12>>2)]; - contextAttributes['premultipliedAlpha'] = !!HEAP32[a + (16>>2)]; - contextAttributes['preserveDrawingBuffer'] = !!HEAP32[a + (20>>2)]; - var powerPreference = HEAP32[a + (24>>2)]; - contextAttributes['powerPreference'] = __emscripten_webgl_power_preferences[powerPreference]; - contextAttributes['failIfMajorPerformanceCaveat'] = !!HEAP32[a + (28>>2)]; - contextAttributes.majorVersion = HEAP32[a + (32>>2)]; - contextAttributes.minorVersion = HEAP32[a + (36>>2)]; - contextAttributes.enableExtensionsByDefault = HEAP32[a + (40>>2)]; - contextAttributes.explicitSwapControl = HEAP32[a + (44>>2)]; - contextAttributes.proxyContextToMainThread = HEAP32[a + (48>>2)]; - contextAttributes.renderViaOffscreenBackBuffer = HEAP32[a + (52>>2)]; - - var canvas = __findCanvasEventTarget(target); - - - - if (!canvas) { - return 0; - } - - if (contextAttributes.explicitSwapControl) { - return 0; - } - - - var contextHandle = GL.createContext(canvas, contextAttributes); - return contextHandle; + }); + var properties = { + isDevice: false, + contents: lazyArray + }; + } else { + var properties = { + isDevice: false, + url: url + }; + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents; + } else if (properties.url) { + node.contents = null; + node.url = properties.url; + } + Object.defineProperties(node, { + usedBytes: { + get: (function() { + return this.contents.length; + }) + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach((function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29); } - Module["_emscripten_webgl_do_create_context"] = _emscripten_webgl_do_create_context;function _emscripten_webgl_create_context(a0,a1 - ) { - return _emscripten_webgl_do_create_context(a0,a1); - } - Module["_emscripten_webgl_create_context"] = _emscripten_webgl_create_context; - - - - var ENV={}; - Module["ENV"] = ENV;function _emscripten_get_environ() { - if (!_emscripten_get_environ.strings) { - // Default values. - var env = { - 'USER': 'web_user', - 'LOGNAME': 'web_user', - 'PATH': '/', - 'PWD': '/', - 'HOME': '/home/web_user', - // Browser language detection #8751 - 'LANG': ((typeof navigator === 'object' && navigator.languages && navigator.languages[0]) || 'C').replace('-', '_') + '.UTF-8', - '_': thisProgram - }; - // Apply the user-provided values, if any. - for (var x in ENV) { - env[x] = ENV[x]; - } - var strings = []; - for (var x in env) { - strings.push(x + '=' + env[x]); - } - _emscripten_get_environ.strings = strings; - } - return _emscripten_get_environ.strings; + return fn.apply(null, arguments); + }; + })); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29); + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i]; } - Module["_emscripten_get_environ"] = _emscripten_get_environ;function _environ_get(__environ, environ_buf) { - var strings = _emscripten_get_environ(); - var bufSize = 0; - strings.forEach(function(string, i) { - var ptr = environ_buf + bufSize; - HEAP32[(((__environ)+(i * 4))>>2)]=ptr; - writeAsciiToMemory(string, ptr); - bufSize += string.length + 1; - }); - return 0; + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i); } - Module["_environ_get"] = _environ_get; - - function _environ_sizes_get(penviron_count, penviron_buf_size) { - var strings = _emscripten_get_environ(); - HEAP32[((penviron_count)>>2)]=strings.length; - var bufSize = 0; - strings.forEach(function(string) { - bufSize += string.length + 1; - }); - HEAP32[((penviron_buf_size)>>2)]=bufSize; - return 0; + } + return size; + }; + node.stream_ops = stream_ops; + return node; + }), + createPreloadedFile: (function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn); } - Module["_environ_sizes_get"] = _environ_sizes_get; - - function _exit(status) { - // void _exit(int status); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/exit.html - exit(status); + if (onload) onload(); + removeRunDependency(dep); + } + var handled = false; + Module["preloadPlugins"].forEach((function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, (function() { + if (onerror) onerror(); + removeRunDependency(dep); + })); + handled = true; } - Module["_exit"] = _exit; - - function _fd_close(fd) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(19, 1, fd); - try { - - var stream = SYSCALLS.getStreamFromFD(fd); - FS.close(stream); - return 0; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return e.errno; - } - } - - Module["_fd_close"] = _fd_close; - - function _fd_read(fd, iov, iovcnt, pnum) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(20, 1, fd, iov, iovcnt, pnum); + })); + if (!handled) finish(byteArray); + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, (function(byteArray) { + processData(byteArray); + }), onerror); + } else { + processData(url); + } + }), + indexedDB: (function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + }), + DB_NAME: (function() { + return "EM_FS_" + window.location.pathname; + }), + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: (function(paths, onload, onerror) { + onload = onload || (function() {}); + onerror = onerror || (function() {}); + var indexedDB = FS.indexedDB(); try { - - var stream = SYSCALLS.getStreamFromFD(fd); - var num = SYSCALLS.doReadv(stream, iov, iovcnt); - HEAP32[((pnum)>>2)]=num - return 0; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return e.errno; - } + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); } - - Module["_fd_read"] = _fd_read; - - function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(21, 1, fd, offset_low, offset_high, whence, newOffset); + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME); + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([ FS.DB_STORE_NAME ], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, fail = 0, total = paths.length; + function finish() { + if (fail == 0) onload(); else onerror(); + } + paths.forEach((function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish(); + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish(); + }; + })); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + }), + loadFilesFromDB: (function(paths, onload, onerror) { + onload = onload || (function() {}); + onerror = onerror || (function() {}); + var indexedDB = FS.indexedDB(); try { - - var stream = SYSCALLS.getStreamFromFD(fd); - var HIGH_OFFSET = 0x100000000; // 2^32 - // use an unsigned operator on low and shift high by 32-bits - var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); - - var DOUBLE_LIMIT = 0x20000000000000; // 2^53 - // we also check for equality since DOUBLE_LIMIT + 1 == DOUBLE_LIMIT - if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { - return -61; - } - - FS.llseek(stream, offset, whence); - (tempI64 = [stream.position>>>0,(tempDouble=stream.position,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((newOffset)>>2)]=tempI64[0],HEAP32[(((newOffset)+(4))>>2)]=tempI64[1]); - if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; // reset readdir state - return 0; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return e.errno; - } - } - - Module["_fd_seek"] = _fd_seek; - - function _fd_write(fd, iov, iovcnt, pnum) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(22, 1, fd, iov, iovcnt, pnum); + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([ FS.DB_STORE_NAME ], "readonly"); + } catch (e) { + onerror(e); + return; + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, fail = 0, total = paths.length; + function finish() { + if (fail == 0) onload(); else onerror(); + } + paths.forEach((function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path); + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish(); + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish(); + }; + })); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + }) +}; +Module["FS"] = FS; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: (function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd(); + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path; + } + path = PATH.join2(dir, path); + } + return path; + }), + doStat: (function(func, path, buf) { try { - - var stream = SYSCALLS.getStreamFromFD(fd); - var num = SYSCALLS.doWritev(stream, iov, iovcnt); - HEAP32[((pnum)>>2)]=num - return 0; - } catch (e) { - if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); - return e.errno; + var stat = func(path); + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return -54; + } + throw e; + } + GROWABLE_HEAP_STORE_I32(buf | 0, stat.dev); + GROWABLE_HEAP_STORE_I32(buf + 4 | 0, 0); + GROWABLE_HEAP_STORE_I32(buf + 8 | 0, stat.ino); + GROWABLE_HEAP_STORE_I32(buf + 12 | 0, stat.mode); + GROWABLE_HEAP_STORE_I32(buf + 16 | 0, stat.nlink); + GROWABLE_HEAP_STORE_I32(buf + 20 | 0, stat.uid); + GROWABLE_HEAP_STORE_I32(buf + 24 | 0, stat.gid); + GROWABLE_HEAP_STORE_I32(buf + 28 | 0, stat.rdev); + GROWABLE_HEAP_STORE_I32(buf + 32 | 0, 0); + tempI64 = [ stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], GROWABLE_HEAP_STORE_I32(buf + 40 | 0, tempI64[0]), GROWABLE_HEAP_STORE_I32(buf + 44 | 0, tempI64[1]); + GROWABLE_HEAP_STORE_I32(buf + 48 | 0, 4096); + GROWABLE_HEAP_STORE_I32(buf + 52 | 0, stat.blocks); + GROWABLE_HEAP_STORE_I32(buf + 56 | 0, stat.atime.getTime() / 1e3 | 0); + GROWABLE_HEAP_STORE_I32(buf + 60 | 0, 0); + GROWABLE_HEAP_STORE_I32(buf + 64 | 0, stat.mtime.getTime() / 1e3 | 0); + GROWABLE_HEAP_STORE_I32(buf + 68 | 0, 0); + GROWABLE_HEAP_STORE_I32(buf + 72 | 0, stat.ctime.getTime() / 1e3 | 0); + GROWABLE_HEAP_STORE_I32(buf + 76 | 0, 0); + tempI64 = [ stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], GROWABLE_HEAP_STORE_I32(buf + 80 | 0, tempI64[0]), GROWABLE_HEAP_STORE_I32(buf + 84 | 0, tempI64[1]); + return 0; + }), + doMsync: (function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags); + }), + doMkdir: (function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0; + }), + doMknod: (function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28; + } + FS.mknod(path, mode, dev); + return 0; + }), + doReadlink: (function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = GROWABLE_HEAP_LOAD_I8(buf + len | 0); + stringToUTF8(ret, buf, bufsize + 1); + GROWABLE_HEAP_STORE_I8(buf + len | 0, endChar); + return len; + }), + doAccess: (function(path, amode) { + if (amode & ~7) { + return -28; + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return -44; + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2; + } + return 0; + }), + doDup: (function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd; + }), + doReadv: (function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = GROWABLE_HEAP_LOAD_I32(iov + i * 8 | 0); + var len = GROWABLE_HEAP_LOAD_I32(iov + (i * 8 + 4) | 0); + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break; } + return ret; + }), + doWritev: (function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = GROWABLE_HEAP_LOAD_I32(iov + i * 8 | 0); + var len = GROWABLE_HEAP_LOAD_I32(iov + (i * 8 + 4) | 0); + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; } - - Module["_fd_write"] = _fd_write; - - function _getTempRet0() { - return (getTempRet0() | 0); - } - Module["_getTempRet0"] = _getTempRet0; - - function _gettimeofday(ptr) { - var now = Date.now(); - HEAP32[((ptr)>>2)]=(now/1000)|0; // seconds - HEAP32[(((ptr)+(4))>>2)]=((now % 1000)*1000)|0; // microseconds - return 0; - } - Module["_gettimeofday"] = _gettimeofday; - - - var ___tm_current=12594976; - Module["___tm_current"] = ___tm_current; - - - var ___tm_timezone=(stringToUTF8("GMT", 12595024, 4), 12595024); - Module["___tm_timezone"] = ___tm_timezone;function _gmtime_r(time, tmPtr) { - var date = new Date(HEAP32[((time)>>2)]*1000); - HEAP32[((tmPtr)>>2)]=date.getUTCSeconds(); - HEAP32[(((tmPtr)+(4))>>2)]=date.getUTCMinutes(); - HEAP32[(((tmPtr)+(8))>>2)]=date.getUTCHours(); - HEAP32[(((tmPtr)+(12))>>2)]=date.getUTCDate(); - HEAP32[(((tmPtr)+(16))>>2)]=date.getUTCMonth(); - HEAP32[(((tmPtr)+(20))>>2)]=date.getUTCFullYear()-1900; - HEAP32[(((tmPtr)+(24))>>2)]=date.getUTCDay(); - HEAP32[(((tmPtr)+(36))>>2)]=0; - HEAP32[(((tmPtr)+(32))>>2)]=0; - var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); - var yday = ((date.getTime() - start) / (1000 * 60 * 60 * 24))|0; - HEAP32[(((tmPtr)+(28))>>2)]=yday; - HEAP32[(((tmPtr)+(40))>>2)]=___tm_timezone; - - return tmPtr; - } - Module["_gmtime_r"] = _gmtime_r;function _gmtime(time) { - return _gmtime_r(time, ___tm_current); - } - Module["_gmtime"] = _gmtime; - - function _memcpy(dest, src, num) { - dest = dest|0; src = src|0; num = num|0; - var ret = 0; - var aligned_dest_end = 0; - var block_aligned_dest_end = 0; - var dest_end = 0; - // Test against a benchmarked cutoff limit for when HEAPU8.set() becomes faster to use. - if ((num|0) >= 8192) { - _emscripten_memcpy_big(dest|0, src|0, num|0)|0; - return dest|0; - } - - ret = dest|0; - dest_end = (dest + num)|0; - if ((dest&3) == (src&3)) { - // The initial unaligned < 4-byte front. - while (dest & 3) { - if ((num|0) == 0) return ret|0; - HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); - dest = (dest+1)|0; - src = (src+1)|0; - num = (num-1)|0; - } - aligned_dest_end = (dest_end & -4)|0; - block_aligned_dest_end = (aligned_dest_end - 64)|0; - while ((dest|0) <= (block_aligned_dest_end|0) ) { - HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); - HEAP32[(((dest)+(4))>>2)]=((HEAP32[(((src)+(4))>>2)])|0); - HEAP32[(((dest)+(8))>>2)]=((HEAP32[(((src)+(8))>>2)])|0); - HEAP32[(((dest)+(12))>>2)]=((HEAP32[(((src)+(12))>>2)])|0); - HEAP32[(((dest)+(16))>>2)]=((HEAP32[(((src)+(16))>>2)])|0); - HEAP32[(((dest)+(20))>>2)]=((HEAP32[(((src)+(20))>>2)])|0); - HEAP32[(((dest)+(24))>>2)]=((HEAP32[(((src)+(24))>>2)])|0); - HEAP32[(((dest)+(28))>>2)]=((HEAP32[(((src)+(28))>>2)])|0); - HEAP32[(((dest)+(32))>>2)]=((HEAP32[(((src)+(32))>>2)])|0); - HEAP32[(((dest)+(36))>>2)]=((HEAP32[(((src)+(36))>>2)])|0); - HEAP32[(((dest)+(40))>>2)]=((HEAP32[(((src)+(40))>>2)])|0); - HEAP32[(((dest)+(44))>>2)]=((HEAP32[(((src)+(44))>>2)])|0); - HEAP32[(((dest)+(48))>>2)]=((HEAP32[(((src)+(48))>>2)])|0); - HEAP32[(((dest)+(52))>>2)]=((HEAP32[(((src)+(52))>>2)])|0); - HEAP32[(((dest)+(56))>>2)]=((HEAP32[(((src)+(56))>>2)])|0); - HEAP32[(((dest)+(60))>>2)]=((HEAP32[(((src)+(60))>>2)])|0); - dest = (dest+64)|0; - src = (src+64)|0; - } - while ((dest|0) < (aligned_dest_end|0) ) { - HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); - dest = (dest+4)|0; - src = (src+4)|0; - } - } else { - // In the unaligned copy case, unroll a bit as well. - aligned_dest_end = (dest_end - 4)|0; - while ((dest|0) < (aligned_dest_end|0) ) { - HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); - HEAP8[(((dest)+(1))>>0)]=((HEAP8[(((src)+(1))>>0)])|0); - HEAP8[(((dest)+(2))>>0)]=((HEAP8[(((src)+(2))>>0)])|0); - HEAP8[(((dest)+(3))>>0)]=((HEAP8[(((src)+(3))>>0)])|0); - dest = (dest+4)|0; - src = (src+4)|0; - } - } - // The remaining unaligned < 4 byte tail. - while ((dest|0) < (dest_end|0)) { - HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); - dest = (dest+1)|0; - src = (src+1)|0; - } - return ret|0; - } - Module["_memcpy"] = _memcpy; - - - - function _tzset() { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(23, 1); - - // TODO: Use (malleable) environment variables instead of system settings. - if (_tzset.called) return; - _tzset.called = true; - - // timezone is specified as seconds west of UTC ("The external variable - // `timezone` shall be set to the difference, in seconds, between - // Coordinated Universal Time (UTC) and local standard time."), the same - // as returned by getTimezoneOffset(). - // See http://pubs.opengroup.org/onlinepubs/009695399/functions/tzset.html - HEAP32[((__get_timezone())>>2)]=(new Date()).getTimezoneOffset() * 60; - - var currentYear = new Date().getFullYear(); - var winter = new Date(currentYear, 0, 1); - var summer = new Date(currentYear, 6, 1); - HEAP32[((__get_daylight())>>2)]=Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); - - function extractZone(date) { - var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); - return match ? match[1] : "GMT"; - }; - var winterName = extractZone(winter); - var summerName = extractZone(summer); - var winterNamePtr = allocate(intArrayFromString(winterName), 'i8', ALLOC_NORMAL); - var summerNamePtr = allocate(intArrayFromString(summerName), 'i8', ALLOC_NORMAL); - if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { - // Northern hemisphere - HEAP32[((__get_tzname())>>2)]=winterNamePtr; - HEAP32[(((__get_tzname())+(4))>>2)]=summerNamePtr; - } else { - HEAP32[((__get_tzname())>>2)]=summerNamePtr; - HEAP32[(((__get_tzname())+(4))>>2)]=winterNamePtr; - } - } - - Module["_tzset"] = _tzset;function _mktime(tmPtr) { - _tzset(); - var date = new Date(HEAP32[(((tmPtr)+(20))>>2)] + 1900, - HEAP32[(((tmPtr)+(16))>>2)], - HEAP32[(((tmPtr)+(12))>>2)], - HEAP32[(((tmPtr)+(8))>>2)], - HEAP32[(((tmPtr)+(4))>>2)], - HEAP32[((tmPtr)>>2)], - 0); - - // There's an ambiguous hour when the time goes back; the tm_isdst field is - // used to disambiguate it. Date() basically guesses, so we fix it up if it - // guessed wrong, or fill in tm_isdst with the guess if it's -1. - var dst = HEAP32[(((tmPtr)+(32))>>2)]; - var guessedOffset = date.getTimezoneOffset(); - var start = new Date(date.getFullYear(), 0, 1); - var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); - var winterOffset = start.getTimezoneOffset(); - var dstOffset = Math.min(winterOffset, summerOffset); // DST is in December in South - if (dst < 0) { - // Attention: some regions don't have DST at all. - HEAP32[(((tmPtr)+(32))>>2)]=Number(summerOffset != winterOffset && dstOffset == guessedOffset); - } else if ((dst > 0) != (dstOffset == guessedOffset)) { - var nonDstOffset = Math.max(winterOffset, summerOffset); - var trueOffset = dst > 0 ? dstOffset : nonDstOffset; - // Don't try setMinutes(date.getMinutes() + ...) -- it's messed up. - date.setTime(date.getTime() + (trueOffset - guessedOffset)*60000); - } - - HEAP32[(((tmPtr)+(24))>>2)]=date.getDay(); - var yday = ((date.getTime() - start.getTime()) / (1000 * 60 * 60 * 24))|0; - HEAP32[(((tmPtr)+(28))>>2)]=yday; - - return (date.getTime() / 1000)|0; - } - Module["_mktime"] = _mktime; - - function _pthread_cleanup_pop(execute) { - var routine = PThread.exitHandlers.pop(); - if (execute) routine(); - } - Module["_pthread_cleanup_pop"] = _pthread_cleanup_pop; - - function _pthread_cleanup_push(routine, arg) { - if (PThread.exitHandlers === null) { - PThread.exitHandlers = []; - if (!ENVIRONMENT_IS_PTHREAD) { - __ATEXIT__.push(function() { PThread.runExitHandlers(); }); - } - } - PThread.exitHandlers.push(function() { dynCall_vi(routine, arg) }); - } - Module["_pthread_cleanup_push"] = _pthread_cleanup_push; - - - function __spawn_thread(threadParams) { - if (ENVIRONMENT_IS_PTHREAD) throw 'Internal Error! _spawn_thread() can only ever be called from main application thread!'; - - var worker = PThread.getNewWorker(); - - if (worker.pthread !== undefined) throw 'Internal error!'; - if (!threadParams.pthread_ptr) throw 'Internal error, no pthread ptr!'; - PThread.runningWorkers.push(worker); - - // Allocate memory for thread-local storage and initialize it to zero. - var tlsMemory = _malloc(128 * 4); - for (var i = 0; i < 128; ++i) { - HEAP32[(((tlsMemory)+(i*4))>>2)]=0; - } - - var stackHigh = threadParams.stackBase + threadParams.stackSize; - - var pthread = PThread.pthreads[threadParams.pthread_ptr] = { // Create a pthread info object to represent this thread. - worker: worker, - stackBase: threadParams.stackBase, - stackSize: threadParams.stackSize, - allocatedOwnStack: threadParams.allocatedOwnStack, - thread: threadParams.pthread_ptr, - threadInfoStruct: threadParams.pthread_ptr // Info area for this thread in Emscripten HEAP (shared) - }; - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 0 ) >> 2, 0); // threadStatus <- 0, meaning not yet exited. - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 4 ) >> 2, 0); // threadExitCode <- 0. - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 20 ) >> 2, 0); // profilerBlock <- 0. - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 80 ) >> 2, threadParams.detached); - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 116 ) >> 2, tlsMemory); // Init thread-local-storage memory array. - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 60 ) >> 2, 0); // Mark initial status to unused. - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 52 ) >> 2, pthread.threadInfoStruct); // Main thread ID. - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 56 ) >> 2, PROCINFO.pid); // Process ID. - - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 120) >> 2, threadParams.stackSize); - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 96) >> 2, threadParams.stackSize); - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 92) >> 2, stackHigh); - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 120 + 8) >> 2, stackHigh); - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 120 + 12) >> 2, threadParams.detached); - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 120 + 20) >> 2, threadParams.schedPolicy); - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 120 + 24) >> 2, threadParams.schedPrio); - - var global_libc = _emscripten_get_global_libc(); - var global_locale = global_libc + 40; - Atomics.store(HEAPU32, (pthread.threadInfoStruct + 188) >> 2, global_locale); - - - worker.pthread = pthread; - var msg = { - 'cmd': 'run', - 'start_routine': threadParams.startRoutine, - 'arg': threadParams.arg, - 'threadInfoStruct': threadParams.pthread_ptr, - 'selfThreadId': threadParams.pthread_ptr, // TODO: Remove this since thread ID is now the same as the thread address. - 'parentThreadId': threadParams.parent_pthread_ptr, - 'stackBase': threadParams.stackBase, - 'stackSize': threadParams.stackSize, - }; - worker.runPthread = function() { - // Ask the worker to start executing its pthread entry point function. - msg.time = performance.now(); - worker.postMessage(msg, threadParams.transferList); - }; - if (worker.loaded) { - worker.runPthread(); - delete worker.runPthread; - } - } - Module["__spawn_thread"] = __spawn_thread; - - function _pthread_getschedparam(thread, policy, schedparam) { - if (!policy && !schedparam) return ERRNO_CODES.EINVAL; - - if (!thread) { - err('pthread_getschedparam called with a null thread pointer!'); - return ERRNO_CODES.ESRCH; - } - var self = HEAP32[(((thread)+(24))>>2)]; - if (self !== thread) { - err('pthread_getschedparam attempted on thread ' + thread + ', which does not point to a valid thread, or does not exist anymore!'); - return ERRNO_CODES.ESRCH; - } - - var schedPolicy = Atomics.load(HEAPU32, (thread + 120 + 20 ) >> 2); - var schedPrio = Atomics.load(HEAPU32, (thread + 120 + 24 ) >> 2); - - if (policy) HEAP32[((policy)>>2)]=schedPolicy; - if (schedparam) HEAP32[((schedparam)>>2)]=schedPrio; - return 0; - } - Module["_pthread_getschedparam"] = _pthread_getschedparam; - - function _pthread_self() { - return __pthread_ptr|0; - } - Module["_pthread_self"] = _pthread_self;function _pthread_create(pthread_ptr, attr, start_routine, arg) { - if (typeof SharedArrayBuffer === 'undefined') { - err('Current environment does not support SharedArrayBuffer, pthreads are not available!'); - return 6; - } - if (!pthread_ptr) { - err('pthread_create called with a null thread pointer!'); - return 28; - } - - var transferList = []; // List of JS objects that will transfer ownership to the Worker hosting the thread - var error = 0; - - - // Synchronously proxy the thread creation to main thread if possible. If we need to transfer ownership of objects, then - // proxy asynchronously via postMessage. - if (ENVIRONMENT_IS_PTHREAD && (transferList.length === 0 || error)) { - return _emscripten_sync_run_in_main_thread_4(687865856, pthread_ptr, attr, start_routine, arg); - } - - // If on the main thread, and accessing Canvas/OffscreenCanvas failed, abort with the detected error. - if (error) return error; - - var stackSize = 0; - var stackBase = 0; - var detached = 0; // Default thread attr is PTHREAD_CREATE_JOINABLE, i.e. start as not detached. - var schedPolicy = 0; /*SCHED_OTHER*/ - var schedPrio = 0; - if (attr) { - stackSize = HEAP32[((attr)>>2)]; - // Musl has a convention that the stack size that is stored to the pthread attribute structure is always musl's #define DEFAULT_STACK_SIZE - // smaller than the actual created stack size. That is, stored stack size of 0 would mean a stack of DEFAULT_STACK_SIZE in size. All musl - // functions hide this impl detail, and offset the size transparently, so pthread_*() API user does not see this offset when operating with - // the pthread API. When reading the structure directly on JS side however, we need to offset the size manually here. - stackSize += 81920 /*DEFAULT_STACK_SIZE*/; - stackBase = HEAP32[(((attr)+(8))>>2)]; - detached = HEAP32[(((attr)+(12))>>2)] !== 0/*PTHREAD_CREATE_JOINABLE*/; - var inheritSched = HEAP32[(((attr)+(16))>>2)] === 0/*PTHREAD_INHERIT_SCHED*/; - if (inheritSched) { - var prevSchedPolicy = HEAP32[(((attr)+(20))>>2)]; - var prevSchedPrio = HEAP32[(((attr)+(24))>>2)]; - // If we are inheriting the scheduling properties from the parent thread, we need to identify the parent thread properly - this function call may - // be getting proxied, in which case _pthread_self() will point to the thread performing the proxying, not the thread that initiated the call. - var parentThreadPtr = PThread.currentProxiedOperationCallerThread ? PThread.currentProxiedOperationCallerThread : _pthread_self(); - _pthread_getschedparam(parentThreadPtr, attr + 20, attr + 24); - schedPolicy = HEAP32[(((attr)+(20))>>2)]; - schedPrio = HEAP32[(((attr)+(24))>>2)]; - HEAP32[(((attr)+(20))>>2)]=prevSchedPolicy; - HEAP32[(((attr)+(24))>>2)]=prevSchedPrio; - } else { - schedPolicy = HEAP32[(((attr)+(20))>>2)]; - schedPrio = HEAP32[(((attr)+(24))>>2)]; - } - } else { - // According to http://man7.org/linux/man-pages/man3/pthread_create.3.html, default stack size if not specified is 2 MB, so follow that convention. - stackSize = 2097152; - } - var allocatedOwnStack = stackBase == 0; // If allocatedOwnStack == true, then the pthread impl maintains the stack allocation. - if (allocatedOwnStack) { - stackBase = _memalign(16, stackSize); // Allocate a stack if the user doesn't want to place the stack in a custom memory area. - } else { - // Musl stores the stack base address assuming stack grows downwards, so adjust it to Emscripten convention that the - // stack grows upwards instead. - stackBase -= stackSize; - assert(stackBase > 0); - } - - // Allocate thread block (pthread_t structure). - var threadInfoStruct = _malloc(244); - for (var i = 0; i < 244 >> 2; ++i) HEAPU32[(threadInfoStruct>>2) + i] = 0; // zero-initialize thread structure. - HEAP32[((pthread_ptr)>>2)]=threadInfoStruct; - - // The pthread struct has a field that points to itself - this is used as a magic ID to detect whether the pthread_t - // structure is 'alive'. - HEAP32[(((threadInfoStruct)+(24))>>2)]=threadInfoStruct; - - // pthread struct robust_list head should point to itself. - var headPtr = threadInfoStruct + 168; - HEAP32[((headPtr)>>2)]=headPtr; - - - var threadParams = { - stackBase: stackBase, - stackSize: stackSize, - allocatedOwnStack: allocatedOwnStack, - schedPolicy: schedPolicy, - schedPrio: schedPrio, - detached: detached, - startRoutine: start_routine, - pthread_ptr: threadInfoStruct, - parent_pthread_ptr: _pthread_self(), - arg: arg, - transferList: transferList - }; - - if (ENVIRONMENT_IS_PTHREAD) { - // The prepopulated pool of web workers that can host pthreads is stored in the main JS thread. Therefore if a - // pthread is attempting to spawn a new thread, the thread creation must be deferred to the main JS thread. - threadParams.cmd = 'spawnThread'; - postMessage(threadParams, transferList); - } else { - // We are the main thread, so we have the pthread warmup pool in this thread and can fire off JS thread creation - // directly ourselves. - __spawn_thread(threadParams); - } - - return 0; - } - Module["_pthread_create"] = _pthread_create; - - - - function _setTempRet0($i) { - setTempRet0(($i) | 0); - } - Module["_setTempRet0"] = _setTempRet0; - - - - function __isLeapYear(year) { - return year%4 === 0 && (year%100 !== 0 || year%400 === 0); - } - Module["__isLeapYear"] = __isLeapYear; - - function __arraySum(array, index) { - var sum = 0; - for (var i = 0; i <= index; sum += array[i++]); - return sum; - } - Module["__arraySum"] = __arraySum; - - - var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31]; - Module["__MONTH_DAYS_LEAP"] = __MONTH_DAYS_LEAP; - - var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31]; - Module["__MONTH_DAYS_REGULAR"] = __MONTH_DAYS_REGULAR;function __addDays(date, days) { - var newDate = new Date(date.getTime()); - while(days > 0) { - var leap = __isLeapYear(newDate.getFullYear()); - var currentMonth = newDate.getMonth(); - var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; - - if (days > daysInCurrentMonth-newDate.getDate()) { - // we spill over to next month - days -= (daysInCurrentMonth-newDate.getDate()+1); - newDate.setDate(1); - if (currentMonth < 11) { - newDate.setMonth(currentMonth+1) - } else { - newDate.setMonth(0); - newDate.setFullYear(newDate.getFullYear()+1); - } - } else { - // we stay in current month - newDate.setDate(newDate.getDate()+days); - return newDate; - } - } - - return newDate; - } - Module["__addDays"] = __addDays;function _strftime(s, maxsize, format, tm) { - // size_t strftime(char *restrict s, size_t maxsize, const char *restrict format, const struct tm *restrict timeptr); - // http://pubs.opengroup.org/onlinepubs/009695399/functions/strftime.html - - var tm_zone = HEAP32[(((tm)+(40))>>2)]; - - var date = { - tm_sec: HEAP32[((tm)>>2)], - tm_min: HEAP32[(((tm)+(4))>>2)], - tm_hour: HEAP32[(((tm)+(8))>>2)], - tm_mday: HEAP32[(((tm)+(12))>>2)], - tm_mon: HEAP32[(((tm)+(16))>>2)], - tm_year: HEAP32[(((tm)+(20))>>2)], - tm_wday: HEAP32[(((tm)+(24))>>2)], - tm_yday: HEAP32[(((tm)+(28))>>2)], - tm_isdst: HEAP32[(((tm)+(32))>>2)], - tm_gmtoff: HEAP32[(((tm)+(36))>>2)], - tm_zone: tm_zone ? UTF8ToString(tm_zone) : '' - }; - - var pattern = UTF8ToString(format); - - // expand format - var EXPANSION_RULES_1 = { - '%c': '%a %b %d %H:%M:%S %Y', // Replaced by the locale's appropriate date and time representation - e.g., Mon Aug 3 14:02:01 2013 - '%D': '%m/%d/%y', // Equivalent to %m / %d / %y - '%F': '%Y-%m-%d', // Equivalent to %Y - %m - %d - '%h': '%b', // Equivalent to %b - '%r': '%I:%M:%S %p', // Replaced by the time in a.m. and p.m. notation - '%R': '%H:%M', // Replaced by the time in 24-hour notation - '%T': '%H:%M:%S', // Replaced by the time - '%x': '%m/%d/%y', // Replaced by the locale's appropriate date representation - '%X': '%H:%M:%S', // Replaced by the locale's appropriate time representation - // Modified Conversion Specifiers - '%Ec': '%c', // Replaced by the locale's alternative appropriate date and time representation. - '%EC': '%C', // Replaced by the name of the base year (period) in the locale's alternative representation. - '%Ex': '%m/%d/%y', // Replaced by the locale's alternative date representation. - '%EX': '%H:%M:%S', // Replaced by the locale's alternative time representation. - '%Ey': '%y', // Replaced by the offset from %EC (year only) in the locale's alternative representation. - '%EY': '%Y', // Replaced by the full alternative year representation. - '%Od': '%d', // Replaced by the day of the month, using the locale's alternative numeric symbols, filled as needed with leading zeros if there is any alternative symbol for zero; otherwise, with leading characters. - '%Oe': '%e', // Replaced by the day of the month, using the locale's alternative numeric symbols, filled as needed with leading characters. - '%OH': '%H', // Replaced by the hour (24-hour clock) using the locale's alternative numeric symbols. - '%OI': '%I', // Replaced by the hour (12-hour clock) using the locale's alternative numeric symbols. - '%Om': '%m', // Replaced by the month using the locale's alternative numeric symbols. - '%OM': '%M', // Replaced by the minutes using the locale's alternative numeric symbols. - '%OS': '%S', // Replaced by the seconds using the locale's alternative numeric symbols. - '%Ou': '%u', // Replaced by the weekday as a number in the locale's alternative representation (Monday=1). - '%OU': '%U', // Replaced by the week number of the year (Sunday as the first day of the week, rules corresponding to %U ) using the locale's alternative numeric symbols. - '%OV': '%V', // Replaced by the week number of the year (Monday as the first day of the week, rules corresponding to %V ) using the locale's alternative numeric symbols. - '%Ow': '%w', // Replaced by the number of the weekday (Sunday=0) using the locale's alternative numeric symbols. - '%OW': '%W', // Replaced by the week number of the year (Monday as the first day of the week) using the locale's alternative numeric symbols. - '%Oy': '%y', // Replaced by the year (offset from %C ) using the locale's alternative numeric symbols. - }; - for (var rule in EXPANSION_RULES_1) { - pattern = pattern.replace(new RegExp(rule, 'g'), EXPANSION_RULES_1[rule]); - } - - var WEEKDAYS = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']; - var MONTHS = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']; - - function leadingSomething(value, digits, character) { - var str = typeof value === 'number' ? value.toString() : (value || ''); - while (str.length < digits) { - str = character[0]+str; - } - return str; - } - - function leadingNulls(value, digits) { - return leadingSomething(value, digits, '0'); - } - - function compareByDay(date1, date2) { - function sgn(value) { - return value < 0 ? -1 : (value > 0 ? 1 : 0); - } - - var compare; - if ((compare = sgn(date1.getFullYear()-date2.getFullYear())) === 0) { - if ((compare = sgn(date1.getMonth()-date2.getMonth())) === 0) { - compare = sgn(date1.getDate()-date2.getDate()); - } - } - return compare; - } - - function getFirstWeekStartDate(janFourth) { - switch (janFourth.getDay()) { - case 0: // Sunday - return new Date(janFourth.getFullYear()-1, 11, 29); - case 1: // Monday - return janFourth; - case 2: // Tuesday - return new Date(janFourth.getFullYear(), 0, 3); - case 3: // Wednesday - return new Date(janFourth.getFullYear(), 0, 2); - case 4: // Thursday - return new Date(janFourth.getFullYear(), 0, 1); - case 5: // Friday - return new Date(janFourth.getFullYear()-1, 11, 31); - case 6: // Saturday - return new Date(janFourth.getFullYear()-1, 11, 30); - } - } - - function getWeekBasedYear(date) { - var thisDate = __addDays(new Date(date.tm_year+1900, 0, 1), date.tm_yday); - - var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); - var janFourthNextYear = new Date(thisDate.getFullYear()+1, 0, 4); - - var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); - var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); - - if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { - // this date is after the start of the first week of this year - if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { - return thisDate.getFullYear()+1; - } else { - return thisDate.getFullYear(); - } - } else { - return thisDate.getFullYear()-1; - } - } - - var EXPANSION_RULES_2 = { - '%a': function(date) { - return WEEKDAYS[date.tm_wday].substring(0,3); - }, - '%A': function(date) { - return WEEKDAYS[date.tm_wday]; - }, - '%b': function(date) { - return MONTHS[date.tm_mon].substring(0,3); - }, - '%B': function(date) { - return MONTHS[date.tm_mon]; - }, - '%C': function(date) { - var year = date.tm_year+1900; - return leadingNulls((year/100)|0,2); - }, - '%d': function(date) { - return leadingNulls(date.tm_mday, 2); - }, - '%e': function(date) { - return leadingSomething(date.tm_mday, 2, ' '); - }, - '%g': function(date) { - // %g, %G, and %V give values according to the ISO 8601:2000 standard week-based year. - // In this system, weeks begin on a Monday and week 1 of the year is the week that includes - // January 4th, which is also the week that includes the first Thursday of the year, and - // is also the first week that contains at least four days in the year. - // If the first Monday of January is the 2nd, 3rd, or 4th, the preceding days are part of - // the last week of the preceding year; thus, for Saturday 2nd January 1999, - // %G is replaced by 1998 and %V is replaced by 53. If December 29th, 30th, - // or 31st is a Monday, it and any following days are part of week 1 of the following year. - // Thus, for Tuesday 30th December 1997, %G is replaced by 1998 and %V is replaced by 01. - - return getWeekBasedYear(date).toString().substring(2); - }, - '%G': function(date) { - return getWeekBasedYear(date); - }, - '%H': function(date) { - return leadingNulls(date.tm_hour, 2); - }, - '%I': function(date) { - var twelveHour = date.tm_hour; - if (twelveHour == 0) twelveHour = 12; - else if (twelveHour > 12) twelveHour -= 12; - return leadingNulls(twelveHour, 2); - }, - '%j': function(date) { - // Day of the year (001-366) - return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon-1), 3); - }, - '%m': function(date) { - return leadingNulls(date.tm_mon+1, 2); - }, - '%M': function(date) { - return leadingNulls(date.tm_min, 2); - }, - '%n': function() { - return '\n'; - }, - '%p': function(date) { - if (date.tm_hour >= 0 && date.tm_hour < 12) { - return 'AM'; - } else { - return 'PM'; - } - }, - '%S': function(date) { - return leadingNulls(date.tm_sec, 2); - }, - '%t': function() { - return '\t'; - }, - '%u': function(date) { - return date.tm_wday || 7; - }, - '%U': function(date) { - // Replaced by the week number of the year as a decimal number [00,53]. - // The first Sunday of January is the first day of week 1; - // days in the new year before this are in week 0. [ tm_year, tm_wday, tm_yday] - var janFirst = new Date(date.tm_year+1900, 0, 1); - var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7-janFirst.getDay()); - var endDate = new Date(date.tm_year+1900, date.tm_mon, date.tm_mday); - - // is target date after the first Sunday? - if (compareByDay(firstSunday, endDate) < 0) { - // calculate difference in days between first Sunday and endDate - var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth()-1)-31; - var firstSundayUntilEndJanuary = 31-firstSunday.getDate(); - var days = firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate(); - return leadingNulls(Math.ceil(days/7), 2); - } - - return compareByDay(firstSunday, janFirst) === 0 ? '01': '00'; - }, - '%V': function(date) { - // Replaced by the week number of the year (Monday as the first day of the week) - // as a decimal number [01,53]. If the week containing 1 January has four - // or more days in the new year, then it is considered week 1. - // Otherwise, it is the last week of the previous year, and the next week is week 1. - // Both January 4th and the first Thursday of January are always in week 1. [ tm_year, tm_wday, tm_yday] - var janFourthThisYear = new Date(date.tm_year+1900, 0, 4); - var janFourthNextYear = new Date(date.tm_year+1901, 0, 4); - - var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); - var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); - - var endDate = __addDays(new Date(date.tm_year+1900, 0, 1), date.tm_yday); - - if (compareByDay(endDate, firstWeekStartThisYear) < 0) { - // if given date is before this years first week, then it belongs to the 53rd week of last year - return '53'; - } - - if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { - // if given date is after next years first week, then it belongs to the 01th week of next year - return '01'; - } - - // given date is in between CW 01..53 of this calendar year - var daysDifference; - if (firstWeekStartThisYear.getFullYear() < date.tm_year+1900) { - // first CW of this year starts last year - daysDifference = date.tm_yday+32-firstWeekStartThisYear.getDate() - } else { - // first CW of this year starts this year - daysDifference = date.tm_yday+1-firstWeekStartThisYear.getDate(); - } - return leadingNulls(Math.ceil(daysDifference/7), 2); - }, - '%w': function(date) { - return date.tm_wday; - }, - '%W': function(date) { - // Replaced by the week number of the year as a decimal number [00,53]. - // The first Monday of January is the first day of week 1; - // days in the new year before this are in week 0. [ tm_year, tm_wday, tm_yday] - var janFirst = new Date(date.tm_year, 0, 1); - var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7-janFirst.getDay()+1); - var endDate = new Date(date.tm_year+1900, date.tm_mon, date.tm_mday); - - // is target date after the first Monday? - if (compareByDay(firstMonday, endDate) < 0) { - var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth()-1)-31; - var firstMondayUntilEndJanuary = 31-firstMonday.getDate(); - var days = firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate(); - return leadingNulls(Math.ceil(days/7), 2); - } - return compareByDay(firstMonday, janFirst) === 0 ? '01': '00'; - }, - '%y': function(date) { - // Replaced by the last two digits of the year as a decimal number [00,99]. [ tm_year] - return (date.tm_year+1900).toString().substring(2); - }, - '%Y': function(date) { - // Replaced by the year as a decimal number (for example, 1997). [ tm_year] - return date.tm_year+1900; - }, - '%z': function(date) { - // Replaced by the offset from UTC in the ISO 8601:2000 standard format ( +hhmm or -hhmm ). - // For example, "-0430" means 4 hours 30 minutes behind UTC (west of Greenwich). - var off = date.tm_gmtoff; - var ahead = off >= 0; - off = Math.abs(off) / 60; - // convert from minutes into hhmm format (which means 60 minutes = 100 units) - off = (off / 60)*100 + (off % 60); - return (ahead ? '+' : '-') + String("0000" + off).slice(-4); - }, - '%Z': function(date) { - return date.tm_zone; - }, - '%%': function() { - return '%'; - } - }; - for (var rule in EXPANSION_RULES_2) { - if (pattern.indexOf(rule) >= 0) { - pattern = pattern.replace(new RegExp(rule, 'g'), EXPANSION_RULES_2[rule](date)); - } - } - - var bytes = intArrayFromString(pattern, false); - if (bytes.length > maxsize) { - return 0; - } - - writeArrayToMemory(bytes, s); - return bytes.length-1; - } - Module["_strftime"] = _strftime;function _strftime_l(s, maxsize, format, tm) { - return _strftime(s, maxsize, format, tm); // no locale support yet - } - Module["_strftime_l"] = _strftime_l; - - function _sysconf(name) { - if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(24, 1, name); - - // long sysconf(int name); - // http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html - switch(name) { - case 30: return PAGE_SIZE; - case 85: - var maxHeapSize = 2*1024*1024*1024 - 65536; - maxHeapSize = HEAPU8.length; - return maxHeapSize / PAGE_SIZE; - case 132: - case 133: - case 12: - case 137: - case 138: - case 15: - case 235: - case 16: - case 17: - case 18: - case 19: - case 20: - case 149: - case 13: - case 10: - case 236: - case 153: - case 9: - case 21: - case 22: - case 159: - case 154: - case 14: - case 77: - case 78: - case 139: - case 80: - case 81: - case 82: - case 68: - case 67: - case 164: - case 11: - case 29: - case 47: - case 48: - case 95: - case 52: - case 51: - case 46: - return 200809; - case 79: - return 0; - case 27: - case 246: - case 127: - case 128: - case 23: - case 24: - case 160: - case 161: - case 181: - case 182: - case 242: - case 183: - case 184: - case 243: - case 244: - case 245: - case 165: - case 178: - case 179: - case 49: - case 50: - case 168: - case 169: - case 175: - case 170: - case 171: - case 172: - case 97: - case 76: - case 32: - case 173: - case 35: - return -1; - case 176: - case 177: - case 7: - case 155: - case 8: - case 157: - case 125: - case 126: - case 92: - case 93: - case 129: - case 130: - case 131: - case 94: - case 91: - return 1; - case 74: - case 60: - case 69: - case 70: - case 4: - return 1024; - case 31: - case 42: - case 72: - return 32; - case 87: - case 26: - case 33: - return 2147483647; - case 34: - case 1: - return 47839; - case 38: - case 36: - return 99; - case 43: - case 37: - return 2048; - case 0: return 2097152; - case 3: return 65536; - case 28: return 32768; - case 44: return 32767; - case 75: return 16384; - case 39: return 1000; - case 89: return 700; - case 71: return 256; - case 40: return 255; - case 2: return 100; - case 180: return 64; - case 25: return 20; - case 5: return 16; - case 6: return 6; - case 73: return 4; - case 84: { - if (typeof navigator === 'object') return navigator['hardwareConcurrency'] || 1; - return 1; - } - } - ___setErrNo(28); - return -1; + return ret; + }), + varargs: 0, + get: (function(varargs) { + SYSCALLS.varargs += 4; + var ret = GROWABLE_HEAP_LOAD_I32(SYSCALLS.varargs - 4 | 0); + return ret; + }), + getStr: (function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret; + }), + getStreamFromFD: (function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream; + }), + get64: (function() { + var low = SYSCALLS.get(), high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); else assert(high === -1); + return low; + }), + getZero: (function() { + assert(SYSCALLS.get() === 0); + }) +}; +Module["SYSCALLS"] = SYSCALLS; +function ___syscall10(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(2, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var path = SYSCALLS.getStr(); + FS.unlink(path); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall10"] = ___syscall10; +function ___syscall12(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(3, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var path = SYSCALLS.getStr(); + FS.chdir(path); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall12"] = ___syscall12; +function ___syscall183(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(4, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var buf = SYSCALLS.get(), size = SYSCALLS.get(); + if (size === 0) return -28; + var cwd = FS.cwd(); + var cwdLengthInBytes = lengthBytesUTF8(cwd); + if (size < cwdLengthInBytes + 1) return -68; + stringToUTF8(cwd, buf, size); + return buf; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall183"] = ___syscall183; +function _memset(ptr, value, num) { + ptr = ptr | 0; + value = value | 0; + num = num | 0; + var end = 0, aligned_end = 0, block_aligned_end = 0, value4 = 0; + end = ptr + num | 0; + value = value & 255; + if ((num | 0) >= 67) { + while ((ptr & 3) != 0) { + GROWABLE_HEAP_STORE_I8(ptr >> 0 | 0, value); + ptr = ptr + 1 | 0; + } + aligned_end = end & -4 | 0; + value4 = value | value << 8 | value << 16 | value << 24; + block_aligned_end = aligned_end - 64 | 0; + while ((ptr | 0) <= (block_aligned_end | 0)) { + GROWABLE_HEAP_STORE_I32(ptr | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 4 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 8 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 12 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 16 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 20 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 24 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 28 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 32 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 36 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 40 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 44 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 48 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 52 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 56 | 0, value4); + GROWABLE_HEAP_STORE_I32(ptr + 60 | 0, value4); + ptr = ptr + 64 | 0; + } + while ((ptr | 0) < (aligned_end | 0)) { + GROWABLE_HEAP_STORE_I32(ptr | 0, value4); + ptr = ptr + 4 | 0; + } + } + while ((ptr | 0) < (end | 0)) { + GROWABLE_HEAP_STORE_I8(ptr >> 0 | 0, value); + ptr = ptr + 1 | 0; + } + return end - num | 0; +} +Module["_memset"] = _memset; +function __emscripten_syscall_mmap2(addr, len, prot, flags, fd, off) { + off <<= 12; + var ptr; + var allocated = false; + if ((flags & 16) !== 0 && addr % PAGE_SIZE !== 0) { + return -28; + } + if ((flags & 32) !== 0) { + ptr = _memalign(PAGE_SIZE, len); + if (!ptr) return -48; + _memset(ptr, 0, len); + allocated = true; + } else { + var info = FS.getStream(fd); + if (!info) return -8; + var res = FS.mmap(info, HEAPU8, addr, len, off, prot, flags); + ptr = res.ptr; + allocated = res.allocated; + } + SYSCALLS.mappings[ptr] = { + malloc: ptr, + len: len, + allocated: allocated, + fd: fd, + flags: flags + }; + return ptr; +} +Module["__emscripten_syscall_mmap2"] = __emscripten_syscall_mmap2; +function ___syscall192(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(5, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var addr = SYSCALLS.get(), len = SYSCALLS.get(), prot = SYSCALLS.get(), flags = SYSCALLS.get(), fd = SYSCALLS.get(), off = SYSCALLS.get(); + return __emscripten_syscall_mmap2(addr, len, prot, flags, fd, off); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall192"] = ___syscall192; +function ___syscall195(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(6, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var path = SYSCALLS.getStr(), buf = SYSCALLS.get(); + return SYSCALLS.doStat(FS.stat, path, buf); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall195"] = ___syscall195; +function ___syscall196(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(7, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var path = SYSCALLS.getStr(), buf = SYSCALLS.get(); + return SYSCALLS.doStat(FS.lstat, path, buf); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall196"] = ___syscall196; +function ___syscall220(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(8, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), dirp = SYSCALLS.get(), count = SYSCALLS.get(); + if (!stream.getdents) { + stream.getdents = FS.readdir(stream.path); + } + var struct_size = 280; + var pos = 0; + var off = FS.llseek(stream, 0, 1); + var idx = Math.floor(off / struct_size); + while (idx < stream.getdents.length && pos + struct_size <= count) { + var id; + var type; + var name = stream.getdents[idx]; + if (name[0] === ".") { + id = 1; + type = 4; + } else { + var child = FS.lookupNode(stream.node, name); + id = child.id; + type = FS.isChrdev(child.mode) ? 2 : FS.isDir(child.mode) ? 4 : FS.isLink(child.mode) ? 10 : 8; + } + tempI64 = [ id >>> 0, (tempDouble = id, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], GROWABLE_HEAP_STORE_I32(dirp + pos | 0, tempI64[0]), GROWABLE_HEAP_STORE_I32(dirp + pos + 4 | 0, tempI64[1]); + tempI64 = [ (idx + 1) * struct_size >>> 0, (tempDouble = (idx + 1) * struct_size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], GROWABLE_HEAP_STORE_I32(dirp + pos + 8 | 0, tempI64[0]), GROWABLE_HEAP_STORE_I32(dirp + pos + 12 | 0, tempI64[1]); + GROWABLE_HEAP_STORE_I16(dirp + pos + 16 | 0, 280); + GROWABLE_HEAP_STORE_I8(dirp + pos + 18 >> 0 | 0, type); + stringToUTF8(name, dirp + pos + 19, 256); + pos += struct_size; + idx += 1; + } + FS.llseek(stream, idx * struct_size, 0); + return pos; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall220"] = ___syscall220; +function ___syscall221(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(9, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), cmd = SYSCALLS.get(); + switch (cmd) { + case 0: + { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28; } - - Module["_sysconf"] = _sysconf; - - function _system(command) { - // int system(const char *command); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/system.html - // Can't call external programs. - ___setErrNo(6); - return -1; + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd; + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: + { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0; + } + case 12: + { + var arg = SYSCALLS.get(); + var offset = 0; + GROWABLE_HEAP_STORE_I16(arg + offset | 0, 2); + return 0; + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + ___setErrNo(28); + return -1; + default: + { + return -28; + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall221"] = ___syscall221; +function ___syscall3(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(10, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall3"] = ___syscall3; +function ___syscall39(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(11, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var path = SYSCALLS.getStr(), mode = SYSCALLS.get(); + return SYSCALLS.doMkdir(path, mode); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall39"] = ___syscall39; +function ___syscall4(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(12, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); + return FS.write(stream, HEAP8, buf, count); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall4"] = ___syscall4; +function ___syscall40(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(13, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var path = SYSCALLS.getStr(); + FS.rmdir(path); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall40"] = ___syscall40; +function ___syscall5(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(14, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall5"] = ___syscall5; +function ___syscall54(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(15, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get(); + switch (op) { + case 21509: + case 21505: + { + if (!stream.tty) return -59; + return 0; + } + case 21510: + case 21511: + case 21512: + case 21506: + case 21507: + case 21508: + { + if (!stream.tty) return -59; + return 0; + } + case 21519: + { + if (!stream.tty) return -59; + var argp = SYSCALLS.get(); + GROWABLE_HEAP_STORE_I32(argp | 0, 0); + return 0; + } + case 21520: + { + if (!stream.tty) return -59; + return -28; + } + case 21531: + { + var argp = SYSCALLS.get(); + return FS.ioctl(stream, op, argp); + } + case 21523: + { + if (!stream.tty) return -59; + return 0; + } + case 21524: + { + if (!stream.tty) return -59; + return 0; + } + default: + abort("bad ioctl syscall " + op); + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall54"] = ___syscall54; +function ___syscall85(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(16, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var path = SYSCALLS.getStr(), buf = SYSCALLS.get(), bufsize = SYSCALLS.get(); + return SYSCALLS.doReadlink(path, buf, bufsize); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall85"] = ___syscall85; +function __emscripten_syscall_munmap(addr, len) { + if (addr === -1 || len === 0) { + return -28; + } + var info = SYSCALLS.mappings[addr]; + if (!info) return 0; + if (len === info.len) { + var stream = FS.getStream(info.fd); + SYSCALLS.doMsync(addr, stream, len, info.flags); + FS.munmap(stream); + SYSCALLS.mappings[addr] = null; + if (info.allocated) { + _free(info.malloc); + } + } + return 0; +} +Module["__emscripten_syscall_munmap"] = __emscripten_syscall_munmap; +function ___syscall91(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(17, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var addr = SYSCALLS.get(), len = SYSCALLS.get(); + return __emscripten_syscall_munmap(addr, len); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +Module["___syscall91"] = ___syscall91; +function ___unlock() {} +Module["___unlock"] = ___unlock; +function _abort() { + abort(); +} +Module["_abort"] = _abort; +function _emscripten_check_blocking_allowed() { + assert(ENVIRONMENT_IS_WEB); + warnOnce("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread"); +} +Module["_emscripten_check_blocking_allowed"] = _emscripten_check_blocking_allowed; +function _emscripten_conditional_set_current_thread_status_js(expectedStatus, newStatus) {} +Module["_emscripten_conditional_set_current_thread_status_js"] = _emscripten_conditional_set_current_thread_status_js; +function _emscripten_conditional_set_current_thread_status(expectedStatus, newStatus) { + expectedStatus = expectedStatus | 0; + newStatus = newStatus | 0; +} +Module["_emscripten_conditional_set_current_thread_status"] = _emscripten_conditional_set_current_thread_status; +function _emscripten_futex_wait(addr, val, timeout) { + if (addr <= 0 || addr > HEAP8.length || addr & 3 != 0) return -28; + if (ENVIRONMENT_IS_WORKER) { + var ret = Atomics.wait(HEAP32, addr >> 2, val, timeout); + if (ret === "timed-out") return -73; + if (ret === "not-equal") return -6; + if (ret === "ok") return 0; + throw "Atomics.wait returned an unexpected value " + ret; + } else { + var loadedVal = Atomics.load(HEAP32, addr >> 2); + if (val != loadedVal) return -6; + var tNow = performance.now(); + var tEnd = tNow + timeout; + Atomics.store(HEAP32, __main_thread_futex_wait_address >> 2, addr); + var ourWaitAddress = addr; + while (addr == ourWaitAddress) { + tNow = performance.now(); + if (tNow > tEnd) { + return -73; + } + _emscripten_main_thread_process_queued_calls(); + addr = Atomics.load(HEAP32, __main_thread_futex_wait_address >> 2); + } + return 0; + } +} +Module["_emscripten_futex_wait"] = _emscripten_futex_wait; +function _emscripten_get_heap_size() { + return HEAP8.length; +} +Module["_emscripten_get_heap_size"] = _emscripten_get_heap_size; +function _emscripten_get_sbrk_ptr() { + return 12594960; +} +Module["_emscripten_get_sbrk_ptr"] = _emscripten_get_sbrk_ptr; +function _emscripten_has_threading_support() { + return typeof SharedArrayBuffer !== "undefined"; +} +Module["_emscripten_has_threading_support"] = _emscripten_has_threading_support; +function _emscripten_is_main_browser_thread() { + return __pthread_is_main_browser_thread | 0; +} +Module["_emscripten_is_main_browser_thread"] = _emscripten_is_main_browser_thread; +function _emscripten_is_main_runtime_thread() { + return __pthread_is_main_runtime_thread | 0; +} +Module["_emscripten_is_main_runtime_thread"] = _emscripten_is_main_runtime_thread; +var setjmpId = 0; +Module["setjmpId"] = setjmpId; +function _saveSetjmp(env, label, table, size) { + env = env | 0; + label = label | 0; + table = table | 0; + size = size | 0; + var i = 0; + setjmpId = setjmpId + 1 | 0; + GROWABLE_HEAP_STORE_I32(env | 0, setjmpId); + while ((i | 0) < (size | 0)) { + if ((GROWABLE_HEAP_LOAD_I32(table + (i << 3) | 0) | 0) == 0) { + GROWABLE_HEAP_STORE_I32(table + (i << 3) | 0, setjmpId); + GROWABLE_HEAP_STORE_I32(table + ((i << 3) + 4) | 0, label); + GROWABLE_HEAP_STORE_I32(table + ((i << 3) + 8) | 0, 0); + setTempRet0(size | 0); + return table | 0; + } + i = i + 1 | 0; + } + size = size * 2 | 0; + table = _realloc(table | 0, 8 * (size + 1 | 0) | 0) | 0; + table = _saveSetjmp(env | 0, label | 0, table | 0, size | 0) | 0; + setTempRet0(size | 0); + return table | 0; +} +Module["_saveSetjmp"] = _saveSetjmp; +function _testSetjmp(id, table, size) { + id = id | 0; + table = table | 0; + size = size | 0; + var i = 0, curr = 0; + while ((i | 0) < (size | 0)) { + curr = GROWABLE_HEAP_LOAD_I32(table + (i << 3) | 0) | 0; + if ((curr | 0) == 0) break; + if ((curr | 0) == (id | 0)) { + return GROWABLE_HEAP_LOAD_I32(table + ((i << 3) + 4) | 0) | 0; + } + i = i + 1 | 0; + } + return 0; +} +Module["_testSetjmp"] = _testSetjmp; +function _longjmp(env, value) { + _setThrew(env, value || 1); + throw "longjmp"; +} +Module["_longjmp"] = _longjmp; +function _emscripten_longjmp(env, value) { + _longjmp(env, value); +} +Module["_emscripten_longjmp"] = _emscripten_longjmp; +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest); +} +Module["_emscripten_memcpy_big"] = _emscripten_memcpy_big; +function _emscripten_proxy_to_main_thread_js(index, sync) { + var numCallArgs = arguments.length - 2; + if (numCallArgs > 20 - 1) throw "emscripten_proxy_to_main_thread_js: Too many arguments " + numCallArgs + " to proxied function idx=" + index + ", maximum supported is " + (20 - 1) + "!"; + var stack = stackSave(); + var args = stackAlloc(numCallArgs * 8); + var b = args >> 3; + for (var i = 0; i < numCallArgs; i++) { + GROWABLE_HEAP_STORE_F64((b + i) * 8 | 0, arguments[2 + i]); + } + var ret = _emscripten_run_in_main_runtime_thread_js(index, numCallArgs, args, sync); + stackRestore(stack); + return ret; +} +Module["_emscripten_proxy_to_main_thread_js"] = _emscripten_proxy_to_main_thread_js; +var _emscripten_receive_on_main_thread_js_callArgs = []; +Module["_emscripten_receive_on_main_thread_js_callArgs"] = _emscripten_receive_on_main_thread_js_callArgs; +function _emscripten_receive_on_main_thread_js(index, numCallArgs, args) { + _emscripten_receive_on_main_thread_js_callArgs.length = numCallArgs; + var b = args >> 3; + for (var i = 0; i < numCallArgs; i++) { + _emscripten_receive_on_main_thread_js_callArgs[i] = GROWABLE_HEAP_LOAD_F64((b + i) * 8 | 0); + } + var isEmAsmConst = index < 0; + var func = !isEmAsmConst ? proxiedFunctionTable[index] : ASM_CONSTS[-index - 1]; + if (isEmAsmConst) { + var sigPtr = _emscripten_receive_on_main_thread_js_callArgs[1]; + var varargPtr = _emscripten_receive_on_main_thread_js_callArgs[2]; + var constArgs = readAsmConstArgs(sigPtr, varargPtr); + return func.apply(null, constArgs); + } + assert(func.length == numCallArgs, "Call args mismatch in emscripten_receive_on_main_thread_js"); + return func.apply(null, _emscripten_receive_on_main_thread_js_callArgs); +} +Module["_emscripten_receive_on_main_thread_js"] = _emscripten_receive_on_main_thread_js; +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 "); +} +Module["abortOnCannotGrowMemory"] = abortOnCannotGrowMemory; +function emscripten_realloc_buffer(size) { + try { + wasmMemory.grow(size - buffer.byteLength + 65535 >> 16); + updateGlobalBufferAndViews(wasmMemory.buffer); + return 1; + } catch (e) { + console.error("emscripten_realloc_buffer: Attempted to grow heap from " + buffer.byteLength + " bytes to " + size + " bytes, but got error: " + e); + } +} +Module["emscripten_realloc_buffer"] = emscripten_realloc_buffer; +function _emscripten_resize_heap(requestedSize) { + var oldSize = _emscripten_get_heap_size(); + if (requestedSize <= oldSize) { + return false; + } + var PAGE_MULTIPLE = 65536; + var LIMIT = 2147483648 - PAGE_MULTIPLE; + if (requestedSize > LIMIT) { + err("Cannot enlarge memory, asked to go up to " + requestedSize + " bytes, but the limit is " + LIMIT + " bytes!"); + return false; + } + var MIN_TOTAL_MEMORY = 16777216; + var newSize = Math.max(oldSize, MIN_TOTAL_MEMORY); + while (newSize < requestedSize) { + if (newSize <= 536870912) { + newSize = alignUp(2 * newSize, PAGE_MULTIPLE); + } else { + newSize = Math.min(alignUp((3 * newSize + 2147483648) / 4, PAGE_MULTIPLE), LIMIT); + } + if (newSize === oldSize) { + warnOnce("Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only " + HEAP8.length); + } + } + newSize = Math.min(newSize, 1073741824); + if (newSize == oldSize) { + err("Failed to grow the heap from " + oldSize + ", as we reached the WASM_MEM_MAX limit (" + 1073741824 + ") set during compilation"); + return false; + } + var replacement = emscripten_realloc_buffer(newSize); + if (!replacement) { + err("Failed to grow the heap from " + oldSize + " bytes to " + newSize + " bytes, not enough memory!"); + return false; + } + return true; +} +Module["_emscripten_resize_heap"] = _emscripten_resize_heap; +var JSEvents = { + keyEvent: 0, + mouseEvent: 0, + wheelEvent: 0, + uiEvent: 0, + focusEvent: 0, + deviceOrientationEvent: 0, + deviceMotionEvent: 0, + fullscreenChangeEvent: 0, + pointerlockChangeEvent: 0, + visibilityChangeEvent: 0, + touchEvent: 0, + previousFullscreenElement: null, + previousScreenX: null, + previousScreenY: null, + removeEventListenersRegistered: false, + removeAllEventListeners: (function() { + for (var i = JSEvents.eventHandlers.length - 1; i >= 0; --i) { + JSEvents._removeHandler(i); + } + JSEvents.eventHandlers = []; + JSEvents.deferredCalls = []; + }), + registerRemoveEventListeners: (function() { + if (!JSEvents.removeEventListenersRegistered) { + __ATEXIT__.push(JSEvents.removeAllEventListeners); + JSEvents.removeEventListenersRegistered = true; + } + }), + deferredCalls: [], + deferCall: (function(targetFunction, precedence, argsList) { + function arraysHaveEqualContent(arrA, arrB) { + if (arrA.length != arrB.length) return false; + for (var i in arrA) { + if (arrA[i] != arrB[i]) return false; + } + return true; + } + for (var i in JSEvents.deferredCalls) { + var call = JSEvents.deferredCalls[i]; + if (call.targetFunction == targetFunction && arraysHaveEqualContent(call.argsList, argsList)) { + return; + } + } + JSEvents.deferredCalls.push({ + targetFunction: targetFunction, + precedence: precedence, + argsList: argsList + }); + JSEvents.deferredCalls.sort((function(x, y) { + return x.precedence < y.precedence; + })); + }), + removeDeferredCalls: (function(targetFunction) { + for (var i = 0; i < JSEvents.deferredCalls.length; ++i) { + if (JSEvents.deferredCalls[i].targetFunction == targetFunction) { + JSEvents.deferredCalls.splice(i, 1); + --i; + } + } + }), + canPerformEventHandlerRequests: (function() { + return JSEvents.inEventHandler && JSEvents.currentEventHandler.allowsDeferredCalls; + }), + runDeferredCalls: (function() { + if (!JSEvents.canPerformEventHandlerRequests()) { + return; + } + for (var i = 0; i < JSEvents.deferredCalls.length; ++i) { + var call = JSEvents.deferredCalls[i]; + JSEvents.deferredCalls.splice(i, 1); + --i; + call.targetFunction.apply(this, call.argsList); + } + }), + inEventHandler: 0, + currentEventHandler: null, + eventHandlers: [], + isInternetExplorer: (function() { + return navigator.userAgent.indexOf("MSIE") !== -1 || navigator.appVersion.indexOf("Trident/") > 0; + }), + removeAllHandlersOnTarget: (function(target, eventTypeString) { + for (var i = 0; i < JSEvents.eventHandlers.length; ++i) { + if (JSEvents.eventHandlers[i].target == target && (!eventTypeString || eventTypeString == JSEvents.eventHandlers[i].eventTypeString)) { + JSEvents._removeHandler(i--); + } + } + }), + _removeHandler: (function(i) { + var h = JSEvents.eventHandlers[i]; + h.target.removeEventListener(h.eventTypeString, h.eventListenerFunc, h.useCapture); + JSEvents.eventHandlers.splice(i, 1); + }), + registerOrRemoveHandler: (function(eventHandler) { + var jsEventHandler = function jsEventHandler(event) { + ++JSEvents.inEventHandler; + JSEvents.currentEventHandler = eventHandler; + JSEvents.runDeferredCalls(); + eventHandler.handlerFunc(event); + JSEvents.runDeferredCalls(); + --JSEvents.inEventHandler; + }; + if (eventHandler.callbackfunc) { + eventHandler.eventListenerFunc = jsEventHandler; + eventHandler.target.addEventListener(eventHandler.eventTypeString, jsEventHandler, eventHandler.useCapture); + JSEvents.eventHandlers.push(eventHandler); + JSEvents.registerRemoveEventListeners(); + } else { + for (var i = 0; i < JSEvents.eventHandlers.length; ++i) { + if (JSEvents.eventHandlers[i].target == eventHandler.target && JSEvents.eventHandlers[i].eventTypeString == eventHandler.eventTypeString) { + JSEvents._removeHandler(i--); } - Module["_system"] = _system; - - - function _time(ptr) { - var ret = (Date.now()/1000)|0; - if (ptr) { - HEAP32[((ptr)>>2)]=ret; - } - return ret; + } + } + }), + queueEventHandlerOnThread_iiii: (function(targetThread, eventHandlerFunc, eventTypeId, eventData, userData) { + var stackTop = stackSave(); + var varargs = stackAlloc(12); + GROWABLE_HEAP_STORE_I32(varargs | 0, eventTypeId); + GROWABLE_HEAP_STORE_I32(varargs + 4 | 0, eventData); + GROWABLE_HEAP_STORE_I32(varargs + 8 | 0, userData); + _emscripten_async_queue_on_thread_(targetThread, 637534208, eventHandlerFunc, eventData, varargs); + stackRestore(stackTop); + }), + getTargetThreadForEventCallback: (function(targetThread) { + switch (targetThread) { + case 1: + return 0; + case 2: + return PThread.currentProxiedOperationCallerThread; + default: + return targetThread; + } + }), + getBoundingClientRectOrZeros: (function(target) { + return target.getBoundingClientRect ? target.getBoundingClientRect() : { + left: 0, + top: 0 + }; + }), + getNodeNameForTarget: (function(target) { + if (!target) return ""; + if (target == window) return "#window"; + if (target == screen) return "#screen"; + return target && target.nodeName ? target.nodeName : ""; + }), + tick: (function() { + if (window["performance"] && window["performance"]["now"]) return window["performance"]["now"](); else return Date.now(); + }), + fullscreenEnabled: (function() { + return document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled; + }) +}; +Module["JSEvents"] = JSEvents; +function stringToNewUTF8(jsString) { + var length = lengthBytesUTF8(jsString) + 1; + var cString = _malloc(length); + stringToUTF8(jsString, cString, length); + return cString; +} +Module["stringToNewUTF8"] = stringToNewUTF8; +function _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread, targetCanvas, width, height) { + var stackTop = stackSave(); + var varargs = stackAlloc(12); + var targetCanvasPtr = 0; + if (targetCanvas) { + targetCanvasPtr = stringToNewUTF8(targetCanvas); + } + GROWABLE_HEAP_STORE_I32(varargs | 0, targetCanvasPtr); + GROWABLE_HEAP_STORE_I32(varargs + 4 | 0, width); + GROWABLE_HEAP_STORE_I32(varargs + 8 | 0, height); + _emscripten_async_queue_on_thread_(targetThread, 657457152, 0, targetCanvasPtr, varargs); + stackRestore(stackTop); +} +Module["_emscripten_set_offscreencanvas_size_on_target_thread_js"] = _emscripten_set_offscreencanvas_size_on_target_thread_js; +function _emscripten_set_offscreencanvas_size_on_target_thread(targetThread, targetCanvas, width, height) { + targetCanvas = targetCanvas ? UTF8ToString(targetCanvas) : ""; + _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread, targetCanvas, width, height); +} +Module["_emscripten_set_offscreencanvas_size_on_target_thread"] = _emscripten_set_offscreencanvas_size_on_target_thread; +var __specialEventTargets = [ 0, typeof document !== "undefined" ? document : 0, typeof window !== "undefined" ? window : 0 ]; +Module["__specialEventTargets"] = __specialEventTargets; +function __findEventTarget(target) { + warnOnce("Rules for selecting event targets in HTML5 API are changing: instead of using document.getElementById() that only can refer to elements by their DOM ID, new event target selection mechanism uses the more flexible function document.querySelector() that can look up element names, classes, and complex CSS selectors. Build with -s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1 to change to the new lookup rules. See https://github.com/emscripten-core/emscripten/pull/7977 for more details."); + try { + if (!target) return window; + if (typeof target === "number") target = __specialEventTargets[target] || UTF8ToString(target); + if (target === "#window") return window; else if (target === "#document") return document; else if (target === "#screen") return screen; else if (target === "#canvas") return Module["canvas"]; + return typeof target === "string" ? document.getElementById(target) : target; + } catch (e) { + return null; + } +} +Module["__findEventTarget"] = __findEventTarget; +function __findCanvasEventTarget(target) { + if (typeof target === "number") target = UTF8ToString(target); + if (!target || target === "#canvas") { + if (typeof GL !== "undefined" && GL.offscreenCanvases["canvas"]) return GL.offscreenCanvases["canvas"]; + return Module["canvas"]; + } + if (typeof GL !== "undefined" && GL.offscreenCanvases[target]) return GL.offscreenCanvases[target]; + return __findEventTarget(target); +} +Module["__findCanvasEventTarget"] = __findCanvasEventTarget; +function _emscripten_set_canvas_element_size_calling_thread(target, width, height) { + var canvas = __findCanvasEventTarget(target); + if (!canvas) return -4; + if (canvas.canvasSharedPtr) { + GROWABLE_HEAP_STORE_I32(canvas.canvasSharedPtr | 0, width); + GROWABLE_HEAP_STORE_I32(canvas.canvasSharedPtr + 4 | 0, height); + } + if (canvas.offscreenCanvas || !canvas.controlTransferredOffscreen) { + if (canvas.offscreenCanvas) canvas = canvas.offscreenCanvas; + var autoResizeViewport = false; + if (canvas.GLctxObject && canvas.GLctxObject.GLctx) { + var prevViewport = canvas.GLctxObject.GLctx.getParameter(canvas.GLctxObject.GLctx.VIEWPORT); + autoResizeViewport = prevViewport[0] === 0 && prevViewport[1] === 0 && prevViewport[2] === canvas.width && prevViewport[3] === canvas.height; + } + canvas.width = width; + canvas.height = height; + if (autoResizeViewport) { + canvas.GLctxObject.GLctx.viewport(0, 0, width, height); + } + } else if (canvas.canvasSharedPtr) { + var targetThread = GROWABLE_HEAP_LOAD_I32(canvas.canvasSharedPtr + 8 | 0); + _emscripten_set_offscreencanvas_size_on_target_thread(targetThread, target, width, height); + return 1; + } else { + return -4; + } + return 0; +} +Module["_emscripten_set_canvas_element_size_calling_thread"] = _emscripten_set_canvas_element_size_calling_thread; +function _emscripten_set_canvas_element_size_main_thread(target, width, height) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(18, 1, target, width, height); + return _emscripten_set_canvas_element_size_calling_thread(target, width, height); +} +Module["_emscripten_set_canvas_element_size_main_thread"] = _emscripten_set_canvas_element_size_main_thread; +function _emscripten_set_canvas_element_size(target, width, height) { + var canvas = __findCanvasEventTarget(target); + if (canvas) { + return _emscripten_set_canvas_element_size_calling_thread(target, width, height); + } else { + return _emscripten_set_canvas_element_size_main_thread(target, width, height); + } +} +Module["_emscripten_set_canvas_element_size"] = _emscripten_set_canvas_element_size; +function _emscripten_set_current_thread_status_js(newStatus) {} +Module["_emscripten_set_current_thread_status_js"] = _emscripten_set_current_thread_status_js; +function _emscripten_set_current_thread_status(newStatus) { + newStatus = newStatus | 0; +} +Module["_emscripten_set_current_thread_status"] = _emscripten_set_current_thread_status; +function _emscripten_set_thread_name_js(threadId, name) {} +Module["_emscripten_set_thread_name_js"] = _emscripten_set_thread_name_js; +function _emscripten_set_thread_name(threadId, name) { + threadId = threadId | 0; + name = name | 0; +} +Module["_emscripten_set_thread_name"] = _emscripten_set_thread_name; +function _emscripten_syscall(which, varargs) { + switch (which) { + case 10: + return ___syscall10(which, varargs); + case 12: + return ___syscall12(which, varargs); + case 183: + return ___syscall183(which, varargs); + case 192: + return ___syscall192(which, varargs); + case 195: + return ___syscall195(which, varargs); + case 196: + return ___syscall196(which, varargs); + case 220: + return ___syscall220(which, varargs); + case 221: + return ___syscall221(which, varargs); + case 3: + return ___syscall3(which, varargs); + case 39: + return ___syscall39(which, varargs); + case 4: + return ___syscall4(which, varargs); + case 40: + return ___syscall40(which, varargs); + case 5: + return ___syscall5(which, varargs); + case 54: + return ___syscall54(which, varargs); + case 85: + return ___syscall85(which, varargs); + case 91: + return ___syscall91(which, varargs); + default: + throw "surprising proxied syscall: " + which; + } +} +Module["_emscripten_syscall"] = _emscripten_syscall; +var __emscripten_webgl_power_preferences = [ "default", "low-power", "high-performance" ]; +Module["__emscripten_webgl_power_preferences"] = __emscripten_webgl_power_preferences; +var GL = { + counter: 1, + lastError: 0, + buffers: [], + mappedBuffers: {}, + programs: [], + framebuffers: [], + renderbuffers: [], + textures: [], + uniforms: [], + shaders: [], + vaos: [], + contexts: {}, + currentContext: null, + offscreenCanvases: {}, + timerQueriesEXT: [], + programInfos: {}, + stringCache: {}, + unpackAlignment: 4, + init: (function() { + GL.miniTempBuffer = new Float32Array(GL.MINI_TEMP_BUFFER_SIZE); + for (var i = 0; i < GL.MINI_TEMP_BUFFER_SIZE; i++) { + GL.miniTempBufferViews[i] = GL.miniTempBuffer.subarray(0, i + 1); + } + }), + recordError: function recordError(errorCode) { + if (!GL.lastError) { + GL.lastError = errorCode; + } + }, + getNewId: (function(table) { + var ret = GL.counter++; + for (var i = table.length; i < ret; i++) { + table[i] = null; + } + return ret; + }), + MINI_TEMP_BUFFER_SIZE: 256, + miniTempBuffer: null, + miniTempBufferViews: [ 0 ], + getSource: (function(shader, count, string, length) { + var source = ""; + for (var i = 0; i < count; ++i) { + var len = length ? GROWABLE_HEAP_LOAD_I32(length + i * 4 | 0) : -1; + source += UTF8ToString(GROWABLE_HEAP_LOAD_I32(string + i * 4 | 0), len < 0 ? undefined : len); + } + return source; + }), + createContext: (function(canvas, webGLContextAttributes) { + var ctx = canvas.getContext("webgl", webGLContextAttributes) || canvas.getContext("experimental-webgl", webGLContextAttributes); + if (!ctx) return 0; + var handle = GL.registerContext(ctx, webGLContextAttributes); + return handle; + }), + registerContext: (function(ctx, webGLContextAttributes) { + var handle = _malloc(8); + GROWABLE_HEAP_STORE_I32(handle + 4 | 0, _pthread_self()); + var context = { + handle: handle, + attributes: webGLContextAttributes, + version: webGLContextAttributes.majorVersion, + GLctx: ctx + }; + if (ctx.canvas) ctx.canvas.GLctxObject = context; + GL.contexts[handle] = context; + if (typeof webGLContextAttributes.enableExtensionsByDefault === "undefined" || webGLContextAttributes.enableExtensionsByDefault) { + GL.initExtensions(context); + } + return handle; + }), + makeContextCurrent: (function(contextHandle) { + GL.currentContext = GL.contexts[contextHandle]; + Module.ctx = GLctx = GL.currentContext && GL.currentContext.GLctx; + return !(contextHandle && !GLctx); + }), + getContext: (function(contextHandle) { + return GL.contexts[contextHandle]; + }), + deleteContext: (function(contextHandle) { + if (GL.currentContext === GL.contexts[contextHandle]) GL.currentContext = null; + if (typeof JSEvents === "object") JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas); + if (GL.contexts[contextHandle] && GL.contexts[contextHandle].GLctx.canvas) GL.contexts[contextHandle].GLctx.canvas.GLctxObject = undefined; + _free(GL.contexts[contextHandle]); + GL.contexts[contextHandle] = null; + }), + acquireInstancedArraysExtension: (function(ctx) { + var ext = ctx.getExtension("ANGLE_instanced_arrays"); + if (ext) { + ctx["vertexAttribDivisor"] = (function(index, divisor) { + ext["vertexAttribDivisorANGLE"](index, divisor); + }); + ctx["drawArraysInstanced"] = (function(mode, first, count, primcount) { + ext["drawArraysInstancedANGLE"](mode, first, count, primcount); + }); + ctx["drawElementsInstanced"] = (function(mode, count, type, indices, primcount) { + ext["drawElementsInstancedANGLE"](mode, count, type, indices, primcount); + }); + } + }), + acquireVertexArrayObjectExtension: (function(ctx) { + var ext = ctx.getExtension("OES_vertex_array_object"); + if (ext) { + ctx["createVertexArray"] = (function() { + return ext["createVertexArrayOES"](); + }); + ctx["deleteVertexArray"] = (function(vao) { + ext["deleteVertexArrayOES"](vao); + }); + ctx["bindVertexArray"] = (function(vao) { + ext["bindVertexArrayOES"](vao); + }); + ctx["isVertexArray"] = (function(vao) { + return ext["isVertexArrayOES"](vao); + }); + } + }), + acquireDrawBuffersExtension: (function(ctx) { + var ext = ctx.getExtension("WEBGL_draw_buffers"); + if (ext) { + ctx["drawBuffers"] = (function(n, bufs) { + ext["drawBuffersWEBGL"](n, bufs); + }); + } + }), + initExtensions: (function(context) { + if (!context) context = GL.currentContext; + if (context.initExtensionsDone) return; + context.initExtensionsDone = true; + var GLctx = context.GLctx; + if (context.version < 2) { + GL.acquireInstancedArraysExtension(GLctx); + GL.acquireVertexArrayObjectExtension(GLctx); + GL.acquireDrawBuffersExtension(GLctx); + } + GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query"); + var automaticallyEnabledExtensions = [ "OES_texture_float", "OES_texture_half_float", "OES_standard_derivatives", "OES_vertex_array_object", "WEBGL_compressed_texture_s3tc", "WEBGL_depth_texture", "OES_element_index_uint", "EXT_texture_filter_anisotropic", "EXT_frag_depth", "WEBGL_draw_buffers", "ANGLE_instanced_arrays", "OES_texture_float_linear", "OES_texture_half_float_linear", "EXT_blend_minmax", "EXT_shader_texture_lod", "WEBGL_compressed_texture_pvrtc", "EXT_color_buffer_half_float", "WEBGL_color_buffer_float", "EXT_sRGB", "WEBGL_compressed_texture_etc1", "EXT_disjoint_timer_query", "WEBGL_compressed_texture_etc", "WEBGL_compressed_texture_astc", "EXT_color_buffer_float", "WEBGL_compressed_texture_s3tc_srgb", "EXT_disjoint_timer_query_webgl2", "WEBKIT_WEBGL_compressed_texture_pvrtc" ]; + function shouldEnableAutomatically(extension) { + var ret = false; + automaticallyEnabledExtensions.forEach((function(include) { + if (extension.indexOf(include) != -1) { + ret = true; } - Module["_time"] = _time; - - function _times(buffer) { - // clock_t times(struct tms *buffer); - // http://pubs.opengroup.org/onlinepubs/009695399/functions/times.html - // NOTE: This is fake, since we can't calculate real CPU time usage in JS. - if (buffer !== 0) { - _memset(buffer, 0, 16); - } - return 0; + })); + return ret; + } + var exts = GLctx.getSupportedExtensions() || []; + exts.forEach((function(ext) { + if (automaticallyEnabledExtensions.indexOf(ext) != -1) { + GLctx.getExtension(ext); + } + })); + }), + populateUniformTable: (function(program) { + var p = GL.programs[program]; + var ptable = GL.programInfos[program] = { + uniforms: {}, + maxUniformLength: 0, + maxAttributeLength: -1, + maxUniformBlockNameLength: -1 + }; + var utable = ptable.uniforms; + var numUniforms = GLctx.getProgramParameter(p, 35718); + for (var i = 0; i < numUniforms; ++i) { + var u = GLctx.getActiveUniform(p, i); + var name = u.name; + ptable.maxUniformLength = Math.max(ptable.maxUniformLength, name.length + 1); + if (name.slice(-1) == "]") { + name = name.slice(0, name.lastIndexOf("[")); + } + var loc = GLctx.getUniformLocation(p, name); + if (loc) { + var id = GL.getNewId(GL.uniforms); + utable[name] = [ u.size, id ]; + GL.uniforms[id] = loc; + for (var j = 1; j < u.size; ++j) { + var n = name + "[" + j + "]"; + loc = GLctx.getUniformLocation(p, n); + id = GL.getNewId(GL.uniforms); + GL.uniforms[id] = loc; } - Module["_times"] = _times; -if (!ENVIRONMENT_IS_PTHREAD) PThread.initMainThreadBlock(); else PThread.initWorker();; -if (ENVIRONMENT_IS_NODE) { - _emscripten_get_now = function _emscripten_get_now_actual() { - var t = process['hrtime'](); - return t[0] * 1e3 + t[1] / 1e6; - }; - } else if (ENVIRONMENT_IS_PTHREAD) { - _emscripten_get_now = function() { return performance['now']() - __performance_now_clock_drift; }; - } else if (typeof dateNow !== 'undefined') { - _emscripten_get_now = dateNow; - } else if (typeof performance === 'object' && performance && typeof performance['now'] === 'function') { - _emscripten_get_now = function() { return performance['now'](); }; - } else { - _emscripten_get_now = Date.now; + } + } + }) +}; +Module["GL"] = GL; +function _emscripten_webgl_do_create_context(target, attributes) { + assert(attributes); + var contextAttributes = {}; + var a = attributes >> 2; + contextAttributes["alpha"] = !!GROWABLE_HEAP_LOAD_I32((a + (0 >> 2)) * 4 | 0); + contextAttributes["depth"] = !!GROWABLE_HEAP_LOAD_I32((a + (4 >> 2)) * 4 | 0); + contextAttributes["stencil"] = !!GROWABLE_HEAP_LOAD_I32((a + (8 >> 2)) * 4 | 0); + contextAttributes["antialias"] = !!GROWABLE_HEAP_LOAD_I32((a + (12 >> 2)) * 4 | 0); + contextAttributes["premultipliedAlpha"] = !!GROWABLE_HEAP_LOAD_I32((a + (16 >> 2)) * 4 | 0); + contextAttributes["preserveDrawingBuffer"] = !!GROWABLE_HEAP_LOAD_I32((a + (20 >> 2)) * 4 | 0); + var powerPreference = GROWABLE_HEAP_LOAD_I32((a + (24 >> 2)) * 4 | 0); + contextAttributes["powerPreference"] = __emscripten_webgl_power_preferences[powerPreference]; + contextAttributes["failIfMajorPerformanceCaveat"] = !!GROWABLE_HEAP_LOAD_I32((a + (28 >> 2)) * 4 | 0); + contextAttributes.majorVersion = GROWABLE_HEAP_LOAD_I32((a + (32 >> 2)) * 4 | 0); + contextAttributes.minorVersion = GROWABLE_HEAP_LOAD_I32((a + (36 >> 2)) * 4 | 0); + contextAttributes.enableExtensionsByDefault = GROWABLE_HEAP_LOAD_I32((a + (40 >> 2)) * 4 | 0); + contextAttributes.explicitSwapControl = GROWABLE_HEAP_LOAD_I32((a + (44 >> 2)) * 4 | 0); + contextAttributes.proxyContextToMainThread = GROWABLE_HEAP_LOAD_I32((a + (48 >> 2)) * 4 | 0); + contextAttributes.renderViaOffscreenBackBuffer = GROWABLE_HEAP_LOAD_I32((a + (52 >> 2)) * 4 | 0); + var canvas = __findCanvasEventTarget(target); + if (!canvas) { + return 0; + } + if (contextAttributes.explicitSwapControl) { + return 0; + } + var contextHandle = GL.createContext(canvas, contextAttributes); + return contextHandle; +} +Module["_emscripten_webgl_do_create_context"] = _emscripten_webgl_do_create_context; +function _emscripten_webgl_create_context(a0, a1) { + return _emscripten_webgl_do_create_context(a0, a1); +} +Module["_emscripten_webgl_create_context"] = _emscripten_webgl_create_context; +var ENV = {}; +Module["ENV"] = ENV; +function _emscripten_get_environ() { + if (!_emscripten_get_environ.strings) { + var env = { + "USER": "web_user", + "LOGNAME": "web_user", + "PATH": "/", + "PWD": "/", + "HOME": "/home/web_user", + "LANG": (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8", + "_": thisProgram }; -FS.staticInit();; -if (ENVIRONMENT_HAS_NODE) { var fs = require("fs"); var NODEJS_PATH = require("path"); NODEFS.staticInit(); }; -var GLctx; GL.init(); - - // proxiedFunctionTable specifies the list of functions that can be called either synchronously or asynchronously from other threads in postMessage()d or internally queued events. This way a pthread in a Worker can synchronously access e.g. the DOM on the main thread. - -var proxiedFunctionTable = [null,_atexit,___syscall10,___syscall12,___syscall183,___syscall192,___syscall195,___syscall196,___syscall220,___syscall221,___syscall3,___syscall39,___syscall4,___syscall40,___syscall5,___syscall54,___syscall85,___syscall91,_emscripten_set_canvas_element_size_main_thread,_fd_close,_fd_read,_fd_seek,_fd_write,_tzset,_sysconf]; - + for (var x in ENV) { + env[x] = ENV[x]; + } + var strings = []; + for (var x in env) { + strings.push(x + "=" + env[x]); + } + _emscripten_get_environ.strings = strings; + } + return _emscripten_get_environ.strings; +} +Module["_emscripten_get_environ"] = _emscripten_get_environ; +function _environ_get(__environ, environ_buf) { + var strings = _emscripten_get_environ(); + var bufSize = 0; + strings.forEach((function(string, i) { + var ptr = environ_buf + bufSize; + GROWABLE_HEAP_STORE_I32(__environ + i * 4 | 0, ptr); + writeAsciiToMemory(string, ptr); + bufSize += string.length + 1; + })); + return 0; +} +Module["_environ_get"] = _environ_get; +function _environ_sizes_get(penviron_count, penviron_buf_size) { + var strings = _emscripten_get_environ(); + GROWABLE_HEAP_STORE_I32(penviron_count | 0, strings.length); + var bufSize = 0; + strings.forEach((function(string) { + bufSize += string.length + 1; + })); + GROWABLE_HEAP_STORE_I32(penviron_buf_size | 0, bufSize); + return 0; +} +Module["_environ_sizes_get"] = _environ_sizes_get; +function _exit(status) { + exit(status); +} +Module["_exit"] = _exit; +function _fd_close(fd) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(19, 1, fd); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +Module["_fd_close"] = _fd_close; +function _fd_read(fd, iov, iovcnt, pnum) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(20, 1, fd, iov, iovcnt, pnum); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doReadv(stream, iov, iovcnt); + GROWABLE_HEAP_STORE_I32(pnum | 0, num); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +Module["_fd_read"] = _fd_read; +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(21, 1, fd, offset_low, offset_high, whence, newOffset); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61; + } + FS.llseek(stream, offset, whence); + tempI64 = [ stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], GROWABLE_HEAP_STORE_I32(newOffset | 0, tempI64[0]), GROWABLE_HEAP_STORE_I32(newOffset + 4 | 0, tempI64[1]); + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +Module["_fd_seek"] = _fd_seek; +function _fd_write(fd, iov, iovcnt, pnum) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(22, 1, fd, iov, iovcnt, pnum); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + GROWABLE_HEAP_STORE_I32(pnum | 0, num); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +Module["_fd_write"] = _fd_write; +function _getTempRet0() { + return getTempRet0() | 0; +} +Module["_getTempRet0"] = _getTempRet0; +function _gettimeofday(ptr) { + var now = Date.now(); + GROWABLE_HEAP_STORE_I32(ptr | 0, now / 1e3 | 0); + GROWABLE_HEAP_STORE_I32(ptr + 4 | 0, now % 1e3 * 1e3 | 0); + return 0; +} +Module["_gettimeofday"] = _gettimeofday; +var ___tm_current = 12594976; +Module["___tm_current"] = ___tm_current; +var ___tm_timezone = (stringToUTF8("GMT", 12595024, 4), 12595024); +Module["___tm_timezone"] = ___tm_timezone; +function _gmtime_r(time, tmPtr) { + var date = new Date(GROWABLE_HEAP_LOAD_I32(time | 0) * 1e3); + GROWABLE_HEAP_STORE_I32(tmPtr | 0, date.getUTCSeconds()); + GROWABLE_HEAP_STORE_I32(tmPtr + 4 | 0, date.getUTCMinutes()); + GROWABLE_HEAP_STORE_I32(tmPtr + 8 | 0, date.getUTCHours()); + GROWABLE_HEAP_STORE_I32(tmPtr + 12 | 0, date.getUTCDate()); + GROWABLE_HEAP_STORE_I32(tmPtr + 16 | 0, date.getUTCMonth()); + GROWABLE_HEAP_STORE_I32(tmPtr + 20 | 0, date.getUTCFullYear() - 1900); + GROWABLE_HEAP_STORE_I32(tmPtr + 24 | 0, date.getUTCDay()); + GROWABLE_HEAP_STORE_I32(tmPtr + 36 | 0, 0); + GROWABLE_HEAP_STORE_I32(tmPtr + 32 | 0, 0); + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + GROWABLE_HEAP_STORE_I32(tmPtr + 28 | 0, yday); + GROWABLE_HEAP_STORE_I32(tmPtr + 40 | 0, ___tm_timezone); + return tmPtr; +} +Module["_gmtime_r"] = _gmtime_r; +function _gmtime(time) { + return _gmtime_r(time, ___tm_current); +} +Module["_gmtime"] = _gmtime; +function _memcpy(dest, src, num) { + dest = dest | 0; + src = src | 0; + num = num | 0; + var ret = 0; + var aligned_dest_end = 0; + var block_aligned_dest_end = 0; + var dest_end = 0; + if ((num | 0) >= 8192) { + _emscripten_memcpy_big(dest | 0, src | 0, num | 0) | 0; + return dest | 0; + } + ret = dest | 0; + dest_end = dest + num | 0; + if ((dest & 3) == (src & 3)) { + while (dest & 3) { + if ((num | 0) == 0) return ret | 0; + GROWABLE_HEAP_STORE_I8(dest >> 0 | 0, GROWABLE_HEAP_LOAD_I8(src >> 0 | 0) | 0); + dest = dest + 1 | 0; + src = src + 1 | 0; + num = num - 1 | 0; + } + aligned_dest_end = dest_end & -4 | 0; + block_aligned_dest_end = aligned_dest_end - 64 | 0; + while ((dest | 0) <= (block_aligned_dest_end | 0)) { + GROWABLE_HEAP_STORE_I32(dest | 0, GROWABLE_HEAP_LOAD_I32(src | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 4 | 0, GROWABLE_HEAP_LOAD_I32(src + 4 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 8 | 0, GROWABLE_HEAP_LOAD_I32(src + 8 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 12 | 0, GROWABLE_HEAP_LOAD_I32(src + 12 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 16 | 0, GROWABLE_HEAP_LOAD_I32(src + 16 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 20 | 0, GROWABLE_HEAP_LOAD_I32(src + 20 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 24 | 0, GROWABLE_HEAP_LOAD_I32(src + 24 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 28 | 0, GROWABLE_HEAP_LOAD_I32(src + 28 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 32 | 0, GROWABLE_HEAP_LOAD_I32(src + 32 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 36 | 0, GROWABLE_HEAP_LOAD_I32(src + 36 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 40 | 0, GROWABLE_HEAP_LOAD_I32(src + 40 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 44 | 0, GROWABLE_HEAP_LOAD_I32(src + 44 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 48 | 0, GROWABLE_HEAP_LOAD_I32(src + 48 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 52 | 0, GROWABLE_HEAP_LOAD_I32(src + 52 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 56 | 0, GROWABLE_HEAP_LOAD_I32(src + 56 | 0) | 0); + GROWABLE_HEAP_STORE_I32(dest + 60 | 0, GROWABLE_HEAP_LOAD_I32(src + 60 | 0) | 0); + dest = dest + 64 | 0; + src = src + 64 | 0; + } + while ((dest | 0) < (aligned_dest_end | 0)) { + GROWABLE_HEAP_STORE_I32(dest | 0, GROWABLE_HEAP_LOAD_I32(src | 0) | 0); + dest = dest + 4 | 0; + src = src + 4 | 0; + } + } else { + aligned_dest_end = dest_end - 4 | 0; + while ((dest | 0) < (aligned_dest_end | 0)) { + GROWABLE_HEAP_STORE_I8(dest >> 0 | 0, GROWABLE_HEAP_LOAD_I8(src >> 0 | 0) | 0); + GROWABLE_HEAP_STORE_I8(dest + 1 >> 0 | 0, GROWABLE_HEAP_LOAD_I8(src + 1 >> 0 | 0) | 0); + GROWABLE_HEAP_STORE_I8(dest + 2 >> 0 | 0, GROWABLE_HEAP_LOAD_I8(src + 2 >> 0 | 0) | 0); + GROWABLE_HEAP_STORE_I8(dest + 3 >> 0 | 0, GROWABLE_HEAP_LOAD_I8(src + 3 >> 0 | 0) | 0); + dest = dest + 4 | 0; + src = src + 4 | 0; + } + } + while ((dest | 0) < (dest_end | 0)) { + GROWABLE_HEAP_STORE_I8(dest >> 0 | 0, GROWABLE_HEAP_LOAD_I8(src >> 0 | 0) | 0); + dest = dest + 1 | 0; + src = src + 1 | 0; + } + return ret | 0; +} +Module["_memcpy"] = _memcpy; +function _tzset() { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(23, 1); + if (_tzset.called) return; + _tzset.called = true; + GROWABLE_HEAP_STORE_I32(__get_timezone() | 0, (new Date).getTimezoneOffset() * 60); + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + GROWABLE_HEAP_STORE_I32(__get_daylight() | 0, Number(winter.getTimezoneOffset() != summer.getTimezoneOffset())); + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT"; + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + GROWABLE_HEAP_STORE_I32(__get_tzname() | 0, winterNamePtr); + GROWABLE_HEAP_STORE_I32(__get_tzname() + 4 | 0, summerNamePtr); + } else { + GROWABLE_HEAP_STORE_I32(__get_tzname() | 0, summerNamePtr); + GROWABLE_HEAP_STORE_I32(__get_tzname() + 4 | 0, winterNamePtr); + } +} +Module["_tzset"] = _tzset; +function _mktime(tmPtr) { + _tzset(); + var date = new Date(GROWABLE_HEAP_LOAD_I32(tmPtr + 20 | 0) + 1900, GROWABLE_HEAP_LOAD_I32(tmPtr + 16 | 0), GROWABLE_HEAP_LOAD_I32(tmPtr + 12 | 0), GROWABLE_HEAP_LOAD_I32(tmPtr + 8 | 0), GROWABLE_HEAP_LOAD_I32(tmPtr + 4 | 0), GROWABLE_HEAP_LOAD_I32(tmPtr | 0), 0); + var dst = GROWABLE_HEAP_LOAD_I32(tmPtr + 32 | 0); + var guessedOffset = date.getTimezoneOffset(); + var start = new Date(date.getFullYear(), 0, 1); + var summerOffset = (new Date(date.getFullYear(), 6, 1)).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dstOffset = Math.min(winterOffset, summerOffset); + if (dst < 0) { + GROWABLE_HEAP_STORE_I32(tmPtr + 32 | 0, Number(summerOffset != winterOffset && dstOffset == guessedOffset)); + } else if (dst > 0 != (dstOffset == guessedOffset)) { + var nonDstOffset = Math.max(winterOffset, summerOffset); + var trueOffset = dst > 0 ? dstOffset : nonDstOffset; + date.setTime(date.getTime() + (trueOffset - guessedOffset) * 6e4); + } + GROWABLE_HEAP_STORE_I32(tmPtr + 24 | 0, date.getDay()); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + GROWABLE_HEAP_STORE_I32(tmPtr + 28 | 0, yday); + return date.getTime() / 1e3 | 0; +} +Module["_mktime"] = _mktime; +function _pthread_cleanup_pop(execute) { + var routine = PThread.exitHandlers.pop(); + if (execute) routine(); +} +Module["_pthread_cleanup_pop"] = _pthread_cleanup_pop; +function _pthread_cleanup_push(routine, arg) { + if (PThread.exitHandlers === null) { + PThread.exitHandlers = []; + if (!ENVIRONMENT_IS_PTHREAD) { + __ATEXIT__.push((function() { + PThread.runExitHandlers(); + })); + } + } + PThread.exitHandlers.push((function() { + dynCall_vi(routine, arg); + })); +} +Module["_pthread_cleanup_push"] = _pthread_cleanup_push; +function __spawn_thread(threadParams) { + if (ENVIRONMENT_IS_PTHREAD) throw "Internal Error! _spawn_thread() can only ever be called from main application thread!"; + var worker = PThread.getNewWorker(); + if (worker.pthread !== undefined) throw "Internal error!"; + if (!threadParams.pthread_ptr) throw "Internal error, no pthread ptr!"; + PThread.runningWorkers.push(worker); + var tlsMemory = _malloc(128 * 4); + for (var i = 0; i < 128; ++i) { + GROWABLE_HEAP_STORE_I32(tlsMemory + i * 4 | 0, 0); + } + var stackHigh = threadParams.stackBase + threadParams.stackSize; + var pthread = PThread.pthreads[threadParams.pthread_ptr] = { + worker: worker, + stackBase: threadParams.stackBase, + stackSize: threadParams.stackSize, + allocatedOwnStack: threadParams.allocatedOwnStack, + thread: threadParams.pthread_ptr, + threadInfoStruct: threadParams.pthread_ptr + }; + Atomics.store(HEAPU32, pthread.threadInfoStruct + 0 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 4 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 20 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 80 >> 2, threadParams.detached); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 116 >> 2, tlsMemory); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 60 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 52 >> 2, pthread.threadInfoStruct); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 56 >> 2, PROCINFO.pid); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 >> 2, threadParams.stackSize); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 96 >> 2, threadParams.stackSize); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 92 >> 2, stackHigh); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 8 >> 2, stackHigh); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 12 >> 2, threadParams.detached); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 20 >> 2, threadParams.schedPolicy); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 24 >> 2, threadParams.schedPrio); + var global_libc = _emscripten_get_global_libc(); + var global_locale = global_libc + 40; + Atomics.store(HEAPU32, pthread.threadInfoStruct + 188 >> 2, global_locale); + worker.pthread = pthread; + var msg = { + "cmd": "run", + "start_routine": threadParams.startRoutine, + "arg": threadParams.arg, + "threadInfoStruct": threadParams.pthread_ptr, + "selfThreadId": threadParams.pthread_ptr, + "parentThreadId": threadParams.parent_pthread_ptr, + "stackBase": threadParams.stackBase, + "stackSize": threadParams.stackSize + }; + worker.runPthread = (function() { + msg.time = performance.now(); + worker.postMessage(msg, threadParams.transferList); + }); + if (worker.loaded) { + worker.runPthread(); + delete worker.runPthread; + } +} +Module["__spawn_thread"] = __spawn_thread; +function _pthread_getschedparam(thread, policy, schedparam) { + if (!policy && !schedparam) return ERRNO_CODES.EINVAL; + if (!thread) { + err("pthread_getschedparam called with a null thread pointer!"); + return ERRNO_CODES.ESRCH; + } + var self = GROWABLE_HEAP_LOAD_I32(thread + 24 | 0); + if (self !== thread) { + err("pthread_getschedparam attempted on thread " + thread + ", which does not point to a valid thread, or does not exist anymore!"); + return ERRNO_CODES.ESRCH; + } + var schedPolicy = Atomics.load(HEAPU32, thread + 120 + 20 >> 2); + var schedPrio = Atomics.load(HEAPU32, thread + 120 + 24 >> 2); + if (policy) GROWABLE_HEAP_STORE_I32(policy | 0, schedPolicy); + if (schedparam) GROWABLE_HEAP_STORE_I32(schedparam | 0, schedPrio); + return 0; +} +Module["_pthread_getschedparam"] = _pthread_getschedparam; +function _pthread_self() { + return __pthread_ptr | 0; +} +Module["_pthread_self"] = _pthread_self; +function _pthread_create(pthread_ptr, attr, start_routine, arg) { + if (typeof SharedArrayBuffer === "undefined") { + err("Current environment does not support SharedArrayBuffer, pthreads are not available!"); + return 6; + } + if (!pthread_ptr) { + err("pthread_create called with a null thread pointer!"); + return 28; + } + var transferList = []; + var error = 0; + if (ENVIRONMENT_IS_PTHREAD && (transferList.length === 0 || error)) { + return _emscripten_sync_run_in_main_thread_4(687865856, pthread_ptr, attr, start_routine, arg); + } + if (error) return error; + var stackSize = 0; + var stackBase = 0; + var detached = 0; + var schedPolicy = 0; + var schedPrio = 0; + if (attr) { + stackSize = GROWABLE_HEAP_LOAD_I32(attr | 0); + stackSize += 81920; + stackBase = GROWABLE_HEAP_LOAD_I32(attr + 8 | 0); + detached = GROWABLE_HEAP_LOAD_I32(attr + 12 | 0) !== 0; + var inheritSched = GROWABLE_HEAP_LOAD_I32(attr + 16 | 0) === 0; + if (inheritSched) { + var prevSchedPolicy = GROWABLE_HEAP_LOAD_I32(attr + 20 | 0); + var prevSchedPrio = GROWABLE_HEAP_LOAD_I32(attr + 24 | 0); + var parentThreadPtr = PThread.currentProxiedOperationCallerThread ? PThread.currentProxiedOperationCallerThread : _pthread_self(); + _pthread_getschedparam(parentThreadPtr, attr + 20, attr + 24); + schedPolicy = GROWABLE_HEAP_LOAD_I32(attr + 20 | 0); + schedPrio = GROWABLE_HEAP_LOAD_I32(attr + 24 | 0); + GROWABLE_HEAP_STORE_I32(attr + 20 | 0, prevSchedPolicy); + GROWABLE_HEAP_STORE_I32(attr + 24 | 0, prevSchedPrio); + } else { + schedPolicy = GROWABLE_HEAP_LOAD_I32(attr + 20 | 0); + schedPrio = GROWABLE_HEAP_LOAD_I32(attr + 24 | 0); + } + } else { + stackSize = 2097152; + } + var allocatedOwnStack = stackBase == 0; + if (allocatedOwnStack) { + stackBase = _memalign(16, stackSize); + } else { + stackBase -= stackSize; + assert(stackBase > 0); + } + var threadInfoStruct = _malloc(244); + for (var i = 0; i < 244 >> 2; ++i) GROWABLE_HEAP_STORE_I32(((threadInfoStruct >> 2) + i) * 4 | 0, 0); + GROWABLE_HEAP_STORE_I32(pthread_ptr | 0, threadInfoStruct); + GROWABLE_HEAP_STORE_I32(threadInfoStruct + 24 | 0, threadInfoStruct); + var headPtr = threadInfoStruct + 168; + GROWABLE_HEAP_STORE_I32(headPtr | 0, headPtr); + var threadParams = { + stackBase: stackBase, + stackSize: stackSize, + allocatedOwnStack: allocatedOwnStack, + schedPolicy: schedPolicy, + schedPrio: schedPrio, + detached: detached, + startRoutine: start_routine, + pthread_ptr: threadInfoStruct, + parent_pthread_ptr: _pthread_self(), + arg: arg, + transferList: transferList + }; + if (ENVIRONMENT_IS_PTHREAD) { + threadParams.cmd = "spawnThread"; + postMessage(threadParams, transferList); + } else { + __spawn_thread(threadParams); + } + return 0; +} +Module["_pthread_create"] = _pthread_create; +function _setTempRet0($i) { + setTempRet0($i | 0); +} +Module["_setTempRet0"] = _setTempRet0; +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); +} +Module["__isLeapYear"] = __isLeapYear; +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]) ; + return sum; +} +Module["__arraySum"] = __arraySum; +var __MONTH_DAYS_LEAP = [ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ]; +Module["__MONTH_DAYS_LEAP"] = __MONTH_DAYS_LEAP; +var __MONTH_DAYS_REGULAR = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ]; +Module["__MONTH_DAYS_REGULAR"] = __MONTH_DAYS_REGULAR; +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1); + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1); + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate; + } + } + return newDate; +} +Module["__addDays"] = __addDays; +function _strftime(s, maxsize, format, tm) { + var tm_zone = GROWABLE_HEAP_LOAD_I32(tm + 40 | 0); + var date = { + tm_sec: GROWABLE_HEAP_LOAD_I32(tm | 0), + tm_min: GROWABLE_HEAP_LOAD_I32(tm + 4 | 0), + tm_hour: GROWABLE_HEAP_LOAD_I32(tm + 8 | 0), + tm_mday: GROWABLE_HEAP_LOAD_I32(tm + 12 | 0), + tm_mon: GROWABLE_HEAP_LOAD_I32(tm + 16 | 0), + tm_year: GROWABLE_HEAP_LOAD_I32(tm + 20 | 0), + tm_wday: GROWABLE_HEAP_LOAD_I32(tm + 24 | 0), + tm_yday: GROWABLE_HEAP_LOAD_I32(tm + 28 | 0), + tm_isdst: GROWABLE_HEAP_LOAD_I32(tm + 32 | 0), + tm_gmtoff: GROWABLE_HEAP_LOAD_I32(tm + 36 | 0), + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]); + } + var WEEKDAYS = [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ]; + var MONTHS = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ]; + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str; + } + return str; + } + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0"); + } + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0; + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()); + } + } + return compare; + } + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30); + } + } + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1; + } else { + return thisDate.getFullYear(); + } + } else { + return thisDate.getFullYear() - 1; + } + } + var EXPANSION_RULES_2 = { + "%a": (function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3); + }), + "%A": (function(date) { + return WEEKDAYS[date.tm_wday]; + }), + "%b": (function(date) { + return MONTHS[date.tm_mon].substring(0, 3); + }), + "%B": (function(date) { + return MONTHS[date.tm_mon]; + }), + "%C": (function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2); + }), + "%d": (function(date) { + return leadingNulls(date.tm_mday, 2); + }), + "%e": (function(date) { + return leadingSomething(date.tm_mday, 2, " "); + }), + "%g": (function(date) { + return getWeekBasedYear(date).toString().substring(2); + }), + "%G": (function(date) { + return getWeekBasedYear(date); + }), + "%H": (function(date) { + return leadingNulls(date.tm_hour, 2); + }), + "%I": (function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2); + }), + "%j": (function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3); + }), + "%m": (function(date) { + return leadingNulls(date.tm_mon + 1, 2); + }), + "%M": (function(date) { + return leadingNulls(date.tm_min, 2); + }), + "%n": (function() { + return "\n"; + }), + "%p": (function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM"; + } else { + return "PM"; + } + }), + "%S": (function(date) { + return leadingNulls(date.tm_sec, 2); + }), + "%t": (function() { + return "\t"; + }), + "%u": (function(date) { + return date.tm_wday || 7; + }), + "%U": (function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2); + } + return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00"; + }), + "%V": (function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53"; + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01"; + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate(); + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate(); + } + return leadingNulls(Math.ceil(daysDifference / 7), 2); + }), + "%w": (function(date) { + return date.tm_wday; + }), + "%W": (function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2); + } + return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00"; + }), + "%y": (function(date) { + return (date.tm_year + 1900).toString().substring(2); + }), + "%Y": (function(date) { + return date.tm_year + 1900; + }), + "%z": (function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4); + }), + "%Z": (function(date) { + return date.tm_zone; + }), + "%%": (function() { + return "%"; + }) + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)); + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0; + } + writeArrayToMemory(bytes, s); + return bytes.length - 1; +} +Module["_strftime"] = _strftime; +function _strftime_l(s, maxsize, format, tm) { + return _strftime(s, maxsize, format, tm); +} +Module["_strftime_l"] = _strftime_l; +function _sysconf(name) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(24, 1, name); + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = 1073741824; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: + { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1; + } + } + ___setErrNo(28); + return -1; +} +Module["_sysconf"] = _sysconf; +function _system(command) { + ___setErrNo(6); + return -1; +} +Module["_system"] = _system; +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + GROWABLE_HEAP_STORE_I32(ptr | 0, ret); + } + return ret; +} +Module["_time"] = _time; +function _times(buffer) { + if (buffer !== 0) { + _memset(buffer, 0, 16); + } + return 0; +} +Module["_times"] = _times; +if (!ENVIRONMENT_IS_PTHREAD) PThread.initMainThreadBlock(); else PThread.initWorker(); +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6; + }; +} else if (ENVIRONMENT_IS_PTHREAD) { + _emscripten_get_now = (function() { + return performance["now"]() - __performance_now_clock_drift; + }); +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow; +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = (function() { + return performance["now"](); + }); +} else { + _emscripten_get_now = Date.now; +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit(); +} +var GLctx; +GL.init(); +var proxiedFunctionTable = [ null, _atexit, ___syscall10, ___syscall12, ___syscall183, ___syscall192, ___syscall195, ___syscall196, ___syscall220, ___syscall221, ___syscall3, ___syscall39, ___syscall4, ___syscall40, ___syscall5, ___syscall54, ___syscall85, ___syscall91, _emscripten_set_canvas_element_size_main_thread, _fd_close, _fd_read, _fd_seek, _fd_write, _tzset, _sysconf ]; var ASSERTIONS = true; - -// Copyright 2017 The Emscripten Authors. All rights reserved. -// Emscripten is available under two separate licenses, the MIT license and the -// University of Illinois/NCSA Open Source License. Both these licenses can be -// found in the LICENSE file. - -/** @type {function(string, boolean=, number=)} */ function intArrayFromString(stringy, dontAddNull, length) { - var len = length > 0 ? length : lengthBytesUTF8(stringy)+1; - var u8array = new Array(len); - var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); - if (dontAddNull) u8array.length = numBytesWritten; - return u8array; + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array; } - function intArrayToString(array) { - var ret = []; - for (var i = 0; i < array.length; i++) { - var chr = array[i]; - if (chr > 0xFF) { - if (ASSERTIONS) { - assert(false, 'Character code ' + chr + ' (' + String.fromCharCode(chr) + ') at offset ' + i + ' not in 0x00-0xFF.'); - } - chr &= 0xFF; - } - ret.push(String.fromCharCode(chr)); - } - return ret.join(''); + var ret = []; + for (var i = 0; i < array.length; i++) { + var chr = array[i]; + if (chr > 255) { + if (ASSERTIONS) { + assert(false, "Character code " + chr + " (" + String.fromCharCode(chr) + ") at offset " + i + " not in 0x00-0xFF."); + } + chr &= 255; + } + ret.push(String.fromCharCode(chr)); + } + return ret.join(""); } - - -// ASM_LIBRARY EXTERN PRIMITIVES: Int8Array,Int32Array - var asmGlobalArg = {}; -var asmLibraryArg = { "_ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, "_ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, "_ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, "_ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, "_ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, "_ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb": __ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb, "_ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb": __ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb, "_ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb": __ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb, "_ZN12CPdfRendererD1Ev": __ZN12CPdfRendererD1Ev, "_ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv": __ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv, "_ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_": __ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_, "_ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE": __ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE, "_ZN14NSDoctRenderer13CDoctrendererD1Ev": __ZN14NSDoctRenderer13CDoctrendererD1Ev, "_ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_": __ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_, "_ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb": __ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb, "_ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev": __ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev, "_ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev": __ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev, "_ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb": __ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb, "_ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE": __ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE, "_ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE": __ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE, "_ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_": __ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_, "_ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_": __ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_, "_ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_": __ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_, "_ZN9CHtmlFileC1Ev": __ZN9CHtmlFileC1Ev, "_ZN9CHtmlFileD1Ev": __ZN9CHtmlFileD1Ev, "_ZN9PdfReader10CPdfReader8GetErrorEv": __ZN9PdfReader10CPdfReader8GetErrorEv, "_ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE": __ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE, "__assert_fail": ___assert_fail, "__call_main": ___call_main, "__clock_gettime": ___clock_gettime, "__cxa_allocate_exception": ___cxa_allocate_exception, "__cxa_atexit": ___cxa_atexit, "__cxa_rethrow": ___cxa_rethrow, "__cxa_throw": ___cxa_throw, "__lock": ___lock, "__map_file": ___map_file, "__syscall10": ___syscall10, "__syscall12": ___syscall12, "__syscall183": ___syscall183, "__syscall192": ___syscall192, "__syscall195": ___syscall195, "__syscall196": ___syscall196, "__syscall220": ___syscall220, "__syscall221": ___syscall221, "__syscall3": ___syscall3, "__syscall39": ___syscall39, "__syscall4": ___syscall4, "__syscall40": ___syscall40, "__syscall5": ___syscall5, "__syscall54": ___syscall54, "__syscall85": ___syscall85, "__syscall91": ___syscall91, "__unlock": ___unlock, "abort": _abort, "atexit": _atexit, "emscripten_asm_const_iii": _emscripten_asm_const_iii, "emscripten_check_blocking_allowed": _emscripten_check_blocking_allowed, "emscripten_conditional_set_current_thread_status": _emscripten_conditional_set_current_thread_status, "emscripten_futex_wait": _emscripten_futex_wait, "emscripten_futex_wake": _emscripten_futex_wake, "emscripten_get_now": _emscripten_get_now, "emscripten_get_sbrk_ptr": _emscripten_get_sbrk_ptr, "emscripten_has_threading_support": _emscripten_has_threading_support, "emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, "emscripten_is_main_runtime_thread": _emscripten_is_main_runtime_thread, "emscripten_longjmp": _emscripten_longjmp, "emscripten_memcpy_big": _emscripten_memcpy_big, "emscripten_receive_on_main_thread_js": _emscripten_receive_on_main_thread_js, "emscripten_resize_heap": _emscripten_resize_heap, "emscripten_set_canvas_element_size": _emscripten_set_canvas_element_size, "emscripten_set_current_thread_status": _emscripten_set_current_thread_status, "emscripten_set_thread_name": _emscripten_set_thread_name, "emscripten_syscall": _emscripten_syscall, "emscripten_webgl_create_context": _emscripten_webgl_create_context, "environ_get": _environ_get, "environ_sizes_get": _environ_sizes_get, "exit": _exit, "fd_close": _fd_close, "fd_read": _fd_read, "fd_seek": _fd_seek, "fd_write": _fd_write, "getTempRet0": _getTempRet0, "gettimeofday": _gettimeofday, "gmtime": _gmtime, "initPthreadsJS": initPthreadsJS, "invoke_ii": invoke_ii, "invoke_iii": invoke_iii, "invoke_iiii": invoke_iiii, "invoke_iiiii": invoke_iiiii, "invoke_iiiiii": invoke_iiiiii, "invoke_v": invoke_v, "invoke_vi": invoke_vi, "invoke_vii": invoke_vii, "invoke_viii": invoke_viii, "invoke_viiii": invoke_viiii, "invoke_viiiii": invoke_viiiii, "invoke_viiiiii": invoke_viiiiii, "invoke_viiiiiiiii": invoke_viiiiiiiii, "memory": wasmMemory, "mktime": _mktime, "pthread_cleanup_pop": _pthread_cleanup_pop, "pthread_cleanup_push": _pthread_cleanup_push, "pthread_create": _pthread_create, "pthread_self": _pthread_self, "saveSetjmp": _saveSetjmp, "setTempRet0": _setTempRet0, "strftime_l": _strftime_l, "sysconf": _sysconf, "system": _system, "table": wasmTable, "testSetjmp": _testSetjmp, "time": _time, "times": _times }; +var asmLibraryArg = { + "_ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer10SaveToFileERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, + "_ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer11SetPasswordERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, + "_ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer13SetDocumentIDERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, + "_ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer13SetTempFolderERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, + "_ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE": __ZN12CPdfRenderer14SetThemesPlaceERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEE, + "_ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb": __ZN12CPdfRenderer15OnlineWordToPdfERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb, + "_ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb": __ZN12CPdfRenderer25OnlineWordToPdfFromBinaryERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_RKb, + "_ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb": __ZN12CPdfRendererC1EPN7NSFonts17IApplicationFontsEb, + "_ZN12CPdfRendererD1Ev": __ZN12CPdfRendererD1Ev, + "_ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv": __ZN14NSDoctRenderer13CDoctrenderer18GetImagesInChangesEv, + "_ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_": __ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERS7_, + "_ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE": __ZN14NSDoctRenderer13CDoctrendererC1ERKNSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEE, + "_ZN14NSDoctRenderer13CDoctrendererD1Ev": __ZN14NSDoctRenderer13CDoctrendererD1Ev, + "_ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_": __ZN14NSHtmlRenderer17CASCHTMLRenderer316CreateOfficeFileENSt3__212basic_stringIwNS1_11char_traitsIwEENS1_9allocatorIwEEEERKS7_, + "_ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb": __ZN14NSHtmlRenderer17CASCHTMLRenderer39CloseFileEb, + "_ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev": __ZN14NSHtmlRenderer17CASCHTMLRenderer3C1Ev, + "_ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev": __ZN14NSHtmlRenderer17CASCHTMLRenderer3D1Ev, + "_ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb": __ZN23CFileDownloader_privateC1ENSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEEb, + "_ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE": __ZN8CXpsFileC1EPN7NSFonts17IApplicationFontsE, + "_ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE": __ZN9CDjVuFileC1EPN7NSFonts17IApplicationFontsE, + "_ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_": __ZN9CHtmlFile10ConvertMhtERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEES8_S8_, + "_ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_": __ZN9CHtmlFile11ConvertEpubERKNSt3__212basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEERS6_S8_S8_, + "_ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_": __ZN9CHtmlFile7ConvertERKNSt3__26vectorINS0_12basic_stringIwNS0_11char_traitsIwEENS0_9allocatorIwEEEENS5_IS7_EEEERKS7_SD_, + "_ZN9CHtmlFileC1Ev": __ZN9CHtmlFileC1Ev, + "_ZN9CHtmlFileD1Ev": __ZN9CHtmlFileD1Ev, + "_ZN9PdfReader10CPdfReader8GetErrorEv": __ZN9PdfReader10CPdfReader8GetErrorEv, + "_ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE": __ZN9PdfReader10CPdfReaderC1EPN7NSFonts17IApplicationFontsE, + "__assert_fail": ___assert_fail, + "__call_main": ___call_main, + "__clock_gettime": ___clock_gettime, + "__cxa_allocate_exception": ___cxa_allocate_exception, + "__cxa_atexit": ___cxa_atexit, + "__cxa_rethrow": ___cxa_rethrow, + "__cxa_throw": ___cxa_throw, + "__lock": ___lock, + "__map_file": ___map_file, + "__syscall10": ___syscall10, + "__syscall12": ___syscall12, + "__syscall183": ___syscall183, + "__syscall192": ___syscall192, + "__syscall195": ___syscall195, + "__syscall196": ___syscall196, + "__syscall220": ___syscall220, + "__syscall221": ___syscall221, + "__syscall3": ___syscall3, + "__syscall39": ___syscall39, + "__syscall4": ___syscall4, + "__syscall40": ___syscall40, + "__syscall5": ___syscall5, + "__syscall54": ___syscall54, + "__syscall85": ___syscall85, + "__syscall91": ___syscall91, + "__unlock": ___unlock, + "abort": _abort, + "atexit": _atexit, + "emscripten_asm_const_iii": _emscripten_asm_const_iii, + "emscripten_check_blocking_allowed": _emscripten_check_blocking_allowed, + "emscripten_conditional_set_current_thread_status": _emscripten_conditional_set_current_thread_status, + "emscripten_futex_wait": _emscripten_futex_wait, + "emscripten_futex_wake": _emscripten_futex_wake, + "emscripten_get_now": _emscripten_get_now, + "emscripten_get_sbrk_ptr": _emscripten_get_sbrk_ptr, + "emscripten_has_threading_support": _emscripten_has_threading_support, + "emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, + "emscripten_is_main_runtime_thread": _emscripten_is_main_runtime_thread, + "emscripten_longjmp": _emscripten_longjmp, + "emscripten_memcpy_big": _emscripten_memcpy_big, + "emscripten_receive_on_main_thread_js": _emscripten_receive_on_main_thread_js, + "emscripten_resize_heap": _emscripten_resize_heap, + "emscripten_set_canvas_element_size": _emscripten_set_canvas_element_size, + "emscripten_set_current_thread_status": _emscripten_set_current_thread_status, + "emscripten_set_thread_name": _emscripten_set_thread_name, + "emscripten_syscall": _emscripten_syscall, + "emscripten_webgl_create_context": _emscripten_webgl_create_context, + "environ_get": _environ_get, + "environ_sizes_get": _environ_sizes_get, + "exit": _exit, + "fd_close": _fd_close, + "fd_read": _fd_read, + "fd_seek": _fd_seek, + "fd_write": _fd_write, + "getTempRet0": _getTempRet0, + "gettimeofday": _gettimeofday, + "gmtime": _gmtime, + "initPthreadsJS": initPthreadsJS, + "invoke_ii": invoke_ii, + "invoke_iii": invoke_iii, + "invoke_iiii": invoke_iiii, + "invoke_iiiii": invoke_iiiii, + "invoke_iiiiii": invoke_iiiiii, + "invoke_v": invoke_v, + "invoke_vi": invoke_vi, + "invoke_vii": invoke_vii, + "invoke_viii": invoke_viii, + "invoke_viiii": invoke_viiii, + "invoke_viiiii": invoke_viiiii, + "invoke_viiiiii": invoke_viiiiii, + "invoke_viiiiiiiii": invoke_viiiiiiiii, + "memory": wasmMemory, + "mktime": _mktime, + "pthread_cleanup_pop": _pthread_cleanup_pop, + "pthread_cleanup_push": _pthread_cleanup_push, + "pthread_create": _pthread_create, + "pthread_self": _pthread_self, + "saveSetjmp": _saveSetjmp, + "setTempRet0": _setTempRet0, + "strftime_l": _strftime_l, + "sysconf": _sysconf, + "system": _system, + "table": wasmTable, + "testSetjmp": _testSetjmp, + "time": _time, + "times": _times +}; var asm = createWasm(); var real____wasm_call_ctors = asm["__wasm_call_ctors"]; -asm["__wasm_call_ctors"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real____wasm_call_ctors.apply(null, arguments); -}; - +asm["__wasm_call_ctors"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real____wasm_call_ctors.apply(null, arguments); +}); var real__runX2T = asm["runX2T"]; -asm["runX2T"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__runX2T.apply(null, arguments); -}; - +asm["runX2T"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__runX2T.apply(null, arguments); +}); var real__malloc = asm["malloc"]; -asm["malloc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__malloc.apply(null, arguments); -}; - +asm["malloc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__malloc.apply(null, arguments); +}); var real__free = asm["free"]; -asm["free"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__free.apply(null, arguments); -}; - +asm["free"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__free.apply(null, arguments); +}); var real__main = asm["main"]; -asm["main"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__main.apply(null, arguments); -}; - +asm["main"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__main.apply(null, arguments); +}); var real__fflush = asm["fflush"]; -asm["fflush"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__fflush.apply(null, arguments); -}; - +asm["fflush"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__fflush.apply(null, arguments); +}); var real__realloc = asm["realloc"]; -asm["realloc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__realloc.apply(null, arguments); -}; - +asm["realloc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__realloc.apply(null, arguments); +}); var real___ZSt18uncaught_exceptionv = asm["_ZSt18uncaught_exceptionv"]; -asm["_ZSt18uncaught_exceptionv"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real___ZSt18uncaught_exceptionv.apply(null, arguments); -}; - +asm["_ZSt18uncaught_exceptionv"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real___ZSt18uncaught_exceptionv.apply(null, arguments); +}); var real____errno_location = asm["__errno_location"]; -asm["__errno_location"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real____errno_location.apply(null, arguments); -}; - +asm["__errno_location"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real____errno_location.apply(null, arguments); +}); var real__ntohs = asm["ntohs"]; -asm["ntohs"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__ntohs.apply(null, arguments); -}; - +asm["ntohs"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__ntohs.apply(null, arguments); +}); var real__htonl = asm["htonl"]; -asm["htonl"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__htonl.apply(null, arguments); -}; - +asm["htonl"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__htonl.apply(null, arguments); +}); var real__htons = asm["htons"]; -asm["htons"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__htons.apply(null, arguments); -}; - +asm["htons"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__htons.apply(null, arguments); +}); +var real__emscripten_get_global_libc = asm["emscripten_get_global_libc"]; +asm["emscripten_get_global_libc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_get_global_libc.apply(null, arguments); +}); var real____em_js__initPthreadsJS = asm["__em_js__initPthreadsJS"]; -asm["__em_js__initPthreadsJS"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real____em_js__initPthreadsJS.apply(null, arguments); -}; - +asm["__em_js__initPthreadsJS"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real____em_js__initPthreadsJS.apply(null, arguments); +}); var real____emscripten_pthread_data_constructor = asm["__emscripten_pthread_data_constructor"]; -asm["__emscripten_pthread_data_constructor"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real____emscripten_pthread_data_constructor.apply(null, arguments); -}; - -var real__emscripten_get_global_libc = asm["emscripten_get_global_libc"]; -asm["emscripten_get_global_libc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_get_global_libc.apply(null, arguments); -}; - +asm["__emscripten_pthread_data_constructor"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real____emscripten_pthread_data_constructor.apply(null, arguments); +}); var real___get_tzname = asm["_get_tzname"]; -asm["_get_tzname"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real___get_tzname.apply(null, arguments); -}; - +asm["_get_tzname"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real___get_tzname.apply(null, arguments); +}); var real___get_daylight = asm["_get_daylight"]; -asm["_get_daylight"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real___get_daylight.apply(null, arguments); -}; - +asm["_get_daylight"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real___get_daylight.apply(null, arguments); +}); var real___get_timezone = asm["_get_timezone"]; -asm["_get_timezone"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real___get_timezone.apply(null, arguments); -}; - +asm["_get_timezone"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real___get_timezone.apply(null, arguments); +}); var real__setThrew = asm["setThrew"]; -asm["setThrew"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__setThrew.apply(null, arguments); -}; - +asm["setThrew"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__setThrew.apply(null, arguments); +}); var real__memalign = asm["memalign"]; -asm["memalign"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__memalign.apply(null, arguments); -}; - +asm["memalign"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__memalign.apply(null, arguments); +}); var real__emscripten_builtin_free = asm["emscripten_builtin_free"]; -asm["emscripten_builtin_free"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_builtin_free.apply(null, arguments); -}; - +asm["emscripten_builtin_free"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_builtin_free.apply(null, arguments); +}); var real__emscripten_builtin_memalign = asm["emscripten_builtin_memalign"]; -asm["emscripten_builtin_memalign"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_builtin_memalign.apply(null, arguments); -}; - +asm["emscripten_builtin_memalign"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_builtin_memalign.apply(null, arguments); +}); var real__emscripten_main_browser_thread_id = asm["emscripten_main_browser_thread_id"]; -asm["emscripten_main_browser_thread_id"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_main_browser_thread_id.apply(null, arguments); -}; - +asm["emscripten_main_browser_thread_id"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_main_browser_thread_id.apply(null, arguments); +}); var real____pthread_tsd_run_dtors = asm["__pthread_tsd_run_dtors"]; -asm["__pthread_tsd_run_dtors"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real____pthread_tsd_run_dtors.apply(null, arguments); -}; - +asm["__pthread_tsd_run_dtors"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real____pthread_tsd_run_dtors.apply(null, arguments); +}); var real__emscripten_main_thread_process_queued_calls = asm["emscripten_main_thread_process_queued_calls"]; -asm["emscripten_main_thread_process_queued_calls"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_main_thread_process_queued_calls.apply(null, arguments); -}; - +asm["emscripten_main_thread_process_queued_calls"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_main_thread_process_queued_calls.apply(null, arguments); +}); var real__emscripten_current_thread_process_queued_calls = asm["emscripten_current_thread_process_queued_calls"]; -asm["emscripten_current_thread_process_queued_calls"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_current_thread_process_queued_calls.apply(null, arguments); -}; - +asm["emscripten_current_thread_process_queued_calls"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_current_thread_process_queued_calls.apply(null, arguments); +}); var real__usleep = asm["usleep"]; -asm["usleep"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__usleep.apply(null, arguments); -}; - +asm["usleep"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__usleep.apply(null, arguments); +}); var real__emscripten_register_main_browser_thread_id = asm["emscripten_register_main_browser_thread_id"]; -asm["emscripten_register_main_browser_thread_id"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_register_main_browser_thread_id.apply(null, arguments); -}; - +asm["emscripten_register_main_browser_thread_id"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_register_main_browser_thread_id.apply(null, arguments); +}); var real__emscripten_async_run_in_main_thread = asm["emscripten_async_run_in_main_thread"]; -asm["emscripten_async_run_in_main_thread"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_async_run_in_main_thread.apply(null, arguments); -}; - +asm["emscripten_async_run_in_main_thread"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_async_run_in_main_thread.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread = asm["emscripten_sync_run_in_main_thread"]; -asm["emscripten_sync_run_in_main_thread"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_0 = asm["emscripten_sync_run_in_main_thread_0"]; -asm["emscripten_sync_run_in_main_thread_0"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_0.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_0"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_0.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_1 = asm["emscripten_sync_run_in_main_thread_1"]; -asm["emscripten_sync_run_in_main_thread_1"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_1.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_1"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_1.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_2 = asm["emscripten_sync_run_in_main_thread_2"]; -asm["emscripten_sync_run_in_main_thread_2"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_2.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_2"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_2.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_xprintf_varargs = asm["emscripten_sync_run_in_main_thread_xprintf_varargs"]; -asm["emscripten_sync_run_in_main_thread_xprintf_varargs"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_xprintf_varargs.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_xprintf_varargs"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_xprintf_varargs.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_3 = asm["emscripten_sync_run_in_main_thread_3"]; -asm["emscripten_sync_run_in_main_thread_3"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_3.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_3"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_3.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_4 = asm["emscripten_sync_run_in_main_thread_4"]; -asm["emscripten_sync_run_in_main_thread_4"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_4.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_4"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_4.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_5 = asm["emscripten_sync_run_in_main_thread_5"]; -asm["emscripten_sync_run_in_main_thread_5"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_5.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_5"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_5.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_6 = asm["emscripten_sync_run_in_main_thread_6"]; -asm["emscripten_sync_run_in_main_thread_6"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_6.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_6"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_6.apply(null, arguments); +}); var real__emscripten_sync_run_in_main_thread_7 = asm["emscripten_sync_run_in_main_thread_7"]; -asm["emscripten_sync_run_in_main_thread_7"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_sync_run_in_main_thread_7.apply(null, arguments); -}; - +asm["emscripten_sync_run_in_main_thread_7"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_sync_run_in_main_thread_7.apply(null, arguments); +}); var real__emscripten_run_in_main_runtime_thread_js = asm["emscripten_run_in_main_runtime_thread_js"]; -asm["emscripten_run_in_main_runtime_thread_js"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_run_in_main_runtime_thread_js.apply(null, arguments); -}; - +asm["emscripten_run_in_main_runtime_thread_js"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_run_in_main_runtime_thread_js.apply(null, arguments); +}); var real__emscripten_async_queue_on_thread_ = asm["emscripten_async_queue_on_thread_"]; -asm["emscripten_async_queue_on_thread_"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_async_queue_on_thread_.apply(null, arguments); -}; - +asm["emscripten_async_queue_on_thread_"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_async_queue_on_thread_.apply(null, arguments); +}); var real__proxy_main = asm["proxy_main"]; -asm["proxy_main"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__proxy_main.apply(null, arguments); -}; - +asm["proxy_main"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__proxy_main.apply(null, arguments); +}); var real__emscripten_tls_init = asm["emscripten_tls_init"]; -asm["emscripten_tls_init"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real__emscripten_tls_init.apply(null, arguments); -}; - +asm["emscripten_tls_init"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real__emscripten_tls_init.apply(null, arguments); +}); var real_dynCall_ii = asm["dynCall_ii"]; -asm["dynCall_ii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_ii.apply(null, arguments); -}; - +asm["dynCall_ii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_ii.apply(null, arguments); +}); var real_dynCall_iii = asm["dynCall_iii"]; -asm["dynCall_iii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iii.apply(null, arguments); -}; - +asm["dynCall_iii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iii.apply(null, arguments); +}); var real_dynCall_iiii = asm["dynCall_iiii"]; -asm["dynCall_iiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiii.apply(null, arguments); -}; - +asm["dynCall_iiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiii.apply(null, arguments); +}); var real_dynCall_iiiii = asm["dynCall_iiiii"]; -asm["dynCall_iiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiii.apply(null, arguments); -}; - +asm["dynCall_iiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiii.apply(null, arguments); +}); var real_dynCall_iiiiii = asm["dynCall_iiiiii"]; -asm["dynCall_iiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiii.apply(null, arguments); -}; - +asm["dynCall_iiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiii.apply(null, arguments); +}); var real_dynCall_v = asm["dynCall_v"]; -asm["dynCall_v"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_v.apply(null, arguments); -}; - +asm["dynCall_v"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_v.apply(null, arguments); +}); var real_dynCall_vi = asm["dynCall_vi"]; -asm["dynCall_vi"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_vi.apply(null, arguments); -}; - +asm["dynCall_vi"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_vi.apply(null, arguments); +}); var real_dynCall_vii = asm["dynCall_vii"]; -asm["dynCall_vii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_vii.apply(null, arguments); -}; - +asm["dynCall_vii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_vii.apply(null, arguments); +}); var real_dynCall_viii = asm["dynCall_viii"]; -asm["dynCall_viii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viii.apply(null, arguments); -}; - +asm["dynCall_viii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viii.apply(null, arguments); +}); var real_dynCall_viiii = asm["dynCall_viiii"]; -asm["dynCall_viiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiii.apply(null, arguments); -}; - +asm["dynCall_viiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiii.apply(null, arguments); +}); var real_dynCall_viiiii = asm["dynCall_viiiii"]; -asm["dynCall_viiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiii.apply(null, arguments); -}; - +asm["dynCall_viiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiii.apply(null, arguments); +}); var real_dynCall_viiiiii = asm["dynCall_viiiiii"]; -asm["dynCall_viiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiiii.apply(null, arguments); -}; - +asm["dynCall_viiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiiii.apply(null, arguments); +}); var real_dynCall_viiiiiiiii = asm["dynCall_viiiiiiiii"]; -asm["dynCall_viiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiiiiiii.apply(null, arguments); -}; - +asm["dynCall_viiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiiiiiii.apply(null, arguments); +}); var real_stackSave = asm["stackSave"]; -asm["stackSave"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_stackSave.apply(null, arguments); -}; - +asm["stackSave"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_stackSave.apply(null, arguments); +}); var real_stackAlloc = asm["stackAlloc"]; -asm["stackAlloc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_stackAlloc.apply(null, arguments); -}; - +asm["stackAlloc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_stackAlloc.apply(null, arguments); +}); var real_stackRestore = asm["stackRestore"]; -asm["stackRestore"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_stackRestore.apply(null, arguments); -}; - +asm["stackRestore"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_stackRestore.apply(null, arguments); +}); var real___growWasmMemory = asm["__growWasmMemory"]; -asm["__growWasmMemory"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real___growWasmMemory.apply(null, arguments); -}; - +asm["__growWasmMemory"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real___growWasmMemory.apply(null, arguments); +}); var real_dynCall_viijii = asm["dynCall_viijii"]; -asm["dynCall_viijii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viijii.apply(null, arguments); -}; - +asm["dynCall_viijii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viijii.apply(null, arguments); +}); var real_dynCall_dii = asm["dynCall_dii"]; -asm["dynCall_dii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_dii.apply(null, arguments); -}; - +asm["dynCall_dii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_dii.apply(null, arguments); +}); var real_dynCall_did = asm["dynCall_did"]; -asm["dynCall_did"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_did.apply(null, arguments); -}; - +asm["dynCall_did"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_did.apply(null, arguments); +}); var real_dynCall_di = asm["dynCall_di"]; -asm["dynCall_di"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_di.apply(null, arguments); -}; - +asm["dynCall_di"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_di.apply(null, arguments); +}); var real_dynCall_ji = asm["dynCall_ji"]; -asm["dynCall_ji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_ji.apply(null, arguments); -}; - +asm["dynCall_ji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_ji.apply(null, arguments); +}); var real_dynCall_vij = asm["dynCall_vij"]; -asm["dynCall_vij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_vij.apply(null, arguments); -}; - +asm["dynCall_vij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_vij.apply(null, arguments); +}); var real_dynCall_jii = asm["dynCall_jii"]; -asm["dynCall_jii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_jii.apply(null, arguments); -}; - +asm["dynCall_jii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_jii.apply(null, arguments); +}); var real_dynCall_iiiiiii = asm["dynCall_iiiiiii"]; -asm["dynCall_iiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiiii.apply(null, arguments); -}; - +asm["dynCall_iiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiiii.apply(null, arguments); +}); var real_dynCall_iiiiiiii = asm["dynCall_iiiiiiii"]; -asm["dynCall_iiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiiiii.apply(null, arguments); -}; - +asm["dynCall_iiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiiiii.apply(null, arguments); +}); var real_dynCall_iiiiiiiii = asm["dynCall_iiiiiiiii"]; -asm["dynCall_iiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiiiiii.apply(null, arguments); -}; - +asm["dynCall_iiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiiiiii.apply(null, arguments); +}); var real_dynCall_iidddddi = asm["dynCall_iidddddi"]; -asm["dynCall_iidddddi"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iidddddi.apply(null, arguments); -}; - +asm["dynCall_iidddddi"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iidddddi.apply(null, arguments); +}); var real_dynCall_viiiddii = asm["dynCall_viiiddii"]; -asm["dynCall_viiiddii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiddii.apply(null, arguments); -}; - +asm["dynCall_viiiddii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiddii.apply(null, arguments); +}); var real_dynCall_viij = asm["dynCall_viij"]; -asm["dynCall_viij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viij.apply(null, arguments); -}; - +asm["dynCall_viij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viij.apply(null, arguments); +}); var real_dynCall_viji = asm["dynCall_viji"]; -asm["dynCall_viji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viji.apply(null, arguments); -}; - +asm["dynCall_viji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viji.apply(null, arguments); +}); var real_dynCall_jij = asm["dynCall_jij"]; -asm["dynCall_jij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_jij.apply(null, arguments); -}; - +asm["dynCall_jij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_jij.apply(null, arguments); +}); var real_dynCall_iiiijii = asm["dynCall_iiiijii"]; -asm["dynCall_iiiijii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiijii.apply(null, arguments); -}; - +asm["dynCall_iiiijii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiijii.apply(null, arguments); +}); var real_dynCall_viiij = asm["dynCall_viiij"]; -asm["dynCall_viiij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiij.apply(null, arguments); -}; - +asm["dynCall_viiij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiij.apply(null, arguments); +}); var real_dynCall_viiiiiiiiii = asm["dynCall_viiiiiiiiii"]; -asm["dynCall_viiiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiiiiiiii.apply(null, arguments); -}; - +asm["dynCall_viiiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiiiiiiii.apply(null, arguments); +}); var real_dynCall_iiiji = asm["dynCall_iiiji"]; -asm["dynCall_iiiji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiji.apply(null, arguments); -}; - +asm["dynCall_iiiji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiji.apply(null, arguments); +}); var real_dynCall_i = asm["dynCall_i"]; -asm["dynCall_i"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_i.apply(null, arguments); -}; - +asm["dynCall_i"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_i.apply(null, arguments); +}); var real_dynCall_viiiiiii = asm["dynCall_viiiiiii"]; -asm["dynCall_viiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiiiii.apply(null, arguments); -}; - +asm["dynCall_viiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiiiii.apply(null, arguments); +}); var real_dynCall_viiiiiiiiiiii = asm["dynCall_viiiiiiiiiiii"]; -asm["dynCall_viiiiiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiiiiiiiiii.apply(null, arguments); -}; - +asm["dynCall_viiiiiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiiiiiiiiii.apply(null, arguments); +}); var real_dynCall_iidd = asm["dynCall_iidd"]; -asm["dynCall_iidd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iidd.apply(null, arguments); -}; - +asm["dynCall_iidd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iidd.apply(null, arguments); +}); var real_dynCall_iidddddd = asm["dynCall_iidddddd"]; -asm["dynCall_iidddddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iidddddd.apply(null, arguments); -}; - +asm["dynCall_iidddddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iidddddd.apply(null, arguments); +}); var real_dynCall_vidd = asm["dynCall_vidd"]; -asm["dynCall_vidd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_vidd.apply(null, arguments); -}; - +asm["dynCall_vidd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_vidd.apply(null, arguments); +}); var real_dynCall_vidddd = asm["dynCall_vidddd"]; -asm["dynCall_vidddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_vidddd.apply(null, arguments); -}; - +asm["dynCall_vidddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_vidddd.apply(null, arguments); +}); var real_dynCall_viidddd = asm["dynCall_viidddd"]; -asm["dynCall_viidddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viidddd.apply(null, arguments); -}; - +asm["dynCall_viidddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viidddd.apply(null, arguments); +}); var real_dynCall_viidddddd = asm["dynCall_viidddddd"]; -asm["dynCall_viidddddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viidddddd.apply(null, arguments); -}; - +asm["dynCall_viidddddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viidddddd.apply(null, arguments); +}); var real_dynCall_iiiiiddd = asm["dynCall_iiiiiddd"]; -asm["dynCall_iiiiiddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiiddd.apply(null, arguments); -}; - +asm["dynCall_iiiiiddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiiddd.apply(null, arguments); +}); var real_dynCall_viiiiddd = asm["dynCall_viiiiddd"]; -asm["dynCall_viiiiddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viiiiddd.apply(null, arguments); -}; - +asm["dynCall_viiiiddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viiiiddd.apply(null, arguments); +}); var real_dynCall_diiii = asm["dynCall_diiii"]; -asm["dynCall_diiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_diiii.apply(null, arguments); -}; - +asm["dynCall_diiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_diiii.apply(null, arguments); +}); var real_dynCall_iiidddd = asm["dynCall_iiidddd"]; -asm["dynCall_iiidddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiidddd.apply(null, arguments); -}; - +asm["dynCall_iiidddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiidddd.apply(null, arguments); +}); var real_dynCall_viddddiii = asm["dynCall_viddddiii"]; -asm["dynCall_viddddiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_viddddiii.apply(null, arguments); -}; - +asm["dynCall_viddddiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_viddddiii.apply(null, arguments); +}); var real_dynCall_vidddddd = asm["dynCall_vidddddd"]; -asm["dynCall_vidddddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_vidddddd.apply(null, arguments); -}; - +asm["dynCall_vidddddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_vidddddd.apply(null, arguments); +}); var real_dynCall_iiiiiiiiii = asm["dynCall_iiiiiiiiii"]; -asm["dynCall_iiiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiiiiiii.apply(null, arguments); -}; - +asm["dynCall_iiiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiiiiiii.apply(null, arguments); +}); var real_dynCall_jiji = asm["dynCall_jiji"]; -asm["dynCall_jiji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_jiji.apply(null, arguments); -}; - +asm["dynCall_jiji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_jiji.apply(null, arguments); +}); var real_dynCall_iidiiii = asm["dynCall_iidiiii"]; -asm["dynCall_iidiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iidiiii.apply(null, arguments); -}; - +asm["dynCall_iidiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iidiiii.apply(null, arguments); +}); var real_dynCall_iiiiij = asm["dynCall_iiiiij"]; -asm["dynCall_iiiiij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiij.apply(null, arguments); -}; - +asm["dynCall_iiiiij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiij.apply(null, arguments); +}); var real_dynCall_iiiiid = asm["dynCall_iiiiid"]; -asm["dynCall_iiiiid"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiid.apply(null, arguments); -}; - +asm["dynCall_iiiiid"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiid.apply(null, arguments); +}); var real_dynCall_iiiiijj = asm["dynCall_iiiiijj"]; -asm["dynCall_iiiiijj"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiijj.apply(null, arguments); -}; - +asm["dynCall_iiiiijj"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiijj.apply(null, arguments); +}); var real_dynCall_iiiiiijj = asm["dynCall_iiiiiijj"]; -asm["dynCall_iiiiiijj"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return real_dynCall_iiiiiijj.apply(null, arguments); -}; - +asm["dynCall_iiiiiijj"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return real_dynCall_iiiiiijj.apply(null, arguments); +}); Module["asm"] = asm; -var ___wasm_call_ctors = Module["___wasm_call_ctors"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["__wasm_call_ctors"].apply(null, arguments) -}; - -var _runX2T = Module["_runX2T"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["runX2T"].apply(null, arguments) -}; - -var _malloc = Module["_malloc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["malloc"].apply(null, arguments) -}; - -var _free = Module["_free"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["free"].apply(null, arguments) -}; - -var _main = Module["_main"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["main"].apply(null, arguments) -}; - -var _fflush = Module["_fflush"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["fflush"].apply(null, arguments) -}; - -var _realloc = Module["_realloc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["realloc"].apply(null, arguments) -}; - -var __ZSt18uncaught_exceptionv = Module["__ZSt18uncaught_exceptionv"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["_ZSt18uncaught_exceptionv"].apply(null, arguments) -}; - -var ___errno_location = Module["___errno_location"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["__errno_location"].apply(null, arguments) -}; - -var _ntohs = Module["_ntohs"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["ntohs"].apply(null, arguments) -}; - -var _htonl = Module["_htonl"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["htonl"].apply(null, arguments) -}; - -var _htons = Module["_htons"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["htons"].apply(null, arguments) -}; - -var ___em_js__initPthreadsJS = Module["___em_js__initPthreadsJS"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["__em_js__initPthreadsJS"].apply(null, arguments) -}; - -var ___emscripten_pthread_data_constructor = Module["___emscripten_pthread_data_constructor"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["__emscripten_pthread_data_constructor"].apply(null, arguments) -}; - -var _emscripten_get_global_libc = Module["_emscripten_get_global_libc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_get_global_libc"].apply(null, arguments) -}; - -var __get_tzname = Module["__get_tzname"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["_get_tzname"].apply(null, arguments) -}; - -var __get_daylight = Module["__get_daylight"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["_get_daylight"].apply(null, arguments) -}; - -var __get_timezone = Module["__get_timezone"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["_get_timezone"].apply(null, arguments) -}; - -var _setThrew = Module["_setThrew"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["setThrew"].apply(null, arguments) -}; - -var _memalign = Module["_memalign"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["memalign"].apply(null, arguments) -}; - -var _emscripten_builtin_free = Module["_emscripten_builtin_free"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_builtin_free"].apply(null, arguments) -}; - -var _emscripten_builtin_memalign = Module["_emscripten_builtin_memalign"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_builtin_memalign"].apply(null, arguments) -}; - -var _emscripten_main_browser_thread_id = Module["_emscripten_main_browser_thread_id"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_main_browser_thread_id"].apply(null, arguments) -}; - -var ___pthread_tsd_run_dtors = Module["___pthread_tsd_run_dtors"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["__pthread_tsd_run_dtors"].apply(null, arguments) -}; - -var _emscripten_main_thread_process_queued_calls = Module["_emscripten_main_thread_process_queued_calls"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_main_thread_process_queued_calls"].apply(null, arguments) -}; - -var _emscripten_current_thread_process_queued_calls = Module["_emscripten_current_thread_process_queued_calls"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_current_thread_process_queued_calls"].apply(null, arguments) -}; - -var _usleep = Module["_usleep"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["usleep"].apply(null, arguments) -}; - -var _emscripten_register_main_browser_thread_id = Module["_emscripten_register_main_browser_thread_id"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_register_main_browser_thread_id"].apply(null, arguments) -}; - -var _emscripten_async_run_in_main_thread = Module["_emscripten_async_run_in_main_thread"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_async_run_in_main_thread"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread = Module["_emscripten_sync_run_in_main_thread"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_0 = Module["_emscripten_sync_run_in_main_thread_0"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_0"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_1 = Module["_emscripten_sync_run_in_main_thread_1"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_1"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_2 = Module["_emscripten_sync_run_in_main_thread_2"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_2"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_xprintf_varargs = Module["_emscripten_sync_run_in_main_thread_xprintf_varargs"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_xprintf_varargs"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_3 = Module["_emscripten_sync_run_in_main_thread_3"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_3"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_4 = Module["_emscripten_sync_run_in_main_thread_4"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_4"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_5 = Module["_emscripten_sync_run_in_main_thread_5"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_5"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_6 = Module["_emscripten_sync_run_in_main_thread_6"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_6"].apply(null, arguments) -}; - -var _emscripten_sync_run_in_main_thread_7 = Module["_emscripten_sync_run_in_main_thread_7"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_sync_run_in_main_thread_7"].apply(null, arguments) -}; - -var _emscripten_run_in_main_runtime_thread_js = Module["_emscripten_run_in_main_runtime_thread_js"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_run_in_main_runtime_thread_js"].apply(null, arguments) -}; - -var _emscripten_async_queue_on_thread_ = Module["_emscripten_async_queue_on_thread_"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_async_queue_on_thread_"].apply(null, arguments) -}; - -var _proxy_main = Module["_proxy_main"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["proxy_main"].apply(null, arguments) -}; - -var _emscripten_tls_init = Module["_emscripten_tls_init"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["emscripten_tls_init"].apply(null, arguments) -}; - -var dynCall_ii = Module["dynCall_ii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_ii"].apply(null, arguments) -}; - -var dynCall_iii = Module["dynCall_iii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iii"].apply(null, arguments) -}; - -var dynCall_iiii = Module["dynCall_iiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiii"].apply(null, arguments) -}; - -var dynCall_iiiii = Module["dynCall_iiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiii"].apply(null, arguments) -}; - -var dynCall_iiiiii = Module["dynCall_iiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiii"].apply(null, arguments) -}; - -var dynCall_v = Module["dynCall_v"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_v"].apply(null, arguments) -}; - -var dynCall_vi = Module["dynCall_vi"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_vi"].apply(null, arguments) -}; - -var dynCall_vii = Module["dynCall_vii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_vii"].apply(null, arguments) -}; - -var dynCall_viii = Module["dynCall_viii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viii"].apply(null, arguments) -}; - -var dynCall_viiii = Module["dynCall_viiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiii"].apply(null, arguments) -}; - -var dynCall_viiiii = Module["dynCall_viiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiii"].apply(null, arguments) -}; - -var dynCall_viiiiii = Module["dynCall_viiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiiii"].apply(null, arguments) -}; - -var dynCall_viiiiiiiii = Module["dynCall_viiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiiiiiii"].apply(null, arguments) -}; - -var stackSave = Module["stackSave"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["stackSave"].apply(null, arguments) -}; - -var stackAlloc = Module["stackAlloc"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["stackAlloc"].apply(null, arguments) -}; - -var stackRestore = Module["stackRestore"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["stackRestore"].apply(null, arguments) -}; - -var __growWasmMemory = Module["__growWasmMemory"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["__growWasmMemory"].apply(null, arguments) -}; - -var dynCall_viijii = Module["dynCall_viijii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viijii"].apply(null, arguments) -}; - -var dynCall_dii = Module["dynCall_dii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_dii"].apply(null, arguments) -}; - -var dynCall_did = Module["dynCall_did"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_did"].apply(null, arguments) -}; - -var dynCall_di = Module["dynCall_di"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_di"].apply(null, arguments) -}; - -var dynCall_ji = Module["dynCall_ji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_ji"].apply(null, arguments) -}; - -var dynCall_vij = Module["dynCall_vij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_vij"].apply(null, arguments) -}; - -var dynCall_jii = Module["dynCall_jii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_jii"].apply(null, arguments) -}; - -var dynCall_iiiiiii = Module["dynCall_iiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiiii"].apply(null, arguments) -}; - -var dynCall_iiiiiiii = Module["dynCall_iiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiiiii"].apply(null, arguments) -}; - -var dynCall_iiiiiiiii = Module["dynCall_iiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiiiiii"].apply(null, arguments) -}; - -var dynCall_iidddddi = Module["dynCall_iidddddi"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iidddddi"].apply(null, arguments) -}; - -var dynCall_viiiddii = Module["dynCall_viiiddii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiddii"].apply(null, arguments) -}; - -var dynCall_viij = Module["dynCall_viij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viij"].apply(null, arguments) -}; - -var dynCall_viji = Module["dynCall_viji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viji"].apply(null, arguments) -}; - -var dynCall_jij = Module["dynCall_jij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_jij"].apply(null, arguments) -}; - -var dynCall_iiiijii = Module["dynCall_iiiijii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiijii"].apply(null, arguments) -}; - -var dynCall_viiij = Module["dynCall_viiij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiij"].apply(null, arguments) -}; - -var dynCall_viiiiiiiiii = Module["dynCall_viiiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiiiiiiii"].apply(null, arguments) -}; - -var dynCall_iiiji = Module["dynCall_iiiji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiji"].apply(null, arguments) -}; - -var dynCall_i = Module["dynCall_i"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_i"].apply(null, arguments) -}; - -var dynCall_viiiiiii = Module["dynCall_viiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiiiii"].apply(null, arguments) -}; - -var dynCall_viiiiiiiiiiii = Module["dynCall_viiiiiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiiiiiiiiii"].apply(null, arguments) -}; - -var dynCall_iidd = Module["dynCall_iidd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iidd"].apply(null, arguments) -}; - -var dynCall_iidddddd = Module["dynCall_iidddddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iidddddd"].apply(null, arguments) -}; - -var dynCall_vidd = Module["dynCall_vidd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_vidd"].apply(null, arguments) -}; - -var dynCall_vidddd = Module["dynCall_vidddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_vidddd"].apply(null, arguments) -}; - -var dynCall_viidddd = Module["dynCall_viidddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viidddd"].apply(null, arguments) -}; - -var dynCall_viidddddd = Module["dynCall_viidddddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viidddddd"].apply(null, arguments) -}; - -var dynCall_iiiiiddd = Module["dynCall_iiiiiddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiiddd"].apply(null, arguments) -}; - -var dynCall_viiiiddd = Module["dynCall_viiiiddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viiiiddd"].apply(null, arguments) -}; - -var dynCall_diiii = Module["dynCall_diiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_diiii"].apply(null, arguments) -}; - -var dynCall_iiidddd = Module["dynCall_iiidddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiidddd"].apply(null, arguments) -}; - -var dynCall_viddddiii = Module["dynCall_viddddiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_viddddiii"].apply(null, arguments) -}; - -var dynCall_vidddddd = Module["dynCall_vidddddd"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_vidddddd"].apply(null, arguments) -}; - -var dynCall_iiiiiiiiii = Module["dynCall_iiiiiiiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiiiiiii"].apply(null, arguments) -}; - -var dynCall_jiji = Module["dynCall_jiji"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_jiji"].apply(null, arguments) -}; - -var dynCall_iidiiii = Module["dynCall_iidiiii"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iidiiii"].apply(null, arguments) -}; - -var dynCall_iiiiij = Module["dynCall_iiiiij"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiij"].apply(null, arguments) -}; - -var dynCall_iiiiid = Module["dynCall_iiiiid"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiid"].apply(null, arguments) -}; - -var dynCall_iiiiijj = Module["dynCall_iiiiijj"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiijj"].apply(null, arguments) -}; - -var dynCall_iiiiiijj = Module["dynCall_iiiiiijj"] = function() { - assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); - assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); - return Module["asm"]["dynCall_iiiiiijj"].apply(null, arguments) -}; - - -function invoke_viiii(index,a1,a2,a3,a4) { - var sp = stackSave(); - try { - dynCall_viiii(index,a1,a2,a3,a4); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +var ___wasm_call_ctors = Module["___wasm_call_ctors"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__wasm_call_ctors"].apply(null, arguments); +}); +var _runX2T = Module["_runX2T"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["runX2T"].apply(null, arguments); +}); +var _malloc = Module["_malloc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["malloc"].apply(null, arguments); +}); +var _free = Module["_free"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["free"].apply(null, arguments); +}); +var _main = Module["_main"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["main"].apply(null, arguments); +}); +var _fflush = Module["_fflush"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["fflush"].apply(null, arguments); +}); +var _realloc = Module["_realloc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["realloc"].apply(null, arguments); +}); +var __ZSt18uncaught_exceptionv = Module["__ZSt18uncaught_exceptionv"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_ZSt18uncaught_exceptionv"].apply(null, arguments); +}); +var ___errno_location = Module["___errno_location"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__errno_location"].apply(null, arguments); +}); +var _ntohs = Module["_ntohs"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["ntohs"].apply(null, arguments); +}); +var _htonl = Module["_htonl"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["htonl"].apply(null, arguments); +}); +var _htons = Module["_htons"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["htons"].apply(null, arguments); +}); +var _emscripten_get_global_libc = Module["_emscripten_get_global_libc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_get_global_libc"].apply(null, arguments); +}); +var ___em_js__initPthreadsJS = Module["___em_js__initPthreadsJS"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__em_js__initPthreadsJS"].apply(null, arguments); +}); +var ___emscripten_pthread_data_constructor = Module["___emscripten_pthread_data_constructor"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__emscripten_pthread_data_constructor"].apply(null, arguments); +}); +var __get_tzname = Module["__get_tzname"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_get_tzname"].apply(null, arguments); +}); +var __get_daylight = Module["__get_daylight"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_get_daylight"].apply(null, arguments); +}); +var __get_timezone = Module["__get_timezone"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_get_timezone"].apply(null, arguments); +}); +var _setThrew = Module["_setThrew"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["setThrew"].apply(null, arguments); +}); +var _memalign = Module["_memalign"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["memalign"].apply(null, arguments); +}); +var _emscripten_builtin_free = Module["_emscripten_builtin_free"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_builtin_free"].apply(null, arguments); +}); +var _emscripten_builtin_memalign = Module["_emscripten_builtin_memalign"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_builtin_memalign"].apply(null, arguments); +}); +var _emscripten_main_browser_thread_id = Module["_emscripten_main_browser_thread_id"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_main_browser_thread_id"].apply(null, arguments); +}); +var ___pthread_tsd_run_dtors = Module["___pthread_tsd_run_dtors"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__pthread_tsd_run_dtors"].apply(null, arguments); +}); +var _emscripten_main_thread_process_queued_calls = Module["_emscripten_main_thread_process_queued_calls"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_main_thread_process_queued_calls"].apply(null, arguments); +}); +var _emscripten_current_thread_process_queued_calls = Module["_emscripten_current_thread_process_queued_calls"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_current_thread_process_queued_calls"].apply(null, arguments); +}); +var _usleep = Module["_usleep"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["usleep"].apply(null, arguments); +}); +var _emscripten_register_main_browser_thread_id = Module["_emscripten_register_main_browser_thread_id"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_register_main_browser_thread_id"].apply(null, arguments); +}); +var _emscripten_async_run_in_main_thread = Module["_emscripten_async_run_in_main_thread"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_async_run_in_main_thread"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread = Module["_emscripten_sync_run_in_main_thread"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_0 = Module["_emscripten_sync_run_in_main_thread_0"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_0"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_1 = Module["_emscripten_sync_run_in_main_thread_1"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_1"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_2 = Module["_emscripten_sync_run_in_main_thread_2"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_2"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_xprintf_varargs = Module["_emscripten_sync_run_in_main_thread_xprintf_varargs"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_xprintf_varargs"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_3 = Module["_emscripten_sync_run_in_main_thread_3"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_3"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_4 = Module["_emscripten_sync_run_in_main_thread_4"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_4"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_5 = Module["_emscripten_sync_run_in_main_thread_5"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_5"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_6 = Module["_emscripten_sync_run_in_main_thread_6"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_6"].apply(null, arguments); +}); +var _emscripten_sync_run_in_main_thread_7 = Module["_emscripten_sync_run_in_main_thread_7"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_sync_run_in_main_thread_7"].apply(null, arguments); +}); +var _emscripten_run_in_main_runtime_thread_js = Module["_emscripten_run_in_main_runtime_thread_js"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_run_in_main_runtime_thread_js"].apply(null, arguments); +}); +var _emscripten_async_queue_on_thread_ = Module["_emscripten_async_queue_on_thread_"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_async_queue_on_thread_"].apply(null, arguments); +}); +var _proxy_main = Module["_proxy_main"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["proxy_main"].apply(null, arguments); +}); +var _emscripten_tls_init = Module["_emscripten_tls_init"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["emscripten_tls_init"].apply(null, arguments); +}); +var dynCall_ii = Module["dynCall_ii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_ii"].apply(null, arguments); +}); +var dynCall_iii = Module["dynCall_iii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iii"].apply(null, arguments); +}); +var dynCall_iiii = Module["dynCall_iiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiii"].apply(null, arguments); +}); +var dynCall_iiiii = Module["dynCall_iiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiii"].apply(null, arguments); +}); +var dynCall_iiiiii = Module["dynCall_iiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiii"].apply(null, arguments); +}); +var dynCall_v = Module["dynCall_v"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments); +}); +var dynCall_vi = Module["dynCall_vi"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments); +}); +var dynCall_vii = Module["dynCall_vii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vii"].apply(null, arguments); +}); +var dynCall_viii = Module["dynCall_viii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viii"].apply(null, arguments); +}); +var dynCall_viiii = Module["dynCall_viiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiii"].apply(null, arguments); +}); +var dynCall_viiiii = Module["dynCall_viiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiii"].apply(null, arguments); +}); +var dynCall_viiiiii = Module["dynCall_viiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiiii"].apply(null, arguments); +}); +var dynCall_viiiiiiiii = Module["dynCall_viiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiiiiiii"].apply(null, arguments); +}); +var stackSave = Module["stackSave"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments); +}); +var stackAlloc = Module["stackAlloc"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments); +}); +var stackRestore = Module["stackRestore"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments); +}); +var __growWasmMemory = Module["__growWasmMemory"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__growWasmMemory"].apply(null, arguments); +}); +var dynCall_viijii = Module["dynCall_viijii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viijii"].apply(null, arguments); +}); +var dynCall_dii = Module["dynCall_dii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_dii"].apply(null, arguments); +}); +var dynCall_did = Module["dynCall_did"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_did"].apply(null, arguments); +}); +var dynCall_di = Module["dynCall_di"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_di"].apply(null, arguments); +}); +var dynCall_ji = Module["dynCall_ji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_ji"].apply(null, arguments); +}); +var dynCall_vij = Module["dynCall_vij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vij"].apply(null, arguments); +}); +var dynCall_jii = Module["dynCall_jii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_jii"].apply(null, arguments); +}); +var dynCall_iiiiiii = Module["dynCall_iiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiiii"].apply(null, arguments); +}); +var dynCall_iiiiiiii = Module["dynCall_iiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiiiii"].apply(null, arguments); +}); +var dynCall_iiiiiiiii = Module["dynCall_iiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiiiiii"].apply(null, arguments); +}); +var dynCall_iidddddi = Module["dynCall_iidddddi"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iidddddi"].apply(null, arguments); +}); +var dynCall_viiiddii = Module["dynCall_viiiddii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiddii"].apply(null, arguments); +}); +var dynCall_viij = Module["dynCall_viij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viij"].apply(null, arguments); +}); +var dynCall_viji = Module["dynCall_viji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viji"].apply(null, arguments); +}); +var dynCall_jij = Module["dynCall_jij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_jij"].apply(null, arguments); +}); +var dynCall_iiiijii = Module["dynCall_iiiijii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiijii"].apply(null, arguments); +}); +var dynCall_viiij = Module["dynCall_viiij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiij"].apply(null, arguments); +}); +var dynCall_viiiiiiiiii = Module["dynCall_viiiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiiiiiiii"].apply(null, arguments); +}); +var dynCall_iiiji = Module["dynCall_iiiji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiji"].apply(null, arguments); +}); +var dynCall_i = Module["dynCall_i"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_i"].apply(null, arguments); +}); +var dynCall_viiiiiii = Module["dynCall_viiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiiiii"].apply(null, arguments); +}); +var dynCall_viiiiiiiiiiii = Module["dynCall_viiiiiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiiiiiiiiii"].apply(null, arguments); +}); +var dynCall_iidd = Module["dynCall_iidd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iidd"].apply(null, arguments); +}); +var dynCall_iidddddd = Module["dynCall_iidddddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iidddddd"].apply(null, arguments); +}); +var dynCall_vidd = Module["dynCall_vidd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vidd"].apply(null, arguments); +}); +var dynCall_vidddd = Module["dynCall_vidddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vidddd"].apply(null, arguments); +}); +var dynCall_viidddd = Module["dynCall_viidddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viidddd"].apply(null, arguments); +}); +var dynCall_viidddddd = Module["dynCall_viidddddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viidddddd"].apply(null, arguments); +}); +var dynCall_iiiiiddd = Module["dynCall_iiiiiddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiiddd"].apply(null, arguments); +}); +var dynCall_viiiiddd = Module["dynCall_viiiiddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viiiiddd"].apply(null, arguments); +}); +var dynCall_diiii = Module["dynCall_diiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_diiii"].apply(null, arguments); +}); +var dynCall_iiidddd = Module["dynCall_iiidddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiidddd"].apply(null, arguments); +}); +var dynCall_viddddiii = Module["dynCall_viddddiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_viddddiii"].apply(null, arguments); +}); +var dynCall_vidddddd = Module["dynCall_vidddddd"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vidddddd"].apply(null, arguments); +}); +var dynCall_iiiiiiiiii = Module["dynCall_iiiiiiiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiiiiiii"].apply(null, arguments); +}); +var dynCall_jiji = Module["dynCall_jiji"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_jiji"].apply(null, arguments); +}); +var dynCall_iidiiii = Module["dynCall_iidiiii"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iidiiii"].apply(null, arguments); +}); +var dynCall_iiiiij = Module["dynCall_iiiiij"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiij"].apply(null, arguments); +}); +var dynCall_iiiiid = Module["dynCall_iiiiid"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiid"].apply(null, arguments); +}); +var dynCall_iiiiijj = Module["dynCall_iiiiijj"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiijj"].apply(null, arguments); +}); +var dynCall_iiiiiijj = Module["dynCall_iiiiiijj"] = (function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_iiiiiijj"].apply(null, arguments); +}); +function invoke_viiii(index, a1, a2, a3, a4) { + var sp = stackSave(); + try { + dynCall_viiii(index, a1, a2, a3, a4); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_iii(index,a1,a2) { - var sp = stackSave(); - try { - return dynCall_iii(index,a1,a2); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_iii(index, a1, a2) { + var sp = stackSave(); + try { + return dynCall_iii(index, a1, a2); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_iiiii(index,a1,a2,a3,a4) { - var sp = stackSave(); - try { - return dynCall_iiiii(index,a1,a2,a3,a4); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_iiiii(index, a1, a2, a3, a4) { + var sp = stackSave(); + try { + return dynCall_iiiii(index, a1, a2, a3, a4); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_iiii(index,a1,a2,a3) { - var sp = stackSave(); - try { - return dynCall_iiii(index,a1,a2,a3); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_iiii(index, a1, a2, a3) { + var sp = stackSave(); + try { + return dynCall_iiii(index, a1, a2, a3); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_vi(index,a1) { - var sp = stackSave(); - try { - dynCall_vi(index,a1); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_vi(index, a1) { + var sp = stackSave(); + try { + dynCall_vi(index, a1); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_vii(index,a1,a2) { - var sp = stackSave(); - try { - dynCall_vii(index,a1,a2); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_vii(index, a1, a2) { + var sp = stackSave(); + try { + dynCall_vii(index, a1, a2); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_ii(index,a1) { - var sp = stackSave(); - try { - return dynCall_ii(index,a1); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_ii(index, a1) { + var sp = stackSave(); + try { + return dynCall_ii(index, a1); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_viii(index,a1,a2,a3) { - var sp = stackSave(); - try { - dynCall_viii(index,a1,a2,a3); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_viii(index, a1, a2, a3) { + var sp = stackSave(); + try { + dynCall_viii(index, a1, a2, a3); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - function invoke_v(index) { - var sp = stackSave(); - try { - dynCall_v(index); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } + var sp = stackSave(); + try { + dynCall_v(index); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_iiiiii(index,a1,a2,a3,a4,a5) { - var sp = stackSave(); - try { - return dynCall_iiiiii(index,a1,a2,a3,a4,a5); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_iiiiii(index, a1, a2, a3, a4, a5) { + var sp = stackSave(); + try { + return dynCall_iiiiii(index, a1, a2, a3, a4, a5); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_viiiii(index,a1,a2,a3,a4,a5) { - var sp = stackSave(); - try { - dynCall_viiiii(index,a1,a2,a3,a4,a5); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_viiiii(index, a1, a2, a3, a4, a5) { + var sp = stackSave(); + try { + dynCall_viiiii(index, a1, a2, a3, a4, a5); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6) { - var sp = stackSave(); - try { - dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_viiiiii(index, a1, a2, a3, a4, a5, a6) { + var sp = stackSave(); + try { + dynCall_viiiiii(index, a1, a2, a3, a4, a5, a6); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - -function invoke_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9) { - var sp = stackSave(); - try { - dynCall_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9); - } catch(e) { - stackRestore(sp); - if (e !== e+0 && e !== 'longjmp') throw e; - _setThrew(1, 0); - } +function invoke_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + var sp = stackSave(); + try { + dynCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9); + } catch (e) { + stackRestore(sp); + if (e !== e + 0 && e !== "longjmp") throw e; + _setThrew(1, 0); + } } - - - -// === Auto-generated postamble setup entry stuff === - -Module['asm'] = asm; - -if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = (function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = (function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); Module["ccall"] = ccall; -if (!Object.getOwnPropertyDescriptor(Module, "cwrap")) Module["cwrap"] = function() { abort("'cwrap' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; -if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "addFunction")) Module["addFunction"] = function() { abort("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "removeFunction")) Module["removeFunction"] = function() { abort("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; +if (!Object.getOwnPropertyDescriptor(Module, "cwrap")) Module["cwrap"] = (function() { + abort("'cwrap' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = (function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = (function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = (function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = (function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = (function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = (function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = (function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = (function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = (function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = (function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = (function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = (function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = (function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = (function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = (function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = (function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = (function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = (function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = (function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = (function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = (function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = (function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = (function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = (function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = (function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = (function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = (function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = (function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = (function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = (function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = (function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = (function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = (function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = (function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = (function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = (function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = (function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = (function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = (function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = (function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = (function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = (function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = (function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = (function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = (function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = (function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = (function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "addFunction")) Module["addFunction"] = (function() { + abort("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "removeFunction")) Module["removeFunction"] = (function() { + abort("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = (function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = (function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = (function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = (function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = (function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = (function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = (function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = (function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); Module["establishStackSpace"] = establishStackSpace; -if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; -if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = (function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = (function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = (function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = (function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = (function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = (function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = (function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = (function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); +}); Module["writeStackCookie"] = writeStackCookie; Module["checkStackCookie"] = checkStackCookie; Module["abortStackOverflow"] = abortStackOverflow; @@ -9226,230 +8762,168 @@ Module["wasmMemory"] = wasmMemory; Module["_pthread_self"] = _pthread_self; Module["ExitStatus"] = ExitStatus; Module["tempDoublePtr"] = tempDoublePtr; -Module["dynCall_ii"] = dynCall_ii;if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { configurable: true, get: function() { abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); -if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { configurable: true, get: function() { abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); -if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { configurable: true, get: function() { abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); -if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { configurable: true, get: function() { abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); -if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { configurable: true, get: function() { abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") } }); - - - +Module["dynCall_ii"] = dynCall_ii; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: (function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); + }) +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: (function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); + }) +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: (function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); + }) +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: (function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)"); + }) +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: (function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"); + }) +}); var calledRun; - - -/** - * @constructor - * @this {ExitStatus} - */ function ExitStatus(status) { - this.name = "ExitStatus"; - this.message = "Program terminated with exit(" + status + ")"; - this.status = status; + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status; } - var calledMain = false; - - dependenciesFulfilled = function runCaller() { - // If run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false) - if (!calledRun) run(); - if (!calledRun) dependenciesFulfilled = runCaller; // try this again later, after new deps are fulfilled + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller; }; - function callMain(args) { - assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); - assert(__ATPRERUN__.length == 0, 'cannot call main when preRun functions remain to be called'); - - var entryFunction = Module['_main']; - - - args = args || []; - - var argc = args.length+1; - var argv = stackAlloc((argc + 1) * 4); - HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); - for (var i = 1; i < argc; i++) { - HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]); - } - HEAP32[(argv >> 2) + argc] = 0; - - - try { - - - var ret = entryFunction(argc, argv); - - - // if we're not running an evented main loop, it's time to exit - exit(ret, /* implicit = */ true); - } - catch(e) { - if (e instanceof ExitStatus) { - // exit() throws this once it's done to make sure execution - // has been stopped completely - return; - } else if (e == 'SimulateInfiniteLoop') { - // running an evented main loop, don't immediately exit - noExitRuntime = true; - return; - } else { - var toLog = e; - if (e && typeof e === 'object' && e.stack) { - toLog = [e, e.stack]; - } - err('exception thrown: ' + toLog); - quit_(1, e); - } - } finally { - calledMain = true; - } + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + var entryFunction = Module["_main"]; + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + GROWABLE_HEAP_STORE_I32(argv | 0, allocateUTF8OnStack(thisProgram)); + for (var i = 1; i < argc; i++) { + GROWABLE_HEAP_STORE_I32(((argv >> 2) + i) * 4 | 0, allocateUTF8OnStack(args[i - 1])); + } + GROWABLE_HEAP_STORE_I32(((argv >> 2) + argc) * 4 | 0, 0); + try { + var ret = entryFunction(argc, argv); + exit(ret, true); + } catch (e) { + if (e instanceof ExitStatus) { + return; + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return; + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [ e, e.stack ]; + } + err("exception thrown: " + toLog); + quit_(1, e); + } + } finally { + calledMain = true; + } } - - - - -/** @type {function(Array=)} */ function run(args) { - args = args || arguments_; - - if (runDependencies > 0) { - return; - } - - writeStackCookie(); - - preRun(); - - if (runDependencies > 0) return; // a preRun added a dependency, run will be called later - - function doRun() { - // run may have just been called through dependencies being fulfilled just in this very frame, - // or while the async setStatus time below was happening - if (calledRun) return; - calledRun = true; - - if (ABORT) return; - - initRuntime(); - - preMain(); - - if (Module['onRuntimeInitialized']) Module['onRuntimeInitialized'](); - - if (shouldRunNow) callMain(args); - - postRun(); - } - - if (Module['setStatus']) { - Module['setStatus']('Running...'); - setTimeout(function() { - setTimeout(function() { - Module['setStatus'](''); - }, 1); - doRun(); - }, 1); - } else - { - doRun(); - } - checkStackCookie(); + args = args || arguments_; + if (runDependencies > 0) { + return; + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun(); + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout((function() { + setTimeout((function() { + Module["setStatus"](""); + }), 1); + doRun(); + }), 1); + } else { + doRun(); + } + checkStackCookie(); } -Module['run'] = run; - +Module["run"] = run; function checkUnflushedContent() { - // Compiler settings do not allow exiting the runtime, so flushing - // the streams is not possible. but in ASSERTIONS mode we check - // if there was something to flush, and if so tell the user they - // should request that the runtime be exitable. - // Normally we would not even include flush() at all, but in ASSERTIONS - // builds we do so just for this check, and here we see if there is any - // content to flush, that is, we check if there would have been - // something a non-ASSERTIONS build would have not seen. - // How we flush the streams depends on whether we are in SYSCALLS_REQUIRE_FILESYSTEM=0 - // mode (which has its own special function for this; otherwise, all - // the code is inside libc) - var print = out; - var printErr = err; - var has = false; - out = err = function(x) { + var print = out; + var printErr = err; + var has = false; + out = err = (function(x) { + has = true; + }); + try { + var flush = Module["_fflush"]; + if (flush) flush(0); + [ "stdout", "stderr" ].forEach((function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { has = true; - } - try { // it doesn't matter if it fails - var flush = Module['_fflush']; - if (flush) flush(0); - // also flush in the JS FS layer - ['stdout', 'stderr'].forEach(function(name) { - var info = FS.analyzePath('/dev/' + name); - if (!info) return; - var stream = info.object; - var rdev = stream.rdev; - var tty = TTY.ttys[rdev]; - if (tty && tty.output && tty.output.length) { - has = true; - } - }); - } catch(e) {} - out = print; - err = printErr; - if (has) { - warnOnce('stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.'); - } + } + })); + } catch (e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc."); + } } - function exit(status, implicit) { - checkUnflushedContent(); - - // if this is just main exit-ing implicitly, and the status is 0, then we - // don't need to do anything here and can just leave. if the status is - // non-zero, though, then we need to report it. - // (we may have warned about this earlier, if a situation justifies doing so) - if (implicit && noExitRuntime && status === 0) { - return; - } - - if (noExitRuntime) { - // if exit() was called, we may warn the user if the runtime isn't actually being shut down - if (!implicit) { - err('program exited (with status: ' + status + '), but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)'); - } - } else { - PThread.terminateAllThreads(); - - ABORT = true; - EXITSTATUS = status; - - exitRuntime(); - - if (Module['onExit']) Module['onExit'](status); - } - - quit_(status, new ExitStatus(status)); + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return; + } + if (noExitRuntime) { + if (!implicit) { + err("program exited (with status: " + status + "), but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)"); + } + } else { + PThread.terminateAllThreads(); + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status); + } + quit_(status, new ExitStatus(status)); } - -if (Module['preInit']) { - if (typeof Module['preInit'] == 'function') Module['preInit'] = [Module['preInit']]; - while (Module['preInit'].length > 0) { - Module['preInit'].pop()(); - } +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [ Module["preInit"] ]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()(); + } } - -// shouldRunNow refers to calling main(), not run(). var shouldRunNow = true; - -if (Module['noInitialRun']) shouldRunNow = false; - - -if (!ENVIRONMENT_IS_PTHREAD) // EXIT_RUNTIME=0 only applies to default behavior of the main browser thread - noExitRuntime = true; - +if (Module["noInitialRun"]) shouldRunNow = false; +if (!ENVIRONMENT_IS_PTHREAD) noExitRuntime = true; if (!ENVIRONMENT_IS_PTHREAD) run(); - - -// {{MODULE_ADDITIONS}} - - - diff --git a/www/common/onlyoffice/x2t/x2t.wasm b/www/common/onlyoffice/x2t/x2t.wasm index 0f5879bef0fed418932d3a97f925bf91d2f1c747..3a35af86abb2b1c284f14b58d5d7253fdaa8549f 100644 GIT binary patch delta 1586759 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

`HEcGWS4*<2o-hZY5wM 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
!dXWkHJ)`&AVLDo5|-Hp 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�#ZnRRIA%!Vz$&{<7x`IA=zC(0 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
agiujtg$&SHWt?2dRzN*D!6@ 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

P_$4?& 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 KzZ?r*YWhE8Q3>?` delta 1585645 zcmeEv3s_WD*D&YI94>QiGav#A3MgLkZr<-xS!rroS=vR#%F5LA&8}LYQc|Igfi5(1 z2BjoL9SuF0sN*eBQAg86MH`b8m2@mBO3Z)lz0bga_P)J+|MNf3|NMXN^SU^DuYFs4 z?X}lhd+j~5FE0-L<UlO}ZyFpvbXCZSWu^xa`y)4vN<@2XAg(vhJBjvYJcm1kcL2q0yG$Bun%3j0i7 z8rCtUw$i&9wp3ebkMvccEz>WD#-@)CZIm7wmJnN;*}1b`J613`aq8F!FHL$r!0@G^ zK?j5Jn&p~hPWK3{djuyuoD>ki)1Ovz8XoNtX=K}da-VmS|jAns1wP|GH z0tAC0z|5Nw-y9f>-Qjpcplsj`CX>M+@Pau|5cr^=@Nf%<{~3%Hxm9RjP^(6PK_THG zL7X9wYZYh+GMWO61|x3_G8z#n2zE{21~)YZ1{niLDUJ`MfAE+4E@(kI$$O#*dc5$1`z|p!uUXe?=yx7}pl1u5)1?L37^)|{mWX+>UNfis8bcVRYb zsPMyO?E5_i^XBPrE`!OZ8GeR`!PM^=JXXeF!8r!Y^?c7+_U)l~y#uT^J)!a>%gEf8 z97rf)JI#8Ud`*X&S%=DW3Z%iZe{m5>?j6~ze>%)xu!w#iTdZ&FHavxmEO_R_eniSs7ieVX@9T+$vQ0khOw4QFHlJf z1X%M^SqD5z8NN4#ecNuZ??V0i*c_IgSIyErM_GO4$t=B!;$sIqIzqLt;ObA=6gX`Z zRtJ;$^z3IGxcd^D=Tx23Q;+M_>aa+Mso%2niY*N0>gm-x*@Rco34bQQTBgsu_s9*} zT*1226x!CX<}>t$%5)CT)H~uixQ61T99cnOst(h1Xgjh3u1@C??kfJ7A-Hvze~oa~UjK#o)1(45og;plvmS zr8-`^oQQu;U~4 zU8;Aydd26o!v)J3OetSUzg-s?EVx1-VaZD@q2eloxj!=K_=&+%FN4Q^VbE5|plicg zT47Np8*!ly%XLa*>J&;YV)@A%bPDZb&_mO)15O>Gs*q(AZD-K!Vz7K0g9SRw-O9d8 z7an6HyvZn3v5BR-K4;LA!(j4e22=Eo+t%v&Yf6M9!tGu?!Lg2IxOJGPSCFF5{qC*n zSc7^4dHUQ|f5+xDZ3m-B-bMDEs!ye}lzk@`u~k)?zLVBd20N1IA6c-2LRTe&yDu_W zdY!>4{X3(Aedkf*!qUCBgpS6c3)SLJSn*_Cn5N8Tc$v4Du&vO)Gj6i)A|0mcGPYR9bNW7vL5@8X(0LY8FbhgEUGv~>6^EKeWzvV`PD2v=S%&2DTCDx1~cX`Sdht} z&B^Nl(aU(4{xvzRDUZ%wdbQ>KNr1tL-?0E`4N`^Vv3dY&jcg zij95e>abehZ@oHx!6~*Ic@H6HHpdQ>=~h9$ZcQB1H}dNDSci7QXYX=NlS&9aqUY#@ z%K40CmwwKmQ}1uVkF4KJ_Lu5=o?*axNv6kxz`Ofbs74p|JSggZx9j0tx>A5i znKCKhsQ%Zh0mmHBZvpoJ#4g~X`CZHBrYzv_|Gbv6z;G&yKa{PFYipbv!vC4AUFvH5 z!odIG&@y@&BRS!iL#T9U>w6h@Hc0wu?s17VU}H(Z5Q6N3pbYu@7smyWkQx+u-gTPU07rnGVMaPU07}xR@j9cyYQJ^ z_}nh6vmo3sJ+3ojaYh3#aVD zX}eHr7tYv)vv$E_7tYy*^LF6}yKuoST(k@2cHxp;xNH}$*o6w1Io$ZhphXU0u|oid zkm(SXIE1AR;S-0DPH~_8G-xmtj0BZ^eqm85Z8x9yd+V}?lvqLKxZOr2M z^A0%klrahxJY^h$9~yrAXhAgluvdm~kp%z3WaAuy|MC=Ld!GN@p?xydI82F5$rj>+ z2Fe^iAU3F(!RlFRo@f=!n9U^_8*=rt%e;CvV0K%0D%m)zp|1v7zVx7FqLst)@YyV5 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%0AisnCcF&9Q=xTSJ$4kL33-Kpy1Te-Dj7YO*_ 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

&||_{t9j{e4|@_=1n{;*0n16J53GL%zp# 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 W(5`lAQ7W{nEkwQjxEY>_2)2NMd4M4x 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%0D&Y?U4=vRKz50WqjWL6ir~IdB%9!jpP2VBh524-o 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μPvlZNo?8OY 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⪙#)Jainy1Z-!fDRpE6jKhic|!1MvP@ck4Zyi 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

WqdM*fx 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 z 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