From 05c012b35763997c9a331c26d5ea087ef410951b Mon Sep 17 00:00:00 2001 From: Arun Purushan Date: Fri, 14 Aug 2020 19:12:26 -0700 Subject: [PATCH 1/2] Enable audio denoise using rnnoise-wasm --- scripts/Gruntfile.js | 4 +- src/samples/p2p/js/peercall.js | 61 +- src/samples/p2p/peercall.html | 6 + src/sdk/base/denoise.js | 84 + src/sdk/base/mediastream-factory.js | 39 + src/sdk/base/rnn_denoise.js | 2298 +++++++++++++++++++++++++++ src/sdk/base/rnn_denoise.wasm | Bin 0 -> 235255 bytes 7 files changed, 2474 insertions(+), 18 deletions(-) create mode 100644 src/sdk/base/denoise.js create mode 100644 src/sdk/base/rnn_denoise.js create mode 100644 src/sdk/base/rnn_denoise.wasm diff --git a/scripts/Gruntfile.js b/scripts/Gruntfile.js index 3cccdbd7..10fa2bb0 100644 --- a/scripts/Gruntfile.js +++ b/scripts/Gruntfile.js @@ -5,7 +5,7 @@ module.exports = function(grunt) { const sdkOutput = 'dist/sdk/owt.js'; var srcFiles = [ - 'src/sdk/base/**', + 'src/sdk/base/*.js', 'src/sdk/p2p/**', 'src/sdk/conference/**' ]; @@ -175,6 +175,8 @@ window.L = L;\n\ copy:{ dist:{ files:[ + {expand: true,cwd:'src/sdk/base/',src:['*.wasm'],dest:'dist/samples/p2p/js',flatten:false}, + {expand: true,cwd:'src/sdk/base/',src:['*.wasm'],dest:'dist/sdk/',flatten:false}, {expand: true,cwd:'src/samples/p2p/',src:['**'],dest:'dist/samples/p2p/',flatten:false}, {expand: true,cwd:'src/samples/conference/',src:['**'],dest:'dist/samples/conference/',flatten:false}, {expand: true,cwd:'src/samples/conference/',src:['initcert.js'],dest:'dist/samples/conference/',flatten:false,mode:true}, diff --git a/src/samples/p2p/js/peercall.js b/src/samples/p2p/js/peercall.js index e2a68cd9..fdb40399 100644 --- a/src/samples/p2p/js/peercall.js +++ b/src/samples/p2p/js/peercall.js @@ -48,6 +48,10 @@ const getTargetId = function() { return $('#remote-uid').val(); }; +function denoiseCheckboxChanged() { + document.getElementById("denoise-message").innerHTML=": Click 'Stop Camera' and 'share camera' if video sharing is already in progress." +} + $(document).ready(function() { $('#set-remote-uid').click(function() { p2p.allowedRemoteIds = [getTargetId()]; @@ -94,6 +98,8 @@ $(document).ready(function() { localStream = undefined; }); + let denoiseCheckbox = document.getElementById('apply-denoise-checkbox'); + $('#target-video-publish').click(function() { $('#target-video-unpublish').prop('disabled', false); $('#target-video-publish').prop('disabled', true); @@ -109,23 +115,44 @@ $(document).ready(function() { const videoConstraintsForCamera = new Owt.Base .VideoTrackConstraints(Owt.Base.VideoSourceInfo.CAMERA); let mediaStream; - Owt.Base.MediaStreamFactory.createMediaStream(new Owt.Base - .StreamConstraints(audioConstraintsForMic, - videoConstraintsForCamera)).then((stream) => { - mediaStream = stream; - localStream = new Owt.Base.LocalStream(mediaStream, new Owt - .Base.StreamSourceInfo('mic', 'camera')); - $('#local').children('video').get(0).srcObject = localStream - .mediaStream; - p2p.publish(getTargetId(), localStream).then( - (publication) => { - publicationForCamera = publication; - }, (error) => { - console.log('Failed to share video.'); - }); - }, (err) => { - console.error('Failed to create MediaStream, ' + err); - }); + if(denoiseCheckbox.checked){ + Owt.Base.MediaStreamFactory.createMediaStreamDenoised(new Owt.Base + .StreamConstraints(audioConstraintsForMic, + videoConstraintsForCamera)).then((stream) => { + mediaStream = stream; + localStream = new Owt.Base.LocalStream(mediaStream, new Owt + .Base.StreamSourceInfo('mic', 'camera')); + $('#local').children('video').get(0).srcObject = localStream + .mediaStream; + p2p.publish(getTargetId(), localStream).then( + (publication) => { + publicationForCamera = publication; + }, (error) => { + console.log('Failed to share video.'); + }); + }, (err) => { + console.error('Failed to create MediaStream, ' + err); + }); + } + else { + Owt.Base.MediaStreamFactory.createMediaStream(new Owt.Base + .StreamConstraints(audioConstraintsForMic, + videoConstraintsForCamera)).then((stream) => { + mediaStream = stream; + localStream = new Owt.Base.LocalStream(mediaStream, new Owt + .Base.StreamSourceInfo('mic', 'camera')); + $('#local').children('video').get(0).srcObject = localStream + .mediaStream; + p2p.publish(getTargetId(), localStream).then( + (publication) => { + publicationForCamera = publication; + }, (error) => { + console.log('Failed to share video.'); + }); + }, (err) => { + console.error('Failed to create MediaStream, ' + err); + }); + } } }); diff --git a/src/samples/p2p/peercall.html b/src/samples/p2p/peercall.html index 9c867913..d9cfc900 100644 --- a/src/samples/p2p/peercall.html +++ b/src/samples/p2p/peercall.html @@ -85,6 +85,12 @@

P2P Sample

+

+ + + +

+

diff --git a/src/sdk/base/denoise.js b/src/sdk/base/denoise.js new file mode 100644 index 00000000..abe546a4 --- /dev/null +++ b/src/sdk/base/denoise.js @@ -0,0 +1,84 @@ +// Copyright (C) <2020> Intel Corporation +// +// SPDX-License-Identifier: Apache-2.0 + +/* global window, AudioContext, Float32Array */ + +'use strict'; +// /////////////////////////////////////////////////////////////////////////////// +// Handles the WebAssembly kernel for denoising raw audio files in F32Arrayformat +// /////////////////////////////////////////////////////////////////////////////// + +import {Module, wasmMemory} from './rnn_denoise.js'; + +// cwrap wasm API's used here make wasm calls from JS simpler. +const wasmRnndenoiseRawmem = Module.cwrap('rnnDenoise_rawmem', + 'number', ['number', 'number', 'number', 'number']); + +const sampleRate = 44100; // Audio Sample rate can be set and controlled here. +const numChannels = 1; // Current channel support limited to 1. Stereo is ToDo. + +/** + * @function wasmDenoiseStream + * @desc Apply denoising into raw audio data in F32Array format using + * a WebAssembly port of RNNoise denoising algoritm. + * @return {Float32Array} fProcessdArr with denoised audio data + * @param {Float32Array} f32buffer + */ +export function wasmDenoiseStream(f32buffer) { + // Create and Initialize Wasm memory with input audio data. + const wasmMemPtr = Module._malloc(f32buffer.length * 4 ); + const wasmMemArr = new Float32Array(wasmMemory.buffer, + wasmMemPtr, f32buffer.length); + wasmMemArr.set(f32buffer); + + // Call Wasm denoising kernel + const wasmRetPtr = wasmRnndenoiseRawmem(wasmMemPtr, + sampleRate, numChannels, f32buffer.length); + + // Create JS Array from Wasm memory with results + const fProcessedArr = new Float32Array(wasmMemory.buffer, + wasmRetPtr, f32buffer.length); + + return fProcessedArr; +} + +// //////////////////////////////////////////////////////////////////// +// Creates a WebAudio Based filter for applying audio denoising. +// /////////////////////////////////////////////////////////////////// + +// WebAuddio context +window.AudioContext = window.AudioContext || window.webkitAudioContext; +export const audioContext = new AudioContext(); // new AudioContext({sampleRate: 48000}); + + +// Audio buffer size: +// Accepts powers of 2 between 0 and 16384. +// Too low causes audio glitches due to buffer underruns +// Too high could increase latency. +// Set to 0 and WebAudio API will autopick a value. +const bufferSize = 4096; + +export const audioDenoise = (function() { + const numberOfInputChannels = 1; + const numberOfOutputChannels = 1; + let recorder; + + if (audioContext.createScriptProcessor) { + recorder = audioContext.createScriptProcessor(bufferSize, + numberOfInputChannels, numberOfOutputChannels); + } else { + recorder = audioContext.createJavaScriptNode(bufferSize, + numberOfInputChannels, numberOfOutputChannels); + } + + recorder.onaudioprocess = function(e) { + const input = e.inputBuffer.getChannelData(0); + + const wasmOutput = wasmDenoiseStream(input); + + e.outputBuffer.copyToChannel(wasmOutput, 0, 0); + }; + return recorder; +})(); + diff --git a/src/sdk/base/mediastream-factory.js b/src/sdk/base/mediastream-factory.js index 6b072731..0ad0401b 100644 --- a/src/sdk/base/mediastream-factory.js +++ b/src/sdk/base/mediastream-factory.js @@ -7,6 +7,7 @@ 'use strict'; import * as utils from './utils.js'; import * as MediaFormatModule from './mediaformat.js'; +import * as denoise from './denoise.js'; /** * @class AudioTrackConstraints @@ -226,4 +227,42 @@ export class MediaStreamFactory { return navigator.mediaDevices.getUserMedia(mediaConstraints); } } + /** + * @function createMediaStreamDenoised + * @static + * @desc Create a MediaStream with given constraints. Applies Rnnoise based + * noise cancellation on all audio streams. If you want to create a + * MediaStream for screen cast, please make sure both audio and video's source + * are "screen-cast". + * @memberof Owt.Base.MediaStreamFactory + * @return {Promise} Return a promise that is resolved + * when stream is successfully created, or rejected if one of the following + * error happened: + * - One or more parameters cannot be satisfied. + * - Specified device is busy. + * - Cannot obtain necessary permission or operation is canceled by user. + * - Video source is screen cast, while audio source is not. + * - Audio source is screen cast, while video source is disabled. + * @param {Owt.Base.StreamConstraints} constraints + */ + static createMediaStreamDenoised(constraints) { + return this.createMediaStream(constraints).then( + (stream) => { + const audioTracks = stream.getAudioTracks(); + const videoTracks = stream.getVideoTracks(); + const peer = denoise.audioContext.createMediaStreamDestination(); + + audioTracks.forEach(function(track) { + const microphone = + denoise.audioContext.createMediaStreamSource(stream); + microphone.connect(denoise.audioDenoise); + denoise.audioDenoise.connect(peer); + }); + videoTracks.forEach(function(track) { + peer.stream.addTrack(track); + }); + return peer.stream; + } + ); + } } diff --git a/src/sdk/base/rnn_denoise.js b/src/sdk/base/rnn_denoise.js new file mode 100644 index 00000000..c61ed5c6 --- /dev/null +++ b/src/sdk/base/rnn_denoise.js @@ -0,0 +1,2298 @@ +// Copyright (C) <2020> Intel Corporation +// +// SPDX-License-Identifier: Apache-2.0 + +/* eslint-disable */ +// Disabling eslint on auto-generated file. + +//////////////////////////////////////////////////////////////////////////////////// +// This file was generated using Emscripten https://emscripten.org/ +// +// This is to add the capability of denoising audio streams captured through +// the browser using WebAudio API. The core of denoising is done using a +// WebAssembly port of the RNNoise denoising library https://github.com/xiph/rnnoise. +// +// This file is accompanied by two files +// 1. rnnoise_denose.wasm: Wasm binary file & web version of RNNoise library +// 2. denoise.js: Helper for integrating the capability into OWT. 'Module' and +// 'wasmMemory' globals needs to be manually exported below to be used by +// denoise.js. +//////////////////////////////////////////////////////////////////////////////////// + +// Auto generated content below. + +// 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. +export var Module = typeof Module !== 'undefined' ? Module : {}; + + + +// --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 moduleOverrides = {}; +var key; +for (key in Module) { + 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 ENVIRONMENT_IS_WEB = false; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = false; +var ENVIRONMENT_IS_SHELL = false; +ENVIRONMENT_IS_WEB = typeof window === 'object'; +ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; +// N.b. Electron.js environment is simultaneously a NODE-environment, but +// also a web environment. +ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof process.versions === 'object' && typeof process.versions.node === 'string'; +ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; + + + + +// `/` should be present at the end if `scriptDirectory` is not empty +var scriptDirectory = ''; +function locateFile(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 nodeFS; +var nodePath; + +if (ENVIRONMENT_IS_NODE) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = require('path').dirname(scriptDirectory) + '/'; + } else { + 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) { + // suppress ExitStatus exceptions from showing an error + if (!(ex instanceof ExitStatus)) { + throw ex; + } + }); + + process['on']('unhandledRejection', abort); + + quit_ = function(status) { + process['exit'](status); + }; + + Module['inspect'] = function () { return '[Emscripten Module object]'; }; + + + +} 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 = /** @type{!Console} */({}); + console.log = /** @type{!function(this:Console, ...*): undefined} */ (print); + console.warn = console.error = /** @type{!function(this:Console, ...*): undefined} */ (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_IS_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. + { + + + + + read_ = function shell_read(url) { + 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(/** @type{!ArrayBuffer} */(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); + }; + + + + + } + + setWindowTitle = function(title) { document.title = title }; +} else +{ +} + + +// 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 +for (key in moduleOverrides) { + 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 (Module['thisProgram']) thisProgram = Module['thisProgram']; +if (Module['quit']) quit_ = Module['quit']; + +// perform assertions in shell.js after we set up out() and err(), as otherwise if an assertion fails it cannot print the message + + + + + +// {{PREAMBLE_ADDITIONS}} + +var STACK_ALIGN = 16; + +function dynamicAlloc(size) { + var ret = HEAP32[DYNAMICTOP_PTR>>2]; + var end = (ret + size + 15) & -16; + HEAP32[DYNAMICTOP_PTR>>2] = end; + return ret; +} + +function alignMemory(size, factor) { + if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default + 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 = Number(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); + } +} + + + + + + + + +// 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 + }; + + // 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 freeTableIndexes = []; + +// Weak map of functions in the table to their indexes, created on first use. +var functionsInTableMap; + +// Add a wasm function to the table. +function addFunctionWasm(func, sig) { + var table = wasmTable; + + // Check if the function is already in the table, to ensure each function + // gets a unique index. First, create the map if this is the first use. + if (!functionsInTableMap) { + functionsInTableMap = new WeakMap(); + for (var i = 0; i < table.length; i++) { + var item = table.get(i); + // Ignore null values. + if (item) { + functionsInTableMap.set(item, i); + } + } + } + if (functionsInTableMap.has(func)) { + return functionsInTableMap.get(func); + } + + // It's not in the table, add it now. + + + var ret; + // Reuse a free index if there is one, otherwise grow. + if (freeTableIndexes.length) { + ret = freeTableIndexes.pop(); + } else { + ret = table.length; + // Grow the table + try { + table.grow(1); + } catch (err) { + if (!(err instanceof RangeError)) { + throw err; + } + throw 'Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.'; + } + } + + // Set the new value. + 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; + } + var wrapped = convertJsFunctionToWasm(func, sig); + table.set(ret, wrapped); + } + + functionsInTableMap.set(func, ret); + + return ret; +} + +function removeFunctionWasm(index) { + functionsInTableMap.delete(wasmTable.get(index)); + freeTableIndexes.push(index); +} + +// 'sig' parameter is required for the llvm backend but only when func is not +// already a WebAssembly function. +function addFunction(func, sig) { + + return addFunctionWasm(func, sig); +} + +function removeFunction(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)); + }; + } + } + return sigCache[func]; +} + + + + + + + +function makeBigInt(low, high, unsigned) { + return unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0)); +} + +/** @param {Array=} args */ +function dynCall(sig, ptr, args) { + if (args && args.length) { + return Module['dynCall_' + sig].apply(null, [ptr].concat(args)); + } else { + return Module['dynCall_' + sig].call(null, ptr); + } +} + +var tempRet0 = 0; + +var setTempRet0 = function(value) { + tempRet0 = value; +}; + +var getTempRet0 = function() { + return tempRet0; +}; + + +// 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; + + + + + +// === 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']; +var noExitRuntime;if (Module['noExitRuntime']) noExitRuntime = Module['noExitRuntime']; + + +if (typeof WebAssembly !== 'object') { + err('no native wasm support detected'); +} + + + + +// 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) + +/** @param {number} ptr + @param {number} value + @param {string} type + @param {number|boolean=} noSafe */ +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); + } +} + +/** @param {number} ptr + @param {string} type + @param {number|boolean=} noSafe */ +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; +} + + + + + + +// Wasm globals + +export 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': 4, + 'maximum': 4 + 0, + 'element': 'anyfunc' +}); + + +//======================================== +// 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); + } +} + +// 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; +} + +// C calling interface. +/** @param {string|null=} returnType + @param {Array=} argTypes + @param {Arguments|Array=} args + @param {Object=} opts */ +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; + 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; +} + +/** @param {string=} returnType + @param {Array=} argTypes + @param {Object=} opts */ +function cwrap(ident, returnType, argTypes, opts) { + argTypes = argTypes || []; + // When the function takes numbers and returns a number, we can just return + // the original function + var numericArgs = argTypes.every(function(type){ return type === 'number'}); + var numericRet = returnType !== 'string'; + if (numericRet && numericArgs && !opts) { + return getCFunc(ident); + } + 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=)} */ +function allocate(slab, types, allocator, ptr) { + 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) { + 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; + } + + 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; + } + + 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); +} + + + + +// runtime_strings.js: Strings related runtime functions that are part of both MINIMAL_RUNTIME and regular runtime. + +// 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. + +var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined; + +/** + * @param {number} idx + * @param {number=} maxBytesToRead + * @return {string} + */ +function UTF8ArrayToString(heap, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. + // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. + // (As a tiny code save trick, compare endPtr against endIdx using a negation, so that undefined means Infinity) + while (heap[endPtr] && !(endPtr >= endIdx)) ++endPtr; + + if (endPtr - idx > 16 && heap.subarray && UTF8Decoder) { + return UTF8Decoder.decode(heap.subarray(idx, endPtr)); + } else { + var str = ''; + // If building with TextDecoder, we have already computed the string length above, so test loop end condition against that + while (idx < endPtr) { + // 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 = heap[idx++]; + if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; } + var u1 = heap[idx++] & 63; + if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; } + var u2 = heap[idx++] & 63; + if ((u0 & 0xF0) == 0xE0) { + u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; + } else { + u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (heap[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; +} + +// 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) : ''; +} + +// 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. +// heap: 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, heap, 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; + heap[outIdx++] = u; + } else if (u <= 0x7FF) { + if (outIdx + 1 >= endIdx) break; + heap[outIdx++] = 0xC0 | (u >> 6); + heap[outIdx++] = 0x80 | (u & 63); + } else if (u <= 0xFFFF) { + if (outIdx + 2 >= endIdx) break; + heap[outIdx++] = 0xE0 | (u >> 12); + heap[outIdx++] = 0x80 | ((u >> 6) & 63); + heap[outIdx++] = 0x80 | (u & 63); + } else { + if (outIdx + 3 >= endIdx) break; + heap[outIdx++] = 0xF0 | (u >> 18); + heap[outIdx++] = 0x80 | ((u >> 12) & 63); + heap[outIdx++] = 0x80 | ((u >> 6) & 63); + heap[outIdx++] = 0x80 | (u & 63); + } + } + // Null-terminate the pointer to the buffer. + heap[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) { + 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; +} + + + + + +// runtime_strings_extra.js: Strings related runtime functions that are available only in regular runtime. + +// 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); + } +} + +// 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); +} + +// 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. + +var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-16le') : undefined; + +function UTF16ToString(ptr, maxBytesToRead) { + var endPtr = ptr; + // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. + // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. + var idx = endPtr >> 1; + var maxIdx = idx + maxBytesToRead / 2; + // If maxBytesToRead is not passed explicitly, it will be undefined, and this + // will always evaluate to true. This saves on code size. + while (!(idx >= maxIdx) && HEAPU16[idx]) ++idx; + endPtr = idx << 1; + + if (endPtr - ptr > 32 && UTF16Decoder) { + return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr)); + } else { + var i = 0; + + var str = ''; + while (1) { + var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; + if (codeUnit == 0 || i == maxBytesToRead / 2) 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); + } + } +} + +// 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) { + // 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; +} + +// 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; +} + +function UTF32ToString(ptr, maxBytesToRead) { + var i = 0; + + var str = ''; + // If maxBytesToRead is not passed explicitly, it will be undefined, and this + // will always evaluate to true. This saves on code size. + while (!(i >= maxBytesToRead / 4)) { + var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; + if (utf32 == 0) break; + ++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); + } + } + return str; +} + +// 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) { + // 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; +} + +// 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; +} + +// 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; +} + +// 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; +} + +// 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 + @param {boolean=} dontAddNull */ +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. +} + +function writeArrayToMemory(array, buffer) { + HEAP8.set(array, buffer); +} + +/** @param {boolean=} dontAddNull */ +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + HEAP8[((buffer++)>>0)]=str.charCodeAt(i); + } + // Null-terminate the pointer to the HEAP. + if (!dontAddNull) HEAP8[((buffer)>>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; +} + +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; + +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); +} + +var STATIC_BASE = 1024, + STACK_BASE = 5340160, + STACKTOP = STACK_BASE, + STACK_MAX = 97280, + DYNAMIC_BASE = 5340160, + DYNAMICTOP_PTR = 97120; + + + +var TOTAL_STACK = 5242880; + +var INITIAL_INITIAL_MEMORY = Module['INITIAL_MEMORY'] || 16777216; + + +// 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['wasmMemory']) { + wasmMemory = Module['wasmMemory']; + } else + { + wasmMemory = new WebAssembly.Memory({ + 'initial': INITIAL_INITIAL_MEMORY / WASM_PAGE_SIZE + , + 'maximum': 2147483648 / WASM_PAGE_SIZE + }); + } + + +if (wasmMemory) { + 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['INITIAL_MEMORY']. +INITIAL_INITIAL_MEMORY = buffer.byteLength; +updateGlobalBufferAndViews(buffer); + +HEAP32[DYNAMICTOP_PTR>>2] = DYNAMIC_BASE; + + +function callRuntimeCallbacks(callbacks) { + while(callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == 'function') { + callback(Module); // Pass the module as the first argument. + 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 runtimeInitialized = false; +var runtimeExited = false; + + +function preRun() { + + if (Module['preRun']) { + if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; + while (Module['preRun'].length) { + addOnPreRun(Module['preRun'].shift()); + } + } + + callRuntimeCallbacks(__ATPRERUN__); +} + +function initRuntime() { + runtimeInitialized = true; + + callRuntimeCallbacks(__ATINIT__); +} + +function preMain() { + + callRuntimeCallbacks(__ATMAIN__); +} + +function exitRuntime() { + runtimeExited = true; +} + +function postRun() { + + 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); +} + +function addOnInit(cb) { + __ATINIT__.unshift(cb); +} + +function addOnPreMain(cb) { + __ATMAIN__.unshift(cb); +} + +function addOnExit(cb) { +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb); +} + +/** @param {number|boolean=} ignore */ +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; +} +/** @param {number|boolean=} ignore */ +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 + } + return value; +} + + + + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/imul + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/fround + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32 + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/trunc + + +var Math_abs = Math.abs; +var Math_cos = Math.cos; +var Math_sin = Math.sin; +var Math_tan = Math.tan; +var Math_acos = Math.acos; +var Math_asin = Math.asin; +var Math_atan = Math.atan; +var Math_atan2 = Math.atan2; +var Math_exp = Math.exp; +var Math_log = Math.log; +var Math_sqrt = Math.sqrt; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_pow = Math.pow; +var Math_imul = Math.imul; +var Math_fround = Math.fround; +var Math_round = Math.round; +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 + +function getUniqueRunDependency(id) { + return id; +} + +function addRunDependency(id) { + runDependencies++; + + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + +} + +function removeRunDependency(id) { + runDependencies--; + + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback(); // can add another dependenciesFulfilled + } + } +} + +Module["preloadedImages"] = {}; // maps url to image data +Module["preloadedAudios"] = {}; // maps url to audio data + +/** @param {string|number=} what */ +function abort(what) { + if (Module['onAbort']) { + Module['onAbort'](what); + } + + what += ''; + out(what); + err(what); + + ABORT = true; + EXITSTATUS = 1; + + what = 'abort(' + what + '). Build with -s ASSERTIONS=1 for more info.'; + + // 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); +} + + +var memoryInitializer = null; + + + + + + + + + + + + +function hasPrefix(str, prefix) { + return String.prototype.startsWith ? + str.startsWith(prefix) : + str.indexOf(prefix) === 0; +} + +// 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. +function isDataURI(filename) { + return hasPrefix(filename, dataURIPrefix); +} + +var fileURIPrefix = "file://"; + +// Indicates whether filename is delivered via file protocol (as opposed to http/https) +function isFileURI(filename) { + return hasPrefix(filename, fileURIPrefix); +} + + + + +var wasmBinaryFile = 'rnn_denoise.wasm'; +if (!isDataURI(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"; + } + } + 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' + // Let's not use fetch to get objects over file:// as it's most likely Cordova which doesn't support fetch for file:// + && !isFileURI(wasmBinaryFile) + ) { + 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()); + }); +} + + + +// Create the wasm instance. +// Receives the wasm imports, returns the exports. +function createWasm() { + // prepare imports + var info = { + 'env': asmLibraryArg, + 'wasi_snapshot_preview1': 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 + /** @param {WebAssembly.Module=} module*/ + function receiveInstance(instance, module) { + var exports = instance.exports; + Module['asm'] = exports; + removeRunDependency('wasm-instantiate'); + } + // we can't run yet (except in a pthread, where we have a custom sync instantiator) + addRunDependency('wasm-instantiate'); + + + 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 + // TODO: Due to Closure regression https://github.com/google/closure-compiler/issues/3193, the above line no longer optimizes out down to the following line. + // When the regression is fixed, can restore the above USE_PTHREADS-enabled path. + receiveInstance(output['instance']); + } + + + 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) && + // Don't use streaming for file:// delivered objects in a webview, fetch them synchronously. + !isFileURI(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'); + return 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; + } + } + + instantiateAsync(); + return {}; // no exports yet; we'll fill them in later +} + + +// Globals used by JS i64 conversions +var tempDouble; +var tempI64; + +// === Body === + +var ASM_CONSTS = { + +}; + + + + +// STATICTOP = STATIC_BASE + 96256; +/* global initializers */ __ATINIT__.push({ func: function() { ___wasm_call_ctors() } }); + + + + +/* no memory initializer */ +// {{PRE_LIBRARY}} + + + function demangle(func) { + return func; + } + + 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 + ']'); + }); + } + + 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(); + } catch(e) { + err = e; + } + if (!err.stack) { + return '(no stack trace available)'; + } + } + return err.stack.toString(); + } + + function stackTrace() { + var js = jsStackTrace(); + if (Module['extraStackTrace']) js += '\n' + Module['extraStackTrace'](); + return demangleAll(js); + } + + + var _emscripten_get_now;if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function() { + var t = process['hrtime'](); + return t[0] * 1e3 + t[1] / 1e6; + }; + } else if (typeof dateNow !== 'undefined') { + _emscripten_get_now = dateNow; + } else _emscripten_get_now = function() { return performance.now(); } + ; + + var _emscripten_get_now_is_monotonic=true;; + + function setErrNo(value) { + HEAP32[((___errno_location())>>2)]=value; + return value; + }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 || clk_id === 4) && _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; + } + + function _emscripten_get_sbrk_ptr() { + return 97120; + } + + function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.copyWithin(dest, src, src + num); + } + + + function _emscripten_get_heap_size() { + return HEAPU8.length; + } + + function emscripten_realloc_buffer(size) { + try { + // round size grow request up to wasm page size (fixed 64KB per spec) + wasmMemory.grow((size - buffer.byteLength + 65535) >>> 16); // .grow() takes a delta compared to the previous size + updateGlobalBufferAndViews(wasmMemory.buffer); + return 1 /*success*/; + } catch(e) { + } + }function _emscripten_resize_heap(requestedSize) { + requestedSize = requestedSize >>> 0; + var oldSize = _emscripten_get_heap_size(); + // With pthreads, races can happen (another thread might increase the size in between), so return a failure, and let the caller retry. + + + var PAGE_MULTIPLE = 65536; + + // Memory resize rules: + // 1. When resizing, always produce a resized heap that is at least 16MB (to avoid tiny heap sizes receiving lots of repeated resizes at startup) + // 2. Always increase heap size to at least the requested size, rounded up to next page multiple. + // 3a. If MEMORY_GROWTH_LINEAR_STEP == -1, excessively resize the heap geometrically: increase the heap size according to + // MEMORY_GROWTH_GEOMETRIC_STEP factor (default +20%), + // At most overreserve by MEMORY_GROWTH_GEOMETRIC_CAP bytes (default 96MB). + // 3b. If MEMORY_GROWTH_LINEAR_STEP != -1, excessively resize the heap linearly: increase the heap size by at least MEMORY_GROWTH_LINEAR_STEP bytes. + // 4. Max size for the heap is capped at 2048MB-PAGE_MULTIPLE, or by MAXIMUM_MEMORY, or by ASAN limit, depending on which is smallest + // 5. If we were unable to allocate as much memory, it may be due to over-eager decision to excessively reserve due to (3) above. + // Hence if an allocation fails, cut down on the amount of excess growth, in an attempt to succeed to perform a smaller allocation. + + // A limit was set for how much we can grow. We should not exceed that + // (the wasm binary specifies it, so if we tried, we'd fail anyhow). + var maxHeapSize = 2147483648; + if (requestedSize > maxHeapSize) { + return false; + } + + var minHeapSize = 16777216; + + // Loop through potential heap size increases. If we attempt a too eager reservation that fails, cut down on the + // attempted size and reserve a smaller bump instead. (max 3 times, chosen somewhat arbitrarily) + for(var cutDown = 1; cutDown <= 4; cutDown *= 2) { + var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); // ensure geometric growth + // but limit overreserving (default to capping at +96MB overgrowth at most) + overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296 ); + + + var newSize = Math.min(maxHeapSize, alignUp(Math.max(minHeapSize, requestedSize, overGrownHeapSize), PAGE_MULTIPLE)); + + var replacement = emscripten_realloc_buffer(newSize); + if (replacement) { + + return true; + } + } + return false; + } + + + + 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); + }};var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream, curr) { + var buffer = SYSCALLS.buffers[stream]; + if (curr === 0 || curr === 10) { + (stream === 1 ? out : err)(UTF8ArrayToString(buffer, 0)); + buffer.length = 0; + } else { + buffer.push(curr); + } + },varargs:undefined,get:function() { + SYSCALLS.varargs += 4; + var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)]; + return ret; + },getStr:function(ptr) { + var ret = UTF8ToString(ptr); + return ret; + },get64:function(low, high) { + return low; + }};function _fd_close(fd) { + return 0; + } + + function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + } + + + function flush_NO_FILESYSTEM() { + // flush anything remaining in the buffers during shutdown + if (typeof _fflush !== 'undefined') _fflush(0); + var buffers = SYSCALLS.buffers; + if (buffers[1].length) SYSCALLS.printChar(1, 10); + if (buffers[2].length) SYSCALLS.printChar(2, 10); + }function _fd_write(fd, iov, iovcnt, pnum) { + // hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0 + var num = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[(((iov)+(i*8))>>2)]; + var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; + for (var j = 0; j < len; j++) { + SYSCALLS.printChar(fd, HEAPU8[ptr+j]); + } + num += len; + } + HEAP32[((pnum)>>2)]=num + return 0; + } + + function _setTempRet0($i) { + setTempRet0(($i) | 0); + } +var ASSERTIONS = false; + + + +/** @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; +} + +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 asmGlobalArg = {}; +var asmLibraryArg = { "clock_gettime": _clock_gettime, "emscripten_get_sbrk_ptr": _emscripten_get_sbrk_ptr, "emscripten_memcpy_big": _emscripten_memcpy_big, "emscripten_resize_heap": _emscripten_resize_heap, "fd_close": _fd_close, "fd_seek": _fd_seek, "fd_write": _fd_write, "memory": wasmMemory, "setTempRet0": _setTempRet0, "table": wasmTable }; +var asm = createWasm(); +/** @type {function(...*):?} */ +var ___wasm_call_ctors = Module["___wasm_call_ctors"] = function() { + return (___wasm_call_ctors = Module["___wasm_call_ctors"] = Module["asm"]["__wasm_call_ctors"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _rnnoise_get_size = Module["_rnnoise_get_size"] = function() { + return (_rnnoise_get_size = Module["_rnnoise_get_size"] = Module["asm"]["rnnoise_get_size"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _rnnoise_init = Module["_rnnoise_init"] = function() { + return (_rnnoise_init = Module["_rnnoise_init"] = Module["asm"]["rnnoise_init"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _rnnoise_create = Module["_rnnoise_create"] = function() { + return (_rnnoise_create = Module["_rnnoise_create"] = Module["asm"]["rnnoise_create"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _malloc = Module["_malloc"] = function() { + return (_malloc = Module["_malloc"] = Module["asm"]["malloc"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _rnnoise_destroy = Module["_rnnoise_destroy"] = function() { + return (_rnnoise_destroy = Module["_rnnoise_destroy"] = Module["asm"]["rnnoise_destroy"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _free = Module["_free"] = function() { + return (_free = Module["_free"] = Module["asm"]["free"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _rnnoise_process_frame = Module["_rnnoise_process_frame"] = function() { + return (_rnnoise_process_frame = Module["_rnnoise_process_frame"] = Module["asm"]["rnnoise_process_frame"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _denoise_proc = Module["_denoise_proc"] = function() { + return (_denoise_proc = Module["_denoise_proc"] = Module["asm"]["denoise_proc"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _rnnDenoise_rawmem = Module["_rnnDenoise_rawmem"] = function() { + return (_rnnDenoise_rawmem = Module["_rnnDenoise_rawmem"] = Module["asm"]["rnnDenoise_rawmem"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _rnnDenoise_rawmem_perf = Module["_rnnDenoise_rawmem_perf"] = function() { + return (_rnnDenoise_rawmem_perf = Module["_rnnDenoise_rawmem_perf"] = Module["asm"]["rnnDenoise_rawmem_perf"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _get_rnnDenoise_rawmem_time = Module["_get_rnnDenoise_rawmem_time"] = function() { + return (_get_rnnDenoise_rawmem_time = Module["_get_rnnDenoise_rawmem_time"] = Module["asm"]["get_rnnDenoise_rawmem_time"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _getResultPointer = Module["_getResultPointer"] = function() { + return (_getResultPointer = Module["_getResultPointer"] = Module["asm"]["getResultPointer"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _getResultSize = Module["_getResultSize"] = function() { + return (_getResultSize = Module["_getResultSize"] = Module["asm"]["getResultSize"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _getsampleRate = Module["_getsampleRate"] = function() { + return (_getsampleRate = Module["_getsampleRate"] = Module["asm"]["getsampleRate"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _getchannels = Module["_getchannels"] = function() { + return (_getchannels = Module["_getchannels"] = Module["asm"]["getchannels"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _getsampleCount = Module["_getsampleCount"] = function() { + return (_getsampleCount = Module["_getsampleCount"] = Module["asm"]["getsampleCount"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _freeBuffer = Module["_freeBuffer"] = function() { + return (_freeBuffer = Module["_freeBuffer"] = Module["asm"]["freeBuffer"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var _main = Module["_main"] = function() { + return (_main = Module["_main"] = Module["asm"]["main"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var ___errno_location = Module["___errno_location"] = function() { + return (___errno_location = Module["___errno_location"] = Module["asm"]["__errno_location"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var stackSave = Module["stackSave"] = function() { + return (stackSave = Module["stackSave"] = Module["asm"]["stackSave"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var stackRestore = Module["stackRestore"] = function() { + return (stackRestore = Module["stackRestore"] = Module["asm"]["stackRestore"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var stackAlloc = Module["stackAlloc"] = function() { + return (stackAlloc = Module["stackAlloc"] = Module["asm"]["stackAlloc"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var __growWasmMemory = Module["__growWasmMemory"] = function() { + return (__growWasmMemory = Module["__growWasmMemory"] = Module["asm"]["__growWasmMemory"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var dynCall_ii = Module["dynCall_ii"] = function() { + return (dynCall_ii = Module["dynCall_ii"] = Module["asm"]["dynCall_ii"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var dynCall_iiii = Module["dynCall_iiii"] = function() { + return (dynCall_iiii = Module["dynCall_iiii"] = Module["asm"]["dynCall_iiii"]).apply(null, arguments); +}; + +/** @type {function(...*):?} */ +var dynCall_jiji = Module["dynCall_jiji"] = function() { + return (dynCall_jiji = Module["dynCall_jiji"] = Module["asm"]["dynCall_jiji"]).apply(null, arguments); +}; + +// === Auto-generated postamble setup entry stuff === + +Module["cwrap"] = cwrap; +var calledRun; + +/** + * @constructor + * @this {ExitStatus} + */ +function ExitStatus(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 +}; + +function callMain(args) { + + 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); + // In PROXY_TO_PTHREAD builds, we should never exit the runtime below, as execution is asynchronously handed + // off to a pthread. + // 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 == 'unwind') { + // 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; + } +} + +/** @type {function(Array=)} */ +function run(args) { + args = args || arguments_; + + if (runDependencies > 0) { + return; + } + + + 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; + Module['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(); + } +} +Module['run'] = run; + + +/** @param {boolean|number=} implicit */ +function exit(status, implicit) { + + // 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) { + } else { + + 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()(); + } +} + +// shouldRunNow refers to calling main(), not run(). +var shouldRunNow = true; + +if (Module['noInitialRun']) shouldRunNow = false; + + + noExitRuntime = true; + +run(); + +// {{MODULE_ADDITIONS}} diff --git a/src/sdk/base/rnn_denoise.wasm b/src/sdk/base/rnn_denoise.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e48145aa82de7be8726c68021022d93441b19722 GIT binary patch literal 235255 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 Date: Sun, 18 Oct 2020 19:40:35 -0700 Subject: [PATCH 2/2] Perform rnnoise-wasm audio denoise using AudioWorklet API --- src/sdk/base/denoise-wasm-worklet.js | 2585 ++++++++++++++++++++++++++ src/sdk/base/denoise.js | 84 - src/sdk/base/mediastream-factory.js | 44 +- src/sdk/base/rnn_denoise.js | 2298 ----------------------- src/sdk/base/rnn_denoise.wasm | Bin 235255 -> 0 bytes 5 files changed, 2612 insertions(+), 2399 deletions(-) create mode 100644 src/sdk/base/denoise-wasm-worklet.js delete mode 100644 src/sdk/base/denoise.js delete mode 100644 src/sdk/base/rnn_denoise.js delete mode 100644 src/sdk/base/rnn_denoise.wasm diff --git a/src/sdk/base/denoise-wasm-worklet.js b/src/sdk/base/denoise-wasm-worklet.js new file mode 100644 index 00000000..f4866445 --- /dev/null +++ b/src/sdk/base/denoise-wasm-worklet.js @@ -0,0 +1,2585 @@ +/* eslint-disable */ + +// This file is mostly autogenerated through emscripten. Disabling eslint. + +// 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 : {}; + + + +// --pre-jses are emitted after the Module integration code, so that they can +// refer to Module (if they choose; they can also define Module) + + +// 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 moduleOverrides = {}; +var key; +for (key in Module) { + 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 ENVIRONMENT_IS_WEB = false; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = false; +var ENVIRONMENT_IS_SHELL = false; +ENVIRONMENT_IS_WEB = typeof window === 'object'; +ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; +// N.b. Electron.js environment is simultaneously a NODE-environment, but +// also a web environment. +ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof process.versions === 'object' && typeof process.versions.node === 'string'; +ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; + + + + +// `/` should be present at the end if `scriptDirectory` is not empty +var scriptDirectory = ''; +function locateFile(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 nodeFS; +var nodePath; + +if (ENVIRONMENT_IS_NODE) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = require('path').dirname(scriptDirectory) + '/'; + } else { + scriptDirectory = __dirname + '/'; + } + + + + + read_ = function shell_read(filename, binary) { + var ret = tryParseAsDataURI(filename); + if (ret) { + return binary ? ret : ret.toString(); + } + 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) { + // suppress ExitStatus exceptions from showing an error + if (!(ex instanceof ExitStatus)) { + throw ex; + } + }); + + process['on']('unhandledRejection', abort); + + quit_ = function(status) { + process['exit'](status); + }; + + Module['inspect'] = function () { return '[Emscripten Module object]'; }; + + + +} else +if (ENVIRONMENT_IS_SHELL) { + + + if (typeof read != 'undefined') { + read_ = function shell_read(f) { + var data = tryParseAsDataURI(f); + if (data) { + return intArrayToString(data); + } + return read(f); + }; + } + + readBinary = function readBinary(f) { + var data; + data = tryParseAsDataURI(f); + if (data) { + return 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 = /** @type{!Console} */({}); + console.log = /** @type{!function(this:Console, ...*): undefined} */ (print); + console.warn = console.error = /** @type{!function(this:Console, ...*): undefined} */ (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_IS_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. + { + + + + + read_ = function shell_read(url) { + try { + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, false); + xhr.send(null); + return xhr.responseText; + } catch (err) { + var data = tryParseAsDataURI(url); + if (data) { + return intArrayToString(data); + } + throw err; + } + }; + + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + try { + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, false); + xhr.responseType = 'arraybuffer'; + xhr.send(null); + return new Uint8Array(/** @type{!ArrayBuffer} */(xhr.response)); + } catch (err) { + var data = tryParseAsDataURI(url); + if (data) { + return data; + } + throw err; + } + }; + } + + 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; + } + var data = tryParseAsDataURI(url); + if (data) { + onload(data.buffer); + return; + } + onerror(); + }; + xhr.onerror = onerror; + xhr.send(null); + }; + + + + + } + + setWindowTitle = function(title) { document.title = title }; +} else +{ +} + + +// 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 +for (key in moduleOverrides) { + 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 (Module['thisProgram']) thisProgram = Module['thisProgram']; +if (Module['quit']) quit_ = Module['quit']; + +// perform assertions in shell.js after we set up out() and err(), as otherwise if an assertion fails it cannot print the message + + + + + +// {{PREAMBLE_ADDITIONS}} + +var STACK_ALIGN = 16; + +function dynamicAlloc(size) { + var ret = HEAP32[DYNAMICTOP_PTR>>2]; + var end = (ret + size + 15) & -16; + HEAP32[DYNAMICTOP_PTR>>2] = end; + return ret; +} + +function alignMemory(size, factor) { + if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default + 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 = Number(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); + } +} + + + + + + + + +// 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 + }; + + // 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 freeTableIndexes = []; + +// Weak map of functions in the table to their indexes, created on first use. +var functionsInTableMap; + +// Add a wasm function to the table. +function addFunctionWasm(func, sig) { + var table = wasmTable; + + // Check if the function is already in the table, to ensure each function + // gets a unique index. First, create the map if this is the first use. + if (!functionsInTableMap) { + functionsInTableMap = new WeakMap(); + for (var i = 0; i < table.length; i++) { + var item = table.get(i); + // Ignore null values. + if (item) { + functionsInTableMap.set(item, i); + } + } + } + if (functionsInTableMap.has(func)) { + return functionsInTableMap.get(func); + } + + // It's not in the table, add it now. + + + var ret; + // Reuse a free index if there is one, otherwise grow. + if (freeTableIndexes.length) { + ret = freeTableIndexes.pop(); + } else { + ret = table.length; + // Grow the table + try { + table.grow(1); + } catch (err) { + if (!(err instanceof RangeError)) { + throw err; + } + throw 'Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.'; + } + } + + // Set the new value. + 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; + } + var wrapped = convertJsFunctionToWasm(func, sig); + table.set(ret, wrapped); + } + + functionsInTableMap.set(func, ret); + + return ret; +} + +function removeFunctionWasm(index) { + functionsInTableMap.delete(wasmTable.get(index)); + freeTableIndexes.push(index); +} + +// 'sig' parameter is required for the llvm backend but only when func is not +// already a WebAssembly function. +function addFunction(func, sig) { + + return addFunctionWasm(func, sig); +} + +function removeFunction(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)); + }; + } + } + return sigCache[func]; +} + + + + + + + +function makeBigInt(low, high, unsigned) { + return unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0)); +} + +/** @param {Array=} args */ +function dynCall(sig, ptr, args) { + if (args && args.length) { + return Module['dynCall_' + sig].apply(null, [ptr].concat(args)); + } else { + return Module['dynCall_' + sig].call(null, ptr); + } +} + +var tempRet0 = 0; + +var setTempRet0 = function(value) { + tempRet0 = value; +}; + +var getTempRet0 = function() { + return tempRet0; +}; + + +// 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; + + + + + +// === 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']; +var noExitRuntime;if (Module['noExitRuntime']) noExitRuntime = Module['noExitRuntime']; + + +if (typeof WebAssembly !== 'object') { + err('no native wasm support detected'); +} + + + + +// 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) + +/** @param {number} ptr + @param {number} value + @param {string} type + @param {number|boolean=} noSafe */ +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); + } +} + +/** @param {number} ptr + @param {string} type + @param {number|boolean=} noSafe */ +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; +} + + + + + + +// 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': 4, + 'maximum': 4 + 0, + 'element': 'anyfunc' +}); + + +//======================================== +// 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); + } +} + +// 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; +} + +// C calling interface. +/** @param {string|null=} returnType + @param {Array=} argTypes + @param {Arguments|Array=} args + @param {Object=} opts */ +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; + 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; +} + +/** @param {string=} returnType + @param {Array=} argTypes + @param {Object=} opts */ +function cwrap(ident, returnType, argTypes, opts) { + argTypes = argTypes || []; + // When the function takes numbers and returns a number, we can just return + // the original function + var numericArgs = argTypes.every(function(type){ return type === 'number'}); + var numericRet = returnType !== 'string'; + if (numericRet && numericArgs && !opts) { + return getCFunc(ident); + } + 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=)} */ +function allocate(slab, types, allocator, ptr) { + 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) { + 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; + } + + 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; + } + + 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); +} + + + + +// runtime_strings.js: Strings related runtime functions that are part of both MINIMAL_RUNTIME and regular runtime. + +// 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. + +var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined; + +/** + * @param {number} idx + * @param {number=} maxBytesToRead + * @return {string} + */ +function UTF8ArrayToString(heap, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. + // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. + // (As a tiny code save trick, compare endPtr against endIdx using a negation, so that undefined means Infinity) + while (heap[endPtr] && !(endPtr >= endIdx)) ++endPtr; + + if (endPtr - idx > 16 && heap.subarray && UTF8Decoder) { + return UTF8Decoder.decode(heap.subarray(idx, endPtr)); + } else { + var str = ''; + // If building with TextDecoder, we have already computed the string length above, so test loop end condition against that + while (idx < endPtr) { + // 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 = heap[idx++]; + if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; } + var u1 = heap[idx++] & 63; + if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; } + var u2 = heap[idx++] & 63; + if ((u0 & 0xF0) == 0xE0) { + u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; + } else { + u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (heap[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; +} + +// 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) : ''; +} + +// 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. +// heap: 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, heap, 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; + heap[outIdx++] = u; + } else if (u <= 0x7FF) { + if (outIdx + 1 >= endIdx) break; + heap[outIdx++] = 0xC0 | (u >> 6); + heap[outIdx++] = 0x80 | (u & 63); + } else if (u <= 0xFFFF) { + if (outIdx + 2 >= endIdx) break; + heap[outIdx++] = 0xE0 | (u >> 12); + heap[outIdx++] = 0x80 | ((u >> 6) & 63); + heap[outIdx++] = 0x80 | (u & 63); + } else { + if (outIdx + 3 >= endIdx) break; + heap[outIdx++] = 0xF0 | (u >> 18); + heap[outIdx++] = 0x80 | ((u >> 12) & 63); + heap[outIdx++] = 0x80 | ((u >> 6) & 63); + heap[outIdx++] = 0x80 | (u & 63); + } + } + // Null-terminate the pointer to the buffer. + heap[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) { + 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; +} + + + + + +// runtime_strings_extra.js: Strings related runtime functions that are available only in regular runtime. + +// 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); + } +} + +// 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); +} + +// 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. + +var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-16le') : undefined; + +function UTF16ToString(ptr, maxBytesToRead) { + var endPtr = ptr; + // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. + // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. + var idx = endPtr >> 1; + var maxIdx = idx + maxBytesToRead / 2; + // If maxBytesToRead is not passed explicitly, it will be undefined, and this + // will always evaluate to true. This saves on code size. + while (!(idx >= maxIdx) && HEAPU16[idx]) ++idx; + endPtr = idx << 1; + + if (endPtr - ptr > 32 && UTF16Decoder) { + return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr)); + } else { + var i = 0; + + var str = ''; + while (1) { + var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; + if (codeUnit == 0 || i == maxBytesToRead / 2) 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); + } + } +} + +// 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) { + // 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; +} + +// 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; +} + +function UTF32ToString(ptr, maxBytesToRead) { + var i = 0; + + var str = ''; + // If maxBytesToRead is not passed explicitly, it will be undefined, and this + // will always evaluate to true. This saves on code size. + while (!(i >= maxBytesToRead / 4)) { + var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; + if (utf32 == 0) break; + ++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); + } + } + return str; +} + +// 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) { + // 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; +} + +// 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; +} + +// 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; +} + +// 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; +} + +// 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 + @param {boolean=} dontAddNull */ +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. +} + +function writeArrayToMemory(array, buffer) { + HEAP8.set(array, buffer); +} + +/** @param {boolean=} dontAddNull */ +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + HEAP8[((buffer++)>>0)]=str.charCodeAt(i); + } + // Null-terminate the pointer to the HEAP. + if (!dontAddNull) HEAP8[((buffer)>>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; +} + +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; + +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); +} + +var STATIC_BASE = 1024, + STACK_BASE = 5340160, + STACKTOP = STACK_BASE, + STACK_MAX = 97280, + DYNAMIC_BASE = 5340160, + DYNAMICTOP_PTR = 97120; + + + +var TOTAL_STACK = 5242880; + +var INITIAL_INITIAL_MEMORY = Module['INITIAL_MEMORY'] || 16777216; + + + + + + + + + +// 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['wasmMemory']) { + wasmMemory = Module['wasmMemory']; + } else + { + wasmMemory = new WebAssembly.Memory({ + 'initial': INITIAL_INITIAL_MEMORY / WASM_PAGE_SIZE + , + 'maximum': 2147483648 / WASM_PAGE_SIZE + }); + } + + +if (wasmMemory) { + 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['INITIAL_MEMORY']. +INITIAL_INITIAL_MEMORY = buffer.byteLength; +updateGlobalBufferAndViews(buffer); + +HEAP32[DYNAMICTOP_PTR>>2] = DYNAMIC_BASE; + + + + + + + + + + + + + + +function callRuntimeCallbacks(callbacks) { + while(callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == 'function') { + callback(Module); // Pass the module as the first argument. + 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 runtimeInitialized = false; +var runtimeExited = false; + + +function preRun() { + + if (Module['preRun']) { + if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; + while (Module['preRun'].length) { + addOnPreRun(Module['preRun'].shift()); + } + } + + callRuntimeCallbacks(__ATPRERUN__); +} + +function initRuntime() { + runtimeInitialized = true; + + callRuntimeCallbacks(__ATINIT__); +} + +function preMain() { + + callRuntimeCallbacks(__ATMAIN__); +} + +function exitRuntime() { + runtimeExited = true; +} + +function postRun() { + + 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); +} + +function addOnInit(cb) { + __ATINIT__.unshift(cb); +} + +function addOnPreMain(cb) { + __ATMAIN__.unshift(cb); +} + +function addOnExit(cb) { +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb); +} + +/** @param {number|boolean=} ignore */ +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; +} +/** @param {number|boolean=} ignore */ +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 + } + return value; +} + + + + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/imul + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/fround + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32 + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/trunc + + +var Math_abs = Math.abs; +var Math_cos = Math.cos; +var Math_sin = Math.sin; +var Math_tan = Math.tan; +var Math_acos = Math.acos; +var Math_asin = Math.asin; +var Math_atan = Math.atan; +var Math_atan2 = Math.atan2; +var Math_exp = Math.exp; +var Math_log = Math.log; +var Math_sqrt = Math.sqrt; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_pow = Math.pow; +var Math_imul = Math.imul; +var Math_fround = Math.fround; +var Math_round = Math.round; +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 + +function getUniqueRunDependency(id) { + return id; +} + +function addRunDependency(id) { + runDependencies++; + + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + +} + +function removeRunDependency(id) { + runDependencies--; + + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback(); // can add another dependenciesFulfilled + } + } +} + +Module["preloadedImages"] = {}; // maps url to image data +Module["preloadedAudios"] = {}; // maps url to audio data + +/** @param {string|number=} what */ +function abort(what) { + if (Module['onAbort']) { + Module['onAbort'](what); + } + + what += ''; + out(what); + err(what); + + ABORT = true; + EXITSTATUS = 1; + + what = 'abort(' + what + '). Build with -s ASSERTIONS=1 for more info.'; + + // 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); +} + + +var memoryInitializer = null; + + + + + + + + + + + + +function hasPrefix(str, prefix) { + return String.prototype.startsWith ? + str.startsWith(prefix) : + str.indexOf(prefix) === 0; +} + +// 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. +function isDataURI(filename) { + return hasPrefix(filename, dataURIPrefix); +} + +var fileURIPrefix = "file://"; + +// Indicates whether filename is delivered via file protocol (as opposed to http/https) +function isFileURI(filename) { + return hasPrefix(filename, fileURIPrefix); +} + + + + +var wasmBinaryFile = 'data:application/octet-stream;base64,AGFzbQEAAAABrgEaYAF/AX9gAAF/YAN/f38Bf2ABfwBgAn9/AX9gBH9/f38Bf2ADf39/AGAFf39/f38Bf2ABfAF8YAAAYAR/f39/AGAFf39/f38AYAJ/fwBgA39+fwF+YAABfGAGf39/f39/AGAEf39/fgBgBn9/f39/fwF/YAR/fn9/AX9gAnx/AX9gBH9/fn8BfmADf39/AX1gB39/f39/f30BfWACfH8BfGACfHwBfGADfHx/AXwC5QEJA2Vudg1jbG9ja19nZXR0aW1lAAQWd2FzaV9zbmFwc2hvdF9wcmV2aWV3MQhmZF9jbG9zZQAAFndhc2lfc25hcHNob3RfcHJldmlldzEIZmRfd3JpdGUABQNlbnYWZW1zY3JpcHRlbl9yZXNpemVfaGVhcAAAA2VudhVlbXNjcmlwdGVuX21lbWNweV9iaWcAAgNlbnYLc2V0VGVtcFJldDAAAxZ3YXNpX3NuYXBzaG90X3ByZXZpZXcxB2ZkX3NlZWsABwNlbnYGbWVtb3J5AgGAAoCAAgNlbnYFdGFibGUBcAAEA0lIAQkGEQEEAAMPFQwJBwoMBgoLCxYGBgoQBQUODgEBAQEBCQQBAAANAgAYCAcTGQgIAAMEAAgXAgICAAIFAAMBAwAABAUUCwcSBhACfwFBgPjFAgt/AEHY9gULB8cDHBFfX3dhc21fY2FsbF9jdG9ycwAIEHJubm9pc2VfZ2V0X3NpemUACwxybm5vaXNlX2luaXQADA5ybm5vaXNlX2NyZWF0ZQANBm1hbGxvYwA3D3Jubm9pc2VfZGVzdHJveQAOBGZyZWUAOBVybm5vaXNlX3Byb2Nlc3NfZnJhbWUAEAxkZW5vaXNlX3Byb2MATBFybm5EZW5vaXNlX3Jhd21lbQAfFnJubkRlbm9pc2VfcmF3bWVtX3BlcmYAIBpnZXRfcm5uRGVub2lzZV9yYXdtZW1fdGltZQAiEGdldFJlc3VsdFBvaW50ZXIAIw1nZXRSZXN1bHRTaXplACQNZ2V0c2FtcGxlUmF0ZQAlC2dldGNoYW5uZWxzACYOZ2V0c2FtcGxlQ291bnQAJwpmcmVlQnVmZmVyACgEbWFpbgApEF9fZXJybm9fbG9jYXRpb24AKglzdGFja1NhdmUARQxzdGFja1Jlc3RvcmUARgpzdGFja0FsbG9jAEcKX19kYXRh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AAA07QDSAHcA/PRVAAFZTQDgcYAAQcPSBQs9QPsh+T8AAAAALUR0PgAAAICYRvg8AAAAYFHMeDsAAACAgxvwOQAAAEAgJXo4AAAAgCKC4zYAAAAAHfNpNQBBgNMFCwEFAEGM0wULAQEAQaTTBQsLAgAAAAMAAABoeQEAQbzTBQsBAgBBy9MFCwX//////wCACQRuYW1lAfgITwANY2xvY2tfZ2V0dGltZQEPX193YXNpX2ZkX2Nsb3NlAg9fX3dhc2lfZmRfd3JpdGUDFmVtc2NyaXB0ZW5fcmVzaXplX2hlYXAEFWVtc2NyaXB0ZW5fbWVtY3B5X2JpZwULc2V0VGVtcFJldDAGGmxlZ2FsaW1wb3J0JF9fd2FzaV9mZF9zZWVrBxdlbXNjcmlwdGVuX2dldF9zYnJrX3B0cggRX193YXNtX2NhbGxfY3RvcnMJCV9jZWx0X2xwYwoOX2NlbHRfYXV0b2NvcnILEHJubm9pc2VfZ2V0X3NpemUMDHJubm9pc2VfaW5pdA0Ocm5ub2lzZV9jcmVhdGUOD3Jubm9pc2VfZGVzdHJveQ8McGl0Y2hfZmlsdGVyEBVybm5vaXNlX3Byb2Nlc3NfZnJhbWURA2RjdBIKY2hlY2tfaW5pdBMXb3B1c19mZnRfYWxsb2NfdHdpZGRsZXMUFGNvbXB1dGVfYml0cmV2X3RhYmxlFQ1vcHVzX2ZmdF9pbXBsFgpvcHVzX2ZmdF9jFxBwaXRjaF9kb3duc2FtcGxlGBBjZWx0X3BpdGNoX3hjb3JyGQxwaXRjaF9zZWFyY2gaD3JlbW92ZV9kb3VibGluZxsNY29tcHV0ZV9kZW5zZRwLY29tcHV0ZV9ncnUdC2NvbXB1dGVfcm5uHgxkZW5vaXNlX3Byb2MfEXJubkRlbm9pc2VfcmF3bWVtIBZybm5EZW5vaXNlX3Jhd21lbV9wZXJmIQNub3ciGmdldF9ybm5EZW5vaXNlX3Jhd21lbV90aW1lIxBnZXRSZXN1bHRQb2ludGVyJA1nZXRSZXN1bHRTaXplJQ1nZXRzYW1wbGVSYXRlJgtnZXRjaGFubmVscycOZ2V0c2FtcGxlQ291bnQoCmZyZWVCdWZmZXIpBG1haW4qEF9fZXJybm9fbG9jYXRpb24rBWR1bW15LA1fX3N0ZGlvX2Nsb3NlLQxfX3N0ZGlvX3Nl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MiSf3QAAAN4AAAAEAO0CAJ8AAAAAAAAAAP////+oAwAAHQEAAB8BAAAEAO0CAZ8fAQAAPQEAAAQA7QAInwAAAAAAAAAA/////6gDAACuAQAAsgEAAAMAEQCfvQEAAL8BAAAEAO0CAJ8BAAAAAQAAAAQA7QAGn6YCAAC0AgAAAwARAJ8AAAAAAAAAAP////+oAwAAAQAAAAEAAAADABEAn2kCAABrAgAABADtAgCfawIAAHACAAAEAO0ACZ8AAAAAAAAAAP////+oAwAA2AEAANoBAAAGAO0CADIknwEAAAABAAAABgDtAAUyJJ/9AQAA/gEAAAQA7QIAnwAAAAAAAAAA/////6gDAAAsAgAALgIAAAQA7QIBny4CAABwAgAABADtAAufAAAAAAAAAAD/////qAMAAEMCAABQAgAABADtAgKfUAIAAHACAAAEAO0ADp8AAAAAAAAAAP////+oAwAAFQMAABkDAAADABEAnyQDAAAmAwAABADtAgCfAQAAAAEAAAAEAO0AAp8AAAAAAAAAAP////+oAwAAAQAAAAEAAAADABEAn7kDAAC7AwAABADtAgCfuwMAAMADAAAEAO0ACZ8AAAAAAAAAAP////+oAwAAPwMAAEEDAAAGAO0CADIknwEAAAABAAAABgDtAAUyJJ9kAwAAZQMAAAQA7QIAnwAAAAAAAAAA/////6gDAACgAwAAogMAAAQA7QIBn6IDAADAAwAABADtAAifAAAAAAAAAAD/////YggAAAEAAAABAAAAAgAwn60aAAC5GgAABADtAAWfAAAAAAAAAAD/////YggAAAEAAAABAAAABAAR4AOfAAAAAAAAAAD/////YggAAAEAAAABAAAAAwARAJ8MAAAADgAAAAQA7QIAnw4AAAAUAAAABADtAASfAAAAAAAAAAD/////YggAAAEAAAABAAAABADtAgGfAQAAAAEAAAAEAO0ACJ8AAAAAAAAAAP////9iCAAAAQAAAAEAAAAEAO0CAp8BAAAAAQAAAAQA7QAInwAAAAAAAAAA/////2IIAAABAAAAAQAAAAIAMJ8RCwAAGAsAAAIAMJ+XCwAAowsAAAQA7QAInwAAAAAAAAAA/////2IIAAABAAAAAQAAAAIAMJ9yEQAAfhEAAAQA7QAUnwAAAAAAAAAA/////2IIAAAkAAAAOAAAAAMAEQCfAAAAAAAAAAD/////YggAAG8AAABzAAAAAwARAJ+8AAAAvgAAAAQA7QIAn74AAADEAAAABADtAASfNQEAADcBAAAEAO0CAJ83AQAAPAEAAAQA7QACnwAAAAAAAAAA/////2IIAADHAAAA4QAAAAMAEQCfKAEAACoBAAAEAO0CAJ8qAQAALwEAAAQA7QAEnwAAAAAAAAAA/////2IIAACVAQAAlwEAAAQA7QIAn5cBAACdAQAABADtAAefAAAAAAAAAAD/////YggAALsBAAC/AQAAAwARAJ8IAgAACgIAAAQA7QIAnwoCAAAQAgAABADtAASfgQIAAIMCAAAEAO0CAJ+DAgAAiAIAAAQA7QAHnwAAAAAAAAAA/////2IIAAATAgAALQIAAAMAEQCfdAIAAHYCAAAEAO0CAJ92AgAAewIAAAQA7QAEnwAAAAAAAAAA/////2IIAADHAgAAyQIAAAQA7QIAn8kCAADPAgAABADtAASf5wIAAPsCAAADABEAnwAAAAAAAAAA/////2IIAAABAAAAAQAAAAMAEQCfFQMAABcDAAAEAO0CAJ8BAAAAAQAAAAQA7QAAnxUEAAAoBAAAAwARAJ8AAAAAAAAAAP////9iCAAAAQAAAAEAAAADABEAn9ADAADSAwAABADtAgCf0gMAANcDAAAEAO0ABJ8AAAAAAAAAAP////9iCAAAMAMAADIDAAAGAO0CADIknwEAAAABAAAABgDtABAyJJ9VAwAAVgMAAAQA7QIAnwAAAAAAAAAA/////2IIAACOAwAAkAMAAAQA7QIBn5ADAADXAwAABADtAAifAAAAAAAAAAD/////YggAAKoDAAC3AwAABADtAgKftwMAANcDAAAEAO0AC58AAAAAAAAAAP////9iCAAAlQQAAJYEAAAEAO0CAp+WBAAAmwQAAAQA7QIBn8wEAAD3BAAABADtAACfuwoAAL8KAAAEAO0CAZ8AAAAAAAAAAP////9iCAAAAQAAAAEAAAAEAO0ABZ8AAAAAAAAAAP////9iCAAA3gQAAPcEAAADABEAn2sKAABtCgAABADtAgCfbQoAAHIKAAAEAO0ABJ+CCgAAzwoAAAMAEQCfEQsAABgLAAADABEAn5wLAACeCwAABADtAgCfngsAAKMLAAAEAO0ABJ8BDAAAJAwAAAMAEQGfJAwAAC8MAAADABECny8MAAA6DAAAAwARA586DAAARQwAAAMAEQSfRQwAAFAMAAADABEFn1AMAABbDAAAAwARBp9bDAAAZgwAAAMAEQefZgwAAHEMAAADABEIn3EMAAB8DAAAAwARCZ98DAAAhwwAAAMAEQqfhwwAAJIMAAADABELn5IMAACdDAAAAwARDJ+dDAAAqAwAAAMAEQ2fqAwAALMMAAADABEOn7MMAAC+DAAAAwARD5++DAAAyQwAAAMAERCfyQwAANQMAAADABERn9QMAADfDAAAAwAREp/fDAAA6gwAAAMAEROf6gwAAPUMAAADABEUn/UMAAANDQAAAwARFZ8NDQAAaw0AAAMAEQCfaw0AAKYNAAADABEBn6YNAADhDQAAAwARAp/hDQAAHA4AAAMAEQOfHA4AAFcOAAADABEEn1cOAACSDgAAAwARBZ8BAAAAAQAAAAMAEQafdxEAAHkRAAAEAO0CAJ95EQAAfhEAAAQA7QAHnwAAAAAAAAAA/////2IIAAAfBQAAIwUAAAMAEQCfbAUAAG4FAAAEAO0CAJ9uBQAAdAUAAAQA7QAEn+UFAADnBQAABADtAgCf5wUAAOwFAAAEAO0AAp8AAAAAAAAAAP////9iCAAAdwUAAJEFAAADABEAn9gFAADaBQAABADtAgCf2gUAAN8FAAAEAO0ABJ8AAAAAAAAAAP////9iCAAARQYAAEcGAAAEAO0CAJ9HBgAATQYAAAQA7QAHnwAAAAAAAAAA/////2IIAABrBgAAbwYAAAMAEQCfuAYAALoGAAAEAO0CAJ+6BgAAwAYAAAQA7QAEnzEHAAAzBwAABADtAgCfMwcAADgHAAAEAO0AB58AAAAAAAAAAP////9iCAAAwwYAAN0GAAADABEAnyQHAAAmBwAABADtAgCfJgcAACsHAAAEAO0ABJ8AAAAAAAAAAP////9iCAAAdwcAAHkHAAAEAO0CAJ95BwAAfwcAAAQA7QAEn5sHAACuBwAAAwARAJ8AAAAAAAAAAP////9iCAAAvQcAAMEHAAADABEAn8wHAADOBwAABADtAgCfAQAAAAEAAAAEAO0AAJ/LCAAA3ggAAAMAEQCfAAAAAAAAAAD/////YggAAAEAAAABAAAAAwARAJ+GCAAAiAgAAAQA7QIAn4gIAACNCAAABADtAASfAAAAAAAAAAD/////YggAAOcHAADpBwAABgDtAgAyJJ8BAAAAAQAAAAYA7QAQMiSfDAgAAA0IAAAEAO0CAJ8AAAAAAAAAAP////9iCAAARQgAAEcIAAAEAO0CAZ9HCAAAjQgAAAQA7QAInwAAAAAAAAAA/////2IIAABgCAAAbQgAAAQA7QICn20IAACNCAAABADtAAufAAAAAAAAAAD/////YggAAPEIAAD1CAAAAwARAJ8ACQAAAgkAAAQA7QIAnwEAAAABAAAABADtAACfDQoAACAKAAADABEAnwAAAAAAAAAA/////2IIAAABAAAAAQAAAAMAEQCfyAkAAMoJAAAEAO0CAJ/KCQAAzwkAAAQA7QAEnwAAAAAAAAAA/////2IIAAAbCQAAHQkAAAYA7QIAMiSfAQAAAAEAAAAGAO0ABzIkn0AJAABBCQAABADtAgCfAAAAAAAAAAD/////YggAAHkJAAB7CQAABADtAgGfhQkAAM8JAAAEAO0ACJ8AAAAAAAAAAP////9iCAAAoQkAAK8JAAAEAO0CAp+vCQAAzwkAAAQA7QALnwAAAAAAAAAA/////2IIAAARCwAAGAsAAAcAEICAgIAMn4ILAACjCwAABADtAAafAAAAAAAAAAD/////YggAABELAAAYCwAABwAQgICAgAyfkAsAAKMLAAAEAO0ABZ8AAAAAAAAAAP////9iCAAAqA4AAK4PAAAHABCpv43DBZ9eEQAAahEAAAQA7QAFnwAAAAAAAAAA/////2IIAACoDgAArg8AAAMAEQCfYxEAAGURAAAEAO0CAJ9lEQAAahEAAAQA7QAAnwAAAAAAAAAA/////2IIAACwDwAA1A8AAAIAMJ/UDwAAUBEAAAQA7QICn1ARAABqEQAABADtAAafAAAAAAAAAAD/////YggAALAPAABqEQAAAwARFp8AAAAAAAAAAP////9iCAAAyQ8AAMsPAAAEAO0CAp/LDwAA4A8AAAQA7QAGn+APAADiDwAABADtAgOf4g8AAPIPAAAEAO0ABp/yDwAA9A8AAAQA7QIDn/QPAAAEEAAABADtAAafBBAAAAYQAAAEAO0CA58GEAAAFhAAAAQA7QAGnxYQAAAYEAAABADtAgOfGBAAACgQAAAEAO0ABp8oEAAAKhAAAAQA7QIDnyoQAAA6EAAABADtAAafOhAAADwQAAAEAO0CA588EAAATBAAAAQA7QAGn0wQAABOEAAABADtAgOfThAAAF4QAAAEAO0ABp9eEAAAYBAAAAQA7QIDn2AQAABwEAAABADtAAafcBAAAHIQAAAEAO0CA59yEAAAghAAAAQA7QAGn4IQAACEEAAABADtAgOfhBAAAJQQAAAEAO0ABp+UEAAAlhAAAAQA7QIDn5YQAACmEAAABADtAAafphAAAKgQAAAEAO0CA5+oEAAAuBAAAAQA7QAGn7gQAAC6EAAABADtAgOfuhAAAMoQAAAEAO0ABp/KEAAAzBAAAAQA7QIDn8wQAADcEAAABADtAAaf3BAAAN4QAAAEAO0CA5/eEAAA7hAAAAQA7QAGn+4QAADwEAAABADtAgOf8BAAAAARAAAEAO0ABp8AEQAAAhEAAAQA7QIDnwIRAAASEQAABADtAAafEhEAABQRAAAEAO0CA58UEQAAJBEAAAQA7QAGnyQRAAAmEQAABADtAgOfJhEAADYRAAAEAO0ABp82EQAAOBEAAAQA7QIDnzgRAABIEQAABADtAAafSBEAAEoRAAAEAO0CA59KEQAAahEAAAQA7QAGnwAAAAAAAAAA/////2IIAADcEQAADBIAAAMAEQCfDBIAAD8SAAADABEBnz8SAAByEgAAAwARAp9yEgAApRIAAAMAEQOfpRIAANgSAAADABEEn9gSAAALEwAAAwARBZ8LEwAAPhMAAAMAEQafPhMAAHETAAADABEHn3ETAACkEwAAAwARCJ+kEwAA1xMAAAMAEQmf1xMAAAoUAAADABEKnwoUAAA9FAAAAwARC589FAAAcBQAAAMAEQyfcBQAAKMUAAADABENn6MUAADWFAAAAwARDp/WFAAACRUAAAMAEQ+fCRUAADwVAAADABEQnzwVAABvFQAAAwAREZ9vFQAAohUAAAMAERKfohUAANUVAAADABETn9UVAAAIFgAAAwARFJ8IFgAAPxYAAAMAERWfPxYAAFAWAAADABEWn0YXAABIFwAABADtAgCfSBcAAE4XAAAEAO0ABJ8AAAAAAAAAAP////9iCAAATBYAAFAWAAADABEAn1sWAABdFgAABADtAgCfAQAAAAEAAAAEAO0ADp8AAAAAAAAAAP////9iCAAAAQAAAAEAAAADABEAn/UWAAD3FgAABADtAgCf9xYAAPwWAAAEAO0ABJ8AAAAAAAAAAP////9iCAAAdhYAAHgWAAAGAO0CADIknwEAAAABAAAABgDtABAyJJ+bFgAAnBYAAAQA7QIAnwAAAAAAAAAA/////2IIAADcFgAA3hYAAAQA7QIBn94WAAD8FgAABADtAAWfAAAAAAAAAAD/////YggAALsXAAC9FwAABADtAgCfvRcAAMMXAAAEAO0ABJ84GAAAOhgAAAQA7QIAnzoYAAA/GAAABADtAAefAAAAAAAAAAD/////YggAAMoXAADkFwAAAwARAJ8rGAAALRgAAAQA7QIAny0YAAAyGAAABADtAASfAAAAAAAAAAD/////YggAAEoYAABjGAAAAwARAJ+cGAAAnhgAAAQA7QIAn54YAACkGAAABADtAASfzxgAANMYAAADABEBnwMZAAAFGQAABADtAgCfBRkAAAsZAAAEAO0ABJ8AAAAAAAAAAP////9iCAAAMhkAADYZAAADABEAn38ZAACBGQAABADtAgCfgRkAAIcZAAAEAO0ABJ/4GQAA+hkAAAQA7QIAn/oZAAD/GQAABADtAAKfAAAAAAAAAAD/////YggAAIoZAACkGQAAAwARAJ/rGQAA7RkAAAQA7QIAn+0ZAADyGQAABADtAASfAAAAAAAAAAD/////YggAAFQaAABWGgAABADtAgCfVhoAAFwaAAAEAO0AB58AAAAAAAAAAP////9iCAAAjxoAAJEaAAAEAO0CAJ+RGgAAlxoAAAQA7QAEnwAAAAAAAAAA/////zAlAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAKfAAAAAAAAAAD/////MCUAAAEAAAABAAAAAgAwnwEAAAABAAAABADtAgGfAAAAAAAAAAD/////DycAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0AAJ8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAKfAAAAAAAAAAD/////DycAAAEAAAABAAAAAwARAJ8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAACfAAAAAAAAAAD/////MCgAAAEAAAABAAAAAgAwnwEAAAABAAAABADtAAWfAAAAAAAAAAD/////MCgAAAEAAAABAAAAAwAQOJ8AAAAAAAAAAP////8wKAAANwAAADkAAAAEAO0CAZ8BAAAAAQAAAAQA7QABnwAAAAAAAAAA/////zAoAAA3AAAAOQAAAAQA7QIBnwEAAAABAAAABADtAAGfAAAAAAAAAAD/////MCgAAAEAAAABAAAAAwARAJ97AAAAfQAAAAQA7QIAn30AAACCAAAABADtAAKfAAAAAAAAAAD/////MCgAAFQAAACCAAAACwAQmNqQorW/yIRAnwAAAAAAAAAA/////zAoAABkAAAAZgAAAAQA7QIBn2YAAACCAAAABADtAAefAAAAAAAAAAD/////MCgAAIwAAACYAAAABADtAAifAAAAAAAAAAD/////MCgAALsBAAC9AQAABADtAgGfvQEAANIBAAAEAO0AAZ8AAAAAAAAAAP////8wKAAAkAAAAJgAAAADABEEn70AAADDAAAAAwARA5/lAAAA5wAAAAQA7QIBn+cAAADqAAAABADtAAGfAAAAAAAAAAD/////MCgAAJAAAACYAAAAAwARAJ8BAAAAAQAAAAQA7QAJnzQBAAA7AQAABADtAAKfAAAAAAAAAAD/////MCgAAAEAAAABAAAAAwARAJ+CAQAAhAEAAAQA7QIAn4QBAACJAQAABADtAAKfzAEAAM4BAAAEAO0CAJ8AAAAAAAAAAP////8wKAAAYQEAAIkBAAAPAO0ACxIQDyUwIB4QECQhnwAAAAAAAAAA/////zAoAADcAQAA3gEAAAQA7QIBn94BAADmAQAABADtAAKfAAAAAAAAAAD/////9iwAAAEAAAABAAAAAwARAZ8AAAAAAAAAAP/////2LAAAAQAAAAEAAAAEAO0AAZ8BAAAAAQAAAAQA7QABnwAAAAAAAAAA//////YsAAABAAAAAQAAAAQA7QAAnwAAAAAAAAAA//////YsAAABAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QADnwAAAAAAAAAA//////YsAAABAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QADnwAAAAAAAAAA/////4wtAAABAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAZ8BAAAAAQAAAAQA7QACnwAAAAAAAAAA/////4wtAAABAAAAAQAAAA8A7QAJEhAPJTAgHhAQJCGfAQAAAAEAAAAEAO0AC58BAAAAAQAAAAQA7QANnwAAAAAAAAAA/////4wtAAABAAAAAQAAAAQA7QAKnwAAAAAAAAAA/////4wtAAAB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E5+TBO0AFZ+TBJMM7QAkn5MEkwTtACmfkwRJBQAASwUAACQA7QATn5ME7QAVn5MEkwztACSfkwSTBO0AKZ+TBJMk7QICn5MESwUAAHIFAAAkAO0AE5+TBO0AFZ+TBJMM7QAkn5MEkwTtACmfkwSTJO0AFp+TBHIFAAB0BQAALADtABOfkwTtABWfkwSTBO0CA5+TBJME7QAkn5MEkwTtACmfkwSTJO0AFp+TBHQFAACbBQAALADtABOfkwTtABWfkwSTBO0ALp+TBJME7QAkn5MEkwTtACmfkwSTJO0AFp+TBJsFAACdBQAANADtABOfkwTtABWfkwSTBO0ALp+TBJME7QAkn5MEkwTtACmfkwSTBO0CBJ+TBJMc7QAWn5MEnQUAAJ4FAAA0AO0AE5+TBO0AFZ+TBJME7QAun5MEkwTtACSfkwSTBO0AKZ+TBJME7QAzn5MEkxztABafkwSeBQAAoAUAADwA7QATn5ME7QAVn5MEkwTtAC6fkwSTBO0AJJ+TBJME7QApn5MEkwTtADOfkwSTFO0CA5+TBJME7QAWn5MEoAUAALQFAAA8AO0AE5+TBO0AFZ+TBJME7QAun5MEkwTtACSfkwSTBO0AKZ+TBJME7QAzn5MEkxTtABefkwSTBO0AFp+TBLQFAAC2BQAAQADtABOfkwTtABWfkwSTBO0ALp+TBO0CAp+TBO0AJJ+TBJME7QApn5MEkwTtADOfkwSTFO0AF5+TBJME7QAWn5MEtgUAAMEFAABAAO0AE5+TBO0AFZ+TBJME7QAun5ME7QAin5ME7QAkn5MEkwTtACmfkwSTBO0AM5+TBJMU7QAXn5MEkwTtABafkwTBBQAAwwUAAEQA7QATn5ME7QAVn5MEkwTtAC6fkwTtACKfkwTtACSfkwTtAgOfkwTtACmfkwSTBO0AM5+TBJMU7QAXn5MEkwTtABafkwTDBQAAxAUAAEQA7QATn5ME7QAVn5MEkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwSTBO0AM5+TBJMU7QAXn5MEkwTtABafkwTEBQAAxgUAAEgA7QATn5ME7QAVn5MEkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwSTBO0AM5+TBJMU7QAXn5ME7QICn5ME7QAWn5MExgUAANEFAABIAO0AE5+TBO0AFZ+TBJME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5MEkwTtADOfkwSTFO0AF5+TBO0AGJ+TBO0AFp+TBNEFAADTBQAATADtABOfkwTtABWfkwTtAgOfkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwSTBO0AM5+TBJMU7QAXn5ME7QAYn5ME7QAWn5ME0wUAAN4FAABMAO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBJME7QAzn5MEkxTtABefkwTtABifkwTtABafkwTeBQAA4AUAAFAA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QIEn5ME7QAzn5MEkxTtABefkwTtABifkwTtABafkwTgBQAA4QUAAFAA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5MEkxTtABefkwTtABifkwTtABafkwThBQAA4wUAAFYA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5MEkxDtAgOfkwTtABefkwTtABifkwTtABafkwTjBQAA8QUAAFYA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5MEkxDtABmfkwTtABefkwTtABifkwTtABafkwTxBQAA8wUAAFwA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5MEkxDtABmfkwTtABefkwTtABifkwTtABafkwTtAgKfkwTzBQAA+wUAAFwA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5MEkxDtABmfkwTtABefkwTtABifkwTtABafkwTtACKfkwT7BQAA/QUAAGQA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5MEkxDtABmfkwTtABefkwTtABifkwTtABafkwTtACKfkwSTBO0CA5+TBP0FAAAPBgAAZADtABOfkwTtABWfkwTtACWfkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwTtACafkwTtADOfkwSTEO0AGZ+TBO0AF5+TBO0AGJ+TBO0AFp+TBO0AIp+TBJME7QAjn5MEDwYAABEGAABsAO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBJME7QICn5MEkwjtABmfkwTtABefkwTtABifkwTtABafkwTtACKfkwSTBO0AI5+TBBEGAAAlBgAAbADtABOfkwTtABWfkwTtACWfkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwTtACafkwTtADOfkwSTBO0AJp+TBJMI7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5MEkwTtACOfkwQlBgAAJwYAAHAA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5ME7QIBn5ME7QAmn5MEkwjtABmfkwTtABefkwTtABifkwTtABafkwTtACKfkwSTBO0AI5+TBCcGAAAuBgAAcADtABOfkwTtABWfkwTtACWfkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwTtACafkwTtADOfkwTtACefkwTtACafkwSTCO0AGZ+TBO0AF5+TBO0AGJ+TBO0AFp+TBO0AIp+TBJME7QAjn5MELgYAADAGAAB0AO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBJMI7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QIDn5ME7QAjn5MEMAYAADgGAAB0AO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBJMI7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QAkn5ME7QAjn5MEOAYAADoGAAB6AO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBJMI7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QAkn5ME7QAjn5ME7QIEn5MEOgYAADwGAAB6AO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBJMI7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QAkn5ME7QAjn5ME7QAon5MEPAYAAD4GAACAAO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBO0CAp+TBJME7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QAkn5ME7QAjn5ME7QAon5MEPgYAAGMGAACAAO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBO0AKZ+TBJME7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QAkn5ME7QAjn5ME7QAon5MEYwYAAGUGAACIAO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBO0AKZ+TBJME7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QAkn5ME7QAjn5ME7QAon5MEkwztAgGfkwRlBgAAcwYAAIgA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5ME7QAnn5ME7QAmn5ME7QApn5MEkwTtABmfkwTtABefkwTtABifkwTtABafkwTtACKfkwTtACSfkwTtACOfkwTtACifkwSTDO0AIp+TBHMGAAB1BgAAkADtABOfkwTtABWfkwTtACWfkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwTtACafkwTtADOfkwTtACefkwTtACafkwTtACmfkwSTBO0AGZ+TBO0AF5+TBO0AGJ+TBO0AFp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKJ+TBJME7QICn5MEkwTtACKfkwR1BgAAhgYAAJAA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5ME7QAnn5ME7QAmn5ME7QApn5MEkwTtABmfkwTtABefkwTtABifkwTtABafkwTtACKfkwTtACSfkwTtACOfkwTtACifkwSTBO0AFZ+TBJME7QAin5MEhgYAAIgGAACUAO0AE5+TBO0AFZ+TBO0AJZ+TBO0ALp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKZ+TBO0AJp+TBO0AM5+TBO0AJ5+TBO0AJp+TBO0AKZ+TBJME7QAZn5ME7QAXn5ME7QAYn5ME7QAWn5ME7QAin5ME7QAkn5ME7QAjn5ME7QAon5MEkwTtABWfkwTtAgGfkwTtACKfkwSIBgAAlgYAAJQA7QATn5ME7QAVn5ME7QAln5ME7QAun5ME7QAin5ME7QAkn5ME7QAjn5ME7QApn5ME7QAmn5ME7QAzn5ME7QAnn5ME7QAmn5ME7QApn5MEkwTtABmfkwTtABefkwTtABifkwTtABafkwTtACKfkwTtACSfkwTtACOfkwTtACifkwSTBO0AFZ+TBO0AFp+TBO0AIp+TBJYGAACYBgAAmADtABOfkwTtABWfkwTtACWfkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwTtACafkwTtADOfkwTtACefkwTtACafkwTtACmfkwSTBO0AGZ+TBO0AF5+TBO0AGJ+TBO0AFp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKJ+TBO0CAp+TBO0AFZ+TBO0AFp+TBO0AIp+TBJgGAADfBgAAmADtABOfkwTtABWfkwTtACWfkwTtAC6fkwTtACKfkwTtACSfkwTtACOfkwTtACmfkwTtACafkwTtADOfkwTtACefkwTtACafkwTtACmfkwSTBO0AGZ+TBO0AF5+TBO0AGJ+TBO0AFp+TBO0AIp+TBO0AJJ+TBO0AI5+TBO0AKJ+TBO0AE5+TBO0AFZ+TBO0AFp+TBO0AIp+TBAAAAAAAAAAA/////203AAABAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAGnwAAAAAA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nwAAAAAAAAAA/////04+AAAhAQAAIwEAAAQA7QIBnyMBAAA3AQAABADtAA6fAAAAAAAAAAD/////Tj4AACkBAAArAQAABADtAgGfKwEAADcBAAAEAO0AFJ8AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0CAp8BAAAAAQAAAAQA7QAJnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QAInwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QAInwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QAInwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QAHnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QAMnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QAOnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtACGfAAAAAAAAAAD/////N0MAAAEAAAABAAAAAgAwnwEAAAABAAAABADtABGfAAAAAAAAAAD/////N0MAAAEAAAABAAAAAgAwnwEAAAABAAAABADtABCfAAAAAAAAAAD/////N0MAAAEAAAABAAAAAwARAJ8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAWfAAAAAAAAAAD/////N0MAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0AD58AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0CAZ8BAAAAAQAAAAQA7QASnwEAAAABAAAABADtAgKfAQAAAAEAAAAEAO0AGJ8BAAAAAQAAAAQA7QICnwEAAAABAAAABADtACKfAAAAAAAAAAD/////N0MAAAEAAAABAAAAAwARAZ8BAAAAAQAAAAQA7QIAnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAMAEQKfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QALnwEAAAABAAAAAwARAJ8BAAAAAQAAAAMAEQGfAQAAAAEAAAADABECnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QIBnwEAAAABAAAABADtABKfAAAAAAAAAAD/////N0MAAAEAAAABAAAABADtAgKfAQAAAAEAAAAEAO0AGJ8AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0CAp8BAAAAAQAAAAQA7QAYnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtABmfAAAAAAAAAAD/////N0MAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0AGZ8AAAAAAAAAAP////83QwAAAQAAAAEAAAACADCfAAAAAAAAAAD/////N0MAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0AHp8AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0AB58AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0AAZ8AAAAAAAAAAP////83QwAAAQAAAAEAAAACADCfAQAAAAEAAAAEAO0AE58AAAAAAAAAAP////83QwAAAQAAAAEAAAACADCfAQAAAAEAAAAEAO0AEp8AAAAAAAAAAP////83QwAAAQAAAAEAAAADABEAnwEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ABZ8AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAhnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QICnwEAAAABAAAABADtACKfAAAAAAAAAAD/////N0MAAAEAAAABAAAABADtABOfAAAAAAAAAAD/////N0MAAAEAAAABAAAABADtABKfAQAAAAEAAAAEAO0AEp8AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0CAJ8AAAAAAAAAAP////83QwAAAQAAAAEAAAAEAO0AB58BAAAAAQAAAAQA7QAHnwEAAAABAAAABADtAAefAAAAAAAAAAD/////N0MAAAEAAAABAAAABADtABKfLwAAADsAAAAEAO0AIZ9qAAAAdgAAAAQA7QATnwAAAAAAAAAA/////zdDAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAWfNAAAADYAAAAEAO0CAJ82AAAAOwAAAAQA7QAFn28AAABxAAAABADtAgCfcQAAAHYAAAAEAO0ABZ8AAAAAAAAAAP/////uRwAAAQAAAAEAAAADABEAnwEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ABp8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAifAQAAAAEAAAADABEAnwEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ABp8BAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAGnwEAAAABAAAAAwARAJ8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAafAAAAAAAAAAD/////7kcAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ABZ8AAAAAAAAAAP/////uRwAAAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QADnwAAAAAAAAAA/////+5HAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAOfAAAAAAAAAAD/////7kcAAAEAAAABAAAAAwARAJ8BAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAGnwAAAAAAAAAA/////+5HAAABAAAAAQAAAAQA7QIBnwEAAAABAAAABADtAAmfAQAAAAEAAAAEAO0ACZ8AAAAAAAAAAP/////uRwAAAQAAAAEAAAAEAO0CAZ8AAAAAAAAAAP/////uRwAAAQAAAAEAAAAHABCAgID8A58AAAAAAAAAAP/////uRwAAAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAKnwEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ACp8BAAAAAQAAAAQA7QIDnwEAAAABAAAABADtAAqfAAAAAAAAAAD/////7kcAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ACZ8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAmfAAAAAAAAAAD/////7kcAAAEAAAABAAAABADtAgOfAAAAAAAAAAD/////7kcAAAEAAAABAAAABwAQgICA/AOfAAAAAAAAAAD/////7kcAAAEAAAABAAAABADtAgCfAAAAAAAAAAD/////7kcAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ACp8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAqfAQAAAAEAAAAEAO0CA58BAAAAAQAAAAQA7QAKnwAAAAAAAAAA/////+5HAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAmfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAJnwAAAAAAAAAA/////+5HAAABAAAAAQAAAAQA7QIDnwAAAAAAAAAA//////9KAAABAAAA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AAAAAAAA/////49VAAABAAAAAQAAAAQA7QIBnwEAAAABAAAABADtAAyfAAAAAAAAAAD/////j1UAAAEAAAABAAAABADtAgCfAAAAAAAAAAD/////j1UAAAEAAAABAAAAAwARAJ8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtABifAAAAAAAAAAD/////j1UAAAEAAAABAAAABADtABufAAAAAAAAAAD/////j1UAAAEAAAABAAAABQARgPcCnwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QAGnwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QAZnwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QIBnwEAAAABAAAABADtABqfAQAAAAEAAAAEAO0CAZ8BAAAAAQAAAAQA7QAanwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAyfAQAAAAEAAAAEAO0AA58AAAAAAAAAAP////+PVQAAAQAAAAEAAAACADCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAInwEAAAABAAAAAgAwnwAAAAAAAAAA/////49VAAABAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAGnwAAAAAAAAAA/////49VAAABAAAAAQAAAAMAEQCfAQAAAAEAAAAEAO0CAJ8BAAAAAQAAAAQA7QAInwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAifAAAAAAAAAAD/////j1UAAAEAAAABAAAABADtAAafAAAAAAAAAAD/////j1UAAAEAAAABAAAABQARgPcCnwEAAAABAAAABQARgPcCnwAAAAAAAAAA/////49VAAABAAAAAQAAAAQAEOADnwEAAAABAAAABAAQ4AOfAAAAAAAAAAD/////j1UAAAEAAAABAAAABADtABufAAAAAAAAAAD/////j1UAAAEAAAABAAAABADtAgGfAQAAAAEAAAAEAO0AGp8BAAAAAQAAAAQA7QIBnwEAAAABAAAABADtAAifAAAAAAAAAAD/////j1UAAAEAAAABAAAABADtAgCfAQAAAAEAAAAEAO0ADJ8BAAAAAQAAAAQA7QADnwAAAAAAAAAA/////49VAAABAAAAAQAAAAIAMJ8BAAAAAQAAAAQA7QIAnwEAAAABAAAABADtAAifAQAAAAEAAAACADCfAAAAAAAAAAD/////j1UAACgAAAA1AAAABADtAAqfAAAAAAAAAAD/////j1UAAAEAAAABAAAABQARgPcCnwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QIAnwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QAanwAAAAAAAAAA/////49VAAABAAAAAQAAAAQA7QAMnwAAAAAAAAAA/////49VAAABAAAAAQAAAAIAMJ8MAAAADgAAAAQA7QIAnw4AAAAXAAAABADtAAufFwAAADUAAAAEAO0AA58AAAAAAAAAAP////+PVQAAAQAAAAEAAAACADCfAQAAAAEAAAAEAO0CAZ8BAAAAAQAAAAQA7QAEny8AAAAxAAAABADtAgGfMQAAADUAAAAEAO0ABJ8AAAAAAAAAAP////+PVQAAAQAAAAEAAAAHABCAgICAEJ8AAAAAAAAAAP////+PVQAAAQAAAAEAAAALABCAgICAgICA+D2fAAAAAAAAAAD/////j1UAAAEAAAABAAAABADtAgCfAAAAAAAAAAD/////j1UAAAEAAAABAAAAAgAwnwEAAAABAAAAAgAwnwEAAAABAAAABADtAgCfAQAAAAYAAAAEAO0ACJ8AAAAAAAAAAP////+PVQAAAQAAAAEAAAADABEAn7QAAAC2AAAABADtAgCftgAAALsAAAAEAO0ABp8AAAAAAAAAAP////+PVQAAPQAAAEEAAAADABEAn2QAAABmAAAABADtAgCfZgAAAGwAAAAEAO0ACJ8AAAAAAAAAAP////+PVQAApgAAAKgAAAAEAO0CAJ+oAAAArgAAAAQA7QAInwAAAAAAAAAA/////49VAACfAQAAqwEAAAQA7QAAnwAAAAAAAAAA/////49VAAC9AAAA0QAAAAUAEYD3Ap8AAAAAAAAAAP////+PVQAAzAAAANEAAAAEAO0ADJ8AAAAAAAAAAP////+PVQAAzQEAANoBAAAEAO0ACZ8AAAAAAAAAAP////+PVQAAAQAAAAEAAAACADCfsQEAALMBAAAEAO0CAJ+zAQAAvAEAAAQA7QALn7wBAADaAQAABADtAAOfAAAAAAAAAAD/////j1UAAAEAAAABAAAA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SVpFX1RZUEVfXwBvcmQAX192bGFfZXhwcjAAdW5zaWduZWQgaW50AHJudW0ATgB5AG51bQB4AGxlbgB5XzAAeV8zAHlfMQB5XzIAdG1wAHJkZW4AX192bGFfZXhwcjEAbWVtAF95AGRlbgBfeABuAGxhZwBmYXN0TgB4eABvdmVybGFwAHdpbmRvdwB4cHRyAHNoaWZ0AGsAZABjbGFuZyB2ZXJzaW9uIDExLjAuMCAoL2Ivcy93L2lyL2NhY2hlL2dpdC9jaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tLWV4dGVybmFsLWdpdGh1Yi5jb20tbGx2bS1sbHZtLS1wcm9qZWN0IDYxM2M0YTg3YmE5YmIzOWQxOTI3NDAyZjRkZDRjMWVmMWY5YTAyZjcpAC4uL3NyYy9kZW5vaXNlLmMAL2hvbWUvcGFyYWxsZWxzL3hpcGgvcm5ub2lzZS93YXNtAGFfaHAAZmxvYXQAX19BUlJBWV9TSVpFX1RZUEVfXwBiX2hwAGNvbW1vbgBpbml0AGludABrZmZ0AG5mZnQAc2NhbGUAb3B1c192YWwxNgBzaGlmdABmYWN0b3JzAHNob3J0AGludDE2X3QAb3B1c19pbnQxNgBiaXRyZXYAdHdpZGRsZXMAcgBpAGtpc3NfdHdpZGRsZV9jcHgAYXJjaF9mZnQAaXNfc3VwcG9ydGVkAHByaXYAYXJjaF9mZnRfc3RhdGUAa2lzc19mZnRfc3RhdGUAaGFsZl93aW5kb3cAZGN0X3RhYmxlAENvbW1vblN0YXRlAGViYW5kNW1zAGRvdWJsZQBybm5vaXNlX2luaXQAc3QAYW5hbHlzaXNfbWVtAGNlcHN0cmFsX21lbQBtZW1pZABzeW50aGVzaXNfbWVtAHBpdGNoX2J1ZgBwaXRjaF9lbmhfYnVmAGxhc3RfZ2FpbgBsYXN0X3BlcmlvZABtZW1faHBfeABsYXN0ZwBybm4AbW9kZWwAaW5wdXRfZGVuc2Vfc2l6ZQBpbnB1dF9kZW5zZQBiaWFzAHNpZ25lZCBjaGFyAHJubl93ZWlnaHQAaW5wdXRfd2VpZ2h0cwBuYl9pbnB1dHMAbmJfbmV1cm9ucwBhY3RpdmF0aW9uAERlbnNlTGF5ZXIAdmFkX2dydV9zaXplAHZhZF9ncnUAcmVjdXJyZW50X3dlaWdodHMAR1JVTGF5ZXIAbm9pc2VfZ3J1X3NpemUAbm9pc2VfZ3J1AGRlbm9pc2VfZ3J1X3NpemUAZGVub2lzZV9ncnUAZGVub2lzZV9vdXRwdXRfc2l6ZQBkZW5vaXNlX291dHB1dAB2YWRfb3V0cHV0X3NpemUAdmFkX291dHB1dABSTk5Nb2RlbAB2YWRfZ3J1X3N0YXRlAG5vaXNlX2dydV9zdGF0ZQBkZW5vaXNlX2dydV9zdGF0ZQBSTk5TdGF0ZQBEZW5vaXNlU3RhdGUAZnJlZQBpbnRlcnBfYmFuZF9nYWluAGcAYmFuZEUAagBiYW5kX3NpemUAZnJhYwBjb21wdXRlX2JhbmRfZW5lcmd5AFgAa2lzc19mZnRfY3B4AHN1bQB0bXAAYmlxdWFkAHkAbWVtAHgAYgBhAE4AeGkAeWkAZnJhbWVfYW5hbHlzaXMARXgAaW4AY29tcHV0ZV9mcmFtZV9mZWF0dXJlcwBQAEVwAEV4cABmZWF0dXJlcwBMeQBwAHByZQBFAHNwZWNfdmFyaWFiaWxpdHkAcGl0Y2hfaW5kZXgAZ2FpbgBsb2dNYXgAZm9sbG93AGNlcHNfMgBjZXBzXzAAY2Vwc18xAG1pbmRpc3QAZGlzdABrAGNoZWNrX2luaXQAYXBwbHlfd2luZG93AGZvcndhcmRfdHJhbnNmb3JtAG91dABjb21wdXRlX2JhbmRfY29ycgBpbnZlcnNlX3RyYW5zZm9ybQBmcmFtZV9zeW50aGVzaXMAb3B1c19mZnRfYwBwaXRjaF9kb3duc2FtcGxlAHBpdGNoX3NlYXJjaABjb21wdXRlX3JubgBybm5vaXNlX2dldF9zaXplAHJubm9pc2VfY3JlYXRlAHJubm9pc2VfZGVzdHJveQBwaXRjaF9maWx0ZXIAcm5ub2lzZV9wcm9jZXNzX2ZyYW1lAGRjdAByZgBuZXdFAG5vcm0Abm9ybWYAZ2YAdmFkX3Byb2IAc2lsZW5jZQBhbHBoYQBjbGFuZyB2ZXJzaW9uIDExLjAuMCAoL2Ivcy93L2lyL2NhY2hlL2dpdC9jaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tLWV4dGVybmFsLWdpdGh1Yi5jb20tbGx2bS1sbHZtLS1wcm9qZWN0IDYxM2M0YTg3YmE5YmIzOWQxOTI3NDAyZjRkZDRjMWVmMWY5YTAyZjcpAC4uL3NyYy9raXNzX2ZmdC5jAC9ob21lL3BhcmFsbGVscy94aXBoL3Jubm9pc2Uvd2FzbQBuZmZ0AGludABzY2FsZQBmbG9hdABvcHVzX3ZhbDE2AHNoaWZ0AGZhY3RvcnMAc2hvcnQAaW50MTZfdABvcHVzX2ludDE2AF9fQVJSQVlfU0laRV9UWVBFX18AYml0cmV2AHR3aWRkbGVzAHIAaQBraXNzX3R3aWRkbGVfY3B4AGFyY2hfZmZ0AGlzX3N1cHBvcnRlZABwcml2AGFyY2hfZmZ0X3N0YXRlAGtpc3NfZmZ0X3N0YXRlAGludDMyX3QAb3B1c19pbnQzMgBjb21wdXRlX3R3aWRkbGVzAHBpAGRvdWJsZQBwaGFzZQBrZl9mYWN0b3IAbgBmYWNidWYAcABzdGFnZXMAbmJhawB0bXAAb3B1c19mZnRfZnJlZQBjZmcAYXJjaABmcmVlAGtmX2JmbHkyAEZvdXQAa2lzc19mZnRfY3B4AG0ATgBGb3V0MgB0dwB0AGtmX2JmbHk0AGZzdHJpZGUAbG9uZyB1bnNpZ25lZCBpbnQAc2l6ZV90AHN0AG1tAHNjcmF0Y2gxAHNjcmF0Y2gwAG0zAG0yAEZvdXRfYmVnAHR3MQB0dzIAdHczAGoAc2NyYXRjaABrZl9iZmx5MwBlcGkzAGsAa2ZfYmZseTUAeWIAeWEARm91dDAARm91dDQAdQBGb3V0MQBGb3V0MwBvcHVzX2ZmdF9hbGxvY19hcmNoX2MAb3B1c19mZnRfYWxsb2NfdHdpZGRsZXMAY29tcHV0ZV9iaXRyZXZfdGFibGUAb3B1c19mZnRfYWxsb2MAb3B1c19mZnRfZnJlZV9hcmNoX2MAb3B1c19mZnRfaW1wbABvcHVzX2ZmdF9jAG9wdXNfaWZmdF9jAGJhc2UAbGVubWVtAG1lbQBtZW1uZWVkZWQAZmFpbABpbl9zdHJpZGUAZgBmb3V0AEwAZmluAHgAY2xhbmcgdmVyc2lvbiAxMS4wLjAgKC9iL3Mvdy9pci9jYWNoZS9naXQvY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS1leHRlcm5hbC1naXRodWIuY29tLWxsdm0tbGx2bS0tcHJvamVjdCA2MTNjNGE4N2JhOWJiMzlkMTkyNzQwMmY0ZGQ0YzFlZjFmOWEwMmY3KQAuLi9zcmMvcGl0Y2guYwAvaG9tZS9wYXJhbGxlbHMveGlwaC9ybm5vaXNlL3dhc20Ac2Vjb25kX2NoZWNrAGludABfX0FSUkFZX1NJWkVfVFlQRV9fAGZsb2F0AG9wdXNfdmFsMzIAY2VsdF9maXI1AHgAb3B1c192YWwxNgBudW0AeQBOAG1lbQBudW00AG51bTAAbnVtMQBudW0yAG51bTMAbWVtNABpAG1lbTMAbWVtMgBtZW0xAG1lbTAAc3VtAF9jZWx0X2xwYwB4Y29ycl9rZXJuZWwAbGVuAHlfMwB5XzIAeV8xAHlfMABqAHRtcABjZWx0X2lubmVyX3Byb2QAeHkAZmluZF9iZXN0X3BpdGNoAHhjb3JyAG1heF9waXRjaABiZXN0X3BpdGNoAGJlc3RfbnVtAGJlc3RfZGVuAFN5eQB4Y29ycjE2AGR1YWxfaW5uZXJfcHJvZAB5MDEAeTAyAHh5MQB4eTIAeHkwMQB4eTAyAGNvbXB1dGVfcGl0Y2hfZ2FpbgB4eAB5eQBwaXRjaF9kb3duc2FtcGxlAGNlbHRfcGl0Y2hfeGNvcnIAcGl0Y2hfc2VhcmNoAHJlbW92ZV9kb3VibGluZwBhYwBscGMAYzEAY2VsdF9zaWcAQwB4X2xwAGxwYzIAX3kAX3gAeF9scDQAX192bGFfZXhwcjEAdW5zaWduZWQgaW50AGxhZwB5X2xwNABfX3ZsYV9leHByMABfX3ZsYV9leHByMgBwaXRjaABjAGEAYgBvZmZzZXQAbWF4cGVyaW9kAFQwXwBUMABUAHByZXZfcGVyaW9kAG1pbnBlcmlvZABtaW5wZXJpb2QwAHl5X2xvb2t1cABwcmV2X2dhaW4AawBiZXN0X3h5AGJlc3RfeXkAZwBnMABjb250AFQxAFQxYgBnMQB0aHJlc2gAcGcAY2xhbmcgdmVyc2lvbiAxMS4wLjAgKC9iL3Mvdy9pci9jYWNoZS9naXQvY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS1leHRlcm5hbC1naXRodWIuY29tLWxsdm0tbGx2bS0tcHJvamVjdCA2MTNjNGE4N2JhOWJiMzlkMTkyNzQwMmY0ZGQ0YzFlZjFmOWEwMmY3KQAuLi9zcmMvcm5uLmMAL2hvbWUvcGFyYWxsZWxzL3hpcGgvcm5ub2lzZS93YXNtAHRhbnNpZ190YWJsZQBmbG9hdABfX0FSUkFZX1NJWkVfVFlQRV9fAGludAByZWx1AHgAdGFuc2lnX2FwcHJveABzaWduAGkAeQBkeQBzaWdtb2lkX2FwcHJveABjb21wdXRlX2RlbnNlAGNvbXB1dGVfZ3J1AGNvbXB1dGVfcm5uAGxheWVyAGJpYXMAc2lnbmVkIGNoYXIAcm5uX3dlaWdodABpbnB1dF93ZWlnaHRzAG5iX2lucHV0cwBuYl9uZXVyb25zAGFjdGl2YXRpb24ARGVuc2VMYXllcgBNAGlucHV0AG91dHB1dABzdHJpZGUATgBqAHN1bQB6AHIAaABncnUAcmVjdXJyZW50X3dlaWdodHMAR1JVTGF5ZXIAc3RhdGUAZGVuc2Vfb3V0AG5vaXNlX2lucHV0AGRlbm9pc2VfaW5wdXQAcm5uAG1vZGVsAGlucHV0X2RlbnNlX3NpemUAaW5wdXRfZGVuc2UAdmFkX2dydV9zaXplAHZhZF9ncnUAbm9pc2VfZ3J1X3NpemUAbm9pc2VfZ3J1AGRlbm9pc2VfZ3J1X3NpemUAZGVub2lzZV9ncnUAZGVub2lzZV9vdXRwdXRfc2l6ZQBkZW5vaXNlX291dHB1dAB2YWRfb3V0cHV0X3NpemUAdmFkX291dHB1dABSTk5Nb2RlbAB2YWRfZ3J1X3N0YXRlAG5vaXNlX2dydV9zdGF0ZQBkZW5vaXNlX2dydV9zdGF0ZQBSTk5TdGF0ZQB2YWQAZ2FpbnMAY2xhbmcgdmVyc2lvbiAxMS4wLjAgKC9iL3Mvdy9pci9jYWNoZS9naXQvY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS1leHRlcm5hbC1naXRodWIuY29tLWxsdm0tbGx2bS0tcHJvamVjdCA2MTNjNGE4N2JhOWJiMzlkMTkyNzQwMmY0ZGQ0YzFlZjFmOWEwMmY3KQAuLi9zcmMvcm5uX2RhdGEuYwAvaG9tZS9wYXJhbGxlbHMveGlwaC9ybm5vaXNlL3dhc20Acm5ub2lzZV9tb2RlbF9vcmlnAGlucHV0X2RlbnNlX3NpemUAaW50AGlucHV0X2RlbnNlAGJpYXMAc2lnbmVkIGNoYXIAcm5uX3dlaWdodABpbnB1dF93ZWlnaHRzAG5iX2lucHV0cwBuYl9uZXVyb25zAGFjdGl2YXRpb24ARGVuc2VMYXllcgB2YWRfZ3J1X3NpemUAdmFkX2dydQByZWN1cnJlbnRfd2VpZ2h0cwBHUlVMYXllcgBub2lzZV9ncnVfc2l6ZQBub2lzZV9ncnUAZGVub2lzZV9ncnVfc2l6ZQBkZW5vaXNlX2dydQBkZW5vaXNlX291dHB1dF9zaXplAGRlbm9pc2Vfb3V0cHV0AHZhZF9vdXRwdXRfc2l6ZQB2YWRfb3V0cHV0AFJOTk1vZGVsAGlucHV0X2RlbnNlX2JpYXMAX19BUlJBWV9TSVpFX1RZUEVfXwBpbnB1dF9kZW5zZV93ZWlnaHRzAHZhZF9ncnVfYmlhcwB2YWRfZ3J1X3dlaWdodHMAdmFkX2dydV9yZWN1cnJlbnRfd2VpZ2h0cwBub2lzZV9ncnVfYmlhcwBub2lzZV9ncnVfd2VpZ2h0cwBub2lzZV9ncnVfcmVjdXJyZW50X3dlaWdodHMAZGVub2lzZV9ncnVfYmlhcwBkZW5vaXNlX2dydV93ZWlnaHRzAGRlbm9pc2VfZ3J1X3JlY3VycmVudF93ZWlnaHRzAGRlbm9pc2Vfb3V0cHV0X2JpYXMAZGVub2lzZV9vdXRwdXRfd2VpZ2h0cwB2YWRfb3V0cHV0X2JpYXMAdmFkX291dHB1dF93ZWlnaHRzAGNsYW5nIHZlcnNpb24gMTEuMC4wICgvYi9zL3cvaXIvY2FjaGUvZ2l0L2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20tZXh0ZXJuYWwtZ2l0aHViLmNvbS1sbHZtLWxsdm0tLXByb2plY3QgNjEzYzRhODdiYTliYjM5ZDE5Mjc0MDJmNGRkNGMxZWYxZjlhMDJmNykALi4vc3JjL3Jubl9yZWFkZXIuYwAvaG9tZS9wYXJhbGxlbHMveGlwaC9ybm5vaXNlL3dhc20AZnJlZQBybm5vaXNlX21vZGVsX2Zyb21fZmlsZQBpbnB1dF9kZW5zZV9zaXplAGludABpbnB1dF9kZW5zZQBiaWFzAHNpZ25lZCBjaGFyAHJubl93ZWlnaHQAaW5wdXRfd2VpZ2h0cwBuYl9pbnB1dHMAbmJfbmV1cm9ucwBhY3RpdmF0aW9uAERlbnNlTGF5ZXIAdmFkX2dydV9zaXplAHZhZF9ncnUAcmVjdXJyZW50X3dlaWdodHMAR1JVTGF5ZXIAbm9pc2VfZ3J1X3NpemUAbm9pc2VfZ3J1AGRlbm9pc2VfZ3J1X3NpemUAZGVub2lzZV9ncnUAZGVub2lzZV9vdXRwdXRfc2l6ZQBkZW5vaXNlX291dHB1dAB2YWRfb3V0cHV0X3NpemUAdmFkX291dHB1dABSTk5Nb2RlbABybm5vaXNlX21vZGVsX2ZyZWUAaW4AZgBfSU9fRklMRQBGSUxFAHJldAB2YWx1ZXMAaQBtb2RlbABjbGFuZyB2ZXJzaW9uIDExLjAuMCAoL2Ivcy93L2lyL2NhY2hlL2dpdC9jaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tLWV4dGVybmFsLWdpdGh1Yi5jb20tbGx2bS1sbHZtLS1wcm9qZWN0IDYxM2M0YTg3YmE5YmIzOWQxOTI3NDAyZjRkZDRjMWVmMWY5YTAyZjcpAC4uL2V4YW1wbGVzL3Jubm9pc2VfZGVtby5jAC9ob21lL3BhcmFsbGVscy94aXBoL3Jubm9pc2Uvd2FzbQBzYW1wbGVSYXRlAHVuc2lnbmVkIGludAB1aW50MzJfdABjaGFubmVscwBzYW1wbGVDb3VudABsb25nIGxvbmcgdW5zaWduZWQgaW50AHVpbnQ2NF90AHRpbWVfaW50ZXJ2YWwAZG91YmxlAHJlc3VsdABpbnQAX19BUlJBWV9TSVpFX1RZUEVfXwByZXN1bHRfYnVmZmVyAGZsb2F0AGVwb2NoAGV2ZXIAUmVzYW1wbGVfZjMyAGlucHV0AG91dHB1dABpblNhbXBsZVJhdGUAb3V0U2FtcGxlUmF0ZQBpbnB1dFNpemUAb3V0cHV0U2l6ZQBjdXJPZmZzZXQAZml4ZWRGcmFjdGlvbgBub3JtRml4ZWQAc3RlcERpc3QAc3RlcABpAGMAcm5ub2lzZV9kZXN0cm95AERlbm9pc2VTdGF0ZQBmcmVlAGNhbGNFbGFwc2VkAHN0YXJ0AGVuZAB0b29rAG5hbm90aW1lcgB0AHR2X3NlYwBsb25nIGludAB0aW1lX3QAdHZfbnNlYwB0aW1lc3BlYwBwcmludABkZW5vaXNlX3Byb2MAcm5uRGVub2lzZV9yYXdtZW0Acm5uRGVub2lzZV9yYXdtZW1fcGVyZgBnZXRfcm5uRGVub2lzZV9yYXdtZW1fdGltZQBnZXRSZXN1bHRQb2ludGVyAGdldFJlc3VsdFNpemUAZ2V0c2FtcGxlUmF0ZQBnZXRjaGFubmVscwBnZXRzYW1wbGVDb3VudABmcmVlQnVmZmVyAG1haW4Abm93AHN0cgBjaGFyAHNpemUAagBidWZmZXIAZnJhbWVCdWZmZXIAcHJvY2Vzc0J1ZmZlcgBmbGFnAHRhcmdldEZyYW1lU2l6ZQB0YXJnZXRTYW1wbGVSYXRlAHBlckZyYW1lU2l6ZQBzdHMAeABmcmFtZVN0ZXAAbG9uZyB1bnNpZ25lZCBpbnQAc2l6ZV90AGZyYW1lcwBsYXN0RnJhbWVTaXplAGsAbGFzdFJlYXNtcGxlU2l6ZQBpbl9zYW1wbGVSYXRlAGluX2NoYW5uZWxzAGluX3NhbXBsZUNvdW50AGF1ZGlvRGF0YQBzdGFydFRpbWUAYXJnYwBhcmd2AA=='; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile); +} + +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary); + } + + var binary = tryParseAsDataURI(wasmBinaryFile); + if (binary) { + return binary; + } + if (readBinary) { + return readBinary(wasmBinaryFile); + } else { + throw "sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"; + } + } + 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' + // Let's not use fetch to get objects over file:// as it's most likely Cordova which doesn't support fetch for file:// + && !isFileURI(wasmBinaryFile) + ) { + 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()); + }); +} + + + +// Create the wasm instance. +// Receives the wasm imports, returns the exports. +function createWasm() { + // prepare imports + var info = { + 'env': asmLibraryArg, + 'wasi_snapshot_preview1': 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 + /** @param {WebAssembly.Module=} module*/ + function receiveInstance(instance, module) { + var exports = instance.exports; + Module['asm'] = exports; + removeRunDependency('wasm-instantiate'); + } + // we can't run yet (except in a pthread, where we have a custom sync instantiator) + addRunDependency('wasm-instantiate'); + + + 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 + // TODO: Due to Closure regression https://github.com/google/closure-compiler/issues/3193, the above line no longer optimizes out down to the following line. + // When the regression is fixed, can restore the above USE_PTHREADS-enabled path. + receiveInstance(output['instance']); + } + + + 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 instantiateSync() { + var instance; + var module; + var binary; + try { + binary = getBinary(); + module = new WebAssembly.Module(binary); + instance = new WebAssembly.Instance(module, info); + } catch (e) { + var str = e.toString(); + err('failed to compile wasm module: ' + str); + if (str.indexOf('imported Memory') >= 0 || + str.indexOf('memory import') >= 0) { + err('Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time).'); + } + throw e; + } + receiveInstance(instance, module); + } + // 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; + } + } + + instantiateSync(); + return Module['asm']; // exports were assigned here +} + + +// Globals used by JS i64 conversions +var tempDouble; +var tempI64; + +// === Body === + +var ASM_CONSTS = { + +}; + + + + +// STATICTOP = STATIC_BASE + 96256; +/* global initializers */ __ATINIT__.push({ func: function() { ___wasm_call_ctors() } }); + + + + +/* no memory initializer */ +// {{PRE_LIBRARY}} + + + function demangle(func) { + return func; + } + + 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 + ']'); + }); + } + + 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(); + } catch(e) { + err = e; + } + if (!err.stack) { + return '(no stack trace available)'; + } + } + return err.stack.toString(); + } + + function stackTrace() { + var js = jsStackTrace(); + if (Module['extraStackTrace']) js += '\n' + Module['extraStackTrace'](); + return demangleAll(js); + } + + + var _emscripten_get_now;if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function() { + var t = process['hrtime'](); + return t[0] * 1e3 + t[1] / 1e6; + }; + } else if (typeof dateNow !== 'undefined') { + _emscripten_get_now = dateNow; + } else _emscripten_get_now = function() { return performance.now(); } + ; + + var _emscripten_get_now_is_monotonic=true;; + + function setErrNo(value) { + HEAP32[((___errno_location())>>2)]=value; + return value; + }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 || clk_id === 4) && _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; + } + + function _emscripten_get_sbrk_ptr() { + return 97120; + } + + function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.copyWithin(dest, src, src + num); + } + + + function _emscripten_get_heap_size() { + return HEAPU8.length; + } + + function emscripten_realloc_buffer(size) { + try { + // round size grow request up to wasm page size (fixed 64KB per spec) + wasmMemory.grow((size - buffer.byteLength + 65535) >>> 16); // .grow() takes a delta compared to the previous size + updateGlobalBufferAndViews(wasmMemory.buffer); + return 1 /*success*/; + } catch(e) { + } + }function _emscripten_resize_heap(requestedSize) { + requestedSize = requestedSize >>> 0; + var oldSize = _emscripten_get_heap_size(); + // With pthreads, races can happen (another thread might increase the size in between), so return a failure, and let the caller retry. + + + var PAGE_MULTIPLE = 65536; + + // Memory resize rules: + // 1. When resizing, always produce a resized heap that is at least 16MB (to avoid tiny heap sizes receiving lots of repeated resizes at startup) + // 2. Always increase heap size to at least the requested size, rounded up to next page multiple. + // 3a. If MEMORY_GROWTH_LINEAR_STEP == -1, excessively resize the heap geometrically: increase the heap size according to + // MEMORY_GROWTH_GEOMETRIC_STEP factor (default +20%), + // At most overreserve by MEMORY_GROWTH_GEOMETRIC_CAP bytes (default 96MB). + // 3b. If MEMORY_GROWTH_LINEAR_STEP != -1, excessively resize the heap linearly: increase the heap size by at least MEMORY_GROWTH_LINEAR_STEP bytes. + // 4. Max size for the heap is capped at 2048MB-PAGE_MULTIPLE, or by MAXIMUM_MEMORY, or by ASAN limit, depending on which is smallest + // 5. If we were unable to allocate as much memory, it may be due to over-eager decision to excessively reserve due to (3) above. + // Hence if an allocation fails, cut down on the amount of excess growth, in an attempt to succeed to perform a smaller allocation. + + // A limit was set for how much we can grow. We should not exceed that + // (the wasm binary specifies it, so if we tried, we'd fail anyhow). + var maxHeapSize = 2147483648; + if (requestedSize > maxHeapSize) { + return false; + } + + var minHeapSize = 16777216; + + // Loop through potential heap size increases. If we attempt a too eager reservation that fails, cut down on the + // attempted size and reserve a smaller bump instead. (max 3 times, chosen somewhat arbitrarily) + for(var cutDown = 1; cutDown <= 4; cutDown *= 2) { + var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); // ensure geometric growth + // but limit overreserving (default to capping at +96MB overgrowth at most) + overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296 ); + + + var newSize = Math.min(maxHeapSize, alignUp(Math.max(minHeapSize, requestedSize, overGrownHeapSize), PAGE_MULTIPLE)); + + var replacement = emscripten_realloc_buffer(newSize); + if (replacement) { + + return true; + } + } + return false; + } + + + + 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); + }};var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream, curr) { + var buffer = SYSCALLS.buffers[stream]; + if (curr === 0 || curr === 10) { + (stream === 1 ? out : err)(UTF8ArrayToString(buffer, 0)); + buffer.length = 0; + } else { + buffer.push(curr); + } + },varargs:undefined,get:function() { + SYSCALLS.varargs += 4; + var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)]; + return ret; + },getStr:function(ptr) { + var ret = UTF8ToString(ptr); + return ret; + },get64:function(low, high) { + return low; + }};function _fd_close(fd) { + return 0; + } + + function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + } + + + function flush_NO_FILESYSTEM() { + // flush anything remaining in the buffers during shutdown + if (typeof _fflush !== 'undefined') _fflush(0); + var buffers = SYSCALLS.buffers; + if (buffers[1].length) SYSCALLS.printChar(1, 10); + if (buffers[2].length) SYSCALLS.printChar(2, 10); + }function _fd_write(fd, iov, iovcnt, pnum) { + // hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0 + var num = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[(((iov)+(i*8))>>2)]; + var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; + for (var j = 0; j < len; j++) { + SYSCALLS.printChar(fd, HEAPU8[ptr+j]); + } + num += len; + } + HEAP32[((pnum)>>2)]=num + return 0; + } + + function _setTempRet0($i) { + setTempRet0(($i) | 0); + } +var ASSERTIONS = false; + + + +/** @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; +} + +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(''); +} + + +// Copied from https://github.com/strophe/strophejs/blob/e06d027/src/polyfills.js#L149 + +// This code was written by Tyler Akins and has been placed in the +// public domain. It would be nice if you left this header intact. +// Base64 code from Tyler Akins -- http://rumkin.com + +/** + * Decodes a base64 string. + * @param {string} input The string to decode. + */ +var decodeBase64 = typeof atob === 'function' ? atob : function (input) { + var keyStr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; + + var output = ''; + var chr1, chr2, chr3; + var enc1, enc2, enc3, enc4; + var i = 0; + // remove all characters that are not A-Z, a-z, 0-9, +, /, or = + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ''); + do { + enc1 = keyStr.indexOf(input.charAt(i++)); + enc2 = keyStr.indexOf(input.charAt(i++)); + enc3 = keyStr.indexOf(input.charAt(i++)); + enc4 = keyStr.indexOf(input.charAt(i++)); + + chr1 = (enc1 << 2) | (enc2 >> 4); + chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); + chr3 = ((enc3 & 3) << 6) | enc4; + + output = output + String.fromCharCode(chr1); + + if (enc3 !== 64) { + output = output + String.fromCharCode(chr2); + } + if (enc4 !== 64) { + output = output + String.fromCharCode(chr3); + } + } while (i < input.length); + return output; +}; + +// Converts a string of base64 into a byte array. +// Throws error on invalid input. +function intArrayFromBase64(s) { + if (typeof ENVIRONMENT_IS_NODE === 'boolean' && ENVIRONMENT_IS_NODE) { + var buf; + try { + // TODO: Update Node.js externs, Closure does not recognize the following Buffer.from() + /**@suppress{checkTypes}*/ + buf = Buffer.from(s, 'base64'); + } catch (_) { + buf = new Buffer(s, 'base64'); + } + return new Uint8Array(buf['buffer'], buf['byteOffset'], buf['byteLength']); + } + + try { + var decoded = decodeBase64(s); + var bytes = new Uint8Array(decoded.length); + for (var i = 0 ; i < decoded.length ; ++i) { + bytes[i] = decoded.charCodeAt(i); + } + return bytes; + } catch (_) { + throw new Error('Converting base64 string to bytes failed.'); + } +} + +// If filename is a base64 data URI, parses and returns data (Buffer on node, +// Uint8Array otherwise). If filename is not a base64 data URI, returns undefined. +function tryParseAsDataURI(filename) { + if (!isDataURI(filename)) { + return; + } + + return intArrayFromBase64(filename.slice(dataURIPrefix.length)); +} + + +var asmGlobalArg = {}; +var asmLibraryArg = { "clock_gettime": _clock_gettime, "emscripten_get_sbrk_ptr": _emscripten_get_sbrk_ptr, "emscripten_memcpy_big": _emscripten_memcpy_big, "emscripten_resize_heap": _emscripten_resize_heap, "fd_close": _fd_close, "fd_seek": _fd_seek, "fd_write": _fd_write, "memory": wasmMemory, "setTempRet0": _setTempRet0, "table": wasmTable }; +var asm = createWasm(); +/** @type {function(...*):?} */ +var ___wasm_call_ctors = Module["___wasm_call_ctors"] = asm["__wasm_call_ctors"] + +/** @type {function(...*):?} */ +var _rnnoise_get_size = Module["_rnnoise_get_size"] = asm["rnnoise_get_size"] + +/** @type {function(...*):?} */ +var _rnnoise_init = Module["_rnnoise_init"] = asm["rnnoise_init"] + +/** @type {function(...*):?} */ +var _rnnoise_create = Module["_rnnoise_create"] = asm["rnnoise_create"] + +/** @type {function(...*):?} */ +var _malloc = Module["_malloc"] = asm["malloc"] + +/** @type {function(...*):?} */ +var _rnnoise_destroy = Module["_rnnoise_destroy"] = asm["rnnoise_destroy"] + +/** @type {function(...*):?} */ +var _free = Module["_free"] = asm["free"] + +/** @type {function(...*):?} */ +var _rnnoise_process_frame = Module["_rnnoise_process_frame"] = asm["rnnoise_process_frame"] + +/** @type {function(...*):?} */ +var _denoise_proc = Module["_denoise_proc"] = asm["denoise_proc"] + +/** @type {function(...*):?} */ +var _rnnDenoise_rawmem = Module["_rnnDenoise_rawmem"] = asm["rnnDenoise_rawmem"] + +/** @type {function(...*):?} */ +var _rnnDenoise_rawmem_perf = Module["_rnnDenoise_rawmem_perf"] = asm["rnnDenoise_rawmem_perf"] + +/** @type {function(...*):?} */ +var _get_rnnDenoise_rawmem_time = Module["_get_rnnDenoise_rawmem_time"] = asm["get_rnnDenoise_rawmem_time"] + +/** @type {function(...*):?} */ +var _getResultPointer = Module["_getResultPointer"] = asm["getResultPointer"] + +/** @type {function(...*):?} */ +var _getResultSize = Module["_getResultSize"] = asm["getResultSize"] + +/** @type {function(...*):?} */ +var _getsampleRate = Module["_getsampleRate"] = asm["getsampleRate"] + +/** @type {function(...*):?} */ +var _getchannels = Module["_getchannels"] = asm["getchannels"] + +/** @type {function(...*):?} */ +var _getsampleCount = Module["_getsampleCount"] = asm["getsampleCount"] + +/** @type {function(...*):?} */ +var _freeBuffer = Module["_freeBuffer"] = asm["freeBuffer"] + +/** @type {function(...*):?} */ +var _main = Module["_main"] = asm["main"] + +/** @type {function(...*):?} */ +var ___errno_location = Module["___errno_location"] = asm["__errno_location"] + +/** @type {function(...*):?} */ +var stackSave = Module["stackSave"] = asm["stackSave"] + +/** @type {function(...*):?} */ +var stackRestore = Module["stackRestore"] = asm["stackRestore"] + +/** @type {function(...*):?} */ +var stackAlloc = Module["stackAlloc"] = asm["stackAlloc"] + +/** @type {function(...*):?} */ +var __growWasmMemory = Module["__growWasmMemory"] = asm["__growWasmMemory"] + +/** @type {function(...*):?} */ +var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"] + +/** @type {function(...*):?} */ +var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"] + +/** @type {function(...*):?} */ +var dynCall_jiji = Module["dynCall_jiji"] = asm["dynCall_jiji"] + + + + + +// === Auto-generated postamble setup entry stuff === + + + + + +Module["cwrap"] = cwrap; + + + +var calledRun; + +/** + * @constructor + * @this {ExitStatus} + */ +function ExitStatus(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 +}; + +function callMain(args) { + + 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); + + + // In PROXY_TO_PTHREAD builds, we should never exit the runtime below, as execution is asynchronously handed + // off to a pthread. + // 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 == 'unwind') { + // 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; + } +} + + + + +/** @type {function(Array=)} */ +function run(args) { + args = args || arguments_; + + if (runDependencies > 0) { + return; + } + + + 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; + Module['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(); + } +} +Module['run'] = run; + + +/** @param {boolean|number=} implicit */ +function exit(status, implicit) { + + // 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) { + } else { + + 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()(); + } +} + +// shouldRunNow refers to calling main(), not run(). +var shouldRunNow = true; + +if (Module['noInitialRun']) shouldRunNow = false; + + + noExitRuntime = true; + +run(); + + + + + + +// {{MODULE_ADDITIONS}} + + + +// Copyright (C) <2020> Intel Corporation +// +// SPDX-License-Identifier: Apache-2.0 +// +//////////////////////////////////////////////////////////////////////////////////////////// +// This file implements the audio worklet processor capable to perform Wasm based +// audio denoising on live/embedded audio streams. The denoising is done using a +// wasm port of Rnnoise library generated using Emscripten: +// > emcc -g -O3 -s ALLOW_MEMORY_GROWTH=1 -s EXTRA_EXPORTED_RUNTIME_METHODS='["cwrap"]' +// -s BINARYEN_ASYNC_COMPILATION=0 -s SINGLE_FILE=1 --post-js +// -I ../include/ ../src/*.c ../examples/*.c -o +//////////////////////////////////////////////////////////////////////////////////////////// + +// The audio worklet logic is embended to the end of the generated Wasm library handler + +/* global AudioWorkletProcessor, Float32Array, registerProcessor */ + +'use strict'; + +// Rnnoise e4xpects a sample rate of 44100 which is currently set during the AudioContext creation in JS +const numChannels = 1; // Current channel support limited to 1. Stereo is ToDo. +const wasmKernelBufferSize = 4096; //Buffer size for passing data to Rnnoise. + +// A generic Ring Buffer needs to be used to adjust the frame rate mismatch Rnnoise and Audioworklet +// Audio worklet calls the process method with a fixed frame size of 128. How ever this is too low +// for Rnnoise and this ring buffer is used to increase the Buffer size for Rnnoise calls to be +// above 512 frames. + +class RingBuffer { + /** + * @constructor RingBuffer + * @param {number} length . + */ + constructor(length) { + console.log("constructor"); + this._readIdx = 0; + this._writeIdx = 0; + this._framesReady = 0; + this._length = length; + this._data = new Float32Array(length); + } + + /** + * Push frames + * @return {number} Available frames + */ + push(fArray) { + + let inSize = fArray.length; + if (inSize == 0) return; + + for (let i = 0; i < inSize; ++i) { + this._data[(this._writeIdx + i) % this._length] = fArray[i]; + } + + this._writeIdx += inSize; + if (this._writeIdx >= this._length) { + this._writeIdx = 0; + } + + this._framesReady += inSize; + if (this._framesReady >= this._length) { + this._framesReady = this._length; + } + } + + /** + * Pull frames + * @return {number} Available frames + */ + pop(outArray) { + if (this._framesReady == 0) return; + let outSize = outArray.length; + if (outSize == 0) return; + + for (let i = 0; i < outSize; ++i) { + outArray[i] = this._data[(this._readIdx + i) % this._length]; + } + + this._readIdx += outSize; + if (this._readIdx > this._length) { + this._readIdx = 0; + } + + this._framesReady -= outSize; + if (this._framesReady <= 0) { + this._framesReady = 0; + } + } + + /** + * pop frames array + * @param {array} arr + */ + framesReady() { + return this._framesReady; + } +} + + +// /////////////////////////////////////////////////////////////////////////////// +// Handles the WebAssembly kernel for denoising raw audio files in F32Arrayformat +// /////////////////////////////////////////////////////////////////////////////// + +// cwrap wasm API's used here make wasm calls from JS simpler. +const wasmRnndenoiseRawmem = Module.cwrap('rnnDenoise_rawmem', + 'number', ['number', 'number', 'number', 'number']); + + +/** + * @function wasmDenoiseStream + * @desc Apply denoising into raw audio data in F32Array format using + * a WebAssembly port of RNNoise denoising algoritm. + * ToDO: There is a new proposal at AudioWorklet to streamline datacopies + * associated with Wasm calls for audio processing. Once landed, it can be + * incorporated for improved performance. + * @return {Float32Array} fProcessdArr with denoised audio data + * @param {Float32Array} f32buffer + */ +export function wasmDenoiseStream(f32buffer) { + + + + // Create and Initialize Wasm memory with input audio data. + const wasmMemPtr = Module._malloc(f32buffer.length * 4); + const wasmMemArr = new Float32Array(wasmMemory.buffer, + wasmMemPtr, f32buffer.length); + wasmMemArr.set(f32buffer); + + // Call Wasm denoising kernel + const wasmRetPtr = wasmRnndenoiseRawmem(wasmMemPtr, + sampleRate, numChannels, f32buffer.length); + + // Create JS Array from Wasm memory with results + const fProcessedArr = new Float32Array(wasmMemory.buffer, + wasmRetPtr, f32buffer.length); + + return fProcessedArr; +} + +// //////////////////////////////////////////////////////////////////// +// Creates a WebAudio Based filter for applying audio denoising. +// /////////////////////////////////////////////////////////////////// +/** + * @function RnnoiseWasmAudioWorkletNode + * @desc Class for Audio worklet to perform RNNoise based denoising + */ +class RnnoiseWasmWorkletProcessor extends AudioWorkletProcessor { + /** + * @function constructor + * @desc Constructor for initializing the Audio worklet node + * @param {AudioContext} context + * @memberof RnnoiseWasmAudioWorkletNode + */ + constructor() { + super(); + this._inputRingBuffer = new RingBuffer(wasmKernelBufferSize); + this._outputRingBuffer = new RingBuffer(wasmKernelBufferSize); + this._kernelDataBuffer = new Float32Array(wasmKernelBufferSize); + } + + bufferAndCallWasmDenoise(fArray) { + this._inputRingBuffer.push(fArray); + + if (this._inputRingBuffer.framesReady() >= wasmKernelBufferSize) { + this._inputRingBuffer.pop(this._kernelDataBuffer); + this._outputRingBuffer.push(wasmDenoiseStream(this._kernelDataBuffer)); + } + this._outputRingBuffer.pop(fArray); + return fArray; + } + + /** + * @function process + * @desc Wasm based Audio Worklet processor for Denoising + * @param {Array} inputs + * @param {Array} outputs + * @param {Map} parameters + * @return {Boolean} ActiveFlag + * @memberof RnnoiseWasmWorkletProcessor + */ + process(inputs, outputs, parameters) { + const input = inputs[0]; + const output = outputs[0]; + + // const channelCount = input.length; + // For multichannel support adapt Wasm heap buffer according to channel count + + for (let channel = 0; channel < input.length; ++channel) { + output[channel].set(this.bufferAndCallWasmDenoise(input[channel])); + } + + // Keep this processor alive + return true; + } +} + +registerProcessor('rnnoise-wasm-worklet-processor', + RnnoiseWasmWorkletProcessor); + + + diff --git a/src/sdk/base/denoise.js b/src/sdk/base/denoise.js deleted file mode 100644 index abe546a4..00000000 --- a/src/sdk/base/denoise.js +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright (C) <2020> Intel Corporation -// -// SPDX-License-Identifier: Apache-2.0 - -/* global window, AudioContext, Float32Array */ - -'use strict'; -// /////////////////////////////////////////////////////////////////////////////// -// Handles the WebAssembly kernel for denoising raw audio files in F32Arrayformat -// /////////////////////////////////////////////////////////////////////////////// - -import {Module, wasmMemory} from './rnn_denoise.js'; - -// cwrap wasm API's used here make wasm calls from JS simpler. -const wasmRnndenoiseRawmem = Module.cwrap('rnnDenoise_rawmem', - 'number', ['number', 'number', 'number', 'number']); - -const sampleRate = 44100; // Audio Sample rate can be set and controlled here. -const numChannels = 1; // Current channel support limited to 1. Stereo is ToDo. - -/** - * @function wasmDenoiseStream - * @desc Apply denoising into raw audio data in F32Array format using - * a WebAssembly port of RNNoise denoising algoritm. - * @return {Float32Array} fProcessdArr with denoised audio data - * @param {Float32Array} f32buffer - */ -export function wasmDenoiseStream(f32buffer) { - // Create and Initialize Wasm memory with input audio data. - const wasmMemPtr = Module._malloc(f32buffer.length * 4 ); - const wasmMemArr = new Float32Array(wasmMemory.buffer, - wasmMemPtr, f32buffer.length); - wasmMemArr.set(f32buffer); - - // Call Wasm denoising kernel - const wasmRetPtr = wasmRnndenoiseRawmem(wasmMemPtr, - sampleRate, numChannels, f32buffer.length); - - // Create JS Array from Wasm memory with results - const fProcessedArr = new Float32Array(wasmMemory.buffer, - wasmRetPtr, f32buffer.length); - - return fProcessedArr; -} - -// //////////////////////////////////////////////////////////////////// -// Creates a WebAudio Based filter for applying audio denoising. -// /////////////////////////////////////////////////////////////////// - -// WebAuddio context -window.AudioContext = window.AudioContext || window.webkitAudioContext; -export const audioContext = new AudioContext(); // new AudioContext({sampleRate: 48000}); - - -// Audio buffer size: -// Accepts powers of 2 between 0 and 16384. -// Too low causes audio glitches due to buffer underruns -// Too high could increase latency. -// Set to 0 and WebAudio API will autopick a value. -const bufferSize = 4096; - -export const audioDenoise = (function() { - const numberOfInputChannels = 1; - const numberOfOutputChannels = 1; - let recorder; - - if (audioContext.createScriptProcessor) { - recorder = audioContext.createScriptProcessor(bufferSize, - numberOfInputChannels, numberOfOutputChannels); - } else { - recorder = audioContext.createJavaScriptNode(bufferSize, - numberOfInputChannels, numberOfOutputChannels); - } - - recorder.onaudioprocess = function(e) { - const input = e.inputBuffer.getChannelData(0); - - const wasmOutput = wasmDenoiseStream(input); - - e.outputBuffer.copyToChannel(wasmOutput, 0, 0); - }; - return recorder; -})(); - diff --git a/src/sdk/base/mediastream-factory.js b/src/sdk/base/mediastream-factory.js index 0ad0401b..82c2fd88 100644 --- a/src/sdk/base/mediastream-factory.js +++ b/src/sdk/base/mediastream-factory.js @@ -2,12 +2,11 @@ // // SPDX-License-Identifier: Apache-2.0 -/* global Promise, navigator */ +/* global Promise, navigator, window, AudioContext, AudioWorkletNode */ 'use strict'; import * as utils from './utils.js'; import * as MediaFormatModule from './mediaformat.js'; -import * as denoise from './denoise.js'; /** * @class AudioTrackConstraints @@ -247,22 +246,33 @@ export class MediaStreamFactory { */ static createMediaStreamDenoised(constraints) { return this.createMediaStream(constraints).then( - (stream) => { - const audioTracks = stream.getAudioTracks(); - const videoTracks = stream.getVideoTracks(); - const peer = denoise.audioContext.createMediaStreamDestination(); + (stream) => { + window.AudioContext = window.AudioContext || + window.webkitAudioContext; + // Rnnoise is tested for sample rate 44100. This limitation can be + // lifted after further testing. + const audioContext = new AudioContext({sampleRate: 44100}); - audioTracks.forEach(function(track) { - const microphone = - denoise.audioContext.createMediaStreamSource(stream); - microphone.connect(denoise.audioDenoise); - denoise.audioDenoise.connect(peer); - }); - videoTracks.forEach(function(track) { - peer.stream.addTrack(track); - }); - return peer.stream; - } + const audioTracks = stream.getAudioTracks(); + const videoTracks = stream.getVideoTracks(); + const peer = audioContext.createMediaStreamDestination(); + + audioTracks.forEach(function(track) { + const microphone = + audioContext.createMediaStreamSource(stream); + audioContext.audioWorklet.addModule( + 'js/denoise-wasm-worklet.js').then(() => { + const denoiserNode = + new AudioWorkletNode(audioContext, + 'rnnoise-wasm-worklet-processor'); + microphone.connect(denoiserNode).connect(peer); + }); + }); + videoTracks.forEach(function(track) { + peer.stream.addTrack(track); + }); + return peer.stream; + } ); } } diff --git a/src/sdk/base/rnn_denoise.js b/src/sdk/base/rnn_denoise.js deleted file mode 100644 index c61ed5c6..00000000 --- a/src/sdk/base/rnn_denoise.js +++ /dev/null @@ -1,2298 +0,0 @@ -// Copyright (C) <2020> Intel Corporation -// -// SPDX-License-Identifier: Apache-2.0 - -/* eslint-disable */ -// Disabling eslint on auto-generated file. - -//////////////////////////////////////////////////////////////////////////////////// -// This file was generated using Emscripten https://emscripten.org/ -// -// This is to add the capability of denoising audio streams captured through -// the browser using WebAudio API. The core of denoising is done using a -// WebAssembly port of the RNNoise denoising library https://github.com/xiph/rnnoise. -// -// This file is accompanied by two files -// 1. rnnoise_denose.wasm: Wasm binary file & web version of RNNoise library -// 2. denoise.js: Helper for integrating the capability into OWT. 'Module' and -// 'wasmMemory' globals needs to be manually exported below to be used by -// denoise.js. -//////////////////////////////////////////////////////////////////////////////////// - -// Auto generated content below. - -// 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. -export var Module = typeof Module !== 'undefined' ? Module : {}; - - - -// --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 moduleOverrides = {}; -var key; -for (key in Module) { - 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 ENVIRONMENT_IS_WEB = false; -var ENVIRONMENT_IS_WORKER = false; -var ENVIRONMENT_IS_NODE = false; -var ENVIRONMENT_IS_SHELL = false; -ENVIRONMENT_IS_WEB = typeof window === 'object'; -ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; -// N.b. Electron.js environment is simultaneously a NODE-environment, but -// also a web environment. -ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof process.versions === 'object' && typeof process.versions.node === 'string'; -ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; - - - - -// `/` should be present at the end if `scriptDirectory` is not empty -var scriptDirectory = ''; -function locateFile(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 nodeFS; -var nodePath; - -if (ENVIRONMENT_IS_NODE) { - if (ENVIRONMENT_IS_WORKER) { - scriptDirectory = require('path').dirname(scriptDirectory) + '/'; - } else { - 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) { - // suppress ExitStatus exceptions from showing an error - if (!(ex instanceof ExitStatus)) { - throw ex; - } - }); - - process['on']('unhandledRejection', abort); - - quit_ = function(status) { - process['exit'](status); - }; - - Module['inspect'] = function () { return '[Emscripten Module object]'; }; - - - -} 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 = /** @type{!Console} */({}); - console.log = /** @type{!function(this:Console, ...*): undefined} */ (print); - console.warn = console.error = /** @type{!function(this:Console, ...*): undefined} */ (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_IS_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. - { - - - - - read_ = function shell_read(url) { - 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(/** @type{!ArrayBuffer} */(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); - }; - - - - - } - - setWindowTitle = function(title) { document.title = title }; -} else -{ -} - - -// 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 -for (key in moduleOverrides) { - 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 (Module['thisProgram']) thisProgram = Module['thisProgram']; -if (Module['quit']) quit_ = Module['quit']; - -// perform assertions in shell.js after we set up out() and err(), as otherwise if an assertion fails it cannot print the message - - - - - -// {{PREAMBLE_ADDITIONS}} - -var STACK_ALIGN = 16; - -function dynamicAlloc(size) { - var ret = HEAP32[DYNAMICTOP_PTR>>2]; - var end = (ret + size + 15) & -16; - HEAP32[DYNAMICTOP_PTR>>2] = end; - return ret; -} - -function alignMemory(size, factor) { - if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default - 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 = Number(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); - } -} - - - - - - - - -// 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 - }; - - // 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 freeTableIndexes = []; - -// Weak map of functions in the table to their indexes, created on first use. -var functionsInTableMap; - -// Add a wasm function to the table. -function addFunctionWasm(func, sig) { - var table = wasmTable; - - // Check if the function is already in the table, to ensure each function - // gets a unique index. First, create the map if this is the first use. - if (!functionsInTableMap) { - functionsInTableMap = new WeakMap(); - for (var i = 0; i < table.length; i++) { - var item = table.get(i); - // Ignore null values. - if (item) { - functionsInTableMap.set(item, i); - } - } - } - if (functionsInTableMap.has(func)) { - return functionsInTableMap.get(func); - } - - // It's not in the table, add it now. - - - var ret; - // Reuse a free index if there is one, otherwise grow. - if (freeTableIndexes.length) { - ret = freeTableIndexes.pop(); - } else { - ret = table.length; - // Grow the table - try { - table.grow(1); - } catch (err) { - if (!(err instanceof RangeError)) { - throw err; - } - throw 'Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.'; - } - } - - // Set the new value. - 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; - } - var wrapped = convertJsFunctionToWasm(func, sig); - table.set(ret, wrapped); - } - - functionsInTableMap.set(func, ret); - - return ret; -} - -function removeFunctionWasm(index) { - functionsInTableMap.delete(wasmTable.get(index)); - freeTableIndexes.push(index); -} - -// 'sig' parameter is required for the llvm backend but only when func is not -// already a WebAssembly function. -function addFunction(func, sig) { - - return addFunctionWasm(func, sig); -} - -function removeFunction(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)); - }; - } - } - return sigCache[func]; -} - - - - - - - -function makeBigInt(low, high, unsigned) { - return unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0)); -} - -/** @param {Array=} args */ -function dynCall(sig, ptr, args) { - if (args && args.length) { - return Module['dynCall_' + sig].apply(null, [ptr].concat(args)); - } else { - return Module['dynCall_' + sig].call(null, ptr); - } -} - -var tempRet0 = 0; - -var setTempRet0 = function(value) { - tempRet0 = value; -}; - -var getTempRet0 = function() { - return tempRet0; -}; - - -// 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; - - - - - -// === 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']; -var noExitRuntime;if (Module['noExitRuntime']) noExitRuntime = Module['noExitRuntime']; - - -if (typeof WebAssembly !== 'object') { - err('no native wasm support detected'); -} - - - - -// 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) - -/** @param {number} ptr - @param {number} value - @param {string} type - @param {number|boolean=} noSafe */ -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); - } -} - -/** @param {number} ptr - @param {string} type - @param {number|boolean=} noSafe */ -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; -} - - - - - - -// Wasm globals - -export 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': 4, - 'maximum': 4 + 0, - 'element': 'anyfunc' -}); - - -//======================================== -// 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); - } -} - -// 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; -} - -// C calling interface. -/** @param {string|null=} returnType - @param {Array=} argTypes - @param {Arguments|Array=} args - @param {Object=} opts */ -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; - 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; -} - -/** @param {string=} returnType - @param {Array=} argTypes - @param {Object=} opts */ -function cwrap(ident, returnType, argTypes, opts) { - argTypes = argTypes || []; - // When the function takes numbers and returns a number, we can just return - // the original function - var numericArgs = argTypes.every(function(type){ return type === 'number'}); - var numericRet = returnType !== 'string'; - if (numericRet && numericArgs && !opts) { - return getCFunc(ident); - } - 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=)} */ -function allocate(slab, types, allocator, ptr) { - 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) { - 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; - } - - 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; - } - - 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); -} - - - - -// runtime_strings.js: Strings related runtime functions that are part of both MINIMAL_RUNTIME and regular runtime. - -// 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. - -var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined; - -/** - * @param {number} idx - * @param {number=} maxBytesToRead - * @return {string} - */ -function UTF8ArrayToString(heap, idx, maxBytesToRead) { - var endIdx = idx + maxBytesToRead; - var endPtr = idx; - // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. - // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. - // (As a tiny code save trick, compare endPtr against endIdx using a negation, so that undefined means Infinity) - while (heap[endPtr] && !(endPtr >= endIdx)) ++endPtr; - - if (endPtr - idx > 16 && heap.subarray && UTF8Decoder) { - return UTF8Decoder.decode(heap.subarray(idx, endPtr)); - } else { - var str = ''; - // If building with TextDecoder, we have already computed the string length above, so test loop end condition against that - while (idx < endPtr) { - // 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 = heap[idx++]; - if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; } - var u1 = heap[idx++] & 63; - if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; } - var u2 = heap[idx++] & 63; - if ((u0 & 0xF0) == 0xE0) { - u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; - } else { - u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (heap[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; -} - -// 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) : ''; -} - -// 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. -// heap: 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, heap, 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; - heap[outIdx++] = u; - } else if (u <= 0x7FF) { - if (outIdx + 1 >= endIdx) break; - heap[outIdx++] = 0xC0 | (u >> 6); - heap[outIdx++] = 0x80 | (u & 63); - } else if (u <= 0xFFFF) { - if (outIdx + 2 >= endIdx) break; - heap[outIdx++] = 0xE0 | (u >> 12); - heap[outIdx++] = 0x80 | ((u >> 6) & 63); - heap[outIdx++] = 0x80 | (u & 63); - } else { - if (outIdx + 3 >= endIdx) break; - heap[outIdx++] = 0xF0 | (u >> 18); - heap[outIdx++] = 0x80 | ((u >> 12) & 63); - heap[outIdx++] = 0x80 | ((u >> 6) & 63); - heap[outIdx++] = 0x80 | (u & 63); - } - } - // Null-terminate the pointer to the buffer. - heap[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) { - 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; -} - - - - - -// runtime_strings_extra.js: Strings related runtime functions that are available only in regular runtime. - -// 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); - } -} - -// 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); -} - -// 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. - -var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-16le') : undefined; - -function UTF16ToString(ptr, maxBytesToRead) { - var endPtr = ptr; - // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. - // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. - var idx = endPtr >> 1; - var maxIdx = idx + maxBytesToRead / 2; - // If maxBytesToRead is not passed explicitly, it will be undefined, and this - // will always evaluate to true. This saves on code size. - while (!(idx >= maxIdx) && HEAPU16[idx]) ++idx; - endPtr = idx << 1; - - if (endPtr - ptr > 32 && UTF16Decoder) { - return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr)); - } else { - var i = 0; - - var str = ''; - while (1) { - var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; - if (codeUnit == 0 || i == maxBytesToRead / 2) 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); - } - } -} - -// 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) { - // 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; -} - -// 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; -} - -function UTF32ToString(ptr, maxBytesToRead) { - var i = 0; - - var str = ''; - // If maxBytesToRead is not passed explicitly, it will be undefined, and this - // will always evaluate to true. This saves on code size. - while (!(i >= maxBytesToRead / 4)) { - var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; - if (utf32 == 0) break; - ++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); - } - } - return str; -} - -// 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) { - // 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; -} - -// 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; -} - -// 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; -} - -// 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; -} - -// 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 - @param {boolean=} dontAddNull */ -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. -} - -function writeArrayToMemory(array, buffer) { - HEAP8.set(array, buffer); -} - -/** @param {boolean=} dontAddNull */ -function writeAsciiToMemory(str, buffer, dontAddNull) { - for (var i = 0; i < str.length; ++i) { - HEAP8[((buffer++)>>0)]=str.charCodeAt(i); - } - // Null-terminate the pointer to the HEAP. - if (!dontAddNull) HEAP8[((buffer)>>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; -} - -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; - -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); -} - -var STATIC_BASE = 1024, - STACK_BASE = 5340160, - STACKTOP = STACK_BASE, - STACK_MAX = 97280, - DYNAMIC_BASE = 5340160, - DYNAMICTOP_PTR = 97120; - - - -var TOTAL_STACK = 5242880; - -var INITIAL_INITIAL_MEMORY = Module['INITIAL_MEMORY'] || 16777216; - - -// 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['wasmMemory']) { - wasmMemory = Module['wasmMemory']; - } else - { - wasmMemory = new WebAssembly.Memory({ - 'initial': INITIAL_INITIAL_MEMORY / WASM_PAGE_SIZE - , - 'maximum': 2147483648 / WASM_PAGE_SIZE - }); - } - - -if (wasmMemory) { - 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['INITIAL_MEMORY']. -INITIAL_INITIAL_MEMORY = buffer.byteLength; -updateGlobalBufferAndViews(buffer); - -HEAP32[DYNAMICTOP_PTR>>2] = DYNAMIC_BASE; - - -function callRuntimeCallbacks(callbacks) { - while(callbacks.length > 0) { - var callback = callbacks.shift(); - if (typeof callback == 'function') { - callback(Module); // Pass the module as the first argument. - 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 runtimeInitialized = false; -var runtimeExited = false; - - -function preRun() { - - if (Module['preRun']) { - if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; - while (Module['preRun'].length) { - addOnPreRun(Module['preRun'].shift()); - } - } - - callRuntimeCallbacks(__ATPRERUN__); -} - -function initRuntime() { - runtimeInitialized = true; - - callRuntimeCallbacks(__ATINIT__); -} - -function preMain() { - - callRuntimeCallbacks(__ATMAIN__); -} - -function exitRuntime() { - runtimeExited = true; -} - -function postRun() { - - 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); -} - -function addOnInit(cb) { - __ATINIT__.unshift(cb); -} - -function addOnPreMain(cb) { - __ATMAIN__.unshift(cb); -} - -function addOnExit(cb) { -} - -function addOnPostRun(cb) { - __ATPOSTRUN__.unshift(cb); -} - -/** @param {number|boolean=} ignore */ -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; -} -/** @param {number|boolean=} ignore */ -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 - } - return value; -} - - - - -// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/imul - -// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/fround - -// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32 - -// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/trunc - - -var Math_abs = Math.abs; -var Math_cos = Math.cos; -var Math_sin = Math.sin; -var Math_tan = Math.tan; -var Math_acos = Math.acos; -var Math_asin = Math.asin; -var Math_atan = Math.atan; -var Math_atan2 = Math.atan2; -var Math_exp = Math.exp; -var Math_log = Math.log; -var Math_sqrt = Math.sqrt; -var Math_ceil = Math.ceil; -var Math_floor = Math.floor; -var Math_pow = Math.pow; -var Math_imul = Math.imul; -var Math_fround = Math.fround; -var Math_round = Math.round; -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 - -function getUniqueRunDependency(id) { - return id; -} - -function addRunDependency(id) { - runDependencies++; - - if (Module['monitorRunDependencies']) { - Module['monitorRunDependencies'](runDependencies); - } - -} - -function removeRunDependency(id) { - runDependencies--; - - if (Module['monitorRunDependencies']) { - Module['monitorRunDependencies'](runDependencies); - } - - if (runDependencies == 0) { - if (runDependencyWatcher !== null) { - clearInterval(runDependencyWatcher); - runDependencyWatcher = null; - } - if (dependenciesFulfilled) { - var callback = dependenciesFulfilled; - dependenciesFulfilled = null; - callback(); // can add another dependenciesFulfilled - } - } -} - -Module["preloadedImages"] = {}; // maps url to image data -Module["preloadedAudios"] = {}; // maps url to audio data - -/** @param {string|number=} what */ -function abort(what) { - if (Module['onAbort']) { - Module['onAbort'](what); - } - - what += ''; - out(what); - err(what); - - ABORT = true; - EXITSTATUS = 1; - - what = 'abort(' + what + '). Build with -s ASSERTIONS=1 for more info.'; - - // 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); -} - - -var memoryInitializer = null; - - - - - - - - - - - - -function hasPrefix(str, prefix) { - return String.prototype.startsWith ? - str.startsWith(prefix) : - str.indexOf(prefix) === 0; -} - -// 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. -function isDataURI(filename) { - return hasPrefix(filename, dataURIPrefix); -} - -var fileURIPrefix = "file://"; - -// Indicates whether filename is delivered via file protocol (as opposed to http/https) -function isFileURI(filename) { - return hasPrefix(filename, fileURIPrefix); -} - - - - -var wasmBinaryFile = 'rnn_denoise.wasm'; -if (!isDataURI(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"; - } - } - 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' - // Let's not use fetch to get objects over file:// as it's most likely Cordova which doesn't support fetch for file:// - && !isFileURI(wasmBinaryFile) - ) { - 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()); - }); -} - - - -// Create the wasm instance. -// Receives the wasm imports, returns the exports. -function createWasm() { - // prepare imports - var info = { - 'env': asmLibraryArg, - 'wasi_snapshot_preview1': 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 - /** @param {WebAssembly.Module=} module*/ - function receiveInstance(instance, module) { - var exports = instance.exports; - Module['asm'] = exports; - removeRunDependency('wasm-instantiate'); - } - // we can't run yet (except in a pthread, where we have a custom sync instantiator) - addRunDependency('wasm-instantiate'); - - - 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 - // TODO: Due to Closure regression https://github.com/google/closure-compiler/issues/3193, the above line no longer optimizes out down to the following line. - // When the regression is fixed, can restore the above USE_PTHREADS-enabled path. - receiveInstance(output['instance']); - } - - - 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) && - // Don't use streaming for file:// delivered objects in a webview, fetch them synchronously. - !isFileURI(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'); - return 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; - } - } - - instantiateAsync(); - return {}; // no exports yet; we'll fill them in later -} - - -// Globals used by JS i64 conversions -var tempDouble; -var tempI64; - -// === Body === - -var ASM_CONSTS = { - -}; - - - - -// STATICTOP = STATIC_BASE + 96256; -/* global initializers */ __ATINIT__.push({ func: function() { ___wasm_call_ctors() } }); - - - - -/* no memory initializer */ -// {{PRE_LIBRARY}} - - - function demangle(func) { - return func; - } - - 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 + ']'); - }); - } - - 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(); - } catch(e) { - err = e; - } - if (!err.stack) { - return '(no stack trace available)'; - } - } - return err.stack.toString(); - } - - function stackTrace() { - var js = jsStackTrace(); - if (Module['extraStackTrace']) js += '\n' + Module['extraStackTrace'](); - return demangleAll(js); - } - - - var _emscripten_get_now;if (ENVIRONMENT_IS_NODE) { - _emscripten_get_now = function() { - var t = process['hrtime'](); - return t[0] * 1e3 + t[1] / 1e6; - }; - } else if (typeof dateNow !== 'undefined') { - _emscripten_get_now = dateNow; - } else _emscripten_get_now = function() { return performance.now(); } - ; - - var _emscripten_get_now_is_monotonic=true;; - - function setErrNo(value) { - HEAP32[((___errno_location())>>2)]=value; - return value; - }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 || clk_id === 4) && _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; - } - - function _emscripten_get_sbrk_ptr() { - return 97120; - } - - function _emscripten_memcpy_big(dest, src, num) { - HEAPU8.copyWithin(dest, src, src + num); - } - - - function _emscripten_get_heap_size() { - return HEAPU8.length; - } - - function emscripten_realloc_buffer(size) { - try { - // round size grow request up to wasm page size (fixed 64KB per spec) - wasmMemory.grow((size - buffer.byteLength + 65535) >>> 16); // .grow() takes a delta compared to the previous size - updateGlobalBufferAndViews(wasmMemory.buffer); - return 1 /*success*/; - } catch(e) { - } - }function _emscripten_resize_heap(requestedSize) { - requestedSize = requestedSize >>> 0; - var oldSize = _emscripten_get_heap_size(); - // With pthreads, races can happen (another thread might increase the size in between), so return a failure, and let the caller retry. - - - var PAGE_MULTIPLE = 65536; - - // Memory resize rules: - // 1. When resizing, always produce a resized heap that is at least 16MB (to avoid tiny heap sizes receiving lots of repeated resizes at startup) - // 2. Always increase heap size to at least the requested size, rounded up to next page multiple. - // 3a. If MEMORY_GROWTH_LINEAR_STEP == -1, excessively resize the heap geometrically: increase the heap size according to - // MEMORY_GROWTH_GEOMETRIC_STEP factor (default +20%), - // At most overreserve by MEMORY_GROWTH_GEOMETRIC_CAP bytes (default 96MB). - // 3b. If MEMORY_GROWTH_LINEAR_STEP != -1, excessively resize the heap linearly: increase the heap size by at least MEMORY_GROWTH_LINEAR_STEP bytes. - // 4. Max size for the heap is capped at 2048MB-PAGE_MULTIPLE, or by MAXIMUM_MEMORY, or by ASAN limit, depending on which is smallest - // 5. If we were unable to allocate as much memory, it may be due to over-eager decision to excessively reserve due to (3) above. - // Hence if an allocation fails, cut down on the amount of excess growth, in an attempt to succeed to perform a smaller allocation. - - // A limit was set for how much we can grow. We should not exceed that - // (the wasm binary specifies it, so if we tried, we'd fail anyhow). - var maxHeapSize = 2147483648; - if (requestedSize > maxHeapSize) { - return false; - } - - var minHeapSize = 16777216; - - // Loop through potential heap size increases. If we attempt a too eager reservation that fails, cut down on the - // attempted size and reserve a smaller bump instead. (max 3 times, chosen somewhat arbitrarily) - for(var cutDown = 1; cutDown <= 4; cutDown *= 2) { - var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); // ensure geometric growth - // but limit overreserving (default to capping at +96MB overgrowth at most) - overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296 ); - - - var newSize = Math.min(maxHeapSize, alignUp(Math.max(minHeapSize, requestedSize, overGrownHeapSize), PAGE_MULTIPLE)); - - var replacement = emscripten_realloc_buffer(newSize); - if (replacement) { - - return true; - } - } - return false; - } - - - - 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); - }};var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream, curr) { - var buffer = SYSCALLS.buffers[stream]; - if (curr === 0 || curr === 10) { - (stream === 1 ? out : err)(UTF8ArrayToString(buffer, 0)); - buffer.length = 0; - } else { - buffer.push(curr); - } - },varargs:undefined,get:function() { - SYSCALLS.varargs += 4; - var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)]; - return ret; - },getStr:function(ptr) { - var ret = UTF8ToString(ptr); - return ret; - },get64:function(low, high) { - return low; - }};function _fd_close(fd) { - return 0; - } - - function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { - } - - - function flush_NO_FILESYSTEM() { - // flush anything remaining in the buffers during shutdown - if (typeof _fflush !== 'undefined') _fflush(0); - var buffers = SYSCALLS.buffers; - if (buffers[1].length) SYSCALLS.printChar(1, 10); - if (buffers[2].length) SYSCALLS.printChar(2, 10); - }function _fd_write(fd, iov, iovcnt, pnum) { - // hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0 - var num = 0; - for (var i = 0; i < iovcnt; i++) { - var ptr = HEAP32[(((iov)+(i*8))>>2)]; - var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; - for (var j = 0; j < len; j++) { - SYSCALLS.printChar(fd, HEAPU8[ptr+j]); - } - num += len; - } - HEAP32[((pnum)>>2)]=num - return 0; - } - - function _setTempRet0($i) { - setTempRet0(($i) | 0); - } -var ASSERTIONS = false; - - - -/** @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; -} - -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 asmGlobalArg = {}; -var asmLibraryArg = { "clock_gettime": _clock_gettime, "emscripten_get_sbrk_ptr": _emscripten_get_sbrk_ptr, "emscripten_memcpy_big": _emscripten_memcpy_big, "emscripten_resize_heap": _emscripten_resize_heap, "fd_close": _fd_close, "fd_seek": _fd_seek, "fd_write": _fd_write, "memory": wasmMemory, "setTempRet0": _setTempRet0, "table": wasmTable }; -var asm = createWasm(); -/** @type {function(...*):?} */ -var ___wasm_call_ctors = Module["___wasm_call_ctors"] = function() { - return (___wasm_call_ctors = Module["___wasm_call_ctors"] = Module["asm"]["__wasm_call_ctors"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _rnnoise_get_size = Module["_rnnoise_get_size"] = function() { - return (_rnnoise_get_size = Module["_rnnoise_get_size"] = Module["asm"]["rnnoise_get_size"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _rnnoise_init = Module["_rnnoise_init"] = function() { - return (_rnnoise_init = Module["_rnnoise_init"] = Module["asm"]["rnnoise_init"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _rnnoise_create = Module["_rnnoise_create"] = function() { - return (_rnnoise_create = Module["_rnnoise_create"] = Module["asm"]["rnnoise_create"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _malloc = Module["_malloc"] = function() { - return (_malloc = Module["_malloc"] = Module["asm"]["malloc"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _rnnoise_destroy = Module["_rnnoise_destroy"] = function() { - return (_rnnoise_destroy = Module["_rnnoise_destroy"] = Module["asm"]["rnnoise_destroy"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _free = Module["_free"] = function() { - return (_free = Module["_free"] = Module["asm"]["free"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _rnnoise_process_frame = Module["_rnnoise_process_frame"] = function() { - return (_rnnoise_process_frame = Module["_rnnoise_process_frame"] = Module["asm"]["rnnoise_process_frame"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _denoise_proc = Module["_denoise_proc"] = function() { - return (_denoise_proc = Module["_denoise_proc"] = Module["asm"]["denoise_proc"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _rnnDenoise_rawmem = Module["_rnnDenoise_rawmem"] = function() { - return (_rnnDenoise_rawmem = Module["_rnnDenoise_rawmem"] = Module["asm"]["rnnDenoise_rawmem"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _rnnDenoise_rawmem_perf = Module["_rnnDenoise_rawmem_perf"] = function() { - return (_rnnDenoise_rawmem_perf = Module["_rnnDenoise_rawmem_perf"] = Module["asm"]["rnnDenoise_rawmem_perf"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _get_rnnDenoise_rawmem_time = Module["_get_rnnDenoise_rawmem_time"] = function() { - return (_get_rnnDenoise_rawmem_time = Module["_get_rnnDenoise_rawmem_time"] = Module["asm"]["get_rnnDenoise_rawmem_time"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _getResultPointer = Module["_getResultPointer"] = function() { - return (_getResultPointer = Module["_getResultPointer"] = Module["asm"]["getResultPointer"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _getResultSize = Module["_getResultSize"] = function() { - return (_getResultSize = Module["_getResultSize"] = Module["asm"]["getResultSize"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _getsampleRate = Module["_getsampleRate"] = function() { - return (_getsampleRate = Module["_getsampleRate"] = Module["asm"]["getsampleRate"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _getchannels = Module["_getchannels"] = function() { - return (_getchannels = Module["_getchannels"] = Module["asm"]["getchannels"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _getsampleCount = Module["_getsampleCount"] = function() { - return (_getsampleCount = Module["_getsampleCount"] = Module["asm"]["getsampleCount"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _freeBuffer = Module["_freeBuffer"] = function() { - return (_freeBuffer = Module["_freeBuffer"] = Module["asm"]["freeBuffer"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var _main = Module["_main"] = function() { - return (_main = Module["_main"] = Module["asm"]["main"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var ___errno_location = Module["___errno_location"] = function() { - return (___errno_location = Module["___errno_location"] = Module["asm"]["__errno_location"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var stackSave = Module["stackSave"] = function() { - return (stackSave = Module["stackSave"] = Module["asm"]["stackSave"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var stackRestore = Module["stackRestore"] = function() { - return (stackRestore = Module["stackRestore"] = Module["asm"]["stackRestore"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var stackAlloc = Module["stackAlloc"] = function() { - return (stackAlloc = Module["stackAlloc"] = Module["asm"]["stackAlloc"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var __growWasmMemory = Module["__growWasmMemory"] = function() { - return (__growWasmMemory = Module["__growWasmMemory"] = Module["asm"]["__growWasmMemory"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var dynCall_ii = Module["dynCall_ii"] = function() { - return (dynCall_ii = Module["dynCall_ii"] = Module["asm"]["dynCall_ii"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var dynCall_iiii = Module["dynCall_iiii"] = function() { - return (dynCall_iiii = Module["dynCall_iiii"] = Module["asm"]["dynCall_iiii"]).apply(null, arguments); -}; - -/** @type {function(...*):?} */ -var dynCall_jiji = Module["dynCall_jiji"] = function() { - return (dynCall_jiji = Module["dynCall_jiji"] = Module["asm"]["dynCall_jiji"]).apply(null, arguments); -}; - -// === Auto-generated postamble setup entry stuff === - -Module["cwrap"] = cwrap; -var calledRun; - -/** - * @constructor - * @this {ExitStatus} - */ -function ExitStatus(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 -}; - -function callMain(args) { - - 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); - // In PROXY_TO_PTHREAD builds, we should never exit the runtime below, as execution is asynchronously handed - // off to a pthread. - // 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 == 'unwind') { - // 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; - } -} - -/** @type {function(Array=)} */ -function run(args) { - args = args || arguments_; - - if (runDependencies > 0) { - return; - } - - - 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; - Module['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(); - } -} -Module['run'] = run; - - -/** @param {boolean|number=} implicit */ -function exit(status, implicit) { - - // 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) { - } else { - - 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()(); - } -} - -// shouldRunNow refers to calling main(), not run(). -var shouldRunNow = true; - -if (Module['noInitialRun']) shouldRunNow = false; - - - noExitRuntime = true; - -run(); - -// {{MODULE_ADDITIONS}} diff --git a/src/sdk/base/rnn_denoise.wasm b/src/sdk/base/rnn_denoise.wasm deleted file mode 100644 index e48145aa82de7be8726c68021022d93441b19722..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 235255 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