New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

agora-extension-ai-denoiser

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

agora-extension-ai-denoiser - npm Package Compare versions

Comparing version 1.0.0-beta to 1.0.0-beta1

44

agora-extension-ai-denoiser_cn.d.ts

@@ -8,12 +8,2 @@ import { AudioExtension } from 'agora-rte-extension';

/**
* 控制 AGC 内部参数。
*/
export declare interface AGCParameters {
targetLevelDbfs: number;
compressionGainDb: number;
maxCompressionGainDb: number;
limiterEnable: number;
}
export declare class AIDenoiserExtension extends AudioExtension<AIDenoiserProcessor> implements IAIDenoiserExtension {

@@ -30,2 +20,3 @@ private moduleAdded;

protected _createProcessor(): AIDenoiserProcessor;
isAvailable(): boolean;
}

@@ -56,4 +47,4 @@

protected onPiped(context: IAudioProcessorContext): void;
setNsParams(nsParams: NSParameters): void;
setAgcParams(agcParams: AGCParameters): void;
setNsParams(nsParams: any): void;
setAgcParams(agcParams: any): void;
onTrack(track: MediaStreamTrack): void;

@@ -154,3 +145,3 @@ onNode(node: AudioNode, context: IAudioProcessorContext): void;

*/
setNsParams(nsParams: NSParameters): void;
setNsParams(nsParams: any): void;
/**

@@ -162,30 +153,5 @@ * @internal

*/
setAgcParams(agcParams: AGCParameters): void;
setAgcParams(agcParams: any): void;
}
/**
* 控制 NS 内部参数。
*/
export declare interface NSParameters {
attackFactor: number;
releaseFactor: number;
upperBound: number;
upperMask: number;
lowerBound: number;
lowerMask: number;
triangle1: number;
triangle2: number;
triangle3: number;
thresholdAI: number;
thresholdStastical: number;
enhFactorAI: number;
enhFactorStastical: number;
strategy: number;
noiseOverEstimate: number;
statisticalBound: number;
gainBoostVal: number;
finalLowerMask: number;
noisePowFloor: number;
}
export { }

@@ -8,12 +8,2 @@ import { AudioExtension } from 'agora-rte-extension';

/**
* control internal parameters of AGC.
*/
export declare interface AGCParameters {
targetLevelDbfs: number;
compressionGainDb: number;
maxCompressionGainDb: number;
limiterEnable: number;
}
export declare class AIDenoiserExtension extends AudioExtension<AIDenoiserProcessor> implements IAIDenoiserExtension {

@@ -30,2 +20,3 @@ private moduleAdded;

protected _createProcessor(): AIDenoiserProcessor;
isAvailable(): boolean;
}

@@ -56,4 +47,4 @@

protected onPiped(context: IAudioProcessorContext): void;
setNsParams(nsParams: NSParameters): void;
setAgcParams(agcParams: AGCParameters): void;
setNsParams(nsParams: any): void;
setAgcParams(agcParams: any): void;
onTrack(track: MediaStreamTrack): void;

@@ -154,3 +145,3 @@ onNode(node: AudioNode, context: IAudioProcessorContext): void;

*/
setNsParams(nsParams: NSParameters): void;
setNsParams(nsParams: any): void;
/**

@@ -162,30 +153,5 @@ * @internal

*/
setAgcParams(agcParams: AGCParameters): void;
setAgcParams(agcParams: any): void;
}
/**
* control internal parameters of NS.
*/
export declare interface NSParameters {
attackFactor: number;
releaseFactor: number;
upperBound: number;
upperMask: number;
lowerBound: number;
lowerMask: number;
triangle1: number;
triangle2: number;
triangle3: number;
thresholdAI: number;
thresholdStastical: number;
enhFactorAI: number;
enhFactorStastical: number;
strategy: number;
noiseOverEstimate: number;
statisticalBound: number;
gainBoostVal: number;
finalLowerMask: number;
noisePowFloor: number;
}
export { }

@@ -8,16 +8,2 @@ import { AudioExtension } from 'agora-rte-extension';

/**
* 控制 AGC 内部参数。
*/
/**
* @en
* control internal parameters of AGC.
*/
export declare interface AGCParameters {
targetLevelDbfs: number;
compressionGainDb: number;
maxCompressionGainDb: number;
limiterEnable: number;
}
/** @ignore */

@@ -35,2 +21,3 @@ export declare class AIDenoiserExtension extends AudioExtension<AIDenoiserProcessor> implements IAIDenoiserExtension {

protected _createProcessor(): AIDenoiserProcessor;
isAvailable(): boolean;
}

@@ -69,4 +56,4 @@

protected onPiped(context: IAudioProcessorContext): void;
setNsParams(nsParams: NSParameters): void;
setAgcParams(agcParams: AGCParameters): void;
setNsParams(nsParams: any): void;
setAgcParams(agcParams: any): void;
onTrack(track: MediaStreamTrack): void;

@@ -250,3 +237,3 @@ onNode(node: AudioNode, context: IAudioProcessorContext): void;

*/
setNsParams(nsParams: NSParameters): void;
setNsParams(nsParams: any): void;
/**

@@ -265,34 +252,5 @@ * @internal

*/
setAgcParams(agcParams: AGCParameters): void;
setAgcParams(agcParams: any): void;
}
/**
* 控制 NS 内部参数。
*/
/**
* @en
* control internal parameters of NS.
*/
export declare interface NSParameters {
attackFactor: number;
releaseFactor: number;
upperBound: number;
upperMask: number;
lowerBound: number;
lowerMask: number;
triangle1: number;
triangle2: number;
triangle3: number;
thresholdAI: number;
thresholdStastical: number;
enhFactorAI: number;
enhFactorStastical: number;
strategy: number;
noiseOverEstimate: number;
statisticalBound: number;
gainBoostVal: number;
finalLowerMask: number;
noisePowFloor: number;
}
export { }

4

external/denoiser-wasm.js

@@ -1,2 +0,2 @@

