trtc-sdk-v5 5.6.2-beta.3 → 5.6.2-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1820 -1820
- package/package.json +1 -1
- package/plugins/cdn-streaming/package.json +1 -1
- package/plugins/video-effect/basic-beauty/basic-beauty.esm.d.ts +13 -0
- package/plugins/video-effect/basic-beauty/basic-beauty.esm.js +2 -0
- package/plugins/video-effect/basic-beauty/basic-beauty.iife.js +2 -0
- package/plugins/video-effect/basic-beauty/package.json +30 -0
- package/plugins/video-effect/beauty/package.json +1 -1
- package/plugins/video-effect/virtual-background/package.json +1 -1
- package/plugins/video-effect/virtual-background/virtual-background.esm.js +21 -21
- package/plugins/video-effect/virtual-background/virtual-background.iife.js +21 -21
- package/plugins/video-effect/watermark/package.json +1 -1
- package/trtc.esm.js +23 -23
- package/trtc.js +1 -1
package/package.json
CHANGED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface BasicBeautyOptions {
|
|
2
|
+
beauty?: number;
|
|
3
|
+
brightness?: number;
|
|
4
|
+
ruddy?: number;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export declare class BasicBeauty {
|
|
8
|
+
start(options: BasicBeautyOptions): Promise<void>;
|
|
9
|
+
update(options: BasicBeautyOptions): Promise<void>;
|
|
10
|
+
stop(): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export default BasicBeauty;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var lB=Object.defineProperty;var uB=(M,y,f)=>y in M?lB(M,y,{enumerable:!0,configurable:!0,writable:!0,value:f}):M[y]=f;var Z=(M,y,f)=>(uB(M,typeof y!="symbol"?y+"":y,f),f);function FA(M){return{name:"BasicBeautyOptions",type:"object",required:!0,allowEmpty:!1,properties:{beauty:{required:!1,type:"number"},brightness:{required:!1,type:"number"},ruddy:{required:!1,type:"number"}}}}function DI(M){return{name:"StopBasicBeautyOptions",required:!1}}var GB={},wB=(()=>{var M=GB.url;return function(y={}){var f,E=Object.assign({},y),LA,q,dI=new Promise((I,A)=>{LA=I,q=A}),lI=!0,DA=!1,vA=Object.assign({},E),uI=[],wI="./this.program",GI=(I,A)=>{throw A},k="",hI,NI,yA;(lI||DA)&&(DA?k=self.location.href:typeof document!="undefined"&&document.currentScript&&(k=document.currentScript.src),M&&(k=M),k.startsWith("blob:")?k="":k=k.substr(0,k.replace(/[?#].*/,"").lastIndexOf("/")+1),hI=I=>{var A=new XMLHttpRequest;return A.open("GET",I,!1),A.send(null),A.responseText},DA&&(yA=I=>{var A=new XMLHttpRequest;return A.open("GET",I,!1),A.responseType="arraybuffer",A.send(null),new Uint8Array(A.response)}),NI=(I,A,g)=>{var B=new XMLHttpRequest;B.open("GET",I,!0),B.responseType="arraybuffer",B.onload=()=>{if(B.status==200||B.status==0&&B.response){A(B.response);return}g()},B.onerror=g,B.send(null)});var RI=E.print||console.log.bind(console),$=E.printErr||console.error.bind(console);Object.assign(E,vA),vA=null,E.arguments&&(uI=E.arguments),E.thisProgram&&(wI=E.thisProgram),E.quit&&(GI=E.quit);var AA;E.wasmBinary&&(AA=E.wasmBinary);function MI(I){for(var A=atob(I),g=new Uint8Array(A.length),B=0;B<A.length;++B)g[B]=A.charCodeAt(B);return g}function bI(I){if(HI(I))return MI(I.slice(OA.length))}var YA,TA=!1,mI,v,l,O,IA,x,D,HA,JA;function SI(){var I=YA.buffer;E.HEAP8=v=new Int8Array(I),E.HEAP16=O=new Int16Array(I),E.HEAPU8=l=new Uint8Array(I),E.HEAPU16=IA=new Uint16Array(I),E.HEAP32=x=new Int32Array(I),E.HEAPU32=D=new Uint32Array(I),E.HEAPF32=HA=new Float32Array(I),E.HEAPF64=JA=new Float64Array(I)}var ZA=[],PA=[],KA=[],pI=!1;function fI(){if(E.preRun)for(typeof E.preRun=="function"&&(E.preRun=[E.preRun]);E.preRun.length;)UI(E.preRun.shift());uA(ZA)}function kI(){pI=!0,uA(PA)}function FI(){if(E.postRun)for(typeof E.postRun=="function"&&(E.postRun=[E.postRun]);E.postRun.length;)vI(E.postRun.shift());uA(KA)}function UI(I){ZA.unshift(I)}function LI(I){PA.unshift(I)}function vI(I){KA.unshift(I)}var Y=0,dA=null,W=null;function YI(I){var A;Y++,(A=E.monitorRunDependencies)==null||A.call(E,Y)}function TI(I){var g;if(Y--,(g=E.monitorRunDependencies)==null||g.call(E,Y),Y==0&&(dA!==null&&(clearInterval(dA),dA=null),W)){var A=W;W=null,A()}}function lA(I){var g;(g=E.onAbort)==null||g.call(E,I),I="Aborted("+I+")",$(I),TA=!0,mI=1,I+=". Build with -sASSERTIONS for more info.";var A=new WebAssembly.RuntimeError(I);throw q(A),A}var OA="data:application/octet-stream;base64,",HI=I=>I.startsWith(OA);function JI(){var I="data:application/octet-stream;base64,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AUGU6gA2AhggAUECNgIUIAFBlOoANgIQIAFBAjYCDCABQZTqADYCCCABQQA6ACAgAUKAgICAMDcCPCABQQA7ADcgAUEAOwArIAJBEGokACABC54FAgZ+BH8gASABKAIAQQdqQXhxIgFBEGo2AgAgACELIAEpAwAhAyABKQMIIQcjAEEgayIBJAAgB0L///////8/gyEFAn4gB0IwiEL//wGDIgSnIglBgfgAa0H9D00EQCAFQgSGIANCPIiEIQIgCUGA+ABrrSEEAkAgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyADQoCAgICAgICACFINACACQgGDIAJ8IQILQgAgAiACQv////////8HViIAGyECIACtIAR8DAELAkAgAyAFhFANACAEQv//AVINACAFQgSGIANCPIiEQoCAgICAgIAEhCECQv8PDAELQv8PIAlB/ocBSw0AGkIAQYD4AEGB+AAgBFAiCBsiCiAJayIAQfAASg0AGiADIQIgBSAFQoCAgICAgMAAhCAIGyIEIQYCQEGAASAAayIIQcAAcQRAIAIgCEFAaq2GIQZCACECDAELIAhFDQAgBiAIrSIFhiACQcAAIAhrrYiEIQYgAiAFhiECCyABIAI3AxAgASAGNwMYAkAgAEHAAHEEQCAEIABBQGqtiCEDQgAhBAwBCyAARQ0AIARBwAAgAGuthiADIACtIgKIhCEDIAQgAoghBAsgASADNwMAIAEgBDcDCCABKQMIQgSGIAEpAwAiA0I8iIQhAgJAIAkgCkcgASkDECABKQMYhEIAUnGtIANC//////////8Pg4QiA0KBgICAgICAgAhaBEAgAkIBfCECDAELIANCgICAgICAgIAIUg0AIAJCAYMgAnwhAgsgAkKAgICAgICACIUgAiACQv////////8HViIAGyECIACtCyEDIAFBIGokACALIAdCgICAgICAgICAf4MgA0I0hoQgAoS/OQMAC0MBAn8jAEEQayICJAAgAiABNgIMIAJBlOoANgIIIAJBCGogABEBACEDIAIoAgwiAUEJTwRAIAEQAgsgAkEQaiQAIAMLBABCAAsEAEEAC/YCAQh/IwBBIGsiAyQAIAMgACgCHCIENgIQIAAoAhQhBSADIAI2AhwgAyABNgIYIAMgBSAEayIBNgIUIAEgAmohBUEC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AAJ/IAOZRAAAAAAAAOBBYwRAIAOqDAELQYCAgIB4CzYCQCACQRBqJAALNwEBfyMAQRBrIgIkACACIAEoAkA2AgggAEHc5AAgAkEIahAINgIEIABBlOoANgIAIAJBEGokAAtgAgF/AXwjAEEQayICJAAgAkEANgIMIAEoAgRB3OQAIAJBDGoQCSEDIAIoAgwiAQRAIAEQAQsgAAJ/IAOZRAAAAAAAAOBBYwRAIAOqDAELQYCAgIB4CzYCPCACQRBqJAALIgEBfiABIAKtIAOtQiCGhCAEIAARDAAiBUIgiKckASAFpws3AQF/IwBBEGsiAiQAIAIgASgCPDYCCCAAQdzkACACQQhqEAg2AgQgAEGU6gA2AgAgAkEQaiQACwu1XxUAQYAIC8Q6c2V0QmVhdXR5AC0rICAgMFgweAAtMFgrMFggMFgtMHgrMHggMHgAdW5zaWduZWQgc2hvcnQAdW5zaWduZWQgaW50AGluaXQAZmxvYXQAdWludDY0X3QAYmx1clJhZGl1cwB2ZWN0b3IAbWlycm9yAGF0dGFjaFNoYWRlcgBkZWxldGVTaGFkZXIAY3JlYXRlU2hhZGVyAGNvbXBpbGVTaGFkZXIAdW5zaWduZWQgY2hhcgBzdGQ6OmV4Y2VwdGlvbgBuYW4AbGlua1Byb2dyYW0AZGVsZXRlUHJvZ3JhbQBjcmVhdGVQcm9ncmFtAGJvb2wAc2V0V2F0ZXJNYXJrAHN0b3BXYXRlck1hcmsAdW5zaWduZWQgbG9uZwBzdGQ6OndzdHJpbmcAYmFzaWNfc3RyaW5nAHN0ZDo6c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGluZgAlZgBjbG9zZQBkb3VibGUAdmJNb2RlAHNoYWRlclNvdXJjZQB2b2lkAE5BTgBJTkYAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ2NF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ2NF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AdmVjMiBjID0gdl90ZXhDb29yZDsAdmVjMiBjID0gdmVjMigxLjAgLSB2X3RleENvb3JkLngsIHZfdGV4Q29vcmQueSk7AEFsbEluMQAuAC4wLAAuMCkqbykqAChudWxsKQApKm8ueSk7ICAgIHZlYzIgY29vcmQyID0gdmVjMihmbG9hdCgAICAgIGMgPSB2ZWMyKHZfdGV4Q29vcmQueCwgMS4wIC0gdl90ZXhDb29yZC55KTsgICAgdmVjMiBjb29yZDEgPSB2ZWMyKGZsb2F0KAApLCAoYy55IC1jb29yZDEueSkgLyBvLnkgLyBmbG9hdCgAKSpvLnkpOyAgICBpZiAoYy54ID4gY29vcmQxLnggJiYgYy54IDwgY29vcmQyLnggJiYgYy55ID4gY29vcmQxLnkgJiYgYy55IDwgY29vcmQyLnkpIHsgICAgICB2ZWM0IHdhdGVyQ29sb3IgPSB0ZXh0dXJlKHdhdGVyTWFyaywgdmVjMigoYy54IC0gY29vcmQxLngpICAvIG8ueCAvIGZsb2F0KAApICogby54LCBmbG9hdCgAKTsgICAgb3V0Q29sb3IucmdiID0gdmVjMyhvdXRDb2xvci5yZ2IgKyB2ZWMzKABnKz1HKGMsdmVjMigAICAgIHZlYzIgb2Zmc2V0ID0gdmVjMigAKSwwLjAsMS4wKTsgICAgIHZlYzMgc2NyZWVuID0gdmVjMygxLjApIC0gKHZlYzMoMS4wKS1zbW9vdGhDb2xvcikgKiAodmVjMygxLjApLW91dENvbG9yLnJnYik7ICAgICB2ZWMzIGxpZ2h0ZW4gPSBtYXgoc21vb3RoQ29sb3IsIG91dENvbG9yLnJnYik7ICAgICB2ZWMzIHNvZnRMaWdodCA9IDIuMCAqIG91dENvbG9yLnJnYipzbW9vdGhDb2xvciArIG91dENvbG9yLnJnYipvdXRDb2xvci5yZ2IgLSAyLjAgKiBvdXRDb2xvci5yZ2Iqb3V0Q29sb3IucmdiICogc21vb3RoQ29sb3I7ICAgICBvdXRDb2xvciA9IHZlYzQobWl4KG91dENvbG9yLnJnYiwgc2NyZWVuLCBhbHBoYSksIDEuMCk7ICAgICBvdXRDb2xvci5yZ2IgPSBtaXgob3V0Q29sb3IucmdiLCBsaWdodGVuLCBhbHBoYSk7ICAgICBvdXRDb2xvci5yZ2IgPSBtaXgob3V0Q29sb3IucmdiLCBzb2Z0TGlnaHQsIAApOyAgICAgY29uc3QgbWF0MyBzYXR1cmF0ZU1hdHJpeCA9IG1hdDMoMS4xMTAyLC0wLjA1OTgsLTAuMDYxLC0wLjA3NzQsMS4wODI2LC0wLjExODYsLTAuMDIyOCwtMC4wMjI4LDEuMTc3Mik7ICAgIHZlYzMgc2F0Q29sb3IgPSBvdXRDb2xvci5yZ2IgKiBzYXR1cmF0ZU1hdHJpeDsgICAgb3V0Q29sb3IucmdiID0gbWl4KG91dENvbG9yLnJnYiwgc2F0Q29sb3IsIAApOyAgICAgdmVjMyBzbW9vdGhDb2xvciA9IG91dENvbG9yLnJnYiArIChvdXRDb2xvci5yZ2ItdmVjMyhoaWdoUGFzcykpKmFscGhhKjAuMTsgICAgIHNtb290aENvbG9yLnIgPSBjbGFtcChwb3coc21vb3RoQ29sb3IuciwgACksMC4wLDEuMCk7ICAgICBzbW9vdGhDb2xvci5nID0gY2xhbXAocG93KHNtb290aENvbG9yLmcsIAApOyAgICB2ZWMyIGJsdXJDb29yZGluYXRlc1syNF07ICAgIGJsdXJDb29yZGluYXRlc1swXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDAuMCwgLTEwLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzFdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMC4wLCAxMC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1syXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKC0xMC4wLCAwLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzNdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMTAuMCwgMC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1s0XSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDUuMCwgLTguMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbNV0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMig1LjAsIDguMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbNl0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigtNS4wLCA4LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzddID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTUuMCwgLTguMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbOF0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMig4LjAsIC01LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzldID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoOC4wLCA1LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzEwXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKC04LjAsIDUuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTFdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTguMCwgLTUuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTJdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMC4wLCAtNi4wKTsgICAgIGJsdXJDb29yZGluYXRlc1sxM10gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigwLjAsIDYuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTRdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoNi4wLCAwLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzE1XSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKC02LjAsIDAuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTZdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTQuMCwgLTQuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTddID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTQuMCwgNC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1sxOF0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMig0LjAsIC00LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzE5XSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDQuMCwgNC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1syMF0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigtMi4wLCAtMi4wKTsgICAgIGJsdXJDb29yZGluYXRlc1syMV0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigtMi4wLCAyLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzIyXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDIuMCwgLTIuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMjNdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMi4wLCAyLjApOyAgICAgZmxvYXQgc2FtcGxlQ29sb3IgPSBvdXRDb2xvci5nICogMjIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1swXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1syXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1szXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s0XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s1XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s2XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s3XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s4XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s5XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxMF0pLmc7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMTFdKS5nOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzEyXSkuZyAqIDIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxM10pLmcgKiAyLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMTRdKS5nICogMi4wOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzE1XSkuZyAqIDIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxNl0pLmcgKiAyLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMTddKS5nICogMi4wOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzE4XSkuZyAqIDIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxOV0pLmcgKiAyLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMjBdKS5nICogMy4wOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzIxXSkuZyAqIDMuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1syMl0pLmcgKiAzLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMjNdKS5nICogMy4wOyAgICAgc2FtcGxlQ29sb3IgPSBzYW1wbGVDb2xvciAvIDYyLjA7ICAgICBmbG9hdCBoaWdoUGFzcyA9IG91dENvbG9yLmcgLSBzYW1wbGVDb2xvciArIDAuNTsgICAgIGZvcihpbnQgaSA9IDA7IGkgPCA1OyBpKyspIHsgICAgICAgaWYgKGhpZ2hQYXNzIDw9IDAuNSkgeyAgICAgICAgIGhpZ2hQYXNzID0gaGlnaFBhc3MgKiBoaWdoUGFzcyAqIDIuMDsgICAgICAgfSBlbHNlIHsgICAgICAgICBoaWdoUGFzcyA9IDEuMCAtICgoMS4wIC0gaGlnaFBhc3MpKigxLjAgLSBoaWdoUGFzcykgKiAyLjApOyAgICAgICB9ICAgICB9ICAgICBjb25zdCBoaWdocCB2ZWMzIFcgPSB2ZWMzKDAuMjk5LDAuNTg3LDAuMTE0KTsgICAgZmxvYXQgbHVtaW5hbmNlID0gZG90KG91dENvbG9yLnJnYiwgVyk7ICAgICBmbG9hdCBhbHBoYSA9IHBvdyhsdW1pbmFuY2UsIAApLDAuMCwxLjApOyAgICAgc21vb3RoQ29sb3IuYiA9IGNsYW1wKHBvdyhzbW9vdGhDb2xvci5iLCAAKSk7ICAAKSkpOyAgICAgIG91dENvbG9yID0gbWl4KG91dENvbG9yLHdhdGVyQ29sb3IsICB3YXRlckNvbG9yLmEpOyAgICB9ICAgIAAjdmVyc2lvbiAzMDAgZXMKICAgIHByZWNpc2lvbiBoaWdocCBmbG9hdDsKICAgIHVuaWZvcm0gc2FtcGxlcjJEIGZyYW1lOwogICAgdW5pZm9ybSBzYW1wbGVyMkQgbWFzazsKICAgIHVuaWZvcm0gc2FtcGxlcjJEIGJnOwogICAgdW5pZm9ybSBzYW1wbGVyMkQgd2F0ZXJNYXJrOwogICAgdW5pZm9ybSBzYW1wbGVyMkQgbGFzdE1hc2s7CiAgICBpbiB2ZWMyIHZfdGV4Q29vcmQ7CiAgICBvdXQgdmVjNCBvdXRDb2xvcjsKICAgIHZlYzQgRyh2ZWMyIGMsdmVjMiBzKXsKICAgICAgcmV0dXJuIHRleHR1cmUoZnJhbWUsdGV4dHVyZShtYXNrLGMrcykuYT4wLjM/YzpjK3MpOwogICAgfQogICAgdm9pZCBtYWluKCkgewogICAgICAACiAgICB2ZWM0IGcgPSB2ZWM0KDAuMCk7CiAgICAACiAgICAgIGMueSA9IDEuMCAtIGMueTsKICAgICAgdmVjNCBzcmNfY29sb3IgPSB0ZXh0dXJlKGZyYW1lLCBjKTsKICAgICAgZmxvYXQgYSA9IHRleHR1cmUobWFzaywgYykuYTsKICAgICAgYSA9IGE8MC41PzIuMCphKmE6MS4wLTIuMCooMS4wLWEpKigxLjAtYSk7CiAgICAgIC8vIGZsb2F0IGEyID0gdGV4dHVyZShsYXN0TWFzaywgYykuYTsKICAgICAgLy8gYTIgPSBhMjwwLjU/Mi4wKmEyKmEyOjEuMC0yLjAqKDEuMC1hMikqKDEuMC1hMik7CiAgICAgIC8vIGZsb2F0IGRlbHRhID0gYSAtIGEyOwogICAgICAvLyBpZiAoZGVsdGEgPCAwLjI1ICYmIGRlbHRhID4gLTAuMjUpCiAgICAgIC8vIHsKICAgICAgLy8gICAgIGEgPSBhICsgMC41KmRlbHRhOwogICAgICAvLyB9CiAgICAgIAogICAgICB2ZWMyIG8gPSAxLjAgLyB2ZWMyKHRleHR1cmVTaXplKGZyYW1lLCAwKSk7CiAgICAACiAgICAgIG91dENvbG9yID0gZzsKICAAI3ZlcnNpb24gMzAwIGVzCmluIHZlYzIgYV9wb3NpdGlvbjsKaW4gdmVjMiBhX3RleENvb3JkOwpvdXQgdmVjMiB2X3RleENvb3JkOwp2b2lkIG1haW4oKSB7CiAgZ2xfUG9zaXRpb24gPSB2ZWM0KGFfcG9zaXRpb24ueCwgYV9wb3NpdGlvbi55LCAwLCAxKTsKICB2X3RleENvb3JkID0gYV90ZXhDb29yZDsKfQoAZ2V0QmVhdXR5U2hhZGVyICVmICVmICVmCgBzZXRCZWF1dHkyMjIyICVmICVmCgBvdXRDb2xvciA9IHNyY19jb2xvcjsKAG91dENvbG9yID0gbWl4KHRleHR1cmUoYmcsIGMpLHNyY19jb2xvcixhKTsKAG91dENvbG9yID0gbWl4KHZlYzQoMC4wLDEuMCwwLjAsMS4wKSxzcmNfY29sb3IsYSk7CgA2QWxsSW4xAMAyAACgIAAAUDZBbGxJbjEAAAAARDMAALAgAAAAAAAAqCAAAFBLNkFsbEluMQAAAEQzAADMIAAAAQAAAKggAABwcAB2AHZwALwgAAAMIQAATjEwZW1zY3JpcHRlbjN2YWxFAADAMgAA+CAAAHBwcAB2cHBwAAAAAPwxAAC8IAAAsDIAALAyAACwMgAAsDIAALAyAAB2cHBkZGRkZABB0MIAC8gI/DEAALwgAACwMgAAsDIAALAyAACwMgAAdnBwZGRkZAD8MQAAvCAAAHZwcAD8MQAADCEAAAwhAAC8IAAADCEAAFwyAAD8MQAADCEAAOAhAABOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAAwDIAAKAhAAAMIQAA/DEAAAwhAAAMIQAATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAAMAyAAD4IQAATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUAAMAyAABAIgAATlN0M19fMjEyYmFzaWNfc3RyaW5nSURzTlNfMTFjaGFyX3RyYWl0c0lEc0VFTlNfOWFsbG9jYXRvcklEc0VFRUUAAADAMgAAiCIAAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0lEaU5TXzExY2hhcl90cmFpdHNJRGlFRU5TXzlhbGxvY2F0b3JJRGlFRUVFAAAAwDIAANQiAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAAMAyAAAgIwAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAADAMgAASCMAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQAAwDIAAHAjAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUAAMAyAACYIwAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAADAMgAAwCMAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQAAwDIAAOgjAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUAAMAyAAAQJAAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAADAMgAAOCQAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQAAwDIAAGAkAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l4RUUAAMAyAACIJAAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJeUVFAADAMgAAsCQAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQAAwDIAANgkAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAAMAyAAAAJQAA/oIrZUcVZ0AAAAAAAAA4QwAA+v5CLna/OjuevJr3DL29/f/////fPzxUVVVVVcU/kSsXz1VVpT8X0KRnERGBPwAAAAAAAMhC7zn6/kIu5j8kxIL/vb/OP7X0DNcIa6w/zFBG0quygz+EOk6b4NdVPwBBpssAC7sQ8D9uv4gaTzubPDUz+6k99u8/XdzYnBNgcbxhgHc+muzvP9FmhxB6XpC8hX9u6BXj7z8T9mc1UtKMPHSFFdOw2e8/+o75I4DOi7ze9t0pa9DvP2HI5mFO92A8yJt1GEXH7z+Z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";return I}var gA;function ZI(I){if(I==gA&&AA)return new Uint8Array(AA);var A=bI(I);if(A)return A;if(yA)return yA(I);throw"both async and sync fetching of the wasm failed"}function PI(I){return Promise.resolve().then(()=>ZI(I))}function KI(I,A,g){return PI(I).then(B=>WebAssembly.instantiate(B,A)).then(g,B=>{$(`failed to asynchronously prepare wasm: ${B}`),lA(B)})}function OI(I,A,g,B){return KI(A,g,B)}function xI(){return{a:DB}}function WI(){var I=xI();function A(B,C){return R=B.exports,YA=R.z,SI(),$A=R.C,LI(R.A),TI("wasm-instantiate"),R}YI("wasm-instantiate");function g(B){A(B.instance)}if(E.instantiateWasm)try{return E.instantiateWasm(I,A)}catch(B){$(`Module.instantiateWasm callback failed with error: ${B}`),q(B)}return gA||(gA=JI()),OI(AA,gA,I,g).catch(q),{}}var uA=I=>{for(;I.length>0;)I.shift()(E)},hB=E.noExitRuntime||!0;class XI{constructor(A){this.excPtr=A,this.ptr=A-24}set_type(A){D[this.ptr+4>>2]=A}get_type(){return D[this.ptr+4>>2]}set_destructor(A){D[this.ptr+8>>2]=A}get_destructor(){return D[this.ptr+8>>2]}set_caught(A){A=A?1:0,v[this.ptr+12]=A}get_caught(){return v[this.ptr+12]!=0}set_rethrown(A){A=A?1:0,v[this.ptr+13]=A}get_rethrown(){return v[this.ptr+13]!=0}init(A,g){this.set_adjusted_ptr(0),this.set_type(A),this.set_destructor(g)}set_adjusted_ptr(A){D[this.ptr+16>>2]=A}get_adjusted_ptr(){return D[this.ptr+16>>2]}get_exception_ptr(){var A=oI(this.get_type());if(A)return D[this.excPtr>>2];var g=this.get_adjusted_ptr();return g!==0?g:this.excPtr}}var xA=0,zI=0,VI=(I,A,g)=>{var B=new XI(I);throw B.init(A,g),xA=I,zI++,xA},jI=()=>{lA("")},_I=(I,A,g,B,C)=>{},qI=()=>{for(var I=new Array(256),A=0;A<256;++A)I[A]=String.fromCharCode(A);WA=I},WA,G=I=>{for(var A="",g=I;l[g];)A+=WA[l[g++]];return A},P={},T={},BA={},K,s=I=>{throw new K(I)},XA,CA=I=>{throw new XA(I)},H=(I,A,g)=>{I.forEach(function(Q){BA[Q]=A});function B(Q){var i=g(Q);i.length!==I.length&&CA("Mismatched type converter count");for(var o=0;o<I.length;++o)b(I[o],i[o])}var C=new Array(A.length),e=[],r=0;A.forEach((Q,i)=>{T.hasOwnProperty(Q)?C[i]=T[Q]:(e.push(Q),P.hasOwnProperty(Q)||(P[Q]=[]),P[Q].push(()=>{C[i]=T[Q],++r,r===e.length&&B(C)}))}),e.length===0&&B(C)};function $I(I,A,g={}){var B=A.name;if(I||s(`type "${B}" must have a positive integer typeid pointer`),T.hasOwnProperty(I)){if(g.ignoreDuplicateRegistrations)return;s(`Cannot register type '${B}' twice`)}if(T[I]=A,delete BA[I],P.hasOwnProperty(I)){var C=P[I];delete P[I],C.forEach(e=>e())}}function b(I,A,g={}){if(!("argPackAdvance"in A))throw new TypeError("registerType registeredInstance requires argPackAdvance");return $I(I,A,g)}var F=8,Ag=(I,A,g,B)=>{A=G(A),b(I,{name:A,fromWireType:function(C){return!!C},toWireType:function(C,e){return e?g:B},argPackAdvance:F,readValueFromPointer:function(C){return this.fromWireType(l[C])},destructorFunction:null})},Ig=I=>({count:I.count,deleteScheduled:I.deleteScheduled,preservePointerOnDelete:I.preservePointerOnDelete,ptr:I.ptr,ptrType:I.ptrType,smartPtr:I.smartPtr,smartPtrType:I.smartPtrType}),wA=I=>{function A(g){return g.$$.ptrType.registeredClass.name}s(A(I)+" instance already deleted")},GA=!1,zA=I=>{},gg=I=>{I.smartPtr?I.smartPtrType.rawDestructor(I.smartPtr):I.ptrType.registeredClass.rawDestructor(I.ptr)},VA=I=>{I.count.value-=1;var A=I.count.value===0;A&&gg(I)},jA=(I,A,g)=>{if(A===g)return I;if(g.baseClass===void 0)return null;var B=jA(I,A,g.baseClass);return B===null?null:g.downcast(B)},_A={},Bg=()=>Object.keys(V).length,Cg=()=>{var I=[];for(var A in V)V.hasOwnProperty(A)&&I.push(V[A]);return I},X=[],hA=()=>{for(;X.length;){var I=X.pop();I.$$.deleteScheduled=!1,I.delete()}},z,Qg=I=>{z=I,X.length&&z&&z(hA)},eg=()=>{E.getInheritedInstanceCount=Bg,E.getLiveInheritedInstances=Cg,E.flushPendingDeletes=hA,E.setDelayFunction=Qg},V={},Eg=(I,A)=>{for(A===void 0&&s("ptr should not be undefined");I.baseClass;)A=I.upcast(A),I=I.baseClass;return A},rg=(I,A)=>(A=Eg(I,A),V[A]),QA=(I,A)=>{(!A.ptrType||!A.ptr)&&CA("makeClassHandle requires ptr and ptrType");var g=!!A.smartPtrType,B=!!A.smartPtr;return g!==B&&CA("Both smartPtrType and smartPtr must be specified"),A.count={value:1},j(Object.create(I,{$$:{value:A,writable:!0}}))};function ig(I){var A=this.getPointee(I);if(!A)return this.destructor(I),null;var g=rg(this.registeredClass,A);if(g!==void 0){if(g.$$.count.value===0)return g.$$.ptr=A,g.$$.smartPtr=I,g.clone();var B=g.clone();return this.destructor(I),B}function C(){return this.isSmartPointer?QA(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:A,smartPtrType:this,smartPtr:I}):QA(this.registeredClass.instancePrototype,{ptrType:this,ptr:I})}var e=this.registeredClass.getActualType(A),r=_A[e];if(!r)return C.call(this);var Q;this.isConst?Q=r.constPointerType:Q=r.pointerType;var i=jA(A,this.registeredClass,Q.registeredClass);return i===null?C.call(this):this.isSmartPointer?QA(Q.registeredClass.instancePrototype,{ptrType:Q,ptr:i,smartPtrType:this,smartPtr:I}):QA(Q.registeredClass.instancePrototype,{ptrType:Q,ptr:i})}var j=I=>typeof FinalizationRegistry=="undefined"?(j=A=>A,I):(GA=new FinalizationRegistry(A=>{VA(A.$$)}),j=A=>{var g=A.$$,B=!!g.smartPtr;if(B){var C={$$:g};GA.register(A,C,A)}return A},zA=A=>GA.unregister(A),j(I)),tg=()=>{Object.assign(eA.prototype,{isAliasOf(I){if(!(this instanceof eA)||!(I instanceof eA))return!1;var A=this.$$.ptrType.registeredClass,g=this.$$.ptr;I.$$=I.$$;for(var B=I.$$.ptrType.registeredClass,C=I.$$.ptr;A.baseClass;)g=A.upcast(g),A=A.baseClass;for(;B.baseClass;)C=B.upcast(C),B=B.baseClass;return A===B&&g===C},clone(){if(this.$$.ptr||wA(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var I=j(Object.create(Object.getPrototypeOf(this),{$$:{value:Ig(this.$$)}}));return I.$$.count.value+=1,I.$$.deleteScheduled=!1,I},delete(){this.$$.ptr||wA(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&s("Object already scheduled for deletion"),zA(this),VA(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||wA(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&s("Object already scheduled for deletion"),X.push(this),X.length===1&&z&&z(hA),this.$$.deleteScheduled=!0,this}})};function eA(){}var EA=(I,A)=>Object.defineProperty(A,"name",{value:I}),qA=(I,A,g)=>{if(I[A].overloadTable===void 0){var B=I[A];I[A]=function(...C){return I[A].overloadTable.hasOwnProperty(C.length)||s(`Function '${g}' called with an invalid number of arguments (${C.length}) - expects one of (${I[A].overloadTable})!`),I[A].overloadTable[C.length].apply(this,C)},I[A].overloadTable=[],I[A].overloadTable[B.argCount]=B}},og=(I,A,g)=>{E.hasOwnProperty(I)?((g===void 0||E[I].overloadTable!==void 0&&E[I].overloadTable[g]!==void 0)&&s(`Cannot register public name '${I}' twice`),qA(E,I,I),E.hasOwnProperty(g)&&s(`Cannot register multiple overloads of a function with the same number of arguments (${g})!`),E[I].overloadTable[g]=A):(E[I]=A,g!==void 0&&(E[I].numArguments=g))},sg=48,ag=57,ng=I=>{if(I===void 0)return"_unknown";I=I.replace(/[^a-zA-Z0-9_]/g,"$");var A=I.charCodeAt(0);return A>=sg&&A<=ag?`_${I}`:I};function cg(I,A,g,B,C,e,r,Q){this.name=I,this.constructor=A,this.instancePrototype=g,this.rawDestructor=B,this.baseClass=C,this.getActualType=e,this.upcast=r,this.downcast=Q,this.pureVirtualFunctions=[]}var rA=(I,A,g)=>{for(;A!==g;)A.upcast||s(`Expected null or instance of ${g.name}, got an instance of ${A.name}`),I=A.upcast(I),A=A.baseClass;return I};function Dg(I,A){if(A===null)return this.isReference&&s(`null is not a valid ${this.name}`),0;A.$$||s(`Cannot pass "${bA(A)}" as a ${this.name}`),A.$$.ptr||s(`Cannot pass deleted object as a pointer of type ${this.name}`);var g=A.$$.ptrType.registeredClass,B=rA(A.$$.ptr,g,this.registeredClass);return B}function yg(I,A){var g;if(A===null)return this.isReference&&s(`null is not a valid ${this.name}`),this.isSmartPointer?(g=this.rawConstructor(),I!==null&&I.push(this.rawDestructor,g),g):0;(!A||!A.$$)&&s(`Cannot pass "${bA(A)}" as a ${this.name}`),A.$$.ptr||s(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&A.$$.ptrType.isConst&&s(`Cannot convert argument of type ${A.$$.smartPtrType?A.$$.smartPtrType.name:A.$$.ptrType.name} to parameter type ${this.name}`);var B=A.$$.ptrType.registeredClass;if(g=rA(A.$$.ptr,B,this.registeredClass),this.isSmartPointer)switch(A.$$.smartPtr===void 0&&s("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:A.$$.smartPtrType===this?g=A.$$.smartPtr:s(`Cannot convert argument of type ${A.$$.smartPtrType?A.$$.smartPtrType.name:A.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:g=A.$$.smartPtr;break;case 2:if(A.$$.smartPtrType===this)g=A.$$.smartPtr;else{var C=A.clone();g=this.rawShare(g,L.toHandle(()=>C.delete())),I!==null&&I.push(this.rawDestructor,g)}break;default:s("Unsupporting sharing policy")}return g}function dg(I,A){if(A===null)return this.isReference&&s(`null is not a valid ${this.name}`),0;A.$$||s(`Cannot pass "${bA(A)}" as a ${this.name}`),A.$$.ptr||s(`Cannot pass deleted object as a pointer of type ${this.name}`),A.$$.ptrType.isConst&&s(`Cannot convert argument of type ${A.$$.ptrType.name} to parameter type ${this.name}`);var g=A.$$.ptrType.registeredClass,B=rA(A.$$.ptr,g,this.registeredClass);return B}function iA(I){return this.fromWireType(D[I>>2])}var lg=()=>{Object.assign(tA.prototype,{getPointee(I){return this.rawGetPointee&&(I=this.rawGetPointee(I)),I},destructor(I){var A;(A=this.rawDestructor)==null||A.call(this,I)},argPackAdvance:F,readValueFromPointer:iA,fromWireType:ig})};function tA(I,A,g,B,C,e,r,Q,i,o,t){this.name=I,this.registeredClass=A,this.isReference=g,this.isConst=B,this.isSmartPointer=C,this.pointeeType=e,this.sharingPolicy=r,this.rawGetPointee=Q,this.rawConstructor=i,this.rawShare=o,this.rawDestructor=t,!C&&A.baseClass===void 0?B?(this.toWireType=Dg,this.destructorFunction=null):(this.toWireType=dg,this.destructorFunction=null):this.toWireType=yg}var ug=(I,A,g)=>{E.hasOwnProperty(I)||CA("Replacing nonexistent public symbol"),E[I].overloadTable!==void 0&&g!==void 0?E[I].overloadTable[g]=A:(E[I]=A,E[I].argCount=g)},wg=(I,A,g)=>{I=I.replace(/p/g,"i");var B=E["dynCall_"+I];return B(A,...g)},oA=[],$A,AI=I=>{var A=oA[I];return A||(I>=oA.length&&(oA.length=I+1),oA[I]=A=$A.get(I)),A},Gg=(I,A,g=[])=>{if(I.includes("j"))return wg(I,A,g);var B=AI(A)(...g);return B},hg=(I,A)=>(...g)=>Gg(I,A,g),U=(I,A)=>{I=G(I);function g(){return I.includes("j")?hg(I,A):AI(A)}var B=g();return typeof B!="function"&&s(`unknown function pointer with signature ${I}: ${A}`),B},Ng=(I,A)=>{var g=EA(A,function(B){this.name=A,this.message=B;var C=new Error(B).stack;C!==void 0&&(this.stack=this.toString()+`
|
|
2
|
+
`+C.replace(/^Error(:[^\n]*)?\n/,""))});return g.prototype=Object.create(I.prototype),g.prototype.constructor=g,g.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},g},II,gI=I=>{var A=tI(I),g=G(A);return S(A),g},_=(I,A)=>{var g=[],B={};function C(e){if(!B[e]&&!T[e]){if(BA[e]){BA[e].forEach(C);return}g.push(e),B[e]=!0}}throw A.forEach(C),new II(`${I}: `+g.map(gI).join([", "]))},Rg=(I,A,g,B,C,e,r,Q,i,o,t,a,n)=>{t=G(t),e=U(C,e),Q&&(Q=U(r,Q)),o&&(o=U(i,o)),n=U(a,n);var c=ng(t);og(c,function(){_(`Cannot construct ${t} due to unbound types`,[B])}),H([I,A,g],B?[B]:[],d=>{var aI,nI;d=d[0];var N,h;B?(N=d.registeredClass,h=N.instancePrototype):h=eA.prototype;var u=EA(t,function(...kA){if(Object.getPrototypeOf(this)!==J)throw new K("Use 'new' to construct "+t);if(w.constructor_body===void 0)throw new K(t+" has no accessible constructor");var cI=w.constructor_body[kA.length];if(cI===void 0)throw new K(`Tried to invoke ctor of ${t} with invalid number of parameters (${kA.length}) - expected (${Object.keys(w.constructor_body).toString()}) parameters instead!`);return cI.apply(this,kA)}),J=Object.create(h,{constructor:{value:u}});u.prototype=J;var w=new cg(t,u,J,n,N,e,Q,o);w.baseClass&&((nI=(aI=w.baseClass).__derivedClasses)!=null||(aI.__derivedClasses=[]),w.baseClass.__derivedClasses.push(w));var fA=new tA(t,w,!0,!1,!1),p=new tA(t+"*",w,!1,!1,!1),aA=new tA(t+" const*",w,!1,!0,!1);return _A[I]={pointerType:p,constPointerType:aA},ug(c,u),[fA,p,aA]})},BI=(I,A)=>{for(var g=[],B=0;B<I;B++)g.push(D[A+B*4>>2]);return g},NA=I=>{for(;I.length;){var A=I.pop(),g=I.pop();g(A)}};function Mg(I){for(var A=1;A<I.length;++A)if(I[A]!==null&&I[A].destructorFunction===void 0)return!0;return!1}function CI(I,A,g,B,C,e){var r=A.length;r<2&&s("argTypes array size mismatch! Must at least get return value and 'this' types!");var Q=A[1]!==null&&g!==null,i=Mg(A),o=A[0].name!=="void",t=r-2,a=new Array(t),n=[],c=[],d=function(...N){N.length!==t&&s(`function ${I} called with ${N.length} arguments, expected ${t}`),c.length=0;var h;n.length=Q?2:1,n[0]=C,Q&&(h=A[1].toWireType(c,this),n[1]=h);for(var u=0;u<t;++u)a[u]=A[u+2].toWireType(c,N[u]),n.push(a[u]);var J=B(...n);function w(fA){if(i)NA(c);else for(var p=Q?1:2;p<A.length;p++){var aA=p===1?h:a[p-2];A[p].destructorFunction!==null&&A[p].destructorFunction(aA)}if(o)return A[0].fromWireType(fA)}return w(J)};return EA(I,d)}var bg=(I,A,g,B,C,e)=>{var r=BI(A,g);C=U(B,C),H([],[I],Q=>{Q=Q[0];var i=`constructor ${Q.name}`;if(Q.registeredClass.constructor_body===void 0&&(Q.registeredClass.constructor_body=[]),Q.registeredClass.constructor_body[A-1]!==void 0)throw new K(`Cannot register multiple constructors with identical number of parameters (${A-1}) for class '${Q.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return Q.registeredClass.constructor_body[A-1]=()=>{_(`Cannot construct ${Q.name} due to unbound types`,r)},H([],r,o=>(o.splice(1,0,null),Q.registeredClass.constructor_body[A-1]=CI(i,o,null,C,e),[])),[]})},mg=I=>{I=I.trim();let A=I.indexOf("(");return A!==-1?I.substr(0,A):I},Sg=(I,A,g,B,C,e,r,Q,i)=>{var o=BI(g,B);A=G(A),A=mg(A),e=U(C,e),H([],[I],t=>{t=t[0];var a=`${t.name}.${A}`;A.startsWith("@@")&&(A=Symbol[A.substring(2)]),Q&&t.registeredClass.pureVirtualFunctions.push(A);function n(){_(`Cannot call ${a} due to unbound types`,o)}var c=t.registeredClass.instancePrototype,d=c[A];return d===void 0||d.overloadTable===void 0&&d.className!==t.name&&d.argCount===g-2?(n.argCount=g-2,n.className=t.name,c[A]=n):(qA(c,A,a),c[A].overloadTable[g-2]=n),H([],o,N=>{var h=CI(a,N,t,e,r,i);return c[A].overloadTable===void 0?(h.argCount=g-2,c[A]=h):c[A].overloadTable[g-2]=h,[]}),[]})},QI=(I,A,g)=>(I instanceof Object||s(`${g} with invalid "this": ${I}`),I instanceof A.registeredClass.constructor||s(`${g} incompatible with "this" of type ${I.constructor.name}`),I.$$.ptr||s(`cannot call emscripten binding method ${g} on deleted object`),rA(I.$$.ptr,I.$$.ptrType.registeredClass,A.registeredClass)),pg=(I,A,g,B,C,e,r,Q,i,o)=>{A=G(A),C=U(B,C),H([],[I],t=>{t=t[0];var a=`${t.name}.${A}`,n={get(){_(`Cannot access ${a} due to unbound types`,[g,r])},enumerable:!0,configurable:!0};return i?n.set=()=>_(`Cannot access ${a} due to unbound types`,[g,r]):n.set=c=>s(a+" is a read-only property"),Object.defineProperty(t.registeredClass.instancePrototype,A,n),H([],i?[g,r]:[g],c=>{var d=c[0],N={get(){var u=QI(this,t,a+" getter");return d.fromWireType(C(e,u))},enumerable:!0};if(i){i=U(Q,i);var h=c[1];N.set=function(u){var J=QI(this,t,a+" setter"),w=[];i(o,J,h.toWireType(w,u)),NA(w)}}return Object.defineProperty(t.registeredClass.instancePrototype,A,N),[]}),[]})},RA=[],m=[],MA=I=>{I>9&&--m[I+1]===0&&(m[I]=void 0,RA.push(I))},fg=()=>m.length/2-5-RA.length,kg=()=>{m.push(0,1,void 0,1,null,1,!0,1,!1,1),E.count_emval_handles=fg},L={toValue:I=>(I||s("Cannot use deleted val. handle = "+I),m[I]),toHandle:I=>{switch(I){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{let A=RA.pop()||m.length;return m[A]=I,m[A+1]=1,A}}}},Fg={name:"emscripten::val",fromWireType:I=>{var A=L.toValue(I);return MA(I),A},toWireType:(I,A)=>L.toHandle(A),argPackAdvance:F,readValueFromPointer:iA,destructorFunction:null},Ug=I=>b(I,Fg),bA=I=>{if(I===null)return"null";var A=typeof I;return A==="object"||A==="array"||A==="function"?I.toString():""+I},Lg=(I,A)=>{switch(A){case 4:return function(g){return this.fromWireType(HA[g>>2])};case 8:return function(g){return this.fromWireType(JA[g>>3])};default:throw new TypeError(`invalid float width (${A}): ${I}`)}},vg=(I,A,g)=>{A=G(A),b(I,{name:A,fromWireType:B=>B,toWireType:(B,C)=>C,argPackAdvance:F,readValueFromPointer:Lg(A,g),destructorFunction:null})},Yg=(I,A,g)=>{switch(A){case 1:return g?B=>v[B]:B=>l[B];case 2:return g?B=>O[B>>1]:B=>IA[B>>1];case 4:return g?B=>x[B>>2]:B=>D[B>>2];default:throw new TypeError(`invalid integer width (${A}): ${I}`)}},Tg=(I,A,g,B,C)=>{A=G(A),C===-1&&(C=4294967295);var e=t=>t;if(B===0){var r=32-8*g;e=t=>t<<r>>>r}var Q=A.includes("unsigned"),i=(t,a)=>{},o;Q?o=function(t,a){return i(a,this.name),a>>>0}:o=function(t,a){return i(a,this.name),a},b(I,{name:A,fromWireType:e,toWireType:o,argPackAdvance:F,readValueFromPointer:Yg(A,g,B!==0),destructorFunction:null})},Hg=(I,A,g)=>{var B=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],C=B[A];function e(r){var Q=D[r>>2],i=D[r+4>>2];return new C(v.buffer,i,Q)}g=G(g),b(I,{name:g,fromWireType:e,argPackAdvance:F,readValueFromPointer:e},{ignoreDuplicateRegistrations:!0})},Jg=(I,A,g,B)=>{if(!(B>0))return 0;for(var C=g,e=g+B-1,r=0;r<I.length;++r){var Q=I.charCodeAt(r);if(Q>=55296&&Q<=57343){var i=I.charCodeAt(++r);Q=65536+((Q&1023)<<10)|i&1023}if(Q<=127){if(g>=e)break;A[g++]=Q}else if(Q<=2047){if(g+1>=e)break;A[g++]=192|Q>>6,A[g++]=128|Q&63}else if(Q<=65535){if(g+2>=e)break;A[g++]=224|Q>>12,A[g++]=128|Q>>6&63,A[g++]=128|Q&63}else{if(g+3>=e)break;A[g++]=240|Q>>18,A[g++]=128|Q>>12&63,A[g++]=128|Q>>6&63,A[g++]=128|Q&63}}return A[g]=0,g-C},Zg=(I,A,g)=>Jg(I,l,A,g),Pg=I=>{for(var A=0,g=0;g<I.length;++g){var B=I.charCodeAt(g);B<=127?A++:B<=2047?A+=2:B>=55296&&B<=57343?(A+=4,++g):A+=3}return A},eI=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):void 0,EI=(I,A,g)=>{for(var B=A+g,C=A;I[C]&&!(C>=B);)++C;if(C-A>16&&I.buffer&&eI)return eI.decode(I.subarray(A,C));for(var e="";A<C;){var r=I[A++];if(!(r&128)){e+=String.fromCharCode(r);continue}var Q=I[A++]&63;if((r&224)==192){e+=String.fromCharCode((r&31)<<6|Q);continue}var i=I[A++]&63;if((r&240)==224?r=(r&15)<<12|Q<<6|i:r=(r&7)<<18|Q<<12|i<<6|I[A++]&63,r<65536)e+=String.fromCharCode(r);else{var o=r-65536;e+=String.fromCharCode(55296|o>>10,56320|o&1023)}}return e},Kg=(I,A)=>I?EI(l,I,A):"",Og=(I,A)=>{A=G(A);var g=A==="std::string";b(I,{name:A,fromWireType(B){var C=D[B>>2],e=B+4,r;if(g)for(var Q=e,i=0;i<=C;++i){var o=e+i;if(i==C||l[o]==0){var t=o-Q,a=Kg(Q,t);r===void 0?r=a:(r+=String.fromCharCode(0),r+=a),Q=o+1}}else{for(var n=new Array(C),i=0;i<C;++i)n[i]=String.fromCharCode(l[e+i]);r=n.join("")}return S(B),r},toWireType(B,C){C instanceof ArrayBuffer&&(C=new Uint8Array(C));var e,r=typeof C=="string";r||C instanceof Uint8Array||C instanceof Uint8ClampedArray||C instanceof Int8Array||s("Cannot pass non-string to std::string"),g&&r?e=Pg(C):e=C.length;var Q=pA(4+e+1),i=Q+4;if(D[Q>>2]=e,g&&r)Zg(C,i,e+1);else if(r)for(var o=0;o<e;++o){var t=C.charCodeAt(o);t>255&&(S(i),s("String has UTF-16 code units that do not fit in 8 bits")),l[i+o]=t}else for(var o=0;o<e;++o)l[i+o]=C[o];return B!==null&&B.push(S,Q),Q},argPackAdvance:F,readValueFromPointer:iA,destructorFunction(B){S(B)}})},rI=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):void 0,xg=(I,A)=>{for(var g=I,B=g>>1,C=B+A/2;!(B>=C)&&IA[B];)++B;if(g=B<<1,g-I>32&&rI)return rI.decode(l.subarray(I,g));for(var e="",r=0;!(r>=A/2);++r){var Q=O[I+r*2>>1];if(Q==0)break;e+=String.fromCharCode(Q)}return e},Wg=(I,A,g)=>{if(g!=null||(g=2147483647),g<2)return 0;g-=2;for(var B=A,C=g<I.length*2?g/2:I.length,e=0;e<C;++e){var r=I.charCodeAt(e);O[A>>1]=r,A+=2}return O[A>>1]=0,A-B},Xg=I=>I.length*2,zg=(I,A)=>{for(var g=0,B="";!(g>=A/4);){var C=x[I+g*4>>2];if(C==0)break;if(++g,C>=65536){var e=C-65536;B+=String.fromCharCode(55296|e>>10,56320|e&1023)}else B+=String.fromCharCode(C)}return B},Vg=(I,A,g)=>{if(g!=null||(g=2147483647),g<4)return 0;for(var B=A,C=B+g-4,e=0;e<I.length;++e){var r=I.charCodeAt(e);if(r>=55296&&r<=57343){var Q=I.charCodeAt(++e);r=65536+((r&1023)<<10)|Q&1023}if(x[A>>2]=r,A+=4,A+4>C)break}return x[A>>2]=0,A-B},jg=I=>{for(var A=0,g=0;g<I.length;++g){var B=I.charCodeAt(g);B>=55296&&B<=57343&&++g,A+=4}return A},_g=(I,A,g)=>{g=G(g);var B,C,e,r;A===2?(B=xg,C=Wg,r=Xg,e=Q=>IA[Q>>1]):A===4&&(B=zg,C=Vg,r=jg,e=Q=>D[Q>>2]),b(I,{name:g,fromWireType:Q=>{for(var i=D[Q>>2],o,t=Q+4,a=0;a<=i;++a){var n=Q+4+a*A;if(a==i||e(n)==0){var c=n-t,d=B(t,c);o===void 0?o=d:(o+=String.fromCharCode(0),o+=d),t=n+A}}return S(Q),o},toWireType:(Q,i)=>{typeof i!="string"&&s(`Cannot pass non-string to C++ string type ${g}`);var o=r(i),t=pA(4+o+A);return D[t>>2]=o/A,C(i,t+4,o+A),Q!==null&&Q.push(S,t),t},argPackAdvance:F,readValueFromPointer:iA,destructorFunction(Q){S(Q)}})},qg=(I,A)=>{A=G(A),b(I,{isVoid:!0,name:A,argPackAdvance:0,fromWireType:()=>{},toWireType:(g,B)=>{}})},$g=(I,A,g)=>l.copyWithin(I,A,A+g),mA=(I,A)=>{var g=T[I];return g===void 0&&s(`${A} has unknown type ${gI(I)}`),g},iI=(I,A,g)=>{var B=[],C=I.toWireType(B,g);return B.length&&(D[A>>2]=L.toHandle(B)),C},AB=(I,A,g)=>(I=L.toValue(I),A=mA(A,"emval::as"),iI(A,g,I)),IB={},gB=I=>{var A=IB[I];return A===void 0?G(I):A},SA=[],BB=(I,A,g,B,C)=>(I=SA[I],A=L.toValue(A),g=gB(g),I(A,A[g],B,C)),CB=I=>{var A=SA.length;return SA.push(I),A},QB=(I,A)=>{for(var g=new Array(I),B=0;B<I;++B)g[B]=mA(D[A+B*4>>2],"parameter "+B);return g},eB=Reflect.construct,EB=(I,A,g)=>{var B=QB(I,A),C=B.shift();I--;var e=new Array(I),r=(i,o,t,a)=>{for(var n=0,c=0;c<I;++c)e[c]=B[c].readValueFromPointer(a+n),n+=B[c].argPackAdvance;var d=g===1?eB(o,e):o.apply(i,e);return iI(C,t,d)},Q=`methodCaller<(${B.map(i=>i.name).join(", ")}) => ${C.name}>`;return CB(EA(Q,r))},rB=I=>{I>9&&(m[I+1]+=1)},iB=I=>{var A=L.toValue(I);NA(A),MA(I)},tB=(I,A)=>{I=mA(I,"_emval_take_value");var g=I.readValueFromPointer(A);return L.toHandle(g)},oB=I=>{lA("OOM")},sB=I=>{var A=l.length;I>>>=0,oB(I)},aB=[null,[],[]],nB=(I,A)=>{var g=aB[I];A===0||A===10?((I===1?RI:$)(EI(g,0)),g.length=0):g.push(A)},cB=(I,A,g,B)=>{for(var C=0,e=0;e<g;e++){var r=D[A>>2],Q=D[A+4>>2];A+=8;for(var i=0;i<Q;i++)nB(I,l[r+i]);C+=Q}return D[B>>2]=C,0};qI(),K=E.BindingError=class extends Error{constructor(A){super(A),this.name="BindingError"}},XA=E.InternalError=class extends Error{constructor(A){super(A),this.name="InternalError"}},tg(),eg(),lg(),II=E.UnboundTypeError=Ng(Error,"UnboundTypeError"),kg();var DB={w:VI,q:jI,p:_I,u:Ag,y:Rg,x:bg,h:Sg,k:pg,t:Ug,o:vg,g:Tg,a:Hg,n:Og,l:_g,v:qg,s:$g,j:AB,e:BB,c:MA,f:EB,d:rB,b:iB,i:tB,r:sB,m:cB},R=WI(),yB=()=>(yB=R.A)(),pA=I=>(pA=R.B)(I),tI=I=>(tI=R.D)(I),S=I=>(S=R.E)(I),oI=I=>(oI=R.F)(I),dB=E.dynCall_jiji=(I,A,g,B,C)=>(dB=E.dynCall_jiji=R.G)(I,A,g,B,C),NB=E._vertexShaderSource=13312,sA;W=function I(){sA||sI(),sA||(W=I)};function sI(){if(Y>0||(fI(),Y>0))return;function I(){sA||(sA=!0,E.calledRun=!0,!TA&&(kI(),LA(E),E.onRuntimeInitialized&&E.onRuntimeInitialized(),FI()))}E.setStatus?(E.setStatus("Running..."),setTimeout(function(){setTimeout(function(){E.setStatus("")},1),I()},1)):I()}if(E.preInit)for(typeof E.preInit=="function"&&(E.preInit=[E.preInit]);E.preInit.length>0;)E.preInit.pop()();return sI(),f=dI,f}})(),yI=wB;var nA=0,cA=class cA{constructor(y){this.core=y;Z(this,"seq");Z(this,"_core");Z(this,"log");Z(this,"beautyParams");nA=nA+1,this.seq=nA,this._core=y,this.log=y.log.createChild({id:`${this.getAlias()}${nA}`}),this.log.info("created")}getName(){return cA.Name}getAlias(){return"bb"}getValidateRule(y){switch(y){case"start":return FA(this._core);case"update":return FA(this._core);case"stop":return DI(this._core)}}getGroup(){return"w"}async start(y){return this._core.room.videoManager.Wasm||(this._core.room.videoManager.Wasm=await yI({print:console.warn})),this._core.room.videoManager.renderMode="webgl",this._core.room.videoManager.setBeautyParams({beauty:y.beauty||.5,brightness:y.brightness||.5,ruddy:y.ruddy||.5})}async update(y){return this._core.room.videoManager.setBeautyParams({beauty:y.beauty||.5,brightness:y.brightness||.5,ruddy:y.ruddy||.5})}async stop(){return this._core.room.videoManager.stopBeauty()}destroy(){}};Z(cA,"Name","BasicBeauty");var UA=cA;var vB=UA;export{UA as BasicBeauty,vB as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var BasicBeauty=(()=>{var cA=Object.defineProperty;var uB=Object.getOwnPropertyDescriptor;var wB=Object.getOwnPropertyNames;var GB=Object.prototype.hasOwnProperty;var hB=(d,a,h)=>a in d?cA(d,a,{enumerable:!0,configurable:!0,writable:!0,value:h}):d[a]=h;var NB=(d,a)=>{for(var h in a)cA(d,h,{get:a[h],enumerable:!0})},RB=(d,a,h,E)=>{if(a&&typeof a=="object"||typeof a=="function")for(let k of wB(a))!GB.call(d,k)&&k!==h&&cA(d,k,{get:()=>a[k],enumerable:!(E=uB(a,k))||E.enumerable});return d};var MB=d=>RB(cA({},"__esModule",{value:!0}),d);var P=(d,a,h)=>(hB(d,typeof a!="symbol"?a+"":a,h),h);var pB={};NB(pB,{BasicBeauty:()=>yA,default:()=>SB});function vA(d){return{name:"BasicBeautyOptions",type:"object",required:!0,allowEmpty:!1,properties:{beauty:{required:!1,type:"number"},brightness:{required:!1,type:"number"},ruddy:{required:!1,type:"number"}}}}function yI(d){return{name:"StopBasicBeautyOptions",required:!1}}var mB={},bB=(()=>{var d=mB.url;return function(a={}){var h,E=Object.assign({},a),k,$,lI=new Promise((I,A)=>{k=I,$=A}),uI=!0,lA=!1,YA=Object.assign({},E),wI=[],GI="./this.program",hI=(I,A)=>{throw A},F="",NI,RI,uA;(uI||lA)&&(lA?F=self.location.href:typeof document!="undefined"&&document.currentScript&&(F=document.currentScript.src),d&&(F=d),F.startsWith("blob:")?F="":F=F.substr(0,F.replace(/[?#].*/,"").lastIndexOf("/")+1),NI=I=>{var A=new XMLHttpRequest;return A.open("GET",I,!1),A.send(null),A.responseText},lA&&(uA=I=>{var A=new XMLHttpRequest;return A.open("GET",I,!1),A.responseType="arraybuffer",A.send(null),new Uint8Array(A.response)}),RI=(I,A,g)=>{var B=new XMLHttpRequest;B.open("GET",I,!0),B.responseType="arraybuffer",B.onload=()=>{if(B.status==200||B.status==0&&B.response){A(B.response);return}g()},B.onerror=g,B.send(null)});var MI=E.print||console.log.bind(console),AA=E.printErr||console.error.bind(console);Object.assign(E,YA),YA=null,E.arguments&&(wI=E.arguments),E.thisProgram&&(GI=E.thisProgram),E.quit&&(hI=E.quit);var IA;E.wasmBinary&&(IA=E.wasmBinary);function bI(I){for(var A=atob(I),g=new Uint8Array(A.length),B=0;B<A.length;++B)g[B]=A.charCodeAt(B);return g}function mI(I){if(JI(I))return bI(I.slice(xA.length))}var TA,HA=!1,SI,Y,u,x,gA,W,y,JA,ZA;function pI(){var I=TA.buffer;E.HEAP8=Y=new Int8Array(I),E.HEAP16=x=new Int16Array(I),E.HEAPU8=u=new Uint8Array(I),E.HEAPU16=gA=new Uint16Array(I),E.HEAP32=W=new Int32Array(I),E.HEAPU32=y=new Uint32Array(I),E.HEAPF32=JA=new Float32Array(I),E.HEAPF64=ZA=new Float64Array(I)}var PA=[],KA=[],OA=[],fI=!1;function kI(){if(E.preRun)for(typeof E.preRun=="function"&&(E.preRun=[E.preRun]);E.preRun.length;)LI(E.preRun.shift());hA(PA)}function FI(){fI=!0,hA(KA)}function UI(){if(E.postRun)for(typeof E.postRun=="function"&&(E.postRun=[E.postRun]);E.postRun.length;)YI(E.postRun.shift());hA(OA)}function LI(I){PA.unshift(I)}function vI(I){KA.unshift(I)}function YI(I){OA.unshift(I)}var T=0,wA=null,X=null;function TI(I){var A;T++,(A=E.monitorRunDependencies)==null||A.call(E,T)}function HI(I){var g;if(T--,(g=E.monitorRunDependencies)==null||g.call(E,T),T==0&&(wA!==null&&(clearInterval(wA),wA=null),X)){var A=X;X=null,A()}}function GA(I){var g;(g=E.onAbort)==null||g.call(E,I),I="Aborted("+I+")",AA(I),HA=!0,SI=1,I+=". Build with -sASSERTIONS for more info.";var A=new WebAssembly.RuntimeError(I);throw $(A),A}var xA="data:application/octet-stream;base64,",JI=I=>I.startsWith(xA);function ZI(){var I="data:application/octet-stream;base64,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AUGU6gA2AhggAUECNgIUIAFBlOoANgIQIAFBAjYCDCABQZTqADYCCCABQQA6ACAgAUKAgICAMDcCPCABQQA7ADcgAUEAOwArIAJBEGokACABC54FAgZ+BH8gASABKAIAQQdqQXhxIgFBEGo2AgAgACELIAEpAwAhAyABKQMIIQcjAEEgayIBJAAgB0L///////8/gyEFAn4gB0IwiEL//wGDIgSnIglBgfgAa0H9D00EQCAFQgSGIANCPIiEIQIgCUGA+ABrrSEEAkAgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyADQoCAgICAgICACFINACACQgGDIAJ8IQILQgAgAiACQv////////8HViIAGyECIACtIAR8DAELAkAgAyAFhFANACAEQv//AVINACAFQgSGIANCPIiEQoCAgICAgIAEhCECQv8PDAELQv8PIAlB/ocBSw0AGkIAQYD4AEGB+AAgBFAiCBsiCiAJayIAQfAASg0AGiADIQIgBSAFQoCAgICAgMAAhCAIGyIEIQYCQEGAASAAayIIQcAAcQRAIAIgCEFAaq2GIQZCACECDAELIAhFDQAgBiAIrSIFhiACQcAAIAhrrYiEIQYgAiAFhiECCyABIAI3AxAgASAGNwMYAkAgAEHAAHEEQCAEIABBQGqtiCEDQgAhBAwBCyAARQ0AIARBwAAgAGuthiADIACtIgKIhCEDIAQgAoghBAsgASADNwMAIAEgBDcDCCABKQMIQgSGIAEpAwAiA0I8iIQhAgJAIAkgCkcgASkDECABKQMYhEIAUnGtIANC//////////8Pg4QiA0KBgICAgICAgAhaBEAgAkIBfCECDAELIANCgICAgICAgIAIUg0AIAJCAYMgAnwhAgsgAkKAgICAgICACIUgAiACQv////////8HViIAGyECIACtCyEDIAFBIGokACALIAdCgICAgICAgICAf4MgA0I0hoQgAoS/OQMAC0MBAn8jAEEQayICJAAgAiABNgIMIAJBlOoANgIIIAJBCGogABEBACEDIAIoAgwiAUEJTwRAIAEQAgsgAkEQaiQAIAMLBABCAAsEAEEAC/YCAQh/IwBBIGsiAyQAIAMgACgCHCIENgIQIAAoAhQhBSADIAI2AhwgAyABNgIYIAMgBSAEayIBNgIUIAEgAmohBUEC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AAJ/IAOZRAAAAAAAAOBBYwRAIAOqDAELQYCAgIB4CzYCQCACQRBqJAALNwEBfyMAQRBrIgIkACACIAEoAkA2AgggAEHc5AAgAkEIahAINgIEIABBlOoANgIAIAJBEGokAAtgAgF/AXwjAEEQayICJAAgAkEANgIMIAEoAgRB3OQAIAJBDGoQCSEDIAIoAgwiAQRAIAEQAQsgAAJ/IAOZRAAAAAAAAOBBYwRAIAOqDAELQYCAgIB4CzYCPCACQRBqJAALIgEBfiABIAKtIAOtQiCGhCAEIAARDAAiBUIgiKckASAFpws3AQF/IwBBEGsiAiQAIAIgASgCPDYCCCAAQdzkACACQQhqEAg2AgQgAEGU6gA2AgAgAkEQaiQACwu1XxUAQYAIC8Q6c2V0QmVhdXR5AC0rICAgMFgweAAtMFgrMFggMFgtMHgrMHggMHgAdW5zaWduZWQgc2hvcnQAdW5zaWduZWQgaW50AGluaXQAZmxvYXQAdWludDY0X3QAYmx1clJhZGl1cwB2ZWN0b3IAbWlycm9yAGF0dGFjaFNoYWRlcgBkZWxldGVTaGFkZXIAY3JlYXRlU2hhZGVyAGNvbXBpbGVTaGFkZXIAdW5zaWduZWQgY2hhcgBzdGQ6OmV4Y2VwdGlvbgBuYW4AbGlua1Byb2dyYW0AZGVsZXRlUHJvZ3JhbQBjcmVhdGVQcm9ncmFtAGJvb2wAc2V0V2F0ZXJNYXJrAHN0b3BXYXRlck1hcmsAdW5zaWduZWQgbG9uZwBzdGQ6OndzdHJpbmcAYmFzaWNfc3RyaW5nAHN0ZDo6c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGluZgAlZgBjbG9zZQBkb3VibGUAdmJNb2RlAHNoYWRlclNvdXJjZQB2b2lkAE5BTgBJTkYAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ2NF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ2NF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AdmVjMiBjID0gdl90ZXhDb29yZDsAdmVjMiBjID0gdmVjMigxLjAgLSB2X3RleENvb3JkLngsIHZfdGV4Q29vcmQueSk7AEFsbEluMQAuAC4wLAAuMCkqbykqAChudWxsKQApKm8ueSk7ICAgIHZlYzIgY29vcmQyID0gdmVjMihmbG9hdCgAICAgIGMgPSB2ZWMyKHZfdGV4Q29vcmQueCwgMS4wIC0gdl90ZXhDb29yZC55KTsgICAgdmVjMiBjb29yZDEgPSB2ZWMyKGZsb2F0KAApLCAoYy55IC1jb29yZDEueSkgLyBvLnkgLyBmbG9hdCgAKSpvLnkpOyAgICBpZiAoYy54ID4gY29vcmQxLnggJiYgYy54IDwgY29vcmQyLnggJiYgYy55ID4gY29vcmQxLnkgJiYgYy55IDwgY29vcmQyLnkpIHsgICAgICB2ZWM0IHdhdGVyQ29sb3IgPSB0ZXh0dXJlKHdhdGVyTWFyaywgdmVjMigoYy54IC0gY29vcmQxLngpICAvIG8ueCAvIGZsb2F0KAApICogby54LCBmbG9hdCgAKTsgICAgb3V0Q29sb3IucmdiID0gdmVjMyhvdXRDb2xvci5yZ2IgKyB2ZWMzKABnKz1HKGMsdmVjMigAICAgIHZlYzIgb2Zmc2V0ID0gdmVjMigAKSwwLjAsMS4wKTsgICAgIHZlYzMgc2NyZWVuID0gdmVjMygxLjApIC0gKHZlYzMoMS4wKS1zbW9vdGhDb2xvcikgKiAodmVjMygxLjApLW91dENvbG9yLnJnYik7ICAgICB2ZWMzIGxpZ2h0ZW4gPSBtYXgoc21vb3RoQ29sb3IsIG91dENvbG9yLnJnYik7ICAgICB2ZWMzIHNvZnRMaWdodCA9IDIuMCAqIG91dENvbG9yLnJnYipzbW9vdGhDb2xvciArIG91dENvbG9yLnJnYipvdXRDb2xvci5yZ2IgLSAyLjAgKiBvdXRDb2xvci5yZ2Iqb3V0Q29sb3IucmdiICogc21vb3RoQ29sb3I7ICAgICBvdXRDb2xvciA9IHZlYzQobWl4KG91dENvbG9yLnJnYiwgc2NyZWVuLCBhbHBoYSksIDEuMCk7ICAgICBvdXRDb2xvci5yZ2IgPSBtaXgob3V0Q29sb3IucmdiLCBsaWdodGVuLCBhbHBoYSk7ICAgICBvdXRDb2xvci5yZ2IgPSBtaXgob3V0Q29sb3IucmdiLCBzb2Z0TGlnaHQsIAApOyAgICAgY29uc3QgbWF0MyBzYXR1cmF0ZU1hdHJpeCA9IG1hdDMoMS4xMTAyLC0wLjA1OTgsLTAuMDYxLC0wLjA3NzQsMS4wODI2LC0wLjExODYsLTAuMDIyOCwtMC4wMjI4LDEuMTc3Mik7ICAgIHZlYzMgc2F0Q29sb3IgPSBvdXRDb2xvci5yZ2IgKiBzYXR1cmF0ZU1hdHJpeDsgICAgb3V0Q29sb3IucmdiID0gbWl4KG91dENvbG9yLnJnYiwgc2F0Q29sb3IsIAApOyAgICAgdmVjMyBzbW9vdGhDb2xvciA9IG91dENvbG9yLnJnYiArIChvdXRDb2xvci5yZ2ItdmVjMyhoaWdoUGFzcykpKmFscGhhKjAuMTsgICAgIHNtb290aENvbG9yLnIgPSBjbGFtcChwb3coc21vb3RoQ29sb3IuciwgACksMC4wLDEuMCk7ICAgICBzbW9vdGhDb2xvci5nID0gY2xhbXAocG93KHNtb290aENvbG9yLmcsIAApOyAgICB2ZWMyIGJsdXJDb29yZGluYXRlc1syNF07ICAgIGJsdXJDb29yZGluYXRlc1swXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDAuMCwgLTEwLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzFdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMC4wLCAxMC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1syXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKC0xMC4wLCAwLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzNdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMTAuMCwgMC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1s0XSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDUuMCwgLTguMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbNV0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMig1LjAsIDguMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbNl0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigtNS4wLCA4LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzddID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTUuMCwgLTguMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbOF0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMig4LjAsIC01LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzldID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoOC4wLCA1LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzEwXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKC04LjAsIDUuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTFdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTguMCwgLTUuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTJdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMC4wLCAtNi4wKTsgICAgIGJsdXJDb29yZGluYXRlc1sxM10gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigwLjAsIDYuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTRdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoNi4wLCAwLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzE1XSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKC02LjAsIDAuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTZdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTQuMCwgLTQuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMTddID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoLTQuMCwgNC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1sxOF0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMig0LjAsIC00LjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzE5XSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDQuMCwgNC4wKTsgICAgIGJsdXJDb29yZGluYXRlc1syMF0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigtMi4wLCAtMi4wKTsgICAgIGJsdXJDb29yZGluYXRlc1syMV0gPSB2X3RleENvb3JkLnh5ICsgb2Zmc2V0ICogdmVjMigtMi4wLCAyLjApOyAgICAgYmx1ckNvb3JkaW5hdGVzWzIyXSA9IHZfdGV4Q29vcmQueHkgKyBvZmZzZXQgKiB2ZWMyKDIuMCwgLTIuMCk7ICAgICBibHVyQ29vcmRpbmF0ZXNbMjNdID0gdl90ZXhDb29yZC54eSArIG9mZnNldCAqIHZlYzIoMi4wLCAyLjApOyAgICAgZmxvYXQgc2FtcGxlQ29sb3IgPSBvdXRDb2xvci5nICogMjIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1swXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1syXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1szXSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s0XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s1XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s2XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s3XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s4XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1s5XSkuZzsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxMF0pLmc7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMTFdKS5nOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzEyXSkuZyAqIDIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxM10pLmcgKiAyLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMTRdKS5nICogMi4wOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzE1XSkuZyAqIDIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxNl0pLmcgKiAyLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMTddKS5nICogMi4wOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzE4XSkuZyAqIDIuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1sxOV0pLmcgKiAyLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMjBdKS5nICogMy4wOyAgICAgc2FtcGxlQ29sb3IgKz0gdGV4dHVyZShmcmFtZSwgYmx1ckNvb3JkaW5hdGVzWzIxXSkuZyAqIDMuMDsgICAgIHNhbXBsZUNvbG9yICs9IHRleHR1cmUoZnJhbWUsIGJsdXJDb29yZGluYXRlc1syMl0pLmcgKiAzLjA7ICAgICBzYW1wbGVDb2xvciArPSB0ZXh0dXJlKGZyYW1lLCBibHVyQ29vcmRpbmF0ZXNbMjNdKS5nICogMy4wOyAgICAgc2FtcGxlQ29sb3IgPSBzYW1wbGVDb2xvciAvIDYyLjA7ICAgICBmbG9hdCBoaWdoUGFzcyA9IG91dENvbG9yLmcgLSBzYW1wbGVDb2xvciArIDAuNTsgICAgIGZvcihpbnQgaSA9IDA7IGkgPCA1OyBpKyspIHsgICAgICAgaWYgKGhpZ2hQYXNzIDw9IDAuNSkgeyAgICAgICAgIGhpZ2hQYXNzID0gaGlnaFBhc3MgKiBoaWdoUGFzcyAqIDIuMDsgICAgICAgfSBlbHNlIHsgICAgICAgICBoaWdoUGFzcyA9IDEuMCAtICgoMS4wIC0gaGlnaFBhc3MpKigxLjAgLSBoaWdoUGFzcykgKiAyLjApOyAgICAgICB9ICAgICB9ICAgICBjb25zdCBoaWdocCB2ZWMzIFcgPSB2ZWMzKDAuMjk5LDAuNTg3LDAuMTE0KTsgICAgZmxvYXQgbHVtaW5hbmNlID0gZG90KG91dENvbG9yLnJnYiwgVyk7ICAgICBmbG9hdCBhbHBoYSA9IHBvdyhsdW1pbmFuY2UsIAApLDAuMCwxLjApOyAgICAgc21vb3RoQ29sb3IuYiA9IGNsYW1wKHBvdyhzbW9vdGhDb2xvci5iLCAAKSk7ICAAKSkpOyAgICAgIG91dENvbG9yID0gbWl4KG91dENvbG9yLHdhdGVyQ29sb3IsICB3YXRlckNvbG9yLmEpOyAgICB9ICAgIAAjdmVyc2lvbiAzMDAgZXMKICAgIHByZWNpc2lvbiBoaWdocCBmbG9hdDsKICAgIHVuaWZvcm0gc2FtcGxlcjJEIGZyYW1lOwogICAgdW5pZm9ybSBzYW1wbGVyMkQgbWFzazsKICAgIHVuaWZvcm0gc2FtcGxlcjJEIGJnOwogICAgdW5pZm9ybSBzYW1wbGVyMkQgd2F0ZXJNYXJrOwogICAgdW5pZm9ybSBzYW1wbGVyMkQgbGFzdE1hc2s7CiAgICBpbiB2ZWMyIHZfdGV4Q29vcmQ7CiAgICBvdXQgdmVjNCBvdXRDb2xvcjsKICAgIHZlYzQgRyh2ZWMyIGMsdmVjMiBzKXsKICAgICAgcmV0dXJuIHRleHR1cmUoZnJhbWUsdGV4dHVyZShtYXNrLGMrcykuYT4wLjM/YzpjK3MpOwogICAgfQogICAgdm9pZCBtYWluKCkgewogICAgICAACiAgICB2ZWM0IGcgPSB2ZWM0KDAuMCk7CiAgICAACiAgICAgIGMueSA9IDEuMCAtIGMueTsKICAgICAgdmVjNCBzcmNfY29sb3IgPSB0ZXh0dXJlKGZyYW1lLCBjKTsKICAgICAgZmxvYXQgYSA9IHRleHR1cmUobWFzaywgYykuYTsKICAgICAgYSA9IGE8MC41PzIuMCphKmE6MS4wLTIuMCooMS4wLWEpKigxLjAtYSk7CiAgICAgIC8vIGZsb2F0IGEyID0gdGV4dHVyZShsYXN0TWFzaywgYykuYTsKICAgICAgLy8gYTIgPSBhMjwwLjU/Mi4wKmEyKmEyOjEuMC0yLjAqKDEuMC1hMikqKDEuMC1hMik7CiAgICAgIC8vIGZsb2F0IGRlbHRhID0gYSAtIGEyOwogICAgICAvLyBpZiAoZGVsdGEgPCAwLjI1ICYmIGRlbHRhID4gLTAuMjUpCiAgICAgIC8vIHsKICAgICAgLy8gICAgIGEgPSBhICsgMC41KmRlbHRhOwogICAgICAvLyB9CiAgICAgIAogICAgICB2ZWMyIG8gPSAxLjAgLyB2ZWMyKHRleHR1cmVTaXplKGZyYW1lLCAwKSk7CiAgICAACiAgICAgIG91dENvbG9yID0gZzsKICAAI3ZlcnNpb24gMzAwIGVzCmluIHZlYzIgYV9wb3NpdGlvbjsKaW4gdmVjMiBhX3RleENvb3JkOwpvdXQgdmVjMiB2X3RleENvb3JkOwp2b2lkIG1haW4oKSB7CiAgZ2xfUG9zaXRpb24gPSB2ZWM0KGFfcG9zaXRpb24ueCwgYV9wb3NpdGlvbi55LCAwLCAxKTsKICB2X3RleENvb3JkID0gYV90ZXhDb29yZDsKfQoAZ2V0QmVhdXR5U2hhZGVyICVmICVmICVmCgBzZXRCZWF1dHkyMjIyICVmICVmCgBvdXRDb2xvciA9IHNyY19jb2xvcjsKAG91dENvbG9yID0gbWl4KHRleHR1cmUoYmcsIGMpLHNyY19jb2xvcixhKTsKAG91dENvbG9yID0gbWl4KHZlYzQoMC4wLDEuMCwwLjAsMS4wKSxzcmNfY29sb3IsYSk7CgA2QWxsSW4xAMAyAACgIAAAUDZBbGxJbjEAAAAARDMAALAgAAAAAAAAqCAAAFBLNkFsbEluMQAAAEQzAADMIAAAAQAAAKggAABwcAB2AHZwALwgAAAMIQAATjEwZW1zY3JpcHRlbjN2YWxFAADAMgAA+CAAAHBwcAB2cHBwAAAAAPwxAAC8IAAAsDIAALAyAACwMgAAsDIAALAyAAB2cHBkZGRkZABB0MIAC8gI/DEAALwgAACwMgAAsDIAALAyAACwMgAAdnBwZGRkZAD8MQAAvCAAAHZwcAD8MQAADCEAAAwhAAC8IAAADCEAAFwyAAD8MQAADCEAAOAhAABOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAAwDIAAKAhAAAMIQAA/DEAAAwhAAAMIQAATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAAMAyAAD4IQAATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUAAMAyAABAIgAATlN0M19fMjEyYmFzaWNfc3RyaW5nSURzTlNfMTFjaGFyX3RyYWl0c0lEc0VFTlNfOWFsbG9jYXRvcklEc0VFRUUAAADAMgAAiCIAAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0lEaU5TXzExY2hhcl90cmFpdHNJRGlFRU5TXzlhbGxvY2F0b3JJRGlFRUVFAAAAwDIAANQiAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAAMAyAAAgIwAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAADAMgAASCMAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQAAwDIAAHAjAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUAAMAyAACYIwAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAADAMgAAwCMAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQAAwDIAAOgjAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUAAMAyAAAQJAAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAADAMgAAOCQAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQAAwDIAAGAkAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l4RUUAAMAyAACIJAAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJeUVFAADAMgAAsCQAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQAAwDIAANgkAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAAMAyAAAAJQAA/oIrZUcVZ0AAAAAAAAA4QwAA+v5CLna/OjuevJr3DL29/f/////fPzxUVVVVVcU/kSsXz1VVpT8X0KRnERGBPwAAAAAAAMhC7zn6/kIu5j8kxIL/vb/OP7X0DNcIa6w/zFBG0quygz+EOk6b4NdVPwBBpssAC7sQ8D9uv4gaTzubPDUz+6k99u8/XdzYnBNgcbxhgHc+muzvP9FmhxB6XpC8hX9u6BXj7z8T9mc1UtKMPHSFFdOw2e8/+o75I4DOi7ze9t0pa9DvP2HI5mFO92A8yJt1GEXH7z+Z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";return I}var BA;function PI(I){if(I==BA&&IA)return new Uint8Array(IA);var A=mI(I);if(A)return A;if(uA)return uA(I);throw"both async and sync fetching of the wasm failed"}function KI(I){return Promise.resolve().then(()=>PI(I))}function OI(I,A,g){return KI(I).then(B=>WebAssembly.instantiate(B,A)).then(g,B=>{AA(`failed to asynchronously prepare wasm: ${B}`),GA(B)})}function xI(I,A,g,B){return OI(A,g,B)}function WI(){return{a:yB}}function XI(){var I=WI();function A(B,C){return b=B.exports,TA=b.z,pI(),AI=b.C,vI(b.A),HI("wasm-instantiate"),b}TI("wasm-instantiate");function g(B){A(B.instance)}if(E.instantiateWasm)try{return E.instantiateWasm(I,A)}catch(B){AA(`Module.instantiateWasm callback failed with error: ${B}`),$(B)}return BA||(BA=ZI()),xI(IA,BA,I,g).catch($),{}}var hA=I=>{for(;I.length>0;)I.shift()(E)},fB=E.noExitRuntime||!0;class zI{constructor(A){this.excPtr=A,this.ptr=A-24}set_type(A){y[this.ptr+4>>2]=A}get_type(){return y[this.ptr+4>>2]}set_destructor(A){y[this.ptr+8>>2]=A}get_destructor(){return y[this.ptr+8>>2]}set_caught(A){A=A?1:0,Y[this.ptr+12]=A}get_caught(){return Y[this.ptr+12]!=0}set_rethrown(A){A=A?1:0,Y[this.ptr+13]=A}get_rethrown(){return Y[this.ptr+13]!=0}init(A,g){this.set_adjusted_ptr(0),this.set_type(A),this.set_destructor(g)}set_adjusted_ptr(A){y[this.ptr+16>>2]=A}get_adjusted_ptr(){return y[this.ptr+16>>2]}get_exception_ptr(){var A=sI(this.get_type());if(A)return y[this.excPtr>>2];var g=this.get_adjusted_ptr();return g!==0?g:this.excPtr}}var WA=0,VI=0,jI=(I,A,g)=>{var B=new zI(I);throw B.init(A,g),WA=I,VI++,WA},_I=()=>{GA("")},qI=(I,A,g,B,C)=>{},$I=()=>{for(var I=new Array(256),A=0;A<256;++A)I[A]=String.fromCharCode(A);XA=I},XA,N=I=>{for(var A="",g=I;u[g];)A+=XA[u[g++]];return A},K={},H={},CA={},O,s=I=>{throw new O(I)},zA,QA=I=>{throw new zA(I)},J=(I,A,g)=>{I.forEach(function(Q){CA[Q]=A});function B(Q){var i=g(Q);i.length!==I.length&&QA("Mismatched type converter count");for(var o=0;o<I.length;++o)m(I[o],i[o])}var C=new Array(A.length),e=[],r=0;A.forEach((Q,i)=>{H.hasOwnProperty(Q)?C[i]=H[Q]:(e.push(Q),K.hasOwnProperty(Q)||(K[Q]=[]),K[Q].push(()=>{C[i]=H[Q],++r,r===e.length&&B(C)}))}),e.length===0&&B(C)};function Ag(I,A,g={}){var B=A.name;if(I||s(`type "${B}" must have a positive integer typeid pointer`),H.hasOwnProperty(I)){if(g.ignoreDuplicateRegistrations)return;s(`Cannot register type '${B}' twice`)}if(H[I]=A,delete CA[I],K.hasOwnProperty(I)){var C=K[I];delete K[I],C.forEach(e=>e())}}function m(I,A,g={}){if(!("argPackAdvance"in A))throw new TypeError("registerType registeredInstance requires argPackAdvance");return Ag(I,A,g)}var U=8,Ig=(I,A,g,B)=>{A=N(A),m(I,{name:A,fromWireType:function(C){return!!C},toWireType:function(C,e){return e?g:B},argPackAdvance:U,readValueFromPointer:function(C){return this.fromWireType(u[C])},destructorFunction:null})},gg=I=>({count:I.count,deleteScheduled:I.deleteScheduled,preservePointerOnDelete:I.preservePointerOnDelete,ptr:I.ptr,ptrType:I.ptrType,smartPtr:I.smartPtr,smartPtrType:I.smartPtrType}),NA=I=>{function A(g){return g.$$.ptrType.registeredClass.name}s(A(I)+" instance already deleted")},RA=!1,VA=I=>{},Bg=I=>{I.smartPtr?I.smartPtrType.rawDestructor(I.smartPtr):I.ptrType.registeredClass.rawDestructor(I.ptr)},jA=I=>{I.count.value-=1;var A=I.count.value===0;A&&Bg(I)},_A=(I,A,g)=>{if(A===g)return I;if(g.baseClass===void 0)return null;var B=_A(I,A,g.baseClass);return B===null?null:g.downcast(B)},qA={},Cg=()=>Object.keys(j).length,Qg=()=>{var I=[];for(var A in j)j.hasOwnProperty(A)&&I.push(j[A]);return I},z=[],MA=()=>{for(;z.length;){var I=z.pop();I.$$.deleteScheduled=!1,I.delete()}},V,eg=I=>{V=I,z.length&&V&&V(MA)},Eg=()=>{E.getInheritedInstanceCount=Cg,E.getLiveInheritedInstances=Qg,E.flushPendingDeletes=MA,E.setDelayFunction=eg},j={},rg=(I,A)=>{for(A===void 0&&s("ptr should not be undefined");I.baseClass;)A=I.upcast(A),I=I.baseClass;return A},ig=(I,A)=>(A=rg(I,A),j[A]),eA=(I,A)=>{(!A.ptrType||!A.ptr)&&QA("makeClassHandle requires ptr and ptrType");var g=!!A.smartPtrType,B=!!A.smartPtr;return g!==B&&QA("Both smartPtrType and smartPtr must be specified"),A.count={value:1},_(Object.create(I,{$$:{value:A,writable:!0}}))};function tg(I){var A=this.getPointee(I);if(!A)return this.destructor(I),null;var g=ig(this.registeredClass,A);if(g!==void 0){if(g.$$.count.value===0)return g.$$.ptr=A,g.$$.smartPtr=I,g.clone();var B=g.clone();return this.destructor(I),B}function C(){return this.isSmartPointer?eA(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:A,smartPtrType:this,smartPtr:I}):eA(this.registeredClass.instancePrototype,{ptrType:this,ptr:I})}var e=this.registeredClass.getActualType(A),r=qA[e];if(!r)return C.call(this);var Q;this.isConst?Q=r.constPointerType:Q=r.pointerType;var i=_A(A,this.registeredClass,Q.registeredClass);return i===null?C.call(this):this.isSmartPointer?eA(Q.registeredClass.instancePrototype,{ptrType:Q,ptr:i,smartPtrType:this,smartPtr:I}):eA(Q.registeredClass.instancePrototype,{ptrType:Q,ptr:i})}var _=I=>typeof FinalizationRegistry=="undefined"?(_=A=>A,I):(RA=new FinalizationRegistry(A=>{jA(A.$$)}),_=A=>{var g=A.$$,B=!!g.smartPtr;if(B){var C={$$:g};RA.register(A,C,A)}return A},VA=A=>RA.unregister(A),_(I)),og=()=>{Object.assign(EA.prototype,{isAliasOf(I){if(!(this instanceof EA)||!(I instanceof EA))return!1;var A=this.$$.ptrType.registeredClass,g=this.$$.ptr;I.$$=I.$$;for(var B=I.$$.ptrType.registeredClass,C=I.$$.ptr;A.baseClass;)g=A.upcast(g),A=A.baseClass;for(;B.baseClass;)C=B.upcast(C),B=B.baseClass;return A===B&&g===C},clone(){if(this.$$.ptr||NA(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var I=_(Object.create(Object.getPrototypeOf(this),{$$:{value:gg(this.$$)}}));return I.$$.count.value+=1,I.$$.deleteScheduled=!1,I},delete(){this.$$.ptr||NA(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&s("Object already scheduled for deletion"),VA(this),jA(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||NA(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&s("Object already scheduled for deletion"),z.push(this),z.length===1&&V&&V(MA),this.$$.deleteScheduled=!0,this}})};function EA(){}var rA=(I,A)=>Object.defineProperty(A,"name",{value:I}),$A=(I,A,g)=>{if(I[A].overloadTable===void 0){var B=I[A];I[A]=function(...C){return I[A].overloadTable.hasOwnProperty(C.length)||s(`Function '${g}' called with an invalid number of arguments (${C.length}) - expects one of (${I[A].overloadTable})!`),I[A].overloadTable[C.length].apply(this,C)},I[A].overloadTable=[],I[A].overloadTable[B.argCount]=B}},sg=(I,A,g)=>{E.hasOwnProperty(I)?((g===void 0||E[I].overloadTable!==void 0&&E[I].overloadTable[g]!==void 0)&&s(`Cannot register public name '${I}' twice`),$A(E,I,I),E.hasOwnProperty(g)&&s(`Cannot register multiple overloads of a function with the same number of arguments (${g})!`),E[I].overloadTable[g]=A):(E[I]=A,g!==void 0&&(E[I].numArguments=g))},ag=48,ng=57,cg=I=>{if(I===void 0)return"_unknown";I=I.replace(/[^a-zA-Z0-9_]/g,"$");var A=I.charCodeAt(0);return A>=ag&&A<=ng?`_${I}`:I};function Dg(I,A,g,B,C,e,r,Q){this.name=I,this.constructor=A,this.instancePrototype=g,this.rawDestructor=B,this.baseClass=C,this.getActualType=e,this.upcast=r,this.downcast=Q,this.pureVirtualFunctions=[]}var iA=(I,A,g)=>{for(;A!==g;)A.upcast||s(`Expected null or instance of ${g.name}, got an instance of ${A.name}`),I=A.upcast(I),A=A.baseClass;return I};function yg(I,A){if(A===null)return this.isReference&&s(`null is not a valid ${this.name}`),0;A.$$||s(`Cannot pass "${pA(A)}" as a ${this.name}`),A.$$.ptr||s(`Cannot pass deleted object as a pointer of type ${this.name}`);var g=A.$$.ptrType.registeredClass,B=iA(A.$$.ptr,g,this.registeredClass);return B}function dg(I,A){var g;if(A===null)return this.isReference&&s(`null is not a valid ${this.name}`),this.isSmartPointer?(g=this.rawConstructor(),I!==null&&I.push(this.rawDestructor,g),g):0;(!A||!A.$$)&&s(`Cannot pass "${pA(A)}" as a ${this.name}`),A.$$.ptr||s(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&A.$$.ptrType.isConst&&s(`Cannot convert argument of type ${A.$$.smartPtrType?A.$$.smartPtrType.name:A.$$.ptrType.name} to parameter type ${this.name}`);var B=A.$$.ptrType.registeredClass;if(g=iA(A.$$.ptr,B,this.registeredClass),this.isSmartPointer)switch(A.$$.smartPtr===void 0&&s("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:A.$$.smartPtrType===this?g=A.$$.smartPtr:s(`Cannot convert argument of type ${A.$$.smartPtrType?A.$$.smartPtrType.name:A.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:g=A.$$.smartPtr;break;case 2:if(A.$$.smartPtrType===this)g=A.$$.smartPtr;else{var C=A.clone();g=this.rawShare(g,v.toHandle(()=>C.delete())),I!==null&&I.push(this.rawDestructor,g)}break;default:s("Unsupporting sharing policy")}return g}function lg(I,A){if(A===null)return this.isReference&&s(`null is not a valid ${this.name}`),0;A.$$||s(`Cannot pass "${pA(A)}" as a ${this.name}`),A.$$.ptr||s(`Cannot pass deleted object as a pointer of type ${this.name}`),A.$$.ptrType.isConst&&s(`Cannot convert argument of type ${A.$$.ptrType.name} to parameter type ${this.name}`);var g=A.$$.ptrType.registeredClass,B=iA(A.$$.ptr,g,this.registeredClass);return B}function tA(I){return this.fromWireType(y[I>>2])}var ug=()=>{Object.assign(oA.prototype,{getPointee(I){return this.rawGetPointee&&(I=this.rawGetPointee(I)),I},destructor(I){var A;(A=this.rawDestructor)==null||A.call(this,I)},argPackAdvance:U,readValueFromPointer:tA,fromWireType:tg})};function oA(I,A,g,B,C,e,r,Q,i,o,t){this.name=I,this.registeredClass=A,this.isReference=g,this.isConst=B,this.isSmartPointer=C,this.pointeeType=e,this.sharingPolicy=r,this.rawGetPointee=Q,this.rawConstructor=i,this.rawShare=o,this.rawDestructor=t,!C&&A.baseClass===void 0?B?(this.toWireType=yg,this.destructorFunction=null):(this.toWireType=lg,this.destructorFunction=null):this.toWireType=dg}var wg=(I,A,g)=>{E.hasOwnProperty(I)||QA("Replacing nonexistent public symbol"),E[I].overloadTable!==void 0&&g!==void 0?E[I].overloadTable[g]=A:(E[I]=A,E[I].argCount=g)},Gg=(I,A,g)=>{I=I.replace(/p/g,"i");var B=E["dynCall_"+I];return B(A,...g)},sA=[],AI,II=I=>{var A=sA[I];return A||(I>=sA.length&&(sA.length=I+1),sA[I]=A=AI.get(I)),A},hg=(I,A,g=[])=>{if(I.includes("j"))return Gg(I,A,g);var B=II(A)(...g);return B},Ng=(I,A)=>(...g)=>hg(I,A,g),L=(I,A)=>{I=N(I);function g(){return I.includes("j")?Ng(I,A):II(A)}var B=g();return typeof B!="function"&&s(`unknown function pointer with signature ${I}: ${A}`),B},Rg=(I,A)=>{var g=rA(A,function(B){this.name=A,this.message=B;var C=new Error(B).stack;C!==void 0&&(this.stack=this.toString()+`
|
|
2
|
+
`+C.replace(/^Error(:[^\n]*)?\n/,""))});return g.prototype=Object.create(I.prototype),g.prototype.constructor=g,g.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},g},gI,BI=I=>{var A=oI(I),g=N(A);return p(A),g},q=(I,A)=>{var g=[],B={};function C(e){if(!B[e]&&!H[e]){if(CA[e]){CA[e].forEach(C);return}g.push(e),B[e]=!0}}throw A.forEach(C),new gI(`${I}: `+g.map(BI).join([", "]))},Mg=(I,A,g,B,C,e,r,Q,i,o,t,n,c)=>{t=N(t),e=L(C,e),Q&&(Q=L(r,Q)),o&&(o=L(i,o)),c=L(n,c);var D=cg(t);sg(D,function(){q(`Cannot construct ${t} due to unbound types`,[B])}),J([I,A,g],B?[B]:[],l=>{var nI,cI;l=l[0];var M,R;B?(M=l.registeredClass,R=M.instancePrototype):R=EA.prototype;var w=rA(t,function(...LA){if(Object.getPrototypeOf(this)!==Z)throw new O("Use 'new' to construct "+t);if(G.constructor_body===void 0)throw new O(t+" has no accessible constructor");var DI=G.constructor_body[LA.length];if(DI===void 0)throw new O(`Tried to invoke ctor of ${t} with invalid number of parameters (${LA.length}) - expected (${Object.keys(G.constructor_body).toString()}) parameters instead!`);return DI.apply(this,LA)}),Z=Object.create(R,{constructor:{value:w}});w.prototype=Z;var G=new Dg(t,w,Z,c,M,e,Q,o);G.baseClass&&((cI=(nI=G.baseClass).__derivedClasses)!=null||(nI.__derivedClasses=[]),G.baseClass.__derivedClasses.push(G));var UA=new oA(t,G,!0,!1,!1),f=new oA(t+"*",G,!1,!1,!1),nA=new oA(t+" const*",G,!1,!0,!1);return qA[I]={pointerType:f,constPointerType:nA},wg(D,w),[UA,f,nA]})},CI=(I,A)=>{for(var g=[],B=0;B<I;B++)g.push(y[A+B*4>>2]);return g},bA=I=>{for(;I.length;){var A=I.pop(),g=I.pop();g(A)}};function bg(I){for(var A=1;A<I.length;++A)if(I[A]!==null&&I[A].destructorFunction===void 0)return!0;return!1}function QI(I,A,g,B,C,e){var r=A.length;r<2&&s("argTypes array size mismatch! Must at least get return value and 'this' types!");var Q=A[1]!==null&&g!==null,i=bg(A),o=A[0].name!=="void",t=r-2,n=new Array(t),c=[],D=[],l=function(...M){M.length!==t&&s(`function ${I} called with ${M.length} arguments, expected ${t}`),D.length=0;var R;c.length=Q?2:1,c[0]=C,Q&&(R=A[1].toWireType(D,this),c[1]=R);for(var w=0;w<t;++w)n[w]=A[w+2].toWireType(D,M[w]),c.push(n[w]);var Z=B(...c);function G(UA){if(i)bA(D);else for(var f=Q?1:2;f<A.length;f++){var nA=f===1?R:n[f-2];A[f].destructorFunction!==null&&A[f].destructorFunction(nA)}if(o)return A[0].fromWireType(UA)}return G(Z)};return rA(I,l)}var mg=(I,A,g,B,C,e)=>{var r=CI(A,g);C=L(B,C),J([],[I],Q=>{Q=Q[0];var i=`constructor ${Q.name}`;if(Q.registeredClass.constructor_body===void 0&&(Q.registeredClass.constructor_body=[]),Q.registeredClass.constructor_body[A-1]!==void 0)throw new O(`Cannot register multiple constructors with identical number of parameters (${A-1}) for class '${Q.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return Q.registeredClass.constructor_body[A-1]=()=>{q(`Cannot construct ${Q.name} due to unbound types`,r)},J([],r,o=>(o.splice(1,0,null),Q.registeredClass.constructor_body[A-1]=QI(i,o,null,C,e),[])),[]})},Sg=I=>{I=I.trim();let A=I.indexOf("(");return A!==-1?I.substr(0,A):I},pg=(I,A,g,B,C,e,r,Q,i)=>{var o=CI(g,B);A=N(A),A=Sg(A),e=L(C,e),J([],[I],t=>{t=t[0];var n=`${t.name}.${A}`;A.startsWith("@@")&&(A=Symbol[A.substring(2)]),Q&&t.registeredClass.pureVirtualFunctions.push(A);function c(){q(`Cannot call ${n} due to unbound types`,o)}var D=t.registeredClass.instancePrototype,l=D[A];return l===void 0||l.overloadTable===void 0&&l.className!==t.name&&l.argCount===g-2?(c.argCount=g-2,c.className=t.name,D[A]=c):($A(D,A,n),D[A].overloadTable[g-2]=c),J([],o,M=>{var R=QI(n,M,t,e,r,i);return D[A].overloadTable===void 0?(R.argCount=g-2,D[A]=R):D[A].overloadTable[g-2]=R,[]}),[]})},eI=(I,A,g)=>(I instanceof Object||s(`${g} with invalid "this": ${I}`),I instanceof A.registeredClass.constructor||s(`${g} incompatible with "this" of type ${I.constructor.name}`),I.$$.ptr||s(`cannot call emscripten binding method ${g} on deleted object`),iA(I.$$.ptr,I.$$.ptrType.registeredClass,A.registeredClass)),fg=(I,A,g,B,C,e,r,Q,i,o)=>{A=N(A),C=L(B,C),J([],[I],t=>{t=t[0];var n=`${t.name}.${A}`,c={get(){q(`Cannot access ${n} due to unbound types`,[g,r])},enumerable:!0,configurable:!0};return i?c.set=()=>q(`Cannot access ${n} due to unbound types`,[g,r]):c.set=D=>s(n+" is a read-only property"),Object.defineProperty(t.registeredClass.instancePrototype,A,c),J([],i?[g,r]:[g],D=>{var l=D[0],M={get(){var w=eI(this,t,n+" getter");return l.fromWireType(C(e,w))},enumerable:!0};if(i){i=L(Q,i);var R=D[1];M.set=function(w){var Z=eI(this,t,n+" setter"),G=[];i(o,Z,R.toWireType(G,w)),bA(G)}}return Object.defineProperty(t.registeredClass.instancePrototype,A,M),[]}),[]})},mA=[],S=[],SA=I=>{I>9&&--S[I+1]===0&&(S[I]=void 0,mA.push(I))},kg=()=>S.length/2-5-mA.length,Fg=()=>{S.push(0,1,void 0,1,null,1,!0,1,!1,1),E.count_emval_handles=kg},v={toValue:I=>(I||s("Cannot use deleted val. handle = "+I),S[I]),toHandle:I=>{switch(I){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{let A=mA.pop()||S.length;return S[A]=I,S[A+1]=1,A}}}},Ug={name:"emscripten::val",fromWireType:I=>{var A=v.toValue(I);return SA(I),A},toWireType:(I,A)=>v.toHandle(A),argPackAdvance:U,readValueFromPointer:tA,destructorFunction:null},Lg=I=>m(I,Ug),pA=I=>{if(I===null)return"null";var A=typeof I;return A==="object"||A==="array"||A==="function"?I.toString():""+I},vg=(I,A)=>{switch(A){case 4:return function(g){return this.fromWireType(JA[g>>2])};case 8:return function(g){return this.fromWireType(ZA[g>>3])};default:throw new TypeError(`invalid float width (${A}): ${I}`)}},Yg=(I,A,g)=>{A=N(A),m(I,{name:A,fromWireType:B=>B,toWireType:(B,C)=>C,argPackAdvance:U,readValueFromPointer:vg(A,g),destructorFunction:null})},Tg=(I,A,g)=>{switch(A){case 1:return g?B=>Y[B]:B=>u[B];case 2:return g?B=>x[B>>1]:B=>gA[B>>1];case 4:return g?B=>W[B>>2]:B=>y[B>>2];default:throw new TypeError(`invalid integer width (${A}): ${I}`)}},Hg=(I,A,g,B,C)=>{A=N(A),C===-1&&(C=4294967295);var e=t=>t;if(B===0){var r=32-8*g;e=t=>t<<r>>>r}var Q=A.includes("unsigned"),i=(t,n)=>{},o;Q?o=function(t,n){return i(n,this.name),n>>>0}:o=function(t,n){return i(n,this.name),n},m(I,{name:A,fromWireType:e,toWireType:o,argPackAdvance:U,readValueFromPointer:Tg(A,g,B!==0),destructorFunction:null})},Jg=(I,A,g)=>{var B=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],C=B[A];function e(r){var Q=y[r>>2],i=y[r+4>>2];return new C(Y.buffer,i,Q)}g=N(g),m(I,{name:g,fromWireType:e,argPackAdvance:U,readValueFromPointer:e},{ignoreDuplicateRegistrations:!0})},Zg=(I,A,g,B)=>{if(!(B>0))return 0;for(var C=g,e=g+B-1,r=0;r<I.length;++r){var Q=I.charCodeAt(r);if(Q>=55296&&Q<=57343){var i=I.charCodeAt(++r);Q=65536+((Q&1023)<<10)|i&1023}if(Q<=127){if(g>=e)break;A[g++]=Q}else if(Q<=2047){if(g+1>=e)break;A[g++]=192|Q>>6,A[g++]=128|Q&63}else if(Q<=65535){if(g+2>=e)break;A[g++]=224|Q>>12,A[g++]=128|Q>>6&63,A[g++]=128|Q&63}else{if(g+3>=e)break;A[g++]=240|Q>>18,A[g++]=128|Q>>12&63,A[g++]=128|Q>>6&63,A[g++]=128|Q&63}}return A[g]=0,g-C},Pg=(I,A,g)=>Zg(I,u,A,g),Kg=I=>{for(var A=0,g=0;g<I.length;++g){var B=I.charCodeAt(g);B<=127?A++:B<=2047?A+=2:B>=55296&&B<=57343?(A+=4,++g):A+=3}return A},EI=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):void 0,rI=(I,A,g)=>{for(var B=A+g,C=A;I[C]&&!(C>=B);)++C;if(C-A>16&&I.buffer&&EI)return EI.decode(I.subarray(A,C));for(var e="";A<C;){var r=I[A++];if(!(r&128)){e+=String.fromCharCode(r);continue}var Q=I[A++]&63;if((r&224)==192){e+=String.fromCharCode((r&31)<<6|Q);continue}var i=I[A++]&63;if((r&240)==224?r=(r&15)<<12|Q<<6|i:r=(r&7)<<18|Q<<12|i<<6|I[A++]&63,r<65536)e+=String.fromCharCode(r);else{var o=r-65536;e+=String.fromCharCode(55296|o>>10,56320|o&1023)}}return e},Og=(I,A)=>I?rI(u,I,A):"",xg=(I,A)=>{A=N(A);var g=A==="std::string";m(I,{name:A,fromWireType(B){var C=y[B>>2],e=B+4,r;if(g)for(var Q=e,i=0;i<=C;++i){var o=e+i;if(i==C||u[o]==0){var t=o-Q,n=Og(Q,t);r===void 0?r=n:(r+=String.fromCharCode(0),r+=n),Q=o+1}}else{for(var c=new Array(C),i=0;i<C;++i)c[i]=String.fromCharCode(u[e+i]);r=c.join("")}return p(B),r},toWireType(B,C){C instanceof ArrayBuffer&&(C=new Uint8Array(C));var e,r=typeof C=="string";r||C instanceof Uint8Array||C instanceof Uint8ClampedArray||C instanceof Int8Array||s("Cannot pass non-string to std::string"),g&&r?e=Kg(C):e=C.length;var Q=FA(4+e+1),i=Q+4;if(y[Q>>2]=e,g&&r)Pg(C,i,e+1);else if(r)for(var o=0;o<e;++o){var t=C.charCodeAt(o);t>255&&(p(i),s("String has UTF-16 code units that do not fit in 8 bits")),u[i+o]=t}else for(var o=0;o<e;++o)u[i+o]=C[o];return B!==null&&B.push(p,Q),Q},argPackAdvance:U,readValueFromPointer:tA,destructorFunction(B){p(B)}})},iI=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):void 0,Wg=(I,A)=>{for(var g=I,B=g>>1,C=B+A/2;!(B>=C)&&gA[B];)++B;if(g=B<<1,g-I>32&&iI)return iI.decode(u.subarray(I,g));for(var e="",r=0;!(r>=A/2);++r){var Q=x[I+r*2>>1];if(Q==0)break;e+=String.fromCharCode(Q)}return e},Xg=(I,A,g)=>{if(g!=null||(g=2147483647),g<2)return 0;g-=2;for(var B=A,C=g<I.length*2?g/2:I.length,e=0;e<C;++e){var r=I.charCodeAt(e);x[A>>1]=r,A+=2}return x[A>>1]=0,A-B},zg=I=>I.length*2,Vg=(I,A)=>{for(var g=0,B="";!(g>=A/4);){var C=W[I+g*4>>2];if(C==0)break;if(++g,C>=65536){var e=C-65536;B+=String.fromCharCode(55296|e>>10,56320|e&1023)}else B+=String.fromCharCode(C)}return B},jg=(I,A,g)=>{if(g!=null||(g=2147483647),g<4)return 0;for(var B=A,C=B+g-4,e=0;e<I.length;++e){var r=I.charCodeAt(e);if(r>=55296&&r<=57343){var Q=I.charCodeAt(++e);r=65536+((r&1023)<<10)|Q&1023}if(W[A>>2]=r,A+=4,A+4>C)break}return W[A>>2]=0,A-B},_g=I=>{for(var A=0,g=0;g<I.length;++g){var B=I.charCodeAt(g);B>=55296&&B<=57343&&++g,A+=4}return A},qg=(I,A,g)=>{g=N(g);var B,C,e,r;A===2?(B=Wg,C=Xg,r=zg,e=Q=>gA[Q>>1]):A===4&&(B=Vg,C=jg,r=_g,e=Q=>y[Q>>2]),m(I,{name:g,fromWireType:Q=>{for(var i=y[Q>>2],o,t=Q+4,n=0;n<=i;++n){var c=Q+4+n*A;if(n==i||e(c)==0){var D=c-t,l=B(t,D);o===void 0?o=l:(o+=String.fromCharCode(0),o+=l),t=c+A}}return p(Q),o},toWireType:(Q,i)=>{typeof i!="string"&&s(`Cannot pass non-string to C++ string type ${g}`);var o=r(i),t=FA(4+o+A);return y[t>>2]=o/A,C(i,t+4,o+A),Q!==null&&Q.push(p,t),t},argPackAdvance:U,readValueFromPointer:tA,destructorFunction(Q){p(Q)}})},$g=(I,A)=>{A=N(A),m(I,{isVoid:!0,name:A,argPackAdvance:0,fromWireType:()=>{},toWireType:(g,B)=>{}})},AB=(I,A,g)=>u.copyWithin(I,A,A+g),fA=(I,A)=>{var g=H[I];return g===void 0&&s(`${A} has unknown type ${BI(I)}`),g},tI=(I,A,g)=>{var B=[],C=I.toWireType(B,g);return B.length&&(y[A>>2]=v.toHandle(B)),C},IB=(I,A,g)=>(I=v.toValue(I),A=fA(A,"emval::as"),tI(A,g,I)),gB={},BB=I=>{var A=gB[I];return A===void 0?N(I):A},kA=[],CB=(I,A,g,B,C)=>(I=kA[I],A=v.toValue(A),g=BB(g),I(A,A[g],B,C)),QB=I=>{var A=kA.length;return kA.push(I),A},eB=(I,A)=>{for(var g=new Array(I),B=0;B<I;++B)g[B]=fA(y[A+B*4>>2],"parameter "+B);return g},EB=Reflect.construct,rB=(I,A,g)=>{var B=eB(I,A),C=B.shift();I--;var e=new Array(I),r=(i,o,t,n)=>{for(var c=0,D=0;D<I;++D)e[D]=B[D].readValueFromPointer(n+c),c+=B[D].argPackAdvance;var l=g===1?EB(o,e):o.apply(i,e);return tI(C,t,l)},Q=`methodCaller<(${B.map(i=>i.name).join(", ")}) => ${C.name}>`;return QB(rA(Q,r))},iB=I=>{I>9&&(S[I+1]+=1)},tB=I=>{var A=v.toValue(I);bA(A),SA(I)},oB=(I,A)=>{I=fA(I,"_emval_take_value");var g=I.readValueFromPointer(A);return v.toHandle(g)},sB=I=>{GA("OOM")},aB=I=>{var A=u.length;I>>>=0,sB(I)},nB=[null,[],[]],cB=(I,A)=>{var g=nB[I];A===0||A===10?((I===1?MI:AA)(rI(g,0)),g.length=0):g.push(A)},DB=(I,A,g,B)=>{for(var C=0,e=0;e<g;e++){var r=y[A>>2],Q=y[A+4>>2];A+=8;for(var i=0;i<Q;i++)cB(I,u[r+i]);C+=Q}return y[B>>2]=C,0};$I(),O=E.BindingError=class extends Error{constructor(A){super(A),this.name="BindingError"}},zA=E.InternalError=class extends Error{constructor(A){super(A),this.name="InternalError"}},og(),Eg(),ug(),gI=E.UnboundTypeError=Rg(Error,"UnboundTypeError"),Fg();var yB={w:jI,q:_I,p:qI,u:Ig,y:Mg,x:mg,h:pg,k:fg,t:Lg,o:Yg,g:Hg,a:Jg,n:xg,l:qg,v:$g,s:AB,j:IB,e:CB,c:SA,f:rB,d:iB,b:tB,i:oB,r:aB,m:DB},b=XI(),dB=()=>(dB=b.A)(),FA=I=>(FA=b.B)(I),oI=I=>(oI=b.D)(I),p=I=>(p=b.E)(I),sI=I=>(sI=b.F)(I),lB=E.dynCall_jiji=(I,A,g,B,C)=>(lB=E.dynCall_jiji=b.G)(I,A,g,B,C),kB=E._vertexShaderSource=13312,aA;X=function I(){aA||aI(),aA||(X=I)};function aI(){if(T>0||(kI(),T>0))return;function I(){aA||(aA=!0,E.calledRun=!0,!HA&&(FI(),k(E),E.onRuntimeInitialized&&E.onRuntimeInitialized(),UI()))}E.setStatus?(E.setStatus("Running..."),setTimeout(function(){setTimeout(function(){E.setStatus("")},1),I()},1)):I()}if(E.preInit)for(typeof E.preInit=="function"&&(E.preInit=[E.preInit]);E.preInit.length>0;)E.preInit.pop()();return aI(),h=lI,h}})(),dI=bB;var DA=0,dA=class dA{constructor(a){this.core=a;P(this,"seq");P(this,"_core");P(this,"log");P(this,"beautyParams");DA=DA+1,this.seq=DA,this._core=a,this.log=a.log.createChild({id:`${this.getAlias()}${DA}`}),this.log.info("created")}getName(){return dA.Name}getAlias(){return"bb"}getValidateRule(a){switch(a){case"start":return vA(this._core);case"update":return vA(this._core);case"stop":return yI(this._core)}}getGroup(){return"w"}async start(a){return this._core.room.videoManager.Wasm||(this._core.room.videoManager.Wasm=await dI({print:console.warn})),this._core.room.videoManager.renderMode="webgl",this._core.room.videoManager.setBeautyParams({beauty:a.beauty||.5,brightness:a.brightness||.5,ruddy:a.ruddy||.5})}async update(a){return this._core.room.videoManager.setBeautyParams({beauty:a.beauty||.5,brightness:a.brightness||.5,ruddy:a.ruddy||.5})}async stop(){return this._core.room.videoManager.stopBeauty()}destroy(){}};P(dA,"Name","BasicBeauty");var yA=dA;var SB=yA;return MB(pB);})().default;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@rtc-plugin/basic-beauty",
|
|
3
|
+
"version": "5.6.2-beta.5",
|
|
4
|
+
"description": "TRTC Web SDK 5.x basic-beauty plugin",
|
|
5
|
+
"main": "./basic-beauty.esm.js",
|
|
6
|
+
"author": "longyuqi <longyuqi@tencent.com>",
|
|
7
|
+
"module": "./basic-beauty.esm.js",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git@github.com:LiteAVSDK/TRTC_Web.git"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://web.sdk.qcloud.com/trtc/webrtc/v5/doc/en/tutorial-36-advanced-basic-beauty.html",
|
|
13
|
+
"keywords": [
|
|
14
|
+
"webrtc",
|
|
15
|
+
"TRTC",
|
|
16
|
+
"rtc",
|
|
17
|
+
"call",
|
|
18
|
+
"video call",
|
|
19
|
+
"audio call",
|
|
20
|
+
"javascript",
|
|
21
|
+
"video",
|
|
22
|
+
"audio",
|
|
23
|
+
"camera",
|
|
24
|
+
"microphone",
|
|
25
|
+
"live streaming",
|
|
26
|
+
"real-time communication",
|
|
27
|
+
"blur background"
|
|
28
|
+
],
|
|
29
|
+
"types": "./basic-beauty.esm.d.ts"
|
|
30
|
+
}
|