var createAudioEngine=(()=>{var vt="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return function(n){n=n||{};var e,i,v=(v="function"==typeof AudioWorkletGlobalScope?globalThis.Module:v)||(void 0!==n?n:{}),t=Object.assign;v.ready=new Promise(function(n,t){e=n,i=t});var r,a=t({},v),o="./this.program",u="object"==typeof window,c="function"==typeof importScripts,s="function"==typeof AudioWorkletGlobalScope,f="";u||c?(c?f=self.location.href:"undefined"!=typeof document&&document.currentScript&&(f=document.currentScript.src),f=0!==(f=vt?vt:f).indexOf("blob:")?f.substr(0,f.replace(/[?#].*/,"").lastIndexOf("/")+1):"",c&&(r=function(n){var t=new XMLHttpRequest;return t.open("GET",n,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)})):s&&Object.assign(globalThis,{performance:globalThis.performance||{now:function(){return Date.now()}}});var l,h=v.print||console.log.bind(console),p=v.printErr||console.warn.bind(console);t(v,a),v.thisProgram&&(o=v.thisProgram),v.wasmBinary&&(l=v.wasmBinary);v.noExitRuntime;"object"!=typeof WebAssembly&&z("no native wasm support detected");var d,y=!1,g="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function m(n,t,e){var r=t+e;for(e=t;n[e]&&!(r<=e);)++e;if(16<e-t&&n.subarray&&g)return g.decode(n.subarray(t,e));for(r="";t<e;){var a,i,o=n[t++];128&o?(a=63&n[t++],192==(224&o)?r+=String.fromCharCode((31&o)<<6|a):(i=63&n[t++],(o=224==(240&o)?(15&o)<<12|a<<6|i:(7&o)<<18|a<<12|i<<6|63&n[t++])<65536?r+=String.fromCharCode(o):(o-=65536,r+=String.fromCharCode(55296|o>>10,56320|1023&o)))):r+=String.fromCharCode(o)}return r}function w(n,t,e,r){if(0<r){r=e+r-1;for(var a=0;a<n.length;++a){var i=n.charCodeAt(a);if((i=55296<=i&&i<=57343?65536+((1023&i)<<10)|1023&n.charCodeAt(++a):i)<=127){if(r<=e)break;t[e++]=i}else{if(i<=2047){if(r<=e+1)break;t[e++]=192|i>>6}else{if(i<=65535){if(r<=e+2)break;t[e++]=224|i>>12}else{if(r<=e+3)break;t[e++]=240|i>>18,t[e++]=128|i>>12&63}t[e++]=128|i>>6&63}t[e++]=128|63&i}}t[e]=0}}function b(n){for(var t=0,e=0;e<n.length;++e){var r=n.charCodeAt(e);(r=55296<=r&&r<=57343?65536+((1023&r)<<10)|1023&n.charCodeAt(++e):r)<=127?++t:t=r<=2047?t+2:r<=65535?t+3:t+4}return t}var A,W,T,C,V,_,E,P,j,D="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function k(n,t){for(var e=n>>1,r=e+t/2;!(r<=e)&&V[e];)++e;if(32<(e<<=1)-n&&D)return D.decode(T.subarray(n,e));for(e="",r=0;!(t/2<=r);++r){var a=C[n+2*r>>1];if(0==a)break;e+=String.fromCharCode(a)}return e}function F(n,t,e){if((e=void 0===e?2147483647:e)<2)return 0;var r=t;e=(e-=2)<2*n.length?e/2:n.length;for(var a=0;a<e;++a)C[t>>1]=n.charCodeAt(a),t+=2;return C[t>>1]=0,t-r}function O(n){return 2*n.length}function S(n,t){for(var e=0,r="";!(t/4<=e);){var a=_[n+4*e>>2];if(0==a)break;++e,65536<=a?(a-=65536,r+=String.fromCharCode(55296|a>>10,56320|1023&a)):r+=String.fromCharCode(a)}return r}function Y(n,t,e){if((e=void 0===e?2147483647:e)<4)return 0;var r=t;e=r+e-4;for(var a=0;a<n.length;++a){var i=n.charCodeAt(a);if(55296<=i&&i<=57343&&(i=65536+((1023&i)<<10)|1023&n.charCodeAt(++a)),_[t>>2]=i,e<(t+=4)+4)break}return _[t>>2]=0,t-r}function M(n){for(var t=0,e=0;e<n.length;++e){var r=n.charCodeAt(e);55296<=r&&r<=57343&&++e,t+=4}return t}function X(){var n=d.buffer;A=n,v.HEAP8=W=new Int8Array(n),v.HEAP16=C=new Int16Array(n),v.HEAP32=_=new Int32Array(n),v.HEAPU8=T=new Uint8Array(n),v.HEAPU16=V=new Uint16Array(n),v.HEAPU32=E=new Uint32Array(n),v.HEAPF32=P=new Float32Array(n),v.HEAPF64=j=new Float64Array(n)}var I,R=[],U=[],x=[];var H,B=0,Z=null,$=null;function z(n){throw v.onAbort&&v.onAbort(n),p(n="Aborted("+n+")"),y=!0,n=new WebAssembly.RuntimeError(n+". Build with -s ASSERTIONS=1 for more info."),i(n),n}function G(){return H.startsWith("data:application/octet-stream;base64,")}function N(){var n=H;try{if(n==H&&l)return new Uint8Array(l);if(r)return r(n);throw"both async and sync fetching of the wasm failed"}catch(n){z(n)}}function q(n){for(;0<n.length;){var t,e=n.shift();"function"==typeof e?e(v):"number"==typeof(t=e.$a)?void 0===e.ta?J(t)():J(t)(e.ta):t(void 0===e.ta?null:e.ta)}}v.preloadedImages={},v.preloadedAudios={},H="audio_denoiser.wasm",G()||(a=H,H=v.locateFile?v.locateFile(a,f):f+a);var L=[];function J(n){var t=L[n];return t||(n>=L.length&&(L.length=n+1),L[n]=t=I.get(n)),t}function K(n){this.W=n-16,this.Ta=function(n){_[this.W+4>>2]=n},this.Qa=function(n){_[this.W+8>>2]=n},this.Ra=function(){_[this.W>>2]=0},this.Pa=function(){W[this.W+12>>0]=0},this.Sa=function(){W[this.W+13>>0]=0},this.La=function(n,t){this.Ta(n),this.Qa(t),this.Ra(),this.Pa(),this.Sa()}}var Q={};function nn(n){for(;n.length;){var t=n.pop();n.pop()(t)}}function tn(n){return this.fromWireType(E[n>>2])}var en={},rn={},an={};function on(n){if(void 0===n)return"_unknown";var t=(n=n.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return 48<=t&&t<=57?"_"+n:n}function un(n,t){return n=on(n),new Function("body","return function "+n+'() {\n "use strict"; return body.apply(this, arguments);\n};\n')(t)}function cn(t){var n=Error,e=un(t,function(n){this.name=t,this.message=n,void 0!==(n=Error(n).stack)&&(this.stack=this.toString()+"\n"+n.replace(/^Error(:[^\n]*)?\n/,""))});return e.prototype=Object.create(n.prototype),(e.prototype.constructor=e).prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},e}var sn=void 0;function fn(n){throw new sn(n)}function ln(e,t,r){function a(n){(n=r(n)).length!==e.length&&fn("Mismatched type converter count");for(var t=0;t<e.length;++t)mn(e[t],n[t])}e.forEach(function(n){an[n]=t});var i=Array(t.length),o=[],u=0;t.forEach(function(n,t){rn.hasOwnProperty(n)?i[t]=rn[n]:(o.push(n),en.hasOwnProperty(n)||(en[n]=[]),en[n].push(function(){i[t]=rn[n],++u===o.length&&a(i)}))}),0===o.length&&a(i)}var hn={};function pn(n){switch(n){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+n)}}var dn=void 0;function vn(n){for(var t="";T[n];)t+=dn[T[n++]];return t}var yn=void 0;function gn(n){throw new yn(n)}function mn(n,t,e){if(e=e||{},!("argPackAdvance"in t))throw new TypeError("registerType registeredInstance requires argPackAdvance");var r=t.name;if(n||gn('type "'+r+'" must have a positive integer typeid pointer'),rn.hasOwnProperty(n)){if(e.Ka)return;gn("Cannot register type '"+r+"' twice")}rn[n]=t,delete an[n],en.hasOwnProperty(n)&&(t=en[n],delete en[n],t.forEach(function(n){n()}))}function wn(n){gn(n.V.Y.X.name+" instance already deleted")}var bn=!1;function An(){}function Wn(n){--n.count.value,0===n.count.value&&(n.$?n.ca.ba(n.$):n.Y.X.ba(n.W))}function Tn(n){return"undefined"==typeof FinalizationGroup?(Tn=function(n){return n},n):(bn=new FinalizationGroup(function(n){for(var t=n.next();!t.done;t=n.next())(t=t.value).W?Wn(t):console.warn("object already deleted: "+t.W)}),An=function(n){bn.unregister(n.V)},(Tn=function(n){return bn.register(n,n.V,n.V),n})(n))}var Cn=void 0,Vn=[];function _n(){for(;Vn.length;){var n=Vn.pop();n.V.ha=!1,n.delete()}}function En(){}var Pn={};function jn(n,t,e){var r;void 0===n[t].ea&&(r=n[t],n[t]=function(){return n[t].ea.hasOwnProperty(arguments.length)||gn("Function '"+e+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+n[t].ea+")!"),n[t].ea[arguments.length].apply(this,arguments)},n[t].ea=[],n[t].ea[r.na]=r)}function Dn(n,t,e,r,a,i,o,u){this.name=n,this.constructor=t,this.fa=e,this.ba=r,this.da=a,this.Ia=i,this.ma=o,this.Ga=u,this.Na=[]}function kn(n,t,e){for(;t!==e;)t.ma||gn("Expected null or instance of "+e.name+", got an instance of "+t.name),n=t.ma(n),t=t.da;return n}function Fn(n,t){return null===t?(this.xa&&gn("null is not a valid "+this.name),0):(t.V||gn('Cannot pass "'+qn(t)+'" as a '+this.name),t.V.W||gn("Cannot pass deleted object as a pointer of type "+this.name),kn(t.V.W,t.V.Y.X,this.X))}function On(n,t){if(null===t){if(this.xa&&gn("null is not a valid "+this.name),this.pa){var e=this.ka();return null!==n&&n.push(this.ba,e),e}return 0}if(t.V||gn('Cannot pass "'+qn(t)+'" as a '+this.name),t.V.W||gn("Cannot pass deleted object as a pointer of type "+this.name),!this.oa&&t.V.Y.oa&&gn("Cannot convert argument of type "+(t.V.ca||t.V.Y).name+" to parameter type "+this.name),e=kn(t.V.W,t.V.Y.X,this.X),this.pa)switch(void 0===t.V.$&&gn("Passing raw pointer to smart pointer is illegal"),this.Ua){case 0:t.V.ca===this?e=t.V.$:gn("Cannot convert argument of type "+(t.V.ca||t.V.Y).name+" to parameter type "+this.name);break;case 1:e=t.V.$;break;case 2:var r;t.V.ca===this?e=t.V.$:(r=t.clone(),e=this.Oa(e,Nn(function(){r.delete()})),null!==n&&n.push(this.ba,e));break;default:gn("Unsupporting sharing policy")}return e}function Sn(n,t){return null===t?(this.xa&&gn("null is not a valid "+this.name),0):(t.V||gn('Cannot pass "'+qn(t)+'" as a '+this.name),t.V.W||gn("Cannot pass deleted object as a pointer of type "+this.name),t.V.Y.oa&&gn("Cannot convert argument of type "+t.V.Y.name+" to parameter type "+this.name),kn(t.V.W,t.V.Y.X,this.X))}var Yn={};function Mn(n,t){return t.Y&&t.W||fn("makeClassHandle requires ptr and ptrType"),!!t.ca!=!!t.$&&fn("Both smartPtrType and smartPtr must be specified"),t.count={value:1},Tn(Object.create(n,{V:{value:t}}))}function Xn(n,t,e,r){this.name=n,this.X=t,this.xa=e,this.oa=r,this.pa=!1,(this.ba=this.Oa=this.ka=this.Ea=this.Ua=this.Ma=void 0)!==t.da?this.toWireType=On:(this.toWireType=r?Fn:Sn,this.aa=null)}function In(n,t){var e,r,a,i=(n=vn(n)).includes("j")?(e=n,r=t,a=[],function(){a.length=arguments.length;for(var n=0;n<arguments.length;n++)a[n]=arguments[n];return n=e.includes("j")?(n=v["dynCall_"+e],a&&a.length?n.apply(null,[r].concat(a)):n.call(null,r)):J(r).apply(null,a)}):J(t);return"function"!=typeof i&&gn("unknown function pointer with signature "+n+": "+t),i}var Rn=void 0;function Un(n){var t=vn(n=pt(n));return lt(n),t}function xn(n,t){var e=[],r={};throw t.forEach(function n(t){r[t]||rn[t]||(an[t]?an[t].forEach(n):(e.push(t),r[t]=!0))}),new Rn(n+": "+e.map(Un).join([", "]))}function Hn(n,t){for(var e=[],r=0;r<n;r++)e.push(_[(t>>2)+r]);return e}function Bn(n,t,e,r,a){var i=t.length;i<2&&gn("argTypes array size mismatch! Must at least get return value and 'this' types!");var o=null!==t[1]&&null!==e,u=!1;for(e=1;e<t.length;++e)if(null!==t[e]&&void 0===t[e].aa){u=!0;break}var c="void"!==t[0].name,s="",f="";for(e=0;e<i-2;++e)s+=(0!==e?", ":"")+"arg"+e,f+=(0!==e?", ":"")+"arg"+e+"Wired";n="return function "+on(n)+"("+s+") {\nif (arguments.length !== "+(i-2)+") {\nthrowBindingError('function "+n+" called with ' + arguments.length + ' arguments, expected "+(i-2)+" args!');\n}\n",u&&(n+="var destructors = [];\n");var l=u?"destructors":"null",s="throwBindingError invoker fn runDestructors retType classParam".split(" ");for(r=[gn,r,a,nn,t[0],t[1]],o&&(n+="var thisWired = classParam.toWireType("+l+", this);\n"),e=0;e<i-2;++e)n+="var arg"+e+"Wired = argType"+e+".toWireType("+l+", arg"+e+"); // "+t[e+2].name+"\n",s.push("argType"+e),r.push(t[e+2]);if(n+=(c?"var rv = ":"")+"invoker(fn"+(0<(f=o?"thisWired"+(0<f.length?", ":"")+f:f).length?", ":"")+f+");\n",u)n+="runDestructors(destructors);\n";else for(e=o?1:2;e<t.length;++e)i=1===e?"thisWired":"arg"+(e-2)+"Wired",null!==t[e].aa&&(n+=i+"_dtor("+i+"); // "+t[e].name+"\n",s.push(i+"_dtor"),r.push(t[e].aa));return c&&(n+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),s.push(n+"}\n"),function(n){var t=Function;if(!(t instanceof Function))throw new TypeError("new_ called with constructor type "+typeof t+" which is not a function");var e=un(t.name||"unknownFunctionName",function(){});return e.prototype=t.prototype,e=new e,(n=t.apply(e,n))instanceof Object?n:e}(s).apply(null,r)}function Zn(n,t,e){return n instanceof Object||gn(e+' with invalid "this": '+n),n instanceof t.X.constructor||gn(e+' incompatible with "this" of type '+n.constructor.name),n.V.W||gn("cannot call emscripten binding method "+e+" on deleted object"),kn(n.V.W,n.V.Y.X,t.X)}var $n=[],zn=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Gn(n){4<n&&0==--zn[n].ya&&(zn[n]=void 0,$n.push(n))}function Nn(n){switch(n){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var t=$n.length?$n.pop():zn.length;return zn[t]={ya:1,value:n},t}}function qn(n){if(null===n)return"null";var t=typeof n;return"object"==t||"array"==t||"function"==t?n.toString():""+n}var Ln={};function Jn(){if(!Kn){var n,t={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:o||"./this.program"};for(n in Ln)void 0===Ln[n]?delete t[n]:t[n]=Ln[n];var e=[];for(n in t)e.push(n+"="+t[n]);Kn=e}return Kn}var Kn,Qn=[null,[],[]],nt={};function tt(n){return 0==n%4&&(0!=n%100||0==n%400)}function et(n,t){for(var e=0,r=0;r<=t;e+=n[r++]);return e}var rt=[31,29,31,30,31,30,31,31,30,31,30,31],at=[31,28,31,30,31,30,31,31,30,31,30,31];function it(n,t){for(n=new Date(n.getTime());0<t;){var e=n.getMonth(),r=(tt(n.getFullYear())?rt:at)[e];if(!(t>r-n.getDate())){n.setDate(n.getDate()+t);break}t-=r-n.getDate()+1,n.setDate(1),e<11?n.setMonth(e+1):(n.setMonth(0),n.setFullYear(n.getFullYear()+1))}return n}function ot(n,t,e,r){function a(n,t,e){for(n="number"==typeof n?n.toString():n||"";n.length<t;)n=e[0]+n;return n}function i(n,t){return a(n,t,"0")}function o(n,t){function e(n){return n<0?-1:0<n?1:0}var r;return r=0===(r=e(n.getFullYear()-t.getFullYear()))&&0===(r=e(n.getMonth()-t.getMonth()))?e(n.getDate()-t.getDate()):r}function u(n){switch(n.getDay()){case 0:return new Date(n.getFullYear()-1,11,29);case 1:return n;case 2:return new Date(n.getFullYear(),0,3);case 3:return new Date(n.getFullYear(),0,2);case 4:return new Date(n.getFullYear(),0,1);case 5:return new Date(n.getFullYear()-1,11,31);case 6:return new Date(n.getFullYear()-1,11,30)}}function c(n){n=it(new Date(n.Z+1900,0,1),n.sa);var t=new Date(n.getFullYear()+1,0,4),e=u(new Date(n.getFullYear(),0,4)),t=u(t);return o(e,n)<=0?o(t,n)<=0?n.getFullYear()+1:n.getFullYear():n.getFullYear()-1}var s,f=_[r+40>>2];for(s in r={Xa:_[r>>2],Wa:_[r+4>>2],qa:_[r+8>>2],la:_[r+12>>2],ia:_[r+16>>2],Z:_[r+20>>2],ra:_[r+24>>2],sa:_[r+28>>2],cb:_[r+32>>2],Va:_[r+36>>2],Ya:f?m(T,f,void 0):""},e=e?m(T,e,void 0):"",f={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})e=e.replace(new RegExp(s,"g"),f[s]);var l,h,p="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),d="January February March April May June July August September October November December".split(" ");for(s in f={"%a":function(n){return p[n.ra].substring(0,3)},"%A":function(n){return p[n.ra]},"%b":function(n){return d[n.ia].substring(0,3)},"%B":function(n){return d[n.ia]},"%C":function(n){return i((n.Z+1900)/100|0,2)},"%d":function(n){return i(n.la,2)},"%e":function(n){return a(n.la,2," ")},"%g":function(n){return c(n).toString().substring(2)},"%G":c,"%H":function(n){return i(n.qa,2)},"%I":function(n){return 0==(n=n.qa)?n=12:12<n&&(n-=12),i(n,2)},"%j":function(n){return i(n.la+et(tt(n.Z+1900)?rt:at,n.ia-1),3)},"%m":function(n){return i(n.ia+1,2)},"%M":function(n){return i(n.Wa,2)},"%n":function(){return"\n"},"%p":function(n){return 0<=n.qa&&n.qa<12?"AM":"PM"},"%S":function(n){return i(n.Xa,2)},"%t":function(){return"\t"},"%u":function(n){return n.ra||7},"%U":function(n){var t=new Date(n.Z+1900,0,1),e=0===t.getDay()?t:it(t,7-t.getDay());return o(e,n=new Date(n.Z+1900,n.ia,n.la))<0?i(Math.ceil((31-e.getDate()+(et(tt(n.getFullYear())?rt:at,n.getMonth()-1)-31)+n.getDate())/7),2):0===o(e,t)?"01":"00"},"%V":function(n){var t=new Date(n.Z+1901,0,4),e=u(new Date(n.Z+1900,0,4)),t=u(t),r=it(new Date(n.Z+1900,0,1),n.sa);return o(r,e)<0?"53":o(t,r)<=0?"01":i(Math.ceil((e.getFullYear()<n.Z+1900?n.sa+32-e.getDate():n.sa+1-e.getDate())/7),2)},"%w":function(n){return n.ra},"%W":function(n){var t=new Date(n.Z,0,1),e=1===t.getDay()?t:it(t,0===t.getDay()?1:7-t.getDay()+1);return o(e,n=new Date(n.Z+1900,n.ia,n.la))<0?i(Math.ceil((31-e.getDate()+(et(tt(n.getFullYear())?rt:at,n.getMonth()-1)-31)+n.getDate())/7),2):0===o(e,t)?"01":"00"},"%y":function(n){return(n.Z+1900).toString().substring(2)},"%Y":function(n){return n.Z+1900},"%z":function(n){var t=0<=(n=n.Va);return n=Math.abs(n)/60,(t?"+":"-")+String("0000"+(n/60*100+n%60)).slice(-4)},"%Z":function(n){return n.Ya},"%%":function(){return"%"}})e.includes(s)&&(e=e.replace(new RegExp(s,"g"),f[s](r)));return l=e,h=Array(b(l)+1),w(l,h,0,h.length),(s=h).length>t?0:(W.set(s,n),s.length-1)}for(var sn=v.InternalError=cn("InternalError"),ut=Array(256),ct=0;ct<256;++ct)ut[ct]=String.fromCharCode(ct);dn=ut,yn=v.BindingError=cn("BindingError"),En.prototype.isAliasOf=function(n){if(!(this instanceof En&&n instanceof En))return!1;var t=this.V.Y.X,e=this.V.W,r=n.V.Y.X;for(n=n.V.W;t.da;)e=t.ma(e),t=t.da;for(;r.da;)n=r.ma(n),r=r.da;return t===r&&e===n},En.prototype.clone=function(){if(this.V.W||wn(this),this.V.ja)return this.V.count.value+=1,this;var n=Tn,t=Object,e=t.create,r=Object.getPrototypeOf(this),a=this.V;return(n=n(e.call(t,r,{V:{value:{count:a.count,ha:a.ha,ja:a.ja,W:a.W,Y:a.Y,$:a.$,ca:a.ca}}}))).V.count.value+=1,n.V.ha=!1,n},En.prototype.delete=function(){this.V.W||wn(this),this.V.ha&&!this.V.ja&&gn("Object already scheduled for deletion"),An(this),Wn(this.V),this.V.ja||(this.V.$=void 0,this.V.W=void 0)},En.prototype.isDeleted=function(){return!this.V.W},En.prototype.deleteLater=function(){return this.V.W||wn(this),this.V.ha&&!this.V.ja&&gn("Object already scheduled for deletion"),Vn.push(this),1===Vn.length&&Cn&&Cn(_n),this.V.ha=!0,this},Xn.prototype.Ja=function(n){return n=this.Ea?this.Ea(n):n},Xn.prototype.Ca=function(n){this.ba&&this.ba(n)},Xn.prototype.argPackAdvance=8,Xn.prototype.readValueFromPointer=tn,Xn.prototype.deleteObject=function(n){null!==n&&n.delete()},Xn.prototype.fromWireType=function(n){function t(){return this.pa?Mn(this.X.fa,{Y:this.Ma,W:e,ca:this,$:n}):Mn(this.X.fa,{Y:this,W:n})}var e=this.Ja(n);if(!e)return this.Ca(n),null;if(void 0!==(r=function(n,t){for(void 0===t&&gn("ptr should not be undefined");n.da;)t=n.ma(t),n=n.da;return Yn[t]}(this.X,e)))return 0===r.V.count.value?(r.V.W=e,r.V.$=n,r.clone()):(r=r.clone(),this.Ca(n),r);if(r=this.X.Ia(e),!(r=Pn[r]))return t.call(this);var r=this.oa?r.Fa:r.pointerType,a=function n(t,e,r){return e===r?t:void 0===r.da||null===(t=n(t,e,r.da))?null:r.Ga(t)}(e,this.X,r.X);return null===a?t.call(this):this.pa?Mn(r.X.fa,{Y:r,W:a,ca:this,$:n}):Mn(r.X.fa,{Y:r,W:a})},v.getInheritedInstanceCount=function(){return Object.keys(Yn).length},v.getLiveInheritedInstances=function(){var n,t=[];for(n in Yn)Yn.hasOwnProperty(n)&&t.push(Yn[n]);return t},v.flushPendingDeletes=_n,v.setDelayFunction=function(n){Cn=n,Vn.length&&Cn&&Cn(_n)},Rn=v.UnboundTypeError=cn("UnboundTypeError"),v.count_emval_handles=function(){for(var n=0,t=5;t<zn.length;++t)void 0!==zn[t]&&++n;return n},v.get_first_emval=function(){for(var n=5;n<zn.length;++n)if(void 0!==zn[n])return zn[n];return null};var st={g:function(n){return ht(n+16)+16},f:function(n,t,e){throw new K(n).La(t,e),n},H:function(n){var a=Q[n];delete Q[n];var i=a.elements,s=i.length,t=i.map(function(n){return n.wa}).concat(i.map(function(n){return n.Aa})),o=a.ka,u=a.ba;ln([n],t,function(c){return i.forEach(function(n,t){var e=c[t],r=n.ua,a=n.va,i=c[t+s],o=n.za,u=n.Ba;n.read=function(n){return e.fromWireType(r(a,n))},n.write=function(n,t){var e=[];o(u,n,i.toWireType(e,t)),nn(e)}}),[{name:a.name,fromWireType:function(n){for(var t=Array(s),e=0;e<s;++e)t[e]=i[e].read(n);return u(n),t},toWireType:function(n,t){if(s!==t.length)throw new TypeError("Incorrect number of tuple elements for "+a.name+": expected="+s+", actual="+t.length);for(var e=o(),r=0;r<s;++r)i[r].write(e,t[r]);return null!==n&&n.push(u,e),e},argPackAdvance:8,readValueFromPointer:tn,aa:u}]})},i:function(n){var t=hn[n];delete hn[n];var a=t.ka,i=t.ba,f=t.Da;ln([n],f.map(function(n){return n.wa}).concat(f.map(function(n){return n.Aa})),function(c){var s={};return f.forEach(function(n,t){var e=c[t],r=n.ua,a=n.va,i=c[t+f.length],o=n.za,u=n.Ba;s[n.Ha]={read:function(n){return e.fromWireType(r(a,n))},write:function(n,t){var e=[];o(u,n,i.toWireType(e,t)),nn(e)}}}),[{name:t.name,fromWireType:function(n){var t,e={};for(t in s)e[t]=s[t].read(n);return i(n),e},toWireType:function(n,t){for(var e in s)if(!(e in t))throw new TypeError('Missing field: "'+e+'"');var r=a();for(e in s)s[e].write(r,t[e]);return null!==n&&n.push(i,r),r},argPackAdvance:8,readValueFromPointer:tn,aa:i}]})},w:function(){},F:function(n,e,r,a,i){var o=pn(r);mn(n,{name:e=vn(e),fromWireType:function(n){return!!n},toWireType:function(n,t){return t?a:i},argPackAdvance:8,readValueFromPointer:function(n){if(1===r)var t=W;else if(2===r)t=C;else{if(4!==r)throw new TypeError("Unknown boolean type size: "+e);t=_}return this.fromWireType(t[n>>o])},aa:null})},q:function(u,n,t,c,e,s,r,f,a,l,h,i,p){h=vn(h),s=In(e,s),f=f&&In(r,f),l=l&&In(a,l),p=In(i,p);var d=on(h);a=d,i=function(){xn("Cannot construct "+h+" due to unbound types",[c])},v.hasOwnProperty(a)?(gn("Cannot register public name '"+a+"' twice"),jn(v,a,a),v.hasOwnProperty(void 0)&&gn("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"),v[a].ea[void 0]=i):v[a]=i,ln([u,n,t],c?[c]:[],function(n){n=n[0],i=c?(a=n.X).fa:En.prototype,n=un(d,function(){if(Object.getPrototypeOf(this)!==t)throw new yn("Use 'new' to construct "+h);if(void 0===r.ga)throw new yn(h+" has no accessible constructor");var n=r.ga[arguments.length];if(void 0===n)throw new yn("Tried to invoke ctor of "+h+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(r.ga).toString()+") parameters instead!");return n.apply(this,arguments)});var t=Object.create(i,{constructor:{value:n}});n.prototype=t;var e,r=new Dn(h,n,t,p,a,s,f,l),a=new Xn(h,r,!0,!1),i=new Xn(h+"*",r,!1,!1),o=new Xn(h+" const*",r,!1,!0);return Pn[u]={pointerType:i,Fa:o},e=d,n=n,v.hasOwnProperty(e)||fn("Replacing nonexistant public symbol"),v[e]=n,v[e].na=void 0,[a,i,o]})},n:function(n,r,t,e,a,i){0<r||z(void 0);var o=Hn(r,t);a=In(e,a),ln([],[n],function(t){var e="constructor "+(t=t[0]).name;if(void 0===t.X.ga&&(t.X.ga=[]),void 0!==t.X.ga[r-1])throw new yn("Cannot register multiple constructors with identical number of parameters ("+(r-1)+") for class '"+t.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return t.X.ga[r-1]=function(){xn("Cannot construct "+t.name+" due to unbound types",o)},ln([],o,function(n){return n.splice(1,0,null),t.X.ga[r-1]=Bn(e,n,null,a,i),[]}),[]})},e:function(n,i,o,t,e,u,c,s){var f=Hn(o,t);i=vn(i),u=In(e,u),ln([],[n],function(t){function n(){xn("Cannot call "+e+" due to unbound types",f)}var e=(t=t[0]).name+"."+i;i.startsWith("@@")&&(i=Symbol[i.substring(2)]),s&&t.X.Na.push(i);var r=t.X.fa,a=r[i];return void 0===a||void 0===a.ea&&a.className!==t.name&&a.na===o-2?(n.na=o-2,n.className=t.name,r[i]=n):(jn(r,i,e),r[i].ea[o-2]=n),ln([],f,function(n){return n=Bn(e,n,t,u,c),void 0===r[i].ea?(n.na=o-2,r[i]=n):r[i].ea[o-2]=n,[]}),[]})},m:function(n,o,t,e,u,c,r,s,f,l){o=vn(o),u=In(e,u),ln([],[n],function(a){var i=(a=a[0]).name+"."+o,n={get:function(){xn("Cannot access "+i+" due to unbound types",[t,r])},enumerable:!0,configurable:!0};return n.set=f?function(){xn("Cannot access "+i+" due to unbound types",[t,r])}:function(){gn(i+" is a read-only property")},Object.defineProperty(a.X.fa,o,n),ln([],f?[t,r]:[t],function(n){var r,t=n[0],e={get:function(){var n=Zn(this,a,i+" getter");return t.fromWireType(u(c,n))},enumerable:!0};return f&&(f=In(s,f),r=n[1],e.set=function(n){var t=Zn(this,a,i+" setter"),e=[];f(l,t,r.toWireType(e,n)),nn(e)}),Object.defineProperty(a.X.fa,o,e),[]}),[]})},E:function(n,t){mn(n,{name:t=vn(t),fromWireType:function(n){n||gn("Cannot use deleted val. handle = "+n);var t=zn[n].value;return Gn(n),t},toWireType:function(n,t){return Nn(t)},argPackAdvance:8,readValueFromPointer:tn,aa:null})},p:function(n,t,e){e=pn(e),mn(n,{name:t=vn(t),fromWireType:function(n){return n},toWireType:function(n,t){return t},argPackAdvance:8,readValueFromPointer:function(n,t){switch(t){case 2:return function(n){return this.fromWireType(P[n>>2])};case 3:return function(n){return this.fromWireType(j[n>>3])};default:throw new TypeError("Unknown float type: "+n)}}(t,e),aa:null})},d:function(n,t,e,r,a){function i(n){return n}var o;t=vn(t),-1===a&&(a=4294967295),a=pn(e),0===r&&(o=32-8*e,i=function(n){return n<<o>>>o}),e=t.includes("unsigned")?function(n,t){return t>>>0}:function(n,t){return t},mn(n,{name:t,fromWireType:i,toWireType:e,argPackAdvance:8,readValueFromPointer:function(n,t,e){switch(t){case 0:return e?function(n){return W[n]}:function(n){return T[n]};case 1:return e?function(n){return C[n>>1]}:function(n){return V[n>>1]};case 2:return e?function(n){return _[n>>2]}:function(n){return E[n>>2]};default:throw new TypeError("Unknown integer type: "+n)}}(t,a,0!==r),aa:null})},b:function(n,t,e){function r(n){var t=E;return new a(A,t[(n>>=2)+1],t[n])}var a=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][t];mn(n,{name:e=vn(e),fromWireType:r,argPackAdvance:8,readValueFromPointer:r},{Ka:!0})},r:function(n,t){var o="std::string"===(t=vn(t));mn(n,{name:t,fromWireType:function(n){var t=E[n>>2];if(o)for(var e=n+4,r=0;r<=t;++r){var a,i=n+4+r;r!=t&&0!=T[i]||(e=e?m(T,e,i-e):"",void 0===a?a=e:(a+=String.fromCharCode(0),a+=e),e=i+1)}else{for(a=Array(t),r=0;r<t;++r)a[r]=String.fromCharCode(T[n+4+r]);a=a.join("")}return lt(n),a},toWireType:function(n,t){var e="string"==typeof(t=t instanceof ArrayBuffer?new Uint8Array(t):t);e||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array||gn("Cannot pass non-string to std::string");var r=(o&&e?function(){return b(t)}:function(){return t.length})(),a=ht(4+r+1);if(E[a>>2]=r,o&&e)w(t,T,a+4,r+1);else if(e)for(e=0;e<r;++e){var i=t.charCodeAt(e);255<i&&(lt(a),gn("String has UTF-16 code units that do not fit in 8 bits")),T[a+4+e]=i}else for(e=0;e<r;++e)T[a+4+e]=t[e];return null!==n&&n.push(lt,a),a},argPackAdvance:8,readValueFromPointer:tn,aa:function(n){lt(n)}})},k:function(n,u,a){var c,i,o,s,f;a=vn(a),2===u?(c=k,i=F,o=O,s=function(){return V},f=1):4===u&&(c=S,i=Y,o=M,s=function(){return E},f=2),mn(n,{name:a,fromWireType:function(n){for(var t,e=E[n>>2],r=s(),a=n+4,i=0;i<=e;++i){var o=n+4+i*u;i!=e&&0!=r[o>>f]||(a=c(a,o-a),void 0===t?t=a:(t+=String.fromCharCode(0),t+=a),a=o+u)}return lt(n),t},toWireType:function(n,t){"string"!=typeof t&&gn("Cannot pass non-string to C++ string type "+a);var e=o(t),r=ht(4+e+u);return E[r>>2]=e>>f,i(t,r+4,e+u),null!==n&&n.push(lt,r),r},argPackAdvance:8,readValueFromPointer:tn,aa:function(n){lt(n)}})},I:function(n,t,e,r,a,i){Q[n]={name:vn(t),ka:In(e,r),ba:In(a,i),elements:[]}},l:function(n,t,e,r,a,i,o,u,c){Q[n].elements.push({wa:t,ua:In(e,r),va:a,Aa:i,za:In(o,u),Ba:c})},h:function(n,t,e,r,a,i){hn[n]={name:vn(t),ka:In(e,r),ba:In(a,i),Da:[]}},a:function(n,t,e,r,a,i,o,u,c,s){hn[n].Da.push({Ha:vn(t),wa:e,ua:In(r,a),va:i,Aa:o,za:In(u,c),Ba:s})},G:function(n,t){mn(n,{bb:!0,name:t=vn(t),argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},s:Gn,t:function(n){4<n&&(zn[n].ya+=1)},u:function(n,t){var e=rn[n];return void 0===e&&gn("_emval_take_value has unknown type "+Un(n)),Nn(n=e.readValueFromPointer(t))},c:function(){z("")},y:function(n,t,e){T.copyWithin(n,t,t+e)},j:function(n){var t=T.length;if(2147483648<(n>>>=0))return!1;for(var e=1;e<=4;e*=2){var r=t*(1+.2/e),r=Math.min(r,n+100663296);0<(r=Math.max(n,r))%65536&&(r+=65536-r%65536);n:{try{d.grow(Math.min(2147483648,r)-A.byteLength+65535>>>16),X();var a=1;break n}catch(n){}a=void 0}if(a)return!0}return!1},A:function(r,a){var i=0;return Jn().forEach(function(n,t){var e=a+i;for(t=_[r+4*t>>2]=e,e=0;e<n.length;++e)W[t++>>0]=n.charCodeAt(e);W[t>>0]=0,i+=n.length+1}),0},B:function(n,t){var e=Jn();_[n>>2]=e.length;var r=0;return e.forEach(function(n){r+=n.length+1}),_[t>>2]=r,0},D:function(){return 0},C:function(n,t,e,r){return n=nt.ab(n),t=nt.Za(n,t,e),_[r>>2]=t,0},v:function(){},o:function(n,t,e,r){for(var a=0,i=0;i<e;i++){var o=_[t>>2],u=_[t+4>>2];t+=8;for(var c=0;c<u;c++){var s=T[o+c],f=Qn[n];0===s||10===s?((1===n?h:p)(m(f,0)),f.length=0):f.push(s)}a+=u}return _[r>>2]=a,0},x:function(){},z:ot};!function(){function t(n){v.asm=n.exports,d=v.asm.J,X(),I=v.asm.N,U.unshift(v.asm.K),B--,v.monitorRunDependencies&&v.monitorRunDependencies(B),0==B&&(null!==Z&&(clearInterval(Z),Z=null),$&&(n=$,$=null,n()))}function e(n){t(n.instance)}function r(n){return(l||!u&&!c||"function"!=typeof fetch?Promise.resolve().then(N):fetch(H,{credentials:"same-origin"}).then(function(n){if(!n.ok)throw"failed to load wasm binary file at '"+H+"'";return n.arrayBuffer()}).catch(N)).then(function(n){return WebAssembly.instantiate(n,a)}).then(function(n){return n}).then(n,function(n){p("failed to asynchronously prepare wasm: "+n),z(n)})}var a={a:st};if(B++,v.monitorRunDependencies&&v.monitorRunDependencies(B),v.instantiateWasm)try{return v.instantiateWasm(a,t)}catch(n){return p("Module.instantiateWasm callback failed with error: "+n)}(l||"function"!=typeof WebAssembly.instantiateStreaming||G()||"function"!=typeof fetch?r(e):fetch(H,{credentials:"same-origin"}).then(function(n){return WebAssembly.instantiateStreaming(n,a).then(e,function(n){return p("wasm streaming compile failed: "+n),p("falling back to ArrayBuffer instantiation"),r(e)})})).catch(i)}(),v.___wasm_call_ctors=function(){return(v.___wasm_call_ctors=v.asm.K).apply(null,arguments)};var ft,lt=v._free=function(){return(lt=v._free=v.asm.L).apply(null,arguments)},ht=v._malloc=function(){return(ht=v._malloc=v.asm.M).apply(null,arguments)},pt=v.___getTypeName=function(){return(pt=v.___getTypeName=v.asm.O).apply(null,arguments)};function dt(){function n(){if(!ft&&(ft=!0,v.calledRun=!0,!y)){if(q(U),e(v),v.onRuntimeInitialized&&v.onRuntimeInitialized(),v.postRun)for("function"==typeof v.postRun&&(v.postRun=[v.postRun]);v.postRun.length;){var n=v.postRun.shift();x.unshift(n)}q(x)}}if(!(0<B)){if(v.preRun)for("function"==typeof v.preRun&&(v.preRun=[v.preRun]);v.preRun.length;)t=void 0,t=v.preRun.shift(),R.unshift(t);q(R),0<B||(v.setStatus?(v.setStatus("Running..."),setTimeout(function(){setTimeout(function(){v.setStatus("")},1),n()},1)):n())}var t}if(v.___embind_register_native_and_builtin_types=function(){return(v.___embind_register_native_and_builtin_types=v.asm.P).apply(null,arguments)},v.dynCall_jiji=function(){return(v.dynCall_jiji=v.asm.Q).apply(null,arguments)},v.dynCall_viijii=function(){return(v.dynCall_viijii=v.asm.R).apply(null,arguments)},v.dynCall_iiiiij=function(){return(v.dynCall_iiiiij=v.asm.S).apply(null,arguments)},v.dynCall_iiiiijj=function(){return(v.dynCall_iiiiijj=v.asm.T).apply(null,arguments)},v.dynCall_iiiiiijj=function(){return(v.dynCall_iiiiiijj=v.asm.U).apply(null,arguments)},$=function n(){ft||dt(),ft||($=n)},v.run=dt,v.preInit)for("function"==typeof v.preInit&&(v.preInit=[v.preInit]);0<v.preInit.length;)v.preInit.pop()();return dt(),n.ready}})();"object"==typeof exports&&"object"==typeof module?module.exports=createAudioEngine:"function"==typeof define&&define.amd?define([],function(){return createAudioEngine}):"object"==typeof exports&&(exports.createAudioEngine=createAudioEngine),"function"==typeof AudioWorkletGlobalScope&&(globalThis.createAudioEngine=createAudioEngine);
const RENDER_QUANTUM_FRAMES=128;let AudioEngine=null;class AudioEngineWasmLoader extends AudioWorkletProcessor{constructor({processorOptions:{wasmBinary:s}}){super(),createAudioEngine({wasmBinary:s}).then(s=>{if(null!==AudioEngine)throw new Error("AudioEngine has been created");AudioEngine=s,this.port.postMessage({message:"onload"})})}process(){return!1}}registerProcessor("audio-engine-wasm-loader",AudioEngineWasmLoader);class AudioDenoiserWorkletProcessor extends AudioWorkletProcessor{constructor({processorOptions:s}){super(),this._enabled=!0,this._frameCount=0,this._processorOptions=s,this._sampleRate=s.sampleRate,this._buffer=new AudioEngine.AudioBuffer(1,RENDER_QUANTUM_FRAMES),this._kernel=new AudioEngine.AudioDenoiser(s),this._bufferTime=s.bufferTime,this._monitorInterval=s.monitorInterval||5e3,this._monitorThreshold=s.monitorThreshold||.05,this._overloadCount=0,this._processMonitor=!0,this._isDumping=!1,this._dumpBundleFrames=this._bufferTime*this._sampleRate,this._dumpBundleFrameCount=0,this._dumpBundleNums=s.dumpBundleNums||3,this._dumpBundleNumCount=0,this._errorCounts=0,this._processCounts=0,this.port.onmessage=this._handleMessage.bind(this)}process(s,e){var[[s]]=s;if(!s)return!0;const[[t]]=e;try{if(this._enabled){this._buffer.getChannelData(0).set(s);var o=this._kernel.process(this._buffer,this._buffer);for(t.set(this._buffer.getChannelData(0)),this._monitor(),0!==o&&this._errorCounts++,this._frameCount+=RENDER_QUANTUM_FRAMES;this._frameCount>=this._sampleRate/2;)this._getStats(),this._frameCount-=this._sampleRate/2,this._errorCounts&&(this._log("inserted zero frame counts: "+this._errorCounts),this._errorCounts=0);this._isDumping&&(this._dumpBundleFrameCount+=RENDER_QUANTUM_FRAMES,this._dumpBundleFrameCount>=this._dumpBundleFrames&&(this._dumpBundleFrameCount=0,this._dump()))}else t.set(s)}catch(s){this._log(s.toString(),"error")}return!0}_monitor(){if(this._processMonitor){var s=Date.now();if(!this._processCountInitTime)return this._processCountInitTime=s,void(this._processCounts=1);this._processCounts+=1;var e=s-this._processCountInitTime;e>=this._monitorInterval&&(s=this._sampleRate*(e/1e3)/RENDER_QUANTUM_FRAMES,Math.abs(s-this._processCounts)>s*this._monitorThreshold?this._overloadCount+=1:this._overloadCount=0,3<=this._overloadCount&&(this._overloadCount=0,this.port.postMessage({message:"onoverload",count:this._processCounts,expectedCount:s,elapse:e})),this._processCountInitTime=Date.now(),this._processCounts=0)}}_startMonitor(){this._overloadCount=0,this._processCountInitTime=void 0,this._processMonitor=!0}_stopMonitor(){this._processMonitor=!1,this._processCounts=0}_enable(){this._enabled=!0,this._startMonitor(),this.port.postMessage({message:"onenable"})}_disable(){this._enabled=!1,this._frameCount=0,this._errorCounts=0,this._kernel.reset(),this.port.postMessage({message:"ondisable"}),this._stopMonitor(),this._isDumping&&(this._dump(),this._endDump())}_getStats(){var s=this._kernel.getStats();this.port.postMessage({message:"ongetStats",stats:s})}_log(s,e){this.port.postMessage({message:"onlog",log:s,level:e})}_dump(){const[s,e,t]=Array.from(this._kernel.dump(this._bufferTime)),o=new Float32Array(s.numberOfFrames),r=new Float32Array(e.numberOfFrames),i=new Float32Array(t.numberOfFrames);o.set(s.getChannelData(0)),r.set(e.getChannelData(0)),i.set(t.getChannelData(0)),s.delete(),e.delete(),t.delete(),this.port.postMessage({message:"ondump",dump:{inputPCM:o,nsOutPCM:r,agcOutPCM:i}}),this._dumpBundleNumCount+=1,this._dumpBundleNumCount>=this._dumpBundleNums&&this._endDump()}_endDump(){this._isDumping&&(this._log("end dump in processor"),this._isDumping=!1,this.port.postMessage({message:"ondumpend"}))}_startDump(){this._isDumping||(this._isDumping=!0,this._dumpBundleFrameCount=0,this._dumpBundleNumCount=0,this._dump())}_setNsParams(s){this._kernel.setNsParams(s),this.port.postMessage({message:"onsetNsParams"})}_setAgcParams(s){this._kernel.setAgcParams(s),this.port.postMessage({message:"onsetAgcParams"})}_destroy(){this._disable(),this._buffer.delete(),this._kernel.delete(),this.port.onmessage=void 0}_handleMessage(s){var e=s.data;switch(e.message){case"enable":this._enable();break;case"disable":this._disable();break;case"dump":this._startDump();break;case"setNsParams":this._setNsParams(e.nsParams);break;case"setAgcParams":this._setAgcParams(e.agcParams);break;case"destroy":this._destroy()}}}registerProcessor("audio-denoiser-worklet-processor",AudioDenoiserWorkletProcessor);
var createAudioEngine=(()=>{var gt="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return function(n){var v,e,i;n=n||{},(v=(v="function"==typeof AudioWorkletGlobalScope?globalThis.Module:v)||(void 0!==n?n:{})).ready=new Promise(function(n,t){e=n,i=t});var t,r=Object.assign({},v),a="./this.program",o="object"==typeof window,u="function"==typeof importScripts,c="";(o||u)&&(u?c=self.location.href:"undefined"!=typeof document&&document.currentScript&&(c=document.currentScript.src),c=0!==(c=gt?gt:c).indexOf("blob:")?c.substr(0,c.replace(/[?#].*/,"").lastIndexOf("/")+1):"",u&&(t=n=>{var t=new XMLHttpRequest;return t.open("GET",n,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}));var s,l=v.print||console.log.bind(console),h=v.printErr||console.warn.bind(console);Object.assign(v,r),v.thisProgram&&(a=v.thisProgram),v.wasmBinary&&(s=v.wasmBinary);v.noExitRuntime;"object"!=typeof WebAssembly&&N("no native wasm support detected");var f,p=!1,d="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function y(n,t,e){var r=t+e;for(e=t;n[e]&&!(r<=e);)++e;if(16<e-t&&n.subarray&&d)return d.decode(n.subarray(t,e));for(r="";t<e;){var a,i,o=n[t++];128&o?(a=63&n[t++],192==(224&o)?r+=String.fromCharCode((31&o)<<6|a):(i=63&n[t++],(o=224==(240&o)?(15&o)<<12|a<<6|i:(7&o)<<18|a<<12|i<<6|63&n[t++])<65536?r+=String.fromCharCode(o):(o-=65536,r+=String.fromCharCode(55296|o>>10,56320|1023&o)))):r+=String.fromCharCode(o)}return r}function g(n,t,e,r){if(0<r){r=e+r-1;for(var a=0;a<n.length;++a){var i=n.charCodeAt(a);if((i=55296<=i&&i<=57343?65536+((1023&i)<<10)|1023&n.charCodeAt(++a):i)<=127){if(r<=e)break;t[e++]=i}else{if(i<=2047){if(r<=e+1)break;t[e++]=192|i>>6}else{if(i<=65535){if(r<=e+2)break;t[e++]=224|i>>12}else{if(r<=e+3)break;t[e++]=240|i>>18,t[e++]=128|i>>12&63}t[e++]=128|i>>6&63}t[e++]=128|63&i}}t[e]=0}}function m(n){for(var t=0,e=0;e<n.length;++e){var r=n.charCodeAt(e);(r=55296<=r&&r<=57343?65536+((1023&r)<<10)|1023&n.charCodeAt(++e):r)<=127?++t:t=r<=2047?t+2:r<=65535?t+3:t+4}return t}var b,w,A,T,C,W,_,E,j,P="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function k(n,t){for(var e=n>>1,r=e+t/2;!(r<=e)&&C[e];)++e;if(32<(e<<=1)-n&&P)return P.decode(A.subarray(n,e));for(e="",r=0;!(t/2<=r);++r){var a=T[n+2*r>>1];if(0==a)break;e+=String.fromCharCode(a)}return e}function D(n,t,e){if((e=void 0===e?2147483647:e)<2)return 0;var r=t;e=(e-=2)<2*n.length?e/2:n.length;for(var a=0;a<e;++a)T[t>>1]=n.charCodeAt(a),t+=2;return T[t>>1]=0,t-r}function F(n){return 2*n.length}function O(n,t){for(var e=0,r="";!(t/4<=e);){var a=W[n+4*e>>2];if(0==a)break;++e,65536<=a?(a-=65536,r+=String.fromCharCode(55296|a>>10,56320|1023&a)):r+=String.fromCharCode(a)}return r}function S(n,t,e){if((e=void 0===e?2147483647:e)<4)return 0;var r=t;e=r+e-4;for(var a=0;a<n.length;++a){var i=n.charCodeAt(a);if(55296<=i&&i<=57343&&(i=65536+((1023&i)<<10)|1023&n.charCodeAt(++a)),W[t>>2]=i,e<(t+=4)+4)break}return W[t>>2]=0,t-r}function M(n){for(var t=0,e=0;e<n.length;++e){var r=n.charCodeAt(e);55296<=r&&r<=57343&&++e,t+=4}return t}function I(){var n=f.buffer;b=n,v.HEAP8=w=new Int8Array(n),v.HEAP16=T=new Int16Array(n),v.HEAP32=W=new Int32Array(n),v.HEAPU8=A=new Uint8Array(n),v.HEAPU16=C=new Uint16Array(n),v.HEAPU32=_=new Uint32Array(n),v.HEAPF32=E=new Float32Array(n),v.HEAPF64=j=new Float64Array(n)}var R,U=[],x=[],Y=[];var H,V=0,B=null,z=null;function N(n){throw v.onAbort&&v.onAbort(n),h(n="Aborted("+n+")"),p=!0,n=new WebAssembly.RuntimeError(n+". Build with -s ASSERTIONS=1 for more info."),i(n),n}function G(){return H.startsWith("data:application/octet-stream;base64,")}function q(){var n=H;try{if(n==H&&s)return new Uint8Array(s);if(t)return t(n);throw"both async and sync fetching of the wasm failed"}catch(n){N(n)}}function L(n){for(;0<n.length;){var t,e=n.shift();"function"==typeof e?e(v):"number"==typeof(t=e.gb)?void 0===e.za?X(t)():X(t)(e.za):t(void 0===e.za?null:e.za)}}v.preloadedImages={},v.preloadedAudios={},H="audio_denoiser.wasm",G()||(r=H,H=v.locateFile?v.locateFile(r,c):c+r);var J=[];function X(n){var t=J[n];return t||(n>=J.length&&(J.length=n+1),J[n]=t=R.get(n)),t}function Z(n){this.ca=n-16,this.Sa=function(n){W[this.ca+4>>2]=n},this.Na=function(n){W[this.ca+8>>2]=n},this.Pa=function(){W[this.ca>>2]=0},this.Ma=function(){w[this.ca+12>>0]=0},this.Ra=function(){w[this.ca+13>>0]=0},this.La=function(n,t){this.Sa(n),this.Na(t),this.Pa(),this.Ma(),this.Ra()}}var K={};function $(n){for(;n.length;){var t=n.pop();n.pop()(t)}}function Q(n){return this.fromWireType(_[n>>2])}var nn={},tn={},en={};function rn(n){if(void 0===n)return"_unknown";var t=(n=n.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return 48<=t&&t<=57?"_"+n:n}function an(n,t){return n=rn(n),new Function("body","return function "+n+'() {\n "use strict"; return body.apply(this, arguments);\n};\n')(t)}function on(t){var n=Error,e=an(t,function(n){this.name=t,this.message=n,void 0!==(n=Error(n).stack)&&(this.stack=this.toString()+"\n"+n.replace(/^Error(:[^\n]*)?\n/,""))});return e.prototype=Object.create(n.prototype),(e.prototype.constructor=e).prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},e}var un=void 0;function cn(n){throw new un(n)}function sn(e,t,r){function a(n){(n=r(n)).length!==e.length&&cn("Mismatched type converter count");for(var t=0;t<e.length;++t)yn(e[t],n[t])}e.forEach(function(n){en[n]=t});var i=Array(t.length),o=[],u=0;t.forEach(function(n,t){tn.hasOwnProperty(n)?i[t]=tn[n]:(o.push(n),nn.hasOwnProperty(n)||(nn[n]=[]),nn[n].push(function(){i[t]=tn[n],++u===o.length&&a(i)}))}),0===o.length&&a(i)}var fn={};function ln(n){switch(n){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+n)}}var hn=void 0;function pn(n){for(var t="";A[n];)t+=hn[A[n++]];return t}var dn=void 0;function vn(n){throw new dn(n)}function yn(n,t,e={}){if(!("argPackAdvance"in t))throw new TypeError("registerType registeredInstance requires argPackAdvance");var r=t.name;if(n||vn('type "'+r+'" must have a positive integer typeid pointer'),tn.hasOwnProperty(n)){if(e.Wa)return;vn("Cannot register type '"+r+"' twice")}tn[n]=t,delete en[n],nn.hasOwnProperty(n)&&(t=nn[n],delete nn[n],t.forEach(function(n){n()}))}function gn(n){vn(n.aa.da.ba.name+" instance already deleted")}var mn=!1;function bn(){}function wn(n){--n.count.value,0===n.count.value&&(n.ea?n.ia.ha(n.ea):n.da.ba.ha(n.ca))}var An={},Tn=[];function Cn(){for(;Tn.length;){var n=Tn.pop();n.aa.na=!1,n.delete()}}var Wn=void 0,_n={};function En(n,t){return t.da&&t.ca||cn("makeClassHandle requires ptr and ptrType"),!!t.ia!=!!t.ea&&cn("Both smartPtrType and smartPtr must be specified"),t.count={value:1},jn(Object.create(n,{aa:{value:t}}))}function jn(n){return"undefined"==typeof FinalizationRegistry?(jn=n=>n,n):(mn=new FinalizationRegistry(n=>{wn(n.aa)}),bn=n=>{mn.unregister(n)},(jn=n=>{var t=n.aa;return t.ea&&mn.register(n,{aa:t},n),n})(n))}function Pn(){}function kn(n,t,e){var r;void 0===n[t].ka&&(r=n[t],n[t]=function(){return n[t].ka.hasOwnProperty(arguments.length)||vn("Function '"+e+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+n[t].ka+")!"),n[t].ka[arguments.length].apply(this,arguments)},n[t].ka=[],n[t].ka[r.ta]=r)}function Dn(n,t){v.hasOwnProperty(n)?(vn("Cannot register public name '"+n+"' twice"),kn(v,n,n),v.hasOwnProperty(void 0)&&vn("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"),v[n].ka[void 0]=t):v[n]=t}function Fn(n,t,e,r,a,i,o,u){this.name=n,this.constructor=t,this.la=e,this.ha=r,this.ja=a,this.Ua=i,this.sa=o,this.Qa=u,this.Ya=[]}function On(n,t,e){for(;t!==e;)t.sa||vn("Expected null or instance of "+e.name+", got an instance of "+t.name),n=t.sa(n),t=t.ja;return n}function Sn(n,t){return null===t?(this.Da&&vn("null is not a valid "+this.name),0):(t.aa||vn('Cannot pass "'+Zn(t)+'" as a '+this.name),t.aa.ca||vn("Cannot pass deleted object as a pointer of type "+this.name),On(t.aa.ca,t.aa.da.ba,this.ba))}function Mn(n,t){if(null===t){if(this.Da&&vn("null is not a valid "+this.name),this.va){var e=this.qa();return null!==n&&n.push(this.ha,e),e}return 0}if(t.aa||vn('Cannot pass "'+Zn(t)+'" as a '+this.name),t.aa.ca||vn("Cannot pass deleted object as a pointer of type "+this.name),!this.ua&&t.aa.da.ua&&vn("Cannot convert argument of type "+(t.aa.ia||t.aa.da).name+" to parameter type "+this.name),e=On(t.aa.ca,t.aa.da.ba,this.ba),this.va)switch(void 0===t.aa.ea&&vn("Passing raw pointer to smart pointer is illegal"),this.$a){case 0:t.aa.ia===this?e=t.aa.ea:vn("Cannot convert argument of type "+(t.aa.ia||t.aa.da).name+" to parameter type "+this.name);break;case 1:e=t.aa.ea;break;case 2:var r;t.aa.ia===this?e=t.aa.ea:(r=t.clone(),e=this.Za(e,Jn(function(){r.delete()})),null!==n&&n.push(this.ha,e));break;default:vn("Unsupporting sharing policy")}return e}function In(n,t){return null===t?(this.Da&&vn("null is not a valid "+this.name),0):(t.aa||vn('Cannot pass "'+Zn(t)+'" as a '+this.name),t.aa.ca||vn("Cannot pass deleted object as a pointer of type "+this.name),t.aa.da.ua&&vn("Cannot convert argument of type "+t.aa.da.name+" to parameter type "+this.name),On(t.aa.ca,t.aa.da.ba,this.ba))}function Rn(n,t,e,r){this.name=n,this.ba=t,this.Da=e,this.ua=r,this.va=!1,(this.ha=this.Za=this.qa=this.Ka=this.$a=this.Xa=void 0)!==t.ja?this.toWireType=Mn:(this.toWireType=r?Sn:In,this.ga=null)}function Un(n,t){var e,r,a,i=(n=pn(n)).includes("j")?(e=n,r=t,a=[],function(){var n;return a.length=0,Object.assign(a,arguments),n=e.includes("j")?(n=v["dynCall_"+e],a&&a.length?n.apply(null,[r].concat(a)):n.call(null,r)):X(r).apply(null,a)}):X(t);return"function"!=typeof i&&vn("unknown function pointer with signature "+n+": "+t),i}var xn=void 0;function Yn(n){var t=pn(n=vt(n));return dt(n),t}function Hn(n,t){var e=[],r={};throw t.forEach(function n(t){r[t]||tn[t]||(en[t]?en[t].forEach(n):(e.push(t),r[t]=!0))}),new xn(n+": "+e.map(Yn).join([", "]))}function Vn(n,t){for(var e=[],r=0;r<n;r++)e.push(W[(t>>2)+r]);return e}function Bn(n,t,e,r,a){var i=t.length;i<2&&vn("argTypes array size mismatch! Must at least get return value and 'this' types!");var o=null!==t[1]&&null!==e,u=!1;for(e=1;e<t.length;++e)if(null!==t[e]&&void 0===t[e].ga){u=!0;break}var c="void"!==t[0].name,s="",f="";for(e=0;e<i-2;++e)s+=(0!==e?", ":"")+"arg"+e,f+=(0!==e?", ":"")+"arg"+e+"Wired";n="return function "+rn(n)+"("+s+") {\nif (arguments.length !== "+(i-2)+") {\nthrowBindingError('function "+n+" called with ' + arguments.length + ' arguments, expected "+(i-2)+" args!');\n}\n",u&&(n+="var destructors = [];\n");var l=u?"destructors":"null",s="throwBindingError invoker fn runDestructors retType classParam".split(" ");for(r=[vn,r,a,$,t[0],t[1]],o&&(n+="var thisWired = classParam.toWireType("+l+", this);\n"),e=0;e<i-2;++e)n+="var arg"+e+"Wired = argType"+e+".toWireType("+l+", arg"+e+"); // "+t[e+2].name+"\n",s.push("argType"+e),r.push(t[e+2]);if(n+=(c?"var rv = ":"")+"invoker(fn"+(0<(f=o?"thisWired"+(0<f.length?", ":"")+f:f).length?", ":"")+f+");\n",u)n+="runDestructors(destructors);\n";else for(e=o?1:2;e<t.length;++e)i=1===e?"thisWired":"arg"+(e-2)+"Wired",null!==t[e].ga&&(n+=i+"_dtor("+i+"); // "+t[e].name+"\n",s.push(i+"_dtor"),r.push(t[e].ga));return c&&(n+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),s.push(n+"}\n"),function(n){var t=Function;if(!(t instanceof Function))throw new TypeError("new_ called with constructor type "+typeof t+" which is not a function");var e=an(t.name||"unknownFunctionName",function(){});return e.prototype=t.prototype,e=new e,(n=t.apply(e,n))instanceof Object?n:e}(s).apply(null,r)}function zn(n,t,e){return n instanceof Object||vn(e+' with invalid "this": '+n),n instanceof t.ba.constructor||vn(e+' incompatible with "this" of type '+n.constructor.name),n.aa.ca||vn("cannot call emscripten binding method "+e+" on deleted object"),On(n.aa.ca,n.aa.da.ba,t.ba)}var Nn=[],Gn=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function qn(n){4<n&&0==--Gn[n].Ea&&(Gn[n]=void 0,Nn.push(n))}function Ln(n){return n||vn("Cannot use deleted val. handle = "+n),Gn[n].value}function Jn(n){switch(n){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var t=Nn.length?Nn.pop():Gn.length;return Gn[t]={Ea:1,value:n},t}}function Xn(n,t){var e=tn[n];return void 0===e&&vn(t+" has unknown type "+Yn(n)),e}function Zn(n){if(null===n)return"null";var t=typeof n;return"object"==t||"array"==t||"function"==t?n.toString():""+n}var Kn={},$n={};function Qn(){if(!nt){var n,t={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:a||"./this.program"};for(n in $n)void 0===$n[n]?delete t[n]:t[n]=$n[n];var e=[];for(n in t)e.push(n+"="+t[n]);nt=e}return nt}var nt,tt=[null,[],[]],et={};function rt(n){return 0==n%4&&(0!=n%100||0==n%400)}function at(n,t){for(var e=0,r=0;r<=t;e+=n[r++]);return e}var it=[31,29,31,30,31,30,31,31,30,31,30,31],ot=[31,28,31,30,31,30,31,31,30,31,30,31];function ut(n,t){for(n=new Date(n.getTime());0<t;){var e=n.getMonth(),r=(rt(n.getFullYear())?it:ot)[e];if(!(t>r-n.getDate())){n.setDate(n.getDate()+t);break}t-=r-n.getDate()+1,n.setDate(1),e<11?n.setMonth(e+1):(n.setMonth(0),n.setFullYear(n.getFullYear()+1))}return n}function ct(n,t,e,r){function a(n,t,e){for(n="number"==typeof n?n.toString():n||"";n.length<t;)n=e[0]+n;return n}function i(n,t){return a(n,t,"0")}function o(n,t){function e(n){return n<0?-1:0<n?1:0}var r;return r=0===(r=e(n.getFullYear()-t.getFullYear()))&&0===(r=e(n.getMonth()-t.getMonth()))?e(n.getDate()-t.getDate()):r}function u(n){switch(n.getDay()){case 0:return new Date(n.getFullYear()-1,11,29);case 1:return n;case 2:return new Date(n.getFullYear(),0,3);case 3:return new Date(n.getFullYear(),0,2);case 4:return new Date(n.getFullYear(),0,1);case 5:return new Date(n.getFullYear()-1,11,31);case 6:return new Date(n.getFullYear()-1,11,30)}}function c(n){n=ut(new Date(n.fa+1900,0,1),n.ya);var t=new Date(n.getFullYear()+1,0,4),e=u(new Date(n.getFullYear(),0,4)),t=u(t);return o(e,n)<=0?o(t,n)<=0?n.getFullYear()+1:n.getFullYear():n.getFullYear()-1}var s,f=W[r+40>>2];for(s in r={cb:W[r>>2],bb:W[r+4>>2],wa:W[r+8>>2],ra:W[r+12>>2],oa:W[r+16>>2],fa:W[r+20>>2],xa:W[r+24>>2],ya:W[r+28>>2],jb:W[r+32>>2],ab:W[r+36>>2],eb:f?y(A,f,void 0):""},e=e?y(A,e,void 0):"",f={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})e=e.replace(new RegExp(s,"g"),f[s]);var l,h,p="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),d="January February March April May June July August September October November December".split(" "),f={"%a":function(n){return p[n.xa].substring(0,3)},"%A":function(n){return p[n.xa]},"%b":function(n){return d[n.oa].substring(0,3)},"%B":function(n){return d[n.oa]},"%C":function(n){return i((n.fa+1900)/100|0,2)},"%d":function(n){return i(n.ra,2)},"%e":function(n){return a(n.ra,2," ")},"%g":function(n){return c(n).toString().substring(2)},"%G":c,"%H":function(n){return i(n.wa,2)},"%I":function(n){return 0==(n=n.wa)?n=12:12<n&&(n-=12),i(n,2)},"%j":function(n){return i(n.ra+at(rt(n.fa+1900)?it:ot,n.oa-1),3)},"%m":function(n){return i(n.oa+1,2)},"%M":function(n){return i(n.bb,2)},"%n":function(){return"\n"},"%p":function(n){return 0<=n.wa&&n.wa<12?"AM":"PM"},"%S":function(n){return i(n.cb,2)},"%t":function(){return"\t"},"%u":function(n){return n.xa||7},"%U":function(n){var t=new Date(n.fa+1900,0,1),e=0===t.getDay()?t:ut(t,7-t.getDay());return o(e,n=new Date(n.fa+1900,n.oa,n.ra))<0?i(Math.ceil((31-e.getDate()+(at(rt(n.getFullYear())?it:ot,n.getMonth()-1)-31)+n.getDate())/7),2):0===o(e,t)?"01":"00"},"%V":function(n){var t=new Date(n.fa+1901,0,4),e=u(new Date(n.fa+1900,0,4)),t=u(t),r=ut(new Date(n.fa+1900,0,1),n.ya);return o(r,e)<0?"53":o(t,r)<=0?"01":i(Math.ceil((e.getFullYear()<n.fa+1900?n.ya+32-e.getDate():n.ya+1-e.getDate())/7),2)},"%w":function(n){return n.xa},"%W":function(n){var t=new Date(n.fa,0,1),e=1===t.getDay()?t:ut(t,0===t.getDay()?1:7-t.getDay()+1);return o(e,n=new Date(n.fa+1900,n.oa,n.ra))<0?i(Math.ceil((31-e.getDate()+(at(rt(n.getFullYear())?it:ot,n.getMonth()-1)-31)+n.getDate())/7),2):0===o(e,t)?"01":"00"},"%y":function(n){return(n.fa+1900).toString().substring(2)},"%Y":function(n){return n.fa+1900},"%z":function(n){var t=0<=(n=n.ab);return n=Math.abs(n)/60,(t?"+":"-")+String("0000"+(n/60*100+n%60)).slice(-4)},"%Z":function(n){return n.eb},"%%":function(){return"%"}};for(s in e=e.replace(/%%/g,"\0\0"),f)e.includes(s)&&(e=e.replace(new RegExp(s,"g"),f[s](r)));return e=e.replace(/\0\0/g,"%"),l=e,h=Array(m(l)+1),g(l,h,0,h.length),(s=h).length>t?0:(w.set(s,n),s.length-1)}for(var un=v.InternalError=on("InternalError"),st=Array(256),ft=0;ft<256;++ft)st[ft]=String.fromCharCode(ft);hn=st,dn=v.BindingError=on("BindingError"),Pn.prototype.isAliasOf=function(n){if(!(this instanceof Pn&&n instanceof Pn))return!1;var t=this.aa.da.ba,e=this.aa.ca,r=n.aa.da.ba;for(n=n.aa.ca;t.ja;)e=t.sa(e),t=t.ja;for(;r.ja;)n=r.sa(n),r=r.ja;return t===r&&e===n},Pn.prototype.clone=function(){if(this.aa.ca||gn(this),this.aa.pa)return this.aa.count.value+=1,this;var n=jn,t=Object,e=t.create,r=Object.getPrototypeOf(this),a=this.aa;return(n=n(e.call(t,r,{aa:{value:{count:a.count,na:a.na,pa:a.pa,ca:a.ca,da:a.da,ea:a.ea,ia:a.ia}}}))).aa.count.value+=1,n.aa.na=!1,n},Pn.prototype.delete=function(){this.aa.ca||gn(this),this.aa.na&&!this.aa.pa&&vn("Object already scheduled for deletion"),bn(this),wn(this.aa),this.aa.pa||(this.aa.ea=void 0,this.aa.ca=void 0)},Pn.prototype.isDeleted=function(){return!this.aa.ca},Pn.prototype.deleteLater=function(){return this.aa.ca||gn(this),this.aa.na&&!this.aa.pa&&vn("Object already scheduled for deletion"),Tn.push(this),1===Tn.length&&Wn&&Wn(Cn),this.aa.na=!0,this},v.getInheritedInstanceCount=function(){return Object.keys(_n).length},v.getLiveInheritedInstances=function(){var n,t=[];for(n in _n)_n.hasOwnProperty(n)&&t.push(_n[n]);return t},v.flushPendingDeletes=Cn,v.setDelayFunction=function(n){Wn=n,Tn.length&&Wn&&Wn(Cn)},Rn.prototype.Va=function(n){return n=this.Ka?this.Ka(n):n},Rn.prototype.Ia=function(n){this.ha&&this.ha(n)},Rn.prototype.argPackAdvance=8,Rn.prototype.readValueFromPointer=Q,Rn.prototype.deleteObject=function(n){null!==n&&n.delete()},Rn.prototype.fromWireType=function(n){function t(){return this.va?En(this.ba.la,{da:this.Xa,ca:e,ia:this,ea:n}):En(this.ba.la,{da:this,ca:n})}var e=this.Va(n);if(!e)return this.Ia(n),null;if(void 0!==(r=function(n,t){for(void 0===t&&vn("ptr should not be undefined");n.ja;)t=n.sa(t),n=n.ja;return _n[t]}(this.ba,e)))return 0===r.aa.count.value?(r.aa.ca=e,r.aa.ea=n,r.clone()):(r=r.clone(),this.Ia(n),r);if(r=this.ba.Ua(e),!(r=An[r]))return t.call(this);var r=this.ua?r.Oa:r.pointerType,a=function n(t,e,r){return e===r?t:void 0===r.ja||null===(t=n(t,e,r.ja))?null:r.Qa(t)}(e,this.ba,r.ba);return null===a?t.call(this):this.va?En(r.ba.la,{da:r,ca:a,ia:this,ea:n}):En(r.ba.la,{da:r,ca:a})},xn=v.UnboundTypeError=on("UnboundTypeError"),v.count_emval_handles=function(){for(var n=0,t=5;t<Gn.length;++t)void 0!==Gn[t]&&++n;return n},v.get_first_emval=function(){for(var n=5;n<Gn.length;++n)if(void 0!==Gn[n])return Gn[n];return null};var lt={j:function(n){return pt(n+16)+16},i:function(n,t,e){throw new Z(n).La(t,e),n},N:function(n){var a=K[n];delete K[n];var i=a.elements,s=i.length,t=i.map(function(n){return n.Ca}).concat(i.map(function(n){return n.Ga})),o=a.qa,u=a.ha;sn([n],t,function(c){return i.forEach(function(n,t){var e=c[t],r=n.Aa,a=n.Ba,i=c[t+s],o=n.Fa,u=n.Ha;n.read=n=>e.fromWireType(r(a,n)),n.write=(n,t)=>{var e=[];o(u,n,i.toWireType(e,t)),$(e)}}),[{name:a.name,fromWireType:function(n){for(var t=Array(s),e=0;e<s;++e)t[e]=i[e].read(n);return u(n),t},toWireType:function(n,t){if(s!==t.length)throw new TypeError("Incorrect number of tuple elements for "+a.name+": expected="+s+", actual="+t.length);for(var e=o(),r=0;r<s;++r)i[r].write(e,t[r]);return null!==n&&n.push(u,e),e},argPackAdvance:8,readValueFromPointer:Q,ga:u}]})},P:function(n){var t=fn[n];delete fn[n];var a=t.qa,i=t.ha,f=t.Ja;sn([n],f.map(function(n){return n.Ca}).concat(f.map(function(n){return n.Ga})),function(c){var s={};return f.forEach(function(n,t){var e=c[t],r=n.Aa,a=n.Ba,i=c[t+f.length],o=n.Fa,u=n.Ha;s[n.Ta]={read:function(n){return e.fromWireType(r(a,n))},write:function(n,t){var e=[];o(u,n,i.toWireType(e,t)),$(e)}}}),[{name:t.name,fromWireType:function(n){var t,e={};for(t in s)e[t]=s[t].read(n);return i(n),e},toWireType:function(n,t){for(var e in s)if(!(e in t))throw new TypeError('Missing field: "'+e+'"');var r=a();for(e in s)s[e].write(r,t[e]);return null!==n&&n.push(i,r),r},argPackAdvance:8,readValueFromPointer:Q,ga:i}]})},B:function(){},K:function(n,e,r,a,i){var o=ln(r);yn(n,{name:e=pn(e),fromWireType:function(n){return!!n},toWireType:function(n,t){return t?a:i},argPackAdvance:8,readValueFromPointer:function(n){if(1===r)var t=w;else if(2===r)t=T;else{if(4!==r)throw new TypeError("Unknown boolean type size: "+e);t=W}return this.fromWireType(t[n>>o])},ga:null})},x:function(u,n,t,c,e,s,r,f,a,l,h,i,p){h=pn(h),s=Un(e,s),f=f&&Un(r,f),l=l&&Un(a,l),p=Un(i,p);var d=rn(h);Dn(d,function(){Hn("Cannot construct "+h+" due to unbound types",[c])}),sn([u,n,t],c?[c]:[],function(n){n=n[0],i=c?(a=n.ba).la:Pn.prototype,n=an(d,function(){if(Object.getPrototypeOf(this)!==t)throw new dn("Use 'new' to construct "+h);if(void 0===r.ma)throw new dn(h+" has no accessible constructor");var n=r.ma[arguments.length];if(void 0===n)throw new dn("Tried to invoke ctor of "+h+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(r.ma).toString()+") parameters instead!");return n.apply(this,arguments)});var t=Object.create(i,{constructor:{value:n}});n.prototype=t;var e,r=new Fn(h,n,t,p,a,s,f,l),a=new Rn(h,r,!0,!1),i=new Rn(h+"*",r,!1,!1),o=new Rn(h+" const*",r,!1,!0);return An[u]={pointerType:i,Oa:o},e=d,n=n,v.hasOwnProperty(e)||cn("Replacing nonexistant public symbol"),v[e]=n,v[e].ta=void 0,[a,i,o]})},u:function(n,r,t,e,a,i){0<r||N(void 0);var o=Vn(r,t);a=Un(e,a),sn([],[n],function(t){var e="constructor "+(t=t[0]).name;if(void 0===t.ba.ma&&(t.ba.ma=[]),void 0!==t.ba.ma[r-1])throw new dn("Cannot register multiple constructors with identical number of parameters ("+(r-1)+") for class '"+t.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return t.ba.ma[r-1]=()=>{Hn("Cannot construct "+t.name+" due to unbound types",o)},sn([],o,function(n){return n.splice(1,0,null),t.ba.ma[r-1]=Bn(e,n,null,a,i),[]}),[]})},m:function(n,i,o,t,e,u,c,s){var f=Vn(o,t);i=pn(i),u=Un(e,u),sn([],[n],function(t){function n(){Hn("Cannot call "+e+" due to unbound types",f)}var e=(t=t[0]).name+"."+i;i.startsWith("@@")&&(i=Symbol[i.substring(2)]),s&&t.ba.Ya.push(i);var r=t.ba.la,a=r[i];return void 0===a||void 0===a.ka&&a.className!==t.name&&a.ta===o-2?(n.ta=o-2,n.className=t.name,r[i]=n):(kn(r,i,e),r[i].ka[o-2]=n),sn([],f,function(n){return n=Bn(e,n,t,u,c),void 0===r[i].ka?(n.ta=o-2,r[i]=n):r[i].ka[o-2]=n,[]}),[]})},o:function(n,o,t,e,u,c,r,s,f,l){o=pn(o),u=Un(e,u),sn([],[n],function(a){var i=(a=a[0]).name+"."+o,n={get:function(){Hn("Cannot access "+i+" due to unbound types",[t,r])},enumerable:!0,configurable:!0};return n.set=f?()=>{Hn("Cannot access "+i+" due to unbound types",[t,r])}:()=>{vn(i+" is a read-only property")},Object.defineProperty(a.ba.la,o,n),sn([],f?[t,r]:[t],function(n){var r,t=n[0],e={get:function(){var n=zn(this,a,i+" getter");return t.fromWireType(u(c,n))},enumerable:!0};return f&&(f=Un(s,f),r=n[1],e.set=function(n){var t=zn(this,a,i+" setter"),e=[];f(l,t,r.toWireType(e,n)),$(e)}),Object.defineProperty(a.ba.la,o,e),[]}),[]})},J:function(n,t){yn(n,{name:t=pn(t),fromWireType:function(n){var t=Ln(n);return qn(n),t},toWireType:function(n,t){return Jn(t)},argPackAdvance:8,readValueFromPointer:Q,ga:null})},M:function(n,t,e,r){function a(){}e=ln(e),t=pn(t),a.values={},yn(n,{name:t,constructor:a,fromWireType:function(n){return this.constructor.values[n]},toWireType:function(n,t){return t.value},argPackAdvance:8,readValueFromPointer:function(n,t,e){switch(t){case 0:return function(n){return this.fromWireType((e?w:A)[n])};case 1:return function(n){return this.fromWireType((e?T:C)[n>>1])};case 2:return function(n){return this.fromWireType((e?W:_)[n>>2])};default:throw new TypeError("Unknown integer type: "+n)}}(t,e,r),ga:null}),Dn(t,a)},n:function(n,t,e){var r=Xn(n,"enum");t=pn(t),n=r.constructor,r=Object.create(r.constructor.prototype,{value:{value:e},constructor:{value:an(r.name+"_"+t,function(){})}}),n.values[e]=r,n[t]=r},v:function(n,t,e){e=ln(e),yn(n,{name:t=pn(t),fromWireType:function(n){return n},toWireType:function(n,t){return t},argPackAdvance:8,readValueFromPointer:function(n,t){switch(t){case 2:return function(n){return this.fromWireType(E[n>>2])};case 3:return function(n){return this.fromWireType(j[n>>3])};default:throw new TypeError("Unknown float type: "+n)}}(t,e),ga:null})},l:function(n,t,e,r,a){t=pn(t),-1===a&&(a=4294967295),a=ln(e);var i,o=n=>n;0===r&&(i=32-8*e,o=n=>n<<i>>>i),e=t.includes("unsigned")?function(n,t){return t>>>0}:function(n,t){return t},yn(n,{name:t,fromWireType:o,toWireType:e,argPackAdvance:8,readValueFromPointer:function(n,t,e){switch(t){case 0:return e?function(n){return w[n]}:function(n){return A[n]};case 1:return e?function(n){return T[n>>1]}:function(n){return C[n>>1]};case 2:return e?function(n){return W[n>>2]}:function(n){return _[n>>2]};default:throw new TypeError("Unknown integer type: "+n)}}(t,a,0!==r),ga:null})},h:function(n,t,e){function r(n){var t=_;return new a(b,t[(n>>=2)+1],t[n])}var a=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][t];yn(n,{name:e=pn(e),fromWireType:r,argPackAdvance:8,readValueFromPointer:r},{Wa:!0})},w:function(n,t){var o="std::string"===(t=pn(t));yn(n,{name:t,fromWireType:function(n){var t=_[n>>2];if(o)for(var e=n+4,r=0;r<=t;++r){var a,i=n+4+r;r!=t&&0!=A[i]||(e=e?y(A,e,i-e):"",void 0===a?a=e:(a+=String.fromCharCode(0),a+=e),e=i+1)}else{for(a=Array(t),r=0;r<t;++r)a[r]=String.fromCharCode(A[n+4+r]);a=a.join("")}return dt(n),a},toWireType:function(n,t){var e="string"==typeof(t=t instanceof ArrayBuffer?new Uint8Array(t):t);e||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array||vn("Cannot pass non-string to std::string");var r=(o&&e?()=>m(t):()=>t.length)(),a=pt(4+r+1);if(_[a>>2]=r,o&&e)g(t,A,a+4,r+1);else if(e)for(e=0;e<r;++e){var i=t.charCodeAt(e);255<i&&(dt(a),vn("String has UTF-16 code units that do not fit in 8 bits")),A[a+4+e]=i}else for(e=0;e<r;++e)A[a+4+e]=t[e];return null!==n&&n.push(dt,a),a},argPackAdvance:8,readValueFromPointer:Q,ga:function(n){dt(n)}})},r:function(n,u,a){var c,i,o,s,f;a=pn(a),2===u?(c=k,i=D,o=F,s=()=>C,f=1):4===u&&(c=O,i=S,o=M,s=()=>_,f=2),yn(n,{name:a,fromWireType:function(n){for(var t,e=_[n>>2],r=s(),a=n+4,i=0;i<=e;++i){var o=n+4+i*u;i!=e&&0!=r[o>>f]||(a=c(a,o-a),void 0===t?t=a:(t+=String.fromCharCode(0),t+=a),a=o+u)}return dt(n),t},toWireType:function(n,t){"string"!=typeof t&&vn("Cannot pass non-string to C++ string type "+a);var e=o(t),r=pt(4+e+u);return _[r>>2]=e>>f,i(t,r+4,e+u),null!==n&&n.push(dt,r),r},argPackAdvance:8,readValueFromPointer:Q,ga:function(n){dt(n)}})},O:function(n,t,e,r,a,i){K[n]={name:pn(t),qa:Un(e,r),ha:Un(a,i),elements:[]}},s:function(n,t,e,r,a,i,o,u,c){K[n].elements.push({Ca:t,Aa:Un(e,r),Ba:a,Ga:i,Fa:Un(o,u),Ha:c})},y:function(n,t,e,r,a,i){fn[n]={name:pn(t),qa:Un(e,r),ha:Un(a,i),Ja:[]}},p:function(n,t,e,r,a,i,o,u,c,s){fn[n].Ja.push({Ta:pn(t),Ca:e,Aa:Un(r,a),Ba:i,Ga:o,Fa:Un(u,c),Ha:s})},L:function(n,t){yn(n,{ib:!0,name:t=pn(t),argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},d:function(n,t,e){n=Ln(n),t=Xn(t,"emval::as");var r=[],a=Jn(r);return W[e>>2]=a,t.toWireType(r,n)},a:qn,g:function(n,t){return Jn((n=Ln(n))[t=Ln(t)])},b:function(n){4<n&&(Gn[n].Ea+=1)},e:function(n){return"number"==typeof(n=Ln(n))},f:function(n){var t=Kn[n];return Jn(void 0===t?pn(n):t)},c:function(n){$(Ln(n)),qn(n)},z:function(n,t){return Jn(n=(n=Xn(n,"_emval_take_value")).readValueFromPointer(t))},k:function(){N("")},I:function(n,t,e){A.copyWithin(n,t,t+e)},q:function(n){var t=A.length;if(2147483648<(n>>>=0))return!1;for(var e=1;e<=4;e*=2){var r=t*(1+.2/e),r=Math.min(r,n+100663296),a=Math;r=Math.max(n,r),a=a.min.call(a,2147483648,r+(65536-r%65536)%65536);n:{try{f.grow(a-b.byteLength+65535>>>16),I();var i=1;break n}catch(n){}i=void 0}if(i)return!0}return!1},E:function(r,a){var i=0;return Qn().forEach(function(n,t){var e=a+i;for(t=W[r+4*t>>2]=e,e=0;e<n.length;++e)w[t++>>0]=n.charCodeAt(e);w[t>>0]=0,i+=n.length+1}),0},F:function(n,t){var e=Qn();W[n>>2]=e.length;var r=0;return e.forEach(function(n){r+=n.length+1}),W[t>>2]=r,0},H:function(){return 0},G:function(n,t,e,r){return n=et.hb(n),t=et.fb(n,t,e),W[r>>2]=t,0},A:function(){},t:function(n,t,e,r){for(var a=0,i=0;i<e;i++){var o=W[t>>2],u=W[t+4>>2];t+=8;for(var c=0;c<u;c++){var s=A[o+c],f=tt[n];0===s||10===s?((1===n?l:h)(y(f,0)),f.length=0):f.push(s)}a+=u}return W[r>>2]=a,0},C:function(){},D:ct};!function(){function t(n){v.asm=n.exports,f=v.asm.Q,I(),R=v.asm.U,x.unshift(v.asm.R),V--,v.monitorRunDependencies&&v.monitorRunDependencies(V),0==V&&(null!==B&&(clearInterval(B),B=null),z&&(n=z,z=null,n()))}function e(n){t(n.instance)}function r(n){return(s||!o&&!u||"function"!=typeof fetch?Promise.resolve().then(q):fetch(H,{credentials:"same-origin"}).then(function(n){if(!n.ok)throw"failed to load wasm binary file at '"+H+"'";return n.arrayBuffer()}).catch(q)).then(function(n){return WebAssembly.instantiate(n,a)}).then(function(n){return n}).then(n,function(n){h("failed to asynchronously prepare wasm: "+n),N(n)})}var a={a:lt};if(V++,v.monitorRunDependencies&&v.monitorRunDependencies(V),v.instantiateWasm)try{return v.instantiateWasm(a,t)}catch(n){return h("Module.instantiateWasm callback failed with error: "+n)}(s||"function"!=typeof WebAssembly.instantiateStreaming||G()||"function"!=typeof fetch?r(e):fetch(H,{credentials:"same-origin"}).then(function(n){return WebAssembly.instantiateStreaming(n,a).then(e,function(n){return h("wasm streaming compile failed: "+n),h("falling back to ArrayBuffer instantiation"),r(e)})})).catch(i)}(),v.___wasm_call_ctors=function(){return(v.___wasm_call_ctors=v.asm.R).apply(null,arguments)};var ht,pt=v._malloc=function(){return(pt=v._malloc=v.asm.S).apply(null,arguments)},dt=v._free=function(){return(dt=v._free=v.asm.T).apply(null,arguments)},vt=v.___getTypeName=function(){return(vt=v.___getTypeName=v.asm.V).apply(null,arguments)};function yt(){function n(){if(!ht&&(ht=!0,v.calledRun=!0,!p)){if(L(x),e(v),v.onRuntimeInitialized&&v.onRuntimeInitialized(),v.postRun)for("function"==typeof v.postRun&&(v.postRun=[v.postRun]);v.postRun.length;){var n=v.postRun.shift();Y.unshift(n)}L(Y)}}if(!(0<V)){if(v.preRun)for("function"==typeof v.preRun&&(v.preRun=[v.preRun]);v.preRun.length;)t=void 0,t=v.preRun.shift(),U.unshift(t);L(U),0<V||(v.setStatus?(v.setStatus("Running..."),setTimeout(function(){setTimeout(function(){v.setStatus("")},1),n()},1)):n())}var t}if(v.___embind_register_native_and_builtin_types=function(){return(v.___embind_register_native_and_builtin_types=v.asm.W).apply(null,arguments)},v.dynCall_jiji=function(){return(v.dynCall_jiji=v.asm.X).apply(null,arguments)},v.dynCall_viijii=function(){return(v.dynCall_viijii=v.asm.Y).apply(null,arguments)},v.dynCall_iiiiij=function(){return(v.dynCall_iiiiij=v.asm.Z).apply(null,arguments)},v.dynCall_iiiiijj=function(){return(v.dynCall_iiiiijj=v.asm._).apply(null,arguments)},v.dynCall_iiiiiijj=function(){return(v.dynCall_iiiiiijj=v.asm.$).apply(null,arguments)},z=function n(){ht||yt(),ht||(z=n)},v.run=yt,v.preInit)for("function"==typeof v.preInit&&(v.preInit=[v.preInit]);0<v.preInit.length;)v.preInit.pop()();return yt(),n.ready}})();"object"==typeof exports&&"object"==typeof module?module.exports=createAudioEngine:"function"==typeof define&&define.amd?define([],function(){return createAudioEngine}):"object"==typeof exports&&(exports.createAudioEngine=createAudioEngine),"function"==typeof AudioWorkletGlobalScope&&(globalThis.createAudioEngine=createAudioEngine);
const RENDER_QUANTUM_FRAMES=128;let AudioEngine=null;class AudioEngineWasmLoader extends AudioWorkletProcessor{constructor({processorOptions:{wasmBinary:s}}){super(),createAudioEngine({wasmBinary:s}).then(s=>{if(null!==AudioEngine)throw new Error("AudioEngine has been created");AudioEngine=s,this.port.postMessage({message:"onload"})})}process(){return!1}}registerProcessor("audio-engine-wasm-loader",AudioEngineWasmLoader);class AudioDenoiserWorkletProcessor extends AudioWorkletProcessor{constructor({processorOptions:s}){super(),this._enabled=!0,this._frameCount=0,this._processorOptions=s,this._sampleRate=s.sampleRate,this._buffer=new AudioEngine.AudioBuffer(1,RENDER_QUANTUM_FRAMES),this._kernel=new AudioEngine.AudioDenoiser(s.sampleRate,s.ains,s.agc,s.bufferTime),this._last_status=AudioEngine.AudioDenoiserStatus.UNCERTAIN,this._bufferTime=s.bufferTime,this._monitorInterval=s.monitorInterval||5e3,this._monitorThreshold=s.monitorThreshold||.05,this._overloadCount=0,this._processMonitor=!0,this._isDumping=!1,this._dumpBundleFrames=this._bufferTime*this._sampleRate,this._dumpBundleFrameCount=0,this._dumpBundleNums=s.dumpBundleNums||3,this._dumpBundleNumCount=0,this._processCounts=0,this._log(`[denoiser-processor] kernel version: ${this._kernel.version}-`+this._kernel.buildInfo),this.port.onmessage=this._handleMessage.bind(this)}process(s,e){var[[s]]=s;if(!s)return!0;const[[t]]=e;try{if(this._enabled){this._buffer.getChannelData(0).set(s);var o=this._kernel.process(this._buffer,this._buffer);for(t.set(this._buffer.getChannelData(0)),this._monitor(),o!==this._last_status&&(this._statusChanged(o),this._last_status=o),this._frameCount+=RENDER_QUANTUM_FRAMES;this._frameCount>=this._sampleRate/2;)this._getStats(),this._frameCount-=this._sampleRate/2;this._isDumping&&(this._dumpBundleFrameCount+=RENDER_QUANTUM_FRAMES,this._dumpBundleFrameCount>=this._dumpBundleFrames&&(this._dumpBundleFrameCount=0,this._dump()))}else t.set(s)}catch(s){this._log(s.toString(),"error")}return!0}_monitor(){if(this._processMonitor){var s=Date.now();if(!this._processCountInitTime)return this._processCountInitTime=s,void(this._processCounts=1);this._processCounts+=1;var e=s-this._processCountInitTime;e>=this._monitorInterval&&(s=this._sampleRate*(e/1e3)/RENDER_QUANTUM_FRAMES,Math.abs(s-this._processCounts)>s*this._monitorThreshold?this._overloadCount+=1:this._overloadCount=0,3<=this._overloadCount&&(this._overloadCount=0,this.port.postMessage({message:"onoverload",count:this._processCounts,expectedCount:s,elapse:e})),this._processCountInitTime=Date.now(),this._processCounts=0)}}_statusChanged(s){switch(s){case AudioEngine.AudioDenoiserStatus.UNCERTAIN:this._log("[denoiser-processor] kernel status changed to UNCERTAIN","info");break;case AudioEngine.AudioDenoiserStatus.NORMAL:this._log("[denoiser-processor] kernel status changed to NORMAL","info");break;case AudioEngine.AudioDenoiserStatus.DANGLY:this._log("[denoiser-processor] kernel status changed to DANGLY","info");break;case AudioEngine.AudioDenoiserStatus.STRONGBAD:this._log("[denoiser-processor] kernel status changed to STRONGBAD","warning");break;case AudioEngine.AudioDenoiserStatus.NOINPUT:this._log("[denoiser-processor] kernel status changed to NOINPUT","warning");break;case AudioEngine.AudioDenoiserStatus.NOOUTPUT:this._log("[denoiser-processor] kernel status changed to NOOUTPUT","warning");break;default:this._log("[denoiser-processor] kernel status changed to UNKNOWN","warning")}}_startMonitor(){this._overloadCount=0,this._processCountInitTime=void 0,this._processMonitor=!0}_stopMonitor(){this._processMonitor=!1,this._processCounts=0}_enable(){this._enabled=!0,this._startMonitor(),this.port.postMessage({message:"onenable"})}_disable(){this._enabled=!1,this._frameCount=0,this._kernel.reset(),this._last_status=AudioEngine.AudioDenoiserStatus.UNCERTAIN,this.port.postMessage({message:"ondisable"}),this._stopMonitor(),this._isDumping&&(this._dump(),this._endDump())}_getStats(){var s=this._kernel.getStats();this.port.postMessage({message:"ongetStats",stats:s})}_log(s,e){this.port.postMessage({message:"onlog",log:s,level:e})}_dump(){const[s,e,t]=Array.from(this._kernel.dump(this._bufferTime)),o=new Float32Array(s.numberOfFrames),i=new Float32Array(e.numberOfFrames),r=new Float32Array(t.numberOfFrames);o.set(s.getChannelData(0)),i.set(e.getChannelData(0)),r.set(t.getChannelData(0)),s.delete(),e.delete(),t.delete(),this.port.postMessage({message:"ondump",dump:{inputPCM:o,nsOutPCM:i,agcOutPCM:r}}),this._dumpBundleNumCount+=1,this._dumpBundleNumCount>=this._dumpBundleNums&&this._endDump()}_endDump(){this._isDumping&&(this._log("end dump in processor"),this._isDumping=!1,this.port.postMessage({message:"ondumpend"}))}_startDump(){this._isDumping||(this._isDumping=!0,this._dumpBundleFrameCount=0,this._dumpBundleNumCount=0,this._dump())}_setNsParams(s){this._kernel.setNsParams(s),this.port.postMessage({message:"onsetNsParams"})}_setAgcParams(s){this._kernel.setAgcParams(s),this.port.postMessage({message:"onsetAgcParams"})}_destroy(){this._disable(),this._buffer.delete(),this._kernel.delete(),this.port.onmessage=void 0}_handleMessage(s){var e=s.data;switch(e.message){case"enable":this._enable();break;case"disable":this._disable();break;case"dump":this._startDump();break;case"setNsParams":this._setNsParams(e.nsParams);break;case"setAgcParams":this._setAgcParams(e.agcParams);break;case"destroy":this._destroy()}}}registerProcessor("audio-denoiser-worklet-processor",AudioDenoiserWorkletProcessor);
{
"name": "agora-extension-ai-denoiser",
"version": "1.0.0-beta",
"version": "1.0.0-beta1",
"description": "",

@@ -5,0 +5,0 @@ "keywords": [],

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc